Header: eigene G/V-Box fuer den BRK-Slot, rechts neben dem ersten
User-Wunsch. Seit dem Zwei-Slot-Umbau vom 19.08. kann der Breakout-Autotrader parallel zu manuellen und M15-Trades eine eigene Position halten - im Header war davon nichts zu sehen. Neue Box "G/V · BRK" (#hdr-pnl-brk) direkt neben "G/V", mit Ticket, Lots, Einstieg und Trailing-Zustand im Tooltip. Zeigt "—", wenn BRK nichts haelt. ⚠ BEWUSST ZWEI BOXEN statt einer Summe: die Slots gehoeren verschiedenen Populationen (Mensch +1,56 gegen autonom -4,71 EUR/Lot), und sie in EINEM Feld zusammenzurechnen wuerde genau die Trennung verwischen, fuer die der zweite Slot ueberhaupt gebaut wurde. Die SUMME steht dort, wo der User sie angefragt hat: im TAG P/L. Geprueft statt angenommen - `day_pl["open"]` summiert seit dem 19.08. bereits beide Slots (engine.py:4537), es war also nichts nachzuruesten. Live gegengerechnet: Slot 1 +4,18 / BRK leer / day_pl.open 4,18. Die WHT-Behandlung ist identisch zur ersten Box (Abzug nur auf Gewinne) - eine zweite Rechenart im selben Header waere eine Divergenz, die niemand erwartet. Reine Frontend-Aenderung (v=191), kein Neustart. div 87/87 ausgeglichen, keine doppelten IDs, node --check und die Render-Probe gruen. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
d87bda1461
commit
834bd0bba3
+21
@@ -1070,6 +1070,27 @@ function render(d) {
|
||||
: "";
|
||||
} else { $("hdr-pnl").textContent = "—"; $("hdr-pnl").className = ""; $("hdr-pnl").title = ""; }
|
||||
|
||||
// --- G/V des BRK-Slots, rechts daneben (User-Wunsch 2026-08-20) ---------
|
||||
// ⚠ Eigene Box statt einer Summe in EINEM Feld: die beiden Slots gehoeren
|
||||
// verschiedenen Populationen (Mensch +1,56 gegen autonom -4,71 EUR/Lot),
|
||||
// und sie zusammenzurechnen wuerde genau die Trennung verwischen, fuer die
|
||||
// der zweite Slot gebaut wurde. Die SUMME steht im TAG P/L oben - dort
|
||||
// summiert `day_pl.open` seit dem 19.08. bereits BEIDE Slots.
|
||||
const bpEl2 = $("hdr-pnl-brk"), bpos = d.position_brk;
|
||||
if (bpos && bpos.ticket) {
|
||||
const whtB = d.wht_pct || 0;
|
||||
const rawB = Number(bpos.pnl) || 0;
|
||||
const netB = rawB > 0 ? rawB * (1 - whtB / 100) : rawB;
|
||||
bpEl2.textContent = (netB >= 0 ? "+" : "") + cs + fmt(netB, 2);
|
||||
bpEl2.className = netB > 0 ? "up" : netB < 0 ? "down" : "";
|
||||
bpEl2.title = `Breakout-Autotrader, Ticket ${bpos.ticket} · ${bpos.lots} Lots @ `
|
||||
+ `${bpos.entry} · Trailing ${bpos.trail ? "an" : "AUS"}`;
|
||||
} else {
|
||||
bpEl2.textContent = "—";
|
||||
bpEl2.className = "";
|
||||
bpEl2.title = "Der Breakout-Autotrader haelt gerade keine Position.";
|
||||
}
|
||||
|
||||
// ── S/R-Annäherungs-Warnung (Position-Kachel) — NUR wenn kein reicherer
|
||||
// Positions-Hint (pos-srhint) läuft, sonst doppeltes „nähert sich Widerstand".
|
||||
const hasRichHint = !!((d.position && d.position.ticket) && d.sr_close_hint);
|
||||
|
||||
Reference in New Issue
Block a user