Volume Profile

The Volume Profile overlay aggregates traded volume by price over a chosen window — session, CME day, fixed minutes, 90/180 rolling days or the visible range — and draws it on the left of the chart with POC, VAH and VAL. It is on by default; the heatmap draws its own volume profile over the profile history chosen there, not over this window.

Senzoukria · Documentation · Updated September 2026


Where to find it

Where
Chart → Indicators → Overlays → Volume Profile (session)
Default
On; Period = Session; Profile type = Volume; Opacity 65 %
Value area
70 % (engine default); POC tie-break = first inserted level
Related chart settings
Chart settings → POC session and POC bar (both on by default)

What it does

The profile is built in two stages. Stage one folds every bar of the window into a map of price levels with buy and sell volume; two profiles on the same window share this pass. Stage two groups levels into rows (Resolution or Rows), projects the chosen metric, picks the POC, computes the value area and, if enabled, detects nodes. Grouping happens before projection, so the POC and value area describe exactly the rows that are drawn.

Windows are resolved by a pure module: Session cuts at the first 45-minute gap in loaded history; CME day starts at the most recent 17:00 Chicago, DST-safe; a minute count is anchored on the epoch (1440 starts at 00:00 UTC); 90 and 180 rolling days count back from the last loaded candle; Visible range follows the zoom. Anchoring on the last candle rather than the wall clock keeps the profile present in replay and on a frozen weekend chart.

The value area expands from the POC until 70 % of the metric is captured. HVN/LVN detection marks local maxima at or above 60 % of the profile maximum and local minima at or below 25 % that sit between two HVNs, merges nodes closer than 4 ticks into zones and keeps at most 4 zones per type.

Settings

Volume Profile (session) parameters
SettingDefaultWhat it changes
PeriodSessionSession, CME day (17:00 CT), 1 hour, 4 hours, Daily, 3 days, Weekly, 3 months (90 days rolling), 6 months (180 days rolling), Visible range, Custom
Custom60 min (1–20160)Minutes used when Period is Custom
Profile typeVolumeVolume, Ask / Bid volume, Delta, Delta %, Delta + Volume
Draw styleSolidSolid, Hollow, Line, Combined, Area, Smooth line, Smooth area
Opacity65 % (10–100)Bar opacity
Width0 px = auto (0–400)Auto is 22 % of the area, capped at 120 px
Resolution0 ticks/row = auto (0–512)Ticks grouped per row; 0 follows the zoom
Rows0 = use Resolution (0–2000)Fixed number of rows over the profile range; never finer than one tick
Bar height0 px = fill row (0–8)Thin bars instead of full-cell bars
Heatmap shadingoffContinuous intensity instead of POC / value area / rest steps
VA bars / Delta up / Delta down#7ed321 / #7ed321 / #ffffffBar colours; delta colours apply to the delta types
Split buy / selloffSeparate buy side (#7ed321) and sell side (#e5484d) per level
POC / VAH / VAL#a855f7 / #ffffff / #7ed321Level line colours
Detect HVN / LVNoffShade node zones; HVN #38bdf8, LVN #f59e0b, Node opacity 100 %

How to use it

The overlay is enabled by default with the Session window. Switch to CME day on futures when the continuous feed has no 45-minute gap and the session cut would otherwise reach too far back. Use Visible range to explore: the profile then follows the zoom. On the heatmap, the Volume profile toggle and the Profile history setting build the same profile over the depth of history chosen there, not the session, and the POC / VA / VWAP lines follow that history.

In Chart settings, POC session draws the session POC line across the chart and POC bar highlights the highest-volume level inside each bar; both are independent of the profile overlay. Naked POCs from earlier sessions are a separate overlay.

Limits and pitfalls

  • Selecting a period does not load history: 90 and 180 rolling days use only the price-level data already loaded, and the coverage is not certified.
  • A profile is only as complete as its bars. Bars without price-level detail add nothing; the rolling windows report how many loaded bars carry levels.
  • Session detection by gap can span several days on a 24/7 crypto feed with no gap; use a minute window or CME day if you need a bounded profile.
  • The delta types read aggressor volume as the source labels it; the profile cannot certify the source's bid/ask classification.

This page in other languages

Frequently asked questions

Why does my profile look thick in footprint mode?
Bar height 0 fills each price cell, and a footprint row is about 20 px tall. Set Bar height to a few pixels for thin bars, or leave 0 for full rows.
Does the value area percentage change?
The Volume Profile overlay uses the engine default of 70 %. The Market Profile overlay exposes its own Value area setting (50–95 %).
What is the difference between Resolution and Rows?
Resolution fixes the number of ticks per row; Rows fixes how many rows the profile range is split into regardless of zoom. Rows takes precedence when it is not 0.

Keep reading