If prices differ everywhere, why doesn't arbitrage close the gap?
The textbook answer to fragmented prices is that arbitrageurs eliminate them. The textbook is describing a frictionless market. Crypto's frictions are large, specific and measurable — and once you total them up, persistent spreads stop being a mystery and start being an accounting result.
The trade, and everything it costs
Buy on the cheap venue, sell on the dear venue. Start with our 8.3 bps gap from the last lesson and subtract reality.
- Taker fee, buy side: 5 bps
- Taker fee, sell side: 5 bps
- Withdrawal and network fees, amortised over the trade: call it 2 bps
- Slippage on both legs, since you are crossing the spread twice: 1–3 bps
- Gross spread captured: 8.3 bps
Net: negative. A retail-fee participant loses money executing a trade that appeared, on screen, to be riskless profit. The spread survives because it is smaller than the cost of the cheapest participant able to close it. That is the general rule: spreads compress to the marginal arbitrageur's cost base, not to zero.
Which is why the real trade is a balance-sheet business
Firms that do capture these gaps do it by removing the transfer from the loop. They pre-fund inventory on every venue — coins on one, cash on another — so an "arbitrage" is two simultaneous trades against existing balances, with no blockchain transfer at the moment of the trade. Rebalancing happens later, in size, at a schedule of their choosing. They also trade at maker or high-volume fee tiers measured in fractions of a basis point.
That converts the frictions into a different cost: capital tied up across many venues, permanently, earning nothing while it waits.
The three risks nobody puts in the spreadsheet
Transfer latency. If you do have to move the asset, a bitcoin transfer needs block confirmations — venues typically require between 2 and 6, so 20 to 60 minutes in normal conditions and considerably longer when the network is congested and fee markets spike. Your position is exposed for the entire window, and the gap you were capturing frequently closes or inverts inside it.
Counterparty risk. To run this you must hold meaningful balances at exchanges. Multiple venues have failed with customer assets still on them. The "risk-free" arbitrage is in fact a portfolio of unsecured claims on lightly regulated companies, and the historical record of those claims is not good.
Stress correlation. Spreads blow out to hundreds of basis points at exactly the moments when transfers are slowest, venues are most stressed and withdrawals are most likely to be suspended. The opportunity is largest precisely when the mechanism to capture it is least reliable.
What this means for reading the market
You now have a general rule with real explanatory power: the observed spread between venues is a readout of the frictions between them. A few basis points means the venues are well-connected. Hundreds of basis points means something is blocking capital — a jurisdictional wall, a halted withdrawal, a congested chain, a stablecoin under stress. The spread is diagnostic information about plumbing, which is a far more useful way to read it than as an opportunity.
Describing why a dislocation exists is not a suggestion to trade it. The activity described here requires holding balances at venues that can and do fail, and losses in that situation can be total.
In the data
The euro price of bitcoin is not an independent number. Both of its ingredients are below: the dollar price, and the euro-dollar rate.
Worth being precise about what charts like these can and cannot show. The dollar and euro bitcoin series in this data are both built by the same provider from the same pool of venues, so the gap between them is the currency plus the construction rule, not a spread between two venues you could trade against each other. Per-venue books, fee tiers and withdrawal states are not in a price feed at all, so every friction totalled up above has to come from the venues themselves.
Try it now
- Read a close off each chart above on the same date and divide: you have just quoted BTC/EUR without a euro venue anywhere in sight.
- Do it again on four more dates. Your implied cross is what an arbitrage-free market must show; any venue quoting materially away from it is offering somebody a trade. Express a plausible deviation in basis points.
- Now put a cost against it: roughly 20 bps is a realistic retail round-trip. Which of your deviations would have survived that, and which would have been a fee with extra steps? Then note when the two ingredient charts disagree about what a "day" is — one of them does not trade at the weekend, and that alone opens gaps nobody can close.