指标简介
DMI指标又叫动向指标或趋向指标,其全称叫“Directional Movement Index,简称DMI”,
也是由美国技术分析大师威尔斯·威尔德(Wells Wilder)所创造的,是一种中长期股市技术分析(Technical Analysis)方法。
DMI指标是通过分析股票价格在涨跌过程中买卖双方力量均衡点的变化情况,
即多空双方的力量的变化受价格波动的影响而发生由均衡到失衡的循环过程,从而提供对趋势判断依据的一种技术指标。
最近有不少量化圈的朋友咨询我,在发明者量化交易平台上如何使用DMI指标。开始以为是很简单的问题,顺手就打开了API 文档查找这个指标函数。发现万能的 talib 指标库中没有这个指标。赶忙百度、知乎…一顿操作猛如虎后,找到了一些指标的资料。
发现这个指标是由四个指标组合而成,算法不是很复杂,干脆动手按照资料上的算法写一下。
范例地址: https://www.fmz.com/strategy/154050
// 指标函数function ADX(MDI, PDI, adx_period) { if(typeof(MDI) == \"undefined\" || typeof(PDI) == \"undefined\"){ return false } if(MDI.length < 10 || PDI.length < 10){ return false } /* DX = abs(DIPlus-DIMinus) / (DIPlus+DIMinus)*100 ADX = sma(DX, len) */ var dx = [] for(var i = 0; i < MDI.length; i++){ if(!MDI[i] || !PDI[i]){ continue } var dxValue = Math.abs((PDI[i] - MDI[i])) / (PDI[i] + MDI[i]) * 100 var obj = { Close : dxValue, } dx.push(obj) } if(dx.length < adx_period){ return false } var adx = talib.SMA(dx, adx_period) return adx} function DMI(records, pdi_period, mdi_period, adxr_period, adx_period) { var recordsHLC = [] for(var i = 0; i < records.length ; i++){ var bar = { High : records[i].High, Low : records[i].Low, Close : records[i].Close, } recordsHLC.push(bar) } var m_di = talib.MINUS_DI(recordsHLC, mdi_period) var p_di = talib.PLUS_DI(recordsHLC, pdi_period) var adx = ADX(m_di, p_di, adx_period) // ADXR=(当日的ADX+前n日的ADX)÷2 var n = 0 var adxr = [] for (var j = 0 ; j < adx.length; j++) { if (typeof(adx[j]) == \"number\") { n++ } if (n >= adxr_period) { var currAdxr = (adx[j] + adx[j - adxr_period]) / 2 adxr.push(currAdxr) } else { adxr.push(NaN) } } return [m_di, p_di, adx, adxr]}



![]()
对比了几根Kbar上的指标值,数值基本一致(略微四舍五入的偏差)。
DMI指标中 这四条线,其中DI-,DI+ 是多空指标,体现了多空双方的力量。
ADX和ADXR是一对一起使用的指标线,是趋向指标,体现了目前行情的趋势和方向。
DI+ ,指标数值越高,显示当前市场多头越强,反之多头越弱。
DI- ,指标相反。
DI+,DI-往往是交织在一起,之间数值越近代表市场处于盘整僵局中。反之说明趋势型增强。
经过长期下跌,若短期满足以下条件,说明短期底部已经探明,可能出现超跌反弹或反转。
2、探顶
经过长期上涨,若短期满足以下条件,说明短期顶部已经探明,可能出现短期调整或反转。
3、起势
走势经过一段时间的波动,DMI四条指标线在低位相互缠绕,之后忽然出现涨幅超5%的放量长阳k线,
DI+线在两日内连续上穿DI-线、ADX线与ADXR线,代表新的上升趋势将要形成。DI+线上穿最后一根指标线即可买入。
买好币上币库:https://www.kucoin.com/r/1f7w3