[YZ261007]新颖DMI副图-通达信指标源码分享

▸ 01 真实波幅当分母,动向指数比出谁占优
趋势强不强,MACD能看但不够直接。DMI走的是另一条路——不看价格均线,看"上升动向"和"下降动向"谁更猛,用真实波幅当分母归一化,PDI和MDI谁大谁说了算。新颖DMI在标准DMI基础上把SMA换成了EXPMEMA,加了ADX/ADXR带状区和双位置状态线,视觉上比原版丰富不少。写过DMI变体的都知道,EXPMEMA比SMA反应快半拍,趋势刚启动就能看出来。
速查卡(五秒扫完,名称 + 一句话作用):
| TR1 | PDI/MDI | ADX/ADXR | 双状态线 |
▸ 02 指标源码分享|新颖DMI

指标编号:YZ261007
指标完整源码:
N:=14;M:=6;TR1:=EXPMEMA(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(REF(CLOSE,1)-LOW)),N);HD:=HIGH-REF(HIGH,1);LD:=REF(LOW,1)-LOW;DMP:=EXPMEMA(IF(HD>0HD>LD,HD,0),N);DMM:=EXPMEMA(IF(LD>0LD>HD,LD,0),N);PDI:=DMP*100/TR;MDI:=DMM*100/TR;STICKLINE(PDI>=MDI,PDI-MDI,0,2,1),COLOR9900FF;STICKLINE(PDI<MDI,PDI-MDI,0,2,1),COLORF69ECE;ADX:=EXPMEMA(ABS(MDI-PDI)/(MDI+PDI)*100,M);ADXR:=EXPMEMA(ADX,M);DRAWBAND(ADX,RGB(200,0,200),ADXR,RGB(150,150,150));ADX2:EXPMEMA(ABS(MDI-PDI)/(MDI+PDI)*100,M),COLOR00EEEE,LINETHICK1;ADXR2:EXPMEMA(ADX,M),COLORFFFFFF,LINETHICK1;关注线:=50,COLORF0F000,POINTDOT;IF(ADX>=ADXR,85,DRAWNULL),COLORF580F5,LINETHICK8;IF(ADX<ADXR,85,DRAWNULL),COLORCCDD66,LINETHICK6;IF(PDI>=MDI,-55,DRAWNULL),COLOR0000EE,LINETHICK8;IF(PDI<MDI,-55,DRAWNULL),COLOR33AA33,LINETHICK6;
#新颖DMI# 跟 #动向指数##趋势强度副图# 放一起搜,找资料的时候方便。
▸ 03 EXPMEMA平滑动向,ADX带状区框住趋势强度
第一层TR1是整个指标的分母:
TR1:=EXPMEMA(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(REF(CLOSE,1)-LOW)),N)
真实波幅取三个值的最大:当天高低差、当天最高减前收、前收减当天最低。这三个值覆盖了"当天波动"和"跳空缺口"两种情况,取最大才是真正的波动范围。N设成十四,跟标准DMI一致。关键是这里用EXPMEMA而不是SMA——EXPMEMA是指数平滑,近期数据权重更大,反应比SMA快。十四日EXPMEMA大约等于九日SMA的灵敏度,但保留了十四日的周期框架,趋势刚拐头就能跟上。
第二层DMP和DMM在算上升和下降动向:
DMP:=EXPMEMA(IF(HD>0&&HD>LD,HD,0),N)
DMM:=EXPMEMA(IF(LD>0&&LD>HD,LD,0),N)
HD是当天最高减前高,LD是前低减当天最低。如果HD大于零且HD大于LD,说明上升动向更强,取HD;否则取零。DMM反过来。这个设计很巧妙——只取"更强的那个方向",弱的方向直接归零,避免两个方向同时有值导致混淆。EXPMEMA十四日平滑后,DMP和DMM就是近期上升/下降动向的平均强度。
第三层PDI和MDI把动向归一化:
PDI:=DMP*100/TR1
MDI:=DMM*100/TR1
动向除以真实波幅乘一百,拿到百分比。PDI大于MDI说明上升动向占优,反过来下降动向占优。柱状图直接画PDI减MDI的差值——大于零紫柱,小于零粉柱。这个差值比单独看两条线更直观,正负一眼就知道谁占优,柱的长短告诉你优势有多大。
第四层ADX衡量趋势强度:
ADX:=EXPMEMA(ABS(MDI-PDI)/(MDI+PDI)*100,M)
MDI和PDI的差除以和,乘一百。如果PDI和MDI差距大,ADX就高,说明趋势明确;如果两条线缠在一起,ADX就低,说明震荡。M设成六,比N的十四短——ADX需要更快的反应来捕捉趋势强度的变化。ADXR是ADX的六日EXPMEMA,更慢一层。DRAWBAND把ADX和ADXR之间填成带状区,颜色从紫到灰,视觉上趋势强度的变化像一条宽窄变化的河。
双状态线是这指标最有特色的设计。顶部八十五位置,ADX大于等于ADXR时画粉粗线,小于时画绿粗线;底部负五十五位置,PDI大于等于MDI时画蓝粗线,小于时画绿粗线。两条线一上一下,颜色直接告诉你当前"趋势强不强"和"方向往哪走",不用去看ADX具体数值是多少。八十五和负五十五这两个位置选得讲究——离中间五十足够远,不会跟ADX/ADXR线重叠,又在副图可见范围内,扫一眼就看到。
