{"slug":"when-do-options-expire","qid":"forward_calendar","label":"The rest of 2026, measured: each month's busiest forward expiration date, July 6-9 tape","post_title":"When Do Options Expire? Friday 4 PM ET & Daily","post_url":"/blog/when-do-options-expire#q-forward_calendar","columns":["month","busiest_expiry_date","weekday","contracts_mm","underlyings"],"rows":[{"month":"2026-07","busiest_expiry_date":"2026-07-17","weekday":"Friday","contracts_mm":31.5,"underlyings":4613},{"month":"2026-08","busiest_expiry_date":"2026-08-21","weekday":"Friday","contracts_mm":14.6,"underlyings":4368},{"month":"2026-09","busiest_expiry_date":"2026-09-18","weekday":"Friday","contracts_mm":8.5,"underlyings":2198},{"month":"2026-10","busiest_expiry_date":"2026-10-16","weekday":"Friday","contracts_mm":3,"underlyings":1707},{"month":"2026-11","busiest_expiry_date":"2026-11-20","weekday":"Friday","contracts_mm":1.6,"underlyings":1493},{"month":"2026-12","busiest_expiry_date":"2026-12-18","weekday":"Friday","contracts_mm":3.2,"underlyings":2432}],"shape":"series","sql":"WITH per_expiry AS (\n    SELECT toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) AS expiry,\n           sum(toFloat64(volume)) AS v,\n           uniqExact(substring(ticker, 3, length(ticker) - 17)) AS underlyings\n    FROM global_markets.options_minute_aggs\n    WHERE window_start >= '2026-07-06 04:00:00'\n      AND window_start < '2026-07-10 04:00:00'\n    GROUP BY expiry\n)\nSELECT formatDateTime(toStartOfMonth(expiry), '%Y-%m') AS month,\n       toString(argMax(expiry, (v, toString(expiry)))) AS busiest_expiry_date,\n       dateName('weekday', argMax(expiry, (v, toString(expiry)))) AS weekday,\n       round(max(v) / 1e6, 1) AS contracts_mm,\n       argMax(underlyings, (v, toString(expiry))) AS underlyings\nFROM per_expiry\nWHERE expiry >= '2026-07-13' AND expiry <= '2026-12-31'\nGROUP BY month\nHAVING toDayOfWeek(argMax(expiry, (v, toString(expiry)))) = 5\n   AND toDayOfMonth(argMax(expiry, (v, toString(expiry)))) BETWEEN 15 AND 21\nORDER BY month","computed_at":"2026-08-10T14:10:46.138021+00:00","elapsed":0.003559331}