diff --git a/web/src/components/AITradersPage.tsx b/web/src/components/AITradersPage.tsx
index 41b3cdc2..6965d8f8 100644
--- a/web/src/components/AITradersPage.tsx
+++ b/web/src/components/AITradersPage.tsx
@@ -182,8 +182,8 @@ export function AITradersPage({ onTraderSelect }: AITradersPageProps) {
if (!editingTrader) return;
try {
- const model = enabledModels?.find(m => m.id === data.ai_model_id);
- const exchange = enabledExchanges?.find(e => e.id === data.exchange_id);
+ const model = allModels?.find(m => m.id === data.ai_model_id);
+ const exchange = allExchanges?.find(e => e.id === data.exchange_id);
if (!model) {
alert(t('modelConfigNotExist', language));
@@ -782,8 +782,8 @@ export function AITradersPage({ onTraderSelect }: AITradersPageProps) {
isOpen={showEditModal}
isEditMode={true}
traderData={editingTrader}
- availableModels={enabledModels}
- availableExchanges={enabledExchanges}
+ availableModels={allModels}
+ availableExchanges={allExchanges}
onSave={handleSaveEditTrader}
onClose={() => {
setShowEditModal(false);
diff --git a/web/src/components/CompetitionPage.tsx b/web/src/components/CompetitionPage.tsx
index b123a75b..3168bd14 100644
--- a/web/src/components/CompetitionPage.tsx
+++ b/web/src/components/CompetitionPage.tsx
@@ -116,7 +116,7 @@ export function CompetitionPage() {
{t('realTimePnL', language)}
-
+
{/* Right: Leaderboard */}
diff --git a/web/src/lib/api.ts b/web/src/lib/api.ts
index 607f4be6..0e066dce 100644
--- a/web/src/lib/api.ts
+++ b/web/src/lib/api.ts
@@ -260,10 +260,10 @@ export const api = {
return res.json();
},
- // 获取前10名交易员数据(无需认证)
+ // 获取前5名交易员数据(无需认证)
async getTopTraders(): Promise {
const res = await fetch(`${API_BASE}/top-traders`);
- if (!res.ok) throw new Error('获取前10名交易员失败');
+ if (!res.ok) throw new Error('获取前5名交易员失败');
return res.json();
},