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

Re: [amibroker] Re: Trailing sttops - To Nikku



PureBytes Links

Trading Reference Links


Hello

I'm sorry I can't help you here - I am unfamiliar with the portfolio 
level backtesting in AB.  When you say you aren't sure of the 
'definition' of 'buyprice', I assume you are referring to the AB 
function. Again, I can't really help you there. I have used this stop 
system on single stocks and it works fine. I noticed that you have 
altered the original code, which is


 buyat=BuyPrice;
 MinGainPct=.04;
 trailPct=15;
 pct=IIf((MA(C,2)-buyat)/buyat > MinGainPct,trailPct,9999);
 ApplyStop(stopTypeTrailing,stopModeRisk,pct,1,True);

I am not sure if replacing the buyat variable with the buyprice variable 
makes a difference - it seems like it shouldn't. In fact I can see how 
your code isn't different from the one I posted. Perhaps your results 
have something to do with the portfolio mode. Sorry I can't be of more 
help. I am sure you are a more advanced AB coder than I, but just in 
case, make sure all your SETTINGS are correct - I find that unexplained 
results in AA almost always have something to do with incorrect settings.

dbirru wrote:

>
> Hi,
>
> I tried the code provided below for  long positions in a portifolio
> mode and it did not trigger exists  as much as I expected. This is
> assuming that the variable 'BuyPrice' is the actual buy price.
> But, I am not sure if 'BuyPrice' represents  the actual buy price used
> by the backtester. I could not find info that clearly defines what
> 'BuyPrice' exactly is.
>
> pct=IIf((MA(C,2)-BuyPrice)/BuyPrice > 0.5,5,9999);
> ApplyStop(stopTypeTrailing,stopModeRisk,pct,1,True);
>
>
> --- In amibroker@xxxxxxxxxxxxxxx, nikku <nikku@xxxx> wrote:
> >
> > Hi Clement
> >
> > I wish I could take credit for this, but as I mentioned, I can't - it
> > was given to me by Walt who frequents this board.
> >
> > Yes, this stop is easily adaptable for short positions. Here is the
> > code. See the pct line for the changes.
> >
> > shortat=shortPrice;
> > MinGainPct=.04;
> > trailPct=15;
> > pct=IIf((shortat-MA(C,2))/shortat > MinGainPct,trailPct,9999);
> > ApplyStop(stopTypeTrailing,stopModeRisk,pct,1,True);
> >
> > Re: your question about the stop changing throughout the trading day, I
> > am not sure how it would respond if applied to intraday data as I use
> > only EOD data myself. However, I don't /think/ it would matter - the
> > code should behave in the same manner. Someone else who is more
> familiar
> > with the 'shortprice' world may be able to help you if you run into
> > problems. Good luck with it.
> >
> >
> > Clement Chin wrote:
> >
> > > Hi, Nikku,
> > >
> > > Can this same stop be applied to Short Sell position? Do I need to
> change
> > > anything?
> > >
> > > Since the stop is using current Close in calculation, I assume it will
> > > change through out the trading day. Am I right?
> > >
> > > Thanks in advance. This is a good piece of work.
> > >
> > > C.C.
> > >
> > >
> > >
> > > -----Original Message-----
> > > From: nikku [mailto:nikku@x...]
> > > Sent: Wednesday, February 02, 2005 1:45 AM
> > > To: amibroker@xxxxxxxxxxxxxxx
> > > Subject: Re: [amibroker] Trailing sttops
> > >
> > >
> > > Hello
> > >
> > > The answer involves an analysis of this part of the code - keep it in
> > > mind for what follows
> > >
> > > *pct=IIf((MA(C,2)-buyat)/buyat > MinGainPct,trailPct,9999);*
> > >
> > > MinGainPct is expressed as .04 because of the* (MA(C,2)-buyat)/buyat*
> > > element of this line of code. Let's say that the close for the
> past two
> > > days has been $10.00. We have bought at $10.50. The calculation for
> > > 'pct' would then be
> > >
> > > MA(C,2)-buyat/buyat
> > >
> > > ($10-$10.5)/$10.5 =  app.-0.0476
> > >
> > > At this moment,
> > >
> > > *(MA(C,2)-buyat)/buyat IS NOT GREATER THAN MinGainPct
> > >
> > > *(Remember, MinGainPct has been set at 0.04; -0.476 is clearly not
> > > greater than 0.04)
> > > *
> > > *so the 'pct' variable will feed the trailing stop with 9999; in other
> > > words, the trailing stop will kick in when 9999% of the profit has
> been
> > > given back - this is just a way to say 'The trailing stop is NOT
> > > activated'.
> > >
> > > Now let's say the closing price goes up and one day  we close at
> $12.20;
> > > the day before this, the close was $11.80. The MA(C,2) in this
> case will
> > > be $12.00. If we insert this new number into the formula, we get
> > >
> > > MA(C,2)-buyat/buyat
> > >
> > > ($12-$10.5)/$10.5 =  app.0.143
> > >
> > > At this moment,
> > >
> > > *(MA(C,2)-buyat)/buyat IS GREATER THAN MinGainPct (which is 0.04)
> > >
> > > *Now the 'pct' variable will feed the trailing stop with the
> 'trailpct'
> > > value because the conditions for activation of the trailing stop have
> > > been met  - that is,
> > > (MA(C,2)-buyat)/buyat [which now equals 0.143] has been calculated
> to be
> > > greater than the MinGainPct (0.04).
> > >
> > > Of course you can change the value of MinGainPct to suit your needs.
> > >
> > > Trailstop does signify the amount you allow the trade to retrace (once
> > > it gets past the MinGainPct threshold) before exiting.
> > >
> > > Hope this helps
> > >
> > >
> > > Andrew Z wrote:
> > >
> > > > Hey all,
> > > >
> > > > > Hello
> > > > > Walt was kind enough to provide me with the following code - I
> hope he
> > > > > doesn't mind if I share it around. This is something you can
> try, and
> > > > > maybe you can adapt it if it isn't providing exactly what you
> need.
> > > > > Basically, it takes care of the trailing stop which kicks in after
> > > > > *MinGainPct* amount of profit has been reached. The trailing
> stop will
> > > > > close the position after *trailPct* of the profit beyond the
> > > *MinGainPct
> > > > > *profit has been given back I think you have to set up the
> hard stop
> > > > > 'behind the entry' separately, but that shouldn't be a problem.
> > > > >
> > > > > buyat=BuyPrice;
> > > > > MinGainPct=.04;
> > > > > trailPct=15;
> > > > > pct=IIf((MA(C,2)-buyat)/buyat > MinGainPct,trailPct,9999);
> > > > > ApplyStop(stopTypeTrailing,stopModeRisk,pct,1,True);
> > > >
> > > > Being a newbie, i'm a little confused by this. Why are
> MinGainPct and
> > > > trailPct not expressed in the same manner? Does .04 signify 4%?
> If so,
> > > > why not express it as a whole number like trailPct?
> > > >
> > > > Also, does trailPct signify the % amount you allow to retrace before
> > > > exiting?
> > > >
> > > > Thanks,
> > > >
> > > > Andrew.
> > > >
> > > >
> > > > Check AmiBroker web page at:
> > > > http://www.amibroker.com/
> > > >
> > > > Check group FAQ at:
> > > > http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > > >
> > > >
> > > >
> ------------------------------------------------------------------------
> > > > *Yahoo! Groups Links*
> > > >
> > > >     * To visit your group on the web, go to:
> > > >       http://groups.yahoo.com/group/amibroker/
> > > >      
> > > >     * To unsubscribe from this group, send an email to:
> > > >       amibroker-unsubscribe@xxxxxxxxxxxxxxx
> > > >     
> <mailto:amibroker-unsubscribe@xxxxxxxxxxxxxxx?subject=Unsubscribe>
> > > >      
> > > >     * Your use of Yahoo! Groups is subject to the Yahoo! Terms of
> > > >       Service <http://docs.yahoo.com/info/terms/>.
> > > >
> > > >
> > >
> > > --
> > > The majority meet with failure because of their lack of persistence in
> > > creating new plans to take the place of those which fail.
> > >
> > >
> > >
> > >
> > >
> > > Check AmiBroker web page at:
> > > http://www.amibroker.com/
> > >
> > > Check group FAQ at:
> > > http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > > Yahoo! Groups Links
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > Check AmiBroker web page at:
> > > http://www.amibroker.com/
> > >
> > > Check group FAQ at:
> > > http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > >
> > >
> > > *Yahoo! Groups Sponsor*
> > > ADVERTISEMENT
> > >
> > >
> > > *Yahoo! Groups Links*
> > >
> > >     * To visit your group on the web, go to:
> > >       http://groups.yahoo.com/group/amibroker/
> > >       
> > >     * To unsubscribe from this group, send an email to:
> > >       amibroker-unsubscribe@xxxxxxxxxxxxxxx
> > >     
> <mailto:amibroker-unsubscribe@xxxxxxxxxxxxxxx?subject=Unsubscribe>
> > >       
> > >     * Your use of Yahoo! Groups is subject to the Yahoo! Terms of
> > >       Service <http://docs.yahoo.com/info/terms/>.
> > >
> > >
> >
> > --
> > The majority meet with failure because of their lack of persistence
> in creating new plans to take the place of those which fail.
>
>
>
>
>
> Check AmiBroker web page at:
> http://www.amibroker.com/
>
> Check group FAQ at: 
> http://groups.yahoo.com/group/amibroker/files/groupfaq.html
>
>
> *Yahoo! Groups Sponsor*
> ADVERTISEMENT
>
>
> *Yahoo! Groups Links*
>
>     * To visit your group on the web, go to:
>       http://groups.yahoo.com/group/amibroker/
>        
>     * To unsubscribe from this group, send an email to:
>       amibroker-unsubscribe@xxxxxxxxxxxxxxx
>       <mailto:amibroker-unsubscribe@xxxxxxxxxxxxxxx?subject=Unsubscribe>
>        
>     * Your use of Yahoo! Groups is subject to the Yahoo! Terms of
>       Service <http://docs.yahoo.com/info/terms/>.
>
>

-- 
The majority meet with failure because of their lack of persistence in creating new plans to take the place of those which fail. 







------------------------ Yahoo! Groups Sponsor --------------------~--> 
Has someone you know been affected by illness or disease?
Network for Good is THE place to support health awareness efforts!
http://us.click.yahoo.com/Rcy2bD/UOnJAA/cosFAA/GHeqlB/TM
--------------------------------------------------------------------~-> 

Check AmiBroker web page at:
http://www.amibroker.com/

Check group FAQ at: http://groups.yahoo.com/group/amibroker/files/groupfaq.html 
Yahoo! Groups Links

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

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

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