Continuous futures data in Parquet

Updated daily -- futures data current through 2026-09-09.

Ratio-adjusted contracts

MarketParquet futures data is continuous and ratio-adjusted. Coverage includes ~130 of the most active futures contracts, including ES, NQ, CL, GC, ZN, and more, from December 2007 to present.

Futures files use the same date-partitioned Parquet layout as stocks and ETFs, with 1-minute, 5-minute, 30-minute, 1-hour, and daily bars.

Query a continuous series

  import polars as pl

  es = (
      pl.scan_parquet("by_date/futures_daily/2024/*.parquet")
        .filter(pl.col("symbol") == "ES")
        .select(["date", "symbol", "open", "high", "low", "close", "volume"])
        .sort("date")
        .collect()
  )

Available futures files

TimeframeFilesDate Range
1-Min5,8482007-12-31 .. 2026-09-09
5-Min5,8482007-12-31 .. 2026-09-09
30-Min5,8482007-12-31 .. 2026-09-09
1-Hour5,8482007-12-31 .. 2026-09-09
Daily4,8642007-12-31 .. 2026-09-09

Related

futures data hub · browse futures daily · pricing · DuckDB guide · local data lake guide