How to arbitrage between Charm & Deribit

Tom
Charm

--

…for high profits at low-risk.

Summary

  • At Charm.fi, traders were able to generate gains up to $18k, and ROI up to 86%, during Charm’s Trading Competition.
  • This is most likely due to arbitrage.
  • Arbitrage is when traders buy an exposure on one platform, and simultaneously sell it on another.
  • Arbitrage is one of the best ways to earn high profits at low risk.
  • This article describes how to do arbitrage trades between Charm and Deribit.

For all the examples below, the numbers are extracted using historical data, and do not reflect the current trading conditions. If you place the same trades now, you may suffer a loss. Please always check the current prices at Charm and Deribit, and do you own research, before placing a trade. This article is for information purposes only, and do not represent financial advice.

Introduction

Charm’s Trading Competition has generated a lot of excitement, and our trading volumes have exploded since the competition was launched. In little under 4 days, we have generated over $520k in trade volume — much more than the total volume during an entire week of trading in our 1st markets! 43 trades were placed so far (vs 23 for Hegic in the same period) in our WBTC markets, where top traders gained up to $17,000 in profits, with an ROI of up to 85%. The early data indicates:

  • There are strong demands from traders to use Charm.fi for their trading needs.
  • Charm is the first protocol to have generated sufficient liquidity to support a fully functioning trading competition in decentralized options.

We are tremendously excited by Charm’s capabilities, and by its growth; but at the same time, we also realise that options trading is inherently risky, due to the complexities of options instruments, their high leverage, and the extreme volatility of the underlying assets. This means both gains and losses are magnified, especially in a real-life environment where complex economical and psychological factors are at play.

Risk management is therefore of the utmost importance when trading options, and one of the best ways to mange risks is to simultaneously open opposite positions to buy or sell the same option on different platforms, in order to fully diversify risks and generate profits. This trading technique is known as arbitrage, and arbitragers increase market efficiency by ensuring prices across different platforms are fair and consistent.

In this article, we will publish some guidelines on how users can perform arbitrage trades at Charm and Deribit, in order to generate high profits at low risk. The following steps are required for a successful arbitrage:

  1. Finding good arbitrage opportunities.
  2. Estimate the maximum gains.
  3. Execute the arbitrage trades.
  4. Collect the low risk profits.

Hopefully these steps can help users generate consistent gains and return on investment (ROI), not just during Charm’s Trading Competition but also after it, as they develop more sophisticated trading strategies of their own.

Let’s dig into the details of each step…

1. Finding good arbitrage opportunities.

Data analysis is the key to successful trading, and this includes finding good arbitrage opportunities. At Charm.fi, you can start by looking at our console, to compare prices at Charm.fi to those at Deribit*. The console shows the zero-slippage price of all the available options on Charm, before trading fees are applied.

*Deribit is the leading centralized exchange for BTC options, and we will assume their prices are the most accurate for arbitrage purposes.

From the console, only the following scenarios indicate a good trade:

The price to buy an option at charm is lower than the bid* price on other platforms (eg on Deribit).

*The bid price is the price at which an option can be sold instantly in the market.

For example, Charm console for WBTC Calls shows the price to buy a Call with strike price of 56,000 is 0.0142 BTC, whilst the bid price on Deribit is 0.0345 BTC. Calls at Charm are therefore under-priced, as they can be sold elsewhere at a profit.

Charm console price for WBTC calls shows strike price $56,000 Calls is priced at 0.0142 BTC.
Deribit shows the same call can be sold at 0.0345 BTC.

Therefore, buying calls with strike price of $56,000 at Charm and selling the same call at Deribit, might be a good arbitrage trade.

The ask price* on Deribit, is lower than how much it can be sold on Charm.

*The ask price is the price at which an option can be bought instantly in the market.

For example, Deribit shows the ask price to buy a call with $40,000 strike price is 0.2150 BTC, whilst the price to pay for the ability to sell the same call at Charm is 0.6036 BTC. In the console, 0.3963 BTC (ie 1–0.6036) is actually the money you receive from selling the call, and this is higher than the 0.2150 BTC you paid for it at Deribit.

Deribit shows the ask price to buy Strike Price 40,000 Calls is priced at 0.215 BTC.
Deribit shows the amount received from selling the same call is 0.3963 BTC.

Therefore, buying calls with strike price of $40,000 at Deribit and selling the same call at Charm, might be a good arbitrage trade.

2. Estimating the maximum gains.

After identifying a good trade, the next step is to estimate the maximum gains from the trade. This can be done as follows:

i) Decide the maximum amount of capital you’re willing to lose

For example, if you capacity for loss is around 0.003 BTC ($150), then the total cost to buy calls should not be more than this.

ii) Change the option size* at Charm.fi…

…so that the total cost is below the maximum capital you’re willing to lose, after reading the information in the yellow box.

*Deribit can only support option sizes in multiples of 0.1, therefore for arbitrage purposes, please only place trades in 0.1 multiples if you wish to arbitrage between Charm and Deribit.

If your capacity for loss is 0.003 BTC ($150), you should buy an option size of 0.1 at Charm.fi in order to arbitrage between Charm and Deribit.

For each option size, calculate your estimated profits if an option is bought or sold at Charm, and then bought or sold at Deribit.

The diagrams below show an arbitrage where an option is bought at Charm and sold at Deribit (Scenario 1):

Scenario 1 — Buying a call with $56,000 strike price, with option size of 0.1, will cost 0.002652 WBTC ($133).
Scenario 1 — Selling the same call and size at Deribit will receive 0.00345 WBTC ($173). Make sure you have at least 0.09655 WBTC ($4,827), or 0.11–0.00345, of deposits available at Deribit to lock in the sale price, otherwise your position might be liquidated by Deribit before expiry.

For scenario 1, if an option size of 0.1 is chosen, the total cost to buy $56,000 calls at Charm will be 0.002652 BTC ($133). The same option and size can be sold at Deribit for a total value of 0.0345 * 0.1 = 0.00345 BTC ($173). Therefore the estimated gains are $173-$133 = $40***, for an ROI of 30%.

***make sure you have at least 0.09655 WBTC ($4,827), or 0.1–0.00345, of deposit available at Deribit to lock in this profit, otherwise your position might be liquidated by Deribit before expiry if there are large price movements.

The diagrams below show an arbitrage where an option is bought at Deribit and sold at Charm (Scenario 2):

Scenario 2 — Selling an call option (with Strike of $40,000) of size 0.1 for 0.0384 ($1920), ie 0.1–0.0616, will cost 0.0616 WBTC ($3,080) at Charm.fi.
Scenario 2 — Buying the same option at Deribit will cost 0.02150 ($1,075).

For scenario 2, if an option size of 0.1 is chosen, the total cost of buying calls with strike price of $40,000 at Deribit will be 0.215 * 0.1 = 0.0215 BTC. At Charm, a 100% collateral is required before you can sell assets you do not own, and the cost of selling a call is the net cost you pay after providing 100% of the option size as collateral AND sold a call option based on it. This means the proceeds of selling the call option = options size minus the cost of the Sell Call. For the example above, the total proceed from selling the call options is 0.1–0.0616 = 0.0384 BTC, which means your estimated gains will be 0.0384–0.0215 = 0.0169 ($845), for an ROI of 20% [0.0169/(0.0616+0.0215)].

Change the options size and perform the above calculation again

Repeat the steps above to find the option size that gives you the maximum gains, at a total cost that is below the maximum capital you can afford to lose.

3. Executing the arbitrage trades.

After estimating the maximum gains above, you are now ready to place the trades at Charm and at Deribit!

The following are some extra considerations, if you want to maximise your gains:

If you wish to sell at Deribit (aka Scenario 1)

Make sure you deposit ‘1 minus the bid price’, before opening a position at Deribit to sell an option at the bid price. This is because Deribit can automatically close your position if the price becomes too volatile, which means your gains are at risk if the deposit is not sufficient.

Under scenario 1 (for example), you need to make sure you have at least 0.09655 WBTC ($4,827) at Deribit, or 0.1–0.00345, to guarantee your sell trades will not be closed by Deribit before expiry date.

If you wish to sell at Charm (aka scenario 2)

You do not need to do the above, because the price you pay to sell an option at Charm will account for the extra deposit required. As such your sell trades will not be closed regardless of how the price moves.

4. Collecting the low risk profits.

In order to collect the low risk profits, it is helpful to summarise the overall effects of the trades you placed above.

For both scenarios, you are paying a total cost that is less than the total amount you will receive from Charm and Deribit on settlement date. For the calls market, the total amount you receive on settlement date will be equal to your options size (ie the size of the underlying), so that if your total cost (across Deribit and Charm) is less than the options size, you will earn a profit. This is illustrated in the diagram below for scenario 1:

Before expiry date, you can buy 0.1 units of a call with strike price of $40,000, for 0.0215 BTC at Deribit. You can sell the same call at Charm by paying 0.0616 BTC to buy a covered call. Your total cost is 0.0831 BTC and on settlement date, you will get back 0.1 BTC because the payoff of calls + covered call = the underlying. This generates a maximum profit of 0.1–0.0831 = 0.0169 BTC ($845) for a maximum ROI is 20% (0.0169/0.0831).

A similar reasoning can be applied for the puts markets, except that the total total amount received on settlement date will be the strike price multiplied by the options size:

An arbitrage opportunity exists if the total price to buy a put option in USDC, and to sell the same put by buying a covered call in USDC; is less than the total amount you will receive on settlement date in USDC. This amount is equal to strike price * options size.

On settlement date, the total price of the options you bought at Charm and Deribit, should be very close (if not exactly the same) as the options size (for the calls market), or to the strike price multiplied by the options size (for the puts market). This means you can realise you gains either by closing your position before the exact settlement time (4pm for Charm, 8 am UTC for Deribit), or wait until after the settlement time to collect your payoffs from Charm and/or Deribit.

Let’s put all the above together in an example:

  1. Using our console, you identify Sell Calls at $40,000 strike price is a good trade because the price to sell them at Charm is 0.3963 BTC, whilst the price to buy them at Deribit is 0.2150 BTC.
  2. You estimate your maximum gains by going to Charm.fi, perform trial and error per step 2 to find a maximum gain of $845 (0.1–0.0616–0.215*0.1) will occur; if you place a trade size of 0.1 to sell calls with strike price of $40,000 at Charm.fi for 0.0616 BTC, and simultaneously buy 0.1 units of the same call at Deribit for 0.0215 BTC (0.215*0.1).
  3. You execute your arbitrage trades by placing a trade at Charm.fi to Sell Calls with a size of of 0.1, for 0.0616 BTC. At the same time, you place a trade at Deribit to buy calls with a size of 0.1, for 0.0215 BTC.
  4. You collect your payoff by monitoring your trades on settlement date, and close your position on Deribit and Charm.fi if the total value is very close to 0.1 BTC. Alternatively, you can wait until after settlement date to collect the payoffs but the total value may be a bit different than 0.1 BTC because Charm and Deribit have slightly different settlement times.

Your realised profits before gas fees, should be very close to 0.0169 ($845), for an ROI of 20%.

The above is just one example of a trading strategy, and with practice, you will develop your own as you get better at analysing data, estimating your profits, executing your trades, and collecting your profits. The principles are not difficult, but applying them does take a lot of discipline, patience, and hard work. At Charm.fi, we’re here to help you apply them in a real-world environment, and also to help you learn new skills to better manage your investments, and your wealth.

We hope you will find these skills useful in your journeys ahead.

:)

You can try out some arbitrage trades at Charm.fi, make some profits, and win Charm Tokens!

If you have any questions, feel free to ask them in our Discord or Telegram.

To be the first to hear updates, follow @charmfinance on Twitter

--

--