What is a prediction market?
A prediction market is an exchange where users trade binary (or multi-outcome) event contracts — “Will X happen by date Y?” — that settle to a fixed value (typically $1) if the event resolves true and $0 otherwise. The traded price between $0 and $1 is read as the market-implied probability of the event. Because contracts are fully collateralized and settle to a known value, prediction markets have their own metric vocabulary (contracts traded, open interest in contracts, settlement value) that we normalize into the standard Artemis fields below.Platforms we cover
Drift (
drift) also operates a prediction-market (“BET”) product, but is tracked primarily as a Solana perpetuals/spot venue, so its prediction-market activity is folded into its protocol metrics rather than broken out here.Coming soon
We’re adding the following prediction-market venues soon:- Nadex (Crypto.com | Derivatives North America)
- DKeX (DraftKings, formerly Railbird)
- FanDuel prediction market
Where the data comes from
We use two ingestion models depending on whether a venue settles on-chain or off-chain:On-chain venues (indexed from the blockchain)
Polymarket, Limitless, Myriad, Rain.one, Opinion, Predict, and Hyperliquid HIP-4 settle on public blockchains. For these we index raw trade/fill events directly from archive nodes and raw block feeds, then aggregate to a daily grain. This is the same event-level pipeline used for DEXes and perps — no reliance on a venue-reported dashboard number.- Polymarket — indexed from Polygon. Every fill is a USDC-denominated on-chain event; the raw trade table (
fact_polymarket_trades) feeds the daily model. Because Polymarket settles via UMA’s optimistic oracle, we also track UMA dispute counts and unique disputers, plus maker rebates paid on Polygon. - Hyperliquid HIP-4 — indexed from Hyperliquid’s raw node feed. Outcome markets are fully collateralized; each binary share settles to $1, so notional volume is measured in shares.
Off-chain / centralized venues (venue data feed)
Kalshi is a CFTC-regulated US exchange whose contracts do not settle on-chain, so we ingest from Kalshi’s official API market snapshots and trade feed (fact_kalshi_trades). Kalshi’s event contracts are $1-face binaries, so contract counts equal USD notional. Kalshi also lists perpetual futures, reported separately in USD-native perp_* fields.
ForecastEx is Interactive Brokers’ CFTC-regulated event-contract exchange (a DCM and DCO — it both lists and clears its own contracts), with published EOD history from 2024-08-01. We ingest ForecastEx’s end-of-day prices file (per-contract, per-side volume and open interest). Each ForecastEx contract lists a YES and a NO (and, for elections, multiple) subtype row carrying the same pair-level figures, so we take the MAX across a contract’s subtype rows before summing across contracts — a double-count-safe aggregation. On the $1 cents-model each contract’s face is $1, so the contract count is the USD figure.
Gemini Predictions is the prediction-markets venue run by Gemini Titan, LLC (Gemini’s CFTC-regulated DCM), live since its 2025-12-15 launch. The headline volume is Gemini’s own official CFTC Rule 16.01 per-contract Market Data publication; we also carry a complete-print secondary figure (tick_contracts_traded) built from the venue’s tick-by-tick Trade Data file. Gemini does not report open interest — its file’s OI column has been zero since launch — so open_interest is carried as an explicit NULL.
Rothera is a 24×7 event-contract venue that launched on 2026-05-21. We ingest Rothera’s end-of-day (EOD) market feed — per-contract volume and open interest snapshotted daily. Because the EOD feed carries no per-trade VWAP, the price-weighted volume_usd/open_interest_usd fields are valued at the contract settlement price, an approximation rather than a fill-level tally.
How we calculate each metric
All venues are normalized onto the standard Artemis metric fields so they can be compared side-by-side. Not every venue exposes every metric; the table notes where a field is venue-specific.Category & sub-category breakdowns
For the largest venues we split daily volume and open interest into a cross-venue-comparable taxonomy (Sports, Politics, Economics, Crypto, …) so the same categories line up across platforms:- Polymarket and Kalshi expose
SPOT_VOLUME_SPORTS,SPOT_VOLUME_POLITICS,SPOT_VOLUME_CRYPTO, and..._WITHOUT_SPORTSvariants, plus per-category tables (*_metrics_by_category) and hourly tables (*_metrics_by_hour). - Rothera has no category field in its EOD feed, so category is derived from each contract’s product-code prefix (via an internal mapping) into the same cross-venue taxonomy. Rothera additionally offers a sport-level drilldown (Soccer / Baseball / Tennis / American Football / Macro) that is intentionally not cross-venue-comparable.
Reading volume across venues. Because every venue trades $1-face binaries,
spot_volume is a contract/share count that already equals USD notional, so the headline numbers are directly comparable across Kalshi, Polymarket, ForecastEx, Gemini, Rothera, and HIP-4 without conversion. Two things to keep in mind:spot_volumeis notional, not premium. The price-weighted cash actually traded (≈ half of notional at typical prices) is the separatevolume_usdfield where a venue exposes it (Rothera, ForecastEx). Don’t mix the two.- Gemini publishes two figures: the headline
spot_volume(official Rule 16.01 Market Data) andtick_contracts_tradedfrom the tick-by-tick file. The tick figure includes intraday 5/15-minute crypto contracts and repeated combo/cross prints that Gemini’s own displayed volume excludes, so it runs a multiple of the headline — usespot_volumefor cross-venue comparison. - Perpetual futures on Kalshi and Polymarket are USD-native (not $1-face) and live in separate
perp_*fields — never sum them with event-contractspot_volume.
Accessing the data
Prediction-market metrics are available through every Artemis surface:- Web app — Prediction Markets sector on artemis.ai
- API / Python SDK — see Prediction Markets via the API for
fetch_metricsexamples - Sheets — pull the fields above directly into Google Sheets or Excel
- Snowflake Data Share — daily models live under
RESULTS.EZ_METRICS.ez_<venue>_metrics, with breakdowns underRESULTS.EZ_METRICS_BY_DIMENSION

