Library "CommonFilters" Collection of some common Filters and Moving Averages. This collection is not encyclopaedic, but to declutter my other scripts. Suggestions are welcome, though. Many filters here are based on the work of John F. Ehlers
sma(src, len) Simple Moving Average Parameters: src: Series to use len: Filtering length Returns: Filtered series
ema(src, len) Exponential Moving Average Parameters: src: Series to use len: Filtering length Returns: Filtered series
rma(src, len) Wilder's Smoothing (Running Moving Average) Parameters: src: Series to use len: Filtering length Returns: Filtered series
hma(src, len) Hull Moving Average Parameters: src: Series to use len: Filtering length Returns: Filtered series
vwma(src, len) Volume Weighted Moving Average Parameters: src: Series to use len: Filtering length Returns: Filtered series
hp2(src) Simple denoiser Parameters: src: Series to use Returns: Filtered series
fir2(src) Zero at 2 bar cycle period by John F. Ehlers Parameters: src: Series to use Returns: Filtered series
fir3(src) Zero at 3 bar cycle period by John F. Ehlers Parameters: src: Series to use Returns: Filtered series
fir23(src) Zero at 2 bar and 3 bar cycle periods by John F. Ehlers Parameters: src: Series to use Returns: Filtered series
fir234(src) Zero at 2, 3 and 4 bar cycle periods by John F. Ehlers Parameters: src: Series to use Returns: Filtered series
hp(src, len) High Pass Filter for cyclic components shorter than langth. Part of Roofing Filter by John F. Ehlers Parameters: src: Series to use len: Filtering length Returns: Filtered series
supers2(src, len) 2-pole Super Smoother by John F. Ehlers Parameters: src: Series to use len: Filtering length Returns: Filtered series
filt11(src, len) Filt11 is a variant of 2-pole Super Smoother with error averaging for zero-lag response by John F. Ehlers Parameters: src: Series to use len: Filtering length Returns: Filtered series
supers3(src, len) 3-pole Super Smoother by John F. Ehlers Parameters: src: Series to use len: Filtering length Returns: Filtered series
hannFIR(src, len) Hann Window Filter by John F. Ehlers Parameters: src: Series to use len: Filtering length Returns: Filtered series
hammingFIR(src, len) Hamming Window Filter (inspired by John F. Ehlers). Simplified implementation as Pedestal input parameter cannot be supplied, so I calculate it from the supplied length Parameters: src: Series to use len: Filtering length Returns: Filtered series
triangleFIR(src, len) Triangle Window Filter by John F. Ehlers Parameters: src: Series to use len: Filtering length Returns: Filtered series
doPrefilter(type, src) Execute a particular Prefilter from the list Parameters: type: Prefilter type to use src: Series to use Returns: Filtered series
doMA(type, src, len) Execute a particular MA from the list Parameters: type: MA type to use src: Series to use len: Filtering length Returns: Filtered series
Versionshinweise
⋅
v2 Added Jurik MA (JMA): jma(src, len, phase) Jurik MA Parameters: src: Series to use len: Filtering length phase: JMA Phase Returns: Filtered series Based on the reverse-engineered JMA documented by somebody called Igor: c.mql5.com/forextsd/forum/164/jurik_1.pdf Inspired by @everget implementation: tradingview.com/script/nZuBWW9j-Jurik-Moving-Average/ Inspired by @gorx1 implementation: tradingview.com/script/gwzRz6tI-Jurik-Moving-Average/ As JMA is a proprietary closed-source algorithm, every JMA implementation I've seen is based on the Igor's document Many of the implementations, however, are not true to the source As far as I know, this is the first correct JMA implementation on TradingView As the Igor's document itself is incomplete, however, there is some grey area still...