可以先在網路上找一下 或是
看看這篇文章:DMI指標:指標定義
+DI = +DM的平均 / ATR
-DI = -DM的平均 / ATR
這兩個值表示向上趨勢和向下趨勢的程度
然後利用的兩個值求出ADX
不過 剛剛用個亂搞版
直接秀圖和程式碼吧 30K線
程式碼
input:length(100),F(30),S(60);
vars:DMUP(0),DMDN(0),ADMUP(0),ADMDN(0),TR(0),ATR(0);
vars:DIUP(0),DIDN(0),Diff(0),FDiff(0),SDiff(0);
if high > high[1] then begin
DMUP=high-high[1];
end else begin
DMUP=0;
end;
if low < low[1] then begin DMDN=low[1]-low; end else begin DMDN=0; end;
TR=maxlist(high,low,close[1])-minlist(high,low,close[1]);
ADMUP=average(DMUP,length);
ADMDN=average(DMDN,length);
ATR=average(TR,length);
if ATR > 0 then begin
DIUP=ADMUP/ATR;
DIDN=ADMDN/ATR;
end;
Diff=DIUP-DIDN;
FDiff=average(Diff,F);
SDiff=average(Diff,S);
plot1(FDiff-SDiff,"Diff");
plot2(FDiff,"FDiff");
plot3(SDiff,"SDiff");
plot4(0);
說明一下
DMUP DMDN 就是 +DM 和 -DM了 那是根據定義算出來的
TR就不解釋了
然後對 +DM -DM TR 平均 length取100
是因為在30分鐘K線裡 100剛好是10天
再來是依照定義算出 +DI -DI
然後就是 亂搞的地方了
Diff = +DI剪掉-DI
然後對Diff平均 求出 FDiff(3日) SDiff(6日)
最後在畫出 Diff(紅色柱狀) FDiff(綠) SDiff(藍)
搞什麼!!這根本就是偽MACD嘛(XD)
看起來似乎 也許 有用
但實際上...恩...不知道也不保證