pro1007ka

racille_arrayutils

pro1007ka Updated   
Library "racille_arrayutils"
The most used array utility functions

func_sin()
  returns sin function as a parameter to calculate the function_array()

func_cos()
  returns cos function as a parameter to calculate the function_array()

func_tan()
  returns tan function as a parameter to calculate the function_array()

func_cot()
  returns cot function as a parameter to calculate the function_array()

func_asin()
  returns asin function as a parameter to calculate the function_array()

func_acos()
  returns acos function as a parameter to calculate the function_array()

func_atan()
  returns atan function as a parameter to calculate the function_array()

func_acot()
  returns acot function as a parameter to calculate the function_array()

func_sqrt()
  returns sqrt function as a parameter to calculate the function_array()

func_pow(x)
  returns pow function as a parameter to calculate the function_array()
  Parameters:
    x: - power

func_exp(x)
  returns exp function as a parameter to calculate the function_array()
  Parameters:
    x: - base

func_log(x)
  returns log function as a parameter to calculate the function_array()
  Parameters:
    x: - base

func_replace_array(arr, func)
  replace each element of array with func(element) and returns a new array
  Parameters:
    arr: - array
    func: - function to replace. Must be one of func_*()
  Returns: new array, where each element is func(element)

multiply_array(arr, x)
  multiplies each element of array by multiplier and returns a new array
  Parameters:
    arr: - array
    x: - multiplier
  Returns: new array, where each element is multiplied on x

multiply_array(arr, n)
  multiplies each element of array by multiplier and returns a new array
  Parameters:
    arr: - array
    n: - multiplier
  Returns: new array, where each element is multiplied on n

multiply_array(arr, n)
  multiplies each element of array by multiplier and returns a new array
  Parameters:
    arr: - array
    n: - multiplier
  Returns: new array, where each element is multiplied on n

divide_array(arr, x)
  divides each element of array by divider and returns a new array
  Parameters:
    arr: - array
    x: - divider
  Returns: new array, where each element is multiplied on x

divide_array(arr, n)
  divides each element of array by divider and returns a new array
  Parameters:
    arr: - array
    n: - divider
  Returns: new array, where each element is multiplied on n

increase_array(arr, x)
  adds increment to each element of array and returns a new array
  Parameters:
    arr: - array
    x: - increment
  Returns: new array, where each element is multiplied on x

increase_array(arr, n)
  adds increment to each element of array and returns a new array
  Parameters:
    arr: - array
    n: - increment
  Returns: new array, where each element is multiplied on n

increase_array(arr, n)
  adds increment to each element of array and returns a new array
  Parameters:
    arr: - array
    n: - increment
  Returns: new array, where each element is multiplied on x

decrease_array(arr, x)
  substracts decrement to each element of array and returns a new array
  Parameters:
    arr: - array
    x: - decrement
  Returns: new array, where each element is multiplied on x

decrease_array(arr, n)
  substracts decrement to each element of array and returns a new array
  Parameters:
    arr: - array
    n: - decrement
  Returns: new array, where each element is multiplied on n

decrease_array(arr, n)
  substracts decrement to each element of array and returns a new array
  Parameters:
    arr: - array
    n: - decrement
  Returns: new array, where each element is multiplied on x

negate_array(arr)
  changes each elements sign of array and returns a new array
  Parameters:
    arr: - array
  Returns: new array, where each element is of different sign

array_sum()
  calculates elementwise sum of two arrays

array_diff()
  calculates elementwise difference of two arrays

array_product()
  calculates elementwise product of two arrays

array_division()
  calculates elementwise division of two arrays
Release Notes:
v2

Added:
apply_func(arr, func)
  replace each element of array with func(element) and returns a new array
  Parameters:
    arr: - array
    func: - function to replace. Must be one of func_*()
  Returns: new array, where each element is func(element)

Removed:
func_replace_array(arr, func)
  replace each element of array with func(element) and returns a new array
Release Notes:
v3

Added:
array_element_prod(arr)
  calculates the product of array elements
  Parameters:
    arr (float)

array_geomean(arr, method)
  calculates the geometric mean of array elements
  Parameters:
    arr (float): - array
    method (string): - calculation method. Can be chosen from
  Returns: geometric mean of array elements. 0 if array is empty

Updated:
divide_array(arr, n)
  divides each element of array by divider and returns a new array
  Parameters:
    arr (float): - array
    n (int): - divider
  Returns: new array, where each element is divided by n

decrease_array(arr, n)
  substracts decrement to each element of array and returns a new array
  Parameters:
    arr (int): - array
    n (int): - decrement
  Returns: new array, where each element is decreased by x
Release Notes:
v4. Don't use v3 geomean for arr.size > 10
Release Notes:
v5

array_decrease fix
Release Notes:
v6

Added unit tests

New constraints detected, which are from now ToDo:
- Don't use array_geomean(array with negative values in array
- Don't use apply_func(array, func_exp(x)) with negative values in array
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

The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Want to use this library?

Copy the following line and paste it in your script.