Backtested research example
🗓 Backtest period: 2020-01-01..2026-07-12
Spec ID: spec-sector-momentum-rotation-etf-top50-1767027941_v14 · Generated: 2026-07-10 09:02 UTC
Cluster: Momentum · Sub Cluster: Sector Etf Relative Strength Rotation
Monthly rotates into the three eligible U.S. sector ETFs with the strongest composite relative strength versus SPY over 3-, 6-, and 12-month lookbacks. Positions are equal-weighted, traded at the next open after a one-day signal lag, with liquidity and history requirements applied before ranking.
Sector leadership tends to persist over intermediate horizons because macro shocks, earnings revisions, rates sensitivity, and investor flows do not reprice all industries instantly. Ranking sectors versus SPY attempts to isolate leadership within U.S. equity beta rather than simply buying the market after broad rallies.
The ETF implementation targets liquid, low-friction sector exposures and avoids single-name idiosyncratic risk. Monthly rebalancing is intended to capture medium-term trends while limiting unnecessary turnover.
[code omitted from public view]
| Param | Value | Notes |
|---|---|---|
| Rule type | SECTOR_MOMENTUM |
Cross-sectional sector ETF momentum versus SPY |
| Lookbacks | 63, 126, 252 trading days | Approx. 3/6/12 months |
| Composite score | Mean z-score across lookbacks | Ranks relative strength signals cross-sectionally |
| Relative strength | total_return(ETF, LB) / total_return(SPY, LB) |
Benchmark-relative, not absolute momentum |
| Selection count | 3 ETFs | Top-ranked eligible sector ETFs |
| Position sizing | Equal weight | Gross leverage 1.0 |
| Max weight per position | 40% | Risk override; equal-weight top 3 implies ~33.3% each |
| Rebalance | Monthly, first trading day | Signals lagged 1 trading day |
| Execution | Next open | Uses delayed signal to reduce look-ahead risk |
| Universe | Top 50 U.S. ETFs by capitalization, sector ETF filter | Provider metadata/name matching for sector classification |
| Liquidity filter | 63-day ADV >= 250,000 shares | Share-volume based screen |
| Missing data rule | Drop if missing any lookback; require 252 days history | Avoids partial-window ranks |
| Costs | 10 bps transaction cost + spread-proportional slippage proxy | Spread proxy uses 20 days |
| Backtest window | 2020-01-01 to 2026-07-12 plan; available data shown 2018-01-01 to 2023-01-01 | Interpret reported metrics with data-availability caveat |
| # | Concern | Status |
|---|---|---|
| 1 | Signal uses future prices | Mitigated: ranks use historical lookbacks and trade with 1-day signal lag at next open |
| 2 | ETF universe survivorship bias | Needs review: top-50 ETF universe and sector classification may reflect current/provider metadata availability |
| 3 | Benchmark alignment | Mitigated: SPY return computed over same lookback windows as candidate ETFs |
| 4 | Missing price history | Mitigated: requires 252 days and drops names missing any lookback |
| 5 | Liquidity information timing | Needs review: confirm ADV filter is computed only from trailing volume as of rebalance date |
| 6 | Corporate actions/distributions | Needs review: relative strength should use adjusted total-return series consistently for ETFs and SPY |
The reported backtest is strong for a simple monthly sector-rotation rule, with total return of 161.24%, Sharpe of 1.21, Sortino of 1.50, and win rate of 85.71% over 56 trades. Risk is still meaningful: volatility is 20.50% and max drawdown is -23.83%, consistent with a concentrated long-only equity sector allocation. The high profit factor is encouraging but should be treated cautiously given the limited number of trades and the need to verify point-in-time universe construction.
| Metric | Value |
|---|---|
| Total Return | 161.24% |
| Sharpe | 1.21 |
| Sortino | 1.50 |
| Calmar | 0.67 |
| Max Drawdown | -23.83% |
| Volatility | 20.50% |
| Win Rate | 85.71% |
| Profit Factor | 27.17 |
| Total Trades | 56 |
| Symbols | 50 (AGG, BIL, BIV, BND, BNDX, BSV, DIA, EFA, GLD, IEFA, +40 more) |
Backtests are historical simulations for research purposes only. They are not investment advice and do not guarantee future performance.