我花 21 个月搭了一套交易系统,最后让 AI 模型告诉我:这公司别开

Posts on redgeoff 2026-10-29T03:52:33.353470

图片说明:作者本人,用代码绘制

这是一个关于「我花 21 个月搭了一套交易系统,写下它要变成一家公司需要满足什么条件,然后让两个 AI 模型告诉我:它没满足」的故事。

如果你读过我前面三篇,你应该知道 TopSet。它是我搭的系统,主要靠 AI 编程智能体写成,用机器学习模型挑出一组股票,再用真金白银去交易。

第一篇讲的是自动化测试怎么让智能体写的代码可以放心运行;第二篇讲未来信息是怎么泄漏进我的模型的;第三篇讲噪声,结尾我承诺过,等我知道自己的模型结果和运气分辨不开时,会说明我决定怎么做。这一篇就是那个交代。没读过前几篇也不影响理解。

本文不会出现收益曲线图,这是故意的。

我为什么要给自己定个期限?

我做 TopSet,是因为我觉得用机器学习在股市里找规律有戏,而早期结果看起来还不错,让我以为自己抓到了点什么。

我也清楚,这类项目能耗掉好几年,却始终回答不了它当初想回答的那个问题。所以我给自己定了一个终止条件(kill criterion):事先约定一个情况,一旦出现我就停手——全职投入大约两年,看看这里面到底有没有生意。如果没有,我就回去带工程团队。

第一个实盘交易机器人上线是在 2024 年 12 月 2 日,2025 年 1 月我转为全职。到 2026 年 9 月,这套系统已经在真实资金上连续跑了将近两年,累计约 1,600 个拉取请求(pull request,每个都是一次经过审查的代码改动)。这时候我离期限已经不远,必须拿出一个我能信得过的答案。

说实话,我早就隐约猜到答案是什么。大约在 2026 年初夏,我开始觉得:从长期来看衡量,我的结果在统计上不够强,撑不起开一家公司。但「隐约觉得」……

想说服自己放弃很容易,尤其是当你心里其实想要另一个答案的时候。所以我想要一套流程,要么确认这件事值得做,要么说服我别做。

你怎么问 AI 要不要创业?

大部分工作其实在我开口之前就完成了。显而易见的做法是打开对话框,敲一句“这是我的交易系统,我该不该开公司?”那样我多半会得到一个鼓励的答案,因为我会用创始人描述自己系统的方式来描述它。

所以,2026 年 9 月 17 日,我先写了两份文档,借助一个 Cursor 智能体(agent)来完成。

第一份是仓库里所有内容的索引:哪些已经建好,哪些已经上线,同样重要的是,哪些已经尝试过并被放弃。每一个关闭的实验都列了出来,附上结论,以及当初在哪里做出这个决定的链接。关键在于,评估要从记录出发,而不是从我的推销说辞出发。

第二份是评估本身,写成一整套“闸门”。每道闸门都是一个带书面失败条件的问题,这样评估者就不能在看到答案之后再决定什么算失败。一共五道:

以差异化这道闸门为例,如果诚实的推销话术退化成“带杠杆的、集中的市场贝塔,外加模型复杂度”,那就算失败。贝塔指的是一个投资组合随大盘整体波动的程度。换句话说,如果这个产品实际上只是……

它本质上就是股市,只是多了一层风险和一套复杂的模型,所以失败了。这一点很关键,因为多出来的风险买起来很便宜:任何人只要在低成本的指数基金上加一点杠杆,就能获得更多市场的涨跌敞口。因此,建立在这之上的产品,等于向客户收取费用,卖他们本来就能便宜得到的东西。

我还写下了评估者不能做什么。顶部的任务说明写着:“不要把投入的年数……当作存在一家公司的证据。”还有一份题为“反模式(不要做这些事)”的清单,其中包括“为了保护沉没成本而软化 STOP / JOB SEARCH 的判定”。沉没成本是已经花掉的时间和金钱,无论你接下来怎么决定,都收不回来。最希望这个判定被软化的人,就是我。

这份任务说明里有个小小的讽刺。在市场推广(也就是客户如何发现产品)这一项下,我写过:我会通过写博客介绍自己构建 AI 投资产品的经历来吸引客户。现在,我就在写这件事。

备忘录说了什么?

那几份文档提交大约半小时后,运行在 Claude Code 里的 Claude Fable 5.1 完成了评估:对照指数、它指向的 issue 和 pull request,以及它自己对竞争对手和监管做的网络调研。第二天早上,Cursor 的 agent Composer 独立做了同样的评估。

从记录到判定,评估是这样进行的。日期均为 2026 年。

两者给出了相同的判定:“仅供个人使用”。继续用自己的钱运行这个系统,不要把它变成一家公司。第一份备忘录说得很清楚:现在不要创业,也不要融资。它把诚实的推介总结为“集中的、高换手的标普敞口,外加机器学习,仅在 IRA 内可行”——这非常接近我为第一道关卡写下的失败条件。它还建议我立刻开始找工作,而不是等到两年节点。

“仅在 IRA 内可行”这句话需要一些背景。我的系统大约每月调仓一次,这意味着它会卖出持有不到一年的股票。在普通经纪账户中,这些利润属于短期资本利得,而在……

美国这边,主动交易每年都按收入税率交税,这种税负拖累会吃掉主动交易的大部分优势。而在 IRA 这类退休账户里,交易发生时并不征税,拖累就消失了。所以任何基于我这套系统做的产品,都只能卖给退休账户。我心碎了。已经做了 21 个月,我觉得自己快摸到某种大事了。可答案就是:凭我手上这点东西去做金融产品,理由不成立。

两个 AI 模型会犯同样的错吗?会,而且这是我开始反驳后学到的第一件事

9 月 20 日,我让 Claude Opus 把两份备忘录都过了一遍。它在两份里都挑出了同样的两处错误。

第一处是,两份备忘录都把策略描述得比我实际跑的版本风险更高,说它带杠杆、高贝塔(beta),可它跟大盘的波动基本是一比一。

第二处错误出在那些退休账户上。两份备忘录都说这类账户天然规模小,因为政府每年对 IRA 的缴款额度设了上限。这话对新缴款没错,但它漏掉了转存 IRA(rollover IRA)。人们离职时,往往会把整笔 401(k)(也就是公司给的退休储蓄)转到 IRA 里,而转存不受年度上限约束。所以这个产品本来要卖的账户,可能比备忘录假设的大得多。两份备忘录后来补的更正都写得很直白。

这两处错误都没改变结论。但它们改变了我看待「两个模型意见一致」这件事的方式。两个模型读同一份索引数据、用同一个提示词,算不上两份独立意见。它们共享那份记录本身的盲区;而且就像 IRA 那处错误显示的,它们还可能共享一个压根不在记录里的、关于世界的错误假设。意见一致当然有价值,只是远没有初读时感觉的那么大。

于是我对备忘录做了跟研究一样的事:换一个模型再审一遍,一直审到挑不出什么大问题为止。

一个结论能有多少种反驳方式?

我没接受它。我花了好几天想找出破绽,每次我快想到

我一旦想到备忘录可能哪里出错,就会去查证。我不会坐下来列一堆反驳理由。每一条都是我在消化“这家公司不会成立”这个想法时,随后冒出来的念头。每一条也都被记了下来,写在备忘录里一个叫“已尝试并排除的论点”的章节中,顶部还有一条规则:“新论点必须说明它不属于其中哪一条。”

换句话说,在我再花一个下午琢磨某个想法之前,得先确认这个论点我之前没输过。到10月10日,已经有25条了。下面挑几条,让你有个感觉:

卖给财务顾问,而不是个人投资者。这样能解决逐个获客的成本问题,但专业买家看的正是那种长期、经过审计的业绩记录——而我没有,所以这反而提高了门槛,而不是降低。

只收业绩费,也就是按利润分成,而不是固定费用。美国规则通常只允许对已经富裕的客户收业绩费,这就排除了其他所有想法瞄准的那些客户。

把策略包装成主动管理型ETF——一种像单只股票一样在股市交易的交易所交易基金——来解决税务问题。ETF可以通过实物赎回避免把资本利得转嫁给投资者:当大投资者套现时,基金交出所持股票而不是卖出换现金,这样收益在基金内部永远不会实现。这个结构行得通,成熟基金就是这么避免分配收益的,但每年运行成本几十万美元,所以只对已经很大的基金才有意义。

如果我自己处理文书,注册为顾问比备忘录假设的要便宜得多。这是真的,也作为更正保留了下来,但更便宜的注册并不能证明这个策略比指数基金更好。

与其等几年才拿到证据,不如调整投资组合,让证据早点出现。持有更多股票会让投资组合相对于……的波动更小。

结论几乎被推翻的那天发生了什么?

9 月 22 日,我做了一次证据复核,结果连续四次都对我有利。这四次修正每一个都让项目看起来比备忘录里说的更好。其中一个印证了我的执行成本,也就是从决定交易到在券商那里真正成交之间损失的钱,基本为零——为了这个测量,我花了好几个月搭工具。那天我开的 pull request,原本准备把结论从“仅供个人”改成“90 天探索”,也就是去搞清楚真有没有客户愿意掏钱。

然后我拿第二份更长的价格历史数据,验证了四项结果里最大的那项。第一份数据覆盖大约 8 年,第二份大约 24 年。放到 24 年上,结果就不成立了。这是三天内第二个在更长历史上失效的有利结果。实际合并的 pull request 上面写着:“这个 PR 原本是依据八年证据提交的、针对 90 天探索的修订。用 24 年数据池复查后,结论反转。”

如果你没怎么接触过市场数据,这个现象值得留意,因为它属于常态而非例外。在几年这样的时间跨度里,找出一种战胜市场的选股方法出奇地容易,一部分原因是能尝试的方法太多,总有一些会碰巧赢。拉长时间看,大多数这类优势都会缩水甚至消失。David McLean 和 Jeffrey Pontiff 有一项很有名的研究……市场,噪音也更少,真正的优势本该在更短的年份里就显现出来。算术上说得通,但数据不配合:模型选出的股票只在榜单最顶端才突出,所以增加股票在稀释优势的同时,也在以同样的速度削减噪音。备忘录里的 25 条论点,按我提出的顺序排列。蓝色标注的那些修正了备忘录搞错的地方;没有一条改变了结论。少数被部分采纳,因为它们修正了备忘录搞错的地方。

还有几条仍未解决,其中两条只有证券律师才能回答。没有一条动摇了结论。判定几乎翻转的那天发生了什么?9 月 22 日,我做了一次证据审查,结果连续四次都对我有利。这四项都是修正,每一项都让项目看起来比备忘录里说的更好。其中一项确认了我的执行成本——也就是从决定交易到实际在券商那里成交之间损失的部分——基本为零,这个测量我花了好几个月搭工具才做出来。那天我开的 pull request,原本准备把结论从“仅供个人”改成“90 天探索”,也就是去搞清楚真有没有客户愿意掏钱。

然后我拿第二份更长的价格历史数据,验证了四项结果里最大的那项。第一份数据覆盖大约 8 年,第二份大约 24 年。放到 24 年上,结果就不成立了。这是三天内第二个在更长历史上失效的有利结果。实际合并的 pull request 上面写着:“这个 PR 原本是依据八年证据提交的、针对 90 天探索的修订。用 24 年数据池复查后,结论反转。”如果你没怎么接触过市场数据,这个现象值得留意,因为它属于常态而非例外。在几年这样的时间跨度里,找出一种战胜市场的选股方法出奇地容易,一部分原因是能尝试的方法太多,总有一些会碰巧赢。拉长时间看,大多数这类优势都会缩水甚至消失。David McLean 和 Jeffrey Pontiff 有一项很有名的研究……

2016 年发表在《金融学杂志》上的一篇论文,考察了学术论文中发现的 97 种可预测收益的股市模式。论文发表之后,这些模式赚到的钱平均比原始研究中少了 58%。这非常令人失望。作为创业者,当你觉得自己发现了什么重要的东西时,会非常兴奋;而当它最终并不重要时,很难从那种亢奋中走出来。更高的高峰和更低的低谷,就是创业者的生活。

那么,到底是什么决定了结果?回看全部 25 条论据,规律很简单。包装、定价、合作伙伴和销售渠道,都可以改变“商业问题”。只有时间——用真金白银、用事后无法修改的结果——才能改变“证据问题”,而我能构建或购买的任何东西,都无法让那段时间过得更快。

为什么需要这么长时间,归根结底是信号与噪声。如果一种策略的平均优势相对于其逐年结果的波动幅度很小,那么几个好年份看起来就和几个幸运年份没什么两样。以这里能提供的优势规模,再加上集中型投资组合(持有股票相对较少的组合)随市场波动的幅度,用真金白银区分技能和运气需要几十年,而不是几个季度。这正是我上一篇帖子中动量指数撞上的同一堵墙,即使我重建了它 24 年的历史。这是教科书上的算术,不是我系统的数字:优势相对于其波动越小,排除运气所需的时间就越长。

我的系统现在已经在真实资金上连续运行了近两年,根据目前的证据,其结果在统计上与更便宜的替代方案无法区分。换句话说,与噪声相比,差异太小,无法排除运气。即使是最著名的选股者,也会经历长期跑输指数的阶段。一个非专业人士基于这样的证据推出金融产品,根本站不住脚。

在争论进行到中途、第一份备忘录起草完成之后,我读了伯顿·马尔基尔的《漫步华尔街》。我读过很多金融书籍,但从未……

这本书是Malkiel写的。他的核心观点最早发表于1973年,后续多个版本不断更新:市场吸收新信息的速度极快,想持续跑赢市场极其困难,因此一个买入并持有低成本、分散化指数基金的投资者,收益很可能好过大多数由专业人士精心挑选的投资组合。我大体上早就知道,宽基指数基金几乎无法被战胜,但看到这个结论背后有那么多研究支撑,还是很有启发。我感觉自己花了将近两年时间,亲手验证了这本书的论点!

21个月白费了吗?

有些人会把这件事解读成:花了21个月证明了一个否定结论。我不后悔。我深入研究了量化交易背后的原则:找到并存储可信的数据,搭建既快又稳的机器学习流水线,以及在真金白银投入的情况下构建快速可靠的执行系统。我学到了太多东西。

话虽如此,我确实希望结果能不一样。如果能提前验证一个想法,总是更好的,这样就不必在行不通的事情上耗费超出必要的时间。止损标准和各道关卡就是我在这方面的尝试。但我也认为,不真正动手去做,我无法对任何一边有信心。有时候,沿途的失败以及随之而来的后见之明,是唯一能让你看清的方式。

接下来呢?

我不再朝着开公司方向推进了。系统继续在我自己的账户上运行,我平时也会在忙别的事情之余做些研究。证据这个问题仍然悬而未决,如果它最终有答案,那答案将由时间来给出,而不是另一份备忘录。

接下来,我要回去带领工程团队了。我会带上那些让这次决策成为可能的习惯:在看结果之前先写好关卡条件,用要求别人的同样证据标准来要求自己的想法,把预先定好的止损当作必须执行的事,而不是可以重新谈判的事。

感谢阅读。本文描述的是我在自己账户上运行的软件。这不是投资建议,我也不提供投资服务。

图片来源:作者,用代码绘制

这是一个关于我如何花了 21 个月搭建一套交易系统的故事:我写下了它要成为一家公司需要满足哪些条件,然后让两个 AI 模型来评估,结果它们说:还差得远。

如果你读过我最近的三篇文章,应该知道 TopSet。这是我自己搭建的系统,主要借助 AI 编程智能体(AI coding agent)完成,用机器学习模型挑选股票组合,再用真金白银去交易。第一篇文章讲的是自动化测试——正是这些测试,让智能体写出来的代码可以安全运行。

查看原文