// Downloaded From https://www.WiseStockTrader.com _SECTION_BEGIN("NICK MA Swing"); SetBarsRequired(200,0); GraphXSpace = 5; SetChartOptions(0,chartShowArrows|chartShowDates); k = Param("K", 1.5, 1, 5, 0.1); Per = Param("ATR", 3, 1, 30, 0.50); k1 = Optimize("K", 1, 0.1, 5, 0.1); Per1 = Optimize("ATR", 3, 1, 30, 0.50); 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(), colorGreen, styleCandle |styleNoLabel ); //PlotOHLC( HaOpen, HaHigh, HaLow, HaClose, "" + Name(), colorWhite, styleCandle | styleNoLabel ); Plot(C, "", IIf(O>=C, colorPink, colorBlue), ParamStyle("Price Style",styleCandle,maskPrice)); 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); shape = Buy * shapeUpArrow + Sell * shapeDownArrow; PlotShapes( shape, IIf( Buy, colorGreen, colorRed ), 0, IIf( Buy, Low-f, High+f)); _SECTION_END(); ClientID = ParamStr("ClientId","000000"); Symbol= ParamStr("Symbol","NIFTY13DECFUT"); Price=NumToStr(C,8.3,True); Quantity=Param("Quantity",1,1,100,1); OE = ParamList("Order Execution","Immediate,On Candle Completion",1); AT = ParamToggle("AutoTrade","No,Yes"); if(OE=="On Candle Completion") { Buy=Ref(Buy,-1); Short=Ref(Short,-1); Sell=Ref(Sell,-1); Cover=Ref(Cover,-1); } AplliedQuantity=IIf(LastValue(Buy) AND LastValue(Cover) OR LastValue(Short) AND LastValue(Sell),Quantity*1,Quantity); RefNumber = Nz(StaticVarGet("RefNumber")); Checkdt=Nz(StaticVarGet("lastdt")); dt = LastValue( DateTime() ); Cond=LastValue(Buy) OR LastValue(Short) OR LastValue(Sell) OR LastValue(Cover); if(AT) { plus = CreateStaticObject("Nest.PlusApi"); if(plus) { plus.SetObjectName(ClientID); if(Cond AND Checkdt != dt ) { if(LastValue(Buy) OR LastValue(Cover)){plus.PlaceOrder("BUY",RefNumber,"NFO",Symbol,"DAY","LIMIT",AplliedQuantity,Price,0,1,"MIS",ClientID);} if(LastValue(Short) OR LastValue(Sell)){plus.PlaceOrder("SELL",RefNumber,"NFO",Symbol,"DAY","LIMIT",AplliedQuantity,Price,0,1,"MIS",ClientID);} StaticVarSet("RefNumber",RefNumber+1); StaticVarSet("lastdt",dt ); } } }