Decentralized Options Protocol Designs

This article will discuss different decentralized options protocol designs. I wrote this for myself but I thought maybe other people would find it useful so I published it.

It is very early in the space and the protocols are imperfect but there will likely be significant growth in volumes over the coming months. Because the market opportunity is so obvious, there are a number of teams going after it.

Centralized exchanges are already doing significant volume in BTC and ETH crypto options. The market is dominated by Deribit who averaged $676 million in daily volume over the last month in BTC options and $131 million in ETH options.

The argument for making this asset class decentralized should be familiar to most-decentralized options mean that anyone in the world can trade in a single market with no KYC/AML regulations and that options can easily interact with other money legos to make useful products. One example might be an AMM that automatically hedges liquidity providers with options so LPs are exposed to less impermanent loss. So far, the centralized exchanges have also been quite slow to introduce options for the long tail of crypto assets, so Defi options can step in to fill that gap as well.

Although there are some unique challenges to creating a decentralized options product, I don’t think they are challenges that make this specific asset class impossible to “decentralize” well. Some fundamental issues that all competitors have had to address:

  1. Creating deep liquidity
  2. Legible (and good) returns for option-writers. Legible meaning option-writers can easily understand the risks they are taking on when being an LP and can easily reason about how changes in the price of underlying assets will impact their returns
  3. Cost of trading with high gas fees on Ethereum

In order to create deep liquidity, some platforms have chosen to use an AMM for writing and selling options (e.g. Hegic, Charm). Anyone can deposit assets into the AMM and these assets are used to write options for anyone who wants to buy them from the AMM. This helps create deep liquidity while in some cases making it difficult for option-writers to earn legible and good returns.

Other platforms, like Opyn, have gone the more standard route of having option-writers specify which option parameters they would like to write (which strike price, expiration etc.). This is the experience closest to traditional options platforms and it makes option-writer returns very legible, but at the cost of liquidity. Opyn is currently operating order book exchanges with this approach. It is also possible to build AMMs on top of the base layer that Opyn has built already, and this is something the team has been thinking about as well.

So there is a spectrum for decentralized options from an extremely specific interface for option writers to an extremely general interface for option writers. Opyn’s base layer is very specific because option-writers can control every parameter of the option they are writing.

A more general approach might be pools for single option-types. So there might be a WBTC call pool and a WETH put pool etc. but each of these pools writes options across a set of different expiries and strikes. LPs can choose which pool they want to enter based on whether they are bullish or bearish on the underlying asset.

A more general approach still would be Hegic, where option writers can choose which asset to supply, but the pool writes both puts and calls and so the writers are not really taking a position on the underlying asset. Now that we have an overview we can dive into individual protocols.

Opyn V1: Convexity Protocol

Opyn V1 was released in February 2020. The Convexity Protocol is a protocol for writing American-style options on a limited set of whitelisted tokens.

Anyone can create a new custom option with this protocol by specifying the strike, type of asset, expiration, etc. However, this process requires deploying a new smart contract which costs more than $1000 at current gas prices. In practice it seems like all new custom options were created and deployed by the Opyn team.

Each option is represented by an ERC20 token. Once a custom option structure has been created, anyone can mint instances of it by locking collateral. For example, if you want to mint ETH calls, you lock in n ETH to mint n ETH calls where each call corresponds to one ETH. The owner of 1 ETH call option then has the right to trade the strike price worth of say USDC for 1 ETH at any time until expiration.

This is what I would call the “naive” approach to options. It is fully-collateralized, and it works. Aside from the massive cost to create a custom option, there are a few other issues with this design.

  1. Option-writers don’t have flexibility on the type of collateral used: Say I want to sell ETH puts where an option buyer is buying the right to trade x USDC for 1 ETH. In Opyn’s V1 I have to lock in USDC as collateral. But if I am selling puts, I probably am pretty bullish on ETH. What if I could lock in ETH as collateral instead? And if the ETH price starts falling, the contract will automatically liquidate me and convert the ETH into USDC. So say I want to sell one $1400 ETH put. Instead of locking 1400 USDC as collateral, say I could lock 1 ETH instead. If the ETH price falls below say $1450, I will get liquidated and my ETH will be sold for USDC and remain locked in the contract. However, if the ETH price stays high and the option I sold is not exercised, I will just get back my ETH. This way, I can keep my upside exposure to ETH while earning additional alpha. Selling put options has now become an additional way to profit off my conviction on ETH’s upside potential. This is actually something Opyn has addressed in V2.
  2. Liquidity: Because Convexity Protocol options are ERC20s, they can trade anywhere. But for the most part they seem to be trading only on Uniswap. But there isn’t enough liquidity to place orders with any size without significant slippage. For example, the total liquidity on Uniswap for UNI calls is just 2000 UNI calls. Furthermore, the aforementioned cost of creating a custom contract means that the vast majority of assets/strikes have 0 liquidity.

Opyn V2: Gamma Protocol

Opyn V2 was released at the end of 2020. It offers auto-exercised European options. Like V1, anyone can create a custom option. Once a custom option is created, anyone can mint instances of that option by locking collateral and then they can sell these options (represented as ERC20s).

To start with, V2 only has WETH/USDC options but the Opyn team says they are working hard to ensure security before allowing users to mint options on other assets on V2. V2 has added some nice features such as allowing users to collateralize options with other options and thereby improve capital efficiency.

It remains to be seen how well V2 will actually perform because the team has so far limited it to just two products: WETH-USDC puts with USDC collateral and WETH-USDC calls with WETH collateral. Increased capital efficiency means V2 should theoretically have higher liquidity than V1. Furthermore, European options are in general easier to price so that may encourage market-makers to step in. However, as a whole it seems any approach without an AMM will have a difficult time competing with their liquidity across different strikes/expiries and asset types.


The current version of Hegic’s protocol (v888) was released in October of 2020. Hegic has gone with a pool approach with two pools: ETH and WBTC. Anyone can specify the type of option (call or put), the strike price, and choose an expiration and the pool will quote them a price at which they can buy the option. This maximizes liquidity across different strikes and expirations. But as a pool LP, it is tough to predict your returns.

The pool quotes option prices based on the strike price, underlying asset price, asset implied volatility, and the expiry. So option prices are not directly responsive to options’ supply/demand.

As explained in Hegic’s v888 announcement, the idea behind these pools is that returns for LPs should be somewhat neutral to the price movement of the underlying asset because LPs will be writing both puts and calls. However, LPs are going to be writing whatever options people want to buy. So if the general sentiment is bullish on the underlying, LPs will be writing more calls and if the sentiment is bearish they will be writing more puts.

Hegic also has a token called HEGIC. For the first year of the protocol (until 10/10/2021), HEGIC tokens will be rewarded to LPs as well as anyone who buys Hegic options from the pools. Anytime someone purchases an option, they must pay a 1% settlement fee, which are all sent to the “staking lots.” HEGIC holders can stake in a “staking lot” to receive a pro-rata cut of those settlement fees. So the value of the HEGIC token is tied directly to the platform’s usage through staking lots. LP HEGIC rewards have been subsidizing the otherwise poor LP returns.

It remains to be seen how the protocol will manage once these rewards are removed. It’s possible that the option pricing formula will have to change if things are going to work without token rewards.

Dune Analytics shows Hegic LP’s realized returns have not been great ( However, option-wrtiers are obviously short volatility and they would have done quite well if market were more stable. Regardless, so far Hegic has been the most successful decentralized options protocol by total volume. They have a great community behind the project as well which I’m sure will continue building and innovating on top.


Charm quite a unique options platform offering European options with an AMM. Unlike Hegic, prices are directly responsive to option supply/demand. Charm is at a very early stage but already has good traction on Mainnet with more than $1 million in trading volume in its first 2 weeks. Each Charm option is an ERC20.

Each Charm AMM pairs options such that the sum of these options adds up to a constant payoff ( One example is a put option and a covered call. If you have an AMM for assets whose payoffs add to a constant value, you can take advantage of a whole class of “prediction-market AMMs” which are a class of AMMs that are traditionally used for prediction-markets where payoffs add to 1.

Charm has a number of great properties. Firstly, of course it has good liquidity as it is an AMM. Secondly, it is cheap to use relative to other protocols with a relatively simple smart contract codebase. Thirdly, LPs are not exposed to significant loss. Let’s say you put 1 ETH into the ETH Call pool. You should be able to withdraw approximately 1 ETH in the future with certain small deviations. Similarly, if you LP into the ETH put pool, you should be able to withdraw roughly the same amount of USDC as you put in.

This design essentially allows anyone who owns the asset to get involved in being an LP. If you are already long ETH, why not LP and earn a bit of return from trading fees on Charm?

This property should create a huge amount of liquidity on Charm and I’m really excited to see where the project goes from here, especially when more expiries and assets are added. They’ve done a great job of solving for the three areas of concern I mentioned in the beginning of the article: liquidity, good/legible returns for option-writers, and cost of trading on Ethereum.

Additionally, thus far their option prices have been competitive with Deribit as well as decentralized platforms, which is to be expected as arbitragers will move Charm’s prices.

Finnexus Options v1.0

Finnexus is another innovative platform that offers American options with an AMM. A single one of their AMM pools takes one asset in as collateral, but can write options of many different expiries, strikes, and assets. Finnexus calls these pools MASPs (Multi-Asset Single Pool). Finnexus already has calls and puts on BTC, ETH, MKR, SNX, LINK. Furthermore, they already have significant liquidity thanks to their MASP approach. Right now (Feb. 21 2021), I can buy 100,000 SNX calls at $21 that expire in 7 days. This trade has significant slippage, but even having the ability to execute this trade shows a lot about the platform.

Finnexus currently has two MASPs, one FNX pool, and one USDC/USDT pool. To be an LP in the FNX pool, you supply FNX. You can supply USDC or USDT to be an LP in the USDC/USDT pool. When you exit the pool, you get back the asset you supplied to it.

Anyone can buy options from the pool and the quoted price is a combination of the Black-Scholes model price from an Oracle feed, plus an adjustment factor for the relative demand of call vs. put options.

So far they have done a great job of attracting liquidity through token incentives. But I have some concerns with the way Finnexus’s protocol is currently structured.

The first has to do with collateralization. The two MASPs either have USDC/USDT or FNX locked as collateral but they are writing options across a range of different assets. All other options protocols we have examined in this article have been fully collateralized, meaning the option buyers know for a fact that they will be able to exercise no matter what happens. But things are more complicated with the MASPs because the pools do not have the underlying asset on hand.

My second concern is just that option-writer returns are very illegible. They have no idea what type of options they will be writing or even on what asset they will be writing them.


There are many platforms I missed but I wanted to highlight some I found most interesting.


In general, there is a ton of experimentation across the design space and I think Defi is doing a lot to accelerate innovation across options as a whole.

Personally, I am most excited about Charm’s approach. They have built a very innovative product with some great properties:

  1. Maximizing the amount of value that could be involved in writing options by minimizing LP risk
  2. Providing a great experience for buyers with liquidity across multiple strikes.
  3. Cheap transaction costs
  4. Cheap options due to their prices being shifted by the market through arbitrage

I put this together based on information from project websites/whitepapers and talking to the some of the project teams. If any information here is outdated or you believe it is a misrepresentation of a project, please leave a comment and I will address it. You can also reach me on Twitter at @AnishNuni