← All articles
Backtest · Method

Non overlapping windows: backtesting without fooling yourself

2 Sep 20266 min readby Areeb Ali Khan

Most backtests you see in crypto look far too good, and there is usually one specific reason. They measure overlapping windows. Fix that one thing and a lot of impressive looking edges quietly shrink to something honest.

The overlapping trap

Say you want to know what a bullish score means over the next two weeks. The lazy way is to check every single day. Score today, look fourteen days ahead. Score tomorrow, look fourteen days ahead. And so on. The problem is that today's window and tomorrow's window share thirteen of their fourteen days. They are not independent observations, they are almost the same observation counted again and again. That makes your sample look enormous and your statistics look far more confident than they earned.

The honest version

The fix is to use non overlapping windows. Enter at the start of a window, hold for the full horizon, then step forward to the next window that does not overlap the last. Six years of daily data does not give you two thousand independent two week bets. It gives you closer to one hundred and fifty. That is a smaller, humbler number, and it is the real one.

This is exactly how the What Happened Next panel is built. Each window is a genuine, separate instance of holding a position across the horizon, which is also how you would actually use the signal. The backtest matches the behaviour, instead of quietly counting the same stretch of market a dozen times.

Why I insist on it

Because the point of a backtest is to not fool yourself, and overlapping windows are the most common way people do exactly that. The honest method gives smaller sample sizes and less dramatic results. It also gives numbers I am willing to stand behind. When the tool tells you a score range led to a certain average return, it is measuring independent bets, the same kind you would be placing. That is the only version of a backtest worth trusting.

Open the dashboard → More articles