第六节 MACD策略
MACD指标量化回测理解了EMA,再来看MACD就比较容易了。MACD是一种指数平滑移动平均线,也是目前技术派专家提及最多的指标之一。MACD的计算方法为:
(1)计算出短期(一般取12天)指数移动平均线EMA1;
(2)计算出长期(一般取26天)指数移动平均线EMA2;
(3)DIF=EMA1-EMA2;
(4)最后计算出MACD=2×(DIF-DEA)。
MACD最常用的方法:
(1)DIF、DEA均大于0,DIF向上突破DEA,买入;
(2)DIF、DEA均小于0,DIF向下突破DEA,卖出;
(3)其他情况维持昨天状态。
那么,这个向上向下突破在数学上怎么描述呢?我们可以设立向上突破条件:
当天的DIF大于DEA,N天前的DIF小于DEA,这个N不能简单取1,因为这样做会发出错误的信号。分别计算N=1到10对应的结果,如表10-8所示。

从表10-8中可以看出,在N=6和N=lO时,分别有两个不错的
年化收益率:19.13%、21.00%,而且这两个对应的20L6年的收益率亏损不到3%,年平均交易次数不到3次,都是相当不错的结果。
DEA线与K线发生背离量化回测
DEA线与K线发生背离,发出反转信号。
同样的道理,把当天的DEA和N天前的DEA做比较,把当天收盘价和N天前收盘价做比较,如果前者为正后者为负,或者前者为负后者为正,就认为发出反转信号,改变当天买卖或者持有的状态。N=1-10的结果如表10-9所示。

从表10-9可以看出,最佳值为N=1天,即将当天的数据和1天前进行比较,得到年化收益率是13.03%,超过了指数本身的11.33%。但是对应的年交易次数偏大,一年16.32次,基本每月一次多,就算每次0.1%的成本,和条件l比,年平均交易次数还是偏大,而且收益率也不如条件1。
MACD柱状线由红变绿(由绿变红)量化回测
MACD柱状线由红变绿,即正变负,发出卖出信号,反之则发出买入信号。
同样,把当天的MACD和N天前的MACD进行比较:
吁天MACD为正,N天前为负,买入;
当天MACD为负,N天前为正,卖出;
其他则维持昨天状态。
计算结果如表10-10所示。


从结果可以看出,N=l对应的年化收益率15.07%已经是最佳值了。条件3,即看MACD红绿柱似乎是个不太靠谱的条件,是否和沪深300指数相关还有待研究。
下面再按照这个条件,固定N=1,变化交易成本对收益率的影响,计算结果如表10-11所示。

从0到1%的交易成本,年化收益率就从15.07%跌到-3.29%,单向0.8%的交易成本,就使得这个策略的收益率和指数相当了。看起来0.8%的交易成本并不是那么高,但在市场暴涨时踏空,暴跌时无法成交,一不小心就可能超过0.8%这还是年平均交易17次的策略。
当然,EMAI、EMA2、EMA的参数12、26、9不一定是最佳参数,另外也可以组合2-3个策略,以获得更好的结果,这里只是给出一个范例,读者可以根据模板自行修改参数,得到相应的数据后,寻找最佳参数。另外,这里为了计算方便,统一用了沪深300作为对象,不同对象对应的最佳参数可能不一样,这些都是需要注意的。