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

[amibroker] Help required!


  • Date: Sun, 27 Dec 2009 16:51:22 -0000
  • From: "mozpet2001" <mozpet2001@xxxxxxxxx>
  • Subject: [amibroker] Help required!

PureBytes Links

Trading Reference Links

The following is a simple backtester code for illustrative purposes which is meant to enter on the close being greater than the 20 period moving average and exiting on a trailing stop based on the high minus 3.0 times ATR. Basically I'm trying to test the effectiveness of an ATR stop which I've embedded in the backtester code. I've plotted the trailing stop as an indicator over the price chart but when I run a backtest of the code below, the exits don't match up with the trailing stop indicator. In fact I'm getting exits one and two bars after entry. I really don't understand what is going on as I'm not that experienced at writing AFL code. Can someone with coding experience please help?

Thanks

Maurice

Code:

SetBarsRequired(10000,10000); 
SetFormulaName("Weekly SMA System with ATR stop"); 
SetTradeDelays( 1, 1, 1, 1 ); 
SetOption( "initialequity", 100000 ); 
SetOption( "PriceBoundChecking", 1 ); 
SetOption( "CommissionMode", 2 ); 
SetOption( "CommissionAmount", 32.95 ); 
SetOption( "UsePrevBarEquityForPosSizing", True ); 
SetOption("MaxOpenPositions", 20); // 
SetOption( "AllowPositionShrinking", False);
SetOption("AllowSameBarExit", False);

ATRLevel = 3*ATR(20);

Buy = C>MA(C,30);

PositionSize=-10;// invest 10% of portfolio equity in single trade

Sell = 0;
trailARRAY = Null;
trailstop = 0;

for( i = 1; i < BarCount; i++ )
{

if( trailstop == 0 AND Buy[ i ] )
{
trailstop = H[ i ]- ATRLevel[ i ];
}
else Buy[ i ] = 0; // remove excess buy signals

if( trailstop > 0 AND Low[ i ] < trailstop )
{
Sell[ i ] = 1;
SellPrice[ i ] = trailstop;
trailstop = 0;
}

if( trailstop > 0 )
{
trailstop = Max( H[ i ]- ATRLevel[ i ], trailstop );
trailARRAY[ i ] = trailstop;
}

}

Sell = trailARRAY;

Buy = ExRem(Buy,Sell);
Sell = ExRem(Sell,Buy);




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

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