Trend-Following Backtester · Guide · backtest 한국어
equity · PL
Bank Millennium SA backtest
10 trend-following strategies were compared on the full daily history of Bank Millennium SA. 7 beat buy-and-hold CAGR; SMA 크로스오버 ranks first by Sharpe, matching the main backtester. The return/drawdown alternative is 볼린저 밴드 돌파 (CAGR 6.9%, MDD -48.2%).
Results by strategy
7 of 10 beat buy and hold (CAGR 2.3%, drawdown -93.3%).
Sharpe leader (same as main): SMA 크로스오버 — CAGR 13.9%, MDD -59.9%, Sharpe 0.59, 57% exposure.
Return/drawdown alternative: 볼린저 밴드 돌파 — CAGR is 11.6%p higher than buy and hold, while drawdown improves by 33.4%p (CAGR 6.9%, MDD -48.2%, exposure 39%).
The alternative must retain 75% of buy-and-hold CAGR, improve drawdown by at least 20% and 5 percentage points, and stay below 95% exposure; the ranking weights return retention 60% and drawdown improvement 40%.
| Strategy · parameters | CAGR | MDD | Sharpe | Calmar | Total | Trades | Exposure |
|---|---|---|---|---|---|---|---|
| SMA 크로스오버 fast=19, slow=208 |
13.9% | -59.9% | 0.59 | 0.23 | 31.7x | 47 | 57% |
| ROC 모멘텀 n=202, threshold=-0.03 |
12.7% | -58.9% | 0.55 | 0.22 | 24.0x | 117 | 59% |
| EMA 크로스오버 fast=31, slow=161 |
11.9% | -51.9% | 0.53 | 0.23 | 19.9x | 41 | 56% |
| Donchian 채널 돌파 entryN=77, exitN=74 |
11.3% | -65.7% | 0.51 | 0.17 | 17.2x | 41 | 54% |
| Supertrend period=17, mult=4.7 |
8.7% | -57.9% | 0.43 | 0.15 | 9.2x | 83 | 55% |
| Keltner 채널 돌파 emaPeriod=52, atrPeriod=17, mult=2.1 |
7.1% | -53.1% | 0.40 | 0.13 | 6.2x | 128 | 36% |
| 볼린저 밴드 돌파 n=71, k=1.5 |
6.9% | -48.2% | 0.39 | 0.14 | 5.9x | 105 | 39% |
| Parabolic SAR step=0.015, maxStep=0.34 |
1.5% | -81.1% | 0.19 | 0.02 | 1.5x | 414 | 49% |
| ADX / DI 방향성 period=23, threshold=16 |
1.6% | -72.7% | 0.18 | 0.02 | 1.5x | 238 | 34% |
| MACD fast=15, slow=29, signal=18 |
-0.7% | -76.8% | 0.12 | -0.01 | 0.8x | 334 | 51% |
| Buy and hold | 2.3% | -93.3% | 0.27 | 0.02 | 1.8x | 1 | 100% |
Rules of the top strategy
When the short average rises above the long average, it reads that as an uptrend starting.
- Buy — Buy when the 19-day average price crosses above the 208-day average
- Sell — Sell (to cash) when the 19-day average falls below the 208-day average