How Scoring Works
Every strategy is run on every symbol × timeframe cell, on both real and resampled price history. Each cell gets five 0–100 sub-scores, blended into one composite score by the weights below. A strategy's total score (shown next to its name) is the average of its composite score across all cells, then averaged again across the real and resampled datasets.
| Score | Calculation | What it shows |
|---|---|---|
| Beats Hold | Sbeats_hold = clamp0100(50 + 25 log2EnetEhold) Compares final net equity to what simply holding the asset would have returned over the same window. 50 is break-even; every doubling versus buy-and-hold adds 25 points. | Whether the rule was worth running at all. A rule that cannot beat owning the asset over the same window is an expensive way to own the asset. |
| Risk Adjusted | Srisk = clamp0100(55 · Sharpe + 5) A linear read on the rolling annualized Sharpe ratio at the last trade — 0 Sharpe scores 5, roughly 1.7 Sharpe maxes out the scale. | What the return cost in volatility, which is what separates a steady rule from a lucky one. It carries the most weight of the five. |
| Profitability | Sprofit = clamp0100(20 log2EnetE0) How many times the starting cash multiplied, on a log scale — each doubling of capital is worth 20 points. | How far the account actually grew, with no question of how it got there — the plain result a reader came for. |
| Win Rate | Swin = clamp0100(2.5 (W% − 20)) The share of trades that closed profitable, rescaled so a 20% win rate scores 0 and a 60% win rate maxes out the scale. | How often the rule was right. On its own it says little, since one large loss outweighs many small wins, which is why it is worth a tenth. |
| Fee Efficiency | Sfee = clamp0100(Enet/Egross − 0.40.6 × 100) The share of the fee-free (gross) result that survives after fees — 60% survival scores 0, keeping the full gross result scores 100. | How much of the result survives the exchange. This is where a rule that changes its mind often loses what it made. |
| Composite | Composite = 0.25 Sbeats_hold + 0.35 Srisk + 0.20 Sprofit + 0.10 Swin + 0.10 Sfee The five sub-scores blended by weight into one 0–100 number per symbol × timeframe cell — risk-adjusted return and beating a hold carry the most weight. | The number every ranking on this site is sorted by, and the one shown beside a strategy's name. |
Strategies
Trend
- WMA 20 50 Crossover64
- Golden Cross 50 20062
- Faber Timing Model60
- WMA 20 50 200 Stack60
- WMA 20 200 Crossover58
- WMA 13 21 34 Stack56
- Ichimoku Cloud Breakout55
- Aroon Crossover54
- WMA 7 20 50 Stack54
- WMA 20 50 ATR Trailing Stop52
- Adx Dmi Trend42
- WMA 20 50 Proximity Crossover41
- MACD Signal Crossover40
- WMA 50 Price Cross40
- Vwap Cross36
- Parabolic Sar34
- Price WMA 20 Crossover32
- RSI WMA Crossover28
- WMA 20 50 200 Short Stack14
- WMA 20 50 Short Crossover12
Breakout
Momentum
Mean reversion
Score By Category, Timeframe, Symbol And Strategy
Score By Category
Total score averaged over the strategies in each family
Score By Timeframe
Composite score averaged over every strategy, symbol and dataset
Score By Symbol
Composite score averaged over every strategy, timeframe and dataset
Score By Strategy
Total score per strategy, grouped by family
Best Strategy Per Symbol And Timeframe
The strategy with the highest composite score in each cell, averaged over real and resampled data
Best Strategy Per Category
- 64 Trend WMA 20 50 Crossover (Trend) n=20
- 56 Breakout Turtle Breakout 55 20 (Breakout) n=5
- 54 Momentum Cci Trend (Momentum) n=8
- 38 Mean reversion Double 7 (Mean reversion) n=9
The Markets
Every score above is earned on the same markets. Asset Characteristics measures those markets themselves rather than the rules run on them: what each one returned, how roughly and how evenly it moved, how much of its life it spent going nowhere, and how closely it tracks the rest.