全部版块 我的主页
论坛 金融投资论坛 六区 金融学(理论版) 量化投资
1307 1
2021-02-23
接上篇

2

风格轮动策略

根据市场惯性经验,我们构建如下量化策略:


1. 交易对象:沪深300、创业板指数的ETF,前者代表大市值,后者代表小市值。

2. 筛选条件:用最近N日的涨跌幅,作为筛选条件(默认N=20,即大约为最近一个月)。

3. 风格轮动:每日根据条件,选择涨幅大的指数持有。


来举个例子讲解策略细节。


08例子1.png



2010年9月28日开始运行策略。收盘后发现沪深300最近20天涨幅为1.08%,优于创业板。那就在次日开盘时买入沪深300的ETF。


指数无法直接交易,用ETF代替。我在之前的文章《一念之差,少赚一百万》中介绍过几种投资指数的方法。


08例子2.png



次日(9月29日)收盘前,发现沪深300的涨幅依旧占优势,那就维持沪深300的仓位不变


08例子3.png



时间来到11月9日,收盘前发现创业板前月的表现首次超过沪深300。我们就在当日收盘时卖掉之前持有的沪深300ETF,然后在次日开盘时买入创业板ETF。


之后都按照这样的方法,每天收盘前计算大小盘指数前20天的涨跌幅,并在下日持有表现好的。

09模型.png

这样我们就把之前关于市场的经验转换成了一个明确买点、卖点,可无脑执行的量化策略。


3

策略回测

那这个策略能赚钱吗?


很多时候经验是不可靠的。人脑不够精确,又会带上主观偏差,只看想看到的东西。


想要知道这个根据经验总结出来的策略是否有效,最好的方法,就是用历史数据和Python代码来验证这个策略,看看在历史上这个策略的表现。

10代码&数据.png

运行代码后得到结果:

11回测结果.png

回测时间从创业板指数诞生的2010年开始,至2021年1月。在扣除手续费后,策略翻了8.48倍,年化收益22.42%,远超同期大盘(2.15倍)和小盘(3.67倍)的表现。


但美中不足的是,该策略的最大回撤高达48.33%,很多人在实盘中无法接受这么大的回撤,所以需要进行优化。


03策略优化

1

策略分析

目前策略在收益上的表现已经不错了,所以我们主要针对最大回撤进行优化。


想要降低回撤,最好的办法就是回到最大回撤发生的时间,2015年6月3日至8月26日,看看当时的市场发生了什么。

13年行情.png

当时恰逢15年股灾,沪深300和创业板指数都处于下跌状态,市场整体处于深度熊市。


我们在这段时间内挑了几天比较典型的持仓:

14典型持仓.png

6月26日小盘相对跌的少,持有大盘,5日后亏损5.26%

7月28日小盘相对跌的少,持有小盘,5日后亏损1.42%


不难发现,在市场整体下跌时,策略只是在大小盘之间选择跌得少的买入。即使两者中选对了,也仍然是跌。


当市场处于明显熊市,再傻傻的按照策略操作,最多只能让我们少亏,这明显是不对的。


2

策略优化

据此,我们尝试对策略做优化。


当两个指数近20天都下跌时,我们认为市场处于熊市,所以第二天直接空仓。

15新模型.png

新的策略能否达到预期?光凭脑子yy和嘴说是没用的。还是要利用Python和数据进行验证,代码如下:

16改进代码.png

只需新增三行代码就能达到想要的效果。新策略的结果如下:

17新策略.png


不仅最大回撤按照预期的从48.33%下降到29.13%,净值也从8.48提升到了11.71。


最大回撤的时间段从2015年变为了2018年,如果你想继续优化策略,可以去看看当时发生了什么,能不能总结出原因?


总的来说,这次优化还是很成功的,改进后的策略在风险和收益上的表现都有所提升。


3

进一步优化

此外再给大家提供一些优化思路 -- 修改策略的变量。


之前的策略用沪深300、创业板指数。但代表大盘的指数还有上证50、上证综指等等。小盘指数也可选择中证500或者中证1000。


与此同时,20日涨跌幅这个筛选条件,可以变成其他日涨跌幅,比如10日、30日、40日等。


这些改变在代码中只要改几个变量就能实现。这里我们仅将大盘指数从沪深300变为上证50,其余不变,看看策略表现如何。

18上证50回撤.png

策略的年化收益率从26.21%提升到了27.61%,最大回撤也下降了2%,收益进一步提升,风险也进一步下降。

20指数数据.png

04其他方法

本文介绍了在两个指数之间进行轮动的量化策略。


如果我们的思路再开阔一点,其实可以将轮动的对象从指数变为其他东西。


比如在两个自己喜欢的股票之间轮动,在白酒和券商之间轮动,在比特币和以太坊轮动...


我可以提前透露一下,这个策略在BTC和ETH之间轮动的收益非常爆炸,本文点击“在看”超过100,我就公布策略结果。


其实思路还可以进一步放开。我们甚至可以跳出轮动这个框架,尝试更专业的玩法 -- 构建股指期货多空。


关于什么是股指期货,大家可以看我之前的文章《一念之差,少赚100万》。运用股指期货我们可以做多优势指数,做空劣势指数。

19股指期货.png

这样我们的收益就完全取决于两个指数之间的差异,整体的资金曲线也会和大盘都是无关。由于策略比较复杂,本期篇幅有限就不展开了。


联系邢不行:关于量化的任何问题,或者想要了解其他内容,可以加我的微信(xbx3642)和我交流。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2021-4-11 18:10:33
大神,求代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群