Auto-Signal-Entry (SIG) komplett entfernt inkl. Button (v=166)
User-Entscheidung. Der Pfad war seit 01.08. aus und auf BEIDEN Ausfuehrungs-Achsen gemessen negativ: Markt-Einstieg in allen 8 Feldern, ruhende Order mit Touch-Fill -0,392/-0,338 in allen 6 und damit sogar schlechter als Markt. Die +0,35/+0,32 aus backtest_auto_signal_v3.py galten in Variante B (Fill beim Close-Bruch) und waren Look-ahead - Aufschlag 0,77-0,85 R. Ursache strukturell: das Bestaetigungs-Level _pend WANDERT. Nebenbei entfaellt der offene Churn-Defekt (4x setzen/stornieren in 76 s bei identischem Level, gefunden 06.08., nie behoben). Entfernt: _check_auto_signal, set_auto_signal, der Signal-Zweig in _pending_ziel, /api/autosignal, Button + Handler, vier Snapshot-Felder, die auto_signal*/signal_pending_entry-Leser. Geblieben: AUTOSIG_*-Trades in der DB, die Backtests, wave_rec.breakout (speist block_reason) und _confirm_breakout selbst. Sicherung: .removed_backup/auto_signal_2026-08-12.py + Git. Das Risiko war nicht SIG, sondern der GETEILTE Pending-Manager (zwei getrennte Manager wuerden sich gegenseitig stornieren). Deshalb wurde das Squeeze-Verhalten VOR dem Eingriff in tests/test_pending_ziel.py festgenagelt - 7 Tests, vorher gruen, laufen unveraendert weiter. Zwei Folgefehler fing die Pruefkette sofort: ruff F821 ein verwaistes _t, py_compile ein dangling if. Zwei Tests wurden mitgezogen statt geloescht - test_signal_fill_long ist jetzt umgedreht (unbekannte Quelle darf NICHT als Squeeze durchgehen). Live verifiziert: alle vier Snapshot-Felder weg, Endpunkt tot, auto_squeeze/squeeze_pending unveraendert, 67 Tests gruen. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
b85dd010ab
commit
bf7e382818
@@ -6161,6 +6161,52 @@ Neumessung. Sie bleiben unverändert und reproduzierbar; wo ihre Schlussfolgerun
|
||||
relevant wird, gehört sie live-treu **neu gerechnet** (Muster:
|
||||
`backtest_auto_signal_norev.py`).
|
||||
|
||||
## ✅ AUTO-SIGNAL-ENTRY (🎯 SIG) KOMPLETT ENTFERNT (User-Entscheidung 2026-08-12)
|
||||
|
||||
User: „den Signal-Autotrader brauchen wir im Moment nicht mehr — sollten wir den
|
||||
inkl. Button entfernen?" **Ja.** Er war seit dem 01.08. aus und ist auf **beiden**
|
||||
Ausführungs-Achsen gemessen negativ:
|
||||
| Variante | H1 / H2 |
|
||||
|---|---|
|
||||
| Markt-Einstieg | negativ in **allen 8** Feldern (`backtest_auto_signal.py` 30.07., `_norev` 04.08.) |
|
||||
| ruhende Order, Fill bei BERÜHRUNG | **−0,392/−0,338**, negativ in **allen 6** Feldern (`backtest_signal_touchfill.py` 06.08.) |
|
||||
⚠⚠ **Der zweite Punkt gibt den Ausschlag:** die ruhende Order — genau der Umbau,
|
||||
der den Squeeze gerettet hat — macht SIG sogar **schlechter als den
|
||||
Markt-Einstieg**. Die +0,35/+0,32 aus `backtest_auto_signal_v3.py` galten in
|
||||
Variante B (Fill beim Close-Bruch) und waren **Look-ahead**; der Aufschlag betrug
|
||||
0,77–0,85 R. Ursache ist strukturell und nicht reparierbar: `_pend` **wandert**
|
||||
(neu verankert bei jeder k×ATR-Gegenbewegung, nach Timeout, bei Richtungswechsel)
|
||||
— „ein Level ist nur dann ein Ausführungs-Vorteil, wenn es STILLSTEHT".
|
||||
✅ Nebenbei entfällt der **offene Churn-Defekt** (4× setzen/stornieren in 76 s bei
|
||||
identischem Level, gefunden 06.08., nie behoben).
|
||||
|
||||
**Entfernt:** `_check_auto_signal` · `set_auto_signal` · der Signal-Zweig in
|
||||
`_pending_ziel` · `POST /api/autosignal` · Button 🎯 SIG (HTML + Handler) · die
|
||||
vier Snapshot-Felder · `signal_pending_entry` und die `auto_signal*`-Leser.
|
||||
**Geblieben:** die **AUTOSIG_\*-Trades in der DB** (Historie), die Backtests (sie
|
||||
dokumentieren das Warum), `wave_rec.breakout` (speist `block_reason`) und
|
||||
`_confirm_breakout` selbst (das ist das Gate, nicht der Trader).
|
||||
Sicherung: **`.removed_backup/auto_signal_2026-08-12.py`** + Git-Historie
|
||||
(Vorbild: der Wave-Auto-Trader, 23.07. genauso entfernt).
|
||||
|
||||
⚠⚠ **DAS RISIKO WAR NICHT SIG, SONDERN DER GETEILTE MANAGER.** Squeeze und Signal
|
||||
teilten sich `_pending_ziel` — bewusst, weil zwei getrennte Manager über
|
||||
`trader.pending_orders()` die Orders des jeweils anderen sehen und sich
|
||||
**gegenseitig stornieren** würden. Deshalb wurde das Squeeze-Verhalten **VOR** dem
|
||||
Eingriff in `tests/test_pending_ziel.py` festgenagelt (7 Tests: beide Box-Grenzen ·
|
||||
nicht-armed · Guard · Feature aus · kein ATR · fehlende Box · ATR-Skalierung) —
|
||||
sie liefen vorher grün und laufen **unverändert** weiter.
|
||||
✅ **Zwei Folgefehler fing die Prüfkette sofort:** `ruff F821` meldete ein
|
||||
verwaistes `_t` (im entfernten Block definiert, zwei Zeilen später noch benutzt),
|
||||
und `py_compile` ein dangling `if` im runtime_state-Laden. Beide behoben.
|
||||
✅ **Zwei Tests mitgezogen statt gelöscht:** `test_signal_fill_long` wurde
|
||||
**umgedreht** — ein Pending-Fill mit unbekannter Quelle darf jetzt NICHT
|
||||
stillschweigend als Squeeze durchgehen (das wäre Deployment-Drift Fall 8 mit
|
||||
umgekehrtem Vorzeichen); und die Systemzustand-Zeile prüft nun ausdrücklich, dass
|
||||
„SIG" **nicht wieder auftaucht**.
|
||||
✅ **Live verifiziert:** alle vier Snapshot-Felder weg, `/api/autosignal`
|
||||
antwortet nicht mehr, `auto_squeeze`/`squeeze_pending` unverändert, 67 Tests grün.
|
||||
|
||||
## ⚠⚠ WIEDEREINSTIEG NACH S/R-CLOSE — 2-HALBJAHRES-BACKTEST: FÄLLT DURCH (2026-08-12)
|
||||
|
||||
`backtest_srclose_reentry.py`, 80k M5-Bars. Nachfolger des Live-Laufs (n=14, von
|
||||
|
||||
Reference in New Issue
Block a user