Trend-Following Backtester · Guide · backtest 한국어
equity · US
Ulta Beauty, Inc. backtest
10 trend-following strategies were compared on the full daily history of Ulta Beauty, Inc.. 3 beat buy-and-hold CAGR; SMA 크로스오버 ranks first by Sharpe, matching the main backtester. The return/drawdown alternative is EMA 크로스오버 (CAGR 18.7%, MDD -44.7%).
Results by strategy
3 of 10 beat buy and hold (CAGR 16.3%, drawdown -87.9%).
Sharpe leader (same as main): SMA 크로스오버 — CAGR 19.6%, MDD -47.4%, Sharpe 0.74, 67% exposure.
Return/drawdown alternative: EMA 크로스오버 — CAGR is 3.3%p higher than buy and hold, while drawdown improves by 40.4%p (CAGR 18.7%, MDD -44.7%, exposure 67%).
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=25, slow=211 |
19.6% | -47.4% | 0.74 | 0.41 | 28.8x | 20 | 67% |
| EMA 크로스오버 fast=49, slow=180 |
18.7% | -44.7% | 0.72 | 0.42 | 24.9x | 16 | 67% |
| Donchian 채널 돌파 entryN=31, exitN=81 |
19.4% | -59.2% | 0.69 | 0.33 | 28.0x | 27 | 77% |
| ROC 모멘텀 n=125, threshold=-0.08 |
16.2% | -66.4% | 0.62 | 0.24 | 16.8x | 92 | 75% |
| Supertrend period=22, mult=4.4 |
13.1% | -44.2% | 0.56 | 0.30 | 10.0x | 70 | 67% |
| 볼린저 밴드 돌파 n=52, k=3.5 |
2.8% | -13.2% | 0.40 | 0.21 | 1.7x | 12 | 10% |
| ADX / DI 방향성 period=38, threshold=20 |
3.9% | -25.5% | 0.40 | 0.15 | 2.1x | 36 | 18% |
| Keltner 채널 돌파 emaPeriod=51, atrPeriod=15, mult=2.3 |
5.3% | -58.3% | 0.34 | 0.09 | 2.6x | 96 | 45% |
| Parabolic SAR step=0.005, maxStep=0.22 |
3.3% | -54.6% | 0.26 | 0.06 | 1.8x | 165 | 60% |
| MACD fast=11, slow=48, signal=15 |
-1.0% | -67.5% | 0.10 | -0.01 | 0.8x | 281 | 51% |
| Buy and hold | 16.3% | -87.9% | 0.56 | 0.19 | 17.1x | 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 25-day average price crosses above the 211-day average
- Sell — Sell (to cash) when the 25-day average falls below the 211-day average