第一步:使用完整不筛选的全样本历史数据
收集回测区间内所有符合策略选股条件的标的,包括已经退市、退市风险警示、被指数剔除的问题标的,不要只保留现在还在交易的存活标的。
把已经退市标的的最终清算价格纳入回测计算,退市标的往往会出现大幅亏损,要把这部分亏损正常计入策略的整体收益,不能直接剔除。
整理数据的时候,核对标的上市、退市时间线,确保每一个时间段内的选股池都是完整的,不会遗漏已经消失的标的。
第二步:调整策略的统计验证方法
在完成初步回测后,把样本拆分为训练集和测试集,用训练集拟合策略,用没有参与拟合的测试集做外推检验,观察策略收益是否出现大幅下滑,如果下滑非常明显,大概率是存在幸存者偏差。
采用分层抽样的方式,对不同质地、不同板块、不同上市时间的标的分别做回测统计,单独观察问题标的、退市标的对策略整体收益的影响,确认偏差影响程度。
做多次滚动回测,每一段时间都重新更新选股池,纳入当期所有符合条件的标的,模拟真实投资中选股的实际情况,不要一直用固定的存活标的做回测。
第三步:优化策略的交易规则设计
回测时加入退市、停牌等特殊情况的应对规则,比如标的触发退市条件时,按照市场实际可成交的价格强制平仓,把这部分亏损计入策略收益,不要默认一直持有。
加入真实交易的摩擦成本,包括佣金、冲击成本、流动性折价,因为退市标的往往流动性很差,实际卖出价格会比回测假设价格低很多,把这部分折价计入成本后,能更准确反映真实收益。
回测完成后,用小资金实盘跑一段时间,对比实盘收益和回测收益的偏差,如果实盘收益远低于回测,就需要重新检查是否遗漏了失效标的的亏损,调整回测样本。
建议咨询专业的量化投研人员或者开户券商的量化服务专员确认细节。
需要注意的是,很多新手做量化回测的时候,会直接从当前的股票池倒推历史选股,自动过滤了已经退市的标的,这是最容易产生幸存者偏差的操作,一定要从时间维度正向构建选股池,每个时间点都纳入当时所有符合条件的标的;幸存者偏差带来的收益虚高往往会让你误判策略的盈利能力,实盘交易后容易出现大幅亏损,所以回测的时候不要刻意回避差的标的结果,完整统计才能得到真实的回测结论;除了退市标的,那些因为长期停牌、流动性不足无法交易的标的,也会造成偏差,回测的时候也要把这类标的的无法交易情况纳入规则计算,不能默认可以随时买卖。
举例说明:一名量化投资者想要做低价股策略回测,直接从当前市场筛选出所有5元以下的低价股,回测过去5年的收益得到了很高的年化收益率,但实盘跑下来收益远低于回测,这就是遇到了幸存者偏差:过去5年里有不少低价股已经退市,这些退市标的大部分都产生了大幅亏损,但回测的时候没有把它们算进去,只保留了存活下来的低价股,自然就高估了策略收益。如果调整回测样本,把过去5年所有曾经出现过的低价股都纳入计算,包含退市标的的亏损,得到的回测收益就会贴近真实情况,也就能规避幸存者偏差的影响。
我们可以对接支持量化交易的正规头部券商,满足量化策略实盘交易的各类需求,同时可为你提供开户佣金成本费率,助力你降低量化交易的摩擦成本,提升策略整体收益。如果我的解答对您有帮助,麻烦点赞支持一下,你可以点击我的头像添加专属理财顾问,获取专属的开户佣金成本费率方案,享受一对一的专属投资服务。
发布于3小时前 杭州



分享
注册
1分钟入驻>

+微信
秒答
电话咨询
18630917047 

