Back to Indicators
VolatilityLagging

Donchian Channels

Overview

Donchian Channels plot the highest high and lowest low over a specified period, forming a simple but effective volatility envelope and breakout system that powered the legendary Turtle Trading strategy. They are widely used in forex and crypto for trend-following breakout strategies. Compare Donchian Channels with Bollinger Bands and Keltner Channels in our indicator guide library.

How It Works

Upper Channel = highest high over N periods. Lower Channel = lowest low over N periods. Middle Line = (Upper + Lower) / 2. Default period is 20. Price breaking above the upper channel signals a potential new uptrend; breaking below the lower channel signals a potential downtrend.

Key Signals

  • Price breaking above the upper channel = bullish breakout signal.
  • Price breaking below the lower channel = bearish breakout signal.
  • Narrow channels indicate low volatility and a potential explosive move.
  • The middle line acts as a dynamic support/resistance and trend filter.

Common Mistakes

  • Using Donchian breakouts in range-bound markets — they work best in trending environments.
  • Not using a re-entry rule when price whipsaws back inside the channel.
  • Ignoring the middle line as a trailing stop or trend-bias filter.

More Volatility Indicators

Keltner Channels

Keltner Channels plot an EMA with upper and lower bands based on <a href="/academy/indicators/atr" class="text-primary hover:underline">ATR</a>, producing smoother envelopes than <a href="/academy/indicators/bollinger-bands" class="text-primary hover:underline">Bollinger Bands</a> — and the two are frequently used together for the TTM Squeeze setup. This combination identifies low-volatility compression zones that precede explosive <a href="/guides/trade-breakouts" class="text-primary hover:underline">breakout</a> moves in any market. Apply Keltner Channels on <a href="/tools/platforms/tradingview" class="text-primary hover:underline">TradingView</a> and overlay Bollinger Bands to spot squeeze conditions with a single glance.

Ulcer Index

The Ulcer Index measures downside volatility by calculating the depth and duration of drawdowns from recent highs, providing a risk metric that focuses exclusively on the pain investors care about most. It was created by Peter Martin specifically for evaluating <a href="/market/stocks" class="text-primary hover:underline">stock</a> fund performance. Incorporate the Ulcer Index into your risk management alongside tools from our <a href="/academy/indicators" class="text-primary hover:underline">indicator guide library</a> to protect capital during volatile markets.

Historical Volatility

Historical Volatility measures the annualised standard deviation of past log price returns, giving traders a statistical benchmark for how volatile an asset has been. It is essential for options pricing and risk management in <a href="/market/stocks" class="text-primary hover:underline">stocks</a> and increasingly in <a href="/market/crypto" class="text-primary hover:underline">crypto</a> derivatives. Use our <a href="/tools/calculators/position-size" class="text-primary hover:underline">position size calculator</a> to incorporate HV into your risk management workflow.

Bollinger Bands — Volatility Envelopes

Bollinger Bands plot a moving average with upper and lower bands set at 2 standard deviations, expanding during high volatility and contracting during low volatility to create actionable squeeze and breakout signals. The Bollinger Squeeze is especially powerful when combined with <a href="/academy/indicators/keltner-channels" class="text-primary hover:underline">Keltner Channels</a> in the TTM Squeeze setup, a favourite of professional traders. Pair Bollinger Bands with the <a href="/academy/indicators/rsi" class="text-primary hover:underline">RSI</a> to filter false signals and confirm <a href="/guides/trade-breakouts" class="text-primary hover:underline">breakout entries</a>. Set them up on <a href="/tools/platforms/tradingview" class="text-primary hover:underline">TradingView</a> for real-time alerts and multi-timeframe analysis.