Ken, You cannot change the .01 value. The .01 is simply a multiplier to convert the "Amount" parameter from its whole value to its fractional percentage value (e.g. from 15 to .15).
The parameter is expressed as a whole for convenience, but must be converted to a fraction when performing calculations. PU and PD are the target prices and are simply the current peak/trough minus/plus an additional "Amount" percent of the current peak/trough. To calculate the "Amount" percent, he multiplies Amount by .01. Mike --- In [email protected], Ken Close <[EMAIL PROTECTED]> wrote: > > Thanks TJ, David, Graham: > > Now, if you care to explain something else about the Trader's Tip code for > "The ZigZag Trend Indicator" > > These are the two important lines which help determine that the Zig has > moved a "confirming amount" in the new trend direction, and thus you can > switch to the "other side" of the ZigZag movement. > > PU = tr + 0.01 * abs(tr)*amount; > > PD = pk - 0.01 * abs(pk)*amount; > > Now, take the "factor" 0.01 and make it smaller. This has the effect of > moving the buy/sell arrows closer to the peak. The CAR of this "adjusted" > system will be higher than if you leave the original 0.01 factor in place. > Is it then "looking into the future"?? > > > > _____ > > From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf > Of Tomasz Janeczko > Sent: Thursday, October 30, 2008 6:25 PM > To: [email protected] > Subject: Re: [amibroker] The Theory of Zig and How to make it Work > > > Hello, > > Look here for example of how zig-zag is coded: > http://www.amibroker.com/library/detail.php?id=472 > > The meaning that it looks into the future is that > zig-zag requires certain number of bars (depending on threshold specified) > to find out the direction, once the threshold is reached it changes > PAST values. So in real-time trading you would not get those > signals that zig-zag generates until the price movement since last > peak/trough is bigger than threshold. > This is "after the fact" diagnosis, similar to what humans do when they > speak "if I bought one year ago I would be rich because I now see the > trend". > > Actually Zig-zag can be used for trading if only trading signals generated > by it > are DELAYED as much as it is necessary to confirm the movement in given > direction. > Exact code how to do this is given in Traders' Tips: > http://www.amibroker.com/members/traders/11-2003.html > > Best regards, > Tomasz Janeczko > amibroker.com > > ----- Original Message ----- > From: Ken Close <mailto:[EMAIL PROTECTED]> > To: [email protected] > Sent: Thursday, October 30, 2008 10:25 PM > Subject: [amibroker] The Theory of Zig and How to make it Work > > A friend asked me why he can not trade with the Zig indicator. > I answered: "Because it looks into the future." > He said, "What does that really mean?" > I said: "It looks into the future." > He said, "Huh". > > Can someone explain, without using the words "It looks into the future", why > the Zig indicator can not work. > How is it coded internally? What makes it work--plot that is?" > > I found some code on my hard drive from 2004 called "Zig Zag Safe to Use". > I will copy the code below. > Why does this code say that it is "Safe to Use"? > What do you look at, what does the several adjustment values do, that makes > it safe? > > Any explanations in english, that are easy to understand? > Will this code be safe to trade? > > Thanks, > Ken > ============================================================ > > array = Close; > amount = Param("Amount", 5, 1, 50, 0.5 ); > > adjust = Param("adjust",0.001,0.001,0.10,0.001); > > zz0 = Zig( array, amount ); > zz1 = Ref( zz0, -1 ); > zz2 = Ref( zz0, -2 ); > tr = ValueWhen(zz0 > zz1 AND zz1 < zz2, zz1); > pk = ValueWhen(zz0 < zz1 AND zz1 > zz2, zz1); > PU = tr + 0.01 * abs(tr)*amount; > PD = pk - 0.01 * abs(pk)*amount; > ZZT = IIf( array >= PU AND zz0 > zz1, 1, > > IIf( array <= PD AND zz0 < zz1, -1, 0 ) ); > ZZT = ValueWhen( ZZT != 0, ZZT ); > > // plot price bar chart > > Plot( Close, "Price", 1, styleLine ); > > // plot Zigzag and zigzag trend > > Plot( ZZT, "ZigZagTrend", colorRed, styleOwnScale ); > > Plot( zz0, "ZigZag line", colorBlue, styleThick ); > > // Plot the ribbon > > ribboncol= IIf( ZZT > 0, colorGreen, colorRed ); > > Plot( 2, "ZZT Ribbon", ribboncol, styleArea | styleOwnScale | styleNoLabel, > 0, 100 ); > > GraphXSpace = 10; > > Buy = Cover = Cross( ZZT, 0 ); > > Sell = Short = Cross( 0, ZZT ); > > // plot arrows > > PlotShapes( Buy + 2 * Sell, ribboncol, 0, IIf( Buy, L, H ), -30 ); >
