Trend-Following Backtester · Guide · backtest 한국어
equity · US
ONEOK, Inc. backtest
10 trend-following strategies were compared on the full daily history of ONEOK, Inc.. 1 beat buy-and-hold CAGR; Donchian 채널 돌파 ranks first by Sharpe, matching the main backtester. The return/drawdown alternative is Donchian 채널 돌파 (CAGR 7.5%, MDD -40.5%).
Results by strategy
1 of 10 beat buy and hold (CAGR 7.1%, drawdown -80.2%).
Sharpe leader (same as main): Donchian 채널 돌파 — CAGR 7.5%, MDD -40.5%, Sharpe 0.50, 53% exposure.
Return/drawdown alternative: Donchian 채널 돌파 — CAGR is 0.4%p higher than buy and hold, while drawdown improves by 39.6%p (CAGR 7.5%, MDD -40.5%, 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 |
|---|---|---|---|---|---|---|---|
| Donchian 채널 돌파 entryN=69, exitN=44 |
7.5% | -40.5% | 0.50 | 0.19 | 27.8x | 99 | 53% |
| SMA 크로스오버 fast=27, slow=79 |
7.0% | -51.0% | 0.43 | 0.14 | 21.8x | 141 | 59% |
| EMA 크로스오버 fast=15, slow=161 |
5.8% | -53.7% | 0.38 | 0.11 | 13.0x | 123 | 64% |
| ROC 모멘텀 n=149, threshold=-0.04 |
5.0% | -59.2% | 0.34 | 0.09 | 9.5x | 325 | 70% |
| Supertrend period=12, mult=4.3 |
4.5% | -65.5% | 0.32 | 0.07 | 7.4x | 184 | 59% |
| Keltner 채널 돌파 emaPeriod=51, atrPeriod=28, mult=2.2 |
2.9% | -57.2% | 0.27 | 0.05 | 3.8x | 230 | 39% |
| 볼린저 밴드 돌파 n=53, k=2.3 |
2.7% | -51.9% | 0.26 | 0.05 | 3.3x | 166 | 32% |
| ADX / DI 방향성 period=31, threshold=13 |
2.1% | -60.4% | 0.21 | 0.04 | 2.6x | 330 | 37% |
| MACD fast=31, slow=62, signal=26 |
1.9% | -73.3% | 0.20 | 0.03 | 2.4x | 347 | 52% |
| Parabolic SAR step=0.005, maxStep=0.36 |
-0.5% | -82.1% | 0.08 | -0.01 | 0.8x | 393 | 56% |
| Buy and hold | 7.1% | -80.2% | 0.38 | 0.09 | 23.3x | 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 69 days
- Sell — Sell when price breaks below the lowest low of the last 44 days