Versuchsdossier · alle Versuche im Kandidatenvergleich
DAX Intraday Time-Series Momentum (ITSM, Li/Sakkas/Urquhart 2022)
Robustheits-Score 19.6/100 · AnekdoteWer zahlt und warum?
Für diesen Bau ist keine Mechanik vor dem Test registriert. Er stammt aus der Zeit vor dem Hypothesenregister (03.09.2026) oder kam ohne Vorhersage aus.
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? | Nein | Bau ohne registrierte Vorhersage. |
| MehrfachtestsSind alle Versuche gezählt und wird dafür korrigiert? | Nein | Keine Registrierung im Trial Ledger nachgewiesen. |
| Daten und KostenSind Datenfenster, Datenstand und Kosten festgehalten? | Nein | Kein Run-Manifest. |
| Prüfung außerhalb der StichprobeWurde auf Daten geprüft, die beim Bau nicht bekannt waren? | Nein | Nur in-sample. Das Ergebnis dieses Baus ist kein Nachweis. |
| Stabilität über die ZeitHängt das Ergebnis an einem einzelnen Zeitraum? | Ja | Kein einzelner Monat trägt das Ergebnis (4 Monate); Aufteilung nach Marktphasen vorhanden. |
| KomplexitätIst die Regel sparsam genug für die Datenmenge? | Ja | 3 echte Varianten, 2 variierte Parameter (close_anchor_minute_of_day, vol_regime_multiplier). 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. |
Hypothese & Vorregistrierung
Rationale: Li/Sakkas/Urquhart (Journal of Financial Markets 2022) ist der einzige peer-reviewte Vertreter der Intraday-Momentum-Familie mit echtem Out-of-Sample ueber 16 Maerkte (inkl. europaeischer Indizes) und adressiert damit die Uebertragbarkeitsfrage, die alle SPY-only-Funde (Zarattini, Gao) offenliessen. Kernhypothese: Die fruehe Tagesrendite (erste Halbstunde) prognostiziert das Vorzeichen der letzten Halbstunde vor dem Cash-Close (Underreaction + Close-Flows); der Effekt ist laut Quelle bei hoher Vola staerker. Tritt als Challenger gegen den Incumbent dax_time_of_day_momentum an: gleiche Time-of-Day/Trend-Familie, aber substanziell anderes Regelwerk (ITSM-Praediktor erste->letzte Halbstunde + Vola-Regime-Filter + Xetra-Close-Anker statt kumulative Drift-Fortschreibung bis 16:00).
Abweichungen von der Quelle: Close-Anker auf DAX-Xetra-Schluss 17:30 gesetzt (close_anchor_minute_of_day=1050, Baseline-Default), da der relevante Schlussauktions-Flow dort sitzt; 20:00-Hard-Cut-Anker als Trial/Grid-Variante. Halbstunden-Raster der Quelle auf 1m-Bars uebertragen (predictor_window_min=30). Vola-Regime ist in der Quelle ein Befund, kein Default-Regelteil -> Baseline unkonditioniert (vol_regime_multiplier=0), Filter als eigene Trial-/Grid-Achse (Median-basiert ueber Vortage, kein Lookahead). Quellen-Zahlen sind brutto; hier laeuft der reale Kosten-/Spread-Layer des Runners. Initial-SL als Katastrophen-Guard 15 Pkt (min 10), keine TP (Glattstellung zum Anker).
Quelle: https://centaur.reading.ac.uk/95566/1/Accepted-Version.pdf
Vorregistriertes Optimizer-Grid (festgelegt VOR dem ersten Backtest — Anti-Overfitting)
- close_anchor_minute_of_day: 1050 / 1200
- vol_regime_multiplier: 0 / 1 / 1.2
- predictor_window_min: 30 / 60
Drei literaturgestuetzte Achsen, 2x3x2 = 12 Kombinationen (<= 24). (1) close_anchor_minute_of_day {17:30 Xetra-Close vs 20:00 Hard-Cut}: die zentrale, vom Research-Log markierte Design-Entscheidung — das Paper ankert auf den Cash-Close, der DAX-CFD laeuft bis 20:00; testet die Hypothese 'Xetra-Close-Fenster schlaegt 20:00-Fenster, weil der Flow dort sitzt'. (2) vol_regime_multiplier {aus, >=Median, >=1.2xMedian}: die Quelle nennt die Vola-Konditionierung als Haupthebel ('Effekt staerker bei hoher Vola'); 0=unkonditioniert (Quellen-Default), 1.0=oberes Vola-Drittel-Naeherung, 1.2=strenger. (3) predictor_window_min {30, 60}: Halbstunde der Quelle (30) vs erste Stunde (60) als Praediktor-Robustheitscheck. Alle Werte innerhalb der MANIFEST-min/max und is_optimizable=true; kein exotisches Mining.
Backtest-Trials (mit Slippage 0.5 Pkt)
| Trial | n | WR | PF | PnL (Pkt) | Max DD | PF o. Slip |
|---|---|---|---|---|---|---|
| Baseline (Quellen-Default: Xetra-Close-Anker, unkonditioniert) | 57 | 12,3% | 0,34 | -534 | 560 | 0,38 |
| Vola-konditioniert (oberes Vola-Drittel)vol_regime_multiplier=1.2 | 30 | 6,7% | 0,24 | -347 | 435 | — |
| 20:00-Hard-Cut-Anker statt Xetra-Closeclose_anchor_minute_of_day=1200 | 0 | 0,0% | — | +0 | 0 | — |
Robustheit (bestes Trial)
PF-90%-Bereich über Handelstage
—
Kein Tagesintervall gespeichert. Einzeltrade-Intervall (zu eng, nur zum Vergleich): 0.13 – 0.63
Top-3-Trades am Gewinn
62%
PF bei +1.0 Pkt Slippage
0.29
| Regime | n | PF | PnL |
|---|---|---|---|
| trend_up_day | 12 | 0.98 | -3 |
| trend_down_day | 6 | 0 | -82 |
| mixed_day | 7 | 0 | -114 |
| range_day | 32 | 0.26 | -335 |
Baustein-Varianten dieses Trägers
Test-Timeline
Jeder weitere Test dieses Builds (Optimizer-Sweep, Forward-Monat, Re-Run) erscheint hier automatisch.
2026-06-17
Build + Backtest (Auto-Build-Agent)
Der Test fand keinen Vorteil gegenüber Zufall und Kosten. Ausgeschlossen ist ein Vorteil damit nicht: Bei der vorhandenen Stichprobe blieben kleine Vorteile unentdeckt (Power-Hinweis im Dossier).
2026-07-03
Re-Run nach Warmup-Fix (BT jetzt live-treu ab 08:00)
Ergebnis oben ist der Post-Fix-Stand; Pre-Fix-Werte im Archiv.