From da1ac7182894b75178ee499cfd7a331e006002b9 Mon Sep 17 00:00:00 2001 From: icy Date: Tue, 4 Nov 2025 01:54:21 +0800 Subject: [PATCH] =?UTF-8?q?Fix=20ComparisonChart=20data=20display=20issue?= =?UTF-8?q?=20The=20chart=20was=20not=20showing=20data=20because=20the=20A?= =?UTF-8?q?PI=20response=20format=20changed.=20Fixed=20the=20calculation?= =?UTF-8?q?=20of=20PnL=20percentage=20by=20computing=20it=20from=20total?= =?UTF-8?q?=5Fpnl=20and=20balance=20values=20(initial=5Fbalance=20=3D=20ba?= =?UTF-8?q?lance=20-=20total=5Fpnl).=20Now=20the=20AI=20competition=20char?= =?UTF-8?q?t=20should=20properly=20display=20performance=20comparison=20da?= =?UTF-8?q?ta.=20=F0=9F=A4=96=20Generated=20with=20[Claude=20Code](https:/?= =?UTF-8?q?/claude.ai/code)=20Co-Authored-By:=20tinkle-community=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/components/ComparisonChart.tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/web/src/components/ComparisonChart.tsx b/web/src/components/ComparisonChart.tsx index 56810e0e..600421a3 100644 --- a/web/src/components/ComparisonChart.tsx +++ b/web/src/components/ComparisonChart.tsx @@ -92,8 +92,13 @@ export function ComparisonChart({ traders }: ComparisonChartProps) { }); } + // 计算盈亏百分比:从total_pnl和balance计算 + // 假设初始余额 = balance - total_pnl + const initialBalance = point.balance - point.total_pnl; + const pnlPct = initialBalance > 0 ? (point.total_pnl / initialBalance) * 100 : 0; + timestampMap.get(ts)!.traders.set(trader.trader_id, { - pnl_pct: point.total_pnl_pct, + pnl_pct: pnlPct, equity: point.total_equity }); });