Skip to content

rand module

Module with RAND.


RAND class

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

Random entry signal generator based on the number of signals.

Generates entries based on rand_place_nb.

Hint

Parameter n can be either a single value (per frame) or a NumPy array (per column). To generate multiple combinations, pass it as a list.

Usage

Test three different entry counts values:

>>> from vectorbtpro import *

>>> rand = vbt.RAND.run(input_shape=(6,), n=[1, 2, 3], seed=42)

>>> rand.entries
rand_n      1      2      3
0        True   True   True
1       False  False   True
2       False  False  False
3       False   True  False
4       False  False   True
5       False  False  False

Entry count can also be set per column:

>>> rand = vbt.RAND.run(input_shape=(8, 2), n=[np.array([1, 2]), 3], seed=42)

>>> rand.entries
rand_n      1      2      3      3
            0      1      0      1
0       False  False   True  False
1        True  False  False  False
2       False  False  False   True
3       False   True   True  False
4       False  False  False  False
5       False  False  False   True
6       False  False   True  False
7       False   True  False   True

Superclasses

Inherited members

Subclasses

  • vectorbtpro.signals.generators.rand._RAND

apply_func method

RAND.apply_func(
    i,
    target_shape,
    n,
    entry_args,
    only_once,
    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

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

Return entries AND other.

See combine_objs.


entries_or method

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

Return entries OR other.

See combine_objs.


entries_stats method

RAND.entries_stats(
    *args,
    **kwargs
)

Stats of entries as signals.


entries_xor method

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

Return entries XOR other.

See combine_objs.


entry_place_func_nb method

RAND.entry_place_func_nb(
    c,
    n
)

Entry placement function.


exit_place_func_nb NoneType

Exit placement function.


n_list class property

List of n values.


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 RAND.entries and RAND.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 RAND.entries.
exit_trace_kwargs : dict
Keyword arguments passed to SignalsAccessor.plot_as_exits for RAND.exits.
fig : Figure or FigureWidget
Figure to add traces to.
**kwargs
Keyword arguments passed to SignalsAccessor.plot_as_markers.

run class method

RAND.run(
    input_shape,
    n,
    short_name='rand',
    hide_params=None,
    hide_default=True,
    input_index=None,
    input_columns=None,
    **kwargs
)

Run RAND indicator.

  • Parameters: n
  • Outputs: entries

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

RAND.run_combs(
    input_shape,
    n,
    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 RAND indicators using function comb_func.

  • Parameters: n
  • Outputs: entries

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

Note

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