What is ARBI? ARBI is high frequency triangular arbitrage trading bot for cryptocurrencies. Triangular arbitrage means that the bot can execute arbitrage trades on single exchange (intra-exchange) avoiding all the risks involved in arbitrage between exchanges. It is designed to be as lightweight and fast as possible so you won’t miss an arbitrage opportunity. You can control the bot from your browser. What is Triangular Arbitrage ? Placing transactions in three crypto currencies to exploit a market inefficiency for a theoretical risk free trade is called Triangular Arbitrage . BTC/XMR@0.02235274 -> XMR/BLK@0.00227243 -> BTC/BLK@0.00005134 -> Profit % 0.8219 Total time for all trades: ~2 seconds.See the screenshots bellow for example of executed trades. OKEX: BTC Combos => 242 ETH Combos => 234 USDT Combos => 243 OKB Combos => 83 Total Triangular Combos => 802 All Pairs => 397 Poloniex: BTC Combos => 59 USDC Combos => 23 ETH Combos => 33 XMR Combos => 12 USDT Combos => 49 Total Triangular Combos => 176 All Pairs => 123 Yobit: BTC Combos => 5364 ETH Combos => 5364 DOGE Combos => 5364 WAVES Combos => 5364 USD Combos => 5364 Total Triangular Combos => 26820 All Pairs => 8068
ALSO YOU CAN PROFIT FROM RUNNING SEVERAL BOTS ON DIFFERENT BASE CURRENCIES AND DISTRIBUTE FUNDS BETWEEN THEM
We support YOBIT! To obtain your YOBIT ARBI licence you must be a h0lder of Poloniex, Binance and OKEX – in such case you will receive Yobit for free!
How ARBI Bot works ? ARBI Bot maintains a persistent websocket connection with the supported exchanges. The incoming data is processed in real-time, which allows the bot to act instantly if arbitrage event is detected. When arbitrage event is detected the bot executes trades on its own, there is no need to observe it all the time. There is multiple instruments for filter and control of the processed data like: Price Line, Volume Multiplier, DSB, Trend Monitor.
New Version comes with nifty WEB GUI and configurator – No more text configs!
NEW PAPER TRADING! We have added Telegram notifications and API for 3rd party plugins Added support for command line arguments. Now you can specify API rate limits on start. DASHBOARD CONFIGURATION
Supported Operating Systems: ARBI works both on Windows and Linux. For Windows you need .NET Framework v4.6.2. For Linux you need mono-devel package. Tested on: Windows 7 , Windows Server 2016 , Ubuntu 16.0.4. CPU must be x86/x86_64 architecture
All future updates are included in the price.
How to use: There is api-Poloniex.txt and secret-Poloniex.txt where you need to put your api key and secret that you will receive from Poloniex. There is api-Okex.txt and secret-Okex.txt where you need to put your api key and secret that you will receive from OKEx. In Bank Monitor, ARBI stores the amount and price from unfilled orders and their average price.Stored amounts can be sold for base or used in future arbitrage (if profitable). Configuration files: config-Global.json – Global config. config-Poloniex.json – Poloniex config. config-Okex.json – OKEx config. You can edit the configs from the web ui. ARBI is a console app and does not need a GUI to run, so it can be used on almost every computer.It is working great on vps with 2 cpu cores and 1024 mb ram.When you enter your api and secret you are ready to start the bot. WARNING:Its recommended to disable withdraw access to the api key that you will use. Supported Exchanges:
- Poloniex Pairs: 41
- Poloniex Triangulation Combos: 20
- Poloniex Base Currencies: BTC, USDC, ETH, XMR, USDT
- OKEx Pairs: 496
- OKEx Triangulation Combos: 792
- OKEX Base Currency: BTC, ETH, USDT, OKB
- For Yobit ARBI users can choose from 5 different base currencies, with around 5000 triangular combinations for each.
Program output (Profit Monitor) Console view:
ARBI OPTIONS AND FEATURES
PAIR OPTIONS OPTION ACCEPTED VALUE Pair1_Price 0-9 Pair2_Price 0-9 Pair3_Price 0-9 Pair1_Volume_Multiplier 0-255 Pair2_Volume_Multiplier 0-255 Pair3_Volume_Multiplier 0-255 ———————————————————————————————- With PairX_Price you select which price from the ordebook you are going to use. 0 – lowest value 9 – highest value For pairs where you buy your best price is lowest – 0. For pairs where you sell your best price is highest – 9. Pair1 and Pair2 buys, Pair3 sells. ———————————————————————————————- With PairX_Volume_Multiplier you select how much volume must be available on your chosen price. Example: Volume available: 5 | PairX_Volume_Multiplier = 5 Arbitrage triggered if available volume is higher than Your_Balance_Per_Trade * PairX_Volume_Multiplier
DYNAMIC TRADE OPTION ACCEPTED VALUE DynamicStartBalance Boolean(true/false) Examples: DynamicStartBalance set to false: When DSB is set to false the bot will look only for arbitrages that matches your BalancePerTrade value. If the is arbitrage occurrence is for smaller amount than your BalancePerTrade it will be ignored. DynamicStartBalance set to true: When DSB is set to true the bot will treat your BalancePerTrade value as max balance per trade. If there is arbitrage occurence for any amount smaller than your BalancePerTrade trades will be executed. How is the BalancePerTrade per trade calculated if DSB is set to true ? Without DSB activated the bot checks if the available volume is > than BalancePerTrade * PairX_Volume_Multiplier. If DSB is set to true the bot calculates the balance per trade like that: BalancePerTrade = Available volume / PairX_Volume_Multiplier
TREND MONITOR The Trend Monitor currently has 4 modes.You can choose separate mode per each pair (Pair1, Pair2, Pair3).Also you can choose candle size and period that will be analyzed. For example: Candle Size: 5M Period: 12 , will analyze the last hour based on 5 minute candles. Candle Size: 24H Period: 12 , will analyze the last 12 days based on 24 hours candles. Examples: If we enable the Trend Monitor on Pair 1 which is always BTC/XMR or BTC/ETH and some of those two pairs are going down while there is arbitrage occurrence the bot will skip it to avoid collecting ETH or XMR in the BANK, if there is some unfilled orders. For Pair 2: I think that here the Trend Monitor can be left disabled, because we dont hold funds here for long time. If we enable the Trend Monitor on Pair3 which is BTC/xxx and that pair going down while there is arbitrage occurrence the bot will skip it to avoid collecting Open Sell Orders. Trend Monitor Modes: Mode 0 :Disabled. Mode 1 :In Mode 1 the bot checks only if Percent Change for the selected period is positive. Mode 2 :In Mode 2 the bot checks if Percent Change for the selected period is positive and if Close/Open Average Delta is is positive.Both indicators must be positive. Mode 3 :In Mode 3 the bot checks if Percent Change for the selected period is positive, if Close/Open Average Delta is is positive and if Close/Open Positive Deltas are more than Negative ones for the selected period.Both indicators must be possitive. OPTION ACCEPTED VALUE Pair1_Trend_Mode 0-3 Pair2_Trend_Mode 0-3 Pair3_Trend_Mode 0-3 Trend_Monitor_Candle_Size 5M, 15M, 30M, 2H, 4H, 24H Trend_Monitor_Periods 1-as much as you need
TICKER INTERVAL OPTION ACCEPTED VALUE Ticker_Check_Interval 0-4,294,967,295 Ticker Check Interval sets the delay between each ETH/XMR price checks. (Only ETH/XMR banks are sold based on this setting.) Interval is in milliseconds.Default value is 45000 (45 seconds). Telegram Notifications:
Enable – Will send notifications.
Disable – Will not send notifications.
Telegram API Key: Provide API Key generated for your bot. Telegram Chat ID: Provide your Chat ID, so the bot can message you. How to create a bot token:
In Telegram search for @botfather
Type or click /start in the Telegram chat window
Give a name to your new bot
Copy and paste BOT TOKEN ID into Telegram API Key field (Global Options).
How to get your Telegram ID:
In Telegram search for @myidbot
Type or click /start in the Telegram chat window
Type in /getid
@myidbot will reply with your Telegram ID.
Copy and paste your Telegram ID into Telegram Chat ID field (Global Options).