Hi,

I suspect that my previous post was mistaken, and that you would in fact need 
to use a loop for the scenario being described. The problem is that PriceBought 
cannot reliably be calculated because ExRem cannot be used on Buy since you 
don't know in advance when the stops take effect.

Tomasz has a scale out example here:
http://www.amibroker.com/guide/h_pyramid.html

Try modifying it to change the exit threshold rather than scaling out.

Mike

--- In [email protected], "rinku" <boyri...@...> wrote:
>
> hi mike
> thanks for formula
> but it is applicable only long trades how can i also use it at short trades
> example if i sell a stock at 100 with 1% stop loss at 101 when prices drop 5% 
> at 95 stop should move to break even at 100
> thank you
> 
> --- In [email protected], "Mike" <sfclimbers@> wrote:
> >
> > Hi,
> > 1. You should not be passing expressions like "exitAtStop = True" for
> > parameters. Just pass True. The "=" part is for documentation only.
> > 2. You don't need a loop here. ApplyStop accepts dynamic stop values via
> > an array. Try the following (assuming that Buy does not have any
> > redundant signals - i.e. use ExRem):
> > PriceBought = ValueWhen(Buy, Close);
> > Threshold = Close >= 1.05 * PriceBought;
> > Threshold = Flip(Threshold, Sell);
> > 
> > Stop =  IIF(Threshold, 0, 1);
> > ApplyStop(stopTypeLoss, stopModePercent, Stop, 1, true);
> > 
> > Mike
> > --- In [email protected], "smrcek18" <smrcek18@> wrote:
> > >
> > >
> > >
> > >
> > >
> > >
> > > Anyone knows what is wrong with the code below?  It gives me strange
> > results. It ignores BreakevenTarget variable...
> > >
> > > BreakevenTarget = 5;
> > > priceatbuy=0;
> > > highsincebuy = 0;
> > >
> > > for( i = 0; i < BarCount; i++ )
> > > {
> > >    if( priceatbuy == 0 AND Buy[ i ] )
> > >      {
> > >        priceatbuy = BuyPrice[ i ];
> > >      }
> > >    if( priceatbuy > 0 )
> > >      {
> > >        highsincebuy = Max( High[ i ], highsincebuy );
> > >       if( highsincebuy >= ( 1 + BreakevenTarget * 0.01 ) * priceatbuy
> > )
> > >        {
> > >        // 5% target hit
> > >   sellpercent = 0;
> > >        } else {
> > >   sellpercent = 1;
> > >  }
> > >      }
> > > }
> > >
> > > ApplyStop(stopTypeLoss, stopModePercent,
> > sellpercent,exitatstop=True,volatile=True,ReEntryDelay=False);
> > >
> > >
> > > --- In [email protected], "smrcek18" smrcek18@ wrote:
> > > >
> > > > Hello,
> > > >
> > > > Can anyone help me with coding a stoploss that goes to break-even
> > point and stays there?
> > > >
> > > > Let's look at this simple code:
> > > >
> > > > BuyPrice = C;
> > > > SellPrice = C;
> > > >
> > > > Buy=C>Ref(H,-1);
> > > > Sell=C<Ref(L,-1);
> > > >
> > > > ApplyStop(stopTypeLoss, stopModePercent, 1, True);
> > > >
> > > > I would like that when the price reaches +5% the stoploss moves from
> > 1% to break-even point (zero+commision+spread) and stays there. Second
> > option is to have a stoploss that goes to break-even point after a
> > couple of days (lets say 10 days) and stays there.
> > > >
> > > > I was looking at similar example here
> > http://www.mail-archive.com/[email protected]/msg45865.html, but
> > it's too complicated for me :(
> > > >
> > > > I would appreciate if anyone could help me with that. Thanx.
> > > >
> > >
> >
>


Reply via email to