mirror of
https://ghfast.top/https://github.com/aeroxw/tick-stock-panel.git
synced 2026-09-12 16:44:15 +08:00
像其他能力一样可路由: 声明 full_minute 数据集并在设置页路由, 即接入 盘中全市场分钟落盘服务 (与 TickFlow Expert 同一能力键 intraday.universe)。 - policy: _DATASET_CAP_MAP 增补 full_minute → INTRADAY_UNIVERSE, 自定义源 声明且被路由时自动补授能力, 服务门控对两类源统一口径 - capabilities 注册表: full_minute 从不可路由 (field=None) 改为 full_minute_data_provider 偏好路由; preferences/settings API 收发新字段 - 插件契约: get_intraday_batch (修复轮, 未实现回退 get_minute 当日窗口) + get_intraday_latest (稳态增量, 可选; 未实现降级仅修复轮, 节奏下限 60s) - YAML 声明式源: full_minute 数据集与 minute 同形, loader 白名单放行, 源编辑器 UI 可配置; 仅修复轮语义 - kline_sync 边界: fetch_intraday_custom_batch / _fetch_intraday_custom_latest, 帧过北京墙钟守卫, 与 TickFlow 边界函数同纪律 - minute_refresh: 删「自定义分钟源让位」逻辑, 改按路由取数; status 增 provider / provider_effective / repair_only - 前端: 监控页卡片按能力驱动, 数据源页路由矩阵, api.ts 类型 - 测试: 门控/路由/降级/增广新增用例, 后端 1332 全过 - 文档: plugin-development / custom-data-source / configuration / features / CONTRIBUTING 契约细化 (AI 可照文档接入)
160 lines
9.5 KiB
Markdown
160 lines
9.5 KiB
Markdown
# 功能手册
|
||
|
||
各功能模块的详细说明。配置见 [configuration.md](./configuration.md),部署见 [deployment.md](./deployment.md),策略相关见 [strategy.md](./strategy.md)。
|
||
|
||
> 首次使用建议顺序:**设置 → 凭据与能力**(重新检测) → **立即跑盘后管道**(拉日 K + 算指标) → **自选页**加标的 → **选股页**扫描 → **回测页**验证 → **监控中心**配规则。
|
||
|
||
---
|
||
|
||
## 🔍 选股引擎(Screener)
|
||
|
||
**18 个内置策略**,每个策略一个独立 Python 文件,基于 Polars 表达式向量化实现(`backend/app/strategy/builtin/`):
|
||
|
||
| 类型 | 代表策略 |
|
||
| :---------- | :------------------------------------------------------- |
|
||
| 趋势 / 形态 | 趋势突破 · 均线多头 · MA 金叉 · MACD 金叉放量 · 布林突破 |
|
||
| 量价 / 涨停 | 量价齐升 · 高换手强势 · 连板股 · 断板反包 · 涨停动量 |
|
||
| 反转 / 波动 | 超跌反弹 · 超卖反转 · 新低反转 · 低波动龙头 · 回踩 MA20 |
|
||
|
||
全 A 股一次扫表,Polars 毫秒级返回。选股页点策略卡片即可扫描,结果支持导出。**分钟策略**与日线策略共用同一个标的池,按策略声明的周期自动路由执行(分钟策略依赖数据页开启分钟数据落盘)。
|
||
|
||
**ETF 支持**:选股页顶部可切换 `股票 / ETF`。ETF 复用已算好的 `kline_etf_enriched` 技术指标,仅开放**技术类内置策略**(趋势/量价/反转/波动);依赖涨停信号的策略(连板股、断板反包)为股票专有,ETF 模式下不显示。需先在数据页开启 ETF 拉取(`pipeline_pull_etf`)并跑一次盘后管道。
|
||
|
||
扩展策略的三种方式见 [strategy.md → 扩展策略](./strategy.md#扩展策略的三种方式)。
|
||
|
||
---
|
||
|
||
## 📊 指标流水线(Indicators)
|
||
|
||
原生 Polars 向量化,全 A 股一次扫表落盘 enriched Parquet(基础行情列),指标在读取时现算并带进程内快照缓存:
|
||
|
||
- **均线 / 趋势**:MA(5-60) · EMA · MACD · 动量 · 布林带
|
||
- **震荡 / 波动**:RSI · KDJ · ATR · 年化波动率 · 振幅
|
||
- **量能 / 涨跌停**:量比 · 量均线 · 涨停信号 · 连板数
|
||
- **原子信号**:MA / MACD 金叉死叉 · N 日新高新低 · 布林突破
|
||
- **复权**:基于除权因子自动前复权,回测与指标口径一致
|
||
|
||
盘后管道(15:30 CST 自动触发)会重新拉日 K + 重算 enriched 表。
|
||
|
||
---
|
||
|
||
## 🧪 回测引擎(Backtest)
|
||
|
||
基于 vectorbt(**三种模式**):
|
||
|
||
| 模式 | 说明 |
|
||
| :--- | :--- |
|
||
| 个股回测 | 单标的 + 策略,看个股历史表现 |
|
||
| 策略组合 | 一个策略扫描全市场,按组合约束回测 |
|
||
| 自由信号组合 | 多个自定义信号组合,自定义权重 |
|
||
|
||
**真实约束**:T+1 · 手续费 · 滑点 · 止损 · 最大持仓天数。
|
||
|
||
**组合管理**:最大持仓数 · 敞口控制 · 等权 / 自定义仓位。
|
||
|
||
输出净值曲线 · 夏普 · 最大回撤 · 胜率 · 交易明细。SSE 流式进度支持切页重连,不会丢失回测任务。
|
||
|
||
**分钟策略回测**:分钟级策略逐交易日回放信号、以分钟收盘价入场,输出分钟级成交明细,与日线回测同一套 T+1 / 费用约束。
|
||
|
||
**结果沉淀**:回测结果可**导出 CSV**(概要 / 净值曲线 / 交易明细 / 分标的统计四段),并可**保存候选**(完整参数与指标快照);候选在回测页「候选方案」中查看,支持**一键载入复测**,回填全部参数继续研究。
|
||
|
||
**因子与策略挖掘**:复用已有日频因子和 matrix-native 策略,通过 T-1 市场环境、相关去重和嵌套样本外验证生成研究候选。任务在 spawn worker 中运行,支持持久 run ID、取消、刷新重连和显式发布;自动周度任务默认关闭且永不自动发布。完整口径见 [因子与策略挖掘](./mining.md)。
|
||
|
||
**市场阶段与主线**:市场环境页在原 5 档状态之外新增情绪周期阶段(冰点/启动/主升/高潮/退潮/修复,由连板梯队的高度、宽度、晋级率、梯队完整度判定,平均段长约 10 天)与主线识别(概念/行业维度的涨停梯队聚合排名,可配置宽基标签过滤)。完整口径见 [市场阶段与主线识别](./market-phase.md)。
|
||
|
||
**ETF 支持**:三种模式的后端与 API 均支持 `asset_type=etf`,回测面板改从 `kline_etf_enriched` 读取(单次回测为单一资产类型,不混合股票与 ETF)。策略组合与因子回测页均有 `股票 / ETF` 切换,ETF 模式下策略列表与标的搜索跟随资产。需先开启 ETF 拉取并跑盘后管道。
|
||
|
||
---
|
||
|
||
## 📡 监控中心(Monitor)
|
||
|
||
统一规则引擎,一个页面管理**四类监控**:
|
||
|
||
| 类型 | 场景 |
|
||
| :--- | :--- |
|
||
| 策略监控 | 策略扫描结果有变化时触发(如新增符合标的) |
|
||
| 个股信号监控 | 特定个股的指标条件(如 `RSI > 80`) |
|
||
| 价格涨跌监控 | 涨跌幅 / 价格突破阈值 |
|
||
| 全市场异动 | 全市场异动(如快速拉升/跌停) |
|
||
|
||
**ETF 支持**:规则可选资产类型 `股票 / ETF`。监控引擎按规则 `asset_type` 分轮评估——ETF 规则用 ETF enriched 快照评估(`engine.evaluate(..., asset_type="etf")`),策略型规则走 ETF 历史加载器(读 `kline_etf_enriched`)。盘中触发需开启 ETF 实时行情(`realtime_pull_etf`),使 ETF 报价进入 enriched 快照。
|
||
|
||
**特性:**
|
||
|
||
- 多条件 AND/OR + 冷却期去重 + 严重级别(info / warn / critical)
|
||
- 多入口配置:监控中心新建 / 个股详情页「加监控」/ 策略卡片一键开启
|
||
- 命中后右下角弹窗(可配声效)+ 持久化到 `alerts.jsonl`,菜单未读徽标
|
||
- **触发记录详情**:每条记录展示命中的具体条件(如 `RSI>80`)与当前价位,一眼看清为何触发
|
||
|
||
### 飞书 Webhook 推送
|
||
|
||
全局一处配置飞书群机器人地址,启用推送的规则命中即推送到飞书群(支持签名校验)。可在设置页设「默认推送渠道」,新建规则自动预填。
|
||
|
||
---
|
||
|
||
## 🚨 异动监控(Abnormal Moves)
|
||
|
||
独立的异动页,按交易时间线组织为三个 tab,覆盖盘前到多日:
|
||
|
||
| Tab | 口径 |
|
||
| :--- | :--- |
|
||
| 竞价异动(盘前) | fuyao 同花顺盘前风向标:当日竞价强势榜(5-6 只/日,含竞价涨幅与概念标签),附带**当日 / 次日真实收益对照**与**追高风险标记**(高开 ≥5% 追高当日均值显著为负,来自 60 日回测) |
|
||
| 盘中异动 | 涨停 / 炸板 / 翘板 / 跌停 / 新高 / 新低 / 放量等当日信号聚合,按信号优先级 + 涨跌幅排序,复用 enriched 信号列,零新增采集 |
|
||
| 偏移异动(多日累计) | 交易所异动偏离值口径(按板块分档:主板 3 日 ±20% · 创业板/科创板 ±30% · 北交所 ±40%;10 日 +100%/−50%,30 日 +200%/−70%),实时计算接近度(≥100% 已触发 · ≥70% 边缘 · ≥50% 观察) |
|
||
|
||
竞价数据来自 fuyao 数据源(历史按日缓存,当日不缓存);未配置 fuyao key 时竞价 tab 显示引导提示。
|
||
|
||
---
|
||
|
||
## 📈 个股分析(Beta)
|
||
|
||
以「行情 + 关键价位」为主体的单标的决策页:
|
||
|
||
- **专用日 K 图表**:主图 + 成交量 + 滑块,默认近 6 个月
|
||
- **9 类关键价位**(纯函数实时计算,毫秒级):压力支撑 · 成交密集区 · 枢轴点 · 前高前低 · Keltner 通道 · ATR 波动通道 · 缺口位 · 斐波那契 · 整数关口
|
||
- **AI 四维分析**:技术 / 基本面 / 财务 / 消息面流式生成,客观技术分析视角(不输出买卖建议)
|
||
|
||
---
|
||
|
||
## 🏆 连板梯队 & 概念分析
|
||
|
||
- **连板梯队**:实时统计各连板层级(首板 / 2 连板 / 3 连板...)的标的与封单,捕捉市场情绪与题材热度
|
||
- **概念涨幅轮动**:基于 ths 概念 / 行业,统计概念板块涨幅与 RPS 轮动,AI 分析资金主线
|
||
- **盘后 AI 复盘**:盘后自动生成市场复盘,注入**龙虎榜资金动向**(席位净买/机构与游资 Top5)与**盘前风向标**对照,可定时执行、推送飞书群、下载 Markdown;复盘页内亦有龙虎榜卡片(可排序席位明细)
|
||
|
||
---
|
||
|
||
## 🧰 数据与扩展
|
||
|
||
### 数据源插件化
|
||
|
||
内置 [TickFlow](https://tickflow.org) 官方 SDK(日 K / 分钟 K / 指数 / 财务 / 实时行情),同时支持接入第三方数据源:YAML 声明自有 HTTP 接口,或开发插件源(参考实现 stock-sdk,Docker 镜像已内置)。多个数据集(日K / 除权因子 / 实时行情 / 分钟K / 五档盘口 / 财务,注册表持续扩展)按源声明自由组合,在「设置 → 数据源」切换。
|
||
|
||
详见 [custom-data-source.md](./custom-data-source.md) 与 [plugin-development.md](./plugin-development.md)。
|
||
|
||
### 全量分钟(盘中增量落盘)
|
||
|
||
「全量分钟」是独立能力(`full_minute`),**与其他能力同样可路由**:盘中将全市场当日 1 分钟 K 持续增量落盘 `data/kline_minute/`,分钟策略与分时视图即取即用。接入方式:TickFlow Expert,或声明 `full_minute` 数据集的插件/自定义源(设置 → 数据源 → 全量分钟 路由);配好能力后开启实时行情即自动运行(冷启动全天修复轮 + 稳态增量轮)。
|
||
|
||
详见 [configuration.md → 全量分钟](./configuration.md#全量分钟-full_minute)。
|
||
|
||
### 🔌 第三方数据接入(重点)
|
||
|
||
支持将自有量化项目的数据并入,与内置数据同台分析:
|
||
|
||
| 方式 | 说明 |
|
||
| :--- | :--- |
|
||
| HTTP 定时拉取 | Tushare 等 API,定时拉取并入库 |
|
||
| CSV / Excel 上传 | 页面直接上传文件 |
|
||
| JSON 写入 | 程序化写入 |
|
||
|
||
接入后自动 schema 发现 + 符号归一,页面可视化配置,最终并入 DuckDB 同台分析。
|
||
|
||
### 盘后定时管道
|
||
|
||
APScheduler 15:30 CST 自动:拉日 K → 重算 enriched 表 → 跑监控规则。
|
||
|
||
### 令牌桶限流
|
||
|
||
适配各档位 rpm / batch 限制,批量合并 + 增量拉取,避免触发数据源限流。
|