FIX: SL/TP-Feld rundete auf 2 Nachkommastellen - Stop verschob sich beim Speichern

User: "SL war auf 84,86 laut Dashboard" (nach dem Close von T=50360258).

ZWEI BEFUNDE, und der zweite ist der eigentliche:

(1) Die 84,86 gehoerten zum NAECHSTEN Trade. Der geschlossene T=50360258 hatte
    SL 84,776; 26 s spaeter lief bereits T=50360505 mit SL 84,863. Kein Fehler,
    nur Verwechslung durch die schnelle Folge.

(2) ABER dabei faellt ein echter Anzeigefehler auf: das SL/TP-Feld der
    Trade-Leiste formatierte mit `fmt(x, 2)`. WTI notiert DREISTELLIG - aus dem
    echten Stop 84,776 wurde die Anzeige 84,78.
    ⚠⚠ Das ist nicht kosmetisch: das Feld ist BESCHREIBBAR, und ein Enter darauf
    schickt den gerundeten Wert per /api/sltp an den Broker. Der Stop verschiebt
    sich also still um bis zu 0,5 Cent - bei einem Trail von 11 Cent (ATR_M5
    0,1104 in dieser Nacht) sind das 5 % der Distanz. Zusaetzlich schaltet
    /api/sltp das Trailing ab, der Nutzer wuerde also einen leicht falschen Stop
    festschreiben und die Nachfuehrung verlieren.

Behoben auf 3 Stellen. Gegengeprueft, dass es kein weiteres Preisfeld mit
`, 2)` gibt.

Reine Frontend-Aenderung (v=189), kein Neustart. node --check und die neue
Render-Probe (Stufe B2) gruen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Axel Hocks
2026-08-20 00:04:20 +02:00
co-authored by Claude Opus 5
parent f02fd43b39
commit 5684589878
2 changed files with 11 additions and 4 deletions
+9 -2
View File
@@ -1116,8 +1116,15 @@ function render(d) {
_tickTradeDuration();
// SL/TP-Felder nur befüllen, wenn nicht gerade bearbeitet (kein Tipp-Konflikt)
const slEl = $("tb-sl"), tpEl = $("tb-tp");
if (document.activeElement !== slEl) slEl.value = p.sl ? fmt(p.sl, 2) : "";
if (document.activeElement !== tpEl) tpEl.value = p.tp ? fmt(p.tp, 2) : "";
// ⚠⚠ DREI Nachkommastellen, nicht zwei (Fix 2026-08-20, User-Fund
// "SL war auf 84,86 laut Dashboard"). WTI notiert dreistellig; mit
// `fmt(x, 2)` wurde aus dem echten Stop 84,776 die Anzeige 84,78.
// Das ist NICHT nur kosmetisch: das Feld ist beschreibbar, und ein
// Enter darauf schickt den GERUNDETEN Wert an den Broker — der Stop
// verschiebt sich also still um bis zu 0,5 Cent. Bei einem Trail von
// 11 Cent (ATR_M5 0,11 in dieser Nacht) sind das 5 % der Distanz.
if (document.activeElement !== slEl) slEl.value = p.sl ? fmt(p.sl, 3) : "";
if (document.activeElement !== tpEl) tpEl.value = p.tp ? fmt(p.tp, 3) : "";
} else {
tb.classList.add("hidden");
_tradeOpenTime = 0;