Wirtschaftskalender-Blackout + Konsolidierungs-Box beschriftet
core/econ_calendar.py (NEU): High-Impact-News-Fenster als Handels-Sperre. Quelle Forex Factory JSON (kostenlos, kein Key, mit impact-Feld), beide Wochen (thisweek endet Sa, Markt oeffnet So 23:00 -> sonst blinder Fleck), 1x/h im Daemon-Thread, dedupliziert. Filter: High+USD ODER Oil/OPEC-Titel. WICHTIG - nicht gemessen: Events sind zu selten fuer eine 2-Stichproben- Aussage. Das ist die Handbuch-Regel, kein belegter Edge. Deshalb bewusst asymmetrisch: sperrt NUR die autonomen Entries (Auto-Squeeze + Auto-Signal, ohne Dedup-Marker -> feuert nach dem Fenster nach), in der Entry-Checkliste nur "warn" statt "fail". Manuelle Orders bleiben frei. Der gemessene EIA-Blackout (Mi 15:30-16:30) bleibt unabhaengig aktiv und greift auch ohne Netz. Verifiziert: Live-Fetch (EIA korrekt Mi 16:30 Berlin, FOMC/GDP/PCE erkannt) + 4 synthetische Szenarien (5 min vor/nach Event, 50 min davor, disabled). MQL5 v1.30: graue Konsolidierungs-Box beschriftet (User-Frage "was bedeutet die graue Box") - sichtbares Label an der Oberkante, rechtsbuendig wie die uebrigen: "Konsolidierung (10-Bar-Spanne)" bzw. bei Kompression "Konsolidierung - komprimiert, Ausbruch steht bevor". 0 Fehler kompiliert. Frontend v=122: #cal-note in der Meldungen-Karte (laufendes Fenster bzw. Vorwarnung <=60 min). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
7e0d2a4563
commit
a6f370ac02
@@ -320,6 +320,30 @@ dort bereits nachvalidiert, ØR +0,305.) **Eine** Oberfläche:
|
||||
dem alten „16 Uhr"-Befund. eia_post/api_pre/api_post NICHT robust → nicht geblockt.
|
||||
Nur im Live-Pfad (`hour≠None`), Backtests bleiben gate-frei. Best-Practice
|
||||
„Event-Blackout" statt Pauschal-Gate.
|
||||
- **Wirtschaftskalender-Blackout (`core/econ_calendar.py`, 2026-07-30, `[trading]
|
||||
news_blackout=true`, ±15 min):** Erweiterung der EIA-Idee auf ALLE High-Impact-
|
||||
Termine (FOMC/Zinsentscheid/NFP/CPI/GDP/PCE + alle Oil-/OPEC-Titel). Quelle
|
||||
**Forex Factory JSON** (`nfs.faireconomy.media`, kostenlos, kein Key, mit
|
||||
`impact`-Feld); geholt werden **beide Wochen** (`thisweek`+`nextweek` — „thisweek"
|
||||
endet samstags, der Markt öffnet aber Sonntag 23:00 → sonst blinder Fleck), 1×/h
|
||||
**im Daemon-Thread** (ein hängender HTTP-Call darf den Trend-Loop nicht blockieren),
|
||||
dedupliziert über (ts, title). Filter: `impact=High` + `country=USD`, ODER Titel
|
||||
enthält crude oil/opec/oil inventories/petroleum (der EIA-Report läuft bei FF teils
|
||||
als Low/Medium). ⚠ **NICHT gemessen** — Events sind zu selten für eine
|
||||
2-Stichproben-Aussage, das ist die Handbuch-Regel („keine Trades 15 Min. vor
|
||||
High-Impact-News"), kein belegter Edge. Deshalb bewusst asymmetrisch verdrahtet:
|
||||
**sperrt nur die AUTONOMEN Entries** (`_check_auto_squeeze` + `_check_auto_signal`,
|
||||
jeweils OHNE Dedup-Marker → nach dem Fenster feuert das Setup, falls noch aktiv) und
|
||||
erscheint in der Entry-Checkliste nur als **„warn"**, nicht „fail" (soll den Verdict
|
||||
nicht allein auf `stop` kippen); **manuelle Orders bleiben frei.** Der gemessene
|
||||
EIA-Blackout bleibt unabhängig davon aktiv — er greift auch, wenn der Kalender kein
|
||||
Netz hat (Fail-safe: ohne Daten → kein Blackout, Log 1×, dann still). Snapshot
|
||||
`calendar {enabled, n, blackout{title,impact,ccy,minutes}, next, age_min}`,
|
||||
Frontend `#cal-note` (Meldungen-Karte, bernstein: laufendes Fenster bzw. Vorwarnung
|
||||
≤60 min). Abschalten `news_blackout=false`; Fenster via `news_blackout_before_min`/
|
||||
`_after_min`. Mit 4 synthetischen Szenarien getestet (5 min vor/nach Event, 50 min
|
||||
davor = kein Blackout, disabled) + Live-Fetch verifiziert (EIA lag korrekt auf
|
||||
Mi 16:30 Berlin).
|
||||
- **Winkel-vs-EMA-Warnung (nur Konfidenz):** Regressions-Winkel der Basis-TF gegen
|
||||
die EMA-Richtung → −10 „⚠ Winkel gegen EMA (mögliche Wende)" (nachlaufende EMA!);
|
||||
dafür → +5. `backtest_angle.py`: dafür/neutral +0,055 vs dagegen +0,025; als Gate
|
||||
|
||||
Reference in New Issue
Block a user