上次,我们简单地用backtrader和最简单的买入卖出策略进行了一次量化投资分析:
这一次,让我们把策略变得复杂一点,使用MACD策略的信号线交叉交易法:
本系列教程源代码Github仓库:https://github.com/Ckend/pythondict-quant
1.原理
为了解释MACD的原理,我们需要先了解指数移动平均线(下称EMA), 指数移动平均线是移动平均线的一种,能够根据数据点的新旧程度分配不同的权重,其更重视近期价格,减轻对往期价格的权重 ,而普通的移动平均线在所有价格上权重都一致,这是二者最大的不同。
EMA线还有周期上的不同,长期投资者通常选择50、100、200周期来追踪数月、甚至是年的价格趋势。而12天和26天的时间周期短,则广受短期投资者欢迎。而大部分股票软件的MACD线也是按照12天EMA和26天EMA进行计算的。
好了,接下来开始从上图讲起,上图可以看出两个基本规律:
蓝线上穿信号线(橙色)的时候看涨。
蓝线下穿信号线(橙色)的时候看跌。
蓝线是什么呢?是MACD线,它通过将一个价格短期EMA和价格长期EMA相减得到,在大部分股票软件中是EMA(12) - EMA(26).
信号线是什么呢?它其实是MACD线的EMA,周期一般为9.
而图中那些一个个的方块,则是由MACD线 - 信号线得到的差值