MA120均线是近几年比特币的牛熊分界线。站上120日线买入,跌破120日线卖出,这个策略是否真的能有效跑赢大盘?
近日关二爷用量化程序跑了近4年的btc历史数据,对MA120策略进行了回测,量化分析了这个MA120策略的实际效果,且听我一一道来。
开始分析之前,先解释下我所说的MA120策略具体怎么执行:
当价格在120日均线以上n%时,买入
当价格在120日均线以下n%时,卖出
不断循环上面步骤
n%是冗余系数,防止在120日均线附近反复触发条件,降低摩擦成本。
(在后面的回测中发现,这个冗余系数是个关键)
MA120策略回测效果及分析
15年10月是一轮周期的起点,首次突破120均线,故回测在此为起点。
初始假设持有1个btc,采用币本位盈利率作为效果衡量指标,判断是否能跑赢大盘。
1. 回测4年历史数据的效果
参数:
回测时间段:2015年10月-2019年9月
均线冗余系数:2%
效果:
发生交易38次,余币0.52个,币本位亏损:-48%
分析:
第一次跑出这个结果,我还是很吃惊的。不免开始对MA120这条牛熊分界线的作用产生怀疑,是否真的对抄底逃顶有帮助。
随后查看了交易明细,发现其损失主要发生在牛市上升的过程中,有几次深度回踩的假突破,造成了较大的摩擦成本。
摩擦成本跟一开始提到的冗余系数直接相关,随后对冗余系数进行了调优。
2. 对冗余系数在10%以内进行进行调优。
冗余系数越大,摩擦次数越少。但冗余太大又会失去抄底和逃顶的意义。
我对冗余系数在1%-10%范围内进行了调优:
冗余系数为1%时,交易次数达66次。而当为5%时,交易次数降为14次。可以看到这时效果最好。
参数:
回测时间段:2015年10月-2019年9月
均线冗余系数:5%
效果:
发生交易14次,余币1.13个,币本位盈利:13%
分析:
这次通过对冗余系数的调优虽然实现了盈利,但跑赢大盘的效果并不明显,只有13%。
查看交易明细,发现损失发生在几次的深度回踩,似乎通过冗余系数几乎无法避免。
举个例子,16年8月这次最低跌破了MA120以下15%后才反弹上来:
一度感觉到绝望。
后面索性再把冗余系数再调大,却发现了新的天地。
3. 用更大的冗余系数
这次将冗余系数放在10-20%这个区间进行调优:
当为冗余系数18%时,交易次数恰好降至最低的2次,这时效果明细达到最好。
参数:
回测时间段:2015年10月-2019年9月
均线冗余系数:18%
效果:
发生交易2次,余币1.84个,币本位盈利:84%
分析:
这次其实就发生了2笔交易,分别发生在18年2月和19年4月,有效完成了逃顶和抄底。
4年币本位盈利84%看似也没什么,但换算成现金本位可是6851%。
结论
用MA120策略的确是可以稳稳跑赢大盘,但必须减少交易次数、在120日线附近需有较大的冗余空间,按上文里的历史回测数据,冗余比例系数18%时为最优。
这么看,我觉着MA120还是更适合长线的现货操作,期货的话很难冗余这么大的波动区间。
不要小看回测数据里币数量84%的增幅。我想BTC从15年拿到现在的人,应该很少有人币数量没变少的吧。