量化百问
回测风控策略

回测赚钱,为什么实盘会亏?

回测只是按历史假设重放规则,不保证未来重复。数据、成交、成本、市场环境和执行状态只要有一项不一样,实盘结果就可能变差。

要点

展开依据

## 先分清回测在做什么

回测是把历史数据按时间顺序重新播放:策略看到当时已经出现的信息,产生信号,进入订单处理,再更新现金、持仓和净值。它能检查规则有没有明显漏洞,也能描述某段历史行情中的风险和交易节奏;但它不能证明未来一定会重复过去。

## 为什么实盘可能变差

第一,成交假设不一样。信号只表示“想买”或“想卖”,不等于订单已经成交。比如买单发出后尚未成交,下一根 K 线到来时,如果程序只看持仓,可能重复下单。真实执行还要处理订单已提交、已接受、部分成交、完成、取消和拒绝等状态。

第二,成本和滑点可能被低估。回测至少要写清佣金、最低收费、税费、滑点、交易单位以及无法成交时的处理。高换手策略中,费用可能占很大比重;只填一个比例,不能说已经还原真实成本。

第三,数据和市场环境会变化。去年表现好的规则不自动适合今年,应覆盖上涨、下跌、震荡等不同状态。用一段被反复查看的数据挑出唯一高分参数,也可能只是过拟合。更稳妥的做法是把训练区间和测试区间分开,用前进式验证:训练、冻结参数、测试,再向前移动。

## 怎么检查

先核对每笔交易,再看总成绩;保存数据版本、参数、交易明细、净值、回撤、交易次数、成本和异常。回测通过后,还应先做模拟运行,再评估是否具备进入真实执行的条件。

想系统检查策略表现,可以学《回测引擎与事件驱动》《回测评价:收益、回撤与交易质量》和《前进式验证与分阶段考核》。