PureBytes Links
Trading Reference Links
|
Am Wed, 12 Aug 1998 09:50:28 -0400, Schrieben Sie:
>Hi again
>
>I have questions about Kaufman's Adaptive Moving Average which is another
>form of "variable" or "dynamic" formula. I think that it may be more helpful
>in programing the Dynamic Breakout System than a VIDYA calculated with
>standard deviation.
>
>Periods:=Input("Time Periods",1,1000,10); {10 is the lookback period}
>
The value "1000" looks very large, 10 as a default seems to make more sense.
1000 days (bars) correspond to 4 trading years.
>Direction:=CLOSE-Ref(CLOSE,-periods); {I don't understand how this part is
>used}
>
"Direction" is nothing but the "periods"-day momentum: the difference between
today's Close and the close periods days ago.
>Volatility:=Sum(Abs(CLOSE,1,$)),periods);
There is something missing in this formula, I guess it is "ROC", the correct
formula very likely is:
Volatility:=Sum(Abs(ROC(CLOSE,1,$)),periods;
This is the sum of daily changes (absolut values) of the close prices over
"periods" days (bars).
>
>ER:=Abs(Direction/Volatility); {ER = Efficiency Ratio ??}
Yes, makes a lot of sense: ER will be between 0 and 1. If the close moves from
its current level in a constant move up to a value periods days later,
Direction and Volatility will be equal (in value), dito for a down move. If
the prices oscillate, and the close is equal to the close periods days ago,
Direction will be 0. As a rule, Volatility will be greater than Direction.
If You take a period of 1 day, then Volatility = abs(Direction) and ER = 1.
>
>FastSC:=2/(2+1) {2 = 2 EMA which is the fastest MA in the variable average}
> {basic formula is 2/(n+1) ??}
>
>SlowSC:=2/(30+1) {30 = 30 EMA is the slowest MA in the variable average}
>
>SSC:=ER*(FastSC - SlowSC)+SlowSC; {? what does SSC stand for}
As ER is a value between 0 and 1, You will get as SSC (Smoothed Scaling
Constant? I really don't know) a value between SlowSC and FastSC. If ER is 0,
then SSC is equal to SlowSC, if ER is 1, then SSC is equal to FastSC. So SSC
is a value between 0.66 and 0.0645 (approximately), a range of about 10 to 1.
So an oscillating market corresponds to a slow MA, a trending market to a fast
MA? At a first glance, this does not make sense.
>Constant:=Pwr(SSC,2); {constant or c = SSC squared??)
That's SSC squared. Squaring a number smaller than 1 makes it smaller:
Constant is a value between 0.444... and 0.00416, now You have a range of 100
to 1.
>
>AMA:=If
>(Cum(1)=periods+1,Ref(CLOSE,-1)+constant*(CLOSE-Ref(CLOSE,-1)),PREV+constant
>*(CLOSE-PREV));
>
The main portion of the formula is "PREV+constant*(close-PREV)": You take the
difference between today's close and yesterdays value of the AMA, multiply it
by Constant and add it to yesterday's AMA (the difference could be negative).
In a trending market, You will take about 44% of the difference between
today's close and PREV, in an oscillating market 0.4%.
You have to provide a starting value for AMA (to be used as PREV) hence the
term "Ref(CLOSE,-1)+constant*(CLOSE-Ref(CLOSE,-1))", which is computed after
periods+1 days. Before periods days are elapsed, Direction and Volatility and
hence ER are not defined.
The result looks as expected: speeding up in trends long enough compared to
periods, and ignoring oscillations short in comparison to periods, though they
are very strong (but maybe that's the idea behind AMA?).
It doesn't look very useful to me: Do You have any hints as how to build
trading rules around AMA?
BTW, VIDYA can be indexed to CMO or r-squared.
Regards
Bernd Kürbs
|