Entry-Raum-Gate zurück auf 0,6 (User: zu viel WARTEN)

Am selben Tag von 1,0 auf 0,6 zurück — gemischtes Regime (M15/M30 ab, M5/H1
auf) erzeugte gefühlt zu viele WARTEN-Phasen. 0,6 vs 1,0 = Frequenz-gegen-Edge,
gemessen 1,0 netto besser; User priorisiert Frequenz.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Axel Hocks
2026-07-24 22:21:59 +02:00
co-authored by Claude Opus 4.8
parent d61c4a3634
commit c3295c6a82
3 changed files with 14 additions and 11 deletions
+12 -9
View File
@@ -222,9 +222,9 @@ dort bereits nachvalidiert, ØR +0,305.) **Eine** Oberfläche:
= späterer Einstieg, Anfang des Moves verschenkt). ⚠ Ein-Stichproben-Lauf hatte = späterer Einstieg, Anfang des Moves verschenkt). ⚠ Ein-Stichproben-Lauf hatte
„1,0 besser" gezeigt — Split-Prüfung drehte das (B2!). Nebeneffekt: kürzere „1,0 besser" gezeigt — Split-Prüfung drehte das (B2!). Nebeneffekt: kürzere
„warte auf Breakout"-Phasen. „warte auf Breakout"-Phasen.
- **Entry-Raum-Gate (AKTIV, `[trading] entry_room_atr=1.0` — 0,6→1,0 am - **Entry-Raum-Gate (AKTIV, `[trading] entry_room_atr=0.6` — kurz 1,0, am selben
2026-07-24, gemessen `backtest_entryroom.py` 2026-07-16):** Richtungssignal → Tag zurück auf 0,6, s. u.; gemessen `backtest_entryroom.py` 2026-07-16):**
WARTEN, wenn das Richtungssignal → WARTEN, wenn das
**Gegenlevel** (M5-Pivot in Trade-Richtung, trainingsgleich zum S/R-Auto-Close) **Gegenlevel** (M5-Pivot in Trade-Richtung, trainingsgleich zum S/R-Auto-Close)
näher als X×ATR_M5 liegt. Befund (seq. Sim MIT S/R-Close-Exit, Echtkosten, näher als X×ATR_M5 liegt. Befund (seq. Sim MIT S/R-Close-Exit, Echtkosten,
2 Halbjahre): **monoton in BEIDEN Hälften** — Raum <0,3: ØR 0,119/0,067 2 Halbjahre): **monoton in BEIDEN Hälften** — Raum <0,3: ØR 0,119/0,067
@@ -236,12 +236,15 @@ dort bereits nachvalidiert, ØR +0,305.) **Eine** Oberfläche:
4 der 5 sr_closes desselben Tages waren dagegen RETTER — Exit NICHT anfassen). 4 der 5 sr_closes desselben Tages waren dagegen RETTER — Exit NICHT anfassen).
Umsetzung: `wave._room_gate` (in `refresh_market` VOR `_confirm_breakout`; Umsetzung: `wave._room_gate` (in `refresh_market` VOR `_confirm_breakout`;
`set_entry_room`, Grund „kein Raum: Widerstand X nur 0,4×ATR entfernt …"). `set_entry_room`, Grund „kein Raum: Widerstand X nur 0,4×ATR entfernt …").
Backtests via `_build` bleiben gate-frei (kein pb_levels-State). **0,6→1,0 Backtests via `_build` bleiben gate-frei (kein pb_levels-State). **0,6→1,0→0,6
ausgerollt (2026-07-24, „baue alles ein"):** 1,0 war von Anfang an in BEIDEN (2026-07-24):** kurz auf 1,0 erhöht (gemessen in BEIDEN Hälften besser, H1 +415/
Hälften besser (H1 +415/H2 +266 R); der konservative 0,6-Start diente nur der H2 +266 R; Live-Kurzcheck: S/R-Closes seit 16.07. +925 € bei nur 28 % Klein-Closes)
Frequenz (~¾ der Signale gefiltert → deutlich mehr WARTEN). Live-Kurzcheck vor — aber der User empfand im gemischten Regime (M15/M30 ab, M5/H1 auf) **zu viel
dem Rollout: S/R-Closes seit 16.07. +925 € bei nur noch 28 % Klein-Closes (<5 €) WARTEN** und stellte noch am selben Tag auf 0,6 zurück. ⚠ Lehr-Fall dabei
— Gate wirkt wie gemessen. ⚠ **P(break)-Freigabe des Gates = VERWORFEN (gemessen festgehalten: „kein LONG trotz steigendem Kurs" lag NICHT am Raum-Gate, sondern am
**M30-Gegen-Trend-Filter** (M30 ab → LONG unterdrückt, gewollt); das Raum-Gate
mutete nur den daraus resultierenden SHORT (Support 0,09×ATR entfernt). 0,6 vs 1,0
ist reiner Frequenz-gegen-Edge-Kompromiss (gemessen 1,0 netto besser). ⚠ **P(break)-Freigabe des Gates = VERWORFEN (gemessen
`backtest_entryroom_pbreak.py`, 2026-07-24):** Idee war, Raum<1,0-Signale `backtest_entryroom_pbreak.py`, 2026-07-24):** Idee war, Raum<1,0-Signale
durchzulassen, wenn P(break)@Entry hoch (Level bricht eh → Ertrag nicht gedeckelt). durchzulassen, wenn P(break)@Entry hoch (Level bricht eh → Ertrag nicht gedeckelt).
Das Modell TRENNT zwar auch am Entry (Freigabe-Gruppen klar besser als der Rest), Das Modell TRENNT zwar auch am Entry (Freigabe-Gruppen klar besser als der Rest),
+1 -1
View File
@@ -317,7 +317,7 @@ DEFAULT_CONFIG = {
# 1,0 war von Anfang an in BEIDEN Hälften besser (H1 +415/H2 +266 R), Start # 1,0 war von Anfang an in BEIDEN Hälften besser (H1 +415/H2 +266 R), Start
# 0,6 war nur die konservative Stufe (1,0 filtert ~¾ der Signale → deutlich # 0,6 war nur die konservative Stufe (1,0 filtert ~¾ der Signale → deutlich
# mehr WARTEN-Phasen; gemessen trotzdem mehr Gesamtertrag). # mehr WARTEN-Phasen; gemessen trotzdem mehr Gesamtertrag).
"entry_room_atr": "1.0", "entry_room_atr": "0.6",
# Tageszeit-Gate: Komma-Liste der Stunden (Berlin), zu denen die Wellen- # Tageszeit-Gate: Komma-Liste der Stunden (Berlin), zu denen die Wellen-
# Empfehlung WARTEN erzwingt. **Gemessener Default = 07,12,16** (Nacht- # Empfehlung WARTEN erzwingt. **Gemessener Default = 07,12,16** (Nacht-
# Kostenfalle + 12/16 Uhr beidhälftig negativ, `backtest_hourly_split.py`). # Kostenfalle + 12/16 Uhr beidhälftig negativ, `backtest_hourly_split.py`).
+1 -1
View File
@@ -30,7 +30,7 @@ tf_select = heuristic
tf_min = M5 tf_min = M5
tf_max = M30 tf_max = M30
breakout_k = 0.3 breakout_k = 0.3
entry_room_atr = 1.0 entry_room_atr = 0.6
dead_hours = dead_hours =
auto_squeeze = true auto_squeeze = true
auto_squeeze_skip_night = true auto_squeeze_skip_night = true