Historical Polymarket Crypto Data

Every Polymarket crypto market tick by tick, including 21 Up/Down series on 7 coins, with the Chainlink prices and TWAP the 5m and 15m series resolve on.

2026-02-01
Up/Down data since
7 coins
Up/Down series
Chainlink
prices and TWAP, direct
Endpoint
/v1/polymarket/{data_type}/{YYYY/MM/DD}/{market_slug}.parquet

Historical datasets

What Is Included in Polymarket Crypto Data

Crypto Up/Down markets on BTC, ETH, SOL, and XRP since February 2026 and on BNB, HYPE, and DOGE since 2026-03-28, and every other crypto market since 2026-05-01. Download any file by UTC date and market_slug.

Polymarket crypto Up/Down series with data start dates
Coin5m15m1h
BTCBTC 5msince 2026-02-13BTC 15msince 2026-02-01BTC 1hsince 2026-02-01
ETHETH 5msince 2026-02-22ETH 15msince 2026-02-01ETH 1hsince 2026-02-01
SOLSOL 5msince 2026-02-22SOL 15msince 2026-02-01SOL 1hsince 2026-02-01
XRPXRP 5msince 2026-02-22XRP 15msince 2026-02-01XRP 1hsince 2026-02-01
DOGEDOGE 5msince 2026-03-28DOGE 15msince 2026-03-28DOGE 1hsince 2026-03-28
BNBBNB 5msince 2026-03-28BNB 15msince 2026-03-28BNB 1hsince 2026-03-28
HYPEHYPE 5msince 2026-03-28HYPE 15msince 2026-03-28HYPE 1hsince 2026-03-28
l2

L2 order book data

Every book snapshot and price change Polymarket sent, so you can rebuild bid and ask depth at any moment.

trades

Trade data

Every executed trade with price, size, and aggressor side, timestamped when it arrived.

onchain_fills

On-chain fills

Settled fills from Polygon with maker and taker wallets, for wallet-level flow and settlement checks.

What matters in crypto markets

  • 5m and 15m Up/Down markets resolve on Chainlink TWAP since 2026-08-07, so test against that series; 1h markets resolve on Binance 1-hour candles.
  • A 5-minute market lasts minutes. Queue position and collection latency decide whether a backtest fill was real.
  • A whole-day ZIP bundles one series' markets for a day and uses 75% less download quota.

Download Polymarket Crypto Data

import pandas as pd

market_slug = "eth-updown-15m-1784332800"
data_type = "l2"
date_path = "2026/07/18"

url = "https://api.pmdata.dev/v1/polymarket/"
url += f"{data_type}/{date_path}/{market_slug}.parquet"
# no_l2_url = f"{url}?outcome=No"

df = pd.read_parquet(url, storage_options={"api_key": "<YOUR_API_KEY>", "User-Agent": "Mozilla/5.0"})
print(df.head())

Use cases

Up/Down strategies

Backtest entries and exits against the real book through every 5-minute, 15-minute, or 1-hour window.

Resolution checks

Compare each market's outcome with the Chainlink TWAP it resolved on.

Market making

Measure spread, depth, and queue position across a whole day of markets.

Need another market category? Browse the complete Polymarket data archive.