SleepWell Trade

Trend-Following Backtester · Guide · Assets 한국어

Assets

Bitcoin backtest

The largest crypto asset by market cap. Its moves are violent and its trends run long, which makes it the textbook proving ground for trend following.

Data 2017-09-25 ~ 2026-08-25 Daily bars 3,241 (8.9y) Costs 0.5%Venue Upbit (KRW)

Results by strategy

10 of 10 beat buy and hold (CAGR 43.7%, drawdown -86.8%). Sorted by CAGR.

Strategy · parametersCAGRMax drawdown SharpeCalmarTotal return TradesTime in market
Bollinger band breakout
n=36, k=1.4
85.7%-36.8% 1.762.33248.5x 6342%
SMA crossover
fast=1, slow=38
76.1%-59.7% 1.531.28155.3x 16351%
Keltner channel breakout
emaPeriod=36, atrPeriod=19, mult=2.4
75.3%-45.5% 1.661.65149.1x 4735%
Supertrend
period=6, mult=2.1
73.9%-40.2% 1.501.84138.4x 11550%
Parabolic SAR
step=0.01, maxStep=0.36
67.5%-44.3% 1.421.5299.1x 16351%
ROC momentum
n=34, threshold=0.13
66.8%-54.3% 1.541.2395.6x 11029%
ADX / DI directional
period=19, threshold=12
66.1%-51.8% 1.441.2892.3x 15547%
MACD
fast=16, slow=18, signal=17
62.2%-59.0% 1.341.0574.6x 15952%
Donchian channel breakout
entryN=37, exitN=8
56.7%-39.3% 1.401.4454.8x 6332%
EMA crossover
fast=4, slow=120
51.8%-39.8% 1.321.3041.2x 4150%
Buy & hold43.7%-86.8% 0.910.5025.3x 1100%
1x 10x 100x 2018 2020 2022 2024 2026 Bollinger band breakoutBuy & hold
Bollinger band breakout (solid) vs buy and hold (dashed). Log scale.
0% -22% -43% -65% -87% 2018 2020 2022 2024 2026 Buy & holdBollinger band breakout
Bollinger band breakout maximum drawdown -36.8% (2018-01-05 peak → 2019-03-04 trough) · recovered after 483 days. Buy and hold uses the same scale.
Parameters were optimized over the full history. The same data chose them and scored them, so these run above live results. With two or three parameters the distortion is bounded, but read them as a relative ranking, not a return target. Settings match the backtester's defaults (0.5% costs, Sharpe objective, 120 trials). More in optimization and overfitting.

The rules, strategy by strategy

Bollinger band breakout

Breaking above the upper band (average plus a multiple of volatility) signals a strong move up.

CAGR
85.7%
Max drawdown
-36.8%
Sharpe
1.76
Trades
63
Time in market
42%
Win rate
54%

SMA crossover

When the short average rises above the long average, it reads that as an uptrend starting.

CAGR
76.1%
Max drawdown
-59.7%
Sharpe
1.53
Trades
163
Time in market
51%
Win rate
51%

Keltner channel breakout

Breaking above the channel top (average plus a multiple of volatility) signals an upside breakout.

CAGR
75.3%
Max drawdown
-45.5%
Sharpe
1.66
Trades
47
Time in market
35%
Win rate
54%

Supertrend

Trades the direction of a volatility-based trend line that trails below/above price.

CAGR
73.9%
Max drawdown
-40.2%
Sharpe
1.50
Trades
115
Time in market
50%
Win rate
52%

Parabolic SAR

Trades around the Parabolic SAR dots that accelerate toward price.

CAGR
67.5%
Max drawdown
-44.3%
Sharpe
1.42
Trades
163
Time in market
51%
Win rate
51%

ROC momentum

Rides the trend when recent return (momentum) over a window is above a threshold.

CAGR
66.8%
Max drawdown
-54.3%
Sharpe
1.54
Trades
110
Time in market
29%
Win rate
53%

ADX / DI directional

Looks at both the direction and the strength of the trend; holds only in a strong uptrend.

CAGR
66.1%
Max drawdown
-51.8%
Sharpe
1.44
Trades
155
Time in market
47%
Win rate
52%

MACD

Looks at the gap (MACD) between a short and long average crossing its own signal line.

CAGR
62.2%
Max drawdown
-59.0%
Sharpe
1.34
Trades
159
Time in market
52%
Win rate
50%

Donchian channel breakout

A new high means a trend starting; a new low means it’s over (turtle-trading style).

CAGR
56.7%
Max drawdown
-39.3%
Sharpe
1.40
Trades
63
Time in market
32%
Win rate
53%

EMA crossover

Uses two exponential averages (more weight on recent prices) and trades their crossover.

CAGR
51.8%
Max drawdown
-39.8%
Sharpe
1.32
Trades
41
Time in market
50%
Win rate
52%
Backtest Bitcoin yourselfSet up live trading

Read next