摘要 本篇探讨第一种基于相对强弱指标的轮动策略(STR01),以中证1000(zz1000)、沪深300(ss300)指数为例,进行参数优化与回测。过程中也涉及到优化指标的讨论(将绝对年化率调整至相对benchmark的主动收益率)。
基于相对强弱指标的轮动策略(STR01)基于rs1指标,其他细节可联系作者。此外,为统一轮动策略评价标准,将优化评价目标由绝对年化率改为相对benchmark的主动收益率。第一,由于参数period1、period2会影响实际回测的时段(例如偏大的period设置会压缩后期回测时段),而轮动标的自身在不同时段的表现不同,因此会对轮动策略的绝对收益产生影响,这部分由于回测时段不同造成的影响并不是轮动策略本身带来的,应当剔除;第二,所谓轮动,体现的正是在两类可投资标间通过动态挑选强势标的的主动投资的能力,应当用主动投资予以衡量,而其对应的benchmark,可以选用被动投资下的50/50策略。
基于zz1000/ss300指数2005年1月至今日数据,其rs1指标形态如下:
首先对STR01的参数period1/period2做遍历,计算其相对50/50策略的主动收益率。
第一次遍历,period1/period2均从10至400;步长均为10。主动率热区图如下,左侧为不考虑交易费率的情况,右侧为考虑双边千3的交易费率。
考虑交易费率后,回测年化率最好的3对参数设置如下(re为不考虑交易费率,re_addc为考虑千3的费率):
## para_per1 para_per2 act_re act_re_addc
## 886 230 60 0.07674407 0.05959861
## 904 230 240 0.06005322 0.05164724
## 870 220 300 0.06290860 0.04840109
可见在遍历参数样本中,当period1=230,period2=60时,轮动策略的表现最好,其相对50/50策略(即同时半仓中证1000、沪深300)的主动收益率为6.0%。该策略累计收益率如下:
从wind终端得到更为完整的周数据(2005年1月至今)后,至此该数据与日级别数据时间跨度一致,得到rs1指标形态如下:
再次进行同第3节中的遍历实验,主动收益热区图如下:
与日数据的热区图相比,可以看出相同参数范围下(周尺度下一个单位约等于日尺度下5个单位),主动收益的热区图分布大致相同。其中表现最好的3对参数值如下:
## para_per1 para_per2 act_re act_re_addc
## 2407 49 11 0.06869360 0.05734764
## 2139 43 49 0.06755647 0.05658347
## 2257 46 14 0.07269644 0.05604201
其中period1=49,period2=11下,年主动收益达到5.7%。策略回测收益率曲线如下:
不管从最优参数分布情况,还是从对应收益曲线形态,周数据与日数据的策略回测效果相差不大。
本篇通过日级别、周级别数据对STR01策略均进行了回测。结果表明,相同的样本长度下,最优参数的分布大体相似。此外,另一个发现是,beta2的控制参数period2对回测效果的影响远不及period1(beta1的控制参数)。因此,后续可以对signals生成规则做调整——仅就beta1的正负触发信号的正负,即一旦rs1斜率为正,signal=1;否则signal=-1。相关讨论将在下篇进行。