Open Harmonics · Experiments

Supported · Instruments & watchlist · 2026-10-11

Is the edge spread across many stocks, or carried by a few?

What this means

The edge is broad but lopsided. Throwing away the 50 or so stocks that did best on each timeframe still leaves a positive average everywhere, so the result does not hang on a handful of names. But those few stocks supply a third to more than half of all the R, and without them 15m is left at only +0.04R per setup, about half its full average. Because ins-persistence shows we cannot tell in advance which stocks will be the top tenth, the useful reading is that the whole universe carries the edge, not a findable subset.

Explanation checked against the data.

By timeframe

TimeframeVerdictnResult
15-minuteSupported14,885+0.040R (+0.022, +0.057) without the top 10% (56% of all R)
1-hourSupported11,832+0.140R (+0.119, +0.160) without the top 10% (35% of all R)
4-hourSupported3,515+0.139R (+0.104, +0.174) (46% of all R)
DailySupported1,845+0.149R (+0.098, +0.198) (52% of all R)
Hypothesis
Stated before testing: the average setup stays profitable on every timeframe even after removing the 10% of stocks with the largest total R (chosen in hindsight, which is deliberately harsh).
Method
Our own analysis of the TradingView universe sweeps (15m 2023-26; 1h/4h/1d 2016-26; 35,792 setups). Per timeframe, rank stocks by total setup R, drop the top tenth, and compute the mean setup R of the rest with a 95% range bootstrapped by stock. Part of the 82-test gap-fill family (Benjamini-Hochberg).
Result
Mean setup R without the best 10% of stocks (95% CI): 15m +0.040 (+0.022, +0.057), 14,885 setups; 1h +0.140 (+0.119, +0.160), 11,832; 4h +0.139 (+0.104, +0.174), 3,515; daily +0.149 (+0.098, +0.198), 1,845; q < 0.001 on each. The top tenth supplies 56% / 35% / 46% / 52% of all R.
How much to trust it
High: TradingView outcomes, large samples, stock-clustered CIs; survivorship universe and zero slippage as in the sweeps
Did it change the live rule?
No.
Notes
Replaces the lost ins-sp500-50 run. Gap-fill test G9 (gaps/scripts/a_logs.py).

Scripts and data for this study will be linked here when the research code is published on GitHub.

← All experiments

Education and research only. Not financial advice. Backtests use today's index members (survivorship bias).