Market Makers
Guide on how an institutional investor makes market for options on Moret
Since Moret is an AMM on volatility which allows end-investors to transact on-chain from both buy and sell side, the role of making market is dutifully carried out by the liquidity pools.
What liquidity providers to Moret do is to take on residual risks to the price movement and hedge out the risk as much as possible, by transacting the underlying tokens on the open market. This is called the hedging mechanism.
The hedging mechanism relates to how the exposure of option to the token price is managed. Normally an amount equal to the Delta of the options is set aside as the hedging position. The Delta is the change of option price vis-a-vis underlying price. By dynamically adjusting the hedging positions, the liquidity pool will be able to minimise its capital fluctuation and match the option payout to the investors. However, the actual algorithms might differ from one liquidity pool to another.
Sample hedging bot can be found below:
let params = { 'fromTokenAddress': sell_address, 'toTokenAddress': buy_address, 'amount': Number(amount), 'fromAddress': market_address, 'slippage': slippage, 'disableEstimate': 'true' };
var url = new URL(‘');
Object.keys(params).forEach(key => url.searchParams.append(key, params[key]))
let response = await fetch(url);
let data = await response.json();
let call_data = web3.utils.hexToBytes(data['tx']['data']);
await, max_amount, oneinch_router, call_data, default_gas).send();
Authorised bots are used to run hedge transactions. When Delta is positive, the liquidity pool converts USDC into the underlying token (WETH or WBTC) using 1Inch Aggregation protocol.

Volatility Automatic Market Maker

Option premiums are determined by the spot price, strike price, expiry, token amount and volatility. The spot price is retrieved from price oracle Chainlink. Strike price, expiry and token amount are set by the investors. The last input for the option premiums is the volatility, which is determined in a constant product market maker mechanism, which forms the core of Moret AMM.
The total volatility consists of two parts: backbone volatility and volatility premium
Backbone volatility is a rolling weighted average historical realised volatility of ETH/BTC prices. The data is provided by the Moret volatility oracle detailed in the 'On-chain Oracle' page.
Volatility premium is determined by the capacity of the liquidity pool, via a constant product market making model. Each option bought by investors has positive risk exposure to the liquidity pool, while each option sold by investors as part of the covered short positions, has negative risk exposure to the liquidity pool. The more positive the net risk positions are, the less capacity the whole protocol can support investors to buy additional options. Therefore, a constant product formula works neatly in defining the volatility premium that investors need to pay in order to buy put or call options. Conceptually volatility premium * capacity = constant. The higher the capacity is the lower volatility premium would be. If there are more selling positions than buying, the capacity could exceed the total liquidity provided, in which case the volatility premium can even be negative.

Volatility Skew

The difference in volatility between options with at-the-money strike and other strikes is the volatility skew. Moret formulaically constructs the volatility skew so in-the-money or out-the-money option purchasers take on more volatilities than those buying at-the-money options.
Copy link
On this page