ROC indicator

rkkarnani

Well-Known Member
#2
hi guys...

Can someone send the coding for ROC indicator for metastock...
I am looking for it guys...

Regards,
Vishal :):thumb:
Have this formula in my archieves... maybe its of use to you :

{ User inputs }
period:=Input("RoC: [1]Day, [2]Week, [3]Mnth, [4]Qrtr, [5]Year",1,5,1);
type:=Input("RoC: [1]Current, [2]Cumulative",1,2,1);
method:=Input("RoC method: [1]%Percent, [2]$Points",1,2,1);
start:=Input("Start month [1-12] for quarterly periods",1,12,1);
plot:=Input("plot: [1]RoC, [2]period Signals",1,2,1);

{ Calendar counter engine }
y:=Year()-(Month()<3);
leap:=Int(y/4)-Int(y/100)+Int(y/400);
mth:=Int((2+153*(Month()-3+12*(Month()<3)))/5);
dayNr:=DayOfMonth()+mth+y*365+leap-730425;
weekNr:=1+If(DayNr<1,1,2)
-(Frac(Year()/100)=0 AND Frac(Year()/400)<>0);
weekNr:=Int((DayNr-weekNr)/7)+(Year()>=2000);

{ Signals }
init:=Cum(1)=2;
day:=dayNr<>Ref(dayNr,-1) OR init;
week:=weekNr<>Ref(weekNr,-1) OR init;
mth:=Month()<>Ref(Month(),-1) OR init;
quarter:=Mod(Month()-(start-1),4)=0;
quarter:=quarter=0 AND Alert(quarter,2) OR init;
yr:=Year()>Ref(Year(),-1) OR init;
signal:=
If(period=1,day,
If(period=2,week,
If(period=3,mth,
If(period=4,quarter,
yr))));

{ Signal's Close }
sigCl:=If(LastValue(Cum(signal=0))>0,
ValueWhen(1,signal,C),Ref(C,-1));

{ RoC %/$ select}
pct:=(C/sigCl-1)*100;
pts:=C-sigCl;
RC:=If(method=1,pct,pts);
RC:=If(type=1,RC,Cum(Ref(RC,-1)*signal)+RC);

{ Plot in own window }
0;If(plot=1,RC,signal)
 
#3
dude thanks, for the coding but is it with the default parameters and the classical ROC indicator or it has been modified...

Regards,
Vishal
 

Similar threads