logo
Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Options
Go to last post Go to first unread
DINESHBH  
#1 Posted : Friday, September 20, 2013 8:56:42 AM(UTC)
DINESHBH

Rank: Newbie

Groups: Registered, Registered Users, Subscribers
Joined: 9/19/2013(UTC)
Posts: 7

Dear Friends & Colleagues

I am looking without rounding Directional Movement (+DI) and Directional Movement (-DI)
In metastock custom formula section without rounding ADX available. but not available +DI and -DI.
Anyone using above formula please provide. my mail id is dineshkumarbh@gmail.com. I am planing to Develope +DI and -DI with ADX combination Trading Ribbon

Dineshkumar,BH

mstt  
#2 Posted : Friday, September 20, 2013 1:55:49 PM(UTC)
mstt

Rank: Advanced Member

Groups: Registered, Registered Users, Subscribers
Joined: 7/25/2005(UTC)
Posts: 1,042

Was thanked: 57 time(s) in 54 post(s)
Hi BH

Is this what you're looking for? It was written by William Golson I think. You can base any of the ADX-related MetaStock formulas on this one and get a result to several decimal places.

{ADX Raw} {my name for it}

{MetaStock code written by Equis}
{and published in the Oct99 TASC}
{ADX}
Periods:=Input("Enter time periods",1,100,14);
PlusDM:=If(H>Ref(H,-1) AND L>=Ref(L,-1),H-Ref(H,-1),
If(H>Ref(H,-1) AND L<Ref(L,-1)
AND H-Ref(H,-1)>Ref(L,-1)-L,H-Ref(H,-1),0));
DIPlus:=100*Wilders(PlusDM,Periods)/ATR(Periods);
MinusDM:=If(L<Ref(L,-1) AND H<=Ref(H,-1),Ref(L,-1)-L,
If(H>Ref(H,-1) AND L<Ref(L,-1)
AND H-Ref(H,-1)<Ref(L,-1)-L,Ref(L,-1)-L,0));
DIMinus:=100*Wilders(MinusDM,Periods)/ATR(Periods);
DIDif:=(Abs(DIPlus - DIMinus));
DISum:=(DIPlus + DIMinus);
100*Wilders(DIDif/DISum,Periods);

Roy
DINESHBH  
#3 Posted : Saturday, September 21, 2013 7:41:52 PM(UTC)
DINESHBH

Rank: Newbie

Groups: Registered, Registered Users, Subscribers
Joined: 9/19/2013(UTC)
Posts: 7

Thanks Mr Roy for helping. but its not what i am looking. that formula u have given working like ADX. the same formula i downloaded from metastock website, but i need +DI and -DI separate. If possible please provide sir
mstt  
#4 Posted : Saturday, September 21, 2013 10:56:29 PM(UTC)
mstt

Rank: Advanced Member

Groups: Registered, Registered Users, Subscribers
Joined: 7/25/2005(UTC)
Posts: 1,042

Was thanked: 57 time(s) in 54 post(s)

Hi BH

I'll post the code later if necessary. For now "+DI" and "-DI" are the same as the "DIPlus" and "DIMinus" variables in the indicator I posted. Just remove or comment out the existing output line {100*Wilders(DIDif/DISum,Periods);} and replace it with DIPlus; or DIMinus; as required.

Roy




DINESHBH  
#5 Posted : Monday, September 23, 2013 11:25:27 AM(UTC)
DINESHBH

Rank: Newbie

Groups: Registered, Registered Users, Subscribers
Joined: 9/19/2013(UTC)
Posts: 7

Thank you Mr Roy once again for ur reply and spending ur valuable time. I am looking Plus DM and Minus DM. formula. u have given Custom ADX. I have done according to ur guidance, but i am getting same ADX indicator only, not getting Plus DI(+DI) & Minus DI(-DI). and also i have copied only the Plus DM formula like following .
{Directional movement +DI}
Periods:=Input("Enter time periods",1,100,14);
PlusDM:=If(H>Ref(H,-1) AND L>=Ref(L,-1),H-Ref(H,-1),
If(H>Ref(H,-1) AND L<Ref(L,-1)
AND H-Ref(H,-1)>Ref(L,-1)-L,H-Ref(H,-1),0));
DIPlus:=100*Wilders(PlusDM,Periods)/ATR(Periods);

{Directional movement -DI}
MinusDM:=If(L<Ref(L,-1) AND H<=Ref(H,-1),Ref(L,-1)-L,
If(H>Ref(H,-1) AND L<Ref(L,-1)
AND H-Ref(H,-1)<Ref(L,-1)-L,Ref(L,-1)-L,0));
DIMinus:=100*Wilders(MinusDM,Periods)/ATR(Periods);

But its not appearing on chart getting Please help me regarding this
mstt  
#6 Posted : Monday, September 23, 2013 2:14:11 PM(UTC)
mstt

Rank: Advanced Member

Groups: Registered, Registered Users, Subscribers
Joined: 7/25/2005(UTC)
Posts: 1,042

Was thanked: 57 time(s) in 54 post(s)
Hi BH

I'm not surprised that you didn't get any output from your attempt - that's because you forgot to follow my instructions and replace the unwanted ADX output code line with DIPlus or DIMinus. The BOLD text at the end of each formula is what makes the output or result of an MS formula available to the outside world. This output can be either the name of an already defined variable, as is the case of the first two formulas below, or it can be an unnamed variable as seen in the second two formulas.


{Directional movement +DI}
Periods:=Input("Enter time periods",1,100,14);
PlusDM:=If(H>Ref(H,-1) AND L>=Ref(L,-1),H-Ref(H,-1),
If(H>Ref(H,-1) AND L<Ref(L,-1)
AND H-Ref(H,-1)>Ref(L,-1)-L,H-Ref(H,-1),0));
DIPlus:=100*Wilders(PlusDM,Periods)/ATR(Periods);
DIPlus;

{Directional movement -DI}
Periods:=Input("Enter time periods",1,100,14);
MinusDM:=If(L<Ref(L,-1) AND H<=Ref(H,-1),Ref(L,-1)-L,

If(H>Ref(H,-1) AND L<Ref(L,-1)
AND H-Ref(H,-1)<Ref(L,-1)-L,Ref(L,-1)-L,0));
DIMinus:=100*Wilders(MinusDM,Periods)/ATR(Periods);
DIMinus;


{Directional movement +DI}
Periods:=Input("Enter time periods",1,100,14);
PlusDM:=If(H>Ref(H,-1) AND L>=Ref(L,-1),H-Ref(H,-1),
If(H>Ref(H,-1) AND L<Ref(L,-1)
AND H-Ref(H,-1)>Ref(L,-1)-L,H-Ref(H,-1),0));
100*Wilders(PlusDM,Periods)/ATR(Periods);

{Directional movement -DI}
Periods:=Input("Enter time periods",1,100,14);
MinusDM:=If(L<Ref(L,-1) AND H<=Ref(H,-1),Ref(L,-1)-L,

If(H>Ref(H,-1) AND L<Ref(L,-1)
AND H-Ref(H,-1)<Ref(L,-1)-L,Ref(L,-1)-L,0));
100*Wilders(MinusDM,Periods)/ATR(Periods);


A formula without an output statement returns the dreaded N/A status. You can take N/A to mean Nothing Available as an output. I trust this resolves your problem.

Roy
DINESHBH  
#7 Posted : Wednesday, September 25, 2013 3:49:57 AM(UTC)
DINESHBH

Rank: Newbie

Groups: Registered, Registered Users, Subscribers
Joined: 9/19/2013(UTC)
Posts: 7

Thank you so much Mr Roy for giving help and giving time for me, i am not programmer so i could not understand as well as fallow ur instruction. Finally its solved. i am very happy. once again thank you
I have created automatic trading formula about ADX and Plus DI & Minus DI combination, if possible can you code it and give trader community. presently i am doing with Amibroker(Automatic Trading signal Ribbon) i will post in next thread
DINESHBH  
#8 Posted : Wednesday, September 25, 2013 3:59:28 AM(UTC)
DINESHBH

Rank: Newbie

Groups: Registered, Registered Users, Subscribers
Joined: 9/19/2013(UTC)
Posts: 7

Mr Roy here my formula ADX Auto Trading. If u wish please code and help to our community
ADX AUTOMATIC FORMULA-1

ADX > and +DI > or < -DI (Dark Green)
ADX > and +DI < or > -DI (Dark Green)
ADX < and +DI > or < -DI (Light Green)
ADX < and +DI < or > -DI (Light Green)

ADX > and -DI > or < +DI (Dark Red) ADX > and -DI < or > +DI (Dark Red) ADX < and -DI > or < +DI (Light Red) ADX < and -DI < or > +DI (Light Red)
IF ALL VALUES ARE EQUAL = (Black) (NO CHANGES COMPARE TO PREVOUS BAR)
ADX AUTOMATIC FORMULA-2
+DI > or < -DI and ADX >(Dark Green)
+DI < or > -DI and ADX >(Dark Green)
+DI > or < -DI and ADX <(Light Green)
+DI < or > -DI andADX <(Light Green)

-DI > or < +DI and ADX >(Dark Red) -DI < or < +DI and ADX >(Dark Red) -DI > or < +DI and ADX <(Light Red) -DI < or > +DI and ADX <(Light Red)
IF ALL VALUES ARE EQUAL = (Black) (NO CHANGES COMPARE TO PREVOUS BAR)
With Regards Dineshkumar, BH
Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.