Futures data
Futures data API
Quotes and OHLCV history for equity index, energy, metals, grain and currency futures through continuous symbols like ES=F, with back-adjusted history for index futures.
- Symbol format
ES=F: the contract root, then=F- Source delay
- About 10 minutes behind the exchange
- Daily history
ES=Ffrom September 2000,GC=Ffrom August 2000- Sessions
- Each trading day starts at the 18:00 New York reopen
- Back-adjusted
backAdjust=trueonES=F,NQ=F,YM=FandRTY=F
Symbol format
A continuous contract is the root symbol plus =F: ES=F follows the current E-mini S&P 500 contract and rolls to the next one. Each quote's underlyingSymbol names the dated contract behind it, such as ESZ26.CME. Encode = as %3D in a URL.
ES=FE-mini S&P 500NQ=FE-mini Nasdaq 100YM=FMini Dow Jones ($5)RTY=FE-mini Russell 2000CL=FWTI crude oilBZ=FBrent crude oilNG=FNatural gasGC=FGoldSI=FSilverZC=FCorn6E=FEuro FX
Endpoints
The same endpoints and the same key as every other market; every plan includes all of them.
- Quote API/v6/finance/quoteLast price, change, open interest and expiry date of the contract behind the symbol.
- Chart API: OHLCV history/v8/finance/chart/{symbol}Daily and intraday OHLCV.
backAdjust=trueremoves the jumps at contract rolls on the four equity index contracts. - Spark API: close-price series/v8/finance/sparkClose-only series for a futures board.
- Market summary API/v6/finance/quote/marketSummaryFutures tiles in the market overview, alongside indices and currencies.
Example request
Send your key in the x-api-key header. A symbol the API has not seen before is fetched on the first call.
curl -H "x-api-key: $KEY" \
"https://api.stockdataapi.com/v6/finance/quote?symbols=ES%3DF,NQ%3DF,CL%3DF,GC%3DF"{
"quoteResponse": {
"result": [
{
"symbol": "ES=F",
"shortName": "E-Mini S&P 500 Dec 26",
"quoteType": "FUTURE",
"exchange": "CME",
"currency": "USD",
"underlyingSymbol": "ESZ26.CME",
"expireIsoDate": "2026-12-18T00:00:00Z",
"regularMarketPrice": 7424.25,
"regularMarketChangePercent": 0.5587,
"openInterest": 2018149,
"exchangeDataDelayedBy": 10
}
],
"error": null
}
}jsonGood to know
- Futures reach the source about 10 minutes after the exchange, and each quote's
exchangeDataDelayedByreads10. - Without
backAdjust, history is the plain continuous series, so the price jumps where one contract hands over to the next. With it,meta.backAdjustlists the rolls applied. - Around a roll, while the quote has moved to the next contract but the daily bars have not, the live candle is withheld rather than drawn on the wrong contract.
Questions
Anything else is covered in the documentation, or on this page as Markdown for an AI assistant.
Is futures data real time?
No. Futures reach the source about 10 minutes after the exchange and are served as received; each quote's exchangeDataDelayedBy field reads 10.
What does =F mean in a futures symbol?
It marks a continuous contract: ES=F follows the current E-mini S&P 500 contract, and the quote's underlyingSymbol names the dated contract behind it, such as ESZ26.CME.
Can I get back-adjusted continuous futures history?
Yes, for ES=F, NQ=F, YM=F and RTY=F: add backAdjust=true to a chart request, and meta.backAdjust lists the rolls applied.
How far back does futures history go?
Daily bars for the main continuous contracts start in 2000: September 2000 for ES=F and August 2000 for GC=F.
Which futures are covered?
Contracts the source quotes across equity indices, energy, metals, grains and currencies, such as ES=F, CL=F, GC=F, ZC=F and 6E=F.
Other markets, same key
- Stock market data APIStocks and ETFs: quotes, history, options, fundamentals
- Crypto price APIBitcoin, Ethereum and other coins, around the clock
- Forex APIMajor and cross currency pairs, Sunday to Friday
- Stock market index APIS&P 500, Dow, Nasdaq, VIX and world benchmarks
Your first call is a few minutes away.
A free key, every endpoint, full history.