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

[EquisMetaStock Group] Re: System Tester - Zero Lag EMA Crossover with OPT



PureBytes Links

Trading Reference Links

--- In equismetastock@xxxxxxxxxxxxxxx, "Paul Harris" 
<paul_vicmar@xxx> wrote:
>
> Preston
> 
> So have had a chance to play around with the system test. And have
> thought of an improvement on your idea.
> 
> {ZLEMA(Zero Lag EMA1)}
> EMA1:= Mov(CLOSE,opt1,E);
> EMA2:= Mov(EMA1,opt1,E);
> Difference:= EMA1 - EMA2;
> ZeroLagEMA1:= EMA1 + Difference;
> {ZLEMA(Zero Lag EMA2)}
> EMA1:= Mov(CLOSE,opt2,E);
> EMA2:= Mov(EMA1,opt2,E);
> Difference:= EMA1 - EMA2;
> ZeroLagEMA2:= EMA1 + Difference;
> Cross(ZeroLagEMA1,ZeroLagEMA2)
> 
> All we have done is to create two separate ZLEMAs. One which would 
be
> a short term MA and the second one which would be a long term MA. 
And
> then to use the cross function to identify the buy when one crosses
> the other. 
> 
> Provisionally at the moment it looks to perform better than a 
normal
> MA crossover system. A more detailed inspection neeeded.
> 
> So I was thinking to combine this kind of MA system with the 
addition
> of another indicator by using the "AND" function. I was thinking of
> using a volume based indicator that measures volume and price 
movement
> i.e OBV or Price Volume Trend and maybe a momentum indicator like
> Chaikin´s Volatality. 
> 
> Preston, or anyone reading in, if you have advice about choice of
> indicators to choose or how to combine the indicators together, I
> would be most grateful.
> 
> Yours
> PAUL
> 
> 
> 
>  
> 
> 
> 
> --- In equismetastock@xxxxxxxxxxxxxxx, pumrysh <no_reply@> wrote:
> >
> > Paul,
> > 
> > Its a pleasure. We always have room for young talent to embrace 
what 
> > we can do with Metastock and to contribute to our future.
> > 
> > 
> > Preston  
> > 
> > 
> > 
> > 
> > --- In equismetastock@xxxxxxxxxxxxxxx, "Paul Harris" 
> > <paul_vicmar@> wrote:
> > >
> > > Preston
> > > 
> > > Success. It seems to work OK. It´s late here in Spain so I´m 
going 
> > to
> > > leave it to the morning. I´ll write back with some results and 
let 
> > you
> > > know.
> > > 
> > > If I haven´t said so already, very grateful for your patience.
> > > Hopefully we can put up something like the Zero Lag MACD 
> > Exploration
> > > and Expert so that others may benefit as well.
> > > Yours
> > > 
> > > PAUL
> > > 
> > > 
> > > 
> > > --- In equismetastock@xxxxxxxxxxxxxxx, pumrysh <no_reply@> 
wrote:
> > > >
> > > > Paul,
> > > > 
> > > > Try this:
> > > > 
> > > > {ZLEMA(Zero Lag EMA)}
> > > > EMA1:= Mov(CLOSE,opt1,E);
> > > > EMA2:= Mov(EMA1,opt2,E);
> > > > Difference:= EMA1 - EMA2;
> > > > ZeroLagEMA:= EMA1 + Difference;
> > > > Cross(ZeroLagEMA,Mov(ZeroLagEMA,opt3,E))
> > > > 
> > > > 
> > > > --- In equismetastock@xxxxxxxxxxxxxxx, "Paul Harris" 
> > > > <paul_vicmar@> wrote:
> > > > >
> > > > > Preston
> > > > > 
> > > > > So the exact formula for the ZLEMA(Zero Lag EMA) is as we 
have 
> > used 
> > > > > before.
> > > > > 
> > > > > Period:= Input("What Period",1,250,10);
> > > > > EMA1:= Mov(CLOSE,Period,E);
> > > > > EMA2:= Mov(EMA1,Period,E);
> > > > > Difference:= EMA1 - EMA2;
> > > > > ZeroLagEMA:= EMA1 + Difference;
> > > > > ZeroLagEMA
> > > > > 
> > > > > PAUL
> > > > > 
> > > > > 
> > > > > 
> > > > > 
> > > > > 
> > > > > 
> > > > > --- In equismetastock@xxxxxxxxxxxxxxx, pumrysh <no_reply@> 
> > wrote:
> > > > > >
> > > > > > Paul,
> > > > > > 
> > > > > > Post your exact formulas for me.
> > > > > > 
> > > > > > Preston
> > > > > > 
> > > > > > 
> > > > > > --- In equismetastock@xxxxxxxxxxxxxxx, "Paul Harris" 
> > > > > > <paul_vicmar@> wrote:
> > > > > > >
> > > > > > > Preston
> > > > > > > 
> > > > > > > OK had a look and couple of points arise.
> > > > > > > (ZLEMA=Zero Lag EMA)
> > > > > > > The Indicator builder does not allow me to change the 
> > period 
> > > > > funtion
> > > > > > > in the ZLEMA formula to, in our example, "opt1".
> > > > > > > 
> > > > > > > The other thing:
> > > > > > > "Cross(ZeroLagEMA,Mov(ZeroLagEMA,opt2,E))"
> > > > > > > 
> > > > > > > Whilst the first ZLEMA would be optimised, the second 
> > ZLEMA 
> > > > would 
> > > > > be
> > > > > > > an optimsed EMA of the ZLEMA.
> > > > > > > Would it not be possible to create two ZLEMA formulas, 
> > ZLEMA1
> > > > > (short)
> > > > > > > and ZLEMA2(long). I am sure that it is possible, the 
trick 
> > is 
> > > > how 
> > > > > to
> > > > > > > optimise them.
> > > > > > > 
> > > > > > > Gracias
> > > > > > > PAUL
> > > > > > > 
> > > > > > >   
> > > > > > > 
> > > > > > > 
> > > > > > > --- In equismetastock@xxxxxxxxxxxxxxx, pumrysh 
<no_reply@> 
> > > > wrote:
> > > > > > > >
> > > > > > > > Paul,
> > > > > > > > 
> > > > > > > > Sure. Look at Equis - CCI +100/-100 Crossover tester 
and 
> > > > check 
> > > > > > those 
> > > > > > > > buy and sell tabs.
> > > > > > > > 
> > > > > > > > In the original formula you would cange the input 
value 
> > to 
> > > > and 
> > > > > > opt# 
> > > > > > > > value like this:
> > > > > > > > 
> > > > > > > > Period:= opt1;
> > > > > > > > EMA1:= Mov(CLOSE,Period,E);
> > > > > > > > EMA2:= Mov(EMA1,Period,E);
> > > > > > > > Difference:= EMA1 - EMA2;
> > > > > > > > ZeroLagEMA:= EMA1 + Difference;
> > > > > > > > ZeroLagEMA
> > > > > > > > 
> > > > > > > > Then the Buy Order is:
> > > > > > > > 
> > > > > > > > Period:= opt1;
> > > > > > > > EMA1:= Mov(CLOSE,Period,E);
> > > > > > > > EMA2:= Mov(EMA1,Period,E);
> > > > > > > > Difference:= EMA1 - EMA2;
> > > > > > > > ZeroLagEMA:= EMA1 + Difference;
> > > > > > > > ZeroLagEMA
> > > > > > > > Cross(ZeroLagEMA,Mov(ZeroLagEMA,opt2,E))
> > > > > > > > 
> > > > > > > > Make it easy on yourself and run this with a non 
> > optimized 
> > > > sell 
> > > > > > then 
> > > > > > > > optimize the sell side.
> > > > > > > > 
> > > > > > > > Preston
> > > > > > > > 
> > > > > > > > 
> > > > > > > > 
> > > > > > > >  
> > > > > > > > --- In equismetastock@xxxxxxxxxxxxxxx, "Paul Harris" 
> > > > > > > > <paul_vicmar@> wrote:
> > > > > > > > >
> > > > > > > > > Preston
> > > > > > > > > 
> > > > > > > > > Thanxs for the walkthrough. I understand the logic 
of 
> > what 
> > > > > you 
> > > > > > have
> > > > > > > > > done but I would prefer to optimise on the 
original 
> > formula 
> > > > > of 
> > > > > > Zero
> > > > > > > > > Lag EMA instead of a moving average of Zero Lag 
EMA.
> > > > > > > > > The original formula that we have been using is 
the 
> > > > > following :
> > > > > > > > > 
> > > > > > > > > Period:= Input("What Period",1,250,10);
> > > > > > > > > EMA1:= Mov(CLOSE,Period,E);
> > > > > > > > > EMA2:= Mov(EMA1,Period,E);
> > > > > > > > > Difference:= EMA1 - EMA2;
> > > > > > > > > ZeroLagEMA:= EMA1 + Difference;
> > > > > > > > > ZeroLagEMA
> > > > > > > > > 
> > > > > > > > > I understand that the "mov" function will allow 
you to 
> > only 
> > > > > use 
> > > > > > the
> > > > > > > > > moving averages listed in Metastock i.e EXP, SIM, 
WEI, 
> > etc 
> > > > > and 
> > > > > > not 
> > > > > > > > in
> > > > > > > > > this case our Zero Lag EMA so would it be possible 
to 
> > use 
> > > > > > > > the "cross"
> > > > > > > > > function. So that the logic would be:
> > > > > > > > > Buy when the optimised Zero Lag EMA(shorter)
crosses 
> > over 
> > > > the 
> > > > > > > > optimised
> > > > > > > > > Zero Lag EMA(longer). And conversely sell when the 
> > longer 
> > > > > > crosses 
> > > > > > > > the
> > > > > > > > > shorter.
> > > > > > > > > 
> > > > > > > > > Yours
> > > > > > > > > PAUL
> > > > > > > > > 
> > > > > > > > > --- In equismetastock@xxxxxxxxxxxxxxx, pumrysh 
> > <no_reply@> 
> > > > > > wrote:
> > > > > > > > > >
> > > > > > > > > > Paul,
> > > > > > > > > > 
> > > > > > > > > > Let's see if we can provide some recap 
information 
> > for 
> > > > > anyone 
> > > > > > > > else 
> > > > > > > > > > wishing to take part in this. The indicators 
were 
> > listed 
> > > > by 
> > > > > > you 
> > > > > > > > in 
> > > > > > > > > > message 24953.
> > > > > > > > > > 
> > > > > > > > > > As I remember we had several indicators from 
which 
> > to 
> > > > take 
> > > > > > > > signals. We 
> > > > > > > > > > had a MACD that we made using the ZeroLag EMA 
and we 
> > also 
> > > > > > took 
> > > > > > > > the 
> > > > > > > > > > ZeroLag MACD and normalized it. 
> > > > > > > > > > 
> > > > > > > > > > Now we want to do an exploration and optimize 
some 
> > values 
> > > > > to 
> > > > > > see 
> > > > > > > > what 
> > > > > > > > > > performs best.
> > > > > > > > > > 
> > > > > > > > > > This was always a lot of fun but also consumed 
large 
> > > > > amounts 
> > > > > > of 
> > > > > > > > time. 
> > > > > > > > > > Even so you have to walk through it just to see 
how 
> > it 
> > > > > works. 
> > > > > > > > > > Optimization is not widely favored, so just 
realize 
> > that 
> > > > > > there 
> > > > > > > > are a 
> > > > > > > > > > lot of critics out there. There are no hardened 
> > rules to 
> > > > > > > > optimizing as 
> > > > > > > > > > any value is fair game but just realize that it 
is 
> > far 
> > > > > better 
> > > > > > to 
> > > > > > > > run 
> > > > > > > > > > your test on a smaller number of values and if 
you 
> > have 
> > > > to 
> > > > > > run 
> > > > > > > > your 
> > > > > > > > > > test several times thats quite alright.
> > > > > > > > > > 
> > > > > > > > > > You have chosen the ZeroLag EMA and a moving 
average 
> > > > > > crossover. 
> > > > > > > > Easy 
> > > > > > > > > > enough. First go into the system tester and 
first 
> > thing 
> > > > you 
> > > > > > > > notice is 
> > > > > > > > > > that there already are some test included. Let's 
> > take a 
> > > > > look 
> > > > > > at 
> > > > > > > > the 
> > > > > > > > > > Equis-moving average crossover...open it. Open 
the 
> > Buy 
> > > > > Order 
> > > > > > > > tag. What 
> > > > > > > > > > you will see is:
> > > > > > > > > > 
> > > > > > > > > > Mov(C,opt1,E) > Mov(C,opt2,E)
> > > > > > > > > > 
> > > > > > > > > > Next click on the Optimizations tag and look at 
the 
> > > > values 
> > > > > > > > assigned 
> > > > > > > > > > for opt1 and opt2.
> > > > > > > > > > 
> > > > > > > > > > In order to use the Zero Lag EMA all you will 
need 
> > to do 
> > > > is 
> > > > > > > > replace 
> > > > > > > > > > the Close or C with an assigned variable for the 
fml
> > > > ("Zero 
> > > > > > Lag 
> > > > > > > > EMA").
> > > > > > > > > > Like this:
> > > > > > > > > > 
> > > > > > > > > > A:= fml("Zero Lag EMA");
> > > > > > > > > > 
> > > > > > > > > > Now just reference it in your system test. Like 
this:
> > > > > > > > > > 
> > > > > > > > > > A:= fml("Zero Lag EMA");
> > > > > > > > > > A > Mov(A,opt1,E)
> > > > > > > > > > 
> > > > > > > > > > This will leave the original formula intact and 
you 
> > will 
> > > > be 
> > > > > > > > optimizing 
> > > > > > > > > > on the moving average of it. If you want to 
optimize 
> > the 
> > > > > > > > original 
> > > > > > > > > > formula you must include it in your test formula 
> > instead 
> > > > of 
> > > > > > just 
> > > > > > > > the 
> > > > > > > > > > fml call variable. Notice in the example above 
that 
> > all 
> > > > we 
> > > > > > did 
> > > > > > > > was 
> > > > > > > > > > place an opt# where a numeric value would 
normally 
> > go.
> > > > > > > > > > 
> > > > > > > > > > I would be careful about over-optimizing though. 
The 
> > > > > results 
> > > > > > are 
> > > > > > > > > > really going to be the result of how well the 
> > formula 
> > > > > > performs 
> > > > > > > > on a 
> > > > > > > > > > particular stock or group of stocks during a 
> > particular 
> > > > > > period 
> > > > > > > > of time 
> > > > > > > > > > and may not be an indication of how well future 
> > > > performance 
> > > > > > can 
> > > > > > > > be 
> > > > > > > > > > determined. Best to try the test on stocks of 
> > varying 
> > > > > > > > performance and 
> > > > > > > > > > use those as a benchmark. This is really where 
most 
> > > > > criticism 
> > > > > > > > comes 
> > > > > > > > > > from.
> > > > > > > > > > 
> > > > > > > > > > That should get you going, Let us know how it 
goes.
> > > > > > > > > > 
> > > > > > > > > > 
> > > > > > > > > > Preston  
> > > > > > > > > > 
> > > > > > > > > > 
> > > > > > > > > >  
> > > > > > > > > >    
> > > > > > > > > > 
> > > > > > > > > > --- In equismetastock@xxxxxxxxxxxxxxx, "Paul 
Harris" 
> > > > > > > > <paul_vicmar@> 
> > > > > > > > > > wrote:
> > > > > > > > > > >
> > > > > > > > > > > Some weeks ago Preston and I worked on an 
> > exploration 
> > > > and 
> > > > > > > > expert
> > > > > > > > > > > advisor for a Zero Lag MACD.
> > > > > > > > > > > So I was looking at using a Zero Lag EMA in a 
> > system 
> > > > > test, 
> > > > > > > > similar to
> > > > > > > > > > > a MA crossover. My only problem is that I want 
to 
> > use 
> > > > the 
> > > > > > > > optimiser 
> > > > > > > > > > to
> > > > > > > > > > > find the best time periods for Zero Lag EMA 
and I 
> > don´t 
> > > > > > know 
> > > > > > > > how to 
> > > > > > > > > > do it.
> > > > > > > > > > > I know I have to indentify the Zero Lag EMA as 
fml
> > > > ("Zero 
> > > > > > Lag 
> > > > > > > > EMA")but
> > > > > > > > > > > then how can I introduce the opt1 function?
> > > > > > > > > > > Some help would be greatly appreciated.
> > > > > > > > > > > Thanxs
> > > > > > > > > > > PAUL
> > > > > > > > > > >
> > > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> 
>Why shouldn't TEMA be used instead of DEMA (Zero Lag EMA) for even 
better results?

arun103



 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/equismetastock/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/equismetastock/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:equismetastock-digest@xxxxxxxxxxxxxxx 
    mailto:equismetastock-fullfeatured@xxxxxxxxxxxxxxx

<*> To unsubscribe from this group, send an email to:
    equismetastock-unsubscribe@xxxxxxxxxxxxxxx

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/