Arbitrage fails through bad execution more often than bad theory. Learn how to rebalance capital, choose pairs, limit slippage, and control leg risk.
Part 4 of a four-part series on spot-to-spot arbitrage.
Arbitrage isn't a magic button. A price gap may be visible, but the profit still depends on execution, fees, and where your capital sits when the next trade appears.
Most losses don't come from misunderstanding the basic idea. They come from thin order books, one-sided fills, blocked transfers, or positions that were too large for the available liquidity.
Every completed trade changes the balance on both exchanges.
Suppose you buy ETH on Binance and sell it on Bybit. The first account ends up with more ETH and less USDT. The second has less ETH and more USDT.
Eventually, one side runs out of the asset needed for the next trade.
You don't need to transfer funds after every fill. Frequent withdrawals add fees and create more chances for delays. It is usually better to let several trades accumulate, net the resulting balances, and rebalance when the mismatch starts blocking otherwise valid trades.
A 30–40% deviation from the original allocation can work as an alert. It is not a universal threshold. The right level depends on trade size, withdrawal costs, and how much spare inventory each venue holds.
Stablecoins such as USDT and USDC are often convenient for rebalancing. They are widely supported and avoid the price exposure of transferring a volatile coin.
They aren't automatically the cheapest option.
Withdrawal fees and network support differ by exchange. TRC-20 and Arbitrum can be inexpensive routes, but only when both venues support the same token on the same network. A cheap withdrawal is useless if the receiving exchange has paused deposits.
Before transferring, check:
The exact token and network on both venues
Deposit and withdrawal status
The exchange withdrawal fee
Expected network confirmation time
Minimum deposit and withdrawal amounts
Send a small test transaction when using a new route. One wrong network selection can cost more than dozens of successful arbitrage trades earn.
BTC and ETH usually have deep books, but their prices are also watched closely. Large gaps tend to close fast.
Mid-cap tokens can show wider spreads. They can also have thin books, higher withdrawal fees, and less reliable transfer routes. The displayed spread may exist only for a small amount.
Listing on three or more exchanges gives a token more possible venue combinations. That alone doesn't make it a good candidate. The useful pairs have enough depth on both sides, active deposits and withdrawals, and fees low enough to leave a net return.
Volatile periods create more gaps. News, listings, and sharp market moves can push one order book away from the others.
They also make execution harder. Quotes move faster, slippage increases, and the chance of filling only one leg goes up. A wider spread during a chaotic market may carry more risk than a smaller spread during normal trading.
A market order prioritizes getting filled. The final price may be worse than expected.
A limit order sets the worst price you are willing to accept. That helps control slippage, but it introduces another problem: the order may fill only in part, or not at all.
This matters when two legs need to complete together. If the buy fills and the sell does not, the position is no longer arbitrage. You are holding the asset and hoping its price doesn't fall.
Before placing the orders, decide what to do if only one side fills:
Cancel the unfilled order and unwind the completed leg
Adjust the second limit price within a fixed tolerance
Reduce the filled position if only part of the hedge is available
Stop trading if the market moves beyond the planned spread
Speed helps. A defined response helps more.
Exchanges sometimes pause deposits or withdrawals during maintenance, wallet upgrades, or network problems.
A pre-funded trade may still be possible while transfers are suspended. You already have USDT on the buy side and the asset on the sell side. The problem comes afterward: you may be unable to rebalance the accounts.
This can leave capital stranded on the wrong venue. The trade may be profitable, but the next opportunity becomes impossible to take.
Check transfer status before entering, even when the current trade does not require an immediate withdrawal.
"Never risk more than 5% of your capital" sounds precise, but it leaves an important question unanswered: 5% of what?
A trade using 5% of the portfolio may have much less than 5% at risk if both legs fill and the spread is locked. A smaller trade can lose more if one leg fails during a fast move.
Position limits should account for:
Loss if one leg remains open
Available depth on both exchanges
Maximum acceptable slippage
Capital held on a single venue
Withdrawal or transfer delays
Margin and liquidation risk when futures are involved
A 5% cap can be used as a conservative starting limit for trade size. It should not be treated as a complete risk model. Start small enough that a failed leg can be closed without causing serious damage.
Spreading capital across several pairs and venues reduces reliance on one market. Spread it too thin, though, and each account may lack enough free balance to execute anything useful.
A spreadsheet can handle a few accounts. It becomes less reliable once capital is split across several venues and networks, especially after balances begin drifting.
ArbLens shows available and locked balances across supported exchanges and wallets, paired positions, funding, PnL, and transfer history. It can also flag an arbitrage position when one side becomes unhedged. It doesn't decide when to trade or rebalance. It shows the account state those decisions depend on.