夜雨聆风学习资料网

ARTICLE · 1322017

AI 工具实践备忘 · 2026年10月末–11月初(三周报)

AI 工具实践备忘 · 2026年10月末–11月初(三周报)

一、三周主线:v5.0 从架构搭建到生产闭环

项目:FM_trade 生态 — Quant Signal Factory 信号工厂 + my-bot 趋势交易引擎核心引擎:FFO 因子计算层 + ML Ensemble(CatBoost/XGBoost/GBDT) + P1 因子共识合成(IC 加权 Z-score)策略执行:TiMi 9/9 策略引擎 + STABLE HMM 无监督 Regime 配置

这三周跨过了 v5.0 从"架构设计 + 组件开发"到"生产闭环 + 持续监控"的关键跃迁:

周
主题
关键词
W43(10/18-24)
Phase 2A 架构就绪
Agent 解耦、GFlowNet 桥接、LLM 编译器首战、STABLE↔TiMi 桥接
W44(10/25-31)
Phase 2B 交付 + 管线加固
CANSLIM 第九策、HMM 月频 cron、TSFM 放弃
W45(11/1-7)
v5.0 收口闭环
60 因子注入验收、FactorFactory Bridge 上线、覆盖度 94.4%

二、W43:Agent 解耦与 LLM 编译器首战

Phase 2A 的四个缺口全部填平,Agent 从管线中解耦为独立的 LLM 决策层:

缺口
交付
LLM 驱动编译
stable_timi_bridge.py
 双模(LLM primary + rule fallback)
TiMi 午盘重跑
timi_midday.py
 用 akshare 实时行情重跑策略
信号库集成
ingest_timi_signals.py
 信号转 JSONL
TiMi 健康检查
healthcheck.py
 三层检查 + 格式化报告

LLM 编译器首次实战:在极端恐慌的市场环境下,走通了"编译策略 → 部署 → TiMi 自动加载"的完整闭环。DeepSeek Agent 替代了原来的静态决策矩阵,配置为 30 秒超时、温度 0.3、新鲜度合约(max_age_days = 1)。

同时完成 77 个 GFlowNet 因子的注册→契约→同步全链路(68 个 active 因子已同步),并发现 pool_max_IC 卡在 0.3556 的天花板——拆解出 VWAP 天花板、信号悬崖、重复入池三个根因。

STABLE HMM 也正式成为 TiMi 的权威宏观输入:HMM 推断 → regime 决策 → 策略选择 → 仓位调整,全自动闭环;HMM 与宏观指标分歧时触发三级告警并自动降仓。


三、W44:第九策交付与一个明确的"不做"

CANSLIM 第九策补齐后,TiMi 策略矩阵达到 9/9 全覆盖:动量、均值回归、突破、波动率、PEAD、资金驱动、题材驱动、CANSLIM 成长股(七维评分:EPS + RS + SMR + Acc/Dis + Industry + Inst + MGMT)、质量价值。CANSLIM 集成 O'Neil 风控体系,341 项测试全绿。

Phase 3 TSFM 明确放弃:TimesFM / Lag-Llama 需要 GPU,当前环境 CPU-only,时序基础模型在 CPU 上不可行。于是 v5.0 以 Phase 1 + Phase 2 交付收口,TSFM 保留为未来升级项。

这一周还修掉了一个隐蔽的 P0:晨报的 CSI300 数据错误,根因是 claude -p 未调用 Wind MCP、静默降级到午间盘数据——报告照常生成、格式完全正确,但数据是另一套。三层修复后才算真正闭环。


四、W45:收口闭环(本周核心)

60 因子注入验收

60 个非平凡因子 × 500 只 CSI500 股票,生成 30,000 个 .day.bin 文件,零错误。IC 验证中 37/60 通过 |IC| > 0.015 阈值,最佳 RankIC 为 -0.0428,中位数 0.0209。

FactorFactory Bridge 投产

把 Phase 1 的因子合成为可交易信号,一条链跑通:IC 筛选(|IC| > 0.015)→ 当日有效性检测(≥30 只股票)→ 缩尾 Z-score(1%/99% 截断)→ IC 加权排序归一化 → 输出 [-1, +1] 的共识信号。

结果:覆盖 499/500 只股票,37/37 有效因子全部贡献,与 ML 信号重叠率 0%——ML 选创业板 sz3*,P1 选上海主板 sh6*,两者天然正交。

覆盖度从 25.9% 修到 94.4%

初始化时只有 11/37 个因子有效,四层根因逐一拆解:

根因
修复
效果
VWAP 数据缺失
用 amount/volume 计算 vwap
+3.3%
P1 bin 文件静态
新增日频扩展脚本
时效性修复
日历数据缺失
baostock 回填 472 只 × 4 天
主因修复
日期选择错误
智能回退到有数据的日期
鲁棒性保障

四道鲁棒性防护

防护层
机制
触发条件
Bin 完整性检查
抽检 CSI500 样本
close 为 NaN 或长度不足
Bin 覆盖率健康
采样 20 只
覆盖率 < 50%
P1 覆盖度趋势
日频记录 + 历史对比
覆盖度下降 > 10 个百分点
日历更新守卫
无实际数据不添加日期
下载为空

五、管线编排审计:两个"白跑"的 P0

收口之后对日频全链路做了一次依赖与时间冲突审计,发现 7 项问题,其中两个 P0 尤其值得记录:

① P1 信号无人消费。alpha_signals_p1.json 已投产,但晨报、午报、Daily Scan 三个 LLM 报告都只读 ML 的 alpha_signals.json——新信号每天在生成、每天被丢弃,从未被任何下游使用。

② 对比框架未接入调度。 v4.3 vs v5.0 的对比脚本依赖 ML/P1 双轨都更新完毕,却没有任何 cron 触发它。

其余问题:EOD 与 Signal Factory 在 30 分钟内重复调用同一批 akshare 接口;Step 1 数据更新失败后后续步骤仍继续用旧数据生成信号(只有 CSI300 是硬阻断);PowerShell 脚本无整体超时;两个 "Step 1.5" 命名冲突。

修复后:晨报与 Daily Scan 均新增 P1 读取逻辑(含陈旧检测、双轨共振、P1 独立发现、覆盖度章节);管线加入 $script:DataOk 标志位,数据更新失败即跳过信号生成与同步;命名冲突与过时的脚注一并清理。超时 watchdog 待排期。


六、一个刺眼的数字:IC 0.07,胜率 15.6%

W46 的核心任务被这个矛盾定死了:模型 IC = 0.07,按常理 Top-decile 胜率应在 55–60%,实际只有 15.6%,同期超额收益 -8.44%。

排查后确认根因不是"没重训"——每周重训 cron 九次全部成功。真正的问题是 fit_end_time 被硬编码为 2024-12-31:模型每周都在重训,但训练数据永远停在 2024 年底,2025–2026 的行情从未进入训练集。IC 0.07 只是样本内评估的结果。

这带来一个更本质的判断:15.6% 这个极端值,大概率是符号反了而不是单纯过拟合。所以 W46 的第一步不是调参,而是一个 30 分钟的反向信号实验——直接统计"买入 alpha 最低的 10 只"的胜率:

  • 若 Bottom 10 胜率 > 50% → 排序有效、符号反了,取负号即可修复
  • 若 30–50% → 部分有效,启用 P1 双信号确认
  • 若 < 30% → 真的过拟合,推进训练窗口并增加集成多样性

其余 P0 包括:CSI500 启用行业中性化(历史实验显示 IR +30%)、止损黑名单(同一批输家被反复选中:某标的出现 10+ 次)、11/12 首批 P1 信号到期验证、把 fit_end_time 改为自动推进(这是结构性修复,否则问题必然重现)。


七、沉淀

🔌 "投产"和"被使用"之间隔着一条管线

P1 因子共识信号覆盖 499 只股票、与 ML 零重叠、每天准时生成——但它没有消费者。如果没做这次编排审计,这个模块可以"运行良好"地空转几个月。

通用规则:新组件上线时,除了验证"它能不能产出",还要验证"谁在消费它的产出"。没有下游的产出等于没有产出。


🤖 自动化最危险的失败是语义失败

fit_end_time 冻结在 2024-12-31,而 cron 每周都成功执行、日志一片绿色。进程成功、指标正常、报告照常生成,但模型从未见过近两年的市场。这类失败比崩溃更贵——因为它不报警。

通用规则:监控自动化时,除了"跑没跑",必须监控"跑的是不是我以为的东西"。关键输入参数要有独立的断言。


🎯 极端数字先怀疑方向,再怀疑复杂度

胜率 15.6% 不是"模型不够好",而是"可能整个符号反了"。这两种解释对应的修复成本差了两个数量级:一个是改一行代码,一个是重做特征体系。先花 30 分钟做反向实验,比先花两周调模型理性得多。

通用规则:当指标极端到不合常理时,优先排查方向性错误(符号、时间对齐、标的映射),再谈模型升级。


🚫 明确"不做",也是一种交付

TSFM 方案评估很久,最终因 CPU-only 约束果断放弃,把资源集中到 Phase 1 + Phase 2。三周后 v5.0 顺利收口——如果当时硬上时序基础模型,大概率是两头都不落地。

通用规则:技术路线的收口,往往取决于敢不敢写下"这件事本期不做"。


*— 记录于 2026.11.07*

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料