哇终于搞定DMI指标中一个困惑已久的问题!!!
N:=14;
MM:=4;{可以自行修改,通达信里面的是6}
MTR:=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>0&&HD>LD,HD,0),N);
DMM:=EXPMEMA(IF(LD>0&&LD>HD,LD,0),N);
PDI: DMP*100/MTR,LINETHICK1,COLORWHITE;
MDI: DMM*100/MTR,LINETHICK1,COLORYELLOW;
IF(PDI>=MDI, PDI,DRAWNULL),LINETHICK2,COLORRED;
ADX:= EXPMEMA(ABS(MDI-PDI)/(MDI+PDI)*100,MM),COLORMAGENTA, ;
ADXX:= EXPMEMA( (MDI-PDI)/(MDI+PDI)*100,MM),COLORMAGENTA, ;
ADXXX:REVERSE(ADXX),COLORMAGENTA, ;
ADXR:=EXPMEMA(ADX,MM),COLORGREEN,DOTLINE;
ADXRR:=EXPMEMA(ADXX,MM),COLORGREEN,DOTLINE;
ADXRRR:REVERSE(ADXRR),COLORGREEN, ;
DRAWBAND(REVERSE(ADXX),RGB(250,150,0),REVERSE(ADXRR),RGB(0,150,250));
来函数检测结果如下:
该公式没有未来函数
解密、编写股票、期货策略请联系QQ或微信同号:88652583
相关股票指标公式
原理解析:
N赋值:14
MM赋值:4
{可以自行修改,通达信里面的是6}
MTR赋值:EXPMEMA(MAX(MAX(最高价-最低价,最高价-1日前的收盘价的绝对值),ABS(1日前的收盘价-最低价)),N)
HD :=最高价-1日前的最高价
LD :=1日前的最低价-最低价
如果HD>0&&HD>LD返回HD否则返回0
如果LD>0&&LD>HD返回LD否则返回0
输出
PDI: DMP*100/MTR,LINETHICK1,画白色
输出
MDI: DMM*100/MTR,LINETHICK1,画黄色
如果PDI>=MDI返回 PDI否则返回DRAWNULL
ADX赋值: EXPMEMA(MDI-PDI的绝对值/(MDI+PDI)*100,MM),COLORMAGENTA,
ADXX赋值: EXPMEMA( (MDI-PDI)/(MDI+PDI)*100,MM),COLORMAGENTA,
ADXXX:ADXX的相反数,COLORMAGENTA,
ADXR:=EXPADX的MM日平滑移动平均,COLORGREEN,DOTLINE
ADXRR赋值:EXPADXX的MM日平滑移动平均,COLORGREEN,DOTLINE
ADXRRR:ADXRR的相反数,COLORGREEN,
DRAWBAND(ADXX的相反数,RGB(250,150,0),REVERSE(ADXRR),RGB(0,150,250))