Skip to content

stoch module

Module with STOCH.


STOCH class

STOCH(
    wrapper,
    input_list,
    input_mapper,
    in_output_list,
    output_list,
    param_list,
    mapper_list,
    short_name,
    **kwargs
)

Stochastic Oscillator (STOCH).

A stochastic oscillator is a momentum indicator comparing a particular closing price of a security to a range of its prices over a certain period of time. It is used to generate overbought and oversold trading signals, utilizing a 0-100 bounded range of values.

See Stochastic Oscillator.

Superclasses

Inherited members

Subclasses

  • vectorbtpro.indicators.custom.stoch._STOCH

apply_func method

STOCH.apply_func(
    high,
    low,
    close,
    fast_k_window=14,
    slow_k_window=3,
    slow_d_window=3,
    wtype=0,
    slow_k_wtype=None,
    slow_d_wtype=None,
    minp=None,
    fast_k_minp=None,
    slow_k_minp=None,
    slow_d_minp=None,
    adjust=False,
    slow_k_adjust=None,
    slow_d_adjust=None
)

2-dim version of stoch_1d_nb.


cache_func class variable


close property

Input array.


close_above method

STOCH.close_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where close is above other.

See combine_objs().


close_below method

STOCH.close_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where close is below other.

See combine_objs().


close_crossed_above method

STOCH.close_crossed_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where close is crossed_above other.

See combine_objs().


close_crossed_below method

STOCH.close_crossed_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where close is crossed_below other.

See combine_objs().


close_equal method

STOCH.close_equal(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where close is equal other.

See combine_objs().


close_stats method

STOCH.close_stats(
    *args,
    **kwargs
)

Stats of close as generic.


custom_func method

IndicatorFactory.with_apply_func.<locals>.custom_func(
    input_tuple,
    in_output_tuple,
    param_tuple,
    *_args,
    input_shape=None,
    per_column=False,
    split_columns=False,
    skipna=False,
    return_cache=False,
    use_cache=True,
    jitted_loop=False,
    jitted_warmup=False,
    param_index=None,
    final_index=None,
    single_comb=False,
    execute_kwargs=None,
    **_kwargs
)

Custom function that forwards inputs and parameters to apply_func.


fast_k property

Output array.


fast_k_above method

STOCH.fast_k_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where fast_k is above other.

See combine_objs().


fast_k_below method

STOCH.fast_k_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where fast_k is below other.

See combine_objs().


fast_k_crossed_above method

STOCH.fast_k_crossed_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where fast_k is crossed_above other.

See combine_objs().


fast_k_crossed_below method

STOCH.fast_k_crossed_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where fast_k is crossed_below other.

See combine_objs().


fast_k_equal method

STOCH.fast_k_equal(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where fast_k is equal other.

See combine_objs().


fast_k_stats method

STOCH.fast_k_stats(
    *args,
    **kwargs
)

Stats of fast_k as generic.


fast_k_window_list property

List of fast_k_window values.


high property

Input array.


high_above method

STOCH.high_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where high is above other.

See combine_objs().


high_below method

STOCH.high_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where high is below other.

See combine_objs().


high_crossed_above method

STOCH.high_crossed_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where high is crossed_above other.

See combine_objs().


high_crossed_below method

STOCH.high_crossed_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where high is crossed_below other.

See combine_objs().


high_equal method

STOCH.high_equal(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where high is equal other.

See combine_objs().


high_stats method

STOCH.high_stats(
    *args,
    **kwargs
)

Stats of high as generic.


low property

Input array.


low_above method

STOCH.low_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where low is above other.

See combine_objs().


low_below method

STOCH.low_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where low is below other.

See combine_objs().


low_crossed_above method

STOCH.low_crossed_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where low is crossed_above other.

See combine_objs().


low_crossed_below method

STOCH.low_crossed_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where low is crossed_below other.

See combine_objs().


low_equal method

STOCH.low_equal(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where low is equal other.

See combine_objs().


low_stats method

STOCH.low_stats(
    *args,
    **kwargs
)

Stats of low as generic.


param_select_func_nb method

STOCH.param_select_func_nb(
    i,
    args_before,
    high,
    low,
    close,
    fast_k_window,
    slow_k_window,
    slow_d_window,
    wtype,
    slow_k_wtype,
    slow_d_wtype,
    *args
)

plot method

_STOCH.plot(
    column=None,
    limits=(20, 80),
    fast_k_trace_kwargs=None,
    slow_k_trace_kwargs=None,
    slow_d_trace_kwargs=None,
    add_shape_kwargs=None,
    add_trace_kwargs=None,
    fig=None,
    **layout_kwargs
)

Plot STOCH.slow_k and STOCH.slow_d.

Args

column : str
Name of the column to plot.
limits : tuple of float
Tuple of the lower and upper limit.
fast_k_trace_kwargs : dict
Keyword arguments passed to plotly.graph_objects.Scatter for STOCH.fast_k.
slow_k_trace_kwargs : dict
Keyword arguments passed to plotly.graph_objects.Scatter for STOCH.slow_k.
slow_d_trace_kwargs : dict
Keyword arguments passed to plotly.graph_objects.Scatter for STOCH.slow_d.
add_shape_kwargs : dict
Keyword arguments passed to fig.add_shape when adding the range between both limits.
add_trace_kwargs : dict
Keyword arguments passed to fig.add_trace when adding each trace.
fig : Figure or FigureWidget
Figure to add traces to.
**layout_kwargs
Keyword arguments passed to fig.update_layout.

Usage

>>> vbt.STOCH.run(ohlcv['High'], ohlcv['Low'], ohlcv['Close']).plot().show()


run class method

STOCH.run(
    high,
    low,
    close,
    fast_k_window=Default(value=14),
    slow_k_window=Default(value=3),
    slow_d_window=Default(value=3),
    wtype=Default(value='simple'),
    slow_k_wtype=Default(value=None),
    slow_d_wtype=Default(value=None),
    short_name='stoch',
    hide_params=None,
    hide_default=True,
    **kwargs
)

Run STOCH indicator.

  • Inputs: high, low, close
  • Parameters: fast_k_window, slow_k_window, slow_d_window, wtype, slow_k_wtype, slow_d_wtype
  • Outputs: fast_k, slow_k, slow_d

Pass a list of parameter names as hide_params to hide their column levels, or True to hide all. Set hide_default to False to show the column levels of the parameters with a default value.

Other keyword arguments are passed to IndicatorBase.run_pipeline().


run_combs class method

STOCH.run_combs(
    high,
    low,
    close,
    fast_k_window=Default(value=14),
    slow_k_window=Default(value=3),
    slow_d_window=Default(value=3),
    wtype=Default(value='simple'),
    slow_k_wtype=Default(value=None),
    slow_d_wtype=Default(value=None),
    r=2,
    param_product=False,
    comb_func=itertools.combinations,
    run_unique=True,
    short_names=None,
    hide_params=None,
    hide_default=True,
    **kwargs
)

Create a combination of multiple STOCH indicators using function comb_func.

  • Inputs: high, low, close
  • Parameters: fast_k_window, slow_k_window, slow_d_window, wtype, slow_k_wtype, slow_d_wtype
  • Outputs: fast_k, slow_k, slow_d

comb_func must accept an iterable of parameter tuples and r. Also accepts all combinatoric iterators from itertools such as itertools.combinations. Pass r to specify how many indicators to run. Pass short_names to specify the short name for each indicator. Set run_unique to True to first compute raw outputs for all parameters, and then use them to build each indicator (faster).

Other keyword arguments are passed to STOCH.run().

Note

This method should only be used when multiple indicators are needed. To test multiple parameters, pass them as lists to STOCH.run().


slow_d property

Output array.


slow_d_above method

STOCH.slow_d_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where slow_d is above other.

See combine_objs().


slow_d_below method

STOCH.slow_d_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where slow_d is below other.

See combine_objs().


slow_d_crossed_above method

STOCH.slow_d_crossed_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where slow_d is crossed_above other.

See combine_objs().


slow_d_crossed_below method

STOCH.slow_d_crossed_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where slow_d is crossed_below other.

See combine_objs().


slow_d_equal method

STOCH.slow_d_equal(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where slow_d is equal other.

See combine_objs().


slow_d_stats method

STOCH.slow_d_stats(
    *args,
    **kwargs
)

Stats of slow_d as generic.


slow_d_window_list property

List of slow_d_window values.


slow_d_wtype_list property

List of slow_d_wtype values.


slow_k property

Output array.


slow_k_above method

STOCH.slow_k_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where slow_k is above other.

See combine_objs().


slow_k_below method

STOCH.slow_k_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where slow_k is below other.

See combine_objs().


slow_k_crossed_above method

STOCH.slow_k_crossed_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where slow_k is crossed_above other.

See combine_objs().


slow_k_crossed_below method

STOCH.slow_k_crossed_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where slow_k is crossed_below other.

See combine_objs().


slow_k_equal method

STOCH.slow_k_equal(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where slow_k is equal other.

See combine_objs().


slow_k_stats method

STOCH.slow_k_stats(
    *args,
    **kwargs
)

Stats of slow_k as generic.


slow_k_window_list property

List of slow_k_window values.


slow_k_wtype_list property

List of slow_k_wtype values.


wtype_list property

List of wtype values.