SI
SI
discoversearch

We've detected that you're using an ad content blocking browser plug-in or feature. Ads provide a critical source of revenue to the continued operation of Silicon Investor.  We ask that you disable ad blocking while on Silicon Investor in the best interests of our community.  If you are not using an ad blocker but are still receiving this message, make sure your browser's tracking protection is set to the 'standard' level.
Strategies & Market Trends : TA- Scans and System Tests

 Public ReplyPrvt ReplyMark as Last ReadFilePrevious 10Next 10PreviousNext  
To: CynicalTruth who wrote (929)9/16/1997 1:01:00 AM
From: GW Riedeman   of 989
 
Fellas, look this over for your CCI equations....Runs faster than the others.

Too much calculation in an inherently slow system to not economize on the amount of calculation.....

This is pretty new, and I haven't checked it thoroughly, but it runs in QP+V2...If you find errors, let me know. It should be close....

------------------
input = [your choice of list]
output = "CCITEST1.lst"
exchange nasdaq,nyse,amex
integer i, N
float CCIT, CCIY, DAT, DAY, AT, AY
N:=13 // Number of periods in CCI calculation
//Calculate simple MA of typical price for N periods
//for Today and Yesterday. AT/AY are running averages.
AT := 0
for i=1 to N-1
AT := AT+close(-i)+high(-i)+low(-i)
next i
AY:=(close(-N)+high(-N)+low(-N)+AT)/(3*N)
AT:=(close(0)+high(0)+low(0)+AT)/(3*N)
//println "AT":4,AT:8:2,"AY":4, AY:8:2
//Calculate simple MA of absolute value of difference between
//current typical price and above AT/AY over N periods
DAT:=0
DAY:=0
for i=0 to N-1
DAT:= DAT+abs((close(-i)+high(-i)+low(-i))/3-AT)
DAY:= DAY+abs((close(-i-1)+high(-i-1)+low(-i-1))/3-AY)
next i
if DAT=0 then
DAT:=0.0001
else
DAT:=DAT/N
endif
if DAY=0 then
DAY:=0.0001
else
DAY:=DAY/N
endif
//Println "DAT":4,DAT:8:2,"DAY":4,DAY:8:2
//Calculate CCI for today CCIT and yesterday CCIY
CCIT:= ((close(0)+high(0)+low(0))/3 - AT)/(0.015*DAT)
CCIY:= ((close(0)+high(0)+low(0))/3 - AY)/(0.015*DAY)
//println symbol:8, "Tod CCI":9, CCIT:8:1,"Yes CCI":9, CCIY:12:1
//Now look for crossover with -150
if CCIT>-150 and CCIY<-150 then
println symbol:8, "CCI Today":11,CCIT:6:0,"CCI Yesterday":15,CCIY:6:0
endif
Report TOU ViolationShare This Post
 Public ReplyPrvt ReplyMark as Last ReadFilePrevious 10Next 10PreviousNext