Wblam,
If you have a particular objective of getting total upward price change then it is ok,but the link you provided where the RSI - 2 periods success rate for very short time frame is very encouraging,as per their findings & the basic concept of this leading indicator lies in it's avg of up/dn .However this 2 period time frame will mostly mis match with the chart & exploration values in MS .However i am using Jose's following code ( with little tweaking for my purpose) since long.It may be of some use,the following is his original :
.........................................8.................................................................
{ Smoothed RSI indicator v1.1 }
{ Internal sine-weighted smoothing }
{ Automatic historically-valid RSI peak/trough
boundaries}
{ Boundary crossover signals: +1=Long, -1=Short}
{ ©Copyright 2004 Jose Silva }
{ http://www.metastocktools.com }
{ user input }
pds:=1/Input("RSI periods",1,2520,10);
plot:=Input("plot: [1]-RSI, [2]-Long/Short signals",1,2,1);
{ RSI up/down average components }
x:=If(C>Ref(C,-1),C-Ref(C,-1),0);
y:=If(C<Ref(C,-1),Ref(C,-1)-C,0);
up:=PREV*(1-pds)+x*pds;
dw:=PREV*(1-pds)+y*pds;
{ sine-weighted internal smoothing }
s1:=Sin(30)*up;
s2:=Sin(60)*Ref(up,-1);
s3:=Sin(90)*Ref(up,-2);
s4:=Sin(60)*Ref(up,-3);
s5:=Sin(30)*Ref(up,-4);
up:=(s1+s2+s3+s4+s5)/(Sin(30)*2+Sin(60)*2
+Sin(90));
S1:=Sin(30)*dw;
S2:=Sin(60)*Ref(dw,-1);
S3:=Sin(90)*Ref(dw,-2);
S4:=Sin(60)*Ref(dw,-3);
S5:=Sin(30)*Ref(dw,-4);
dw:=(s1+s2+s3+s4+s5)/(Sin(30)*2+Sin(60)*2
+Sin(90));
{ RSI indicator }
dw:=If(dw=0,.000001,dw);
RS:=100-100/(1+up/dw);
{ automatic RSI peak/trough boundaries }
pk:=Ref(RS,-1)>Ref(RS,-2) AND Ref(RS,-1)>RS
AND Alert(Ref(C,-1)>Ref(C,-2)
AND Ref(C,-1)>C,2) {AND Ref(RS,-1)>50};
pkVal:=ValueWhen(1,pk,Ref(RS,-1));
pkAvg:=Cum(pkVal)/Cum(pkVal>-1);
tr:=Ref(RS,-1)<Ref(RS,-2) AND Ref(RS,-1)<RS
AND Alert(Ref(C,-1)<Ref(C,-2)
AND Ref(C,-1)<C,2) {AND Ref(RS,-1)<50};
trVal:=ValueWhen(1,tr,Ref(RS,-1));
trAvg:=Cum(trVal)/Cum(trVal>-1);
{ RSI peak/trough boundary cross signals }
up:=Cross(trAvg,RS);
dw:=Cross(RS,pkAvg);
signals:=up-dw;
{ alternative RSI peak/trough signals }
{up:=Ref(RS,-1)<Ref(RS,-2) AND Ref(RS,-1)<RS
AND Ref(RS,-1)<trAvg;
dw:=Ref(RS,-1)>Ref(RS,-2) AND Ref(RS,-1)>RS
AND Ref(RS,-1)>pkAvg;
signals:=up-dw;}
{ plot }
If(plot=1,pkAvg,0);
If(plot=1,trAvg,0);
If(plot=1,RS,signals)
..........................................................8......................................
Asish