Futures Price Limits and Price Banding
Typical and tail one-minute moves in the S&P 500 ETF, by half hour of the sessionseries ·
2026-10-09 · 13×3
Between-session gaps on four equity index ETFs, 2015 to datetable ·
2026-10-09 · 4×5
Share of S&P 500 ETF sessions opening 1% or 2% from the prior close, by yeartable ·
2026-10-09 · 12×5
S&P 500 ETF path on August 5, 2024, measured against the prior closeseries ·
2026-10-09 · 39×3
Typical and tail one-minute moves in the S&P 500 ETF, by half hour of the session
Typical and tail one-minute moves in the S&P 500 ETF, by half hour of the session
| et_time | median_minute_move_pct | p99_minute_move_pct |
|---|---|---|
| 09:30 | 0.025 | 0.171 |
| 10:00 | 0.022 | 0.158 |
| 10:30 | 0.019 | 0.138 |
| 11:00 | 0.016 | 0.123 |
| 11:30 | 0.015 | 0.113 |
| 12:00 | 0.014 | 0.116 |
| 12:30 | 0.014 | 0.114 |
| 13:00 | 0.014 | 0.102 |
| 13:30 | 0.013 | 0.121 |
| 14:00 | 0.013 | 0.114 |
| 14:30 | 0.013 | 0.113 |
| 15:00 | 0.013 | 0.114 |
| 15:30 | 0.017 | 0.137 |
the exact SQL behind every number
SELECT
formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_time,
round(100 * quantileDeterministic(0.5)(abs(toFloat64(close) / toFloat64(open) - 1),
toUInt64(toUnixTimestamp(window_start))), 3) AS median_minute_move_pct,
round(100 * quantileDeterministic(0.99)(abs(toFloat64(close) / toFloat64(open) - 1),
toUInt64(toUnixTimestamp(window_start))), 3) AS p99_minute_move_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= '2024-01-01 00:00:00'
AND window_start < '2026-10-01 00:00:00'
AND volume > 0
AND open > 0
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
GROUP BY et_time
ORDER BY et_time ASC
More from this analysisFutures Price Limits and Price Banding
S&P 500 ETF path on August 5, 2024, measured against the prior close
series 39×3
→
Share of S&P 500 ETF sessions opening 1% or 2% from the prior close, by year
table 12×5
→
Between-session gaps on four equity index ETFs, 2015 to date
table 4×5
→
SPY typical and largest daily move, month by month since 2019
series 91×4
→
See all 3,256 queries →