fix: 修復初始余額顯示錯誤(使用當前淨值而非配置值)

問題:
- 圖表顯示「初始余額 693.15 USDT」(實際應該是 600)
- 原因:使用 validHistory[0].total_equity(當前淨值)
- 導致初始余額隨著盈虧變化,數學邏輯錯誤

修復:
- 優先從 account.initial_balance 讀取真實配置值
- 備選方案:從歷史數據反推(淨值 - 盈虧)
- 默認值使用 1000(與創建交易員時的默認配置一致)

測試:
- 初始余額:600 USDT(固定)
- 當前淨值:693.15 USDT
- 盈虧:+93.15 USDT (+15.52%) ✓
This commit is contained in:
ZhouYongyou
2025-11-02 07:53:17 +08:00
parent a59f4951e8
commit 8d796357b2

View File

@@ -104,10 +104,10 @@ export function EquityChart({ traderId }: EquityChartProps) {
? validHistory.slice(-MAX_DISPLAY_POINTS)
: validHistory;
// 计算初始余额(使用第一个有效数据点,如果无数据则从account获取,最后才用默认值
const initialBalance = validHistory[0]?.total_equity
|| account?.total_equity
|| 100; // 默认值改为100与常见配置一致
// 计算初始余额(优先从 account 获取配置的初始余额,备选从历史数据反推
const initialBalance = account?.initial_balance // 从交易员配置读取真实初始余额
|| (validHistory[0] ? validHistory[0].total_equity - validHistory[0].pnl : undefined) // 备选:淨值 - 盈亏
|| 1000; // 默认值(与创建交易员时的默认配置一致
// 转换数据格式
const chartData = displayHistory.map((point) => {