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.False
indexstrIndex column name to use with data, by default "date".dateFalse
fast_k_periodintThe fast %K period, by default 14.14False
slow_d_periodintThe slow %D period, by default 3.3False
slow_k_periodintThe slow %K period, by default 3.3False

Returns​

OBBject
results : List[Data]
The Stochastic Oscillator data.