← 返回教程库

有人把「拿数据照镜子」做成了一个功能

最后更新 2026-08-19
📚 量化与 AI 投研 📖 仓库导览 · Vibe-Trading ⏱ 约 18 分钟 R2 · 注意风险
你将学到
  • 说得出「拿自己的数据照镜子」为什么比听道理更能改变行为,以及它在什么情况下会失效
  • 逐条看懂一个影子账户功能选择呈现什么、刻意不呈现什么,并说得出每个取舍背后的判断
  • 知道这类报告最容易被误读成什么,尤其是「差额」不等于「我本可以赚到的钱」

你有没有过这种体验:一个道理,别人跟你说了十遍你没动,直到有一天你看见了自己的某段录像。

打球的人最熟悉这个。教练说了一整个赛季「你出手的时候手肘往外飘」,你嘴上应着,动作一次没改。后来有人用手机拍了你一段慢放,你看了三秒,脸就红了——不是因为教练说得更狠了,是因为你终于看见了那个「往外飘」到底是个什么样子。第二天你的动作就变了。

交易这件事上,大部分人卡在同一个位置。前面几篇已经把方法交代干净了:流水诊断告诉你一份对账单能算出哪些数、行为画像把毛病翻译成了可以量的指标、反事实推演教你怎么算「当初要是守了规矩会怎样」、从诊断到规矩讲了怎么把结论落成一条真能执行的纪律。方法齐了。

可是「知道方法」和「真的做了」之间,还隔着一整条工序:导数据、配对、算指标、画曲线、写结论。绝大多数人在第二步就放弃了。

所以这一篇换个视角。不讲怎么做诊断,讲有人把这套诊断做成了一个功能——在一个开源的 AI 交易研究项目里,它叫影子账户。做成产品跟自己算一遍,是两件不一样的事:自己算,你只需要对自己负责;做成产品,设计者必须回答一串很硬的问题——给用户看什么、不给看什么、算不出来的时候怎么办、看完之后是不是给他一个「现在该买什么」的答案。

这些取舍,比功能本身有意思得多。因为每一个取舍背后,都是一个关于「投资者到底需要什么」的判断。

先说清楚:镜子和劝告,为什么不是一回事

生活层

减肥的人都被劝过「少吃点、多动动」。这句话百分之百正确,也百分之百没用。

真正让人开始动的,往往是三样东西之一:体重秤上的一个数、一张一年前的旧照片、或者一段自己走路的侧面录像。它们有个共同点——没有任何一个在讲道理,它们只是把你自己的样子摆在你面前。

劝告的问题在哪?劝告是一句一般性的话,对谁都适用,所以对谁都不痛不痒。而且劝告自带一个评价语气:你做错了。人一被评价,第一反应是辩解,不是改。

镜子不评价。镜子只是呈现。你在镜子面前没法辩解,因为里面那个人就是你。

投资层

这个差别落到账户上,威力更大,因为投资有一个特殊性:你的每一个动作都留了痕迹。

打球的动作要专门去拍才有录像,你的交易不用——券商已经替你录了好几年了,每一笔什么时候买的、多少钱、拿了多久、什么价格出的,一条不落地躺在那份对账单里。它就是一段你从没回放过的录像。

而拿这段录像照镜子,之所以比听道理有效,是三个很具体的原因:

第一,它是具体的。 「你太急躁」是评价,「你赚钱的单子平均拿三天、亏钱的单子平均拿一个月」是事实。前者你可以反驳,后者你没法反驳,因为那是你自己按下的按钮。

第二,它是你的。 一份关于「散户普遍存在处置效应」的研究报告,你读了会点头,然后合上,因为那说的是散户,不是你。换成你自己账户里的数字,你没有这个退路。

第三,它不带评价。 数字不会骂你。这一点反而是它最厉害的地方——人在被冒犯的时候会启动防御,在只是「看见」的时候不会。

但同样要说清楚:镜子也有它的问题。镜子只能照见「被照到的那一面」,照不到的部分照样存在;而一面做工不好的镜子,还会照出一个变形的你。后面会专门说这件事。

系统层

在这个开源项目里,这面镜子被做成了一条固定的流水线,大意是:拿你的成交记录,从你赚钱的那些回合里归纳出几条共性;把这几条共性写成人话给你确认;确认之后,让这几条共性变成一个不带情绪的「假想的你」,去把同一段历史重新走一遍;最后把「假想的你」和「真实的你」之间的差额拆开,告诉你差在哪几件事上。

它的叙事很直白:这是你的影子,只是这个影子没有情绪。

这个流水线本身不新鲜,前面四篇讲的就是这套东西。真正值得看的,是它做成产品之后的那些取舍

它选择呈现什么

取舍一:参照物是你自己,不是大盘,也不是别人

这是最根本的一个决定,也最容易被忽略。

绝大多数投资分析工具,默认的参照物是市场——你跑赢了没有,超额是多少。这个参照物没错,但它回答的是「你这套东西值不值得做」,而不是「你哪儿出了问题」。

影子账户把参照物换成了你自己:一个严格照你自己的习惯执行、但不会临场改主意的你。这个参照物有个巨大的好处——它把「策略好不好」和「执行到不到位」彻底分开了。跑输大盘可能是因为你的方法本身不行,也可能是方法还行但你没照做,这两件事的解法完全不同,而拿大盘做参照永远分不清。

配套的还有一条红线:这个功能明确写着不从别人的策略里提取规则,影子只能是「用户自己」的影子。这句话看着像句废话,其实是在挡一条很有诱惑力的产品路线——「把高手的打法提炼出来给你用」。那条路更好卖,但它做出来的东西不是镜子,是另一个人的照片。

取舍二:只从「你赚钱的时候」提炼规则

规则不是从你所有交易里归纳的,是只从盈利的那些回合里归纳的。

这个设计的意图很清楚:它想还原的不是「平均的你」,而是你状态好的时候的你。因为多数人的问题不是不会做,而是「有时候会、有时候不会」——你真正的打法,藏在那些做对了的日子里。

这个取舍很有效,但要付出代价,而且代价是明码标价的:只看赢的那些,本身就是一种幸存者偏差。同样的入场条件,可能在另外几笔上出现过并且亏了,只是它们没被算进来。所以提炼出来的「你的打法」,天然比真实的你好看一点。这个坑的完整机制在幸存者偏差里讲过,这里只提醒你:读这份规则卡的时候,心里给它打个折。

取舍三:规则必须是人话,而且要你亲口承认「像我」

这一步是我认为整个设计里最聪明的地方。

提炼出来的每条规则,不是一串条件表达式,而是一句短到能一口气念完的中文;而且流程里明确安排了一次向用户的确认——「这些看起来像你本人的打法吗?」如果你说不像,处理方式是把「至少多少笔才算一条规则」的门槛提高,重新跑一遍。

为什么这一步重要?因为它承认了一件很多分析工具不肯承认的事:机器归纳出来的东西,可能根本不是你。

统计能找出一堆共同点,但共同点不等于原因。你那几笔赚钱的单子可能碰巧都是周三买的,机器于是告诉你「你擅长周三买入」——这就是典型的数据窥探,从噪声里刨出了一个看着像规律的东西。而在这个环节把否决权交回给你,等于给统计装了一道人工闸门:你自己知道周三没有任何意义。

顺带一说,「规则必须是一句人话」这个约束也不是为了好看。说不出人话的规则,等于你没真的理解它;理解不了的东西,你不可能执行。 这跟从诊断到规矩那篇讲的是同一件事的两头。

取舍四:最刺眼的那个数,放在封面

生成的那份报告,翻开第一页就是一个数字:影子的结果,你的真实结果,以及两者之间的差额——正的还是负的,用颜色标出来。

这是一个非常刻意的产品决定。按常规做法,这种「结论性数字」应该压在报告后面,前面先铺垫方法、数据来源、样本说明。它偏不,它把最难堪的一下放在最前面。

代码里那段注释直接把这一节标成了「gut punch」,翻成中文大概是「照着肚子来一拳」。设计者非常清楚自己在干什么:先让你挨这一下,你才有兴趣读后面那些解释。

这就是「照镜子比讲道理有效」这句话被产品化之后的样子——不是把道理讲得更好听,是把你自己的样子,放在你躲不开的位置。

取舍五:差额不给一个数,给拆开的几块,而且留一块「解释不了」

如果只告诉你「你比影子少赚了一截」,你的第一反应一定是:所以呢?

所以它把这个差额拆成了几个可以对应到具体行为的块:不符合你任何一条规则的交易亏了多少(也就是你的情绪单)、赢单太早跑掉少赚了多少、亏单拖太久多亏了多少、超出你正常节奏的那些交易占了多少。每一块都带正负号,正的表示影子在这件事上比你强。

拆开的好处是它把一个笼统的懊悔,变成了几件可以分别处理的事。「我今年做得不好」没法改,「我有一批不符合自己任何规则的交易,它们合计拖了这么多」——这个可以改,而且改法很明确。

更值得说的是最后那一块:残差。整个差额减掉上面几项之后剩下的部分,被单独列成一项,标签大意是「没抓到的信号」。

这是一个诚实到有点罕见的设计。它等于在报告里写明:我拆到这儿为止,剩下的这部分我解释不了。 大多数分析产品会想办法把残差消化掉——分摊进别的项目里,或者干脆不提。留着它,是在提醒你归因这件事本身有天花板。

取舍六:给到具体的某一天、某一笔

报告里有一节,把影响最大的几笔交易挑出来单独列,按影响的绝对值排序,每一条带日期、带原因分类——是违反了自己的规则,还是跑得太早,还是拖得太久。

注意「绝对值排序」这个细节:它同时会列出「最不该做却做了的」和「最该拿住却没拿住的」,不只挑难看的说。

而「具体到某一天某一笔」这件事,比任何汇总指标都更接近那段慢放录像。你看到一个平均数,心里没有画面;你看到某年某月某日那笔,你会立刻想起来当时发生了什么——那天你为什么急着卖,或者那天你为什么忍不住又买了一笔。能被想起来的东西,才有可能被改掉。

它选择不呈现什么

一个产品的价值观,往往藏在它拒绝提供的东西里。

它不告诉你该买什么。 功能里确实有一步是「今天有哪些标的落在你影子的入场节奏里」,但这一步是可选的,输出强制附带研究用途声明,而且整个模块钉着一条红线:永远不对接任何下单通道。 从产品的角度看,这是主动放弃了最容易变现、也最容易让用户上瘾的那部分。理由不难理解——一旦它开始给名单,用户就不再照镜子了,改成等着被喂答案,那面镜子的意义当场归零。

样本不够,它宁可拒绝服务。 盈利回合太少的时候,它不是给你一个「仅供参考」的弱结论,而是直接报错停住。这个选择在产品体验上是扣分的:用户上传了文件,什么都没拿到。但它守住了一条底线——几笔交易撑不起任何关于「你的打法」的结论,硬给一个,比什么都不给更有害。

它不评价你的打法好不好。 通篇没有任何一处在说「你这个方法是对的」或者「这个方法不行」。它只回答一个问题:你执行得像不像你自己声称的那套打法。 这个克制很关键。一个从你几十笔交易里归纳出来的东西,凭什么去评判一套方法的优劣?它没有这个资格,它也没装。

报告的最后一节,放的是告诫,不是行动清单。 一般产品的结尾会放「接下来你该做什么」,因为那是转化率最高的位置。它放的是可信边界:样本有多少、回测用了哪些理想化假设、你的风格可能会随时间失效、以及这份东西永远不接实盘。把最不促销的内容放在最促销的位置,这本身就是一个价值观声明。

这面镜子会在哪儿骗你

R2 级别的内容,风险这一段必须说透。

最大的误读:把那个差额当成「我本可以赚到的钱」。 不是。那个数字是「在一堆理想化假设下,一个照你规则执行的假想账户会走出来的结果」和你实际结果之间的差。理想化在哪几处、为什么反事实推演天生只能当参考不能当预言,反事实推演那篇列了几条边界,一条都不能省,这里不重复。你只要记住一句:它是一把尺子,不是一张欠条。

跨市场那一步要格外小心。 它会把你的打法搬到你从来没交易过的市场里跑一遍。这个动作很吸引人——「原来我这套在别的地方更管用」。但你的习惯是在你熟悉的那个市场里长出来的,交易时段、涨跌限制、流动性、参与者结构全都不一样,搬过去跑出来的数字更接近一次「这套规则在陌生环境下的压力测试」,而不是「你换个市场就能赚这么多」。

你的风格会过期。 从过去某一段时间里归纳出来的规则,只描述了那一段时间里的你和那一段时间里的市场。市场环境换了,规则可能就不成立了——这跟量化模型会随时间失效是同一个机制,模型衰减那篇讲得很细。所以这类报告的正确用法是定期重做,而不是打印出来贴墙上。

别把它当成自动化的理由。 看到「不带情绪的我比真实的我强」,最自然的下一个念头就是「那干脆让机器替我下单」。这个跳跃非常危险:影子跑出来的是模拟结果,模拟成交和真实成交之间隔着滑点、隔着流动性、隔着你没测过的极端行情;而且真正让你亏钱的那些情形,往往恰恰是历史样本里没有的那些。任何形式的自动交易都需要独立的、完整的风险评估,一份行为诊断报告不构成这个评估的哪怕一部分。 这个项目自己划的边界在边界那篇里单独讲,它本身也压根不接下单通道。

顺便说一句:本文读的是这个项目某个时点的源码快照,用来说明设计思路,不是使用说明;这类项目迭代很快,具体行为以你手上那个版本的文档为准。

这套设计里,你不用装任何软件也能抄走的部分

就算你永远不碰这个项目,上面那几个取舍里有四条可以直接搬进你自己的复盘:

一、把参照物换成你自己。 别老是跟大盘比。跟「严格照我自己的规则执行的我」比一次,你会发现问题的性质完全变了。

二、只从你做对的那些交易里找规律,但记得打折。 你的打法藏在你的好日子里,不藏在平均值里。同时提醒自己:好日子里的样子,比真实的你好看。

三、规则说不成一句人话,就不算规则。 一句话说不清,就是你还没想清楚。这条是从「必须让用户确认像不像自己」那个环节抄来的。

四、结论要落到具体某一天某一笔。 「我今年太急躁」改不掉,「三月十四号那笔我为什么没拿住」才有可能改掉。

至于这个项目为什么整体上长成这个样子——一个用自然语言驱动整条研究流程的系统里,为什么会长出一个「照镜子」的功能——那是另一个话题,放在范式那篇里说。

小结

  • 拿自己的数据照镜子之所以比听道理有效,是因为它具体、是你的、而且不带评价语气;但镜子只能照见被照到的那一面。
  • 这个功能最根本的设计判断是把参照物换成你自己,从而把「策略好不好」和「执行到不到位」彻底分开。
  • 它只从盈利回合里提炼规则(还原「状态好的你」,代价是幸存者偏差)、把规则写成人话并交给你否决、把最刺眼的数字放封面、把差额拆成可对应到行为的几块并诚实地留下一块残差、把结论落到具体的某天某笔。
  • 它刻意不做的事同样重要:不给买入名单、不接下单通道、样本不足宁可报错、不评价你的打法好坏、结尾放告诫而不是行动清单。
  • 最容易犯的错是把差额读成「我本可以赚到的钱」——它是一把尺子,不是一张欠条;而「不带情绪的我更强」也绝不是自动化交易的理由。

一句话说完这篇:有人发现,与其苦口婆心劝投资者守纪律,不如把他自己过去几年的样子原封不动地摆到他面前,然后闭嘴。

本文基于开源仓库某一时点的源码与文档快照做概念性讲解,未实际运行该程序,不构成任何投资建议、软件使用建议或自动交易建议;相关边界见免责声明。想系统看这一卷的其他内容,回到量化与 AI 投研卷

内容有错、看不懂、或想看下一篇?告诉我们 →

本文为投资教育整理,不构成任何投资建议;不荐个股/基金、不预测点位、不承诺收益。关键数据与结论请结合权威来源自行验证,并见风险免责声明