Center of Gravity (CG)

Parameters: period = 14 (2–200)

Overview

The Center of Gravity (CG) oscillator, developed by John Ehlers in 2002, identifies every major turning point with essentially zero lag. This unique indicator applies physics concepts to find the "balance point" of price movements, just as physical objects have a center of gravity. By calculating where prices balance over a specified period, it provides early identification of potential reversals that other indicators miss.

Ehlers, an electrical engineer turned trader since 1976, created this indicator by observing how filter lags relate to their coefficients. The smoothing effect enables clear identification of turning points without distractions, while the zero lag aspect allows traders to take action early in the move. This makes CG particularly powerful for cycle analysis and timing market entries and exits.

Interpretation & Trading Signals

Core Trading Signals:

  • Green Line: Buy signal - indicator turns green when upward momentum begins
  • Red Line: Sell signal - indicator turns red when downward momentum starts
  • Zero Lag: Acts on turning points without traditional moving average delay
  • Smooth Output: Filters noise for clear, actionable signals

Advanced Variations (2025):

  • Stochastic CG: Combines cycle analysis with stochastic momentum (Cybernetic Analysis pg 79-80)
  • Fisher Stochastic CG: Captures beginning of cycles and rides to completion (pg 95)
  • Adaptive CG: Adjusts to current cycle period for dynamic market conditions
  • Instantaneous Trendline: August 2006 strategy shows 17 years of profitable out-of-sample results

Cycle Analysis Integration:

  • Dominant Cycle: Ehlers recommends 15-period setting for E-mini futures daily data
  • Adaptive Tuning: Indicators must adapt to shifts in dominant cycle to avoid failure
  • Trend Confirmation: Best paired with trend confirmation indicators during strong moves
  • Intraday Cycles: Stocks change underlying trends often, especially during the day

Example Usage

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

Performance Analysis

Related Indicators