OPEN-SOURCE SCRIPT

Damped Sine Wave Weighted Filter

Introduction

Remember that we can make filters by using convolution, that is summing the product between the input and the filter coefficients, the set of filter coefficients is sometime denoted "kernel", those coefficients can be a same value (simple moving average), a linear function (linearly weighted moving average), a gaussian function (gaussian filter), a polynomial function (lsma of degree p with p = order of the polynomial), you can make many types of kernels, note however that it is easy to fall into the redundancy trap.

Today a low-lag filter who weight the price with a damped sine wave is proposed, the filter characteristics are discussed below.

A Damped Sine Wave

A damped sine wave is a like a sine wave with the difference that the sine wave peak amplitude decay over time.

istantanea

A damped sine wave

Used Kernel

We use a damped sine wave of period length as kernel.

istantanea

The coefficients underweight older values which allow the filter to reduce lag.

Step Response

istantanea

Because the filter has overshoot in the step response we can conclude that there are frequencies amplified in the passband, we could have reached to this conclusion by simply seeing the negative values in the kernel or the "zero-lag" effect on the closing price.

Enough ! We Want To See The Filter !

I should indeed stop bothering you with transient responses but its always good to see how the filter act on simpler signals before seeing it on the closing price. The filter has low-lag and can be used as input for other indicators

istantanea

Filter with length = 100 as input for the rsi.

istantanea

The bands trailing stop utility using rolling squared mean average error with length 500 using the filter of length 500 as input.

Approximating A Least Squares Moving Average

A least squares moving average has a linear kernel with certain values under 0, a lsma of length k can be approximated using the proposed filter using period p where p = k + k/4.

istantanea

Proposed filter (red) with length = 250 and lsma (blue) with length = 200.

Conclusions

The use of damping in filter design can provide extremely useful filters, in fact the ideal kernel, the sinc function, is also a damped sine wave.





filterMoving Averageszerolag

Script open-source

In pieno spirito TradingView, l'autore di questo script lo ha pubblicato open-source, in modo che i trader possano comprenderlo e verificarlo. Un saluto all'autore! È possibile utilizzarlo gratuitamente, ma il riutilizzo di questo codice in una pubblicazione è regolato dal nostro Regolamento. Per aggiungerlo al grafico, mettilo tra i preferiti.

Vuoi usare questo script sui tuoi grafici?


Check out the indicators we are making at luxalgo: tradingview.com/u/LuxAlgo/
Anche su:

Declinazione di responsabilità