2026-05-02 09:00:07.983 UTC.
What you can query
Every HIP-4 market shows up undersource=hyperliquid with market_class: "prediction". The same data primitives (trades, fills, candles) work identically to perps and spot — only the symbol scheme is different and a few perp-only endpoints don’t apply.
metadata field, parsed from HL’s /info outcomeMeta:
Symbol scheme
Every HIP-4 market has two equivalent identifiers. Pick whichever is more readable in your client — both resolve to the same underlying market.
For a binary outcome with two sides, the wire-form indices are flat across the entire outcome universe in registration order. Outcome 0 with two sides occupies
#0 (Yes) and #1 (No). When HL adds outcome 1, it’ll occupy #2 and #3. A future 3-way outcome at outcome index 2 would occupy #4, #5, #6.
The price-sums-to-1 invariant
For a binary outcome, the prices on the “Yes” and “No” sides always sum to 1.0 — that’s the no-arbitrage condition. IfYes trades at 0.55, the market’s implied probability of the event happening is 55%, and No should trade at 0.45. Persistent divergence is an arbitrage signal.
What perp concepts don’t apply
HIP-4 contracts are fully collateralized — there’s no margin, no leverage, and no liquidation. The following endpoints return400 INVALID_MARKET_CLASS when called with a prediction symbol:
/v1/funding— outcomes don’t pay funding/v1/open-interest— net OI is bounded by collateral, not levered/v1/mark-prices— outcomes settle at 0 or 1, not a continuous mark
/v1/trades, /v1/fills, /v1/candles.
Settlement events
When an outcome resolves, Hyperliquid emits a settlement event that:- Halts trading on both sides
- Cancels all open orders
- Settles every position at 0 or 1 in USDC
expiry field on /v1/markets metadata. Once HL begins emitting structured settlement events, those will land as a new event type — at which point this section will document the shape.
For now, expiry lets you build settlement-aware queries: filter /v1/trades to before the expiration timestamp, treat the last fill before expiry as the settlement print, and reconcile with HL’s meta for the canonical 0/1 outcome.
Known limitations (today)
- Single canonical outcome at launch — HL initially shipped one daily-rolling BTC binary (
#0/#1). The pipeline auto-registers new outcomes the moment they appear in fills, so additional contracts will surface in/v1/markets?market_class=predictionwithout any code change on your side. - Builder-deployed outcomes — HIP-4 follows the same two-phase pattern as HIP-3: curated canonical first, permissionless builder-deployment second. When HL opens permissionless deployment, our auto-registration uses the
outcomeMetaflat-index scheme to assign syntheticmarket_idvalues in the range200000+N. - Multi-outcome contracts — current support assumes binary (Yes/No). Markets with three or more sides will work for query/streaming but the perp-only-endpoint rejection rule (which detects
-Yes/-Nosuffixes) won’t apply automatically.