MESA Adaptive Moving Average (MAMA)

Created by John Ehlers, the MAMA indicator is a 5-period adaptive moving average of high/low price that uses classic electrical radio-frequency signal processing algorithms to reduce noise. [Discuss] 💬

chart for MESA Adaptive Moving Average (MAMA)

// C# usage syntax
IEnumerable<MamaResult> results =
  quotes.GetMama(fastLimit, slowLimit);

Parameters

fastLimit double - Fast limit threshold. Must be greater than slowLimit and less than 1. Default is 0.5.

slowLimit double - Slow limit threshold. Must be greater than 0. Default is 0.05.

Historical quotes requirements

You must have at least 50 periods of quotes to cover the warmup and convergence periods.

quotes is a collection of generic TQuote historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See the Guide for more information.

Response

IEnumerable<MamaResult>

âšž Convergence warning: The first 50 periods will have decreasing magnitude, convergence-related precision errors that can be as high as ~5% deviation in indicator values for earlier periods.

MamaResult

Date DateTime - Date from evaluated TQuote

Mama decimal - MESA adaptive moving average (MAMA)

Fama decimal - Following adaptive moving average (FAMA)

Utilities

See Utilities and helpers for more information.

Chaining

This indicator may be generated from any chain-enabled indicator or method.

// example
var results = quotes
    .Use(CandlePart.HL2)
    .GetMama(..);

Results can be further processed on Mama with additional chain-enabled indicators.

// example
var results = quotes
    .GetMama(..)
    .GetRsi(..);