Trend-Following Backtester · Guide · backtest 한국어
equity · US
General Mills, Inc. backtest
10 trend-following strategies were compared on the full daily history of General Mills, Inc.. 0 beat buy-and-hold CAGR; Donchian 채널 돌파 ranks first by Sharpe, matching the main backtester.
Results by strategy
0 of 10 beat buy and hold (CAGR 8.2%, drawdown -64.5%).
Sharpe leader (same as main): Donchian 채널 돌파 — CAGR 6.2%, MDD -54.7%, Sharpe 0.40, 91% exposure.
No strategy retained at least 75% of buy-and-hold CAGR while reducing drawdown by both 20% relatively and 5 percentage points absolutely.
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 |
|---|---|---|---|---|---|---|---|
| Donchian 채널 돌파 entryN=15, exitN=138 |
6.2% | -54.7% | 0.40 | 0.11 | 16.5x | 67 | 91% |
| ROC 모멘텀 n=198, threshold=-0.11 |
5.8% | -52.3% | 0.39 | 0.11 | 13.8x | 141 | 85% |
| EMA 크로스오버 fast=44, slow=238 |
5.3% | -43.4% | 0.38 | 0.12 | 11.0x | 56 | 72% |
| SMA 크로스오버 fast=42, slow=195 |
3.5% | -44.7% | 0.29 | 0.08 | 5.0x | 82 | 66% |
| Supertrend period=10, mult=4.6 |
2.9% | -46.5% | 0.26 | 0.06 | 3.7x | 167 | 60% |
| 볼린저 밴드 돌파 n=14, k=3.2 |
0.1% | -20.1% | 0.06 | 0.01 | 1.1x | 18 | 1% |
| ADX / DI 방향성 period=37, threshold=35 |
-0.0% | -2.2% | -0.01 | -0.00 | 1.0x | 2 | 0% |
| Parabolic SAR step=0.005, maxStep=0.08 |
-1.6% | -89.1% | -0.02 | -0.02 | 0.5x | 407 | 55% |
| MACD fast=24, slow=57, signal=22 |
-2.9% | -92.8% | -0.12 | -0.03 | 0.2x | 459 | 52% |
| Keltner 채널 돌파 emaPeriod=37, atrPeriod=12, mult=3.1 |
-2.0% | -67.0% | -0.15 | -0.03 | 0.4x | 165 | 21% |
| Buy and hold | 8.2% | -64.5% | 0.47 | 0.13 | 38.5x | 1 | 100% |
Rules of the top strategy
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 15 days
- Sell — Sell when price breaks below the lowest low of the last 138 days