本文旨在说明任何一款指标,都处于辅助地位,不可单独作为交易依据,不黑,不吹. 1 算法 MACD可谓是最常用的一种指标,没有之一。仅从它的名字就能看出,它是将移动平均线再次进行平滑处理的一种指标。所以MACD它与均线的特性基本相同,那么MACD就已变成了趋势指标,而不是摆动指标。有些软件把它归为摆动指标,可能是因为它一直处于副图的位置上。 同样,想要用好一款指标,必须了解它的运算逻辑。它的公式为: DIFF : EMA(CLOSE,SHORT) - EMA(CLOSE,LONG); DEA : EMA(DIFF,M); 2*(DIFF-DEA),COLORSTICK; 翻译过来为: DIFF线:short天收盘价的指数平均值与long天收盘价的指数平均值的差 DEA线:M天的DIFF值的指数移动平均值 DIFF值与DEA值的差,乘以2,画成柱线图 默认设置 Short为12天,Long为26天,M为9天。 MACD的参数设置与其他指标略有不同,它不是2、5、8,或是3、6、9,或是整数,或是菲波纳契数列,12,26,9,是什么意思呢?原来这需要追溯金融市场的历史。开始,股市或期市一周要开盘6天,所以两周就是12天。一个月大约有4.5周,所以一个月的交易日即为26。虽然后来改为双休日,一周只有5天了,也按约定俗成的继续下去了,没有特别的改动。混沌交易的作者将(12,26,9)的参数修改为(5,34,5),不过这只是按他的系统的需要。 DIFF线,为12天的收盘价指数平均线与26天收盘价指数平均线的差。其实就是短期均线和长期均线的差。如果结果为正数,说明12天内平均价格相较于26天的平均价格是上涨的。相反,如果结果为负数,说明短期内是下跌的。 如果我们将12天的指数平均线与26天的指数平均线放到主图中,会发现当二线死叉时,DIFF线为负,当二线金叉时,DIFF线为正。两者是同步的,因为它们是同一种东西。只不过两根指数平均线是用两根线来表示而DIFF一根线来表示,更加方便。 DEA线再将DIFF线进行平滑处理,使之更加平滑。到这一步你就会明白,为什么MACD的名字叫作指数平滑移动平均线了,是因为它把两根移动平均线相减后,再进行一次指数平滑处理。 最后一句公式,是将DIFF线与DEA线相差后再乘以2,它是为了让我们更加直观的看到DIFF线与DEA线的运行轨迹。如果两者之差为正,那么在零轴上方出现红色柱线,反之则为绿色柱线。 2:零轴 MACD作为一款趋势性指标,不同于摆动指标的特点之一就是没有上下边界,但它有零轴,而零轴与正是多空分水岭。 由于DIFF线就是12日指数平均线与26日指数平均线的差,所以当EMA(12)与EMA(26)形成金叉时,DIFF线由零轴之下上穿到零轴之上。当EMA(12)与EMA(26)形成死叉时,DIFF线由零轴之上下穿到零轴之下。 而在使用均线寻找交易信号的方法中,双均线金叉死叉最为常用。所以可以当DIFF线上穿零轴平空建多,当DIFF线下穿零轴时平多建空。 为了看起来直观,我将指标中DEA线与柱线全部删掉,只留下DIFF线。如图为沪铜1704合约2016年8月22日至2017年2月25日走势图。当MACD上穿零轴后,6个月间DIFF都未下穿零轴,也可以说,这6个月,它一直处于上涨趋势中。若以DIFF上穿零轴那天的收盘价38000买进,至今已上涨至48050元,浮盈10050点,每点5元,每手沪铜多单已经赚5万元了。 由此可见DIFF线一旦选择某一方向后,轻易不会发生改。这和趋势具有趋势性是一个道理,也可以看出MACD本质就是一款趋势性指标。既然它是由均线演化而来,那么它不但具有均线的优点,也同样具有均线的缺点,滞后性。由于滞后,若遇到震荡市,它必然会在零轴上下反复震荡,让趋势交易者无所适从。 图为白糖1705合约2016年12月1日至2017年2月24日走势图,当DIFF线下叉零轴时,6748建空,上叉零轴6880平空,亏损132点。再次6880建多,DIFF线再次下叉零轴6840平多,亏损40点。 连连亏损,原因何在?只因MACD为趋势性指标,而我们把它用在震荡市了。震荡指标在单边市中无用,趋势指标在震荡市中无用。这又回到了我们在讲KD指标时说的问题,你必须先判断目前是震荡市还是单边市,才能根据具体情况选用哪类指标。 可这是政治正确的废话,如果我能判断单边市还是震荡市,那我也用不到着什么指标了。所以我们必须找到另一种解法,或者说是另一种解释。 譬如我们按震荡市选用KD指标,高抛低吸,赚的不亦乐乎。突然,接连两次失利,此时可能已转为单边市了。同样,我们按单边市选用MACD指标,跟了一波大趋势后,陷入了一两次的亏损中,那么单边市有可能转为震荡市了。 这虽然是一种办法,但如果运气极差,也可能全都踩错了拍了,震荡市亏两笔,认为单边市来了,单边市就在你亏损两笔的时间里结束了,继续进入震荡市。再按震荡市做,可能震荡结束,单边又来了,这不是没有可能。所以这种根据交易起来是否顺手来判断现在是震荡市还是单边市,只能当成是辅助判断手段。 谁都不能提前判断,那么我们只能看准一条路,朝前跑。虽然说,市场中有70%的时间都在震荡,但这种震荡也是包含在大趋势中的震荡。以幅度来说,曲线拉直了,未必赶得上直线。所以震荡时间虽长,但赚的钱少,而单边时间虽短,但赚的钱多。 我们宁可抱定时时有趋势的想法,按照趋势来交易。也不能抱着永远都在震荡的态度,按震荡交易。趋势一来,不论上涨下跌,都是极凌厉极强悍的,按震荡去做,一个止损可能就是你做两三笔震荡赚来的钱。而一次趋势所带来的利润,可能涵盖八次十次的止损。从长远来看,按照趋势来做,必定是有钱可赚的。 我们做一个回测,不改变MACD的任何参数,如果DIFF上穿零轴,便建多平空。下穿零轴,则建空平多。以铁矿指数为样本,2013年10月上市起到目前2017年2月27日止,共3.3年。如表 表 铁矿指数DIFF线回测数据
再来看聚丙烯指数为样本的回测,从上市2014年3月起,到目前2017年2月止,共3年。 表 聚丙烯指数DIFF线回测数据
这两个品种的回测数据都不错,每年至少有1倍以上的利润。最难得的是,盈亏比非常高。作为一款趋势指标,达到40%的准确率已经相当不错了。 但是这样的做法的特点是永远在市,平了多单就建空单,平了空单就建多单,会出现很多无意义的亏损,能不能把某些无意义的亏损降低呢?
3 交叉 MACD有两根线,其中DIFF线和零轴共同揭示了长短两根均线的状态,金叉或死叉。DEA线是对DIFF线的平滑再处理。 如果DIFF线在零轴之上,说明长短两根均线出现了金叉,据此判断,价格目前呈上涨趋势。但在零轴之上,DIFF线下叉DEA线又是什么意思呢?说明虽然长短两根均线还是多头状态,但其势头已经大不如前了。价格走势极有可能出现反转,或者上涨趋势中的大幅回调。 反过来,如果DIFF线在零轴之下,说明长短两根均线为死叉,价格呈下跌趋势。此时DIFF线上叉DEA线,那么下跌的势头已经减缓,可能出反转或大幅反弹。 由此我们可以将上一小节中的交易方法,略作修改。 当DIFF上穿零轴时,或DIFF线在零轴之上与DEA线形成金叉时,建立多单。 当DIFF下穿零轴时,或DIFF线在零轴之上与DEA线形成死叉时,多单平仓。 当DIFF下穿零轴时,或DIFF线在零轴之下与DEA线形成死叉时,建立空单。 当DIFF上穿零轴时,或DIFF线在零轴之下与DEA线形成金叉时,空单平仓。 在MACD指标中,我们可以看到三组数据,分别是DIFF值,DEA值,和DIFF与DEA差值的2倍值。如果上述文字描述的方法你理解起来有困难,我可以提供一个简明的判断方法。 当DIFF值与差值都为正数时,建立多单。 当DIFF值为正,差值为负时,多单平仓 当DIFF值与差值都为负数时,建立空单。 当DIFF值为负,差值为正时,空单平仓。 修改了方法后,我们重新做一次铁矿指数与聚丙烯指数的回测,如表,和表。 表 铁矿指数按MACD指标交易数据回测
表 聚丙烯指数按MACD指标交易数据回测
再与之前只与DIFF穿越零轴的回测数据对比,发现加入了与DEA线的金叉死叉后,效果并不比单独使用DIFF线更好。因为DIFF线本身已是趋势性指标,它的本意是长短两根均线多空排列状态,既然已是均线类指标,它本身就存在着滞后性。再对滞后性指标再一次进行平滑处理,那只能是在滞后性之后,又出现了滞后性。双重滞后,效果必然大不如前。 那么我们能不能只用金叉和死叉来指导交易呢?从而放弃了DIFF是否穿越零线的情况。我们只好再重新建立一个交易系统。 当DIFF线与DEA线形成金叉时,建立多单,空单平仓。 当DIFF线与DEA线形成死叉时,建立空单,多单平仓。 重新做回测,如表和表。 表 铁矿指数按MACD指标交易数据回测
表 聚丙烯指数按MACD指标交易数据回测
从回测数据的对比来看,如果加入DEA线,反倒不如只用DIFF线。而DIFF线是长短两条均线的状态简化描述。也就是我们可以在主图上设置12日指数均线和26日指数均线后,只看它们的排列形态,是多头排列就做多,是空头排列就做空。然后把MACD指标彻底的从副图删掉。仅就这六次回测来看,MACD不但起不了任何作用,反而越帮越忙。 |
|