Hi, i am new to afl coding, I created trading system with ichimoku cloud, it have error. please help me to solve it.
error,
- plotshapes not coming in actual position, please check the screen shoot. and extra signals are coming, its not available in the trading backtest result.
This is the code ,
//HENKIN-ASHI-START******//
SetChartOptions(0,chartShowArrows|chartShowDates);
HACLOSE=(O+H+L+C)/4;
HaOpen = AMA( Ref( HaClose, -1 ), 0.5 );
HaHigh = Max( H, Max( HaClose, HaOpen ) );
HaLow = Min( L, Min( HaClose, HaOpen ) );
PlotOHLC( HaOpen, HaHigh, HaLow, HaClose, "" + Name(), colorBlack, styleCandle | styleNoLabel );
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) Vol " +WriteVal( V, 1.0 ) +" {{VALUES}}", HaOpen, HaHigh, HaLow, HACLOSE, SelectedValue( ROC( HaClose, 1 )) ));
//HENKIN ASHI END******//
//POSITIN-SIZING-START******//
SetTradeDelays(0,0,0,0);
SetPositionSize(500,spsshares);
//POSITIN-SIZING-END******//
//TIME-SETTING-START******//
FirstTradeTime = 091500; // Earliest time to take a trade
LastTradeTime = 150000; // Latest time to take new trades
ExitAllPositionsTime = 151500; // Exit all trades
TimeOK= TimeNum() >= FirstTradeTime AND TimeNum() <= LastTradeTime;
//TIME-SETTING-END******//
//ICHIMOKU-START******//
_section_begin("ichimoku");
// Parameters
tenkan_p = Param("Tenkan-sen Period", 3, 2, 200, 1, 0);
//tenkan_p = Optimize("Tenkan-sen Period", 3, 2, 40, 1);
tenkan_c = paramcolor("Tenkan-sen Color", colorblue);
tenkan_s = paramstyle("Tenkan-sen Style", styleline | stylethick);
kijun_p = Param("Kijun-sen Period", 12, 2, 200, 1, 0);
//kijun_p = Optimize("Kijun-sen Period", 12, 2, 50, 1);
kijun_c = paramcolor("Kijun-sen Color", colorred);
kijun_s = paramstyle("Kijun-sen Style", styleline | stylethick);
senkou_a_c = paramcolor("Senkou Span A Color", colorBrightGreen);
senkou_a_s = paramstyle("Senkou Span A Style", styleline | stylethick);
senkou_b_p = Optimize("Senkou Span B Period", 26, 2, 26, 1);
senkou_b_c = paramcolor("Senkou Span B Color", colorpink);
senkou_b_s = paramstyle("Senkou Span B Style", styleline | stylethick);
senkou_p = Optimize("Sekou Displacement", 13, 0, 50, 1);
kumo_a_c = paramcolor("Kumo A Color", colorblend(senkou_a_c, colorwhite, 0.6));
kumo_b_c = paramcolor("Kumo B Color", colorblend(senkou_b_c, colorwhite, 0.4));
kumo_s = paramstyle("Kumo Style", stylecloud, styleCloud);
chikou_p = Optimize("Chikou Displacement (-ve)", 13, 2, 50, 1);
chikou_c = paramcolor("Lagging Color", colorgreen);
chikou_s = paramstyle("Lagging Style", styleline | stylethick);
chikou_p *= -1;
chikou_a = HACLOSE;
// Calculations
TenkanSen = (hhv(HaHigh, tenkan_p) + llv(HaLow, tenkan_p)) / 2;
KijunSen = (hhv(HaHigh, kijun_p) + llv(HaLow, kijun_p)) / 2;
SenkouSpanA = (TenkanSen + KijunSen) / 2;
SenkouSpanB = (hhv(HaHigh, senkou_b_p) + llv(HaLow, senkou_b_p)) / 2;
kumo_c = iif(SenkouSpanA > SenkouSpanB, kumo_a_c, kumo_b_c);
// Plots
plot(TenkanSen,"Tenkan-sen", tenkan_c, tenkan_s);
plot(KijunSen, "Kijun-sen", kijun_c, kijun_s);
plot(SenkouSpanA, "Senkou Span A", senkou_a_c, senkou_a_s, 0, 0, senkou_p);
plot(SenkouSpanB, "Senkou Span B", senkou_b_c, senkou_b_s, 0, 0, senkou_p);
plot(chikou_a, "ChikouSpan", chikou_c, chikou_s, 0, 0,chikou_p);
plotohlc(SenkouSpanA, SenkouSpanA, SenkouSpanB, SenkouSpanB, "Kumo", kumo_c, kumo_s, 0, 0, senkou_p);
_section_end();
//ICHIMOKU-END**//
//RSI-START******//
RSip = Param("Rsi_p",7,5,50,1);
OverBrought = Param("OverBrought_R",60,50,100,5);
Oversold = Param("Oversold_R",40,5,50,5);
RSIS = Param("RSIS",60,5,100,5);
RSIC = Param("RSIC",45,5,100,5);
//RSI-END**//
//CONDITION-START********//
C01 = Cross(KijunSen,TenkanSen);
C02 = Cross(TenkanSen,KijunSen);
C03 = Flip(C01,C02);
C04 = Flip(C02,C01);
C05 = chikou_a>SenkouSpanA;
C06 = chikou_a<SenkouSpanA;
C07 = chikou_a>SenkouSpanB;
C08 = chikou_a<SenkouSpanB;
C12 = Cross(SenkouSpanA,chikou_a);
C13 = Cross(chikou_a,SenkouSpanA);
C16 = HaClose > Ref(SenkouSpanB,-13);
C17 = HaClose < Ref(SenkouSpanB,-13);
C18 = Cross(HaHigh,Ref(TenkanSen,-1));
C19 = Cross(HaLow,Ref(KijunSen,-1));
C20 = Cross(HaLow,Ref(TenkanSen,-1));
C21 = Cross(HaHigh,Ref(KijunSen,-1));
C22 = TenkanSen > Ref(TenkanSen,-1);
C23 = TenkanSen < Ref(TenkanSen,-1);
C24 = KijunSen > Ref(KijunSen,-1);
C25 = KijunSen < Ref(KijunSen,-1);
C26 = C22 OR C24;
C27 = C23 OR C25;
C28 = HaClose < ValueWhen(C01,TenkanSen);
C29 = HaClose > ValueWhen(C02,TenkanSen);
//PlotShapes(IIf(C12, shapeStar , shapeNone),colorPink, 0,L, Offset=-45);
//PlotShapes(IIf(C13, shapeStar , shapeNone),colorGold, 0,H, Offset= 45);
IBUYcontinue = Flip(C18,C19);
SELLContinue = Flip(C19,C18);
SHORTContinue = Flip(C20,C21);
COVERContinue = Flip(C21,C20);
ICBuy = C16 AND C26 AND RSI(RSip)>OverBrought;
ICSell = C19 AND C03 AND C28;
ICShort = C17 AND C27 AND RSI(RSip)<Oversold;
ICCover = C18 AND C29 AND C04 ;
Buy = ICBuy AND IBUYcontinue AND TimeOK;
Sell = ICSell AND SELLContinue OR TimeNum() >= ExitAllPositionsTime;
Short= ICShort AND SHORTContinue AND TimeOK;
Cover= ICCover AND COVERContinue OR TimeNum() >= ExitAllPositionsTime;
Buy = Ref(Buy,-1);
Sell = Ref(Sell,-1);
Short = Ref(Short,-1);
Cover = Ref(Cover,-1);
Buy = ExRem(Buy,Sell);
Sell= ExRem(Sell,Buy);
Short= ExRem(Short,Cover);
Cover= ExRem(Cover,Short);
BuyPrice = ValueWhen(Buy,HaOpen);
SellPrice = ValueWhen(Sell,HaOpen);
ShortPrice = ValueWhen(Short,HaOpen);
CoverPrice = ValueWhen(Cover,HaOpen);
PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorGreen, 0, HaLow, Offset=-40);
PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorLime, 0,HaLow, Offset=-50);
PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorWhite, 0,HaLow, Offset=-45);
PlotShapes(IIf(Sell, shapeDownArrow, shapeNone),colorGreen, 0,HaHigh, Offset=-65);
PlotShapes(IIf(Short, shapeSquare, shapeNone),colorRed, 0, HaHigh, Offset=40);
PlotShapes(IIf(Short, shapeSquare, shapeNone),colorOrange, 0,HaHigh, Offset=50);
PlotShapes(IIf(Short, shapeDownArrow, shapeNone),colorWhite, 0,HaHigh, Offset=-45);
PlotShapes(IIf(Cover, shapeUpArrow, shapeNone),colorRed, 0,HaLow, Offset=-65);
_SECTION_END();
//CONDITION-END********//
Error 2) I coded for Short and cover signal (condition given in screen short) similarly for Buy and sell.
Please help me for solving this error.