Free NQ and MNQ futures historical data

Free Nasdaq-100 futures data exists, but each source cuts something: depth, intraday bars, roll handling or licence. This guide covers what each one gives you, checked on 2026-10-29, and the roll checks to run on any series before a backtest trusts it.

The two contracts

NQ (E-mini Nasdaq-100)MNQ (Micro E-mini)
multiplier$20 x index$2 x index
tick0.25 = $5.000.25 = $0.50
first traded1999-06-212019-05-06
expiriesMarch, June, September, December (H, M, U, Z); trading ends 09:30 ET on the third Friday, cash-settled
hours (ET)Sunday-Friday 18:00-17:00, with a daily break 17:00-18:00

MNQ history before 2019 is NQ history. Both contracts track the same index at the same price; only the multiplier differs. On 2026-10-28 both settled at 29,979.50. Backtest on NQ to get the years before May 2019, then size the trades in MNQ. What does not carry over is liquidity and cost: MNQ's fees are a larger share of each point, so a strategy that works on NQ can still lose money on MNQ.

Older intraday data has one more break: from November 2012 until June 2021 CME halted equity-index futures for 15 minutes each afternoon (16:15-16:30 ET). Those missing minutes are real, not a data gap.

Free sources, and what each gives up

sourcewhat is freethe catch
Yahoo Finance (NQ=F, MNQ=F, via yfinance) daily from 2000-09-18 (MNQ=F from 2019-05-03); 1-minute for the last 30 days, 5-minute for 60 days, 1-hour for 730 days not back-adjusted, switches contract at expiry, 8 days of 1-minute bars per request, personal use only
MarketParquet free account daily NQ and MNQ for the last ~365 days; an intraday sample pack with both at 1-minute to 1-hour for Apr 6-10, 2026, no account intraday history beyond the sample week (from December 2007) is the paid archive
Databento $125 of credit on signup (expires after 6 months); CME NQ from 2010-06-06 at 1-second to daily continuous series are unadjusted; timestamps in UTC; daily bars on UTC dates, not the CME session
Barchart free account: 2 years of daily, 1 download a day intraday (down to 1-minute, about 10 years) needs Premier
Broker platforms (TradeStation, NinjaTrader, Tradovate, Interactive Brokers) historical charts with a funded or demo account; TradeStation documents 10+ years of futures minute bars tied to the platform; export varies; Interactive Brokers drops expired contracts 2 years after expiry and limits request pacing
CME DataMine sample files per data type the full data is priced per dataset by quote
Kaggle uploads for example "NQ Futures - 1min Bar 2022 2025" (about 1.05M rows) unknown provenance and licence; check roll handling and time zone yourself

Kibot and FirstRate sell NQ history and offer samples on request or for download; neither has a free full series. Figures from each provider's own pages, 2026-10-29.

Check the roll before anything else

A continuous series ("NQ", "NQ=F", "NQ.c.0") is a chain of quarterly contracts. The next contract trades at a premium of roughly 1%, the carry, so every switch either leaves a jump in the series (unadjusted) or rescales the history behind it (back-adjusted). Strategies trade that jump if nobody checks.

  • Yahoo's NQ=F is unadjusted and switches at expiry. In September 2026 it closed 290 to 297 points under the December contract every day through Friday 09-18, then matched it exactly from Monday 09-21. That gap is a fake 1% move in the series. For the week before expiry it also prints the dying contract while most volume has moved on, and the expiry-day bar blends the two. Its 2026-09-18 close of 29,613.6796875 is not even on the 0.25 tick grid.
  • The market rolls earlier. CME names the Monday before the third Friday as the equity roll date. In September 2026 December volume overtook September on Monday 09-14.
  • Back-adjustment has two flavours. Difference (Panama) adjustment keeps point moves and dollar P&L, but it distorts percentage returns, and very old prices can go negative. Ratio adjustment keeps percentage returns but changes point values. Fixed-dollar logic such as stops in points or tick targets needs to know which one it is reading.

This archive's continuous NQ and MNQ are ratio-adjusted, and every roll is published with its date and ratio in meta/futures_rolls.parquet. In September 2026 NQ rolled on 09-11 (ratio 1.010115) and MNQ on 09-08 (ratio 1.010004). The source rolls each contract when its own volume moves. So for three days the two continuous series sat on different contract months. That matters if you trade the NQ/MNQ spread or compare their bars around a roll.

A quick test for an unknown series: look for single-day moves that line up with roll weeks.

  import duckdb

  duckdb.sql("""
      WITH nq AS (
          -- daily files before 2026-03-27 name the column 'timestamp'
          SELECT COALESCE(date, CAST(timestamp AS DATE)) AS date, close
          FROM read_parquet('futures_daily/*.parquet', union_by_name = true)
          WHERE symbol = 'NQ')
      SELECT date, close,
             close / lag(close) OVER (ORDER BY date) - 1 AS ret
      FROM nq
      QUALIFY abs(ret) > 0.04
      ORDER BY date
  """).show()
  # Real 4%+ days exist (2008, 2020, 2022, 2025). A run of them in March,
  # June, September and December weeks is a roll problem.

Time zones and the trading day

  • CME publishes hours in Chicago time. Yahoo stamps New York time; its daily bars sit at midnight ET. Databento uses UTC nanoseconds. This archive stamps the bar open in New York time.
  • A futures "day" runs 18:00 to 17:00 ET. In this archive NQ's daily open, high and low for 2026-10-28 equal the 1-minute bars from 18:00 on 10-27 to 16:59 on 10-28. A UTC or calendar day would split each session in two.
  • The daily close is the settlement price, about 16:00 ET for NQ, not the last trade at 16:59. Measured details: how OHLCV bars are built.

Which to use

  • Checking an idea on daily bars: Yahoo's daily NQ=F is enough, but stitch or adjust the rolls yourself first.
  • A year of clean daily bars, or the bar format before you buy anything: the free daily files and the intraday sample pack here.
  • Tick or order-book data: Databento's $125 signup credit is the free way to try CME tick and order-book data; its usage estimator shows what a given range costs.
  • Years of 1-minute NQ for backtests: nothing free covers it. The cheapest paths are a broker platform's chart history (export limits apply) or a one-time archive. This archive has continuous NQ and MNQ 1-minute bars from December 2007 (MNQ from May 2019) for $79 once.

Related

NQ data page · MNQ data page · continuous futures and rolls · browse futures daily files · MarketParquet vs Databento · MarketParquet vs yfinance · free historical stock data