JOHN EHLERS INDICATORS: I have compiled most of the indicators on this page from Ehlers books. Some adjustments have been made for clarity or to get them to work properly. They have all verified in TradeStation but no guarantees of perfection or proper functionality are implied. The MESA formula (Maximum Entropy Spectral Analysis) which is used in many of these indicators, was originally developed to interpret seismographic information for oil exploration. They have been adapted here for measuring market cycles - they produce high resolution outputs with exceptionally short amounts of information, an ideal combination for market evaluation.

MAMA FAMA Indicator: - MAMA stands for MESA Adaptive Moving Average (It has also been dubbed Mother of All Moving Averages). This is a MA that adjusts itself to up/down cycles and is very robust - I'm planning to incorporate it into some strategies soon.

Fisher Transform Indicator: This is a very fast crossover trade trigger indicator and if used in conjunction with a good trend-following tool it is predictive and can be applied in strategies (coming soon). When compared to MACD or other crossover indicators the Fisher Transform is clearly superior and timely.

Instantaneous Trend Indicator (iTrend): Trend indicator with nearly zero lag and about the same smoothing as EMA. Trade signals are generated by crossing of the trigger line and iTrend line.

Center of Gravity Indicator: Another Ehlers oscillator - I have not experimented much with this one - may require an additional trend indicator to help function best - do your own testing.

Cyber Cycle Indicator: An early Ehlers indicator that attempts to measure market cycles.

Cycle Measure indicator: Same as Cycle Period indicator. Another Cycle Measuring indicator, more robust than the one above, but with only one line - no crossovers.

Fisher Cyber Cycle Indicator: A cycle measuring indicator with a Fisher Transform modification.

Relative Vigor Index: The concept of RVI is that prices close higher than they open in up mkts and v.v. in down mkts. RVI is an oscillator where movement is normalized to the trading range of each bar. It uses four-bar symetrical FIR lag-cancelling filters to produce a readable indicator.

Stochastic CG Oscillator: Rev.10/01/08 Several indicators have been modified with a stochastic algorithm. In some cases this improves performance but not significantly.

Stochastic Cyber Cycle indicator: Rev. 10/01/08 -Same comment as above.

Fisher Stochastic CG Oscillator: The Fisher Stochastic CG indicator/oscillator is similar to the Stochastic CG Oscillator but with sharper reversals and occasionally earlier signals.

Stochastic RSI indicator:

Stochastic RVI index: Rev.10/01/08 -The concept of RVI is that prices close higher than they open in up mkts and v.v. in down mkts. RVI is an oscillator where movement is
normalized to the trading range of each bar. It uses four-bar symetrical FIR lag-cancelling filters to produce a readable indicator.

Cycle Period Calculator: posted 8/26/08

These adaptive indicators are more responsive than their static (non-adaptive) counterparts. They are meant to eliminate lag. The sine wave (coming soon) is supposed to be predictive.

Adaptive Cyber Cycle: posted 8/26/08

Adaptive CG: posted 8/26/08

Adaptive RVI: posted 8/26/08

Sine Wave Indicator: posted 8/27/08 - This indicator tries to determine the current phase of the cycle you are in, has an advantage over other oscillators such as RSI and Stochastic because it predicts rather than waits for confirmation. SW gives entry and exit signals 1/16th of a cycle period in advance of the cycle turning point and seldom gives false whipsaw signals when the market is in a trend mode.

2-pole Butterworth filter: revised Sept. 26, 2008

3-pole Butterworth filter:

2-pole Super Smoother filter:

3-pole Super Smoother filter:

Smoothed Adaptive Momentum Indicator:

Smoothed Adaptive Momentum Strategy:

Laguerre Filter:

Laguerre RSI:

Leading Indicator:

Stochastic RSI Strategy: This strategy based on some of Ehlers indicators shows positive results and merits some further experimenting. I will continue working on it.


Additional Sine Wave Indicator; 8/27/08 I don't know where I got this code - not compiled by me. This does not match Ehlers info from my book - may be compiled from an earlier book. It displays similar but not identical to the above sine wave indicator - perhaps someone's re-adjustment of his code.
Aug 2009 - I received a note from Willy, a trader who says there are errors in this Sine Wave code. He provided a revised version - LINK

Email me here: Web: TS | IB | Sierra | Int'l Econ | Int'l Mkts | USA Econ | US Earnings | Dave Home | Trading
If you are planning to experiment with these codes, it is essential to read one or more of John Ehler's books from where they were compiled. It is important to understand what you are working with, otherwise you are driving blind.

Although I no longer use TradeStation for testing or trading, these codes remain here for anyone who is interested, but use at your own risk. These codes are all for testing purposes only, originally posted for my access and others working with me on development projects, you are welcome to utilize these pages for your experimentation. No guarantees of stability or profitability are claimed.

NOTE #1: Because I closed my TradeStation account, I can no longer access my code files on my PC. Since TS may have upgraded their software, I can not say whether or not these will still compile and verify properly. They all verified properly and gave results as expected (unless otherwise noted) when they were initially posted. Use at your own risk.

NOTE #2 - posted 4/15/2014: For anyone testing these Ehlers strategies in MultiCharts, the codes have been upploaded by a MultiCharts user and can be downloaded in a .pla file format via the following link. - - - - MultiCharts codes - - - -