Crypto Futures Contango: 27% irr in USD?
This is a description of crypto derivatives. These products involve leverage and price dislocations are common, they have the potential for high returns, and also for total loss of investment, or unlimited loss.
The comments in this article correspond to the date of publication on May 9th 2021, The graphs below are set up to update every minute so as to show how market levels vary since publication.
Edit 20230125: since 2022: Deribit now shows annualized contango yield here.
Contango Arbitrage Basics
Futures such as the Jun 25th Future trade at a 2.9% premium on Kraken, 3.3% premium on deribit, 4.1% premium on binance, these correspond to an annualized rate of 21% to 27% in an arbitrage where one is long the spot BTC and short the future.
In theory, very high contango is justified by high storage cost, but storing BTC is completely free. An alternative explanation is a market asymmetry: most directional future traders use the future contract to build a leveraged long position on bitcoin. Going leveraged or naked short bitcoin is a bad business proposition in the medium term, and anyone who tried that was wiped out of the market long ago. This results in a strong asymmetry between directional traders which is reflected in a contango rate differential of more than 20% and is not being arbitraged away yet.
The 27% annual storage cost is a risk-free USD return, it is the reward that the BTC market give an investor for holding bitcoin without getting any of the return of BTC, this is the reward expressed as a riskfree USD rate that traders going long a bitcoin future contract are ready to pay the trader going short that contract.
We will review a few contracts:
- CME allows investors to go short 5btc, so the arbitrageur needs to hodl 5btc. He also needs to post 50% of the value as margin in USD, and post additional margin if the btc goes to infinity. To be perfectly safe, an investor needs 10btc and 50% of the amount in USD as initial margin, and he needs to convert the btc into USD as margin calls happen. we see that CME makes it 2.5 times more capital intensive to arbitrage this.
- Kraken allows trading futures, with futures, the margin is BTC, which means that you just need 1btc to go short 1btc. The premium appears to be 1.2% lower than on binance. Bid offer is 0.08%. There are rolling costs charged every day. Other futures on ETH, LTC, etc are possible, but bid/offer is larger.
- Deribit allows only BTC and ETH, the margin is always counted in BTC which allows to pass the arbitrage. The premium is intermediate between that of binance and kraken. The bid/offer is 0.03%
- Binance allows "coin" BTC future, which use the btc as margin collateral. This is importance in order to play safe. The binance b/o appears to be near 5e-6, roughly 200 times lower than that of Deribit.
Kraken, Deribit, and Binance have a programmable API.
- short term contracts (before Jun25) have higher annualized return but b/o is higher leading to lower all in return
- long dated contracts (sep, dec, and march) have lower annualized return and potentially long time to converge, but guarantee the high irr for a longer time
- BTC and ETH have a relatively low rate
- LTC, BCH etc have higher rate but higher b/o. They are not available on deribit.
Futures Arb Risks
Compared to standard credit instrument, there is no credit risk. But there are many risks:
- price divergence risk (future price distance to spot increases instead of converging to 0)
- execution risk (trader error)
- counterparty defaults and exchange closes the trade, at which point, the trader becomes naked long his currency tokens. This is only likely to happen if the crypto went down a lot, and you need to be ok holding that crypto if it gaps down.
- platform risk (platform gets hacked), the question here is how much BTC should you post as collateral on the platform, there is a balance between the amount you put at risk of hacking and the risk you incurr of getting closed down due to insufficient margin if the crypto gaps.
- using these platforms appear much simpler than CME because they accept the crypto as margin.
Deribit offers also options trading. The implied bid/offer volatility is visible, and it is in the vicinity of historal volatility, which is 80%-100%. The ETH volatility is in the 100%-120% range.
The contracts are margined in btc, not in USD. This means that there is no safe static amount of margin you can put if you sell a btc put. For a put btc at USD50000 if btc goes to 0, most you can lose is USD50000, but as btc is the margin currency, one would need to post unlimited btc as the crypto falls. However, using btc for margining means that selling a covered call can be with a static btc cover amount.
Several strategies are possible: vol arbitrage and call spreads.
Short-term vol arbitrage:
A possibility is to write or buy short dated 4% OOM calls to receive the difference between historical and implied volatility. It would appear that quoted volatility is so low that buying calls is interesting as one earns in 10% of days and the earning over a long period tends to be 0.29% for a cost of 0.20% when implied volatility is 80%.
My backtesting was done over last year, further checks will be needed for this as implied volatility was higher in the past. It would appear that doing the arbitrage daily allows higher payoff than 2 days options.
This strategy consist in selling covered put when you need to buy more btc and selling covered call when you need to sell it. Unfortunately, as you cannot post USD or stablecoin margin, there is no safe way to sell puts for buying on the deribit platform.
Conversely, Binance just started to offer vanilla options that are USDT collateralized. This prevents you from safely selling covered calls but one can sell puts provided enough USDT is available. One is then exposed to USDT risks.
Also, it appears to me that selling options is a loss making proposition given quoted volatility on deribit. I will need to investigate this further.
Long dated call spread
The following call spread takes advantage of the large contango. Long maturity is required to have an interesting call spread: - long spot btc 58k (fut mar 22 cost 65k) - long a put at 60k mar22 - short call 80k mar 22
Image Credit: Wikipedia
Putting the same call spread on Sep 21 results in a 60k-64k range only, and you already earn 2k by Jun with the future arbitrage.
The Jun call-spread does not have positive upper bound compared to spot, so it is not as attractive.