最近从经典技术指标开始学习量化策略,有些在talib中有打包好的函数,但我还是希望自己在编的过程中学习策略的思想、进一步改进基础策略。今天学习了移动平滑异同平均线(Moving Average Convergence Divergence,简称MACD指标)策略。MACD是查拉尔·阿佩尔(Geral Appel)于1979年提出的,由一快及一慢指数移动平均(EMA)(可以参考指数平滑均线文档)之间的差计算出来。“快”指短时期的EMA,而“慢”则指长时期的EMA,最常用的是12及26日EMA。
1. MACD原理
MACD指标是运用快速(短期)和慢速(长期)移动平均线及其聚合与分离的征兆,加以双重平滑运算,是一种趋向类指标。而根据移动平均线原理发展出来的MACD,一则去除了移动平均线频繁发出假信号的缺陷,二则保留了移动平均线的效果,因此,MACD指标具有均线趋势性、稳重性、安定性等特点,是用来研判买卖股票的时机,预测股票价格涨跌的技术分析指标 。
MACD指标主要是通过EMA、DIF和DEA(或叫MACD、DEM)这三值之间关系的研判,DIF和DEA连接起来的移动平均线的研判以及DIF减去 DEM值而绘制成的柱状图(BAR)的研判等来分析判断行情,预测股价中短期趋势的主要的股市技术分析指标。其中,DIF是核心,DEA是辅助。DIF是快速平滑移动平均线(EMA1)和慢速平滑移动平均线(EMA2)的差。BAR柱状图在股市技术软件上是用红柱和绿柱的收缩来研判行情。
2. MACD计算方法
EMA计算方法请参考指数平滑均线文档,这里的平滑系数参数以12日,26日,9日参数为例。参数大家可以进行修改。
12日EMA的计算:EMA12 = 前一日EMA12 X 11/13 + 今日收盘 X 2/13
26日EMA的计算:EMA26 = 前一日EMA26 X 25/27 + 今日收盘 X 2/27
差离值(DIF)的计算: DIF = EMA12 - EMA26 。
根据差离值计算其9日的EMA,即离差平均值,是所求的DEA值。今日DEA = (前一日DEA X 8/10 + 今日DIF X 2/10)
DIF与它自己的移动平均之间差距的大小BAR=(DIF-DEA)*2,即为MACD柱状图。
买卖原则为:
DIF、DEA均为正,DIF向上突破DEA,买入信号参考。
DIF、DEA均为负,DIF向下突破DEA,卖出信号参考。
3. MACD策略回测
投资域:沪深300股票
回测时间段 :2012年1月1日至2015年10月9日
回测频率 :按日回测
回测资金:50万
手续费:每笔交易时的手续费是, 买入时万分之八,卖出时千分之1.3, 每笔交易最低扣5块钱。
回测结果如下表
4. 简单分析
回测了24只沪深300股票,其中11只收益率超过基准收益率,但是回撤还是有些大。MACD买入卖出信号还可以通过分析红绿柱子实现,比如柱状线由红变绿(正变负),卖出信号参考;由绿变变红,买入信号参考。下一步准备将传统的MACD和KDJ两个指标融合成一个指标,当两指标同时发出买入或卖出信号,即指标曲线出现“金叉共振”为加强型买入信号,后势上涨概率较大。反之,两指标同时发出卖出信号为加强型卖出信号。