Michael: For the time being, use this updated scan. The other one was eliminating the leaders of the pack, the ones for whom the conditions held true the longest, because "maup" was equal to 24, not >=24 or =26. The following scan will give you a lot of great hits:
output ="canslim.lst"; input="commplus.lst"; //issuetype=common; exchange nyse,nasdaq,amex; //set these in input
daystoload=320; //Guard for less days? integer i; float low15, ma50, maup, max260, pwh, vi;
max260:= Max(-1,-260,hi);
//10-day MA > 50-day MA and 50-day MA rising weekly for the past 3 months maup:=0; for i = 0 to -60 step -5 do ma50:=movavg(i,50,Cl); //use it twice if movavg(i,10,Cl)> ma50 and ma50 > movavg(i-5,50,Cl) then maup:=maup + 2; //need 24 to pass endif; next i;
//Low within 15% of 52 week high every day for 3 months //To match Mike A., test for close(0) >= .85*max(-1,-260,hi) 1st low15:= -999; //Guard for fail if close(0) >= .85*max(-1,-260,hi) then low15:=0; for i = 0 to -59 step -1 do if low(i)>=.85*max(i,i - 260,hi) then low15:=low15 + 1; //need 60 to pass endif; next i; endif;
pwh:= 100*(Close(0)- max260)/max260; // % within 52 week high
//Calculate percent of volume change compared to 50 average daily volume vi:= -999; //Guard for println if AvgVol(0,-50) !=0 then //Prevents division by 0 vi := 100*(Vol(0) - AvgVol(0,-50)) / AvgVol(0,-50); endif;
if close(0)>=10 and eps>0 and qrs(0)>=80 and avgvol(0,-29)>30000 and maup >= 24 and low15 = 60 then println symbol, ", ","EPS: ",EPS:4:3, ", ","QRS ", QRS(0),", ", "Close: ",Close(0):6:3, ", ", "52 HIGH: ", Max(-1,-260,hi):5:3,", ", "PWH: ",pwh:3:0, ", ","VOL: ",vol(0):7:0, ", ", "AVG VOL: ",avgvol(0,-50 ):7:0, ", ","VOL PCT CHANGE: ",vi:4:0; endif; |