STEADYTRADE
Strategy backtests · past-window simulation, not investment advice

Method

Every number on this site comes from the same pipeline. It runs offline, the results are fixed, and each page carries the hash of the inputs that produced it.

Data

SourceBinance public market data mirror (spot, daily candles)
BTC/USDT3188 bars · 2018-01-01 → 2026-09-23 · 0 gaps
ETH/USDT3188 bars · 2018-01-01 → 2026-09-23 · 0 gaps
GapsNot interpolated. Filling them would invent prices that never traded.

Execution

Fees0.10% taker on both legs
Slippage0.05% against the fill, every fill
Starting capital10,000 USDT
InstrumentLong-only spot. No leverage, no shorting.
Signal timingSignals read the close and fill at the next open. Filling on the same close would be reading the future.
Intrabar orderWhen a bar could trigger both a favourable and an unfavourable event, the unfavourable one fills first.
Ruin thresholdAccount equity at or below 10% of starting capital.

Why the window is 365 bars

A single backtest is one sample. The rolling window has to be long enough that what comes out reflects the rules rather than one market phase — so every strategy here is run over 365 daily bars, shifted forward 30 days at a time, giving 95 start dates.

A short window is not a trend, and statistical agencies say so explicitly about their own data. The U.S. Census Bureau states that “it may take three months to establish an underlying trend for building permit authorizations, six months for total starts, and six months for total completions.” Crypto is not housing and this is not a derivation — but the principle is the same one, and it is why nothing on this site is reported over a one-month window.

Sample size, not just direction

Win rates are reported with a 95% Wilson confidence interval. Where that interval spans 50%, the figure cannot be told apart from chance and the page says so rather than dropping the number.

More trades does not automatically make a figure readable. Parabolic SAR on BTC closes 128 trades — and its interval still reaches 50.8%. Interval width depends on how far the rate sits from a coin flip, not on sample count alone. Eleven of the twenty-four strategy/market pairs on this site fall in that category.

What is deliberately not offered

There is no button to re-run a backtest with your own parameters. That is not a missing feature.

An interactive backtester invites you to hunt for the parameters that look best in the past. That is curve fitting, and it is the fastest way to build confidence in a strategy that will not survive contact with the future. The parameter grid on each page exists to show the opposite: how unstable those choices are.

Indicators

Indicator maths is shared between the chart you see and the backtest that produced the numbers — one implementation, not two. A 188-case test suite pins the conventions (warm-up handling, seeding, population standard deviation) and a golden snapshot fails the build if any output value moves.

Reproducibility

Each result page carries an input hash over the symbol, period, parameters, assumption set and engine version. Same hash, same numbers.

Enginev0.3.0
Built2026-09-23T09:00Z
Assumption seta1-taker10-slip05

Known limits