PINE LIBRARY
已更新 fraction

Library "fraction"
Fraction Creation and Basic Operations.
Cracked a tough problem in making this Polarity Agnostic Decimal without a cheating "abs * sign of input".
it's quite fast, however still test for errors before production use.
>> Big Neon Sign on 1/0 value. <<
make(_numerator, _denominator, _val)
Parameters:
_numerator: (int) above the line integer ie: ____ of (___ / bottom )
_denominator: (int) below the line integer ie: ____ of (top / ______ )
_val: (int) OPTIONAL (for no real reason including it) integer to multiply
Returns: array<int> where index 0 is Numerator, 1 is Denominator
add(_fraction, _fraction2)
Perform add operation (left adds right onto )
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: array<int> where index 0 is Numerator, 1 is Denominator
subtract(_fraction, _fraction2)
Perform subtract operation (left subtracts right from )
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: array<int> where index 0 is Numerator, 1 is Denominator
multiply(_fraction, _fraction2)
Perform multiply operation (left multiplies by right )
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: array<int> where index 0 is Numerator, 1 is Denominator
divide(_fraction, _fraction2)
Perform divide operation (left divides by right )
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: array<int> where index 0 is Numerator, 1 is Denominator
negative(_fraction)
Perform Negative number inversion ie: (-1/2 => 1/2) or (3/5 => -3/5)
Parameters:
_fraction: (array<int>) Fraction Object to invert to/from negative
Returns: array<int> where index 0 is Numerator, 1 is Denominator
isSmaller(_fraction, _fraction2)
Check if first fraction is smaller
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: True if smaller, false if bigger
isLarger(_fraction, _fraction2)
Check if first fraction is larger
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: True if smaller, false if bigger
isEqual(_fraction, _fraction2)
Check if first fraction is equal
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: True if smaller, false if bigger
fromDec(_input, _epsilon, _iterations)
Convert Decimal to Fraction array
note : this is my own Negative Number Capable (tiny speed loss)
adaptation of the fastest algo out there
Exclusive for Tradingview.
Parameters:
_input: (float) Decimal Input
_epsilon: (int) (OPTIONAL) to precision 0's after dec 0.0000 -> epsilon 0's
_iterations: (int) (OPTIONAL) Maximum iterations Till give up
Returns: array<int> where index 0 is Numerator, 1 is Denominator
toDec()
Convert Fraction to Decimal Output
Returns: Float of fration
toString(_fraction)
Create "A/B" or "A and B/C" String Value of Fraction.
Parameters:
_fraction: (array<int>) Fraction Object to invert to/from negative
Returns: String as (-)? A and B/C format
Fraction Creation and Basic Operations.
Cracked a tough problem in making this Polarity Agnostic Decimal without a cheating "abs * sign of input".
it's quite fast, however still test for errors before production use.
>> Big Neon Sign on 1/0 value. <<
- Int Array (LOC 0/1)..
- To/From Decimal(float)
- Comparison ( < / == / >)
- Add / Sub / Mult / Div
- Invert polarity +/-
- String output with 2 formats ..
make(_numerator, _denominator, _val)
Parameters:
_numerator: (int) above the line integer ie: ____ of (___ / bottom )
_denominator: (int) below the line integer ie: ____ of (top / ______ )
_val: (int) OPTIONAL (for no real reason including it) integer to multiply
Returns: array<int> where index 0 is Numerator, 1 is Denominator
add(_fraction, _fraction2)
Perform add operation (left adds right onto )
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: array<int> where index 0 is Numerator, 1 is Denominator
subtract(_fraction, _fraction2)
Perform subtract operation (left subtracts right from )
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: array<int> where index 0 is Numerator, 1 is Denominator
multiply(_fraction, _fraction2)
Perform multiply operation (left multiplies by right )
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: array<int> where index 0 is Numerator, 1 is Denominator
divide(_fraction, _fraction2)
Perform divide operation (left divides by right )
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: array<int> where index 0 is Numerator, 1 is Denominator
negative(_fraction)
Perform Negative number inversion ie: (-1/2 => 1/2) or (3/5 => -3/5)
Parameters:
_fraction: (array<int>) Fraction Object to invert to/from negative
Returns: array<int> where index 0 is Numerator, 1 is Denominator
isSmaller(_fraction, _fraction2)
Check if first fraction is smaller
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: True if smaller, false if bigger
isLarger(_fraction, _fraction2)
Check if first fraction is larger
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: True if smaller, false if bigger
isEqual(_fraction, _fraction2)
Check if first fraction is equal
Parameters:
_fraction: (array<int>) left side Fraction Object
_fraction2: (array<int>) right side Fraction Object
Returns: True if smaller, false if bigger
fromDec(_input, _epsilon, _iterations)
Convert Decimal to Fraction array
note : this is my own Negative Number Capable (tiny speed loss)
adaptation of the fastest algo out there
Exclusive for Tradingview.
Parameters:
_input: (float) Decimal Input
_epsilon: (int) (OPTIONAL) to precision 0's after dec 0.0000 -> epsilon 0's
_iterations: (int) (OPTIONAL) Maximum iterations Till give up
Returns: array<int> where index 0 is Numerator, 1 is Denominator
toDec()
Convert Fraction to Decimal Output
Returns: Float of fration
toString(_fraction)
Create "A/B" or "A and B/C" String Value of Fraction.
Parameters:
_fraction: (array<int>) Fraction Object to invert to/from negative
Returns: String as (-)? A and B/C format
發行說明
v2Added:
Fraction
Fraction UDT for representing fractional numbers
Fields:
numerator (series int): (int) Numerator of the fraction
denominator (series int): (int) Denominator of the fraction
Updated:
make(_numerator, _denominator)
Create a new Fraction object
Parameters:
_numerator (int): (int) Numerator of the fraction
_denominator (int): (int) Denominator of the fraction
Returns: (Fraction) Fraction object
add(_fraction, _fraction2)
Perform add operation (left adds right onto )
Parameters:
_fraction (Fraction): (Fraction) left side Fraction Object
_fraction2 (Fraction): (Fraction) right side Fraction Object
Returns: (Fraction) Resulting Fraction object
subtract(_fraction, _fraction2)
Perform subtract operation (left subtracts right from )
Parameters:
_fraction (Fraction): (Fraction) left side Fraction Object
_fraction2 (Fraction): (Fraction) right side Fraction Object
Returns: (Fraction) Resulting Fraction object
multiply(_fraction, _fraction2)
Perform multiply operation (left multiplies by right )
Parameters:
_fraction (Fraction): (Fraction) left side Fraction Object
_fraction2 (Fraction): (Fraction) right side Fraction Object
Returns: (Fraction) Resulting Fraction object
divide(_fraction, _fraction2)
Perform divide operation (left divides by right )
Parameters:
_fraction (Fraction): (Fraction) left side Fraction Object
_fraction2 (Fraction): (Fraction) right side Fraction Object
Returns: (Fraction) Resulting Fraction object
negative(_fraction)
Perform Negative number inversion ie: (-1/2 => 1/2) or (3/5 => -3/5)
Parameters:
_fraction (Fraction): (Fraction) Fraction Object to invert to/from negative
Returns: (Fraction) Resulting Fraction object
isSmaller(_fraction, _fraction2)
Check if first fraction is smaller
Parameters:
_fraction (Fraction): (Fraction) left side Fraction Object
_fraction2 (Fraction): (Fraction) right side Fraction Object
Returns: (bool) True if smaller, false if bigger
isLarger(_fraction, _fraction2)
Check if first fraction is larger
Parameters:
_fraction (Fraction): (Fraction) left side Fraction Object
_fraction2 (Fraction): (Fraction) right side Fraction Object
Returns: (bool) True if larger, false if smaller
isEqual(_fraction, _fraction2)
Check if first fraction is equal
Parameters:
_fraction (Fraction): (Fraction) left side Fraction Object
_fraction2 (Fraction): (Fraction) right side Fraction Object
Returns: (bool) True if equal, false if not equal
fromDec(_source, _epsilon, _iterations)
Convert Decimal to Fraction object
note : this is my own Negative Number Capable (tiny speed loss)
adaptation of the fastest algo out there
Exclusive for Tradingview.
Parameters:
_source (float)
_epsilon (int): (int) (OPTIONAL) to precision 0's after dec 0.0000 -> epsilon 0's
_iterations (int): (int) (OPTIONAL) Maximum iterations Till give up
Returns: (Fraction) Fraction object
toDec(_fraction)
Convert Fraction object to Decimal Output
Parameters:
_fraction (Fraction): (Fraction) Fraction Object
Returns: (float) Decimal representation of fraction
toString(_fraction, _wholenum)
Create "A/B" or "A and B/C" String Value of Fraction.
Parameters:
_fraction (Fraction): (Fraction) Fraction Object to format as string
_wholenum (bool): (bool) Optional, Output as whole number and fraction if possible
Returns: (string) String as (-)? A and B/C format
Pine腳本庫
秉持 TradingView 一貫的共享精神,作者將此 Pine 程式碼發佈為開源庫,讓社群中的其他 Pine 程式設計師能夠重複使用。向作者致敬!您可以在私人專案或其他開源發佈中使用此庫,但在公開發佈中重複使用該程式碼需遵守社群規範。
免責聲明
這些資訊和出版物並不意味著也不構成TradingView提供或認可的金融、投資、交易或其他類型的意見或建議。請在使用條款閱讀更多資訊。
Pine腳本庫
秉持 TradingView 一貫的共享精神,作者將此 Pine 程式碼發佈為開源庫,讓社群中的其他 Pine 程式設計師能夠重複使用。向作者致敬!您可以在私人專案或其他開源發佈中使用此庫,但在公開發佈中重複使用該程式碼需遵守社群規範。
免責聲明
這些資訊和出版物並不意味著也不構成TradingView提供或認可的金融、投資、交易或其他類型的意見或建議。請在使用條款閱讀更多資訊。