How the engine works
Reading the leaderboard
The Leaderboard screen (sidebar → Leaderboard, or Ctrl/Cmd+4) ranks every strategy a run discovered. Open it from a finished run's View Leaderboard button, or pick any finished run from the list.
The summary header
Across the top: the Dataset (symbol, timeframe, date range), the number of Strategies, the Best fitness found, what the run Optimized for (the fitness metric), and the Verdicts tally — counts of Pass, Marginal, Kill, and unvalidated. If every validated finalist was killed and the run optimized a gameable metric, a hint explains the foot-gun (see Fitness & metrics).
Filters and controls
- Search — substring match on strategy id or hash.
- Min trades — hide strategies with fewer closed trades.
- Verdict — All / Pass / Marginal / Kill / Unvalidated.
- HBT diverged only — show only strategies flagged by the in-house cross-check (blank on standard installs; see Understanding validation).
- Columns — a chooser to show/hide column groups; your choice persists on this device.
The columns
Grouped as Performance, Validation, and Style. Click a header to sort — first click puts the best value on top (whichever direction that is for the column), second click reverses, third restores original rank order. Missing values always sink to the bottom. The Rank column stays pinned while you scroll horizontally.
| Column | Meaning |
|---|---|
| Rank | Position by fitness (1 = best). |
| Id | Short strategy id — click the row for detail. |
| Verdict | Pass / Marginal / Kill chip, or – if unvalidated. See Verdicts. |
| Equity | Sparkline of the equity curve — green if it ended up, red if down. |
| Fitness | The score the optimizer maximized. Comparable only within a run. |
| Net PnL $ | Net profit in dollars over the backtest window. |
| PF | Profit factor — gross profit ÷ gross loss. |
| Sharpe | Risk-adjusted return. |
| Trades | Closed-trade count. Small counts make every other stat noisy. |
| Win % | Winning trades ÷ total. |
| Expectancy $ | Average P&L per trade. |
| Avg win $ / Avg loss $ | Mean winner and mean loser. |
| Max DD $ | Largest peak-to-trough equity drop (lower is better; sorts accordingly). |
| Wins / Losses | Raw counts. |
| WF eff. | Walk-forward efficiency — mean OOS/IS ratio. ~1.0 excellent, <0.5 the edge halves out-of-sample. |
| MC robust. | Monte Carlo robustness 0–100 with a colored bar (green ≥65, amber ≥40, red below). |
| Param stress | Parameter-stability score 0–100, same bar coloring. |
| HBT div. | In-house cross-check divergence: yes / no / – (not checked). |
| Style | 0–100 alignment with the declared style preset — reads low on drift. |
| Complexity | Rule-node count in the genome. Lower is simpler; simpler tends to generalize better. |
A reading order that works
- Filter Verdict → Pass (fall back to Marginal if empty).
- Sort by MC robust. or Param stress rather than fitness — fitness already picked the order once; robustness is the independent information.
- Distrust anything with few Trades, whatever the other columns say.
- Prefer lower Complexity between otherwise similar candidates.
- Click through and read the detail screen before any export.
A leaderboard that's all Kill is the gates working, not failing — see When everything is Kill.