Validierung
Hier entsteht die Bewährungs-Historie: Optimierung nur für Kandidaten mit Signal und nur gegen ungesehene Daten; monatliche Forward-Validierung als finaler Richter — auf Daten, die zum Zeitpunkt der Parameter-Wahl noch nicht existierten.
Optimizer-Läufe (bedingt, Wochenende)
Anti-Overfitting strukturell: Grid beim Bau vorregistriert (vor jedem Ergebnis), Auswahl nur In-Sample, genau ein Out-of-Sample-Test gegen die unoptimierte Baseline. Bestätigte Parameter wandern eingefroren in die Forward-Validierung.
2026-07-16_dax_round_number_reversal
Optimizer-Lauf 2026-07-16 — DAX Round-Number Barrier Reversal (Osler / Donaldson-Kim)
Vorregistriertes Grid (18 Kombis, festgelegt beim Bau am 2026-07-07, vor jedem Ergebnis). Grid-Begruendung: grid_step deckt die von Osler/Donaldson-Kim genannten psychologischen Marken ab (50er Sekundaer, 100er Primaer, 200er groebere Anker). approach_buffer_points variiert das Anlauf-Fenster an die Marke (5-12 Pkt, plausibel fuer DAX-1m-Noise). tp_r_mult prueft das Chance-Risiko-Ziel (1R vs 2R) — die Quellen geben kein festes Ziel, daher konservativ zwei Stufen. 3x3x2 = 18 Kombinationen, alle innerhalb der MANIFEST-min/max, kein exotisches Mining.
Split: IS 17.03.2026 – 21.05.2026 (Auswahl) | OOS 21.05.2026 – 25.06.2026 (einmaliger Test) | Embargo: letzte 21 Tage gesperrt
In-Sample Top 10 (von 18)
| Kombi | n | WR | PF | PnL (Pkt) |
|---|---|---|---|---|
| {"approach_buffer_points": 5.0, "grid_step": 200.0, "tp_r_mult": 1.0} | 73 | 60.27% | 1.4675 | +555 Pkt |
| {"approach_buffer_points": 12.0, "grid_step": 200.0, "tp_r_mult": 2.0} | 74 | 45.95% | 1.3831 | +737 Pkt |
| {"approach_buffer_points": 5.0, "grid_step": 200.0, "tp_r_mult": 2.0} | 73 | 46.58% | 1.3741 | +628 Pkt |
| {"approach_buffer_points": 12.0, "grid_step": 200.0, "tp_r_mult": 1.0} | 74 | 59.46% | 1.3385 | +467 Pkt |
| {"approach_buffer_points": 8.0, "grid_step": 200.0, "tp_r_mult": 2.0} | 74 | 44.59% | 1.285 | +527 Pkt |
| {"approach_buffer_points": 8.0, "grid_step": 200.0, "tp_r_mult": 1.0} | 74 | 56.76% | 1.23 | +311 Pkt |
| {"approach_buffer_points": 8.0, "grid_step": 100.0, "tp_r_mult": 2.0} | 113 | 38.94% | 1.1372 | +375 Pkt |
| {"approach_buffer_points": 12.0, "grid_step": 100.0, "tp_r_mult": 2.0} | 112 | 38.39% | 1.1291 | +379 Pkt |
| {"approach_buffer_points": 5.0, "grid_step": 100.0, "tp_r_mult": 2.0} | 116 | 38.79% | 1.1175 | +316 Pkt |
| {"approach_buffer_points": 5.0, "grid_step": 50.0, "tp_r_mult": 1.0} | 153 | 52.94% | 1.0601 | +147 Pkt |
IS-Auswahl: {"approach_buffer_points": 12.0, "grid_step": 200.0, "tp_r_mult": 2.0} (Expectancy 9.9566, PF 1.3831, n=74)
Parameter Stability Map (volle Grid-Flaeche, 18 Kombis)
Nachbar-Stabilitaet: 3/3 Nachbarn positiv, Nachbar-Ø/Optimum = 0.56 (PLATEAU — robust)
<details><summary>Alle Kombis (IS)</summary>| Kombi | n | PF | Expectancy | PnL |
|---|---|---|---|---|
| {"approach_buffer_points": 12.0, "grid_step": 100.0, "tp_r_mult": 1.0} | 114 | 0.945 | -1.1724 | -134 |
| {"approach_buffer_points": 12.0, "grid_step": 100.0, "tp_r_mult": 2.0} | 112 | 1.1291 | 3.3873 | +379 |
| {"approach_buffer_points": 12.0, "grid_step": 200.0, "tp_r_mult": 1.0} | 74 | 1.3385 | 6.31 | +467 |
| {"approach_buffer_points": 12.0, "grid_step": 200.0, "tp_r_mult": 2.0} | 74 | 1.3831 | 9.9566 | +737 |
| {"approach_buffer_points": 12.0, "grid_step": 50.0, "tp_r_mult": 1.0} | 157 | 0.9124 | -1.7603 | -276 |
| {"approach_buffer_points": 12.0, "grid_step": 50.0, "tp_r_mult": 2.0} | 155 | 0.8033 | -5.188 | -804 |
| {"approach_buffer_points": 5.0, "grid_step": 100.0, "tp_r_mult": 1.0} | 118 | 0.9296 | -1.3176 | -155 |
| {"approach_buffer_points": 5.0, "grid_step": 100.0, "tp_r_mult": 2.0} | 116 | 1.1175 | 2.7198 | +316 |
| {"approach_buffer_points": 5.0, "grid_step": 200.0, "tp_r_mult": 1.0} | 73 | 1.4675 | 7.6048 | +555 |
| {"approach_buffer_points": 5.0, "grid_step": 200.0, "tp_r_mult": 2.0} | 73 | 1.3741 | 8.603 | +628 |
| {"approach_buffer_points": 5.0, "grid_step": 50.0, "tp_r_mult": 1.0} | 153 | 1.0601 | 0.9593 | +147 |
| {"approach_buffer_points": 5.0, "grid_step": 50.0, "tp_r_mult": 2.0} | 152 | 1.013 | 0.2876 | +44 |
| {"approach_buffer_points": 8.0, "grid_step": 100.0, "tp_r_mult": 1.0} | 115 | 0.8949 | -2.1323 | -245 |
| {"approach_buffer_points": 8.0, "grid_step": 100.0, "tp_r_mult": 2.0} | 113 | 1.1372 | 3.3176 | +375 |
| {"approach_buffer_points": 8.0, "grid_step": 200.0, "tp_r_mult": 1.0} | 74 | 1.23 | 4.208 | +311 |
| {"approach_buffer_points": 8.0, "grid_step": 200.0, "tp_r_mult": 2.0} | 74 | 1.285 | 7.1224 | +527 |
| {"approach_buffer_points": 8.0, "grid_step": 50.0, "tp_r_mult": 1.0} | 156 | 0.9892 | -0.1899 | -30 |
| {"approach_buffer_points": 8.0, "grid_step": 50.0, "tp_r_mult": 2.0} | 154 | 0.9639 | -0.8314 | -128 |
Out-of-Sample (je genau 1 Lauf)
| n | WR | PF (m.Slip) | PnL (m.Slip) | PF (o.Slip) | PnL (o.Slip) | |
|---|---|---|---|---|---|---|
| Optimiert | 26 | 34.62% | 0.8149 | -136 Pkt | 0.8469 | -110 Pkt |
| Baseline (Anker) | 56 | 44.64% | 1.1541 | +168 Pkt | — | — |
Verdict-Regel + IS-Auswahl basieren auf den realistischen Werten mit Slippage; „o. Slip" ist der Idealwert ohne Ausführungskosten.
Verdict
Optimierung NICHT bestätigt — Baseline behalten, kein Edge-Nachweis
Regel: bestätigt nur wenn OOS-PF >= 1.1 UND OOS-n >= 10 UND optimiert >= Baseline im OOS.
2026-07-16_dax_open_overreaction_fade
Optimizer-Lauf 2026-07-16 — DAX Open-Overreaction-Fade
Vorregistriertes Grid (18 Kombis, festgelegt beim Bau am 2026-06-23, vor jedem Ergebnis). Grid-Begruendung: Drei Parameter, 3x3x2 = 18 Kombinationen (<=24). open_window_minutes 15-30 deckt die in der Literatur genannte kurze Anfangsfenster-Spanne ab. min_move_points 25-50 sondiert die Magnituden-Schwelle 'large opening move' — der zentrale Freiheitsgrad der Quelle und laut Research-Log der Hebel, an dem der Edge (falls vorhanden) ueberlebt ('harter Magnituden-Filter'). retrace_target_fraction 0.4-0.6 testet das Ausmass der erwarteten partiellen Rueckkehr um den literaturnahen Halb-Move (0.5). Alle Werte innerhalb der MANIFEST-min/max und is_optimizable; kein exotisches Mining.
Split: IS 17.03.2026 – 21.05.2026 (Auswahl) | OOS 21.05.2026 – 25.06.2026 (einmaliger Test) | Embargo: letzte 21 Tage gesperrt
In-Sample Top 10 (von 18)
| Kombi | n | WR | PF | PnL (Pkt) |
|---|---|---|---|---|
| {"min_move_points": 50.0, "open_window_minutes": 20, "retrace_target_fraction": 0.6} | 23 | 34.78% | 2.7337 | +237 Pkt |
| {"min_move_points": 50.0, "open_window_minutes": 20, "retrace_target_fraction": 0.4} | 23 | 47.83% | 2.3964 | +188 Pkt |
| {"min_move_points": 50.0, "open_window_minutes": 15, "retrace_target_fraction": 0.6} | 22 | 31.82% | 1.9481 | +190 Pkt |
| {"min_move_points": 35.0, "open_window_minutes": 15, "retrace_target_fraction": 0.6} | 28 | 35.71% | 1.7893 | +203 Pkt |
| {"min_move_points": 25.0, "open_window_minutes": 15, "retrace_target_fraction": 0.6} | 32 | 37.5% | 1.5867 | +182 Pkt |
| {"min_move_points": 35.0, "open_window_minutes": 20, "retrace_target_fraction": 0.6} | 31 | 32.26% | 1.5429 | +149 Pkt |
| {"min_move_points": 35.0, "open_window_minutes": 15, "retrace_target_fraction": 0.4} | 28 | 46.43% | 1.5267 | +120 Pkt |
| {"min_move_points": 25.0, "open_window_minutes": 20, "retrace_target_fraction": 0.6} | 33 | 33.33% | 1.4555 | +137 Pkt |
| {"min_move_points": 50.0, "open_window_minutes": 15, "retrace_target_fraction": 0.4} | 22 | 36.36% | 1.393 | +78 Pkt |
| {"min_move_points": 35.0, "open_window_minutes": 20, "retrace_target_fraction": 0.4} | 31 | 45.16% | 1.3681 | +100 Pkt |
IS-Auswahl: {"min_move_points": 50.0, "open_window_minutes": 20, "retrace_target_fraction": 0.6} (Expectancy 10.2904, PF 2.7337, n=23)
Parameter Stability Map (volle Grid-Flaeche, 18 Kombis)
Nachbar-Stabilitaet: 3/4 Nachbarn positiv, Nachbar-Ø/Optimum = 0.47 (ISOLIERTES OPTIMUM — Zufallsverdacht)
<details><summary>Alle Kombis (IS)</summary>| Kombi | n | PF | Expectancy | PnL |
|---|---|---|---|---|
| {"min_move_points": 25.0, "open_window_minutes": 15, "retrace_target_fraction": 0.4} | 32 | 1.3101 | 2.7191 | +87 |
| {"min_move_points": 25.0, "open_window_minutes": 15, "retrace_target_fraction": 0.6} | 32 | 1.5867 | 5.6747 | +182 |
| {"min_move_points": 25.0, "open_window_minutes": 20, "retrace_target_fraction": 0.4} | 33 | 1.277 | 2.4973 | +82 |
| {"min_move_points": 25.0, "open_window_minutes": 20, "retrace_target_fraction": 0.6} | 33 | 1.4555 | 4.1436 | +137 |
| {"min_move_points": 25.0, "open_window_minutes": 30, "retrace_target_fraction": 0.4} | 30 | 1.2065 | 1.8317 | +55 |
| {"min_move_points": 25.0, "open_window_minutes": 30, "retrace_target_fraction": 0.6} | 30 | 0.9489 | -0.4647 | -14 |
| {"min_move_points": 35.0, "open_window_minutes": 15, "retrace_target_fraction": 0.4} | 28 | 1.5267 | 4.2875 | +120 |
| {"min_move_points": 35.0, "open_window_minutes": 15, "retrace_target_fraction": 0.6} | 28 | 1.7893 | 7.2404 | +203 |
| {"min_move_points": 35.0, "open_window_minutes": 20, "retrace_target_fraction": 0.4} | 31 | 1.3681 | 3.2206 | +100 |
| {"min_move_points": 35.0, "open_window_minutes": 20, "retrace_target_fraction": 0.6} | 31 | 1.5429 | 4.7958 | +149 |
| {"min_move_points": 35.0, "open_window_minutes": 30, "retrace_target_fraction": 0.4} | 29 | 1.1768 | 1.6224 | +47 |
| {"min_move_points": 35.0, "open_window_minutes": 30, "retrace_target_fraction": 0.6} | 29 | 0.8994 | -0.9462 | -27 |
| {"min_move_points": 50.0, "open_window_minutes": 15, "retrace_target_fraction": 0.4} | 22 | 1.393 | 3.5682 | +78 |
| {"min_move_points": 50.0, "open_window_minutes": 15, "retrace_target_fraction": 0.6} | 22 | 1.9481 | 8.6341 | +190 |
| {"min_move_points": 50.0, "open_window_minutes": 20, "retrace_target_fraction": 0.4} | 23 | 2.3964 | 8.1661 | +188 |
| {"min_move_points": 50.0, "open_window_minutes": 20, "retrace_target_fraction": 0.6} | 23 | 2.7337 | 10.2904 | +237 |
| {"min_move_points": 50.0, "open_window_minutes": 30, "retrace_target_fraction": 0.4} | 21 | 1.311 | 2.7552 | +58 |
| {"min_move_points": 50.0, "open_window_minutes": 30, "retrace_target_fraction": 0.6} | 21 | 0.7374 | -2.41 | -51 |
Out-of-Sample (je genau 1 Lauf)
| n | WR | PF (m.Slip) | PnL (m.Slip) | PF (o.Slip) | PnL (o.Slip) | |
|---|---|---|---|---|---|---|
| Optimiert | 12 | 25.0% | 0.8848 | -14 Pkt | 0.9664 | -4 Pkt |
| Baseline (Anker) | 15 | 33.33% | 0.5782 | -99 Pkt | — | — |
Verdict-Regel + IS-Auswahl basieren auf den realistischen Werten mit Slippage; „o. Slip" ist der Idealwert ohne Ausführungskosten.
Verdict
Optimierung NICHT bestätigt — Baseline behalten, kein Edge-Nachweis
Regel: bestätigt nur wenn OOS-PF >= 1.1 UND OOS-n >= 10 UND optimiert >= Baseline im OOS.
2026-07-16_dax_failed_breakout_fade
Optimizer-Lauf 2026-07-16 — DAX Failed-Breakout-Fade (Opening-Range Liquidity-Capture)
Vorregistriertes Grid (18 Kombis, festgelegt beim Bau am 2026-07-06, vor jedem Ergebnis). Grid-Begruendung: adx_max steuert die Schaerfe des Range-Regime-Gates (Costa: Effekt lebt in Balance-Tagen, stirbt an echten Trends) — 20/25/30 deckt streng bis locker ab. reclaim_bars ist der Kern des Failed-Breakout-Mechanismus (1-Bar-Sweep-Reclaim vs. 2-Bar-Fenster laut Quelle 'innerhalb von 1-2 Bars'). sl_atr_mult ist der Stop-Puffer jenseits des Sweep-Extrems als Plateau-Region (Anti-Overfit), nicht punktoptimiert. 3x2x3 = 18 Kombinationen, alle innerhalb der MANIFEST-min/max und literaturnah.
Split: IS 17.03.2026 – 21.05.2026 (Auswahl) | OOS 21.05.2026 – 25.06.2026 (einmaliger Test) | Embargo: letzte 21 Tage gesperrt
In-Sample Top 10 (von 18)
| Kombi | n | WR | PF | PnL (Pkt) |
|---|---|---|---|---|
| {"adx_max": 20.0, "reclaim_bars": 1, "sl_atr_mult": 1.0} | 73 | 49.32% | 1.6309 | +715 Pkt |
| {"adx_max": 20.0, "reclaim_bars": 2, "sl_atr_mult": 1.0} | 71 | 49.3% | 1.561 | +653 Pkt |
| {"adx_max": 20.0, "reclaim_bars": 2, "sl_atr_mult": 1.5} | 68 | 51.47% | 1.5493 | +690 Pkt |
| {"adx_max": 20.0, "reclaim_bars": 1, "sl_atr_mult": 0.75} | 73 | 47.95% | 1.4958 | +537 Pkt |
| {"adx_max": 20.0, "reclaim_bars": 1, "sl_atr_mult": 1.5} | 71 | 49.3% | 1.4069 | +564 Pkt |
| {"adx_max": 20.0, "reclaim_bars": 2, "sl_atr_mult": 0.75} | 72 | 44.44% | 1.294 | +351 Pkt |
| {"adx_max": 25.0, "reclaim_bars": 1, "sl_atr_mult": 0.75} | 93 | 45.16% | 1.2115 | +309 Pkt |
| {"adx_max": 30.0, "reclaim_bars": 1, "sl_atr_mult": 1.5} | 100 | 47.0% | 1.1759 | +371 Pkt |
| {"adx_max": 25.0, "reclaim_bars": 2, "sl_atr_mult": 1.0} | 94 | 45.74% | 1.1754 | +303 Pkt |
| {"adx_max": 30.0, "reclaim_bars": 1, "sl_atr_mult": 0.75} | 106 | 45.28% | 1.1538 | +270 Pkt |
IS-Auswahl: {"adx_max": 20.0, "reclaim_bars": 2, "sl_atr_mult": 1.5} (Expectancy 10.1538, PF 1.5493, n=68)
Parameter Stability Map (volle Grid-Flaeche, 18 Kombis)
Nachbar-Stabilitaet: 3/3 Nachbarn positiv, Nachbar-Ø/Optimum = 0.62 (PLATEAU — robust)
<details><summary>Alle Kombis (IS)</summary>| Kombi | n | PF | Expectancy | PnL |
|---|---|---|---|---|
| {"adx_max": 20.0, "reclaim_bars": 1, "sl_atr_mult": 0.75} | 73 | 1.4958 | 7.3575 | +537 |
| {"adx_max": 20.0, "reclaim_bars": 1, "sl_atr_mult": 1.0} | 73 | 1.6309 | 9.7978 | +715 |
| {"adx_max": 20.0, "reclaim_bars": 1, "sl_atr_mult": 1.5} | 71 | 1.4069 | 7.9383 | +564 |
| {"adx_max": 20.0, "reclaim_bars": 2, "sl_atr_mult": 0.75} | 72 | 1.294 | 4.8719 | +351 |
| {"adx_max": 20.0, "reclaim_bars": 2, "sl_atr_mult": 1.0} | 71 | 1.561 | 9.2034 | +653 |
| {"adx_max": 20.0, "reclaim_bars": 2, "sl_atr_mult": 1.5} | 68 | 1.5493 | 10.1538 | +690 |
| {"adx_max": 25.0, "reclaim_bars": 1, "sl_atr_mult": 0.75} | 93 | 1.2115 | 3.3209 | +309 |
| {"adx_max": 25.0, "reclaim_bars": 1, "sl_atr_mult": 1.0} | 93 | 1.1406 | 2.5009 | +233 |
| {"adx_max": 25.0, "reclaim_bars": 1, "sl_atr_mult": 1.5} | 90 | 1.0357 | 0.778 | +70 |
| {"adx_max": 25.0, "reclaim_bars": 2, "sl_atr_mult": 0.75} | 94 | 1.0112 | 0.1966 | +18 |
| {"adx_max": 25.0, "reclaim_bars": 2, "sl_atr_mult": 1.0} | 94 | 1.1754 | 3.2281 | +303 |
| {"adx_max": 25.0, "reclaim_bars": 2, "sl_atr_mult": 1.5} | 90 | 1.0769 | 1.6376 | +147 |
| {"adx_max": 30.0, "reclaim_bars": 1, "sl_atr_mult": 0.75} | 106 | 1.1538 | 2.5447 | +270 |
| {"adx_max": 30.0, "reclaim_bars": 1, "sl_atr_mult": 1.0} | 105 | 1.1273 | 2.355 | +247 |
| {"adx_max": 30.0, "reclaim_bars": 1, "sl_atr_mult": 1.5} | 100 | 1.1759 | 3.7103 | +371 |
| {"adx_max": 30.0, "reclaim_bars": 2, "sl_atr_mult": 0.75} | 107 | 1.0687 | 1.1914 | +127 |
| {"adx_max": 30.0, "reclaim_bars": 2, "sl_atr_mult": 1.0} | 106 | 1.1042 | 2.0247 | +215 |
| {"adx_max": 30.0, "reclaim_bars": 2, "sl_atr_mult": 1.5} | 100 | 1.0702 | 1.5623 | +156 |
Out-of-Sample (je genau 1 Lauf)
| n | WR | PF (m.Slip) | PnL (m.Slip) | PF (o.Slip) | PnL (o.Slip) | |
|---|---|---|---|---|---|---|
| Optimiert | 48 | 43.75% | 0.8867 | -124 Pkt | 0.9286 | -76 Pkt |
| Baseline (Anker) | 67 | 41.79% | 0.9975 | -3 Pkt | — | — |
Verdict-Regel + IS-Auswahl basieren auf den realistischen Werten mit Slippage; „o. Slip" ist der Idealwert ohne Ausführungskosten.
Verdict
Optimierung NICHT bestätigt — Baseline behalten, kein Edge-Nachweis
Regel: bestätigt nur wenn OOS-PF >= 1.1 UND OOS-n >= 10 UND optimiert >= Baseline im OOS.
2026-07-11_dax_squeeze_session_breaker
Optimizer-Lauf 2026-07-11 — Baustein: Session-Loss-Limit / Circuit-Breaker auf Squeeze-Release (Han/Zhou)
Vorregistriertes Grid (15 Kombis, festgelegt beim Bau am 2026-07-03, vor jedem Ergebnis). Grid-Begruendung: Der Baustein hat genau einen freien Parameter — die Verlustschwelle X (breaker_loss_points). Er wird als PLATEAU-Region abgetastet (30..100 Pkt, ~2-4 volle SL-Distanzen bei DAX-1m-ATR), NICHT punktoptimiert (atr-trailing-stop-plateau-robustness): gesucht ist ein stabiler Bereich, in dem der Tail-Nutzen ohne Whipsaw-Schaden traegt, kein einzelnes Optimum. max_trades_per_day (2/3/4) ist der zweite risikobegrenzende Hebel, der mit dem Breaker interagiert (weniger Trades/Tag kappt kumulierten Verlust unabhaengig) — beide is_optimizable, innerhalb MANIFEST-min/max, 5x3=15 Kombinationen (<=24).
Split: IS 17.03.2026 – 17.05.2026 (Auswahl) | OOS 17.05.2026 – 20.06.2026 (einmaliger Test) | Embargo: letzte 21 Tage gesperrt
In-Sample Top 10 (von 15)
| Kombi | n | WR | PF | PnL (Pkt) |
|---|---|---|---|---|
| {"breaker_loss_points": 30.0, "max_trades_per_day": 3} | 118 | 26.27% | 1.5118 | +730 Pkt |
| {"breaker_loss_points": 45.0, "max_trades_per_day": 3} | 118 | 26.27% | 1.5118 | +730 Pkt |
| {"breaker_loss_points": 60.0, "max_trades_per_day": 3} | 118 | 26.27% | 1.5118 | +730 Pkt |
| {"breaker_loss_points": 80.0, "max_trades_per_day": 3} | 118 | 26.27% | 1.5118 | +730 Pkt |
| {"breaker_loss_points": 100.0, "max_trades_per_day": 3} | 118 | 26.27% | 1.5118 | +730 Pkt |
| {"breaker_loss_points": 30.0, "max_trades_per_day": 4} | 156 | 26.92% | 1.3097 | +560 Pkt |
| {"breaker_loss_points": 45.0, "max_trades_per_day": 4} | 156 | 26.92% | 1.3097 | +560 Pkt |
| {"breaker_loss_points": 60.0, "max_trades_per_day": 4} | 156 | 26.92% | 1.3097 | +560 Pkt |
| {"breaker_loss_points": 80.0, "max_trades_per_day": 4} | 156 | 26.92% | 1.3097 | +560 Pkt |
| {"breaker_loss_points": 100.0, "max_trades_per_day": 4} | 156 | 26.92% | 1.3097 | +560 Pkt |
IS-Auswahl: {"use_session_breaker": false, "breaker_loss_points": 30.0, "max_trades_per_day": 3} (Expectancy 6.1833, PF 1.5118, n=118)
Parameter Stability Map (volle Grid-Flaeche, 15 Kombis)
Nachbar-Stabilitaet: 2/3 Nachbarn positiv, Nachbar-Ø/Optimum = 0.3 (ISOLIERTES OPTIMUM — Zufallsverdacht)
<details><summary>Alle Kombis (IS)</summary>| Kombi | n | PF | Expectancy | PnL |
|---|---|---|---|---|
| {"breaker_loss_points": 100.0, "max_trades_per_day": 2} | 79 | 0.6929 | -4.1332 | -327 |
| {"breaker_loss_points": 100.0, "max_trades_per_day": 3} | 118 | 1.5118 | 6.1833 | +730 |
| {"breaker_loss_points": 100.0, "max_trades_per_day": 4} | 156 | 1.3097 | 3.589 | +560 |
| {"breaker_loss_points": 30.0, "max_trades_per_day": 2} | 79 | 0.6929 | -4.1332 | -327 |
| {"breaker_loss_points": 30.0, "max_trades_per_day": 3} | 118 | 1.5118 | 6.1833 | +730 |
| {"breaker_loss_points": 30.0, "max_trades_per_day": 4} | 156 | 1.3097 | 3.589 | +560 |
| {"breaker_loss_points": 45.0, "max_trades_per_day": 2} | 79 | 0.6929 | -4.1332 | -327 |
| {"breaker_loss_points": 45.0, "max_trades_per_day": 3} | 118 | 1.5118 | 6.1833 | +730 |
| {"breaker_loss_points": 45.0, "max_trades_per_day": 4} | 156 | 1.3097 | 3.589 | +560 |
| {"breaker_loss_points": 60.0, "max_trades_per_day": 2} | 79 | 0.6929 | -4.1332 | -327 |
| {"breaker_loss_points": 60.0, "max_trades_per_day": 3} | 118 | 1.5118 | 6.1833 | +730 |
| {"breaker_loss_points": 60.0, "max_trades_per_day": 4} | 156 | 1.3097 | 3.589 | +560 |
| {"breaker_loss_points": 80.0, "max_trades_per_day": 2} | 79 | 0.6929 | -4.1332 | -327 |
| {"breaker_loss_points": 80.0, "max_trades_per_day": 3} | 118 | 1.5118 | 6.1833 | +730 |
| {"breaker_loss_points": 80.0, "max_trades_per_day": 4} | 156 | 1.3097 | 3.589 | +560 |
Out-of-Sample (je genau 1 Lauf)
| n | WR | PF (m.Slip) | PnL (m.Slip) | PF (o.Slip) | PnL (o.Slip) | |
|---|---|---|---|---|---|---|
| Optimiert | 72 | 30.56% | 1.2428 | +180 Pkt | 1.3608 | +250 Pkt |
| Baseline (Anker) | 72 | 30.56% | 1.2428 | +180 Pkt | — | — |
Verdict-Regel + IS-Auswahl basieren auf den realistischen Werten mit Slippage; „o. Slip" ist der Idealwert ohne Ausführungskosten.
Verdict
Optimierung BESTAETIGT (OOS) — in Forward-Validierung übernommen
Regel: bestätigt nur wenn OOS-PF >= 1.1 UND OOS-n >= 10 UND optimiert >= Baseline im OOS.
2026-07-04_dax_squeeze_release
Optimizer-Lauf 2026-07-04 — DAX V-EXPLODE Squeeze-Release (TTM-Squeeze Kompression->Expansion)
Vorregistriertes Grid (24 Kombis, festgelegt beim Bau am 2026-06-22, vor jedem Ergebnis). Grid-Begruendung: Drei Parameter, 3x4x2 = 24 Kombinationen (Limit eingehalten). kc_mult steuert die Squeeze-Tiefe (Kern-Geometrie der TTM-Squeeze: kleiner = strengere Kompression, weniger aber hochwertigere Signale); klassischer Default 1.5, Bandbreite 1.0-2.0 entspricht der konservativ<->aggressiv-Spanne der Quelle. ema_trend_period ist der vom Log 2026-06-22 als fragilster/wichtigster Baustein benannte Richtungs-Bias; 20/50/100/200 sind die Standard-Trend-EMA-Stufen (kurz=responsiv bis lang=robust). sl_atr_mult (1.0/2.0) deckt die in der Crabel/Chandelier-Tradition ueblichen ATR-Stop-Multiples ab und testet die Robustheit gegen Fehlausbruch-Stopouts. Alle Werte liegen innerhalb der MANIFEST-min/max und sind literaturnah, kein exotisches Mining.
Split: IS 17.03.2026 – 13.05.2026 (Auswahl) | OOS 13.05.2026 – 13.06.2026 (einmaliger Test) | Embargo: letzte 21 Tage gesperrt
In-Sample Top 10 (von 24)
| Kombi | n | WR | PF | PnL (Pkt) |
|---|---|---|---|---|
| {"ema_trend_period": 50, "kc_mult": 1.5, "sl_atr_mult": 1.0} | 109 | 22.94% | 1.6082 | +706 Pkt |
| {"ema_trend_period": 100, "kc_mult": 1.5, "sl_atr_mult": 1.0} | 108 | 22.22% | 1.5804 | +686 Pkt |
| {"ema_trend_period": 50, "kc_mult": 1.5, "sl_atr_mult": 2.0} | 109 | 28.44% | 1.5104 | +720 Pkt |
| {"ema_trend_period": 100, "kc_mult": 1.5, "sl_atr_mult": 2.0} | 108 | 26.85% | 1.5006 | +703 Pkt |
| {"ema_trend_period": 20, "kc_mult": 1.5, "sl_atr_mult": 1.0} | 109 | 22.02% | 1.4981 | +611 Pkt |
| {"ema_trend_period": 20, "kc_mult": 1.5, "sl_atr_mult": 2.0} | 109 | 29.36% | 1.4721 | +679 Pkt |
| {"ema_trend_period": 200, "kc_mult": 1.0, "sl_atr_mult": 2.0} | 46 | 28.26% | 1.149 | +74 Pkt |
| {"ema_trend_period": 20, "kc_mult": 1.0, "sl_atr_mult": 2.0} | 56 | 26.79% | 1.0148 | +9 Pkt |
| {"ema_trend_period": 50, "kc_mult": 1.0, "sl_atr_mult": 2.0} | 53 | 26.42% | 0.9885 | -7 Pkt |
| {"ema_trend_period": 200, "kc_mult": 1.0, "sl_atr_mult": 1.0} | 46 | 21.74% | 0.9588 | -19 Pkt |
IS-Auswahl: {"ema_trend_period": 50, "kc_mult": 1.5, "sl_atr_mult": 2.0} (Expectancy 6.6072, PF 1.5104, n=109)
Out-of-Sample (je genau 1 Lauf)
| n | WR | PF (m.Slip) | PnL (m.Slip) | PF (o.Slip) | PnL (o.Slip) | |
|---|---|---|---|---|---|---|
| Optimiert | 66 | 30.3% | 1.0166 | +11 Pkt | 1.1194 | +74 Pkt |
| Baseline (Anker) | 66 | 27.27% | 1.0163 | +11 Pkt | — | — |
Verdict-Regel + IS-Auswahl basieren auf den realistischen Werten mit Slippage; „o. Slip" ist der Idealwert ohne Ausführungskosten.
Verdict
Optimierung NICHT bestätigt — Baseline behalten, kein Edge-Nachweis
Regel: bestätigt nur wenn OOS-PF >= 1.1 UND OOS-n >= 10 UND optimiert >= Baseline im OOS.
2026-06-20_dax_high_energy_reversal
Optimizer-Lauf 2026-06-20 — DAX High-Energy-Day Late-Session-Reversal (Vola-Volumen-Gap-Klassifikator)
Vorregistriertes Grid (18 Kombis, festgelegt beim Bau am 2026-06-18, vor jedem Ergebnis). Grid-Begruendung: Drei literaturgestuetzte Achsen, 3x3x2 = 18 Kombinationen (<= 24). (1) min_conditions ist der Kern-Mechanismus-Test der Quelle: je strenger das vorab-beobachtbare Regime-Label, desto trennschaerfer soll die Pfad-Struktur sein (1 = loses Gate bis 3 = strenges 3-Faktor-AND wie im Paper). (2) reversal_start_minutes_after_open adressiert die im Log markierte US-Open-Spillover-Sorge: 360=15:00 (vor US-Open 15:30), 450=16:30, 540=18:00 — testet, ob der Reversal-Edge ein eigenstaendiges DAX-Phaenomen oder reiner US-Spillover ist. (3) tp_reversion_fraction prueft halben (0.5) vs. vollen (1.0) Reversion-Fill auf den Session-Open. Alle Werte liegen innerhalb der MANIFEST-min/max; reversal_start (>=360) bleibt fuer alle Kombinationen > drift_ref_minutes_after_open (240, Default), womit der Morgen-Drift-Anker stets vor dem Spaet-Fenster liegt.
Split: IS 17.03.2026 – 04.05.2026 (Auswahl) | OOS 04.05.2026 – 30.05.2026 (einmaliger Test) | Embargo: letzte 21 Tage gesperrt
In-Sample Top 10 (von 18)
| Kombi | n | WR | PF | PnL (Pkt) |
|---|---|---|---|---|
| {"min_conditions": 3, "reversal_start_minutes_after_open": 450, "tp_reversion_fraction": 0.5} | 3 | 66.67% | 4.0737 | +108 Pkt |
| {"min_conditions": 3, "reversal_start_minutes_after_open": 450, "tp_reversion_fraction": 1.0} | 3 | 33.33% | 2.8063 | +120 Pkt |
| {"min_conditions": 3, "reversal_start_minutes_after_open": 360, "tp_reversion_fraction": 0.5} | 3 | 66.67% | 2.2844 | +28 Pkt |
| {"min_conditions": 1, "reversal_start_minutes_after_open": 450, "tp_reversion_fraction": 1.0} | 21 | 33.33% | 2.2288 | +484 Pkt |
| {"min_conditions": 1, "reversal_start_minutes_after_open": 450, "tp_reversion_fraction": 0.5} | 21 | 38.1% | 1.9137 | +331 Pkt |
| {"min_conditions": 2, "reversal_start_minutes_after_open": 450, "tp_reversion_fraction": 1.0} | 15 | 33.33% | 1.8747 | +251 Pkt |
| {"min_conditions": 3, "reversal_start_minutes_after_open": 360, "tp_reversion_fraction": 1.0} | 3 | 33.33% | 1.6469 | +31 Pkt |
| {"min_conditions": 2, "reversal_start_minutes_after_open": 450, "tp_reversion_fraction": 0.5} | 15 | 40.0% | 1.4994 | +128 Pkt |
| {"min_conditions": 1, "reversal_start_minutes_after_open": 540, "tp_reversion_fraction": 1.0} | 16 | 18.75% | 1.4192 | +61 Pkt |
| {"min_conditions": 2, "reversal_start_minutes_after_open": 360, "tp_reversion_fraction": 1.0} | 18 | 22.22% | 1.2689 | +94 Pkt |
IS-Auswahl: {"min_conditions": 1, "reversal_start_minutes_after_open": 450, "tp_reversion_fraction": 1.0} (Expectancy 23.0429, PF 2.2288, n=21)
Out-of-Sample (je genau 1 Lauf)
| n | WR | PF (m.Slip) | PnL (m.Slip) | PF (o.Slip) | PnL (o.Slip) | |
|---|---|---|---|---|---|---|
| Optimiert | 13 | 15.38% | 0.3385 | -197 Pkt | 0.3585 | -184 Pkt |
| Baseline (Anker) | 11 | 18.18% | 0.3903 | -159 Pkt | 0.4122 | -148 Pkt |
Verdict-Regel + IS-Auswahl basieren auf den realistischen Werten mit Slippage; „o. Slip" ist der Idealwert ohne Ausführungskosten.
Verdict
Optimierung NICHT bestätigt — Baseline behalten, kein Edge-Nachweis
Regel: bestätigt nur wenn OOS-PF >= 1.1 UND OOS-n >= 10 UND optimiert >= Baseline im OOS.
2026-06-17_dax_overnight_gap_fade
Optimizer-Lauf 2026-06-17 — DAX Overnight-Gap-Fade (Intraday Time Series Reversal)
Vorregistriertes Grid (18 Kombis, festgelegt beim Bau am 2026-06-16, vor jedem Ergebnis). Grid-Begruendung: min_gap_points spannt von moderaten bis grossen DAX-Overnight-Gaps (das Paper konditioniert auf die Gap-Magnitude); tp_gap_fill_fraction testet Teil- vs. nahezu-vollen Gap-Fill, da die Quelle einen Open->Erste-Halbstunde-Reversal misst und keinen garantierten vollstaendigen Fill auf den Vortags-Close; max_hold_bars (20/40) klammert die vom Paper praediktierte erste Halbstunde ein. Alle Werte liegen innerhalb der MANIFEST-min/max und sind literaturnah (kein exotisches Mining). 3 x 3 x 2 = 18 Kombinationen <= 24.
Split: IS 17.03.2026 – 02.05.2026 (Auswahl) | OOS 02.05.2026 – 27.05.2026 (einmaliger Test) | Embargo: letzte 21 Tage gesperrt
In-Sample Top 10 (von 18)
| Kombi | n | WR | PF | PnL (Pkt) |
|---|---|---|---|---|
| {"max_hold_bars": 20, "min_gap_points": 25.0, "tp_gap_fill_fraction": 0.8} | 24 | 41.67% | 2.7859 | +409 Pkt |
| {"max_hold_bars": 20, "min_gap_points": 40.0, "tp_gap_fill_fraction": 0.8} | 24 | 41.67% | 2.7859 | +409 Pkt |
| {"max_hold_bars": 20, "min_gap_points": 25.0, "tp_gap_fill_fraction": 0.6} | 24 | 41.67% | 2.6361 | +375 Pkt |
| {"max_hold_bars": 20, "min_gap_points": 40.0, "tp_gap_fill_fraction": 0.6} | 24 | 41.67% | 2.6361 | +375 Pkt |
| {"max_hold_bars": 40, "min_gap_points": 25.0, "tp_gap_fill_fraction": 0.8} | 24 | 37.5% | 2.5276 | +378 Pkt |
| {"max_hold_bars": 40, "min_gap_points": 40.0, "tp_gap_fill_fraction": 0.8} | 24 | 37.5% | 2.5276 | +378 Pkt |
| {"max_hold_bars": 20, "min_gap_points": 15.0, "tp_gap_fill_fraction": 0.8} | 26 | 38.46% | 2.4152 | +374 Pkt |
| {"max_hold_bars": 20, "min_gap_points": 15.0, "tp_gap_fill_fraction": 0.6} | 26 | 38.46% | 2.2853 | +340 Pkt |
| {"max_hold_bars": 40, "min_gap_points": 25.0, "tp_gap_fill_fraction": 0.6} | 24 | 37.5% | 2.2551 | +311 Pkt |
| {"max_hold_bars": 40, "min_gap_points": 40.0, "tp_gap_fill_fraction": 0.6} | 24 | 37.5% | 2.2551 | +311 Pkt |
IS-Auswahl: {"max_hold_bars": 20, "min_gap_points": 25.0, "tp_gap_fill_fraction": 0.8} (Expectancy 17.0475, PF 2.7859, n=24)
Out-of-Sample (je genau 1 Lauf)
| n | WR | PF (m.Slip) | PnL (m.Slip) | PF (o.Slip) | PnL (o.Slip) | |
|---|---|---|---|---|---|---|
| Optimiert | 16 | 31.25% | 0.9406 | -10 Pkt | 1.0375 | +6 Pkt |
| Baseline (Anker) | 16 | 37.5% | 1.4547 | +71 Pkt | 1.5944 | +87 Pkt |
Verdict-Regel + IS-Auswahl basieren auf den realistischen Werten mit Slippage; „o. Slip" ist der Idealwert ohne Ausführungskosten.
Verdict
Optimierung NICHT bestätigt — Baseline behalten, kein Edge-Nachweis
Regel: bestätigt nur wenn OOS-PF >= 1.1 UND OOS-n >= 10 UND optimiert >= Baseline im OOS.
Forward-Validierung (monatlich)
Re-Test aller eingefrorenen Kandidaten auf dem jeweils abgeschlossenen Monat — echtes Out-of-Sample, Ergebnisse werden angehängt, nie überschrieben. So trennt sich über die Monate Zufall von Substanz.
Monat 2026-06
Forward-Validierung 2026-06
Korrektur vom 17.07.2026: Dieser Lauf ist kein sauberes Kalender-Monats-Forward-OOS. Die Kandidaten wurden erst am 10.–12.06.2026 eingefroren; ein Teil des Juni-Fensters lag damit vor dem Freeze. Die Kennzahlen bleiben als historischer Retrospektiv-Replay erhalten, dürfen aber keine Forward-, Kalibrierungs- oder Promotionsaussage stützen. Siehe Reconciliation
W-SIP-FWD-REC-2026-07-17-001.
Lauf: 2026-07-04T09:17:09+02:00. Eingefrorene Parameter (siehe forward_candidates.json),
getestet auf dem abgeschlossenen Monat 2026-06 — damalige Bezeichnung; seit 17.07. als
Retrospektiv-Replay korrigiert.
| Kandidat | n | WR | PF | PnL (Pkt) | MaxDD (Pkt) |
|---|---|---|---|---|---|
| PDH/PDL-Fade (ohne Reaktionsbar) | 15 | 53.33% | 1.7742 | +105.61 Pkt | 67.42 Pkt |
| PDH/PDL-Fade nur range_day (Regime-Hypothese) | 15 | 53.33% | 1.7742 | +105.61 Pkt | 67.42 Pkt |
| ORB 15min (WF-Params buffer 4 / TP 2.2R) | 29 | 44.83% | 2.885 | +777.28 Pkt | 186.34 Pkt |
| VWAP-Reversion (Baseline) | 66 | 28.79% | 0.7528 | -255.89 Pkt | 562.26 Pkt |
| Volatility Breakout (Baseline) | 56 | 12.5% | 0.3402 | -704.67 Pkt | 767.65 Pkt |
| Gap-Fade (Baseline) | 12 | 41.67% | 0.5834 | -203.06 Pkt | 439.52 Pkt |
| Time-of-Day Momentum (16:30) | 19 | 26.32% | 0.6655 | -107.07 Pkt | 216.78 Pkt |
| Noise-Area Breakout (Paper-Default N=1.0) | 30 | 20.0% | 0.3523 | -594.26 Pkt | 657.66 Pkt |
| ATR-Band Trend, Session-Open-Exit (Quellen-Default, Auto-Build) | 7 | 28.57% | 0.5579 | -137.62 Pkt | 351.82 Pkt |
Monat 2026-05
Forward-Validierung 2026-05
Korrektur vom 17.07.2026: Dieser Lauf ist kein echtes Forward-OOS. Sämtliche Kandidaten wurden erst am 10.–12.06.2026 eingefroren und damit nach dem geprüften Mai. Die Kennzahlen bleiben als historischer Retrospektiv-Replay erhalten, dürfen aber keine Forward-, Kalibrierungs- oder Promotionsaussage stützen. Siehe Reconciliation
W-SIP-FWD-REC-2026-07-17-001.
Lauf: 2026-06-17T07:07:24+02:00. Eingefrorene Parameter (siehe forward_candidates.json),
getestet auf dem abgeschlossenen Monat 2026-05 — damalige Bezeichnung; seit 17.07. als
Retrospektiv-Replay korrigiert.
| Kandidat | n | WR | PF | PnL (Pkt) | MaxDD (Pkt) |
|---|---|---|---|---|---|
| PDH/PDL-Fade (ohne Reaktionsbar) | 10 | 60.0% | 1.376 | +50.78 Pkt | 167.11 Pkt |
| PDH/PDL-Fade nur range_day (Regime-Hypothese) | 10 | 60.0% | 1.376 | +50.78 Pkt | 167.11 Pkt |
| ORB 15min (WF-Params buffer 4 / TP 2.2R) | 25 | 28.0% | 1.1449 | +107.65 Pkt | 474.29 Pkt |
| VWAP-Reversion (Baseline) | 57 | 36.84% | 0.976 | -19.46 Pkt | 188.99 Pkt |
| Volatility Breakout (Baseline) | 50 | 20.0% | 0.4065 | -689.39 Pkt | 710.33 Pkt |
| Gap-Fade (Baseline) | 6 | 0.0% | 0.0 | -292.12 Pkt | 311.1 Pkt |
| Time-of-Day Momentum (16:30) | 16 | 56.25% | 4.1033 | +504.29 Pkt | 155.12 Pkt |
| Noise-Area Breakout (Paper-Default N=1.0) | 25 | 24.0% | 0.4517 | -329.57 Pkt | 516.36 Pkt |
| ATR-Band Trend, Session-Open-Exit (Quellen-Default, Auto-Build) | 5 | 20.0% | 1.0536 | +14.46 Pkt | 405.89 Pkt |