Saturn2022Docs

The market

Writing, buying, settling

The market has three verbs. Two of them move a share, one moves a premium, and none of them asks anyone's permission.

Writing

write(market, strike, expiry) escrows one whole share of the market’s stock and names the terms. The strike is in the feed’s units, dollars at eight decimals; the expiry is a timestamp. A paused stock token is refused at the door, because a promise to deliver a token that cannot move is a promise already broken. Writing is permissionless; only listing a market is held by the deployer, because a listing binds a stock to a feed, and a wrong binding would price one company’s options off another’s chart.

Buying

buy(id) asks the contract what the option costs right now, spot from the feed and volatility from its cadence, and pays exactly that to the writer. The premium is the writer’s the moment it pays, whatever happens at expiry. There is no order book and no negotiation: the price is the model’s, and both sides can recompute it before touching anything.

Settling

After expiry, settle(id, roundId) partitions the escrow: the buyer takes max(P − K, 0) / P of the share, the writer takes the rest. Anyone may call it, including neither party, and an unsold option settles entirely back to its writer.

P is pinned to the round that covered expiry, not read at call time. The caller names a round and the contract checks it is the last one at or before the expiry timestamp: its own timestamp must not exceed expiry, and the next round must either not exist or land after it. Reading the feed when settle happens to be called would hand the buyer a free extension, since past expiry they could simply wait for the price to drift their way. Pinned, the answer is the same whoever calls and whenever they call.

This is also what makes the feed’s closed window harmless. These feeds follow market hours, so a weekend leaves a gap of fifty hours or more with no rounds in it. An option expiring inside that gap settles at the last round before it, which is the Friday close, and no amount of waiting changes the number. The gap is a property of the underlying market rather than a failure of the feed: nothing traded, so nothing moved.

Why full collateral

Margined options are capital-efficient and carry a liquidation engine, a margin oracle, and a manipulation surface as the price of that efficiency. This market makes the opposite trade. The whole share sits in escrow, so no state exists in which the writer cannot pay, no engine watches anything, and the one oracle read that moves money is settlement itself, against Chainlink rather than any pool. The cost is honest: a written call is a whole share, a $140 to $930 ticket at today’s prices, and capital efficiency is future work rather than a hidden risk.