OPEN-SOURCE SCRIPT
MAMA - FAMA (Ehlers) [KN]

MAMA - FAMA (Ehlers)
Surprisingly, I couldn't find a proper Pine Script implementation of this classic indicator on TradingView, so here's my version.
This indicator implements John Ehlers' MESA Adaptive Moving Average (MAMA) and Following Adaptive Moving Average (FAMA) from his book "Rocket Science for Traders."
How It Works
Unlike traditional moving averages with fixed periods, MAMA adapts its smoothing based on the market's dominant cycle. It uses the Hilbert Transform to measure the instantaneous phase of price, then adjusts its responsiveness according to how fast that phase is changing.
When price is trending strongly (rapid phase change), MAMA speeds up to follow closely. During consolidation (slow phase change), it slows down to filter noise. FAMA is a further smoothed version of MAMA that serves as a signal line.
Signals
🔵 Bullish: MAMA crosses above FAMA
🟠 Bearish: MAMA crosses below FAMA
The adaptive nature makes this particularly effective at avoiding whipsaws during ranging markets while still catching trends early.
Inputs
- Fast Limit (default 0.5): Maximum alpha, controls fastest response
- Slow Limit (default 0.05): Minimum alpha, controls slowest response
- Source (default hl2): Price input
Credits
Original concept by John F. Ehlers.
Surprisingly, I couldn't find a proper Pine Script implementation of this classic indicator on TradingView, so here's my version.
This indicator implements John Ehlers' MESA Adaptive Moving Average (MAMA) and Following Adaptive Moving Average (FAMA) from his book "Rocket Science for Traders."
How It Works
Unlike traditional moving averages with fixed periods, MAMA adapts its smoothing based on the market's dominant cycle. It uses the Hilbert Transform to measure the instantaneous phase of price, then adjusts its responsiveness according to how fast that phase is changing.
When price is trending strongly (rapid phase change), MAMA speeds up to follow closely. During consolidation (slow phase change), it slows down to filter noise. FAMA is a further smoothed version of MAMA that serves as a signal line.
Signals
🔵 Bullish: MAMA crosses above FAMA
🟠 Bearish: MAMA crosses below FAMA
The adaptive nature makes this particularly effective at avoiding whipsaws during ranging markets while still catching trends early.
Inputs
- Fast Limit (default 0.5): Maximum alpha, controls fastest response
- Slow Limit (default 0.05): Minimum alpha, controls slowest response
- Source (default hl2): Price input
Credits
Original concept by John F. Ehlers.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.