Skip to content
New: Star-import, signal unraveling, Python 3.12 support, and more

#
stoch module

Module with STOCH.

## STOCH class

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

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

- Analyzable
- AttrResolverMixin
- Cacheable
- Chainable
- Comparable
- Configured
- ExtPandasIndexer
- HasSettings
- IndexingBase
- IndicatorBase
- PandasIndexer
- Pickleable
- PlotsBuilderMixin
- Prettified
- StatsBuilderMixin
- Wrapping
- `vectorbtpro.indicators.custom.stoch.ParamIndexer`

Inherited members

- AttrResolverMixin.deep_getattr()
- AttrResolverMixin.post_resolve_attr()
- AttrResolverMixin.pre_resolve_attr()
- AttrResolverMixin.resolve_attr()
- AttrResolverMixin.resolve_shortcut_attr()
- Cacheable.get_ca_setup()
- Chainable.pipe()
- Configured.copy()
- Configured.equals()
- Configured.get_writeable_attrs()
- Configured.prettify()
- Configured.replace()
- Configured.resolve_merge_kwargs()
- Configured.update_config()
- HasSettings.get_path_setting()
- HasSettings.get_path_settings()
- HasSettings.get_setting()
- HasSettings.get_settings()
- HasSettings.has_path_setting()
- HasSettings.has_path_settings()
- HasSettings.has_setting()
- HasSettings.has_settings()
- HasSettings.reset_settings()
- HasSettings.resolve_setting()
- HasSettings.resolve_settings_paths()
- HasSettings.set_settings()
- IndexingBase.indexing_setter_func()
- IndicatorBase.cls_dir
- IndicatorBase.column_only_select
- IndicatorBase.column_stack()
- IndicatorBase.config
- IndicatorBase.dropna()
- IndicatorBase.group_select
- IndicatorBase.iloc
- IndicatorBase.in_output_names
- IndicatorBase.indexing_func()
- IndicatorBase.indexing_kwargs
- IndicatorBase.input_names
- IndicatorBase.lazy_output_names
- IndicatorBase.level_names
- IndicatorBase.loc
- IndicatorBase.output_flags
- IndicatorBase.output_names
- IndicatorBase.param_names
- IndicatorBase.plots_defaults
- IndicatorBase.range_only_select
- IndicatorBase.rec_state
- IndicatorBase.row_stack()
- IndicatorBase.run_pipeline()
- IndicatorBase.self_aliases
- IndicatorBase.short_name
- IndicatorBase.stats_defaults
- IndicatorBase.to_dict()
- IndicatorBase.to_frame()
- IndicatorBase.unpack()
- IndicatorBase.wrapper
- IndicatorBase.xloc
- PandasIndexer.xs()
- Pickleable.decode_config()
- Pickleable.decode_config_node()
- Pickleable.dumps()
- Pickleable.encode_config()
- Pickleable.encode_config_node()
- Pickleable.file_exists()
- Pickleable.getsize()
- Pickleable.load()
- Pickleable.loads()
- Pickleable.modify_state()
- Pickleable.resolve_file_path()
- Pickleable.save()
- PlotsBuilderMixin.build_subplots_doc()
- PlotsBuilderMixin.override_subplots_doc()
- PlotsBuilderMixin.plots()
- StatsBuilderMixin.build_metrics_doc()
- StatsBuilderMixin.override_metrics_doc()
- StatsBuilderMixin.stats()
- Wrapping.regroup()
- Wrapping.resample()
- Wrapping.resolve_column_stack_kwargs()
- Wrapping.resolve_row_stack_kwargs()
- Wrapping.resolve_self()
- Wrapping.resolve_stack_kwargs()
- Wrapping.select_col()
- Wrapping.select_col_from_obj()
- Wrapping.split()

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,
        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.

#### Cookie consent

We use cookies to recognize your repeated visits and preferences, as well as to measure the effectiveness of our documentation and whether users find what they're searching for. With your consent, you're helping us to make our documentation better.

- Google Analytics
- GitHub

Manage settings