策略回测基础:回测的定义与目的、回测的三大要素、回测与实盘的区别
各位同学,今天我们来聊聊策略回测的基础。说实话,回测这件事,我做了快十年,踩过的坑比你们见过的策略还多。但别怕,今天我把这些经验掰开揉碎了讲给你听。
一、回测到底是什么?
回测,说白了就是拿历史数据来检验你的交易策略。你写了个策略,觉得能赚钱,但总不能直接拿真金白银去试吧?回测就是那个「试金石」。
我个人习惯把回测比作「时光机」。你带着今天的策略,回到过去,看看它在那些涨涨跌跌的日子里表现如何。嗯,听起来挺科幻,但这就是量化交易的核心基本功。
回测的核心目的就三个:
- 验证有效性:你的策略到底能不能赚钱?不是靠感觉,是靠数据说话。
- 发现缺陷:策略在什么行情下会崩?回测能帮你提前看到「死穴」。
- 优化参数:哪个参数组合最好?回测给你答案,但小心别掉进过拟合的坑。
我在项目中遇到过一件事,有个同事写了个策略,回测年化收益50%,他兴奋得不行。结果实盘一个月亏了20%。为什么?因为他的回测里有个隐藏的「未来函数」,用了未来的数据做决策。这就是典型的回测没做干净。
二、回测的三大要素
回测要想靠谱,三个要素缺一不可:数据、策略、绩效。我管它们叫「回测三剑客」。
1. 数据——回测的「原材料」
数据质量决定回测质量。这个道理我吃了大亏才明白。有一次我用某免费数据源做回测,结果发现数据里有很多「跳空缺口」没处理,回测结果漂亮得不像话,实盘直接傻眼。
好的回测数据需要满足:
- 完整性:不能有缺失,尤其是关键时间点的数据
- 准确性:价格、成交量必须精确到小数点后
- 一致性:复权处理要统一,前复权还是后复权?我建议用前复权
- 频率匹配:日线策略用日线数据,别拿分钟线跑日线策略
我的小技巧:永远准备两份数据源做交叉验证。一份主用,一份备用。数据对不上?那肯定有问题。
2. 策略——回测的「发动机」
策略就是你写的交易逻辑。可以是简单的均线金叉死叉,也可以是复杂的机器学习模型。但不管多复杂,策略必须满足:
- 可执行:回测里的每一笔交易,实盘都能原样执行
- 无未来函数:不能用未来的信息做今天的决策
- 考虑交易成本:手续费、滑点、冲击成本,一个都不能少
你想想看,如果一个策略在回测里每天都能精准抄底逃顶,那大概率是用了未来数据。我曾经见过一个策略,回测曲线完美得像教科书,结果发现它用了「收盘价」来生成「开盘价」的买卖信号。这不是作弊是什么?
3. 绩效——回测的「成绩单」
绩效指标是衡量策略好坏的标尺。光看收益率?太片面了。我一般看这几个:
| 指标 | 含义 | 我的经验值 |
|---|---|---|
| 年化收益率 | 策略每年赚多少 | 别只看数字,要看稳定性 |
| 最大回撤 | 最惨的时候亏多少 | 超过20%就要警惕 |
| 夏普比率 | 每承担1单位风险能赚多少 | 大于1算及格,大于2算优秀 |
| 胜率 | 赚钱的交易占比 | 不是越高越好,要看盈亏比 |
| 交易次数 | 策略活跃度 | 太少没统计意义,太多手续费吃死 |
避坑指南:我曾经只盯着年化收益率看,结果选了个回撤40%的策略。实盘两个月,心态直接崩了。记住,回撤比收益率更重要。亏50%需要赚100%才能回本,这个账你算过吗?
三、回测与实盘的区别
这是最容易被忽视的部分。很多人觉得回测跑得好,实盘就能赚钱。天真了。
回测和实盘的区别,我用一张图来说明:
这张图很直观。回测世界里一切都是完美的,但实盘世界里处处是坑。我总结了几点核心区别:
- 数据差异:回测用的是历史数据,实盘面对的是实时数据。历史数据是「上帝视角」,实时数据是「盲人摸象」。
- 执行差异:回测里你按收盘价成交,实盘里你可能要挂单等半天。滑点这东西,回测里可以忽略,实盘里能吃掉你一半利润。
- 成本差异:回测里手续费算个固定值就完事了。实盘里还有冲击成本、隔夜利息、印花税...名目多着呢。
- 心理差异:回测亏了,你点一下鼠标重新跑。实盘亏了,你晚上睡不着觉。这个差异,做过实盘的人都懂。
我的经验之谈:回测跑出来的收益,打个八折才是实盘的预期收益。如果回测年化20%,实盘能到15%就算烧高香了。别问我怎么知道的,都是亏出来的教训。
四、回测的正确姿势
说了这么多,那到底该怎么回测?我分享几个原则:
- 先做简单策略:别一上来就整机器学习。均线策略跑明白了,再上复杂模型。
- 多周期验证:牛市、熊市、震荡市,都要跑一遍。只在一个周期里赚钱的策略,大概率是运气。
- 留足安全边际:参数别优化得太精细。我见过有人把参数优化到小数点后两位,结果换个时间段直接崩盘。
- 做样本外测试:留一部分数据不参与优化,专门用来验证。这是检验过拟合的「照妖镜」。
一个小技巧:回测时把交易日志打开,一笔一笔看。别只看最终曲线。我曾经发现一个策略在某个时间段频繁交易,一看日志,原来是数据有重复,触发了多次信号。这种bug,不看日志根本发现不了。
好了,回测基础就讲到这里。记住一句话:回测是工具,不是答案。它能帮你排除坏策略,但不能保证好策略一定赚钱。实盘才是最终的考场。