Editors' picks
OPEN-SOURCE SCRIPT

Market Structure Volume Profiles [Kioseff Trading]

24 649
Hello traders and friends!

Introducing: "Market Structure Volume Profiles".

This script combines market structure with volume profiling and CVD to show how volume develops inside each structural changes of the market.

Instead of building one continuous profile across a session, this script creates a new volume profile for each completed BoS or CHoCH, allowing you to study the internal auction of each behavioral regime independently.

🔹Features
  • Detects and displays BoS and CHoCH
  • Builds a dedicated volume profile for each new structure
  • Displays profiles in Stacked or Split mode
  • Optional Mini Profile mode for a compact structure profile view
  • Shows buy-side and sell-side volume distribution
  • Displays POC for each profile
  • Optional extended POC and naked POC tracking
  • Displays Value Area (VA) for each completed structure
  • Tracks and plots CVD by structural leg
  • Optional market structure candle coloring
  • Optional structure statistics label
  • Uses lower timeframe data to build more detailed internal volume distribution

🔹How it works

This script tracks market structure and recalculates volume profiles for each structural change.

Whenever price confirms a Break of Structure (BoS) or Change of Character (CHoCH), the volume accumulated during that completed leg is organized into a profile. This allows you to examine how volume was distributed throughout the move, where the heaviest participation occurred, and whether buying or selling dominated the leg.

Rather than asking only where price moved, this script helps answer:
  • where volume concentrated during the move
  • whether the move was supported by participation
  • where value developed inside the structural range
  • how buy and sell volume were distributed across price

Each profile is built from lower timeframe data so that the structural leg can be broken into price levels and analyzed internally.

🔹What it shows

🔸Market Structure

The script identifies major structural events and labels them as:
  • BoS
  • CHoCH

Profiles to be tied directly to meaningful structural transitions.

🔸Volume Profile by Structure

Each completed structural leg gets its own profile, showing:
  • buy volume at each level
  • sell volume at each level
  • total participation across the leg
  • the internal shape of the auction

This makes it easier to compare continuation legs against reversal legs.

snapshot

snapshot

You can color BoS and CHoCH generated profiles distinctly. Making it easier to trach where each profile sits inside broader market action.

🔸Point of Control (POC)

The script can display the POC of each structural profile, showing the price level with the highest traded volume during that leg.

snapshot

The script can also display the Value Area for each profile, helping identify where the majority of volume was concentrated during the structural move.

snapshot

🔸CVD

The script tracks Cumulative Volume Delta throughout the current structure and plots it in the pane.

CVD can be reset by:

  • CHoCH
  • BoS + CHoCH
  • Day
  • Week


This makes it possible to study delta behavior in a structural context rather than only in a session-based one.

snapshot

🔸Structure Stats

Optional structure statistics can be displayed, including:
  • Range
  • High
  • Low
  • Buy volume
  • Sell volume
  • Delta
  • Return

This gives a summary of the completed structural move.

🔸Why use it

This script is designed for traders who want to combine:
  • market structure
  • volume profiling
  • delta/CVD
  • auction logic

Because profiles are anchored to structure instead of session time, they can help reveal differences between:
  • strong continuation legs
  • weak continuation legs
  • reversal legs
  • imbalanced breakouts
  • balanced rotations

🔸Mini Profiles

snapshot

The indicator has two separate drawing methods for each VP.

The detailed profile is used when the structural move has enough bar data to create a detailed profile.

When not enough data exists, a mini profile is used. You can select only to use mini profiles if you prefer the style.

The internal logic to calculate each volume profile is similar. However, the detailed profile "scrunches" when not enough bar data exists to calculate it on - that's when mini profile takes over.

🔸Split Profile

snapshot

You can also choose to show split volume profiles.

This is more similar to how a delta profile is shown. This is a styling preference only.

Rows Limit

snapshot

Detailed profiles can use up to 500 rows.

Higher values were giving a "response too large" error, so I restricted the max to 500.

🔹Summary

That’s about it!

The goal of this script is simply to combine market structure with volume profiles and CVD so you can see how volume develops inside each structural move instead of across arbitrary time windows.

By anchoring profiles to BoS and CHoCH, you can study how participation builds during continuations, reversals, and rotations - and get a better feel for how each move was actually formed internally.

Hope you find it useful (:

Thank you guys and thank you TradingView!

Disclaimer

The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.