Skip to content
All library documents

Using the Universal Oscillator with Adaptive Channels and Signal Crossings

Article ProRealCode

Summary

This document describes a chart-based implementation of John Ehlers’s Universal indicator. It combines a filtered, normalized oscillator with a moving average price baseline, an average true range channel, and configurable overbought and oversold boundaries. Parameters control the oscillator and filter periods, channel width, ATR calculation, baseline average, and optional smoothing of the oscillator value. The display uses channel levels and color changes to make oscillator direction and position easier to read.

Suggested applications include trend identification, range assessment, reversal setups, and entry or exit signals based on crossings of zero, threshold levels, or the oscillator’s moving average. The code is presented as an indicator implementation rather than a tested trading system: the document reports no performance evidence, rules for confirming signals, or risk controls. Thresholds and periods are configurable, so behavior will depend on instrument, timeframe, and parameter choices; proposed crossings should be evaluated before use in automated trading.

Key ideas

  • The indicator normalizes a filtered price-change measure and plots it against an average price baseline.
  • An ATR-based channel provides configurable overbought and oversold boundaries.
  • Users can enable oscillator smoothing and adjust periods and channel parameters.
  • Potential signal events include crossings of zero, channel thresholds, or the oscillator average.
  • The document gives no backtest evidence, and performance may depend on market and parameter choices.

Tags

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.