3、仿真环境回测:回测参数设置、绩效指标计算(夏普、最大回撤、胜率)、回测结果分析
做高频做市策略,最怕什么?
怕实盘一跑就亏钱。
所以回测这个环节,我把它看作是策略的「安全气囊」。你在仿真环境里把参数调得再花哨,回测这关过不去,我建议你千万别上实盘。今天我们就聊聊回测参数怎么设、绩效指标怎么算、结果怎么分析。
3.1 回测参数设置:别让细节坑了你
回测参数设置,说白了就是模拟一个尽可能真实的交易环境。我见过太多人在这上面翻车了。
具体来说,以下几个参数你必须认真对待:
- 回测时间区间:至少覆盖一个完整的市场周期。我个人习惯选3-6个月的数据,包含震荡、趋势、高波动和低波动时段。
- 交易成本:包括手续费、滑点、冲击成本。高频做市对成本极其敏感,我一般按双边万分之一到万分之三来设。
- 订单簿深度:仿真环境里要模拟真实的订单簿。别只盯着最优买卖价,深度不够的话,你的策略可能根本吃不到量。
- 延迟模拟:实盘有网络延迟,回测里也得加。我通常设1-5毫秒的随机延迟,不然回测结果会虚高。
你想想看,如果这些参数没设对,回测出来的夏普比率再高,也是空中楼阁。
3.2 绩效指标计算:夏普、最大回撤、胜率
指标这东西,不是越多越好。我一般只看三个核心指标:夏普比率、最大回撤、胜率。它们能帮你快速判断策略的「健康度」。
3.2.1 夏普比率
夏普比率衡量的是「每承担一单位风险,能换来多少超额收益」。公式很简单:
夏普比率 = (策略年化收益率 - 无风险利率) / 策略年化波动率
但这里有个坑:高频做市的收益率分布通常不是正态的。我建议你用调整后的夏普比率,考虑偏度和峰度。不然算出来的值会偏乐观。
3.2.2 最大回撤
最大回撤,就是策略从最高点跌到最低点的幅度。这个指标我特别看重,因为它直接关系到你的心理承受能力。
举个例子:
| 策略 | 年化收益 | 最大回撤 | 评价 |
|---|---|---|---|
| 策略A | 30% | 5% | 稳健 |
| 策略B | 50% | 25% | 高风险 |
我在项目中遇到过策略B,收益确实高,但回撤一大,实盘根本拿不住。所以我的原则是:最大回撤不超过策略年化收益的1/3。
3.2.3 胜率
胜率就是盈利交易占总交易的比例。高频做市的胜率通常不高,因为很多交易是微亏的,靠大赚来覆盖。
但胜率太低也不行。我一般要求胜率在40%-60%之间。低于40%,说明策略的预测能力太弱;高于60%,反而要警惕是不是过度拟合了。
3.3 回测结果分析:别被数字骗了
回测结果出来了,一堆数字摆在你面前。怎么分析?我总结了三步走:
- 看整体表现:夏普、回撤、胜率是否在合理范围内。如果某个指标异常好,先怀疑是不是数据或参数有问题。
- 看交易明细:逐笔检查交易记录。有没有频繁的「小亏大赚」?有没有连续亏损的时段?这些细节能暴露策略的弱点。
- 做压力测试:把回测数据切分成不同市场环境(高波动、低波动、趋势、震荡),分别看策略表现。我习惯用2015年股灾和2020年疫情的数据做压力测试。
嗯,这里要注意:回测结果好,不代表实盘一定好。但回测结果差,实盘一定差。所以别偷懒,多跑几组参数,多换几个时间段。
说白了,回测就是一场「模拟考试」。考得好,别骄傲;考得差,别气馁。关键是从中发现问题、优化策略。我见过太多人回测跑了一遍就急着上实盘,结果亏得底裤都不剩。
记住一句话:回测越严格,实盘越安心。