Bitcoin Arbitrage Overview
Bitcoin arbitrage opportunities are market inefficiencies where there are significant discrepancies in the prices of a single asset across different markets. Also known as “riskless profit”, such occurrences are supposed to be rare to none, with efficiently functioning, mature markets (and when they do present themselves, free money doesn’t stay around for long), but tend to fairly often take place in the fragmented and not always as reliable crypto-currency space.
Bitcoin mining and Bitcoin arbitrage are opposite poles requiring different skills, so there’s no question of weighing one against the other.
However, in the instance of crypto and Bitcoin arbitrage, it is not really exactly “riskless profit”, when taking into account the time it takes, the fees incurred and the possibility of a hundred things more going wrong along the way. The financial tactic of arbitrage is almost always a programmable automated operation. That is only after having acquired enough understanding of why is it that arbitrage opportunities occur with Bitcoin, what are the factors driving it and where can one find such opportunities.
What you will find in this guide:
- Bitcoin Arbitrage Overview
- Why Arbitrage Happens
- Liquidity Varies From One Exchange to the Next
- A Large Trade on One Exchange May Cause Disarray But Not Spreading Beyond to Other Exchanges
- Exchanges Cater to Different Kinds of Clients (Retail, Institutional, Algorithmic, etc.)
- Different Exchanges Have Different Reputations and are Favored by Different Users
- Market Demand Varies From Country to Country
- Foreign Currency Rates and Fluctuations Can Influence Price Dislocations
- Exchanges Have Different Policies, Including for Deposit and Withdraw Times
- Flash Crashes and Accidents
- Where and How to Look for Bitcoin Arbitrage Opportunities
- Get Literate About Arbitrage in General and Bitcoin Crypto Arbitrage Specifically
- Some Resources and Links
- Monitoring and Strategy Automation Software and Tools
- Hummingbot: Decentralized Market Making and Programmatic Automated Arbitrage Strategies
- The Hummingbot Implementation
- ORION: Liquidity Aggregation Protocol
- Other Arbitrage Bots
- Bitcoin Arbitrage FAQs
There are perhaps innumerable market variables and factors alongside technical reasons and not immediately visible influences which converge to produce Bitcoin arbitrage opportunities, but the ones listed below are some of the main driving ones. Briefly explaining each gives one a sense of the landscape and the interdependencies involved in the present stage of development.
Why Arbitrage Happens
Even though blockchains in themselves are fairly self-enclosed systems, the ways and mechanics by which their respective crypto-tokens are handled, transacted and traded in the back-ends of the various exchanges that integrate them (often unnaturally and much of the time without necessarily engaging the blockchain/ledger itself). Above all it’s the fragmented non-unified and non-synchronized nature of the crypto markets which affords much of the arbitrage opportunities arising.
Liquidity Varies From One Exchange to the Next
There are literally hundreds of exchanges trading digital crypto-assets. Different types of exchanges keep different order books that vary a lot in terms of how much liquidity they provide to Bitcoin (that is, how easily and immediately can Bitcoin be converted to cash without incurring any losses in the process). If, for example, buying from a thin order book that might end up in a higher price than it would on an exchange with a thicker, more filled up order book (even though the market price listed may be the same).
As with decentralized exchanges, if we also include the WBTC (the wrapped BTC circulating on Ethereum) there are the technical and architectural differences of dApps running on the blockchain and traditional centralized exchanges overlaid with a database and running a web server.
There are however fast token swap dApps (e.g., Uniswap, Kyber, Bancor, etc.) which tap in pools of liquidity provision for most tokens with a use-case or in demand. The designated market makers/merchants for WBTC are Kyber and Ren. The procedure for redeeming back regular bitcoin from the reserves involves burning the token and having the custodian (BitGo) release the amount as BTC.
The ERC-20 WBTC is overall cheaper, faster, more flexible and better equipped, but has fewer pairs and less liquidity. Block times on decentralized exchanges are a major roadblock to building efficiently operating trader exchanges on Ethereum.
A Large Trade on One Exchange May Cause Disarray But Not Spreading Beyond to Other Exchanges
A large enough trade can totally warp and distort an order book, but while large orders can almost immediately influence the price of BTC on their own exchange, it doesn’t have an effect that spreads any further to other exchanges.
Exchanges Cater to Different Kinds of Clients (Retail, Institutional, Algorithmic, etc.)
Different exchanges are geared towards different purposes and target different kinds of groups and trader types. Exchanges servicing institutional clients, for instance, there may be gaps in the order books between large limit orders that they’ve left open (less likely to find such on a broader retail-investor type of exchange). So, one can buy from retail and simultaneously place a sell order in a deep gap in the institutional exchange’s order book.
Different Exchanges Have Different Reputations and are Favored by Different Users
The reputation of exchange and how it is perceived by different kinds of people also sometimes play a role. KuCoin, for instance, is an exchange listing many newer and small market-cap tokens (before their listing on a bigger volume exchange such as Binance).
Some exchanges provide better security or have better or worse fee structures, transaction times may vary or it may have a history of having been hacked or compromised (and barely have any liquidity as a consequence, for instance).
Market Demand Varies From Country to Country
Exchanges and markets are often geographically constrained and their demands, sentiments and market valuations vary. However, Korean exchanges, for example, require that you be Korean to register an account or US citizens being banned from trading on many crypto-based markets, etc.
Foreign Currency Rates and Fluctuations Can Influence Price Dislocations
The foreign currency rates can also be an influencing factor when a Bitcoin market is denominated in some national currency or other (like KRW in Korea, for example). One can have a quick glance how is the USD doing against the KRW and pick a route for conversion and exchange to scalp some gains.
Exchanges Have Different Policies, Including for Deposit and Withdraw Times
Exchanges may also vary in the time it takes to verify and approve a new registration and process the KYC/AML or how long they take to process either currency or crypto transactions — for example, some exchanges allow you to make a deposit in a matter of a few minutes, while others may take up to 2-3 days. Exchanges may also differ in their policy and routines of when and how they process BTC withdrawals (and the limits they have in place). All of these factors make Bitcoin arbitrage a rather slippery affair and even more so if one is to attempt the steps manually.
Flash Crashes and Accidents
The flash crash of 2010. Above is the Dow Jones Industrial Average on May the 6th..
Flash crashes are rare instances of rapid and highly volatile fall in a security or asset’s market price that occurs within a very short interval of time. Commonly attributed to black-box trading and also usually associated with HFT (High-Frequency Trading), where the second-splitting speed and implicit interconnectedness may trigger the loss or recovery of billions of dollars in a matter of minutes or even seconds.
Such sudden crashes that happen in an instant may also result from other kinds of technical malfunctions and mistakes.
Where and How to Look for Bitcoin Arbitrage Opportunities
Monitor multiple exchanges across a number of countries. Also, look deep into order books where there’s a chance to find opportunities such as the gaps in large, open orders already explained or a sell wall creating downward pressure on the price on a single exchange.
Whale Alert (@whale_alert) is a useful Twitter bot that live tracks large crypto transactions to and from exchanges for BTC, ETH and many others.
Value of Arbitrage – Generally and Specifically
- Arbitrage is in itself important to acquire an understanding of why is there arbitrage in crypto even if not necessarily seeking to turn a profit on an opportunity presented. It illuminates some key inefficiencies the crypto markets are confronted with today.
- Likewise, it helps to also not just guesswork patterns in charts (TA), but understand why certain things are happening and synthesize observations from multiple different perspectives.
- As for pinning down a good arbitrage tactic/strategy, one needs to automate the process and have intimate familiarity with the specific exchanges, targeted markets and the stepwise operations executed towards that end-goal.
- Manually trying to chase an arbitrage opportunity across exchanges one is unfamiliar with is sure to be a losing strategy (except by miracle).
One should also have a sense of how differently centralized and decentralized exchanges trade and function and the distinctive rules governing each (so as to be able to infer approximate times for various operations).
- Additionally, to take advantage of arbitrage opportunities one should have at least partially funded open accounts on numerous different exchanges and that is already too big of a headache as well as a custodial risk.
And encountering such tangled cross-platform complexities while sketching out of the arbitrage strategies with least friction involved requires automation and/or specialized software for the programmatic execution of trading strategies.
This can be a Python script written using the exchanges’ APIs and such, or it could take advantage of already existing solutions such as Hummingbot. The ORION protocol as well is an integrated trading platform soon to launch which sources real-time liquidity from multiple exchanges and offers arbitrage notifications and services.
Some Resources and Links
A simple Bitcoin arbitrage calculator as a spreadsheet.
Coinarbitragebot.com, a service tracking arbitrage opportunities across a wide range of exchanges and other real-time data feeds.
Arbitrage.coincheckup.com is another such real-time monitor tracking arbitrage opportunities across all the different exchanges.
Monitoring and Strategy Automation Software and Tools
Hummingbot: Decentralized Market Making and Programmatic Automated Arbitrage Strategies
The Hummingbot instance running in the command-line.
Hummingbot is open source software that enables the construction of custom, automated trading strategies that operate on both centralized and decentralized exchanges. It is a decentralized market making software that operates as its own node and has support for a wide range of actively trading exchanges.
The state of the crypto markets today is still significantly fragmented and in its earlier phases of existence and these are preconditions that often cause market price dislocations. One of the reasons for this fragmentation is the division between centralized and decentralized exchanges which fundamentally different in how they operate.
The latter requires more technical literacy and provide better security, but tend to be much less efficient (block time intervals and network congestion bottlenecks, etc.) in terms of processing and speed.
“The unintended consequences of that market fragmentation have been a lack of liquidity and price discovery in listed securities outside of the top 100 traded names and a disturbing absence of market attention paid to small-growth companies by all market participants, including exchanges.”
- Eric Noll from Nasdaq on a hearing on capital markets before the United State House of Representatives in 2011.
Geographically fenced exchanges that don’t allow non-nationals to open accounts create silos of user bases that have little to no overlap in user bases across multiple exchanges. On top of that exchanges keep on popping up everywhere with more than 200 in place already, each with its specifics and different supply/demand dynamics which makes them particularly susceptible to price dislocations.
The Hummingbot Implementation
The Hummingbot software client can run either locally or in the cloud, similar to any other kind of node. It runs a market-making algorithms and requires users/operators to maintain an inventory of tokens and assets across different markets. Arbitrage strategies in Hummingbot will continuously monitor multiple exchanges for any considerable price discrepancies and execute transactions whenever a profitable opportunity presents itself. When using an arbitrage strategy, Hummingbot acts as a market taker, filling the best available trade orders on different exchanges.
Hummingbot will enable the execution of multiple strategies which will be released in stages, such as:
- Basic arbitrage strategies: Parametrized within a single trading pair on two different exchanges.
- Multiple exchange strategy: Increase the number of exchanges monitored to increase the likelihood of identifying arbitrage opportunities.
- Multiple trading pair strategies / triangular arbitrage: Using more than one trading pair for trying to capture arbitrage is a common strategy in foreign exchange markets.
Some of the analytical tools and technologies that will be part of Hummingbot’s arsenal for arbitrage strategy development include:
- Integration with a wide range of exchanges. Connectors for the following exchanges are supported:
- Soon to support:
- Exchange order book analysis.
For mitigating various risks, Hummingbot analyzes the transaction speeds at various exchanges, the order book in depth so as to to optimize trade parameters and account for contingencies and constantly monitors and reports exchange statuses. It also ensures information redundancy by for instance sourcing price feeds from multiple sources.
Hummingbot is effectively a trading engine for executing pre-parametrized transactions while abstracting much of the technical complexities of transacting across multiple exchanges, often of very different architecture and following very divergent kinds of operational logic (and each with their own non-standardized technical specifications). Hummingbot will facilitate trade execution and interaction with different exchanges, performing actions such as price and order book retrieval, submission of trade instructions, and, if specified by the user, handle asset transfers for functions such as re-balancing across different exchange accounts.
A Youtube tutorial on how to install Hummingbot is provided here.
Documentation is stored at docs.hummingbot.io.
Hummingbot Twitter account.
ORION: Liquidity Aggregation Protocol
ORION is an investment platform that integrates all the best features of exchanges, brokerages and instant trading dApps. It is built around a liquidity aggregator which is connected to all major crypto exchanges and its own internal decentralized ones, accessing all these markets and information all at once in providing users with the best possible price across exchanges and from a single portal.
The platform is initially powered by the ORN token, an ERC-20 that will be translated to a native token on the Holochain platform. The ORION Protocol is to keep an open-source repository for dApps/hApps, openly providing the platform’s functionality to developers and businesses and anyone seeing to build decentralized financial tools and instruments.
ORION, therefore, combines the simplicity of a brokerage with its low fees, and high liquidity enabled by the access of multiple exchanges, all within a single portal. And unlike many other crowdfunded blockchain projects, ORION already has working software and a product built.
ORION’s custom-built matching engine extends its tentacle to dozens of other exchanges aggregating real-time data and processing their combined order books for buy and sell orders at advantageous prices. The concept is somewhat similar in principle to how instant exchange cross-chain services like ShapeShift and Changelly operate.
ORION’s engine, however, is built into a traditional exchange interface and lists a whole lot more supported currencies/tokens. There are also a number of planned optimizations meant to make the platform suitable for high-frequency traders.
ORION’s underlying core technology, the cross-exchange real-time liquidity aggregator, is in an ideal position to be taking advantage of market inefficiencies and arising arbitrage opportunities. Arbitrage instances are immediately exploited by buying and simultaneously selling across markets and exchanges where price differences are detected.
ORION makes such trades available on its platform for premium users on the basis of their ORN token holdings. Such users will receive signals and notifications about arbitrage opportunities and execute the trades should the user indicate interest (with service and fees paid in ORN tokens).
September concluded the public sale of ORN tokens with incremental developments along the set roadmap continuing throughout the second quarter of 2020 before launch in production and market entry.
Other Arbitrage Bots
Gekko is a trading bot that also affords arbitrage features and supports a wide range of exchanges including Kraken, CEX, Bitstamp, etc. The whole project is open source and can be found on GitHub.
Blackbird is another open-source Bitcoin arbitrage bot implemented in C++. It is said to be extremely easy and approachable for use once having set it up. It provides support for multiple exchange platforms among which Bitfinex, OKCoin, Kraken, Gemini, and others.
Seizing the market inefficiencies of market price dislocations by simultaneously buying one and selling to the other is known as the financial practice of arbitrage. Under the efficient markets, hypothesis arbitrage opportunities are formally said to be impossible to arise.
Less formally in practice, the markets are not always or in themselves efficient. They tend to be only as efficient as the structures and relationships they form and extend, and whether or not they produce any meaningful effects or facilitate sense-making processes and price discovery.
As for Bitcoin and the state of crypto-market affairs, they’re still largely riddled with inefficiencies, flawed functional relationships between parts, fragmentation in silos and low volume illiquid markets. Not to mention the various forms of market manipulation which seem to have nonetheless somewhat faded away since 2017/2018.
A well laid-out strategy involves spending time surveying and mapping out space, getting to know the quirks and specifics of various exchanges, market participants, trying to notice possible functional relationships between things and capture market correlations that might reveal or suggest some explanation or another.
In any case, these arbitrage strategies are never executed manually through the graphic user web interfaces, but run as pre-programmed instructions from the command-line and having the bot communicate with the markets and exchanges via their API interfaces.
In summary, arbitrage is possible and can be a tremendously educational experience in the process of trying it out, but is not a sustainable and consistent long-term strategy.
The automated arbitrage and market making bots and applications mentioned above require, except for the ORION protocol (which has not yet officially launched in production), some average level of technical literacy (Linux command line and such) and taking the time to read up the provided technical documentation.
Bitcoin Arbitrage FAQs
Is Bitcoin arbitrage legal?
Everything you can do/pull off and get away with is legal. The rest is walled off with enough roadblocks in place to make it impossible. (Again, 2019 is very different from 2017/2018.) Example: https://www.bloomberg.com/news/articles/2018-01-09/bitcoin-s-43-arbitrage-trade-is-a-lot-tougher-than-it-looks
Please give a simplified example of arbitraging Bitcoin.
There was one quite some time ago in Venezuela. I didn’t do anything. Then my sister sent donations in Nano to Venezuela. There were for a period of time a lot of opportunities to exploit Venezuela. I’ve personally never done any arbitrage on anything — don’t care enough on one hand and not sure what I am actually doing underneath the numbers on the other. I can dig up examples if necessary, not a problem, but there aren’t any recent ones.
How accurate is this arbitrage calculator?
Except for the fact it needs to be updated with current prices, it’s fairly accurate as an approximation, not pricing in all the friction along the way which is really where the costs are.
What do you think of this advice: best tactic would be to keep some fiat currency on the exchange and choose the right time to execute the arbitrage?
That’s usually how it is supposed to be done in theory, and given the absence of the kind of integrated exchange applications or automated bots, I’ve recommended in the article. But that too is not a great idea because you’re keeping custody of funds somewhere you’re not sure they’re completely safe (+fees) until essentially an accident happens.
And at the same time, there’s more than 200 different exchanges all of which take fees and process operations differently (many/most of which extremely unreliable). Thing is, penetrating such siloed exchanges limited to some geography or otherwise closed off, that trade on their own markets independently of say what Binance or Coinmarketcap displays (which, btw, is not accurate at all, but if most people look at it, it becomes accurate… messari is the interface to watch: https://messari.io/screener), is where arbitrage opportunities are.
But, again, the net effort for the probable possibility and all the hops that have to be jumped, the transaction costs and time it takes makes it not only not worthwhile, but a loss (far from riskless given you’ll lose money).
I’ve only given it a try once and it was exactly a Philippines exchange, and I gave up after 30 mins. and that was years ago. It all depends on either pure dumb luck of coincidence and the willingness to pursue it or have very specific information about things you can’t normally have specific information about. And it has all gotten a lot more difficult and regulated since ~2017.
Should I try arbitrage? Or is the risk too big?
A waste of time at best. Without intimate, almost insider knowledge of the workings of exchanges or if having teamed up with somebody else across borders or some such configuration (as it sometimes takes place in the chat channels of exchanges sometimes). And then, if not that, it gets a little more technical.
This is why I provided examples of specialized software. Thing is, obviously, when these things work out and become accessible to the wider public, any such opportunities will be absorbed very quickly and iron out/correct the “market inefficiency”, synchronizing the market price across the exchanges, them now having common corridors of flattening these discrepancies.
In a word, I’d only recommend this be tried with automated software and never manually. This is still an advantage and still a realistic possibility.