MACD、KDJ、DMA等常用技术指标的python实现

目录

  • MACD指标
      • 简介
      • 计算方法
      • 指标含义
      • python代码实现
  • KDJ指标
    • 简介
    • 计算方法
    • 指标含义
    • python代码实现
  • DMA指标
    • 简介
    • 计算方法
    • 指标原理
    • python代码实现
  • Bias指标
    • 简介
    • 计算方法
    • python代码
  • Boll指标
    • 简介
    • 计算方法
    • 指标原理
    • python代码
  • RSI指标
    • 简介
    • 计算方法
    • 指标原理
    • python代码
  • WR威廉指标
    • 简介
    • 计算方法
    • 指标原理
    • python代码实现

MACD指标

简介

MACD又称为异同移动平均线,用来度量不同频率移动平均线的变化情况。MACD指标主要包括3根线,分别为DIF、DEA和MACD。

计算方法

12 日 E M A : E M A ( 12 ) = 2 12 + 1 今 日 收 盘 价 ( 12 ) + 11 12 + 1 昨 日 E M A ( 12 ) 12日EMA:EMA(12) = frac{2}{12+1} * 今日收盘价(12) + frac{11}{12+1} * 昨日EMA(12) 12EMA:EMA(12)=12+12/span>/span>(12)+12+111/span>/span>EMA(12)
26 日 E M A : E M A ( 26 ) = 2 26 + 1 今 日 收 盘 价 ( 26 ) + 25 26 + 1 昨 日 E M A ( 26 ) 26日EMA:EMA(26) = frac{2}{26+1} * 今日收盘价(26) + frac{25}{26+1} * 昨日EMA(26) 26EMA:EMA(26)=26+12/span>/span>(26)+26+125/span>/span>EMA(26)
D I F F : D I F F = E M A ( 12 ) E M A ( 26 ) DIFF:DIFF=EMA(12) – EMA(26) DIFFDIFF=EMA(12)/span>EMA(26)
D E A : D E A = 2 9 + 1 今 日 D I F F + 8 9 + 1 昨 日 D E A DEA: DEA = frac{2}{9+1} * 今日DIFF + frac{8}{9+1} * 昨日DEA DEA:DEA=9+12/span>/span>DIFF+9+18/span>/span>DEA
M A C D : M A C D = 2 ( D I F F D E A ) MACD:MACD = 2 * (DIFF-DEA ) MACDMACD=2/span>(DIFF/span>DEA)

指标含义

DIFF表示长周期均线和短周期均线的差值,DIFF > 0则表示短周期均线处于长周期均线上方,DIFF < 0则表示短周期均线处于长周期均线下方。DEA是DIFF的简单移动平均线,MACD是移动平均线和移动平均线的移动平均线的差值。

在应用过程中,常用其中的MACD指标或其中多个组合进行判断。

同时使用DIFF和DEA进行判断

当DIFF>0时,说明短周期均线处于长周期均线上方,近期价格呈现上涨趋势;当DEA>0时,说明短周期均线在近几期一直处于长周期均线的上方。如果DIFF上穿DEA,表示DIFF近期也处于上涨趋势,这两者叠加,说明该标的近期价格已经处于一个很高的价位。

若单独使用MACD指标

和同时使用DIFF和DEA相差不大,MACD是将DIFF和DEA差值以数值的形式表现出来。MACD有绿柱和红柱,柱体越长,说明近期价格上涨或下跌的程度越强,可以视作上涨或下跌力量的强弱。

python代码实现

在python中可以利用第三方库talib计算MACD指标,但发现怎么都无法和通达信等行情软件对上,所以自己按照原理写了一个。

这里用到pandas库里面特别好用的两个函数:rolling/expanding和ewm,前者是滚动窗口,后者是求加权平均。rolling(N)可以实现每N个求一次平均,expanding(N)可以实现从N个窗口开始,求逐渐扩大窗口的平均。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月6日
下一篇 2021年1月6日

相关推荐