Historical option chain API

Query captured option chains
by date, strike, expiration, and run.

OptionChainIQ gives builders, active traders, and small research teams API access to historical option-chain snapshots: contract quotes, Greeks, implied volatility, open interest, volume, underlying OHLCV, IV/HV context, signals, and scanner records. Use the API as your data layer, then inspect the same market context visually in the included dashboard.

Chain history
Contracts
strikes, expirations, bid/ask, OI, volume
Analytics
Greeks
delta, gamma, theta, vega, IV fields
Research
Runs
compare captures across time and market state

Historical option chains without spreadsheet cleanup

Most option research breaks down when chain data is inconsistent, hard to query, or separated from market context. OptionChainIQ stores captured chain snapshots in a structure built for repeatable research.

  • Filter option contracts by symbol, capture date, run, expiration, strike, and option type.
  • Compare bid/ask, volume, open interest, Greeks, and implied volatility across historical captures.
  • Join contract rows with IV rank, HV, skew, underlying OHLCV, signals, and scanner candidates.
  • Use normalized JSON responses instead of manual downloads, screenshots, or one-off broker exports.
  • Open the included dashboard when a backtest result or scanner candidate needs visual inspection.
OptionChainIQ API console and dashboard data interface
API Console: use API keys from the dashboard and inspect endpoint output from the same product workspace.
Backtesting

Test rules on captured chains

Loop through symbols and dates to evaluate premium filters, IV thresholds, DTE windows, liquidity rules, and strike selection logic.

Scanners

Power custom option scanners

Use historical contracts and analytics to rank spreads, flag IV/HV dislocations, and review candidates before automating alerts.

Dashboards

Feed internal research tools

Populate notebooks, BI dashboards, spreadsheets, and reporting surfaces with repeatable API responses.

Historical chain query
ContractsGreeksRun-aware
GET /v1/contracts?symbol=AAPL&date=2026-05-15&expiration=2026-06-19&strike_min=190&strike_max=230

{
  "symbol": "AAPL",
  "capture_date": "2026-05-15",
  "run_id": 4704,
  "underlying_price": 211.26,
  "filters": {
    "expiration": "2026-06-19",
    "strike_min": 190,
    "strike_max": 230
  },
  "contracts": [
    {
      "option_symbol": "AAPL260619C00210000",
      "type": "call",
      "strike": 210,
      "bid": 8.35,
      "ask": 8.55,
      "iv": 0.2384,
      "delta": 0.54,
      "theta": -0.08,
      "vega": 0.31,
      "open_interest": 12480,
      "volume": 3182
    }
  ]
}
Python example
requestspandas
import os
import requests
import pandas as pd

base_url = "https://api.optionchainiq.com"
headers = {"X-API-Key": os.environ["OPTIONCHAINIQ_API_KEY"]}

params = {
    "symbol": "AAPL",
    "date": "2026-05-15",
    "expiration": "2026-06-19",
    "strike_min": 190,
    "strike_max": 230,
}

res = requests.get(f"{base_url}/v1/contracts", params=params, headers=headers)
res.raise_for_status()

contracts = pd.DataFrame(res.json()["contracts"])
calls = contracts[contracts["type"] == "call"]
liquid = calls[(calls["volume"] > 100) & (calls["open_interest"] > 500)]
print(liquid[["option_symbol", "strike", "bid", "ask", "iv", "delta"]])
REST Client example
VS CodeHTTP
@baseUrl = https://api.optionchainiq.com
@apiKey = ocq_your_api_key

### Historical AAPL contracts
GET {{baseUrl}}/v1/contracts?symbol=AAPL&date=2026-05-15&expiration=2026-06-19&strike_min=190&strike_max=230
X-API-Key: {{apiKey}}

### Contract history for one option
GET {{baseUrl}}/v1/contracts/AAPL260619C00210000/history?from=2026-05-01&to=2026-05-15
X-API-Key: {{apiKey}}

What you can query

Contract rows

Full chain snapshots

Symbol, expiration, strike, call/put, bid, ask, last, volume, open interest, IV, and Greeks.

Volatility

IV/HV context

ATM IV, IV rank, IV percentile, term structure, skew, put/call volume ratio, and historical volatility windows.

Market context

Underlying and signals

Underlying price snapshots, OHLCV history, premium scanner candidates, and generated signal context.

Built for people who need the raw chain and the explanation

The API is the engine. The dashboard is the review layer. That combination helps you move from data extraction to decision support without losing context.

  • Developers can build scanners and notebooks directly against REST endpoints.
  • Traders can inspect Trade Ideas, IV Regime, Volatility Scanner, and UOA from the same captured store.
  • Teams can use API output for internal dashboards while keeping a visual workspace for review.
OptionChainIQ Trade Ideas dashboard using captured option chain data
Trade Ideas: strategy candidates and market context generated from captured option-chain data.

Historical option chain API FAQs

Related API pages