ID: S029
Slug: trend-continuation-breakout-v1
Run date: 2026-07-01
Outcome: FAILED
Headline metric: portfolio max drawdown 41% (tail gate ≤ 25%) — the momentum-crash wall
Fail reason: The mechanical breakout has the right shape (26% win rate, 3.1× payoff) but fails the tail: portfolio max drawdown 41% (gate 25%), CVaR-95 −11.9% (gate −8%, gap-throughs), worst −63%; and the entry is not additive — it does not beat random entry into the same Trend-Template leaders. The binding failure is the momentum-crash drawdown — exactly the S004 lesson, and the forecast (§8).
What we tested
A fully-frozen configuration (no discretion, no tuning): Trend-Template membership — price above stacked, rising 50/150/200-DMAs, within 25% of the 52-week high, RS-rank ≥ 70 (126-day-return top-30% cross-sectionally) — plus entry on close > the prior 50-day high AND volume ≥ 1.5× the 50-day average, buy next open. Exit: a 1.5×ATR hard stop (gap-through fills at the open, never at the stop) and a 50-DMA close trail, whichever first; no time stop. Equal-weight, one per name, 30 bps round-trip. Survivorship-free basket, 2010 → 2026-05, 17,624 trades, avg hold 23 days. Matched random-entry baseline drawn from the Trend-Template-eligible set. (Note: a data-gap/relisting forced-exit guard was added after a first pass produced spurious multi-year holds across missing bars — the verdict was unchanged.)
What we found
| Gate (Stage 1) | Required | Observed | Verdict |
|---|---|---|---|
| Edge beats baseline | mean > 0 and > baseline | +0.26% vs baseline +0.48% | FAIL |
| Significance | p < 0.05, right sign | p = 0.81, wrong sign | FAIL |
| Tail — CVaR-95 | ≥ −8% | −11.9% | FAIL |
| Tail — worst trade | ≥ −20% | −63% | FAIL |
| Tail — portfolio max drawdown | ≤ 25% | 41% | FAIL |
| Win rate / payoff (reported) | — | 26% / 3.1× | — |
Exit split: 65% stop or gap out, 32% trail out (the winners), the rest held to the data end. The shape is honest trend-following — most breakouts fail small, a few winners run — but the winners are too few and the correlated drawdown too deep.
The momentum-crash wall. The 41% drawdown is the concurrent equal-weight book unwinding when leaders reverse together — the same factor round-trip that cut S004 (+22% / −11%). A per-trade stop caps individual losses but does nothing for the portfolio when everything you hold rolls over at once. This is A1's structural risk, and it binds.
The entry is not additive (suggestive, baseline caveat below). Random entry into the same Trend-Template-eligible leaders, with the identical exit, averaged +0.48%/trade — higher than the breakout's +0.26%. Buying the 50-day-high breakout on volume buys into short-term exhaustion that then pulls back into the stop. The screen (being in leaders) looks worth more than the timing (the breakout).
Why this matters
This is the second swing family tested end-to-end and cut, each on its own structural wall: B1 (reversion) on its inseparable left tail, A1 (trend) on its momentum-crash drawdown. A famous, widely-taught breakout method, mechanised honestly and run survivorship-free with real costs, does not clear a tail-aware gate — and the drawdown that fails it is the exact risk the literature glosses over.
What this doesn't tell us yet
- The baseline used positional index-matching across tickers (a shared-helper limitation), so "the entry underperforms random" is suggestive, not gospel. The binding, robust failures are the tail co-gates (CVaR, worst, drawdown), which are independent of the baseline.
- It does not condemn trend-continuation as such — it says this mechanical breakout+trail, uncapped in exposure, fails on the crash. A pullback-to-MA entry, or exposure control, or a regime overlay are separate
S-NNNs.
What happens next
No Stage 2. Per pillar rules each is a new S-NNN. The result points at:
- Exposure control for the momentum-crash drawdown — but B1 already showed exposure overlays barely move a correlated-crash drawdown, so temper expectations.
- A different entry (buyable pullback to the 21/50-DMA rather than a new-high breakout) — the screen looked additive, the breakout timing didn't.
S029 is recorded failed; family A1's cumulative trial count stays at 1.
What we tested — the recipe
Slice & dice
For the specialist — methodology details (click to expand)
- Net: mean +0.26%/trade, median −3.3%, win 25.6%, payoff 3.1×, n = 17,624, avg hold 22.8 trading days. Matched baseline +0.48% (positional matching — a caveat); bootstrap p = 0.81.
- Tail: CVaR-95 −11.9%; worst −63% (an overnight gap through the stop); portfolio max DD 41% on the concurrent equal-weight curve.
- Exits: stop 9,972 · trail 5,726 · gap-through 1,500 · held-to-end 407 · gap-halt forced-exit 19.
- Controls: split/dividend-adjusted signal + returns; gap-through fills at the open; RS-rank cross-sectional PIT; monthly PIT survivorship-free universe; a >10-calendar-day data-gap forces an exit (relisting/halt guard).
- Artifacts:
trades.parquet,ab_summary.json,charts.json. Runner:lab/quickkill/trend-continuation-breakout-v1/run.py(reuses the S027 engine).