Skip to content

bbands module

Module with BBANDS.


BBANDS class

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

Bollinger Bands (BBANDS).

A Bollinger Band® is a technical analysis tool defined by a set of lines plotted two standard deviations (positively and negatively) away from a simple moving average (SMA) of the security's price, but can be adjusted to user preferences.

See Bollinger Band®.

Superclasses

Inherited members

Subclasses

  • vectorbtpro.indicators.custom.bbands._BBANDS

alpha_list class property

List of alpha values.


apply_func method

BBANDS.apply_func(
    close,
    window=14,
    wtype=0,
    alpha=2.0,
    minp=None,
    adjust=False,
    ddof=0
)

Apply function.


bandwidth class property

Custom property.


bandwidth_above method

BBANDS.bandwidth_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where bandwidth is above other.

See combine_objs.


bandwidth_below method

BBANDS.bandwidth_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where bandwidth is below other.

See combine_objs.


bandwidth_crossed_above method

BBANDS.bandwidth_crossed_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where bandwidth is crossed_above other.

See combine_objs.


bandwidth_crossed_below method

BBANDS.bandwidth_crossed_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where bandwidth is crossed_below other.

See combine_objs.


bandwidth_equal method

BBANDS.bandwidth_equal(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where bandwidth is equal other.

See combine_objs.


bandwidth_stats method

BBANDS.bandwidth_stats(
    *args,
    **kwargs
)

Stats of bandwidth as generic.


cache_func NoneType

Cache function.


close class property

Input array.


close_above method

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

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

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

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

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

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


lower class property

Output array.


lower_above method

BBANDS.lower_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where lower is above other.

See combine_objs.


lower_below method

BBANDS.lower_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where lower is below other.

See combine_objs.


lower_crossed_above method

BBANDS.lower_crossed_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where lower is crossed_above other.

See combine_objs.


lower_crossed_below method

BBANDS.lower_crossed_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where lower is crossed_below other.

See combine_objs.


lower_equal method

BBANDS.lower_equal(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where lower is equal other.

See combine_objs.


lower_stats method

BBANDS.lower_stats(
    *args,
    **kwargs
)

Stats of lower as generic.


middle class property

Output array.


middle_above method

BBANDS.middle_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where middle is above other.

See combine_objs.


middle_below method

BBANDS.middle_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where middle is below other.

See combine_objs.


middle_crossed_above method

BBANDS.middle_crossed_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where middle is crossed_above other.

See combine_objs.


middle_crossed_below method

BBANDS.middle_crossed_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where middle is crossed_below other.

See combine_objs.


middle_equal method

BBANDS.middle_equal(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where middle is equal other.

See combine_objs.


middle_stats method

BBANDS.middle_stats(
    *args,
    **kwargs
)

Stats of middle as generic.


param_select_func_nb method

BBANDS.param_select_func_nb(
    i,
    args_before,
    close,
    window,
    wtype,
    alpha,
    *args
)

Parameter selection function.


percent_b class property

Custom property.


percent_b_above method

BBANDS.percent_b_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where percent_b is above other.

See combine_objs.


percent_b_below method

BBANDS.percent_b_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where percent_b is below other.

See combine_objs.


percent_b_crossed_above method

BBANDS.percent_b_crossed_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where percent_b is crossed_above other.

See combine_objs.


percent_b_crossed_below method

BBANDS.percent_b_crossed_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where percent_b is crossed_below other.

See combine_objs.


percent_b_equal method

BBANDS.percent_b_equal(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where percent_b is equal other.

See combine_objs.


percent_b_stats method

BBANDS.percent_b_stats(
    *args,
    **kwargs
)

Stats of percent_b as generic.


plot method

_BBANDS.plot(
    column=None,
    plot_close=True,
    close_trace_kwargs=None,
    upper_trace_kwargs=None,
    middle_trace_kwargs=None,
    lower_trace_kwargs=None,
    add_trace_kwargs=None,
    fig=None,
    **layout_kwargs
)

Plot BBANDS.upper, BBANDS.middle, and BBANDS.lower against BBANDS.close.

Args

column : str
Name of the column to plot.
plot_close : bool
Whether to plot BBANDS.close.
close_trace_kwargs : dict
Keyword arguments passed to plotly.graph_objects.Scatter for BBANDS.close.
upper_trace_kwargs : dict
Keyword arguments passed to plotly.graph_objects.Scatter for BBANDS.upper.
middle_trace_kwargs : dict
Keyword arguments passed to plotly.graph_objects.Scatter for BBANDS.middle.
lower_trace_kwargs : dict
Keyword arguments passed to plotly.graph_objects.Scatter for BBANDS.lower.
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.BBANDS.run(ohlcv['Close']).plot().show()


run class method

BBANDS.run(
    close,
    window=Default(value=14),
    wtype=Default(value='simple'),
    alpha=Default(value=2),
    short_name='bb',
    hide_params=None,
    hide_default=True,
    **kwargs
)

Run BBANDS indicator.

  • Inputs: close
  • Parameters: window, wtype, alpha
  • Outputs: upper, middle, lower
  • Lazy outputs: percent_b, bandwidth

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

BBANDS.run_combs(
    close,
    window=Default(value=14),
    wtype=Default(value='simple'),
    alpha=Default(value=2),
    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 BBANDS indicators using function comb_func.

  • Inputs: close
  • Parameters: window, wtype, alpha
  • Outputs: upper, middle, lower
  • Lazy outputs: percent_b, bandwidth

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 BBANDS.run.

Note

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


upper class property

Output array.


upper_above method

BBANDS.upper_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where upper is above other.

See combine_objs.


upper_below method

BBANDS.upper_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where upper is below other.

See combine_objs.


upper_crossed_above method

BBANDS.upper_crossed_above(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where upper is crossed_above other.

See combine_objs.


upper_crossed_below method

BBANDS.upper_crossed_below(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where upper is crossed_below other.

See combine_objs.


upper_equal method

BBANDS.upper_equal(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return True for each element where upper is equal other.

See combine_objs.


upper_stats method

BBANDS.upper_stats(
    *args,
    **kwargs
)

Stats of upper as generic.


window_list class property

List of window values.


wtype_list class property

List of wtype values.