开源:用 LLM 回测定性投资策略的框架

0 阅读7分钟

我用 DeepSeek 盲测了 120 只 A 股,5 年数据证明 AI 确实能选股

不是让 AI 看 K 线画支撑位,而是像一个研究员一样读财报、算估值、做压力测试——然后和实际涨跌对账。

为什么要做这件事

做量化的人有回测——写好规则跑一遍历史数据就知道行不行。

但做基本面研究的人没有。"这只股票股息率 8%,能持续吗?""PE 5 倍是真便宜还是陷阱?""管理层靠不靠谱?"这类判断没法写成 if PE < 10 then buy 的代码,传统回测框架根本没法验证。

我想知道:如果让 AI 严格按一套投资方法论,在历史时间点做盲测分析,它的判断到底准不准?

实验设计

基本思路

传统回测:     数值规则  →  历史价格  →  损益
我的方法:     投资理念  →  AI 盲测分析  →  对比实际结果

具体做法

  1. 量化初筛:在每个历史截面日期(每半年一次),用硬性条件筛出候选池

    • PE < 15、PB > 0、市值 > 100 亿、有分红
    • 每截面 50 只候选
  2. AI 深度分析:取每截面评分最高的 10 只,让 DeepSeek 做六章结构化分析

    • 第一章:数据可信度核查
    • 第二章:基本面画像(央国企判定、负债结构、周期位置、管理层诚信)
    • 第三章:现金流与盈利质量
    • 第四章:估值与安全边际(PE 陷阱检测、FCF 估值、股息可持续性)
    • 第五章:压力测试(收入下滑 30% 还能活吗?)
    • 第六章:投资决策(买入价、卖出价、仓位建议)
  3. 盲测协议

    • 隐藏公司名称和股票代码,只给财务数据——消除 AI 的品牌偏见
    • 严格时间边界:2022 年 6 月 30 日的分析只能看到这个日期之前已公告的财报
    • 每只股票分析约 8000-15000 字,不是打个分了事
  4. 对账:采集 AI 给出建议后 1/3/6/12 个月的实际涨跌,对比五个基准

实验规模

  • 时间跨度:2020.06 - 2025.12,共 12 个半年截面
  • 候选池:每截面 50 只,共 600 只(有重复出现的)
  • AI 深度分析:每截面 10 只,共 120 只
  • AI 引擎:DeepSeek-Chat(成本约 ¥0.4/只,总成本约 ¥48)

结果

五基准绩效对比(核心表格)

6 个月前向收益:

基准样本平均收益胜率比沪深300
沪深300 指数12+0.9%42%
筛选池等权600+4.0%53%+3.0pp
筛选池金龟56+4.0%57%+3.0pp
AI 建议买入43+8.1%65%+7.1pp
AI 评分 Top560+6.7%65%+5.7pp

12 个月前向收益:

基准平均收益胜率比沪深300
沪深300+1.1%50%
筛选池等权+7.5%56%+6.4pp
AI 建议买入+13.9%70%+12.8pp

累计收益曲线

backtest_chart_20260316_1448.png

橙红色是 AI 建议买入的累计收益,灰色虚线是沪深300。5 年下来 AI 买入组累计约 2.1 倍,沪深300 原地踏步。

Alpha 从哪来?三层拆解

沪深300        +0.9%    ← 被动持有大盘
                 │ +3.0pp  ← 量化筛选的 alpha(低估值+高股息有效)
筛选池等权      +4.0%
                 │ +4.1pp  ← AI 的增量 alpha(精选有用)
AI 建议买入      +8.1%

关键发现:量化筛选本身就有 alpha(+3pp),AI 在此基础上又加了 +4pp。两层叠加创造了 +7pp 的端到端 alpha。

逐年稳定性——不是单一年份拉高的

年份全部分析(10只/截面)AI 买入AI 增量
2020+2.8%+9.7%+6.9pp
2021-2.5%-2.6%-0.1pp
2022-0.9%+4.1%+5.0pp
2023+11.5%+21.8%+10.3pp
2024+5.9%+12.1%+6.2pp
2025-2.1%-0.1%+2.0pp

6 年中 5 年 AI 买入跑赢全部分析组,唯一持平的 2021 年 alpha 也只有 -0.1pp。这说明 alpha 来源分散,不是被 2023 煤炭行情一波带走的。

AI 做对了什么

1. 评分区分度非常清晰

评分区间样本6m 均收益胜率
85-100 强买6+7.1%50%
70-84 买入37+8.2%68%
50-69 观望38+1.8%55%
30-49 偏回避30-2.3%40%
0-29 回避8-9.2%12%

从 0 分到 80 分,收益率单调递增。70-84 分是最甜蜜的区间(+8.2%,68% 胜率),而不是最高分——85+ 分样本太少且 AI 可能过度乐观。

2. 回避信号非常准

AI 建议"回避"的 26 只股票中,73% 后续确实下跌。命中的大跌案例:

  • 600340(某地产公司)2020-12-31 评 25 分回避 → 6 个月后 -58.8%
  • 000002(万科)2023-12-31 评 35 分回避 → 6 个月后 -33.7%
  • 601666(某煤炭公司)2024-12-31 评 35 分回避 → 6 个月后 -25.8%

AI 的防守能力比进攻更强。 它最大的价值不是告诉你买什么,而是告诉你不要买什么。

3. "纯收息 + 价值发现"混合型表现最好

AI 会给每只股票判定投资流派。不同流派的表现差异很大:

流派样本6m 均收益胜率
收息 + 价值混合13+11.2%85%
纯收息32+2.0%56%
价值发现63+0.2%41%

高股息保底 + 估值修复空间的"双保险"逻辑最有效。纯靠价值发现(低估但无息)反而表现最弱。

AI 做错了什么

最大漏洞:全国性地产股

AI 买入了 3 只全国性地产股,全部大亏(平均 -30.5%)。虽然它也成功回避了 5 只地产股,但对部分地产公司的判断出了问题——可能是低 PE + 高分红的表面数据误导了它。

其他弱点

  • 周期底部反转看不准:AI 倾向于看到"业绩下滑"就给低分,但有时候恰恰是最好的买入时机
  • 牛市里偏保守:在市场整体上涨时,AI 的回避信号会错过涨幅

这些弱点和 AI 的分析方法论一致——它看的是财务基本面,不是市场情绪和预期差。

技术实现

整套工具开源,三步就能跑一轮回测:

# Step 1: 量化筛选(秒级)
python -m src.engine.launcher strategies/v6_value/strategy.yaml backtest-screen

# Step 2: AI 并发分析(小时级,支持中断续跑)
python -m src.engine.launcher strategies/v6_value/strategy.yaml backtest-agent

# Step 3: 绩效评估 + 收益曲线(分钟级)
python -m src.engine.launcher strategies/v6_value/strategy.yaml backtest-eval

成本:DeepSeek API,120 只约 ¥48。

关键设计:

  • 盲测:隐藏公司名称,防止 AI 调用训练记忆
  • 时间边界:三层防护(数据层按公告日过滤 + Prompt 注入 + 工具沙盒)
  • 策略即配置:投资理念写成 YAML 文件,引擎负责回测,不需要写代码
  • 五基准对比:沪深300 / 筛选池 / 金龟 / AI 买入 / AI Top5

结论

  1. AI 确实能做定性投资分析,+7.1pp alpha 跨 5 年 12 个截面稳定存在
  2. AI 最大的价值是排除风险,回避信号 73% 命中率比买入信号更可靠
  3. 量化筛选 + AI 深度分析是互补的,单独用都不如叠加效果好
  4. 成本极低,120 只股票的完整分析不到 50 块钱
  5. 弱点明确:周期反转和市场情绪不在它的能力圈内

下一步:公开模拟盘,从 2026 年 H1 开始每半年发布一期持仓和 AI 分析报告,用实盘数据验证。


GitHub: github.com/turtlequant…

120 份 AI 分析报告全文、12 个截面筛选数据、五基准绩效报告全部开源。

欢迎 Star、Fork,或者带上你自己的投资理念来回测。


免责声明:本文仅用于投资方法论研究与验证,不构成投资建议。历史回测结果不代表未来表现。投资有风险,决策需谨慎。

作者:turtlequant 日期:2026-03-16