my latest objet d'art- in honor of your long route to nowhere tonight Craig:
output = "srsi21up.lst"; input="250vol.lst"; ProcessMS = "c:\meta\srsi21up\",VMS; Daystoload = 400; daysrequired=399; integer p,i,j; float weight, maperiod1, maperiod2, total, totaldays, StochRSI,pctgain, PrvStRSI, PrvPrvSRSI,bb; set rsi=21; for p = 0 to 0 step 1 do if close(p) > close(p-1) then if (vol(p) > avgvol(p-1,p-34))or vol(p) < .35*avgvol(p-1,p-34) then if qrs(p) > 87 or (qrs (p) < 30 and qrs(p)>0) then if movavg(p,89,hi)/movavg(p,89,lo) > 1.039 then bb :=(stdev(p,p-7)/(.000001+max(p-1,p-144,hi)-min(p-1,p-144,lo)))*100; if bb<9 then maperiod1:=21; maperiod2:=21; set rsi = maperiod1; weight:=0; total:=0; for i = maperiod2 to 1 step -1 do total:= total + i; next i; totaldays:=total; StochRSI:=0; PrvStRSI:=0; PrvPrvSRSI:=0; for j = maperiod2 to 1 step -1 do weight:=((j/totaldays)*100); StochRSI:=StochRSI+((rsi(j-(maperiod2-p))-min(j-(maperiod2-p),(j-maperiod2)-(maperiod1-1-p),rsi))/(.000001+max(j-(maperiod2-p),(j-maperiod2)-(maperiod1-1-p),rsi)-min(j-(maperiod2-p),(j-maperiod2)-(maperiod1-1-p),rsi))*(weight)); PrvStRSI:=PrvStRSI+((rsi(j-(maperiod2+1-p))-min(j-(maperiod2+1-p),(j-maperiod2)-(maperiod1-p),rsi))/(.000001+max(j-(maperiod2+1-p),(j-maperiod2)-(maperiod1-p),rsi)-min(j-(maperiod2+1-p),(j-maperiod2)-(maperiod1-p),rsi))*(weight)); PrvPrvSRSI:=PrvPrvSRSI+((rsi(j-(maperiod2+2))-min(j-(maperiod2+2),(j-maperiod2)-(maperiod1+1),rsi))/(.000001+max(j-(maperiod2+2),(j-maperiod2)-(maperiod1+1),rsi)-min(j-(maperiod2+2),(j-maperiod2)-(maperiod1+1),rsi))*(weight)); next j; if StochRSI>29.99 then if StochRSI>PrvStRSI then if PrvStRSI<30 then if p<-29 then pctgain := ((Max(p+30,p+1,hi))/close(p))-1; Println Symbol:-6,",",max(p+30,p+1,hi):6:3,",",close(p):6:3,",",pctgain:6:3,",",StochRSI:5:1,",",PrvStRSI:5:1,",",vol(p)/(avgvol(p-1,p-34)):6:3,",",qrs(p):4:0,",",date(p),",","SR2121UP"; else Println Symbol:-6,",",close(0):6:3,",",close(-1):6:3,",",close(p):6:3,",",StochRSI:5:1,",",PrvStRSI:5:1,",",vol(p):8:0,",",avgvol(p,p-33):8:0,",",qrs(p):4:0,",",date(p),",","srsi21up",",",min(p,p-1,lo):6:3; endif; endif; endif; endif;endif;endif;endif;endif;endif; next p; |