Last updated: May 14, 2026
I Tested 16.5 Million Filters on NASDAQ: Here's the Best One
Across 16.5 million tests on 1,000 e-mini NASDAQ day trading strategies, one filter beat every other oscillator, trend indicator, volatility measure, and volume condition: a Commodity Channel Index (CCI) correction filter that fires after the market has been oversold.
It improved net profit on 69% of strategies, lifted average trade by 22% on more than half, and turned 57.8% of losing variations into profitable ones. This is the methodology and the exact condition.
The Overfitting Problem This Solves
Most filter selection looks like this: take a strategy, layer on an indicator, tune the parameters until the equity curve looks great, ship it. The result is a backtest illusion. The filter was fit to the historical path of one specific strategy and breaks the moment anything about the market changes.
There is a very different way to evaluate filters. Instead of asking "does this make my strategy look better?", ask "does this consistently improve the majority of 1,000 similar strategies tested across as many simulated market regimes?" If a filter helps 690 out of 1,000 variations, the edge is structural, not coincidental.
That is exactly what the Indicator Matcher in BreakoutOS does. And on NASDAQ 60-minute data, the answer it returned was unexpected.
The Base Strategy: A Simple NASDAQ Breakout
The starting point was a deliberately plain breakout model on e-mini NASDAQ, 60-minute bars:
- Entry level: previous day's close-of-session low + 0.8 x ATR(40)
- Order type: stop order at the breakout level
- Session: 00:00 to 23:00 CME time, no weekends
- Exit: end of day, 23:00
That single condition already produces a tradable edge on NASDAQ. The question was not whether the base strategy worked. The question was which filter would push it from "tradable" to "robustly tradable in unseen future market regimes."
How 16.5 Million Tests Were Run in 3 Minutes
The Indicator Matcher does three things in sequence:
- Loads the base strategy and its source data (NASDAQ 60-minute OHLC).
- Generates 1,000 variations with similar DNA by decomposing the entry and exit logic and creating alternative entry rules, exit rules, and parameter combinations that share the core character of the original.
- Runs every supplied filter across all 1,000 variations, sweeping each filter's input parameters.
The filter library included RSI conditions, DMI trend conditions, moving average conditions, ATR-based volatility conditions, and volume conditions. Across all filter types, parameter sweeps, and 1,000 strategy variations, the workload totaled 16.5 million backtest iterations.
Runtime in a web browser on an M4 MacBook: roughly 3 minutes. The same workload on TradeStation would typically take days.
The Winning Filter: CCI Correction
Across the entire test, one condition dominated: a Commodity Channel Index correction filter. The Indicator Matcher reports three uplift metrics, and this filter scored at the top on all of them:
| Metric | Result | What It Means |
|---|---|---|
| Net profit improvement rate | 69% | 690 of 1,000 strategy variations saw net profit go up. |
| Average trade improvement | +22% on 54% of strategies | More than half saw average trade size lift by ~22%. |
| Bounce index | 57.8% | Of all losing variations, 58 in 100 became profitable. |
The bounce index is the most interesting of the three. It does not measure whether already-profitable strategies got marginally better. It measures rescue power: how many strategies that were unprofitable on their own became profitable once the filter was applied. 57.8% is a very large number for a single condition.
When applied back to the base NASDAQ breakout, the change was concrete: net profit / drawdown ratio rose from 7.53 to 8.6, and average trade climbed from 116 to 149.
The Exact Pseudocode
The condition is short. The logic is intuitive:
Lowest( CCI(27), 18 bars ) < -100
Translated into plain English: only take the long breakout if, somewhere in the previous 18 bars, the Commodity Channel Index with period 27 dipped below -100. That is a textbook definition of an oversold extreme. The filter only enters long breakouts after the market has shown a real correction.
That is logical. NASDAQ breakouts taken in unsustainable strength tend to fade. Breakouts taken after a corrective washout have room to run.
The 2D parameter map from the Indicator Matcher also showed something important: the surrounding parameter values (other CCI periods, other lookback lengths) all kept improving the same 1,000 strategies. That neighborhood of green is the signature of a real edge. If the only parameter combination that worked was the single best one, that would be curve fitting. A wide, stable plateau means the underlying behavior is robust.
Why This Is Different From Curve Fitting
Three structural reasons this is not the usual overfit trap:
- The filter was validated across 1,000 strategy variations, not one. A single-strategy optimization can almost always be made to look spectacular. A filter that improves 690 of 1,000 similar but distinct strategies is doing something the market actually rewards.
- The parameter neighborhood is wide. Many adjacent CCI periods and lookback lengths also improved the majority of strategies. An overfit filter has one sharp peak and nothing around it. This one has a plateau.
- The logic is interpretable. "Enter long breakouts after a correction" is a real market mechanism, not a numerological accident. When the why is intuitive, the edge tends to persist.
Applying This to Your Own Strategy
The exact CCI condition above is calibrated for the NASDAQ 60-minute breakout described here. If you want to find the equivalent for a different strategy or different market, the process inside BreakoutOS is the same:
- Upload your base strategy and its OHLC data.
- Open the Indicator Matcher and select the filter library you want to test.
- Run the analysis. The system generates 1,000 strategy variations with similar DNA and sweeps every filter and parameter combination across them.
- Sort by uplift index, average trade improvement, or bounce index.
- Inspect the 2D parameter map. Pick a configuration in the middle of a green plateau, not on a sharp peak.
The filter that wins for your strategy may not be CCI. The lookback and threshold values will almost certainly differ. But the framework, testing one condition against 1,000 variations to verify the edge is structural, is what separates filters that survive live trading from filters that only survive backtests.
Related Research
CCI vs RSI: 4,500,000 Tests Show a Clear Winner - Head-to-head test of CCI against RSI across millions of iterations.
Finding the Best Trading Filters with BreakoutOS (Index Markets) - 100 indicators tested across 3,500 NASDAQ strategies.
Moving Average Filters Tested on 1,000 Strategies: What the Data Shows - How MA filters score on the same 1,000-strategy framework.
See the Indicator Matcher in Action
Watch how BreakoutOS finds robust filters across 1,000 strategies in minutes.
Watch Demo VideosFrequently Asked Questions
What does the bounce index of 57.8% actually mean?
Why is testing across 1,000 strategies more reliable than testing on one?
Why CCI specifically? Why not RSI or stochastics?
How long did it take to run 16.5 million tests?
Can I run this same study on my own strategy?
About the Author
Tomas Nesnidal is a breakout trading specialist, hedge fund co-founder, and creator of BreakoutOS. He has managed institutional portfolios using breakout strategies for over 15 years, trading from 65+ countries. He is the author of The Breakout Trading Revolution and co-founder of Breakout Trading Academy.