System architecture
Four stages from venue data to settled position. The index is computed off-chain; the limits on it, the payout cap and signature checks are enforced by the contracts. Nothing is deployed to a public chain yet.
Pipeline
Each component is marked with what exists today, not with what is planned.
- 1
Ingestion
Venue reads, every 15 seconds. Each source reports its own latency and health.
- Deribit option surface — BTC and ETH, all listed expiries, one request eachLive
- Binance funding — premiumIndex, 8h intervalLive
- Hyperliquid funding — metaAndAssetCtxs, 1h intervalLive
- Lighter funding — the native leg: Robinhood Chain perps, unit-checked against Hyperliquid every roundLive
- Aevo option surface — second options venue for the indexPlanned
- 2
Analysis
The index is computed off-chain; the limits on it are enforced on-chain.
- C-VIX index engine — variance replication, 30-day constant maturity · core/cvix.tsLive
- Oracle dampener — ±20% per block, 5% step on a distrusted push · CVIXOracleDampener.solBuilt
- Dynamic skew engine — quadratic borrow rate with a depth floor · DynamicSkewEngine.sol — charged through a borrow indexBuilt
- FR-BASIS accrual — size × ΔFR × Δt ÷ 28800 into a carry index · PrismPerpSettlement.sol; per round on the paper venueBuilt
- 3
Execution
Signed intents are verified and queued off-chain, then settled in batches.
- Session keys — one wallet signature delegates a scoped, expiring key; orders then sign in the browser · /api/sessionLive
- Intent intake — EIP-712 verification, delegation, nonce, deadline, size, leverage and balance checks · /api/ordersLive
- Matcher — re-verifies, enforces limit price, fills at the index against the poolLive
- Paper settlement — positions, fees, capped PnL and a ledger under the contract's rules, on test collateralLive
- PrismPerpSettlement — on-chain signature recovery, batch settlement, all-or-nothingBuilt
- Relayer → settleBatch — submitting matched intents on-chainPlanned
- 4
Settlement
Collateral, the payout pool and liquidation.
- PrismPerpVault — USDG at 6 decimals; pool-only escrow of the 8× cap at openBuilt
- LiquidationModule — capped PnL, maintenance threshold at 90% of marginBuilt
- Liquidation keeper — liquidates past 90% with costs counted — paper ledger, or liquidate() on-chain for a bountyLive
- Indexer — positions, balances, ledger and open interest from settlement, vault and oracle eventsBuilt
Live — running against a real source nowBuilt — implemented and tested, not deployedModelled — stands in for a source that does not exist yetPlanned — specified, not implemented
Modules
One page per module: what it is responsible for, the formula it implements and its parameters.
| Module | Role | Implementation | Reads from | Writes to |
|---|---|---|---|---|
| C-VIX Index Engine | pricing | core/cvix.ts · off-chain | Deribit REST · BTC + ETH option surface | CVIXOracleDampener.sol |
| Oracle Dampener | safety | CVIXOracleDampener.sol | Keeper-signed index pushes | PrismPerpSettlement.sol |
| FR-BASIS Engine | pricing | PrismPerpSettlement.sol · carry index | Binance fapi · Hyperliquid info · Lighter | PrismPerpVault.sol |
| Dynamic Skew Engine | risk | DynamicSkewEngine.sol | Position state machine | Borrow index · charged at close |
| 8× Payout Cap | solvency | LiquidationModule.sol | Settlement · mark price | Vault escrow release |
| Intent Settlement | execution | PrismPerpSettlement.sol | EIP-712 intents signed by the trader | Vault · skew engine |
Open the terminal
Charts, books and quotes need no wallet. Connecting one starts a paper session: test collateral, settled by the relayer, not on-chain.
