Hold-out · bb_extreme on unseen windows
ConfirmedHypothesis
The fixed finalist params (bb_extreme+ema200_filter+fixed_stop+volume_filter, 1h) from sweep MS_20260507_073619 stay profitable out-of-selection: return_pct > 0 in >= 3/4 years the sweep never saw.
Verdict
**HOLD-OUT PASSED** — 3/3 unseen windows profitable (>= 3 required). Holds out-of-selection; arming-worthy after Peter's sign-off.
cfg
{'name': 'BB_EXTREME_1H', 'bb_std': 2.0, 'signal': 'bb_extreme', 'interval': '1h', 'bb_period': 20, 'conditions': ['bb_extreme', 'ema200_filter', 'fixed_stop', 'volume_filter'], 'ema200_filter': True, 'fixed_stop_pct': 0.3, 'volume_lookback': 20, 'min_volume_ratio': 1.5}
gate
return_pct > 0 in >= 3/3 unseen windows
sweep
MS_20260507_073619 / P2_06557
windows
['Y2020', 'Y2024', 'Y2025']
holdout_wins
3/3
Hold-out · bb_extreme on unseen windows
2026-06-14 · status: confirmed · 5.7s
Hypothesis: The fixed finalist params (bb_extreme+ema200_filter+fixed_stop+volume_filter, 1h) from sweep MS_20260507_073619 stay profitable out-of-selection: return_pct > 0 in >= 3/4 years the sweep never saw.
Verdict: HOLD-OUT PASSED — 3/3 unseen windows profitable (>= 3 required). Holds out-of-selection; arming-worthy after Peter's sign-off.
Key metrics
| metric | value |
|---|---|
| holdout_wins | 3/3 |
| cfg | {'name': 'BB_EXTREME_1H', 'signal': 'bb_extreme', 'conditions': ['bb_extreme', 'ema200_filter', 'fixed_stop', 'volume_filter'], 'interval': '1h', 'bb_period': 20, 'bb_std': 2.0, 'ema200_filter': True, 'min_volume_ratio': 1.5, 'volume_lookback': 20, 'fixed_stop_pct': 0.3} |
| windows | ['Y2020', 'Y2024', 'Y2025'] |
| sweep | MS_20260507_073619 / P2_06557 |
| gate | return_pct > 0 in >= 3/3 unseen windows |
Hold-out · unseen years (never used by the sweep)
| window | trades | return_pct | max_dd_pct | profit_factor | win |
|---|---|---|---|---|---|
| Y2020 | 23 | 92.07 | 7.23 | 13.73 | WIN |
| Y2024 | 34 | 19.76 | 7.03 | 2.9 | WIN |
| Y2025 | 38 | 20.8 | 6.7 | 2.48 | WIN |