Today, let’s dive deeper into the technical side of the
@CarmineOptions
project, specifically the architecture of the smart contracts that power the platform. This breakdown will help developers better understand the key details of the system. 🔍
#Key Technical Points:
1️⃣ Separate Liquidity Pools for Options
Each underlying asset (e.g., the ETH/USDC pair) has two separate liquidity pools: one for put options and another for call options. This allows for more precise capital and risk management, keeping them isolated between different types of options.
2️⃣ Options Denominated in Different Tokens
Call options are denominated in underlying tokens (e.g., ETH for the ETH/USDC pair), meaning you’ll need the underlying asset (ETH) to trade call options.
Put options are denominated in quote tokens (e.g., USDC for the ETH/USDC pair), requiring you to hold quote tokens (USDC) to trade put options.
3️⃣ Trading Options
- For trading puts, you need quote tokens (USDC) to either pay the premium or provide collateral.
- For trading calls, you need underlying tokens (ETH) to pay the premium (if buying options) or provide collateral (if selling options).
4️⃣ Capital Management through AMM
All capital is managed by an automated market maker (AMM), meaning that neither the options themselves nor the liquidity provider (LP) tokens have direct access to other ERC-20 tokens like ETH or USDC. The allocation of capital is handled internally through the platform’s accounting mechanisms.
5️⃣ Difference Between Closing and Creating an Opposite Position
It’s important to note that closing a position and creating an opposite position*are not the same:
Closing a position fully terminates the option and releases the locked capital.
Creating an opposite position mints a new option, leaving you with a net zero exposure, but without releasing the locked capital.
6️⃣ Factors Affecting Option Pricing
Option prices are influenced by two main factors:
- Changes in the price of the underlying asset, which is an external variable fetched from oracles.
- Trading activity, which is a function of real demand and supply on the platform. This affects the volatility parameter, which changes dynamically based on actual trading.
In summary, the smart contract architecture of
@CarmineOptions
is designed for flexibility and security, enabling efficient risk management and providing users with a transparent and reliable trading environment.