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

[amibroker] backtester Low-Level Interface and apply stop problem



PureBytes Links

Trading Reference Links

Greetings,
I've got a code like below - and have no idea what is wrong with it (probably some stupid mistake). Is this backtester interface code  correct ?
The important thing for me is applying stops inside the backteter's loop, otherwise i don't need this level of backtester.


CondBuy=...
CondShort=...
Buy=CondBuy ;
Short=CondShort; 
Sell=Short;
Cover=Buy;
BuyPrice=...
SellPrice=...
ShortPrice=SellPrice;
CoverPrice=BuyPrice;

ApplyStop(stopTypeLoss , stopModePoint, 50 ,1 ,True, 0 );

CurrentPos[0]=0;
MaxBuys = 1;
dnB = DateNum();
newDayB=Ref(dn,-1)!= dnB;
SetBacktestMode( backtestRegularRaw );
SetCustomBacktestProc("");
if ( Status( "action" ) == actionPortfolio )
{
bo = GetBacktesterObject();
bo.PreProcess();
cntBuys =0;
for ( i = 0; i < BarCount; i++ )
{
if(newDayB[i]==1)
cntBuys = 0;
CanEnter=False;
for ( sig = bo.GetFirstSignal( i ); sig; sig = bo.GetNextSignal( i ) )
{
if ( sig.IsLong() AND sig.IsEntry)
{		
bo.ExitTrade(i, sig.Symbol, sig.Price, 0 );
bo.EnterTrade( i, sig.Symbol, True, sig.Price, sig.PosSize,sig.PosScore,RoundLotSize = 1);
CanEnter = True;
}
else if (  NOT sig.IsLong() AND sig.IsEntry)//if signal short
{
bo.ExitTrade(i, sig.Symbol, sig.Price, 0 );
bo.EnterTrade( i, sig.Symbol, False, sig.Price, sig.PosSize,sig.PosScore,RoundLotSize = 1);			
CanEnter = True;
} 
if ( ! CanEnter ) 			
{
sig.Price = -1;
}
}
bo.HandleStops(i);
bo.UpdateStats(i,1);
bo.UpdateStats(i,2);
}
bo.PostProcess();
}




------------------------------------

**** IMPORTANT PLEASE READ ****
This group is for the discussion between users only.
This is *NOT* technical support channel.

TO GET TECHNICAL SUPPORT send an e-mail directly to 
SUPPORT {at} amibroker.com

TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
http://www.amibroker.com/feedback/
(submissions sent via other channels won't be considered)

For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/

Yahoo! Groups Links

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

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/amibroker/join
    (Yahoo! ID required)

<*> To change settings via email:
    amibroker-digest@xxxxxxxxxxxxxxx 
    amibroker-fullfeatured@xxxxxxxxxxxxxxx

<*> 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/