ASX Options Expiry and Settlement Explained
Average distance from the opening print, first 30 minutes (SPY)series ·
2026-10-24 · 31×2
How far eight large caps travel from their opening print by 10:00ranking ·
2026-10-24 · 8×2
SPY on 15 May 2026: distance from the opening print, 09:30 to 10:30 New York timeseries ·
2026-10-24 · 61×2
Options Expiry Days in India: NSE and BSE
Weekdays with a traded expiration: SPY, QQQ and IWM, trailing five weeksranking ·
2026-10-17 · 3×4
Average distance from the opening print, first 30 minutes (SPY)
Average distance from the opening print, first 30 minutes (SPY)
| et_time | avg_gap_bps |
|---|---|
| 09:30 | 5.6 |
| 09:31 | 7.3 |
| 09:32 | 8.1 |
| 09:33 | 9.3 |
| 09:34 | 9.9 |
| 09:35 | 10.9 |
| 09:36 | 11.2 |
| 09:37 | 11.9 |
| 09:38 | 12.1 |
| 09:39 | 12.6 |
| 09:40 | 12.4 |
| 09:41 | 13.1 |
| 09:42 | 13.8 |
| 09:43 | 14 |
| 09:44 | 14.5 |
| 09:45 | 14.9 |
| 09:46 | 15.4 |
| 09:47 | 15.9 |
| 09:48 | 15.8 |
| 09:49 | 16.2 |
| 09:50 | 16.7 |
| 09:51 | 17.2 |
| 09:52 | 17.1 |
| 09:53 | 17.6 |
| 09:54 | 17.8 |
| 09:55 | 18.2 |
| 09:56 | 18.8 |
| 09:57 | 19.5 |
| 09:58 | 20.5 |
| 09:59 | 20.9 |
| 10:00 | 20.7 |
the exact SQL behind every number
WITH session_open AS (
SELECT
toDate(toTimeZone(window_start, 'America/New_York')) AS session_day,
argMin(toFloat64(open), window_start) AS first_print
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= today() - 300
AND window_start < today() - 2
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 session_day
)
SELECT
formatDateTime(toTimeZone(m.window_start, 'America/New_York'), '%H:%i') AS et_time,
round(avg(abs(toFloat64(m.close) / s.first_print - 1) * 10000), 1) AS avg_gap_bps
FROM global_markets.delayed_stocks_minute_aggs AS m
INNER JOIN session_open AS s
ON toDate(toTimeZone(m.window_start, 'America/New_York')) = s.session_day
WHERE m.ticker = 'SPY'
AND m.window_start >= today() - 300
AND m.window_start < today() - 2
AND (toHour(toTimeZone(m.window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(m.window_start, 'America/New_York'))) BETWEEN 570 AND 600
AND s.first_print > 0
GROUP BY et_time
HAVING count() > 0
ORDER BY et_time
More from this analysisASX Options Expiry and Settlement Explained
SPY on 15 May 2026: distance from the opening print, 09:30 to 10:30 New York time
series 61×2
→
How far eight large caps travel from their opening print by 10:00
ranking 8×2
→
Near-dated versus long-dated SPY implied volatility, session by session
series 83×3
→
The prices behind the arithmetic: Thursday's close, the strike, Friday's open and close
series 29×6
→
See all 3,293 queries →