HLC3_VWAP_Fib_RibbonThis Script use Volume Weighted Average Price (VWAP) combined with Fibonacci Deviations of that value as Ribbons to show Support and Resistance levels, as well as estimate good Buy and Sell areas based on the extremity of distance from the central VWAP.
Features:
- Alerts exist for price crossover / crossunder the VWAP value, as well as any of the Fib Ribbon levels.
- Ribbons & Fills can be toggled on/off, leaving just the VWAP as a single line if desired.
- Using the Amplification setting, you can expand or contract the ribbons while maintaining the Fib Ratio, to fit different time-frames and volatility.
- Time-Frame and Length of VWAP can be changed while staying on the same Time-Frame chart view.
Weighted
Volume Weighted RSI [ChuckBanger]This is volume weighted RSI (Relative Strength Index). In compressing to regular RSI it look like this:
The relative strength index detect an overbought/sold market when higher/lower than a certain level, often 80/20. An overbought market is more attractive to sell because prices are no longer attractive to buy, it has reached its value of interest for traders looking to go long, we can then expect the price to correct and start a trend of opposite direction, while an oversold market is more attractive to buy based on the same logic.
The idea of talking about overbought and oversold without taking into account the volume can be a bit strange, since volume is directly related to the market traded, an higher volume can show sign of a more active market, which can describe the terms : overbought/sold a bit better. The money flow index for example, use volume, but it is interesting to provide other alternatives like this indicator.
With OB and OS signals
Decaying Rate of Change Non Linear FilterThis is a potential solution to dealing with the inherent lag in most filters especially with instruments such as BTC and the effects of long periods of low volatility followed by massive volatility spikes as well as whipsaws/barts etc.
We can try and solve these issues in a number of ways, adaptive lengths, dynamic weighting etc. This filter uses a non linear weighting combined with an exponential decay rate.
With the non linear weighting the filter can become very responsive to sudden volatility spikes. We can use a short length absolute rate of change as a method to improve weighting of relative high volatility.
c1 = abs(close - close ) / close
Which gives us a fairly simple filter :
filter = sum(c1 * close,periods) / sum(c1,periods)
At this point if we want to control the relative magnitude of the ROC coefficients we can do so by raising it to a power.
c2 = pow(c1, x)
Where x approaches zero the coefficient approaches 1 or a linear filter. At x = 1 we have an unmodified coefficient and higher values increase the relative magnitude of the response. As an extreme example with x = 10 we effectively isolate the highest ROC candle within the window (which has some novel support resistance horizontals as those closes are often important). This controls the degree of responsiveness, so we can magnify the responsiveness, but with the trade off of overshoot/persistence.
So now we have the problem whereby that a highly weighted data point from a high volatility event persists within the filter window. And to a possibly extreme degree, if a reversal occurs we get a potentially large "overshoot" and in a way actually induced a large amount of lag for future price action.
This filter compensates for this effect by exponentially decaying the abs(ROC) coefficient over time, so as a high volatility event passes through the filter window it receives exponentially less weighting allowing more recent prices to receive a higher relative weighting than they would have.
c3 = c2 * pow(1 - percent_decay, periods_back)
This is somewhat similar to an EMA, however with an EMA being recursive that event will persist forever (to some degree) in the calculation. Here we are using a fixed window, so once the event is behind the window it's completely removed from the calculation
I've added Ehler's Super Smoother as an optional smoothing function as some highly non linear settings benefit from smoothing. I can't remember where I got the original SS code snippet, so if you recognize it as yours msg me and I'll link you here.
Fibonacci Weighted Moving AverageHello traders and developers!
The weights of this WMA are Fibonacci numbers. That's all)
Good luck and happy trading!
Farey Sequence Weighted Moving AverageA moving average that weighted with Farey fractions. It matches a standard linear weighted average almost one-to-one. Why? Because both averages have strictly monotonic weighting sequences and assign a higher weight to latests data. So, Farey weights are just scaled to linear ones. Instead of specifing period you specify an order of Farey sequence. To learn more about Farey sequence you can refer to Wiki
Published just for reference, it is not intended for trading purposes.
MMDVZ 1.0 - Moving Multi-Day VWAP ZonesVolatility adjusted moving multi-day VWAP zones
Directionality, trend and support/resistance levels at a glance
Useful for trading practically all kinds of stocks and futures.
Works well with many timeframes.
More updates to come, stay tuned
Volume Weighted DistanceThis script holds several useful functions from statistics and machine learning (ML) and takes measurement of a volume weighted distance in order to identify local trends. It attempts at applying ML techniques to time series processing, shows how different distance measures behave and gives you an arsenal of tools for your endeavors. Tested with BTCUSD.
REM: oddly enough, many people forget that the scripts in PS are generally just STUDIES, i.e. exercises, experiments, trials, and do not embody a final solution. Please treat them as intended ;))
Forecasting - Locally Weighted Regression (rescaled)UPDATE: the original version works only with BTC. Here's a general version with rescaling.
Forecasting - Vanilla Locally Weighted RegressionThere is not much to say - just vanilla locally weighted regression in PineScript 4.
see: medium.com
also: cs229.stanford.edu
Forecasting - Locally Weighted RegressionThis is a continuation of the series on forecasting techniques.
Locally weighted linear regression is a non-parametric algorithm, that is, the model does not learn a fixed set of parameters as is done in ordinary linear regression. Rather parameters Θ (theta) are computed individually for each query point x. While computing Θ, a higher “preference” is given to the points in the training set lying in the vicinity of x than the points lying far away from x.
For a detailed discussion see www.geeksforgeeks.org
and for the formula see fawda123.github.io
Here you can see a shortcut application of this technique to time series with results unexpectedly favorable for price data labelling.
Good at detecting pullbacks. Can be incorporated into a trading system as a signal generator. Alerting is included.
Volume Weighted EMAAn EMA using the Volume Oscillator to integrate volume fluctuations into the EMA calculations.
Especially useful for Crypto and Forex
Volume Weighted Bollinger (Final, cleaned up visuals)Volume-weighted bollinger (normal stats application of weighting mean) with cleaned up visualization. Shaded area represents1sd-2sd move size for trailing 20 period average on timeframe for individual candles.
Volume Weighted Ichimoku (Cleaned Up Visuals)Ichimoku with cleaned up appearance on chart and volume-weighted highs / lows. Publishing this final version with open script.
Cuban's VWAP DivergencesAfter using many different divergence scripts, I struggled to find one that didn't indiscriminately signal a constant divergence while the price was trending.
This study attempts to solve this issue, along with filtering out false signals. I have found it to print less signals and to be more accurate.
It also gives you a confluence level between high probability reversals (labels) and lower probability reversals (crosses), and some clever trade logic in the candle colouring -- to signal when to take the trade.
I have added a night mode for aesthetic label colouring and an option to minimise labels all together.
I recommend using this study in conjunction with one of my other scripts; Cuban's LTF Trend Oscillator.
Multi-TF Avg BBandsMULTI-TF AVERAGE BBANDS - with signals (BETA)
Overall, it shows where the price has support and resistance, when it's breaking through, and when its relatively low/high based on the magic of standard deviation.
created by gamazama. send me a shout if u find this useful, or if you create something cool with it.
%BB: The price's position in the boilinger band is converted to a range from 0-1. The midpoint is at 0.5
Description of parameters
"BB:Window Length" is the standard BB size of 20 candles.
The indicator plots up to 7 different %BB's on different timescales
They are calculated independently of the timescale you are viewing eg 12h, 3d, 30m will be the same output
You can enter 7 timescales, eg. if you want to plot a range of bbands of the 12h up to 3d graphs, enter values between 0.5 and 3 (days) - you can also select 0 to disable and use less timescales, or select hours or minutes
Take note if you eg. double the main multiplier to 40, it is the same as doubling all your timescales
You can turn the transparency of the 7 x %BB's to 100 to hide them, their average is plotted as a thick cyan line
"Variance" is a measure of how much the 7 BB's agree, and changes colour based on the thresholds used for the strategy
---- TO START FROM SCRATCH ----
- set all except one to ZERO (0), set to 0, and everything after to 0.
Turn ON and right click -> move the indicator to a new pane - this will show you the internal workings of the indicator.
Then there is a few standard settings
"Source Smoothing Amount" applies a basic small sma on the price.
It should be turned down when viewing candles with less information, like 1D or more.
Standard BBands use an SMA, there one uses a blend between VWMA or SMA
Volume Weight settings, the same as SMA at 0, and the same as VWMA at 1
BB^2 is a bband drawn around the average %BB. Adjust the to change its window length
The BB^2 changes color when price moves up or down
Now its time to look at the parameters which affect the buy/sell signals
turn on "show signal range" - you see some red lines
buy and sell each have 4 settings
min/max variance will affect the brigtness of the signal range
range adjust will move the range up/down
mix BB^2 blends between a straight line (0) and BB^2's top or bottom (1)
a threshold of "variance" and "h/l points" is available to generate weaker signals.
these thresholds can be increased to show more weak signals
ONCE YOU ARE HAPPY WITH THE SIGNALS being generated, you can turn OFF , and move it back to the price pane
the indicator then draws a bband around the price to maps some info into the chart:
fills a colour between 0.5 & the mid BB^2 and converts relative to the price chart
draws a line in the middle of the midband.
controls how much these lines diverge from the price - adjust it to reduce noise
converts the signal range (red lines) to be relative to the price chart
if you like, you can adjust the sell & buy signals in the tab from and to and to match the picture. It messes with auto-scaling when moving back to though
enjoy, I hope that is easy enough to understand, still trying to make this more user-friendly.
If you want to send me some token of appreciation - btc: 33c2oiCW8Fnsy41Y8z2jAPzY8trnqr5cFu
I promise it will put a fat smile on my face
Quick Moving AverageThis moving average was originally developed by John McCormick in 2008 as NinjaTrader indicator. The purpose was to find a cheap replacement for JMA ( ).
Well, not impressive concerning the response.
Source code on request .
Self-Weighted Moving AverageThis type of moving average was originally developed by Alex Orekhov at his home. This WMA uses previous prices as weights for the new ones. At the moment, this is a highly experimental approach, so don't use it in real trading.
The weighting scheme is presented on the chart.
Jurik JMA/DWMA MACDAn oscillator form of the crossover system that was recommended by Mark Jurik. The oscillator is based on the Jurik Moving Average (JMA) and Double Weighted Moving Average (DWMA) convergence/divergence. I use the best original JMA' clone on TradingView that has the almost identical behaviour as the original one.
I made it more pretty and added alerts for the peaks (blue circles).
As Mr. Jurik noticed:
"Of all the different combinations of moving average filters to use for a MACD oscillator, we prefer using the JMA - DWMA combination."
Reference: www.jurikres.com
Jurik JMA/DWMA CrossoverThis is a crossover system that was recommended by Mark Jurik. The system consists of Jurik Moving Average (JMA) and Double Weighted Moving Average (DWMA). In case of Jurik Moving Average I use the best original JMA' clone on TradingView that has the almost identical behaviour as the original one.
As Mr. Jurik noticed:
" JMA is ideal for the fast moving average line because it is quick to respond to reversals, is smooth and can be set to have no overshoot. DWMA (double weighted moving average) is ideal for the slower line as is tends to delay reversing direction until JMA crosses it."
Reference: www.jurikres.com
Double Weighted Moving AverageMr. Jurik uses this weighted moving average to create a crossover trading system with his JMA.
To learn more see www.jurikres.com .
Good luck!
Inverse Distance Weighted Moving AverageThe weights of this moving average are the sums of distances between points.
Good luck!
Distance Weighted Moving AverageAdopted to Pine from systemtradersuccess.com
They wrote that this average is designed to be a robust version of a moving average to reduce the impact of outliers, but I dont see a significant difference comparing it with SMA. So, I published it for the educational purposes.
To learn more about the robust filters and averages google Hampel Filter, Interquartile Range Filter and Recursive Median Filter (or any other filter that is based on quartiles).
Good luck!
Moving Average Smoothness BenchmarkHey there!
This tool will help you to choose a moving average/filter that has the lowest lag throughout the whole history for the specified period.
What does it do?
It calculates the mean absolute errors for each moving average or filter and shows histogram with results. The lower error the lower lag of the moving average.
So, the best average will be at the end of the list of labels on the chart.
Settings
The main setting is a period for all moving averages.
Additionally, it allows to customize some multi-parametric moving average such as JMA, ALMA, McGinley Dynamic, Tillson's T3, REMA, Adaptive Laguerre Filter, Hampel Filter, Recursive Median Filter and Middle-High-Low MA.
NOTE : The results may vary on the different tickers and timeframes. This tool measures the performances on the current ticker and on the current timeframe.
Supported averages/filters (use short titles to match movings on the chart)
SMA, Simple MA
EMA, Exponential MA
WMA, Weighted (Linear) MA
RMA, Running MA (by J. Welles Wilder)
VWMA, Volume Weighted MA (by Buff P. Dormeier)
AHMA, Ahrens MA (by Richard D. Ahrens)
ALMA, Arnaud Legoux MA (by Arnaud Legoux and Dimitris Kouzis-Loukas)
ALF, Adaptive Laguerre Filter (by John F. Ehlers)
ARSI, Adaptive RSI
DEMA, Double Exponential MA (by Patrick G. Mulloy)
EDCF, Ehlers Distance Coefficient Filter (by John F. Ehlers)
EVWMA, Elastic Volume Weighted MA (by Christian P. Fries)
FRAMA, Fractal Adaptive MA (by John F. Ehlers)
HFSMA, Hampel Filter on Simple Moving Average
HFEMA, Hampel Filter on Exponential Moving Average
HMA, Hull MA (by Alan Hull)
HWMA, Henderson Weighted MA (by Robert Henderson)
IIRF, Infinite Impulse Response Filter (by John F. Ehlers)
JMA1, Jurik MA with power of 1 (by Mark Jurik)
JMA2, Jurik MA with power of 2 (by Mark Jurik)
JMA3, Jurik MA with power of 3 (by Mark Jurik)
JMA4, Jurik MA with power of 4 (by Mark Jurik)
LF, Laguerre Filter (by John F. Ehlers)
LMA, Leo MA (by ProRealCode' user Leo)
LSMA, Least Squares MA (Moving Linear Regression)
MD, McGinley Dynamic (by John R. McGinley)
MHLMA, Middle-High-Low MA (by Vitali Apirine)
REMA, Regularized Exponential MA (by Chris Satchwell)
RMF, Recursive Median Filter (by John F. Ehlers)
RMTA, Recursive Moving Trend Average (by Dennis Meyers)
SHMMA, Sharp Modified MA (by Joe Sharp)
SWMA, Sine Weighted MA
TEMA, Triple Exponential MA (by Patrick G. Mulloy)
TMA, Triangular MA
T3, (by Tim Tillson)
VIDYA, Variable Index Dynamic Average (by Tushar S. Chande)
ZLEMA, Zero Lag Exponential MA (by John F. Ehlers and Ric Way)
BF2, Butterworth Filter with 2 poles
BF3, Butterworth Filter with 3 poles
SSF2, Super Smoother Filter with 2 poles (by John F. Ehlers)
SSF3, Super Smoother Filter with 3 poles (by John F. Ehlers)
GF1, Gaussian Filter with 1 pole
GF2, Gaussian Filter with 2 poles
GF3, Gaussian Filter with 3 poles
GF4, Gaussian Filter with 4 poles
Good luck and Merry Christmas!