机器量化分析(三)——结果分析与策略优化

在上一期【机器量化分析(二)——模拟交易与回测】中,我们简单回测了第一期的那套portfolio,正如上篇末所说,一套合理的策略应该是闭环的,是可以通过获取最新数据对策略调优的。本篇所要介绍的,就是号主在实践过程中的一些调优思路和方法。下面还是从机器学习和投资组合两个视角进行介绍:

===>>机器学习视角

我们的策略用的是机器学习的算法和模型,虽然我们在上期的回测中用了推进式建模(即每次获取新数据后用新数据重新训练模型)的方式,这种方式本身就是一种闭环设计,但对于市场环境的变化以及策略整体框架来看,这种细节方面的闭环对于一个庞大的策略来说还不够。

为什么这么说呢,首先来看一下模型在回测前的评估表(即第一期中的模型评估):

然后对比一下回测期末的模型评估表(如下图):

可见在回测期末,模型的各项指标均有所下降,模型本身的预测能力下降。以楼主的经验来看,F1分值低于50的话还不如掷筛子。模型质量下降的原因本篇不深入探讨,后续单独开篇分析。这里仅从结果出发,作为策略非常重要的买卖点判断模块,模型质量下降,一般来说有两个优化方向:

1. 提高模型质量 :比如更好的feature,推进式建模,动态变化的参数等等。这是纯机器学习领域的内容。

在某些场景中,提高模型质量或许是一件非常难的事情,甚至无法得到质量达标的模型。因此,我们要从策略的总体结构出发,规避系统性风险:

2. 监测模型质量 :即在策略运行过程中,监测模型的质量,当模型质量不达标时执行风控模块。

由于机器学习的模型评估依然是一件计算开销比较大的事情,监测模块的时间间隔可根据各自的计算能力来调整。当模型质量不达标时,可以做止损或对冲操作,具体根据策略的风控模块而不同,但一定要纳入风控的流程,因为这是策略的系统性风险之一。

===>>投资组合视角

以投资组合的视角来看,本篇要介绍的,主要是策略的风险控制。

上篇的策略和回测中,并没有交易预警模块,在本篇机器学习视角中模型质量下降的问题,即可放在这个模块中处理。

首先,作为对比,我们还是以上一篇的策略作为基础策略,并把回测序列拉长,现在我们以2018-03-01 ~ 2018-07-30作为回测区间。

收益曲线如下图:

蓝线为大盘收益曲线(下同),红线为策略投资组合收益曲线(下同),可见在期初略微背离大盘,获得超额收益,而后模型质量下降,收益曲线开始跟随大盘波动。

交易账本如下(仅截取期末部分):

期末的收益率8.09%,最大回撤5%,夏普率0.81,风险系数0.8。这是我们调优前的基准。

市场环境的变化会影响模型质量,在监测模型之前,我们先看看比较简单的预警方法:

根据大盘均线做预警 :当大盘低于60日均线和20日均线时,不买入,仅持仓或根据交易信号平仓。

收益曲线如下图:

由于市场总体行情为熊市,在回测周期内可交易的日期不多,交易次数较少。

这种预警模式相对简单粗暴,在期末的收益率为-5.1%,最大回撤5%,夏普率-0.49,风险系数0.14。相比之前的基准,收益下降,夏普率降低,风险变大。

作为对比,再来看一下当模型质量下降时:

根据监测模型的方法进行预警:当模型F1分值低于50时,不买入,仅持仓或根据交易信号平仓。

收益曲线如下图:

收益曲线与上面的基准收益曲线相似,但减少了交易次数,减小了收益波动。在大盘暴跌,行情转坏的市场环境下,收益曲线依然能保持平稳。

交易账本如下(仅截取期末部分):

期末的收益率9.22%,最大回撤4%,夏普率0.87,风险系数0.087。从数据上来看,相比之于基准策略,收益率和夏普率小幅提升,最大回撤和风险系数减小;相比之于大盘预警的方式,则是全方位的提升。可见,监测模型的预警方式在该策略中的优化效果较好,且优于大盘预警的方式。

最后,再分享一下号主自己的两套优化结果,是在监测出模型质量下降时,通过修正调优模型来优化的方式。

收益曲线和期末交易账本如下:

从收益曲线上来看,期初收益率背离大盘,获得较高的超额收益,最大收益36%,期末则开始跟随大盘波动,且波动较大。

期末的收益率18.06%,最大回撤10%,夏普率1.56,风险系数0.105。相比之于基准策略,收益率翻倍,但最大回撤也翻倍,夏普率明显提高,风险系数也相应变大,属于“高风险高收益”的一种调优方式。

下面再来看看另外一套调优的结果,收益曲线和期末交易账本如下:

从收益曲线上来看,收益更加平稳,在期末大盘暴跌时依然有较好的稳定性,且能背离大盘走势,继续获取超额收益。

期末的收益率25.63%,最大回撤7%,夏普率2.72,风险系数0.088。这套调优方案相比之于基准,各方面均有所提升;相比之于上一套调优方案,收益率有所增加,虽然没有前一套那样收益率一度高达36%,但走势背离大盘且相对前者更加平稳,波动小,最大回撤和风险系数均有所下降,总的来看是最好的一套调优方案。

最后,关于模型本身的调优,需要投入更多的精力和更深入的机器学习相关知识,号主会在后续的文章中分享模型调优的经验和技巧,请大家继续关注:)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180803G11OHK00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励