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

[amibroker] Re: custom backtester and sigscalein



PureBytes Links

Trading Reference Links

Hi,

The below is the complete code I use as the custom backtestor.
Currently, the exit signal exits only one entry signal of a given ticker.


I would like all open positions of a single ticker to be closed by a
single exit signal.

Thanks.


SetCustomBacktestProc("");
if(  Status("action") == actionPortfolio )
{  
   bo = GetBacktesterObject();  

   bo.PreProcess(); // Initialize backtester

   for(bar=0; bar<BarCount; bar++)
   {
        for ( sig=bo.GetFirstSignal(bar); sig; sig=bo.GetNextSignal(bar) )
        {    
           if ((sig.IsExit() ) && sig.Price != -1 )
           {
            // Exit Signal
               bo.ExitTrade(bar,sig.symbol,sig.Price);               
         }
      }


    // update stats after closing trades
    bo.UpdateStats(bar, 1 );
      
     bContinue = True;  
   
     for (sig=bo.GetFirstSignal(bar); sig AND bContinue;
sig=bo.GetNextSignal(bar))
     {
      if ((sig.IsEntry() OR sig.IsScale()*0) AND sig.Price != -1 )
      { 
           // Entry Signal 
            if(
bo.EnterTrade(bar,sig.symbol,sig.IsLong(),sig.Price,sig.PosSize,sig.PosScore,sig.RoundLotSize)
== 0 ) 
             { bContinue = False; }
       
      }
    }
     bo.UpdateStats(bar,1);
     bo.UpdateStats(bar,2);  
   }
   bo.PostProcess(); 
} 




--- In amibroker@xxxxxxxxxxxxxxx, Graham <kavemanperth@xxxx> wrote:
>
> have you provided a for loop to go through the signals
> 
> On 11/1/05, dbirru <dbjunk@xxxx> wrote:
> >
> > Hi,
> >
> > I don't seem to get sigscalein work with low-level backtester.
> >
> > I use the following code as exit in my custom backtestor.
> > But, it only exits one of the entry signals. All entry signals that
> > came as a result of multiple  SigScaleIn are not exited by this code.
> >
> > I appreciate it if someone could tell me what I am missing?
> >
> > Thanks.
> > Dan.
> >
> > if ((sig.IsExit() ) && sig.Price != -1 )
> >           {
> >           bo.ExitTrade(bar,sig.symbol,sig.Price);
> >         }
> >
> >
> >
> >
> >
> >
> > Please note that this group is for discussion between users only.
> >
> > To get support from AmiBroker please send an e-mail directly to
> > SUPPORT {at} amibroker.com
> >
> > For other support material please check also:
> > http://www.amibroker.com/support.html
> >
> >
> > Yahoo! Groups Links
> >
> >
> >
> >
> >
> >
> >
> 
> 
> --
> Cheers
> Graham
> AB-Write >< Professional AFL Writing Service
> Yes, I write AFL code to your requirements
> http://e-wire.net.au/~eb_kavan/ab_write.htm
>






------------------------ Yahoo! Groups Sponsor --------------------~--> 
Try Online Currency Trading with GFT. Free 50K Demo. Trade 
24 Hours. Commission-Free. 
http://us.click.yahoo.com/RvFikB/9M2KAA/U1CZAA/GHeqlB/TM
--------------------------------------------------------------------~-> 

Please note that this group is for discussion between users only.

To get support from AmiBroker please send an e-mail directly to 
SUPPORT {at} amibroker.com

For other support material please check also:
http://www.amibroker.com/support.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/