> The luck horizon from your trade log: how many trades an edge this size needs before it stops being consistent with luck — with a refusal below the floor.

- Canonical: https://hadalinstruments.com/tools/sample-size-check/

---

Tool

# Sample-size check

How many trades does it take to prove an edge? There is no universal number. The trades required scale with the **square** of your edge's dispersion-to-size ratio, so a coarse edge shows itself in hundreds and a fine one hides for thousands. This computes your own figure — the **luck horizon** — from the log you already keep, and says whether the record you have is evidence yet or still consistent with luck.

Luck horizon —

Luck horizon, in trades —

Your record against it —

Mean result per trade, and the 95% interval your sample supports —

Trade quality (mean ÷ spread) —

Evidence so far (quality × √trades; the conventional bar is near 2) —

The horizon across what your sample can and cannot rule out
Which reading | Mean R | Trade quality | Horizon |
Pessimistic end of your sample | — | — | — |
What your record says | — | — | — |
Optimistic end of your sample | — | — | — |

## Why there is no universal number

"Does my strategy work?" is, statistically, "is the average of my per-trade results distinguishable from zero, given how much they vary?" Each trade is one noisy observation of your edge.

The signal is the mean result per trade; the noise is the spread around it; and a record's power to separate them grows only with the **square root** of its length. Halve the edge and you need four times the trades. That is why every fixed number in this genre — a hundred trades, two hundred, five hundred — is wrong in both directions at once: enough for a coarse edge, nowhere near enough for a fine one. The reasoning in full is [how many trades prove a trading edge](https://hadalinstruments.com/research/how-many-trades-prove-a-trading-edge/), of which this page is the arithmetic.

## What this computes

From your log: the mean result per trade in R, the standard deviation of those results, and their ratio — the **trade quality**, your edge's signal-to-noise per trade. The evidence a record carries is that quality times the square root of its length, and the conventional bar for taking a result seriously sits near two. Rearranged, the **luck horizon** is four divided by the trade quality squared: the number of trades at which a real edge of your recorded size would typically clear the bar. A quality of one fifth puts it near a hundred trades; one twentieth, nearer sixteen hundred.

The interval is placed on the mean result, not on the win rate, because the win rate is the wrong object: it cannot see the shape of frequent small wins and rare large losses that produces a proud percentage and a negative expectancy at the same time. If all you have is a win rate and a payoff ratio, the summary input builds the smallest dispersion those two numbers allow — every win exactly the payoff, every loss exactly one R — so the horizon it returns is a **floor**; a real log disperses more and needs more trades.

Where the sample cannot support the arithmetic — fewer than twelve pasted results, a series with no spread, a mean at or below zero — the panel refuses and says why, rather than printing a number with nothing behind it.

## What this does not do

It assumes your trades are comparable draws from one process. A strategy revised mid-record restarts its own clock, and positions held at the same time in correlated instruments count as fewer [effective observations](https://hadalinstruments.com/glossary/effective-sample-size/) than the row count suggests — so the horizon here is optimistic for any record with either. It prices only the recorded past: an edge measured over one regime says nothing yet about the next, which is the harder question of [regime shift](https://hadalinstruments.com/glossary/regime-shift/).

A record past its horizon establishes that the recorded process had an edge over the recorded period. It does not establish that the record was honestly selected: a strategy chosen from many tried variants carries a multiplicity this arithmetic cannot see, which is the domain of [backtest overfitting](https://hadalinstruments.com/glossary/backtest-overfitting/) and [data snooping](https://hadalinstruments.com/glossary/data-snooping/). And results in R are net of whatever you netted out of them — if execution costs are not in the log, they are not in the answer.

The survival question this leaves open — whether an account can afford the distance to its horizon — is the [risk of ruin calculator](https://hadalinstruments.com/tools/risk-of-ruin-calculator/), and the stake that record supports is the [Kelly criterion calculator](https://hadalinstruments.com/tools/kelly-criterion-calculator/). The same sample-size honesty applied to a returns series rather than a trade list is the [Sharpe ratio calculator](https://hadalinstruments.com/tools/sharpe-ratio-calculator/). Whether a record that has cleared its horizon was also honestly selected is what the [Overfit Auditor](https://hadalinstruments.com/instruments/overfit-auditor/) bounds. All the calculators are listed under [calculators](https://hadalinstruments.com/tools/). And when the inputs cannot support an answer, the panel above refuses and says why rather than rendering a zero — [why an instrument refuses to answer](https://hadalinstruments.com/docs/insufficient-n/) is that design, written down.
