category (1–9). See
Series, assets, and categories for the full
table and the discovery calls.
Lifecycle
Anything still resting when a round freezes is cancelled for you.
Cadence
Cadence is per series, not global: 60 seconds, 5 minutes, or 15 minutes depending oncategory.
Rounds are aligned to the wall clock, not to their own open. A 60-second round
opens in the first few seconds of a Unix minute (:00) and freezes when the
clock enters the next minute — not at open_ts + 60s. If an open lands a
few milliseconds after :00.000, freeze is still the following :00.000. The
5-minute and 15-minute series work the same way against their own boundaries.
Do not derive the cadence from open_ts deltas. Map it from category.
round_number vs market_id
Prices
strike and settle_price are integers in units of 1e-8 USD, as decimal
strings. A strike of 6399240000000 is 4,245.18 (gold); 6231000000 is $62.31 (crude). The magnitudes differ by
orders of magnitude across assets, so scale by 1e8 and never infer the asset
from the size of the number.
Contract prices are different: integer pip ticks from 1 to 9999 (0.01¢).
3500 is 35.00¢. Cash and max_cost are pips too. See
Ticks, pips, and subcents.
Settlement
At freeze, the round’s settle price is a true time-weighted average (TWAP) of the sequenced oracle price for that round’s own feed over the last N seconds of the round (default N = 10; the window is per-series and each round row exposes the resolvedtwap_window_secs). A gold round settles
against gold, never against BTC.
winner becomes "yes" if that TWAP is strictly above the strike, "no"
otherwise (exact equality settles "no"). Winning contracts pay 10,000
pips ($1); losing ones pay 0.
yes_payout is 0 or 100 — cents of a $1 contract, not a pip tick.
fresh_source_count_at_freeze reports how many independent price sources were
live at freeze, useful if you want to weight your confidence in a settlement.
Reading rounds
Categories
category groups rounds into series — nine of them, three assets × three
cadences:
It is on every round object and every
rounds WebSocket frame, and it filters
GET /v1/rounds?category=. category: 0 means unclassified, not “all” —
omit the parameter to ask for everything.
The market object has no
category. To learn which series a market_id
belongs to, read its round. Full details and the matching oracle feed ids are
in Series, assets, and categories.