upcoming_closures
Answered against 22 years of US equities and 12 years of US options data and published with the query that produced it. This result is stored as of 2026-09-22, from after-hours-trading-on-holidays-and-weekends.
| holiday_date | closure_label | weekday | holiday | day_status | regular_close_et | days_away |
|---|---|---|---|---|---|---|
| 2026-11-26 | November 26 | Thu | Thanksgiving | closed | 65 | |
| 2026-11-27 | November 27 | Fri | Thanksgiving | early-close | 01:00 PM | 66 |
| 2026-12-24 | December 24 | Thu | Christmas | early-close | 01:00 PM | 93 |
| 2026-12-25 | December 25 | Fri | Christmas | closed | 94 | |
| 2027-01-01 | January 1 | Fri | New Years Day | closed | 101 | |
| 2027-01-18 | January 18 | Mon | Martin Luther King, Jr. Day | closed | 118 | |
| 2027-02-15 | February 15 | Mon | Washington's Birthday | closed | 146 | |
| 2027-03-26 | March 26 | Fri | Good Friday | closed | 185 | |
| 2027-05-31 | May 31 | Mon | Memorial Day | closed | 251 | |
| 2027-06-18 | June 18 | Fri | Juneteenth | closed | 269 | |
| 2027-07-05 | July 5 | Mon | Independence Day | closed | 286 | |
| 2027-09-06 | September 6 | Mon | Labor Day | closed | 349 |
- Rows × columns
- 12 × 7
- Period covered
- to
- Computed
- Completeness
- Some fields are partly empty — see the columns below
- Source
- US exchange, SIP and OPRA market data
- Licence
- Strasmore terms · free, no signup
What each column holds
| Column | Type | Range | Notes |
|---|---|---|---|
holiday_date |
date | 2026-11-26 to 2027-09-06 | |
closure_label |
text | 12 distinct values (December 24, December 25, February 15…) | |
weekday |
text | 3 distinct values (Fri, Mon, Thu) | |
holiday |
text | 10 distinct values (Christmas, Good Friday, Independence Day…) | |
day_status |
text | 2 distinct values (closed, early-close) | |
regular_close_et |
text | 1 distinct value (01:00 PM) | 2 of 12 rows populated |
days_away |
number | 65 to 349 |
Computed from Strasmore's warehouse of US exchange, SIP and OPRA market data. Equity prices are delayed; options greeks and implied volatility are end-of-day. This result is stored, not recomputed on load — it is exactly the numbers that were returned on , and the query below is what returned them.
Run it yourself
This is the exact query behind the result above. Change a ticker, a date or a column and run it against the warehouse — no account, no key. The no-signup tier is smaller than the one this page was computed on; a query that reaches past it comes back saying which plan runs it.
SELECT
toString(date) AS holiday_date,
concat(monthName(date), ' ', toString(toDayOfMonth(date))) AS closure_label,
formatDateTime(date, '%a') AS weekday,
any(name) AS holiday,
any(status) AS day_status,
any(if(status = 'early-close',
formatDateTime(toTimeZone(close, 'America/New_York'), '%I:%i %p'),
'')) AS regular_close_et,
dateDiff('day', today(), date) AS days_away
FROM global_markets.stocks_market_holidays
WHERE date >= today()
GROUP BY date
ORDER BY date