// Downloaded From https://www.WiseStockTrader.com /* Done by Rajandran R */ _SECTION_BEGIN("Butterworth Trend Trading System"); SetBarsRequired(100000,0); GraphXSpace = 15; SetChartOptions(0,chartShowArrows|chartShowDates); _N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) )); Plot( C, "Close", ParamColor("Color", colorBlack ), styleNoTitle | ParamStyle("Style") | GetPriceStyle() ); //PositionSize=100000; //////////////////////////////////////////////////////////////////////////// function Butterworth( mean, per ) { CutoffPeriod=per; Shift=0; coef1=coef2=coef3=coef4=0; tempReal= atan(1.0); rad2Deg = 45/tempReal; deg2Rad = 1.0/ rad2Deg; pi = atan(1.0)* 4; a1 = exp(-sqrt(2) * pi / CutoffPeriod); b1 = 2 * a1 * cos(deg2Rad * sqrt(2) * 180 / CutoffPeriod); coef2 = b1; coef3 = -a1 * a1; coef1 = (1 - b1 + a1 * a1) / 4; TBFilter[0]=C[0]; up[0]=Null; down[0]=Null; for(i = 1; i 3){ TBFilter[i]=coef1 *(mean[i]+2.0*mean[i-1] +mean[i-2])+coef2*TBFilter[i-1]+coef3*TBFilter[i-2]; }else{ TBFilter[i]=mean[i]; } if(TBFilter[i]>TBFilter[i-1]){ up[i]=TBFilter[i]; up[i-1]=TBFilter[i-1]; }else{ down[i]=TBFilter[i]; down[i-1]=TBFilter[i-1]; } } TBFilter1[BarCount-1]=Null; for(i=0;i0 AND Ref(diff,-1)<0 AND RSI(17)>50 AND Ref(RSI(17),-1)<50; //Sell =diff<0 AND Ref(diff,-1)>0 AND RSI(17)<50 AND Ref(RSI(17),-1)>50; Cond=0; ind =0; for ( i=0; i0 AND RSV[i]>50) { Cond=1; } if(diff[i]<0 AND RSV[i]<50) { Cond=2; } Buy[i]=Cond==1 AND ind==2; Sell[i]=Cond==2 AND ind==1; ind = Cond; }//end for Short=Sell; Cover=Buy; Plot(FBUTTER,"FBUTTER",colorGreen); Plot(SBUTTER,"SBUTTER",colorRed); Title = EncodeColor(colorWhite)+ "ButterWorth Trading System" + " - " + Name() + " - " + EncodeColor(colorRed)+ Interval(2) + EncodeColor(colorWhite) + " - " + Date() +" - "+"\n" +EncodeColor(colorRed) +"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(colorWhite)+ WriteIf(Sell , "Total Profit/Loss for the Last Trade Rs."+(C-BuyPrice)+"","")+ WriteIf(Buy , "Total Profit/Loss for the Last trade Rs."+(SellPrice-C)+"",""); PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorGreen, 0, L, Offset=-40); PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorLime, 0,L, Offset=-50); PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorWhite, 0,L, Offset=-45); PlotShapes(IIf(Sell, shapeSquare, shapeNone),colorRed, 0, H, Offset=40); PlotShapes(IIf(Sell, shapeSquare, shapeNone),colorOrange, 0,H, Offset=50); PlotShapes(IIf(Sell, shapeDownArrow, shapeNone),colorWhite, 0,H, Offset=-45); _SECTION_END();