tradingSystem/docs/高股息阶段检测开发规格_2026-10-21.md

134 lines
7.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 高股息阶段检测开发规格
2026-10-21,北京时间。承接高股息实验。
用户明确要求排除 ST,股息每日查,其他材料按月或季度查。
本方案替代旧实验中将 ST 留作研究样本的安排。
原始核查结果保留,不改写已保存的历史。
## 目标与边界
建立独立研究清单,回答股息是否够高、公司是否值得研究、分红能否持续。
筛选放在 akg-factor-bridge。基座继续提供事实和多视角评析。
复用桥容器的独立命令,不新增常驻容器。
本流程不修改每日计划、因子、股票池、PMS 或交易参数。
## 检测节奏
| 内容 | 节奏 | 工作 |
| --- | --- | --- |
| 股息与风险名称 | 每交易日北京时间 08:05 | 检查上一交易日全市场数据、ST、上市状态及股息变化。避开盘前链和计划生成。 |
| 财务与分红事实 | 每月首次成功运行;新进入者立即补查 | 读取五年年度财务、现金流和分红公告。失败不推进复查日期。 |
| 完整个股研究 | 每季度列出复核需求;重大反方变化提前列出 | 复用现有多视角结论,保存支持、反方与未知事项。缺材料时列补查清单。 |
每天接收已有的新评析,不每天重新调用模型。
月度取数完成不等于完成季度深度研究。
第一版输出研究需求,不自动批量生成数百份模型评析。
持续性专项结论须有普通分红、盈利、现金或资本约束证据。
没有这些证据时,只能列为待核验,不能宣称大概率持续。
## 取数与判断
1. 表名由预期行情日期生成,当前为 gp_stock_factor_pro_202610。
月初使用上一交易日所属月份,禁止永久写死 202610。
日期不对、表缺失、重复代码或整路来源失败,停止本次发布。
2. 使用 dv_ttm,单位为百分数,入口暂用不低于 5%。
dv_ratio 只作上一自然年度对照,不填补缺失的 dv_ttm。
TTM 是历史观察值,不是未来承诺。
字段定义见 https://tushare.pro/document/2?doc_id=32。
3. 名称从 gp_code_all 单表读取,在内存合并。
ST、*ST、SST、S*ST 及退市名称先排除。
名称或上市状态不明的股票隔离,不能因缺名单而放行。
4. 所有观点保留实际财务材料期、评析时间、来源和未知事项。
不以视角赞成数量代替研究,不更改基座质地算法。
5. 先分成质地较好待核验、观点有分歧、已有明确风险、待补评析。
这四类不是投资评级。分红持续性在专项证据齐备前保持待核验。
6. 金融企业不套用工业企业现金流阈值。
特别分红、资本开支、债务及母子公司资金上划单独核验。
旧半年报缺口不能用报告生成时间掩盖。
## 输出、故障与撤销
独立目录保存输入、完整结果、可读报告和研究需求清单。
每次成功发布只追加,固定内容指纹,最后原子切换 latest。
相同有效输入与配置不重复归档。源失败保留旧结果,同时明确检查失败。
旧结果不能以最新日期展示。缺值不归零。
原始报告按读取时点冻结。旧无固定引用报告只称当前读取副本。
不得将副本冒充原历史时点的完整材料。
只新增独立 XXL 入口,不加入默认 build、plan、push-pool 链。
研究任务使用独立运行锁,不占五分钟计划修订的锁。
统一调度启用前须验证本地、真实只读取数和接口加载。
手工入口与日检入口随实现登记。停止独立任务即可撤销。
历史研究记录保留,交易系统无需回退。
## 实施前预判与验收
预判高股息池的完整评析覆盖不足,不能把未覆盖当基本面良好。
预判北交所新代码与名称主表可能不同步,先隔离再补源。
测试覆盖 ST 与缺名称、5% 边界、月切换、日期落后、重复记录、
旧财务期、反方观点、月度复用、新进入者、源失败、发布中断和幂等。
只读实跑核对各组数量相加、研究来源及历史文件不变。
显示主要保留股息、经营依据、风险和待核验材料。
技术标识置于详情,不堆在研究卡上。
## 开发者参考
纯逻辑和文件发布使用标准库。数据库读取复用桥 db 连接。
153 代理逐表查询,禁止联表。所有查询有确定顺序。
冻结截止时间含时区。当前截面不冒充可回测的历史版本。
月度财务来源为 gp_fina_indicator、gp_cashflow、gp_dividend。
公开日期晚于研究截止时间的材料不进入判断。
新增内容缺键按未知处理。先保存来源再形成报告。
无新业务数据库表,无模型调用,无交易写入。
## 第一版实现与入口
桥新增 dividend_watch.py、dividend_sources.py、dividend_jobs.py。
研究报告路径为 GET /research/dividend。
日检路径为 GET /research/dividend/health。
独立任务入口为 /api/v1/xxl/dividend-watch。
使用既有任务鉴权和完成回调,任务执行成功才回调成功。
第一版没有在 XXL 创建或开启日程。
任务进程中断后,重新检查归档与日检,不把任务消失视为成功。
```bash
# 开发机 · akg-factor-bridge;预期全部 OK,不连接外部服务
PYTHONDONTWRITEBYTECODE=1 python3 -m unittest test_dividend_watch test_dividend_jobs
```
```bash
# 155 桥机 · ~/project/akg-factor-bridge;代码部署后使用
docker exec akg_factor_bridge python dividend_watch.py scan
docker exec akg_factor_bridge python dividend_watch.py health
```
第二条预期 ok=true,且行情日期是上一完整交易日。
资料缺失会进入核查事项,不代表研究已通过。
健康表示本次观察已完整保存,不表示投资资格通过。
月度资料完成取数,与季度研究完成审核是两个状态。
尚无自动补齐个股评析、专项分红审核或自动交易功能。
## 2026-10-21 真实只读试跑
北京时间16:00:40冻结输入。来源行情日2026-10-20。
月表5568行,滚动股息不低于5%的有171只。
其中ST八菱排除,6只北交所新代码的名称未匹配。
余164只进入独立研究池。已有评析9只,未覆盖155只。
已有结论中,好2只,中3只,差4只。
两只好公司为丽珠集团与海尔智家,仅列优先核验。
两者财务指标期与重构报表期不同,不能直接确认分红持续性。
九份当前报告原文已冻结,均为旧格式读取副本。
它们不冒充原生成时点的固定历史版本。
本月资料读取164家公司。日期过滤后保留财务指标3447行,
现金流3444行,分红3876行。记录数不能证明完整性。
所有公司的持续性结论仍为待核验,未批准任何投资。
本地新增36项研究与调度回归。
连同现有计划版本和查询共63项禁网回归通过。
原XXL入口13项回归通过。页面分组、搜索与筛选另做浏览器验证。
当前是本地实现与真实只读取数完成,未重启或部署服务。
同月第二次实测耗时2.438秒。164家财务缓存摘要相同,9份原报告复用。
本轮没有到月度复查日的对象,没有重复读取三路财务分红资料。
公开日期只有日级精度,不能证明某份材料在当天盘前已可知。
因此本轮结果只用于当前截面研究,不进入历史策略效果统计。