量化策略开发,高质量社群,交易思路分享等相关内容
正 文
大家好,今天我们分享2023年度第3期策略——RUMI魔改+krange自适应离场第3版迭代。
本期策略是2023年通用系列第3篇。本期主要内容有对RUMI原版的逻辑魔改,其次重点针对krange自适应离场模块进行第3次参数自适应魔改。具体魔改主要针对的是初始化计算的参数,以及ER效率系数和加速模块,二合一自适应加速处理。
1、策略逻辑
我们在一些量化杂志中,可以看到一个叫做RUMI的策略,当然这个策略实际上很垃圾,我也不知道为啥总是在绩效排行榜的前面,而且还是什么全球top10。
实际上原版本的策略如下图所示:
看到了吧,实际上就是长短均线差,然后在平均。但是我们要看的并不是事物的缺点,而是事物的优点。我看到的优点就是在一个行情阶段,长短均线差势必会出现一个方向的分离。其次,在窄幅震荡中,这个RUMI数据会呈现一个稳定波动的态势。如下图所示:
当然了,以上的东西是存在很多主观的因素的,但有一点可以确定的是,只要行情上下波动加大,那么下面的数据波动也会加大,哪怕是宽幅震荡。
基于以上还有其他定性研究,我修改了比原版更为准确和及时的进出场逻辑,加入了上下轨道,如下图所示:
下面我将重点讲述一下Krange自适应离场第3版。在该版本中,我将初始化参数给予自适应,并且将第2版中的加速模块去掉,也改为自适应。在第1、2版本中,我们设定了1个初始化止盈止损的参数,其次利用ER效率系数进行了自适应的迭代跟踪,并且在第2版本中加入了加速模块,设定了加速触发阈值和系数2个参数,但是这3个参数在不同品种、周期中变化很大,一般的新手也很难把握,如下图所示:
下面,先对初始化参数进行自适应迭代,如下图所示:
在这个逻辑中,我们考虑平均一个单位ATR变动,带来多少pricerange的变化,从而确定初始化参数的大小,因为在实践中我们发现,虽然尽管ATR是个历史波动率刻画工具,但是初始化会无时不刻的影响后续的迭代。
基于此,目前想到的一个不是很好、很完善的自适应逻辑就是用上述逻辑进行代替。
其次,在第2版加速逻辑模块中,一下子增加了2个参数,哪怕其中exit_mul_2可以通过exit_mul_1参数进行代替。
基于此,我使用一个简单的线性插值方法,根据RSI动态调整AdjustedEffRatio的权重,这样我们可以使AdjustedEffRatio在RSI的极值(超买超卖)时达到最大和最小值权重。如下图所示:
从上图可以看出,当价格下跌的过程中,AdjustedEffRatio就会变大,同理多头反之亦然。这样的话,我们就可以结合2种算法,将多空2个结构都可以自适应。这一点就是说要迭代修改的重中之重。
2、绩效
组合
Eb
纸浆
总结
-
该策略自适应模块仅对空头做了自适应加速,多头那块留给大家作业,照着源代码可以自行修改。不会改的可以群里沟通,大家聊一聊。
-
关于exit_mul_1参数,如果大家注意到就会发现,exit_mul_1*atr最后就是pricerange,而这其实并不是我们想要的,所以这里可以进一步研究迭代。但是并不否认这里的确都可以自适应的玩。
-
在资金管理方面,我注意到一个问题,以往都是按照复权价格计算,但是资金却没有复权,所以这里实际上这里应该将价格除权计算,如下图所示:
由于各平台差异,回测绩效以TBQ版本为准!!!
本策略仅作学习交流使用,实盘交易盈亏投资者个人负责。
👌
End