**"KernelFunctions"**

This library provides non-repainting kernel functions for Nadaraya-Watson estimator implementations. This allows for easy substitution/comparison of different kernel functions for one another in indicators. Furthermore, kernels can easily be combined with other kernels to create newer, more customized kernels. Compared to Moving Averages (which are really just simple kernels themselves), these kernel functions are more adaptive and afford the user an unprecedented degree of customization and flexibility.

**rationalQuadratic(_src, _lookback, _relativeWeight, _startAtBar)**

Rational Quadratic Kernel - An infinite sum of Gaussian Kernels of different length scales.

Parameters:

**_src**: <float series> The source series.

**_lookback**: <simple int> The number of bars used for the estimation. This is a sliding value that represents the most recent historical bars.

**_relativeWeight**: <simple float> Relative weighting of time frames. Smaller values result in a more stretched-out curve, and larger values will result in a more wiggly curve. As this value approaches zero, the longer time frames will exert more influence on the estimation. As this value approaches infinity, the behavior of the Rational Quadratic Kernel will become identical to the Gaussian kernel.

**_startAtBar**: <simple int> Bar index on which to start regression. The first bars of a chart are often highly volatile, and omitting these initial bars often leads to a better overall fit.

Returns: yhat <float series> The estimated values according to the Rational Quadratic Kernel.

**gaussian(_src, _lookback, _startAtBar)**

Gaussian Kernel - A weighted average of the source series. The weights are determined by the Radial Basis Function (RBF).

Parameters:

**_src**: <float series> The source series.

**_lookback**: <simple int> The number of bars used for the estimation. This is a sliding value that represents the most recent historical bars.

**_startAtBar**: <simple int> Bar index on which to start regression. The first bars of a chart are often highly volatile, and omitting these initial bars often leads to a better overall fit.

Returns: yhat <float series> The estimated values according to the Gaussian Kernel.

**periodic(_src, _lookback, _period, _startAtBar)**

Periodic Kernel - The periodic kernel (derived by David Mackay) allows one to model functions that repeat themselves exactly.

Parameters:

**_src**: <float series> The source series.

**_lookback**: <simple int> The number of bars used for the estimation. This is a sliding value that represents the most recent historical bars.

**_period**: <simple int> The distance between repititions of the function.

**_startAtBar**: <simple int> Bar index on which to start regression. The first bars of a chart are often highly volatile, and omitting these initial bars often leads to a better overall fit.

Returns: yhat <float series> The estimated values according to the Periodic Kernel.

**locallyPeriodic(_src, _lookback, _period, _startAtBar)**

Locally Periodic Kernel - The locally periodic kernel is a periodic function that slowly varies with time. It is the product of the Periodic Kernel and the Gaussian Kernel.

Parameters:

**_src**: <float series> The source series.

**_lookback**: <simple int> The number of bars used for the estimation. This is a sliding value that represents the most recent historical bars.

**_period**: <simple int> The distance between repititions of the function.

**_startAtBar**: <simple int> Bar index on which to start regression. The first bars of a chart are often highly volatile, and omitting these initial bars often leads to a better overall fit.

Returns: yhat <float series> The estimated values according to the Locally Periodic Kernel.

v2

Updated:

Allow float for relativeWeight of the Rational Quadratic Kernel

Rational Quadratic Kernel - An infinite sum of Gaussian Kernels of different length scales.

Parameters:

Returns: yhat The estimated values according to the Rational Quadratic Kernel.

Updated:

Allow float for relativeWeight of the Rational Quadratic Kernel

**rationalQuadratic(_src, _lookback, _relativeWeight, _startAtBar)**Rational Quadratic Kernel - An infinite sum of Gaussian Kernels of different length scales.

Parameters:

**_src**: The source series.**_lookback**: The number of bars used for the estimation. This is a sliding value that represents the most recent historical bars.**_relativeWeight**: Relative weighting of time frames. Smaller values resut in a more stretched out curve and larger values will result in a more wiggly curve. As this value approaches zero, the longer time frames will exert more influence on the estimation. As this value approaches infinity, the behavior of the Rational Quadratic Kernel will become identical to the Gaussian kernel.**_startAtBar**: Bar index on which to start regression. The first bars of a chart are often highly volatile, and omission of these initial bars often leads to a better overall fit.Returns: yhat The estimated values according to the Rational Quadratic Kernel.

❤️ Patreon w/ Lorentzian Beta: www.patreon.com/jdehorty

🎥 Lorentzian Classification Tutorial: youtu.be/AdINVvnJfX4

🤖 Discord w/ Deep Forecast: discord.gg/djXT5sAPfQ

⏩ LinkedIn: www.linkedin.com/in/justin-dehorty

🎥 Lorentzian Classification Tutorial: youtu.be/AdINVvnJfX4

🤖 Discord w/ Deep Forecast: discord.gg/djXT5sAPfQ

⏩ LinkedIn: www.linkedin.com/in/justin-dehorty