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.
Results by strategy
10 of 10 beat buy and hold (CAGR 41.2%, drawdown -86.8%). Sorted by CAGR.
| Strategy · parameters | CAGR | Max drawdown | Sharpe | Calmar | Total return | Trades | Time in market |
|---|---|---|---|---|---|---|---|
| Bollinger band breakout n=36, k=1.4 |
84.6% | -36.6% | 1.74 | 2.32 | 226.6x | 62 | 42% |
| SMA crossover fast=2, slow=35 |
78.2% | -50.5% | 1.55 | 1.55 | 165.7x | 148 | 52% |
| Keltner channel breakout emaPeriod=33, atrPeriod=22, mult=1.9 |
74.6% | -40.8% | 1.63 | 1.83 | 138.0x | 58 | 36% |
| Supertrend period=6, mult=2.1 |
72.6% | -40.2% | 1.49 | 1.81 | 124.6x | 114 | 49% |
| EMA crossover fast=3, slow=25 |
70.7% | -57.6% | 1.46 | 1.23 | 113.1x | 156 | 51% |
| ROC momentum n=32, threshold=0.07 |
70.6% | -63.2% | 1.53 | 1.12 | 112.6x | 132 | 38% |
| Parabolic SAR step=0.01, maxStep=0.3 |
66.8% | -44.1% | 1.41 | 1.51 | 92.4x | 159 | 51% |
| ADX / DI directional period=24, threshold=10 |
63.7% | -52.2% | 1.40 | 1.22 | 78.3x | 130 | 47% |
| Donchian channel breakout entryN=43, exitN=8 |
60.5% | -37.6% | 1.48 | 1.61 | 65.7x | 54 | 30% |
| MACD fast=7, slow=30, signal=17 |
54.9% | -60.3% | 1.24 | 0.91 | 48.0x | 190 | 52% |
| Buy & hold | 41.2% | -86.8% | 0.87 | 0.47 | 21.1x | 1 | 100% |
The rules, strategy by strategy
Bollinger band breakout
Breaking above the upper band (average plus a multiple of volatility) signals a strong move up.
- Buy Buy when the close breaks above the upper band of the 36-day average (1.4× volatility)
- Sell Sell when the close falls back to the 36-day middle average
- CAGR
- 84.6%
- Max drawdown
- -36.6%
- Sharpe
- 1.74
- Trades
- 62
- 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.
- Buy Buy when the 2-day average price crosses above the 35-day average
- Sell Sell (to cash) when the 2-day average falls below the 35-day average
- CAGR
- 78.2%
- Max drawdown
- -50.5%
- Sharpe
- 1.55
- Trades
- 148
- Time in market
- 52%
- Win rate
- 52%
Keltner channel breakout
Breaking above the channel top (average plus a multiple of volatility) signals an upside breakout.
- Buy Buy when the close breaks above the 33-day average + 1.9× volatility (Keltner top)
- Sell Sell when the close falls back to the 33-day average
- CAGR
- 74.6%
- Max drawdown
- -40.8%
- Sharpe
- 1.63
- Trades
- 58
- Time in market
- 36%
- Win rate
- 54%
Supertrend
Trades the direction of a volatility-based trend line that trails below/above price.
- Buy Buy when price moves above the trend line (flips up) — 6-day volatility, 2.1× band
- Sell Sell when price drops below the trend line (flips down)
- CAGR
- 72.6%
- Max drawdown
- -40.2%
- Sharpe
- 1.49
- Trades
- 114
- Time in market
- 49%
- Win rate
- 52%
EMA crossover
Uses two exponential averages (more weight on recent prices) and trades their crossover.
- Buy Buy when the 3-day EMA crosses above the 25-day EMA
- Sell Sell when the 3-day EMA falls below the 25-day EMA
- CAGR
- 70.7%
- Max drawdown
- -57.6%
- Sharpe
- 1.46
- Trades
- 156
- Time in market
- 51%
- Win rate
- 52%
ROC momentum
Rides the trend when recent return (momentum) over a window is above a threshold.
- Buy Buy when the last 32-day return is greater than 7%
- Sell Sell when the 32-day return drops to 7% or below
- CAGR
- 70.6%
- Max drawdown
- -63.2%
- Sharpe
- 1.53
- Trades
- 132
- Time in market
- 38%
- Win rate
- 52%
Parabolic SAR
Trades around the Parabolic SAR dots that accelerate toward price.
- Buy Buy when price rises above the SAR dots
- Sell Sell when price falls below the SAR dots
- CAGR
- 66.8%
- Max drawdown
- -44.1%
- Sharpe
- 1.41
- Trades
- 159
- Time in market
- 51%
- Win rate
- 51%
ADX / DI directional
Looks at both the direction and the strength of the trend; holds only in a strong uptrend.
- Buy Buy when up-direction (+DI) beats down-direction (−DI) and trend strength (ADX, 24-day) is ≥ 10
- Sell Sell when direction flips or the trend weakens (ADX < 10)
- CAGR
- 63.7%
- Max drawdown
- -52.2%
- Sharpe
- 1.40
- Trades
- 130
- Time in market
- 47%
- Win rate
- 52%
Donchian channel breakout
A new high means a trend starting; a new low means it’s over (turtle-trading style).
- Buy Buy on a breakout above the highest high of the last 43 days
- Sell Sell when price breaks below the lowest low of the last 8 days
- CAGR
- 60.5%
- Max drawdown
- -37.6%
- Sharpe
- 1.48
- Trades
- 54
- Time in market
- 30%
- Win rate
- 54%
MACD
Looks at the gap (MACD) between a short and long average crossing its own signal line.
- Buy Buy when the MACD line (7/30) crosses above its 17-day signal line
- Sell Sell when the MACD line crosses back below the signal line
- CAGR
- 54.9%
- Max drawdown
- -60.3%
- Sharpe
- 1.24
- Trades
- 190
- Time in market
- 52%
- Win rate
- 49%