手工策略转量化时,很多人第一眼会看回测收益率。
这个习惯很容易理解。既然策略已经写成代码,自然想知道历史上能不能赚钱。但如果一开始就把回测当成收益证明,方向很容易跑偏。
回测真正适合验证的,首先是规则和信号是否符合预期。
换句话说,它更像是在问:我写下来的这套逻辑,在历史行情里有没有明显反常识?信号出现以后,后面的行情有没有大致朝我原本预期的方向走?
回测不是收益证明
回测用的是历史行情。
这意味着你在设计策略时,很容易不自觉地受到历史结果影响。比如已经知道某一年是大跌行情,参数调整时就可能往空头方向靠;知道某段行情震荡,就可能把策略调得更适合那段震荡。
这不是故意作弊,而是人很难完全摆脱已经知道的信息。
另外,回测撮合也和实盘有差别。历史数据推进、成交规则、滑点、排队、部分成交,都不可能完全等同真实交易所环境。
所以回测收益率可以参考,但不能直接当成实盘收益率。
信号预期比收益更重要
更稳的做法,是先在回测里看信号。
如果你设计的是多头信号,那信号出现以后,后面一段行情是否大体更强?如果你设计的是趋势过滤,那过滤以后是否真的避开了一些明显不适合交易的阶段?
这类问题比单纯看收益率更重要。
因为成交价可能不同,手续费和滑点可能不同,但历史行情本身已经在那里。信号出现后,后续价格怎么走,是可以复查的。
| 回测里更该看的内容 | 为什么重要 |
|---|---|
| 信号是否按预期出现 | 检查规则有没有写错 |
| 信号后行情方向 | 看逻辑是否大体成立 |
| 异常交易记录 | 找代码或条件问题 |
| 亏损来源 | 判断是规则问题还是行情不适合 |
这些内容比单个收益率更能帮助你理解策略。
带着预期做回测
回测还有一个关键前提:要先有预期。
不能先跑一堆结果,再从里面挑一个最好看的解释。那样很容易变成事后诸葛亮。
比较好的顺序是,回测前先写清楚:什么条件触发,为什么触发,信号出现以后希望看到什么,什么结果说明逻辑不对。
有了这个预期,回测才是在验证想法。没有这个预期,回测就容易变成反复找好看的参数。
后面还要进入模拟
回测阶段如果能说明规则大体没问题,下一步也不是直接实盘,而是进入模拟观察。
模拟交易使用正在发生的行情,能减少对历史结果的依赖。它更适合看策略在未知行情里能不能跑起来,委托、成交、持仓和账户记录是否符合预期。
所以手工策略转量化时,可以把阶段拆开:回测看规则和信号,模拟看流程和运行,实盘再面对真实资金和真实撮合。
回测很重要,但它不是终点。它更像是把手工策略翻译成量化规则后的第一道复查。真正有价值的不是"历史上收益率多漂亮",而是这套规则为什么在某些行情里有效、为什么在某些行情里失效,以及这些结果能不能被你解释清楚。