Versuchsdossier · alle Versuche im Kandidatenvergleich
Baustein: Volatilitäts-Zustands-Gate (Lundström/Holmberg) auf Opening Range Breakout
Robustheits-Score 52.2/100 · vorläufigWer zahlt und warum?
An Tagen mit breiter Opening Range (aktiver Volatilitäts-Zustand relativ zur eigenen Historie) strömt Informationsfluss in den Markt; jenseits der Range liegen Stop-Orders der Gegenseite und Momentum-Einstiegsorders, deren Auslösung Anschlussbewegung erzeugt. An engen, ruhigen Tagen liegt dort stattdessen passive Gegenliquidität (Limit-Orders), der Ausbruch ist überwiegend Rauschen und kehrt in die Range zurück.
Widerlegt, wenn: PF < 1,05 bei n >= 40 in der Hauptvariante: das Zustands-Gate hebt den Träger nicht über Rauschen.
Prüfliste nach Arnott, Harvey und Markowitz
Sieben Fragen aus „A Backtesting Protocol in the Era of Machine Learning“ (2019). Die Einstufung folgt festen Regeln aus den Feldern dieses Bauergebnisses.
| Punkt | Einstufung | Beleg |
|---|---|---|
| MotivationGab es vor dem Test eine ökonomische Begründung? | Ja | Mechanik und Vorhersage vor dem Test im Hypothesenregister (HYP-20261007-b5665c2c). |
| MehrfachtestsSind alle Versuche gezählt und wird dafür korrigiert? | Teilweise | 3 Varianten vor dem Lauf im Trial Ledger registriert (trl_6d217ee0b91a). Das geltende Urteil korrigiert nicht für die Zahl der Versuche; eine Holm-Korrektur läuft parallel mit. |
| Daten und KostenSind Datenfenster, Datenstand und Kosten festgehalten? | Ja | Fenster 2026-03-17 bis 2026-09-17, Datenstand 2026-10-07, Slippage 0,5 Pkt je Seite; Engine-Fingerabdruck im Manifest. |
| Prüfung außerhalb der StichprobeWurde auf Daten geprüft, die beim Bau nicht bekannt waren? | Teilweise | Eingefroren für den Vorwärtstest; der erste Messmonat steht noch aus. |
| Stabilität über die ZeitHängt das Ergebnis an einem einzelnen Zeitraum? | Ja | Kein einzelner Monat trägt das Ergebnis (3 Monate); Aufteilung nach Marktphasen vorhanden. |
| KomplexitätIst die Regel sparsam genug für die Datenmenge? | Teilweise | 3 echte Varianten, 3 variierte Parameter (use_vola_gate, vola_lookback_days, vola_min_pctile). Regel: höchstens 2 variierte Parameter und 3 Varianten. |
| ForschungskulturWird auch das Scheitern veröffentlicht? | Ja | Jeder Bau erscheint unabhängig vom Ergebnis, dieses Dossier eingeschlossen; die Placebo-Kontrolle steht im Dossier. |
Eingefroren – erster Messmonat November 2026
Jeden Monat laufen die unveränderte Baseline (Baustein: Volatilitäts-Zustands-Gate (Lundström/Holmberg) auf Opening Range Breakout — Traeger pur (A/B-Kontrolle)) und der Baustein (Baustein: Volatilitäts-Zustands-Gate (Lundström/Holmberg) auf Opening Range Breakout — mit Baustein (A/B-Overlay)) genau einmal auf denselben ungesehenen Daten: 2026-11 · 2026-12 · 2027-01 · 2027-02. Nach Monat 2 oder 3 wird bei mindestens 20 Overlay-Trades abgebrochen, wenn PF ≤ 1,00 ist oder das Overlay die Baseline nicht schlägt.
Erst nach 4 Monaten, mindestens 30 Trades, PF ≥ 1,20, besserem PnL als die Baseline und mindestens 2 positiven Monaten darf eine unabhängige DEMO-Prüfung beginnen. Das ist ausdrücklich noch keine Slot-Freigabe.
Paar dax_orb_vola_state_gate-2026-10-08-overlay · Freeze 2026-10-08 · Kosten 0.5 Pkt Slippage · Source cc58484b3f2076a8…
🧩 Baustein-Test — Variante von dax_opening_range_breakout. Der Trial-Vergleich unten isoliert den Baustein-Beitrag (Trial 1 = Träger pur).
Hypothese & Vorregistrierung
Rationale: Träger ist der klassische dax_opening_range_breakout (Baseline PF ~1,03, n=109; letzter Baustein-Test dort am 28.09., also außerhalb der Sperrfrist; in live_bt_parity.json steht der Träger nicht, daher fail-open ohne Paritätssperre). Lundström und Holmberg/Lönnbark/Lundström finden, dass die ORB-Rendite stark vom Volatilitäts-Zustand abhängt (ca. 150–200 bp/Tag Differenz zwischen hohem und niedrigem Zustand); das Gate lässt Breakouts nur zu, wenn die heutige Opening-Range-Breite im oberen Teil der eigenen 20-Tage-Historie liegt. Trial 1 = Träger pur, Trial 2/3 = Gate (Rang >= 0,5 bzw. >= 0,67). Folgt der Portfolio-Empfehlung (Bausteinart regime, Familie Opening Range Breakout); die Ausstiegsquote ist unterschritten (stop_exit 32 von 214 Versuchen = 15 %), aber alle baubaren Exit-Lab-Träger (pdh_pdl_breakout, range_efficiency_fade, range_fade_depth_level_gate, round_number_reversal*) haben laut live_bt_parity bt.pnl_pts < 0 und sind per Paritäts-Gebot gesperrt; der einzige verbleibende Exit-Befund (first_half_release_gate) wurde schon als A/B gebaut und verworfen. Kein brauchbarer Exit-Lab-Befund verfügbar. Erwartete Trades: Träger ca. 18 pro Monat, mit Gate ca. 8–10 pro Monat — bleibt statistisch dünn (Power-Plan: schwer entscheidbar), daher nur als Hinweis zu lesen. Kein Befund ab M3 in mechanism_findings.json (nur M1/M2).
Abweichungen von der Quelle: Die Studien messen den Zustand über realisierte Tages-Volatilität/Quantile auf Tagesbasis (Rohöl, S&P-500-Futures); hier dient die Opening-Range-Breite des Tages als am Range-Lock bekannter Intraday-Proxy, gerankt gegen eine rollierende 20-Tage-Historie (heutige Range zählt nicht mit, kein Lookahead). Ohne mindestens 10 Tage Historie blockt das Gate (Zustand unbekannt). Volltexte wurden nicht geprüft (Abstract-Ebene). Range-Zählung ankert an der ersten MAIN-Session-Bar (Framework-Label), nicht an einer Uhrzeit im Code. Alle übrigen Regeln, Exits und Parameter sind 1:1 der Träger dax_opening_range_breakout; use_vola_gate=false reproduziert ihn.
Quelle: https://www.diva-portal.org/smash/get/diva2:732318/FULLTEXT02.pdf
Vorregistriertes Optimizer-Grid (festgelegt VOR dem ersten Backtest — Anti-Overfitting)
- vola_min_pctile: 0.5 / 0.67
- vola_lookback_days: 10 / 20 / 40
- or_minutes: 15 / 30 / 45
Zustandsgrenze (obere Hälfte bzw. oberes Terzil, wie in der Zustands-Literatur), Länge der Vergleichshistorie (kurz/mittel/lang) und die Länge der Opening Range (15/30/45 Min, Standardbereich der ORB-Literatur um die Träger-Default 30). 18 Kombinationen, vorab festgelegt.
Backtest-Trials (mit Slippage 0.5 Pkt)
| Trial | n | WR | PF | PnL (Pkt) | Max DD | PF o. Slip |
|---|---|---|---|---|---|---|
| Träger pur (Gate aus)use_vola_gate=false | 118 | 30,5% | 1,06 | +207 | 737 | 1,09 |
| Gate: Range-Breite im oberen Teil (Rang >= 0,5, 20 Tage)use_vola_gate=true, vola_min_pctile=0.5, vola_lookback_days=20 | 34 | 41,2% | 1,51 | +419 | 277 | — |
| Gate: oberes Terzil (Rang >= 0,67, Lundström-Zustandsgrenze)use_vola_gate=true, vola_min_pctile=0.67, vola_lookback_days=20 | 12 | 58,3% | 3,28 | +434 | 139 | — |
Robustheit (bestes Trial)
PF-90%-Bereich über Handelstage
1.47 – 13.14
10 Handelstage. Einzeltrade-Intervall (zu eng, nur zum Vergleich): 1.18 – 14.06
Top-3-Trades am Gewinn
52%
PF bei +1.0 Pkt Slippage
3.04
Statistik-Härtung: Ertrag je Trade 36.15 Pkt; mit 80 % Sicherheit nachweisbar wäre erst ein Vorteil ab etwa 63.7 Pkt (Tagescluster berücksichtigt) — UNTERPOWERT: die Stichprobe ist zu klein, um diesen Wert von null zu trennen.
🎲 Placebo-Kontrolle (zeit-gejitterte Zufalls-Entries, gleiche Trade-Geometrie)
Kandidat 433.8 Pkt vs. Placebo-Median 463.3 / p95 854.3 Pkt · Perzentil-Rang 50%
Kandidat <= p80 der Placebos — von Zufalls-Timing nicht klar unterscheidbar
Placebo v2 (199 Zufalls-Replikationen, Auswahl des besten Trials in jeder wiederholt)
Kandidat in der Wiederholung: 383,3 Pkt. Kleines p heißt: Zufall erreicht das Ergebnis selten. Information, keine Hürde.
Zeitpunkt-Glück: Dieselben Trades, zufällig um bis zu 60 Minuten verschoben, hätten in 90 % der Fälle zwischen 365,5 und 2.917 Pkt erzielt (Median 632,8 Pkt). Der Kandidat erzielte 383,3 Pkt.
- Timing: p = 0,93 · Placebo-Bereich (5 bis 95 %) 365,5 bis 2.917 Pkt, Median 632,8 Pkt (199 Replikationen). Einstieg ±60 Minuten am selben Tag.
- Tageswahl: p = 0,32 · Placebo-Bereich (5 bis 95 %) -571,3 bis 1.117,2 Pkt, Median 194,1 Pkt (199 Replikationen). Dieselben Uhrzeiten an zufälligen Tagen.
Verschiebungstest
- 1 Minute später: 31,94 → 47,79 Pkt je Trade (t = 0,88, n = 12)
- 5 Minuten später: 31,94 → 32,31 Pkt je Trade (t = 0,02, n = 12)
Kein Hinweis darauf, dass der Vorteil am ersten Bar hängt (vorregistrierte Lesart: Original positiv, verzögert nicht positiv und t ≤ −2).
| Regime | n | PF | PnL |
|---|---|---|---|
| range_day | 12 | 3.28 | +434 |
Test-Timeline
Jeder weitere Test dieses Builds (Optimizer-Sweep, Forward-Monat, Re-Run) erscheint hier automatisch.
2026-10-08
Build + Backtest (Auto-Build-Agent)
Auf der Bauhistorie schnitt die Ausgangsstrategie mit Baustein besser ab. Ob der Unterschied größer ist als die zufällige Schwankung, wurde nicht gemessen; das entscheidet erst der gepaarte Vorwärtstest. (A/B: PF 1.06->3.28, PnL +207->+434) — Forward/Review noetig
2026-10-08
Gepaarter Forward-Vertrag eingefroren
2026-11 / 2026-12 / 2027-01 / 2027-02 · Baseline und Overlay je Monat genau einmal · ein Pass geht danach in die autonome Agentenprüfung für DEMO; keine Nutzerbestätigung nötig
2026-10-08
Nikkei-Gegenprobe (Transfer-Test, ATR-skaliert)
Nicht gelaufen: Die Nikkei-Gegenprobe ist seit dem 17.09.2026 abgeschaltet (Betreiberentscheid: nur DAX).