Night BuildsNo. 004 · all builds
Markets · base rates · a calculator about you

Years to Know

How many trades does it take before a swing trader can tell a real setup edge from luck?

Guess first. Suppose a swing setup genuinely works. You trade it, hold 20 days, keep a journal. After how many trades could you say, with ordinary statistical confidence, that the edge is real and not a lucky streak?

trades

Read this before the numbers.

Trades needed, setup by setup

Each bar is the number of 20-day trades you would need before the setup's own historical edge becomes distinguishable from zero. Log scale. Sample sizes next to the names are historical events, with the cluster-adjusted effective count in brackets.

edge in the setup's intended directionedge against the setupneeds more than 10,000 trades

Calculator about you

Put in your own numbers. The default edge and noise are the medians across the 22 setups.

Or think in hit rates: a setup that wins 53% of the time against a 50% coin needs trades.

Spot the edge

Two traders, 100 trades a year, equal size per trade, outcomes drawn from this dataset. One draws from the chosen setup's historical outcomes, the other from ordinary stock-days. Which one has the setup?

0 right of 0

Simulation, not history: each trade is a random draw from the empirical 20-day outcome distribution (101 quantiles, interpolated), applied to the chosen share of equity and compounded. The sequence is invented; the distributions are real. Equity is on a log scale.

Every setup

What this means

A smart reader's prior is a few hundred trades. The data say that even the strongest of 22 textbook setups needs about trades, and the typical one about . At a hundred trades a year that is years for the best and for the typical setup, longer than most trading careers.

The reason is the ratio. The median setup moves a stock about points against its peers over 20 days, while one trade's outcome swings about points either way. Signal to noise of roughly one to means its square, about trades, before the mean is even one standard error from zero, and 7.8 times that (2.8²) for a proper test.

Two consequences. A trading journal of 50 or 100 trades cannot tell a working setup from a dead one, whatever the P&L says; the "Spot the edge" game above makes this visceral. And a track record that looks decisive after 100 trades is almost always the market regime, not the setup, which is why peer-relative outcomes are used throughout. Over 26 years and events, only of 22 setups clear |t| > 2 once same-month events are treated as one observation.

Method and sources

Data. Yahoo Finance daily OHLCV via the public chart API, retrieved 9 and 11 October 2026. Stocks only in this piece: US names (current S&P 500 constituents from the datasets/s-and-p-500-companies list, retrieved 9 Oct 2026) and Hong Kong large caps and ADRs; stock-days with a 20-day forward return.

Events. A setup fires when its feature rule is true at the close; at most one event per ticker per 20 trading days. Feature rules are listed in the table above and in data/setups.json.

Outcome. 20-trading-day forward return of the stock minus the cross-sectional median 20-day forward return of all stocks in the same market from the same date, clipped at ±50% to tame data errors.

Trades needed. n = ((z0.975 + z0.80) × σ ÷ δ)² = ((1.96 + 0.84) σ/δ)², the standard two-sided sample-size formula at 95% confidence and 80% power (Cohen, Statistical Power Analysis for the Behavioral Sciences, 2nd ed., 1988, ch. 2). Effective n = (σ ÷ SEcluster)² where SEcluster is a 1,000-draw bootstrap that resamples calendar months, not events.

Check it. data/events.csv.gz holds every event's date, market and peer-relative outcome (no tickers); data/baseline.json the stock-day baseline; check.py recomputes every number on this page.

Built 9 October 2026 from a base-rate engine assembled the same night; data refreshed through the 10 October 2026 close. This page is static and does not update.