Dual Profile Structure Map [JOAT]Dual Profile Structure Map
Introduction
Dual Profile Structure Map is an open-source session volume profile indicator that computes Point of Control, Value Area High, Value Area Low, and Initial Balance levels for the current session and displays them as a horizontal histogram overlaid on price. Unlike fixed-range or visible-range profiles, this indicator uses time-based session segmentation — the profile represents only the bars within the current trading day, updating continuously as each bar closes.
The profile answers a specific question: where was the majority of trading activity concentrated in the current session, and what are the structural reference levels that follow from that activity? The Initial Balance (the range of the first hour of the session) provides context for whether subsequent price behavior is an extension or a rejection.
Core Concepts
1. Volume Profile Calculation
Price range is divided into configurable bins. Each bar's volume is allocated to the bins that overlap its high-low range, proportionally by the fraction of the bar that falls within each bin. The result is an array of volume-at-price values for the session:
for b = 0 to nBins - 1
float binLo = profileLow + b * binSize
float binHi = binLo + binSize
float overlap = math.min(high, binHi) - math.max(low, binLo)
if overlap > 0
vol_at_bin += volume * (overlap / (high - low))
2. Point of Control and Value Area
The Point of Control (POC) is the bin with the highest volume — the price level where the most trading occurred. The Value Area is computed using the standard 70% rule: starting from the POC, adjacent bins are added to the value area (choosing the higher-volume adjacent bin each time) until 70% of session volume is captured. The resulting Value Area High (VAH) and Value Area Low (VAL) define the range where value was accepted.
3. Initial Balance
The Initial Balance uses the high and low of the first configurable number of bars after session open (default: first 4 bars on a 15-minute chart = first hour). IB High and IB Low are drawn as horizontal lines across the chart. Price trading above IB High is bullish extension; below IB Low is bearish extension; inside the IB is balance.
4. Histogram Rendering
Volume bins are rendered as horizontal bars extending leftward from the right edge of the session. Bar width is proportional to relative volume. The POC bin uses a distinct color. Value area bins use a softer fill. Bins outside the value area use the dimmest fill. This creates the standard volume profile "bell curve" visualization.
Features
Session volume profile: Real-time per-session histogram updated bar by bar
Point of Control (POC): Highest-volume price bin with labeled line
Value Area (VAH/VAL): 70% volume concentration band with boundary lines
Initial Balance High/Low: First-session-period range with horizontal level lines
Configurable bin count: Controls granularity of the volume distribution
Session reset logic: Profile resets at each new session boundary
Candle coloring: Candles painted by position relative to POC and value area
Dashboard: Current POC, VAH, VAL, IB range, and session volume total
Input Parameters
Profile Configuration:
Number of Bins: Price level granularity for the profile (default: 24)
IB Bars: Number of bars defining the Initial Balance period (default: 4)
Session Type: Trading session boundary for profile reset
Display:
Histogram Width: Maximum bar width in chart bars (default: 30)
Show POC Line toggle
Show Value Area toggle
Show Initial Balance toggle
Show Candle Color toggle
How to Use This Indicator
Step 1: Identify the POC
The POC is the fair value anchor for the session. Price gravitating toward the POC during a pullback indicates healthy trend behavior. Price unable to hold above or below the POC suggests indecision at current levels.
Step 2: Use Value Area for Range Context
Value area acceptance means price is spending time within the 70% volume zone — a range-bound state. Value area rejection (price rapidly leaving VAH or VAL and not returning) indicates directional conviction.
Step 3: Trade Initial Balance Extensions
A close above IB High with follow-through is a bullish extension signal. A close below IB Low is bearish. Range expansion beyond the IB indicates participants accepting new value outside the opening equilibrium.
Step 4: Watch POC as Support or Resistance
On future pullbacks, the prior session's POC often acts as structural support or resistance. The indicator's persistent level lines provide these reference points across sessions.
Indicator Limitations
Volume profile interpretation requires practice; mechanical rules based on profile levels without context produce poor results
On instruments with irregular volume distribution (low-liquidity sessions, gaps), profiles may cluster into unrepresentative patterns
The 70% value area rule is a convention from Market Profile theory, not a mathematically proven optimal threshold
Originality Statement
The combination of a real-time session volume profile with Initial Balance tracking, candle coloring by value area position, and a live-updating dashboard in a single Pine Script v6 publication provides a self-contained session structure tool. The session-adaptive profile calculation using proportional volume allocation across bins is implemented from first principles, not adapted from another published script.
Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice. Volume profile levels are historical references and do not guarantee future price reactions. Trading involves substantial risk of loss.
-Made with passion by jackofalltrades
Indicator

Indicator

Price Volume Heatmap [MHA Finverse]Price Volume Heatmap - Advanced Volume Profile Analysis
Unlock the power of institutional-level volume analysis with the Price Volume Heatmap indicator. This sophisticated tool visualizes market structure through volume distribution across price levels, helping you identify key support/resistance zones, high-probability reversal areas, and optimal entry/exit points.
🎯 What Makes This Indicator Unique?
Unlike traditional volume indicators that only show volume over time, this heatmap displays volume distribution across price levels , revealing where the most significant trading activity occurred. The gradient coloring system instantly highlights high-volume nodes (areas of strong interest) and low-volume nodes (potential breakout zones).
📊 Core Features
1. Dynamic Volume Heatmap
- Visualizes volume concentration across 250 customizable price levels
- Gradient color scheme from high volume (white) to low volume (teal/green)
- Adjustable brightness multiplier for enhanced contrast and clarity
- Real-time updates as market conditions evolve
2. Point of Control (POC)
- Automatically identifies the price level with the highest traded volume
- Acts as a magnetic price level where markets often return
- Critical for identifying fair value areas and potential reversal zones
- Customizable line style, width, and color
3. Flexible Lookback Settings
- Lookback Bars: Set any value from 1-5000 bars to control analysis depth
- Visible Range Mode: Analyze only what's currently visible on your chart
- Timeframe-Specific Settings: Different lookback periods for 1m, 5m, 15m, 30m, 1h, Daily, and Weekly charts
- Adapts to your trading style - scalping to position trading
4. Session Separation Analysis
- Tokyo Session: 00:00-09:00 UTC
- London Session: 07:00-16:00 UTC
- New York Session: 13:00-22:00 UTC
- Sydney Session: 21:00-06:00 UTC
- Daily Reset: Analyze each trading day independently
Session separation allows you to understand volume distribution specific to each major trading session, revealing institutional order flow patterns and session-specific support/resistance levels.
5. Profile Width Options
- Dynamic: Profile width adjusts based on lookback period
- Fixed Bars: Set a specific bar count for consistent profile width
- Extend Forward: Project the profile into future bars for planning trades
6. Smart Alerts
- POC crossover/crossunder alerts
- New session start notifications
- Never miss critical price action at high-volume nodes
📈 How to Use This Indicator Professionally
Understanding Market Structure:
High Volume Nodes (HVN):
- Appear as bright/white areas in the heatmap
- Represent price levels where significant trading occurred
- Act as strong support/resistance zones
- Markets often consolidate or bounce from these levels
- Trading Strategy: Look for entries when price tests HVN areas with confluence from other indicators
Low Volume Nodes (LVN):
- Appear as darker/teal areas in the heatmap
- Represent price levels with minimal trading activity
- Price tends to move quickly through these areas
- Often form "gaps" in the volume profile
- Trading Strategy: Expect rapid price movement through LVN zones; avoid placing stop losses here
Point of Control (POC):
- The single most important price level in your analysis window
- Represents the fairest price where maximum volume traded
- Price gravitates toward POC like a magnet
- Trading Strategy:
* When price is above POC: bullish bias, POC acts as support
* When price is below POC: bearish bias, POC acts as resistance
* POC breaks often lead to significant trend changes
Session-Based Analysis:
Use session separation to understand how different market participants trade:
Asian Session (Tokyo/Sydney):
- Typically lower volatility and range-bound
- Volume profiles often show tight, balanced distribution
- Use for identifying overnight ranges and gap fill zones
London Session:
- Highest volume session for forex pairs
- Often shows strong directional bias
- Look for breakouts from Asian ranges during London open
New York Session:
- Maximum participation when overlapping with London
- Institutional order flow most visible
- POC during NY session often becomes key level for following sessions
🎯 Practical Trading Applications
1. Identifying Support & Resistance:
High volume nodes from the heatmap are far more reliable than traditional swing highs/lows. When price approaches an HVN, expect reaction - either a bounce or a significant breakout if breached.
2. Trend Confirmation:
- Healthy uptrend: POC rising over time, HVN forming at higher levels
- Healthy downtrend: POC falling over time, HVN forming at lower levels
- Consolidation: POC relatively flat, volume balanced across range
3. Breakout Trading:
When price breaks through a Low Volume Node with momentum, it often continues to the next High Volume Node. Use LVN areas as measured move targets.
4. Reversal Zones:
Multiple HVN stacking on top of each other creates a "volume shelf" - an extremely strong support/resistance zone where reversals are highly probable.
5. Risk Management:
- Place stops beyond HVN areas (not within LVN zones)
- Size positions based on distance to nearest HVN
- Use POC as trailing stop level in trending markets
⚙️ Recommended Settings
For Day Trading (Scalping/Intraday):
- Lookback: 200-500 bars
- Rows: 200-250
- Enable session separation for your primary trading session
- Profile Width: Dynamic or Fixed Bars (30-50)
For Swing Trading:
- Lookback: 500-1000 bars
- Rows: 250
- Session separation: Daily Reset
- Profile Width: Dynamic
For Position Trading:
- Lookback: 1000-3000 bars
- Rows: 250
- Use timeframe-specific settings
- Profile Width: Extend Forward (20-50 bars)
💡 Pro Tips
1. Combine this indicator with price action analysis - volume confirms what price is telling you
2. Watch for POC convergence with other technical levels (fibonacci, pivot points, moving averages)
3. Volume at extremes (tops/bottoms of heatmap) often indicates exhaustion
4. Session POC from previous sessions often acts as magnet for current session
5. Increase brightness multiplier (1.5-2.5) for clearer visualization on busy charts
6. Use "Number of Sessions to Display" to analyze consistency of volume levels across multiple sessions
🎨 Customization
Fully customizable visual appearance:
- Gradient colors for volume visualization
- POC line thickness, color, and style
- Session line colors and visibility
- All settings organized in intuitive groups
⚠️ Disclaimer
This indicator is a technical analysis tool and should not be used as the sole basis for trading decisions. Always combine volume analysis with proper risk management, fundamental analysis, and other technical indicators. Past performance does not guarantee future results.
---
Support & Updates
Regular updates and improvements are made to enhance functionality. For questions, suggestions, or bug reports, please use the comments section below.
Happy Trading! 📊💹 Indicator

Quantura - Average Intraday Candle VolumeIntroduction
“Quantura – Average Intraday Candle Volume” is a quantitative visualization tool that calculates and displays the average traded volume for each intraday time position based on a user-defined historical lookback period. It allows traders to analyze recurring intraday volume patterns, identify high-activity sessions, and detect liquidity shifts throughout the trading day.
Originality & Value
This indicator goes beyond standard volume averages by normalizing and aligning volume data according to the time of day. Instead of simply smoothing recent bars, it builds an intraday volume profile based on historical daily averages, enabling users to understand when during the day volume typically peaks or drops.
Its originality and usefulness come from:
Converting standard volume data into time-aligned intraday averages.
Visualization of historical intraday liquidity behavior, not just total daily volume.
Dynamic scaling using normalization and transparency to emphasize active and quiet periods.
Optional day-separator lines for precise intraday structure recognition.
Gradient-based coloring for better visual interpretation of volume intensity.
Functionality & Core Logic
The indicator divides each day into discrete intraday time positions (based on chart timeframe).
For each position, it stores and updates historical volume values across the selected number of days.
It calculates an average volume per time position by aggregating all stored values and dividing them by the number of valid days.
The result is plotted as a continuous histogram showing typical intraday volume distribution.
The bar colors and transparency dynamically reflect the relative intensity of volume at each point in the day.
Parameters & Customization
Number of Days for Averaging: Defines how many past days are included in the volume average calculation (default: 365).
UTC Offset: Allows synchronization of intraday cycles with local or exchange time zones.
Base Color: Sets the main color for plotted volume columns.
Color Mode: Choose between “Gradient” (transparency dynamically adjusts by intensity) or “Normal” (fixed opacity).
Day Line: Toggles dashed vertical lines marking the start of each trading day.
Visualization & Display
Volume is plotted as a series of histogram bars, each representing the average volume for a specific intraday time position.
A gradient color mode enhances readability by fading lower-intensity areas and highlighting high-volume regions.
Optional day-separator lines visually segment historical sessions for easy reference.
Works seamlessly across all chart timeframes that divide the 24-hour day into regular bar intervals.
Use Cases
Identify when trading activity typically peaks (e.g., session opens, news windows, or overlapping markets).
Compare current intraday volume to historical averages for early anomaly detection.
Enhance algorithmic or discretionary strategies that depend on volume-timing alignment.
Combine with volatility or price structure indicators to confirm market activity zones.
Evaluate session consistency across different time zones using the UTC offset parameter.
Limitations & Recommendations
The indicator requires intraday data (below 1D resolution) to function properly.
Volume behavior may vary across brokers and assets; adjust averaging period accordingly.
Does not predict price movement — it provides volume-based context for analysis.
Works best when combined with structure or momentum-based indicators.
Markets & Timeframes
Compatible with all intraday markets — including crypto, Forex, equities, and futures — and all intraday timeframes (from 1 minute to 4 hours). It is particularly valuable for analyzing assets with continuous 24-hour trading activity.
Author & Access
Developed 100% by Quantura. Published as a Open-source script indicator. Access is free.
Important
This description complies with PulseWire’s Script Publishing and House Rules. It provides a clear explanation of the indicator’s originality, logic, and purpose, without any unrealistic performance or predictive claims. Indicator

SessionsOverview of the "Sessions" Indicator
The "Sessions" indicator is a powerful tool designed for traders who want to visualize and analyze the market activity during different global trading sessions directly on their charts. This indicator highlights the London, New York, Tokyo, and Sydney sessions with distinct background colors, making it easy to see when each market is open.
Key Features
Session Visualization: The indicator provides clear visual cues for the active trading sessions, allowing traders to quickly identify periods of high market activity.
Customizable Timeframes: Users can set their preferred resolution for viewing session data, making it adaptable to any trading strategy.
Automatic Session Detection: The indicator automatically detects the start and end of each session based on specified times, updating in real-time as the market progresses.
Practical Applications
Trend Identification: By observing how prices move during specific sessions, traders can identify trends and make informed predictions about future price movements.
Volatility Analysis: Different sessions often exhibit varying levels of volatility. This indicator helps traders anticipate potential price spikes or lulls during these times.
Strategy Optimization: Traders can optimize their strategies by focusing on sessions that align with their trading style, whether it's the high volatility of the London session or the quieter Sydney session.
Market Overlap: The indicator makes it easy to see when sessions overlap, which is typically when the market experiences increased liquidity and volatility.
Conclusion
The "Sessions" indicator is an essential tool for traders looking to enhance their market analysis by visualizing global trading sessions. Whether you're a day trader seeking to capitalize on volatile market conditions or a swing trader looking for optimal entry and exit points, this indicator provides valuable insights into market dynamics. Indicator

Sessions KillZones Library [TradingFinder]🔵 Introduction
"The Forex Trading Sessions" highlight the active periods across different markets where significant trading volume and influence on the forex market are evident. The primary trading sessions globally include the "Asian Session," "London Session," and "New York Session."
A "Kill Zone" refers to a segment within a session characterized by high trading volume and notably sharper price movements. Consequently, there's a higher probability of encountering price action setups within these zones. Traders capitalize on this phenomenon in pursuit of more successful trading outcomes.
If you aim to integrate sessions or kill zones into your indicators or strategies, utilizing this library can amplify the precision and efficiency of your Python script development.
🔵 How to Use
First, you can add the library to your code as shown in the example below:
import TFlab/SessionAndKillZoneLibrary_TradingFinder/1
🟣 Parameters
SessionDetector(Session_Name, Session_Time, KillZone_Time, Session_Show, KillZone_Show, AreaUpdate, MoreInfo, Session_Color, Info_Color) =>
Parameters:
•Session_Name (string)
•Session_Time (string)
•KillZone_Time (string)
•Session_Show (bool)
•KillZone_Show (bool)
•AreaUpdate (string)
•MoreInfo (bool)
•Session_Color (color)
•Info_Color (color)
Session_Name : You must enter the session name in this parameter.
Session_Time : Enter here the start and end time of the session, which should be based on the UTC time zone.
KillZone_Time : Enter the start and end times of the kill zone, which should be based on the UTC time zone, here.
Session_Show : You can control whether or not to show the session using this entry. You must set true to display and false to not display.
KillZone_Show : Using this input you can control whether the kill zone is displayed or not. You must set true to display and false to not display.
AreaUpdate : If you want the session to be determined based on the time and high and low of the session itself, you must enter "Session" and if you want the area to be determined based on the time and high and low of the kill zone, you must enter "Kill Zone".
MoreInfo : If you want more information, you should set this entry to true, otherwise set to false. This information includes the number of candles in the area, the length of time in the area and the volume of transactions in the area.
Session_Color : Enter your desired color to display the session at this section. It is recommended to use bright and sharp colors.
Info_Color : Enter your desired color to display more information in this section.
🔵 Function Outputs
The outputs of this function are direct and indirect.
🟣 Indirect outputs
These outputs include session display, kill zone display, and time and volume information of session or kill zone.
🟣 Direct outputs
There are 8 direct outputs, which are:
Session Time : If the Session is active, it outputs 1, and if the Session is inactive, it outputs 0.
Kill Zone Time : If the Kill Zone is active, it outputs 1, and if the Kill Zone is inactive, it outputs 0.
Open : Session opening price.
High : The highest price of the session.
Low : The lowest price of the session.
Close : The last price of the session.
Low Touch Alert : If "Area Update" is in "Kill Zone" mode, if the price reaches the lowest price of the kill zone in the same session after the end of the kill zone, this output will be true. You can use this output to create an alert.
High Touch Alert : If "Area Update" is in "Kill Zone" mode, if the price reaches the highest price of the kill zone in the same session after the end of the kill zone, this output will be true. You can use this output to create an alert.
Important : To use "Open", "High", "Low" and "Close", "Area Update" must be in "Session" mode.
Library

SessionVolumeProfileLibrary "SessionVolumeProfile"
Analyzes price & volume during regular trading hours to provide a session volume profile analysis. The primary goal of this library is to provide the developer with three values: the value area high, low and the point of control. The library also provides methods for rendering the value areas and histograms. To learn more about this library and how you can use it, click on the website link in my profile where you will find a blog post with detailed information.
debug(vp, position)
Helper function to write some information about the supplied SVP object to the screen in a table.
Parameters:
vp (Object) : The SVP object to debug
position (string) : The position.* to place the table. Defaults to position.bottom_center
getLowerTimeframe()
Depending on the timeframe of the chart, determines a lower timeframe to grab volume data from for the analysis
Returns: The timeframe string to fetch volume for
get(volumeProfile, lowerTimeframeHigh, lowerTimeframeLow, lowerTimeframeVolume)
Populated the provided SessionVolumeProfile object with vp data on the session.
Parameters:
volumeProfile (Object) : The SessionVolumeProfile object to populate
lowerTimeframeHigh (float ) : The lower timeframe high values
lowerTimeframeLow (float ) : The lower timeframe low values
lowerTimeframeVolume (float ) : The lower timeframe volume values
drawPriorValueAreas(todaySessionVolumeProfile, extendYesterdayOverToday, showLabels, labelSize, pocColor, pocStyle, pocWidth, vahlColor, vahlStyle, vahlWidth, vaColor)
Given a SessionVolumeProfile Object, will render the historical value areas for that object.
Parameters:
todaySessionVolumeProfile (Object) : The SessionVolumeProfile Object to draw
extendYesterdayOverToday (bool) : Defaults to true
showLabels (bool) : Defaults to true
labelSize (string) : Defaults to size.small
pocColor (color) : Defaults to #e500a4
pocStyle (string) : Defaults to line.style_solid
pocWidth (int) : Defaults to 1
vahlColor (color) : The color of the value area high/low lines. Defaults to #1592e6
vahlStyle (string) : The style of the value area high/low lines. Defaults to line.style_solid
vahlWidth (int) : The width of the value area high/low lines. Defaults to 1
vaColor (color) : The color of the value area background. Defaults to #00bbf911)
drawHistogram(volumeProfile, bgColor, showVolumeOnHistogram)
Given a SessionVolumeProfile object, will render the histogram for that object.
Parameters:
volumeProfile (Object) : The SessionVolumeProfile object to draw
bgColor (color) : The baseline color to use for the histogram. Defaults to #00bbf9
showVolumeOnHistogram (bool) : Show the volume amount on the histogram bars. Defaults to false.
Object
Fields:
numberOfRows (series__integer)
valueAreaCoverage (series__integer)
trackDevelopingVa (series__bool)
valueAreaHigh (series__float)
pointOfControl (series__float)
valueAreaLow (series__float)
startTime (series__integer)
endTime (series__integer)
dayHigh (series__float)
dayLow (series__float)
step (series__float)
pointOfControlLevel (series__integer)
valueAreaHighLevel (series__integer)
valueAreaLowLevel (series__integer)
volumeRows (array__float)
priceLevelRows (array__float)
ltfSessionHighs (array__float)
ltfSessionLows (array__float)
ltfSessionVols (array__float) Library

Indicator
