量化交易回测怎么做:让回测不骗人的流程与四大偏差
你刚跑完人生第一次量化交易回测。资金曲线像用尺子画的一样上扬,夏普比率 3.1,那个晚上你觉得自己是天才。有一行字应该贴在这门生意每一块显示器的上方:回测是策略实际表现的理想化上界。机器里的错误几乎总是在抬高结果,从不是压低它。这篇讲的就是怎么让回测少骗你一点:流程、把曲线吹起来的四大偏差、以及一张通过的回测单到底证明了什么。
回测是什么,不是什么
回测是用你的规则重放历史:算法走过一段过去的市场数据流,产生信号,每个来回的交易记一笔盈亏,全部加起来就是那条资金曲线。这一切的目的不是预测未来——是在你可控的约束下尽量逼近实盘。路上顺便干四件事:
- 过滤——便宜地筛掉不达标的策略,赶在市场收学费之前
- 建模——在模拟里安全地测试成本、流动性、延迟这些市场机制
- 优化——小心地调参,同时清楚这个动作本身就是偏差来源
- 验证——把你复刻的策略和原作者公布的夏普、回撤对一对,检查实现没错
量化交易的策略比主观策略更配得上回测,理由很直白:规则写下来了,历史才能对着它重放。但有个陷阱——交易频率越高,市场微观结构越难建模,整个回测越不值得信。
量化交易回测的流程:四步,一步不省
- 数据。 价格、成交量、你的规则要吃的一切。数据质量封顶下游全部——垃圾进,幻想出。
- 规则。 策略要精确到计算机能执行。写不成代码的还不是策略,是一种情绪。
- 执行模拟。 按时间顺序走数据、逐笔成交、记录每个持仓。成本从第一天就进模型——每笔成交都算佣金和滑点。一加上租金就死掉的"优势",从来就不是优势。
- 评估。 收益率、夏普比率、最大回撤、胜率,从完整记录里取——不从最好看的那段窗口里取。
把量化交易回测曲线吹起来的四大偏差
一、过拟合(杀死策略最多的那个)
把入场阈值、回看窗口、止损位一路调到回测发光——这就是过拟合,也叫曲线拟合、数据窥探。它从这些门进来:训练数据太少、噪声太多、或模型太复杂把历史挤压过头——策略背下了历史的偶然,像学生背去年考卷的答案,然后撞上一张新卷子。检测法:做敏感性分析。把每个参数微微挪动,画出"表现曲面"。真实的效应给出平滑的曲面;曲面跳来跳去,说明你的参数在拟合噪声而不是现象。补救枯燥但有效:参数越少越好、数据越多越好、留一段你从不拿去调参的样本外数据。
二、未来函数(实盘跑输回测的头号原因)
模拟走到 N 时刻时,你的代码必须对 N+1 之后一无所知。泄漏点尴尬地隐蔽:数组索引差了一位;回归系数用全数据集(含未来)拟合、再倒回去应用;用当根 K 线的最高最低价决定这根 K 线内的交易——可高低点要到 K 线结束才确认(必须滞后一期使用)。模拟里光芒四射、实盘里一瘸一拐的策略,未来函数是教科书级解释。实盘和回测对不上时,先来这里搜查。
三、幸存者偏差(由赢家书写的历史)
拿今天的成分去测试,你测到的只是活下来的资产。2001 年互联网泡沫破裂是教科书案例:在熬过崩盘的科技股上筛策略,表现亮眼——破产的那些被悄悄从数据集里删掉了。散户的数据源在这件事上并不无辜:免费行情门户的历史股票池普遍不含退市股。不花机构级预算的两条出路:用更近期的数据(消失的名字更少);或者从今天开始记录你自己的股票池让它变老——三四年之后,你就有一份干净的数据了。
四、心理承受偏差(没人写代码防的那个)
一个动量策略回撤 25%、持续四个月,在纸面上毫不起眼。在曲线上它是你划过去不看的一个坑;在真金白银里它是一个冬天。从没演练过"熬过它"的交易者会在回撤中途拔电源,把一个本会通过的策略变成一个跑输的策略。规矩是:回测里出现过多深、多久的回撤,就把你的心理预期排到实盘再经历一次——因为它一定回来。
一张通过的回测单,到底买到了什么
量化交易回测通过,是实盘的入场券,不是盈利的承诺。它说明规则可实现、风险曾一次可活、成本没杀死它——对下一个市场状态什么都没说。之后的职业循环是:模拟盘、小仓位、实盘成交对照模拟成交、迭代。六阶段路线图摆好了整个序列;候选策略死在这里的时候,策略家族表是下一个想法的来处。
国内量化交易回测的落地路径不复杂:QMT、PTrade 这类券商量化软件自带回测模块,建好策略就能对历史数据跑;练手对象还是那只双均线 ETF——流程闭环了,再谈别的。
常见问题
回测需要多长的历史数据?
要长到跨过几种市场状态——日线策略至少几年,能拿到更长更好;但也别长到市场的规则已和今天面目全非。情境的广度胜过原始长度。
为什么实盘跑不赢回测?
按可能性排序:成本算得太客气、原回测里有未来函数、过拟合、以及历史里根本不包含的新状态。上面四大偏差就是检查清单。
回测能证明策略赚钱吗?
不能。它只能便宜地"未能证伪"。证明发生在实盘,慢慢地、小仓位地——这也是为什么Python 工具链那篇排在纪律之后。
量化交易的回测是一个过滤器,不是先知。诚实地建它——成本进、泄漏出、参数少——它会免费替你杀死几十个坏主意。这就是它的本职,而且它干得很好。剩下的流程,专集首页一直留着。