> ## Documentation Index
> Fetch the complete documentation index at: https://artemis.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Prediction Markets

> Coverage, data sources, and metric methodology for the prediction-market (event-contract) venues Artemis tracks — Polymarket, Kalshi, CME, ForecastEx, Nadex, Gemini, Rothera, Opinion, Limitless, Myriad, Predict, and Hyperliquid HIP-4.

Artemis tracks the leading prediction-market (event-contract) venues on the same fundamental framework we use for exchanges and protocols: daily volume, open interest, transactions, active users, fees, and — where the venue is on-chain — TVL. This page documents **every prediction market we cover**, **where the underlying data comes from**, and **exactly how each metric is calculated**.

[Explore the Prediction Markets sector on Artemis](https://www.artemis.ai/sectors/prediction-markets)

## 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

| Platform               | Type                                    | Chain / Venue                                                    | Data start   | Symbol (`artemis_id`) |
| ---------------------- | --------------------------------------- | ---------------------------------------------------------------- | ------------ | --------------------- |
| **Polymarket**         | On-chain                                | Polygon                                                          | Sep 2020     | `polymarket`          |
| **Kalshi**             | Centralized, CFTC-regulated             | US exchange (API)                                                | Jun 2021     | `kalshi`              |
| **CME**                | Centralized, CFTC-regulated             | CME Group (retail via FanDuel Predicts & DraftKings Predictions) | Sep 2022     | `cme`                 |
| **Limitless**          | On-chain                                | Base                                                             | Apr 2024     | `limitless`           |
| **ForecastEx**         | Centralized, CFTC-regulated (DCM + DCO) | Interactive Brokers                                              | Aug 2024     | `forecastex`          |
| **Myriad**             | On-chain                                | Abstract / Base                                                  | Feb 2025     | `myriadmarket`        |
| **Nadex**              | Centralized, CFTC-regulated (DCM)       | Crypto.com \| Derivatives North America                          | Jun 2025     | `nadex`               |
| **Rain.one**           | On-chain                                | —                                                                | Sep 2025     | `rain_one`            |
| **Opinion**            | On-chain                                | —                                                                | Oct 2025     | `opinion`             |
| **Predict**            | On-chain                                | —                                                                | Nov 2025     | `predict`             |
| **Gemini Predictions** | Centralized, CFTC-regulated (DCM)       | Gemini (Gemini Titan, LLC)                                       | Dec 2025     | `gemini`              |
| **Hyperliquid HIP-4**  | On-chain                                | Hyperliquid                                                      | May 2026     | `hip4`                |
| **Rothera**            | Centralized (EOD feed)                  | 24×7 event-contract venue                                        | May 21, 2026 | `rothera`             |

<Note>
  **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.
</Note>

Coverage windows are the first date with data through today; new venues are added as they reach meaningful volume. See the [full asset list](/docs/data-reference/supported-assets) for canonical IDs.

### Coming soon

We're adding the following prediction-market venues soon:

* **DKeX** — DraftKings' own CFTC-regulated exchange (formerly Railbird)

FanDuel Predicts and DraftKings Predictions retail flow is already captured at the exchange level under **CME** above. New venues follow the same normalized metric framework and appear alongside the live venues as ingestion completes.

## 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`.

**CME** lists CFTC-regulated binary yes/no event contracts on CME/CBOT/NYMEX/COMEX, distributed retail through **FanDuel Predicts** and **DraftKings Predictions** (both are FCM front-ends onto CME — the exchange-level figures here are the only published record, with no per-distributor split). We ingest CME's official daily volume + open-interest file (public FTP), filtered to event-contract products, with history from CME's 2022-09-19 event-contract launch. Coverage note: the **financial** event contracts (equity indices, energy, metals, FX, crypto) are captured; the **sports/culture** contracts — the bulk of volume since the Dec-2025 FanDuel Predicts launch — are published only in CME's Daily Bulletin Section 73 PDF and are a **known coverage gap**. Contract faces are not uniform (\$1 in the FanDuel era, \$20 for the 2022-era products), so `spot_volume` is a contract count, not USD.

**Nadex** (North American Derivatives Exchange, operating as **Crypto.com | Derivatives North America** since the 2021 acquisition) is a CFTC-regulated event-contract DCM. We ingest the exchange's **Daily Bulletin PDF** (its CFTC Part 16 disclosure — per-contract daily volume, open interest, and settlement detail), aggregated twin-safe: a contract can appear twice per day (a trading-side and a settlement-side row), so we **sum volume but take MAX open interest** before summing across contracts. Coverage starts 2025-06-01 (the ingest backfill floor; bulletins exist back to 2019). Nadex contract faces vary (\$10–\$2,000 by product family), so `spot_volume` is a contract count with no uniform USD conversion; parlay ("combo") flow is broken out in `combo_volume`.

**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.

| Metric                | Definition                                        | Methodology                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | Field name           |
| --------------------- | ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- |
| **Spot Volume**       | Daily trading volume across all event contracts.  | On most venues, event contracts are **\$1-face binaries** (priced \$0–\$1), so a traded-contract *count* equals **USD notional** — the published convention on Kalshi, Polymarket, Rothera, ForecastEx, Gemini, and HIP-4, directly comparable across them. Sourced from indexed on-chain fills (on-chain venues), the exchange feed (Kalshi), the EOD prices file (ForecastEx, Rothera), or the Rule 16.01 Market Data file (Gemini). This is *notional*, not the price-weighted premium (cash actually traded, ≈ half of notional) — exposed separately as `volume_usd` where available. **Nadex and CME are the exception:** their contract faces vary by product family (Nadex \$10–\$2,000; CME \$1 or \$20), so their `spot_volume` is a contract count that does **not** convert uniformly to USD and is not directly comparable to the \$1-face venues. | `SPOT_VOLUME`        |
| **Open Interest**     | Value of open, unsettled positions at end of day. | End-of-day snapshot of outstanding \$1-face contracts, so the contract count equals USD notional. Rothera additionally exposes a settlement-price-marked `open_interest_usd`. **Gemini does not report OI** (`NULL`); HIP-4 OI is reserved (fully collateralized outcomes).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | `OPEN_INTEREST`      |
| **Contracts Traded**  | Total number of contracts traded that day.        | Count of contracts changing hands, independent of price — equal to Spot Volume on the \$1-face venues. Reported explicitly for Kalshi, CME, ForecastEx, Nadex, Gemini, and Rothera. Not currently exposed through the REST API — use `SPOT_VOLUME`, which equals the contract count on \$1-face venues.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | `CONTRACTS_TRADED`   |
| **Spot Transactions** | Number of trades executed that day.               | On-chain: count of trade/fill events. Centralized venues: number of trade records (fills) in the feed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | `SPOT_TXNS`          |
| **Spot DAU**          | Daily active traders.                             | Distinct trading addresses (on-chain venues) or distinct accounts (centralized venues) that traded that day.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | `SPOT_DAU`           |
| **MAU**               | Monthly active traders.                           | Distinct trader addresses over the trailing 30 days, computed daily (currently exposed for Polymarket).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | `MAU`                |
| **Fees**              | Trading/protocol fees generated that day.         | Sum of fees taken by the venue on each fill, in USD. Exposed as `FEES` (protocol total) and `SPOT_FEES` (spot leg) depending on venue.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | `FEES` / `SPOT_FEES` |
| **TVL**               | Collateral locked in the protocol.                | On-chain collateral backing open positions (exposed where a venue custodies collateral on-chain, e.g. Polymarket).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | `TVL`                |
| **Active Markets**    | Distinct markets with activity that day.          | Count of distinct markets/symbols that traded.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | `ACTIVE_MARKETS`     |

### 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_SPORTS` variants, 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.

<Note>
  **Reading volume across venues.** On the \$1-face binary venues, `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. Keep in mind:

  * `spot_volume` is **notional**, not premium. The price-weighted cash actually traded (≈ half of notional at typical prices) is the separate `volume_usd` field where a venue exposes it (Rothera, ForecastEx). Don't mix the two.
  * **Nadex and CME are not \$1-face.** Their contract faces vary by product family, so their `spot_volume` is a raw contract count that does not equal USD and should not be compared 1:1 with the \$1-face venues. On CME, note the sports/culture coverage gap; on Nadex, parlay flow (`combo_volume`) is a large share of the total.
  * **Gemini** publishes two figures: the headline `spot_volume` (official Rule 16.01 Market Data) and `tick_contracts_traded` from 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 — use `spot_volume` for 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-contract `spot_volume`.
</Note>

## Accessing the data

Prediction-market metrics are available through every Artemis surface:

* **Web app** — [Prediction Markets sector on artemis.ai](https://www.artemis.ai/sectors/prediction-markets)
* **API / Python SDK** — see [Prediction Markets via the API](/docs/artemis-api/prediction-markets) for `fetch_metrics` examples
* **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 under `RESULTS.EZ_METRICS_BY_DIMENSION`

## More information

* [Prediction Markets — API & SDK examples](/docs/artemis-api/prediction-markets)
* [Supported Assets](/docs/data-reference/supported-assets)
* [Asset Metrics Catalog](/docs/data-reference/asset-metrics-catalog)
* [Sector Metrics methodology](/docs/artemis-terminal/sector-metrics)
