Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inventory aware arbitrage #164

Draft
wants to merge 16 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
291 changes: 272 additions & 19 deletions hydradx/model/amm/arbitrage_agent.py

Large diffs are not rendered by default.

263 changes: 155 additions & 108 deletions hydradx/notebooks/Misc/arbitrage.ipynb

Large diffs are not rendered by default.

28 changes: 28 additions & 0 deletions hydradx/notebooks/Misc/config/arbconfig2nodai.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
[
{"tkns": ["HDX", "USDT"], "tkn_ids": [0, 10], "exchange": "kraken", "order_book": ["HDX","USD"], "buffer": 0.0010},
{"tkns": ["DOT", "USDT"], "tkn_ids": [5, 10], "exchange": "kraken", "order_book": ["DOT","USDT"], "buffer": 0.0010},
{"tkns": ["WETH", "USDT"], "tkn_ids": [20, 10], "exchange": "kraken", "order_book": ["ETH","USDT"], "buffer": 0.0010},
{"tkns": ["DOT", "WETH"], "tkn_ids": [5, 20], "exchange": "kraken", "order_book": ["DOT","ETH"], "buffer": 0.0010},
{"tkns": ["WBTC", "USDT"], "tkn_ids": [19, 10], "exchange": "kraken", "order_book": ["BTC","USDT"], "buffer": 0.0010},
{"tkns": ["IBTC", "USDT"], "tkn_ids": [11, 10], "exchange": "kraken", "order_book": ["BTC","USDT"], "buffer": 0.0010},
{"tkns": ["DOT", "WBTC"], "tkn_ids": [5, 19], "exchange": "kraken", "order_book": ["DOT","BTC"], "buffer": 0.0010},
{"tkns": ["DOT", "IBTC"], "tkn_ids": [5, 11], "exchange": "kraken", "order_book": ["DOT","BTC"], "buffer": 0.0010},
{"tkns": ["WETH", "WBTC"], "tkn_ids": [20, 19], "exchange": "kraken", "order_book": ["ETH","BTC"], "buffer": 0.0010},
{"tkns": ["WETH", "IBTC"], "tkn_ids": [20, 11], "exchange": "kraken", "order_book": ["ETH","BTC"], "buffer": 0.0010},
{"tkns": ["ASTR", "USDT"], "tkn_ids": [9, 10], "exchange": "kraken", "order_book": ["ASTR","USD"], "buffer": 0.0010},
{"tkns": ["CFG", "USDT"], "tkn_ids": [13, 10], "exchange": "kraken", "order_book": ["CFG","USD"], "buffer": 0.0010},
{"tkns": ["BNC", "USDT"], "tkn_ids": [14, 10], "exchange": "kraken", "order_book": ["BNC","USD"], "buffer": 0.0010},
{"tkns": ["GLMR", "USDT"], "tkn_ids": [16, 10], "exchange": "kraken", "order_book": ["GLMR","USD"], "buffer": 0.0010},
{"tkns": ["INTR", "USDT"], "tkn_ids": [17, 10], "exchange": "kraken", "order_book": ["INTR","USD"], "buffer": 0.0010},
{"tkns": ["DOT", "USDT"], "tkn_ids": [5, 10], "exchange": "binance", "order_book": ["DOT","USDT"], "buffer": 0.0010},
{"tkns": ["DOT", "WETH"], "tkn_ids": [5, 20], "exchange": "binance", "order_book": ["DOT","ETH"], "buffer": 0.0010},
{"tkns": ["DOT", "WBTC"], "tkn_ids": [5, 19], "exchange": "binance", "order_book": ["DOT","BTC"], "buffer": 0.0010},
{"tkns": ["DOT", "IBTC"], "tkn_ids": [5, 11], "exchange": "binance", "order_book": ["DOT","BTC"], "buffer": 0.0010},
{"tkns": ["WETH", "USDT"], "tkn_ids": [20, 10], "exchange": "binance", "order_book": ["ETH","USDT"], "buffer": 0.0010},
{"tkns": ["WETH", "WBTC"], "tkn_ids": [20, 19], "exchange": "binance", "order_book": ["ETH","BTC"], "buffer": 0.0010},
{"tkns": ["WETH", "IBTC"], "tkn_ids": [20, 11], "exchange": "binance", "order_book": ["ETH","BTC"], "buffer": 0.0010},
{"tkns": ["WBTC", "USDT"], "tkn_ids": [19, 10], "exchange": "binance", "order_book": ["BTC","USDT"], "buffer": 0.0010},
{"tkns": ["IBTC", "USDT"], "tkn_ids": [11, 10], "exchange": "binance", "order_book": ["BTC","USDT"], "buffer": 0.0010},
{"tkns": ["ASTR", "USDT"], "tkn_ids": [9, 10], "exchange": "binance", "order_book": ["ASTR","USDT"], "buffer": 0.0010},
{"tkns": ["GLMR", "USDT"], "tkn_ids": [16, 10], "exchange": "binance", "order_book": ["GLMR","USDT"], "buffer": 0.0010}
]
34 changes: 34 additions & 0 deletions hydradx/notebooks/Misc/config/arbconfig3.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
[
{"tkns": ["HDX", "USDT"], "tkn_ids": [0, 10], "exchange": "kraken", "order_book": ["HDX","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "USDT"], "tkn_ids": [5, 10], "exchange": "kraken", "order_book": ["DOT","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0005, 0.0020]},
{"tkns": ["WETH", "USDT"], "tkn_ids": [20, 10], "exchange": "kraken", "order_book": ["ETH","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "USDT"], "tkn_ids": [20, 18], "exchange": "kraken", "order_book": ["ETH","DAI"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "WETH"], "tkn_ids": [5, 20], "exchange": "kraken", "order_book": ["DOT","ETH"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WBTC", "USDT"], "tkn_ids": [19, 10], "exchange": "kraken", "order_book": ["BTC","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["IBTC", "USDT"], "tkn_ids": [11, 10], "exchange": "kraken", "order_book": ["BTC","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WBTC", "USDT"], "tkn_ids": [19, 18], "exchange": "kraken", "order_book": ["BTC","DAI"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["IBTC", "USDT"], "tkn_ids": [11, 18], "exchange": "kraken", "order_book": ["BTC","DAI"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "WBTC"], "tkn_ids": [5, 19], "exchange": "kraken", "order_book": ["DOT","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "IBTC"], "tkn_ids": [5, 11], "exchange": "kraken", "order_book": ["DOT","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "WBTC"], "tkn_ids": [20, 19], "exchange": "kraken", "order_book": ["ETH","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "IBTC"], "tkn_ids": [20, 11], "exchange": "kraken", "order_book": ["ETH","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["ASTR", "USDT"], "tkn_ids": [9, 10], "exchange": "kraken", "order_book": ["ASTR","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["CFG", "USDT"], "tkn_ids": [13, 10], "exchange": "kraken", "order_book": ["CFG","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["BNC", "USDT"], "tkn_ids": [14, 10], "exchange": "kraken", "order_book": ["BNC","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["GLMR", "USDT"], "tkn_ids": [16, 10], "exchange": "kraken", "order_book": ["GLMR","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["INTR", "USDT"], "tkn_ids": [17, 10], "exchange": "kraken", "order_book": ["INTR","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "USDT"], "tkn_ids": [5, 10], "exchange": "binance", "order_book": ["DOT","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "WETH"], "tkn_ids": [5, 20], "exchange": "binance", "order_book": ["DOT","ETH"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "WBTC"], "tkn_ids": [5, 19], "exchange": "binance", "order_book": ["DOT","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "IBTC"], "tkn_ids": [5, 11], "exchange": "binance", "order_book": ["DOT","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "USDT"], "tkn_ids": [20, 10], "exchange": "binance", "order_book": ["ETH","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "DAI"], "tkn_ids": [20, 18], "exchange": "binance", "order_book": ["ETH","DAI"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "WBTC"], "tkn_ids": [20, 19], "exchange": "binance", "order_book": ["ETH","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "IBTC"], "tkn_ids": [20, 11], "exchange": "binance", "order_book": ["ETH","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WBTC", "USDT"], "tkn_ids": [19, 10], "exchange": "binance", "order_book": ["BTC","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["IBTC", "USDT"], "tkn_ids": [11, 10], "exchange": "binance", "order_book": ["BTC","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WBTC", "DAI"], "tkn_ids": [19, 18], "exchange": "binance", "order_book": ["BTC","DAI"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["IBTC", "DAI"], "tkn_ids": [11, 18], "exchange": "binance", "order_book": ["BTC","DAI"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["ASTR", "USDT"], "tkn_ids": [9, 10], "exchange": "binance", "order_book": ["ASTR","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["GLMR", "USDT"], "tkn_ids": [16, 10], "exchange": "binance", "order_book": ["GLMR","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]}
]
28 changes: 28 additions & 0 deletions hydradx/notebooks/Misc/config/arbconfig3nodai.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
[
{"tkns": ["HDX", "USDT"], "tkn_ids": [0, 10], "exchange": "kraken", "order_book": ["HDX","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "USDT"], "tkn_ids": [5, 10], "exchange": "kraken", "order_book": ["DOT","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0005, 0.0020]},
{"tkns": ["WETH", "USDT"], "tkn_ids": [20, 10], "exchange": "kraken", "order_book": ["ETH","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "WETH"], "tkn_ids": [5, 20], "exchange": "kraken", "order_book": ["DOT","ETH"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WBTC", "USDT"], "tkn_ids": [19, 10], "exchange": "kraken", "order_book": ["BTC","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["IBTC", "USDT"], "tkn_ids": [11, 10], "exchange": "kraken", "order_book": ["BTC","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "WBTC"], "tkn_ids": [5, 19], "exchange": "kraken", "order_book": ["DOT","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "IBTC"], "tkn_ids": [5, 11], "exchange": "kraken", "order_book": ["DOT","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "WBTC"], "tkn_ids": [20, 19], "exchange": "kraken", "order_book": ["ETH","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "IBTC"], "tkn_ids": [20, 11], "exchange": "kraken", "order_book": ["ETH","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["ASTR", "USDT"], "tkn_ids": [9, 10], "exchange": "kraken", "order_book": ["ASTR","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["CFG", "USDT"], "tkn_ids": [13, 10], "exchange": "kraken", "order_book": ["CFG","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["BNC", "USDT"], "tkn_ids": [14, 10], "exchange": "kraken", "order_book": ["BNC","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["GLMR", "USDT"], "tkn_ids": [16, 10], "exchange": "kraken", "order_book": ["GLMR","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["INTR", "USDT"], "tkn_ids": [17, 10], "exchange": "kraken", "order_book": ["INTR","USD"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "USDT"], "tkn_ids": [5, 10], "exchange": "binance", "order_book": ["DOT","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "WETH"], "tkn_ids": [5, 20], "exchange": "binance", "order_book": ["DOT","ETH"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "WBTC"], "tkn_ids": [5, 19], "exchange": "binance", "order_book": ["DOT","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["DOT", "IBTC"], "tkn_ids": [5, 11], "exchange": "binance", "order_book": ["DOT","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "USDT"], "tkn_ids": [20, 10], "exchange": "binance", "order_book": ["ETH","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "WBTC"], "tkn_ids": [20, 19], "exchange": "binance", "order_book": ["ETH","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WETH", "IBTC"], "tkn_ids": [20, 11], "exchange": "binance", "order_book": ["ETH","BTC"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["WBTC", "USDT"], "tkn_ids": [19, 10], "exchange": "binance", "order_book": ["BTC","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["IBTC", "USDT"], "tkn_ids": [11, 10], "exchange": "binance", "order_book": ["BTC","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["ASTR", "USDT"], "tkn_ids": [9, 10], "exchange": "binance", "order_book": ["ASTR","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]},
{"tkns": ["GLMR", "USDT"], "tkn_ids": [16, 10], "exchange": "binance", "order_book": ["GLMR","USDT"], "risk_buffer": 0.0010, "rebalance_buffer": [0.0002, 0.0020]}
]
9 changes: 9 additions & 0 deletions hydradx/notebooks/Misc/config/assetconfig.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{"kraken":
{"USD": 500, "USDT": 500, "DAI": 500, "DOT": 100, "BTC": 0.010, "ETH": 0.3, "HDX": 100000, "ASTR": 1000,
"CFG": 100, "INTR": 3000, "BNC": 300, "GLMR": 300},
"binance":
{"USD": 500, "USDT": 500, "DAI": 500, "DOT": 100, "BTC": 0.01, "ETH": 0.3, "HDX": 100000, "ASTR": 1000,
"GLMR": 300},
"omnipool": {"USDT": 500, "DAI": 500, "DOT": 100, "iBTC": 0.01, "WBTC": 0.01, "WETH": 0.3, "HDX": 100000, "ASTR": 1000,
"CFG": 100, "INTR": 3000, "BNC": 300, "GLMR": 300, "DAI001": 500, "WBTC001": 0.01, "WETH001": 0.3}
}
9 changes: 9 additions & 0 deletions hydradx/notebooks/Misc/config/assetconfigzeroes.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{"kraken":
{"USD": 0, "USDT": 0, "DAI": 0, "DOT": 0, "BTC": 0, "ETH": 0, "HDX": 0, "ASTR": 0,
"CFG": 0, "INTR": 0, "BNC": 0, "GLMR": 0},
"binance":
{"USD": 0, "USDT": 0, "DAI": 0, "DOT": 0, "BTC": 0, "ETH": 0, "HDX": 0, "ASTR": 0,
"GLMR": 0},
"omnipool": {"USDT": 0, "DAI": 0, "DOT": 0, "iBTC": 0, "WBTC": 0, "WETH": 0, "HDX": 0, "ASTR": 0,
"CFG": 0, "INTR": 0, "BNC": 0, "GLMR": 0, "DAI001": 0, "WBTC001": 0, "WETH001": 0}
}
Loading
Loading