从回测到实盘:工程视角的差距

每一个做量化的新人,都经历过那个时刻:策略在回测里画出一条漂亮的净值曲线,感觉自己握住了圣杯。然后实盘教会他做人。

这篇文章不讲策略,讲工程——从回测到实盘,真正拦住你的往往不是策略本身。

回测的幻觉

回测曲线是会骗人的。 它骗人的方式有几百种,最常见的三种:

  • 过拟合:参数被调到和历史完美吻合。改变任何一段区间,策略立刻失效。回测曲线越平滑,越值得怀疑。
  • 幸存者偏差:用的是今天还活着的标的。那些退市、暴雷、停牌多年的”尸体”不在样本里,历史收益被系统性高估。
  • 未来函数:用了当时拿不到的信息——收盘后的数据在盘中就被”用”了,看起来每次判断都对。

我的经验是:回测的意义不是证明策略能赚,而是证伪”策略会死得很难看”。一个经过充分证伪、在各类极端行情(急跌、长期阴跌、暴涨、流动性枯竭)下都不至于爆掉的策略,才配得上实盘。

实盘的新问题

回测里不存在的问题,实盘一个都不会少:

滑点与成交。 回测假设想买就能买到,实盘里涨停买不进、跌停卖不出、大单把价格打穿。目标比例是”意图”,实际成交要靠执行端自行计算和微调。

停牌与除权。 持仓的标的停牌,信号要求调仓,消费端必须知道”这只票今天动不了”,把它的仓位冻结,而不是硬下单。

信号丢失。 链路里任何一环抖动,信号就丢了。网络超时、进程重启、队列积压。必须假设信号会丢,然后设计不丢的方案——持久化队列、未终态回退、幂等登记。

系统的可靠性。 回测跑三个月不崩不代表实盘不崩。真实环境里:磁盘满、内存泄漏、进程被误杀、半夜的异常日志。交易系统对可靠性的要求,接近金融基础设施而不是普通应用。

工程上的应对

所有应对的核心就一句话:假设每件事都会失败,然后为失败设计行为。

  • 信号丢了 → 队列持久化 + 未终态回退,消费端崩溃不丢信号
  • 信号重了 → 终态登记 + 幂等去重,同一笔信号只执行一次
  • 账户异常 → 显式状态机,暂停/恢复人工可控,绝不静默交易
  • 交易错了 → 账本对账,每笔决策与成交都可追溯,日报核对

心态

实盘第一课不是赚钱,是敬畏。敬畏市场,敬畏那台替你执行纪律的机器,也敬畏”回测说得再好听、实盘也可能不认账”这件事。

回测证明的是下限,实盘考验的是上限。下限足够硬,才有资格谈上限。

—— 松鸦,2026 年 8 月


从回测到实盘:工程视角的差距
https://hua-blog.pages.dev/2026/08/05/backtest-to-live/
作者
松鸦
发布于
2026年8月5日
许可协议