Versuchsdossier · alle Versuche im Kandidatenvergleich

Baustein: Cootner-Bandbruch-Respekt-Gate (reflektierende Barriere, Cootner 1962) auf VWAP-Band-Reversion

Robustheits-Score 42.5/100 · Anekdote
Baustein mildert Verlust (Träger bleibt unter PF 1, in-sample)2026-09-27Mean Reversion (Baustein: Regime-Block-Gate)Tier 1dax_vwap_cootner_break_gate🔒 Export (Admin)

Wer zahlt und warum?

Cootner (1962): Liquiditätsgebende Profis halten Reservationspreise um einen Wert-Anker (hier Session-VWAP, zugleich Ausführungs-Benchmark institutioneller VWAP-Mandate). Jenseits des Bandes VWAP ± 2σ liegen deshalb ihre Gegenaufträge. Sie verkaufen über dem Band und kaufen darunter, und der Kurs wird zum Anker reflektiert. Das ist der Edge des Trägers. Diese Aufträge sind endlich. Schließt der Kurs eine volle Stop-Distanz (1σ) JENSEITS der Barriere, sind sie aufgebraucht, oder die Profis haben ihren Reservationspreis wegen neuer Information selbst verschoben. Der Anker ist dann gesprungen, und die alte Barriere reflektiert nicht mehr. Wer dort erneut gegen die Bruchrichtung fadet, handelt gegen informierten Fluss (DSSW-/Feedback-Logik) und produziert die Verlust-Tails des Trägers. Erst die Rückkehr zum alten Anker belegt, dass der Bruch keine Wertverschiebung war.

Widerlegt, wenn: PF von Trial 2 < 0,95 bei n >= 150, ODER PF-Differenz Trial 2 minus Trial 1 < +0,05, ODER das Gate verwirft mehr als 40 % der Träger-Entries (dann filtert es pauschal und respektiert nicht gezielt Brüche).

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.

Prüfliste mit Einstufung und Beleg
PunktEinstufungBeleg
MotivationGab es vor dem Test eine ökonomische Begründung?JaMechanik und Vorhersage vor dem Test im Hypothesenregister (HYP-20260927-53d54551).
MehrfachtestsSind alle Versuche gezählt und wird dafür korrigiert?Teilweise3 Varianten vor dem Lauf im Trial Ledger registriert (trl_b1f9f89d1563). Das geltende Urteil korrigiert nicht für die Zahl der Versuche.
Daten und KostenSind Datenfenster, Datenstand und Kosten festgehalten?JaFenster 2026-03-17 bis 2026-09-06, Datenstand 2026-09-25, 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?NeinNur in-sample. Das Ergebnis dieses Baus ist kein Nachweis.
Stabilität über die ZeitHängt das Ergebnis an einem einzelnen Zeitraum?JaKein einzelner Monat trägt das Ergebnis (7 Monate); Aufteilung nach Marktphasen vorhanden.
KomplexitätIst die Regel sparsam genug für die Datenmenge?Teilweise3 echte Varianten, 4 variierte Parameter (break_margin_sigma, cootner_mode, release_sigma, reset_min_bars). Regel: höchstens 2 variierte Parameter und 3 Varianten.
ForschungskulturWird auch das Scheitern veröffentlicht?JaJeder Bau erscheint unabhängig vom Ergebnis, dieses Dossier eingeschlossen; die Placebo-Kontrolle steht im Dossier.

🧩 Baustein-Test — Variante von dax_vwap_band_reversion. Der Trial-Vergleich unten isoliert den Baustein-Beitrag (Trial 1 = Träger pur).

Hypothese & Vorregistrierung

Rationale: Ausstiegsquote unterschritten, kein brauchbarer Exit-Lab-Befund verfügbar: stop_exit 17 von 178 Versuchen = 9,6 % (< 25 %), aber die einzigen noch nicht verarbeiteten Exit-Lab-Träger sind paritätsgesperrt (dax_timely_orb bt.pnl_pts −503,8, dax_pivot_level_reversal −51,3; Fenster 13.–26.09.). Exit-Lab-Policies sind trägerspezifisch und nicht umleitbar; die übrigen Exit-Lab-Träger (Hull 21.09., Sigma-Breakout 23.09.) liegen in der Sperrfrist oder sind schon gebaut. Gebaut wird deshalb Fund 1 aus dem Klassik-Log 2026-09-21 (Cootner 1962, Tier 1, baubar: ja, bisher unverarbeitet) als Regime-Baustein. Träger ist dax_vwap_band_reversion, den der Fund als ersten Träger nennt. Er ist quellentreu, denn Cootners Band um einen langsam driftenden Anker entspricht direkt dem VWAP ± k·σ-Band. Vergleichslogik: Trial 1 Träger pur (cootner_mode=off) gegen Trial 2 Block-Gate und Trial 3 Anker-Reset. Exits sind in allen Armen identisch; das Gate wirkt nur auf Entries. E13: Die Bausteinart regime hat mit 39,4 % (13/33) die beste Trefferquote aller Bausteinarten. Die Familie Mean Reversion ist mit 14,3 % (6/42) schwach. Dagegen spricht, dass das Gate genau die dokumentierte Schwäche der Familie adressiert: das Faden echter Ausbrüche. Der Träger hat außerdem einen Placebo-Rang von 1,0, sein Entry-Timing trägt also, nur die Verlust-Tails nicht. Entscheidbarkeit (power_plan): Der Träger lieferte n=252 Trades in rund 5 Monaten, also etwa 50 Trades je Monat. Mit Gate erwarte ich rund 40 je Monat. Das ist die höchste Frequenz unter den offenen Kandidaten und ein gepaarter A/B auf identischen Tagen (Methodik 27.09., Verfahren 1). Portfolio-Empfehlung (indicator; Gap/Momentum/ORB) bewusst NICHT gefolgt: Der einzige offene Momentum-Kandidat (ITSM-Trias-Gate, Log 23.09.) sitzt auf einem Träger mit PF 0,34 und nur etwa 14 Trades je Monat, gefiltert eher 5–8, und wäre damit auf absehbare Zeit nicht entscheidbar. Mechanismus-Befunde: keiner ab M3, daher keine M-Begründung. Parität: dax_vwap_band_reversion steht nicht in live_bt_parity.json (fail-open). Sperrfrist: Der letzte Baustein auf diesem Träger stammt vom 29.08., es gibt also keine Sperre. Ehrlicher Vorbehalt: Der Träger-PF liegt unter 1 (0,83). Der A/B misst deshalb einen Delta-Beitrag, keinen Edge. Challenger gegen die verwandten Block-Gates dax_open_fade_trend_day_block (explizite Trend-Tag-Klassifikation) und dax_vwap_ap_thinwindow_gate (Tageszeit-Konzentration). Neu ist der Trigger: ein ereignisgetriebener, σ-skalierter Bandbruch um die Referenz.

Abweichungen von der Quelle: Cootner arbeitet mit Wochendaten auf US-Einzelaktien und liefert ein qualitatives Modell ohne Handelsregel. Übertragung: Anker = Session-VWAP des Trägers (Reset per Datum), reflektierende Barriere = band_k·σ_VWAP (Träger-Default 2σ). Als „entschieden“ gilt ein Bruch, wenn ein Close mindestens break_margin_sigma = 1,0σ jenseits der Barriere liegt. Die Marge ist nicht aus Cootner kalibriert, sondern bewusst an die Stop-Distanz des Trägers gekoppelt: Entschieden ist ein Bruch, der einen Barrieren-Fade ausgestoppt hätte. Bruch-Erkennung erst ab min_session_bars, damit das kleine Anfangs-σ keine Scheinbrüche erzeugt. Zwei im Fund genannte Varianten: block (Gegen-Fades sperren bis Close ≤/≥ VWAP ± release_sigma·σ, Default 0 = Rückkehr zum Anker) und reset (VWAP/σ ab der Bruch-Bar neu akkumulieren, Entries und neue Bruch-Erkennung erst nach reset_min_bars = 10 Bars am neuen Anker). Cootners Exit „Bandbruch gegen die Position“ wird absichtlich NICHT eingebaut: Die Exits bleiben eingefroren, sonst wäre der A/B kein reiner Regime-Test. Der Trend-Ast (200-MA-Regel) ist laut Cootner selbst kostenarbitriert und nicht Teil des Bausteins. Volumen-Vorbehalt des Trägers gilt weiter (event.volume = Tick-Count, bei 0 TWAP-Fallback). Keine Uhrzeiten im Code.

Quelle: https://archive.org/details/randomcharactero00coot

Vorregistriertes Optimizer-Grid (festgelegt VOR dem ersten Backtest — Anti-Overfitting)

  • break_margin_sigma: 0.5 / 1 / 1.5
  • release_sigma: 0 / 1 / 2

Vorregistriert vor jedem Ergebnis, 3 × 3 = 9 Kombinationen, cootner_mode fest auf block (Default). Alle Träger-Parameter sind eingefroren (is_optimizable=false), damit der Baustein-Delta sauber bleibt. break_margin_sigma: halbe, volle und anderthalbfache Träger-Stop-Distanz. Das prüft, ob „entschieden“ an der Stop-Distanz hängt oder robust ist. Cootner nennt keine Zahl, deshalb nur eine grobe Stufung. release_sigma: 0 = Rückkehr zum Anker (Cootner-streng), 1σ = halb zurück ins Band, 2σ = Rückkehr innerhalb der alten Barriere (Barriere gilt wieder, sobald der Kurs ins Band zurückfällt). Das sind die drei natürlichen Lesarten von „die Barriere reflektiert wieder“. Alle Kombinationen erfüllen release_sigma < band_k + break_margin_sigma.

Run-ManifestEngine 69b0c2e82ef40e53 (78 Dateien)Fenster 2026-03-17 – 2026-09-06Datenstand 2026-09-25Slippage 0.5 PktTrials vorregistriert: 3 (trl_b1f9f89d1563)Strategie-Bytes e2e3b2f87a2aa62e…

Backtest-Trials (mit Slippage 0.5 Pkt)

TrialnWRPFPnL (Pkt)Max DDPF o. Slip
Träger pur (dax_vwap_band_reversion-Default, Cootner-Gate aus)cootner_mode=off35031,4%0,90-7841.9950,94
Cootner Bandbruch-Respekt: Gegen-Fades sperren bis Rückkehr zum Anker (Quellen-Default, Marge 1σ)cootner_mode=block, break_margin_sigma=1, release_sigma=030130,2%0,81-1.3352.208—
Cootner Anker-Sprung: VWAP-Anker ab Bruch-Bar neu setzen (Marge 1σ, 10 Bars Warmup)cootner_mode=reset, break_margin_sigma=1, reset_min_bars=1038034,7%0,96-2691.335—

Robustheit (bestes Trial)

PF-90%-Bereich über Handelstage

0.77 – 1.16

119 Handelstage. Einzeltrade-Intervall (zu eng, nur zum Vergleich): 0.77 – 1.16

Top-3-Trades am Gewinn

7%

PF bei +1.0 Pkt Slippage

0.87

Statistik-Härtung: Ertrag je Trade -0.71 Pkt; mit 80 % Sicherheit nachweisbar wäre erst ein Vorteil ab etwa 7.1 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 -268.5 Pkt vs. Placebo-Median -3702.8 / p95 -2684.1 Pkt · Perzentil-Rang 100%

Kandidat > p95 der Placebos — Timing traegt echten Beitrag

2026-03: +2862026-04: -3632026-05: -2782026-06: -3072026-07: +3112026-08: +592026-09: +24
RegimenPFPnL
trend_up_day133.52+489
trend_down_day44.13+95
mixed_day60.03-192
volatile_day270.56-197
range_day3300.93-462

Test-Timeline

Jeder weitere Test dieses Builds (Optimizer-Sweep, Forward-Monat, Re-Run) erscheint hier automatisch.

  1. 2026-09-27

    Build + Backtest (Auto-Build-Agent)

    Der Baustein verringerte den Verlust der Ausgangsstrategie auf der Bauhistorie, sie bleibt aber auch mit ihm verlustbringend. (A/B: PF 0.90->0.96, PnL -784->-268) — Forward/Review noetig

  2. 2026-09-27

    Nikkei-Gegenprobe (Transfer-Test, ATR-skaliert)

    Nicht gelaufen: Die Nikkei-Gegenprobe ist seit dem 17.09.2026 abgeschaltet (Betreiberentscheid: nur DAX).