Not supported · Machine learning · 2026-09-26; timeframe gap fill 2026-10-11
Can each instrument get its own best filter?
What this means
Searching for the best filter for each stock separately produced 4 'surviving' configurations out of 431 stocks. Running the identical search on shuffled outcomes, where no real pattern exists, produced 4, 7 and 4 survivors. The real data did no better than noise, so the 4 configurations are best read as false positives from searching too many options. On 1h, with ten years of setups, the per-stock search again finds no more 'working' configurations than it does on shuffled outcomes.
Explanation checked against the data.
By timeframe
| Timeframe | Verdict | n | Result |
|---|---|---|---|
| 15-minute | Not supported | 431 | 4 of 431 survivors vs 5.0 on shuffled labels |
| 1-hour | Not supported | 307 | 2 of 307 instruments with a surviving config vs 1.8 on shuffled labels; q=0.80 gap fill G7, 2026-10-11 (trade logs) |
| 4-hour | Not tested: median 8 setups per instrument; the search needs >= 25 per instrument | ||
| Daily | Not tested: median 4 setups per instrument; the search needs >= 25 per instrument | ||
- Hypothesis
- Searching filter settings per instrument (with shrinkage and chronological validation) finds configurations that survive.
- Method
- 431 instruments searched (49 'trash' and 22 too-small skipped); empirical-Bayes shrinkage; FDR q<0.10; then the same search on shuffled labels.
- Result
- 4 of 431 'survived' (WRB, KLAC, CPRT, HUBB). Shuffled labels produced 4, 7 and 4 survivors (mean 5.0): real data did no better than noise. Gap fill (2026-10-11), same search and shuffled control on 1h: 2 of 307 instruments produced a surviving configuration vs 0, 2, 4, 1, 2 on shuffled labels (mean 1.8). 4h and daily have too few setups per instrument (median 8 and 4) to run it.
- How much to trust it
- High: shuffled-label control run 3 times
- Did it change the live rule?
- the 4 configs were kept only for the record
Scripts and data for this study will be linked here when the research code is published on GitHub.
Education and research only. Not financial advice. Backtests use today's index members (survivorship bias).