PureBytes Links
Trading Reference Links
|
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@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
> > > > > > > > > > >
> > > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>
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/
|