Stochastic Regular

Stochastic Regular was authored by Stuart Evens in the Stocks and Commodities Magazine 09/1999. The Stochastic Regular calculation uses close, highest highs and lowest lows. First the fast K (FK) is calculated and then smoothed to produce the slow K (SK) which is used as a signal line. Adjustable guides are given to fine tune the trading signals. The user may change the input (close), period lengths, and slow K method. This indicator’s definition is further expressed in the condensed code given in the calculation below.
See also Stochastic Oscillator.

Stochastic Regular1

How To Trade Using Stochastic Regular

Adjust the top and bottom guides to control the quantity and quality of the trading signals. FK values above 70 are considered to be overbought and therefore offer an opportunity to sell. FK values below 30 are considered oversold and present an opportunity to buy. If the FK is above the top guide and crosses below the SK a sell signal will be generated. Conversely, if the FK is below the bottom guide and crosses above the SK a buy signal will be given. The 50 line divides the bulls above from the bears below.

Stochastic Regular2

How To Access in MotiveWave

Go to the top menu, choose Study>Oscillators>>Stochastic Regular

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 closing price
//fkPeriod = user defined, default is 5
//skPeriod = user defined, default is 3
//method = moving average (ma), user defined, default is SMA
//fk = fast k, sk = slow k (or fast d)
//sma = simple moving average, index = current bar number

Plot1: fk = stochK(index, fkPeriod, key);
Plot2: sk = ma(method, index, skPeriod, fk);
highSell = sk for last sell signal, reset to max_negative at each  buy signal;
lowBuy = sk for last buy signal, reset to max_positive at each sell signal;
sell = crossedBelow(FK, SK) AND sk moreThan topGuide  AND (sk moreThan highSell);
buy = crossedAbove(FK, SK) AND sk lessThan bottGuide AND (sk lessThan lowBuy);