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

Re: [EquisMetaStock Group] Re: Smooth, smoother, smoothest?



PureBytes Links

Trading Reference Links

I like Tillson's work (T3)*:
 
e1:=Mov(C,3,E);
e2:=Mov(e1,3,E);
e3:=Mov(e2,3,E);
e4:=Mov(e3,3,E);
e5:=Mov(e4,3,E);
e6:=Mov(e5,3,E);
c1:=-.618*.618*.618;
c2:=3*.618*.618+3*.618*.618*.618;
c3:=-6*.618*.618-3*.618-3*.618*.618*.618;
c4:=1+3*.618+.618*.618*.618+3*.618*.618;
c1*e6+c2*e5+c3*e4+c4*e3;
 
Tim prefers .70 to .618 in the formula.  Of course, you can easily change time periods.  I use this moving average in all momentum oscillator formulae.
 
Take care,
 
Steve Karnish
 

 


From: Ed Hoopes <reefbreak_sd@xxxxxxxxx>
To: equismetastock@xxxxxxxxxxxxxxx
Sent: Monday, November 17, 2008 10:07:22 AM
Subject: [EquisMetaStock Group] Re: HEIKIN-ASHI CANDLESTICK OSCILLATOR

I'm glad to hear that MS users have access to the H-A indicators.

On the general topic of smoothing - here are two other smoothers that
I have found useful:

1. Kalman filters - often used to smooth noisy data in electronics
work well.
2. statistical smoothing which aggregate the data over many stocks to
produce an indicator - has produced my best results. I have not seen
these covered in any TA book. Sometimes they are called 'difussion
indicators' without any further discussion.

ReefBreak

--- In equismetastock@ yahoogroups. com, pumrysh <no_reply@xx .> wrote:
>
> As a subscriber to Roy's newsletter you would have a solution to
> this.
>
> Preston
>
>
>
> --- In equismetastock@ yahoogroups. com, "Ed Hoopes"
> <reefbreak_sd@ > wrote:
> >
> > As a former user of MetaStock software, I can comment on why the
> > indicator is not programmed for MS. The MetaStock formula language
> > does not have nearly enough functions to implement the code.
> >
> > Below, I show the indicator programmed in AmiBroker by Tomasz
> Janeczko.
> >
> > Here is an incomplete list of required functions that MS lacks:
> > IIF - an immediate IF function that works on data arrays
> > IF - a conditional execution statement that allows blocks of
> > statements to be conditionally executed
> > Hold - holds a logic true/false in a certain state for a number of
> bars
> > AMA - an adaptive moving average function
> > ParamToggle - switches the logic state of a variable
> > Flip - works like an electrical FlipFlop logic circuit
> > StyleArea & StyleOwnScale - allows proper plotting of Heikin bars.
> >
> > If you wanted to implement this indicator in MS you would need to
> buy
> > the software developers kit which has software hooks into the MS
> > package. Plus buy some fully capable language compiler like C++.
> >
> > Or, for $199 you could buy AB and use the code below :)
> >
> > ************ ********* **
> >
> > HA Candelstick Oscillator in AmiBroker;
> >
> > function ZeroLagTEMA( array, period )
> > {
> > TMA1 = TEMA( array, period );
> > TMA2 = TEMA( TMA1, period );
> > Diff = TMA1 - TMA2;
> > return TMA1 + Diff ;
> > }
> >
> > //////////// /////////
> > // Heikin-Ashi code
> > HaClose = (O+H+L+C)/4;
> > HaOpen = AMA( Ref( HaClose, -1 ), 0.5 );
> >
> > avp = Param("Up TEMA avg", 34, 1, 100 );
> > avpdn = Param("Dn TEMA avg", 34, 1, 100 );
> >
> > // Velvoort is using not original, but modified Heikin-Ashi close
> > HaClose = ( HaClose + HaOpen + Max( H, HaOpen ) + Min( L,
> HaOpen ) )/4;
> >
> > // up average
> > ZlHa = ZeroLagTEMA( HaClose, avp );
> > ZlCl = ZeroLagTEMA( ( H + L ) / 2, avp );
> > ZlDif = ZlCl - ZlHa;
> >
> > keep1 = Hold( HaClose >= HaOpen, 2 );
> > keep2 = ZlDif >= 0;
> > keeping = keep1 OR keep2;
> > keepall = keeping OR ( Ref( keeping, -1 ) AND ( C > O ) OR C >= Ref
> (
> > C, -1 ) );
> > keep3 = abs( C - O ) < ( H - L ) * 0.35 AND H >= Ref( L, -1 );
> > utr = keepall OR ( Ref( keepall, -1 ) AND keep3 );
> >
> > // dn average
> > ZlHa = ZeroLagTEMA( HaClose, avpdn );
> > ZlCl = ZeroLagTEMA( ( H + L ) / 2, avpdn );
> > ZlDif = ZlCl - ZlHa;
> >
> > keep1 = Hold( HaClose < HaOpen, 2 );
> > keep2 = ZlDif < 0;
> > keeping = keep1 OR keep2;
> > keepall = keeping OR ( Ref( keeping, -1 ) AND ( C < O ) OR C < Ref
> ( C,
> > -1 ) );
> > keep3 = abs( C - O ) < ( H - L ) * 0.35 AND L <= Ref( H, -1 );
> > dtr = keepall OR ( Ref( keepall, -1 ) AND keep3 );
> >
> > upw = dtr == 0 AND Ref( dtr, -1 ) AND utr;
> > dnw = utr == 0 AND Ref( utr, -1 ) AND dtr;
> >
> > Haco = Flip( upw, dnw );
> >
> >
> > if( ParamToggle( "Chart Type", "Price with color back|HACO wave" ) )
> > {
> > Plot( Haco, "Haco", colorRed );
> > }
> > else
> > {
> > Plot( C, "Close", colorBlack, ParamStyle( "Style", styleCandle,
> > maskPrice ) );
> > Plot( 1, "", IIf( Haco , colorPaleGreen, colorRose ), styleArea |
> > styleOwnScale, 0, 1 );
> > }--- In equismetastock@ yahoogroups. com, "maurizio_innamorat i"
> > <maurizio.innamorat i@> wrote:
> > >
> > > The above indicator is discussed in TASC December issue.
> unfortunately,
> > > the formula in MS code is not listed in Traders' Tips (given in
> article
> > > itself only available to subscribers) . Could somebody share the
> code
> > > for the above indicator witg us? Thanks.
> > >
> >
>


__._,_.___

Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___