OPEN-SOURCE SCRIPT
Swiftedge Auction Volume Profile

Swing-Anchored Auction Volume Profile
This indicator automatically builds a separate volume profile for each market swing, instead of using one fixed range or session. It is based on auction market theory: a market alternates between balance (acceptance) and imbalance (a directional swing). By anchoring a fresh profile to every significant swing leg, you can read where value was built during each individual move — and how those value areas line up as support and resistance.
What it does
Detects significant swings using an ATR- or point-based zigzag, so only moves above a size you choose are treated as new swings.
At every confirmed swing pivot (high or low), it freezes the previous leg's profile and starts a new one, running from one pivot to the next.
For each leg it calculates and plots three levels:
POC (Point of Control) – the most-traded price of that swing (the magnet / fair value).
VAH (Value Area High) and VAL (Value Area Low) – the upper and lower bounds of the area containing the chosen percentage of volume (70% by default).
It also draws two optional zones per profile: a strong box for the value area, and a faint box for the full swing range (high to low), so you can see both the 70% core and the extremes that were rejected on low volume.
Triangles mark each detected swing high and low.
How it works
Each bar's volume is distributed across the price levels it spans (low to high), accumulated into price bins for the current swing leg. The Point of Control is the bin with the most volume; the value area is then expanded outward from the POC, adding the higher-volume neighbouring level at each step until the target volume percentage is reached. When price closes beyond the swing extreme by more than the chosen swing size, a reversal is confirmed: the leg's profile is locked in place from pivot to pivot, and a new profile is anchored from the actual extreme.
Settings
Min. swing size (points) – the most important input. The smallest move (in price) that counts as a new swing. Larger values produce fewer, larger profiles; set to 0 to use the ATR-based alternative instead.
Swing size (× ATR) – used only when the point value is 0.
Bin size – the price resolution of the profile (smaller = finer).
Value Area % – the share of volume that defines the value area (default 70%).
Number of profiles shown – how many completed profiles remain on the chart.
Display toggles for the value-area box, full-range box, level labels and swing markers.
How to use it
Treat the POC of each completed swing as a fair-value reference; price often returns to and reacts at prior POCs.
Use VAH/VAL as the edges of accepted value: acceptance above a prior VAH or below a prior VAL signals a shift, while rejection at these levels can mark a turn.
Compare the current swing's value area against earlier ones to judge whether the market is building value higher, lower, or overlapping.
Notes and limitations
Pine cannot access true tick-by-tick traded volume at price, so each bar's volume is approximated across its high-low range. The profile shape is therefore an estimate, not exchange-level data, and the Point of Control may differ slightly from a native volume-profile tool. Use a lower chart timeframe for a finer approximation. On symbols without volume, time is used as a fallback so the tool still works.
Swing detection is rule-based; the Min. swing size input should be tuned to the instrument and timeframe so the marked swings match the structure you trade.
This script is provided for chart analysis and educational purposes only. It is not financial advice and does not predict future prices. Always do your own research and manage your own risk.
This indicator automatically builds a separate volume profile for each market swing, instead of using one fixed range or session. It is based on auction market theory: a market alternates between balance (acceptance) and imbalance (a directional swing). By anchoring a fresh profile to every significant swing leg, you can read where value was built during each individual move — and how those value areas line up as support and resistance.
What it does
Detects significant swings using an ATR- or point-based zigzag, so only moves above a size you choose are treated as new swings.
At every confirmed swing pivot (high or low), it freezes the previous leg's profile and starts a new one, running from one pivot to the next.
For each leg it calculates and plots three levels:
POC (Point of Control) – the most-traded price of that swing (the magnet / fair value).
VAH (Value Area High) and VAL (Value Area Low) – the upper and lower bounds of the area containing the chosen percentage of volume (70% by default).
It also draws two optional zones per profile: a strong box for the value area, and a faint box for the full swing range (high to low), so you can see both the 70% core and the extremes that were rejected on low volume.
Triangles mark each detected swing high and low.
How it works
Each bar's volume is distributed across the price levels it spans (low to high), accumulated into price bins for the current swing leg. The Point of Control is the bin with the most volume; the value area is then expanded outward from the POC, adding the higher-volume neighbouring level at each step until the target volume percentage is reached. When price closes beyond the swing extreme by more than the chosen swing size, a reversal is confirmed: the leg's profile is locked in place from pivot to pivot, and a new profile is anchored from the actual extreme.
Settings
Min. swing size (points) – the most important input. The smallest move (in price) that counts as a new swing. Larger values produce fewer, larger profiles; set to 0 to use the ATR-based alternative instead.
Swing size (× ATR) – used only when the point value is 0.
Bin size – the price resolution of the profile (smaller = finer).
Value Area % – the share of volume that defines the value area (default 70%).
Number of profiles shown – how many completed profiles remain on the chart.
Display toggles for the value-area box, full-range box, level labels and swing markers.
How to use it
Treat the POC of each completed swing as a fair-value reference; price often returns to and reacts at prior POCs.
Use VAH/VAL as the edges of accepted value: acceptance above a prior VAH or below a prior VAL signals a shift, while rejection at these levels can mark a turn.
Compare the current swing's value area against earlier ones to judge whether the market is building value higher, lower, or overlapping.
Notes and limitations
Pine cannot access true tick-by-tick traded volume at price, so each bar's volume is approximated across its high-low range. The profile shape is therefore an estimate, not exchange-level data, and the Point of Control may differ slightly from a native volume-profile tool. Use a lower chart timeframe for a finer approximation. On symbols without volume, time is used as a fallback so the tool still works.
Swing detection is rule-based; the Min. swing size input should be tuned to the instrument and timeframe so the marked swings match the structure you trade.
This script is provided for chart analysis and educational purposes only. It is not financial advice and does not predict future prices. Always do your own research and manage your own risk.
Script open-source
Nello spirito di TradingView, l'autore di questo script lo ha reso open source, in modo che i trader possano esaminarne e verificarne la funzionalità. Complimenti all'autore! Sebbene sia possibile utilizzarlo gratuitamente, ricordiamo che la ripubblicazione del codice è soggetta al nostro Regolamento.
Declinazione di responsabilità
Le informazioni e le pubblicazioni non sono intese come, e non costituiscono, consulenza o raccomandazioni finanziarie, di investimento, di trading o di altro tipo fornite o approvate da TradingView. Per ulteriori informazioni, consultare i Termini di utilizzo.
Script open-source
Nello spirito di TradingView, l'autore di questo script lo ha reso open source, in modo che i trader possano esaminarne e verificarne la funzionalità. Complimenti all'autore! Sebbene sia possibile utilizzarlo gratuitamente, ricordiamo che la ripubblicazione del codice è soggetta al nostro Regolamento.
Declinazione di responsabilità
Le informazioni e le pubblicazioni non sono intese come, e non costituiscono, consulenza o raccomandazioni finanziarie, di investimento, di trading o di altro tipo fornite o approvate da TradingView. Per ulteriori informazioni, consultare i Termini di utilizzo.