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
| Setting | Default | What it changes |
|---|---|---|
| Period | Session | Session, 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 |
| Custom | 60 min (1–20160) | Minutes used when Period is Custom |
| Profile type | Volume | Volume, Ask / Bid volume, Delta, Delta %, Delta + Volume |
| Draw style | Solid | Solid, Hollow, Line, Combined, Area, Smooth line, Smooth area |
| Opacity | 65 % (10–100) | Bar opacity |
| Width | 0 px = auto (0–400) | Auto is 22 % of the area, capped at 120 px |
| Resolution | 0 ticks/row = auto (0–512) | Ticks grouped per row; 0 follows the zoom |
| Rows | 0 = use Resolution (0–2000) | Fixed number of rows over the profile range; never finer than one tick |
| Bar height | 0 px = fill row (0–8) | Thin bars instead of full-cell bars |
| Heatmap shading | off | Continuous intensity instead of POC / value area / rest steps |
| VA bars / Delta up / Delta down | #7ed321 / #7ed321 / #ffffff | Bar colours; delta colours apply to the delta types |
| Split buy / sell | off | Separate buy side (#7ed321) and sell side (#e5484d) per level |
| POC / VAH / VAL | #a855f7 / #ffffff / #7ed321 | Level line colours |
| Detect HVN / LVN | off | Shade 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.
Related pages
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.