[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[EquisMetaStock Group] Multi-Frame Indicators



PureBytes Links

Trading Reference Links



Roy or Preston,
                              Thanks to a link from Roy I have implemented +DPI, -DPI, ADX and ATR in Multi-Frame mode on a weekly chart. It works great. I use StochRsi (Chande) all of the time and I notice that it is not included in the list of available indicators. Of course, the formuls is:

((RSI(13)-LLV(RSI(13),13))/((HHV(RSI(13),13))-LLV(RSI(13),13)))

How hard would it be to adapt the available RSI Multi-Frame to this formula? I would do it myself if I could figure out what you are doing in your formula, which is:

{Multi-Frame RSI}
 {This indicator uses Equis Forum DLL}
 {Roy Larsen, 2008}

 {User settings}
N:=Input("Multi-Frame RSI, Periods",1,99,10);
F:=Input("Timeframe, 0=W  1=M  2=Q  3=6M  4=Y",0,4,0);
F:=If(F=1,1,If(F=2,3,If(F=3,6,If(F=4,12,0))));
Q:=Input("Mode, 0=Static 1=Dynamic 2=Delayed",0,2,1);
 {0, update at last bar of current frame}
 {1, update on each new bar}
 {2, update on first bar of new frame}

 {Timing signals}
{Day counter courtesy metastock@xxxxxxxxxxxxx}
M:=Month();A:=Int((14-M)/12);D:=DayOfMonth();
Y:=Year();X:=Y+4800-A;B:=M+(12*A)-3;Z:=Cum(1);
M:=If(F=0,D+Int((2+153*B)/5)+(365*X)+Int(X/4)-
Int(X/100)+Int(X/400)-32045,{day counter}
(Y-ValueWhen(1,Z=1,Y))*12+M){month counter};
I:=If(F=0,Int(M/7),Int((M-1)/Max(1,F)));
I:=I<>ValueWhen(2,1,I);
G:=LastValue(Lowest(Sum(I>0,5))=5);
I:=ExtFml("Forum.Sum",I,1);M:=G OR I;
F:=G OR (M=0)*ExtFml("Forum.Sum",Ref(I,1),1);
A:=LastValue(Z-1)=Z;B:=LastValue(Z)=Z;
J:=If(F,1,(Alert(F,2)=0)*M*2*(Z>1));
J:=If(A+LastValue(J)>2 OR B+(Q=1)=2,1,J);
J:=If(G,1,If(Q=2,M*2,J));

 {Frame prices}
K:=ValueWhen(1,J,If(J=1,C,ValueWhen(2-G,1,C)));
K1:=ValueWhen(2,J,K);

 {Calculate/plot RSI}
J:=J>0; R:=1/N;
A:=(K>K1)*(K-K1); B:=(K<K1)*(K1-K);
F:=Cum(J*A)/N; G:=Cum(J*B)/N;
U:=If(Cum(J)<=N+1,F,PREV*If(J,1-R,1)+J*A*R);
D:=If(Cum(J)<=N+1,G,PREV*If(J,1-R,1)+J*B*R);
R:=100-100/(1+(U/If(D=0,.000001,D)));
ValueWhen(1,Cum(J)>N,R);
{any suggestions appreciated, Rick}


__._,_.___


Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___