Strategy Zoo / S1228

PriceMomentum_V1228

REJECTEDhybrid

structuraladded entry filter: roll_high_20 < roll_low_50 | rejected: stage1: never enters a position

Fitness
—
Generation
56
Complexity
19
Created
2026-10-07

Lineage

Parents (1)
PriceMomentum_V1168S1168 · gen 53ARCHIVEDstructural

changed ret_20d threshold 0.05 -> -0.0982

Children (0)
None

Strategy Logic (pseudocode)

# PriceMomentum_V1228  [hybrid]
require regime.trend in ['DOWNTREND', 'UPTREND']
require regime.bubble in ['EXPENSIVE', 'EXTREME']
if flat and ((ret_20d > 0.05 or (ret_20d > 0.1146 and ((((close > sma_200 and sma_200_slope > 0.0) or ret_60d > -0.2905) and ret_20d > -0.0982 and cumret_252d > -0.1997) and ret_20d > 0.05))) and roll_high_20 < roll_low_50):
    position = 1.0
if long and ret_20d < -0.1003:
    position = 0.0  # exit to cash

Backtest Metrics

MetricTrainValidationHidden TestFull
CAGR————
Total Return————
Sharpe————
Sortino————
Calmar————
Volatility————
Max DD————
Win Rate————
Avg Win————
Avg Loss————
Payoff————
Expectancy————
Profit Factor————
Trades————
Avg Holding Days————
Turnover————
Exposure————

Walk-Forward Years

year-by-year stability matters more than any single year
YearCAGRSharpeMax DDTrades
No walk-forward results

A robust strategy performs acceptably in most years rather than spectacularly in one — look for consistency across regimes, not a single outlier year.

Regime Performance

PeriodRegimeDaysAnn. ReturnSharpeExposure
No regime results

Trades (full period)

0 trades
EntryExitEntry PxExit PxReturnDays
No trades recorded