Backtested research example
🗓 Backtest period: 2018-01-01..2023-01-01
Spec ID: spec-macro-gated-time-series-momentum-us-stocks-1783195630 · Generated: 2026-07-04 20:26 UTC
Cluster: Momentum · Sub Cluster: Low-Rate Gated Time-Series Momentum
Trades large-cap US stocks with positive absolute momentum only when the FEDFUNDS rate is in a low-rate regime. Positions are equal-weighted among the top-ranked qualifying names, with exits on momentum deterioration, trend breaks, or a regime shift.
Low policy-rate environments can support equity trend persistence through cheaper financing, higher risk appetite, and duration-sensitive valuation effects. The strategy gates a standard time-series momentum signal with FEDFUNDS <= 1.0%, attempting to concentrate exposure in macro regimes where equity momentum may have a stronger structural tailwind.
The cross-sectional ranking is used only among stocks that already pass absolute momentum and trend filters, so the thesis is not pure relative strength; it is a regime-conditioned long-only trend-following allocation across liquid large-cap equities.
[code omitted from public view]
| Param | Value | Notes |
|---|---|---|
| Rule type | MACRO_GATED_TIME_SERIES_MOMENTUM | Long-only time-series momentum with macro regime gate |
| Macro gate | FEDFUNDS <= 1.0% | Uses latest point-in-time macro observation where observation_date <= signal date |
| Momentum score | 0.4r63 + 0.4r126 + 0.2*r252 | Divided by realized volatility over 20 trading days |
| Trend filters | Close > SMA200; SMA50 > SMA200 | Required for new entries |
| Absolute momentum filters | 63d return > 0; 126d return > 0 | Required for new entries; 63d negative return triggers exit |
| Max active positions | 20 | Highest-ranked eligible names |
| Position sizing | Equal weight; max 10% per position | Among selected holdings |
| Max leverage | 4.0 | Configured limit; sizing rules may result in lower realized exposure |
| Universe | Top 100 US large-cap stocks by capitalization | Liquidity filter: 20d average dollar volume >= $25mm |
| Rebalance/execution | Daily at close | Missing close price causes trade skip |
| Backtest window | 2018-01-01 to 2023-01-01 | Daily bars |
| Costs | $0.004/share commission; $1 minimum/order; max commission 0.01%; 0 bps slippage | Slippage assumption is optimistic |
| # | Concern | Status |
|---|---|---|
| 1 | Macro data availability | Uses point-in-time filter observation_date <= signal_date; skips new entries if no latest macro observation exists |
| 2 | Price signal timing | Signals are computed from historical daily closes and rebalanced at the close; same-close execution should be reviewed for practical implementability |
| 3 | Universe construction | Universe is described as top 100 by capitalization; survivorship and historical membership handling should be verified |
| 4 | Corporate actions/prices | Assumes adjusted historical price series are suitable for return and SMA calculations; data vendor treatment should be audited |
| 5 | Liquidity and execution | Applies dollar-volume filter, but slippage is set to 0 bps, likely understating implementation costs |
The backtest produced a positive total return of 52.81% over 2018-01-01 to 2023-01-01, with Sharpe 0.69 and volatility 15.31%. Risk-adjusted performance is moderate rather than exceptional, and the maximum drawdown of -20.92% indicates meaningful equity beta and trend-break risk. The high win rate of 76.75% and profit factor of 1.57 are encouraging, but interpretation should be tempered by the short macro-regime sample and optimistic 0 bps slippage assumption.
| Metric | Value |
|---|---|
| Total Return | 52.81% |
| Sharpe | 0.69 |
| Sortino | 0.61 |
| Calmar | 0.42 |
| Max Drawdown | -20.92% |
| Volatility | 15.31% |
| Win Rate | 76.75% |
| Profit Factor | 1.57 |
| Total Trades | 9778 |
| Symbols | 100 (AAPL, ABBV, ABT, ACN, ACON, ADBE, ADP, AMD, AMGN, AMT, +90 more) |
Backtests are historical simulations for research purposes only. They are not investment advice and do not guarantee future performance.