[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: CCI



PureBytes Links

Trading Reference Links

The appearance of the MSK's "CCI-Standard" and "CCI-Equis" indicators
differs full stop. My mail's CCI indicator is close to the CCI-standard. And
to top it off, the Achelis' TA from A to Z weblink version also "totaly differs".

Also note that in the CCI formula that I had send, a "large typo" might
have been made, if the in the MSK's Help+Manual interpretation (see further below)
explained "Equis formula developing for CCI" was to be used.

Original:
((MP()-Mov(MP(),14,S))/
(1.5*Stdev(Abs( MP()) ,14)))*100

Then the correct(ed) formula would be:
((MP()-Mov(MP(),14,S))/
(1.5*Stdev(Abs(Mov( MP()-Mov(MP() ,14,S),14,S)),14)))*100

here the adjusted large typo is than in the extra average:
 "Mean deviation of absolute values of the average numerator over p periods."
where in the previous formula the
 "Mean deviation of absolute values of the numerator over p periods." 
was used.

Please correct me, if I am wrong in the "interpretation" of this line.
Also correct me if you're being confused, as well as that perhaps Equis and
its President are also being confused.

Regards,
Ton Maas
ms-irb@xxxxxxxxxxxxxxxx
Dismiss the ".nospam" bit (including the dot) when replying.
Homepage  http://home.planet.nl/~anthmaas

===========MSK Help+Manual==================
CCI according to Equis 

The Commodity Channel Index (CCI) is calculated by
first determining the difference between the mean price of a commodity
and the average of the means over the time period chosen
(where Mean is the exact middle between 2 extremes, eg MidPrice).

///////////section1: MidPri:=((H-L)/2);
                            Diff:=MidPri-Mov(MidPri,14,S);                            

This difference is then compared to the average difference over the time period
(this factors in the commodity's own inherent volatility).

///////////section2: AveDiff:=Mov(Abs(Diff),14,S);
                            EquationComp:=Diff/AveDiff;

The result is then multiplied by a constant that is designed to adjust the CCI
so that it fits into a "normal" trading range of +/-100.

///////////section3: AdjCon:=66.66667{equivelant=2/3tds};
                            PercResult:=EquationComp*AdjCon;

Further details on the contents and interpretation of the CCI can be found in
the October 1980 issue of Commodities magazine (now known as Futures).
The article was written by Donald Lambert.
------------------------
Name: CCI-Equis custom

Formula:
MidPri:=((H+L+C)/3);
Diff:=MidPri-Mov(MidPri,14,S);
AveDiff:=Mov(Abs(Diff),14,S);
EquationComp:=Diff/AveDiff;
AdjCon:=66.66667{equivelant=2/3tds};
PercResult:=EquationComp*AdjCon;
PercResult

Name: CCI-Standard custom

Formula:
(Typ()-Mov(Typ(),14,S))/
(1.75*Stdev(Abs(Typ()),14))*125
{Note: this is the closest 'equal' to the
build-in version}
------------------------
Note1:
The CCI indicator used in older versions of MetaStock is called "CCI (EQUIS)."

Note2:
"CCI (Standard)" is the recently modified version that is consistent with the
author's current calculation method.

Note3:
The interpretation of both methods is identical.
=========================================
CCI according to Steve Achelis TA from A to Z book.
 
For Metastock v6.5+

Name: CCI - Donald Lambert

Formula:
{ CCI according to Steve Achelis' TA from A to Z
book, of which an electronic version can be found
http://www.equis.com/free/taaz/cci.html } 

step1:=(H+L+C)/3;
step2:=Mov(step1,14,S);
step3:=Ref(step1,-1)-step2 AND
       Ref(step1,-2)-step2 AND
       Ref(step1,-3)-step2 AND
       Ref(step1,-4)-step2 AND
       Ref(step1,-5)-step2 AND
       Ref(step1,-6)-step2 AND
       Ref(step1,-7)-step2 AND
       Ref(step1,-8)-step2 AND
       Ref(step1,-9)-step2 AND
       Ref(step1,-10)-step2 AND
       Ref(step1,-11)-step2 AND
       Ref(step1,-12)-step2 AND
       Ref(step1,-13)-step2 AND
       Ref(step1,-14)-step2;
step4:=Mov(Abs(step3),14,s);
step5:=step4*0.015;
step6:=step1-step2;
step7:=step6/step5;
step8:=step7/20;{for the +100, -100 scale}
step8

=========================================

----- Original Message ----- 
From: "M. Robb" <robb@xxxxxxxxxxxx>
To: <metastock@xxxxxxxxxxxxx>
Sent: zaterdag 18 maart 2000 6:54
Subject: Re: CCI 


> The appearance of MS CCI standard, and CCI-Equis diffe from the formula you
> sent.
> 
> ((MP()-Mov(MP(),14,S))/
> (1.5*Stdev(Abs(MP()),14)))*100
> 
> The "CCI -equis" seems a little closer to yours.
> 
> Strangely, the  MS "CCI -standard" is less smooth, but less useful at
> turning points.
> 
> M.R. 
> 
> ----- Original Message -----
> From: "A.J. Maas" 
> To: "Metastock-List" <metastock@xxxxxxxxxxxxx>
> Sent: Saturday, March 18, 2000 7:22 AM
> Subject: Re: CCI and Brown's
> 
> 
> > C. Brown's RSI derivative index
> >
> > "Brown's formula says to add 2.3 times the average true range of
> > up RSI 14,6,S closes, and then runs the triple smoothing.
> >
> > Brown puts it as follows:
> > A 15 unit triple smoothed RSI 14 added with 2.3 times the average
> > true range of up closes and 2.1 times the average true range of
> > the down closes".
> > ------------------------------------------------
> > (Then) Brown's formula for MetaStock6.5 (is):
> >
> > Name:
> > RSI derivative index - C. Brown
> >
> > Formula:
> > Part1:=
> >     2.3*{the average true range of
> >     ("RSI 14,6,S") up closes}
> >     If({"RSI 14,6,S=up"}
> >     Mov(RSI(14),6,S)>
> >     Ref(Mov(RSI(14),6,S),-1){=true},
> >     {then}ATR(1),
> >     {else}0);
> > Part2:=
> >     2.1*{the average true range of
> >     ("RSI 14,6,S") down closes}
> >     If({"RSI 14,6,S=down"}
> >     Mov(RSI(14),6,S)<
> >     Ref(Mov(RSI(14),6,S),-1){=true},
> >     {then}ATR(1),
> >     {else}0);
> > Part3:=
> >     {RSI 14 added with Part1 + Part2}
> >     RSI(14)+Sum(Part1,14)+Sum(Part2,14);
> > RSIderIDX:=
> >     {The 15 unit triple smoothed Part3}
> >     Mov(Mov(Mov(Part3,15,S),15,S),15,S);
> > RSIderIDX
> >
> > ========================================
> > CCI
> >
> > CCI[i] = (M - A)/(X * D) {return=percent, multiply by 100
> >                                                       (for +100, -100 scale)}
> >
> > In MetaStock
> >
> > ((MP()-Mov(MP(),14,S))/
> > (1.5*Stdev(Abs(MP()),14)))*100
> >
> > See further below.
> >
> > See also the "totaly" different calculation method
> > http://www.equis.com/free/taaz/cci.html
> >
> > Regards,
> > Ton Maas
> > ms-irb@xxxxxxxxxxxxxxxx
> > Dismiss the ".nospam" bit (including the dot) when replying.
> > Homepage  http://home.planet.nl/~anthmaas
> >
> > Commodity Channel Index
> >
> > Description :
> > The CCI is a price momentum indicator that works well for commodities,
> > stocks, and mutual funds.
> >
> >   Usage:    CCI( Period1 )
> >   Returns:  Array
> >
> > where:
> >   Period1 = number of periods in the CCI calculation as shown below.
> >
> >
> > Mathematically:
> >
> >           CCI[i] = (M - A)/(X * D) percent
> >
> > where:
> >   i(nput,periods)     =The user defined periods.
> >   M(ean,Price)        =Mean price of the current-day sample period.
> >   A(verage,Mov.)    =The p-period simple moving average of M.
> >   D(eviation)           =Mean deviation of absolute values of
> >                                    the numerator over p periods.
> >   X(known,unkown)=An adjusting factor, 0.15, which normalizes
> >                                    the excursions to a trading range of +/- 100.
> >   percent(%result)  =The full formula's Return value
> >
> > The CCI is a sort of "noise" filter, for which the random fluctuations
> > should fall inside the +/- 100 percent range.
> >
> > Excursions outside this range tend to be nonrandom and indicate
> > trading opportunities.
> >
> > Suggested trading rules are:
> >   1.   Buy long when CCI goes above +100%.
> >   2.   Sell long when CCI subsequently returns below 100%.
> >   3.   Sell short when CCI goes below -100%.
> >   4.   Cover shorts when CCI subsequently returns above -100%.
> >
> >  - Selection of a large number of periods (p) will filter out much
> >    of the noise, but can mask trading opportunities and trends.
> >  - A smaller number of periods can create false signals.
> >
> > 90 and 53 weeks as tentative starting periods for your analysis
> > are suggested.
> >
> > Another way of using the CCI is to note when the security being
> > analyzed rises dramatically, but the rise is not reflected by the
> > overall momentum represented by the CCI.  Such a divergence is
> > usually followed by a price correction for the security.
> >
> > ----- Original Message -----
> > From: "M. Robb"
> > To: <metastock@xxxxxxxxxxxxx>
> > Sent: woensdag 15 maart 2000 8:11
> > Subject: Re: MS 7.0 EOD Upgrade Screen. New Features?
> >
> >
> > > In attempting to write an indicator to match C. Brown's RSI derivative
> > > oscillator the formula builder stops at the comma after the ATR(14) and says
> > > this variable must contain only constant data.
> > >
> > > Brown's formula says to add 2.3 times the average true range of up RSI
> > > 14,6,S closes, and then runs the triple smoothing.
> > >
> > > Mov((RSI(14)),6,S) + 2.3*ATR(If(INDICATOR >  PREVIOUS ,
> > > mov((RSI(14)),((RSI(14))),(RSI(14))),15)))
> > >
> > > For some reason I can't figure out how to express this correctly.
> > >
> > >
> > ----- Original Message -----
> > From: "M. Robb"
> > To: <metastock@xxxxxxxxxxxxx>
> > Sent: dinsdag 14 maart 2000 10:33
> > Subject: CCI and Brown's
> >
> >
> > > Does anyone recall where a metastock formula can be found for Lambert's CCI
> > > commodity chanel index.....and C. Brown's RSI derivative index.
> > >
> > > The last is a 15 unit triple smoothed RSI 14 combined with 2.3 times the
> > > average true range of up closes, and 2.1 times the average true range of the
> > > down closes.
> > >
> > > Thanks in advance. Help of any kind would be useful, and much appreciated
> > >
> > > Mike