Options contracts and 0DTE share by session, July 6-10
Answered against 22 years of US equities and 12 years of US options data and published with the query that produced it. This result is stored as of 2026-07-26, from Market Recap: Week of July 6, 2026.
| d | contracts_m | pct_0dte |
|---|---|---|
| 2026-07-06 | 61 | 38.7 |
| 2026-07-07 | 61.1 | 31.2 |
| 2026-07-08 | 63.3 | 38.7 |
| 2026-07-09 | 58.9 | 28.7 |
| 2026-07-10 | 65.6 | 48.7 |
- Rows × columns
- 5 × 3
- Period covered
- to
- Computed
- Completeness
- No missing values
- Source
- US exchange, SIP and OPRA market data
- Licence
- Strasmore terms · free, no signup
What each column holds
| Column | Type | Range | Notes |
|---|---|---|---|
d |
date | 2026-07-06 to 2026-07-10 | |
contracts_m |
number | 58.9 to 65.6 | count |
pct_0dte |
number | 28.7 to 48.7 | percent |
Computed from Strasmore's warehouse of US exchange, SIP and OPRA market data. Equity prices are delayed; options greeks and implied volatility are end-of-day. This result is stored, not recomputed on load — it is exactly the numbers that were returned on , and the query below is what returned them.
Run it yourself
This is the exact query behind the result above. Change a ticker, a date or a column and run it against the warehouse — no account, no key. The no-signup tier is smaller than the one this page was computed on; a query that reaches past it comes back saying which plan runs it.
SELECT toDate(sip_timestamp) AS d,
round(toFloat64(sum(size)) / 1e6, 1) AS contracts_m,
round(100.0 * sumIf(size, substring(ticker, length(ticker) - 14, 6) = formatDateTime(toDate(sip_timestamp), '%y%m%d')) / sum(size), 1) AS pct_0dte
FROM global_markets.options_trades
WHERE sip_timestamp >= '2026-07-06 00:00:00' AND sip_timestamp < '2026-07-11 00:00:00'
GROUP BY d
ORDER BY d
Werk met deze data in je AI-assistent
Opent klaar om te bevragen, met de data van deze pagina. Gratis, zonder account.