Skip to content

rprobnx module

Module with RPROBNX.


RPROBNX class

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

Random entry and exit signal generator based on probabilities.

Generates entries and exits based on rand_by_prob_place_nb.

See RPROB for notes on parameters.

Usage

Test all probability combinations:

>>> from vectorbtpro import *

>>> rprobnx = vbt.RPROBNX.run(
...     input_shape=(5,),
...     entry_prob=[0.5, 1.],
...     exit_prob=[0.5, 1.],
...     param_product=True,
...     seed=42)

>>> rprobnx.entries
rprobnx_entry_prob    0.5    0.5    1.0    0.5
rprobnx_exit_prob     0.5    1.0    0.5    1.0
0                    True   True   True   True
1                   False  False  False  False
2                   False  False  False   True
3                   False  False  False  False
4                   False  False   True   True

>>> rprobnx.exits
rprobnx_entry_prob    0.5    0.5    1.0    1.0
rprobnx_exit_prob     0.5    1.0    0.5    1.0
0                   False  False  False  False
1                   False   True  False   True
2                   False  False  False  False
3                   False  False   True   True
4                    True  False  False  False

Probabilities can also be set per row, column, or element:

>>> entry_prob1 = np.array([1., 0., 1., 0., 1.])
>>> entry_prob2 = np.array([0., 1., 0., 1., 0.])
>>> rprobnx = vbt.RPROBNX.run(
...     input_shape=(5,),
...     entry_prob=[entry_prob1, entry_prob2],
...     exit_prob=1.,
...     seed=42)

>>> rprobnx.entries
rprobnx_entry_prob array_0 array_1
rprobnx_exit_prob      1.0     1.0
0                     True   False
1                    False    True
2                     True   False
3                    False    True
4                     True   False

>>> rprobnx.exits
rprobnx_entry_prob array_0 array_1
rprobnx_exit_prob      1.0     1.0
0                    False   False
1                     True   False
2                    False    True
3                     True   False
4                    False    True

Superclasses

Inherited members

Subclasses

  • vectorbtpro.signals.generators.rprobnx._RPROBNX

apply_func method

RPROBNX.apply_func(
    i,
    target_shape,
    _entry_entry_prob,
    entry_args,
    _exit_exit_prob,
    exit_args,
    entry_wait,
    exit_wait
)

Apply function.


custom_func method

SignalFactory.with_place_func.<locals>.custom_func(
    input_list,
    in_output_list,
    param_list,
    *args,
    input_shape=None,
    place_args=None,
    entry_place_args=None,
    exit_place_args=None,
    entry_args=None,
    exit_args=None,
    cache_args=None,
    entry_kwargs=None,
    exit_kwargs=None,
    cache_kwargs=None,
    return_cache=False,
    use_cache=None,
    execute_kwargs=None,
    **_kwargs
)

Custom function.


entries class property

Output array.


entries_and method

RPROBNX.entries_and(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return entries AND other.

See combine_objs.


entries_or method

RPROBNX.entries_or(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return entries OR other.

See combine_objs.


entries_stats method

RPROBNX.entries_stats(
    *args,
    **kwargs
)

Stats of entries as signals.


entries_xor method

RPROBNX.entries_xor(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return entries XOR other.

See combine_objs.


entry_place_func_nb method

RPROBNX.entry_place_func_nb(
    c,
    prob,
    pick_first=False
)

Entry placement function.


entry_prob_list class property

List of entry_prob values.


exit_place_func_nb method

RPROBNX.exit_place_func_nb(
    c,
    prob,
    pick_first=False
)

Exit placement function.


exit_prob_list class property

List of exit_prob values.


exits class property

Output array.


exits_and method

RPROBNX.exits_and(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return exits AND other.

See combine_objs.


exits_or method

RPROBNX.exits_or(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return exits OR other.

See combine_objs.


exits_stats method

RPROBNX.exits_stats(
    *args,
    **kwargs
)

Stats of exits as signals.


exits_xor method

RPROBNX.exits_xor(
    other,
    level_name=None,
    allow_multiple=True,
    **kwargs
)

Return exits XOR other.

See combine_objs.


plot method

SignalFactory.__init__.<locals>.plot(
    _self,
    column=None,
    entry_y=None,
    exit_y=None,
    entry_types=None,
    exit_types=None,
    entry_trace_kwargs=None,
    exit_trace_kwargs=None,
    fig=None,
    **kwargs
)

Plot RPROBNX.entries and RPROBNX.exits.

Args

entry_y : array_like
Y-axis values to plot entry markers on.
exit_y : array_like
Y-axis values to plot exit markers on.
entry_types : array_like
Entry types in string format.
exit_types : array_like
Exit types in string format.
entry_trace_kwargs : dict
Keyword arguments passed to SignalsAccessor.plot_as_entries for RPROBNX.entries.
exit_trace_kwargs : dict
Keyword arguments passed to SignalsAccessor.plot_as_exits for RPROBNX.exits.
fig : Figure or FigureWidget
Figure to add traces to.
**kwargs
Keyword arguments passed to SignalsAccessor.plot_as_markers.

run class method

RPROBNX.run(
    input_shape,
    entry_prob,
    exit_prob,
    short_name='rprobnx',
    hide_params=None,
    hide_default=True,
    input_index=None,
    input_columns=None,
    **kwargs
)

Run RPROBNX indicator.

  • Parameters: entry_prob, exit_prob
  • Outputs: entries, exits

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

RPROBNX.run_combs(
    input_shape,
    entry_prob,
    exit_prob,
    r=2,
    param_product=False,
    comb_func=itertools.combinations,
    run_unique=True,
    short_names=None,
    hide_params=None,
    hide_default=True,
    input_index=None,
    input_columns=None,
    **kwargs
)

Create a combination of multiple RPROBNX indicators using function comb_func.

  • Parameters: entry_prob, exit_prob
  • Outputs: entries, exits

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

Note

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