Trend-Following Backtester · Guide · backtest 한국어
equity · US
Karooooo Ltd. backtest
10 trend-following strategies were compared on the full daily history of Karooooo Ltd.. 2 beat buy-and-hold CAGR; SMA 크로스오버 ranks first by Sharpe, matching the main backtester. The return/drawdown alternative is SMA 크로스오버 (CAGR 26.9%, MDD -31.3%).
Results by strategy
2 of 10 beat buy and hold (CAGR 12.6%, drawdown -54.8%).
Sharpe leader (same as main): SMA 크로스오버 — CAGR 26.9%, MDD -31.3%, Sharpe 0.79, 53% exposure.
Return/drawdown alternative: SMA 크로스오버 — CAGR is 14.4%p higher than buy and hold, while drawdown improves by 23.5%p (CAGR 26.9%, MDD -31.3%, exposure 53%).
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=134, slow=155 |
26.9% | -31.3% | 0.79 | 0.86 | 3.6x | 19 | 53% |
| EMA 크로스오버 fast=35, slow=267 |
17.3% | -34.7% | 0.61 | 0.50 | 2.3x | 3 | 50% |
| ROC 모멘텀 n=164, threshold=0.06 |
1.3% | -46.2% | 0.22 | 0.03 | 1.1x | 69 | 40% |
| Donchian 채널 돌파 entryN=23, exitN=74 |
-1.3% | -60.8% | 0.21 | -0.02 | 0.9x | 13 | 76% |
| Supertrend period=12, mult=4.9 |
-5.6% | -63.2% | 0.09 | -0.09 | 0.7x | 13 | 63% |
| Parabolic SAR step=0.04, maxStep=0.12 |
-8.4% | -64.5% | -0.05 | -0.13 | 0.6x | 153 | 52% |
| ADX / DI 방향성 period=33, threshold=26 |
-3.4% | -35.6% | -0.09 | -0.10 | 0.8x | 6 | 11% |
| MACD fast=15, slow=52, signal=17 |
-12.7% | -72.1% | -0.16 | -0.18 | 0.5x | 73 | 46% |
| Keltner 채널 돌파 emaPeriod=17, atrPeriod=8, mult=2.1 |
-4.2% | -36.5% | -0.16 | -0.12 | 0.8x | 11 | 6% |
| 볼린저 밴드 돌파 n=56, k=2.8 |
-10.8% | -52.1% | -0.26 | -0.21 | 0.5x | 17 | 19% |
| Buy and hold | 12.6% | -54.8% | 0.49 | 0.23 | 1.9x | 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 134-day average price crosses above the 155-day average
- Sell — Sell (to cash) when the 134-day average falls below the 155-day average