From b09bcd84145e6c4ff79127301b007a782192e9ab Mon Sep 17 00:00:00 2001 From: dekun Date: Mon, 3 Aug 2026 07:56:32 +0800 Subject: [PATCH] Show min option hours in control risk/open column. Co-authored-by: Cursor --- backend/app/api/fleet.py | 3 +++ control/frontend/src/pages/Monitor.tsx | 10 +++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/backend/app/api/fleet.py b/backend/app/api/fleet.py index 092f834..c7acf59 100644 --- a/backend/app/api/fleet.py +++ b/backend/app/api/fleet.py @@ -271,6 +271,9 @@ async def fleet_status(_tok: Annotated[str, Depends(require_fleet_token)]) -> di "min_option_leverage": _pick( "min_option_leverage", float(settings.min_option_leverage) ), + "min_option_hours": _pick( + "min_option_hours", float(settings.min_option_hours) + ), "perp_margin_mode": st.get("perp_margin_mode"), "perp_qty_eth": st.get("perp_qty_eth"), "option_qty_eth": st.get("option_qty_eth"), diff --git a/control/frontend/src/pages/Monitor.tsx b/control/frontend/src/pages/Monitor.tsx index bf86857..8bd0b58 100644 --- a/control/frontend/src/pages/Monitor.tsx +++ b/control/frontend/src/pages/Monitor.tsx @@ -180,8 +180,9 @@ type RiskLines = { lossPct: string | null; exit: string; openRatio: string | null; - /** 表格「风险/开仓」列:如 5%/1:2;手动为 —/名义比 */ + /** 表格「风险/开仓」列:如 5%/1:2/12;手动为 —/名义比/时长 */ riskOrOpen: string; + minHours: string; leverage: string; }; @@ -218,7 +219,9 @@ function riskLines(strat: Record): RiskLines { const openRatio = riskBased ? `${unitLabel(strat.risk_perp_unit)}:${unitLabel(strat.risk_option_unit)}` : `${unitLabel(strat.perp_qty_eth)}:${unitLabel(strat.option_qty_eth)}`; - const riskOrOpen = `${lossPct || "—"}/${openRatio}`; + const hoursN = Number(strat.min_option_hours); + const minHours = Number.isFinite(hoursN) ? unitLabel(hoursN) : "—"; + const riskOrOpen = `${lossPct || "—"}/${openRatio}/${minHours}`; return { riskBased, sizing: riskBased ? "以损定仓(A)" : "手动开仓(B)", @@ -227,6 +230,7 @@ function riskLines(strat: Record): RiskLines { exit, openRatio, riskOrOpen, + minHours, leverage: leveragePair(strat), }; } @@ -789,7 +793,7 @@ export default function MonitorPage() { {s.rounds ?? "—"} {risk.riskOrOpen}