Indicator Reference · June 2026

Moving Averages (SMA and EMA) — Complete Reference

Smoothed average of recent prices — the foundational tool for trend identification.

Simple vs Exponential

SMA (Simple Moving Average) = arithmetic average of last N periods. EMA (Exponential) weights recent prices more heavily. EMA reacts faster to recent moves; SMA smooths more. Most trend-following systems use EMA; classical technical analysis uses SMA.

The key MA periods

20-period: short-term trend. 50-period: intermediate trend. 200-period: long-term trend / regime. These periods have become self-fulfilling because so many traders watch them — bouncing off the 200-SMA happens partly because everyone expects it.

MA as dynamic support/resistance

In uptrends, price often pulls back to the 20- or 50-EMA before continuing. In downtrends, the same MAs act as resistance. Entries on pullbacks to a key MA with volume confirmation are one of the most documented trend-following setups.

The golden cross and death cross

Golden cross = 50-SMA crosses above 200-SMA (bullish long-term). Death cross = 50-SMA crosses below 200-SMA (bearish). On indexes these are widely-watched but lagging — by the time they print, much of the move has happened.

Multi-MA setups

The 'EMA ribbon' (20, 50, 100, 200) gives a quick visual of trend health. When all MAs are stacked positively (price > 20 > 50 > 100 > 200) and rising, the trend is strong. When they flatten or invert, the trend is weakening.

Common mistakes

Using moving averages alone for entries. MA crossovers in choppy markets whipsaw constantly. Always pair with a regime filter — only trade trend-following signals when the trend is real (ADX > 25).

MAs on different timeframes

Higher timeframe MA defines regime, lower timeframe MA times entries. A common framework: only trade longs when daily price is above 200-SMA, and use the 20-EMA on the hourly chart for entry timing.

Tools that use moving averages

Every charting platform supports MAs natively. SultraxAI uses moving-average alignment as part of its trend filter in the signal model. Try it →

Related