STRASMORE/EXPLORE 3,256 QUERIES 22Y EQUITIES · 12Y OPTIONS

3,256 answered market questions

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

When Do Options Expire? Friday 4 PM ET & Daily
The rest of 2026, measured: each month's busiest forward expiration date, July 6-9 tapeseries · 2026-08-10 · 6×5Preview: a 6-point series, ending lower. June 2026 SPY options volume by days-to-expiry at the time of the tradeseries · 2026-08-10 · 4×3Preview: a 4-point series, ending lower. Options volume by expiration weekday: all US options traded June 1 - July 9, 2026series · 2026-08-10 · 5×5Preview: a 5-point series, ending higher. The daily-expiration club: every root with an expiry on all 21 June 2026 sessionsranking · 2026-08-10 · 11×3Preview: 11 ranked values, largest first.
SIP Feeds vs Direct Exchange Feeds
Which venues sat on the bid side of the quote record, KO on June 16, 2026ranking · 2026-08-09 · 17×3Preview: 16 ranked values, largest first. Quote update traffic across five household tickers, 10:00 to 11:00 a.m. ET on June 16, 2026table · 2026-08-09 · 5×5 US equity exchanges that feed the consolidated tapetable · 2026-08-09 · 18×4 Venue clock to consolidated tape clock, KO quotes on June 16, 2026series · 2026-08-09 · 15×4Preview: a 15-point series, roughly flat.
Maker-Taker Fees and Rebates Explained
Where one liquid name's shares printed, by venue (Jul 15, 2026)ranking · 2026-08-09 · 12×3Preview: 12 ranked values, largest first. Registered US stock exchanges and their participant codestable · 2026-08-09 · 18×5 One hour of NBBO spreads, measured in mils (Jul 15, 2026)ranking · 2026-08-09 · 4×3Preview: 4 ranked values, smallest first. A 30 mil per share fee as basis points of notional, by price band (Jul 15, 2026)ranking · 2026-08-09 · 6×3Preview: 6 ranked values, largest first.
Price-Time Priority vs Pro-Rata Fills
Quote updates per second and average quoted spread, ten minutes on 17 June 2026ranking · 2026-08-08 · 5×3Preview: 5 ranked values, largest first. Average shares per trade print, June 2026ranking · 2026-08-08 · 8×2Preview: 8 ranked values, largest first. AAPL option prints by contract count, 17 June 2026ranking · 2026-08-08 · 5×2Preview: 5 ranked values, largest first. AAPL trade prints by share count, 17 June 2026ranking · 2026-08-08 · 5×2Preview: 5 ranked values, largest first.
Iceberg Orders Explained: Hidden Liquidity
Most repeated price and size pairings, AAPL, June 17, 2026table · 2026-08-06 · 12×5 Every AAPL print on June 17, 2026, grouped by trade sizeranking · 2026-08-06 · 6×4Preview: 6 ranked values, largest first. Average shares per print, monthly, MSFT and KOseries · 2026-08-06 · 90×4Preview: a 16-point series, ending lower. The busiest price and size pairing, half hour by half hourscalar · 2026-08-06 · 1×367
Market Recap: July 30, 2026, The Day in Numbers
Session verification: first/last SPY bar ET, regular-bar count, holiday receipts, next closurescalar · 2026-08-02 · 1×7390 Seven names: RTH median quoted spread in basis points, with quote-quality counts, July 30table · 2026-08-02 · 7×5 July 31 and August 3 on the calendar: closures, ex-dividends, splits, the Friday expiry, and the short-interest lagscalar · 2026-08-02 · 1×60 Ex-dividends, splits, listings, news, and the July 30 SEC filing mixscalar · 2026-08-02 · 1×14200 Treasury curve prints on file, July 27 through July 30series · 2026-08-02 · 4×5Preview: a 4-point series, ending higher. SPY's median spread ranked against every July session, tightest firstscalar · 2026-08-02 · 1×40.27 Stocks NBBO update count: July 30 vs July 29, with named-ticker updates (millions)scalar · 2026-08-02 · 1×6560.75 Options NBBO tape: total updates vs the stock tape, plus the SPY root slice, July 30scalar · 2026-08-02 · 1×310.32 Top 6 by dollars traded, top 4 by shares traded: July 30 regular hourstable · 2026-08-01 · 10×5 SPY day move in trailing context (open-to-close, June 30 through July 30)scalar · 2026-08-01 · 1×40.77 Sector ETFs, July 30 close vs July 29 close, rankedranking · 2026-08-01 · 11×3Preview: 11 ranked values, largest first. SPY / QQQ / DIA / IWM: July 30 vs the July 29 close, regular hourstable · 2026-08-01 · 4×10 Options tape: contracts, call share, same-day share vs Wednesday, busiest SPY contractscalar · 2026-08-01 · 1×1210.93 Eight mega-caps: change vs July 29 and regular-hours dollars, July 30table · 2026-08-01 · 8×5 Biggest gainers and decliners: July 30 close vs July 29 close, $5M+ traded, splits excludedranking · 2026-08-01 · 16×4Preview: 16 ranked values, largest first. Liquid-tape breadth: July 30 close vs July 29 close, $1M-traded filterscalar · 2026-08-01 · 1×63,782
Market Recap: July 29, 2026, The Day in Numbers
Top 6 by dollars traded, top 4 by shares traded: July 29 regular hourstable · 2026-08-01 · 10×5 Session verification: first/last SPY bar ET, regular-bar count, holiday receipts, next closurescalar · 2026-08-01 · 1×7390 Seven names: RTH median quoted spread in basis points, with quote-quality counts, July 29table · 2026-08-01 · 7×5 July 30 and 31 on the calendar: closures, ex-dividends, splits, the Friday expiry, and the short-interest lagscalar · 2026-08-01 · 1×60 Ex-dividends, splits, listings, news, and the July 29 SEC filing mixscalar · 2026-08-01 · 1×1485 Treasury curve prints on file, July 24 through July 29series · 2026-08-01 · 4×5Preview: a 4-point series, ending higher. SPY day move in trailing context (open-to-close, June 29 through July 29)scalar · 2026-08-01 · 1×4-1.41 SPY's median spread ranked against every July session, tightest firstscalar · 2026-08-01 · 1×40.27 Sector ETFs, July 29 close vs July 28 close, rankedranking · 2026-08-01 · 11×3Preview: 11 ranked values, largest first. SPY / QQQ / DIA / IWM: July 29 vs the July 28 close, regular hourstable · 2026-08-01 · 4×10 Stocks NBBO update count: July 29 vs July 28, with named-ticker updates (millions)scalar · 2026-08-01 · 1×6722.65 Options NBBO tape: total updates vs the stock tape, plus the SPY root slice, July 29scalar · 2026-08-01 · 1×313.55 Options tape: contracts, call share, same-day share vs Tuesday, busiest SPY contractscalar · 2026-08-01 · 1×1211.03 Eight mega-caps: change vs July 28 and regular-hours dollars, July 29table · 2026-08-01 · 8×5 Biggest gainers and decliners: July 29 close vs July 28 close, $5M+ traded, splits excludedranking · 2026-08-01 · 16×4Preview: 16 ranked values, largest first. Liquid-tape breadth: July 29 close vs July 28 close, $1M-traded filterscalar · 2026-08-01 · 1×61,652
Market Recap: July 28, 2026, The Day in Numbers
Top 6 by dollars traded, top 4 by shares traded: July 28 regular hourstable · 2026-08-01 · 10×5 Session verification: first/last SPY bar ET, regular-bar count, holiday receipts, next closurescalar · 2026-08-01 · 1×7390 Seven names: RTH median quoted spread in basis points, with quote-quality counts, July 28table · 2026-08-01 · 7×5 July 29 through 31 on the calendar: closures, ex-dividends, splits, the Friday expiry, and the short-interest lagscalar · 2026-08-01 · 1×60 Ex-dividends, splits, listings, news, and the July 28 SEC filing mixscalar · 2026-08-01 · 1×14147 Treasury curve prints on file, July 23 through July 28series · 2026-08-01 · 4×5Preview: a 4-point series, ending higher. SPY day move in trailing context (open-to-close, June 29 through July 28)scalar · 2026-08-01 · 1×40.21 SPY's median spread ranked against every July session, tightest firstscalar · 2026-08-01 · 1×40.27 Sector ETFs, July 28 close vs July 27 close, rankedranking · 2026-08-01 · 11×3Preview: 11 ranked values, largest first. SPY / QQQ / DIA / IWM: July 28 vs the July 27 close, regular hourstable · 2026-08-01 · 4×10 Stocks NBBO update count: July 28 vs July 27, with named-ticker updates (millions)scalar · 2026-08-01 · 1×6536.07 Options NBBO tape: total updates vs the stock tape, plus the SPY root slice, July 28scalar · 2026-08-01 · 1×310.23 Options tape: contracts, call share, same-day share vs Monday, busiest SPY contractscalar · 2026-08-01 · 1×1210.07 Eight mega-caps: change vs July 27 and regular-hours dollars, July 28table · 2026-08-01 · 8×5 Biggest gainers and decliners: July 28 close vs July 27 close, $5M+ traded, splits excludedranking · 2026-08-01 · 16×4Preview: 16 ranked values, largest first. Liquid-tape breadth: July 28 close vs July 27 close, $1M-traded filterscalar · 2026-08-01 · 1×63,519
Market Recap: July 27, 2026, The Day in Numbers
Top 6 by dollars traded, top 4 by shares traded: July 27 regular hourstable · 2026-08-01 · 10×5 Session verification: first/last SPY bar ET, regular-bar count, holiday receipts, next closurescalar · 2026-08-01 · 1×7390 Seven names: RTH median quoted spread in basis points, with quote-quality counts, July 27table · 2026-08-01 · 7×5 July 28 through 31 on the calendar: closures, ex-dividends, splits, the Friday expiry, and the short-interest lagscalar · 2026-08-01 · 1×60 Ex-dividends, splits, listings, news, and the July 27 SEC filing mixscalar · 2026-08-01 · 1×1491 Treasury curve prints on file, July 22 through July 27series · 2026-08-01 · 4×5Preview: a 4-point series, ending lower. SPY day move in trailing context (open-to-close, June 26 through July 27)scalar · 2026-08-01 · 1×4-0.79 SPY's median spread ranked against every July session through the 27th, tightest firstscalar · 2026-08-01 · 1×40.27 Sector ETFs, July 27 close vs July 24 close, rankedranking · 2026-08-01 · 11×3Preview: 11 ranked values, largest first. SPY / QQQ / DIA / IWM: July 27 vs the July 24 close, regular hourstable · 2026-08-01 · 4×10 Stocks NBBO update count: July 27 vs July 24, with named-ticker updates (millions)scalar · 2026-08-01 · 1×6553.53 Options NBBO tape: total updates vs the stock tape, plus the SPY root slice, July 27scalar · 2026-08-01 · 1×310.38 Options tape: contracts, call share, same-day share vs Friday, busiest SPY contractscalar · 2026-08-01 · 1×1211.07 Eight mega-caps: change vs July 24 and regular-hours dollars, July 27table · 2026-08-01 · 8×5 Biggest gainers and decliners: July 27 close vs July 24 close, $5M+ traded, splits excludedranking · 2026-08-01 · 16×4Preview: 16 ranked values, largest first. Liquid-tape breadth: July 27 close vs July 24 close, $1M-traded filterscalar · 2026-08-01 · 1×63,880
Does Dividend Capture Actually Work?
Quarterly dividend as a share of price vs typical daily move: ten large payers, Jul 2023 to Jun 2026ranking · 2026-08-01 · 10×4Preview: 10 ranked values, largest first. Coca-Cola (KO): overnight decline vs dividend on each ex-dividend date, Sep 2023 to Jun 2026series · 2026-08-01 · 12×4Preview: a 12-point series, ending higher. Ex-dividend openings sorted by decline as a multiple of the dividend: US quarterly payers, Jan 2024 to Jun 2026ranking · 2026-08-01 · 5×3Preview: 5 ranked values, smallest first. Overnight decline vs dividend paid: ten large payers, 12 ex-dividend dates each, Jul 2023 to Jun 2026table · 2026-08-01 · 10×5
What Is Max Pain in Options? The Real Math
SPY contracts traded by strike, July 17 2026 expiryranking · 2026-07-31 · 22×3Preview: 16 ranked values, smallest first. Minimising strike vs settlement close: SPY monthly expirations, Feb to Jul 2026table · 2026-07-31 · 6×5 The six lowest-payout candidate strikes, SPY July 17 2026 expiryranking · 2026-07-31 · 6×2Preview: 6 ranked values, smallest first. Total payout to option holders at each candidate settlement price, SPY July 17 2026table · 2026-07-31 · 36×2
Why Do Stocks Gap Up or Down Overnight?
Overnight gaps by ticker, H1 2026: average absolute gap and the single biggest gapseries · 2026-07-26 · 6×5Preview: a 6-point series, ending higher. MSFT straddle prices at the close before the gap: Jan 28, 2026, Jan 30 expirytable · 2026-07-26 · 4×5 MSFT: how the January 29, 2026 gap formed, 30-minute premarket bucketsseries · 2026-07-26 · 11×8Preview: a 11-point series, ending higher. SPY, H1 2026: average absolute overnight gap vs average absolute intraday movescalar · 2026-07-26 · 1×4123 What crossed the wire during SPY's biggest overnight gap of H1 2026table · 2026-07-26 · 2×3 SPY overnight gaps by weekday: every session, January 2024 through June 2026series · 2026-07-26 · 5×4Preview: a 5-point series, ending lower. SPY's six biggest overnight gaps of H1 2026: and the same day's open-to-close moveseries · 2026-07-26 · 6×3Preview: a 6-point series, ending higher.
What Is VWAP? Volume-Weighted Average Price
The receipt: VWAP from every individual trade vs. the minute-bar shortcut (AAPL, July 2, 2026)scalar · 2026-07-26 · 1×5305.9162
Market-wide options volume by session, with monthly expirations labelled

Market-wide options volume by session, with monthly expirations labelled

most recentas of series 25×5read in context →
Market-wide options volume by session, with monthly expirations labelled — 25 rows by 5 columns, computed from US exchange, SIP and OPRA data.
sessioncontracts_msession_typemonthly_expiry_msession_id
Sep 163.3ordinary76.120260901
Sep 259.9ordinary76.120260902
Sep 372ordinary76.120260903
Sep 471.2ordinary76.120260904
Sep 861.6ordinary76.120260908
Sep 961.9ordinary76.120260909
Sep 1064.3ordinary76.120260910
Sep 1168.3ordinary76.120260911
Sep 1467.5ordinary76.120260914
Sep 1556.6ordinary76.120260915
Sep 1665.4ordinary76.120260916
Sep 1768.2ordinary76.120260917
Sep 1876.1monthly expiration76.120260918
Sep 2180.3ordinary76.120260921
Sep 2263.6ordinary76.120260922
Sep 2369ordinary76.120260923
Sep 2467.3ordinary76.120260924
Sep 2572.6ordinary76.120260925
Sep 2866.6ordinary76.120260928
Sep 2958.6ordinary76.120260929
Sep 3061.8ordinary76.120260930
Oct 169.9ordinary76.120261001
Oct 278.7ordinary76.120261002
Oct 569.4ordinary76.120261005
Oct 663.1ordinary76.120261006
the exact SQL behind every number
WITH tape AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
           sum(toFloat64(volume)) AS vol
    FROM global_markets.options_minute_aggs
    WHERE window_start >= toDateTime(today() - 45, 'America/New_York')
    GROUP BY d
),
ranked AS (
    SELECT d, vol, row_number() OVER (ORDER BY d DESC) AS raw_rn
    FROM tape
),
cal AS (
    SELECT d, vol, rn, sum(if(rn BETWEEN 2 AND 21, 1, 0)) OVER () AS baseline_sessions
    FROM (
        SELECT d, vol, row_number() OVER (ORDER BY d DESC) AS rn
        FROM ranked
        WHERE vol >= 0.75 * (SELECT quantileExact(0.5)(vol) FROM ranked WHERE raw_rn > 1)
    )
),
w AS (
    SELECT d, vol,
           toStartOfMonth(d) + toIntervalDay(((5 - toDayOfWeek(toStartOfMonth(d)) + 7) % 7) + 14) AS third_friday
    FROM cal
    WHERE rn <= 25
),
marked AS (
    SELECT d, vol,
           (d = max(if(d <= third_friday, d, toDate('1970-01-01'))) OVER (PARTITION BY toStartOfMonth(d)))
             AND (third_friday <= max(d) OVER ()) AS is_expiry
    FROM w
),
latest AS (
    SELECT d, vol, is_expiry,
           max(if(is_expiry, d, toDate('1970-01-01'))) OVER () AS last_expiry_d
    FROM marked
)
SELECT formatDateTime(d, '%b %e') AS session,
       round(vol / 1e6, 1) AS contracts_m,
       multiIf(is_expiry, 'monthly expiration', 'ordinary') AS session_type,
       round(max(if(d = last_expiry_d, vol, 0)) OVER () / 1e6, 1) AS monthly_expiry_m,
       toYYYYMMDD(d) AS session_id
FROM latest
ORDER BY d ASC
$