M30-Level-Umstellung live gegengeprueft — bestaetigt, Normierung war entscheidend
Faellige Messung aus dem Reminder (28/30 erreicht). S/R-Auto-Closes vor/nach der Umstellung der Level-Quelle M5 -> M30 am 30.07. Zeitraum n Med.Lots EUR/Lot O Move vorher (M5-Level) 89 0,81 +17,53 0,202 $ nachher (M30-Level) 28 0,53 +36,92 0,427 $ Ertrag je Lot mehr als verdoppelt, O-Kursbewegung je Trade ebenfalls - deckt sich mit der Backtest-Erwartung und mit dem Mechanismus (M30-Level liegen 1,95xATR auseinander statt 0,61xATR, der Trade laeuft laenger). DIE NORMIERUNG WAR ENTSCHEIDEND, sonst waere der Schluss falsch gewesen: unnormiert sah der 04.08. wie der Treiber aus (O +55,41 EUR je Trade gegen +19,30 im Rest). Je Lot ist heute aber praktisch identisch zum Rest (+38,81 vs +35,87) - der Unterschied war reine Positionsgroesse (Median 1,36 statt 0,46 Lots, weil das Konto an dem Tag von ~800 auf ~1.400 EUR wuchs). O-EUR-Vergleiche ueber Zeitraeume mit unterschiedlicher Positionsgroesse sind ungueltig. NICHT der Level-Quelle allein zuzuordnen: am 31.07. kamen P(break)-Nachtraining und Schwelle 0,55->0,35 dazu. Getrennt: 30.07. (nur M30-Level, altes Modell) n=8, +19,88 EUR/Lot; ab 31.07. (M30 + neues Modell) n=20, +43,73 EUR/Lot. Das Fenster mit nur der Umstellung ist zu klein. Der kombinierte Effekt ist bestaetigt, die Ursachenaufteilung nicht. Messung im measurement_reminder ausgetragen (mit Ergebnis als Kommentar). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
e558a8dd5b
commit
1c976cc8fd
@@ -3193,7 +3193,7 @@ hatte am 2026-07-30 bereits **2213 ausgewertete Zeilen**, ohne dass jemand hinsa
|
|||||||
| Verdict-Module auf Prädiktivität (`verdict_votes`) | ≥25 000 Verdicts | 8142 (33 %) |
|
| Verdict-Module auf Prädiktivität (`verdict_votes`) | ≥25 000 Verdicts | 8142 (33 %) |
|
||||||
| **Manuelle Trades: Stufe 2** (was trennt Gewinner von Verlierern?) | ≥300 manuelle Trades **mit `ctx_*`** | 0 (Sammlung ab 04.08.) |
|
| **Manuelle Trades: Stufe 2** (was trennt Gewinner von Verlierern?) | ≥300 manuelle Trades **mit `ctx_*`** | 0 (Sammlung ab 04.08.) |
|
||||||
| **Auto-Squeeze: B5-Abbruchprüfung** (Latte vorab fixiert) | ≥20 Squeeze-Trades ab 01.08. | 2 (10 %) |
|
| **Auto-Squeeze: B5-Abbruchprüfung** (Latte vorab fixiert) | ≥20 Squeeze-Trades ab 01.08. | 2 (10 %) |
|
||||||
| M30-Level-Umstellung live gegenprüfen | ≥30 S/R-Closes seit 30.07. | 17 (57 %) |
|
| ~~M30-Level-Umstellung live gegenprüfen~~ | **ERLEDIGT 04.08.** — s. u. | ✅ |
|
||||||
| M1-Squeeze Variante B | ≥180 Tage `candles_m1` | 14 (8 %) |
|
| M1-Squeeze Variante B | ≥180 Tage `candles_m1` | 14 (8 %) |
|
||||||
| News-Score-Prädiktivität | ≥90 Tage Sammlung | 9 (10 %) |
|
| News-Score-Prädiktivität | ≥90 Tage Sammlung | 9 (10 %) |
|
||||||
|
|
||||||
@@ -3207,6 +3207,32 @@ bildet den Vorrang jetzt genauso ab wie der Engine-Start; mit einem Szenario ver
|
|||||||
(runtime `true` gegen validiert `false` → wird gemeldet). Neu überwacht: `auto_signal`
|
(runtime `true` gegen validiert `false` → wird gemeldet). Neu überwacht: `auto_signal`
|
||||||
(soll `false`) und `auto_squeeze` (soll `true`).
|
(soll `false`) und `auto_squeeze` (soll `true`).
|
||||||
|
|
||||||
|
### ✅ M30-Level-Umstellung live gegengeprüft (04.08.) — bestätigt, mit einem Vorbehalt
|
||||||
|
|
||||||
|
| Zeitraum | n | Med. Lots | **EUR/Lot** | Ø Move |
|
||||||
|
|---|---|---|---|---|
|
||||||
|
| **vorher** (M5-Level) | 89 | 0,81 | **+17,53** | 0,202 $ |
|
||||||
|
| **nachher** (M30-Level) | 28 | 0,53 | **+36,92** | 0,427 $ |
|
||||||
|
|
||||||
|
Ertrag **je Lot mehr als verdoppelt**, Ø-Kursbewegung je Trade ebenfalls — deckt sich
|
||||||
|
mit der Backtest-Erwartung („R-Ertrag rund doppelt") und mit dem Mechanismus (M30-Level
|
||||||
|
liegen 1,95×ATR auseinander statt 0,61×ATR, der Trade läuft also länger).
|
||||||
|
|
||||||
|
⚠⚠ **Die NORMIERUNG war entscheidend, sonst wäre der Schluss falsch gewesen.**
|
||||||
|
Unnormiert sah der 04.08. wie der Treiber aus (Ø **+55,41 €** je Trade gegen +19,30 €
|
||||||
|
im Rest). **Je Lot ist heute aber praktisch identisch zum Rest** (+38,81 gegen +35,87)
|
||||||
|
— der Unterschied war reine Positionsgröße (Median 1,36 statt 0,46 Lots, weil das
|
||||||
|
Konto an diesem Tag von ~800 auf ~1.400 € wuchs). Ø-EUR-Vergleiche über Zeiträume mit
|
||||||
|
unterschiedlicher Positionsgröße sind ungültig; das gehört bei jeder künftigen
|
||||||
|
Live-Auswertung mitgedacht.
|
||||||
|
|
||||||
|
⚠ **Nicht der Level-Quelle ALLEIN zuzuordnen:** am 31.07. kamen das
|
||||||
|
P(break)-Nachtraining UND die Schwellensenkung 0,55 → 0,35 dazu. Getrennt:
|
||||||
|
30.07. (nur M30-Level, altes Modell) n=**8**, +19,88 €/Lot · ab 31.07. (M30 + neues
|
||||||
|
Modell) n=20, +43,73 €/Lot. Das Fenster mit nur der Umstellung ist zu klein für eine
|
||||||
|
Zuordnung. **Der kombinierte Effekt ist bestätigt, die Ursachenaufteilung nicht.**
|
||||||
|
Beide Änderungen waren im Backtest validiert und zeigen live in dieselbe Richtung.
|
||||||
|
|
||||||
*(erledigt und ausgetragen: P(break)-Genauigkeit → `analyze_pbreak_live.py` 31.07.,
|
*(erledigt und ausgetragen: P(break)-Genauigkeit → `analyze_pbreak_live.py` 31.07.,
|
||||||
Modell daraufhin nachtrainiert · Chartmuster-Kontrolltest → 30.07., Muster schlagen
|
Modell daraufhin nachtrainiert · Chartmuster-Kontrolltest → 30.07., Muster schlagen
|
||||||
die Kontrolle in beiden Hälften, Gewicht 1,0)*
|
die Kontrolle in beiden Hälften, Gewicht 1,0)*
|
||||||
|
|||||||
+7
-12
@@ -145,18 +145,13 @@ CHECKS = [
|
|||||||
"→ `auto_squeeze=false` (B5-Rückbau, kein Ego). Sonst weiterlaufen "
|
"→ `auto_squeeze=false` (B5-Rückbau, kein Ego). Sonst weiterlaufen "
|
||||||
"lassen. Zahlen: /api/squeeze_monitor bzw. Statistik-Tab.",
|
"lassen. Zahlen: /api/squeeze_monitor bzw. Statistik-Tab.",
|
||||||
},
|
},
|
||||||
{
|
# (erledigt 2026-08-04: „M30-Level-Umstellung live gegenprüfen" — Ertrag JE LOT
|
||||||
"key": "m30_levels",
|
# +17,53 → +36,92 €, Ø-Move je Trade 0,202 → 0,427 $, also verdoppelt wie im
|
||||||
"title": "M30-Level-Umstellung live gegenprüfen",
|
# Backtest erwartet. ⚠ Normierung war entscheidend: unnormiert sah HEUTE wie der
|
||||||
"why": "Seit 2026-07-30 kommen S/R-Level + P(break) aus M30 statt M5 "
|
# Treiber aus (Ø +55 € vs +19 €), je Lot ist heute aber praktisch identisch zum
|
||||||
"(Backtest: R-Ertrag ~2×, AUC 0,721). Live gegenprüfen: bringt der "
|
# Rest (+38,81 vs +35,87) — der Unterschied war reine Positionsgröße.
|
||||||
"S/R-Auto-Close jetzt mehr pro Trade als vorher?",
|
# ⚠ NICHT der Level-Quelle allein zuzuordnen: am 31.07. kamen P(break)-Nachtraining
|
||||||
"have": lambda: _q("SELECT COUNT(*) FROM trades WHERE closed_by='sr_close' "
|
# und Schwelle 0,55→0,35 dazu; das Fenster mit NUR der Umstellung hat n=8.)
|
||||||
"AND pnl IS NOT NULL AND exit_time >= "
|
|
||||||
"strftime('%s','2026-07-30')"),
|
|
||||||
"need": 30, "unit": "S/R-Closes seit der Umstellung",
|
|
||||||
"cmd": "sr_close-Trades vor/nach 2026-07-30 vergleichen (ØEUR, Trefferquote)",
|
|
||||||
},
|
|
||||||
# (erledigt 2026-07-30: Chartmuster-Kontrolltest gegen generischen Swing-Bruch —
|
# (erledigt 2026-07-30: Chartmuster-Kontrolltest gegen generischen Swing-Bruch —
|
||||||
# Muster schlagen die Kontrolle in beiden Hälften (+0,022/+0,108) → Gewicht 1,0)
|
# Muster schlagen die Kontrolle in beiden Hälften (+0,022/+0,108) → Gewicht 1,0)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user