Desk note · For size

The venue that can't not pay you.

You don't care about streaks. You care about three things: can you size in without moving the market against yourself, does your edge survive to settlement, and is the book solvent when you're right. Here are the answers, with the math.

buckets
26 / market
Width set from weekly vol (~$1k for BTC), spanning ±4σ of spot. Every edge a round number.
depth b
800
LMSR liquidity parameter. Sets max loss per bucket move, not per trade.
subsidy bound
b·ln 26 ≈ 2,606
Hard cap on operator loss, inside the cost function. Not a promise.
fee
1% → 3%
Ramps over the final 6h. The adverse-selection defense.
settlement
2h TWAP
Time-weighted mean, round-pinned. One manipulated round moves nothing.
01 · Depth

The book always quotes. Model it before you touch it.

VibeKast is a single LMSR over 26 buckets, not a fragmented set of order books. The cost function is C(q) = b·ln Σ e^(qᵢ/b) — closed form, on-chain, and public. You can compute your exact average fill for any size, on any bucket, before you send the transaction. No slippage surprise, no hidden spread, no dependence on a counterparty showing up.

The operator's maximum loss is bounded at b·ln N — about 2,606 USDC per market at current parameters. That number is the subsidy, and it is inside the cost function, not a marketing claim. It means the book cannot be drained past a known floor, so the quote you model is the quote you get, at any size the market can express.

Because depth is a function of b and the current q vector — both on-chain — you can size a position against a deterministic curve instead of guessing at resting liquidity. That is the difference between trading a market and trading a model of one.

02 · Edge protection

Your edge survives the close.

The last hours before settlement are where passive market makers get run over. VibeKast prices that risk instead of eating it. The fee ramps from 1% to 3% across the final six hours — a late informed trader pays for the privilege of lifting a mispriced bucket, which is exactly the flow that would otherwise bleed the book and widen your costs.

Trading halts at closeTime, not at resolution. This matters more than it looks: with a live oracle, the outcome becomes public the moment a post-close round prints, strictly before anyone calls resolve(). An open window there let a sniper buy the known winner below 1:1 and drain the subsidy. That window is closed — there is a regression test that proves the pre-fix profit and asserts it now reverts.

Settlement is a 2htime-weighted mean, round-pinned to the first round at or after close. Distorting a single round — the one attack worth attempting — moves the outcome by almost nothing, because the pinned round is a completeness proof, not a price source. Your edge is protected by the mechanism, not by an operator's goodwill.

03 · Solvency

You get paid when you're right. Provably.

The invariant is Σ qᵢ·pᵢ ≤ C(q): the total the book can owe across every outcome never exceeds the collateral it has taken in. This holds by construction on every trade, which is why there is no margin engine, no liquidation path, and no scenario where a winning position is unpayable. You are not exposed to the venue's risk management. You are exposed to arithmetic.

If the settlement feed ever dies permanently, there is a permissionless escape hatch: after closeTime + 3 days, anyone can call voidMarket(), which snapshots final LMSR prices and pays each bucket at its snapshotted value. Collateral cannot be stranded by a dead oracle. The worst case is a known, bounded payout — not a locked contract.

Every bucket is also capped at 1e30shares per trade, closing a uint256-to-int256 cast that could wrap a buy into a negative delta. Our own adversarial review caught it; the invariant suite now guards it permanently with a handler that feeds full-range uint256 into the buy path. The findings log is public — we'd rather you read it than take our word.

04 · What we haven't done

The honest part.

This is testnet. The contracts are not yet independently audited — a competitive audit is planned before mainnet, and the internal work (123 tests, 100% line coverage on all three live contracts, a 128k-sequence invariant suite) is self-hardening, not a substitute. Early liquidity is thin, so size moves price until the MM seats fill. Settlement lags spot by up to two hours by design. And the subsidy bound means the book is deep, not infinite — past a point, you are the price.

If your view is purely directional, a perp is the better tool and we'll say so. This venue is for the views a direction can't hold — and for traders who want to size them against a curve they can model, on a book that can't not pay.

Run the book
Market makers

Quote a deterministic curve against a bounded subsidy that is explicitly the budget for your edge. Reference bot, live dashboard, mainnet priority.

For MMs →
Trade the shape
Season Zero

The first cohort is forming on Base Sepolia. Real calibration scores, a permanent record, and the first names in the dataset.

Reserve a seat →