From 17cd835e5ddca370524db7f0c4d80d7569507d8c Mon Sep 17 00:00:00 2001 From: dekun Date: Sun, 19 Jul 2026 16:32:34 +0800 Subject: [PATCH] Clarify options review layout with numbered sections and KPI tiles. Separate trade/review/stats blocks, tuck filters into a toolbar, and hide empty stat groups so the page scans more easily. Co-authored-by: Cursor --- lib/common/static/options_review.js | 32 +-- .../templates/options_review_panel.html | 219 +++++++++++++----- 2 files changed, 178 insertions(+), 73 deletions(-) diff --git a/lib/common/static/options_review.js b/lib/common/static/options_review.js index d77b230..79b7859 100644 --- a/lib/common/static/options_review.js +++ b/lib/common/static/options_review.js @@ -695,24 +695,18 @@ } function renderGroup(title, items) { - if (!items || !items.length) { - return ( - '
' + - title + - '
无数据
' - ); - } + if (!items || !items.length) return ""; var lines = items .slice(0, 8) .map(function (g) { return ( - '
' + - "" + + '
' + + '' + escapeHtml(g.key) + " · " + g.count + "笔" + - "" + + '' + fmtPnl(g.pnl_sum) + " / 胜" + (g.win_rate || 0) + @@ -722,7 +716,7 @@ }) .join(""); return ( - '
' + + '
' + title + "
" + lines + @@ -750,23 +744,31 @@ ["平均持有", fmtHold(k.avg_hold_sec)], ] .map(function (pair) { + var style = ""; + if (pair[0] === "累计盈亏") style = pnlStyle(k.pnl_sum); + if (pair[0] === "平均盈亏") style = pnlStyle(k.avg_pnl); return ( - '
' + + '
' + pair[0] + - '
' + + '
' + pair[1] + "
" ); }) .join(""); - groups.innerHTML = [ + var html = [ renderGroup("按类型", data.by_source_type), renderGroup("按标的", data.by_underlying), renderGroup("按策略", data.by_strategy), renderGroup("对冲结束原因", data.by_close_reason), renderGroup("持有周期", data.by_hold_bucket), renderGroup("Call/Put", data.by_opt_type), - ].join(""); + ] + .filter(Boolean) + .join(""); + groups.innerHTML = html || '
暂无分组数据
'; }) .catch(function () {}); } diff --git a/lib/options/templates/options_review_panel.html b/lib/options/templates/options_review_panel.html index e428d17..38fb4aa 100644 --- a/lib/options/templates/options_review_panel.html +++ b/lib/options/templates/options_review_panel.html @@ -1,20 +1,103 @@ -{# OKX 期权复盘:交易记录(5行) → 点复盘出表单 → 复盘记录 → 统计 #} +{# OKX 期权复盘:交易记录 → 复盘表单 → 复盘记录 → 统计 #}
{% if not options_enabled %}
期权未启用:请设置 OKX_OPTIONS_ENABLED=true 后重启.
{% endif %} - {# 1. 交易记录(含 Tab/筛选,固定约5行) #} -
-
-

期权复盘

- - +
+

期权复盘

+ + +
+ + {# 1. 交易记录 #} +
+
+ +
+
期权交易记录
+

点「复盘」填写表单;已复盘仍保留在此,也可在下方查看详情。

+
-

交易记录(每页5条).点「复盘」填写表单;已复盘仍保留在此列表,也可在下方查看详情.

-
- - - {# 诱饵框吸收浏览器把用户名(dekun)填进搜索框 #} - - -
-

期权交易记录

@@ -147,12 +235,17 @@ 第 1 / 1 页 - + - {# 2. 复盘上传(默认隐藏,点交易「复盘」后显示) #} - + - {# 3. 已复盘记录 + 详情 #} -
-

复盘记录

-

已保存的复盘(每页5条).点一行查看详情.

+ {# 3. 已复盘记录 #} +
+
+ +
+
复盘记录
+

已保存的复盘内容,点一行查看详情与截图。

+
+
@@ -258,9 +356,9 @@ 第 1 / 1 页 - + - {# 复盘详情对话框(点复盘记录行打开) #} + {# 详情 / 放大 #} - +