Bitcoin interest has been growing lately, and with that comes volatility. Bitcoin is currently much more volatile than any other currency, making it a prime candidate for arbitrage. Before I get into details of Bitcoin arbitrage, lets get this out of the way:
What is arbitrage?
Currency arbitrage is the practice of taking advantage of price differences between markets. These price differences emerge because certain exchanges are more liquid than others. Bigger exchanges with more trading will 'drive' the price of the rest of the market. Smaller exchanges follow the price of larger ones, with a small lag. That small lag is what makes arbitrage possible.
Imagine something fantastic happens to the value of Bitcoin. For this example, pretend a government decided all deposits in Bitcoin will remain untaxed. This type of event would most likely cause many people to buy Bitcoin. Most people flock toward the most common exchanges, because bigger exchanges are easier to trade in. Lets pretend this larger exchange is Bitstamp; one of the larger exchanges. The price of a bitcoin on Bitstamp will increase due to the surge of buyers. Meanwhile, at CampBX, there is less volume and the market is slower to react to change. For about an hour, the price of bitcoin on Bitstamp is going to be more than CampBX.
Imagine this hypothetical timeline:
Time Bitstamp CampBX Arbitrage 9:00 AM $100.10 $100.15 -$0.05 IRS announcement... 10:00 AM $105.00 $100.50 $4.50 11:00 AM $103.00 $102.50 $0.50
At 10:00AM, you could buy a bitcoin on CampBX for $101 and sell that same bitcoin on Bitstamp for $105, making $4.50. This is what arbitrage is, and it really can be a fool-proof method of investment if you understand and manage the complexities of this situation. So, what are those complexities?
One point of confusion is the delay between exchanges during a Bitcoin transfer. This is because of something called blockchain confirmation, an essential aspect of Bitcoin. Without going into technicalities, this is a process that takes around 10 minutes to complete. Most exchanges require 6 confirmations before allowing you to use newly transferred funds. If you're executing arbitrage, you'll need to wait an hour before selling the same bitcoin on the other market. As you can see in the hypothetical timeline above, an extra hour can eliminate any arbitrage available.
You can get around this limitation!
By keeping a small balance of Bitcoin in the larger exchange, you can take advantage of immediate arbitrage. If you're trading 0.1 bitcoin during arbitrage, keep at least 0.1 bitcoin in the more expensive exchange. After an hour, your 0.1 bitcoin will get transferred from the cheaper exchange to the more expensive one. If you want to be able to conduct arbitrage more than once per hour, just keep a little extra funds in the more expensive exchange.
You have to account for transaction fees when determining whether to conduct arbitrage. Most exchanges have a transaction fee of 0.6%. This fee gets taken twice because it happens for each exchange. In the above arbitrage example, the fees would look like this:
Fees Bitstamp $105.00 $0.63 CampBX $100.50 $0.60 True arbitrage: (4.5 - 1.23) = $3.27
Arbitrage is absolutely still possible with fees, you just have to account for them when calculating profit levels.
Arbitrage is available to more than just hedge funds and high frequency traders. If you have some programming skills, there are tons of open source arbitrage libraries out there that you can play with. I wrote one in Ruby! I'm also crowdfunding a course on creating your own bitcoin arbitrage bot, no programming skills required!