NEWAI Portfolio Risk Engine is live for stress testing and hedge planningExplore engine →
📊 TECHNICAL

Arnaud Legoux Moving Average (ALMA)

A Gaussian-weighted moving average created by Arnaud Legoux and Dimitrios Kouzis-Loukas in 2009 that reduces both lag and noise by shifting its weighting curve toward recent prices.

A
Arnaud Legoux
Strategy Author
Updated 15 Jul 2026
70KUses
4000Likes
0Comments
📊 Open on Chart
Live Demo — Arnaud Legoux Moving Average (ALMA) applied to NIFTY 50 (illustrative)
PriceEMA(9)EMA(21)SMA(20)

What is ALMA?

Created in 2009 by Arnaud Legoux and Dimitrios Kouzis-Loukas. It applies a Gaussian weighting curve across the lookback window, shifted toward recent bars via an offset parameter, giving independent control over lag versus smoothness.

Formula

m = floor(offset*(n-1)), s = n/sigma
w(i) = exp( -((i-m)^2) / (2*s^2) )
ALMA = Sum(w(i)*Price(i)) / Sum(w(i))

Parameters

ParameterDefaultDescription
Window (n)9Number of bars in the Gaussian window
Offset0.85Shifts the weighting peak toward recent or older bars
Sigma6Controls the width/smoothness of the curve
SourceClosePrice field used

Signal Interpretation

  • Price crossing ALMA is a low-lag trend signal, typically smoother than an EMA crossover.
  • ALMA slope indicates short-term trend bias with less jitter than an EMA of the same window.
  • A high-offset ALMA hugs recent price and reacts fast; low-offset behaves like a delayed average.
  • Two ALMA lines with different windows crossing form a dual-average trend system.

Tips & Best Practices

  • Increase offset toward 1 for faster response; decrease toward 0.5 for a smoother line.
  • Raise sigma to smooth noise at the cost of slightly more lag.
  • Good fast-average replacement for EMA where fewer whipsaws are desired.