正文约 5,600 字;预计阅读 10 分钟。

说明:本文只讨论个人投研工作流和系统搭建,不构成任何投资建议;文中公司和行业只作为系统示例。

很多人把 AI 投研的焦点放在“让模型直接给答案”。

我觉得焦点错了。哪怕是最前沿的模型(GPT 5.5 或者是 Opus 4.7),本质上都是一个概率预测机,是很“容易飘”的。

一个用 Agent 做过复杂工程的人肯定明白,在工作中必须用一层层 Harness 去控制大语言模型的这种“飘”。

用 AI 做投研也一样,需要给大语言模型套上一层又一层 Harness,去控制它产生稳定的输出结果。

AI 投研真正的关键,不是让模型替你拍脑袋给结论,而是把信息、判断、风险和动作组织成一个能每天运行、能被验证、能复盘的系统。

研究的风险,往往不在信息太少,而在信息太多却没有秩序。

所以我用 Codex 搭了一个事件驱动研究 Radar。它更像一个前置操作层:每天从新闻、公告、市场、资金、情绪和行业代理变量里筛出少量值得优先研究的事件线索,再把它们压成一份研究者能在早上快速打开的事件作战单。

过去这类能力通常出现在专业投研团队里。但是,在 AI 时代,只要有想法,个人研究者也可以搭出一套自己的投研基础设施。

AI 有没有可能把一个研究者每天面对的混乱信息流,变成一个可运行、可复盘、可迭代的线索发现系统?

这是我做这个系统的起点。

一、我想解决的不是信息不足,而是线索排序

现在的市场世界,信息并不稀缺。

新闻、公告、研报、社交媒体、宏观日历、价格异动、资金流、产业链传闻,每天都在往外冒。单看某一条,似乎都有点重要;但如果全部都重要,最后就等于什么都不重要。

所以这个系统一开始就不是为了“抓更多新闻”。

它要回答的是另一个问题:

今天到底哪些事件值得我先看?

这里面的关键词不是“事件”,而是“先”。一个事件驱动研究系统的工作方式,本质上不是平均处理所有新闻,而是围绕催化事件建一本动态的事件账本:发生了什么、影响谁、是否已反映、下一步里程碑是什么、失败方式是什么、今天该先研究什么。

我希望 Codex 帮我搭的,就是这样一个前置雷达。

它不直接给交易指令,而是一个投研调度系统:

  • 把事件事实整理出来;
  • 把可能受影响的主体、行业链条和观察对象挂上;
  • 把价格、资金、公告、情绪和行业代理变量拉进来做二次验证;
  • 最后把一堆候选压缩成“立即研究 / 主题观察 / 风险复核 / 后台背景”。

换句话说,它的目标不是替代判断,而是把判断前面的信息分流和线索筛选系统化。

AI 在投研里的价值,不是“神谕式预测”,而是把一个人的研究操作系统工程化。

二、系统架构:新闻系统、数据底座、情绪系统和雷达系统

如果按产品职责看,这套系统大体分成两层:上游负责把信息压成事实和信号,下游负责把事实和信号压成研究线索队列。

Radar 的上游是三个系统:新闻事件中枢、数据底座,以及情绪系统。

Codex 事件研究 Radar 系统架构图

这张图是整套系统的最简结构:新闻事件中枢负责事件事实,数据底座负责市场事实,情绪系统负责信号辅助,Radar 负责线索排序。

第一层是新闻系统,叫 News event hub(新闻事件中枢)。

它的职责不是写观点,也不是做具体决策,而是把外部信息流压成共享事实层。这个系统会每天自动从不同来源抓取新闻和事件输入,包括公告、交易所、监管、政府、主流财经快讯、社交讨论、论坛信号、宏观结构化事件等。

为了避免所有信息混成一锅粥,我把新闻源先分成两条线:

事实线 是确认事实的来源,比如公告、监管、交易所、政府、主流财经确认源。

信号线 是提前暴露线索的来源,比如微博、雪球、股吧、Reddit、论坛、预测市场和其他早期讨论信号。

第一层真正要做的,是把不同来源的新闻变成统一文章对象,再进一步聚合成事件,并尽量给每个事件挂上实体、行业、主题、时间、状态、来源、证据质量和下游导出视图。

举一个具体例子。

假设同一天系统看到几条信息:

  • 公司公告写着:安井食品第一季度净利润同比增长 42.74%
  • 财经快讯把它改写成:安井食品一季度利润大幅增长,速冻食品龙头业绩改善
  • 另一条市场新闻写的是:食品饮料板块盘中异动,安井食品成交放量

这些在最原始状态下,只是几条“新闻”。它们可能来自公告、快讯、新闻网页或市场异动摘要,标题格式不同,时间戳口径不同,来源可靠性也不同。

进入 News Event Hub 之后,系统先把它们压成统一的“文章对象”。也就是说,不管来源长什么样,最后都要变成类似这样的结构:

来源 = 公司公告 / 标题 = 安井食品第一季度净利润同比增长42.74% / 发布时间 = 2026-05-03 / 来源线 = 事实线 / 原始链接 = ... / 正文 = ...

这一步解决的是“同一种东西用同一种格式表达”。

但文章对象还不是事件。文章对象只是标准化后的单篇材料。

下一步才是聚合成事件。系统会判断:这几条信息是不是都指向同一个事实,或者同一条研究线索?如果是,它们会被压成一个事件:

事件 = 安井食品一季度利润超预期 / 主体 = 安井食品 / 股票代码 = 603345 / 催化类型 = 业绩 / 事件状态 = 已确认 / 影响方向 = 正面 / 证据数量 = 3 / 后续验证 = 看首个交易日价格承接、成交量、食品饮料板块扩散

到这里,信息的形态已经变了。

它不再是一堆孤立标题,而是一条可以被 Radar 消费的事件对象:它有主体、有时间、有证据、有催化类型、有影响方向、有下一步验证动作。

这就是第一层新闻系统的价值。它不是“读新闻”,而是把新闻变成系统能处理的事件。

从新闻到统一文章对象再到事件的流程图

第一层最重要的不是抓取,而是把不同来源的信息压成同一种结构,再聚合成可以被 Radar 消费的事件。

这里面最关键的,不是“抓取”,而是清洗。

新闻系统的难点不在于“能不能抓”,而在于能不能把事件做厚、做干净、做成下游可消费的事实层。

数据底座是第二个上游。

它是一套市场事实层。里面沉淀的是可以反复查询、补抓和校验的市场数据:行情、成交、资金、行业资金流、代表性公司和 ETF、财务快照、对象映射,以及部分行业代理变量。

它里面有几类核心数据库和派生面板。这套底座的价值,不只是“有数据”。

更关键的是,它有一套读取和补数语义:优先读数据库;如果缺口存在,再使用数据系统进行补抓;抓到后写回底座数据库;同时按对象、日期和数据层级检查时效性和覆盖度。

换句话说,新闻事件中枢给 Radar 提供“发生了什么”,数据底座则提供“市场怎么反应、资金怎么流、价格是否已经确认”。

情绪系统是第三个上游。情绪系统会把市场事实和事件事实压成几类结构化信号:

  • 市场级:资金流情绪、市场事件情绪、综合情绪;
  • 公司级:事件情绪、行情情绪、综合情绪。

这层信号很有用,但我给它的权力很低。

它只能作为排序辅助和解释层,帮助判断风险偏好、事件热度和价格行为是否共振;它不能替代催化事件、证据质量和后续里程碑。一个对象就算情绪很强,如果没有可验证事件,也不能直接进入前排。

第二层才是事件研究 Radar。

Radar 会从 News Event Hub 拉共享新闻事件,从数据底座读取市场事实,从情绪系统读取情绪信号,然后叠加自己的辅助信号。

Radar 自己会把这些上游输入继续组织成几类辅助信号:

  • 价格和成交量;
  • 市场资金和行业资金;
  • 公司公告;
  • 情绪辅助信号;
  • 行业基本面代理变量,比如猪周期、航运运价、券商交易景气;
  • 代表股和 ETF;
  • 主题链 / 产业链覆盖层;
  • IPO 打新窗口;
  • Agent 的结构化预检和研究摘要。

最后,Radar 做的是排序和分流。

它每天生成候选池,再生成线索快照,再进入催化事件台账、研究交接板、日度作战单和质量门禁。

候选池 -> 线索快照 -> 催化事件台账 -> 研究交接板 -> 日度报告 -> 质量门禁

如果通过质量门禁,系统会发布稳定别名的作战单和正式报告产物;如果源数据时效性、价格补数、Agent 预检、运行批次一致性有问题,就会报警。

一个真的能长期使用的投研系统,不能只追求“今天跑出一份漂亮报告”。它必须知道什么时候自己不该出报告,什么时候只能提示风险,什么时候应该把线索降权,什么时候应该把对象从“立即研究”打回“主题观察”。

三、我如何 harness 这个系统

我对这个系统的使用方式,不是让它每天替我给结论,而是把它当成一个投研前台。

每天系统会先跑新闻和事件层,确认上游源是否足够新。然后 Radar 会检查新闻、情绪、市场数据三层时效性。公司对象如果缺少目标交易日价格,它会优先逐票补抓,而不是因为某个边缘公司价格缺口就拖死整份日报。前排公司对象如果证据偏薄,它会触发新闻补核。Agent 研究层会对候选做结构化判断,判断它们应该升级、保留、只观察、剔除、进入风险复核,还是标记为研究缺口。

我真正消费的是最后那份 Radar 事件作战单

Radar 事件作战单阅读地图

作战单不是新闻列表,而是一个压缩后的线索面板:系统负责排序,人负责判断。

这份作战单不是新闻列表。它会把当天事件压成几个层次:

第一层是今日关键事件:对象、事件、影响方向、逻辑传导、弹性假设和今日动作。

第二层是三条作战线:系统认为今天最值得打开的线索。

第三层是中长期隐性线索:订单、产能、政策、资本动作、基本面质量这些 30-120 天维度的慢变量。

第四层是 IPO / 打新申购窗口:包括 A 股和港股,核心是把申购窗口、时间和风险提示集中整理出来。

最后是后台状态:上游源就绪状态、价格补数、新闻补核、催化事件台账、立即研究 / 主题观察 / 风险复核的数量。

也就是说,我不是读一堆新闻,而是看系统压缩后的研究线索面板。

这让我可以把精力放在更高一层的问题上:

  • 这条线索是不是有真正催化事件?
  • 它是否已经被价格反映?
  • 有没有可以用于观察的代表性公司或 ETF?
  • 下一步里程碑是什么?
  • 最大失败方式是什么?
  • 它应该进入即时研究,还是只进入观察?

不让 Codex 替我思考,而是把 Codex 变成一个能被调度、校验和复盘的投研系统。

四、真正的关键:不是相信模型,而是约束模型

这里有一层前提:我不认为大语言模型本身值得盲目相信。

从工程上看,它首先是一个概率预测机。它可以在大量语料和上下文中生成很像判断的文本,也可以把复杂信息压缩成很漂亮的解释,但这不等于它天然知道什么是真的、什么是重要的、什么可以进入研究动作。

如果把这种模型直接接到交易决策上,让它看几条新闻、读几份公告,然后直接输出行动名单,我认为风险很大。

因为模型最危险的地方,不是它完全不会判断,而是它有时候会用很流畅的语言,把一个不该成立的判断讲得像真的。

所以我做这套系统时,没有把大语言模型放在最高权力的位置。

我更多是把它关进一套 Python 脚本、结构化格式、校验器和硬门禁里面。

Harness 防止 Agent 飘的机制图

模型可以参与研究层,但事实、格式、门禁和发布条件必须由更硬的系统控制。

事实层由脚本和数据库负责。新闻有没有更新、价格有没有对齐、公司股票代码有没有映射、运行批次编号是否一致、正式报告是否真实生成,这些不让模型凭感觉说。

事件层由接口约束。一个候选对象必须有对象类型、来源、证据、价格样本、催化事件、里程碑、风险标记和后续验证路径,不能只靠一段漂亮解释进入前排。

研究层才让大语言模型参与。它可以做摘要、归因、预检、风险提示和研究分流,但它的输出还要经过结构化格式校验和质量门禁。Agent 可以说一个对象应该升级,也可以说只能观察,但系统会继续检查它有没有证据、有没有价格确认、有没有被报告显式展示、有没有和正式作战单运行批次对齐。

这就是我认为这个项目和很多“AI 直接给交易答案”项目的根本区别。

很多项目把 AI 当成预测器,问它“下一步该怎么操作”。我的系统把 AI 当成一个受约束的研究组件,问它“这条事件是否值得进入研究队列,以及它最可能在哪里失败”。

前者追求一个看起来很刺激的答案,后者追求一个可验证的流程。

前者容易变成提示词表演,后者更接近一套操作系统。

前提就是忽略大模型表现出的貌似神奇有思想。把它放在一个更硬的系统里:

上游有新闻事实层和数据底座,中间有市场与信号辅助层,下游有排序、门禁、报告、复盘和人工研究承接。模型可以提高效率,也可以帮助我看见一些容易漏掉的解释路径,但它不能绕过硬门禁直接变成交易结论。

AI 投研系统的关键,不是让模型更会说,而是让模型不能乱说。

五、目前它已经能做到什么

到目前为止,这套系统已经达到了一个初步可用状态:可以识别中短期事件线索,并把它们组织成每天可读、可复盘、可追踪的研究报告。

现在它已经具备几类能力:

第一,能做事件驱动的日度筛选。

比如最新作战单里,系统会把有色金属、电子、安井食品、上海医药、交通运输、石油石化、中路股份这类对象混排展示。每条线都会写出具体事件、影响方向、逻辑传导、观察对象、弹性假设和后续研究动作。

第二,能做价格和量能预检。

财报类事件如果已经被价格明显反映,就不应继续占据前排线索位。公司事件如果缺目标交易日价格,也不应假装样本完整。现在系统已经把这类检查前置到报告生成链。

第三,能做中短期研究分流。

同一个事件,不一定都要立刻研究。有些进入“立即研究”,有些进入“主题观察”,有些进入“风险复核”,有些只能留在后台背景层。这个分流比总分更重要,因为投研需要的是动作队列,而不是漂亮排行榜。

第四,能做中长期线索的初步捕捉。

比如订单、产能、客户质量、产品价格、行业扩散、资本动作这些 30-120 天维度的信号,系统已经开始用“中长期隐性线索”单列出来。它现在还不成熟,但方向是对的:短期事件只是一层,真正有价值的是从多次弱信号里识别慢变量。

第五,能输出成品报告。

我会把一份真实作战单单独整理成另一篇公众号文章,读者可以直接看成品长什么样。

六、但我不想把它写成神话

这里必须说清楚边界。

这个系统不是对外销售的产品,不是自动给结果的机器,也不是自动交易系统。它更像一个事件驱动研究前台。

它能帮助发现中短期事件线索,但还不能稳定识别真正长期的研究主线。

原因很简单:长期主线不是一天新闻触发出来的。长期主线往往来自产业结构、商业模式、资本开支、竞争格局、需求拐点、技术路径、管理层能力和估值误判的共同作用。

新闻系统能看到变化的表层,Radar 能识别变化的早期形态,但要把这些变化升级成长期研究线索,还需要更强的几层能力:

  • 更稳定的带时间点口径的事件面板;
  • 更好的历史回放和误报样本库;
  • 更成熟的催化事件分类体系;
  • 更完整的行业代理变量库;
  • 更强的研究承接系统;
  • 更清晰的研究假设生命周期;
  • 更严肃的市场反应评估。

所以长期目标不是让系统每天多推几个热点,而是让它逐步从“中短期事件雷达”升级成“长期线索 Radar”。

真正理想的状态是:当一个主题还没有成为市场共识时,系统已经能看到多个弱信号正在累积;当一个事件看起来很热时,系统能判断它只是一次性噪音,还是进入了可验证的长期路径;当一个公司突然出现催化时,系统能提示我这只是财报脉冲,还是基本面拐点的第一层证据。

这才是我想要的东西。

不是更快地追热点,而是更早地识别可研究的变化。

七、为什么我觉得 Codex 适合做这件事

很多人讨论 Agent,会把重点放在“它能不能一次性完成一个复杂任务”。但在投研系统里,更重要的是它能不能长期嵌入一个人的工作流。

这个 Radar 的开发过程,基本就是我和 Codex 共同把一个想法压成系统的过程。

一开始只是一个问题:能不能做行业起势预警?

然后它变成新闻层、资金层、基本面代理层、状态机、日报。

再往后,它从行业榜变成多对象线索面板。

再后来,它开始有催化事件分类体系、里程碑、风险标记、研究交接板和质量门禁。

最后,它变成一个每天能跑、能出报告、能失败降级、能复盘的系统。

Codex 在这里不是一个“写代码工具”。它更像一个可以持续共建的工程化思维伙伴:我定义问题,它把问题拆成系统边界、数据接口约束、运行链路、验证命令和文档;系统跑出来不好,我指出不对,它继续回到架构层修。

AI Agent 最值得期待的方向:不是替你做判断,而是把你的判断系统化、可执行化、可复盘化。

八、这不是炫技,而是工作方式的改变

AI 时代可以把个人投研从手工作坊,推向一种更像小型研究团队的工作方式。

不是因为系统一定比人聪明,而是因为系统更有纪律。

投研最难的不是产生观点,而是让观点进入一个稳定、可校验、可复盘、可改进的系统。过去这件事只有机构有资源去做。现在,Codex 这样的 Agent 工具开始让个人也有机会搭出自己的研究基础设施。

投研的差距,很多时候不是谁看见了更多信息,而是谁更早把信息组织成判断、风险和动作。

AI 最先改变的不是某一个结论,而是我们组织判断的方式。

看新闻不是优势,组织判断才是。