Gewinn-Close-Automatik wieder AN: 3% Margin beim Öffnen

sr_close_min_gain_pct=3.0 (User-Vorgabe; Notfall-Stop-Automatik bleibt aus).
Retry-sichere Armierung unverändert.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Axel Hocks
2026-07-24 20:21:17 +02:00
co-authored by Claude Opus 4.8
parent 0700baa5aa
commit c3c6a8ce5f
3 changed files with 19 additions and 16 deletions
+12 -11
View File
@@ -595,17 +595,18 @@ dort bereits nachvalidiert, ØR +0,305.) **Eine** Oberfläche:
`set_sr_close_min_gain` · Snapshot `sr_close_min_gain`): unter der EUR-Schwelle `set_sr_close_min_gain` · Snapshot `sr_close_min_gain`): unter der EUR-Schwelle
wird am Level NICHT geschlossen. ⚠ Gemessen ist OHNE besser (Verworfen-Eintrag) — wird am Level NICHT geschlossen. ⚠ Gemessen ist OHNE besser (Verworfen-Eintrag) —
Opt-in auf User-Wunsch, UI-Status warnt. **Automatisch auf X % des Einsatzes Opt-in auf User-Wunsch, UI-Status warnt. **Automatisch auf X % des Einsatzes
(`[trading] sr_close_min_gain_pct`) — Stand 2026-07-24 AUF 0 = AUS (User-Vorgabe (`[trading] sr_close_min_gain_pct=3.0`) — Stand 2026-07-24 abends wieder AN
„gewinn close … nicht setzen beim Eröffnen"; war kurz 1,0→3,0 am 2026-07-23).** (Verlauf: 1,0→3,0 am 07-23 · 0 am 07-24 früh „nichts beim Öffnen setzen" ·
Bei `pct>0` wird bei JEDER echt neuen Position (nicht beim Wiedererkennen nach 3,0 am 07-24 abends auf User-Wunsch zurück — gilt NUR für den Gewinn-Close, der
Neustart) `sr_close_min_gain` frisch auf `pct% × Margin dieser Position` gesetzt Auto-Notfall-Stop bleibt AUS).** Bei `pct>0` wird bei JEDER echt neuen Position
(`_check_auto_close`, Margin aus `trader.refresh()` im selben `_pos_loop`-Tick, (nicht beim Wiedererkennen nach Neustart) `sr_close_min_gain` frisch auf
persistiert via `_save_runtime_state`, Log „Gewinn-Close armiert … +X (N% Margin `pct% × Margin dieser Position` gesetzt (`_check_auto_close`, retry-sicher via
Y)"). Bei `pct=0` (aktuell) wird beim Öffnen NICHTS gesetzt — es bleibt der `_sr_close_min_gain_armed_ticket` — Margin aus `trader.refresh()` im selben
manuell im UI gesetzte/gemerkte `sr_close_min_gain` (Default 0). ⚠ Beim Abschalten `_pos_loop`-Tick, jeden Tick erneut versucht bis Margin>0; persistiert via
2026-07-24 auch den persistierten Alt-Wert in `runtime_state.json` auf 0 gesetzt `_save_runtime_state`, Log „Gewinn-Close armiert … +X (N% Margin Y)"). Bei `pct=0`
(stand auf 17,17 vom letzten 3%-Auto-Set), sonst hätte ihn jeder neue Trade als wird beim Öffnen NICHTS gesetzt — dann bleibt der manuell im UI gesetzte/gemerkte
festen Mindestgewinn geerbt. Mechanik im Code erhalten (reaktivierbar via ini). `sr_close_min_gain` maßgeblich (beim 0-Stellen am 07-24 auch den persistierten
Alt-Wert 17,17 in `runtime_state.json` genullt — Erb-Falle).
**Gate verifiziert (2026-07-23, User-Nachfrage „darf nicht schließen bevor der **Gate verifiziert (2026-07-23, User-Nachfrage „darf nicht schließen bevor der
Wert erreicht wurde"):** `_check_sr_close` prüft `pnl < sr_close_min_gain → return` Wert erreicht wurde"):** `_check_sr_close` prüft `pnl < sr_close_min_gain → return`
**bevor** `_sr_close_hint`/`trader.close` überhaupt aufgerufen werden — isoliert **bevor** `_sr_close_hint`/`trader.close` überhaupt aufgerufen werden — isoliert
+6 -4
View File
@@ -288,10 +288,12 @@ DEFAULT_CONFIG = {
# Sektion: verliert monoton in beiden Hälften) — bewusster User-Opt-in. # Sektion: verliert monoton in beiden Hälften) — bewusster User-Opt-in.
"sr_close_min_gain": "0", "sr_close_min_gain": "0",
# Gewinn-Close automatisch auf X % des EINSATZES (Margin) der jeweiligen Position # Gewinn-Close automatisch auf X % des EINSATZES (Margin) der jeweiligen Position
# setzen, sobald sie eröffnet wird. 0 = AUS (User-Vorgabe 2026-07-24: NICHTS beim # setzen, sobald sie eröffnet wird. Verlauf: 1,0→3,0 (2026-07-23) → 0 (2026-07-24
# Öffnen setzen — der manuell gesetzte/gemerkte `sr_close_min_gain` bleibt dann # früh, „nichts beim Öffnen setzen") → **3,0 wieder AN (2026-07-24 abends,
# maßgeblich). War kurz 1,0→3,0 (2026-07-23), auf User-Wunsch wieder 0. # User-Vorgabe — gilt NUR für den Gewinn-Close; der Notfall-Stop
"sr_close_min_gain_pct": "0", # `auto_emergency_margin_pct` bleibt 0/aus)**. 0 = aus (dann bleibt der manuell
# gesetzte/gemerkte `sr_close_min_gain` maßgeblich).
"sr_close_min_gain_pct": "3.0",
# Auto-Notfall-Stop als % der Balance beim Öffnen (skaliert mit dem Konto). # Auto-Notfall-Stop als % der Balance beim Öffnen (skaliert mit dem Konto).
# >0 → Stop = pct% × Balance; 0 = aus. ⚠ Nur zusammen mit risk_pct>0 als # >0 → Stop = pct% × Balance; 0 = aus. ⚠ Nur zusammen mit risk_pct>0 als
# GAP-NETZ sinnvoll (dann pct ≈ 2× risk_pct → feuert nur bei Slippage/Gap # GAP-NETZ sinnvoll (dann pct ≈ 2× risk_pct → feuert nur bei Slippage/Gap
+1 -1
View File
@@ -43,7 +43,7 @@ auto_sr_close = true
sr_close_pbreak = 0.55 sr_close_pbreak = 0.55
export_mql5_levels = true export_mql5_levels = true
sr_close_min_gain = 0 sr_close_min_gain = 0
sr_close_min_gain_pct = 0 sr_close_min_gain_pct = 3.0
startup_close_grace_s = 60 startup_close_grace_s = 60
[gemini] [gemini]