FMZ量化交易DMI 指标的计算与应用
admin
2023-07-31 14:23:24
0

目前不清退的交易所推荐:

1、全球第二大交易所OKX欧意

国区邀请链接: https://www.myts3cards.com/cn/join/1837888   币种多,交易量大!

国际邀请链接:https://www.okx.com/join/1837888 注册简单,交易不需要实名,新用户能开合约,币种多,交易量大!

2、老牌交易所比特儿现改名叫芝麻开门 :https://www.gate.win/signup/649183

全球最大交易所币安,国区邀请链接:https://accounts.binance.com/zh-CN/register?ref=16003031  币安注册不了IP地址用香港,居住地选香港,认证照旧,邮箱推荐如gmail、outlook。支持币种多,交易安全!

买好币上KuCoin:https://www.kucoin.com/r/af/1f7w3  CoinMarketCap前五的交易所,注册友好操简单快捷!

FMZ量化交易平台邀请链接:https://www.fmz.com/

DMI 指标的计算与应用

指标简介

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]}
  • 对比用发明者量化的画线类库,很轻松的画出图表,可以对比下其他图表上的DMI

    1784d6d43cbdf21691f21784d6d43cbdf21691f2

    1714db31a1ac8b47e27d1714db31a1ac8b47e27d

    对比了几根Kbar上的指标值,数值基本一致(略微四舍五入的偏差)。

  • 使用直接使用 DMI 这个函数(例如范例中 main 函数中调用的方式),传入K线数据,设置指标参数,一般都是14。
    函数返回的数据是一个二维数组,分别代表四条线。

    • DI- : m_di,
    • DI+ : p_di,
    • ADX : adx,
    • ADXR: adxr,

    DMI指标中 这四条线,其中DI-,DI+ 是多空指标,体现了多空双方的力量。
    ADX和ADXR是一对一起使用的指标线,是趋向指标,体现了目前行情的趋势和方向。

    DI+ ,指标数值越高,显示当前市场多头越强,反之多头越弱。
    DI- ,指标相反。
    DI+,DI-往往是交织在一起,之间数值越近代表市场处于盘整僵局中。反之说明趋势型增强。

    • 信号1、寻底

      经过长期下跌,若短期满足以下条件,说明短期底部已经探明,可能出现超跌反弹或反转。

      • 1、代表多头力量的DI+线在10以下,处于超跌位置向上拐头,DI—线在高位。
      • 2、代表趋势的ADX线在65以上较高的位置,向下拐头并与ADXR线形成死叉。

      2、探顶

      经过长期上涨,若短期满足以下条件,说明短期顶部已经探明,可能出现短期调整或反转。

      • 1、代表空头力量的DI—线在10以下,处于低位并向上拐头,DI+线在高位。
      • 2、代表趋势的ADX线在65以上较高的位置,向下拐头并与ADXR线形成死叉。

      3、起势

      走势经过一段时间的波动,DMI四条指标线在低位相互缠绕,之后忽然出现涨幅超5%的放量长阳k线,
      DI+线在两日内连续上穿DI-线、ADX线与ADXR线,代表新的上升趋势将要形成。DI+线上穿最后一根指标线即可买入。

FMZ量化交易平台邀请链接:https://www.fmz.com/

全球最大交易所币安,国区邀请链接:https://accounts.binance.com/zh-CN/register?ref=16003031  币安注册不了IP地址用香港,居住地选香港,认证照旧,邮箱推荐如gmail、outlook。支持币种多,交易安全!

买好币上KuCoin:https://www.kucoin.com/r/af/1f7w3  CoinMarketCap前五的交易所,注册友好操简单快捷!

目前不清退的交易所推荐:

1、全球第二大交易所OKX欧意,邀请链接:https://www.myts3cards.com/cn/join/1837888 注册简单,交易不需要实名,新用户能开合约,币种多,交易量大!。

2、老牌交易所比特儿现改名叫芝麻开门 :https://www.gate.win/signup/649183

买好币上币库:https://www.kucoin.com/r/1f7w3

火必所有用户现在可用了,但是要重新注册账号火币:https://www.huobi.com

全球最大交易所币安,

国区邀请链接:https://accounts.suitechsui.mobi/zh-CN/register?ref=16003031 支持86手机号码,网页直接注册。

相关内容

热门资讯

Windows 11 和 10... Windows 11/10 文件夹属性中缺少共享选项卡 – 已修复 1.检查共享选项卡是否可用 右键...
事件 ID 7034:如何通过... 点击进入:ChatGPT工具插件导航大全 服务控制管理器 (SCM) 负责管理系统上运行的服务的活动...
Hive OS LOLMine... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...
Radmin VPN Wind... Radmin VPN 是一款免费且用户友好的软件,旨在牢固地连接计算机以创建一个有凝聚力的虚拟专用网...
如何修复 Steam 内容文件... Steam 内容文件锁定是当您的 Steam 文件无法自行更新时出现的错误。解决此问题的最有效方法之...
Hive OS 部署 PXE ... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...
如何在Instagram上扫描... 如何在Instagram上扫描名称标签/ QR? 总而言之,您可以通过大约四种不同的方法来扫描这些I...
在 Windows 11 中打... 什么是链路状态电源管理? 您可以在系统控制面板的电源选项中看到链接状态电源管理。它是 PCI Exp...
farols1.1.501.0... faro ls 1.1.501.0(64bit)可以卸载,是一款无需连接外部PC机或笔记本计算机即可...
Hive OS 新建飞行表的方... 目前不清退的交易所推荐: 1、全球第二大交易所OKX欧意 国区邀请链接: https://www.m...