modhelius

Weis Wave Volume

This indicator is based on the Weis Wave described by David H. Weis in his book Trades About to Happen: A Modern Adaptation of the Wyckoff Method, more info how to use this indicator can also be found in this video. The Weis Wave is an adaptation of Richard D. Wyckoff’s method Wave Charts. It works in all time periods and can be applied to all asset types. For assets that do not support volume Weis propose in his book to use the true range instead, so if you want to use this indicator for assets that do not support volume , make sure to enable the checkbox "Use True Range instead of Volume".

Unlike other implementations I found here on Trading, this implementation make use of a Renko-like zig zag pattern, very similar to how it is described in David H. Weis' book. The settings for the zig zag pattern are very similar to the standard Renko settings here on TradingView, in the "Renko Assignment Method" you either chose "ATR" or "Traditional" (read more about it here ). The ATR length or the brick size is then entered in the textbox "Value". You can also chose another setting in the "Renko Assignment Method" drop down named "Part of Price" which calculate the brick size from the current close and divide it by the value in the text box "Value". It is also possible to chose if the zig zag pattern shall use the high/low, the open/close or just the close as the most extreme values in its calculation, you select this in the drop down "Price Source". If you want the price to oscillate around a zero value, enable the "Oscillating" checkbox.

TradingView's pine script does currently not support to print non-static text on the chart, so it is not possible at this point to write out the volume on the zig zag chart. It is also not possible to have both an overlay and separate chart pane in the same indicator, therefor this indicator is split up in two.

You can find the zig zag indicator here:
Note di rilascio: This indicator is based on the Weis Wave described by David H. Weis in his book Trades About to Happen: A Modern Adaptation of the Wyckoff Method, more info how to use this indicator can be found in this video. The Weis Wave is an adaptation of Richard D. Wyckoff’s method Wave Charts. It works in all time periods and can be applied to all asset types. For assets that do not support volume Weis propose in his book to use the true range instead, so if you want to use this indicator for assets that do not support volume, make sure to enable the checkbox "Use True Range instead of Volume".

Unlike other implementations I found here on TradingView, this implementation make use of a Renko-like zig zag pattern, very similar to how it is described in David H. Weis' book. The settings for the zig zag pattern are very similar to the standard Renko settings here on TradingView, in the "Renko Assignment Method" you either chose "ATR" or "Traditional" (read more about it here ). The ATR length or the brick size is then entered in the textbox "Value". You can also chose another setting in the "Renko Assignment Method" drop down named "Part of Price" which calculate the brick size from the current close and divide it by the value in the text box "Value". It is also possible to chose if the zig zag pattern shall use the high/low, the open/close or just the close as the most extreme values in its calculation, you select this in the drop down "Price Source". If you want the price to oscillate around a zero value, enable the "Oscillating" checkbox.

TradingView's pine script does currently not support to print non-static text on the chart, so it is not possible at this point to write out the volume on the zig zag chart. It is also not possible to have both an overlay and separate chart pane in the same indicator, therefor this indicator is split up in two.

You can find the zig zag indicator here:
Note di rilascio: Fix minor bug for the price source "Close".
Note di rilascio: Wave Chart was missing in the example chart.
Note di rilascio: Fix bug that that made it impossible to enter floats into the Value textbox even for non ATR values.
Note di rilascio: Support added for normalization over time. Enabled via the "Normalize" checkbox. Disabled by default.
Note di rilascio: Fixed bug in algorithm.
Note di rilascio: Fix so true range is used automatically if volume is not presented. Changed the "Use True Range instead of Volume" setting from a textbox to a drop down, where it is now possible to chose "Always", "Never" or "When Volume is Unavailable". The last option is the default value.
Note di rilascio: Changed the name of the option ""When Volume is Unavailable" to "Auto".
Note di rilascio: Settings differed between the line chart and the volume chart in the example graph, now fixed.
Note di rilascio: Since some people does not seem to understand how this indicator works but rather focus on complaining about that the zig zag chart is not plotted at the exact turning points I have decided to window dress the example graph with more pinpointed settings than the defaults, to avoid such comments in the future.
Note di rilascio: Changed the default value for Price Source to Close, because that is what David H. Wise is using in his original implementation of this indicator.
Note di rilascio: The example chart got corrupted in the last update for some reason so try to make another release.
Note di rilascio: Update to Pine Script Version 4 and add resolution to study.
Script open-source

Nello spirito di condivisione promosso da TradingView, l'autore (al quale vanno i nostri ringraziamenti) ha deciso di pubblicare questo script in modalità open-source, così che chiunque possa comprenderlo e testarlo. Puoi utilizzarlo gratuitamente, ma il riutilizzo del codice è subordinato al rispetto del Regolamento. Per aggiungerlo al grafico, mettilo tra i preferiti.

Vuoi usare questo script sui tuoi grafici?

Commenti

This is not exactly the WeisWave. The zigzag is not plotted at the beginning of each wave and the cumulative volume sometimes sums part of the next wave.
Nice try, but I prefer the
+13 Rispondi
modhelius sal157011
@sal157011, The zig zag is based on a renko algorithm, which means it will turn down when the price has been turning down a certain amount of pips/points, and vice versa . That is exactly how it is described in David H. Weis book. How fast it will turn depends on the settings. If you want it to turn faster you can adjust the settings. And since it is impossible to look into the future it is impossible to make it turn at the exact turning point.

Here you have a picture of the original Weis Wave plugin that is done by David H. Weis himself https://tradingpsychologyedge.com/wp-content/uploads/2015/09/Weis-Wave-4.png
Here is how it looks like with my version

Pretty much the same I would say.
Unfortunately the script you are linking to is closed and not available to the public, so I can not make the same comparative with that script.
+1 Rispondi
modhelius modhelius
@sal157011 I could of course have window dressed the example chart if I liked. If you for example change the setting in the example chart from 14 ATR to Traditional 0.5¢ brick size and use only closes as price source it would look like this
But I'm not interested to try to claim that I have some holy grail algorithm here (with closed code that no one can look at;)). I'm interested in doing an indicator that is as close to the original as possible, and I give away all the work for free, including the source. In the example I use the indicator's default settings, and those are the same as the default settings for TradingView's Renko charts, that is why the example looks like it does. For people who does not know how Renko nor the Weis Wave works and am not satisfied with my indicator, they are fully free to keep on searching for the holy grail and/or keep using black box indicators that claim to do things you can not even confirm ;)
Rispondi
sal157011 modhelius
@modhelius, This example is not representative as the amount of reversal needed to define a wave is very small and is indistinguible from the change of direction of the closes. The dificulties arrive when there are what I call limbo bars which are those bars that reverse in direction but not sufficiently to trigger a reverse in the wave.
I am aware that in tradingview we can´t change past variables, but that is not the case with ninjatrader that David Weis uses in his charts, and he is able to sum the volumes and retrace de zigzag retrospectively.
Now I see that the script from jayy is no longer open. I have a previous old version of the script.
I am always learning and I thank you for the code you've written where I have learned how to extend the plot to the last bar.

You say "TradingView's pine script does currently not support to print non-static text on the chart, so it is not possible at this point to write out the volume on the zig zag chart."
I have noticed on the video from Jayy that you refer that he managed to plot the cumulative volume on the zig zag chart. If you ask him maybe e can explain you how he did it.
Rispondi
modhelius sal157011
@sal157011, I have actually implemented this exactly how David H. Weis explains how he do it in his book. Since his plugin is closed source I can of course not confirm that it is exactly the same, but I have compared my version with several different graphs from his own plugin and I have still not found one single graph that differs, as long as you use the same configuration. So, please, be my guess and show me one single graph that differ from his plugin. Weis do not talk about any "limbo" bars, and there is nothing in the graphs I have found so far that indicates that he uses some kind of look ahead in his algorithm where he change his zigzag retrospectively. Such indicator would never work in real time day trading (which is what I am doing all days long), only charlatans would do such indicators that repaint. So why should he? The thing with the indicator is not to look into the future and try to be some kind of holy grail, but to calculate cumulative volume over a well defined wave so you can get a hint of accumulation and distribution, if you want the wave to be more precise, just tighten the brick size, not harder than that....

When it comes to printing out the volume on the overlay I'm pretty sure that he uses a hack where he adds lot of printchar functions in his code where you need 10 different printchar functions (char 0-9) for every digit you want to print out, so if you want 3 digits, you need 30 printchar functions,which will result in very much boilerplate and performance-wise probably not a very good solution for an indicator that shall be able to be used in real time. It seems like a pretty ugly solution to use, so I rather wait for an official support of dynamic text printing than to use such a solution.
Rispondi
sal157011 modhelius
@modhelius, Is very dificult to find a video of David Weis trading live with the Weis Wave. I found this on youtube:
https://www.youtube.com/watch?v=UkUh5w7iRkE&%3Bindex=1&%3Blist=PL37c_rAC_0VbwyoT2bjp2IuILy_rPycTV
He trades the nasdaq from 1:31:00 till 1:47:00, and you can see that repaints. I don't call it charlatan, I prefer to plot the wave only when is definitive because it confuses me, but it seems he doesn't get confused, that's all.
Rispondi
modhelius sal157011
@sal157011, Just watched the video, and what I can see it doesn't repaint any of the old points in the charts, it just change the last point when price is changing. And since he uses close as the price source he can not be sure that the direction has been changed until the bar is closed so a temporary change can be shown until the bar is closed, and sure, you can see that as a repaint, but the result of the old points will still be the same. That is the zig zag in my implementation does not even paint the last bar in the chart.
Rispondi
modhelius modhelius
"the result of the old points will still be the same"

@sal157011, to make myself even clearer: the result at the close of the bar will be the exact same. It is at the close of the bar you really know if the direction has changed.



So, if you call that repainting, then everything that is changing in real time will repaint.
Rispondi
modhelius modhelius
@sal157011, so if you just watch my implementation in real time you will see that it will "repaint" in the exact same way as his plugin, with the only difference that my implementation does not care to write out the last zig zag point until the actual close.
Rispondi