> ## 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, ForecastEx, Gemini, Rothera, Opinion, Limitless, Myriad, Predict, Rain.one, 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`              |
| **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`        |
| **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_predictions`  |
| **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:

* **Nadex** (Crypto.com | Derivatives North America)
* **DKeX** (DraftKings, formerly Railbird)
* **FanDuel** prediction market

These will follow the same normalized metric framework and appear alongside the live venues above 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`.

**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.  | Event contracts are **\$1-face binaries** (priced \$0–\$1), so a traded-contract *count* equals **USD notional** — this is the published convention on Kalshi, Polymarket, Rothera, ForecastEx, Gemini, and HIP-4, and the figures are 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). Note this is *notional*, not the price-weighted premium (cash actually traded, ≈ half of notional) — that is exposed separately as `volume_usd` where available. | `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, ForecastEx, Gemini, and Rothera.                                                                                                                                                                                                                                                                                                                                                                                                                                             | `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.** 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_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.
  * **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)
