Low Pass Channel [DW]This is an experimental study designed to attenuate higher frequency oscillations in price and volatility with minimal lag.
In this study, a single pole low pass filter is used. The low pass filter's cutoff period is determined either by a fixed user input, or by using an Instantaneous Frequency Measurement (IFM) algorithm.
Most radar warning, electronic countermeasures, and electronic intelligence systems employ IFM to identify threats, map the electronic battlefield, and implement deceptive countermeasures.
The IFM technique used for this study was devised by John Ehlers. It calculates In Phase and Quadrature (IQ) components using the Hilbert Transform and uses them to determine the dominant price cycle.
To generate the channel, the same filter approach is applied to true range then added to and subtracted from the price filter.
Custom bar colors are included for simple wave and trend indication.
Ehlers
Ehlers Super Passband FilterAs someone hidden my old script that is just what one guy copied from a book from John Ehlers. I rewrite what i read in the book.
I also found this. So i rewrite this to the guys that was using it. If it hiddes again i will just keep it to myself and downgrade my plan in this TV
// Ehlers Super Passband Filter script may be freely distributed under the MIT license.
// Ehlers Super Passband Filter script may be freely distributed under the MIT license.
// Ehlers Super Passband Filter script may be freely distributed under the MIT license.
// Ehlers Super Passband Filter script may be freely distributed under the MIT license.
// Ehlers Super Passband Filter script may be freely distributed under the MIT license.
I wrote 5 times to be clear. If you guys dont understand portuguese go to the translator to understand what i am explaining in // inside the code.
Compact Profitable Moving Average CrossoverHello friends,
I'm pleased to introduce this advanced evolution of the original Profitable Moving Average Crossover tool. This version offers complete control over the analysis range and delivers detailed real-time profitability metrics for every moving average crossover type directly on your chart.
🛠 How It Works
The script evaluates 61 moving average crossover systems across a customizable date range , allowing you to focus on specific historical windows for optimization or validation. It calculates each crossover's net profit performance and automatically ranks all results, displaying the top 5 performers in a summary table. Results are visualized through a color-coded column chart, making it easy to identify which crossover types have historically delivered the strongest outcomes.
🔥 Key Features
Pine Script V6 — built on the latest and most efficient version
Tests 61 moving average types , including those developed by Jurik, Kaufman, Ehlers, Apirine, and others
Custom Backtest Window — analyze any date range with start and end parameters
Automatic Results Table — displays the top 5 crossovers ranked by profit
Color-Coded Chart — quick visual identification of performance by crossover type
Sorted column chart for clear visual comparison of profit metrics
Fully compatible with all symbols, timeframes, and market types
NOTE: Results will vary across different tickers and timeframes. Seeing strong performance in one preview does not imply similar profitability elsewhere — this variability is normal due to differing market structures.
NOTE 2: You can experiment with the tool independently or request a full study, in which case I'll share a spreadsheet of all backtest results with you.
👋 Good luck and happy trading!
Платный скрипт
MTF IQ IFM Moving AverageMTF ready adaptive MA using Ehler's IQ IFM ( In Phase - Quadrature Instantaneous Frequency Measurement ).
Ehler's formula is a method of quantitatively measuring the length of a market cycle. In this case it is used to calculate the "optimal" adaptive EMA.
Theoretically the length generated by Ehler's formula could be used in many indicators and it's been placed within it's own function so you should be able to simply copy/paste it. HOWEVER pine will not accept series variables for the length input used in built-in functions. You will have to manually code (or find) a version of your indicator that doesn't use the pine built in.
Options :
type : optionally add volume weighting
range : historical range used in IQ IFM
cycle length mult : method to create faster/slower MAs. eg 0.5 is half the length of a cycle and a faster EMA ie EMA10 vs EMA20
low sat fix : some cryptocurrencies with low satoshi values cause an issue with the calculation, if you get no/nonsensical lines, enable this. Shouldn't affect other instruments, but can be disabled just in case.
MTF options: run the calculation on an alternative timeframe
--------------------------------------
If you find it useful please consider a tip/donation :
BTC - 3BMEXEDyWJ58eXUEALYPadbn1wwWKmf6sA
MTF Fisher Hilbert Stoch COGMTF version of dasanc's "Fisher Stochastic Center of Gravity". Only contains the Hilbert variant from the script.
You can find his original script here : link
Center of Gravity Oscillator - Ehlers by KIVANC fr3762Center of Gravity OSCILLATOR by JOHN EHLERS
Converted the original code from his book "Cybernetic Analysis for Stocks and Futures"
This article describes a new oscillator that is unique because it is both smoothed
and has essentially zero lag. The smoothing enables clear identification of turning
points and the zero lag aspect enables action to be taken early in the move. This
oscillator is the serendipitous result of my research into adaptive filters. While the filters
have not yet produced the result I seek, this oscillator has substantial advantages over
conventional oscillators used in technical analysis . The “CG” in the name of the
oscillator stands for the Center of Gravity of the prices over the window of observation.
The Center of Gravity ( CG ) of a physical object is its balance point. For example,
if you balance a 12 inch ruler on your finger, the CG will be at its 6 inch point. If you
change the weight distribution of the ruler by putting a paper clip on one end, then the
balance point (e.g. the CG ) shifts toward the paper clip. Moving from the physical world
to the trading world, we can substitute the prices over our window of observation for the
units of weight along the ruler. With this analogy, we see that the CG of the window
moves to the right when prices increase sharply. Correspondingly, the CG of the
window moves to the left when prices decrease.
For further information:
www.mesasoftware.com
Here's the link to a complete list of all my indicators:
t.co
Şimdiye kadar paylaştığım indikatörlerin tam listesi için: t.co
Ghosty's Modded Super Bandpass Filter [DasanC]Very cool Indicator from Ehlers and published originally by @DasanC
I made minor modifications, and added a zero line and changed some values. I use this indicator differently then it is intended to be used for scalping shorter time frames (15 min - 1 hour).
I use it like a cross over, either from the zeroline or when it passes the RMS, for 5-10 pips. While no indicator is 100% this one does a nice job for small scalps.
try it out on a demo and see if you like it.
enjoy.
original Indy -
Profitable MAMA & FAMA CrossoverIntroduction
The MESA Adaptive Moving Average (MAMA) was originally presented by John F. Ehlers. By design, it is a special kind of Exponential Moving Average with self-adjusting alpha. Its adaptation is based on the rate change of phase as measured by the Homodyne Discriminator and the alpha parameter is allowed to range between a maximum and minimum value (Fast Limit and Slow Limit).
Key Point: Ehlers suggested the maximum value to be 0.5 and the minimum to be 0.05 .
The variable alpha is computed as the Fast Limit divided by the phase rate of change. If the phase rate of change is large, the variable alpha is bounded at the SlowLimit. Then, this alpha is used to compute MAMA and FAMA (Following Adaptive Moving Average).
Should we rely on Ehlers' suggestions if we want to achieve the best result with MAMA & FAMA crossover system?
Well, he is a good specialist and widely recognized author, I respect him, but the answer is no and you can see results on the chart.
What is our goal?
We want to find the best configuration for MAMA & FAMA Crossover. To achieve that we need to analyze the MAMA's alpha parameter or, more specific, the bounds for this parameter, Fast and Slow Limits.
What is this tool?
This tool is a performance optimizer that uses decision tree-based algorithm under the hood to find the most profitable settings for the MAMA & FAMA Crossover. It analyzes a bunch of different Fast Limits (between 0.01 to 0.8 with step of 0.1 ) and Slow Limits (between 0.01 to 0.6 with step of 0.1 ) and backtests each combination across the entire history of an instrument. If the more profitable parameters were found, the indicator will switch its values to the found ones immediately.
So, instead of manually selecting and testing parameters just apply this indicator to your chart and
relax - the algorithm will find the best parameters for you
Alerts
It has a special alert that notifies when the more profitable settings were detected.
NOTE: It does not change what has already been plotted.
NOTE 2: This is not a strategy, but an algorithmic optimizer.
Reference: www.mesasoftware.com
MAMA & FAMA Crossover can be found here:
MTF Even Better Sine Wave - Dr. John EhlersThis is my enhanced "MTF Even Better Sine Wave" indicator using Pine Script version 4.0. This originates from the book "Cycle Analytics for Traders" written by Dr. John Ehlers in Chapter 12. While the original was simplistically designed, I enhanced it by adding a multitude of features Pine Script now accommodates.
Most noticeably is the multiple time frame (MTF) features in the indicator "Settings". The three displayed indicators are using 5 second, 30 second, and 7 minute time frames. This may be the first PSv4.0 script to accommodate seconds in MTF adequately, but don't quote me on that. I haven't spent hours extensively looking for them. Be forewarned, second-based time frames are currently for Premium subscribers only, until such time in the future when the prerogative of TV might change. I will be adding second-based time frames to my other indicators where I feel it is beneficial to the indicator.
Unlike Dr. John Ehlers' other Sinewave indicator that is intended for identifying turning points in cycling price fluctuations, the "Even Better Sine Wave", having stochastic like qualities, is intended for trending assets.
Features List Includes:
I.P.O.C.S.(Initial Public Offering Clean Start) Technology
Enable/disable dark background for enhanced visibility
"Source" selection with multiple time frame adjustments - including seconds
"Duration" adjustment
"Super Smoother BandEdge" adjustment
"Display Area" selection for visual mutations displayed above
Ranges and thresholds are enable/disable capable
Upper threshold adjustment
Lower threshold adjustment
Adjustable centered medial zone
Normalized zero mean to +/-1
This is not a freely available indicator, FYI. To witness my Pine poetry in action, properly negotiated requests for unlimited access, per indicator, may ONLY be obtained by direct contact with me using TV's "Private Chats" or by "Message" hidden in my member name above. The comments section below is solely just for commenting and other remarks, ideas, compliments, etc... regarding only this indicator, not others. If you do have any questions or comments regarding this indicator, I will consider your inquiries, thoughts, and concepts presented below in the comments section, when time provides it. When my indicators achieve more prevalent use by TV members, I will implement more ideas when they present themselves as worthy additions. As always, "Like" it if you simply just like it with a proper thumbs up, and also return to my scripts list occasionally for additional postings. Have a profitable future everyone!
Adaptive Fisher This fisher provides:
* Fixed and adaptive calculation lengths
* Adaptive overbought / oversold levels
* Fixed overbought / oversold levels derived from analysis of fisher over 20k bars.
* Automatic divergence detection with two different calculation lengths.
* Automatic momentum shift detection.
* 3 different visual modes.
Fourier series Model Of The Market█ OVERVIEW
The Fourier Series Model of the Market (FSMM) decomposes price action into harmonic components using bandpass filtering, then reconstructs a composite wave weighted by rolling energy ratios. This approach isolates cyclical market behavior at multiple frequencies, emphasizing dominant cycles for cleaner signal generation. The energy-adaptive weighting is the key differentiator from simple harmonic summation: cycles that dominate current price action contribute more to the output.
Based on Fourier analysis principles applied to financial markets, the indicator extracts harmonics (fundamental, 2nd, 3rd, etc.) using second-order IIR bandpass filters, then weights each harmonic's contribution by its relative energy compared to adjacent harmonics. This energy-adaptive weighting naturally emphasizes the cycles that are most prominent in current market conditions.
█ CONCEPTS
Fourier Decomposition
Fourier analysis represents any periodic signal as a sum of sine waves at different frequencies. In market analysis, price action can be decomposed into a fundamental cycle (the base period) plus harmonics at integer multiples of that frequency (period/2, period/3, etc.). Each harmonic captures oscillations at a specific frequency band, and their sum reconstructs the original cyclical behavior.
Bandpass Filtering
Each harmonic is extracted using a second-order IIR (Infinite Impulse Response) bandpass filter tuned to that harmonic's frequency. The filter isolates price activity within a narrow frequency range while rejecting both higher-frequency noise and lower-frequency trend drift. Before filtering, the source is debiased via 2-bar momentum to remove DC offset, ensuring each bandpass operates around true zero.
Energy-Weighted Reconstruction
Rather than simply summing all harmonics equally, FSMM weights each harmonic by its rolling energy relative to the previous harmonic. The energy score combines the current harmonic value with its rate of change, so it reflects both amplitude and momentum. Higher harmonics that hold comparatively more energy therefore contribute more to the composite wave, while weaker harmonics fade out. This adaptive weighting allows the model to respond to changing market cyclicality.
Quadrature Component (Rate of Change)
The rate of change output represents the 90°-phase-shifted (quadrature) component of the wave. When the wave is at zero and rising, the rate of change is at maximum positive. This provides complementary information about cycle phase and can be used for timing entries relative to cycle position.
█ INTERPRETATION
Wave Output
The composite wave oscillates around zero, representing the sum of all extracted harmonic components weighted by energy:
• Above zero : Net bullish cyclical momentum across harmonics
• Below zero : Net bearish cyclical momentum across harmonics
• Zero crossings : Cycle phase transitions - potential reversal points
• Wave amplitude : Strength of cyclical behavior; larger swings indicate cleaner cycles
Rate of Change
The quadrature component (90° phase-shifted) provides cycle phase information:
• Maximum rate of change : Wave is near zero and accelerating - early cycle phase
• Zero rate of change : Wave is at peak or trough - cycle extremes
• Rate/Wave divergence : When wave makes new highs/lows but rate of change does not confirm (lower momentum), suggests cycle exhaustion or impending phase shift
Combined Analysis
• Wave crossing above zero with positive rate of change: Strong bullish cycle initiation
• Wave crossing below zero with negative rate of change: Strong bearish cycle initiation
• Wave at extreme with rate of change reversing: Potential cycle peak/trough
Threshold Bands
When enabled, threshold bands define statistically significant wave deviations:
• Breach above +threshold : Unusually strong bullish cyclical behavior
• Breach below -threshold : Unusually strong bearish cyclical behavior
• Return inside thresholds : Normalizing behavior, potential mean reversion ahead
Alert Conditions
Four built-in alerts trigger on bar close (no repainting):
• Above +Threshold : Strong bullish cycle behavior
• Below -Threshold : Strong bearish cycle behavior
• Above Zero : Bullish cycle phase shift
• Below Zero : Bearish cycle phase shift
█ SETTINGS & PARAMETER TUNING
Fourier Series Model
• Source : Price series to decompose into harmonic components.
• Period (6-100): Base period for the fundamental harmonic. Higher harmonics divide this period (harmonic 2 = period/2, harmonic 3 = period/3). Match to the dominant market cycle for best results. Default 20.
• Bandwidth (0.05-0.5): Bandpass filter selectivity. Lower values create narrower passbands that isolate harmonics more precisely but may miss slightly off-frequency cycles. Higher values capture broader ranges but reduce harmonic separation. Default 0.1 balances precision and robustness.
• Harmonics (1-20): Number of harmonic components to extract. More harmonics capture finer cyclical detail but increase computation. For most applications, 3-5 harmonics suffice. The fundamental alone (1 harmonic) functions as a simple bandpass filter.
Display Settings
• Wave Outputs : Toggle visibility and color of the composite Fourier wave.
• Rate of Change : Toggle visibility and color of the quadrature component (90° phase-shifted wave).
• Zero Line : Reference line for oscillator neutrality.
Diagnostics - Dynamic Thresholds
Optional significance bands that identify when wave readings indicate strong cyclical behavior:
• Dynamic Threshold : Toggle threshold bands and set colors.
• Threshold Mode : Select calculation method:
- MAD (Median Absolute Deviation) : Robust, outlier-resistant measure using k * MAD where MAD ≈ 0.6745 * stdev.
- Standard Deviation : Volatility-sensitive, calculated as k * stdev of wave over the lookback period.
- Percentile Rank : Fixed probability bands using percentile of |wave| (90% means only 10% of values exceed threshold).
• Period (2-200): Lookback for threshold calculations. Default 50.
• Multiplier (k) : Scaling for MAD/Standard Deviation modes. Default 1.5.
• Percentile (%) (0-100): For Percentile Rank mode only. Default 90%.
Parameter Interactions
• Shorter periods respond faster to cycle changes but may capture noise.
• Lower bandwidth + more harmonics = more precise decomposition but requires accurate period setting.
• Higher bandwidth is more forgiving of period mismatches.
• For strongly trending markets, restrict harmonics to 1-2 so the model tracks the dominant cycle with fewer higher-frequency components.
• For ranging/oscillating markets, more harmonics (4-6) capture complex cycles.
█ LIMITATIONS
Inherent Characteristics
• Period dependency : Effectiveness depends on correctly matching the Period parameter to actual market cycles. Use cycle measurement tools (autocorrelation, FFT, dominant cycle indicators) to identify appropriate periods.
• Stationarity assumption : The indicator assumes cycle frequencies remain relatively stable within the lookback window. Rapidly shifting dominant cycles (regime transitions) may produce inconsistent results until the buffer adapts.
• Filter lag : Despite bandpass design, some lag remains inherent to causal filtering. Higher harmonics have less lag but more noise sensitivity.
• Energy weighting artifacts : During regime changes when harmonic energy ratios shift rapidly, weighting may produce transient anomalies.
Market Conditions to Avoid
• Strong trending markets : Pure trends with no cyclicality produce weak, meandering signals. The indicator assumes cyclical market behavior.
• News events/gaps : Large discontinuities disrupt filter continuity. Requires 1-2 full periods to stabilize.
• Period mismatch : If the Period parameter doesn't match actual market cycles, harmonic extraction produces noise rather than signal.
Parameter Selection Pitfalls
• Too many harmonics : Beyond 5-6 harmonics, additional components often capture noise rather than meaningful cycles.
• Bandwidth too narrow : Very low bandwidth (< 0.05) requires extremely precise period matching; slight mismatches cause signal loss.
• Over-optimization : Perfect historical parameter fits typically fail forward. Use robust defaults across multiple instruments.
█ NOTES
Credits
This indicator applies Fourier analysis principles to financial market data, building on the extensive work of Dr. John F. Ehlers in applying digital signal processing to trading. The bandpass filter implementation and harmonic decomposition approach draw from DSP fundamentals as presented in Ehlers' publications.
For those interested in the underlying mathematics and DSP concepts:
• Ehlers, J.F. (2001). Rocket Science for Traders: Digital Signal Processing Applications . John Wiley & Sons.
• Ehlers, J.F. (2013). Cycle Analytics for Traders . John Wiley & Sons.
• Various TASC articles by John Ehlers on bandpass filters, cycle analysis, and harmonic decomposition.
by ♚@e2e4
Voss Predictive Filter█ OVERVIEW
The Voss Predictive Filter (VPF) is a negative group delay (NGD) filter that anticipates cyclical price movement through phase compensation. The VPF isolates band-limited cyclical components via a bandpass filter, then applies negative group delay to shift the signal's phase forward, causing the output to lead the input by a fraction of the cycle period.
Based on Dr. John F. Ehlers' "Voss Predictive Filter" article in Technical Analysis of Stocks & Commodities (TASC) magazine, the VPF displays a predictive oscillator with optional dynamic threshold bands for identifying significant cycle behavior. The indicator is timeframe-agnostic - the mathematics work identically from tick charts to monthly bars, though shorter timeframes require more careful parameter selection due to noise.
█ CONCEPTS
Bandpass Filtering
A bandpass filter isolates price activity within a specific frequency range, removing both high-frequency noise and low-frequency trend drift. The VPF uses a second-order IIR (Infinite Impulse Response) bandpass filter characterized by the center frequency (the Bandpass Period input) and bandwidth. The center frequency determines which cycle period the filter emphasizes, while bandwidth controls the damping coefficient - how tightly the filter focuses around that frequency. Before filtering, the source is debiased via 2-bar momentum to remove DC offset, ensuring the filter operates around a true zero centerline.
Negative Group Delay Filtering
The predictive capability stems from negative group delay (NGD) - a filter characteristic where output appears to "lead" the input. Most causal filters introduce lag (positive group delay), but by combining the bandpass filter output with appropriately weighted past values, the VPF achieves negative group delay characteristics.
This is a universal NGD filter application for band-limited signals: the bandpass filter isolates the cyclical component of interest, then the NGD stage advances the phase within this limited frequency range to create an anticipatory output. This isn't statistical forecasting; it's phase compensation that shifts the signal's timing forward, causing peaks and troughs to appear before they occur in the bandpass output.
Negative Group Delay Stage
The NGD stage combines the current bandpass output with weighted historical values to produce an output that leads the input. By subtracting a weighted average of past deviations from a scaled version of the current filter value, the algorithm advances the signal's phase: peaks and zero-crossings in the voss output appear before the corresponding events in the bandpass filter.
The prediction order (`3 * Prediction Multiplier`) controls how many past values contribute to the phase advance. Higher orders provide smoother output but reduce the leading effect; lower orders maximize anticipation at the cost of stability.
█ INTERPRETATION
Zero-Line Crossovers
Crossings above zero suggest bullish momentum in the filtered cycle; below zero suggests bearish momentum. Crossings from near-zero regions are most reliable, as extreme excursions need time to return to equilibrium.
Threshold Bands
Threshold bands define "significant" deviation. Breaches indicate unusually strong behavior and can serve as:
• Trend confirmation when aligned with price direction
• Overbought/oversold warnings at extremes
• Trade entry filters (requiring threshold breach in the intended direction)
Threshold Mode affects sensitivity: MAD (outlier-resistant), Standard Deviation (volatility-sensitive), Percentile Rank (fixed probability bands).
Alert Conditions
Four built-in alerts trigger on bar close (no repainting): Above +Threshold (strong bullish cycle), Below -Threshold (strong bearish cycle), Above Zero (bullish phase shift), Below Zero (bearish phase shift).
█ SETTINGS & PARAMETER TUNING
Voss Predictive Filter
• Source : Price series to filter.
• Bandpass Period (1-100): Primary tuning parameter determining which cycle length the filter emphasizes. Short periods (8-15) are more responsive but noisier; medium periods (16-30) balance responsiveness and smoothness; long periods (31-100) focus on longer cycles with more smoothing.
• Bandwidth (0.01-0.45): Controls filter selectivity. Narrow bandwidths (0.01-0.15) isolate specific cycle periods precisely; medium (0.16-0.30) tolerate cycle irregularity; wide (0.31-0.45) capture broader cycle ranges. Shorter periods pair well with narrower bandwidths.
• Prediction Multiplier (2-10): Controls how many past values contribute to the phase advance. Higher values provide smoother output but reduce the leading effect; lower values maximize anticipation at the cost of stability.
Display Settings
Control visibility and colors of the Voss output, bandpass filter, and zero reference lines.
Diagnostics - Dynamic Thresholds
Three methods identify significant signal deviation:
• MAD (Median Absolute Deviation) : Robust, outlier-resistant measure using `k * MAD` where `MAD ≈ 0.6745 * stdev`.
• Standard Deviation : Volatility-sensitive, calculated as `k * stdev` of Voss over the lookback period.
• Percentile Rank : Fixed probability bands using the percentile of |Voss| (e.g., 90% means only 10% of values exceed threshold).
Settings:
• Dynamic Threshold : Toggle threshold bands and set colors.
• Threshold Mode : Select MAD, Standard Deviation, or Percentile Rank.
• Period (2-200): Lookback for threshold calculations. Default 50.
• Multiplier (k) : Scaling for MAD/Standard Deviation modes. Default 1.5.
• Percentile (%) (0-100): For Percentile Rank mode only. Default 90%.
█ LIMITATIONS
Inherent Characteristics
• Residual lag : Despite negative group delay design, some lag remains relative to price action.
• Cyclical markets required : Performs best on instruments with clear cyclical components. Strongly trending markets with little cyclicality produce less useful signals.
• Signal interpretation : Absolute Voss values are instrument-specific. Always interpret relative to adaptive threshold bands, not fixed levels.
Market Conditions to Avoid
• Sudden news events/gaps : Major discontinuities disrupt cycle continuity, causing erratic signals. Requires 1-2 full cycle periods to re-stabilize.
• Low volume/illiquid markets : Sporadic trading produces false cycles from liquidity artifacts. Use only on actively traded instruments during liquid hours.
• Regime changes : During cyclical ↔ trending transitions, watch for persistent extremes without mean reversion, increasing price/indicator divergence, or unresolved threshold breaches.
Parameter Selection Pitfalls
• Mismatched period : If Bandpass Period doesn't match actual market cycles, the filter produces weak signals. Use cycle measurement tools (FFT, autocorrelation, Dominant Cycle) to identify appropriate periods first.
• Overoptimization : Perfect historical fits typically fail forward. Choose robust parameters that work across multiple instruments and timeframes.
█ NOTES
Credits
This indicator is based on concepts from Dr. John F. Ehlers' work on predictive filters and bandpass techniques for technical analysis. Dr. Ehlers has published extensively on applying digital signal processing methods to financial markets in Technical Analysis of Stocks & Commodities (TASC) magazine. His articles on bandpass filters and predictive techniques, particularly the Voss Predictive Filter concept, provided the theoretical foundation for this implementation.
For those interested in the underlying mathematics and DSP concepts:
• Ehlers, J.F. (2001). Rocket Science for Traders: Digital Signal Processing Applications . John Wiley & Sons.
• Various TASC articles by John Ehlers on bandpass filters, cycle analysis, and predictive filtering techniques.
• Ehlers, J.F. "Voss Predictive Filter" - Technical Analysis of Stocks & Commodities magazine.
by ♚@e2e4
Adaptive BB Triple Layer Adaptive BB SD
Band based pullback and pivoting signals ♘♝
Macro Trend sentiment - Outer deviations coloring
Micro trend - Mean Value and normal +/- st.dev colors
Candle Colors - Median Trend
Col Coded Primitive(Basic) Squeeze detection
Sensitive micro break out/down signals derived from basic Mean line crossing (Added some Whipsaw Protection)
Basic Squeeze
Extreme deviations can be turned off for "compact" view
Basic break out/down signals
Indicator needs TESTING
Signal sensitivity and trend recognition need testing/tuning before even considering to use this BB for trading purposes
Ehlers Ideal RSIThis script has been updated to Pine v4. Original script by JustUncleL (link in code)
Moving Average CrossoverIt was planned as an addition to Moving Average Smoothness Benchmark and Profitable Moving Average Crossover , but can be used standalone.
Supports 62 types of well-known moving averages and allows full-featured customization.
Supported types of averages and filters:
AEMA , Adaptive Exponential MA (by Vitali Apirine)
AHMA , Ahrens MA (by Richard D. Ahrens)
ALMA , Arnaud Legoux MA (by Arnaud Legoux and Dimitris Kouzis-Loukas)
ALF , Adaptive Laguerre Filter (by John F. Ehlers)
AMA , Adaptive MA (by Vitali Apirine)
ARSI , Adaptive RSI
BAMA , Bryant Adaptive MA (by Michael R. Bryant)
BF2 , Butterworth Filter with 2 poles
BF3 , Butterworth Filter with 3 poles
DEMA , Double Exponential MA (by Patrick G. Mulloy)
DWMA , Double Weighted (Linear) MA
EDCF , Ehlers Distance Coefficient Filter (by John F. Ehlers)
EDSMA , Ehlers Deviation-Scaled MA (by John F. Ehlers)
EHMA , Exponential Hull MA
EMA , Exponential MA
EVWMA , Elastic Volume Weighted MA (by Christian P. Fries)
FRAMA , Fractal Adaptive MA (by John F. Ehlers)
GF1 , Gaussian Filter with 1 pole
GF2 , Gaussian Filter with 2 poles
GF3 , Gaussian Filter with 3 poles
GF4 , Gaussian Filter with 4 poles
HFSMA , Hampel Filter on Simple Moving Average
HFEMA , Hampel Filter on Exponential Moving Average
HMA , Hull MA (by Alan Hull)
HWMA , Henderson Weighted MA (by Robert Henderson)
IDWMA , Inverse Distance Weighted MA
IIRF , Infinite Impulse Response Filter (by John F. Ehlers)
JAMA , Jurik Adaptive MA (by Mark Jurik)
JMA , Jurik MA (by Mark Jurik, )
KAMA , Kaufman Adaptive MA (by Perry J. Kaufman)
LF , Laguerre Filter (by John F. Ehlers)
LMA , Leo MA (by ProRealCode' user Leo)
LSMA , Least Squares MA (Moving Linear Regression)
MAMA (by John F. Ehlers)
FAMA , Following Adaptive MA (by John F. Ehlers)
MD , McGinley Dynamic (by John R. McGinley)
MHLMA , Middle-High-Low MA (by Vitali Apirine)
MNMA , McNicholl MA (by Dennis McNicholl)
NSMA , Moving Average 3.0 on SMA (by Manfred G. Dürschner)
NEMA , Moving Average 3.0 on EMA (by Manfred G. Dürschner)
NWMA , Moving Average 3.0 on WMA (by Manfred G. Dürschner)
NVWMA , Moving Average 3.0 on VWMA (by Manfred G. Dürschner)
PEMA , Pentuple Exponential MA (by Bruno Pio)
PWMA , Parabolic Weighted MA
QMA , Quick MA (by John McCormick)
QEMA , Quadruple Exponential MA (by Bruno Pio)
REMA , Regularized Exponential MA (by Chris Satchwell)
RMA , Running MA (by J. Welles Wilder)
RMF , Recursive Median Filter (by John F. Ehlers )
RMTA , Recursive Moving Trend Average (by Dennis Meyers)
SHMMA , Sharp Modified MA (by Joe Sharp)
SMA , Simple MA
SSF2 , Super Smoother Filter with 2 poles (by John F. Ehlers)
SSF3 , Super Smoother Filter with 3 poles (by John F. Ehlers)
SWMA , Sine Weighted MA
TEMA , Triple Exponential MA (by Patrick G. Mulloy)
TMA , Triangular MA (generalized by John F. Ehlers)
T3 , (by Tim Tillson)
VIDYA , Variable Index Dynamic Average (by Tushar S. Chande)
VWMA , Volume Weighted MA (by Buff P. Dormeier)
WMA , Weighted (Linear) MA
ZLEMA , Zero Lag Exponential MA (by John F. Ehlers and Ric Way)
Ehler's Super Smoother 2 and 3 pole (properly initialized)John Ehlers' Super Smoother 2 and 3 pole - properly initialized
www.stockspotter.com
Failure to properly initialize early values of the super smoother will result in misleading values early in the output.
Because the SS is an IIR ( infinite impulse response) filter, this error can ring in the filter for a long time, but
is extremely evident in the first 2*len bars.
This is an implementation if the 2 and 3 pole SS filter, with special attention to initializing the early values.
It uses (src+scr)/2 per Ehlers but contains code to just use src if you prefer to calculate that outside
the function as everget does in his SS here:
there is code included to make that change.
Many thanks to everget for his terrific implementations of much of John Ehlers' work. It has been tremendously helpful to me.
Ehlers Decycler OscillatorThis indicator was originally developed by John F. Ehlers (Stocks & Commodities , V.33:10 (September, 2015): "Decyclers").
The idea is still the same as for the Simple Decycler.
Mr. Ehlers suggested to virtually eliminate lag by getting rid of the very low-frequency components. So, he applied the high-pass filter to the simple decycler.
Mr. Ehlers recommended to use two instances of the Decycler Oscillator with different parameters (high-pass filter period and multiplier). As a result, he got the Decycler Oscillator pair.
The first oscillator (red line) has a period of 125 bars, the second one (yellow line) has a period of 100 bars.
The interpretation is straightforward:
When the yellow line crosses over the red line, a trend reversal to the upside is indicated.
When the yellow line crosses under the red line, a trend reversal to the downside is indicated.
Ehlers Simple DecyclerThis indicator was originally developed by John F. Ehlers (Stocks & Commodities, V.33:10 (September, 2015): "Decyclers").
Mr. Ehlers suggested a way to improve trend identification using high-pass filters. The basic smoothers like SMA, low-pass filters, have considerable lag in their display. Mr. Ehlers applied the high-pass filter and subtracted the high-pass filter output from the time series input. Doing these steps he removed high-frequency short-wavelength components (the ones causing the wiggles) from the time series.
As a result he got a special series of the low-frequency components with virtually no lag - the Decycler.
The Decycler is plotted with two additional lines (the percent-shifts of Decycler) and together they form a hysteresis band.
If the prices are above the upper hysteresis line, then the market is in an uptrend . If the prices are below the low hysteresis line, then the market is in a downtrend . Prices within the hysteresis band are trend-neutral .
Ehlers Triple Delay-Line DetrenderThis indicator was originally developed by John F. Ehlers (Stocks & Commodities , V.18:7 (July, 2000): "Optimal Detrending").
Mr. Ehlers applied the ideas of the radar systems for the financial time series detrending.
Mr. Ehlers constructed the Triple Delay-Line Canceller first, then smoothed it with the Modified Optimum Elliptic Filter with minimal lag. The smoothed detrended signal is smoothed again with the Modified Optimum Elliptic Filter to obtain signal line.
As result, the crossings of the two indicator lines catch every major cyclic move and the detrender itself can be used as the first step in more sophisticated analyses.
Ehlers Modified Optimum Elliptic FilterThis indicator was originally developed by John F. Ehlers (Stocks & Commodities, V.18:7 (July, 2000): "Optimal Detrending").
Mr. Ehlers didn't stop and improved his Optimum Elliptic Filter. To reduce the effects of lag he added the one day momentum of the price to the price value.
This modification produce a better response.
Ehlers Optimum Elliptic FilterThis indicator was originally developed by John F. Ehlers (Stocks & Commodities, V.18:7 (July, 2000): "Optimal Detrending").
Mr. Ehlers worked on the smoother that could have no more than a one-bar lag. An elliptic filter provides the maximum amount of smoothing under the constraint of a given lag.
Fractal Adaptive Moving Averagewww.stockspotter.com
www.stockspotter.com
www.stockspotter.com
Here we measure the "fractal dimension" in order to differentiate periods of consolidation and trend. The trendline will run relatively flat during ranging price movement and quickly follow trending price action.






















