Kaufman Adaptive Moving Average

Parameters: period = 10 (2–200) fast_period = 2 (2–50) slow_period = 30 (10–200)

Overview

The Kaufman Adaptive Moving Average (KAMA), developed by Perry Kaufman, is a sophisticated trend-following indicator that solves the age-old problem of choosing between responsive and smooth moving averages. KAMA automatically adjusts its sensitivity based on the Efficiency Ratio (ER), which measures directional movement versus total volatility over a specified period.

During strong trends, KAMA behaves like a fast moving average, staying close to price and providing timely signals. During sideways or noisy markets, it acts like a slow moving average, maintaining distance from price to avoid false signals. This adaptive behavior makes it particularly effective for trend following while minimizing whipsaws that plague fixed-period moving averages.

Interpretation & Trading Signals

Key Components:

  • Efficiency Ratio (ER): Direction/Volatility, ranges 0-1 (0=noisy, 1=trending)
  • Smoothing Constant (SC): Adapts between fast (2) and slow (30) EMAs based on ER
  • KAMA Formula: KAMA = Prior KAMA + SC × (Price - Prior KAMA)
  • Default Settings: KAMA(10,2,30) as recommended by Kaufman

Trading Signals:

  • Trend Direction: Rising KAMA = uptrend, falling KAMA = downtrend
  • Buy Signal: Price crosses above KAMA or fast KAMA crosses above slow KAMA
  • Sell Signal: Price crosses below KAMA or fast KAMA crosses below slow KAMA
  • Support/Resistance: KAMA acts as dynamic support in uptrends, resistance in downtrends

Advantages & Applications:

  • Noise Reduction: Superior to SMA in filtering false signals during choppy markets
  • Risk Management: Place stops below KAMA (longs) or above KAMA (shorts)
  • Multi-Market: Works effectively in stocks, futures, and forex
  • Parameter Tuning: Increase middle parameter (e.g., 5 vs 2) for smoother results

Example Usage

Code examples will be available once the Rust implementation is complete.

Performance Analysis

Related Indicators