Australian (ASX) Stock Market Forum

Need help with this Amibroker AFL formula!

Joined
7 March 2011
Posts
1
Reactions
0
Good day traders
I am looking for some help with this Amibroker AFL language. I would like to verify this trading system with the “Automatic Analysis – Scan – Individual Backtest”
I have tried to make this trading system but for some reasons it does not do what I want.
For the “Buy signal” everything is ok.
My problems come from the “Sell signal”
Basically I have separated the “sell signal” in two sections.
First I would like to use a stoploss with “stoploss = Ref( HHV( Close – (1.5 * ATR(14) ) , 15 ) , -1 );” Where the ATR(15) is the value of the day before I bought. Actually it does not do that and I do not know how to do it!!!
Second part is I would like to reach my target “selltarget = ( ( ( ATR(14) / BuyPrice ) * 1.2 ) + 1 ) * BuyPrice ;” where again the ATR(15) is the value of the day before I bought and the buyprice is the price that I paid for the stock. Again it does not do that and I do not know how to do it!!!

I have tried to modify the “settings”-“Trades”-“Sell price” but it did not change anything.
Is it because I have used the “OR”

Can you help me to get what I want?


TimeFrameSet(inWeekly);
weeklyCondition = StochD( 15, 5, 5 ) >= Ref( StochD( 15, 5, 5 ) , -1 ) AND StochD( 15, 3, 3 ) > 50;
TimeFrameRestore();


Buy = Cross ( EMA( Close , 4 ) , EMA( Close , 9 ) )
AND TimeFrameExpand(weeklyCondition, inWeekly)
AND Close > 10 AND Close < 25
AND MA( Volume , 21 ) > 4000
AND Volume > 3000;

Stoploss = Ref( HHV( Close - (1.5 * ATR(14)) , 15 ) , -1 );
Selltarget = ( ( ( ATR(14) / BuyPrice ) * 1.2 ) + 1 ) * BuyPrice ;

Sell = Low < Stoploss; SellPrice = Stoploss OR High > Selltarget; SellPrice = Selltarget;
 
Stoploss = Ref( HHV( Close - (1.5 * ATR(14)) , 15 ) , -1 );
Selltarget = ( ( ( ATR(14) / BuyPrice ) * 1.2 ) + 1 ) * BuyPrice ;

Sell = Low < Stoploss; SellPrice = Stoploss OR High > Selltarget; SellPrice = Selltarget;

G'day,

I suggest:

StopTriggered = Low <= Stoploss;
TargetMet = High >= Selltarget;

Sell = StopTriggered or TargetMet;

// If StopLoss was triggered then
// SellPrice = Stoploss
// else
// SellPrice = Selltarget
//
SellPrice = IIf(StopTriggered, Stoploss, Selltarget);


Please test this before using.
 
Top