OPEN-SOURCE SCRIPT
Updated True Liquidity Blocks

So basically I've been deep diving into liquidity trading concepts similar to ICT (Inner Circle Trader) and developed an indicator that breaks down market movement through a volume-centric lens.
Key Concept:
Markets move not just by price, but by resolving trapped positions
Volume segments, not time intervals, show true market dynamics
VWAP (Volume Weighted Average Price) becomes a key structural reference
What Makes This Different:
Tracks volume segments instead of fixed time frames
Identifies "trapped" trader positions
Measures liquidity level efficiency
Color-codes bars based on nearest liquidity zone
Indicator Features:
Cyan/Red liquidity levels showing buy/sell pressure
Efficiency tracking for each level
Dynamic volume-based segmentation
Bar coloring to show nearest liquidity zone
Theoretical Inspiration: Viewed markets as energy systems where:
Positions create potential energy
Price movement resolves this energy
Trends form through systematic position liquidation
VWAP Recalculation in Each Segment:
Segment Start:
VWAP resets when volume threshold User Inputtable (600,000) is reached
Uses the last 4 price values (High, Low, Close, Close) for calculation
Weighted by volume traded during that segment
Calculation Method:
pineCopy[_vwap, _, _] = ta.vwap(hlcc4, na(segment_start) ? true : na, 1)
hlcc4: Combines high, low, close prices
na(segment_start): Ensures reset at new segment
Weighted by volume, not equal time intervals
Key Points:
Dynamic recalculation each segment
Reflects most recent trading activity
Provides real-time fair price reference
Tracks positioning
Essentially, VWAP resets and recalculates with each new volume segment, creating a rolling, volume-weighted average price that maps trader positioning.
BSL (Buy Side Liquidity) and SSL (Sell Side Liquidity) Explained:
When a volume segment closes relative to VWAP, it creates natural positioning traps:
BSL (Cyan) - Created when price closes BELOW THAT SEGMENT'S VWAP:
Bulls are positioned BELOW VWAP (trapped)
Shorts are positioned ABOVE VWAP (In Profit)
SSL (Red) - Created when price closes ABOVE THAT SEGMENT"S VWAP:
Bulls are positioned ABOVE VWAP (trapped)
Shorts are positioned BELOW VWAP (trapped)
Core Mechanism:
VWAP acts as a reference point for trader positioning
Trapped positions create inherent market tension
Levels expand to show accumulating pressure
Color-coded for quick identification of potential move direction
The goal: Visualize where traders are likely "stuck" and must eventually resolve their positions or liquidate other's, driving market movement.
It was just a fun experiment but If ya'll have any thoughts on it or what I could do to improve it, I would appreciate it.
Just a little note, It's optimized for futures, but if u uncheck the "Rest at Futures Open ?" setting, it allow full reign of any asset with volume data.
Key Concept:
Markets move not just by price, but by resolving trapped positions
Volume segments, not time intervals, show true market dynamics
VWAP (Volume Weighted Average Price) becomes a key structural reference
What Makes This Different:
Tracks volume segments instead of fixed time frames
Identifies "trapped" trader positions
Measures liquidity level efficiency
Color-codes bars based on nearest liquidity zone
Indicator Features:
Cyan/Red liquidity levels showing buy/sell pressure
Efficiency tracking for each level
Dynamic volume-based segmentation
Bar coloring to show nearest liquidity zone
Theoretical Inspiration: Viewed markets as energy systems where:
Positions create potential energy
Price movement resolves this energy
Trends form through systematic position liquidation
VWAP Recalculation in Each Segment:
Segment Start:
VWAP resets when volume threshold User Inputtable (600,000) is reached
Uses the last 4 price values (High, Low, Close, Close) for calculation
Weighted by volume traded during that segment
Calculation Method:
pineCopy[_vwap, _, _] = ta.vwap(hlcc4, na(segment_start) ? true : na, 1)
hlcc4: Combines high, low, close prices
na(segment_start): Ensures reset at new segment
Weighted by volume, not equal time intervals
Key Points:
Dynamic recalculation each segment
Reflects most recent trading activity
Provides real-time fair price reference
Tracks positioning
Essentially, VWAP resets and recalculates with each new volume segment, creating a rolling, volume-weighted average price that maps trader positioning.
BSL (Buy Side Liquidity) and SSL (Sell Side Liquidity) Explained:
When a volume segment closes relative to VWAP, it creates natural positioning traps:
BSL (Cyan) - Created when price closes BELOW THAT SEGMENT'S VWAP:
Bulls are positioned BELOW VWAP (trapped)
Shorts are positioned ABOVE VWAP (In Profit)
SSL (Red) - Created when price closes ABOVE THAT SEGMENT"S VWAP:
Bulls are positioned ABOVE VWAP (trapped)
Shorts are positioned BELOW VWAP (trapped)
Core Mechanism:
VWAP acts as a reference point for trader positioning
Trapped positions create inherent market tension
Levels expand to show accumulating pressure
Color-coded for quick identification of potential move direction
The goal: Visualize where traders are likely "stuck" and must eventually resolve their positions or liquidate other's, driving market movement.
It was just a fun experiment but If ya'll have any thoughts on it or what I could do to improve it, I would appreciate it.
Just a little note, It's optimized for futures, but if u uncheck the "Rest at Futures Open ?" setting, it allow full reign of any asset with volume data.
Release Notes
Updated to input own market hoursRelease Notes
Updated to show each segments average number of barsOpen-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
For quick access on a chart, add this script to your favorites — learn more here.
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.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
For quick access on a chart, add this script to your favorites — learn more here.
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.