The fast development of on-chain crypto exchanges has been revolutionary. As crypto derivatives such as options gain traction, one can’t help wondering whether AMMs can also be successful in providing efficient decentralised trading platforms for options.

One key hindrance in designing this on chain option platform is that options are contracts that settle in the future. Notwithstanding the issue with enforcement of the contracts, especially if the users sell options which end up in the money, the limitless varieties of option contract specifications fragment the market and make it difficult to trade.

Some protocols proposed ERC721 as a solution. I beg to differ. The reason is that there isn’t enough market depth for each ERC721 token. Therefore it’s far-fetched to expect trade volume on those tokens to materialise. Even at-the-money options change their characteristics from one second to another. Any buyer would have a hard time finding the right token to purchase.

It is thus more natural to treat volatility as a single hypothetical token on the back of which options can be traded. How? There are unlimited number of points on the volatility surface covering all maturities and option strikes. A balance needs to be struck between the preserving a skew and simplifying the volatility quotes. The solution is to use the volatility premium as the single token and derive the surface based on historical volatility and a formularised skew for each strike.

The simplest constant product formula stipulates that the product of the reserves of the token pair is constant: x • y = k. In order to apply this to options world, the idea is to set appropriate quantities of x and y. Moret introduces a constant product market maker for volatility premium. The constant product market maker for volatility is defined as x • (y + k)= k, where x is the capacity of the liquidity pool measured in option Gamma and y is the volatility premium.

Constant Product curve for option/volatility AMM

This revolutionised constant product market maker works great in providing the following features that are critical for an options AMM:

  1. Volatility is adjusted according to the capacity of the liquidity pool (e.g. measured in USD). Since users can both buy and sell options, the capacity can range from 0% (all users buy options) to 200% (all users sell options). Naturally if the capacity is close to 0%, the demand from users purchasing options is high and so the volatility premium should reflect that. Similar when the capacity is close to 200%.
  2. The volatility is floored at 0%. The volatility premium will never be lower than negative of historical volatility.
  3. The constant can change so that the shape of the curve can be flatter or steeper around 100% point, which works better at calmer or more volatile time in the market.

As a side note, please check out the grant page of 1inch, from whom we have received generous help to build up this protocol.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store