Show risk params box on control cards and modal.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-07-30 14:58:30 +08:00
parent c5f477b8bc
commit 67f22626e9
4 changed files with 125 additions and 14 deletions
+6
View File
@@ -223,13 +223,19 @@ async def fleet_status(_tok: Annotated[str, Depends(require_fleet_token)]) -> di
"exit_mode": st.get("exit_mode"),
"exit_target_usdt": st.get("exit_target_usdt"),
"net_profit_target": st.get("net_profit_target"),
"premium_exit_multiple": st.get("premium_exit_multiple"),
"leverage": st.get("leverage"),
"min_option_leverage": st.get("min_option_leverage"),
"perp_margin_mode": st.get("perp_margin_mode"),
"perp_qty_eth": st.get("perp_qty_eth"),
"option_qty_eth": st.get("option_qty_eth"),
"sizing_mode": st.get("sizing_mode"),
"risk_last_k": st.get("risk_last_k"),
"risk_sizing_locked": st.get("risk_sizing_locked"),
"risk_loss_pct": st.get("risk_loss_pct"),
"risk_perp_unit": st.get("risk_perp_unit"),
"risk_option_unit": st.get("risk_option_unit"),
"risk_exit_unit": st.get("risk_exit_unit"),
},
"position": {
"status": pos.get("status") or ("open" if pos.get("has_position") else "flat"),
+2
View File
@@ -127,6 +127,7 @@ class StrategyEngine:
risk_perp_unit = self.ledger.get_setting_float("risk_perp_unit", 1.0)
risk_option_unit = self.ledger.get_setting_float("risk_option_unit", 2.0)
risk_exit_unit = self.ledger.get_setting_float("risk_exit_unit", 15.0)
risk_loss_pct = self.ledger.get_setting_float("risk_loss_pct", 1.0)
risk_last_k = self.ledger.get_setting_float("risk_last_k", 0.0)
risk_preview: dict[str, Any] | None = None
pos_status = str(upl.get("status") or "flat")
@@ -225,6 +226,7 @@ class StrategyEngine:
"risk_perp_unit": risk_perp_unit,
"risk_option_unit": risk_option_unit,
"risk_exit_unit": risk_exit_unit,
"risk_loss_pct": risk_loss_pct,
"risk_last_k": risk_last_k if risk_last_k > 0 else None,
"risk_sizing_preview": risk_preview,
"risk_sizing_locked": bool(trade_locked and sizing_mode == "risk_based"),