STRASMORE/EXPLORE 2,170 QUERIES 22Y EQUITIES · 12Y OPTIONS

2,170 answered market questions

every one with its exact SQL, its result and the date it was computed · free, no signup

Which Stocks Have Daily Options?
Monday, Wednesday, Friday expirations: distinct option roots carrying an expiry on each weekdayseries · 2026-08-22 · 5×3Preview: a 5-point series, ending higher. Daily options vs weekly options: upcoming expiration dates for six household tickersranking · 2026-08-22 · 6×3Preview: 6 ranked values, largest first. SPY's expiration on every trading day: each near-term SPY expiry date, its weekday and volumeseries · 2026-08-22 · 11×4Preview: a 11-point series, ending lower. Which tickers carry the most upcoming expirations: option roots by distinct expiration dates in the next six weeksranking · 2026-08-22 · 20×3Preview: 16 ranked values, largest first.
DAX Daily Options: How Eurex 0DTE Works
Same-day expiries as a share of SPY option volume: every session, July 2026series · 2026-08-03 · 21×4Preview: a 16-point series, roughly flat. Expirations on the SPY option board: every listed expiry over 30 days, 16 July 2026series · 2026-08-03 · 13×4Preview: a 13-point series, ending lower. Median implied volatility by days to expiry: near-the-money SPY contracts, 16 July 2026ranking · 2026-08-03 · 5×4Preview: 5 ranked values, smallest first. Distinct expirations listed for the rest of July 2026: eight US namesranking · 2026-08-03 · 8×3Preview: 8 ranked values, largest first.
Monday, Wednesday, Friday expirations: distinct option roots carrying an expiry on each weekday

Monday, Wednesday, Friday expirations: distinct option roots carrying an expiry on each weekday

most recentas of series 5×3read in context →
Monday, Wednesday, Friday expirations: distinct option roots carrying an expiry on each weekday — 5 rows by 3 columns, computed from US exchange, SIP and OPRA data.
weekdayroots_with_expirycontracts_mm
1 Monday363.4
2 Tuesday140.6
3 Wednesday4033.5
4 Thursday143.6
5 Friday501995.7
the exact SQL behind every number
SELECT weekday,
       uniqExact(root) AS roots_with_expiry,
       round(sum(vol) / 1e6, 1) AS contracts_mm
FROM (
    SELECT substring(ticker, 3, length(ticker) - 17) AS root,
           toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) AS expiry,
           multiIf(toDayOfWeek(toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6)))) = 1, '1 Monday',
                   toDayOfWeek(toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6)))) = 2, '2 Tuesday',
                   toDayOfWeek(toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6)))) = 3, '3 Wednesday',
                   toDayOfWeek(toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6)))) = 4, '4 Thursday',
                   '5 Friday') AS weekday,
           toFloat64(volume) AS vol
    FROM global_markets.options_minute_aggs
    WHERE window_start >= now() - INTERVAL 8 DAY
)
WHERE expiry >= today() - 3 AND expiry <= today() + INTERVAL 30 DAY
GROUP BY weekday
ORDER BY weekday
$