The Lux Options Protocol enables European-style options (exercisable only at expiry) for any oracle-priced asset. Option writers deposit collateral to mint option tokens (ERC-20) representing calls or puts at a specific strike and expiry. Option tokens are tradeable on AMM V3 (LP-041). At expiry, options settle automatically against the K-chain oracle price (LP-038).
Each option series is a unique ERC-20:
OptionSeries {
underlying address // e.g., LUX
strike uint256 // strike price in quote asset (e.g., 50 USDC)
expiry uint256 // Unix timestamp
isCall bool // true = call, false = put
collateral address // USDC for puts, underlying for calls
}
Option token name: LUX-50C-20261231 (asset-strike-type-expiry).
strike units of USDC per option, receives 1 put tokenAt expiry, the oracle price P determines payoff:
max(P - strike, 0) per optionmax(strike - P, 0) per optionSettlement is permissionless -- anyone can trigger settlement after expiry by calling settle() which reads the K-chain oracle price.
Option tokens trade on AMM V3 pools. Market makers provide liquidity at prices reflecting implied volatility. The protocol does not enforce Black-Scholes pricing -- the market discovers the price through trading.
Options are organized into weekly epochs (Friday 08:00 UTC expiry):
1. Full collateralization: writers cannot be liquidated because options are fully collateralized. This eliminates systemic risk.
2. Oracle at expiry: settlement depends on a single oracle reading at expiry. The protocol uses a 30-minute TWAP to reduce manipulation risk.
3. Expired unsettled options: options not settled within 7 days after expiry can be reclaimed by writers.
github.com/luxfi/standard/contracts/options/ |OptionFactory.sol |SettlementEngine.sol |Copyright (C) 2024-2026, Lux Partners Limited. All rights reserved.
Licensed under the MIT License.