Rysk Premium Explainer
Liquidity Provider Guide
This document explains how Rysk Premium works β how capital flows in and out, how your shares are valued, how options are written and settled, and what determines your returns.
1. Protocol Overview
The Dynamic Hedging Liquidity Pool is an on-chain options market-making vault. As a liquidity provider (LP), you deposit collateral (e.g. USDC) into the pool. The pool uses that collateral to write (sell) option contracts to buyers. Premiums collected from buyers accumulate in the pool and are reflected in an increasing price per share over time.
The pool is actively managed β a curator decides which options to write, at what strikes and expiries, and when to buy back positions. The goal is to collect premium income while managing directional and volatility risk through dynamic hedging.
Key participants:
Liquidity Provider (LP)
Deposits collateral, receives shares, earns premium income
Option Buyer
Purchases options from the pool, paying a premium
Curator / Manager
Manages the option book β writes, buys back, hedges
Governor
Governs protocol parameters, sets epoch prices
Keeper
Permissioned bot that can execute epoch settlements
2. Core Concepts
Shares
When you deposit, you receive LP shares β an ERC-20 token representing your proportional ownership of the pool. Shares are minted at the deposit price per share set at the epoch boundary. As the pool collects premium, the NAV per share grows, and your shares are redeemable at a higher withdrawal price per share.
Epochs
The pool operates on discrete epochs β think of them like accounting periods. Within an epoch:
Deposits and withdrawals are queued but not yet finalized
Options can be written and traded freely
At each epoch boundary (triggered by governance / keepers):
A price per share is set based on the pool's current NAV
Pending deposits are converted to shares at that price
Pending withdrawals are processed at that price
The epoch counter increments and the new epoch begins
This epoch model prevents intra-epoch price manipulation and ensures all LPs entering or exiting in the same window get the same fair price.
Price Per Share
The price per share is the ratio of the pool's net asset value (NAV) to the total share supply. It is set off-chain by governance (signed by the Governor) and submitted on-chain at each epoch boundary.
What contributes to NAV:
Free collateral β collateral sitting idle in the pool contract, available to write new options
Collateral allocated β collateral currently locked as margin backing live option positions
What adjusts NAV:
Mark-to-market value of the option book β the pool's short option positions have a current market value. This is not computed on-chain; instead, the Governor aggregates mid-market prices from a committee of independent option desks and uses that consensus value to determine the net option book liability at epoch close. A position worth more than it was sold for reduces NAV; a position worth less increases it.
Fees β accrued protocol and curator fees are excluded from the pool's book balance
Note: The smart contract stores a simplified TVL (
free balance + collateral allocated). The full NAV β which nets out the current market value of all open option positions β is calculated off-chain using aggregated pricing from a committee of option desks and submitted to the contract by the Governor at each epoch boundary.
3. Depositing
How to Deposit
Approve the pool contract to spend your collateral token (e.g. USDC)
Call
deposit(amount)on the LiquidityPool contractYour collateral is transferred to the pool immediately
A deposit receipt is stored on-chain recording your deposit amount and the current epoch
What happens next:
Your funds enter the pool's pendingDeposits queue. They are available for the pool to use immediately (e.g. to write options), but your shares are not minted yet. Shares are only minted at the next epoch execution, using the deposit price per share set at that time.
Multiple Deposits in the Same Epoch
If you deposit again in the same epoch before execution, the amounts are combined on your deposit receipt. You will receive shares for the total combined amount at the single epoch-close price.
Whitelist
If the pool has whitelisting enabled, only approved addresses can deposit. Withdrawals are never whitelist-gated. LP token transfers between non-whitelisted addresses are also blocked when the whitelist is active.
Collateral Cap
The pool enforces a maximum TVL (collateralCap). Deposits that would push TVL over the cap are rejected.
4. Epoch Execution & Price Per Share
The Epoch Lifecycle
Deposit Price vs. Withdrawal Price
The Governor sets two prices per epoch, which may differ:
Deposit Price
Converting your deposited collateral into shares
Typically reflects NAV at the time of epoch close
Withdrawal Price
Converting your shares back into collateral
May include adjustments for option liabilities or bid-ask spread
In a healthy epoch, the two prices are typically equal or very close. They can diverge if the option book carries significant mark-to-market losses or if the curator applies a spread to protect existing LPs from adverse selection.
Redeeming Your Shares
After epoch execution, shares are held by the pool contract on your behalf. You must call redeem() to transfer them to your wallet. Alternatively, the next time you deposit or initiate a withdrawal, the contract auto-redeems pending shares for you.
5. Withdrawing
Withdrawals are a two-step process to prevent intra-epoch gaming.
Step 1: Initiate Withdrawal
Call initiateWithdraw(shares):
Your shares are escrowed by the pool contract (transferred from your wallet to the pool)
A withdrawal receipt is created recording your shares and the current epoch
Your shares are added to
pendingWithdrawals
You cannot initiate a new withdrawal if you have an unfinished withdrawal from a previous epoch β you must complete it first.
Step 2: Complete Withdrawal
After the epoch executes (and your withdrawal is processed), call completeWithdraw():
The contract finds the first epoch after your initiation where batch withdrawals were successfully processed
Your shares are converted to collateral at the withdrawal price for that epoch
Collateral is transferred to your wallet
Your withdrawal receipt is cleared
Funds flow: When an epoch executes with sufficient free balance, withdrawal proceeds are moved into a partitionedFunds reserve. This ring-fences your withdrawal from any subsequent pool activity. Completing the withdrawal draws from this reserve.
What If There Isn't Enough Cash?
If the pool's free balance is insufficient to cover all pending withdrawals (because most collateral is allocated to open option positions), the epoch will still advance but withdrawals will not be processed in that batch. Your shares remain escrowed. The withdrawal will be processed in a future epoch when sufficient liquidity is freed up (through option settlement or buybacks). The price you receive will be the price from the first epoch where withdrawals were successfully processed after your initiation.
6. How Options Are Traded
Writing Options (Pool Sells)
The curator identifies option series to sell. The flow is:
Price: The curator quotes a premium for the option series
Order creation: A time-limited order is created specifying the counterparty (buyer), amount, and price
Execution: The buyer calls
executeOrder():The buyer's premium is pulled from their wallet into the pool
The pool locks collateral against the option (deposited to Opyn's margin pool)
oTokens (the option contracts) are minted and transferred to the buyer
Fee deduction: An option sale fee (in basis points) is deducted from the premium and split between the protocol and curator before the rest accrues to LPs
The net effect: premium flows into the pool, collateral is locked, and the pool's share of NAV changes based on the option's mark-to-market value.
Collateral mechanics:
Puts: collateral locked = strike price Γ number of contracts (fully cash-secured)
Calls: collateral locked = notional amount of underlying (fully collateralized)
Buying Back Options (Pool Buys)
The curator can buy back options the pool previously sold, unwinding positions. The flow reverses:
The seller (original option buyer) returns their oTokens
The oTokens are burned and the locked collateral is returned to the pool's free balance
The pool pays the buyback premium to the seller from its (now replenished) free balance
Buybacks reduce the pool's short option book and free up capital, at the cost of paying a premium (which reduces LP NAV if the options are bought back at a higher price than they were sold).
7. Settlement
When an option series expires, the pool's vault must be settled to recover collateral.
Settlement Flow
All options are cash-settled β there is no physical delivery of the underlying asset. At expiry, Opyn's on-chain oracle records the settlement price of the underlying. That price determines who receives what from the locked collateral.
A keeper calls settleVault(seriesAddress) on the LiquidityPool:
The OptionRegistry calls the Opyn/Gamma controller to settle the vault
Opyn computes the intrinsic value of the options at expiry using the oracle settlement price
The locked collateral is split:
The intrinsic value (cash payout owed to option holders) is made available for oToken holders to redeem
The remainder is returned to the pool's free balance
Worked examples:
Put β expires OTM: Pool wrote a $2,000-strike ETH put, locking $2,000 USDC per contract. ETH settles at $2,200. Intrinsic value = $0. The full $2,000 USDC returns to the pool.
Put β expires ITM: Same put, ETH settles at $1,700. Intrinsic value = $300 per contract. The oToken holder redeems $300 USDC; the pool recovers $1,700 USDC.
Call β expires OTM: Pool wrote a $2,500-strike ETH call, locking 1 ETH per contract. ETH settles at $2,200. Intrinsic value = $0. The full 1 ETH collateral returns to the pool.
Call β expires ITM: Same call, ETH settles at $2,800. Intrinsic value = $300 per contract. Because calls are collateralized in ETH, the payout is denominated in ETH: $300 / $2,800 β 0.107 ETH per contract. The oToken holder redeems ~0.107 ETH; the pool recovers the remaining ~0.893 ETH.
Option Holder Settlement (Redeem)
Option buyers can redeem their expired ITM oTokens directly via the OptionRegistry's redeem() function. The steps are:
The holder calls
redeem(seriesAddress, amount)on the OptionRegistryTheir oTokens are transferred to the registry and burned
The intrinsic value is transferred to the holder in the collateral token:
Put holder receives USDC equal to
max(0, strike β settlement price)per contractCall holder receives ETH equal to
max(0, settlement price β strike) / settlement priceper contract
The payout lands directly in the holder's wallet
OTM options at expiry are worth zero β there is nothing to redeem, and the full locked collateral returns to the pool when the vault is settled.
Note: the OptionRegistry validates that the oToken exists in Opyn's factory before allowing redemption. If a buyer has transferred their oTokens to a third party, that party can redeem them just the same β redemption is not restricted to the original buyer.
8. Fees
The pool has two fee tiers, both expressed in basis points (bps):
Option Sale Fee
% of option premium charged on each write
Split between protocol and curator
Curator Fee Share
% of the option sale fee that goes to the curator
Curator (Manager role)
Example: If optionSaleFee = 500 bps (5%) and curatorFeeShare = 5000 bps (50% of the fee):
On a 10,000 USDC premium: total fee = 500 USDC
Curator receives: 250 USDC
Protocol receives: 250 USDC
Net premium credited to pool: 9,500 USDC
Fees accumulate on-chain in accumulatedCuratorFees and accumulatedProtocolFees. They are excluded from the pool's NAV calculation (the getBalance() function subtracts them). Governance and the curator can withdraw their respective fees at any time.
9. Risk Considerations
Collateral Risk
LP capital is at risk. If options written by the pool expire deep ITM, the pool pays out more collateral than it collected in premiums, reducing NAV per share. In extreme scenarios, LPs could lose a significant portion of their deposited capital.
Withdrawal Queue Risk
If the pool is heavily deployed into open option positions, withdrawals may not be processed immediately. Your shares remain escrowed and you receive the withdrawal price from the first epoch where sufficient liquidity is available β not the price from when you initiated.
Curator Risk
The curator has significant discretion over the option book. Poorly priced options or excess concentration in a single strike/expiry can result in NAV losses for LPs.
Smart Contract Risk
The protocol uses upgradeable proxy contracts. Upgrades are controlled by a governance process. As with all DeFi protocols, there is inherent smart contract risk.
Dispute Period
After an epoch price is set, there is a configurable dispute period (e.g. 24 hours) during which the governor can update the price if an error is detected. Epoch execution is blocked until this period expires. This protects LPs from incorrect NAV calculations being locked in immediately.
10. Roles & Governance
Governor
Sets epoch prices, collateral cap, fees, whitelist, dispute period; upgrades contracts
Manager / Curator
Manages the option book (write, buyback); withdraws curator fees
Guardian
Can pause the protocol; lock/unlock epochs
Keeper
Can execute epoch calculations and settle vaults
Option Handler
Approved contracts (e.g. PremiumOptionHandler) that interact with the pool on behalf of traders
Quick Reference: LP Actions
Deposit collateral
Any time (epoch not locked, not paused)
deposit(amount)
Redeem shares from past deposit
After epoch executes
redeem()
Initiate withdrawal
Any time (epoch not locked, not paused)
initiateWithdraw(shares)
Complete withdrawal
After your withdrawal epoch is processed
completeWithdraw()
Check withdrawable amount
Any time
canCompleteWithdraw(yourAddress)
Check if you can initiate withdrawal
Any time
canInitiateWithdraw(yourAddress)
Built on the Opyn/Gamma options protocol. LP shares are ERC-20 tokens with the same decimals as the collateral asset.
Last updated