Open a new option position (of any type) or add to an exisiting position.
Reduce the size of an existing option position or close it fully.
Same as closing a position, but priced using a different method. Can only be called when outside of delta cutoffs or after the trading cutoff for a given board has passed.
Add collateral to any open short position. Does not need to be owned by the caller.
Split an OptionToken into two parts, specifying the new amount and collateral. For shorts this amount of collateral must be more than the
Merge two or more positions of the same
Initiate a deposit. This will take sUSD from the depositor and either immediately mint LiquidityTokens for the LP (if no boards are live), or will create an entry which will be processed by keepers after the deposit delay - at which point LiquidityTokens will be sent to the LP.
Initiate a withdrawal. This will take LiquidityTokens from the depositor and either immediately send sUSD to the LP (if no boards are live), or will create an entry which will be processed by keepers after the deposit delay - at which point sUSD will be sent to the LP.
After a board expiry has been passed, this public function will lock in the settlement price to the most recent settlement price and compute aggregated profits for LP and traders, reserving those amounts appropriately.
Liquidate a short position who's collateral is less than
minCollateralrequirements for the position. This will pay the option premium to the LP, and then
Will iterate over deposit queue entries in order and process them if the deposit delay has passed and no circuit breakers are firing.
Will iterate over withdrawal queue entries in order and process them if the withdrawal delay has passed and no circuit breakers are firing.
Will iterate over every strike on a board and update netDelta/netOptionValue/netStdVega for each strike, aggregating them for the entire system. To get an accurate picture of these values, all boards must be iterated over.
Will settle expired OptionTokens. Will burn the OptionTokens that are being settled, either paying out the settlement value of longs (difference in strike and spot, direction depending on call vs put); or will return the collateral to the trader minus any owed settlement value.
Will use LiquidityPool funds to hedge LPs against delta risk by either opening a short to counteract a long delta exposure or purchase the baseAsset to counteract a short delta exposure. Note, the delta exposure takes long collateral into account for LONG_CALLs purchased on the market.
The contract owner has several powers over the market. In short:
- Adding and updating boards/strikes
- Pausing the markets
- Setting parameters
- Updating PoolHedger address
- Updating SynthetixAdapter implementation
The guardian is a special actor in the system that has the authority to process deposits/withdrawals disregarding circuit breakers. They would come in to allow the deposits/withdrawals to go through in extreme scenarios, given the pool is priced properly.