Trend-Following Backtester · Guide · backtest 한국어
etf · US
Invesco DB Oil Fund backtest
10 trend-following strategies were compared on the full daily history of Invesco DB Oil Fund. 9 beat buy-and-hold CAGR; 볼린저 밴드 돌파 ranks first by Sharpe, matching the main backtester. The return/drawdown alternative is ADX / DI 방향성 (CAGR 1.8%, MDD -31.5%).
Results by strategy
9 of 10 beat buy and hold (CAGR -0.6%, drawdown -90.5%).
Sharpe leader (same as main): 볼린저 밴드 돌파 — CAGR 5.2%, MDD -37.4%, Sharpe 0.40, 31% exposure.
CAGR reference leader: Supertrend — CAGR 5.9%, MDD -45.1%, exposure 52%.
Return/drawdown alternative: ADX / DI 방향성 — CAGR is 5.9%p higher than buy and hold, while drawdown improves by 53.1%p (CAGR 1.8%, MDD -31.5%, exposure 10%).
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 |
|---|---|---|---|---|---|---|---|
| 볼린저 밴드 돌파 n=72, k=2.1 |
5.2% | -37.4% | 0.40 | 0.14 | 2.7x | 44 | 31% |
| Supertrend period=11, mult=4.9 |
5.9% | -45.1% | 0.38 | 0.13 | 3.1x | 71 | 52% |
| Donchian 채널 돌파 entryN=89, exitN=20 |
4.4% | -44.9% | 0.37 | 0.10 | 2.3x | 54 | 28% |
| SMA 크로스오버 fast=32, slow=186 |
4.8% | -56.8% | 0.33 | 0.08 | 2.5x | 31 | 49% |
| ROC 모멘텀 n=123, threshold=0.12 |
4.2% | -42.3% | 0.33 | 0.10 | 2.3x | 145 | 30% |
| Keltner 채널 돌파 emaPeriod=62, atrPeriod=34, mult=1.5 |
3.2% | -56.7% | 0.27 | 0.06 | 1.8x | 121 | 41% |
| EMA 크로스오버 fast=59, slow=124 |
2.9% | -63.6% | 0.24 | 0.04 | 1.7x | 37 | 47% |
| ADX / DI 방향성 period=31, threshold=19 |
1.8% | -31.5% | 0.22 | 0.06 | 1.4x | 38 | 10% |
| MACD fast=29, slow=54, signal=19 |
2.3% | -61.3% | 0.21 | 0.04 | 1.6x | 163 | 53% |
| Parabolic SAR step=0.005, maxStep=0.36 |
-2.0% | -70.8% | 0.00 | -0.03 | 0.7x | 177 | 50% |
| Buy and hold | -0.6% | -90.5% | 0.14 | -0.01 | 0.9x | 1 | 100% |
Rules of the top strategy
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 72-day average (2.1× volatility)
- Sell — Sell when the close falls back to the 72-day middle average