Section 02 / 12

Protocol Architecture

Market state, participant roles, and the collateral and premium state transitions of an Oracle market.

Market Lifecycle

An Oracle market is uniquely identified by an underlying SPL mint address and its associated counterparty pool. Initialization and operation proceed in three phases.

  1. Instantiation. A new SPL token is deployed to a pump.fun bonding curve through Oracle, or an existing mint is indexed by address.
  2. Pool seeding. SOL is deposited into the market pool, which becomes the sole counterparty to every contract written on that underlying. The standard minimum seed is 100 USD notional denominated in SOL; reduced minimums apply to qualifying holders (see Holder Perks).
  3. Issuance and trading. Traders specify side ω∈{+1,−1}\omega \in \{+1, -1\}, strike KK, tenor τ\tau, and maximum payout MM, and remit the quoted premium. Positions may be closed prior to expiry or held to settlement.

Participant Roles

Deployers

Deployers instantiate or index the underlying and typically supply the initial pool seed. A deployer carrying material spot inventory may purchase puts on the same market to hedge that inventory.

Liquidity Providers

Liquidity providers supply SOL collateral and are, in aggregate, the short counterparty to every contract in the pool. They receive the fair-value component of each premium and bear the payoff of each contract settled in the money. Pool collateral evolves discretely as

Lt+1=Lt+∑j∈OtVj  −  ∑j∈EtΠj,(1)L_{t+1} = L_t + \sum_{j \in \mathcal{O}_t} V_j \;-\; \sum_{j \in \mathcal{E}_t} \Pi_j, \tag{1}

where LtL_t denotes pool collateral in SOL, Ot\mathcal{O}_t the set of contracts opened over [t,t+1)[t, t+1), VjV_j the model value of contract jj credited as premium, Et\mathcal{E}_t the set of contracts settled or closed over the interval, and Πj\Pi_j the amount disbursed to the holder of contract jj.

Traders

Traders hold the long side of the option. Loss is bounded below by the premium paid and gain is bounded above by MM. Because MM is locked at issuance, traders carry no credit exposure to the pool.

State Transitions

Collateral and premium flows by event:

EventTraderPoolProtocol
IssuanceDebits premiumCredits VmodelV_{\text{model}}, locks MMCredits spread
Early closeCredits Vmodel−sV_{\text{model}} - sDebits VmodelV_{\text{model}}, unlocks MMCredits spread
Settlement, in the moneyCredits Π\PiDebits Π\Pi, unlocks M−ΠM - \PiNone
Settlement, out of the moneyNoneUnlocks MMNone

The partition of pool collateral into locked and free components is the central invariant of the system and is formalized in Capped Payoffs and Collateral:

Lpool=Llocked+Lfree,Llocked=∑i∈openMi,Lfree≥0.(2)L_{\text{pool}} = L_{\text{locked}} + L_{\text{free}}, \qquad L_{\text{locked}} = \sum_{i \in \text{open}} M_i, \qquad L_{\text{free}} \ge 0. \tag{2}