Skip to main content

stoch

Calculate the Stochastic Oscillator.

The Stochastic Oscillator measures where the close is in relation to the recent trading range. The values range from zero to 100. %D values over 75 indicate an overbought condition; values under 25 indicate an oversold condition. When the Fast %D crosses above the Slow %D, it is a buy signal; when it crosses below, it is a sell signal. The Raw %K is generally considered too erratic to use for crossover signals.

Example:​

from openbb import obb
stock_data = obb.equity.price.historical(symbol="TSLA", start_date="2023-01-01", provider="fmp")
stoch_data = obb.technical.stoch(data=stock_data.results, fast_k_period=14, slow_d_period=3, slow_k_period=3)

Parameters​

NameTypeDescriptionDefaultOptional
dataList[Data]The data to use for the Stochastic Oscillator calculation.NoneFalse
indexstrIndex column name to use with data, by default "date".dateTrue
fast_k_periodNonNegativeIntThe fast %K period, by default 14.14True
slow_d_periodNonNegativeIntThe slow %D period, by default 3.3True
slow_k_periodNonNegativeIntThe slow %K period, by default 3.3True

Returns​

The Stochastic Oscillator data.