Concept · Reading the returns
Mean per-trade return divided by the volatility (the standard deviation, or spread) of those returns. It measures edge per unit of noise — how much return you earned for the bumpiness you endured. Higher is better; here it is computed per trade, not annualized.
Two strategies can earn the same average return. The one whose trade-to-trade results are smoother — less wild swinging between big wins and big losses — has the higher Sharpe ratio. It is the "quality-adjusted" return: reward divided by variability.
Because Sharpe divides by volatility (the spread of outcomes), it is the natural input to the question "is this edge real?" A small Sharpe needs far more trades to prove out than a large one. That test lives in sharpe significance.
(Note: this fleet reports a per-trade Sharpe — return per trade ÷ spread per trade. It is not annualized, so the numbers look small next to the "Sharpe above 1" figures quoted for funds.)
Across the 210 EMA-cross variants, the per-trade Sharpe ranges from −2.68 to 0.557, with a median of −0.058 — 135 of 210 (64%) are negative. The typical EMA-cross config has, on average, a slightly-losing, noisy edge. The positive Sharpes are small: even the best survivors sit around 0.1 to 0.26.
Small Sharpes are the whole story for trend-following. The edge per trade is thin; it only adds up over a large sample size — and only if the sample is big enough to distinguish that thin Sharpe from zero.
The authenticated leaderboard's edge badge creates a three-way mismatch between the number displayed and the numbers that drive verdict and sort:
▲ 1.82 Real edge). This is what EdgeCell.tsx renders via <span className="ev">{value}</span>.A user reading ◦ 1.82 Inconclusive cannot tell why 1.82 is inconclusive. The CI width — which depends on trade count, not Sharpe magnitude — is invisible. The badge shows the least useful of the three numbers.
Documented as GAP-006 in .planning/threads/product-gaps.md. Resolution options include: (a) show CI lower bound instead of point estimate; (b) show both point estimate + CI range; (c) redesign the badge around CI as the primary signal.
growth/content/dossiers/ema-cross/1-analysis.md (run 83 analysis)growth/content/dossiers/ema-cross/1-dataset.csv (the 210-row result set)wiki/qa-sessions/2026-06-28-session.md#q7 (badge verdict logic)wiki/qa-sessions/2026-06-28-session.md#q8 (displayed number = Sharpe point estimate)packages/shared/src/public-edge-verdict.ts:129 (classifyEdge)apps/frontend/src/components/EdgeCell.tsx:149 (.ev span)Related concepts
See it in a real result →Put it to the test
Spawn your variant, run it on the same engine, and read the edge-significance verdict before you risk real money.