LuxAlgo

TF Segmented Polynomial Regression [LuxAlgo]

This indicator displays polynomial regression channels fitted using data within a user selected time interval.

The model is fitted using the same method described in our previous script:


Settings

  • Degree: Degree of the fitted polynomial
  • Width: Multiplicative factor of the model RMSE. Controls the width of the polynomial regression's channels
  • Timeframe: Fits the polynomial regression using data within the selected timeframe interval
  • Show fit for new bars: If selected, will fit the regression model for newly generated bars, else the previous fitted value is displayed.
  • Src: Input source

Usage

Segmented (or piecewise) models yield multiple fits by first partitioning the data into multiple intervals from specific partitioning conditions. In this script this partitioning condition is for a user selected timeframe to change.

Segmented models can be particularly pertinent for market prices, which often describes a series of local trends.

Segmented polynomial regressions can describe the nature of underlying trends in the price from their fit, such as if an underlying trend is more linear (trending) or constant (ranging), and if a trend is monotonic.


The above chart shows a monthly partitioning on SPX 15m, using a polynomial regression of degree 3. Channel extremities allows highlighting local tops/bottoms.

For real time applications users can choose to fit a current model to incoming price data using the Show fit for new bars settings.

Details

The script does not make use of
line.new
to display the segmented linear regressions, which allows showing a higher number of historical fits. Each channel extremity as well as the model fit is displayed from the plot function, as such user can more easily set alerts on them.

It is important to note that achieving this requires accessing future price data, as such this script is subject to lookahead bias, historical results differ from the results one could have obtained in real-time.
Release Notes:
Minor changes.

Get access to our exclusive tools: luxalgo.com

Join our 150k+ community: discord.gg/lux

All content provided by LuxAlgo is for informational & educational purposes only. Past performance does not guarantee future results.
Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in a publication is governed by House Rules. You can favorite it to use it on a chart.

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 script on a chart?