Heiken Ashi Based Accurate Buy Sell Arrow

Heiken Ashi Based Accurate Buy Sell Arrow.PNG
Heiken Ashi Based Accurate Buy Sell Arrow.PNG

//www.aflcode.com
SetChartOptions(2, chartWrapTitle);
 SetChartOptions(1,chartShowArrows|chartShowDates);
 SetChartOptions(2, chartWrapTitle);

 SetChartBkColor( ParamColor("background",colorBlack) ); 

 SetChartBkGradientFill( ParamColor("BgTop", colorBlack),

 ParamColor("BgBottom", colorBlack),ParamColor("titleblock",colorBlack));

 _SECTION_BEGIN("NICK MA Swing");
 SetBarsRequired(200,0);

 GraphXSpace = 5;
 SetChartOptions(0,chartShowArrows|chartShowDates);
 k = Optimize("K",Param("K",1.7,0.25,5,0.25),0.25,5,0.25) ;
 Per= Optimize("atr",Param("atr",7,3,20,1),3,20,1);
 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(), colorWhite, styleCandle | GetPriceStyle());
 j=Haclose;

 //================================================== ================================================== ===================
 //=========================Indicator================ ================================================== ============================
 f=ATR(14);

 rfsctor = WMA(H-L, Per);

 revers = k * rfsctor;

 Trend = 1; 
 NW[0] = 0; 


 for(i = 1; i < BarCount; i++)
 {
 if(Trend[i-1] == 1) 
 {
 if(j[i] < NW[i-1]) 
 {
 Trend[i] = -1; 
 NW[i] = j[i] + Revers[i]; 
 }
 else 
 {
 Trend[i] = 1;
 if((j[i] - Revers[i]) > NW[i-1])
 {
 NW[i] = j[i] - Revers[i]; 
 }
 else
 {
 NW[i] = NW[i-1];
 }
 } 
 }
 if(Trend[i-1] == -1) 
 {
 if(j[i] > NW[i-1]) 
 {
 Trend[i] = 1; 
 NW[i] = j[i] - Revers[i]; 
 }
 else 
 {
 Trend[i] = -1;
 if((j[i] + Revers[i]) < NW[i-1]) 
 {
 NW[i] = j[i] + Revers[i]; 
 }
 else
 {
 NW[i] = NW[i-1];
 }
 }
 }
 }

 //===============system================

 //Plot(NW, "", IIf(Trend == 1, 27, 4), 4);,
 Buy=Cover=Cross(j,nw);
 Sell=Short=Cross(nw,j);
 SellPrice=ValueWhen(Sell,C,1);
 BuyPrice=ValueWhen(Buy,C,1);
 Long=Flip(Buy,Sell);
 Shrt=Flip(Sell,Buy );
 _SECTION_END();

 /*acc = Param("Acceleration", 0.02, 0, 1, 0.001 );
 accm = Param("Max. acceleration", 0.2, 0, 1, 0.001 );
 Plot( SAR( acc, accm ), _DEFAULT_NAME(), ParamColor( "Color", colorCycle ), ParamStyle("Style", styleDots | styleNoLine, maskDefault | styleDots | styleNoLine ) );
 */

 //=================TITLE============================ ================================================== ==================
 _SECTION_BEGIN("Title");
 if( Status("action") == actionIndicator ) 
 (
 /*Title = EncodeColor(colorBlue)+ "NICK MA Swing System" + " - " + Name() + " - " + EncodeColor(colorRed)+ Interval(2) + EncodeColor(colorBlue) +
 " - " + Date() +" - "+"\n" +EncodeColor(colorBlue) +"Op-"+O+" "+"Hi-"+H+" "+"Lo-"+L+" "+
 "Cl-"+C+" "+ "Vol= "+ WriteVal(V)+"\n"+ */
 EncodeColor(colorLime)+
 WriteIf (Buy , " GO LONG / Reverse Signal at "+C+" ","")+
 WriteIf (Sell , " EXIT LONG / Reverse Signal at "+C+" ","")+"\n"+EncodeColor(colorBrightGreen)+
 WriteIf(Sell , "Total Profit/Loss for the Last Trade Rs."+(C-BuyPrice)+"","")+
 WriteIf(Buy , "Total Profit/Loss for the Last trade Rs."+(SellPrice-C)+"","")+
 WriteIf(Long AND NOT Buy, "Trade : Long - Entry price Rs."+(BuyPrice),"")+
 WriteIf(shrt AND NOT Sell, "Trade : Short - Entry price Rs."+(SellPrice),"")+"\n"+ 
 WriteIf(Long AND NOT Buy, "Current Profit/Loss Rs."+(C-BuyPrice)+"","")+
 WriteIf(shrt AND NOT Sell, "Current Profit/Loss Rs."+(SellPrice-C)+"",""));
 PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorWhite, 0, L, Offset=-40);
 PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorWhite, 0,L, Offset=-50); 
 PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorBlue, 0,L, Offset=-45); 
 PlotShapes(IIf(Sell, shapeSquare, shapeNone),colorWhite, 0, H, Offset=40);
 PlotShapes(IIf(Sell, shapeSquare, shapeNone),colorWhite, 0,H, Offset=50); 
 PlotShapes(IIf(Sell, shapeDownArrow, shapeNone),colorRed, 0,H, Offset=-45);
 _SECTION_END();
Previous
Next Post »