[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:
>
> AHA.....So the DEMA is the same as the Zero Lag EMA, at least as 
far
> as my system test is concerned(profit for both systems returned
> exactly the same number - down to the last decimal point) 
> 
> PAUL
> 
> --- In equismetastock@xxxxxxxxxxxxxxx, pumrysh <no_reply@> wrote:
> >
> > Paul,
> > 
> > Works for me!
> > 
> > If you want to add a touch of volume why not use a volume 
adjusted 
> > moving average instead of the exponential? Its quick and simple.
> > 
> > Playing around with moving averages can be a lot of fun. In the 
end 
> > though I think you will need to weigh the value and benefit of 
the 
> > exercise. Always keep in mind that lag is the enemy. It should 
be 
> > minimized if the MA is to be of any value. 
> > 
> > You should also consider if the formula can be written any 
> > differently. What happens when we compare the Zero Lag to a DEMA?
> > 
> > Enjoy yourself,
> > 
> > Preston
> >  
> > 
> > --- In equismetastock@xxxxxxxxxxxxxxx, "Paul Harris" 
> > <paul_vicmar@> 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
> > > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>




 
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/