mirror of
https://ghfast.top/https://github.com/aeroxw/easy_tdx_max.git
synced 2026-09-12 19:14:19 +08:00
- web-api.md:REST/WebSocket/SSE 端点与示例;吸收 api_reference.md 的 WebSocket 帧表/控制消息/行为约定/前端接入,消除两处互补重复 - web-ui.md:行情终端与回测工作台零代码操作手册(原错位嵌套在 「本地 K 线仓库」章节下的 Web UI 块,补全章节结构) Co-Authored-By: Claude <noreply@anthropic.com>
102 lines
7.5 KiB
Markdown
102 lines
7.5 KiB
Markdown
# Web UI 使用手册
|
||
|
||
## 概述
|
||
|
||
行情终端 + 回测可视化 Web UI(v1.17 新增,v1.23 升级为行情终端)。不想写命令行?用浏览器。`easy-tdx serve` 一条命令启动,浏览器自动打开 `http://localhost:8000`。
|
||
|
||
<img src="./web-ui-page-1.png" alt="Web UI 截图 1" />
|
||
|
||
<img src="./web-ui-page-2.png" alt="Web UI 截图 2" />
|
||
|
||
<img src="./web-ui-page-3.png" alt="Web UI 截图 3" />
|
||
|
||
Web UI 包含两大模块:
|
||
|
||
- **行情终端**——侧边栏专业终端布局(行情:市场看板 / 行业总览 / 概念总览 / 自选行情 / 龙头池 / 期货持仓排名):
|
||
- **市场看板**:五大指数实时行情(SSE 推送)、全市场涨跌统计(涨/跌/平/涨停/跌停 + 堆叠条)、行业/概念板块热度榜、涨幅榜/跌幅榜、两市异动雷达(加速拉升/封涨停板/大单托盘等),点击个股打开五档盘口 + 分时/日K 对话框;
|
||
- **行业总览 / 概念总览**(v1.32.1):全部行业(一级/二级可切)/概念板块一屏尽览——板块广度统计条、涨跌幅分布直方图、热力图与表格双视图、搜索过滤、涨幅/跌幅/涨速异动三榜、翻红/翻绿轮动时间线,30s 自动刷新(休市暂停);点击板块复用详情弹窗(分时/日K + 成分股涨跌榜直达个股);
|
||
- **自选行情**:输入 6 位代码一键加自选(SQLite 持久化),全表实时刷新(SSE),行内迷你分时图,点击行看个股详情;
|
||
- **龙头池**:159 只核心龙头名单一键只扫龙头(名单仅为扫描范围,不构成任何推荐);
|
||
- **期货持仓排名**(v1.29.1):中金所每日成交/持仓前 20 名会员一键采集(品种下拉 + 日期选择 + 自动回溯最近交易日开关),合约页签自动标注主力,前 20 名合计多单/空单/净持仓概览,三组排名并排表格;附「品种一览」「多单空单加减仓怎么看」新手科普(重点:排名看不出套保还是投机,空单多 ≠ 看空市场);
|
||
- **实时推送架构**:后端单条轮询循环 fan-out 到所有 SSE 连接(交易时段 ~8s 一拍,盘外降频 60s,无人订阅自动休眠),前端指数退避重连。
|
||
- **回测工作台**——浏览器里选标的、挑策略、调参数,K 线买卖点、净值回撤、25 项绩效指标一目了然。支持组合回测、参数网格寻优、多策略结果对比、策略库(SQLite 持久化)与多策略资金分仓、信号雷达、Walk-Forward / 一条龙附加分析、**AI 解读与解读历史**(分析:单标的回测 / 组合回测 / 参数寻优 / 结果对比 / 策略库 / 信号雷达 / AI 解读历史),全程零代码。
|
||
|
||
## 启动
|
||
|
||
**前置条件:**
|
||
|
||
```bash
|
||
# 需安装 web 可选依赖(FastAPI + Uvicorn)
|
||
pip install -e ".[web]"
|
||
```
|
||
|
||
**启动(一条命令):**
|
||
|
||
```bash
|
||
# 启动后端 + 自动打开浏览器(默认 http://localhost:8000)
|
||
easy-tdx serve
|
||
|
||
# 自定义端口/不自动开浏览器
|
||
easy-tdx serve --port 8080 --no-open-browser
|
||
```
|
||
|
||
> 后端启动后约 1-2 秒会自动弹出浏览器。前端界面已编译进 `web-ui/dist/`,由后端同源托管,无需单独跑前端开发服务器。后端行情连接失败时回测路由仍可用(用内联数据),但取行情功能需要后端连通通达信服务器。
|
||
|
||
## 桌面版(EXE)
|
||
|
||
不想装 Python?下载 EXE 直接用(面向零基础用户):
|
||
|
||
Windows 用户可以下载打包好的单一 EXE(约 80-150MB),双击即可使用,无需安装 Python/Node 或任何依赖:
|
||
|
||
1. 到 [Releases 页面](../../releases) 下载最新的 `easy-tdx-<版本>-windows.exe`
|
||
2. 双击运行(首次会被 SmartScreen 拦截,点"更多信息 → 仍要运行")
|
||
3. 等待 2-5 秒,浏览器自动打开回测界面
|
||
4. 右下角任务栏出现小图标,右键 → "退出" 可关闭
|
||
|
||
EXE 打包方法见 [`packaging.md`](./packaging.md)。
|
||
|
||
## 回测工作台页面
|
||
|
||
打开浏览器后,「分析」分组下是回测工作台的核心页面:
|
||
|
||
### 1. 单标的回测(首页 `/`)
|
||
|
||
左侧配置面板从上到下填写,右侧自动出图:
|
||
|
||
- **取行情**:选市场(深/沪/北),填 6 位代码,选周期(日线/周线/分钟线),设日期范围(默认最近 3 年),点「取行情」。超过 800 根会自动翻页拼接
|
||
- **选策略**:下拉选 18 个内置策略之一(双均线交叉、MACD、布林带、RSI、KDJ、唐安奇通道、CCI 等),选中后参数表单自动出现,按推荐范围调参
|
||
- **资金与成本**:初始资金、佣金率、滑点、成交模式(默认 next_open 下一根开盘成交)
|
||
- 点「开始回测」,右侧依次出:K 线主图(红三角=买入、绿钉=卖出)、净值曲线与回撤双轴图、25 项绩效指标表(总收益/夏普/最大回撤/胜率/盈亏比/Ulcer/VaR/SQN 等)、成交记录明细
|
||
- 结果区右上角有「💾 保存策略」按钮,把当前策略 + 标的 + 成绩快照存进策略库,下次直接载入或参与组合回测
|
||
|
||
### 2. 组合回测(`/portfolio`)
|
||
|
||
- 添加多只标的(如 SZ:000001、SH:600519),选策略和日期范围
|
||
- 点「开始组合回测」,右侧出:组合整体绩效(加权收益率)、组合净值曲线(各标的按日期对齐求和)、各标的净值归一化叠加对比图、各标的绩效横向对比表
|
||
- 同样有「保存策略」按钮,可把整个组合配置存进策略库
|
||
|
||
### 3. 参数寻优(`/optimize`)
|
||
|
||
- 先取行情(同单标的),选策略
|
||
- 勾选 1-2 个想寻优的参数,填入取值列表(逗号分隔,如 fast 填 `5,10,20,30`),页面实时显示网格点数(上限 200)
|
||
- 点「开始寻优」,右侧出:最优结果摘要、参数热力图(2 参数时,颜色映射收益率)、所有网格点排名表
|
||
- 排名表每行有「查看」按钮,点击跳转单标的回测页,自动填充该参数组合跑完整回测
|
||
|
||
### 4. 结果对比(`/compare`)
|
||
|
||
- 左侧列出最近 20 个已完成的回测任务(含单标的和组合)
|
||
- 勾选 2-4 个,右侧出:归一化净值叠加图(初始=1,看相对走势)、8 项核心指标横向对比表(总收益/夏普/最大回撤/胜率/盈亏比/交易数/年化/波动率)
|
||
|
||
### 5. 策略库(`/strategies`,v1.17.11 新增)
|
||
|
||
- 保存你觉得不错的策略,下次直接载入或重跑。数据存在本地 SQLite 单文件(`~/.easy_tdx/strategies.db`,重启不丢)
|
||
- 每张卡片展示策略名、标的、保存时的成绩快照(总收益/夏普/回撤)、标签、备注、创建时间
|
||
- **载入**:点「载入」跳转对应回测页(单标的/组合),自动回填标的、日期、策略参数,可直接重跑
|
||
- **多策略组合回测**:勾选多个单标的策略(卡片左上角复选框),点顶部「组合回测(N)」——每个策略各拿 1/N 资金、各跑在它保存时的原标的上(取最新行情),净值曲线按日期对齐求和,看综合表现。结果区展示:组合净值曲线、25 项完整绩效指标(与单标的同口径)、各策略绩效对比表、净值叠加图、各策略当前持仓表(回测结束时谁还套着票)
|
||
|
||
## 注意事项
|
||
|
||
> ⚠️ **任务不持久化**:回测结果存在后端进程内存,重启 `easy-tdx serve` 后清空。对比页只能选当前运行期间产生的任务。**策略库除外**——保存到策略库的策略持久存在 SQLite,重启不丢。
|
||
|
||
技术栈:Vue 3 + Vite + TypeScript + Pinia + ECharts(按需引入,构建产物约 800KB)。前端代码在 `web-ui/` 目录,独立 `package.json`,不依赖 Python 环境。
|