Trend-Following Backtester · Guide · backtest 한국어
equity · NO
Hafnia Limited backtest
10 trend-following strategies were compared on the full daily history of Hafnia Limited. 4 beat buy-and-hold CAGR; SMA 크로스오버 ranks first by Sharpe, matching the main backtester. The return/drawdown alternative is SMA 크로스오버 (CAGR 23.4%, MDD -26.7%).
Results by strategy
4 of 10 beat buy and hold (CAGR 17.7%, drawdown -57.8%).
Sharpe leader (same as main): SMA 크로스오버 — CAGR 23.4%, MDD -26.7%, Sharpe 0.84, 60% exposure.
Return/drawdown alternative: SMA 크로스오버 — CAGR is 5.6%p higher than buy and hold, while drawdown improves by 31.2%p (CAGR 23.4%, MDD -26.7%, exposure 60%).
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=36, slow=127 |
23.4% | -26.7% | 0.84 | 0.88 | 4.1x | 12 | 60% |
| ROC 모멘텀 n=165, threshold=0.02 |
20.6% | -33.4% | 0.77 | 0.62 | 3.5x | 39 | 61% |
| EMA 크로스오버 fast=43, slow=53 |
20.1% | -41.4% | 0.77 | 0.49 | 3.4x | 18 | 59% |
| Donchian 채널 돌파 entryN=71, exitN=99 |
19.5% | -35.4% | 0.75 | 0.55 | 3.3x | 7 | 60% |
| ADX / DI 방향성 period=39, threshold=19 |
12.4% | -20.6% | 0.74 | 0.60 | 2.2x | 6 | 11% |
| Supertrend period=23, mult=3.8 |
12.6% | -36.0% | 0.55 | 0.35 | 2.2x | 28 | 54% |
| Keltner 채널 돌파 emaPeriod=52, atrPeriod=23, mult=1.6 |
10.5% | -34.2% | 0.50 | 0.31 | 2.0x | 38 | 44% |
| 볼린저 밴드 돌파 n=56, k=1.3 |
9.4% | -42.9% | 0.47 | 0.22 | 1.8x | 38 | 44% |
| Parabolic SAR step=0.01, maxStep=0.12 |
6.4% | -49.3% | 0.36 | 0.13 | 1.5x | 93 | 51% |
| MACD fast=11, slow=53, signal=20 |
3.6% | -58.8% | 0.27 | 0.06 | 1.3x | 75 | 49% |
| Buy and hold | 17.7% | -57.8% | 0.60 | 0.31 | 3.0x | 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 36-day average price crosses above the 127-day average
- Sell — Sell (to cash) when the 36-day average falls below the 127-day average