A systematic trader's evaluation always ends at the same question: what is ACTUALLY in the archive? This page answers it with data rather than adjectives. Everything below regenerates from GET https://historical.flashalpha.com/v1/tickers - the snapshot used here is committed as tickers_snapshot_2026-07-24.json (also as CSV), pulled 2026-07-24. Row counts drift upward as backfills run; the endpoint is always the truth.
26
Ramped symbols in the replay archive
14
Names with coverage from 2017-01-03
17
Names hydrated for flow-simulator replay
81B
Minute-level option rows behind it, and climbing
The per-symbol table, gaps included
"Healthy days" counts sessions where all data layers are present. "Missing EOD/SVI" are per-symbol gap counts for the end-of-day OI layer and the SVI surface fits. "Flow" marks names hydrated for the flow simulator (the has_flow flag in /v1/tickers). The raw-tape inventory differs slightly - GOOGL carries per-print tape without the flag, for example - so for the per-print tape table (4.66B prints total) see the flow-replay reference. The analytics suite covers all 26.
| Symbol | First | Healthy days | Missing EOD | Missing SVI | Flow |
| AAPL | 2017-06-26 | 2,273 | 0 | 125 | yes |
| AMD | 2017-01-03 | 2,396 | 0 | 2 | no |
| AMZN | 2017-01-03 | 2,312 | 85 | 1 | yes |
| COIN | 2021-04-20 | 1,318 | 4 | 0 | no |
| GOOG | 2017-01-03 | 2,397 | 0 | 1 | yes |
| GOOGL | 2018-05-31 | 2,043 | 0 | 355 | no |
| IBIT | 2024-11-20 | 416 | 379 | 0 | no |
| INTC | 2017-01-03 | 2,397 | 0 | 1 | no |
| IWM | 2017-01-03 | 2,397 | 1 | 0 | yes |
| MARA | 2020-08-13 | 1,431 | 143 | 824 | no |
| META | 2021-07-13 | 1,168 | 5 | 6 | no |
| MSFT | 2017-01-03 | 2,398 | 0 | 0 | yes |
| MSTR | 2017-01-03 | 2,388 | 0 | 10 | yes |
| NFLX | 2017-01-03 | 2,398 | 0 | 0 | yes |
| NVDA | 2017-01-03 | 2,309 | 89 | 0 | yes |
| PLTR | 2020-10-06 | 1,452 | 4 | 0 | no |
| QQQ | 2017-01-03 | 2,314 | 84 | 0 | yes |
| RUT | 2018-06-11 | 2,037 | 361 | 0 | yes |
| SMH | 2018-01-02 | 2,147 | 0 | 251 | yes |
| SPX | 2022-01-05 | 1,137 | 334 | 925 | yes |
| SPXW | 2018-05-16 | 2,054 | 0 | 0 | yes |
| SPY | 2017-01-03 | 2,332 | 65 | 0 | yes |
| T | 2017-01-03 | 2,397 | 1 | 0 | no |
| TLT | 2017-01-03 | 2,397 | 0 | 1 | yes |
| TSLA | 2017-01-03 | 2,398 | 0 | 0 | yes |
| XSP | 2018-01-02 | 2,146 | 0 | 1 | yes |
Semantics: what is minute-level and what is not
- Minute-level (9:30-16:00 ET): option quotes, greeks, IV, spot, and everything computed from them - GEX, DEX, VEX, CHEX, levels, flow analytics, the tape.
- EOD-stamped: open interest (published once each morning; replay serves the morning value all session - which is what any live system had, so it is the no-lookahead choice, not a shortcut), SVI surface parameters (one fit per session), and macro series.
- Replay scope: 51 routes - the live analytics AND flow endpoints; earnings, screener, and structure pricing are live-only. Details in the Historical API docs, the verified facts page, the API overview article, and the flow replay article.
The awkward truths
- SPX starts 2022-01-05, not 2017, and currently carries the largest gap counts in the table (334 missing EOD layers, 925 missing SVI fits). For S&P index work before 2022, use SPY (2017-01-03, minute-complete) or SPXW (2018-05-16); XSP tracks at SPY parity from 2018.
- NDX is not available. QQQ (2017-01-03) is the NASDAQ-100 options proxy in the archive.
- Not every 2017 name started January 3. AAPL's archive begins 2017-06-26; GOOGL 2018-05-31; the newer listings (COIN, PLTR, IBIT) start where their options did or where coverage was added - first dates are in the table, per symbol, and IBIT's EOD layer is still backfilling (379 missing days).
- Raw tape lags live. Tape backfills roll per symbol; at the time of writing SPY's tape replays through 2026-06-05. Probe the tape route for your symbol and window before sizing a study.
- Known defect 1: the flow baseline
official_oi is 0 on the first trading day of each calendar year (a year-boundary snapshot hole). Roughly one session per year; carry the prior baseline or exclude those sessions. Not yet fixed.
- Known defect 2: rows in the per-contract EOD volume store are duplicated 2x per key. Served analytics are unaffected (the loader deduplicates), but it is why per-contract EOD volume is not yet surfaced by any endpoint - summing it naively would double-count. Fix pending.
- Numbers drift. Backfills run nightly; healthy-day counts in this snapshot will be stale within a week. That is why the table ships with its date and the endpoint stays the source of truth.
How it is monitored
Coverage is not a one-time audit: a data-quality monitor reconciles the served chain against independent sources (including OI parity checks against exchange-published aggregates) and pages us on drift, and the health of every ingestion job is tracked continuously. When something above says "not yet fixed," it is because the monitoring found it - the same monitoring that will catch the next one.
EVALUATING FOR A DESK?
Everything on this page is one API call away
GET /v1/tickers returns this table live. The
quant-teams page covers replay guarantees, bulk exports, and onboarding.
See Alpha pricing →
This page exists because the alternative - discovering coverage limits mid-evaluation - costs more trust than any gap in the table does. The archive is deep where it claims to be deep (14 names minute-level from 2017-01-03 with the layer gaps as tabled, 81 billion rows and climbing - "80+ billion" is the rounded claim we use site-wide), shallower where reality is shallower (SPX 2022+, no NDX, tape lag), and the defects are listed until they are fixed rather than after. Validate it yourself: GET /v1/tickers on the historical host with an Alpha key; if you are running this evaluation for a systematic desk, for-quant-teams is the short commercial version of this page. Or start from the complete backtesting guide.