PINE LIBRARY

Probability

Updated
Library "Probability"

erf(value) Complementary error function
Parameters:
  • value: float, value to test.

Returns: float

ierf_mcgiles(value) Computes the inverse error function using the Mc Giles method, sacrifices accuracy for speed.
Parameters:
  • value: float, -1.0 >= _value >= 1.0 range, value to test.

Returns: float

ierf_double(value) computes the inverse error function using the Newton method with double refinement.
Parameters:
  • value: float, -1. > _value > 1. range, _value to test.

Returns: float

ierf(value) computes the inverse error function using the Newton method.
Parameters:
  • value: float, -1. > _value > 1. range, _value to test.

Returns: float

complement(probability) probability that the event will not occur.
Parameters:
  • probability: float, 0 >=_p >= 1, probability of event.

Returns: float

entropy_gini_impurity_single(probability) Gini Inbalance or Gini index for a given probability.
Parameters:
  • probability: float, 0>=x>=1, probability of event.

Returns: float

entropy_gini_impurity(events) Gini Inbalance or Gini index for a series of events.
Parameters:
  • events: float[], 0>=x>=1, array with event probability's.

Returns: float

entropy_shannon_single(probability) Entropy information value of the probability of a single event.
Parameters:
  • probability: float, 0>=x>=1, probability value.

Returns: float, value as bits of information.

entropy_shannon(events) Entropy information value of a distribution of events.
Parameters:
  • events: float[], 0>=x>=1, array with probability's.

Returns: float

inequality_chebyshev(n_stdeviations) Calculates Chebyshev Inequality.
Parameters:
  • n_stdeviations: float, positive over or equal to 1.0

Returns: float

inequality_chebyshev_distribution(mean, std) Calculates Chebyshev Inequality.
Parameters:
  • mean: float, mean of a distribution
  • std: float, standard deviation of a distribution

Returns: float

inequality_chebyshev_sample(data_sample) Calculates Chebyshev Inequality for a array of values.
Parameters:
  • data_sample: float[], array of numbers.

Returns: float

intersection_of_independent_events(events) Probability that all arguments will happen when neither outcome
is affected by the other (accepts 1 or more arguments)
Parameters:
  • events: float[], 0 >= _p >= 1, list of event probabilities.

Returns: float

union_of_independent_events(events) Probability that either one of the arguments will happen when neither outcome
is affected by the other (accepts 1 or more arguments)
Parameters:
  • events: float[], 0 >= _p >= 1, list of event probabilities.

Returns: float

mass_function(sample, n_bins) Probabilities for each bin in the range of sample.
Parameters:
  • sample: float[], samples to pool probabilities.
  • n_bins: int, number of bins to split the range
    return float[]



cumulative_distribution_function(mean, stdev, value) Use the CDF to determine the probability that a random observation
that is taken from the population will be less than or equal to a certain value.
Or returns the area of probability for a known value in a normal distribution.
Parameters:
  • mean: float, samples to pool probabilities.
  • stdev: float, number of bins to split the range
  • value: float, limit at which to stop.

Returns: float

transition_matrix(distribution) Transition matrix for the suplied distribution.
Parameters:
  • distribution: float[], array with probability distribution. ex:. [0.25, 0.50, 0.25]

Returns: float[]

diffusion_matrix(transition_matrix, dimension, target_step) Probability of reaching target_state at target_step after starting from start_state
Parameters:
  • transition_matrix: float[], "pseudo2d" probability transition matrix.
  • dimension: int, size of the matrix dimension.
  • target_step: number of steps to find probability.

Returns: float[]

state_at_time(transition_matrix, dimension, start_state, target_state, target_step) Probability of reaching target_state at target_step after starting from start_state
Parameters:
  • transition_matrix: float[], "pseudo2d" probability transition matrix.
  • dimension: int, size of the matrix dimension.
  • start_state: state at which to start.
  • target_state: state to find probability.
  • target_step: number of steps to find probability.

Release Notes
v2
- general update on descriptions.
- update to support builtin matrices.
- fixed a mistake on the label/test code.
entropyinequalityinformationMATHprobabilitystatistics

Pine library

In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in a publication is governed by House rules.

Disclaimer