type
status
date
slug
summary
AI summary
AI translation
tags
category
password
icon
💡
OKX欧易开户即可获得:现货合约永久返佣10%,手续费8折,永久获得青猫会员高级指标使用特权,高级交易系统免费内测,会员技术指标定义开发等专属服务。
💡
欧易交易所blackcat1402邀请注册(国内,无需魔法)链接:
💡
欧易交易所blackcat1402邀请注册(国外,需要魔法)链接:
今天,本猫要给大家展示一种叫做“方向性运动指标”(Directional Movement Indicator,简称DMI)的技术分析法宝。这个指标是由技术分析大师 J. Welles Wilder 在1978年提出的。别小看它哦,它可是和相对强弱指数(RSI)及平均真实波幅(ATR)等其他著名指标一样,都是Wilder的杰作呢!
首先,DMI是由三个小伙伴组成的,它们分别是平均方向指数(ADX)、正方向指标(+DI)和负方向指标(-DI)。这三个小伙伴齐心协力,一起帮助交易者识别和衡量市场趋势的强度和方向。听起来是不是像个神奇的团队呢?
notion image
现在,让我们来聊聊这些小伙伴是怎么工作的吧。+DI 和 -DI 是通过分析市场的最高价和最低价来计算出来的。这俩家伙主要的任务就是告诉你,“嘿,市场是在往上走还是往下跌?”然后呢,ADX这个家伙就搭个台阶出场,它不关心市场是涨是跌,它只关心“这趋势稳不稳?”简单来说,ADX就像个专心致志的老司机,只关心车速是否平稳。
具体计算方法嘛,首先要找到每个周期的最高价和最低价,然后计算出上升幅度和下降幅度。如果上升幅度比下降幅度大,那就认为是正方向的移动;反之,则认为是负方向的移动。接着,我们要用一个叫做平均真实波动范围(ATR)的东西来平滑这些数据,最后再将它们乘以100,就得到了+DI和-DI了。
要计算ADX,就更有趣了。它是通过计算+DI和-DI的差值的绝对值,然后除以它们的总和,再乘以100得到的。这个值越大,就说明趋势越稳定。Wilder说,ADX超过25就表示市场有明显的趋势,低于20就意味着趋势较弱或不存在。但是呢,每个市场都有自己的特点,所以这个数值并不是一成不变的。
notion image
DMI的另一个重要用途就是产生交易信号。当+DI线和-DI线发生交叉的时候,就可能是买入或卖出的信号。但记住,这个信号的可靠性还得看ADX的值。ADX值越高,信号就越可靠。同时,设置合适的止损也是至关重要的。
虽然DMI听起来像是万能的,但实际上它也有自己的局限。Wilder最初是为了货币和商品市场设计的DMI,这些市场通常比股票市场波动性更大,趋势也更明显。所以,当我们在股票市场使用DMI时,可能需要进行一些调整。
notion image
总而言之,DMI是一个非常强大的工具,但想要真正掌握它,需要不断地学习和实践。通过结合历史分析和经验,交易者可以更好地理解和运用DMI,让它成为他们交易策略中的一部分。
这段代码是一个用于计算方向性运动指数(Directional Movement Index,简称DMI)的指标。它使用了TradingView平台上的Pine脚本语言。
首先,在第一行//@version=5中,声明了脚本所使用的版本号为5。
接下来,在indicator()函数中设置了一些参数:
  • title="Directional Movement Index":指标标题为"Directional Movement Index"。
  • shorttitle="DMI":缩写标题为"DMI"。
  • format=format.price:价格格式化方式为默认值。
  • precision=4:小数点精度为4位。
  • timeframe="":时间框架为空字符串,表示当前图表所在的时间框架。
  • timeframe_gaps=true:允许在图表上显示时间框架之间的空白区域。
然后定义了两个变量:
  • lensig = input.int(14, title="ADX Smoothing", minval=1, maxval=50):定义了一个整型输入变量lensig,默认值为14,最小值为1,最大值为50。该变量用于控制ADX平滑程度。
  • len = input.int(14, minval=1, title="DI Length"):定义了另一个整型输入变量len,默认值也是14,最小值同样是1。该变量用于控制DI长度。
接下来进行具体计算:
  • 首先通过调用ta.change()函数分别计算了上涨和下跌的价格变化,分别赋值给变量up和down。
  • 然后通过判断条件计算了plusDM和minusDM两个变量。如果up大于down且大于0,则将up赋值给plusDM;如果down大于up且大于0,则将down赋值给minusDM。否则,plusDM和minusDM都为na(不可用)。
  • 接着使用ta.rma()函数计算了trur、plus和minus三个变量:
    • trur表示真实范围(True Range),是通过调用ta.tr函数计算得到的。
    • plus表示+DI指标,是根据plusDM、len以及trur进行计算得到的。
    • minus表示-DI指标,是根据minusDM、len以及trur进行计算得到的。
最后,在图表上绘制了ADX、+DI和-DI这三条线,并设置它们的颜色。
Divergence: Unveiling the Magical Code of Price ReversalMastering Market Direction: Complete Analysis of DMI Indicator
blackcat1402
blackcat1402
This cat is an esteemed coding influencer on TradingView, commanding an audience of over 8,000 followers. This cat is proficient in developing quantitative trading algorithms across a diverse range of programming languages, a skill that has garnered widespread acclaim. Consistently, this cat shares invaluable trading strategies and coding insights. Regardless of whether you are a novice or a veteran in the field, you can derive an abundance of valuable information and inspiration from this blog.
Announcement
type
status
date
slug
summary
AI summary
AI translation
tags
category
password
icon
🎉Webhook Signal Bots for Crypto are Coming!🎉
--- Stay Tuned ---
👏From TradingView to OKX, Binance and Bybit Exchange Directly!👏