9.1 告别大爆炸模型:你为什么不需要一个“完美的初始计划”

📅 2026/8/6 1:45:18
9.1 告别大爆炸模型:你为什么不需要一个“完美的初始计划”
2017年一个在百度做搜索架构的工程师决定开始理财。他花了三个月时间把市面上公认最好的十本投资经典从头到尾精读了一遍——从格雷厄姆的《聪明的投资者》到麦基尔的《漫步华尔街》从博格的《长赢投资》到塔勒布的《黑天鹅》。读完之后他觉得还不够。他又花了两个月时间用Python把A股过去十年所有主流指数的历史数据全部爬下来写了一套回测框架把股债平衡、行业轮动、动量因子、低波动因子全部跑了一遍。跑完之后他觉得数据量还不够大参数还不够收敛。他又开始自学CFA一级的教材觉得既然要做投资就应该接受系统性的训练。2020年初他还没有买入第一笔指数基金。他还在等。他在等一个“估值足够低、经济周期位置足够清晰、货币政策方向足够明确”的完美入场点。2020年3月新冠疫情引发了全球熔断A股跟着暴跌。他终于等到了他苦等三年的“估值低谷”。但他没有买。因为当时的宏观环境不符合他预设的“确定性足够高”的条件——疫情会持续多久全球经济会不会进入大萧条供应链什么时候能恢复这些问题都没有答案所以他继续等。2020年7月沪深300已经从他等待的那个谷底反弹了超过百分之三十。他这三年在知识、数据和模型上的全部投入为他产出的投资收益是零。他犯的错误和你可能正在犯的错误一模一样他在用瀑布模型开发一个必须用敏捷迭代才能交付的系统。瀑布模型的失败等你把需求分析做完市场环境早就不一样了你是一个工程师你太熟悉瀑布模型为什么在软件工程领域被抛弃了。瀑布模型的逻辑链条在纸面上是完美的先做完完整的需求分析每一个需求条目都写得清清楚楚然后做系统设计每一个模块的接口都定义得明明白白然后才开始写代码每一个函数都在设计文档里有对应的规格说明最后做集成测试确保最终交付的系统完全符合最初的需求文档。这个流程最大的问题不是它不严谨是它假设需求在项目周期内不会发生变化。而真实世界里需求在你写完需求文档的第二天就开始变了。投资是一个需求永远在变的项目。宏观经济周期在变货币政策方向在变行业竞争格局在变你自己的生活状态也在变。你二十多岁单身的时候最优的资产配置方案和你三十五岁结婚生子背着房贷的时候最优的配置方案完全是两套不同的参数。你今天花了三年时间去精读所有经典、回测所有数据、学完所有课程试图找出那个一劳永逸的完美初始配置方案等你终于找到的那一天你的生活阶段可能已经走到了这套方案覆盖不到的维度里去而你的三年时间窗口——以及这三年里市场提供的全部平均回报——永远回不来了。更致命的是瀑布模型让你误以为投资知识是可以提前学完的。不是的。投资里最有价值的那部分知识——你知道自己在市场暴跌时真实会有什么反应你知道自己扛不扛得住百分之三十的回撤你知道自己在连续亏损三个月之后会不会手贱去修改定投参数——这些东西你不亲自在实盘里泡过一轮完整的牛熊周期你永远学不会。你在书本上读到“投资者在熊市中容易恐慌性抛售”这句话和你自己亲身坐在熊市的谷底、看着账户每天缩水、还要克服恐惧继续定投是完全不同的两回事。前者是认知后者是肌肉记忆。肌肉记忆无法通过阅读和回测来获得。它只能通过上场、犯错、复盘、再上场的循环来获得而这个循环的开始时间越早越好投入的资金越小越好。上线即重构接受你的第一个版本必定会被重写你职业生涯里写过的所有代码有哪一个版本是写完就没再改过的没有。你的第一个版本永远是MVP——它能跑能解决最核心的问题但它的架构粗糙变量命名随意错误处理几乎为零边界条件只覆盖了你自己测试环境里跑过的那几条正常路径。你上线之后用户立刻会用它做出你从来没有预料到的操作数据量会大到你的单机数据库根本扛不住你的代码会在凌晨三点被监控告警叫起来救火。然后你开始迭代。你把单体架构拆成微服务你给热路径加了缓存你在每一次事故复盘之后往断言列表里加了一条新规则。三年之后你的系统在生产环境里跑得稳稳当当。它和最初那个MVP共享同一个灵魂但长得已经完全不一样了。你的投资体系也是一样的。你今天读完这个系列文章你不需要等到读完所有相关书籍、回测完所有策略、考完CFA三级之后才开始动手。你在这个周末就可以上线的MVP是什么是开好一个证券账户设置好两个自动定投计划——一个是沪深300ETF一个是中证500ETF——金额设成你税后月收入的百分之十红利再投扣款日设在你发工资之后的第二天。然后你关掉App去写你的代码。这个MVP的收益率在长期来看不会比你花三年研究出来的任何复杂策略差太多它最核心的价值不是收益率是它让你的财富系统从零变成了一。零和一之间的差距比一和一百之间的差距大多了。上线之后你一定会改。你在第三章学到的资产配置比例你会在第一次经历熊市之后发现你高估了自己的风险承受能力然后你需要在下一次季度评审上把权益仓位从百分之六十调到百分之五十。你在第四章学到的投资日志格式你会在坚持写了六个月之后发现有些字段你从来不填、有些字段每次都要额外补写、有些字段在复盘时根本起不到你设计时以为的作用然后你在下一个迭代版本里把日志模板重构一遍。你现在的系统目标不是完美是跑通。完美配置的幻觉不存在股债黄金比只存在不断修正的近似值你一定在某个地方读到过“股债六四开是最优配置”或者“股债五五开是永恒的黄金比例”这种话。如果这些话让一个受过理工科训练的工程师感到不安——你说对了你应该不安。因为当你仔细研究这些比例是怎么得出来的你会发现它们要么是基于美国过去一百年特定时间段的回测结果要么是基于某种特定的效用函数和特定投资者的风险偏好参数算出来的理论最优解。不管是哪一种它对应的边界条件都不完全等于你现在面对的A股市场和你自己的真实情况。你的股债比例不是一个需要在一开始就被精确求解的方程。它是一个需要被不断调整的反馈回路。你今天认为股债六四开是你能接受的风险水平你先按六四部署上去。六个月后市场跌了百分之十五你发现自己每天晚上都在焦虑得看盘那你就在下一季度的架构评审会上把权益比例调到五五。再过两年你的本金翻了一倍你的主动收入也涨了一大截你发现百分之二十的回撤对你心态的冲击远不如两年前严重那你再调回六四。比例的变化不是策略失败是策略在响应新的输入数据。追求精确的百分比在投资里和在机器学习里是同一类错误——过度拟合。你试图用有限的历史样本来拟合出一个对未来也有泛化能力的精确参数但未来的分布和历史的分布永远存在差异精确的参数在碰到这种差异时会比模糊的参数衰减得更厉害。模糊的正确远胜于精确的错误。你先定一个大方向——大部分钱放在安全的、能跑赢通胀的资产里小部分钱放在有更高收益但也更高波动的资产里——然后让市场反馈、你的季度评审记录、以及你对自己在真实回撤中的心态观察来逐年修正这个大方向下的具体比例。你现在就可以上线你的MVP。不需要读完所有章节。后面还有一章半的内容你可以边跑边读。你的定投守护进程在后台安静执行的时候你的主线程可以继续学习第十章的终极重构。上线不是完美的结束是迭代的开始。而迭代才是你作为一个工程师最擅长的事情。