Why Your Best Trading Pattern Stops Working After London Close

A pattern that prints money during London hours can bleed you dry in New York. Here's why sessions behave like completely different markets — and what to do about it.


You found a pattern. You backtested it on six months of XAUUSD data, got a 58% win rate, and the equity curve looks clean. You switch it on. It works for a few days. Then it quietly starts losing. Not blowing up — just slowly grinding your account down trade by trade.

Nine times out of ten, the culprit is a session mismatch.

Every session is its own market

Most traders think of the forex market as one continuous thing that runs Monday to Friday. It isn’t. What we call “the market” is actually three largely separate populations of participants handing the baton to each other: Asian session traders, then London, then New York. Each group has different motivations, different liquidity, and different habits.

The Asian session (roughly 00:00–08:00 UTC) is dominated by Japanese institutional flows, carry trade activity, and a lot of range-bound price action. There isn’t much macro news, volumes are lower, and price tends to respect levels more cleanly because there are fewer participants fighting over them.

London (08:00–16:00 UTC) is where the volume is. European banks, hedge funds, and prop desks are all active at once. This session creates the majority of the daily range on most pairs. Momentum runs further, breakouts are more likely to follow through, and RSI extremes tend to resolve quickly because there’s enough participation to push price away from those levels with conviction.

New York (13:00–21:00 UTC) overlaps with London for a few hours, which produces the highest volatility window of the day. After London closes around 16:00 UTC, New York continues alone — often with choppier, less directional price action as liquidity thins out and the market waits for the next session.

The point is that these are not the same environment. A pattern that exploits London’s tendency to run from key levels will behave completely differently in the choppier, lower-volume tail of the New York session.

What session mismatch looks like in a backtest

Here is the subtle trap: if you backtest across all hours without separating them, you get average performance that masks what is actually happening underneath.

Say your RSI oversold + lower Bollinger Band touch pattern shows 56% win rate across all hours. Looks reasonable. But if you break it down by session, the numbers might look like this:

Session Win Rate Net PnL
Asian 51% -12 pts
London 64% +210 pts
NY morning (overlap) 59% +88 pts
NY afternoon (post-London) 44% -97 pts

Your 56% overall is actually London doing all the work while the other sessions drag it down. If you run the same pattern live without a session filter, you will take losing trades at 02:00 and 19:00 that your backtest performance was silently absorbing.

Why patterns behave differently per session

The mechanics behind this come down to three things.

Liquidity. A Bollinger Band touch in London happens with deep order books on both sides. If price genuinely reached an extreme, there are institutional participants who will fade it because they have the firepower to do so. In the Asian session, the same touch might mean very little — there simply aren’t enough participants to create a reliable reversion.

News flow. London session patterns are partly shaped by European macro releases (PMIs, CPI, central bank statements). Those events create structured directional moves that patterns like RSI cross + trend filter are designed to capture. Post-NY open, the macro calendar is mostly done for the day and price becomes reactive to positioning rather than fundamentals.

Participant behaviour. London institutional desks have known tendencies — raiding stops at session open, running liquidity above Asian highs before reversing. Smart money concepts and ICT-style setups exist because London participants are genuinely patterned in how they operate. Asian session participants operate differently and New York afternoon is largely algorithms and retail traders, which creates a different texture of price action entirely.

The fix is straightforward

When you are building or testing a pattern, add a session filter before you validate it. Most backtesting scripts let you restrict signals to a specific hour range. Test the pattern in each session independently. If it only works in London, that is not a weakness — it is information. Run it in London and turn it off the rest of the time.

In the live bot JSON config, this is just the start_hour and end_hour fields:

"start_hour": 8,
"end_hour": 16

Simple. But most people either don’t think to do it or they assume their pattern is robust across all hours without checking.

The other thing worth doing is backtesting your top validated patterns on each session separately, not just overall. A pattern that shows PROFIT on unseen data is good. A pattern that shows PROFIT on unseen data and holds up when restricted to your trading session is the one worth running.

A practical session guide for common patterns

RSI extremes + Bollinger Band touches — most reliable during London and the early NY overlap. Asian session produces too many false touches with no follow-through.

Fair Value Gaps — work well at London open as the session hunts liquidity from the Asian range. Less reliable in NY afternoon when FVGs can sit unfilled for hours.

MA200 pullbacks — tend to work better in trending sessions (London, NY overlap) than in ranging sessions (Asian, NY late). A pullback in a trending session gets bought/sold by institutional participants. In a ranging session it just keeps ranging.

Pivot highs and lows — more meaningful when formed during London, because London creates the actual structural levels that the rest of the day and even the next day reacts to.


The session divide is one of the most overlooked variables in retail trading. Most people treat it as a timezone inconvenience rather than a fundamental characteristic of how different participants behave. If your pattern stopped working and you haven’t looked at when it was losing, that’s the first place to check.