Weekend Gaps, Holidays & Rollover Spikes

Last updated: 2026-06-11

In short

Four calendar artifacts corrupt naive backtests: weekend gaps (stops fill at the gap’s far side, never at your level), rollover spread spikes (~22:00 GMT “signals” that are pricing noise), index CFD out-of-hours pricing and dividend adjustments, and holiday ghost liquidity. Each has a simple handling rule — apply them and the artifacts stop flattering your results.

Weekend Gaps: the Teleport Rule

Forex/CFD pricing halts Friday night and reopens Sunday ~00:00 server time (GMT+2/+3 clock) — and the reopen can print far from Friday’s close. For any position held over a weekend:

  • A stop inside the gap did not fill at your level. It filled at the first tradable price on the other side. Backtest rule: charge the full gap, not the stop distance. (Same logic as the slippage asymmetry, at its largest scale.)
  • Targets inside the gap — symmetric, in your favor: fill at the open beyond, slightly better than planned. Honest tests apply both sides, not just the friendly one.
  • Strategy-level note: if weekend holds are routine, the backtest should report gap exposure explicitly (number of weekend holds × average absolute Monday gap). Many swing systems quietly derive part of their drawdown profile from exactly this line.

Rollover: the Daily Five Minutes of Fiction

Around 22:00 GMT (~00:00 server), liquidity providers reset and spreads blow out for minutes — routinely several times the session average (spread mechanics). Consequences for backtesting:

  • Intraday “breakouts” printed in that window are usually spread artifacts, not price moves — a bid-only chart can show a spike that never existed on the tradable side. Rule: exclude signals generated ~23:50–00:15 server, or verify them against bid/ask tick data where the spike’s true width is visible.
  • Resting tight stops through rollover gets them clipped by the widened spread; the same position re-tested with rollover-aware management often shows visibly different results.
  • This window is also when swap books — the cost and the artifact share a timestamp, which makes “flatten before rollover” a popular and backtestable design rule.

Index CFDs: Cash Hours, Synthetic Nights, Dividend Days

Index CFDs track markets with real opening hours; the CFD trades nearly 24h anyway. That creates two artifacts:

  1. Out-of-hours pricing is a thin synthetic market — wider spreads, futures-driven, gappy. In-hours and out-of-hours behavior belong in separate statistics pools, and the daily cash-open gap is its own tradeable event (which some strategies target deliberately).
  2. Dividend adjustments: when index constituents go ex-dividend, brokers adjust CFD positions — credit longs / debit shorts (or the reverse, by convention) — so the index’s mechanical ex-div drop doesn’t create fake P&L. In price backtests this is invisible: a short held over a big ex-div date appears to win the drop, but the adjustment would have clawed it back. Multi-day index backtests should note major ex-div dates or accept small systematic error. (Replaying e.g. S&P 500 or Nasdaq 100 history: the price path is real; the financing/dividend ledger is yours to keep — same manual-accounting principle as swap.)

Holidays: Ghost Markets

Christmas-to-New-Year, Easter Friday, US Thanksgiving afternoon: venues technically open, nobody home. Ranges compress, spreads widen, “setups” form in liquidity that wouldn’t have absorbed your order. Handling: tag holiday-window trades in the journal and check whether the strategy’s losers cluster there; most intraday systems test better — and trade better — with a simple holiday-calendar filter. The same flag helps the regime segmentation stay clean.

Frequently Asked Questions

How big are typical weekend gaps in forex?

Most Monday opens gap only a few pips on majors — but the tail is what matters: news-driven weekends produce gaps of 50-100+ pips (major political events have printed several-hundred-pip gaps). Gap risk is a distribution with a long tail, which is why per-weekend exposure belongs in a swing backtest's report.

Should I just exclude rollover-window trades from my backtest?

Excluding signals generated in the ~23:50-00:15 server window is a defensible, simple rule — the 'signals' there are frequently spread artifacts. What you shouldn't exclude are the consequences for positions you hold through it (stop clips, swap), because live trading won't exclude them either.

Do crypto CFDs have these artifacts?

Crypto trades 24/7, so no weekend gaps in the underlying — but crypto CFDs still carry daily financing charges, broker maintenance windows, and weekend liquidity thinning with wider spreads. The artifact list is shorter but not empty; check the instrument specification.

How do dividend adjustments affect a long-only index strategy backtest?

Price-only backtests of long index positions slightly understate returns: the mechanical ex-dividend price drops appear as losses, while live the broker credits the adjustment back. Over months of holds this accumulates to roughly the index's dividend yield — worth a footnote line in any long-hold index backtest.

More in Data

All Data →

Practice This in a Free Replay Tool

StrategyTune replays real bid/ask tick data for 70+ instruments in the browser — free, no registration, no downloads. Place simulated trades and see your stats build.

Open StrategyTune