Strategy Zoo / S1648

LongTermTrend_V1648

REJECTEDhybrid

llmReduced base position to 0.6 to limit drawdowns; added regime gates (avoid high volatility and bubble states) to reduce bad-period trading; strengthened trend filter by requiring sma_200_slope>0 and macd_hist>0; added a breakout alternative (breakout_20 + momentum + rising vol) to capture acceleration; improved exits to include a 20-day stop (-2%), a sma_50 breakdown, and a daily spike down stop; added volatility-based position sizing (scale down in high vol, full size in low vol). | rejected: stage1: sharpe -0.59 below screen

Fitness
—
Generation
76
Complexity
17
Created
2026-10-15

Lineage

Parents (1)
LongTermTrend_V1407S1407 · gen 65ARCHIVEDllm

entry from LongTermTrend_V1383, exit from PriceMomentum_V0690

Children (0)
None

Strategy Logic (pseudocode)

# LongTermTrend_V1648  [hybrid]
require regime.trend in ['UPTREND', 'SIDEWAYS']
require regime.volatility in ['LOW_VOLATILITY', 'MEDIUM_VOLATILITY']
require regime.bubble in ['NORMAL']
if flat and ((close > sma_200 and sma_200_slope > 0.0 and ret_20d > 0.05 and macd_hist > 0.0) or (breakout_20 > 0.0 and ret_20d > 0.15 and vol_chg > 0.0)):
    position = 0.6
if long and (ret_20d < -0.02 or close < sma_50 or ret_1d < -0.06):
    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