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.

スナップショット

A damped sine wave

Used Kernel

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

スナップショット

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

Step Response

スナップショット

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

スナップショット

Filter with length = 100 as input for the rsi.

スナップショット

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.

スナップショット

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

オープンソーススクリプト

TradingViewの精神に則り、このスクリプトの作者は、トレーダーが理解し検証できるようにオープンソースで公開しています。作者に敬意を表します!無料で使用することができますが、このコードを投稿で再利用するには、ハウスルールに準拠する必要があります。 お気に入りに登録してチャート上でご利用頂けます。

チャートでこのスクリプトを利用したいですか?


Check out the indicators we are making at luxalgo: tradingview.com/u/LuxAlgo/
他のメディア:

免責事項