通达信DMI指标转为WH3指标 [赢顺期货]
- 咨询内容:
通达信的DMI指标代码为:
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;
MDI: DMM*100/MTR;
ADX: EXPMEMA(ABS(MDI-PDI)/(MDI+PDI)*100,MM);
ADXR:EXPMEMA(ADX,MM);
文华WH3的代码为:
TR := SUM(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),N);
HD := HIGH-REF(HIGH,1);
LD := REF(LOW,1)-LOW;
DMP:= SUM(IFELSE(HD>0 && HD>LD,HD,0),N);
DMM:= SUM(IFELSE(LD>0 && LD>HD,LD,0),N);
PDI: DMP*100/TR;
MDI: DMM*100/TR;
ADX: MA(ABS(MDI-PDI)/(MDI+PDI)*100,M);
ADXR:(ADX+REF(ADX,M))/2;
个人感觉通达信的DMI指标比较好用,将通达信的代码复制贴到WH3中,提示第二行的逗号为非法,但第二行的代码与WH3的代码是一样的,为什么有这种提示呢,劳烦大师代为修改下,实在是做不来这个,谢谢!
- 赢顺技术人员:
文华的系统自带模型中,本来就有DMI指标,您无需修改通达信的指标。文华的DMI指标在摆动分析那一组里面,您可以找一下
如果没有的话,为您把源码贴出来如下
TR := SUM(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),N);
HD := HIGH-REF(HIGH,1);
LD := REF(LOW,1)-LOW;
DMP:= SUM(IFELSE(HD>0 && HD>LD,HD,0),N);
DMM:= SUM(IFELSE(LD>0 && LD>HD,LD,0),N);
PDI: DMP*100/TR;
MDI: DMM*100/TR;
ADX: MA(ABS(MDI-PDI)/(MDI+PDI)*100,M);
ADXR:(ADX+REF(ADX,M))/2; - 赢顺客服:
以下是引用空之境界在2012-7-9 8:10:00的发言:
文华的系统自带模型中,本来就有DMI指标,您无需修改通达信的指标。文华的DMI指标在摆动分析那一组里面,您可以找一下
如果没有的话,为您把源码贴出来如下
TR := SUM(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),N);
HD := HIGH-REF(HIGH,1);
LD := REF(LOW,1)-LOW;
DMP:= SUM(IFELSE(HD>0 && HD>LD,HD,0),N);
DMM:= SUM(IFELSE(LD>0 && LD>HD,LD,0),N);
PDI: DMP*100/TR;
MDI: DMM*100/TR;
ADX: MA(ABS(MDI-PDI)/(MDI+PDI)*100,M);
ADXR:(ADX+REF(ADX,M))/2;老师,我知道这是WH3的代码,我也知道怎么找,但它显示的数值和通达信的不一样,我感觉通达信的算法比较好一点,能帮我把通达信的代码转为WH3的吗?非常感谢
- 网友回复:
MTR:=EMA(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:=EMA(IFELSE(HD>0&&HD>LD,HD,0),N);
DMM:=EMA(IFELSE(LD>0&&LD>HD,LD,0),N);
PDI: DMP*100/MTR;
MDI: DMM*100/MTR;
ADX: EMA(ABS(MDI-PDI)/(MDI+PDI)*100,MM);
ADXR:EMA(ADX,MM);模型仅供参考
- 网友回复:
以下是引用空之境界在2012-7-9 13:18:00的发言:
MTR:=EMA(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:=EMA(IFELSE(HD>0&&HD>LD,HD,0),N);
DMM:=EMA(IFELSE(LD>0&&LD>HD,LD,0),N);
PDI: DMP*100/MTR;
MDI: DMM*100/MTR;
ADX: EMA(ABS(MDI-PDI)/(MDI+PDI)*100,MM);
ADXR:EMA(ADX,MM);模型仅供参考
我就觉得奇怪了,为什么我复制上面的内容就测试通过,复制通达信代码的就提示非法(提示第二行的逗号为非法),到底我那里弄错了?望老师指点
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 262069696 进行 有偿 编写!(不贵!点击查看价格!)
- 上一篇:分钟周期开盘的第一根K线是阳线模型编写
- 下一篇:文华中有什么语句可以达到循环
相关文章
-
指定的模型还没有相关内容!