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. <<
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
ברוח TradingView אמיתית, המחבר פרסם קוד Pine זה כספריית קוד פתוח כדי שמתכנתי Pine אחרים מהקהילה שלנו יוכלו לעשות בו שימוש חוזר. כל הכבוד למחבר! אתה יכול להשתמש בספרייה זו באופן פרטי או בפרסומים אחרים בקוד פתוח, אך שימוש חוזר בקוד זה בפרסום כפוף לכללי הבית.
המידע והפרסומים אינם אמורים להיות, ואינם מהווים, עצות פיננסיות, השקעות, מסחר או סוגים אחרים של עצות או המלצות שסופקו או מאושרים על ידי TradingView. קרא עוד בתנאים וההגבלות.