Acceleration Oscillator

Building on his Awesome Oscillator, Bill Williams authored the Acceleration Oscillator (ACO). The ACO measures the acceleration and deceleration of the current driving force. This indicator will change direction before any changes in the driving force, which, if its turn, will change its direction before the price. The ACO is the difference between the Awesome Oscillator and its 5 period SMA. The user may change input (midpoint), method (SMA) and period lengths. This indicator’s definition is further expressed in the condensed code given in the calculation below.
See also Awesome Oscillator.

Acceleration Oscillator

How To Trade Using Acceleration Oscillator

No trading signals are calculated for this indicator.

How To Access in MotiveWave

Go to the top menu, choose Study>Bill Williams>Acceleration Oscillator

or go to the top menu, choose Add Study, start typing in this study name until you see it appear in the list, click on the study name, click OK.

Important Disclaimer: The information provided on this page is strictly for informational purposes and is not to be construed as advice or solicitation to buy or sell any security. Please see our Risk Disclosure and Performance Disclaimer Statement.


//input = price, user defined, default is Midpoint
//method = moving average (ma), user defined, default is SMA
//slowPeriod = user defined, default is 34
//fastPeriod = user defined, default is 5
//accelPeriod = user defined, default is 5
//index = current bar number

slowMA = ma(method, index, slowPeriod, input);
fastMA = ma(method, index, fastPeriod, input);
// Awesome oscillator is the difference between the fast and slow moving averages
ao = fastMA - slowMA;
// Moving average of the Awesome Oscillator value
aoMA = ma(method, index, accelPeriod, AO);
// Acceleration Oscillator is the difference between the Awesome Oscillator value and its  moving average
PlotHist: ACO = ao - aoMA;