Channel types
| Channel | Subscribe to | Description | Tier |
|---|---|---|---|
| dist | dist:fomc-2026-04-29 | Cross-venue probability distribution for all outcomes | Free |
| book | book:fomc-2026-04-29:hold | Normalized orderbook updates for one outcome | Pro |
| trade | trade:fomc-2026-04-29:hold | Trade executions for one outcome | Pro |
| snapshot | snapshot:fomc-2026-04-29 | Full state reset every 60s for all outcomes | Pro |
Distribution
Shows the market-implied probability for every outcome in an event, combining data from both venues.| Field | Description |
|---|---|
prob | Combined probability, weighted by each venue’s liquidity. Kalshi at 94.5% with 4.7M USD depth + Polymarket at 95.5% with 2.0M USD depth = 94.79%. |
kalshi_prob / poly_prob | Each venue’s YES mid-price (best bid + best ask) / 2. Null if that venue has no data. |
kalshi_depth_usd / poly_depth_usd | Total USD within +/-5c of mid on each venue. Shows how much liquidity backs each probability. |
Book update
Normalized orderbook updates from both venues. Prices are contract prices (0-1), sizes are absolute quantities. Derived fields like best bid/ask, mid, spread, and depth are pre-computed on every update.| Field | Description |
|---|---|
venue_id | Identifiers to execute on the venue. Kalshi: market ticker. Polymarket: condition ID + token ID. |
update_type | ”snapshot” = full book replacement. “delta” = only changed levels. Size of 0 = level removed. |
levels | Price levels with side (bid/ask), price (0-1), and size (absolute quantity after this update). |
best_bid / best_ask / mid / spread | Pre-computed from full cross-token book state, not just the levels in this update. |
bid_depth_usd / ask_depth_usd | Total USD within +/-5c of mid on bid and ask sides. |
Trade
Every trade execution from both venues, including the specific contract traded, price, quantity, and a venue-provided trade ID.Timestamps
Every book and trade message carries four timestamps (Unix ms) for end-to-end latency decomposition.| Field | Description |
|---|---|
exchange_ts | When the exchange says the event occurred. Null if not provided by the venue. |
received_ts | When we read the raw message off the venue WebSocket. |
published_ts | When the normalized message was published internally. |
gateway_ts | When the gateway sent the message to your WebSocket. |