TA, thanks for the help.
I'm having a problem with this line:
bo.PostProcess();
This is the error I'm getting: "Error 18 COM object variable is not
initialized or has invalid type (valid COM object handle required)
Wood
--- In amibroker@xxxxxxxxxxxxxxx,
"ta" <tagroups@xxx> wrote:
>
> You need to use Custom Backtester as follows:
>
>
>
> MaxBuys = 5;
>
> SetBacktestMode( backtestRegularRaw2 );
>
> SetCustomBacktestProc("");
>
> if ( Status( "action" ) == actionPortfolio )
>
> {
>
> bo = GetBacktesterObject();
>
> bo.PreProcess();
>
>
>
> for ( sig = bo.GetFirstSignal( i ); sig; sig =
> bo.GetNextSignal( i ) )
>
> {
>
> if ( sig.IsEntry() )
>
> {
>
> // this handles limiting of number of order
> per day
>
> CanEnter = False;
>
> if ( CntBuys <= MaxBuys )
>
> {
>
>
> bo.EnterTrade( i, sig.Symbol, True, sig.Price, sig.PosSize, sig.PosScore,
> RoundLotSize = 1);
>
> CanEnter =
> True;
>
> CntBuys++;
>
> }
>
>
>
> if ( ! CanEnter )
>
> sig.Price =
> -1;
>
> }
>
> }
>
> bo.ProcessTradeSignals( i );
>
> }
>
> bo.PostProcess();
>
> }
>
>
>
> From: amibroker@xxxxxxxxxxxxxxx
[mailto:amibroker@xxxxxxxxxxxxxxx]
On Behalf
> Of woodshedder_blogspot
> Sent: Thursday, September 24, 2009 8:25 PM
> To: amibroker@xxxxxxxxxxxxxxx
> Subject: [amibroker] Help Limiting number of positions added per day
>
>
>
>
>
> Greetings group.
>
> I want to limit the number of positions a system will take on any given
day.
>
>
> For example, if a system can handle 20 max positions, I would like it to
> only take on 5 new positions a day (assuming there are more than 5 valid
> signals per day) until it arrives at 20 positions, rather than taking on
all
> available positions on day 1.
>
> Thanks for your help.
>