GoemonYae

MathTransform

Library "MathTransform"
Auxiliary functions for transforming data using mathematical and statistical methods

scaler_zscore(x, lookback_window)
  Calculates Z-Score normalization of a series.
  Parameters:
    x (float): : floating point series to normalize
    lookback_window (int): : lookback period for calculating mean and standard deviation
  Returns: Z-Score normalized series

scaler_min_max(x, lookback_window, min_val, max_val, empiric_min, empiric_max, empiric_mid)
  Performs Min-Max scaling of a series within a given window, user-defined bounds, and optional midpoint
  Parameters:
    x (float): : floating point series to transform
    lookback_window (int): : int : optional lookback window size to consider for scaling.
    min_val (float): : float : minimum value of the scaled range. Default is 0.0.
    max_val (float): : float : maximum value of the scaled range. Default is 1.0.
    empiric_min (float): : float : user-defined minimum value of the input data. This means that the output could exceed the `min_val` bound if there is data in `x` lesser than `empiric_min`. If na, it's calculated from `x` and `lookback_window`.
    empiric_max (float): : float : user-defined maximum value of the input data. This means that the output could exceed the `max_val` bound if there is data in `x` greater than `empiric_max`. If na, it's calculated from `x` and `lookback_window`.
    empiric_mid (float): : float : user-defined midpoint value of the input data. If na, it's calculated from `empiric_min` and `empiric_max`.
  Returns: rescaled series

log(x, base)
  Applies logarithmic transformation to a value, base can be user-defined.
  Parameters:
    x (float): : floating point value to transform
    base (float): : logarithmic base, must be greater than 0
  Returns: logarithm of the value to the given base, if x <= 0, returns logarithm of 1 to the given base

exp(x, base)
  Applies exponential transformation to a value, base can be user-defined.
  Parameters:
    x (float): : floating point value to transform
    base (float): : base of the exponentiation, must be greater than 0
  Returns: the result of raising the base to the power of the value

power(x, exponent)
  Applies power transformation to a value, exponent can be user-defined.
  Parameters:
    x (float): : floating point value to transform
    exponent (float): : exponent for the transformation
  Returns: the value raised to the given exponent, preserving the sign of the original value

tanh(x, scale)
  The hyperbolic tangent is the ratio of the hyperbolic sine and hyperbolic cosine. It limits an output to a range of −1 to 1.
  Parameters:
    x (float): : floating point series
    scale (float)

sigmoid(x, scale, offset)
  Applies the sigmoid function to a series.
  Parameters:
    x (float): : floating point series to transform
    scale (float): : scaling factor for the sigmoid function
    offset (float): : offset for the sigmoid function
  Returns: transformed series using the sigmoid function

sigmoid_double(x, scale, offset)
  Applies a double sigmoid function to a series, handling positive and negative values differently.
  Parameters:
    x (float): : floating point series to transform
    scale (float): : scaling factor for the sigmoid function
    offset (float): : offset for the sigmoid function
  Returns: transformed series using the double sigmoid function

logistic_decay(a, b, c, t)
  Calculates logistic decay based on given parameters.
  Parameters:
    a (float): : parameter affecting the steepness of the curve
    b (float): : parameter affecting the direction of the decay
    c (float): : the upper bound of the function's output
    t (float): : time variable
  Returns: value of the logistic decay function at time t

🌸 ----- GoemonYae Trading System (GYTS) ----- 🌸
💬 Discord Server: discord.gg/ssSn4aAXdn
👔 personal LinkedIn: www.linkedin.com/in/arthur-nazarian
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.