fix: improve trading and UI

This commit is contained in:
tinkle-community
2025-12-11 00:47:12 +08:00
parent e9e60c82cb
commit 19937ee260
13 changed files with 328 additions and 76 deletions

View File

@@ -32,6 +32,7 @@ interface FormState {
exchange_id: string
strategy_id: string
is_cross_margin: boolean
show_in_competition: boolean
scan_interval_minutes: number
initial_balance?: number
}
@@ -62,6 +63,7 @@ export function TraderConfigModal({
exchange_id: '',
strategy_id: '',
is_cross_margin: true,
show_in_competition: true,
scan_interval_minutes: 3,
})
const [isSaving, setIsSaving] = useState(false)
@@ -109,6 +111,7 @@ export function TraderConfigModal({
exchange_id: availableExchanges[0]?.id || '',
strategy_id: '',
is_cross_margin: true,
show_in_competition: true,
scan_interval_minutes: 3,
})
}
@@ -162,6 +165,7 @@ export function TraderConfigModal({
exchange_id: formData.exchange_id,
strategy_id: formData.strategy_id || undefined,
is_cross_margin: formData.is_cross_margin,
show_in_competition: formData.show_in_competition,
scan_interval_minutes: formData.scan_interval_minutes,
}
@@ -439,6 +443,40 @@ export function TraderConfigModal({
</div>
</div>
{/* Competition visibility */}
<div>
<label className="text-sm text-[#EAECEF] block mb-2">
</label>
<div className="flex gap-2">
<button
type="button"
onClick={() => handleInputChange('show_in_competition', true)}
className={`flex-1 px-3 py-2 rounded text-sm ${
formData.show_in_competition
? 'bg-[#F0B90B] text-black'
: 'bg-[#0B0E11] text-[#848E9C] border border-[#2B3139]'
}`}
>
</button>
<button
type="button"
onClick={() => handleInputChange('show_in_competition', false)}
className={`flex-1 px-3 py-2 rounded text-sm ${
!formData.show_in_competition
? 'bg-[#F0B90B] text-black'
: 'bg-[#0B0E11] text-[#848E9C] border border-[#2B3139]'
}`}
>
</button>
</div>
<p className="text-xs text-[#848E9C] mt-1">
</p>
</div>
{/* Initial Balance (Edit mode only) */}
{isEditMode && (
<div>