The related article is copyrighted material from Stocks & Commodities Mar 2010
You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
//////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 15/10/2014 // The related article is copyrighted material from Stocks & Commodities Mar 2010 // You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect... //////////////////////////////////////////////////////////// study(title="Empirical Mode Decomposition") Length = input(20, minval=1) Delta = input(0.5) Fraction = input(0.1) xPrice = hl2 beta = cos(3.1415 * (360 / Length) / 180) gamma = 1 / cos(3.1415 * (720 * Delta / Length) / 180) alpha = gamma - sqrt(gamma * gamma - 1) xBandpassFilter = 0.5 * (1 - alpha) * (xPrice - xPrice[2]) + beta * (1 + alpha) * nz(xBandpassFilter[1]) - alpha * nz(xBandpassFilter[2]) xMean = sma(xBandpassFilter, 2 * Length) xPeak = iff (xBandpassFilter[1] > xBandpassFilter and xBandpassFilter[1] > xBandpassFilter[2], xBandpassFilter[1], nz(xPeak[1])) xValley = iff (xBandpassFilter[1] < xBandpassFilter and xBandpassFilter[1] < xBandpassFilter[2], xBandpassFilter[1], nz(xValley[1])) xAvrPeak = sma(xPeak, 50) xAvrValley = sma(xValley, 50) nAvrPeak = Fraction * xAvrPeak nAvrValley = Fraction * xAvrValley plot(xMean, color=red, title="Mean") plot(nAvrPeak, color=blue, title="Peak") plot(nAvrValley, color=blue, title="Valley")