Session filters can be calculated very cheaply for any pre-defined PF. However, validation is required, as the number of trades is a weak indicator.
You may end up with thousands of trades after applying a session filter and a PF > 2. However, this is highly likely to be a case of overfitting. There must be validation mechanisms in place.
Session filters can be calculated very cheaply for any pre-defined PF. However, validation is required, as the number of trades is a weak indicator.
You may end up with thousands of trades after applying a session filter and a PF > 2. However, this is highly likely to be a case of overfitting. There must be validation mechanisms in place.
You are right that session filters can be overfitted and that trade count alone is not a robustness metric both valid concerns.
Two clarifications about what the article actually did which I should probably have made more explicit:
The 14:00 to 20:00 UTC window was not selected by searching for the one that maximizes PF over history. It was chosen a priori as an approximation to the NYSE main session, based on the microstructure argument that liquidity concentrates during those hours.
I did not grid-search the window. If I had, I would agree the PF would be suspect.
The final PF of 1.20 is intentionally modest, if I were overfitting sessions that number would look much better. The article reports what the a-priori filter actually produced not what could be squeezed from the data.
That said you are right that this article does not include the validation layers you mention (walk-forward, sensitivity on the session window, out-of-sample split).
I flagged this in the Limitations section but agree it deserves its own follow-up.
I am currently preparing a second article on exactly that topic:
walk-forward analysis of the same setup on TECH100 M5, to test whether the H1 findings survive on a shorter timeframe with proper out-of-sample validation
Your comment reinforces the value of doing that seriously.
Thanks for the reference on validation mechanisms.
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
Check out the new article: Three MACD Filters on US_TECH100: Five Years of Broker Data.
I have been looking at charts for more than twenty years, and I have been programming in MQL5 for about ten. It took me almost a decade of programming to feel that I understood what I was doing, rather than just copying patterns from other people's code. Two years ago something clicked, and since then I have been building my own tools instead of buying them.
One thing that bothered me for years is how often vendors sell "improved MACD" indicators by stacking filters on top of the classic crossover logic. They stack regime filters, higher-timeframe alignment, and session windows. The pitch is always the same: these filters transform a noisy MACD into a reliable system. I have bought several of these over the years and studied their results. My suspicion was that most of the improvement was either cherry-picked or the filters were doing less than the pitch suggested.
So I used real broker H1 data for US_TECH100, ran the raw MACD crossover strategy, and then added each filter one at a time to measure the impact on the results. There are no opinions and no narratives, just closed trades, win rates, and expectancy over five years.
The result surprised me.
Author: Marcelo Alejandro Borasi