diff --git a/web/src/components/ComparisonChart.tsx b/web/src/components/ComparisonChart.tsx index c888fc6e..f2077e93 100644 --- a/web/src/components/ComparisonChart.tsx +++ b/web/src/components/ComparisonChart.tsx @@ -38,7 +38,19 @@ export function ComparisonChart({ traders }: ComparisonChartProps) { const traderIds = traders.map((trader) => trader.trader_id) const batchData = await api.getEquityHistoryBatch(traderIds) return traders.map((trader) => { - return batchData.histories[trader.trader_id] || [] + const history = batchData.histories?.[trader.trader_id] || [] + + // If backend doesn't return total_pnl_pct, calculate it from equity + if (history.length > 0 && history[0].total_pnl_pct === undefined) { + const initialEquity = history[0].total_equity + history.forEach((point: any) => { + point.total_pnl_pct = initialEquity > 0 + ? ((point.total_equity - initialEquity) / initialEquity) * 100 + : 0 + }) + } + + return history }) }, {