OPEN-SOURCE SCRIPT

Helme-Nikias Weighted Burg AR-SE Extra. of Price [Loxx]

Updated
Helme-Nikias Weighted Burg AR-SE Extra. of Price [Loxx] is an indicator that uses an autoregressive spectral estimation called the Weighted Burg Algorithm, but unlike the usual WB algo, this one uses Helme-Nikias weighting. This method is commonly used in speech modeling and speech prediction engines. This is a linear method of forecasting data. You'll notice that this method uses a different weighting calculation vs Weighted Burg method. This new weighting is the following:

w = math.pow(array.get(x, i - 1), 2), the squared lag of the source parameter

and

w += math.pow(array.get(x, i), 2), the sum of the squared source parameter

This take place of the rectangular, hamming and parabolic weighting used in the Weighted Burg method

Also, this method includes Levinson–Durbin algorithm. as was already discussed previously in the following indicator:

Levinson-Durbin Autocorrelation Extrapolation of Price [Loxx]
Levinson-Durbin Autocorrelation Extrapolation of Price [Loxx]


What is Helme-Nikias Weighted Burg Autoregressive Spectral Estimate Extrapolation of price?
In this paper a new stable modification of the weighted Burg technique for autoregressive (AR) spectral estimation is introduced based on data-adaptive weights that are proportional to the common power of the forward and backward AR process realizations. It is shown that AR spectra of short length sinusoidal signals generated by the new approach do not exhibit phase dependence or line-splitting. Further, it is demonstrated that improvements in resolution may be so obtained relative to other weighted Burg algorithms. The method suggested here is shown to resolve two closely-spaced peaks of dynamic range 24 dB whereas the modified Burg schemes employing rectangular, Hamming or "optimum" parabolic windows fail.

Data inputs
  • Source Settings: -Loxx's Expanded Source Types. You typically use "open" since open has already closed on the current active bar
  • LastBar - bar where to start the prediction
  • PastBars - how many bars back to model
  • LPOrder - order of linear prediction model; 0 to 1
  • FutBars - how many bars you want to forward predict


Things to know
  • Normally, a simple moving average is calculated on source data. I've expanded this to 38 different averaging methods using Loxx's Moving Avreages.
  • This indicator repaints


Further reading
A high-resolution modified Burg algorithm for spectral estimation

Related Indicators
Levinson-Durbin Autocorrelation Extrapolation of Price [Loxx]
Levinson-Durbin Autocorrelation Extrapolation of Price [Loxx]


Weighted Burg AR Spectral Estimate Extrapolation of Price [Loxx]
Weighted Burg AR Spectral Estimate Extrapolation of Price [Loxx]
Release Notes
Fixed calculation error.
Release Notes
Changed plot to line and cleaned up coordinate drawing functions.
snapshot
Release Notes
Coordinate cleanup.
Release Notes
Updated drawing functions
Release Notes
Increased lookback range to max of 2000 bars. Future bar draws are limited to math.min(array output calcs, FutBars) settings. All settings work now.
Release Notes
Updated lines calculations
autoregressiveBURGforecastforecastinghelmenikiaspredictionspectralestimateTrend Analysisweightedburg

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 publication is governed by House rules. You can favorite it to use it on a chart.

Want to use this script on a chart?


Public Telegram Group, t.me/algxtrading_public

VIP Membership Info: patreon.com/algxtrading/membership
Also on:

Disclaimer