格子衫小C 聊均线(六)双均线策略
大家好,我是 格子衫小C,上次最后给大家留了一个小问题,今天先公布答案吧。
问题:多次击穿均线策略对纳指是否也有效呢?
多次击穿均线策略试图降低“假穿越”带来的损失,但同时也延后了交易时机。
在A股里,把握住牛市才能收获最大收益,那么在纳指这种长牛,会怎样呢?
对比纳指的单均线策略(传送门点这里),我们可以发现回报率有一定提升,考虑到都是大均线,我们把第一条数据对齐来看看。
这个 3次击穿345日均线策略 和前面纳指的 379日均线策略 看起来差不多,只是因为345日均线更早买入,所以回报率才高起来。
纳指这种长牛走势,想要能取得额外收益(超过基线的收益),需要在把握住上涨的同时,还能避开一定下跌区间才行。
但为了避开下跌区间,均线大小得相对适中才行,但那样就很容易在上行趋势里由于假突破造成额外的损失。
而更大的均线,最多也就只能越来越逼近基线(什么都不操作,就和基线一样了)。
因此,我们可以得出上次问题的答案:多次击穿均线策略只能降低均线策略的灵活性,并不适合纳指这样的长牛市场。
前面我们基于多个市场的多种投资标的,研究了最简单的 SMA(Simple Moving Average,基于算术平均数的均线),并得出以下结论:
均线和价格处于同一数值区间,可以用 “穿过” 或 “在上方或下方” 的判断方法来判断。
均线适合有明显上涨和下跌的行情,不适合长期单边且小起伏的行情。
合适的均线可以吃掉大的上涨区间,避开大的下跌区间。但一种投资标的不太可能被一条均线长期完美切割(这句话有点绕口啊,意思能传达清楚就好
)。
均线不适用于突然的剧烈价格变化。譬如2020年初疫情导致的突然下跌。
均线不适用于震荡期。震荡期里,均线的收益几乎都是收窄的。
“小的均线”因为距离实际价格曲线太近,交点过多,不适合交叉算法。
“大的均线”因为滞后性严重,也不适合交叉算法。会导致该拿下的上涨没吃到,该避开的下跌也没躲过。
“大的均线”会因为滞后性,造成牛市后期有明显回撤,而这个回撤如果叠加多次,其收益差距会倍数级的放大。
在A股里,吃到牛市的价值比降低震荡期损失的收益要大得多。
多次击穿均线策略,是指连续N天都高于均线再买入,连续N天都低于均线再卖出,是一种用来降低假突破的方法,但它同时带来了更严重的滞后性,实际效果并没有明显提升。
今天我们一起来看看均线策略里最经典的 双均线策略。
双均线策略,顾名思义,就是 以2条均线相交作为信号,当小的均线向上穿过大的均线时(金叉)买入,当小的均线向下穿过大的均线时(死叉)卖出。
以我们这段时间对均线的理解来看(前面看那么多均线还是有用的吧 ),应该能很简单的得出以下结论:
小的均线本质上可以算作是实际价格曲线的平滑版,既然是平滑版,则双均线相交势必可以减少交点数量。
坏处是交点会更靠后(小的均线本来就滞后的,和大的均线交点必然在价格曲线交点以后),也就是滞后性会更严重。
从图上也能看出来。
上穿和下穿都在实际价格曲线右边。
仔细看 2017年3月那一段30日均线和实际价格曲线频繁相交的地方,30日均线确实和5日均线没啥交点,完美的避过了一段假突破。
再来看30日均线和60日均线,更明显一些。
只是这种滞后性,简直要让人开始怀疑人生了。
除了上面的2个结论外,我们还能得出一个结论:
小的均线不能太大。因为当小的均线过大时,双均线策略的滞后性就太严重了。
老规矩,直接看回测。
从2到120日,排列组合下来,一共是7021种(119 x 118 / 2)。
这里插一句,一个参数100多个取值,看似不多,但如果是2个同类参数的排列组合,取值都是100多个的话,最后就是指数级的差别了(120比7000)。
如果1次运算耗时1秒,遍历一个参数时只需要一百多秒,但遍历两个参数时就要7000多秒了,这可是差不多2小时啊。
以下数据来源于 jqdata ,code 为 000300.XSHG 。
为了和前面的研究对齐,如无特别说明,时间区间为 2013-05-01 到 2020-09-30。
结果并没有特别好,和单均线差别并不大(还记得单均线的结果么?传送门点这里)。
排前面的几段里,数据最好的是 5日 和 57日、20日 和 24日、28日 和 63日,后面看起来有特点一些的是 8日 和 60日、2日 和 116日。
下面分别和相对的单均线来对比(按道理双均线策略应该比大的单均线策略后操作,对比看更清楚)。
沪深300指数 5日 和 57日双均线策略、57日、42日均线策略回报率
这是 5日 和 57日 均线(红)、57日均线(浅红)、42日均线(浅蓝)。
按道理,2015年牛市结束后,57日均线应该在42日均线右边卖出,但情况却是 5日 和 57日均线回撤最小。
沪深300指数 5日 和 57日双均线策略、57日、42日均线策略回报率
放大后可以看到,双均线策略 5日 和 57日,在前面牛市以前那段震荡期里,只有很小的回撤,起点更高,在牛市里收益自然比 57日单均线策略 高。然后单均线策略更敏感,在1月19号多做了一次操作,避开了一小段下跌,但影响不大,最终2个策略在牛市都是25号卖出。
他们的差距是在牛市以前震荡期里产生,再经过牛市2倍多涨幅放大后才形成的。
42日均线 和 57日均线差不多,在牛市回撤里提前几天卖出,只是卖出后的那几天只有小波动,没有大幅下跌(先有个小幅上涨,然后再下跌),所以最后回撤看起来和57日一致了。
感觉双均线策略还是靠运气多点。
沪深300指数 20日 和 24日双均线策略、24日均线策略回报率
这是 20日 和 24日双均线 和 24日均线。
前面我们有过结论:小的均线不能太大,如果小的均线太大,策略的滞后性就太严重了。
上图也能看出,双均线策略上有很多小尖(就是跌下去马上涨回来的那种),这看起来很像是运气了,哪能这么多次都刚好赶上呢(一定是过拟合)。
沪深300指数 8日 和 60日双均线策略、60日均线策略回报率
这是 8 和 60日双均线,还是对比 60日 均线来看。
2015年牛市第一次回撤,双均线要更深一些,合理,但第二次回撤里双均线反超了。
沪深300指数 8日 和 60日双均线策略、60日均线策略回报率
放大可以发现,单均线过于灵活,导致中间有次上涨没吃到。
在后面撤出时,均线策略 早卖出,又是因为运气不好,卖在了低点,而双均线策略晚一天卖出,反而吃到一个上涨。
这明显也是过拟合。
沪深300指数 2日 和 116日双均线策略、116日均线策略回报率
这是 2 和 116日双均线策略 和 116日均线策略。
双均线和单均线几乎就只在2015年牛市回撤有差异,后面几乎一样(2日均线平滑幅度最小,差异不大,也合理)。
沪深300指数 2日 和 116日双均线策略、116日均线策略回报率
在2015年6月30日有一次上涨线过长,更敏感的单均线策略 在29日卖出,接着30日又买入,完美的错过了这次上涨,反而叠加了这次上涨以后的大幅下跌,因此收益率更低了。
这也纯粹是运气不好,过拟合......
我们花了大量的时间结合不同市场的不同投资标的来观察各种均线,就是为了能够更加深入的了解其特性。
在均线的各种优化策略里,也会研究其原理,甚至推演其可能的表现,这也都是为了知其然,并知其所以然。
回测结果好,并不代表策略有效。
我们需要能知道这个策略到底在解决什么问题,回测以后,是否真的解决了问题,如果只是运气好过拟合,则策略是无意义的。
只有当我们对各种指标了若指掌,当我们发现机会时,才能敏锐的知道该拿怎样的指标如何来应对,这样才能先声夺人快人一步。
按照惯例,我们还是拉长数据,看双均线策略在15年里的表现如何。
可以看到即便是放大到15年,双均线依然没法超过均线,这就是双均线的原理导致的:
双均线在降低假突破出现概率的同时,加重了其滞后性,而在A股里,把握住牛市获得的收益更大。(这话怎么这么熟悉呢,好像和上次研究的多次击穿均线策略差不多啊,有办法解决这个悖论么?)
沪深300指数 2日 和 116日双均线策略、116日均线策略回报率
至于2 和 116日双均线策略反超了 5 和57日双均线,一个原因是116日均线回报本来就比 5 和 57日双均线策略高,其次就是 2日和116日双均线策略,属于过拟合,在2015年牛市回撤里,因为运气好,高出了116日均线那么一段。
这个结果也是意料之中,双均线在震荡期表现会更好一些,但会在牛市里拿到更多的回撤。
今天的结论如下:
双均线策略同样也能优化震荡区表现,用类似平滑价格曲线的方式实现。
双均线策略滞后性更严重。
在沪深300指数上,双均线策略相对单均线策略,没有明显提升。
最后,还是留个问题:双均线策略对纳指有效果么?
如果您错过了前面的文章,可以关注我们,查看历史文章。
希望您能一如既往的支持我们,也欢迎各种疑难杂症各种勾搭。
均线系列:
均线 (一):基于沪深300指数初步分析 SMA 。
均线 (二):就 SMA 时间粒度做进一步分析。
均线 (三):简单的单一均线在A股市场都能有用处,让我们看看在成熟市场会有怎样的效果呢?
均线 (四):单一均线不适合成熟市场,我们再回头看看A股其它行业指数。
均线 (五):传说中比均线效果更好的多次击穿均线策略,究竟表现如何呢?
注:
题图来源于 pexels,感谢 Olya Kobrusev。
本文数据来源于 jqdata,感谢 jqdata 提供免费的高品质数据。
本文公式编辑采用 latexlive,感谢 latexlive 提供的公式编辑服务。

Ho---
校验提示文案
ksaicolor
校验提示文案
最爱回锅肉
校验提示文案
光芒万丈咚咚锵
校验提示文案
ksaicolor
校验提示文案
光芒万丈咚咚锵
校验提示文案
Ho---
校验提示文案
最爱回锅肉
校验提示文案