Gesamtempfehlung zeigt jetzt, WARUM sie wartet (v=126)

User-Fund: "WARTEN · M15" neben "Modul-Konsens: stark LONG" liest sich wie
ein Widerspruch. Ist keiner - die Welle HAT eine Richtung und haengt nur an
einem Gate. Der Grund stand aber nur als Textzeile in der Meldungen-Karte,
also weit weg von der Stelle, an der die Frage aufkommt.

wave.breakout {pending, dir, level, need} wurde berechnet und im Snapshot
gespeichert, vom Frontend aber NIRGENDS gerendert. Jetzt haengt es direkt
an der Headline:
    "◌ WARTEN · M15 · LONG, noch 0.02 bis zur Bestaetigung"

Erste Auswertung der gestern eingebauten block_reason-Telemetrie (3 h):
    breakout_pending  63 %
    entry_room        20 %
    min_conf          18 %
    Totband / HTF-Gegen-Trend:  KEIN EINZIGES MAL

Das beantwortet die offene Frage aus dem TF-Churn-Fix: die 93 % WARTEN
kommen nicht daher, dass die Welle richtungslos waere, sondern von den
Gates - allen voran der Breakout-Bestaetigung, die bis zum Fix desselben
Tages rechnerisch gar nicht fertig werden konnte.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Axel Hocks
2026-07-31 16:29:55 +02:00
co-authored by Claude Opus 5
parent df092674cb
commit f1cc3775f9
3 changed files with 29 additions and 4 deletions
+14 -1
View File
@@ -1432,6 +1432,19 @@ dort bereits nachvalidiert, ØR +0,305.) **Eine** Oberfläche:
Gewicht 0) dabei, sodass die Summe aufgeht. Live: „**3 von 5 stimmberechtigten für Gewicht 0) dabei, sodass die Summe aufgeht. Live: „**3 von 5 stimmberechtigten für
LONG (4 ohne Aussage)**" — 5 + 4 = 9 ✅. Bei gar keiner Aussage: „kein Modul mit LONG (4 ohne Aussage)**" — 5 + 4 = 9 ✅. Bei gar keiner Aussage: „kein Modul mit
klarer Aussage". v=125. klarer Aussage". v=125.
**„WARUM WARTEN?" jetzt an der Headline (2026-07-31, v=126, User-Fund „WARTEN,
aber Konsens stark LONG"):** Der scheinbare Widerspruch entstand, weil die Welle in
aller Regel eine RICHTUNG hat und nur an einem Gate hängt — der Grund stand aber
ausschliesslich als Textzeile in der Meldungen-Karte, also weit weg von der Stelle,
an der die Frage aufkommt. `wave.breakout {pending, dir, level, need}` wurde berechnet
und gespeichert, vom Frontend jedoch **nirgends gerendert**. Jetzt hängt es direkt an
der Headline: „◌ WARTEN · M15 · **LONG, noch 0.02 bis zur Bestätigung**".
**Erste Auswertung der neuen `block_reason`-Telemetrie (3 h):** `breakout_pending`
**63 %** · `entry_room` 20 % · `min_conf` 18 % — und **kein einziges Mal** Totband
oder HTF-Gegen-Trend. Das beantwortet die offene Frage aus dem TF-Churn-Fix: die
93 % WARTEN kommen NICHT daher, dass die Welle richtungslos wäre, sondern von den
Gates — allen voran der Breakout-Bestätigung (die bis zum Fix desselben Tages
gar nicht fertig werden konnte).
**Offen (dokumentiert, nicht geändert):** **Offen (dokumentiert, nicht geändert):**
(0) **Wellen-Konfidenz aus `_draw_levels` speisen** statt aus dem Misch-Set — würde (0) **Wellen-Konfidenz aus `_draw_levels` speisen** statt aus dem Misch-Set — würde
den 12-Abzug tatsächlich auslösen, also Konfidenz senken und das 55%-Gate den 12-Abzug tatsächlich auslösen, also Konfidenz senken und das 55%-Gate
@@ -1966,7 +1979,7 @@ dort bereits nachvalidiert, ØR +0,305.) **Eine** Oberfläche:
Signal → **Hinweis-Dialog „trotzdem eröffnen?"** (überschreibbar). CLOSE bei Signal → **Hinweis-Dialog „trotzdem eröffnen?"** (überschreibbar). CLOSE bei
**negativem** P&L → Sicherheitsabfrage; im Plus/Breakeven direkt. Sonst keine **negativem** P&L → Sicherheitsabfrage; im Plus/Breakeven direkt. Sonst keine
Token-Dialoge (`require_token=false`). Audio braucht 1× Nutzer-Tap. Token-Dialoge (`require_token=false`). Audio braucht 1× Nutzer-Tap.
- Asset-Version aktuell **v=125** (in `web/index.html` hochzählen, siehe Workflows). - Asset-Version aktuell **v=126** (in `web/index.html` hochzählen, siehe Workflows).
Schriftgrößen 2026-07-24 global **+4px** (2× je +2px auf User-Wunsch; Body-Basis Schriftgrößen 2026-07-24 global **+4px** (2× je +2px auf User-Wunsch; Body-Basis
14→18px). ⚠ Betrifft in `style.css` sowohl `font-size:Npx` (71×) ALS AUCH die 14→18px). ⚠ Betrifft in `style.css` sowohl `font-size:Npx` (71×) ALS AUCH die
`font:<weight> Npx/…`-**Shorthand** (3×: `.ms-chip`/`.ms-bos-lbl`/`.sqm-badge` `font:<weight> Npx/…`-**Shorthand** (3×: `.ms-chip`/`.ms-bos-lbl`/`.sqm-badge`
+13 -1
View File
@@ -98,7 +98,19 @@ function renderVerdict(v, snap) {
const arr = sig === "LONG" ? "▲" : sig === "SHORT" ? "▼" : "◌"; const arr = sig === "LONG" ? "▲" : sig === "SHORT" ? "▼" : "◌";
$("vd-signal").className = "vd-signal " + cls; $("vd-signal").className = "vd-signal " + cls;
// Zeitebene, für die die Empfehlung gilt (M1/M5/M15/M30/H1) // Zeitebene, für die die Empfehlung gilt (M1/M5/M15/M30/H1)
$("vd-signal").textContent = `${arr} ${sig}` + (v.tf ? ` · ${v.tf}` : ""); let head = `${arr} ${sig}` + (v.tf ? ` · ${v.tf}` : "");
// ⚠ WARUM WARTEN? (2026-07-31, User-Fund „WARTEN, aber Konsens stark LONG").
// Die Welle HAT meist eine Richtung — sie hängt an einem Gate. Gemessen mit der
// neuen `block_reason`-Telemetrie (3 h): breakout_pending 63 % · entry_room 20 % ·
// min_conf 18 %, KEIN einziges Mal Totband oder HTF-Gegen-Trend. Der Grund wurde
// bisher NUR als Textzeile in der Meldungen-Karte gezeigt — also weit weg von der
// Stelle, an der der scheinbare Widerspruch entsteht. Jetzt steht er direkt an der
// Headline: „◌ WARTEN · M15 · LONG, noch 0.11 bis zur Bestätigung".
const bo = (snap && snap.wave && snap.wave.breakout) || null;
if (sig === "WARTEN" && bo && bo.pending && bo.dir) {
head += ` · ${bo.dir}, noch ${fmt(bo.need, 2)} bis zur Bestätigung`;
}
$("vd-signal").textContent = head;
// Konfidenz-Ring (conic-gradient bis conf%, Farbe nach Richtung) // Konfidenz-Ring (conic-gradient bis conf%, Farbe nach Richtung)
const conf = v.conf || 0; const conf = v.conf || 0;
+2 -2
View File
@@ -6,7 +6,7 @@
<meta name="theme-color" content="#0d1117"> <meta name="theme-color" content="#0d1117">
<title>Oil · MT5</title> <title>Oil · MT5</title>
<link rel="manifest" href="manifest.json"> <link rel="manifest" href="manifest.json">
<link rel="stylesheet" href="style.css?v=125"> <link rel="stylesheet" href="style.css?v=126">
</head> </head>
<body> <body>
<!-- Modul-Menü (ganz oben) --> <!-- Modul-Menü (ganz oben) -->
@@ -244,6 +244,6 @@
<div id="toast" class="toast hidden"></div> <div id="toast" class="toast hidden"></div>
<script src="lightweight-charts.standalone.production.js?v=114"></script> <script src="lightweight-charts.standalone.production.js?v=114"></script>
<script src="app.js?v=125"></script> <script src="app.js?v=126"></script>
</body> </body>
</html> </html>