VALYNOXSTRATEGY RESEARCH TECHNOLOGY
AlphaPrimeAlphaPrime
ACADEMY / Markets and trading sessions

Christmas Eve market hours: early closes and your backtest

US stocks usually close at 1:00 p.m. Eastern Time on Christmas Eve, and CME futures halt early on their own schedule. These short, thin sessions shrink daily bars and break time-based exits, so a backtest should either exclude them or model them, then compare the two results.

By · Published · updated · Editorial policy

Contents
  1. How does the market trade on Christmas Eve?
  2. What time does the stock market close on Christmas Eve?
  3. How do CME futures Christmas hours differ from stock hours?
  4. Why are holiday sessions thin and expensive to trade?
  5. How do shortened sessions distort daily bars?
  6. Why do time-based exits break on early-close days?
  7. Should you exclude Christmas Eve from a backtest or model it?
  8. How do you check whether holiday sessions change your results?
  9. Frequently asked questions
  10. References

How does the market trade on Christmas Eve?

On Christmas Eve, US stock markets usually close early at 1:00 p.m. Eastern Time. CME futures follow their own holiday calendar, with early halts that differ by product group. Volume is thin and spreads are usually wider. In a backtest, these short sessions shrink daily bars, break time-based exits and add an easy-to-miss holiday gap, so handle them deliberately.

An early close is a scheduled trading day that the exchange ends hours before the normal closing time and announces in advance. The US stock market usually has up to three each year: around Independence Day, on the day after Thanksgiving and on Christmas Eve. To list the exact dates for every year in your data, use the stock market holidays and early closes calendar. Exchanges can change holiday hours from year to year, so confirm each date on the NYSE holiday calendar and on the CME Group holiday calendar for the contract you trade.

What time does the stock market close on Christmas Eve?

In recent years, when December 24 falls on a Monday to Thursday, NYSE and Nasdaq have closed at 1:00 p.m. Eastern Time instead of the normal 4:00 p.m. In Taiwan, that is 2:00 a.m. on December 25, because Eastern Time in December is 13 hours behind Taiwan time. The weekday of December 24 changes the pattern from year to year:

December 24 falls onStock market on December 24Christmas holiday
Monday to ThursdayEarly close, 1:00 p.m. ETClosed on December 25
FridayClosed all day (Christmas, a Saturday, is observed on Friday)No session on Saturday
SaturdayNo sessionChristmas, a Sunday, is observed on Monday, December 26
SundayNo sessionClosed on Monday, December 25

So a ten-year series of daily stock bars does not show the same holiday every year. Some years have a half-day bar on December 24. Other years have no December 24 bar at all. A rule that "knows" Christmas Eve by date alone will therefore behave differently from year to year.

How do CME futures Christmas hours differ from stock hours?

CME futures do not copy the stock market's 1:00 p.m. close. They follow a separate CME holiday schedule, and each product group has its own early halt time. A trade date is the day that a futures session is credited to. On CME Globex, the session that opens on the evening of one day belongs to the next day's trade date. This means the futures trade date for December 24 usually starts on the evening of December 23. It contains overnight trading that the stock market never had.

On Christmas Eve itself, CME Globex usually halts early around midday Central Time. The exact time is set separately for equity index, interest rate, energy, metals and agricultural products. Globex is closed on Christmas Day. To see the hours of your market in your own time zone, use the futures market hours tool and the CME holiday calendar for that year.

US stocksCME futures
Session on December 24Opens 9:30 a.m. ET, early close 1:00 p.m. ETStarts on the evening of December 23, halts early around midday CT
Who sets the halt timeNYSE and Nasdaq holiday calendarsCME holiday calendar, per product group
Christmas DayClosedClosed
What the daily bar holdsOnly the shortened day sessionOvernight trading plus the shortened morning
Two timelines in Eastern Time from December 23 to 25: the stock session on December 24 runs only from 9:30 to 1 p.m., while the futures trade date for December 24 starts on the evening of December 23 and halts early around midday; both are closed on December 25 Two clocks on Christmas Eve Session hours in Eastern Time Dec 23 Dec 24 Dec 25 Stocks Ends 1 p.m. Futures Early halt From Dec 23 evening Closed Futures days hold overnight hours. So: check halt times in your data.
Christmas Eve for stocks and futures: the stock session is cut short in the afternoon, while the futures trade date starts the evening before and halts on its own schedule.

Why are holiday sessions thin and expensive to trade?

Holiday sessions have fewer participants, so each trade usually costs more than on a normal day. Many traders and desks are away. Fewer orders rest in the order book, which usually means a wider bid-ask spread. A single large order can then move the price more than usual. Stop orders and market orders tend to fill further from the trigger price.

A backtest with one fixed slippage value assumes a holiday trade costs the same as a trade on a busy Tuesday. For most strategies, that understates holiday costs. Two practical fixes:

  • Raise slippage on holiday dates. Rerun the test with, for example, double the normal slippage on early-close days, and see whether the result holds.
  • Check where the profit comes from. If holiday trades are among the best trades, they are also the trades with the least realistic fills.

For how to set commission and slippage in general, see trading costs in backtests.

How do shortened sessions distort daily bars?

A half-day bar has a smaller range and lower volume than a normal bar, and every indicator that averages ranges or volume absorbs that distortion. Think of it like a weather station that measures only from midnight to noon on one day. The day's temperature range looks calm because half of it was never measured.

The effects to look for:

  • Volatility measures drop. The Average True Range (ATR) and similar filters fall after a short day, so ATR-based stops and position sizes shift for reasons that have nothing to do with the market.
  • Volume filters misfire. A rule such as "trade only when volume is above its 20-day average" sees an unusually low value on Christmas Eve.
  • Breakout levels look closer. A narrow December 24 bar sets a tight high and low, so a breakout on December 26 can trigger easily.
  • Holiday gaps are easy to overlook. The move from the December 24 close to the December 26 open spans a full holiday, so it often appears as a gap that a test can mistake for an ordinary overnight move.

Hypothetical example

A futures contract has a true range of 60 points on each of nine normal days. Christmas Eve has a true range of 25 points. The 10-day average moves from 60 to (9 × 60 + 25) ÷ 10 = 56.5 points. A stop set at 2 × ATR shrinks from 120 to 113 points, only because of a short session. A position size based on that stop grows a little for the same reason.

Hypothetical daily bars: normal days have a range of about 60 points, the half-day bar on December 24 has 25 points, there is no bar on December 25, December 26 opens with a gap, and the ATR line drops from 60 to 56.5 after December 24 One short bar pulls ATR down Daily ranges, hypothetical example 60 pts 25 pts none Gap Dec 17–23 Dec 24 Dec 25 Dec 26 ATR 60 56.5 A half day is not a quiet market. So: check stops sized after Dec 24.
Hypothetical daily bars: one short Christmas Eve bar lowers the range average, and the next bar opens with a holiday gap.

Why do time-based exits break on early-close days?

A time-based exit fails on an early-close day if it waits for a clock time that never arrives. A time-based exit is a rule that closes a position at a set time or after a set number of bars, instead of at a price. On Christmas Eve the session can end before that time, so the position is carried over Christmas Day into the next session.

Exit ruleWhat happens on a 1:00 p.m. closeFix
Exit at 3:55 p.m. ETNo bar exists at 3:55 p.m., so the trade stays open into December 26Exit relative to the actual session end, for example on the last bar of the session
Exit after N intraday barsThe trade runs past the close and finishes after the holidayAdd "or at session end, whichever comes first"
Exit after N daysA half day counts as a full day, so the holding time is shorter than plannedAccept it, or count hours instead of bars
Bar size that does not divide the session evenlyThe last bar of the short session is a partial barCheck how your data and platform build that final bar

The first row matters most for intraday strategies. A day-trading system that should be flat every night can show an overnight trade across a holiday in its trade list. That trade carries risk the strategy was never designed to take. A position carried across Christmas shows up in the individual trades of the performance report of AlphaPrime (Valynox), where every entry and exit is listed.

Intraday timeline for December 24 in Eastern Time: a day trade enters at 11:00, the session ends early at 13:00, the planned 15:55 exit is never reached, and the trade is held across the closed December 25 until it exits at the December 26 open The 3:55 exit never fires Day trade on Dec 24, Eastern Time Entry Held over holiday Real exit Closed 11:00 Close 13:00 Dec 25 Dec 26 15:55 not reached A day trade became a holiday hold. So: exit on the session's last bar.
A fixed 3:55 p.m. exit never fires on a 1:00 p.m. close, so the day trade is held over Christmas Day.

Should you exclude Christmas Eve from a backtest or model it?

Either choice works, as long as the backtest matches what you would actually do on the day. The default, leaving holiday sessions in without thinking about them, is the only weak option.

ApproachHowBest when
ExcludeNo new entries on early-close days, and flatten before the early closeYou do not plan to trade holiday sessions live
ModelKeep the dates, exit at the actual session end, raise slippage on those daysYou will trade them and want realistic costs and timing
Leave as isNormal rules on every dateOnly as the baseline for comparison

Removing holiday bars from daily data is not the same as excluding the trading days. Indicators then skip a day, and the December 26 bar sits next to December 23. Most traders keep the bars and change the trading rules instead. In AlphaPrime, backtesting applies the trading session, fees and slippage you set to every candidate and always uses next-bar execution.

How do you check whether holiday sessions change your results?

Run the same strategy with and without holiday trades and compare the two results. If the result depends on a few holiday sessions, the edge is fragile. Use these steps:

  1. List every early close and holiday in your data range with the holidays calendar, and add the observed holidays from the table above.
  2. Mark every trade that is open during, or enters on, one of those dates.
  3. Run the baseline test, then a second test that takes no new trades on those dates and flattens before each early close.
  4. Compare net result, number of trades, average trade and maximum drawdown between the two runs.
  5. Read the marked trades one by one: check entry and exit times, and look for gaps and overnight holds.

Hypothetical example

A strategy makes 400 trades over ten years with a net result of $30,000. Six trades touch holiday sessions, and together they made $9,000. Excluding them leaves $21,000. So 1.5% of the trades produced 30% of the profit, on the days with the thinnest markets and the least realistic fills. That share is the number to look at, not the $9,000 itself.

Make the choice once and keep it. If you try many holiday filters and keep the one with the best result, you are fitting the calendar to noise. White (2000) shows why the best of many tested rules tends to look better than it really is. For other holidays and reopenings, see market holidays in backtests.

What this means if you use AlphaPrime: load your own bar data with the holiday sessions as they really traded, set the session and costs you would trade with, and compare a run with holiday trades against a run without them before you keep a strategy.

Frequently asked questions

Is the stock market open on Christmas Eve?

Usually, yes, for a shortened session. When December 24 falls on a Monday to Thursday, NYSE and Nasdaq have closed at 1:00 p.m. Eastern Time in recent years. When December 24 falls on a Friday, the market is closed all day because Christmas is observed that Friday. Confirm each year on the NYSE holiday calendar.

Are futures open on Christmas Day?

No. CME Globex is closed on Christmas Day. On Christmas Eve, CME futures usually halt early around midday Central Time, and each product group has its own halt time in the CME holiday calendar.

Is the stock market open the day after Christmas?

December 26 is usually a regular full trading day in the US when it falls on a weekday. The exception is a year when Christmas falls on a Sunday. Then the holiday is observed on Monday, December 26, and the market is closed.

Should I delete holiday bars from my backtest data?

Usually not. Deleting bars makes indicators skip a day and joins the December 23 and December 26 bars as if they were neighbours. It is cleaner to keep the bars and change the trading rules, for example no new entries on early-close days and an exit at the actual session end.

What time is the Christmas Eve market close in Taiwan time?

The 1:00 p.m. Eastern Time stock close is 2:00 a.m. on December 25 in Taiwan, because Eastern Time in December is 13 hours behind Taiwan time. CME futures halt on their own schedule, so convert the CME halt time for your product separately.

References

  • White, H. (2000). A Reality Check for Data Snooping. Econometrica, 68(5), 1097–1126.