RagingRocketBull

Volume Profile Free Pro (25 Levels Value Area VWAP) by RRB

Volume Profile Free Pro by RagingRocketBull 2019
Version 1.0

All available Volume Profile Free Pro versions are listed below (They are very similar and I don't want to publish them as separate indicators):

ver 1.0: style columns implementation
ver 2.0: style histogram implementation
ver 3.0: style line implementation


This indicator calculates Volume Profile for a given range and shows it as a histogram consisting of 25 horizontal bars.
It can also show Point of Control ( POC ), Developing POC , Value Area/VWAP StdDev High/Low as dynamically moving levels.
Free accounts can't access Standard TradingView Volume Profile , hence this indicator.

There are 3 basic methods to calculate the Value Area for a session.
- original method developed by Steidlmayr (calculated around POC )
- classical method using StdDev (calculated around the mean VWAP )
- another method based on the mean absolute deviation (calculated around the median)

POC is a high volume node and can be used as support/resistance . But when far from the day's average price it may not be as good a trend filter as the other methods.

The 80% Rule: When the market opens above/below the Value Area and then returns/stays back inside for 2 consecutive 30min periods it has 80% chance of filling VA (like a gap).

There are several versions: Free, Free Pro, Free MAX. This is the Free Pro version. The Differences are listed below:
- Free: 30 levels, Buy/Sell/Total Volume Profile views, POC
- Free Pro: 25 levels, +Developing POC , Value Area/VWAP High/Low Levels, Above/Below Area Dimming
- Free MAX: 50 levels, packed to the limit

Features:
- Volume Profile with up to 25 levels (3 implementations)
- POC , Developing POC Levels
- Buy/Sell/Total/Side by Side View modes
- Side Cover
- Value Area, VAH/VAL dynamic levels
- VWAP High/Low dynamic levels with Source, Length, StdDev as params
- Show/Hide all levels
- Dim Non Value Area Zones
- Custom Range with Highlighting
- 3 Anchor points for Volume Profile
- Flip Levels Horizontally
- Adjustable width, offset and spacing of levels
- Custom Color for POC/VA/VWAP levels and Transparency for buy/sell levels

Usage:
- specify max_level/min_level for a range (required in ver 1.0/2.0, auto/optional in ver 3.0 = set to highest/lowest)
- select range (start_bar, range length), confirm with range highlighting
- select mode Value Area or VWAP to show corresponding levels.
- flip/select anchor point to position the buy/sell levels, adjust width and spacing as needed
- select Buy/Sell/Total/Side by Side view mode
- use POC/Developing POC/VA/VWAP High/Low as S/R levels. Usually daily values from 1-3 days back are used as levels for the current day.
- Green - buy volume of a specific price level in a range, Red - sell volume . Green + Red = Total volume of a price level in a range


There's no native support for vertical histograms in Pinescript (with price axis as base)
Basically, there are 4 ways to plot a series of horizontal bars stacked on top of each other:

1. plotshape style labeldown ( ver 0 prototype discarded)
- you can have a set of fixed width/height text labels consisting of a series of underscores and moving dynamically as levels. Level offset controls visible length.
- you can move levels and scale the base width of the volume profile histogram dynamically
- you can calculate the highest/lowest range values automatically. max_level/min_level inputs are optional
- you can't fill the gaps between levels/adjust/extend width, height - this results in a half baked volume profile and looks ugly
- fixed text level height doesn't adjust and looks bad on a log scale
- fixed font width also doesn't scale and can't be properly aligned with bars when zooming

2. plot style columns + hist_base ( ver 1.0)
- you can plot long horizontal bars using a series of small adjacent vertical columns with level offsets controlling visible length.
- you can't hide/move levels of the volume profile histogram dynamically on each bar, they must be plotted at all times regardless - you can't delete the history of a plot.
- you can't scale the base width of the volume profile histogram dynamically, can't set show_last from input, must use a preset fixed width for each level
- hist_base can only be a static const expression, can't be assigned highest/lowest range values automatically - you have to specify max_level/min_level manually from input
- you can't control spacing between columns - there's an equalizer bar effect when you zoom in, and solid bars when you zoom out
- using hist_base for levels results in ugly load/redraw times - give it 3-5 sec to finalize its shape after each UI param change
- level top can be properly aligned with another level's bottom producing a clean good looking histogram
- columns are properly aligned with bars automatically

3. plot style histogram + hist_base ( ver 2.0)
- you can plot long horizontal bars using a series of small vertical bars (horizontal histogram) instead of columns.
- you can control the width of each histogram bar comprising a level (spacing/horiz density). Large enough width will cause bar overlapping and give level a "solid" look regardless of zoom
- you can only set width <= 4 in UI Style - custom textbox input is provided for larger values. You can set width and plot transparency from input
- this method still uses hist_base and inherits other limitations of ver 2.0

4. plot style lines ( ver 3.0)
- you can also plot long horizontal bars using lines with level offsets controlling visible length.
- lines don't need hist_base - fast and smooth redraw times
- you can calculate the highest/lowest range values automatically. max_level/min_level inputs are optional
- level top can't be properly aligned with another level's bottom and have a proper spacing because line width uses its own units and doesn't scale
- fixed line width of a level (vertical thickness) doesn't scale and looks bad on log (level overlapping)
- you can only set width <= 4 in UI Style, a custom textbox input is provided for larger values. You can set width and plot transparency from input


Notes:
- hist_base for levels results in ugly load/redraw times - give it 3-5 sec to finalize its shape after each UI param change
- indicator is slow on TFs with long history 10000+ bars
- Volume Profile/Value Area are calculated for a given range and updated on each bar. Each level has a fixed width. Offsets control visible level parts. Side Cover hides the invisible parts.
- Custom Color for POC/VA/VWAP levels - UI Style color/transparency can only change shape's color and doesn't affect textcolor, hence this additional option
- Custom Widh for levels - UI Style supports only width <= 4, hence this additional option
- POC is visible in both modes. In VWAP mode Developing POC becomes VWAP , VA High and Low => VWAP High and Low correspondingly to minimize the number of plot outputs
- You can't change buy/sell level colors (only plot transparency) - this requires 2x plot outputs exceeding max 64 limit. That's why 2 additional plots are used to dim the non Value Area zones
- Use Side by Side view to compare buy and sell volumes between each other: base width = max(total_buy_vol, total_sell_vol)
- All buy/sell volume lengths are calculated as % of a fixed base width = 100 bars (100%). You can't set show_last from input
- Sell Offset is calculated relative to Buy Offset to stack/extend sell on top of buy. Buy Offset = Zero - Buy Length. Sell Offset = Buy Offset - Sell Length = Zero - Buy Length - Sell Length
- If you see "loop too long error" - change some values in UI and it will recalculate - no need to refresh the chart
- There's no such thing as buy/sell volume , there's just volume , but for the purposes of the Volume Profile method, assume: bull candle = buy volume , bear candle = sell volume
- Volume Profile Range is limited to 5000 bars for free accounts


P.S. Cantaloupia Will be Free!

Links on Volume Profile and Value Area calculation and usage:
https://www.tradingview.com/wiki/Volume_...
https://stockcharts.com/school/doku.php?...
https://onlinelibrary.wiley.com/doi/pdf/...

Informacje o Wersji: Changes in ver 2.0:

Features:
- style histogram implementation
- level width/density control and zero/cover offset micro adjustments for more solid looking levels
- empty range is now handled properly. VWAP, zero and cover are shown regardless of the range.
- source option for Volume Profile calculation
- swapped level_top with level in plot - seems more logical, doesn't affect redraw time

Notes:
- density is the width of a single histogram bar forming a level. typically level/cover density should both be assigned the same value
- 12 is the optimal density for a solid looking levels on both large/small zoom scales, higher values require micro adjustment of zero/cover offset when zoomed out depending on scale
- level transparency is counter-acted by density. Higher density = less transparent levels given the same transparency
- you can now specify source for Volume Profile calculation i.e. use high/low instead of close if needed
Informacje o Wersji: Differences between implementations:

ver 1.0: ver 2.0 ver 3.0
- style columns - style histogram - style line
- manual min/max level - manual min/max level - manual min/max level
- fixed 100% base width - fixed 100% base width - fixed 100% base width
- hist_base (ugly redraw) - hist_base (ugly redraw) - no hist_base (cleaner redraw)
- no level density (equalizer) - level density control (more solid) - line width control (outline from level center)
- level gaps auto fill - level gaps auto fill - manual level height adjustments for normal/log
- manual spacing - manual spacing - no spacing control, only width + compensation
- better transparency - less transparency (density is in the way) - better transparency

Changes in ver 3.0:

Features:
- style line implementation (no hist_base => cleaner redraw)
- width now controls the actual level/line width, while density only affects cover
- compensate level width and multiplier for log scale option
- level shift % of step h option to compensate for large level width
- extended cover option to compensate for large level width

Notes:
- this is a more straightforward version with cleaner redraw, it doesn't use hist_base for levels, just lines
- downside: you can't fill the gaps between levels automatically, spacing doesn't work, width has its own units, you have to adjust it manually for each zoom/scale or leave huge gaps in between.
- you can have one level width for normal scale and another with a multiplier for a log scale
- you can shift levels vertically (middle of a step is default) and adjust zero/cover offsets to compensate for width outline
- level transparency now works again as expected since there's no density in the way
- assigning highest/lowest range values produces curves instead of straight lines as range changes dynamically - you still have to set max_level/min_level manually from input
Usuń z Ulubionych Skryptów Dodaj do Ulubionych Skryptów
Very good work Please give me the indicator My best wishes to you
Odpowiedź
@aymnfdh, not sure what you mean
Odpowiedź
aymnfdh RagingRocketBull
@RagingRocketBull,
I want to get this indicator
Odpowiedź
@aymnfdh, to attach the indicator to your chart click the Indicators button next to Compare, start typing its name: volume profile free, then select the version you want and it will be applied to the chart. Specify price Max/Min Level and Spacing in indicator's settings, give it a few secs to recalcuate and it should work. If you want the source code - it's published in a window above.
Odpowiedź
This version:

- will be updated to Pinescript v4 in the next couple of weeks.

- does not work in Replay Mode due to its design limitations - this should be fixed in the updates
Odpowiedź
RagingRocketBull RagingRocketBull
@RagingRocketBull, the new version is not ready yet, I'm dealing with offline problems right now
Odpowiedź
ver 3. line

with compensate level width for a log scale option



line with width on a normal scale



solid lines as levels

Odpowiedź
screens for reference:

ver 2. histogram with density control - more solid levels


ver 1. columns - equalizer effect


output may look ugly in the preview window above, but when attached to chart it will render correctly (given 3-5 sec)
Odpowiedź
akhtar12345 RagingRocketBull
@RagingRocketBull,
Sir where can i download this volume profile indicator
Odpowiedź
Strona główna Skaner akcji Skaner Forex Skaner Krypto Kalendarz ekonomiczny Jak to działa Funkcje wykresów Cena Dobre Praktyki Moderatorzy Rozwiązania internetowe i brokerskie Widżety Wykresy Uzyskaj Pomoc Zgłoś dodatkową funkcjonalność Blog i wiadomości Często zadawane pytania Wiki Twitter
Profil Ustawienia profilu Konto i płatności Monety TradingView Wiadomości do działu obsługi Uzyskaj Pomoc Opublikowane Pomysły Obserwujący Lista obserwowanych Wiadomość prywatna Czat Wyloguj