03 / 14 · docs

Market hours

i know when the bell rings.

The NYSE schedule, daylight saving time, holidays and early closes, and what EVE does in each case.

simulation Simulation only. The protocol is not live. No transaction is ever sent.

EVE works exactly when Wall Street does not. Everything in the protocol, and the mood of this site, hangs on one question: is the New York Stock Exchange open right now?

The regular schedule#

The NYSE core session runs from 9:30 AM to 4:00 PM, New York time, Monday to Friday, except on market holidays. EVE calls the stretch between one close and the next open a night, even when it lasts a whole weekend.

The market isEVEThis site
ClosedBuys. Sellers can deposit and receive the advance."EVE is awake": deep red, glowing eyes, the countdown reads "the bell rings in".
OpenSettles, then rests. Last night's sales are settled in the first minutes. Nothing new can be sold until the close."The bell has rung": brighter, the countdown reads "Wall Street closes in".

The open is inclusive and the close is exclusive: at 9:30:00 AM the market is open, at 4:00:00 PM it is closed.

Time zones and daylight saving time#

All market times are New York wall-clock times. New York switches between Eastern Standard Time (UTC−5) and Eastern Daylight Time (UTC−4):

  • clocks go forward on the second Sunday of March at 2:00 AM;
  • clocks go back on the first Sunday of November at 2:00 AM.
BellWinter (EST)Summer (EDT)
Opening bell, 9:30 AM14:30 UTC13:30 UTC
Closing bell, 4:00 PM21:00 UTC20:00 UTC

Two consequences are easy to get wrong.

The weekend around a switch is not 65.5 hours long. A normal weekend, Friday 4:00 PM to Monday 9:30 AM, lasts 65 hours and 30 minutes. In March the clocks skip an hour, so that weekend lasts 64:30. In November they repeat an hour, so it lasts 66:30. The countdown accounts for this.

Your local time of the bell moves. Most countries change their clocks on different dates than the United States, or not at all. For a few weeks each year, the opening bell arrives an hour earlier or later on your clock than you are used to. The home page always shows the next open and close in your own time zone.

Holidays#

The NYSE closes for a full day on ten holidays. EVE computes them by rule, so the calendar stays correct in future years.

HolidayRule
New Year's DayJanuary 1
Martin Luther King Jr. Daythird Monday of January
Washington's Birthdaythird Monday of February
Good Fridaythe Friday before Easter Sunday
Memorial Daylast Monday of May
JuneteenthJune 19
Independence DayJuly 4
Labor Dayfirst Monday of September
Thanksgiving Dayfourth Thursday of November
Christmas DayDecember 25

Observance. When a fixed-date holiday falls on a Sunday, the market closes the following Monday. When it falls on a Saturday, the market closes the Friday before. There is one exception: when New Year's Day falls on a Saturday, there is no closure at all.

NYSE full-day closures, 2026
Holiday2026Note
New Year's DayThursday, January 1
Martin Luther King Jr. DayMonday, January 19
Washington's BirthdayMonday, February 16
Good FridayFriday, April 3
Memorial DayMonday, May 25
Juneteenth National Independence DayFriday, June 19
Independence DayFriday, July 3observed (the holiday itself falls on a weekend)
Labor DayMonday, September 7
Thanksgiving DayThursday, November 26
Christmas DayFriday, December 25

And the year after:

NYSE full-day closures, 2027
Holiday2027Note
New Year's DayFriday, January 1
Martin Luther King Jr. DayMonday, January 18
Washington's BirthdayMonday, February 15
Good FridayFriday, March 26
Memorial DayMonday, May 31
Juneteenth National Independence DayFriday, June 18observed (the holiday itself falls on a weekend)
Independence DayMonday, July 5observed (the holiday itself falls on a weekend)
Labor DayMonday, September 6
Thanksgiving DayThursday, November 25
Christmas DayFriday, December 24observed (the holiday itself falls on a weekend)

Early closes#

On a few days each year the market closes at 1:00 PM New York time:

  • the day after Thanksgiving;
  • Christmas Eve, when it is a trading day;
  • July 3, when Independence Day falls on a Tuesday, Wednesday, Thursday or Friday.
NYSE early closes (1:00 PM New York), 2026
Day2026
Day after ThanksgivingFriday, November 27
Christmas EveThursday, December 24

On an early-close day, EVE's night starts at 1:00 PM instead of 4:00 PM. The fee does not change: fees count calendar nights, not hours.

What EVE does in each case#

CaseExampleNightsFeeWhat happens
WeeknightTuesday close to Wednesday open10.25%The standard case.
WeekendFriday close to Monday open30.75%One sale, settled Monday morning.
Midweek holidayWednesday close to Friday open (Thanksgiving)20.50%The fee is charged per day.
Holiday weekendFriday close to Tuesday open (Labor Day)41.00%The longest regular stretch.
Early closeDay after Thanksgiving, from 1:00 PM30.75%The night starts three hours sooner.
Unscheduled closureA day of mourningone moreone more nightly feeSettlement waits for the next real open.
Market openAny sessionnonenoneNothing can be sold. Last night's sales settle in the first 30 minutes.

A night is counted in calendar days between the date of the close and the date of the next open. That is what "charged per day across holidays" means. See Fees.

Extended hours#

US stocks also trade before 9:30 AM and after 4:00 PM, in the pre-market and after-hours sessions. EVE ignores both. The protocol keys on the core session only: the advance is sized on the 4:00 PM close (1:00 PM on early-close days), and settlement starts at the 9:30 AM open.

Trading halts#

A stock can be halted while the market is open: before news, or by a circuit breaker. If a stock is halted at the open, there is no fresh price for it, so its settlement waits until trading resumes. Other tickers settle normally. See Oracles.

How this site computes it#

The site does not call an API to know whether the market is open. It computes the answer from the rules above, in a small pure module with unit tests covering daylight-saving switches, observed holidays and early closes.

import { getMarketStatus } from "@/lib/protocol";

const status = getMarketStatus(new Date());

status.mode;          // "open" or "closed"
status.nextBell;      // { type: "open" | "close", at: Date }
status.msToNextBell;  // what the countdown shows
status.night.nights;  // calendar nights in the current (or coming) closed stretch
status.night.kind;    // "weeknight" | "weekend" | "holiday"

The test fixtures are the calendars published by NYSE Group for 2021 through 2028.