ChartPrime

Multiple Non-Linear Regression [ChartPrime]

This Pine Script indicator is designed to perform multiple non-linear regression analysis using four independent variables: close, open, high, and low prices. Here's a breakdown of its components and functionalities:

Inputs:
Users can adjust several parameters:
  • Normalization Data Length: Length of data used for normalization.
  • Learning Rate: Rate at which the algorithm learns from errors.
  • Smooth?: Option to smooth the output.
  • Smooth Length: Length of smoothing if enabled.
  • Define start coefficients: Initial coefficients for the regression equation.

Data Normalization:
The script normalizes input data to a range between 0 and 1 using the highest and lowest values within a specified length.

Non-linear Regression:
It calculates the regression equation using the input coefficients and normalized data. The equation used is a weighted sum of the independent variables, with coefficients adjusted iteratively using gradient descent to minimize errors.

Error Calculation:
The script computes the error between the actual and predicted values.

Gradient Descent: The coefficients are updated iteratively using gradient descent to minimize the error.
// Compute the predicted values using the non-linear regression function
predictedValues = nonLinearRegression(x_1, x_2, x_3, x_4, b1, b2, b3, b4)

// Compute the error
error = errorModule(initial_val, predictedValues)

// Update the coefficients using gradient descent
b1 := b1 - (learningRate * (error * x_1))
b2 := b2 - (learningRate * (error * x_2))
b3 := b3 - (learningRate * (error * x_3))
b4 := b4 - (learningRate * (error * x_4))

Visualization:
  • Plotting of normalized input data (close, open, high, low).
    The indicator provides visualization of normalized data values (close, open, high, low) in the form of circular markers on the chart, allowing users to easily observe the relative positions of these values in relation to each other and the regression line.

  • Plotting of the regression line.
  • Color gradient on the regression line based on its value and bar colors.
  • Display of normalized input data and predicted value in a table.
  • Signals for crossovers with a midline (0.5).

Interpretation:
Users can interpret the regression line and its crossovers with the midline (0.5) as signals for potential buy or sell opportunities.

This indicator helps users analyze the relationship between multiple variables and make trading decisions based on the regression analysis. Adjusting the coefficients and parameters can fine-tune the model's performance according to specific market conditions.

Invite-only script

Access to this script is restricted to users authorized by the author and usually requires payment. You can add it to your favorites, but you will only be able to use it after requesting permission and obtaining it from its author. Contact ChartPrime for more information, or follow the author's instructions below.

TradingView does not suggest paying for a script and using it unless you 100% trust its author and understand how the script works. In many cases you can find a good open-source alternative for free in our Community Scripts.

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.

Author's instructions

Please submit a request via messages for access. Thank you!

Want to use this script on a chart?

Warning: please read before requesting access.