From c1994b369a5b8db393f78a0b33e21790a7c9877f Mon Sep 17 00:00:00 2001 From: Axel Hocks Date: Fri, 24 Jul 2026 20:03:13 +0200 Subject: [PATCH] =?UTF-8?q?Nacht-Guard=20f=C3=BCr=20Auto-Squeeze=20wieder?= =?UTF-8?q?=20AN=20(0=E2=80=937=20Uhr=20keine=20Trades)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit auto_squeeze_skip_night=true (User-Vorgabe): der Bot öffnet nachts keine autonomen Squeeze-Trades mehr — löst „muss automatisch schließen wenn ich nicht da bin" durch Nicht-Öffnen, und ist gemessen ohnehin unrentabel (Nacht-Spread/ATR 0,32–0,50, beide Halbjahre negativ). Tagsüber bleibt der Auto-Close-Stack (Broker-SL + Trailing + Time-Stop + S/R-Close). Co-Authored-By: Claude Opus 4.8 --- CLAUDE.md | 26 +++++++++++++++----------- core/config.py | 2 +- oil_widget_config.ini.example | 2 +- 3 files changed, 17 insertions(+), 13 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index df567a2..433f337 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -706,17 +706,21 @@ dort bereits nachvalidiert, ØR +0,305.) **Eine** Oberfläche: Trailing an, Emergency-Stop armiert 2 % beim nächsten Tick), Log `🚀 AUTO-SQUEEZE- ENTRY` + Telegram + Fehlschlag-Push. Snapshot `auto_squeeze`/`squeeze_entry_count`; Toggle `POST /api/autosqueeze` (`set_auto_squeeze`) = Dashboard-Button **🚀 BRK** - (blau=AN, ersetzt den alten Dry-Run-AUTO-Button). **Dead-Hour-Guard = AUS - (User-Vorgabe 2026-07-17, `[trading] auto_squeeze_skip_night=false`):** der Bot - eröffnet jetzt **auch nachts 0–7 Uhr** auf Squeeze-Ausbrüche. Der ursprüngliche - Guard (`_SQUEEZE_NIGHT=(0..7)`, `_squeeze_skip_night`) bleibt **dormant/reaktivierbar** - (true = wieder an). Warum raus: das live-Verlust-Argument (3 Nacht-Squeezes −46 €) - war **emergency-getrieben** und mit dem Notfall-Stop-Ausbau moot; der **gemessene** - Nacht-Kosten-Befund (`backtest_realcosts.py`, Spread÷Nacht-ATR 0,32–0,50×ATR, beide - Halbjahre negativ) bleibt aber gültig → **Nacht-Squeezes sind unbelegt, per B4- - Wochenmonitor beobachten**; tragen sie nicht, Guard wieder `=true`. ⚠ Erste echte - Autonomie, jetzt rund um die Uhr — B4-Monitor gegen +0,14…+0,23; driftet es → Button - aus / `auto_squeeze=false` / Guard zurück. + (blau=AN, ersetzt den alten Dry-Run-AUTO-Button). **Dead-Hour-Guard = AN + (User-Vorgabe 2026-07-24, `[trading] auto_squeeze_skip_night=true`):** der Bot + eröffnet **nachts 0–7 Uhr KEINE** Squeeze-Trades (`_SQUEEZE_NIGHT=(0..7)`, + `_squeeze_skip_night` → `_check_auto_squeeze` return; kein Entry UND kein Reverse). + Doppelt begründet: (1) **gemessen** unrentabel (`backtest_realcosts.py`, Spread÷Nacht- + ATR 0,32–0,50×ATR, beide Halbjahre negativ = Kostenfalle) und (2) **kein Trade + soll unbeaufsichtigt nachts feuern, während der User schläft** — Auslöser: „müsste + automatisch schließen wenn ich nicht da bin, z. B. nachts". Der Guard LÖST das, + indem er den Trade gar nicht erst öffnet; tagsüber (User eher erreichbar) läuft der + bestehende Auto-Close-Stack (Broker-SL 2×ATR broker-seitig + Trailing + Time-Stop + + S/R-Close). ⚠ Historie: bis 2026-07-17 war der Guard AUS (User wollte rund um die + Uhr), am 2026-07-24 auf User-Wunsch **zurück auf AN**. `=false` schaltet ihn wieder + aus (dann auch nachts, unbeaufsichtigt). Einen engen Schutz-%-Stop NUR für Squeeze + wurde bewusst NICHT gebaut (enger %-Stop unter Margin-Sizing wird vom Squeeze- + Rauschen ausgelöst, −48,94-€-Tag — der Squeeze braucht Raum). **Stop-&-Reverse = AUS (Default, `[trading] auto_squeeze_reverse=false`, `_squeeze_reverse`; User-Vorgabe 2026-07-17):** War kurz scharf, dann abgeschaltet — nur der **flat-Entry ist gemessen-validiert**, der Reverse ist unbelegt, verdoppelt diff --git a/core/config.py b/core/config.py index 33a25e2..1b843de 100644 --- a/core/config.py +++ b/core/config.py @@ -339,7 +339,7 @@ DEFAULT_CONFIG = { # (`backtest_realcosts.py`, Spread÷Nacht-ATR 0,32–0,50) bleibt gültig → per # B4-Wochenmonitor prüfen, ob Nacht-Squeezes tragen. Code (`_SQUEEZE_NIGHT`, # `_squeeze_skip_night`) bleibt dormant/reaktivierbar (true = wieder an). - "auto_squeeze_skip_night": "false", + "auto_squeeze_skip_night": "true", }, # (Der frühere `[setups]`-Block — Per-Setup-Toggles für den Dry-Run-Auto-Trader — # ist entfernt, 2026-07-23: verwaist seit dem Entfernen des Dry-Run-Traders, wurde diff --git a/oil_widget_config.ini.example b/oil_widget_config.ini.example index aacd008..7823df1 100644 --- a/oil_widget_config.ini.example +++ b/oil_widget_config.ini.example @@ -33,7 +33,7 @@ breakout_k = 0.3 entry_room_atr = 0.6 dead_hours = auto_squeeze = true -auto_squeeze_skip_night = false +auto_squeeze_skip_night = true auto_squeeze_reverse = false auto_emergency_loss = 0 auto_emergency_pct = 0