Generated by Answer me with HTML 0.5.5 · 2026-10-20 21:43 · ★ Star on GitHub
K线缓存链路加固 · 完成
2026-10-20 LXXG step3 加固与附带修复
Lead: 三条加固全部落地并验证。附带查出并修复 157 只指数的复权污染。
结论
已加固,已修复,已验证
单点超时不再让整批判失败。指数不再查除权。 另修复 157 只指数历史价格被个股除权因子污染的问题。 全库 9713 只 stale = 0。
- 加固:重试 + 指数跳过 + 退出码分级 + 失败重跑判据
- 附带修复:157 只指数,复检 1906 只全干净
- 今日选股:未受影响,报告不重发
代码改动
| 文件 | 改动 | 作用 |
|---|---|---|
fq_utils.py |
get_xdxr_strict 退避重试 3 次 |
网络抖动自愈 |
fq_utils.py |
_reset_client 丢弃坏连接 |
不连坐后续标的 |
fq_utils.py |
is_index_code 带市场前缀判定 |
区分 sh000002 与 sz000002 |
fq_utils.py |
get_xdxr 旧契约保留返回 None |
20 个 to_qfq 调用方零改动 |
build_qfq_from_day.py |
指数不查除权 | 少一类网络失效点 |
build_qfq_from_day.py |
失败分硬桶 / 软桶 | 指数失败只 WARN |
build_qfq_from_day.py |
summary 增 failed 名单 |
下轮知道要重跑 |
tdx_daily_cron.sh |
跳过条件加 FAILED_QFQ=0 |
失败标的必被补建 |
附带发现的污染
- 起因除权接口只收 6 位码sh000001 撞上 sz000001 平安银行的除权记录
- 影响1906 只指数里 157 只历史价格按个股因子缩放
- 最严重sh000001 上证指数首日价 = 真实值的 0.41%
- 修复重建 158 只指数改为不查除权,直接用 raw
- 复检1906 只全干净与 raw .day 同价,比率 1.00000
验证
- 单元与集成 34 项全过:指数判定 16 例、重试、三连失败抛错、旧契约、真实网络 27 事件
- 个股回归:5 只 close 哈希与改前完全一致
- 真实流水线:
bash tdx_daily_cron.shrc=0,正确跳过 - 全库一致性:9713 只 stale = 0
影响面判定:
- 今日选股:信号库 universe 只含个股 5389 只,不含指数,报告不重发
wash_scan.py的 20 日涨跌:窗口内无除权事件,当前值不受影响- 研究脚本读指数长历史做基准:旧结论需重跑
回滚底本 before/、改后 after/、差异 after_*.diff 均在 /root/backups/qfq_harden_20261020/。