Skip to content

    MAMA Adaptive Moving Average: A Practical Guide for Indian Traders

    Quick answer

    MAMA and FAMA explained for Nifty and Bank Nifty: real alpha maths, FastLimit 0.5 vs SlowLimit 0.05, a worked Nifty trade, and Indian F&O tax.

    19 June 2026
    17 min read
    3,273 words

    Key Takeaways

    • 1.MAMA (MESA Adaptive Moving Average) was created by John Ehlers and adapts its speed using the Hilbert Transform to measure the market's dominant cycle, not a fixed period like a 20 EMA.
    • 2.The two inputs FastLimit and SlowLimit are NOT lengths. They are the upper and lower bounds on the adaptive smoothing factor alpha. The standard values are FastLimit 0.5 and SlowLimit 0.05.
    • 3.An alpha of 0.5 behaves like a very fast 3 period EMA, and an alpha of 0.05 behaves like a slow 39 period EMA. MAMA slides between these two extremes automatically.
    • 4.On Nifty and Bank Nifty, the real edge of MAMA is the MAMA versus FAMA crossover, which catches trends a few bars earlier than a 20 versus 50 EMA cross and hugs price tightly during fast moves.
    • 5.Treat all numbers here as illustrative for learning. F&O profit is taxed as business income, equity STCG is 20 percent and LTCG above Rs 1.25 lakh is 12.5 percent. Confirm rules on NSE and with your broker before trading.

    What MAMA Actually Is

    The MESA Adaptive Moving Average (MAMA) was published by John Ehlers in 2001. The word MESA stands for Maximum Entropy Spectral Analysis, the signal processing method Ehlers used to estimate the market's dominant cycle. A normal moving average uses one fixed period, so a 20 EMA on Nifty is always a 20 EMA whether the index is dead flat or ripping 400 points. MAMA refuses to stay fixed. It measures, bar by bar, how fast the price phase is rotating and speeds up when a trend starts and slows down when price chops sideways.

    MAMA always comes paired with a second line called FAMA (Following Adaptive Moving Average). FAMA is simply MAMA smoothed again using half of MAMA's own alpha. Think of MAMA as the fast line and FAMA as the slow line. The signals traders care about come from the crossover of these two lines, exactly the way you would use a fast and slow EMA pair, except both lines adapt their speed on their own.

    This adaptive behaviour matters in India because instruments like Bank Nifty can sit in a tight 150 point range for two hours and then move 600 points in twenty minutes around a Reserve Bank of India policy line or a heavy expiry day. A fixed 20 EMA lags badly on the fast leg and whipsaws in the range. MAMA tightens up during the fast leg and loosens during the range, which is precisely what you want.

    FastLimit and SlowLimit Are Alpha Bounds, Not Lengths

    Here is the single most misunderstood point about MAMA, and it is the thing most short articles get wrong. The two settings you see in TradingView, Amibroker or Python, usually shown as 0.5 and 0.05, are not a fast period and a slow period. They are FastLimit and SlowLimit, the maximum and minimum allowed values of the adaptive smoothing factor called alpha. Calling them lengths is simply incorrect and will confuse you when you try to tune them.

    Every exponential moving average has a smoothing factor alpha between 0 and 1. The relationship between alpha and the familiar EMA period is alpha = 2 divided by (Period + 1), which rearranges to Period = (2 divided by alpha) minus 1. Plug in the two MAMA limits and the picture becomes concrete. When MAMA runs at its FastLimit of 0.5, it behaves like a 3 period EMA. When it crawls at its SlowLimit of 0.05, it behaves like a 39 period EMA. MAMA continuously slides its alpha between these two values depending on the measured cycle phase.

    MAMA inputAlpha valueEquivalent EMA periodBehaviour
    FastLimit0.50(2 / 0.50) - 1 = 3 barsReacts almost instantly, hugs price during fast trends
    Mid range0.20(2 / 0.20) - 1 = 9 barsBalanced speed, typical during a developing move
    Mid range0.10(2 / 0.10) - 1 = 19 barsSmooth, similar to a standard 20 EMA
    SlowLimit0.05(2 / 0.05) - 1 = 39 barsVery smooth, filters chop in sideways markets
    Tip

    If your platform asks for FastLimit and SlowLimit, leave them at 0.5 and 0.05 first. These are not lengths you increase to slow the average down. Lowering FastLimit makes the fast line less jumpy, and raising SlowLimit makes the slow floor faster. Most India traders never need to touch them on the 15 minute or daily chart.

    How MAMA Decides Its Speed: The Phase Logic

    MAMA's speed is driven by how fast the market's phase angle is rotating. Ehlers runs the price through a Hilbert Transform to split it into an in phase and a quadrature component, then computes a phase angle for the current bar. He measures DeltaPhase, the change in phase from the previous bar to this bar, and floors it at 1 degree so the maths never blows up. The adaptive alpha is then calculated as alpha = FastLimit divided by DeltaPhase, and finally clamped so it can never go above FastLimit or below SlowLimit.

    The intuition is clean. When a real trend kicks in, the phase rotates slowly and steadily, DeltaPhase is small, so FastLimit divided by a small number gives a large alpha. A large alpha means MAMA speeds up and tracks the trend closely. When price chops sideways, the phase whips back and forth, DeltaPhase is large, so alpha collapses toward the SlowLimit of 0.05 and MAMA goes quiet, ignoring the noise. You do not have to compute any of this by hand, but knowing the mechanism tells you exactly why MAMA tightens in trends and loosens in ranges.

    • Step 1: Smooth the price using a weighted average of the last four bars to reduce noise.
    • Step 2: Use the Hilbert Transform to get in phase and quadrature components and the phase angle.
    • Step 3: Compute DeltaPhase, the bar to bar change in phase, floored at 1 degree.
    • Step 4: alpha = FastLimit / DeltaPhase, then clamp between SlowLimit 0.05 and FastLimit 0.5.
    • Step 5: MAMA = alpha times Price plus (1 minus alpha) times previous MAMA. FAMA uses half of that alpha.

    A Worked Number: One MAMA Bar on Nifty

    Let us compute a single MAMA update by hand so the formula stops feeling abstract. Suppose on the daily Nifty chart yesterday's MAMA value was 23,400 and today Nifty closes at 23,650, a strong trend day. The phase is rotating slowly, so the engine measures a DeltaPhase of about 1.5 degrees. The adaptive alpha is FastLimit divided by DeltaPhase, that is 0.5 divided by 1.5, which is roughly 0.33. Since 0.33 sits between 0.05 and 0.5 it is not clamped.

    Now apply the EMA step. MAMA today = alpha times price plus (1 minus alpha) times previous MAMA = 0.33 times 23,650 plus 0.67 times 23,400 = 7,804.5 plus 15,678 = 23,482.5. FAMA uses half the alpha, so 0.165. FAMA today = 0.165 times 23,482.5 plus 0.835 times its previous value. With MAMA at 23,482.5 climbing above a slower FAMA, the lines have produced a fresh bullish cross. Notice that an alpha of 0.33 here is acting like a 5 bar EMA, much faster than a fixed 20 EMA, which is exactly why MAMA caught the move early. The numbers are illustrative and rounded to show the mechanism.

    Why this beats a fixed EMA

    On that same trend day a fixed 20 EMA would have used alpha 0.095 and barely moved from 23,400 to about 23,424. MAMA used alpha 0.33 and jumped to 23,482, sitting far closer to price. When the move was real, MAMA leaned in. That responsiveness is the entire point of the indicator.

    Reading MAMA and FAMA Crossovers

    Forget the idea of MAMA crossing the price line, which the older version of this page suggested. The clean, tradable signal is the MAMA versus FAMA crossover. When MAMA (the fast line) crosses above FAMA (the slow line), it signals the start of an upward leg. When MAMA crosses below FAMA, it signals a downward leg. Because both lines adapt, the gap between them widens fast when a trend is strong and pinches shut when momentum dies, giving you an early heads up that the trend is stalling.

    In a clear trend the two lines separate and ride parallel, with MAMA hugging price and FAMA trailing below as dynamic support. In a sideways Nifty session the two lines twist around each other producing several crosses, most of which are noise. This is why MAMA is a trend tool, not a chop tool. Use it to stay in winners and to exit when MAMA folds back through FAMA, and use a separate filter to decide whether the market is trending at all.

    • Bullish: MAMA crosses above FAMA, the lines fan apart, price holds above MAMA.
    • Bearish: MAMA crosses below FAMA, the lines fan apart to the downside.
    • Caution: MAMA and FAMA repeatedly cross within a narrow band means the market is ranging, so stand aside.
    • Exit warning: the gap between MAMA and FAMA stops widening and starts shrinking, momentum is fading.

    A Full Nifty Options Trade Using a MAMA Cross

    Here is a fully worked, illustrative F&O example on the Nifty 50, lot size 65. On a 15 minute chart MAMA crosses above FAMA at a Nifty spot of 23,500 with the lines fanning apart, a clean bullish trigger. Rather than buy futures, the trader buys one lot of the weekly 23,500 call at a premium of Rs 120. Cost of entry is 120 times 75 = Rs 9,000 plus charges.

    Nifty trends up to 23,720 over the next two hours. MAMA stays above FAMA the whole way and the trader exits when the gap between the lines starts pinching shut, selling the call at a premium of Rs 210. Exit value is 210 times 75 = Rs 15,750. Gross profit is 15,750 minus 9,000 = Rs 6,750 before costs. Now subtract realistic costs: STT on options is charged at 0.1 percent on the sell side premium, so 0.1 percent of 15,750 is about Rs 16. Brokerage at a flat Rs 20 per order on two legs is Rs 40. Exchange transaction charges, GST at 18 percent on brokerage and STT, SEBI fees and stamp duty together add roughly Rs 60 to Rs 90. Total charges land near Rs 130, leaving a net profit of about Rs 6,620 on a Rs 9,000 outlay.

    ItemValue
    InstrumentNifty weekly 23,500 CE, lot 65
    MAMA cross above FAMA at spot23,500
    Buy premiumRs 120 (cost Rs 9,000)
    Exit premium when MAMA-FAMA gap pinchesRs 210 (value Rs 15,750)
    Gross profitRs 6,750
    STT, brokerage, GST, exchange and stampapprox Rs 130
    Net profit (illustrative)approx Rs 6,620
    Tax note

    Profit from F&O is treated as business income in India and taxed at your slab rate, not at the 20 percent equity STCG rate. There is no separate capital gains rate for options trading. Keep a trade log because business income lets you set off losses and claim expenses, subject to audit thresholds. This is general information, not tax advice.

    MAMA Versus a Standard 20 and 50 EMA Cross

    Most Indian traders already know the 20 over 50 EMA crossover. MAMA is best understood as the adaptive cousin of that setup. The table below compares them on the things that actually matter intraday on Nifty and Bank Nifty, so you can decide whether MAMA earns a slot on your chart.

    Feature20 / 50 EMA crossMAMA / FAMA cross
    Speed in a fast trendFixed, lags the moveSpeeds up to a 3 to 5 bar feel, leans into the move
    Behaviour in a rangeMany whipsaw crossesSlows toward a 39 bar feel, fewer crosses
    Signal lagHigher, you enter lateLower, you enter a few bars earlier
    Settings to tuneTwo periods (20 and 50)Two alpha limits (0.5 and 0.05), rarely changed
    Best marketStrong sustained trendsTrends that start and stop, like expiry day Bank Nifty
    WeaknessLate and choppyStill fires false crosses in a dead range

    The honest summary is that MAMA gives you earlier entries and cleaner trailing in markets that swing between trend and chop, which describes Indian indices well. It does not magically remove false signals in a flat market. If Nifty is stuck in a 60 point box, MAMA and FAMA will still tangle, so you need a regime filter to switch the strategy off.

    Practical Settings and Timeframes for Indian Markets

    Keep the defaults of FastLimit 0.5 and SlowLimit 0.05 as your starting point on every timeframe. They are sensible across instruments and you should change them only after you have backtested a specific change. The real lever you control on Indian charts is the timeframe, not the alpha limits. For positional swing trades on Nifty, Reliance or HDFC Bank, use the daily chart. For intraday index trading on Nifty and Bank Nifty, the 5 minute and 15 minute charts give the best balance of signal and noise.

    • Positional swing on stocks and indices: daily chart, default 0.5 and 0.05.
    • Intraday index trend trades: 15 minute chart for the trend, 5 minute for entries.
    • Scalping Bank Nifty: 3 or 5 minute chart, but expect more false crosses and tighter stops.
    • If you must adjust, lower FastLimit toward 0.4 to calm a jumpy fast line on noisy 1 minute charts.
    • Never raise SlowLimit so high that the slow line stops being slow, you lose the smoothing benefit.

    A common and robust workflow is to use MAMA over FAMA on the 15 minute chart to define the trend direction, then drop to the 5 minute chart and take only trades in that direction when the 5 minute MAMA also turns up. This multi timeframe alignment cuts down on the range bound whipsaws that plague any single timeframe moving average system on Indian indices.

    Combining MAMA With Other Tools

    MAMA tells you direction and speed, but it does not measure whether a market is trending or ranging, and it does not measure overbought or oversold conditions. Pair it with a momentum or volume tool to confirm. A reliable combination on Indian indices is MAMA over FAMA for direction, the Relative Strength Index above 50 to confirm bullish momentum, and rising volume to confirm participation. Take the long only when all three agree.

    A second useful filter is ADX. Because MAMA's weakness is the flat market, an ADX reading above roughly 20 to 25 tells you a trend is present and the MAMA cross is worth taking, while an ADX below 20 tells you to ignore the crosses. This directly patches the one structural flaw of an adaptive moving average, which is that it still fires in a dead range. Always size positions with proper risk management rather than trusting any single indicator.

    • MAMA over FAMA for direction, RSI above 50 for momentum, rising volume for confirmation.
    • Add ADX above 20 to 25 as a trend filter so you skip MAMA crosses in flat markets.
    • Use the previous swing low below MAMA as a logical stop loss, not a random fixed number.
    • Confirm on a higher timeframe before committing real size.

    Limitations and the Honest Catch

    MAMA is adaptive, not psychic. Its core weakness is the sideways market. When Nifty drifts in a narrow range, the phase rotates erratically, alpha drops to the SlowLimit floor, and MAMA and FAMA repeatedly cross by tiny amounts. Each of those crosses can look like a signal and each can lose you a small amount in premium decay and costs. Across a flat afternoon those small losses add up, so a regime filter is not optional, it is essential.

    The second limitation is implementation differences. The Hilbert Transform that MAMA uses has a warm up period, so the first 30 to 40 bars after you load a chart are unreliable, and two platforms can show slightly different MAMA values because of how they handle that warm up and the initial smoothing. Always let enough history load and never compare MAMA values across two tools as if they must match to the rupee.

    Market conditionWhat MAMA doesYour action
    Strong trendSpeeds up, hugs price, lines fan apartFollow MAMA over FAMA, trail the stop under MAMA
    Sideways rangeSlows down but still tangles, many tiny crossesUse ADX filter, stand aside, do not trade every cross
    First 30 to 40 bars after loadWarm up, values unreliableWait for the indicator to settle before acting

    Sources and Further Reading

    MAMA was first published by John Ehlers in his September 2001 article and later in his book Rocket Science for Traders. For Indian market mechanics, contract specifications, lot sizes and charges, refer to Zerodha Varsity, Investopedia and NSE India. Always confirm current STT rates, lot sizes and expiry rules on the official NSE source and with your broker before you trade.

    Sources and Further Reading

    For authoritative data and further reading on this topic, refer to Zerodha Varsity, Investopedia and NSE India. Always confirm current rules, rates and contract specifications on the official source before you trade.

    Related Topics

    MAMA indicatorAdaptive Moving AverageNSEBSEIndian stock trading

    Related Articles

    OneTradeJournal

    The trading journal built for Indian F&O traders. Track your trades, spot patterns, build discipline.

    • Log one trade a day by hand, on purpose
    • AI mentor finds your repeat mistakes
    • Behavioural analytics catch tilt early
    • Trading calendar with P&L heatmap
    • Pre-trade checklist flags risks
    Start journaling

    Yearly ₹2,499 · No broker credentials