GET /historical - Fetch historical OHLC bars
Dated contracts always return their own prices. Ready ROOT1! aliases stitch contract eras before aggregation. adjustment=none (the compatibility default) preserves roll gaps. adjustment=backward-difference adds cumulative daily close differences to older contracts; the current contract and volumes stay unchanged. The adjustment is applied before aggregating candles that cross a roll. Missing adjustment references return CONTINUOUS_ADJUSTMENT_UNAVAILABLE rather than unadjusted prices. Discover supported modes and the recommended defaultAdjustment at /md/continuous. Adjusted responses include signed priceAdjustments and rollAdjustments; prices and offsets use fixed-point 1e9. Include adjustment in client cache identities and verify the echoed mode. Compare resolvedSymbol and seriesRevision against that metadata before attaching a raw live stream. Unknown/unready aliases return explicit error codes. Custom alias intervals are positive multiples of 15 seconds up to one week (e.g. 7m, 90m, 2h), using the same session anchors. Fine history has shorter retention than hourly history; historyAvailability reports the source tier and returned range. A bucket overlapping start can begin before start. History before the first verified era is never invented.
Fetches historical OHLC bars from the platform’s bar store.
Parameters
symbol(required): Full contract symbol like “ESH6”, “NQH6”data_type(optional): “ohlc” (default: “ohlc”)interval(optional): For OHLC - ”15s”, ”30s”, “1m”, “2m”, “3m”, “5m”, “15m”, “30m”, “1h”, “4h”, “1d”, “1w” (default: “1m”)limit(optional): Max records to return (default: 5000, max: 10000)days_back(optional): How many days of history (default: 30, max: 365)
Price Format
Prices are raw fixed-point integer values. Divide by 1,000,000,000 for display:
6010250000000→$6010.25
Query Parameters
Dated contract (own history) or a ready continuous alias, e.g. MNQ1!.
Data type: "ohlc" (default: "ohlc")
OHLC interval: "15s", "30s", "1m", "2m", "3m", "5m", "15m", "30m", "1h", "4h", "1d", "1w" (default: "1m")
Continuous aliases only: none (default) or backward-difference.
Limit number of records (default: 5000, max: 25000)
x >= 0Days back (default 30): raw max 365, continuous max 730; source retention applies.
x >= 0Start time (ISO 8601 format, e.g., "2026-01-20T16:00:00Z")
End time (ISO 8601 format, defaults to now)
Response
Historical OHLC data
Response for historical OHLC data
x >= 0Alias only: none or backward-difference, matching the request.
Alias only: earliest verified ledger history in Unix seconds.
x >= 0Adjusted aliases only: cumulative offsets by historical era.
Alias only: current dated contract for the raw WebSocket subscription.
Adjusted aliases only: reference closes used for each rollover difference.
Alias only: always cme-session-roll. Original era provenance is preserved.
Alias only: compare with /md/continuous revision to discard stale responses.