Skip to main content
The prediction_markets schema is a cross-venue unified view that merges Polymarket and Kalshi onto one schema. Use it when you want to write a single query that returns results across both venues without per-venue UNIONs.
Maintained by: Dune · Refresh: ~24 hours · Venues: Polymarket (Polygon) + Kalshi

Available Tables

prediction_markets.markets

Unified market dimension table across Polymarket and Kalshi

prediction_markets.trades

Per-fill trade activity across both venues with normalized P(Yes) pricing

prediction_markets.ohlcv_hourly

Hourly OHLCV bars across both venues, prices in [0, 1] probability space

Identifier conventions

Every row carries a venue column ('polymarket' or 'kalshi'). Identifiers are venue-scoped: market_id is a Polymarket condition_id (or combo condition ID for Polymarket Combos) when venue = 'polymarket' and a Kalshi ticker when venue = 'kalshi'. Always join on (venue, market_id).

Notes

  • price in trades and OHLCV is always normalized to P(Yes) in [0, 1]. To recover the taker’s actual fill price, use taker_fill_price (Yes side) or 1 - price (No side).
  • category is a unified enum (sports, crypto, politics, finance, technology, culture, weather, world, health, other). The raw upstream category is preserved in category_native.
  • Parlays are included from both venues: Kalshi KXMVE* series and Polymarket Combos (multi-leg parlays), flagged with is_parlay = TRUE. For like-for-like single-market comparisons, filter is_parlay = FALSE.