Stochastic Bars

The Stochastic Oscillator was promoted by Dr. George Lane in the 1950s. Stochastic Bars changes the color of the price bars if the Stochastic value is above or below certain user defined values. Stochastics is often used to indicate oversold (top of range) or overbought (bottom of range) conditions. The oscillator’s basic calculation is 100*(current price-period low)/(period high-period low). The user may change the method (EMA) and period lengths. This indicator’s definition is further expressed in the condensed code given in the calculation below.
Click here for more information..

Stochastic Bars1

How To Trade Using Stochastic Bars

Stochastic Bars may identify overbought and oversold conditions. If the VAL is more than the TOP the bar will change to the buy color and a buy signal is generated. Conversely, if the VAL is less than the BOTTOM the bar will change to the sell color and a sell signal will be given.

Stochastic Bars2

How To Access in MotiveWave

Go to the top menu, choose Study>Bar Patterns>Stochastic Bars

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.


//method = moving average (ma), user defined, default is EMA
//kPeriod = user defined, default is 14
//slowPeriod = user defined, default is 3
//fastPeriod = user defined, default is 3
//top = user defined, default is 80
//bottom = user defined, default is 20
//index = current bar number
//MOR= more or equal, LOR= less or equal

//stochasticK=100*(currentClose-lowest)/(highest-lowest); highest and lowest are for kPeriod
highest = highest(index, kPeriod, HIGH);
lowest = lowest(index, kPeriod, LOW);
denom = highest - lowest;
K = 100 * (close - lowest) / denom );
//Calculate the Slow MA
slowK = ma(method, index, slowPeriod, K);
fastK = ma(method, index, fastPeriod, slowK);
if (use d period)
     value = fastK
    val = slowK
buy = val MOR= top;
sell = val LOR= bottom;