134 lines
7.3 KiB
Markdown
134 lines
7.3 KiB
Markdown
# 高股息阶段检测开发规格
|
||
|
||
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份原报告复用。
|
||
本轮没有到月度复查日的对象,没有重复读取三路财务分红资料。
|
||
公开日期只有日级精度,不能证明某份材料在当天盘前已可知。
|
||
因此本轮结果只用于当前截面研究,不进入历史策略效果统计。
|