diff --git a/frontend/src/pages/Trades.tsx b/frontend/src/pages/Trades.tsx
index b4d6514..8078e9b 100644
--- a/frontend/src/pages/Trades.tsx
+++ b/frontend/src/pages/Trades.tsx
@@ -481,6 +481,14 @@ export default function TradesPage() {
: "—"}
+
+ 初始权利金
+
+ {selectedGroup.initial_premium != null
+ ? `${fmt(selectedGroup.initial_premium)} USDT`
+ : "—"}
+
+
波动点数
@@ -525,25 +533,36 @@ export default function TradesPage() {
) : null}
- {fills.map((f) => (
-
-
- {fillDescZh(
- f.leg,
- f.action,
- f.side,
- selectedGroup.close_reason,
- )}
- {f.inst_id ? (
- · {f.inst_id}
- ) : null}
-
-
- 价 {f.fill_px.toFixed(4)} · 数量 {f.qty_eth} · 手续费{" "}
- {f.fee.toFixed(4)}
-
-
- ))}
+ {fills.map((f) => {
+ const isOpt = f.leg === "option";
+ const pxLabel = isOpt ? "权利金" : "价";
+ const notional =
+ isOpt && f.action === "open"
+ ? Number(f.fill_px) * Number(f.qty_eth)
+ : null;
+ return (
+
+
+ {fillDescZh(
+ f.leg,
+ f.action,
+ f.side,
+ selectedGroup.close_reason,
+ )}
+ {f.inst_id ? (
+ · {f.inst_id}
+ ) : null}
+
+
+ {pxLabel} {f.fill_px.toFixed(4)} · 数量 {f.qty_eth}
+ {notional != null && Number.isFinite(notional)
+ ? ` · 合计 ${notional.toFixed(2)}`
+ : ""}{" "}
+ · 手续费 {f.fee.toFixed(4)}
+
+
+ );
+ })}
{summary ? (
diff --git a/frontend/src/styles/app.css b/frontend/src/styles/app.css
index a888652..ebf38d9 100644
--- a/frontend/src/styles/app.css
+++ b/frontend/src/styles/app.css
@@ -949,6 +949,12 @@ input {
overflow: hidden;
}
+/* 策略机交易记录详情:加宽,减少换行 */
+.modal-dialog.trade-detail-modal {
+ width: min(920px, 100%);
+ max-height: min(90vh, 960px);
+}
+
.modal-head {
display: flex;
align-items: center;