Based on Edwin Sedgwick Coppock’s original work to generate Buy and Sell signals. All the parameters are, however, adjustable including the Coppock Filter to filter out the market noise.

_SECTION_BEGIN(“Coppock Trade Signal v1.1”);
//PARAMETERS:
ROC1Periods =Param(“ROC1 periods”,14,2,200,1,0);
ROC2Periods =Param(“ROC2 periods”,11,2,200,1,0);
WMAPeriods =Param(“WMA periods”,10,2,200,1,0);
CoppockCurve =ParamToggle(“Use Coppock curve”,”No|Yes”,0);
CoppockBar =ParamToggle(“Use Coppock bar”,”No|Yes”,1);
ColBull =ParamColor(“Bull color”,colorBlue);
ColBear =ParamColor(“Bear color”,colorRed);
UseTradeSignal =ParamToggle(“Use trade signal”,”No|Yes”,1);
CoppockFilter =Param(“Coppock filter”,20,2,200,1,0);
ColBuy =ParamColor(“Buy color”,colorBrightGreen);
ColSell =ParamColor(“Sell color”,colorDarkRed);
ColBg =ParamToggle(“Show background color”,”No|Yes”,1);
//MAIN:
Coppock=WMA((ROC(C,ROC1Periods)+ROC(C,ROC2Periods)),WMAPeriods);
InitialCalculationLength=Max(ROC1Periods,ROC2Periods)+WMAPeriods;
for(i=0;i0,IIf(Coppock>LastCoppock1,ColBull,IIf(CoppockLastCoppock2,ColBull,ColBear))),
IIf(Coppock>LastCoppock1,ColBull,IIf(CoppockLastCoppock2,ColBull,ColBear))));
StyleTitle=IIf(CoppockCurve && CoppockBar,styleNoTitle,0);
StyleLabel=IIf(CoppockCurve && CoppockBar,styleNoLabel,0);
if(CoppockCurve)
Plot(Coppock,”Coppock”+_PARAM_VALUES(),TradeStatus,styleLine|styleThick|StyleTitle|StyleLabel);
if(CoppockBar)
Plot(Coppock,”Coppock”+_PARAM_VALUES(),TradeStatus,styleHistogram|styleThick);
if(UseTradeSignal)
{
CoppockIsBuy=TradeStatus==ColBull;
CoppockIsSell=TradeStatus==ColBear;
CoppockBuyValue=ValueWhen(CoppockIsBuy,Coppock,1);
CoppockSellValue=ValueWhen(CoppockIsSell,Coppock,1);
Buy=!Ref(CoppockIsBuy,-1) && Coppock<0 && CoppockIsBuy && abs(CoppockBuyValue)>=CoppockFilter;
Sell=!Ref(CoppockIsSell,-1) && Coppock>0 && CoppockIsSell &&
abs(CoppockSellValue)>=CoppockFilter;
PlotShapes(IIf(Buy,shapeUpArrow,shapeNone),ColBuy,0,Coppock,0);
PlotShapes(IIf(Sell,shapeDownArrow,shapeNone),ColSell,0,Coppock,0);
}
if(ColBg)
SetChartBkGradientFill(ParamColor(“BgTop”,colorWhite),ParamColor(“BgBottom”,colorTeal));
_SECTION_END();
Leave a Reply
You must be logged in to post a comment.