TradingView
kaigouthro
29 jul 2022 04:27

calc 

Bitcoin / TetherUS PERPETUAL CONTRACTBinance

Beskrivning

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

Versionsinformation

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)

Versionsinformation

v3

Versionsinformation

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) =>

Versionsinformation

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

Versionsinformation

v6

Added:
from_center(_src, _mid)
  Parameters:
    _src (float)
    _mid (float)

Versionsinformation

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
Kommentarer
slowcoconut
i liek the fraction stuff. got me thining. i think i may use radians now in a script of mine. thanks
slowcoconut
@slowcoconut, correct me if im wrong -- the percentile function calculates the distance in src between candles vs the total distance (max to min) -- returns that as a decimal, it is a percent.
kaigouthro
@slowcoconut, yes, there are three values.. the start limit 0 | -------- |signal (0.xx) ------------------------| end limit ( 1) so that i the end is lower than the start, and the signal is above, it will limit it at 0... very useful or distance between points on x or y axis. just was reminded that i can make a minified version or speed, however that will be at another time. i have a tutorial to work on still as well.
Mer