DonovanWall

Resampling Filter Pack [DW]

This is an experimental study that calculates filter values at user defined sample rates.
This study is aimed to provide users with alternative functions for filtering price at custom sample rates.

First, source data is resampled using the desired rate and cycle offset. The highest possible rate is 1 bar per sample ( BPS ).
There are three resampling methods to choose from:
-> BPS - Resamples based on the number of bars.
-> Interval - Resamples based on time in multiples of current charting timeframe.
-> PA - Resamples based on changes in price action by a specified size. The PA algorithm in this script is derived from my Range Filter algorithm.
The range for PA method can be sized in points, pips, ticks, % of price, ATR, average change, and absolute quantity.

Then, the data is passed through one of my custom built filter functions designed to calculate filter values upon trigger conditions rather than bars.
In this study, these functions are used to calculate resampled prices based on bar rates, but they can be used and modified for a number of purposes.
The available conditional sampling filters in this study are:
-> Simple Moving Average ( SMA )
-> Exponential Moving Average ( EMA )
-> Zero Lag Exponential Moving Average ( ZLEMA )
-> Double Exponential Moving Average ( DEMA )
-> Rolling Moving Average (RMA)
-> Weighted Moving Average ( WMA )
-> Hull Moving Average ( HMA )
-> Exponentially Weighted Hull Moving Average (EWHMA)
-> Two Pole Butterworth Low Pass Filter (BLP)
-> Two Pole Gaussian Low Pass Filter ( GLP )
-> Super Smoother Filter ( SSF )

Downsampling is a powerful filtering approach that can be applied in numerous ways. However, it does suffer from a trade off, like most studies do.
Reducing the sample rate will completely eliminate certain levels of noise, at the cost of some spectral distortion. The lower your sample rate is, the more distortion you'll see.
With that being said, for analyzing trends, downsampling may prove to be one of your best friends!
版本注释: Updates:

-> All of the filter functions have been completely overhauled for enhanced performance, reliability, and versatility.
Rather than the previous sampling methods, these functions are using the array data structures Pine now provides.
These updated functions make downsampling convolution filters incredibly feasible, thus fixing calculation errors in SMA and WMA from the previous version.

-> Thanks to array processing, the current sample and valuewhen functions are no longer needed, so they have been removed.

-> Added Volume Weighted Moving Average (VWMA) with tick volume substitution for NaN values, and Arnaud Legoux Moving Average (ALMA) to the list of available filter types to choose from.

-> Added a custom bar color scheme based on disparity and direction for easier, and more visually appealing, analysis.
版本注释: Updates:

- Fixed VWMA delay in weights

- Fixed Interval resampling method variable assignment
版本注释: Update:

Fixed issue with range smoothing parameters not being connected in the PA based new sample function.
Thank you @mdvmdv for bringing this issue to my attention!

For my full list of premium tools, check the blog:
https://wallanalytics.com/

Reach out on Telegram:
https://t.me/DonovanWall
开源脚本

本着真正的TradingView精神,该脚本的作者将其开源发布,以便交易者可以理解和验证它。为作者喝彩!您可以免费使用它,但在出版物中重复使用此代码受网站规则的约束。 您可以收藏它以在图表上使用。

想在图表上使用此脚本?