Volume Profile I: Building and Reading a Profile
In this chapter: You will learn to turn the volume bars at the bottom of a chart sideways and read volume at price instead of volume over time. You will find the Point of Control (POC), build the 70% Value Area by hand with both the single-row and the two-row method, and learn where the 70% figure came from and why it is a convention rather than a law. We then read the edges of value (VAH and VAL), separate high-volume nodes from low-volume nodes, distinguish developing profiles from final ones (and the look-ahead trap that hides between them), and choose the right profile window: session, weekly, monthly, composite, fixed range and visible range. As always, the profile is a map of where the market has done business, not a forecast of where it will go.
Chapter 4 folded a whole session's volume into a single line, VWAP. That is useful, but a single average hides a lot. Two days can have the same VWAP while one spent the whole session in a narrow range and the other spent half the day at one price and half at another. The volume profile keeps that detail. Instead of one number, it gives you the full distribution: how much business was done at every price.
What Is a Volume Profile?
The ordinary volume bars under a price chart answer the question: when did trading happen, and how much? Each bar belongs to a time period. A volume profile answers a different question: at which prices did trading happen, and how much at each?
To build one, you take all the trades in a chosen period, sort them by price, and add up the volume at each price level. Then you draw a horizontal bar for each price, its length proportional to the volume traded there. The result is a histogram on the price axis, a bar chart turned on its side. A helpful picture: imagine the volume bars under the chart sliding sideways and stacking up next to the prices where they traded.
A small profile built by hand
Here is a hypothetical half-day of GC trading, split into three half-hour periods. Each cell shows how many contracts traded at that price during that period.
| Price | 09:00–09:30 | 09:30–10:00 | 10:00–10:30 | Profile total |
|---|---|---|---|---|
| 4206 | 0 | 20 | 60 | 80 |
| 4205 | 10 | 60 | 90 | 160 |
| 4204 | 40 | 120 | 60 | 220 |
| 4203 | 90 | 70 | 20 | 180 |
| 4202 | 50 | 10 | 0 | 60 |
| Total | 190 | 280 | 230 | 700 |
The bottom row is what ordinary volume bars would show: 190, then 280, then 230 contracts per half-hour. The right-hand column is the volume profile. Drawn as a sideways histogram, with each block representing 20 contracts:
| Price | Volume | Profile |
|---|---|---|
| 4206 | 80 | ████ |
| 4205 | 160 | ████████ |
| 4204 | 220 | ███████████ |
| 4203 | 180 | █████████ |
| 4202 | 60 | ███ |
Both views use exactly the same 700 contracts. The time view tells you the middle half-hour was busiest; the price view tells you $4,204 was where the most business was done, and that the market traded little at the extremes.
Why volume at price is meaningful
In auction market theory (introduced in Chapter 2 and developed fully in Chapter 7), the market is a continuous auction searching for the price that facilitates the most trade. Prices where a lot of volume traded are prices that both buyers and sellers were willing to accept: there was two-sided agreement. Prices with little volume are prices the market passed through quickly or rejected. The profile is a record of this volume memory laid out along the price axis.
Two settings that change the picture
Row size. Each horizontal bar can represent one tick or a group of ticks. Gold's tick is $0.10, so a profile can have one row per tick or, for example, one row per $1.00 (10 ticks). Larger rows produce a smoother but less detailed profile, and they can even move the POC (the busiest row, defined in the next section).
Here is the same 700-contract profile grouped into $2.00 rows, in two different ways:
| Grid A ($2 rows starting at 4202) | Volume | Grid B ($2 rows starting at 4201) | Volume |
|---|---|---|---|
| 4206–4207 | 80 | 4205–4206 | 240 |
| 4204–4205 | 380 | 4203–4204 | 400 |
| 4202–4203 | 240 | 4201–4202 | 60 |
Same trades, same row size, but simply shifting where the grid starts moves the busiest row from 4204–4205 to 4203–4204. Whenever you compare two profiles, make sure they use the same row size and alignment.
Data source. The most accurate profile is built from tick data: each trade added at the exact price where it happened. When a profile is built from candles instead, the platform does not know where inside each candle the volume traded, so it has to assume something, typically that the candle's volume was spread evenly from its low to its high. A five-minute candle with a range from 4201 to 4205 and 500 contracts might be drawn as 100 contracts at each of five $1 rows, even if in reality 300 of them traded at 4202. On fine data this approximation is mild; on large candles it can distort the shape noticeably.
Key idea: Ordinary volume is volume over time. A volume profile is volume at price. It shows where the market has spent its time and money, not where price will go next.
Common mistake: "The profile shows where institutions bought." This is a popular claim, not proven. A profile shows total volume at each price. Every contract has a buyer and a seller, so a heavy row is just as much "where institutions sold" as "where they bought". Other frequent mistakes: comparing profiles built with different row sizes, and building profiles on data without real exchange volume, such as CFD tick volume.
Gold note: As with VWAP, build your profile on futures (GC or MGC), where volume is real exchange volume, and translate the key levels to XAUUSD using the current futures-to-spot gap, recently roughly $27–30 and always approximate.
POC: The Point of Control
The Point of Control (POC) is the price, or row, in the profile where the most volume traded: the longest bar of the histogram. In auction language, the POC is where the auction found the most agreement, the price at which the largest number of contracts changed hands. In our hand-built profile above, the POC is 4204 with 220 contracts.
Ties and tiny margins
What if two rows have exactly the same volume? Platforms use different tie-break rules. CQG's Market Profile documentation, for example, picks the row closer to the middle of the range. These details are small, but they explain why two platforms sometimes disagree on the POC by a tick.
More important than exact ties are near ties. Because the POC is just "the single winning row", a broad, flat profile can have two or three rows within a handful of contracts of each other, and the POC can jump between them with a few late trades. As you saw in the previous section, changing the row size or grid can also move it. So think of the POC as a zone, not a laser-thin line, especially with small row sizes.
POC is the mode; VWAP is the mean
POC and VWAP both describe the "centre" of the day's trading, but they are different statistics:
- VWAP is the mean (average) of all traded prices, weighted by volume.
- POC is the mode of the distribution: the single most-traded price.
On a symmetric, balanced day they sit close together. On a skewed day, where most volume is in one area with a long thin tail on one side, they separate: the mean is pulled towards the tail, while the mode stays where the volume is heaviest.
A hypothetical example. The morning rotates quietly around 4200–4202, then a fast afternoon rally trades thinly up to 4208:
| Price | Volume |
|---|---|
| 4208 | 50 |
| 4207 | 50 |
| 4206 | 50 |
| 4205 | 50 |
| 4204 | 50 |
| 4203 | 100 |
| 4202 | 250 |
| 4201 | 400 |
| 4200 | 200 |
| Total | 1,200 |
The POC is clearly 4201. Now compute VWAP. To keep the numbers small, measure each price as an offset from 4200: Σ(offset × volume) = 1×400 + 2×250 + 3×100 + 4×50 + 5×50 + 6×50 + 7×50 + 8×50 = 2,700. Divide by 1,200: 2.25. So VWAP = 4202.25.
The VWAP sits more than a dollar above the POC because the thin upper tail pulls the average upward, while the busiest price stays at 4201. The distance between VWAP and POC is itself descriptive information: it tells you how lopsided the day's distribution is.
Gold note: On a hypothetical futures POC of 4201, the XAUUSD equivalent would be roughly 4171–4174, using an approximate gap of $27–30. Always use the live gap.
What the POC is, and is not
The POCs of previous days are widely tracked as reference levels (you will use them in Chapter 6). That is reasonable: they mark where the market most agreed. But a reference level is a place to pay attention, not a guarantee of a reaction.
Common mistake: "The POC is always support or resistance" and "the POC is a magnet for price" are both popular claims, not proven. Treating POC and VWAP as the same thing is another error; on skewed days they can be several dollars apart.
Building the Value Area by Hand
The Value Area (VA) is the range of prices, built around the POC, in which roughly 70% of the profile's volume traded. It is the "core" of the day's business. The algorithm is simple enough to do with pencil and paper:
- Add up the total volume of the profile. The target is 70% of that total.
- Start at the POC. It is the first row of the Value Area.
- Look at the rows immediately above and below the current Value Area. Add the side with the larger volume.
- Repeat until the Value Area's volume is equal to or greater than the target.
There are two common versions of step 3:
- Single-row method: compare one row above with one row below. TradingView describes its calculation this way.
- Two-row method: compare the sum of the next two rows above with the sum of the next two rows below, and add both rows of the winning side. This is the classic Market Profile approach.
The results are usually close, but they can differ by a row or two.
Worked example: an 11-row gold profile
A hypothetical GC session with $1 rows:
| Price | Volume |
|---|---|
| 4210 | 20 |
| 4209 | 40 |
| 4208 | 80 |
| 4207 | 120 |
| 4206 | 200 |
| 4205 | 260 (POC) |
| 4204 | 180 |
| 4203 | 150 |
| 4202 | 90 |
| 4201 | 40 |
| 4200 | 20 |
| Total | 1,200 |
Step 1: total = 1,200; target = 70% × 1,200 = 840.
Single-row method:
| Step | Candidate above | Candidate below | Added | VA volume | VA range |
|---|---|---|---|---|---|
| Start | — | — | 4205 (260) | 260 | 4205 |
| 1 | 4206 (200) | 4204 (180) | Above: 4206 | 460 | 4205–4206 |
| 2 | 4207 (120) | 4204 (180) | Below: 4204 | 640 | 4204–4206 |
| 3 | 4207 (120) | 4203 (150) | Below: 4203 | 790 | 4203–4206 |
| 4 | 4207 (120) | 4202 (90) | Above: 4207 | 910 | 4203–4207 |
After step 4 the Value Area holds 910 contracts, which is at least 840, so we stop.
Two-row method:
| Step | Pair above | Pair below | Added | VA volume | VA range |
|---|---|---|---|---|---|
| Start | — | — | 4205 (260) | 260 | 4205 |
| 1 | 4206 + 4207 = 320 | 4204 + 4203 = 330 | Below pair | 590 | 4203–4205 |
| 2 | 4206 + 4207 = 320 | 4202 + 4201 = 130 | Above pair | 910 | 4203–4207 |
Both methods give the same answer here: Value Area = 4203 to 4207, containing 910 contracts, which is 910 ÷ 1,200 ≈ 75.8% of the volume.
Three things to notice:
- The Value Area usually ends up a little above 70%, because rows are added whole. You cannot add "part of" a row.
- The Value Area is not necessarily symmetric around the POC. It grows towards whichever side has more volume. Here it extends two rows on each side, but in the two-row method the lower side was added first because it was heavier.
- The highest row in the Value Area is the Value Area High (VAH), here 4207, and the lowest is the Value Area Low (VAL), here 4203. We examine them in their own section shortly.
Gold note: These are hypothetical futures prices. A Value Area of 4203–4207 on GC would correspond to roughly 4173–4180 on XAUUSD with a gap of about $27–30, approximate and to be checked live.
When the two methods disagree
To see that the method matters, try a second, smaller hypothetical profile:
| Price | Volume |
|---|---|
| 4217 | 20 |
| 4216 | 40 |
| 4215 | 50 |
| 4214 | 90 |
| 4213 | 100 (POC) |
| 4212 | 60 |
| 4211 | 30 |
| 4210 | 10 |
| Total | 400 |
Target = 70% × 400 = 280.
Single-row: start 100. 4214 (90) vs 4212 (60): add above, 190. 4215 (50) vs 4212 (60): add below, 250. 4215 (50) vs 4211 (30): add above, 300. Stop. VA = 4212–4215, 300 contracts, 75.0%.
Two-row: start 100. Above pair 4214 + 4215 = 140 vs below pair 4212 + 4211 = 90: add above, 240. Above pair 4216 + 4217 = 60 vs below pair 4212 + 4211 = 90: add below, 330. Stop. VA = 4211–4215, 330 contracts, 82.5%.
The two methods disagree on the VAL by one full dollar (ten ticks). Neither is wrong; they are two conventions. This is one reason two platforms can show different VAH and VAL values for the same day.
Edge cases
- One side runs out. If the Value Area reaches the top or bottom of the profile, keep adding from the other side only.
- Ties between sides. If the candidates above and below are equal, platforms use their own rule (for example, adding both, or preferring one side). Check your platform's documentation.
- Row size. Because the Value Area is built from rows, a different row size can shift VAH and VAL.
Common mistake: Thinking the Value Area means "70% of the price range". It is 70% of the volume, not of the range. Expecting the Value Area to be symmetric around the POC, or expecting every platform to give identical VAH and VAL values, are the other two classic errors.
Try it: A profile has total volume of 2,000 contracts. At what Value Area volume do you stop expanding? (Answer: when it reaches at least 1,400.) Then take any real GC session, export the volume at each $1 row, and build the Value Area by hand with both methods. Compare your result with your platform's.
Why 70%? The Origin of the Value Area
The Value Area comes from Market Profile, a way of organising market activity developed by J. Peter Steidlmayer, a trader at the Chicago Board of Trade (CBOT), in the early 1980s and made public around 1985 (see Steidlmayer and Koy, Markets and Market Logic, 1986). His insight was that if you plot price on the vertical axis and activity on the horizontal axis, a typical day tends to look like a bell curve turned on its side: wide in the middle, narrow at both ends.
In a normal distribution, about 68% of the data lie within ±1 standard deviation of the mean (the exact figure is 68.27%). Steidlmayer, and later Jim Dalton in Mind Over Markets (with Eric Jones and Robert Dalton), called this central portion value: the range where most of the day's business took place, the prices both sides considered fair. The 68% was rounded to 70%.
Three honest points
1. Seventy per cent is a convention. There is no empirical proof that 70% is "better" than 65% or 80%. Most platforms, TradingView included, let you change the percentage.
2. Real profiles are often not normal. They are frequently skewed, double-humped (a double distribution, two separate areas of acceptance on one day) or stretched out on trend days. You will meet these shapes in Chapter 6. On such days the Value Area is not "±1σ" in any precise statistical sense; it is simply the high-volume core.
3. The real value is standardisation. Because almost everyone uses 70%, VAH and VAL are comparable between traders. When someone says "yesterday's VAH", others know what is meant. That is communication value, not predictive value.
Value Area vs VWAP bands
Both ideas trace back to "one standard deviation", but they are built differently:
| Feature | VWAP ±1σ band (Chapter 4) | Value Area |
|---|---|---|
| Centre | VWAP (mean) | POC (mode) |
| Method | Variance formula | Counting row volumes outward from the POC |
| Symmetry | Always symmetric around VWAP | Usually asymmetric |
| Depends on | All prices, distance squared | Volume of rows adjacent to the growing area |
Common mistake: "Seventy per cent is a magic, optimal number" is a popular claim, not proven. "The Value Area is always exactly one standard deviation" is only roughly true for a normal distribution. And changing the percentage until past results look better is overfitting: tuning a setting to fit history rather than to describe the market (see Chapter 12).
VAH and VAL: The Edges of Value
The Value Area High (VAH) is the highest price of the Value Area; the Value Area Low (VAL) is the lowest. Inside them, the market had its greatest agreement. Outside them are prices the market accepted less.
The edge asks a question
In auction logic, when price reaches the edge of value, a question is being asked: will the market accept prices outside value, or reject them? There are three descriptive scenarios:
- Rejection. Price moves outside VAH or VAL, but little volume builds there and it returns quickly into the Value Area. The interpretation: prices outside value are not yet considered fair.
- Acceptance. Price moves outside and time and volume build at the new prices. The interpretation: value may be shifting. This is the beginning of value migration, covered in Chapter 6.
- Probing or indecision. Price reaches the edge and tests it again and again without a clear outcome.
Defining "acceptance" before you look
There is no universal, quantitative definition of acceptance. The Market Profile literature uses heuristics (rules of thumb) such as "at least two 30-minute periods trading outside the edge" or "volume building at the new prices". These are practical conventions, not laws. Whatever definition you use, write it down before you study a chart, so you cannot unconsciously change it to fit what you see.
Using previous edges
The VAH and VAL of a previous, completed profile (yesterday's, or last week's) are common reference levels for the current session, a theme Chapter 6 develops. But like every level, an edge is only a place to pay close attention. What completes the story is the order-flow behaviour at that price: whether aggressive orders are absorbed, whether delta shifts, whether new volume builds. Those tools come in Chapters 8 to 10.
Gold note: Using the hypothetical Value Area of 4203–4207 from the previous section, a trader watching XAUUSD would mark these edges at roughly 4173–4180, recalculating the gap on the day since it is never fixed.
Common mistake: "VAH means sell and VAL means buy, always." This is a popular claim, not proven. Two other common errors: treating the edges of a still-developing profile as fixed levels (see "Developing vs Final Profiles"), and forgetting that VAH and VAL depend on row size and calculation method.
Try it: Find two GC days where price went above the prior day's VAH. On one, did it return within roughly fifteen minutes with little volume built outside? On the other, did it stay and build a new high-volume area? Label each "rejection" or "acceptance" according to a definition you wrote down first.
HVN and LVN: Where Price Lingers vs Where It Rushes
Look at almost any profile and you will see peaks and valleys.
- A High Volume Node (HVN) is a local peak: a price area where noticeably more volume traded than at its neighbours.
- A Low Volume Node (LVN) is a local valley: an area where very little volume traded compared with its surroundings.
The POC is simply the largest HVN, but a profile can have several HVNs.
Why they form
- HVNs form where the market rotated for a while, with both sides trading actively. That is acceptance.
- LVNs form where the market moved through quickly, perhaps on an aggressive push or a news release, or where it rejected prices. Little time, little volume. Some traders call this an inefficiency: a price range the auction passed through without much two-sided trade.
A worked example: a two-day composite
A hypothetical profile combining two GC sessions, with $1 rows:
| Price | Volume | Note |
|---|---|---|
| 4234 | 30 | |
| 4233 | 60 | |
| 4232 | 140 | |
| 4231 | 210 | Upper HVN |
| 4230 | 180 | |
| 4229 | 90 | |
| 4228 | 35 | LVN zone |
| 4227 | 20 | LVN zone |
| 4226 | 40 | |
| 4225 | 120 | |
| 4224 | 240 | |
| 4223 | 260 | Lower HVN (POC) |
| 4222 | 200 | |
| 4221 | 90 | |
| 4220 | 40 |
The picture is two "hills" with a narrow valley between them. Perhaps the first day rotated around 4223, a news release then lifted price quickly through 4226–4229, and the second day rotated around 4231. The valley at about 4227–4228 is the LVN: the market barely traded there.
Descriptive tendencies when price returns
Auction theory describes typical behaviour when price comes back to these areas:
- Returning to an HVN: price is often described as slowing down and rotating, because there was agreement there before.
- Returning to an LVN: two behaviours are commonly described. Either the LVN is rejected again, or, if price passes into it, it travels relatively quickly to the next HVN, because there is "nothing to get stuck on".
Both descriptions are a popular claim, not proven. They are descriptive tendencies from auction theory, not verified statistics. Treat them as questions to watch, not as rules.
Detecting HVNs and LVNs in practice
There is no single standard for "how high" or "how low" counts. Software typically uses a threshold such as a percentage of the POC's volume, or a local peak or valley with some minimum separation. Different settings produce different nodes. This is why it is more honest to think of HVNs and LVNs as zones, a few ticks or a dollar or two wide, rather than single-tick lines. A very small row size can also produce dozens of tiny "LVNs" that are just noise.
Gold note: In gold, LVNs often mark the path of fast moves around major US releases such as CPI, NFP and FOMC. HVNs often mark the quieter, rotational hours, for example the Asian session or the lull in the middle of the US session.
Common mistake: "Price always shoots through an LVN like lightning" and "an HVN is always support or resistance" are both popular claims, not proven. Finding dozens of LVNs with a one-tick row size is mistaking noise for structure.
Developing vs Final Profiles
While a session is still in progress, its profile is developing: every new trade adds volume to some row, so the developing POC (dPOC), developing VAH (dVAH) and developing VAL (dVAL) can move. When the session ends, the profile becomes final (also called frozen), and its levels no longer change.
Watching the dPOC move
Here is a hypothetical GC RTH session, shown as snapshots of the cumulative profile:
| Price | 09:00 | 10:30 | 12:00 | 13:30 (final) |
|---|---|---|---|---|
| 4207 | 0 | 10 | 30 | 45 |
| 4206 | 10 | 40 | 90 | 130 |
| 4205 | 30 | 100 | 170 | 210 |
| 4204 | 70 | 120 | 150 | 160 |
| 4203 | 90 | 110 | 120 | 125 |
| 4202 | 40 | 50 | 55 | 60 |
| dPOC | 4203 | 4204 | 4205 | 4205 |
Each column includes all volume from the session start up to that time, so every number can only grow. The dPOC steps from 4203 to 4204 to 4205 as the busiest price shifts higher during the morning. Many platforms draw the dPOC as a stepped line across the chart.
Why this matters
1. The dPOC path carries information. A dPOC that keeps stepping higher means the high-volume area, where value is being built, is moving up: higher prices are being accepted. A dPOC that stays put while price swings above and below it describes a market balanced around one fair price.
2. The look-ahead trap. When you review past days, you see the final profile. But at 09:30 on the day above, the final POC of 4205 did not exist yet; the dPOC was around 4203. If you look back and say "at 09:30 price bounced perfectly off the POC at 4205", you are using a level that only formed later, possibly because of the trading around it. This is look-ahead bias: using information that was not available at the moment you are analysing. It is one of the most common errors in trading education, and Chapter 12 deals with it in depth.
3. Today's levels are unstable. A dVAH at 09:00 can be several dollars away from the final VAH. That is why fixed reference levels usually come from previous final profiles (yesterday, last week), while today's developing profile is used to read how value is being built.
The rule this book follows: whenever a level is shown, say whether it was developing or final, and if final, whether it was known at the moment being discussed.
Common mistake: Drawing a fixed horizontal line at the morning's dVAH and expecting it to stay put. Naming the day's profile shape, or "today's value", before the session has ended is the same error in another form.
Try it: Use your platform's replay mode, or simply take screenshots, to capture a GC session's profile at 09:00, 10:30, 12:00 and 13:30 ET. Write down the dPOC at each time. Then look at the final profile and note any "perfect reactions" at the final POC that happened before that POC existed.
Session, Weekly, Monthly and Composite Profiles
A profile always belongs to a time window. Change the window and you change the profile. The common choices:
Session (daily) profile
One session. For gold, the same choice from Chapter 4 applies: the full Globex session (18:00–17:00 ET) or RTH (about 08:20–13:30 ET). Many Market Profile analysts keep the overnight (ON) profile separate from the RTH profile, so they can compare what US hours did with what happened in Asia and London.
Weekly and monthly profiles
A weekly profile includes every trade of the week, starting Sunday 18:00 ET for gold; weekly value is where the week's volume concentrated. A monthly profile covers a month and gives a longer view; its HVNs and LVNs describe the larger structure.
Composite profiles
A composite profile merges any sessions you choose: the last 5, 10 or 20 days, or "everything since the last FOMC". Jim Dalton uses composites to see longer-term balance areas. When the market rotates within a range for several days, the composite of those days often forms a clear bell-shaped distribution, even if no single day did.
Profiles are nested
Profiles fit inside one another like nesting dolls. A price that is an LVN on one day's profile may sit in the middle of an HVN on the weekly profile, because the market came back and traded there heavily on other days. A day that looks lopsided on its own can be one piece of a perfectly balanced week. Shapes and levels only make sense within their own window.
So ask the question first, then choose the window:
| Question | Suitable window |
|---|---|
| What is today's intraday context? | Session profile (Globex or RTH, labelled) |
| How did US hours differ from overnight? | Separate ON and RTH profiles |
| What is the multi-day balance area? | 5–10 day composite, or weekly |
| What is the large structure? | Monthly, or a long composite |
The roll warning from Chapter 4 applies here too. A monthly profile or a long composite can merge two contract months; on a continuous chart, check whether prices were back-adjusted and where the roll fell.
Common mistake: Comparing the Globex-session POC of one day with the RTH POC of another. Building a very long composite on continuous data without checking for rolls. And "monthly levels are always stronger than daily ones" is a popular claim, not proven.
Fixed Range and Visible Range Profiles
Besides calendar-based profiles (session, week, month), most platforms offer two "free-form" profiles.
Fixed Range Volume Profile (FRVP)
With a Fixed Range Volume Profile, you choose the start and end points by hand, and the profile covers only the trades in that window. Typical uses:
- the profile of a specific move, such as from the low before a CPI release to the high after it;
- the profile of a balance area, several days of sideways trading;
- a profile "from the FOMC statement until now".
This is the profile equivalent of anchored VWAP from Chapter 4: a window chosen around an event.
Visible Range Volume Profile (VRVP)
A Visible Range Volume Profile covers every candle currently visible on your screen. Zoom out or scroll, and the window changes, and so do the POC and Value Area.
Why visible range is a poor reference
A visible-range profile depends on something accidental: the size of your monitor and how far you happen to be zoomed in. Two people looking at the same chart can see two different POCs. That is fine for a quick glance at where volume concentrated, but it cannot be reproduced, so it should not be used for a reference level you plan to rely on or present to others.
The hindsight trap in fixed range
Fixed range has the same weakness as anchored VWAP: the window can be chosen after seeing the outcome. If you redraw a fixed range three or four times until its POC lands exactly where price turned, you have proved nothing. Choose the window by a rule written beforehand (an event, a defined swing, a fixed number of days) and state the rule whenever you share the result.
| Feature | Fixed range | Visible range |
|---|---|---|
| Who sets the window? | You, with start and end points | Your screen and zoom level |
| Reproducible? | Yes, if the rule is stated | No; changes as you scroll or zoom |
| Main risk | Hindsight in choosing the window | Accidental, unrepeatable levels |
| Good for | Profiling a move, a balance area, post-event trading | A quick look at where volume sits |
Common mistake: Reporting visible-range levels without stating the window. Redrawing a fixed range repeatedly until it looks "perfect". And "a fixed range finds the hidden institutional level" is a popular claim, not proven.
Key idea: A volume profile is more information about where the market has done business. It is not a magic edge. In our own testing of order-flow information, signals on their own did not reliably predict direction once costs were included. Profiles earn their place as context, a map that tells you where to pay attention, combined with everything else in this book.
Try it: On a five-minute GC chart, draw a fixed range from the session low before the most recent NFP release to the end of that session, using the rule "from the last swing low before 08:30 ET". Then switch to a visible-range profile and zoom out twice. Write down the POC each time and notice how much the visible-range POC moves.
Chapter summary
- A volume profile is a histogram of volume at each price over a chosen period: volume at price rather than volume over time.
- Heavy volume at a price indicates two-sided agreement; light volume indicates fast travel or rejection.
- Row size, grid alignment and data source (tick versus candle approximation) all change the profile's shape and can move the POC.
- The POC is the most-traded row, the mode of the distribution; VWAP is the mean. On skewed days they separate, and their distance describes the skew. Treat the POC as a zone.
- The Value Area is built outward from the POC, adding the heavier side until at least 70% of the volume is included. The single-row and two-row methods can give slightly different VAH and VAL values.
- The 70% figure comes from Steidlmayer's Market Profile and the 68% of a normal distribution within ±1σ; it is a convention whose value is shared language, not prediction.
- VAH and VAL are the edges of value, where the market "asks" whether outside prices will be accepted or rejected. Define acceptance before you look.
- HVNs mark acceptance and rotation; LVNs mark fast travel or rejection. Behaviour on a return is descriptive, not proven; treat nodes as zones.
- Developing profiles change all session; final profiles are fixed. Using a final level as if it were known earlier is look-ahead bias.
- Session, weekly, monthly and composite profiles are nested windows; choose the window to fit the question, and watch for contract rolls.
- Fixed range profiles need a pre-written window rule; visible range profiles are not reproducible reference levels.
Checklist
- I can explain the difference between volume over time and volume at price.
- I know my profile's row size, data source and session window, and I label them.
- I can find the POC and explain why it is the mode, not the mean.
- I can build a Value Area by hand with both the single-row and two-row methods.
- I know that 70% is a convention and I do not tune it to fit past results.
- I have written a definition of "acceptance" before studying edges.
- I treat POC, HVNs and LVNs as zones, not single-tick lines.
- I label every level as developing or final, and I check whether it existed at the time I am analysing.
- I choose the profile window (session, ON/RTH, weekly, composite) based on the question I am asking.
- I do not use visible-range levels as references, and I choose fixed ranges by a written rule.
- I build profiles on futures volume and translate key levels to XAUUSD with the live, approximate gap.
Quiz
- What does a volume profile show that ordinary volume bars under a chart do not?
- Statistically, the POC is which measure of the distribution: the mean, the median or the mode? Why can it be far from VWAP on a skewed day?
- A profile has a total volume of 1,200 contracts. The POC row (4205) has 260. The next rows above are 4206: 200 and 4207: 120; the next rows below are 4204: 180, 4203: 150 and 4202: 90. Using the single-row method, what is the Value Area and how much volume does it contain?
- Reviewing yesterday's chart, you notice that price "perfectly bounced" off the final POC at 10:00 a.m. What is the main risk in drawing a conclusion from this?
- Why is a visible range volume profile a poor choice for a reference level?
Quiz answers
- It shows how much volume traded at each price over the chosen period, laid out on the price axis, rather than how much traded in each time period. It reveals where the market agreed (heavy volume) and where it moved quickly or rejected prices (light volume).
- The POC is the mode: the single most-traded price. VWAP is the volume-weighted mean. On a skewed day, a long thin tail of trading pulls the mean towards it while the busiest price stays where the bulk of volume traded, so the two separate.
- Target = 840. Start at 260; add 4206 (200 > 180) for 460; add 4204 (180 > 120) for 640; add 4203 (150 > 120) for 790; add 4207 (120 > 90) for 910. Value Area = 4203–4207 with 910 contracts, about 75.8% of the volume (roughly 4173–4180 on XAUUSD with an approximate $27–30 gap).
- Look-ahead bias. The final POC may not have existed at 10:00 a.m.; the developing POC could have been elsewhere, and the final POC may have formed there partly because of the trading around that time. You are using information that was not available at the moment.
- Because it changes whenever you zoom or scroll. Its window is set by your screen and zoom level, not by a rule, so two people looking at the same chart can see different POCs and Value Areas. It is useful for a quick glance, not for a reproducible level.