Option pool liquidity (V2): writer sleeves and the secondary pool
In one paragraph: The V2 CMPT options are backed by two pools. The writer sleeve is where the cash that guarantees payouts lives; it sells new options and locks the worst-case payout for each. The DLMM secondary pool is where already-issued options change hands between users in price bins. Depositing into either is a liquidity role with real obligations, described here so you can decide whether it suits you. This design applies only to the two V2 series, which expire on 2026-10-30 08:00 UTC and are then retired. Options V3 has no sleeve and no pool: every writer is an individual account that sells at its own price on an order book and locks $0.50 per short contract itself. See Options.
Availability: both pools are live for the CMPT series on Robinhood Chain (4663) from the activation time on the status page. The desk's Writer page deposits into the CMPT writer sleeve; the Provide page targets the V2 pool interface (
OptionDlmmV2:addLiquidity(binId, quoteAmount, optionAmount),removeLiquidity(binId, shares, receiver), bin and executable-ask reads) and verifies the pool's series, engine, token and quote bindings on chain before acting. Deposits are USDG and can be lost. See status and the risk disclosures.
The writer sleeve
Mechanics. You deposit collateral and receive internal sleeve shares. A sleeve is bound to one market and one expiry; every series it backs shares that expiry. Shares are contract bookkeeping only: not a token, not transferable. When the engine issues an option, the sleeve reserves the maximum payout for that series in cash. Premiums paid by buyers enter the sleeve and increase share value; that is the only way writers are paid. There is no separate premium claim, reward token or emission.
Reserve rule. After every action the sleeve must hold cash ≥ reserve + unpaidSettled, where reserve is the sum, over every open series, of open contracts × the series' maximum payoff (_recomputeReserve). Offsetting calls and puts do not reduce it, and the mark does not enter it: an option far out of the money reserves exactly as much as one at the cap. This is deliberate, because any series may be severed at full cap if its fixing never arrives.
Book equity is cash minus unpaid claims, not mark-to-market. Shares are minted and burned against cash − unpaidSettled (plus virtual shares/assets). A settled claim that nobody has collected yet is already subtracted from writer equity; the reserve on still-open series is not subtracted, because it restricts liquidity but is not a realised loss. Neither a rising nor a falling mark changes share value before settlement.
Redeeming. redeemFlat (a historical name; no FLAT token exists) returns your share of free capital only: cash − reserve − unpaidSettled. If that is zero, you wait; the call returns zero rather than failing. Shares are burned only in proportion to the cash actually paid (rounded up, so dust ownership cannot accumulate); your remaining shares keep their claim on capital that frees up later. Nobody's early exit can strip capital that backs live options. Deposits are accepted at any time, including while series are open.
Example (hypothetical). Sleeve holds $10,000; 10 writers each own 10%. It issues 100 CT of a $0.50-wide call for $12.24 premium. Reserve $50; free capital $9,962.24. A writer redeeming now gets ~$996 and keeps a claim on the remaining ~$5. At expiry with X = $3.00, buyers can claim $30; the sleeve's remaining $20 of reserve is released and the premium was kept, so shares are worth slightly more than before. With X = $3.50, buyers claim the full $50. Until buyers actually call claim, the $30 or $50 sits as unpaidSettled and is already excluded from what writers can redeem.
Two different failure exits. Strictly after expiry plus 72 hours, a missing fixing permits severSeries: use a fresh, compatible positive NORMAL mark, otherwise the maximum spread payout; HALTED blocks this path. Governance fallback requires the same elapsed deadline, HALTED status and no existing fixing. Either result is final. See Options.
Limits. At most 25 active series per sleeve. Minimum issuance size is 0.1 contract with a minimum premium of 0.01 collateral units. First-depositor share inflation is mitigated by virtual shares. Issuance is refused until governance has set the market's option configuration (drawdown limit, volatility floor, pricing bands, approval hash); the drawdown check limits reserve − min(lockedPremium, reserve/2) to a governed fraction of writer principal. There is no writer auction, sealed funding window, staged close or buyback mechanism, and no promised return.
The DLMM secondary pool
Mechanics. Each series has a pool of discrete price bins. An LP adds option contracts and/or quote cash to a bin at a chosen price; anyone may do so while trading is open, and option inventory may not be placed below the model floor. Buyers sweep bins upward; sellers sweep downward. Swaps walk at most 32 bins and require the full exact input to be absorbed; insufficient liquidity reverts rather than silently partially filling.
Fees. totalFee = min(250 bps, 30 bps + slope × realized 1-hour volatility). All fees go to the LPs of the bins that traded; the protocol keeps none. A fee is added to the bin's quote reserve at the moment of the swap, so your LP shares in that bin are worth more afterwards. You realise fees by removing liquidity; there is no separate fee-claim, harvest or reward step, and no reward token. The slope is a governance parameter that must be approved before any pool is activated.
Price limits. Every swap carries a user limit (max price per contract when buying, minimum when selling), inclusive of fees.
Expiry. At expiry, swaps stop. Bins holding options require series settlement or severance before those options can be burned for claim cash. Quote-only bins have no option liability: their cash can be withdrawn at expiry even while the series is unfinalized, the oracle is HALTED or new trading is disabled. settleDlmmInventory applies the requirement per bin; a mixed batch containing unfinalized option inventory reverts atomically. Out-of-the-money inventory claims zero; prior fees are not reversed.
What the pool does for buyers. The engine's issuance ask is max(model × 1.02, executable DLMM ask for your size). If the pool is offering options cheaper than the model, you are routed to the model price anyway; the pool sets a floor on issuance price, not a discount.
Caveats
- Neither pool promises yield or principal protection. No rate of return exists to publish.
- The CMPT pool fee slope (
volFeeScaleWad = 1.00) and issuance parameters come from the reviewed, hash-committed launch configuration (overdrive/deployments/v2/reviewed/4663.options-config.json, approval record4663.cmpt-options-approval.md); the seed script refuses a series whose parameters do not match it. The launch seed for liquidity bins is $300; it is not a guarantee of exit liquidity. - Missing-fixing recovery can charge writers the maximum spread payout. A fresh compatible NORMAL mark may instead produce a smaller payoff; HALTED blocks permissionless severing and leaves the strictly gated governance fallback or a late fixing.
Source trail: docs/spec/V2_ARCHITECTURE.md §5.4, §5.5; overdrive/src/v2/options/WriterSleeveV2.sol (deposit, redeemFlat, available, shares, reserveIssue, recordSeriesSettlement, payClaim, _recomputeReserve, _checkDrawdown, MAX_ACTIVE_SERIES, VIRTUAL_SHARES); overdrive/src/v2/options/OptionEngineV2.sol (MIN_SERIES_QUANTITY, MIN_ISSUANCE_PREMIUM, severSeries, governanceSettle); overdrive/src/v2/dlmm/OptionDlmmV2.sol (addLiquidity, removeLiquidity, swapExactIn, executableAsk, settleDlmmInventory, MAX_SCAN_BINS); overdrive/src/v2/dlmm/FeeMath.sol; overdrive/script/DeployOptionsV2.s.sol, SeedOptionsV2.s.sol; overdrive/exchange/web/src/pages/liquidity.ts (OptionDlmmV2Abi calls).
Repository-owned documentation · September 2026 · Educational material, not investment advice and not an audit.
Documentation
V2 · Live on Robinhood Chain