Backtestify
BACKTEST EXISTING2018-09-022026-08-31 · 8.0 yearsTested windowBTCUSDT (asked for "BTC") · 1d · history 2018-09-02 2026-08-31 (2920 days), identical for all timeframes · $10,000 account

Backtest the Rayner Teo moving average pullback strategy on BTCUSDT

Rules: Moving-average pullback · as published tradingwithrayner.com

Win rate

NOT RECOMMENDED

38.3%

107 trades · 1D · 2920 days · Binance

Data through 2026-08-31 00:00 UTC

The best win rate found while searching variations on the training part of this history. It has not been checked on unseen data yet.

NOT RECOMMENDEDA fixed set of measured gates decides this. It is not an opinion and not advice.

Not recommended on this evidence

Tested an approximation of your rules — see 'What we actually tested'Part of your description could not be executed exactly, so the verdict is capped.Win rate 38.3% is below 51%Share of closed trades that ended in profit, against the minimum this app requires.

EvidenceWeak evidence

Sample ≥ 100 trades107 trades in 2920 days Unseen sample ≥ 30 trades39 trades Profit factor ≥ 1.34.54 Drawdown ≤ 25%5.5% Edge on unseen data > 0-0.119R Edge with doubled costs > 00.542R Rules tested exactlyapproximated

ReturnTotal simulated return

59.1%

Account change over the tested window

Profit factorProfit per loss

4.54

Gross profit ÷ gross loss (above 1 = profitable)

Max drawdownDeepest closed-trade fall

-5.5%

Worst fall from a previous account peak

ReliabilityConfidence in test

80/100

How much this test can be trusted

Unseen-data edgeUnseen-data edge

n/a

Average result per trade on data never optimised on

Asked for "BTC" · tested BTCUSDT

What we actually tested

  • · Close above SMA(200)
  • · The candle low touches or crosses SMA(50)
  • · The candle is a bullish reversal candle (engulfing or hammer)
  • · Entry at the next candle open, stop 1 ATR below the 5-candle swing low
  • · Exit on a close below SMA(50)

This strategy can be improved.

Best variant found so far: 39.1% win rate (stop at 20-candle swing + target 1.25R + trailing stop 2×ATR(14) + added trend filter: price_vs_ema)

In-sample search, not yet validated on unseen data

Buys whenThe exact entry conditions that were executed for long trades.

close > SMA(200) and the candle low touches or crosses below SMA(50) and the signal candle is a bullish reversal candle (bullish engulfing, or a hammer with a lower wick at least twice its body and the close in the top third)

StopPosition sizing and stop rules exactly as executed. Nothing was added.

lowest low of the 5 completed candles before the signal candle minus 1 × ATR(14)

Target / exitTarget, trailing and time exits exactly as executed.

Rule exit — a close below SMA(50) closes the trade at the next open

Risk per tradePosition sizing and stop rules exactly as executed. Nothing was added.

1% of equity risked to the stop

One real trade, most recent

One real trade from the tested ledger, drawn on the same candles the engine used.
FROM TESTED HISTORY

BTCUSDT · 1d · actual exchange candles executed by the engine

LONGLOSS · -0.05RRule exit (the strategy's own exit rule fired)
Bought at 114,582.32 on 2025-10-27, stop at 102,848.89. Closed at 114,084.83 on 2025-10-28Rule exit (the strategy's own exit rule fired). Result: LOSS (-0.05R)
  • Up candle
  • Down candle
  • Entry price
  • Stop
  • Exit price
  • SMA(200)
  • SMA(50)

Entry

114,582.32 · 2025-10-27

Initial stop

102,848.89

Target

No fixed target

Exit

114,084.83 · 2025-10-28

Each candle is one 1D bar: the thin line is the high-low range, the thick body is open-to-close. Vertical marks show when the trade opened and closed. One real trade, picked by recency — an illustration of the executed rules, not proof they will work again.

How $10,000 would have changed

The account balance after each closed trade, starting from the stated budget.

Account value after every trade closed, in dollars

  • Account value

Left axis is dollars, bottom axis is time. The line only moves when a trade closes, so flat stretches are periods the rules stayed out of the market.

Simulation on historical candles, not live trading. Full methodology in Pro depth.

This is the free view of a shared report. Run your own strategy on the same engine.

Backtest a strategy