pips. Old cent-era ticks (1–99`) are rejected — they are
never reinterpreted as cents.
Place an order
Limit and market orders,
max_cost in pips, idempotency.Units
Cash,
max_cost, balances, fees, deposits, and withdrawals are pips,
rendered as decimal strings. Quantities are whole contracts (shares).
Winning contracts pay 10_000 pips ($1). Losing contracts pay 0.
Conversion
4700 costs 4,700 pips (47.00¢) per contract and pays 10,000
pips if YES wins. Sending tick: 47 is bad_price_tick.
Rest grid (live: narrow)
The venue admits rests on a named tick policy. Production is narrow.
That grid is always live. You can rest
380 (3.80¢) or 9610 (96.10¢)
without waiting for a mode change. Interior 4710 (47.10¢) is always rejected.
tick_size on every book
REST GET /v1/markets/{id} / GET /v1/markets/{id}/orderbook and WebSocket
book snapshots include:
Place against
wing_lo, wing_hi, and tick_step. Ignore unknown extra
fields.
400 bad_price_tick. If a later coarsen
cancels a rest that is no longer on the live grid, the placement/cancel
outcome is status: "canceled" with reason: "tick_size" (execution
outcome, not an HTTP error).
Reciprocal book
Bids only, both sides. A YES bid att is a NO ask at 10000 − t.
How a round settles
Rounds are aligned to the wall clock, not toopen_ts + cadence. The cadence
is per series — 60 seconds, 5 minutes, or 15 minutes — and the asset is BTC,
gold, or WTI crude depending on category. A 60-second round:
- Open — the scheduler opens in the first few seconds of a Unix minute
(
:00).strikeis the asset’s oracle price at open (units of 1e-8 USD). - Trade —
status: "trading"until the wall clock enters the next Unix minute. - Freeze —
status: "frozen". Resting orders are cancelled (reason: "freeze").settle_priceis a TWAP of the sequenced oracle over the lasttwap_window_secsseconds (default 10). - Settle —
winneris"yes"if that TWAP is strictly abovestrike, otherwise"no"(exact equality →"no"). YES holders of a winning contract receive 10,000 pips; losers receive 0.
yes_payout on the round row is still 0 or 100 — cents of a $1 contract,
not a pip tick.
Find the live slot with GET /v1/markets?status=trading, then
GET /v1/rounds/{market_id}. GET /v1/rounds?limit=1 is newest
round_number first and is not guaranteed to be trading. See
Rounds and markets.
Fees
Maker/taker fees use pip ticks:Q is at p = 5000 (50.00¢), matching the old whole-cent fee at 50¢.
Place against the grid
max_cost in pips (decimal string). A budget of
$5.00 is "50000". worst_tick defaults to 9999 on buys and 1 on sells.
Full placement walkthrough: Place your first order.
The Python SDK exports TICK_SPAN, cents_to_tick, on_grid,
and implied_ask.