Volume Profile Area [BigBeluga]🔵 OVERVIEW
The Volume Profile Area is an advanced profiling tool that calculates and visualizes the value area within a chosen period’s volume distribution. It first builds a main profile of the entire range, then constructs a secondary profile inside the defined value area, allowing traders to examine market balance and key trading zones in greater detail.
🔵 CONCEPTS
Volume Profile – Distributes traded volume across price levels to highlight areas of market activity.
Value Area (VA) – The price range containing a chosen percentage of total volume (commonly 50–70%).
Point of Control (PoC) – The price level with the highest traded volume, often acting as a magnet for price.
Nested Profiles – A profile inside the VA adds a second layer of precision, showing where liquidity clusters within the “fair value” zone.
🔵 FEATURES
Main Profile – Full distribution of volume over the selected lookback period.
Secondary Profile – Built only inside the VA of the main profile, highlighting intrabalance structure.
Customizable PoC Selection – Choose between showing the PoC of the
Main Profile ,
the Area Profile ,
their Average ,
or None .
Dynamic Value Area Levels – Automatically plots VAL (Value Area Low) and VAH (Value Area High) with labels.
Overlay Toggles – Show/hide range extremes, VA lines, or PoCs for a cleaner chart view.
Visual Profiles – Main profile shaded in darker blue; the VA profile inside is lighter for clear separation.
Automatic Scaling – Profiles adapt to period highs/lows and auto-adjust bins for consistent resolution.
Volume Labels – PoCs can display traded volume, giving numeric confirmation of liquidity concentration.
🔵 HOW TO USE
Set the Period to define how many bars to include in the main profile.
Adjust the Value Area % to control how much volume defines the VA (e.g., 50% by default).
Pick your PoC option: Main , Area , or Average , depending on focus.
Use VAH/VAL lines as support/resistance levels where most trading occurred.
Compare reactions at Main vs VA PoC levels to spot potential breakouts or mean reversions.
🔵 CONCLUSION
The Volume Profile Area extends traditional profiling by nesting a secondary VA profile inside the main distribution. This dual-layer approach reveals not just where the market was active overall, but where liquidity concentrated within the “fair value” zone—powerful for refining entries, exits, and risk placement across intraday and swing horizons.
Valuearealow
VolumeProfileLibrary "VolumeProfile"
Analyzes volume and price and calculates a volume profile, in particular the Point Of Control and Value Area values.
new(rowSizeInTicks, valueAreaCoverage, startTime)
Constructor method that creates a new Volume Profile
Parameters:
rowSizeInTicks (float) : Internal row size (aka resolution) of the volume profile. Useful for most futures contracts would be '1 / syminfo.mintick'. Default '4'.
valueAreaCoverage (int) : Percentage of total volume that is considered the Value Area. Default '70'
startTime (int) : Start time (unix timestamp in milliseconds) of the Volume Profile. Default 'time'.
Returns: VolumeProfile object
method calculatePOC(vp)
Calculates current Point Of Control of the VP
Namespace types: VolumeProfile
Parameters:
vp (VolumeProfile)
Returns: void
method calculateVA(vp)
Calculates current Value Area High and Low of the VP
Namespace types: VolumeProfile
Parameters:
vp (VolumeProfile)
Returns: void
method update(vp, h, l, v, t)
Processes new chart data and sorts volume into rows. Then calls calculatePOC() and calculateVA() to update the VP. Parameters are usually the output of request.security_lower_tf.
Namespace types: VolumeProfile
Parameters:
vp (VolumeProfile)
h (array) : Array of highs
l (array) : Array of lows
v (array) : Array of volumes
t (array) : Array of candle times
Returns: void
method setSessionHigh(vp, h)
Sets the high of the session the VP is tracking
Namespace types: VolumeProfile
Parameters:
vp (VolumeProfile)
h (float)
Returns: void
method setSessionLow(vp, l)
Sets the low of the session the VP is tracking
Namespace types: VolumeProfile
Parameters:
vp (VolumeProfile)
l (float)
Returns: void
method getPOC(vp)
Gets the current Point Of Control
Namespace types: VolumeProfile
Parameters:
vp (VolumeProfile)
Returns: Point Of Control (float)
method getVAH(vp)
Gets the current Value Area High
Namespace types: VolumeProfile
Parameters:
vp (VolumeProfile)
Returns: Value Area High (float)
method getVAL(vp)
Gets the current Value Area Low
Namespace types: VolumeProfile
Parameters:
vp (VolumeProfile)
Returns: Value Area Low (float)
VolumeProfile
Fields:
rowSizeInTicks (series float)
valueAreaCoverage (series int)
startTime (series int)
valueAreaHigh (series float)
pointOfControl (series float)
valueAreaLow (series float)
sessionHigh (series float)
sessionLow (series float)
volumeByRow (map)
totalVolume (series float)
pocRow (series float)
pocVol (series float)

