When Do 0DTE Options Trade? By the Hour
Same-day share of options volume by weekday: all sessions, June 1 to July 10, 2026series ·
2026-08-13 · 5×5
Median bid-ask spread on SPY same-day contracts quoted $1-$10, by ET hour: July 10, 2026ranking ·
2026-08-13 · 7×4
What the last hour trades: same-day volume by premium paid, 10am hour vs. closing hour, July 10, 2026ranking ·
2026-08-13 · 5×4
0DTE contract volume, share of all options volume, and flow rate by ET hour: Friday, July 10, 2026table ·
2026-08-13 · 7×5
Same-day calls vs. puts by ET hour, and the put share of 0DTE volume: July 10, 2026ranking ·
2026-08-13 · 7×4
Same-day options volume by underlying: the ten heaviest names, July 10, 2026table ·
2026-08-13 · 10×5
Why Trading Volume Dies at Midday: U-Shape
Share of regular-session volume by half hour, SPY and AAPLseries ·
2026-08-10 · 13×3
Average one-minute SPY range in basis points, by half hourseries ·
2026-08-10 · 13×3
SPY open, midday and close volume against an average minute, by yearranking ·
2026-08-10 · 8×4
Open, midday and close volume against an average session minuteranking ·
2026-08-10 · 6×4
Same-day share of options volume by weekday: all sessions, June 1 to July 10, 2026
Same-day share of options volume by weekday: all sessions, June 1 to July 10, 2026
| dow | weekday | sessions | avg_same_day_contracts_m | same_day_pct_of_volume |
|---|---|---|---|---|
| 1 | Monday | 6 | 22.91 | 34.5 |
| 2 | Tuesday | 6 | 18.92 | 29.2 |
| 3 | Wednesday | 6 | 22.72 | 34.2 |
| 4 | Thursday | 6 | 24.59 | 35.4 |
| 5 | Friday | 4 | 36.1 | 46.1 |
the exact SQL behind every number
WITH sessions AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
sumIf(volume, substring(ticker, length(ticker) - 14, 6)
= formatDateTime(toDate(toTimeZone(window_start, 'America/New_York')), '%y%m%d')) AS same_day_vol,
sum(volume) AS all_vol
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime64('2026-06-01 13:30:00', 9)
AND window_start < toDateTime64('2026-07-10 20:00:00', 9)
AND toHour(toTimeZone(window_start, 'America/New_York')) BETWEEN 9 AND 15
GROUP BY session_date
)
SELECT toDayOfWeek(session_date) AS dow,
formatDateTime(session_date, '%W') AS weekday,
count() AS sessions,
round(avg(same_day_vol) / 1e6, 2) AS avg_same_day_contracts_m,
round(100.0 * sum(same_day_vol) / sum(all_vol), 1) AS same_day_pct_of_volume
FROM sessions
GROUP BY dow, weekday
ORDER BY dow
More from this analysisWhen Do 0DTE Options Trade? By the Hour
Same-day options volume by underlying: the ten heaviest names, July 10, 2026
table 10×5
→
Median bid-ask spread on SPY same-day contracts quoted $1-$10, by ET hour: July 10, 2026
ranking 7×4
→
0DTE contract volume, share of all options volume, and flow rate by ET hour: Friday, July 10, 2026
table 7×5
→
Same-day calls vs. puts by ET hour, and the put share of 0DTE volume: July 10, 2026
ranking 7×4
→
See all 2,170 queries →