Files
tick-stock-panel/操作说明书.md
T
shy3130 65f46a1e7f feat(mainline): 主线与情绪周期统计默认剔除风险警示(ST)股
问题: ST板块 241 天中 209 天上主线榜、108 天第一。原因: ① ST 是跨行业
状态桶(416只)非投资题材, 真实主线被概念拆分而 ST 统一聚桶; ② 主板 ST
2026-07-06 前涨跌幅 5%(价格规则已内置切换日), 封板成本减半, 弱市刷板
(7/1 全市场 218 家涨停中 67 家 ST); ③ 概念成分/ST 标记按当前维表快照
回写历史存在归属污染。

改动:
- market_mainline: load_risk_warning_symbols(维表名称含 ST, 与涨跌停
  判定共用 price_limits 权威实现, 600s 缓存); compute_mainline_range
  聚合前剔除, exclude_st 参数可覆盖
- regime_builder: run_regime_batch 汇聚点统一剔除(情绪驱动与主线同
  口径); 宽度类指标同 df 过滤, 占比几乎不受影响
- preferences: sentiment_exclude_st 默认 True; 经 mainline-filter
  API 可读写; 前端过滤面板加开关, 切换时自动全量重算
- 测试: 符号集加载/缓存、主线剔除(计数/龙头/最小涨停门槛交互)、
  regime 剔除 A/B、偏好往返; 说明书 FAQ 24.11

验证: 后端 918 测试通过(新增 5 个); tsc 通过; 全量重算后主线 0 行
ST 上榜(此前 209 天), rank1 变为海工装备/卫星导航/液冷服务器等真实
主题; 7/1 涨停数 218→151 与 ST 占比精确吻合; A/B 对照: 阶段标签
34/242 天变化(rally/ignite→repair 为主, 方向符合预期 — 剔除 ST 灌水
后正面阶段更难触发), repair 主导(78%)为口径切换前既有特征。
2026-08-17 16:49:28 +08:00

45 KiB
Raw Blame History

TickFlow A 股智能量化工作台操作说明书

适用前端版本:0.1.87

文档用途:面向部署者、普通使用者和策略使用者,说明系统安装、配置、数据准备、各功能页面操作、维护与排错方法。

风险提示:本项目用于数据分析和策略研究,不构成任何投资建议。历史表现不代表未来收益,实盘决策及其风险由使用者自行承担。

目录

1. 项目概览

TickFlow A 股智能量化工作台是一套本地优先的 A 股数据分析与策略研究工具,主要功能包括:

  • A 股、ETF、指数日 K 与分钟数据管理。
  • 自选股管理、行情查看和标的详情分析。
  • 内置策略、自定义策略和 AI 创建策略。
  • 因子回测、策略回测、参数优化和步进优化。
  • 个股、概念、行业、连板梯队及财务分析。
  • 策略、价格、涨跌、个股信号和市场异动监控。
  • AI 个股分析、财务分析和盘后复盘。
  • TickFlow、数据源插件、自定义 HTTP 数据源和扩展数据接入。

系统默认将主要业务数据保存在本机 data/ 目录。除调用所配置的数据源、AI 服务和通知服务外,页面操作与数据管理均围绕本地数据进行。

1.1 使用前须知

  1. 页面是否显示某项功能,取决于当前版本、TickFlow 能力检测结果及本地是否已有对应数据。
  2. 分钟 K、五档盘口、财务数据等功能需要相应数据权限。
  3. 第一次运行后必须先同步基础数据,否则策略、分析和回测页面可能没有结果。
  4. AI 功能需要单独配置兼容的模型服务或 Codex CLI。
  5. 策略结果是研究结果,不等同于实盘委托或成交记录。

2. 安装与启动

2.1 环境要求

开发模式建议准备:

  • Python 3.11 或更高版本。
  • Node.js 20 或更高版本。
  • uv,用于 Python 依赖与后端运行。
  • pnpm,用于前端依赖与前端运行。
  • Git,用于获取和更新代码。

使用 Docker 部署时,需要安装 Docker 与 Docker Compose。

2.2 准备环境配置

进入项目根目录,复制环境变量模板:

cp .env.example .env

按需编辑 .env。密钥、访问密码和 Webhook 等敏感信息不要提交到 Git。

2.3 macOS/Linux 开发模式

在项目根目录执行:

./dev.sh

默认访问地址:

  • 前端:http://localhost:3011
  • 后端:http://localhost:3018

开发模式下,前后端通常分别输出日志。遇到启动或接口问题时,先查看对应终端中的错误信息。

2.4 Windows 开发模式

在 PowerShell 中执行:

.\dev.ps1

默认访问地址与 macOS/Linux 开发模式一致。

2.5 Docker 部署

在项目根目录执行:

cp .env.example .env
docker compose up --build

启动完成后访问:

http://localhost:3018

后台运行可使用:

docker compose up --build -d

查看运行日志:

docker compose logs -f

Docker 中的 /app/data 应映射到宿主机持久化目录。不要仅将数据保存在容器可写层,否则重新创建容器后可能丢失数据。

2.6 停止系统

开发模式可在启动终端中按 Ctrl+C 停止。

Docker 模式执行:

docker compose down

docker compose down 默认不会主动删除已挂载的数据目录,但执行带卷删除参数的命令前必须确认数据备份情况。

3. 首次进入系统

3.1 首次配置向导

首次打开页面时,系统会依次引导完成:

  1. 声明:阅读项目用途和风险说明。
  2. 欢迎:了解基础功能和使用流程。
  3. TickFlow Key:填写并检测数据服务 Key;也可以暂时跳过。
  4. 能力探测:确认日 K、实时行情、分钟 K、财务数据等实际可用能力。
  5. 完成:进入主界面。

跳过 Key 后仍可进入系统,但依赖 TickFlow 的数据能力会受限。之后可在“设置 → TickFlow”补充配置。

3.2 访问密码

公网或多人可访问的部署必须设置访问密码。首次初始化密码的入口仅应在本机或可信内网使用,密码至少 6 位。也可以通过 .env 中的 AUTH_PASSWORD 预先配置。

3.3 首次同步数据

进入主界面后,优先打开“数据”页面并点击“立即同步”。建议至少准备:

  1. 个股维表。
  2. A 股日 K。
  3. 除权因子。
  4. Enriched 策略分析表。

需要使用 ETF、指数、分钟 K 或财务分析时,再同步对应数据。

同步任务应等待完成后再进入策略或回测页面。任务失败时查看页面任务记录及后端日志,不要连续重复提交相同任务。

4. 推荐使用流程

新用户建议按照以下顺序使用:

  1. 在“设置 → TickFlow”保存 Key,并执行“重新检测”。
  2. 在“数据”页同步个股维表、日 K、除权因子和 Enriched 数据。
  3. 在“自选”页添加关注标的,熟悉行情和详情对话框。
  4. 在“策略”页先运行内置策略,确认本地数据链路正常。
  5. 在“回测”页验证策略历史表现和交易时序。
  6. 在“设置 → 实时监控”配置实时刷新、飞书或企业微信。
  7. 在“监控中心”创建规则并观察触发记录。
  8. 配置 AI 后,再使用个股分析、财务分析和 AI 复盘。
  9. 定期备份 data/.env

5. 通用界面与操作

5.1 左侧菜单

左侧菜单用于切换看板、自选、策略、回测、分析、监控、数据和设置页面。菜单显示和顺序可在“设置 → 菜单设置”调整。

动态扩展分析页面也会出现在左侧菜单中,其内容来自“扩展页面”配置。

5.2 日期口径

策略、分析和连板梯队等页面通常按交易日期展示数据:

  • 最新日期不一定是自然日当天,休市日会回退到最近交易日。
  • 当日数据未完成同步时,结果可能为空或不完整。
  • 切换日期后,应等待页面重新加载对应交易日的数据。

5.3 股票详情对话框

在自选、策略、监控记录、连板梯队和成分股列表中点击股票,通常会打开统一的个股详情对话框。可查看日 K、分时、成交量、量比及其他可用指标。

成交量对比可按前 1 至 20 个交易日设置;大于 1 日时使用对应交易日的平均成交量,不按自然日计算。关闭量比开关或缩小图表显示密度后,辅助标注会按界面规则隐藏。

5.4 概念与行业标签

点击页面中的概念或行业标签,会打开统一的成分股对话框。可在弹窗内查看对应板块成分并继续打开个股详情。该弹窗只负责展示和导航,不改变原页面的筛选状态。

5.5 搜索、筛选和排序

  • 搜索一般支持代码、名称或关键词。
  • 多个筛选条件可能同时生效,结果异常少时先清除筛选。
  • 点击表头或排序控件可切换升序、降序。
  • 页面刷新后是否保留筛选取决于对应页面的配置保存方式。

6. 看板

看板用于集中查看市场摘要、监控通知和常用分析入口。

6.1 主要内容

  • 市场与指数概览。
  • 自选或关注标的摘要。
  • 监控通知列表。
  • 常用功能入口和业务状态。

6.2 监控通知操作

点击监控通知中的股票名称或代码,会直接打开个股详情对话框,不会在监控卡片内部嵌入个股内容。需要管理规则或查看完整触发历史时,进入“监控中心”。

6.3 数据刷新

看板数据来自本地数据和实时行情服务。数据不更新时依次检查:

  1. 数据页是否已完成同步。
  2. “设置 → 实时监控”是否开启实时行情。
  3. 当前是否处于交易时段。
  4. TickFlow 能力检测是否包含对应行情权限。

7. 自选

自选页用于维护个人关注标的,并快速查看行情、日 K、分时和常用指标。

7.1 添加标的

  1. 打开“自选”。
  2. 使用搜索框输入股票或 ETF 的代码、名称。
  3. 从结果中选择标的并添加。

也可以使用截图 OCR 导入功能识别截图中的股票,再确认识别结果后批量加入。OCR 结果可能受到图片清晰度影响,提交前应检查代码和名称。

7.2 查看方式

  • 表格视图:适合排序、筛选和对比多个字段。
  • 卡片视图:适合快速查看单个标的摘要。
  • 自定义列:选择需要展示的基础指标、日 K 或分时列。

点击任一标的可打开详情对话框。

7.3 筛选与排序

可按板块和数值条件过滤自选标的,并按指定字段排序。若结果为空,先检查是否存在多个筛选条件叠加。

7.4 列表管理

支持:

  • 将标的移到顶部。
  • 从自选中移除。
  • 清空自选列表。

清空是批量删除操作,执行前应确认。清空自选不会删除行情数据或策略数据。

7.5 实时与分时限制

  • Free 能力下,仅自选列表前 5 个标的进入实时监控范围。
  • 分时列通常需要 Pro+ 分钟数据能力。
  • 有分钟数据权限并不等于页面会自动刷新,还需在“设置 → 实时监控”开启对应刷新开关。

8. 策略

策略页用于运行和管理选股策略,查看指定交易日的候选标的及评分。

8.1 股票与 ETF 策略

页面顶部可切换股票和 ETF。两类策略池相互独立:

  • 切换到 ETF 时只展示适用于 ETF 的策略。
  • 切回股票时应恢复股票策略列表。
  • 当前资产类型会影响数据范围、可用策略及结果。

8.2 策略卡片

策略卡片通常展示策略名称、状态、结果数量和监控状态。策略列表先加载摘要,点击卡片后再按需加载明细,以减少进入页面时的等待时间。

常用操作:

  1. 点击卡片查看选股结果。
  2. 切换交易日期查看历史结果。
  3. 调整基础参数或策略参数后重新计算。
  4. 开启或关闭该策略的监控。
  5. 编辑、复制或删除允许管理的用户策略。

监控开关只控制监控行为,不应改变策略选股结果或结果数量。

8.3 “全部”结果

选择“全部”可查看多个策略的合并结果。相同股票可能被多个策略命中,应结合策略名称、评分和命中原因判断,而不是把合并结果当作一个独立策略。

8.4 结果表格

在结果区可进行:

  • 按评分、涨跌幅或其他字段排序。
  • 使用基础指标与策略字段筛选。
  • 调整列表列配置。
  • 点击股票查看详情。
  • 将标的加入自选。

评分是策略定义的一部分。自定义评分字段若未直接落表,系统会在策略执行时基于可用字段临时计算;若评分仍为空,应检查评分表达式所需字段是否存在、字段名是否正确以及当日数据是否完整。

8.5 参数调整

参数分为两类:

  • 基础参数:系统通用的市值、价格、交易状态等过滤条件。
  • 策略参数:由具体策略定义的阈值、窗口和信号参数。

修改后需要重新运行或触发页面重算。历史已保存结果不会因为修改当前参数而自动改写,除非主动对对应日期重新计算。

8.6 创建策略

点击“创建策略”后,可选择:

  • AI 创建:描述选股目标,由 AI 生成符合项目规范的策略。
  • 自定义代码:根据策略模板编写逻辑、参数、评分及元数据。

创建前建议明确:

  1. 适用资产类型。
  2. 选股条件。
  3. 评分标准与排序方向。
  4. 可调参数及默认值。
  5. 所需数据字段。

每次打开创建窗口都会创建新的草稿,不应沿用上一次已创建策略的 ID。若出现 ID 重复,关闭窗口后重新打开,并确认正在使用最新前端;仍有问题时执行“设置 → 系统设置 → 刷新前端缓存”。

8.7 自定义策略目录

默认目录:

data/strategies/custom/
data/strategies/ai/

页面删除用户策略时,会删除相应用户策略文件并更新列表;Docker 用户无需进入容器手工删除。内置策略受保护,不会通过用户策略删除操作移除。

删除前应确认策略是否仍被监控规则、回测配置或其他功能引用。

8.8 自动运行

是否在进入策略页时自动运行策略,可在“设置 → 系统设置”调整。策略数量较多或本地数据量较大时,关闭自动运行并按需点击策略卡片,可减少进入页面的计算压力。

9. 回测

回测页包含“因子回测”“策略回测”“参数优化 Beta”和“步进优化 Beta”。开始前应确保回测区间内的数据已同步完整。

9.1 因子回测

用于评估单个因子在历史截面上的区分能力。

主要配置:

  • 因子。
  • 股票或 ETF。
  • 回测起止日期。
  • 分组数量。
  • 等权或因子加权。
  • 佣金等成本参数。

主要结果:

  • IC:因子与未来收益的相关性。
  • IRIC 的稳定性指标。
  • IC 胜率:IC 方向符合预期的比例。
  • 分层收益:各因子分组的收益差异。
  • 多空表现:高分组与低分组组合的相对表现。

回测前必须确认因子方向。例如“值越大越好”和“值越小越好”会影响排序和多空定义。

9.2 策略回测

用于把策略信号转换为持仓和交易记录,评估完整交易过程。

基础配置

  • 策略与资产类型。
  • 股票池。
  • 起止日期。
  • 基础过滤条件。
  • 策略参数。

成交时序

建仓和清仓应分别选择成交口径。日线数据无法证明信号发生后的日内准确成交价,因此通常使用下一可成交时点、当日收盘或次日开盘等明确口径。

开启分钟成交后,如策略支持卖出信号,可选择在信号触发后的下一分钟开盘成交。这里的“下一分钟”表示:信号在当前分钟确认后,使用下一根分钟 K 的开盘价模拟成交,避免使用尚未确认的数据和产生未来函数。

分钟成交需要:

  1. TickFlow Pro+ 或等效分钟数据能力。
  2. 回测区间内完整的分钟 K。
  3. 标的已纳入分钟数据获取范围。

未开启分钟成交时,仍按所选日线成交口径运行,不会影响原有日线回测。

交易约束

  • A 股 T+1 约束。
  • 佣金。
  • 印花税。
  • 滑点。
  • 最大持仓数量。
  • 总敞口。
  • 仓位分配方式。
  • 止损规则。
  • 最大持有期。

结果解读

结果通常包括:

  • 净值曲线。
  • 总收益与年化收益。
  • 夏普比率与索提诺比率。
  • 最大回撤。
  • 胜率。
  • 交易记录和持仓变化。

历史策略结果与回测交易记录不是同一口径:策略结果表示某个交易日“哪些股票被选中”,回测记录还会叠加成交时序、资金、持仓上限、T+1、费用、止损和卖出规则。因此两者数量或日期不完全一致并不代表系统使用了两套选股逻辑。

9.3 参数优化 Beta

参数优化用于在指定范围内搜索策略参数组合。

操作流程:

  1. 选择策略、资产类型和回测区间。
  2. 选择优化目标。
  3. 选择优化模式。
  4. 勾选需要扫描的参数并设置范围、步长或候选值。
  5. 启动任务,查看每组参数的结果。

优化任务由独立 worker 执行,可取消并在页面恢复任务状态。参数组合数量会随参数维度快速增长,应从少量参数和较小范围开始。

不要直接把历史区间最优参数视为未来最优参数,需结合样本外验证和稳定性判断。

9.4 步进优化 Beta

步进优化即 Walk-Forward Optimization,用于检验参数在滚动样本外区间的稳定性。

主要参数:

  • 训练天数:每一折用于选择参数的历史长度。
  • 测试天数:紧接训练区间的样本外验证长度。
  • 步进天数:下一折向前移动的长度。

每一折会在训练区间内优化参数,再把选出的参数用于相邻测试区间。重点关注:

  • OOS 样本外复利表现。
  • IS 到 OOS 的收益退化。
  • 各折参数和收益方向的一致性。
  • 有效折数量。

如果回测区间太短,无法覆盖训练窗口与测试窗口,任务会失败。此时应延长总区间或缩短训练、测试天数。

10. 个股分析

个股分析用于集中查看单只股票的行情、关键点位和 AI 报告。

10.1 基础分析

  1. 搜索股票代码或名称。
  2. 选择标的。
  3. 查看日 K、成交量和关键价位。
  4. 根据需要创建点位提醒。

点位提醒可用于价格到达、上穿或下穿指定位置后的监控。创建后应到“监控中心”确认规则状态和触发记录。

10.2 AI 四维分析

配置 AI 后,可对个股生成多维分析报告。报告使用本地可用行情与指标作为上下文,并发送给当前配置的 AI 服务。

同一交易日已有报告时,页面会提示查看现有报告或重新生成。重新生成会产生新的模型调用和费用。

10.3 历史报告

支持查看、复制、删除和重新分析历史报告。复制失败时应确认浏览器剪贴板权限;页面会在浏览器限制原生剪贴板接口时使用兼容方式。

11. 连板梯队

连板梯队用于查看涨停、跌停及其连续状态。

11.1 模式切换

  • 涨停模式:涨停、炸板、断板及连板梯队。
  • 跌停模式:跌停、翘板、止跌及连跌梯队。

可切换交易日期查看历史结果。涨跌停价格会根据市场、板块、ST 状态及对应日期规则计算,不能简单固定为 10%。

11.2 卡片信息

卡片可能展示:

  • 股票名称、代码和涨跌幅。
  • 连板或连跌高度。
  • 封单量和封单额。
  • 概念和行业标签。
  • 一字板标签。

“一字”表示当日价格形态满足一字涨停或一字跌停判断。该标签基于已有行情字段计算,不会额外发起高频数据请求。

11.3 五档盘口修正

有 Pro+ 五档能力时,可使用盘口数据修正真假封板状态。若关闭修正或权限不足,页面以日 K/实时行情的可用字段判断。

单股封单监控同样需要对应五档能力。

11.4 板块与成分股

页面会汇总概念与行业分布。点击概念或行业标签可打开成分股列表,再点击成分股查看个股详情。

12. 概念分析

概念分析使用内置的同花顺概念数据,观察板块轮动、强弱和龙头候选。

12.1 数据准备

没有概念数据时,页面会提供获取入口。首次获取完成后再进行分析。概念成分会随数据源更新,不应把旧成分永久视为最新状态。

12.2 主要功能

  • 涨幅与 RPS 轮动。
  • 领涨主线和领跌方向。
  • 概念矩阵。
  • 概念搜索和成分数量。
  • 龙头候选及评分拆解。

点击概念名称或标签可查看成分股。龙头评分是多个指标的综合结果,应结合成分股走势、流动性和市场环境判断。

13. 行业分析

行业分析使用内置的同花顺行业数据,按行业层级观察强弱、涨跌分布与龙头。

13.1 主要功能

  • 切换行业层级。
  • 查看最强行业与涨跌行业数量。
  • 查看领涨、领跌行业。
  • 使用行业矩阵比较行业表现。
  • 查看行业成分股和龙头评分。

点击行业标签可打开成分股对话框。不同层级的行业分类范围不同,比较前应确认处于同一层级。

14. 财务分析

财务分析依赖 Expert 或等效财务数据能力。

14.1 数据内容

  • 核心财务指标。
  • 利润表。
  • 资产负债表。
  • 现金流量表。
  • 股本及历史股本。

历史股本用于改善历史换手率计算:当日数据优先使用最新维表;历史日期有可用历史股本时使用历史股本,没有时回退到最新维表股本。

14.2 同步与更新

可执行全部同步,也可对单张财务表执行更新。首次使用建议全部同步;后续只更新变化的数据可缩短等待时间。

数据页财务卡片支持按 Enriched 批次重新计算历史换手率并覆盖结果。执行前应确认历史股本同步完整;任务期间避免重复发起同一重算。

14.3 个股财务查看

搜索股票后,可查看各报告期指标和报表变化。财报日期、公告日期和交易日期含义不同,分析时应避免使用尚未公告的数据推断更早交易日。

14.4 AI 财务分析

配置 AI 后,可生成财务报告、关注点和风险摘要。支持:

  • 复制报告。
  • 最小化报告窗口。
  • 查看历史报告。
  • 重新生成。

本地最多保留 20 条相关历史报告时,应及时导出需要长期保存的内容。

15. 监控中心

监控中心用于管理规则和查看触发历史。页面通常左侧为触发记录,右侧为规则列表或编辑区。

15.1 监控类型

  • 策略监控:监控交易信号或选股结果变化。
  • 个股信号:监控信号库中的技术或自定义信号。
  • 价格/涨跌监控:监控价格、涨跌幅或上下穿条件。
  • 市场异动:监控涨跌停、连板或其他市场状态。
  • 板块监控:监控大盘指数、概念题材或行业板块的涨跌幅和分钟异动。

15.2 创建规则

  1. 点击新增规则。
  2. 选择规则类型与分类。
  3. 选择作用范围,例如指定标的、策略结果或全市场。
  4. 添加一个或多个条件。
  5. 选择条件组合方式:AND 或 OR。
  6. 设置冷却期、严重级别和提示内容。
  7. 保存并启用。

AND 要求所有条件同时成立;OR 表示任一条件成立即可。全市场规则计算范围大,创建前应确认数据权限和刷新频率。

板块监控中,一条大盘规则可选择多个指数,系统会对每个指数独立判断和触发。概念与行业按有效成分股等权计算,有效成分不少于 5 只且实时行情覆盖率达到 80% 时才会触发。分钟异动在收集到完整窗口后才开始判断,首份行情只用于建立基线。

15.3 内置信号示例

系统可提供日内分时价格上穿/下穿均价、指标上穿/下穿 0 轴等信号。涉及日内分时的信号需要:

  • 分钟 K 或日内分时权限。
  • 已开启对应实时监听。
  • 标的已加入分钟数据获取范围。

没有分钟数据时,不应使用日 K 猜测日内穿越时点。

15.4 规则管理

规则可启用、停用、编辑和删除。删除需要二次确认,删除规则不会删除股票数据或策略文件。

冷却期用于避免同一条件持续成立时重复发送通知。测试规则时可临时缩短冷却期,正式使用时再恢复合理值。

15.5 触发记录

触发记录支持筛选和清空。点击记录中的股票会打开个股详情对话框;点击概念或行业标签会打开成分股列表。

清空只删除触发历史,不会删除监控规则。

15.6 通知方式

可用通知包括:

  • 页面弹窗。
  • 通知声效。
  • 语音播报。
  • 飞书 Webhook。
  • 企业微信 Webhook。
  • 企业微信智能机器人长连接。

页面通知、声效和语音在“设置 → 系统设置”配置;飞书与企业微信在“设置 → 实时监控”配置。

发送到飞书或企业微信的内容会直接展示业务标题和正文,不添加无意义的产品前缀。类似 ladder 的内部类型会转换为用户可理解的连板/梯队描述。

16. AI 复盘

AI 复盘用于基于市场数据生成盘后总结。

16.1 使用前准备

  1. 在“设置 → AI 设置”完成模型配置并测试连接。
  2. 同步当日日 K 和指数数据。
  3. 如需通知,配置飞书或企业微信。

16.2 生成复盘

  1. 打开“AI 复盘”。
  2. 刷新市场数据。
  3. 可选填写特别关注的方向或问题。
  4. 开始生成。
  5. 页面以流式方式展示结果,并在完成后归档。

支持复制、下载 Markdown 和删除历史报告。

16.3 定时复盘与推送

可设置定时复盘。任务运行时需要服务持续在线、数据已更新且 AI 配置有效。生成完成后可推送到飞书或企业微信。

定时任务时间应晚于日 K 和指数数据完成时间,避免用不完整数据生成报告。

17. 指数

指数页用于管理指数列表、指数日 K 与分时行情。

17.1 数据同步

首次使用依次执行:

  1. 同步指数列表。
  2. 同步指数日 K。

指数数据与股票策略数据链路隔离,不会混入股票选股范围。

17.2 查看指数

  • 搜索并选择指数。
  • 设置日期范围。
  • 查看指数日 K。
  • 在支持时查看与日 K 联动的分时走势。

指数分时通常需要 Pro+ 能力。无权限时,日 K 功能仍可独立使用。

18. 数据

数据页是系统的数据管理中心。策略、回测和分析出现异常时,应先在此确认数据状态。

18.1 数据画像卡片

页面可能包含:

  • 个股维表。
  • 日 K。
  • 除权因子。
  • Enriched。
  • 指数。
  • ETF。
  • 分钟 K。
  • 财务数据与历史股本。
  • 扩展数据。

卡片会显示数据量、日期范围、更新时间或任务状态。卡片显示“有数据”不代表所有日期均完整,应结合起止日期判断。

18.2 立即同步

“立即同步”按当前配置更新数据。执行前可选择数据范围:

  • A 股。
  • 指数。
  • ETF。

同步可能包含多个阶段。关闭浏览器页面一般不会立即停止后端任务,但不要在任务进行中清除数据或重启服务。

18.3 修正数据

用于重新获取或修复指定范围内的异常数据。适用于缺失交易日、字段异常或历史规则更新后的修正。

修正前应先缩小日期和标的范围。全量修正耗时较长,也会增加数据源调用量。

18.4 扩展历史

用于把本地日 K 等数据向更早日期扩展。扩展范围受数据源权限和服务端历史覆盖范围限制。

18.5 Enriched 重算

Enriched 是供策略和分析使用的增强数据表,包含基础行情衍生指标、信号和扩展字段。以下情况通常需要重算:

  • 更新了计算逻辑。
  • 补充了历史日 K 或除权因子。
  • 新增或启用了需要落入 Enriched 的字段。
  • 历史结果存在缺失。

可按配置批次计算,避免一次加载全部标的。重算会覆盖对应范围的 Enriched 结果,不会删除原始日 K。

18.6 财务换手率重算

财务数据和历史股本同步后,可点击财务数据卡片上的计算/更新图标,按照 Enriched 的批次设置重新计算历史换手率。

计算规则:

  • 当前日期优先使用最新维表股本。
  • 历史日期优先使用当时可用的历史股本。
  • 缺少历史股本时回退到最新维表股本。

重算会覆盖目标范围中的换手率字段,应等待任务完成并检查日志。

18.7 分钟 K 设置

分钟 K 数据量较大,应明确:

  • 需要同步的标的池。
  • 日期范围。
  • 时间周期。
  • 权限和调用频率。

开启日内监控并不自动补齐全部历史分钟 K。用于回测时,应单独确认回测区间覆盖完整。

18.8 扩展数据

可配置 HTTP 拉取、上传 CSV/Excel,或通过 JSON API 写入扩展数据。详细规则见第 20 章

18.9 测试端点

测试端点用于验证数据源地址、鉴权、响应格式和字段映射。测试成功只代表样例请求可解析,正式同步前还需确认分页、限流和历史范围。

18.10 页面设置与任务时间

可设置:

  • 盘前维表任务时间。
  • 盘后数据管道时间。
  • 实时行情开关。
  • 轮询间隔。
  • 同步批次等页面参数。

盘后管道应晚于数据源完成当日更新的时间。交易日内频繁运行全量管道可能得到不完整日 K。

18.11 切换数据源

切换后,未配置的数据集会按系统回退规则使用 TickFlow。切换前应先测试新数据源,并确认代码、日期、价格和复权字段能正确归一。

18.12 清除数据

清除数据用于重新初始化本地数据。此操作可能影响所有策略、回测和分析页面。

执行前必须:

  1. 备份整个 data/ 目录。
  2. 确认没有同步或计算任务运行。
  3. 明确清除范围。
  4. 预留重新同步时间。

Windows 或受限沙箱中若系统回收站不可用,页面会使用受控的直接删除回退流程;目标路径仍会受到安全校验,不能借此删除任意目录。

19. 设置

设置页包含 TickFlow、AI 设置、实时监控、数据源 Beta、扩展页面、信号库、菜单设置和系统设置。

19.1 TickFlow

可进行:

  • 保存或替换 Key。
  • 清除 Key。
  • 重新检测能力。
  • 查看实际能力、RPM、批量限制和检测日志。

更换 Key 后应立即重新检测。页面功能以检测结果为准,不只依据套餐名称判断。

19.2 AI 设置

支持 OpenAI 兼容接口或 Codex CLI,也提供 DeepSeek、通义、GLM、Kimi 和自定义服务等配置预设。

常用配置:

  • API 地址。
  • 模型名称。
  • API Key。
  • 其他服务所需参数。

Codex CLI 模式可复用本机登录态。保存前先执行“测试连接”,确认地址、模型和认证有效。

AI 分析会把所需行情、指标、财务信息和用户输入发送给所配置的模型服务。使用第三方服务前应了解其数据和隐私政策。

19.3 实时监控

可设置:

  • 是否开启实时行情。
  • 轮询间隔。
  • 页面 SSE 刷新范围。
  • 自选日 K/分时图刷新。
  • 策略日 K/分时图刷新。
  • 左侧指数卡片刷新。
  • 连板五档盘口修正。
  • 飞书和企业微信 Webhook。
  • 企业微信智能机器人长连接。

Free 能力仅实时覆盖自选前 5 个标的。轮询间隔不应低于数据源允许的频率,否则可能触发限流。

实时刷新时,已有日 K/分时内容会保留到新数据返回后再更新,避免列表列短暂消失和闪烁。

19.4 数据源 Beta

支持:

  • TickFlow。
  • 数据源插件。
  • 自定义数据源。

插件可安装、启用、停用和卸载。自定义源可配置日 K、除权因子、实时行情和分钟 K 等数据集。

配置项通常包括 URL、请求方法、鉴权、RPM、批量大小、超时、响应数据路径和字段映射。未配置的数据集按回退规则使用 TickFlow。

19.5 扩展页面

扩展页面用于把扩展数据字段组合成动态分析页面,并加入左侧菜单。配置时应选择数据集、展示字段、筛选项和页面名称。

删除扩展页面只移除页面配置,不等同于删除扩展数据集。

19.6 信号库

  • 内置信号只读,保证系统规则稳定。
  • 自定义信号由字段、运算符和值组成。
  • 启用后生成 csg_* 信号字段。
  • 信号可用于策略、回测和监控。

编辑信号前应确认字段的数据频率。日线字段不能准确替代分钟级触发条件。

19.7 菜单设置

支持拖动排序、显示/隐藏菜单和配置数字徽标。扩展页面也可以参与排序。

隐藏菜单只影响导航显示,不删除页面数据或功能配置。

19.8 系统设置

可设置:

  • 进入策略页是否自动运行。
  • 监控通知弹窗。
  • 通知声效。
  • 语音播报。
  • 播报语音选择。
  • 刷新前端缓存。
  • 查看当前版本和检查更新。

“刷新前端缓存”用于解决升级后仍显示旧页面的问题,不会清除用户配置和本地股票数据。

20. 数据源、扩展数据与插件

20.1 插件化原则

项目的数据接入已经插件化。新增第三方数据源时,应通过数据源插件或自定义数据源配置接入,不建议直接修改核心同步流程。

插件负责把来源各异的数据转换为项目统一格式,业务页面只依赖统一的数据接口。这样可以避免第三方接口变化影响策略、回测和分析逻辑。

20.2 自定义数据源

适合通过 HTTP API 提供标准数据的场景。接入步骤:

  1. 新建自定义数据源。
  2. 为需要的数据集配置端点。
  3. 设置请求方法和鉴权。
  4. 设置 RPM、批量大小和超时。
  5. 指定响应中的数据路径。
  6. 完成字段映射。
  7. 测试端点。
  8. 小范围同步并核对数据。
  9. 再切换为正式数据源。

至少要正确处理代码、交易日期、开高低收、成交量/额以及复权相关字段。日期、单位或代码格式错误可能不会立即报错,但会产生错误指标。

20.3 数据源插件

插件适合复杂鉴权、分页、签名、多个端点组合或特殊数据规范。插件应只承担数据获取和归一化职责,策略与页面不应依赖插件内部实现。

安装第三方插件前应检查来源和代码。插件运行在本地服务环境中,可能具备读取配置和访问网络的能力。

开发细节参见:

20.4 扩展数据接入

支持:

  • HTTP 定时拉取。
  • CSV/Excel 文件上传。
  • JSON API 写入。

数据至少必须归一到 symbol,才能与股票维表和其他分析数据关联。

存储模式:

  • Snapshot:只保留当前状态,适合标签、分类和最新属性。
  • 时序模式:按日期保存历史值,适合每日指标、评分或事件。

选择错误的存储模式会影响历史回测。例如会随时间变化的指标不应只保存为当前快照。

20.5 扩展分析页面

扩展数据同步成功后,可在“设置 → 扩展页面”选择字段并生成动态分析菜单。页面只负责展示已接入数据,不会自动把字段加入所有策略。

需要在策略中使用扩展字段时,应确认该字段已进入对应策略数据链路或 Enriched 数据。

21. 权限与能力说明

下表用于快速理解常见能力,最终以“设置 → TickFlow → 重新检测”的实际结果为准。

能力级别 常见可用能力 主要限制或用途
None 历史日 K 无需 Key;盘后通常约 1 至 2 小时更新
Free 历史日 K、自选前 5 个标的实时行情 实时刷新最低约 6 秒;覆盖范围有限
Starter+ 全市场实时能力 适合更广范围实时行情和监控
Pro+ 分钟 K、批量五档等 用于分时、分钟回测、封单与盘口修正
Expert 财务数据 用于财务分析、历史股本和相关重算

能力名称和服务策略可能变化,因此:

  1. 保存 Key 后执行“重新检测”。
  2. 查看检测日志、RPM 和批量限制。
  3. 页面提示权限不足时,以具体缺失能力为准。
  4. 使用第三方插件时,以插件实现的数据集能力为准。

22. 数据目录、备份与迁移

22.1 主要目录

项目数据主要位于:

data/

Docker 容器内通常为:

/app/data

自定义和 AI 策略通常位于:

data/strategies/custom/
data/strategies/ai/

22.2 备份内容

至少备份:

  • 整个 data/ 目录。
  • .env
  • 额外安装的数据源插件或自定义部署配置。

.env 含敏感信息,备份文件应加密或保存在可信位置。

22.3 备份时机

建议在以下操作前备份:

  • 升级项目。
  • 清除或全量重算数据。
  • 更换数据源。
  • 调整数据库或存储结构。
  • 迁移服务器。

备份时最好先停止服务,或至少确认没有同步、回测和重算任务运行,以保证文件一致性。

22.4 迁移

迁移到新机器的一般步骤:

  1. 在原机器停止服务。
  2. 备份 data/.env 和额外插件。
  3. 在新机器获取相同或兼容版本代码。
  4. 恢复上述文件到对应位置。
  5. 启动服务。
  6. 重新检测 TickFlow 与 AI 连接。
  7. 抽查自选、策略、数据范围和监控规则。

跨系统迁移时,应检查文件权限和 Docker 挂载路径。

23. 更新与维护

23.1 Docker 更新

更新前先备份,再执行:

git pull
docker compose up --build -d

然后查看日志:

docker compose logs -f

23.2 开发模式更新

更新代码后,根据项目锁文件重新安装依赖并重启 ./dev.sh.\dev.ps1。如页面仍显示旧版本,使用“设置 → 系统设置 → 刷新前端缓存”。

23.3 更新后检查

  1. 首页和设置页能否打开。
  2. 当前版本号是否正确。
  3. 数据画像是否正常。
  4. 自选和策略结果是否正常加载。
  5. 实时行情、AI 和通知连接是否有效。
  6. 重要监控规则是否仍启用。

23.4 禁止使用的清理命令

不要在项目目录执行:

git clean -fdx

该命令可能删除 Git 未跟踪和忽略的文件,包括全部本地用户数据、密钥配置与自定义策略。

24. 常见问题与排错

24.1 页面卡片没有数据

  1. 打开“数据”检查相应数据集是否存在。
  2. 确认日期范围覆盖当前选择日期。
  3. 查看同步任务历史和后端日志。
  4. 完成日 K 后确认 Enriched 是否已生成。

24.2 策略显示 0 个结果

依次检查:

  • 当前是股票还是 ETF。
  • 选择日期是否有数据。
  • 基础过滤是否过严。
  • 策略参数是否合理。
  • 页面结果表是否还有额外筛选。
  • Enriched 是否完成更新。

开启或关闭策略监控不应改变选股数量。如果数量随监控开关变化,应记录策略 ID、日期和操作步骤并查看后端日志。

24.3 策略卡片加载很慢

  • 策略卡片摘要应批量加载,明细在点击后按需加载。
  • 关闭“进入策略页自动运行”。
  • 确认后端没有同时执行全量同步、重算或大量回测。
  • 检查磁盘速度和 Enriched 数据量。
  • 查看浏览器网络请求及后端耗时日志。

24.4 创建策略提示 ID 已存在

  1. 关闭创建对话框并重新打开。
  2. 确认表单没有加载上次完成的草稿。
  3. 在系统设置刷新前端缓存。
  4. 检查 data/strategies/custom/data/strategies/ai/ 是否确有同名策略。

不要仅为消除提示而随意删除文件,先确认文件对应的策略。

24.5 分时或分钟回测不可用

  • 重新检测是否有 Pro+ 或等效分钟能力。
  • 检查分钟数据同步状态和日期范围。
  • 确认标的已加入分钟数据池。
  • 检查实时监控设置中的分时刷新开关。
  • 回测时确认已开启分钟成交选项。

24.6 AI 功能不可用

  • 在“AI 设置”重新测试连接。
  • 检查 API 地址、模型名称和 Key。
  • 检查模型账户余额、预算和调用限额。
  • Codex CLI 模式检查本机登录状态。
  • 查看服务端是否能访问所配置的 AI 地址。

24.7 “规范化 META 失败:找不到 META 字典”

这通常表示 AI 返回内容没有提供可识别的策略元数据。处理方式:

  1. 使用当前版本内置的策略提示词重新生成。
  2. 不要手工删除生成内容中的 META
  3. 检查模型是否截断输出。
  4. 确认模型返回的是完整策略代码,而不是解释性文本。

24.8 财务数据不可用

  • 确认检测到 Expert 或等效财务能力。
  • 在数据页同步财务数据。
  • 检查单表更新时间和任务日志。
  • 历史换手率不正确时,先确认历史股本,再执行批次重算。

24.9 实时行情不刷新

  • 确认当前处于交易时段。
  • 确认 TickFlow Key 和实时能力。
  • 开启“设置 → 实时监控 → 实时行情”。
  • 检查轮询间隔是否符合服务限制。
  • Free 用户确认标的是否位于自选前 5 个。
  • 检查浏览器与后端之间的 SSE 连接。

24.10 跌停或涨停信号不准确

  • 涨跌停规则会随板块、ST 状态和历史日期变化,不能固定按 10% 判断。
  • 确认个股维表和名称/ST 信息已更新。
  • 历史判断应使用对应交易日规则,而不是当前名称直接覆盖历史状态。
  • 实时信号应优先使用合法涨跌停价与实时价格比较,并处理价格精度。

24.11 主线排行或情绪周期里没有 ST 板块

  • 市场环境页的「主线过滤」默认开启"统计剔除 ST 股":名称含 ST 的风险警示股不参与涨停梯队与主线统计,情绪周期驱动指标同口径。
  • 原因:ST 是跨行业的状态标签而非投资题材,且主板 ST 在 2026-07 前涨跌幅为 5%,封板成本减半,混入会系统性抬高涨停宽度与高度。
  • 如需恢复全市场口径,在「市场环境 → 情绪周期 → 主线排行 → 过滤」中关闭开关并保存(会自动全量重算,约 1-2 分钟)。
  • 修改开关或维表名称快照变化后,建议点「重算」使历史与新口径一致。

24.12 飞书或企业微信没有收到通知

  • 测试 Webhook 是否有效。
  • 检查监控规则是否启用且产生触发记录。
  • 检查冷却期。
  • 检查服务端网络能否访问通知地址。
  • 查看后端日志中的发送状态。

24.13 前端仍是旧界面

  1. 打开“设置 → 系统设置”。
  2. 点击“刷新前端缓存”。
  3. 重新加载页面。
  4. Docker 部署确认镜像已重新构建。

24.14 删除策略失败或返回 500

  • 确认删除的是用户策略,不是内置策略。
  • 检查 data/strategies/ 挂载目录是否可写。
  • Docker 部署检查宿主机目录权限。
  • 查看后端错误日志中的文件路径和具体原因。

当前删除逻辑支持从页面删除用户策略文件,不要求用户进入 Docker 容器操作。

24.15 数据删除提示回收站不可用

Windows 沙箱或容器可能无法使用系统回收站。当前版本会在目标通过安全路径校验后使用受控直接删除。若仍失败,检查数据目录权限和挂载状态,不要手工扩大删除范围。

24.16 查看日志

开发模式:查看运行 dev.shdev.ps1 的前后端终端。

Docker 模式:

docker compose logs -f

定位问题时建议同时记录:发生时间、页面、操作步骤、标的或策略 ID、选择日期、错误提示和相关日志。

25. 安全建议

25.1 敏感信息

以下内容不得提交到公开 Git 仓库:

  • .env
  • TickFlow Key。
  • AI API Key。
  • 飞书与企业微信 Webhook。
  • 访问密码。
  • 含个人偏好或敏感数据的完整备份。

25.2 公网部署

  • 必须设置访问密码。
  • 建议通过 HTTPS 反向代理访问。
  • 只开放必要端口。
  • 限制管理页面和数据目录访问。
  • 定期更新项目和基础镜像。
  • 不在日志中打印完整密钥或 Webhook。

25.3 忘记访问密码

认证信息位于:

data/user_data/auth.json

处理前必须停止服务并备份该文件和 data/。直接修改或删除认证文件属于高风险操作,可能改变访问控制状态;应由部署管理员在确认影响后执行,完成后立即重新设置密码。

25.4 第三方代码与插件

安装第三方策略或数据源插件前,应审查代码、依赖和网络访问行为。不要运行来源不明的插件,也不要向第三方提交不必要的本地数据。

25.5 AI 数据边界

使用 AI 功能时,相关行情、财务内容、策略描述和用户输入可能发送到所配置的模型服务。涉及私有策略或敏感数据时,应使用可信服务并确认其存储政策。

26. 常用术语

术语 说明
个股维表 股票代码、名称、市场、行业、股本等基础属性表
日 K 以交易日为周期的开、高、低、收、量、额数据
分钟 K 以分钟为周期的行情数据,用于分时和更精细的回测
除权因子 用于处理分红、送转、拆并股等价格连续性的调整因子
Enriched 在基础行情上计算指标、信号和扩展字段后的策略分析数据
Snapshot 只表达当前状态、不保留每日变化的快照数据
RPS 相对强弱指标,用于比较标的或板块在一段时间内的表现
IC 因子值与未来收益之间的相关性
IR IC 均值相对波动的稳定性指标
IS In-Sample,样本内训练或优化区间
OOS Out-of-Sample,样本外验证区间
步进优化 Walk-Forward Optimization,滚动训练并在相邻区间验证
SSE 服务端向浏览器持续推送更新的连接方式
五档盘口 买卖盘各五档价格与数量,用于辅助判断封板状态
冷却期 规则触发后抑制短时间内重复通知的时长
T+1 A 股买入后通常需下一交易日才能卖出的交易约束
滑点 模拟成交价相对理论价格的不利偏差

相关文档