feat(HEL-457): 估值字段级质量门、股票主档每日发布和资金流历史回补

- field_gates 按数据集配置关键字段非空率下限/非有限比例/相对上一批次的塌陷保护,
  字段大面积为空的批次拒发并保留上一正式批次,可读失败原因入 batches.error
- 股票主档交易日 20:00/23:10 自动刷新并发布版本化快照(eod_stocks + publications),
  覆盖新上市/简称变化/N前缀摘除;/v1/stocks 携带 batch_id/published_at,无变化跳过
- moneyflow 历史回补(默认 60 交易日,跳过已发布日期);未发布点查返回
  available_from/available_to 与 history_not_backfilled 标记,缺失不再静默
- eod-refresh 新增 --force --dataset 安全重发(仍走全部质量门,上一批次可回滚)
- 保持 HEL-435 盘后重试机制;新增 22 项测试覆盖字段拒发/正常通过/旧批保留/
  主档新增改名/资金流覆盖/重复执行幂等

Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
multica-agent
2026-09-04 21:36:20 +08:00
co-authored by multica-agent
parent c9892050c3
commit bed6450992
14 changed files with 1058 additions and 37 deletions
+27 -1
View File
@@ -16,5 +16,31 @@
"index_history_trading_days": 260,
"eod_retry_start": "15:15",
"eod_retry_interval_minutes": 30,
"eod_retry_cutoff": "23:30"
"eod_retry_cutoff": "23:30",
"moneyflow_history_trading_days": 60,
"stocks_refresh_times": [
"20:00",
"23:10"
],
"field_gates": {
"valuation": {
"fields": [
"turnover_rate",
"volume_ratio",
"total_mv",
"circ_mv",
"pe_ttm",
"pb",
"ps_ttm",
"dv_ttm"
],
"min_nonnull_rate": 0.9,
"min_nonnull_rate_by_field": {
"pe_ttm": 0.5,
"dv_ttm": 0.3
},
"max_nonnull_drop_vs_prev": 0.15,
"max_nonfinite_rate": 0.01
}
}
}