Auto-Squeeze-Nachtsperre von 0-7 auf 3-6 Uhr verkuerzt (User-Vorgabe)
Gemessen (backtest_cost_gate.py, Teil 2): es gibt KEINE toten Stunden - alle 24 Stunden sind in beiden Halbjahren positiv, keine ist beidhaelftig negativ. Std 0 ist sogar die staerkste des Tages (OeR +1,48/+1,51) und lag im alten Gate. Jedes Fenster kostet also Ertrag; die Sperre kauft ausschliesslich Beaufsichtigungs-Ruhe. Gewaehlt wurde deshalb nach PREIS, nicht nach Edge: 3-6 ist das guenstigste Fenster mit noch >=4 h Schutz (SigmaR -12,5/-62,9 gegen -42,4/-242,6 bei 0-7 = ~27 %). Freigegeben: 0, 1, 2, 7 Uhr. Die 4-h-Untergrenze ist gesetzt, nicht gemessen. Umsetzung: neues [trading] auto_squeeze_night_hours (Default 3,4,5,6, leer = aus), genutzt von _check_auto_squeeze und _check_auto_signal. _SQUEEZE_NIGHT bleibt als STATISTISCHE Nacht-Definition fuer Entry-Checkliste und B4-Monitor - dort gilt die Kostenfalle weiter und der Altdaten-Vergleich bleibt stabil. 7 Parse-Faelle getestet (Default, fehlender Schluessel, leer, Muell, Rueckwaerts-Kompatibilitaet). Live verifiziert am NEUEN Snapshot-Feld squeeze_night_hours = 3,4,5,6 und am Startup-Log; genau eine Instanz auf 8000. Offen und als Reminder hinterlegt: der Backtest modelliert keine Slippage, und die freigegebenen Stunden liegen in der duennsten Liquiditaet. Nach 15 Squeeze-Trades aus 0/1/2/7 Uhr gegen die Erwartung pruefen. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
cdee6eced7
commit
1c9bb34095
@@ -145,6 +145,27 @@ CHECKS = [
|
||||
"→ `auto_squeeze=false` (B5-Rückbau, kein Ego). Sonst weiterlaufen "
|
||||
"lassen. Zahlen: /api/squeeze_monitor bzw. Statistik-Tab.",
|
||||
},
|
||||
{
|
||||
"key": "night_window_0127",
|
||||
"title": "Nacht-Fenster 3–6: tragen die freigegebenen Stunden 0/1/2/7?",
|
||||
"why": "Am 05.08. wurde die Auto-Squeeze-Nachtsperre von 0–7 auf 3–6 verkürzt "
|
||||
"(`backtest_cost_gate.py`: keine Nachtstunde ist beidhälftig negativ, "
|
||||
"das alte Gate kostete ΣR −42/−243 R). Der Backtest modelliert aber "
|
||||
"KEINE Slippage — und genau die freigegebenen Stunden liegen in der "
|
||||
"dünnsten Liquidität (gemessener Tail: 0,75×ATR über den Stop hinaus). "
|
||||
"Das ist die einzige offene Bedrohung des Befunds, und sie lässt sich "
|
||||
"nur live prüfen.",
|
||||
"have": lambda: _q("SELECT COUNT(*) FROM trades WHERE setup LIKE 'SQUEEZE%' "
|
||||
"AND pnl IS NOT NULL AND entry_time >= "
|
||||
"strftime('%s','2026-08-05') AND "
|
||||
"CAST(strftime('%H', entry_time, 'unixepoch', 'localtime') "
|
||||
"AS INTEGER) IN (0,1,2,7)"),
|
||||
"need": 15, "unit": "Squeeze-Trades aus 0/1/2/7 Uhr seit 05.08.",
|
||||
"cmd": "Erwartung aus dem Backtest: diese Stunden gehören zu den besseren "
|
||||
"(Std 0 ist die STÄRKSTE des Tages, ØR +1,48/+1,51). Liegen sie live "
|
||||
"deutlich darunter oder im Minus, war die Slippage der Grund → "
|
||||
"`auto_squeeze_night_hours = 0,1,2,3,4,5,6,7` zurücksetzen.",
|
||||
},
|
||||
# (erledigt 2026-08-04: „M30-Level-Umstellung live gegenprüfen" — Ertrag JE LOT
|
||||
# +17,53 → +36,92 €, Ø-Move je Trade 0,202 → 0,427 $, also verdoppelt wie im
|
||||
# Backtest erwartet. ⚠ Normierung war entscheidend: unnormiert sah HEUTE wie der
|
||||
|
||||
Reference in New Issue
Block a user