Skip to main content

Ehlers - Non Linear Filters for Amibroker (AFL)

hungkisvn over 7 years ago Amibroker (AFL)

  • Rating:
    5 / 5 (Votes 2)
  • Tags:
    amibroker

Nonlinear Ehlers Filters

Linear filters like moving averagesare great for slow, “stationary” data.Unfortunately, prices aren’t slow or stationary

Screenshots

Indicator / Formula

Copy & Paste Friendly
_SECTION_BEGIN("SONGOKU DRAGON");
//Nonlinear Ehlers Filter
//MODIFIED=SONGOKUDRAGON 
Price = (H+L)/2;
MomLength = 10;

PriceMomSum = 0;
FiveMomSum = 0;

FiveMom = abs(Price - Ref(Price, -5));
PriceMom = Price * FiveMom;
for (i=0; i < MomLength; i++) {
 PriceMomSum = PriceMomSum + Ref(PriceMom, -i);
 FiveMomSum = FiveMomSum + Ref(FiveMom, -i);
}
NLEF = PriceMomSum / FiveMomSum;
Buy=  Close  > NLEF;
Sell= Close < NLEF;
Buy=ExRem(Buy,Sell); Sell=ExRem(Sell,Buy); 
PlotShapes( shapeUpArrow* Buy , colorBrightGreen ,0);
PlotShapes( shapeDownArrow* Sell, colorRed ,0);

Plot(Close, "Close", colorWhite, styleThick);
Plot(NLEF, "NonLinear Ehlers Filter", IIf(Close>NLEF, colorBrightGreen, colorRed), styleThick);
GraphXSpace = 10;

Filter = Buy OR Sell;
Buy=ExRem(Buy,Sell); Sell=ExRem(Sell,Buy); 
AddTextColumn(FullName(),"Name");
AddColumn( Buy, "BUY" );
AddColumn( Sell, "SELL" );
_SECTION_END();

0 comments

Leave Comment

Please login here to leave a comment.