Konsens-Zeile korrigiert: falscher Bezug + Nenner passte nicht zu den Chips
User-Fund: "Modul-Konsens: stark LONG · 4/4 Module fuer WARTEN" - dabei sind
9 Module sichtbar. Zwei echte Fehler.
(a) FALSCHER BEZUG: der Text lautete "... Module fuer ${sig}" mit der
HEADLINE als Bezug. Seit dem ref-Fix vom 30.07. zaehlt `agree` bei WARTEN
aber die Uebereinstimmung mit der BIAS-Richtung - deshalb stand dort
"stark LONG ... fuer WARTEN". Die Richtung kommt jetzt als verdict.ref_dir
vom Backend, statt im Frontend aus `bias` nachgebaut zu werden (dort galt
ein +-0,05-Totband, im Backend `bias > 0` - die Nachbildung waere am Rand
auseinandergelaufen; dieselbe Sorte Divergenz wie die fuenf
Deployment-Drift-Faelle desselben Tages).
(b) ANDERER NENNER ALS DIE CHIPS: `total` zaehlt nur Module MIT Aussage
(Gewicht>0, ohne die Welle). Nach den Gewichts-Fixes des Tages schweigen
deutlich mehr Module -> "4/4" bei 9 sichtbaren Chips. Neu ist
verdict.silent (Module mit Gewicht 0) dabei, sodass die Summe aufgeht.
Live verifiziert: "Modul-Konsens: leicht LONG · 3 von 5 stimmberechtigten
fuer LONG (4 ohne Aussage)" - 5 + 4 = 9. Sonderfall "kein Modul mit klarer
Aussage" abgedeckt. v=125.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
a1f471f163
commit
df092674cb
+22
-4
@@ -121,10 +121,28 @@ function renderVerdict(v, snap) {
|
||||
const tag = cr < 0.20 ? "✅ günstig" : cr <= 0.32 ? "· normal" : "⚠ teuer";
|
||||
costTxt = ` · Kosten ${fmt(cr, 2)}×ATR ${tag}`;
|
||||
}
|
||||
$("vd-consensus").textContent =
|
||||
(sig === "—" ? "keine Daten"
|
||||
: `Modul-Konsens: ${strength} ${dir} · ${agree}/${total} Module für ${sig}`)
|
||||
+ costTxt;
|
||||
// ⚠ Konsens-Zeile korrigiert (2026-07-31). Zwei Fehler waren drin:
|
||||
// (1) „… Module für ${sig}" nahm die HEADLINE als Bezug. Seit dem Fix vom 30.07.
|
||||
// zählt `agree` bei WARTEN aber die Übereinstimmung mit der BIAS-Richtung →
|
||||
// es stand „stark LONG · 4/4 Module für WARTEN". Die Richtung kommt jetzt als
|
||||
// `ref_dir` vom Backend, statt hier aus `bias` nachgebaut zu werden.
|
||||
// (2) `total` zählt nur Module MIT Aussage (Gewicht>0, ohne die Welle) — nach den
|
||||
// Gewichts-Fixes schweigen mehr Module, während 9 Chips sichtbar bleiben.
|
||||
// „4/4" las sich dadurch widersprüchlich. Jetzt steht dabei, wie viele
|
||||
// Module gerade nichts sagen.
|
||||
const refDir = v.ref_dir || null;
|
||||
const silent = typeof v.silent === "number" ? v.silent : null;
|
||||
let consensus;
|
||||
if (sig === "—") {
|
||||
consensus = "keine Daten";
|
||||
} else if (!refDir || !total) {
|
||||
consensus = `Modul-Konsens: ${strength} ${dir} · kein Modul mit klarer Aussage`;
|
||||
} else {
|
||||
consensus = `Modul-Konsens: ${strength} ${dir} · ${agree} von ${total} `
|
||||
+ `stimmberechtigten für ${refDir}`
|
||||
+ (silent ? ` (${silent} ohne Aussage)` : "");
|
||||
}
|
||||
$("vd-consensus").textContent = consensus + costTxt;
|
||||
$("vd-needle").style.left = ((bias + 1) / 2 * 100).toFixed(1) + "%";
|
||||
|
||||
// Modul-Chips
|
||||
|
||||
+2
-2
@@ -6,7 +6,7 @@
|
||||
<meta name="theme-color" content="#0d1117">
|
||||
<title>Oil · MT5</title>
|
||||
<link rel="manifest" href="manifest.json">
|
||||
<link rel="stylesheet" href="style.css?v=124">
|
||||
<link rel="stylesheet" href="style.css?v=125">
|
||||
</head>
|
||||
<body>
|
||||
<!-- Modul-Menü (ganz oben) -->
|
||||
@@ -244,6 +244,6 @@
|
||||
<div id="toast" class="toast hidden"></div>
|
||||
|
||||
<script src="lightweight-charts.standalone.production.js?v=114"></script>
|
||||
<script src="app.js?v=124"></script>
|
||||
<script src="app.js?v=125"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user