PINE LIBRARY

calc

Diupdate
Library "calc"
Library for math functions. will expand over time.

split(_sumTotal, _divideBy, _forceMinimum, _haltOnError)
  Split a large number into integer sized chunks
  Parameters:
    _sumTotal: (int) Total numbert of items
    _divideBy: (int) Groups to make
    _forceMinimum: (bool) force minimum number 1/group
    _haltOnError: (bool) force error if too few groups
  Returns: int[] array of items per group
Catatan Rilis
v2

Added:
gapSize(_value1, _value2)
  Absolute distance between any two float values, agnostic to +/-
  Parameters:
    _value1: First value
    _value2: Second value
  Returns: Absolute Positive Distance

simplifyFraction(_num, _den)
  Parameters:
    _num: (int) Input fraction numerator
    _den: (int) Input fraction dennominator
  Returns: Simplified Fraction

toFraction(_input, _round)
  Convert Decimal to tuple fraction Output, Rounded to tick, Round Shorter if heavy use.
  Parameters:
    _input: Decimal Input
    _round: (OPTIONAL) round shorter to speed up.
  Returns: Simplified Fraction (if negative, Numerator gets the sign)
Catatan Rilis
v3
Catatan Rilis
v4

Added:
percentile(signal, _startVal, _endVal)
  Measure percent (0.##) of Distance between two points
  Parameters:
    signal: value to check
    _startVal: first value limit
    _endVal: second value limit

pow10up(_src, _pow)
  Power of 10 scale up
  Parameters:
    _src: Input value
    _pow: Number of * 10 to perform

pow10dn(_src, _pow)
  Power of 10 scale down
  Parameters:
    _src: Input value
    _pow: Number of / 10 to perform

pow10chk(_src)
  Power of 10 to req to integer
  Parameters:
    _src: Input value) =>
Catatan Rilis
v5

Major speed improvement on fractions (Thank you Stack overflow)
Fix on Output for start/end == same values on percent, and rename
now gets 0 if starrt == end.

Added:
percentOfDistance(signal, _startVal, _endVal)
  Measure percent (0.##) of Distance between two points
  Parameters:
    signal: value to check
    _startVal: first value limit
    _endVal: second value limit

fractionOfDistance(signal, _startVal, _endVal)
  Measure percent (0.##) of Distance between two points
  Parameters:
    signal: value to check
    _startVal: first value limit
    _endVal: second value limit
  Returns: [Num,Denom] fraction

pow10(_src, _pow)
  Power of 10 scale up
  Parameters:
    _src: Input value
    _pow: Number of * 10 to perform
  Returns: Value with decimal moved + right, - left

Updated:
toFraction(_input, _epsilon, _iterations)
  Convert Decimal to tuple fraction Output, 1/0 resolves to [1,1]
note : it is suboptimal, will be updating with a much faster algorithm
  Parameters:
    _input: Decimal Input
    _epsilon: (OPTIONAL) to precision (10e-N)
    _iterations: Maximum iterations (OPTIONAL)
  Returns: [num,den] Simplified Fraction (if negative, Numerator gets the sign)

Removed:
percentile(signal, _startVal, _endVal)
  Measure percent (0.##) of Distance between two points

pow10up(_src, _pow)
  Power of 10 scale up

pow10dn(_src, _pow)
  Power of 10 scale down
Catatan Rilis
v6

Added:
from_center(_src, _mid)
  Parameters:
    _src (float)
    _mid (float)
Catatan Rilis
v7

Added:
count_digits(num)
  Measure the integer digit count of a float
  Parameters:
    num (float): (float) Input value
  Returns: Number of digits

auto_inv_pow(source, power)
  Inverse power of a floatbased on digit count
  Parameters:
    source (float): (float) Input value
    power (float): (float) (OPTIONAL) Power to raise to (default 1))

Updated:
from_center(_src, _mid)
  Measure a source distance from a mid point as +/- 1.0 being he furhest distance the have been
  Parameters:
    _src (float): (float) Input value
    _mid (float): (float) The mid point to Measure fron
Catatan Rilis
v8

Added:
sqr(x)
  Parameters:
    x (float): (float) - The number to square
  Returns: (float) - The square of the input value

atan2(dy, dx)
  atan2 function
  Parameters:
    dy (float): (float) - The y-coordinate
    dx (float): (float) - The x-coordinate
  Returns: (float) - The angle in radians

scale(_src, _oldMin, _oldMax, _newMin, _newMax)
  Scale to new values from old
  Parameters:
    _src (float): src Value
    _oldMin (float): old Min Value
    _oldMax (float): old Max Value
    _newMin (float): new Min Value
    _newMax (float): new Max Value
  Returns: rescaled value

scale_stddev(_src, _length, scale)
  Rescale values to fit within the std deviation range
  Parameters:
    _src (float): Value to convert
    _length (int): Length of the std deviation
    scale (float): (float) Scale factor
  Returns: rescaled value

abs1(_src)
  Modify incoming data to abs + 1
  Parameters:
    _src (float): Value to convert
  Returns: rescaled value

Fraction
  Fraction
  Fields:
    num (series int): (int) The numerator
    den (series int): (int) The denominator

Updated:
toFraction(_source, _epsilon, _iterations)
  Convert Decimal to tuple fraction Output, 1/0 resolves to [1,1]
note : it is suboptimal, will be updating with a much faster algorithm
  Parameters:
    _source (float)
    _epsilon (int): (OPTIONAL) to precision (10e-N)
    _iterations (int): Maximum iterations (OPTIONAL)
  Returns: [num,den] Simplified Fraction (if negative, Numerator gets the sign)

auto_inv_pow(source, power)
  Inverse power of a float based on digit count
  Parameters:
    source (float): (float) Input value
    power (float): (float) (OPTIONAL) Power to raise to (default 1))
calculationMATHutilitiesutility

Perpustakaan pine

Dengan semangat TradingView yang sesungguhnya, penulis telah menerbitkan Kode Pine ini sebagai pustaka sumber terbuka sehingga programmer Pine lain dari komunitas kami dapat menggunakannya kembali. Hormat untuk penulis! Anda dapat menggunakan pustaka ini secara pribadi atau dalam publikasi sumber terbuka lainnya, namun penggunaan kembali kode ini dalam publikasi diatur oleh Tata Tertib.

Pernyataan Penyangkalan