Smooths Session Volume ProfileOverview
Smooths Session Volume Profile (SSVP) is built around a single volume-splitting engine that feeds three different views of the same underlying data: a per-bar footprint table, a compact mobile dashboard, and a session-scaled Volume Profile with Point of Control, Value Area, and Imbalance detection. Every number shown anywhere in the script traces back to one buy/sell volume calculation performed once per bar.
Why these are one script, not a mashup
The footprint table and the Volume Profile are not two indicators placed side by side — they are two resolutions of the identical volume model. The table shows that model at full per-bar detail over a short recent window; the profile aggregates the exact same bar-level buy/sell split over whichever session(s) the user selects. The session tools (highlight boxes, session-based profile scaling, Naked POC) extend that one model with time-of-day awareness rather than adding a separate feature. Removing the table would not simplify the script's purpose, it would just remove one lens on the same data the profile already uses.
Concepts used
Selectable volume engine: Geometric splits each bar's volume by where it closed inside its own high-low range. Intrabar reads real up/down volume from a lower timeframe via TradingView's own ta library. Footprint reads TradingView's native per-tick request.footprint() data (Premium/Ultimate plans only). Every other calculation in the script consumes whichever engine is active, unchanged.
Per-bar truncated-normal volume split: rather than splitting a bar's volume evenly across the ticks it traded, the script models the buy side and the sell side as separate truncated normal distributions inside the bar's own high-low range, centered toward where the bar actually closed. This produces a continuous, weighted density instead of a flat histogram bar.
Volume Profile as a summed density: the same per-bar truncated-normal components are summed across every included bar into one continuous curve, which is then sampled to locate the Point of Control (the price of maximum combined density), the Value Area (the narrowest band containing a chosen percentage of the modeled volume), and diagonal volume imbalances between adjacent price levels.
Session-aware scaling: Asia, London, and New York are each tracked independently — the script knows whether a session is currently forming or was last completed, and the profile can be built from the live union of whichever sessions are toggled on, instead of a fixed bar count.
Naked POC: the instant a session's occurrence closes, that session's own standalone Point of Control is computed independently of the combined profile and kept on the chart as an untested level until price actually trades back through it.
Self-checking math: the Overlap reading (OVL) measures what share of buy and sell volume occurred at the same prices, from 0 (fully separated, directional) to 1 (fully overlapping, balanced/rotational). The Residual reading (RES) independently re-integrates the density model and compares it back to the real volume it's supposed to represent, in parts-per-million, so the script can flag its own modeling error rather than silently drawing a profile that doesn't add up.
How to use it
Add it to any chart and timeframe. Use the Volume Profile's POC as a magnet level and its Value Area edges as boundaries between accepted and rejected price. Diagonal imbalances mark price levels where one side of the market overwhelmed the other. Toggle individual sessions in and out of "Include in Profile" to isolate one session's structure or build a composite of several. Switch to the footprint table or the mobile dashboard for the identical volume data at per-bar resolution instead of session-aggregated.
Originality
The per-bar truncated-normal volume model — shared by the footprint table and the Volume Profile alike — is the mechanism this script is built around, not an assembly of standard metrics. Session-aware profile scaling, Naked POC seeded independently per session, and the self-checking Residual metric are not reused from another publication; the detection, modeling, and rendering logic here were written for this script.
Inputs
Volume Profile — Profile Period/Session Scaling mode, Style (Line/Columns/Histogram), Width/Resolution, Gap From Chart, bell colors and fill
Session Profile Scaling — per-session time windows, time zone, Include in Profile and Show Highlight toggles, highlight colors
Metrics — Point of Control, Value Area, Imbalance thresholds, Naked POC, Balance Tilt, Residual Tolerance
Data Engine — volume engine selection and its parameters
Table Display — footprint table and mobile dashboard appearance
This indicator has no buy/sell signals, alerts framed as trade calls, or strategy logic — it is a volume-analysis tool. It does include TradingView alertcondition() entries for session starts and Overlap-state changes, which fire on data conditions, not trade recommendations. Indicateur

Unicode Heatmap CandlesUnicode Heatmap Candles
■Overview: Analytical Paradigm & Value Proposition
This indicator introduces a fundamentally new approach to micro-structural market analysis within TradingView. Transcending the visual limitations of standard OHLC (Open, High, Low, Close) candles, it leverages Pine Script v6's dynamic array processing to completely reconstruct price bars into high-resolution liquidity heatmaps. Engineered specifically for active traders and quantitative analysts, it visualizes the true order flow and volume concentrations (Point of Control) hidden beneath superficial price action in real-time.
1. Concept & Analytical Edge
Standard candlestick charts display static geometrical shapes, which inherit a critical flaw: they completely obscure internal transaction dynamics. A long wick or a large body tells you where the price moved, but not where the actual capital was deployed. In institutional quantitative analysis, a candlestick is not a solid bar, but a vertical aggregation of micro-transactions.
By utilizing Unicode block characters with sub-tick precision, this indicator maps the exact distribution of executed lower-timeframe (LTF) volume across price tiers within each individual candle—without relying on external footprint tables. It separates "empty price movements" from "solid liquidity zones.
2. Core Mechanics & Mathematical Logic
A. Dynamic Volatility Slicing (ATR Adaptive)
To maintain consistent visual resolution across varying market conditions (from low-volatility Asian sessions to high-impact news events), the price tier step is dynamically derived from the Average True Range (ATR).
Calculate dynamic price step based on 14-period ATR
float current_atr = global_atr
if na(current_atr) or current_atr == 0
current_atr := close * 0.005
int active_ticks = math.max(1, math.round((current_atr / 30) / syminfo.mintick))
float step = syminfo.mintick * active_ticks
int total_r = math.ceil((bar_h - bar_l) / step) + 1
Why this calculation? Fixing the tier size by a static tick value causes resolution breakdown during volatility spikes. By dividing the 14-period ATR by 30 and rounding to the nearest minimum tick, this mathematical normalization guarantees that each candle is systematically divided into approximately 20 to 30 micro-tiers, outputting a consistent heatmap resolution regardless of the timeframe or asset class.
B. Geometry Detection: Real Body vs. Wick
The script evaluates the exact numerical center of each vertical price tier to identify whether it structurally belongs to the candle body or the wick, rendering distinct Unicode glyphs to preserve the traditional candlestick silhouette.
Determine Body vs Wick geometry
float top_p = price_p + (step / 2)
float bot_p = price_p - (step / 2)
bool is_body = (top_p > body_bot) and (bot_p < body_top)
string current_char = is_body ? body_char : wick_char
Candle Body: Stacks wide block glyphs (███) to represent the high-density range between Open and Close.
Candle Wick: Stacks slender vertical glyphs (┃) to trace extreme price rejections up to the High/Low limits.
3. Scope of Capability & Technical Boundaries
To maintain institutional-grade transparency, the operational boundaries and strict design choices of this tool are detailed below. This is a specialized hyper-local lens, not a historical charting tool.
Intra-Candle Heatmap : Maps LTF volume directly inside the candle shape.
Real-Time POC Tracking : Visualizes highest volume nodes via color saturation.
Multi-Asset Support : Works flawlessly across Equities, Crypto, Forex, and Futures.
Full Historical Backtesting : Restricted by the Pine Script 500-label buffer limit.
High-ATR Max Display : Optimized strictly for real-time, active execution setups.
System Constraint & Design Architecture: Pine Script v6 enforces a hard maximum of 500 label objects (max_labels_count=500). Because each high-resolution candle consumes 20 to 40 individual labels to render the micro-tiers, the simultaneous display limit is mathematically capped around the most recent 5 to 8 bars in high-ATR environments. Older bars are systematically garbage-collected. This is an intentional architectural choice: 100% of the maximum allowed computing and drawing resources are allocated to maximizing the resolution of the current market structure.
Important Note on Higher Timeframes (Daily/Weekly/Monthly): TradingView Data Limits
You may notice that when applied to high timeframes like the Monthly chart, older candles render as gray (Zero Volume). This is not a bug. TradingView imposes a strict limit of 100,000 historical bars for lower-timeframe (request.security_lower_tf) data requests. If your LTF is set to 1-minute, 100,000 bars cover only about 70 days. Therefore, older macro candles cannot retrieve micro-volume data.
Remember: This indicator is a "Microscope" built for active intraday/swing execution. It is fundamentally designed for micro-structure analysis, not macro-historical profiling.
Anti-Crash Fail-Safe (For Non-Premium Users)
TradingView strictly limits access to seconds-based timeframes (e.g., 1S, 15S) to Premium plan subscribers. To prevent runtime crashes for Essential/Plus users, this script features a built-in safety toggle: "Premium Plan (Allow Seconds TF)".
If this box is unchecked (default), any attempt to input a seconds-based LTF will be automatically intercepted and safely downgraded to a 1-minute (1m) resolution, ensuring uninterrupted operation for all user tiers.
4. How to Use
Add the indicator to your chart.
Open Chart Settings (Gear Icon) -> Symbol -> Uncheck Body, Wick, and Borders (hide standard candles).
Observe the internal liquidity distribution:
Red / Orange Nodes: Point of Control (POC) and high-liquidity concentration zones.
Blue / Muted Nodes: Low volume nodes (slippage zones, price vacuums, or liquidity voids).
Disclaimer
This script and its description are published solely for the purpose of learning, researching, and providing technical analysis methodologies. The developer assumes no responsibility for any direct, indirect, incidental, or consequential losses or damages (including trading losses or loss of profits) arising from the use of this tool. Trading in financial markets involves substantial risk. Please conduct thorough verification and implement appropriate risk management at your own risk before using this in a live trading environment. Indicateur

MTF VWAP + POC Fan### What it does
Seven fixed-lookback windows on one anchor timeframe. Each window draws a VWAP curve — where the average participant's cost sits over that span — and can optionally draw a POC, the single price bin inside that same window that traded the most volume.
Same window, two different questions:
- **VWAP** — what the average participant paid
- **POC** — where participation actually concentrated
A dashboard reads the seven VWAP endpoints and scores the structure they form.
Default ladder is a daily one: **21 / 63 / 126 / 189 / 252 / 378 / 756** bars — roughly one month through three years. The anchor timeframe is configurable, so the same ladder on Weekly becomes five months through fourteen years.
### Why fixed lookbacks instead of swing anchors
Anchoring a VWAP at a swing high or low answers a real question — "what has been paid since that event" — but those anchors collapse into each other as windows grow. If price has not exceeded its three-month high, then the six-month, twelve-month and three-year highs are all the same bar, and several rungs draw one curve.
Fixed-lookback anchors cannot collide. The bar 252 back and the bar 378 back are always different bars, so seven rungs always mean seven distinct windows. That property is what makes a seven-horizon fan worth drawing at all.
### Reading the curve correctly
This is the part most multi-window VWAP scripts leave ambiguous, so it is worth being explicit.
At its **right edge**, VW252 equals the VWAP of the last 252 anchor-TF bars. That endpoint is the number.
The **tail behind it is not a rolling 252-bar series.** Every point on the drawn curve is the accumulation from the origin that is 252 bars back *today*, so the midpoint of the line is roughly a 126-bar average. The curve does not show what VW252 read on those past dates — on any past date it was anchored 252 bars before *that* date, at a different origin entirely.
The tail is one accumulation path from today's origin. Read historical crossings with that in mind.
### How the VWAP is calculated
Standard volume-weighted mean of the source (default HLC3) from the window's origin bar to its end bar, accumulated over **chart** bars. Origins are located on the anchor timeframe, then resolved to the exact chart bar by binary search.
When volume is missing or zero the engine substitutes 1.0, and tracks the substitution rate **per window**. Two different failures hide under one symptom:
- Missing on nearly every bar (synthetic symbols, some indices) — every bar weighs the same, so the curve is an *unweighted* mean of the source. Usable if you know that is what you are reading.
- Missing on a handful of bars in a real feed — a bar weighing 1.0 against neighbours weighing millions is not averaged in, it is effectively *dropped*. Still a proper volume-weighted mean, over a slightly smaller sample.
Curves whose own window exceeds the warning rate are suffixed with `*` and counted on the dashboard.
### How the POC is calculated
The window's high-low range is divided into bins, and each bar's volume is allocated **in proportion to how much of that bar's range overlaps each bin.**
The obvious shortcut — splitting a bar's volume equally across every bin it touches — is wrong at the edges: a bar with 2% of its range in one bin and 98% in the next would contribute 50/50. Since the POC is an argmax rather than an average, that error does not wash out. It can hand the win to the wrong bin.
Fully covered interior bins are accumulated with a difference array (one increment at the low edge, one decrement at the high edge, resolved in a single prefix sum) rather than a per-bin loop, which keeps the cost at O(bars + bins).
Three deliberate constraints:
**Resolution is capped at one bin per tick.** The bin-count input is a *maximum* resolution, not permission to invent sub-tick precision. If a window's whole range spans forty ticks, a hundred bins would put several bins inside one tick and the argmax would be choosing between prices that cannot trade. The reported level is also snapped to the instrument's tick grid, because an unrounded one-tick bin from 10.00 to 10.01 reports 10.005.
**Bin width is per window.** Each window divides its *own* range, so a P756 bin can be several times wider than a P126 bin. Two POCs landing on the same price are not confirming each other to the same tolerance. Each label's tooltip prints its bin width — read the level as the centre of that band, not as a price.
**POC is suppressed, not flagged, when volume is substituted.** A VWAP with missing volume degrades into an unweighted mean, which is still a usable number. A profile with missing volume becomes a bar-*count* histogram, whose peak answers where price spent the most bars regardless of size traded. That is a different statistic wearing the POC's name, so above a threshold nothing is drawn and the dashboard names the reason.
### Why POC is drawn forward, not backward
By default a POC starts at the last calculated bar and extends right. It is not drawn back across the window it was computed from.
A VWAP tail is a continuous accumulation with a value at every bar. A POC is a single number recomputed every bar with no value anywhere but now. Drawing both back to the same origin would make one line a genuine path and the other a snapshot impersonating one — the same visual gesture carrying two different truth-values, which teaches the wrong reading and creates hindsight support that was never there.
`Window + Forward` is available when you want to see the span, with the understanding that the backward segment is decoration.
Related: a POC **jumps**. It is an argmax, so when a different bin overtakes the leader the level teleports. A POC that sat at 70k yesterday and prints 62k today is not a data error — it is a window with two shelves close in volume. The single line cannot tell you that, which is the honest limitation of showing a POC without its profile.
### The visual grammar
- **Colour = horizon identity**, fixed per rung, never reassigned when other rungs are toggled. 252 is gold whether seven rungs are on or two.
- **Solid, width 2 = VWAP**
- **Dashed, width 1 = POC**, same colour as its VWAP
There is deliberately no horizon-based transparency and no colour-by-price-position. Fading short horizons fought the pairing and restyled everything on every toggle. Colour-by-price-position was redundant with the chart itself — whether a VWAP is above or below price is visible by looking at it — and spending the colour channel on it meant colour was unavailable for identity.
The palette is a cool progression (aqua → light blue → blue → lavender → **gold at 252** → violet → deep purple) so the fan reads as one instrument rather than seven unrelated indicators. Gold breaks the ramp deliberately, because 252 is the horizon most often referenced. Green and red stay out of the palette on purpose: they belong to the candles, and to the dashboard.
The script declares `scale=scale.none` so a distant 756-bar VWAP cannot drag the price axis and compress the candles you are actually trading.
### Seven VWAPs, three POCs
All seven VWAPs ship on. Seven ordered curves read fine, and where they bunch is itself information.
POCs are opt-in per rung, defaulting to **126 / 252 / 756** only — medium-term, annual, multi-year. Seven horizontal levels crowd a chart in a way seven curves do not. P189 and P378 are one click away. Global `Show VWAPs` and `Show POCs` switches let you inspect either family alone.
### The structure dashboard
A 0–100 read on where price sits relative to the fan and whether the fan is ordered.
```
STRUCT 88
P>VW 7/7
STACK +5/6
BIAS STRONG BULL
P>POC 3/3
```
**Price position — 50 points.** How many VWAP endpoints price is above, as a fraction of the drawn rungs, times 50.
**Stack — 50 points.** The adjacent-pair ordering, short over long. Each of the six adjacent pairs scores +1 when the shorter window sits above the longer, −1 when inverted, 0 when they are inside an equality tolerance. Raw range −6 to +6, rescaled to 0–50.
The dashboard shows the **signed raw total** (`+5/6`, `0/6`, `−4/6`) rather than a count of bullish pairs, because that signed number is literally what enters the score. Five bullish plus one tied and five bullish plus one inverted are different fans that a bullish-pair count would render identically.
The tolerance is normalised by the **anchor timeframe's** ATR, not the chart's — otherwise the same daily fan would classify two near-identical VWAPs as tied on a 130m chart and ordered on a 39m one, purely because the chart-TF ATR is smaller.
| Score | Bias |
|---:|---|
| 85–100 | Strong Bull |
| 70–84 | Bull |
| 55–69 | Bull Lean |
| 45–54 | Neutral |
| 31–44 | Bear Lean |
| 16–30 | Bear |
| 0–15 | Strong Bear |
`P>POC` is context only and does **not** enter the score. A volume concentration is a location, not a direction.
### What the score is not
Worth stating plainly, because a 0–100 number invites more confidence than this one has earned.
**The two components are not independent.** Price above every VWAP and a perfectly stacked fan are largely the same market condition seen twice — in a sustained one-way move both max out together, in chop both sit near their middles. Treat 0–100 as one structural reading measured two ways, not as a composite of separate evidence. The extremes are easier to reach than a two-component construction suggests.
**Stack ordering is partly mechanical.** These windows are nested — VW21's bars are a subset of VW63's, which are a subset of VW126's — so in any monotonic trend the ordering *follows* from the trend rather than confirming it independently. Where it earns its keep is at turns, when the short end inverts while price position is still high. That divergence between the two rows is more informative than the combined number.
**It is a step function.** With seven rungs, price position moves in jumps of 7.14 and stack in jumps of 4.17. The reading can cross the entire neutral band between two bars without ever printing a value inside it. Small changes are not drift.
**The score is withheld when horizons are missing.** Unless every enabled rung produced a VWAP and no two rungs share a lookback, STRUCT and BIAS print `—` and a `check` row names the reason. Normalising over whatever horizons happened to exist would let a two-horizon symbol print `STRUCT 100 / STRONG BULL`, indistinguishable at a glance from a seven-horizon reading.
Practical consequence: on a symbol without 756 anchor bars of history, the score stays blank until you turn VW756 off. That is deliberate. Disabling the rungs a symbol cannot support makes the reading an explicit statement about which horizons you are using.
### Confirmed Bars Only
With this off (default), windows extend through the current chart bar and update live.
With it on, **both ends** move to completed bars: lookbacks shift back one anchor bar, and all accumulation — VWAP, POC, the dashboard's reference price, and the stack tolerance's ATR — stops at the last chart bar of the last completed anchor candle. The fan then stops moving intraday entirely, which is what the switch should mean. Labels still sit at the chart's right edge while the values belong to the last completed candle; that gap is the point of the switch.
### Settings worth knowing
- **Anchor Timeframe** — the timeframe every lookback is counted in. Must be at or above the chart timeframe. Every anchor timeframe wants its own ladder; the defaults are a daily one.
- **Profile Bins** — maximum POC resolution, capped at one bin per tick.
- **Stored Chart Bars** — an origin must fall inside stored history or its rung is dropped, not approximated. Default 10,000 because 756 daily bars on a 39m chart is roughly 7,500 chart bars.
- **Dim rungs far from price** — optional, off by default. Fades a rung whose VWAP is beyond a set ATR distance. The whole rung dims together so a pair never splits into one bright line and one faint one. Try `scale.none` alone first.
- **Update Mode** — Live redraws every tick, which is necessary rather than wasteful: Pine destroys drawing objects created on an uncommitted tick, so on the forming bar a redraw every tick is the only way curves stay on screen. On Bar Close draws only on committed executions. Use it, or turn POCs off, if the profile passes trip the calculation time limit.
- **Show Diagnostics Panel** — full accounting of rungs, drawn objects and failure reasons. Off by default; anything genuinely wrong still surfaces on the dashboard's `check` row.
### Known properties
**Chart-timeframe sensitivity.** Origins come from the anchor timeframe, but accumulation uses chart bars, so the same daily setup gives slightly different values on a 39m chart than a 130m one. For the VWAPs this is second order — averaging washes out coarse bucketing. For the POC it is not: an argmax does not average, and a coarse bar spreads its volume uniformly across a range it never traded uniformly through. Expect the POC to shift by a bin or two between chart timeframes, more on symbols with frequent wide-range bars.
**Duplicate lookbacks are counted, never merged.** Two rungs set to the same number draw two identical curves in two colours, which looks like two horizons agreeing and is really one horizon entered twice. The dashboard flags it and withholds the score.
### Why VWAP and POC live in one script
They are computed from the same window definition. Splitting them would mean two indicators independently re-deriving identical origins, and would make it impossible to guarantee that P252 and VW252 cover exactly the same bars — which is the entire point of reading them as a pair. The dashboard reads only the VWAPs; the POC family is excluded from it precisely because it answers a non-directional question.
---
*This is a structural reference tool, not a signal generator. Nothing here produces entries, exits or alerts, and no part of it is a claim about future prices. Published open source so the calculations can be checked rather than taken on trust.*
Indicateur

Market Profile TPO [vault]TPO is a market profile tool that shows where the market actually spent its time, not just where price printed a candle. It builds a time price opportunity profile for every day, week or month and marks the levels that keep mattering after the period closes.
How it works
The script splits each period's range into a configurable number of rows and counts how many bars traded inside every row. That count is the TPO score. The widest row is the Point of Control, the fairest price of the period and the level price keeps rotating back to. Around it the script expands the Value Area using the standard two row algorithm until it holds a chosen percentage of total TPO count, giving you the accepted range and its two edges.
Everything is calculated in a single pass over the period's bars instead of scanning every row separately, so the developing profile updates in real time without dragging the chart down, even on 100 rows and low timeframes.
Green area below, red above, no. This is not a signal tool. Value area high and low are the edges of accepted price, and trades that open outside value and reject back inside tend to rotate to the opposite edge. The POC is a magnet. Untouched POCs from previous periods are stronger magnets.
What it draws
- Full TPO profile per period, D, W or M, with adjustable row size and profile width
- Point of Control line, ties resolved toward the middle of the range so the POC never sticks to an extreme
- Value Area high and low with optional shaded background
- Initial Balance, the range of the first balance window of the session, with optional extension across the whole period
- Single prints, the thin one row areas left by one sided moves, top and bottom tails excluded by design
- Naked POC, previous POCs price never traded back into, extended right until they get hit and then removed automatically
Reading it
Value area edges are where acceptance starts and ends. Initial Balance tells you the shape of the day early: price holding inside IB all session is a rotation day, a break of IB high or low with follow through is the classic trend day tell. Single prints mark unfinished auction, the market moved too fast to trade there and usually comes back. A naked POC sitting above or below current price is an obvious target for the next rotation.
Additional settings
- Profile period: D for day trading, W or M for swing context
- Row size: higher for precision, lower for speed on long periods
- Value Area %: 70 is standard, some traders use 68 or 80
- IB session and timezone: defaults to 0930 to 1030 New York, the RTH open hour for US index futures. Set it to your own instrument's open
- Profiles kept on chart: old profiles are deleted as a whole group, so the script never hits TradingView drawing limits and never leaves half a profile behind
- Min rows per single print: filters out one row noise, 2 or 3 keeps only meaningful gaps
- Show developing profile: toggle the live, still forming profile
- Level labels with prices for POC, VAH and VAL
- Full color, width and line style control for every element
- Built-in alerts for prior POC, VAH and VAL crosses and for IB high and low breaks
- Works on any instrument, requires a chart timeframe lower than the profile period
Indicateur

EVA Ai + POC, Liquidity & Smart Money## Overview
**EVA Ai+ Volume Profile — POC, Value Area & Liquidity** is a market-structure and volume-distribution indicator designed to analyze where trading activity is concentrated across price.
Its primary purpose is to combine price-based Volume Profile information with confirmed liquidity structure in one analytical framework.
The script calculates a horizontal volume distribution, Point of Control (POC), Value Area, High-Volume Nodes (HVN), Low-Volume Nodes (LVN), directional volume estimates, and confirmed buy-side/sell-side liquidity pools.
These components are not intended to function as independent entry signals. They are combined to help answer a specific analytical question:
**Where is price currently being accepted, where is participation relatively low, and where does confirmed unswept liquidity remain in relation to that auction structure?**
The indicator does **not** generate automatic LONG or SHORT recommendations and does not execute trades.
---
## Purpose of the combined architecture
Volume Profile and liquidity analysis describe different aspects of market behavior.
Volume Profile measures how the available volume data is distributed across price.
Liquidity structure identifies confirmed areas around comparable swing highs and lows that have not yet been fully cleared according to the script's rules.
EVA combines these concepts because either one viewed in isolation can omit relevant context.
For example:
* POC and Value Area describe the center and boundaries of accepted value;
* HVNs identify local concentrations of calculated participation;
* LVNs identify comparatively low-volume regions;
* directional volume provides context about the composition of the calculated profile;
* confirmed BSL/SSL pools identify unresolved liquidity structures;
* distance and quality calculations place those structures in relation to current volatility and price.
The intended result is a single auction map showing **value, participation, low-volume structure, and confirmed liquidity context together**.
This interaction is the principal reason these components are included in one script.
---
## Volume Profile
The script distributes the available volume across horizontal price rows within the active calculation range.
The profile is intended to show where the selected market spent comparatively more or less trading activity.
### Point of Control — POC
POC is the price row containing the largest amount of calculated profile volume.
It represents the highest-volume row of the current profile calculation.
It should not be interpreted as an automatic support, resistance, entry, or reversal signal.
### Value Area
The Value Area contains the configured percentage of calculated profile volume surrounding the profile's primary volume concentration.
A commonly used setting is 70%.
The script displays:
* **VAH** — Value Area High;
* **VAL** — Value Area Low.
Price inside the Value Area indicates that it is trading within the profile's calculated value region.
Price above VAH or below VAL indicates that it is outside that region, but this condition alone does not imply continuation or reversal.
---
## HVN and LVN structure
### High-Volume Nodes — HVN
HVNs are local concentrations within the calculated profile where neighboring rows contain comparatively high volume.
They can be used to identify areas of previous acceptance or repeated participation.
Possible market behavior around an HVN can include rotation, consolidation, retesting, support/resistance behavior, or no meaningful reaction at all.
The script does not assume that an HVN must hold.
### Low-Volume Nodes — LVN
LVNs are local low-volume regions between areas of greater calculated participation.
They can highlight portions of the profile where historical acceptance was comparatively limited.
Price may sometimes traverse these areas more quickly, but an LVN does not guarantee acceleration or determine direction.
HVN and LVN structures remain components of the calculated profile and can change when the active profile range changes.
---
## Directional volume context
When lower-timeframe data is available, the script classifies lower-timeframe volume according to candle direction and aggregates that information into the profile.
The resulting values are displayed as:
* Up Volume;
* Down Volume;
* Delta.
**Delta in this indicator is the difference between the script's classified Up Volume and Down Volume.**
It is important to distinguish this from exchange-level bid/ask order-flow delta.
Pine Script does not provide the script with a complete historical exchange order book or universal historical bid/ask footprint data.
Therefore, EVA does not claim to reconstruct those datasets.
Directional volume is an approximation derived from the available lower-timeframe OHLCV data.
---
## BSL and SSL liquidity structure
The liquidity component identifies confirmed structures around comparable pivot highs and lows.
### BSL — Buy-Side Liquidity
BSL structures are created above qualifying comparable swing highs.
### SSL — Sell-Side Liquidity
SSL structures are created below qualifying comparable swing lows.
The script does not label every swing high or swing low as liquidity.
A liquidity structure requires multiple confirmed pivot observations that satisfy the script's similarity, spacing, volatility, and quality conditions.
This filtering is intended to reduce the number of insignificant structures displayed on the chart.
Liquidity terminology in this script represents a technical model based on price structure. It does not imply direct observation of hidden orders or stop orders in an exchange order book.
---
## Liquidity Quality
Each qualifying liquidity structure receives a quality value based on several measurable properties of the detected structure.
Depending on the active configuration, these properties include factors such as:
* relative volume;
* rejection characteristics;
* spacing between qualifying pivots;
* volatility-adjusted geometry.
The quality value is used for filtering and ranking detected structures.
It is a relative analytical score created by this script. It is **not a probability of a profitable trade or a prediction that a liquidity level will be reached or swept**.
---
## Liquidity states
Detected pools can move through several states.
### FRESH
The qualifying structure has been confirmed and has not yet met the script's test or sweep conditions.
### TESTED
Price has interacted with the structure according to the configured testing rules without completing the full sweep condition.
### OFF
The structure remains internally valid but falls outside the configured volatility-adjusted working radius and is therefore not displayed as an active nearby structure.
### SWEPT
Price has crossed the structure's defined far boundary.
Once this condition is confirmed, the corresponding active pool drawings are removed.
The state system prevents historical liquidity structures from remaining visually active after the script considers them resolved.
---
## Nearest structural references
The dashboard identifies nearby calculated structures such as:
* BSL;
* SSL;
* HVN;
* LVN.
Distances can be normalized using ATR so that the displayed distance is comparable across instruments with different nominal prices and volatility.
These values describe **location**, not trade expectancy.
A nearby BSL, SSL, HVN, or LVN should not be interpreted as a recommendation to enter a position.
---
## Profile modes
The script supports several ways to define the profile range.
### Visible Range
The profile is calculated from the chart region used by the script's visible-range logic.
Changing the visible chart area can therefore change the profile.
This behavior is intentional.
A Visible Range profile is dynamic and should not be interpreted as an immutable historical signal.
### Session
The profile is calculated using the selected session boundaries.
This mode can be used to examine session-specific POC, Value Area, and volume distribution.
### Fixed Range
The profile is calculated between user-defined time boundaries.
This mode can be used to inspect a specific impulse, consolidation, expansion, or other manually selected market segment.
---
## Adaptive configuration
The optional adaptive mode adjusts selected calculation parameters according to chart conditions.
Depending on configuration, this can include:
* lower-timeframe selection;
* profile row density;
* HVN/LVN sensitivity;
* pivot sensitivity;
* liquidity-zone width;
* minimum liquidity-quality threshold;
* volatility-adjusted display radius.
The purpose of this mode is to maintain usable analytical resolution across different chart timeframes and price scales.
Adaptive configuration does not optimize for future profitability and does not predict future market direction.
Users can disable adaptive behavior and use manual settings where required.
---
## Dashboard
The dashboard summarizes the current calculated state of the indicator.
Depending on the selected configuration, it can display:
### Auction
The location of current price relative to VAH, VAL, and the calculated Value Area.
### Range / Source
The active profile mode and the data source currently used by the calculation.
### Rows × Step
The effective number of price rows and the price increment represented by each row.
### Up / Down / Delta
The directional volume classification generated from the available data.
### POC / Distance
The current POC and price distance from it.
### Nearest BSL / SSL
The nearest qualifying liquidity structure together with distance, quality, and state.
### Nearest HVN / LVN
The nearest calculated high-volume and low-volume structures.
### Structure
A descriptive classification of the current volume distribution.
### Status
Information concerning the current calculation mode and available data.
The dashboard summarizes calculated information; it does not produce trading instructions.
---
## How to interpret the map
### Price inside Value Area
Price inside VAH and VAL is trading within the profile's calculated value region.
POC and HVNs can help locate concentrations of historical participation.
This does not necessarily imply a ranging market or predict that price will remain inside the Value Area.
### Price above VAH
Price above VAH is outside the upper boundary of the calculated Value Area.
Whether the move continues or returns into value depends on subsequent market behavior.
VAH alone is not a breakout confirmation.
### Price below VAL
Price below VAL is outside the lower boundary of the calculated Value Area.
VAL alone does not confirm bearish continuation.
### Interaction with an LVN
An LVN identifies a region of comparatively low calculated participation.
It can be used to observe how price behaves when entering a low-volume region, but it does not guarantee rapid movement through that area.
### Interaction with liquidity
When price reaches a BSL or SSL structure, users can observe whether the level remains active, becomes tested, or satisfies the script's sweep condition.
A sweep is a structural event only.
**A liquidity sweep does not by itself imply a reversal or continuation.**
---
## Data handling and confirmation
Where available, lower-timeframe OHLCV data is used to improve the allocation of volume within higher-timeframe chart candles.
When the requested lower-timeframe sample is unavailable or insufficient for the selected calculation, the script can use its documented fallback calculation instead of presenting an incomplete lower-timeframe profile as if it were complete.
Liquidity structures are based on confirmed pivot events.
Because a pivot requires subsequent bars for confirmation, a newly confirmed liquidity structure can appear later than the historical bar on which the pivot itself occurred.
The script does not interpret this confirmation delay as advance knowledge.
Developing profiles can change as additional data arrives.
Visible Range profiles can also change when the chart viewport changes.
These behaviors are inherent to dynamic profile calculations and should not be interpreted as historical trade signals being rewritten.
---
## Originality and design rationale
The script uses established analytical concepts such as Volume Profile, POC, Value Area, pivots, ATR normalization, and liquidity terminology.
It does not claim that those individual concepts are proprietary.
The distinctive functionality of this implementation is their integration into a unified state-based analytical system.
Instead of independently displaying several unrelated indicators, EVA:
1. builds a common price-row volume model;
2. derives POC and Value Area from that same distribution;
3. identifies local HVN/LVN structure within the profile;
4. estimates directional volume from lower-timeframe data where available;
5. independently confirms comparable pivot structures;
6. applies volatility-, geometry-, and participation-based filtering to those structures;
7. maintains lifecycle states for active liquidity pools;
8. relates nearby volume and liquidity structures to current price using a common dashboard and normalized distance model;
9. provides explicit fallback behavior when detailed source data is unavailable.
The purpose of the integration is to provide one coherent representation of **auction value, relative participation, low-volume structure, and unresolved price-based liquidity** rather than a collection of independent signals.
---
## Why the source code is protected
The source code is protected to preserve the implementation of the script's integrated profile construction, adaptive parameter logic, node-classification methods, liquidity-quality filtering, state transitions, data-fallback handling, and visualization architecture.
Closed-source visibility is not intended to prevent users from understanding the indicator's behavior.
This description therefore documents the script's purpose, inputs, main calculations, interpretation, data limitations, and expected dynamic behavior without exposing implementation-specific formulas and thresholds.
---
## Important limitations
Users should understand the following limitations before using the indicator:
* The script only has access to data supplied to Pine Script by TradingView and the active symbol's data provider.
* Volume characteristics differ between markets and symbols.
* On some Forex instruments, the available volume can represent tick volume rather than centralized exchange volume.
* The script does not have access to a complete historical exchange order book.
* It does not know the location of actual individual traders' stop orders.
* BSL and SSL are price-structure models, not observations of hidden orders.
* Directional volume is derived from available candle data and is not equivalent to true exchange bid/ask footprint delta.
* Confirmed pivots necessarily introduce confirmation delay.
* Visible Range calculations can change when the chart viewport changes.
* Developing profiles can change as new bars or intrabars become available.
* HVNs, LVNs, POC, VAH, VAL, BSL, and SSL do not predict future price behavior.
* No individual component should be interpreted as a guaranteed support, resistance, breakout, reversal, entry, or target.
* Different symbols, sessions, timeframes, and data feeds can produce materially different profile structures.
---
## Intended use
EVA is intended as a **market-reading and contextual-analysis tool**.
A typical workflow is:
1. identify the current Value Area and POC;
2. inspect the shape of the volume distribution;
3. locate nearby HVN and LVN structures;
4. identify confirmed active BSL and SSL structures;
5. compare those structures with current price and volatility;
6. observe subsequent price and volume behavior;
7. perform an independent trade and risk assessment.
The indicator deliberately does not convert this information into automatic LONG or SHORT instructions.
---
## Risk disclosure
This script is an analytical indicator and does not execute orders.
It does not provide financial advice, guarantee trading outcomes, or predict future market behavior.
Historical structures and previous market reactions do not establish how price will behave in the future.
Users remain responsible for independent analysis, position sizing, execution decisions, and risk management.
Indicateur

Prev Day/Week/Month/ON VP LevelsBased on Prev Day/Week VP Levels MADE BY ADAM by adam4530. Credit to the original author for the core session-reset and volume-profile calculation approach this script builds on. This script is only tested on Tradingview Premium subscription.
This indicator automatically plots the previous day's, week's, month's, and overnight session's volume profile levels — Point of Control (POC), Value Area High (VAH), and Value Area Low (VAL) — as clean horizontal levels, replicating the look of manually drawn key levels.
What's new vs. the original
Previous Month profile, calculated on its own configurable timeframe (default 5m), kept separate from the Day/Week/ON timeframe so a full month of bars doesn't hit intrabar data limits.
Previous Overnight (ON) profile — a configurable time-of-day session (default 18:00–09:30 New York) rather than a calendar-day session. It rolls over automatically the moment the session ends, replacing the prior ON levels.
Independent styling per period — Day, Week, Month, and ON each get their own line color, width, and style, instead of one shared style for everything.
Extend-to-latest-bar option — lines can stop at the current bar instead of running off the chart indefinitely, for a cleaner look (this is now the default).
How it works
Sessions are defined by a custom reset hour in a chosen timezone rather than midnight exchange time (default 18:00 New York). Weeks run from the Sunday-evening session open through the Friday close; months follow the same reset-hour boundary. The Overnight session instead uses a fixed time-of-day window (default 18:00–09:30) that wraps across midnight, finalizing into "previous ON" levels the moment RTH begins.
All profiles are calculated on a separate, configurable calculation timeframe — 1-minute by default for Day/Week/ON, 5-minute by default for Month — through request.security, independent of the chart timeframe. This means the levels are identical on every chart resolution and remain visible even on a 1-minute chart. Each period's profile distributes bar volume across price rows (default 1000), locates the POC as the highest-volume row, and expands the value area around it until it contains the configured share of total volume (default 70%).
Once a period completes, its levels are drawn and stay fixed until the next rollover — the exact levels a trader would mark by hand at the start of each session.
Features
Previous Day, Week, Month, and Overnight POC/VAH/VAL, each independently toggleable
Custom session reset hour and timezone (DST-safe)
Configurable ON session start/end time
Separate calculation timeframe for Day/Week/ON vs. Month, row count, and value area %
Independent line color, width, and style per period
Choice of extending levels infinitely right or only to the latest bar
Plain text labels with adjustable offset and size
No repainting — only completed periods are plotted
Intended use
Built for intraday traders who anchor execution around prior-session value: value area rotations, POC retests, acceptance/rejection outside prior value, and confluence with order flow, overnight range, or options-derived levels. Indicateur

Delta Profile Multi-Anchor , Footprint Imbalance & Whale Tiers█ OVERVIEW
Delta Profile draws several order-flow DELTA profiles at once — one per higher-timeframe anchor (session / week / month) — each split buy-vs-sell at every price row, so you can see WHERE aggressive delta transacted across horizons simultaneously and how that footprint is migrating. Where a conventional volume profile is volume-native and shows one anchor at a time, this is delta-native and multi-anchor, and it shows a Delta-POC (where net delta peaks) distinct from the Volume-POC (where volume peaks) — their disagreement locates absorption and trapped flow. It asserts no signal and no win-rate; it is an anatomy view.
█ HOW IT WORKS
Intrabars — one lower-timeframe stream (request.security_lower_tf) supplies intrabar OHLCV for every anchor.
Trade side — each intrabar is split buy vs sell by a selectable classifier: BVC-Normal (normal-CDF of the standardized sub-bar return, default), BVC-Student-t (fatter-tailed, opt-in), Tick (sign of close−open), or Geometry (close position in range). All are OHLCV estimates, not the true tape; the classifier in force is shown.
Concurrent anchors — up to four higher-timeframe anchors each accumulate the same confirmed intrabars into a fixed-tick, price-keyed map (buy / sell / largest-print per level), resetting when their own period rolls. Anchor D can instead anchor once from a date you drag on the chart.
Reads per anchor — Volume-POC and Delta-POC (shown distinctly); the 70% Value Area; HVN / LVN nodes; stacked diagonal-imbalance runs (a row's aggressive buys ≥ R× the resting sells one row below, ≥ N rows stacked); absorption rows (strong volume, near-zero net delta at an extreme); and whale tiers (largest single prints, percentile-ranked 75/90/97, dotted at their row).
Naked Delta-POC magnets — each completed session's Delta-POC is kept until price trades through it; the nearest untested one above and below is drawn on price.
Lean meter, migration, CVD — a per-anchor net-delta lean meter; a migration arrow (is the Delta-POC drifting up or down vs the prior period); an optional session-anchored CVD strip rescaled below price; and CVD pivot-divergence markers (price makes a higher high while CVD makes a lower high = bearish, and the mirror = bullish).
Reject calibration (honesty layer) — naked Delta-POCs are generated from a dedicated Session timeframe (independent of the display anchors). After price tags one, the script forward-tests whether price REJECTS (turns back against the approach by calK·ATR) before CONTINUING through, and compares that to the matched unconditional reject-vs-continue base rate: reject% (n, Wilson 95% lower bound) vs base% → edge. Past-only, non-repaint, no verdict.
█ HOW TO USE
Read the anchors together. Agreement is several horizons showing the same delta colour, the same lean direction and Delta-POC drifting the same way; disagreement between the session and the higher anchor is developing rotation. When the Delta-POC and Volume-POC separate on the same profile, aggressors won at a different price than where the crowd traded — often absorption or a trapped move. Stacked-imbalance zones mark diagonal aggression; naked Delta-POC magnets mark untested levels price may be drawn back to; CVD divergence flags price/flow disagreement at swings. The reaction-calibration line tells you, honestly and past-only, whether naked-dPOC tags have actually preceded larger-than-random moves here — and shows nothing when the sample is small. The dashboard defaults to Compact; switch it to Pro for the per-anchor column detail. This is a study for context and location; it emits no entries.
█ INPUTS
01 · Data & Trade-Side — LTF granularity, classifier, BVC sharpness, ticks-per-level, display rows.
02–05 · Anchors A–D — enable, timeframe, label and Mode for each: HTF (resets each period), Composite (never resets, accumulates over loaded history), or From Date (anchors once at the shared drag timestamp).
06 · Profile — width, gap, offset; POC / Value Area toggle and %, fade-outside-VA, HVN/LVN, lean meter, naked magnets.
07 · Imbalance & Absorption — show, diagonal ratio R, rows-to-stack N, absorption threshold.
08 · Whale Tiers — three percentile thresholds.
09 · Migration & CVD — migration arrow; optional CVD strip and height; CVD pivot-divergence and pivot length.
10 · Microstructure Links (optional) — map an external Toxicity / Fragility export to annotate flow quality (never recomputed).
11 · Display — dashboard detail (Compact default / Pro), position.
12 · Exports — running CVD, POCs, VA, naked levels, migration, reaction edge to the Data Window.
13 · Calibration — reject size (×ATR), horizon, and the Session timeframe that generates naked Delta-POCs (independent of the display anchors).
Style — Auto / Dark / Light theme.
█ HONESTY & LIMITATIONS
Descriptive, not predictive. Profiles summarise where reconstructed aggressive volume transacted on visible history — no execution costs, no backtest, no promise. Trade side is an OHLCV estimate (BVC / tick / geometry), not a Level-2 book; on symbols with no volume it cannot function. The reject calibration is a past-only, first-touch two-barrier (reject-vs-continue) forward test against a matched base rate with a Wilson lower bound; a small sample is discounted automatically and no edge shown means honest, not broken. Non-repaint by construction: intrabars are aggregated only on confirmed bars, profiles are drawn from confirmed history, divergences fire on confirmed pivots, calibration events resolve only after the horizon, and the render recomputes once per confirmed bar. For runtime the script processes the most recent ~5000 bars, and turning off Calibration removes its overhead; very high anchors on a fine lower timeframe (or Composite mode over long history) can still be heavy — raise ticks-per-level, coarsen the LTF granularity, or disable an anchor. It prints no verdict and no win-rate.
█ ORIGINALITY
One coherent object — the aggressive-delta auction viewed across several horizons at once. It is deliberately distinct from a conventional volume profile (this is delta-native and draws multiple anchors concurrently), from a per-bar footprint engine (this is a persistent multi-horizon anatomy that asserts no verdict), and it introduces two reads a plain profile does not: the Delta-POC vs Volume-POC split, and whale-print tiering on the profile. It can optionally consume external toxicity / fragility exports rather than recomputing microstructure, keeping it a single focused tool. Every block was written from scratch; the components feed one view (where did aggressive delta transact, across horizons) rather than being independent indicators stapled together.
█ CREDITS
Market / auction profile (POC / Value Area) — Steidlmayer / Market Profile.
Bulk Volume Classification — Easley, López de Prado & O'Hara.
Trade-side tick rule — Lee & Ready (1991).
Footprint stacked (diagonal) imbalance — order-flow / footprint practice.
Cumulative Volume Delta — order-flow literature.
Wilson score interval — Wilson (1927).
Code written from scratch; no external script reused.
This script is for analysis and education. It is not financial advice. Indicateur

Precision Volume Profile [AxeAlgo]OVERVIEW
Precision Volume Profile is a native Pine Script volume
profile tool: it rebuilds a full price-by-volume histogram for whatever
range you anchor it to — the visible chart, a fixed bar count, the
current day, week, month, or a custom trading session — and derives the
Point of Control (POC), Value Area High/Low (VAH/VAL), a Prior Period
Value Area with open-type and POC-migration classification, and a
session VWAP with standard-deviation bands, all from the same underlying
bar history.
This is the classic Market Profile / Volume Profile toolkit used to
judge where the market has actually traded the most volume — not just
where price is right now — and how today's activity compares to the
period before it. Everything here runs natively on your own chart data;
there are no external requests, no repainting of confirmed history, and
no hidden calculations.
This script is free and open-source, published so the full methodology
described below is verifiable directly in the source code.
============================================================
HOW IT WORKS
============================================================
Volume Profile Histogram
----------------------------
For the selected range, price is divided into rows (automatically sized
to the range, or set manually) and every historical bar's volume is
distributed across the rows its high-low span touches. Each bar's
volume is split into an estimated buy side and sell side based on where
that bar's close sits between its low and high — a bar that closed near
its high is treated as more buy-weighted, one that closed near its low
as more sell-weighted. The row with the most total volume becomes the
POC; rows are colored on a gradient between two configurable colors
based on that estimated buy/sell split, with opacity scaled to each
row's relative strength versus the POC.
Value Area
----------------------------
The Value Area is expanded outward from the POC two rows at a time —
comparing the volume of the next pair of rows above versus the next
pair below and adding whichever pair holds more volume — until the
accumulated volume reaches the configured Value Area percentage (70% by
default, the standard Market Profile convention). This is the same
textbook two-row-pair expansion method used for both the live profile
and the Prior Period snapshot below, so the two stay directly
comparable.
Anchor Modes
----------------------------
Six ways to define what range the profile is built from: Visible Range
(whatever's currently on screen), Fixed Bars (a set lookback), Day,
Week, Month, or a fully custom Session (configurable start/end time and
timezone, e.g. 0930-1600 for US regular trading hours). A dotted
vertical line marks exactly where the current profile's lookback
begins whenever that boundary isn't simply the edge of your screen.
Prior Period Value Area, Open Type & POC Migration
----------------------------------------------------
At each period boundary (Day or Week, configurable), the script
snapshots the period that just closed: its Value Area is drawn as a
dashed box extending forward, today's open is classified as Above,
Below, or Inside that prior value, and the new POC is compared against
the previous one to report whether it's migrating up, down, or holding
flat. This is the standard "open-type" read used to gauge whether a
session is likely to be rotational or trending.
Session VWAP & Standard Deviation Bands
------------------------------------------
A running volume-weighted average price with up to two configurable
standard-deviation bands on each side, calculated with the same
volume-weighted variance formula as TradingView's own VWAP tool. It can
reset either at calendar midnight or at your custom session's open
time — the same session window used by the Session anchor mode above,
so the two can be kept in sync.
Stats Panel
----------------------------
An optional on-chart table summarizing the active anchor mode, bar/row
count, POC, VAH/VAL, Value Area width, estimated buy/sell split and
delta, total volume, open type, POC migration, and current VWAP —
everything the script computes, in one place, without needing to
hover over individual lines.
Alerts
----------------------------
Two alert conditions: price crossing the POC, and price entering or
exiting the Value Area.
============================================================
ACCURACY NOTE — HOW BUY/SELL VOLUME IS ESTIMATED
============================================================
Pine Script does not have access to real trade-by-trade tape or
bid/ask data on standard bars, so no volume profile indicator can
measure "true" buy versus sell volume directly. This script — like
essentially every volume profile tool on TradingView — estimates it
from each bar's own OHLC: where the close sits between the low and the
high. This is a widely used, reasonable proxy, but it is an estimate,
not measured order flow. Treat the buy/sell split and Delta reading as
directional context, not a precise execution metric.
============================================================
HOW TO USE IT
============================================================
Add the indicator, pick an Anchor mode that matches how you trade
(Visible Range for manual exploration, Day/Week/Session for a
consistent recurring reference), and set the Value Area percentage if
you want something other than the 70% default. Every input has an
in-editor tooltip explaining exactly what it changes. The Prior Period
panel rows (Open Type, POC Migration) are most useful checked once at
the start of a session; the POC/VAH/VAL lines and histogram are
intended as a persistent reference for the rest of the period.
============================================================
REPAINTING & REAL-TIME BEHAVIOR
============================================================
The profile, its lines, and the stats panel are only (re)computed on
the most recent bar (barstate.islast) — not on every historical bar —
for performance, and are cleared and redrawn from scratch each time
they update. In Visible Range or Fixed Bars mode this means the profile
legitimately changes as you scroll, zoom, or as new bars form — that's
the tool responding to a different input range, not repainting of a
fixed historical value. In Day/Week/Month/Session mode, once a period
has closed its POC, VAH, and VAL are fixed and do not change on
subsequent reloads; only the currently forming period's profile updates
live as new bars print. The Prior Period Value Area snapshot is
computed once, at the moment its period closes, and is never
recalculated afterward.
============================================================
LIMITATIONS — PLEASE READ
============================================================
- Buy/sell volume is an OHLC-based estimate, not real tape data (see
the Accuracy Note above).
- The Value Area expansion is a discrete two-row-pair algorithm; on
very coarse row counts it can land a percentage point or two away
from the exact target rather than hitting it precisely.
- "Max Bars Stored" caps how much history is kept in memory for
performance; extremely long Fixed Bars or Visible Range lookbacks on
very low timeframes can exceed it and get truncated.
- The custom Session anchor and VWAP session-open reset depend on the
Session Time and Timezone inputs actually matching your instrument's
real trading session — mismatched inputs will produce a
technically-correct but practically meaningless boundary.
- This is a discretionary analysis tool intended to support your own
read of the market, not a mechanical, guaranteed-signal system.
============================================================
RISK DISCLAIMER
============================================================
This script is provided for educational and informational purposes
only. It is not financial advice, and it is not a recommendation to buy
or sell any security or instrument. Trading and investing involve
substantial risk of loss and are not suitable for every investor. Past
performance is not indicative of future results. Always do your own
research and consider consulting a licensed financial advisor before
making trading decisions. Use this indicator, and any alerts it
generates, entirely at your own risk.
============================================================
ORIGINALITY
============================================================
This is original work: the row-building and Value Area expansion
algorithms, the Prior Period snapshot and open-type/migration logic,
the session-anchor handling, and the visual design are all written
from scratch for this script. It is published free and open-source so
the full methodology described above is verifiable directly in the
source code.
Indicateur

3D Market Profile [BOSWaves]3D Market Profile - TPO Time Price Distribution with Polyline 3D Extrusion, Value Area Construction, and Initial Balance Mapping
Overview
3D Market Profile is a Time Price Opportunity profile system that constructs a TPO distribution from recent chart history and renders it as a three-dimensional extruded structure using polyline geometry, where row width reflects the number of TPO period prints at each price level, density-based gradient coloring communicates participation concentration, and perspective faces on the top and side edges of each row provide spatial depth that standard two-dimensional profiles cannot convey.
Instead of displaying a flat histogram alongside price, this system aggregates chart bars into complete TPO periods at the configured timeframe, assigns sequential alphabet letters to each period, and accumulates per-row letter counts across the full profile window. The resulting distribution drives a full market profile analytical framework including Point of Control identification, Value Area expansion from the POC outward, and Initial Balance range derivation from the opening TPO periods. All structural levels are rendered as extending reference lines and labeled price readouts that project beyond the profile face.
This creates a market profile visualization that combines the structural depth of conventional TPO analysis with a three-dimensional rendering system that makes profile shape and density immediately readable across varying chart zoom levels. The extruded top and side faces follow the profile contour row by row, the rear glass plane frames the distribution within a perspective bounding box, and the complete wireframe connects front and rear geometry with depth-offset corner lines that reinforce the spatial orientation of the profile structure.
Price is therefore evaluated against a fully formed TPO distribution anchored to recent chart history, with POC, Value Area, and Initial Balance levels providing the standard market profile reference framework in a spatially rich visual presentation.
Conceptual Framework
3D Market Profile is founded on the principle that TPO market profile analysis becomes significantly more visually accessible when the distribution is rendered with three-dimensional spatial depth, allowing traders to read profile shape, density concentration, and structural levels at a glance without the visual ambiguity that flat two-dimensional histogram representations produce at different zoom levels and screen resolutions.
Traditional market profile implementations render uniform flat row boxes where the only visual differentiation between high and low density rows is bar width, which becomes difficult to assess comparatively when profiles contain many rows or are viewed on smaller screens. This framework adds spatial depth through extruded top and side faces that follow the profile contour, creating a volumetric bar chart where density is communicated through both width and three-dimensional geometry simultaneously, and gradient coloring that progresses from the configured low-density to high-density colors adds a third visual dimension that reinforces the density reading.
Three core principles guide the design:
TPO distribution should be constructed from complete timeframe periods rather than individual bars, ensuring each period contributes exactly one letter print to each price row it trades through regardless of how many chart bars compose that period.
The three-dimensional extrusion should follow the profile contour row by row rather than applying a uniform rectangular extrusion, preserving the profile's structural shape in the depth geometry and maintaining the analytical significance of the distribution's outline.
Standard market profile reference levels including POC, Value Area High, Value Area Low, and Initial Balance should be derived from the TPO distribution using conventional methodology and rendered as structural references that extend beyond the profile face for ongoing price interaction monitoring.
This shifts market profile visualization from flat histogram reading into a spatially rich three-dimensional distribution analysis where density, shape, and structural levels are simultaneously communicated through geometry, color, and depth.
Theoretical Foundation
The indicator combines chart bar aggregation into complete TPO periods at the configured timeframe, sequential alphabetical letter assignment per period, per-row letter count accumulation across the full profile window, density-normalized gradient coloring with power transformation, POC identification through maximum count with proximity tiebreaking, outward value area expansion from POC with alternating upper and lower priority, Initial Balance derivation from the opening period count, and polyline-based 3D geometry construction using depth-offset coordinates for top faces, side end caps, and rear glass plane.
Period aggregation groups chart bars by their TPO clock value, merging consecutive bars sharing the same period timestamp into a single period high-low range. Each completed period receives the next sequential alphabet letter from A through Z then a through z, repeating modularly for profiles with more periods than the alphabet. Row assignment maps each period's full high-low range to the corresponding row bins, contributing one print to every row from the period low bin to the period high bin inclusive. The POC selection resolves ties between equal-count rows by choosing the one closest to the mid-range price. Value area expansion adds rows alternately from the high and low sides of the POC based on which adjacent row has the greater count, continuing until the accumulated count reaches the target percentage of total prints.
Four internal systems operate in tandem:
Period Aggregation Engine : Groups chart bars by TPO clock timestamp into complete periods, accumulating per-period high-low ranges and assigning sequential letter identifiers that are used for both letter rendering and Initial Balance period counting.
TPO Distribution Builder : Accumulates per-row letter strings and print counts from the period high-low ranges, producing the row width and text data that drives all subsequent profile rendering and level calculations.
3D Geometry Engine : Constructs polyline polygon arrays for the extruded top faces following each row's width contour, side end cap faces at the outer edge of each row, and the rear glass plane bounding box, using configurable depth bar and depth row offsets to establish perspective coordinates.
Level and Label System : Derives POC, VAH, VAL, and IB level prices from the distribution, renders dual glow and core lines extending across the profile and beyond with configurable tail length, and places price readout labels at the right edge of the level lines.
This design ensures the 3D geometry follows the actual distribution contour while all standard market profile reference levels are derived from the same underlying TPO count data that drives the visual rendering.
How It Works
3D Market Profile evaluates price through a sequence of aggregation and profile-building processes:
Profile Range Calculation : The highest high and lowest low across the configured bar count establish the full profile range, which is divided into the configured number of rows to produce the uniform row height used for all price-to-row mapping.
TPO Period Aggregation : Chart bars are grouped by their TPO timeframe clock value. Consecutive bars sharing the same period timestamp are merged into a single period with the accumulated high and low. Each completed period boundary triggers storage of the completed period data.
Letter Assignment and Row Filling : Each period is assigned the next sequential alphabet letter. For each period, the low and high row bins are calculated and the period letter is appended to the row text string for every row from low to high inclusive, with the row print count incremented accordingly.
Initial Balance Derivation : The first N periods as configured by the IB Periods setting contribute their highs and lows to the Initial Balance range, producing the IBH and IBL reference levels that mark the range established during the opening portion of the profile window.
POC Identification : The row with the maximum print count is identified as the POC. When multiple rows share the maximum count the row closest to the profile mid-range price is selected, providing a consistent tie-breaking rule that favors centrally located levels.
Value Area Construction : Starting from the POC row, adjacent rows are added one at a time by selecting the higher-count neighbor on each iteration until the accumulated count reaches the VA percentage target of total prints.
Profile Geometry Calculation : The profile start position is determined by the placement setting, with Right of Price positioning the profile in forward chart space at the configured right offset and On Range anchoring it to the beginning of the analyzed window. Row widths are calculated as print count multiplied by cell width.
3D Top Face Construction : For each occupied row, a quadrilateral polyline polygon is constructed connecting the row's front top-left, front top-right, depth-offset rear top-right, and depth-offset rear top-left coordinates, producing the extruded top surface that follows the profile contour.
3D Side Cap Construction : For each occupied row, a quadrilateral polyline polygon connects the front right edge top, front right edge bottom, depth-offset rear right bottom, and depth-offset rear right top, producing the side end cap that closes the extruded row geometry.
Front Profile Rendering : Box objects are created for each occupied row with density-gradient fill coloring, POC and single print override coloring, and border styling that distinguishes the POC row, single print rows, Value Area rows, and standard rows.
TPO Letter Rendering : Individual label objects are placed at the center x and mid-price y position of each letter's cell within the profile, with color distinguishing POC, single print, and standard rows.
Level and Label Rendering : POC lines are rendered as dual glow and core polylines. VAH and VAL render as dotted lines. IBH and IBL render as dashed lines. All extend from the configured tail length left of the profile to the right edge of the depth geometry. Price labels are placed at the right extent of each line.
Together, these elements form a complete three-dimensional market profile rendering where the TPO distribution drives both the analytical reference framework and the spatial geometry of the extruded visualization.
Interpretation
3D Market Profile should be interpreted as a conventional TPO market profile with three-dimensional spatial depth encoding applied to the distribution geometry:
Profile Width : The horizontal extent of each row reflects its total TPO print count relative to the maximum, with wider rows indicating more time spent at that price level and narrower rows indicating less acceptance.
Density Gradient Coloring : Row fill progresses from the configured low-density color at minimum print count to the high-density color at maximum print count, with a power-transformed gradient that spreads color differentiation across the density range.
Point of Control Row (POC) : The widest row rendered in the POC color identifies the price level with the greatest time-at-price concentration across the profile window, representing the most accepted price during the analyzed period.
Value Area : Rows between VAH and VAL rendered with full opacity represent the price range containing the configured percentage of total TPO prints, identifying the zone of concentrated acceptance around the POC.
Non-Value Area Rows : Rows outside the Value Area are rendered with additional transparency and darkened coloring, visually receding from the Value Area rows to communicate their reduced relative acceptance.
Single Print Rows : Rows with exactly one TPO period print are highlighted in the high-density color with a distinct border, marking price levels visited by only one period that price may return to complete the auction.
TPO Letters : Sequential alphabet letters within each row identify which periods traded through that price level, with the letter sequence providing a chronological audit trail of price movement across the profile window.
3D Top Faces : Extruded top surfaces following the profile contour row by row provide depth cues that make the profile shape readable as a three-dimensional structure, with the contour step pattern revealing the distribution's outline in spatial form.
3D Side Caps : End cap faces at the outer edge of each row close the extruded geometry and reinforce the row width differences through the depth dimension, with darker coloring distinguishing the side geometry from the front profile.
3D Frame : The rear glass plane and wireframe perspective box orient the profile within three-dimensional chart space, connecting front and rear geometry with corner depth lines that establish the spatial extent of the distribution structure.
POC Level : Dual glow and core lines extending from the profile mark the POC price for ongoing reference, with the glow providing visual prominence that makes the POC immediately identifiable against background price action.
VAH and VAL Lines : Dotted lines at the Value Area boundaries mark the upper and lower edges of the high-acceptance zone for ongoing price interaction monitoring.
IBH and IBL Lines : Dashed lines at the Initial Balance high and low mark the range established during the opening TPO periods, providing the conventional IB reference framework for range extension and balance monitoring.
Profile shape, POC location, Value Area extent, single print density, and IB range collectively provide more structural context than any element in isolation.
Signal Logic & Visual Cues
3D Market Profile does not generate discrete entry or exit signals but provides continuous structural reference through the standard market profile analytical framework:
POC Magnetic Reference : The POC level identifies the price where the greatest time-based acceptance occurred within the window, frequently acting as a mean reversion magnet when price extends to the Value Area boundaries.
Value Area Boundary Interaction : Price moving outside the Value Area enters statistically less accepted price territory, providing context for potential reversion trades back toward the Value Area or range extension trades when acceptance establishes beyond the boundary.
Initial Balance range interactions provide the conventional IB framework where price accepting above IBH or below IBL signals potential range extension, while price remaining within the IB range suggests balanced auction conditions.
Strategy Integration
3D Market Profile fits within conventional market profile and auction theory-based analytical approaches:
POC Reversion Framework : Use the POC line as a dynamic mean reversion reference when price has extended to or beyond the Value Area boundaries, with the POC representing the price where the distribution's greatest acceptance occurred and where reversion activity frequently concentrates.
Value Area Boundary Trading : Monitor price behavior at VAH and VAL for acceptance or rejection signals. Price accepting above VAH or below VAL by closing multiple bars beyond the boundary suggests genuine range extension. Price rejecting at the boundaries and returning inside the Value Area suggests reversion continuation.
Initial Balance Range Extension : Use IBH and IBL as directional range extension references. Price establishing acceptance above IBH with sustained closes indicates potential bullish range extension. Price accepting below IBL indicates potential bearish extension.
Single Print Targeting : Treat single print rows as potential return targets for incomplete auction areas, monitoring for price to revisit and fill these levels with additional TPO participation in subsequent sessions.
Profile Placement Selection : Use Right of Price placement to keep the profile in forward chart space as a live reference for current and upcoming price interaction. Use On Range placement to anchor the profile to the historical window for post-session analysis and retrospective structural assessment.
Timeframe and Length Calibration : Match the TPO timeframe to the trading session type being analyzed. Thirty-minute TPOs with standard length produce a conventional daily profile. Shorter timeframes produce intraday micro-profiles. Longer timeframes produce multi-day macro profiles that reveal larger structural distribution patterns.
Technical Implementation Details
Period Aggregation : TPO clock-based grouping of chart bars into complete periods with high-low range accumulation and sequential letter assignment
Distribution Builder : Per-row letter string accumulation and print count tracking across the full period set
POC Selection : Maximum count identification with mid-range proximity tiebreaking for consistent level placement
Value Area Engine : Outward expansion from POC with alternating upper and lower priority based on adjacent row count comparison
3D Geometry : Polyline quadrilateral construction for top faces and side caps using depth bar and depth row offset coordinates
Front Profile : Box objects with density gradient fill, POC override, single print override, and Value Area transparency differentiation
Level System : Dual glow and core POC lines, dotted VA lines, dashed IB lines, and price readout labels at configurable tail length
Performance Profile : Full object cleanup and rebuild on last bar with label count cap enforcement and configurable profile length maximum
Optimal Application Parameters
Timeframe Guidance:
1 - 5 min : Intraday micro-profile analysis with shorter length and faster TPO timeframe for session-level distribution tracking within a single trading day
15 - 60 min : Session profile construction with standard thirty-minute TPO timeframe and balanced row count for conventional daily market profile analysis
4H - Daily : Multi-session macro-profile analysis with longer length and higher TPO timeframe for structural distribution patterns spanning multiple sessions
Suggested Baseline Configuration:
Length : 180
Rows : 24
Value Area % : 70
Placement : Right of Price
TPO Timeframe : 30
Show TPO Letters : Enabled
Initial Balance Periods : 2
3D Depth (Bars) : 6
3D Height (Rows) : 0.42
Show 3D Frame : Enabled
Show POC / VA : Enabled
Show Initial Balance : Enabled
Show Level Labels : Enabled
These suggested parameters should be used as a baseline; their effectiveness depends on the instrument's session structure, typical daily range, and preferred profile granularity, so fine-tuning is expected for optimal performance.
Parameter Calibration Notes
Use the following adjustments to refine behavior without altering the core logic:
Too few or too many rows : Adjust Rows to increase or decrease vertical price resolution, calibrating row height to the instrument's typical daily range so rows represent meaningful price increments rather than noise-level or excessively large bands.
Letters too cramped or too sparse : Adjust TPO Cell Width to control the horizontal space allocated to each letter, increasing for wider, more readable letter display or decreasing to fit more prints within the same profile width.
Profile too narrow or too wide : The profile width scales automatically with the maximum row print count multiplied by cell width. Adjust Length to include more or fewer bars in the profile window, and adjust Cell Width to scale the resulting profile width.
3D extrusion too deep or shallow : Adjust 3D Depth (Bars) to control horizontal perspective extent and 3D Height (Rows) to control vertical depth, calibrating the spatial effect to the chart's aspect ratio and current zoom level.
Profile overlapping price action : Use Right of Price placement with a larger Right Offset value to push the profile further from current price, or switch to On Range placement to anchor it to the beginning of the analyzed window instead.
Initial Balance range too narrow or wide : Adjust Initial Balance Periods to include more or fewer opening TPO periods in the IB calculation. Two periods represents the conventional first trading hour using thirty-minute TPOs; increase for a wider opening range definition.
TPO timeframe mismatch : Match the TPO Timeframe to the session type being analyzed. Using a thirty-minute timeframe on a daily chart produces very few periods and minimal distribution differentiation; use a timeframe appropriate to the chart timeframe and session length.
Adjustments should be incremental and evaluated across multiple session types rather than isolated market conditions.
Performance Characteristics
High Effectiveness:
Session-structured markets where a defined trading window produces a clear distribution with identifiable POC and Value Area that serve as reliable structural references across subsequent sessions
Instruments with consistent daily range where row height calibrates to meaningful price increments and the distribution produces a recognizable bell-curve or skewed profile shape
Market profile-based trading approaches where POC, Value Area, and Initial Balance provide the primary structural reference framework for directional bias and level interaction analysis
Three-dimensional visualization workflows where the extruded profile geometry provides immediate spatial readability that improves structural assessment speed relative to flat two-dimensional profiles
Reduced Effectiveness:
Markets with highly variable daily ranges where a fixed row count produces inconsistent row heights across different sessions, reducing the comparability of distribution shapes between profile windows
Instruments without clear session structure where the TPO period aggregation produces few complete periods within the profile length, resulting in sparse distributions with limited analytical differentiation
Very short profile lengths where insufficient bars produce too few TPO periods to create a statistically meaningful distribution with identifiable POC and Value Area levels
Extremely compressed consolidation environments where price trades within a narrow range and all rows receive similar print counts, producing a flat distribution without the structural differentiation that makes POC and Value Area meaningful
Markets with frequent large gaps where the profile range is dominated by gap space rather than traded price, producing distributions with many empty rows that reduce the analytical value of the concentration levels
Integration Guidelines
Confluence : Combine with BOSWaves structural tools, order flow analysis, or momentum indicators to validate POC and Value Area interactions with broader analytical context before acting on market profile reference levels
POC Migration Tracking : Monitor whether successive profile POC levels are migrating higher, lower, or remaining stable as a secondary directional bias indicator. Consistently rising POC levels across multiple sessions suggest sustained upward value migration.
Value Area Overlap Assessment : Compare Value Area ranges across successive profiles to assess whether price is finding acceptance in overlapping value zones, indicating market balance, or developing non-overlapping value areas, indicating directional value migration.
Single Print Completion Monitoring : Track single print rows as potential return targets in subsequent sessions. The market profile principle that incomplete auctions tend to be revisited makes single prints valuable anticipatory reference levels for future price behavior.
IB Range Context : Use the Initial Balance range as a daily bias anchor. Strong directional moves that establish acceptance well outside the IB range early in the session carry greater continuation probability than marginal IB extensions that quickly revert inside.
Disclaimer
3D Market Profile is a professional-grade TPO market profile visualization and auction theory analysis tool. It uses timeframe-based period aggregation with standard market profile methodology but does not predict future price movements. Results depend on market conditions, instrument session structure, parameter selection, and disciplined execution. BOSWaves recommends deploying this indicator within a broader analytical framework that incorporates order flow context, structural analysis, and comprehensive risk management. Indicateur

Volume FootprintVolume Footprint
First and foremost, a special thanks to @bassnavy for the direct request and inspiration to build this tool. I truly appreciate your comment!
Disclaimer: This is essentially a simplified script inspired by premium footprint tools (lol). I pay my utmost respect to TradingView and its amazing community!
This indicator is an "Advanced Precision Footprint Visualizer" built strictly on Pine Script v6. Standard footprint charts often struggle with TradingView's rendering limits (max 500 boxes). To overcome this, I engineered a dynamic tick-grouping algorithm that visualizes exact Bid/Ask deltas, volume densities, and Point of Control (POC) with extreme precision, without breaking the platform's constraints.
This tool is designed for highly disciplined traders who rely on verified entry setups. It filters out market noise and visually isolates true liquidity nodes.
Core Mechanics & Calculation Logic:
Tick Grouping (Step Calculation): step = syminfo.mintick * active_ticks
Why: Processing every single minimum tick would instantly exceed the 500-box drawing limit. By grouping ticks based on ATR (Auto Tiers) or a manual input, we compress the data while maintaining visual fidelity.
Output Example: If syminfo.mintick is 0.01 and active_ticks is set to 1, the step size becomes 0.01. If the bar's high is 16.59 and low is 16.26, the engine calculates exactly 34 rows for rendering.
Row Delta Determination: row_delta = Ask Volume - Bid Volume
Why: To accurately gauge whether buyers or sellers absorbed the liquidity at a specific price tier.
Output Example: If Ask volume is 2.5K and Bid volume is 1.0K at a specific row, the row_delta is +1.5K. The text dynamically changes to the "Plus Delta" color (Green).
3-Step Volume Gradient: half_max = max_r_v * 0.5
Why: To create a seamless 3-step color gradient (Low -> Mid -> High). By calculating the 50% threshold of the maximum volume (POC) inside the bar, it intuitively separates high-interest zones from market noise.
Premium Plan TF Downgrade Logic: actual_ltf = (not is_premium and is_sec_tf) ? "1" : ltf_res_input
Why: TradingView restricts seconds-based timeframes (like 1S or 15S) to Premium users and above. Requesting this data on lower plans causes script crashes. This logic automatically downgrades the timeframe to 1 (1-minute) if the Premium toggle is disabled, ensuring stability for all users.
Output Example: If the user inputs 15S and the Premium toggle is false, is_sec_tf evaluates to true. The condition not is_premium is met, so actual_ltf outputs "1" (1-minute). If the toggle is true, it outputs "15S".
Warning: This script operates at the absolute edge of TradingView's rendering capabilities. If you encounter rendering errors, please reduce the "Lookback Bars" or increase the "Lower Timeframe (LTF)" resolution.
Indicateur

Structural Liquidity & POC Matrix [BigBeluga]🔵 OVERVIEW
The Structural Liquidity & POC Matrix is a clean, automated price action terminal built to track institutional key levels. It isolates important market highs and lows over a set lookback period and instantly projects them onto your chart as trailing liquidity lines.
Additionally, the script calculates a dynamic volume profile between those major high and low structural markers. Instead of scattering lines everywhere, it neatly draws this volume breakdown on the right side of your workspace to reveal exactly where the heaviest trading occurred and highlights the Point of Control (POC).
🔵 FEATURES
The toolkit maps out key market interaction zones using a streamlined structural tracking framework:
1 — Dynamic Liquidity Range Tracking
Automated Sweep Highs & Lows: The engine scans your chart using a set lookback period ( Liquidity Length ) to find key historical highs and lows, drawing sharp levels right at those turning points.
Smart Fading Level Lines: Once a liquidity line is plotted, it trails forward until it hits a customizable timer limit ( Fade Liquidity ). The line smoothly fades out and resets over time, ensuring your chart stays perfectly clean.
Visual Breakout Diamond Markers: The exact moment price action breaks or shifts out of a previously established liquidity level, the script prints a sharp diamond symbol (◆) to flag the market sweep.
2 — Adaptive Sidebar Volume Profile & Matrix
Right-Side Profile Alignment: To keep your workspace completely clear of clutter, the script shifts the historical volume breakdown out of the way, plotting it onto the right margin of your screen ( Profile Offset ).
Structural Volume Distribution: The engine tallies up all volume traded between the active major high and low blocks. It dynamically projects the results as a clean structural polyline matrix block, colored to match the dominant market flow.
Point of Control (POC) Target Line: The system automatically scans your volume data to pinpoint the absolute heaviest volume node ( Point of Control (POC) ). It stretches a bright line ( POC Color ) from the start of the structure all the way through the profile to reveal major institutional fair value anchors.
// Volume Profile Array Bins & POC Target Index Lookup
volBins = array.new(size, 0.0)
for i = start to bar_index
price = close
binIdx = math.floor((price - profBot) / atr)
if binIdx >= 0 and binIdx < size
array.set(volBins, binIdx, array.get(volBins, binIdx) + volume )
maxVol = array.max(volBins)
pocBinIdx = volBins.indexof(maxVol) // Find the exact index of the POC
🔵 HOW TO USE
Integrating these structural matrix lines into an everyday trading plan follows a clear, step-by-step strategy structure:
Isolate the Active Range Boundaries: Monitor the top orange and bottom blue tracking lines to instantly map the current structural playing field. These trailing boundaries reveal exactly where short-term stops and market liquidity pool rest.
Locate the Institutional Fair Value Anchor: Look for the bright yellow Point of Control line stretching across the chart. This level shows you where the largest amount of volume has changed hands, identifying a strong support or resistance anchor for future retests.
Execute Trades Off Range Sweeps: Watch the chart closely when price sweeps past an outer liquidity line and prints a diamond indicator. If price snaps back inside the range, look to ride the reversal momentum straight across the matrix toward the yellow POC target line.
🔵 NOTES
Why this implementation is unique:
It acts as a compact, self-cleaning support and resistance tool by automatically fading out old level lines before they can crowd your screen.
Rather than forcing you to look at a fixed, unmoving session volume profile, it anchors its volume calculation directly between the active high and low price pivots.
The smart polyline rendering engine keeps your trading window uncluttered by cleanly shifting detailed volume histograms entirely over to the right margin space.
Indicateur

Liquidity Trend Heatmap [BigBeluga]🔵 OVERVIEW
The Liquidity Trend Heatmap is a professional-grade volume analysis tool that maps market liquidity directly onto your price chart. By combining a trend-following baseline with a high-resolution volume-at-price heatmap, it helps traders instantly visualize where the market's "heavy" trading zones are located relative to the current trend.
🔵 FEATURES
The indicator utilizes a sophisticated volume-distribution engine to provide actionable market intelligence:
1 — Dynamic Liquidity Heatmap
Multi-Node Distribution: The indicator divides the recent price range into a 26-level grid, calculating the cumulative volume traded at each level over your defined Lookback Period .
Visual Heatmap Nodes: Liquidity is displayed as shapes (Squares, Circles, etc.) that shift color and intensity based on the volume processed at that price.
Normalized Intensity: Nodes appear more vivid based on their volume relative to the Point of Control (POC), ensuring you only focus on the most significant liquidity zones.
2 — Institutional Point of Control (POC) Tracker
Automated POC Detection: The system identifies the specific price level with the highest volume accumulation, marking it as the market’s primary liquidity magnet.
Real-Time Metrics: A dedicated POC label on the far right of your chart provides the exact price and volume traded at the POC, keeping your focus on the most critical level.
3 — Trend-Following Dashboard
Trend Baseline: Includes a customizable moving average ( Trend Length ) that acts as a structural midline. This midline automatically updates color to indicate whether the current environment is Bullish or Bearish.
Information Dashboard: A clean, configurable table at the top-right provides instant updates on the current trend status, POC price, and total POC volume without cluttering your workspace.
🔵 HOW TO USE
This tool is designed to identify "smart money" zones and potential mean-reversion levels:
Identify Liquidity Magnets: Use the POC level as a primary target or support/resistance level. High-volume nodes often act as magnets for price action.
Confirm Trend: Use the Trend Line and dashboard status to ensure your liquidity-based trades are aligned with the prevailing market trend.
Filter Weak Levels: Adjust the Heatmap Threshold % to hide low-volume levels. This cleans up your chart and leaves only the most relevant, high-conviction liquidity zones visible.
🔵 NOTES
Why this implementation is unique:
It combines complex volume-profile math with a lightweight, user-friendly visual interface, making it suitable for both scalpers and swing traders.
The "future-extending" heatmap nodes visualize expected liquidity distribution into the immediate future, helping you anticipate price behavior before it happens.
The system is highly customizable, allowing you to toggle the trend line, adjust shape types, and change heatmap thresholds to suit your specific trading style.
Indicateur

Trade Wzrd - Tide [Rampage Series]✨ TRADE WZRD - TIDE ✨
Every price level has an owner. Not a metaphor - a measurement.
Tide splits the range's volume row by row into buy mass and sell mass , finds the levels one side owns outright, and draws them as living lines on the chart - with a graveyard of the levels that came before.
⚡ THE RAMPAGE SERIES ⚡
Tide is a release in the Rampage Series - a growing family of volume-and-levels tools built by Trade Wzrd. Every Rampage script ships with the same built-in automation layer: signals don't just paint, they speak. One alert, one webhook, and every entry, exit and fill fires a plain-text order string.
⚡ THE OWNERSHIP ZONES (THE HERO) ✨
Every bar's volume is divided by who won the close - bars that closed high are buyers' mass, bars that closed low are sellers' mass - then spread across the price rows it touched. When one side owns 65%+ of everything traded at a row (your threshold), that row is a SHELF. Tide paints the two that matter right now as ownership ZONES : the highest buyer shelf below price as a soft cyan field, the lowest seller shelf above it in red - the exact band one side owns, a glow bed under a bright edge, and the ownership printed right inside the zone: "78% OWNED BY BUYERS" . A tag at the right edge carries the price and the percentage; hover it for who owns it, since when, and exactly where it dies. A zone stays alive until price closes clean through it - then it dies where it fell, no ghost, because a failed level is just a line.
⚡ THE FOSSILS (THE HISTORY) ✨
When a shelf is replaced - not broken, just handed off to the next level - it fades into a fossil: a dotted ghost in its owner's color, frozen at the bar it was born. Fossils stay on the chart until the market mitigates them: price trades through a ghost and it's erased. What's left is the archaeology of the setup - every level that used to matter, still standing where it stood, until the market itself takes it down. Cap the graveyard or turn it off in the Fossils group.
⚡ THE POOLS (THE LIQUIDITY) ✨
Equal highs and equal lows are not coincidences - they're where the stops rest. Tide clusters swings within a tolerance you set into liquidity POOLS, and draws them as gold levels: the exact price, the touch count that built them (×3 = three equal highs worth of stops), dashed while the liquidity rests. Then the raid comes: a wick through the pool that closes back = the sweep. The chart stamps it in gold, the pool marks itself TAKEN in dots, and it dies honestly when price consumes it or time forgets it. And here's the fusion: a fresh sweep near a shelf fuels the defense - conviction rises, and the chip's hover tells you exactly why: "the sell stops are already taken." The dashboard's POOLS row names the nearest pool each side with its touches and distance in ATR.
⚡ THE CROWN & THE CENTER ✨
The dashed white line is the Point of Control - the row where the most mass traded in the range, price tagged at its end. The optional volume-center line is the 50/50 magnet every defense aims for. The full ownership numbers - undertow, POC, shelf count, balance - live on the dashboard, one glance away.
⚡ THE DEFENSE (THE SIGNAL) ✨
Price returns to a shelf and the owners defend it: a dip into a buyer shelf that closes back above = BUY · DEF. A poke into a seller shelf that closes back below = SELL · DEF. One defense per shelf per touch - a fired shelf releases only when price escapes it cleanly, so fresh touches can defend again but wick-spam cannot. Stops frame the shelf's far edge: if price trades through the shelf, the defense failed, honestly. Targets default to the VOLUME CENTER - the 50/50 magnet of the range's mass - capped at 3R with an R-multiple fallback.
⚡ THE UNDERTOW ✨
Beneath the rows, one number: the range's net delta. BULL +18% means the mass leans long; BEAR -12% means it leans short; BALANCED means the tide is slack. It's the dashboard's top row because it's the context every defense swims in.
⚡ CONVICTION & THE DATABASE ✨
Every defense carries one compact number - CONVICTION. Underneath: this chart's own live database, defenses bucketed by the shelf's dominance (owned / dominated / ruled) . That tier win rate is the base - then the score bends with the scenario: how owned the shelf is, balance alignment (defending from the side of value), kinetic fuel, absorption. Fused into one grade from 5 to 95. Hover any chip: the shelf's exact price band, who owns it and by how much, the tier's win rate and sample depth, balance, undertow, fuel. Nothing hidden.
⚡ THE SCHEDULE ✨
Every closed trade is filed by session - Asia, London, New York, off hours - and the dashboard learns which hours the defenses hold on this chart, with this logic. When the schedule has enough receipts, BEST SESSION names the shift.
⚡ BUILT-IN AUTOMATION ⚡
One alert ("Any alert() function call") + your webhook URL, and Tide speaks Trade Wzrd order strings:
⚡ Entries with SL/TP prices attached
⚡ Optional opposite-signal close prepended to new entries
⚡ TP/SL-hit close alerts that mirror the on-chart trade box
The same readable comma syntax drives automation across 7+ platforms - percent-risk or fixed-volume sizing, magic numbers, order comments. No lock-in: plain text, any endpoint.
✨ HOW TO READ IT ✨
⚡ Cyan zone below price = the band buyers own, defending longs - ownership % printed inside, price + % on the edge tag
⚡ Red zone above price = the band sellers own, defending shorts - same receipts
⚡ A zone that vanishes without a ghost = it broke: price closed clean through it. Failed levels leave no fossils
⚡ Dotted colored ghosts = fossils: shelves that handed the job off, standing until the market mitigates them
⚡ Gold dashed levels = liquidity pools: equal highs/lows where stops rest - tag shows price × touches
⚡ Gold POOL ×3 stamps = the raid: stops swept and rejected; the pool goes dotted TAKEN until it dies
⚡ A defense firing right after a sweep = the strongest setup Tide knows - conviction gets the fuel, hover says why
⚡ Dashed white line = the Point of Control, price tagged - where the most mass traded in the range
⚡ BUY · DEF 68 / SELL · DEF 71 chips = a shelf defended itself - the number is conviction
⚡ Gold diamonds = absorption: climax volume, no progress - someone ate the book right there
⚡ Dashboard: undertow, POC, shelf count, who's defending, database, best session, record, fuel
⚡ HOW TO USE ⚡
⚡ Drop it on any liquid symbol with volume, 15m to 4H - ownership maps everywhere
⚡ Let it run. The database and the session schedule start empty - they grow teeth from this chart's own history
⚡ Watch the tiers: if ruled shelves (90%+ ownership) earn more than owned ones, raise Shelf Dominance and let the weak ones go
⚡ Set Min Win Probability once the tiers have samples - cold tiers filter themselves out
⚡ Turn on Balance Alignment to defend only from the side of value
⚡ Wire one alert when you're ready to automate
✨ LIMITATIONS ✨
⚡ Buy/sell mass is estimated from where each bar closed inside its range - a proven approximation, not exchange order-flow. On symbols without volume, the profile, undertow and conviction stand down
⚡ Conviction starts from this chart's own history , tiered - a sample, not a promise. Small samples lie confidently; the hover tells you when a tier is young
⚡ The database resets when you change symbols, timeframes, or core settings - every context earns its own track record
⚡ Shelves defend best in rotation; in runaway breakouts price doesn't come back to defend anything - that's what the trade box's stop is for
Rift maps WHERE the volume traded. Tide knows WHO OWNS EVERY PRICE - and watches them defend it. Null Range knows WHERE THE VOLUME NETS TO NOTHING.
Educational shell. Not financial advice. Not a signal service.
Indicateur

Trade Wzrd - Null Range [Rampage Series]✨ TRADE WZRD - NULL RANGE
Every range has two middles. The one price draws - the midpoint - and the one VOLUME draws: the exact price where everything traded inside the range nets to nothing. Half the participation above, half below. The balance point where the tug-of-war reads null .
Null Range plots that line, builds a channel out of volume's own deviation, and fades the pokes that venture beyond it - out where participation thins to nothing. Not a promise - a receipt.
⚡ THE RAMPAGE SERIES ⚡
Null Range is a release in the Rampage Series - a growing family of volume-and-levels tools built by Trade Wzrd. Every Rampage script ships with the same built-in automation layer: signals don't just paint, they speak. One alert, one webhook, and every entry, exit and fill fires a plain-text order string.
✨ THE NULL RANGE ✨
The dealing range's volume is distributed across a hundred invisible bins, and the 50/50 split becomes a single glowing line. Not a midpoint. Not an average. The price where the crowd's money actually nets to zero. And the line itself is the regime read: it runs CYAN when volume's center of mass sits in the cheap half, RED when it sits in the expensive half. Its right-edge tag carries VOL CENTER - the exact percentage. Hover it for the full story.
⚡ THE VOLUME CHANNEL ⚡
The same bins yield volume's standard deviation - so Null Range draws the channel where participation actually lives: two glowing sigma walls around the line with graded fills, and nothing else. ~95% of traded volume lives inside. Price beyond the wall is price out where volume goes null - extended, exhausted, and ripe for the trap.
✨ KINETIC FUEL ✨
Under the structure, a fuel strip burns: volume times speed, candle by candle, normalized against recent history. Bull fuel hangs off the discount wall in cyan, bear fuel off the premium wall in red - spike squares mark the bars that moved real mass, and WALL SLAM diamonds stamp the bars where that mass physically hit a wall. When a trap springs off a slam, the whole crowd pushed - and still failed.
⚡ THE MARGIN PROFILE ⚡
In the right margin, the range's own bins draw themselves quietly - spanning exactly wall to wall, because that's where the volume that matters lives. Every row is tinted by who owned that price: cyan where buyers dominated, red where sellers did. The Point of Control is ringed in gold. Width, offset, delta coloring - all yours. It's the same engine as the line, laid on its side.
✨ FLOW HEAT ✨
No labels. No lines. Just heat. When price sinks while buy pressure quietly rises, the tape washes faint cyan - someone is loading into weakness. When price rises while sell pressure builds, it washes faint red - someone is unloading into strength. The disagreement between pressure and price, painted as weather. The dashboard's FLOW HEAT row names the shift when it's live.
✨ THE FILTERS ✨
Trade only what the database believes in. Min Win Probability skips signals from cold buckets (once they have enough samples to judge - TRACKING signals always pass). Max Extension skips blow-off pokes. Balance Alignment demands volume's center be on your side. Every active filter shows on the dashboard's FILTERS row, so you always know what the engine is allowed to take.
✨ THE TRAP ✨
The signal: price pokes beyond the two-sigma wall - out into the null - and closes back inside within the trap window. The fakeout. Fade it back toward the line - the default target IS the null range itself, because mean-reversion trades deserve mean-reversion targets. Premium traps short from above, discount traps long from below. EQ Reclaim mode (decisive crosses back through the line, 0.2 ATR minimum, no whipsaw) is there for continuation players.
⚡ THE CONVICTION SCORE ⚡
Here is where Null Range stops asking for trust. Every signal carries one compact number - CONVICTION - that no single ingredient could give you. Underneath it sits this chart's own live database: traps bucketed by how deep the extension ran (0–0.25, 0.25–0.5, 0.5–1.0, 1.0+ ATR beyond the wall), reclaims bucketed by whether volume's center was on their side. That historical win rate is the base - then the score bends with the scenario: volume's center on your side or against you, a tidy poke or a blow-off, a spike bar or thin air. History + balance + depth + fuel, fused into one grade from 5 to 95. Early on, before the buckets earn their samples, the score runs on structure alone - and says so.
And the hover is REACTIVE . Point at any signal and the verdict breaks the score into its parts: the conviction line, thin-sample warnings when a bucket is young, hot/cold bucket verdicts, depth-risk notes on blow-off extensions, balance alignment with the crowd's cost basis, and a fuel read on the participation behind the poke. Same model, different situation, different answer.
✨ THE RECEIPTS ✨
Signals stay on the chart as compact conviction chips - ▲ T 72, ▼ R 64 - one glance, one grade. Every closed trade stamps ✓ TP HIT or ✗ SL HIT exactly where it died. The dashboard tracks the VOL CENTER and PRICE POS gauges, the regime word, EQ/POC/channel width, the last signal with its conviction, the FLOW HEAT state, the database total, and a 10-dot streak row. The trade box carries entry, dashed stop, solid target with live R:R - and the conviction rides inside the entry tag.
⚡ YOURS TO SHAPE ⚡
Every visible piece answers to you: walls on or off, the line gradient or solid, EQ and POC tags toggleable, POC width, profile width and offset, delta colors or one solid tone, fuel strip, slam markers, flow heat, channel fills. The defaults are the house look - the knobs are all yours.
⚡ BUILT-IN AUTOMATION ⚡
One alert ("Any alert() function call") + your webhook URL, and Null Range speaks TradeWzrd order strings:
⚡ Entries with SL/TP prices attached
⚡ Optional opposite-signal close prepended to new entries
⚡ TP/SL-hit close alerts that mirror the on-chart trade box
The same readable comma syntax drives automation across 7+ platforms - percent-risk or fixed-volume sizing, magic numbers, order comments. No lock-in: plain text, any endpoint.
✨ HOW TO READ IT ✨
⚡ One glowing line = where the range's volume nets to null. Cyan = volume built low, red = volume built high
⚡ The graded channel = where ~95% of the volume lives. Price outside the wall = out in the null, extended
⚡ Fuel candles below/above the walls = kinetic energy per bar; squares = spike bars; diamonds = wall slams, mass meeting structure
⚡ Faint cyan/red wash behind the tape = flow heat: pressure and price disagreeing
⚡ The quiet profile in the margin, wall to wall = who owns each price: cyan rows buyers, red rows sellers, gold ring POC
⚡ ▲ T / ▼ T chips = the trap just failed - the number is conviction: this chart's track record bent by balance, depth and fuel. Hover for the breakdown
⚡ ▲ R / ▼ R chips = decisive reclaims of the line, same conviction engine
⚡ Dashboard: gauges, regime, FILTERS row, FLOW HEAT row, DATABASE row (trap and reclaim rates separately), streak dots
⚡ HOW TO USE ⚡
⚡ Drop it on any liquid symbol, 5m to 4H - tuned defaults for XAUUSD 15m
⚡ Let it run. The database is empty at first - conviction runs on structure alone until the buckets earn their samples
⚡ Compare buckets: if shallow traps earn 70% and deep ones earn 40%, you know exactly which pokes to take
⚡ Wire one alert when you're ready to automate
✨ LIMITATIONS ✨
⚡ Conviction starts from this chart's own history, bucketed - a sample, not a promise. Small samples lie confidently; the hover tells you when a bucket is young
⚡ The database resets when you change symbols, timeframes, or core settings - every context earns its own track record
⚡ Traps fade extensions - in a runaway trend, the outer wall keeps getting hit and the trap window is the honest filter
⚡ On symbols without volume data, the line falls back to midpoint and sigma to range/4
✨ CREDITS ✨
Kinetic fuel concept inspired by "Kinetic Momentum Vectors" by BigBeluga (CC BY-NC-SA 4.0). Concept only and Null Range's fuel is re-engineered from zero: volume times speed, burning off our own volume-channel walls. No code or geometry shared with the original.
Rift maps WHERE the volume traded. Null Range knows WHERE THE VOLUME NETS TO NOTHING - and what fading the void has been worth.
Educational shell. Not financial advice. Not a signal service. Indicateur

NW Volume Profile - Kernel-Smoothed [Dots3Red]📊 NW VOLUME PROFILE - KERNEL-SMOOTHED
A volume profile answers a different question than a normal chart. Instead of "how much traded today," it asks "how much traded at each price." This version applies Nadaraya-Watson kernel smoothing to that profile before reading any level off it — turning a jagged, noisy histogram into the actual underlying distribution of where volume concentrated.
🎯 WHY THIS MATTERS
A raw volume profile is built from independent price bins — each one only knows its own volume, nothing about its neighbors. That makes it noisy: a single oversized candle can create a spike that looks like an important level but is really just where one bar happened to land. Reading real structure off a raw histogram means squinting past that noise.
This script smooths the profile before drawing anything. Every bin's displayed value becomes a weighted average of its neighborhood — nearby bins count heavily, distant bins barely at all, following a Gaussian curve. The lumps from individual candles melt away, and what's left is the true shape of the distribution that was underneath the noise the whole time. All the levels described below — POC, Value Area, HVN, LVN — are read from that smoothed curve, not the raw one.
🧮 HOW THE SMOOTHING WORKS
Each price bin's raw volume gets replaced by:
smoothed(i) = Σⱼ w(i,j) · raw / Σⱼ w(i,j)
where w(i,j) is a Gaussian weight based on how many bins apart i and j are, controlled by the Bandwidth setting. A small bandwidth stays close to the raw histogram; a large one produces one broad, simplified hump. This is genuine kernel regression applied across the price axis, not a moving average or a visual blur — it's the same mathematical technique used in the smoothed lines several Dots3Red scripts already use for slope/trend estimation, applied here to a distribution instead of a time series.
Toggle "Show Raw Histogram Behind" to see the original jagged bars faintly displayed underneath the smoothed profile — a direct before/after comparison on your own chart.
📏 WHAT EACH LEVEL MEANS
🟡 POC (Point of Control) — the single price with the highest smoothed volume. The market's center of gravity for the current window; price tends to be pulled back toward it.
🔵 Value Area — the price region around the POC containing a configurable share of total volume (default 70%). Price trading inside it is trading at a level the market recently agreed was fair — chop and rotation are common here. Price breaking out of it is the market rejecting that agreement, which is often when moves extend rather than stall.
🟢 HVN (High Volume Node) — a secondary local peak in the smoothed distribution. Acts like a sticky zone; price tends to slow down or pause when revisiting one.
🔴 LVN (Low Volume Node) — a local trough where very little volume ever traded. Acts like a thin spot; price tends to move through it quickly rather than lingering, since few positions were ever opened there.
HVN and LVN are drawn as full-width dotted lines across the chart (not just labels at the profile edge), specifically so they stay visible and trackable even after price has moved well away from where the profile itself was drawn.
🧭 HOW TO USE
👀 Start with where price sits relative to the Value Area. Inside it: expect rotation and two-way trade. Outside it: the move has already broken from recent consensus, which historically has more follow-through than reversion.
🧲 Treat POC as a magnet, not a wall. It is the level most likely to be revisited, not a guaranteed reversal point. How price behaves when it gets there — accepted or rejected — is the actual signal, not the level itself.
🐌 Expect hesitation at HVNs. A move approaching an HVN from your prior window is approaching a zone where the market has previously done a lot of business — some slowing or consolidation there is common.
⚡ Expect speed through LVNs. A thin zone with very little historical volume tends to get crossed quickly rather than acting as support or resistance. If price is moving toward one, a fast move through it before finding real support/resistance at the next node is a reasonable expectation.
🔧 Adjust Bandwidth to match what you're looking for. A tighter bandwidth reveals more granular structure (closer to raw); a wider one collapses the profile into its dominant, unmistakable levels. There's no universally correct setting — it depends on whether you want detail or clarity.
💡 EXAMPLE
Say the profile shows POC at 61,200, a Value Area from 60,400 to 62,100, and an LVN line sitting at 59,800. Price later drops to 60,450 — right at the edge of the Value Area. Two distinct scenarios are now readable from the profile: if price holds and turns back up, the 61,200 POC above is the natural target the market has repeatedly gravitated toward. If instead price breaks below 60,400, the empty LVN at 59,800 offers little historical volume to slow the decline — a fast move through that zone before finding the next real level is the more likely path. Same chart, two different expectations, both read directly off the same profile without any additional indicator.
⚙️ SETTINGS
📊 Profile
• Lookback (bars) — size of the rolling window the profile is built from
• Price Bins — vertical resolution of the profile
• Body Volume Only — distribute volume across the candle body instead of the full high-low range
🧮 Kernel Smoothing
• Bandwidth — width of the Gaussian kernel in bin units; controls detail vs. simplification
📏 Levels
• Value Area % — share of total volume the Value Area is expanded to contain
• Node Detection Leg — how many neighboring bins define a local peak/trough
• LVN Max Ratio of POC — how thin a trough must be, relative to POC, to count as an LVN
🎨 Visualization
• Show Raw Histogram Behind, POC Line, Value Area, HVN/LVN Marks — each independently toggleable
• Profile Width — how far the profile extends horizontally
🖥️ Dashboard
• Show/hide, position — displays current POC, Value Area bounds, node counts, and the active window/bandwidth settings
📝 NOTES
This profile is a rolling window — its levels update as the window slides forward with each new bar, which is expected behavior for a volume profile rather than a repainting signal (nothing appears and then vanishes; the underlying window is simply moving). Thin-volume symbols will produce a ragged profile regardless of smoothing settings — this tool is most informative on liquid instruments with consistent volume.
⚠️ DISCLAIMER
This is an analytical and visualization tool. It does not generate trade signals and does not constitute financial advice. Historical volume concentration at a given level does not guarantee how price will behave there in the future. Indicateur

Navyraid FVANavyraid FVA (Fair Value Area)
Description:
Overview
The Navyraid Fair Value Area (FVA) is a specialized analytical tool built upon the principles of Auction Market Theory (AMT). According to AMT, financial markets exist to facilitate trade, constantly moving between states of balance and imbalance. The market tends to travel from one established Value Area to another.
This indicator maps out these crucial areas by analyzing where the market spends the most time and how frequently specific price levels are visited throughout the trading day. By identifying these zones of high historical acceptance, the indicator projects key levels from previous sessions that act as strong magnets and significant support/resistance zones for current and future market action.
How It Works (Core Logic)
The indicator evaluates price action by breaking down the high-to-low range of each candle into specific discrete price bins (ticks). It then tallies how often the price trades through each bin over a defined period (daily basis).
Value Area Calculation: It accumulates these price interactions to find the area where a specified percentage of trading activity occurred (default is 68%, representing one standard deviation of the mean).
Key Level Extraction: It isolates the single price levels with the highest concentration of activity for both the Mayor and Minor FVA.
Main Features
Mayor FVA: This represents the Point of Control (POC) or the price level with the highest time accumulation strictly within the 68% Value Area. This zone acts as the primary focal point of market balance and a high-probability price magnet.
Minor FVA: This marks the most significant high-time node located strictly outside the established Value Area. These peripheral nodes frequently serve as crucial turning points, rejection zones, or targets when the market breaks out of its primary balance.
Smart Mitigation (Freeze Logic): To keep the chart clean and relevant, FVA zones are projected forward as boxes. By default, once the current price touches or "mitigates" an extended box, the box stops extending (freezes).
Force Extend: A toggle that overrides the mitigation logic, forcing the FVA boxes to continuously project forward regardless of price interaction, useful for long-term level tracking.
Auto Tick Size: The script automatically scales the bin sizes based on the asset's specific price range and minimum tick, making it universally applicable across Forex, Indices, Crypto, and Equities without manual adjustment.
How to Use in Trading
Traders can utilize the Navyraid FVA to understand the broader market context based on AMT.
Targets: If the price is moving directionally, previous Mayor FVAs serve as logical take-profit zones, as the market seeks historical balance.
Reactions: Minor FVAs can be observed for potential pullbacks or continuation setups when the market tests extreme areas outside of the previous day's accepted value.
Disclaimer: This indicator is designed for educational and analytical purposes to visualize Auction Market Theory concepts. It does not constitute financial advice. Indicateur

Liquidity Heatmap 3D - Volume Density POC CVDLIQUIDITY HEATMAP 3D — the order-flow heatmap look, rebuilt for TradingView.
This indicator brings the volume-density heatmap visual to any TradingView chart, with a twist no other heatmap here has: a real 3D relief shader. Instead of flat colour tiles, every cell is lit by a virtual light source (emboss lighting computed in the colour math), and the strongest liquidity walls extrude as 3D blocks with shaded side faces and lit top caps.
━━━ HOW IT WORKS ━━━
TradingView provides no order book and no historical tick data, so this is an honest volume-density heatmap: each bar's volume is distributed across the price zones its range covered. Dense zones are the liquidity walls where the market actually spent volume. The engine normalises against the 85th percentile of the column maxima, so one hot spike never blanks out the rest of the map.
━━━ WHAT IS ON THE CHART ━━━
· Heatmap grid up to 22 x 28 zones, rebuilt live on every bar
· 3D RELIEF SHADER — emboss lighting, specular glints on the wall tops, adjustable strength
· 3D WALL EXTRUSION — the strongest cells pop out as shaded blocks (toggle)
· 7 PALETTES — GOLD 3D (default), TWILIGHT, FIRE & ICE (buy/sell split), OCEAN, INFERNO, EMERALD, MONO
· POC LINE — the highest-volume price of the window, with its volume readout
· WALL DETECTION — the two strongest active liquidity walls, labelled with their strength in percent
· VOLUME PROFILE — profile bars on the right, POC highlighted in gold
· TRADE BUBBLES — volume-spike bubbles sized by their ratio against the average, buy blue / sell magenta
· CVD STRIP — cumulative volume delta (bar proxy) along the bottom, mint and red
· COCKPIT PANEL — engine checklist, POC box and a BUY / SELL flow signal line
· Optional dark chart theme: navy background with mint / red bars
━━━ HOW TO USE IT ━━━
1. Watch the golden walls: price often reacts at dense volume zones — support and resistance built by traded volume rather than by drawn lines.
2. The POC is the fairest price of the window and acts as a mean-reversion magnet in ranges.
3. CVD rising while price holds a wall below it is an absorption long idea; CVD falling at a wall above is a distribution short idea.
4. Bubbles mark the bars where outsized volume hit. Combine them with wall touches for confluence.
━━━ SETTINGS ━━━
Grid size, bars per column, cutoff, gamma, tile transparency, relief strength, wall threshold and bubble threshold are all adjustable. Works on every symbol and timeframe; if a symbol carries no volume the engine falls back to time-at-price density and says so in the panel.
━━━ HONEST LIMITS ━━━
This is not level-2 order book data — TradingView does not provide it. The map shows where volume actually traded, not resting limit orders. The 3D effect is a rendering technique, not extra data.
━━━ NOTE ON LOADING ━━━
Right after adding the indicator, or after changing a setting, give it a few seconds: the engine creates its object pools and runs the first build. A brief flicker during that warm-up is normal and stops once the first refresh is done. After that the persistent engine updates in place with no flicker.
Open source — read it, change it, learn from it. This indicator is a study tool, not financial advice.
WHY THESE PARTS BELONG TOGETHER
The heatmap, the point of control and the cumulative delta strip are three views of one question:
where is volume sitting, which price is defending it, and who is doing the trading. The heatmap
shows the distribution, the point of control marks its centre of gravity, and the delta strip says
whether that distribution is being built by buyers or sellers. Read on their own each of the three
is ambiguous; read together they describe one order-flow picture.
Indicateur

Volume Profile P b D Shapes - Day PlaybookVOLUME PROFILE P b D SHAPES reads the market's body language: every trading day the volume profile prints a LETTER — P, b or D — and that letter tells you who is in control and exactly how to trade the next session. This indicator automates the complete PbD method: it builds every day's volume profile, classifies the shape, draws the levels, prints the playbook on your chart and fires webhook-ready JSON signals.
■ THE THREE LETTERS
P-SHAPE (bullish continuation) — fast impulse UP, then balance ON TOP. The thin tail below is single prints: nobody did business there. Buyers feel like winners, dips are for buying.
b-SHAPE (bearish continuation) — fast impulse DOWN, then balance AT THE BOTTOM. The thin tail above marks the drop. Sellers are in control, rallies are for selling.
D-SHAPE (balance day) — a symmetric bell curve with a fat POC in the middle. Buyers AND sellers are happy, fair price has been found. The next day usually stays range-bound: fade the edges.
■ THE AUTOMATED PLAYBOOK (7 SETUPS)
P behind you:
- PLAN A — CONTINUATION: price dips into yesterday's value area, the dip HOLDS (no low break), a reclaim candle closes back at/above the POC -> BUY. Targets: previous high, then a measured balance move.
- PLAN B — FAILURE = FULL TRAVERSE: 2+ candle CLOSES below the VAL (a wick is NOT enough) plus a volume spike = acceptance below balance. The shape has failed and price tends to walk the WHOLE way back to the impulse origin -> SELL.
b behind you: the exact mirror — sell failed rallies into value (Plan A), or buy the failure traverse when 2+ closes above VAH with volume appear (Plan B).
D behind you + today opens INSIDE the D:
- Range rules. Short the Value Area High rejection, long the Value Area Low rejection, target the POC first and the opposite edge second. The FIRST touch gives the best response — the fade counter limits how often each edge may be traded.
■ WHAT YOU SEE ON THE CHART
- A volume histogram for every completed day, colored by its letter (mint P / red b / gold D), POC row highlighted
- A big P / b / D letter above each day — hover it for the full lesson behind the shape
- Yesterday's VAH / VAL / POC projected into today as live rails with explanatory tooltips
- A bias note at every day open: which letter is behind you, where today opened, and both plans
- Two-line BUY/SELL pills that explain WHY the signal fired (hover for the complete reasoning + Entry/SL/TP1/TP2)
- Entry / SL / TP1 / TP2 lines, TP1 -> break-even management, TP2 runner
■ AUTOMATION / WEBHOOK
Create one alert with condition "Any alert() function call" and paste your webhook URL. Every BUY/SELL/TP1/TP2/SL/BE event sends ready-to-use JSON: id, symbol, action, setup, shape, entry, sl, tp1, tp2, timeframe, time. There is also an optional end-of-day SHAPE alert so your bot can pick tomorrow's playbook automatically.
■ HOW TO USE
1) Apply to an intraday chart (5m - 1h; crypto, indices, FX, stocks). 2) Let at least one full day close so the first letter prints. 3) Read the panel: previous-day letter -> today's bias -> checklist. 4) Take the pills or automate them via webhook. The first day on the chart only collects data — letters start from day two.
Educational note: shapes give a BIAS, not a guarantee — that is exactly why every setup ships with both Plan A and Plan B. Not financial advice.
WHY THESE PARTS BELONG TOGETHER
The volume profile and the shape classification are inseparable here. The profile alone tells you
where volume accumulated; the classification into P, b and D shapes is what turns that distribution
into a statement about who is trapped and where the day is likely to go. A P shape and a b shape can
contain identical volume and mean the opposite thing - which is only visible once the profile is
read as a letter rather than as a histogram.
Indicateur

Liquidity HeatmapLiquidity Heatmap – POC and Value Area.
A rolling volume-density profile rendered directly onto the price chart. Over a configurable lookback window the indicator distributes each historical bar's volume across every price bin its high-low range covered, then draws the resulting distribution as color-graded horizontal lines at each bin's midpoint. Point of Control and Value Area (70 % of total volume) are computed automatically, and a compact right-side histogram mirrors the profile in the future-offset zone. Built for intraday and swing traders who want a live, minimal read of where the market actually did business — the real liquidity anchors, not manual pivots.
How it works:
The indicator recalculates every N bars (default 5). On each recalc it finds the highest and lowest price of the lookback window, splits that range into a configurable number of bins (default 40), and iterates through every bar in the window. For each bar its volume — or a unit weight if volume weighting is disabled — is added to every bin whose price range the bar crossed. The result is a density array: the more time price stayed inside a bin and the higher the volume of those bars, the larger its density value. Bins are drawn as thin horizontal lines at their midpoints, with color and transparency scaled by the ratio of bin density to peak density.
The Point of Control is the bin with the largest total. Value Area is grown outward from POC, alternately taking whichever adjacent side holds more volume, until 70 % of the entire distribution is covered — VAH becomes the upper boundary of that region and VAL the lower. A right-side density histogram in the chart's offset zone re-renders the same profile in bar-chart form, and the level labels (POC / VAH / VAL) sit past the histogram so they never overlap the main heatmap. The information panel in the top-right corner shows the numeric price of each level and its signed percentage delta to the current close, color-coded green when the level sits above price, red when below, gray at parity.
What it calculates:
- Volume density per price bin over the lookback window
- POC — Point of Control, the bin with peak accumulated volume
- VAH — Value Area High, upper boundary of the 70 % volume region
- VAL — Value Area Low, lower boundary of the 70 % volume region
- Signed delta from current close to POC / VAH / VAL, in percent
Key features:
- Rolling recalculation every N bars for tunable CPU / responsiveness balance
- Volume weighting (default) or touch-count mode as a per-price frequency map — useful when volume data is unreliable
- Four-stop plasma color gradient (deep navy → violet → magenta → amber), every stop user-overridable via input.color
- Constant 1-pixel line width across all bins; visual weight is carried entirely by color intensity and transparency
- POC solid line and label placed past the offset histogram for readability
- VAH / VAL dashed lines extended all the way to their labels so the eye follows the level continuously
- Compact right-side density histogram in the future-offset area, mirroring the main profile in bar-chart form
- Top-right information panel with POC / VAH / VAL price and signed percentage delta to the current close, colored by side (green above / red below / gray at parity)
- Independent visibility toggles for POC and Value Area
- Adaptive bin geometry — resolution scales automatically with the price range of the lookback window
- Runs on any timeframe and any instrument; no external data sources required
Who it's for:
Intraday scalpers, swing traders, order-flow and Market Profile practitioners who need to see the true volume anchors of the current regime instead of hand-drawn horizontals. The color-graded strips make dominant liquidity walls, thin gaps and Value Area boundaries visually obvious at a glance, so attention goes to execution rather than to marking up the chart. Indicateur

Futures Volume Profile - CFD ChartsCFD charts only show broker tick volume, which does not represent real market
participation. This indicator pulls REAL exchange volume from the matching
futures contract and builds a volume profile directly on your CFD chart.
What makes it original: standard volume-profile tools weight by the chart's
own (tick) volume. This one maps futures contract volume into CFD price
coordinates (price = CFD, weight = futures), accumulates the profile
incrementally so month anchors work without lookback limits, and can anchor
the session to the futures trading day instead of CFD broker midnight.
How it works:
- The futures contract is auto-detected from the chart symbol (DAX/GER40 ->
FDAX, NAS100 -> NQ, US30 -> YM, UK100 -> Z, US500 -> ES), or set manually.
- Each chart bar's price range is split into zones; the futures volume of that
bar is distributed across the zones it covers (price = CFD coordinates,
weight = futures volume — so the basis offset between CFD and futures is
handled naturally).
- The profile accumulates incrementally per anchor period (session/week/month)
and resets at the period change. POC (red), VAH/VAL (blue, dashed) and the
histogram update live.
- Optional "Daily anchor = futures trading day": the session reset fires at
the futures day change instead of the CFD broker midnight, so the profile is
anchored identically whether you chart the CFD or the future itself.
- Bars without futures data (e.g. overnight hours of a 24h CFD) contribute
nothing — mixing tick volume with contract volume would distort the profile.
The source label warns you when no futures data is available.
How to use it: treat POC/VAH/VAL as the real participation levels behind your
CFD chart — acceptance above the value area supports continuation, a rejection
back inside favors rotation toward the POC. Thick zones (HVN) act as magnets
and consolidation areas, thin zones (LVN) tend to be traversed quickly, which
makes them useful stop and target references. Zone width is ATR-derived by
default or fixed in points.
Indicateur

Liquidity Trail Matrix [WillyAlgoTrader]📊 Liquidity Trail Matrix (LTM) is an overlay trend-following system that combines a four-band proportional ATR trailing stack, a 5-factor retest quality score (0–100), a non-repainting higher-timeframe bias filter, a range-distributed volume profile of the current trend segment (POC / Value Area / HVN / LVN), and a full trade engine with wick-anchored stops, three R-multiple targets, break-even automation and honest session statistics — all in one indicator.
The core insight: a single trailing stop line gives you a binary answer — "in trend" or "flipped". But price interacts with the liquidity zone around the trail in layers: shallow pullbacks, deep sweeps, and full reversals all look different. LTM replaces the single line with a graded four-band matrix, scores every pullback-and-reclaim by depth, candle quality, volume, higher-timeframe alignment and trend maturity, and overlays where volume actually accumulated during the current trend leg — so you can see whether a retest is landing on real acceptance (HVN / POC) or falling into a volume vacuum (LVN).
Works on all markets (crypto, forex, stocks, indices, commodities) and all timeframes. On zero-volume symbols the profile automatically switches to a range-weighted proxy.
🧩 WHY THESE COMPONENTS WORK TOGETHER
A trailing stop alone tells you the trend direction but nothing about entry quality — every touch of the line looks the same. A volume profile alone shows you where volume traded but has no concept of trend regime or entry timing. A retest signal alone fires on any bounce, whether it happens in a mature trend with higher-timeframe support or in the dying bars of an exhausted move. Used separately, these tools leave you guessing.
LTM chains them into one pipeline:
ATR band stack → trend flip detection → pullback depth measurement → 5-factor quality scoring → HTF bias confirmation → trade engine (entry / SL / TP / BE) → segment volume profile context → session outcome tracking
The band stack defines the trend and, critically, grades how deep each pullback penetrates (Band 1 = shallow, Band 4 = extreme). That depth becomes the largest single component of the retest score. The score is then adjusted by the reclaim candle's close location, relative volume, trend age, and the higher-timeframe EMA-50 bias — five independent dimensions that a plain trailing stop cannot see. Every confirmed signal is handed to the trade engine, which places a structure-aware stop, three risk-multiple targets and manages break-even. Meanwhile the volume profile is rebuilt from the exact flip bar of the current trend, so POC, Value Area and LVN levels always describe this leg — telling you whether your entry sits on volume acceptance or in a vacuum. Finally, every closed trade feeds the on-chart statistics, so the dashboard shows how this exact configuration has behaved on this exact chart.
Remove any link and the chain breaks: without band depth there is no meaningful score; without the score every bounce is a signal; without the segment-anchored profile the volume context is stale; without the trade engine the signals have no defined risk; without stats you never learn whether the settings fit the instrument.
🔍 WHAT MAKES IT ORIGINAL
1️⃣ Proportional four-band trail geometry — spacing that scales with width.
Most multi-line trails use fixed offsets (base, base+1, base+2 ATR). LTM computes every band as a proportion of the base multiplier:
Band K distance = base × (1 + K_offset × step), giving four multipliers:
— m1 = base
— m2 = base × (1 + step)
— m3 = base × (1 + 2 × step)
— m4 = base × (1 + 3 × step)
With the default Balanced preset (base 4.0, step 0.25) that yields 4.0 / 5.0 / 6.0 / 7.0 ATR. Because spacing is proportional, the geometry of the stack stays visually and behaviorally consistent whether you run tight Scalping bands (2.5 × ATR, step 0.20) or wide Deep Trend bands (6.0 × ATR, step 0.30). Each band ratchets independently (max-lock in uptrends, min-lock in downtrends) and never loosens.
Why this matters: fixed +1/+2/+3 offsets make the stack proportionally "fat" at small base values and "thin" at large ones — proportional spacing keeps pullback depth grading meaningful at any width.
2️⃣ Selectable flip depth — you choose which band defines a reversal.
The trend flips only when price closes beyond a user-chosen band from the previous bar: Fast (Band 2), Balanced (Band 3, default) or Deep (Band 4). Comparing against the previous bar's band value prevents same-bar feedback between the flip and the band update. A warm-up guard (max(3 × ATR length, 60) bars) suppresses all signals until the ATR stack is statistically stable.
Why this matters: flip sensitivity becomes an explicit, single-purpose setting instead of an accidental side effect of band width.
3️⃣ 5-factor retest quality score (0–100) — every signal explains itself.
When price touches any band and then reclaims Band 1 with a directional candle inside the retest window (default 8 bars), LTM computes:
— 📐 Pullback depth (max 25) : Band 2 touch = 25, Band 3 = 18, Band 1 = 15, Band 4 = 10. The maximum touched depth during the pending window is used. Note the deliberate non-linearity: Band 2 scores highest — deep enough to reset liquidity, not deep enough to threaten the trend. Band 4 sweeps score lowest because they often precede full reversals.
— 🕯️ Reclaim candle (max 20) : close location value CLV = (close − low) / (high − low) for longs (mirrored for shorts). CLV > 0.7 → 20 points, > 0.5 → 12, else 5. A reclaim that closes near its extreme shows commitment.
— 📊 Volume (max 20) : current volume vs. the previous bar's 20-period SMA — the spike must not dampen itself by inflating its own average. Volume > 1.2 × baseline → 20, > 1.0 × → 12, else 5. Symbols without volume data receive a neutral 12.
— 🧭 HTF bias (max 20) : aligned with the higher-timeframe EMA-50 direction → 20, no HTF data → 10, against bias → 0.
— ⏳ Trend age (max 15) : 10–150 bars into the trend → 15 (mature, established), under 10 bars → 8 (unproven), over 150 → 5 (aging).
Signals print only when the total meets the Min Retest Score (default 80) and the shared anti-whipsaw cooldown (default 5 bars, deliberately shared across both directions) has elapsed. Every diamond label shows the score, and its tooltip breaks down all five components — no black-box signals.
4️⃣ Non-repainting higher-timeframe bias.
HTF bias compares the higher timeframe's previous closed bar close against its EMA-50, requested with confirmed-bar indexing so the value never changes retroactively. Bias is a soft score component (0/10/20 points), not a hard filter — counter-bias signals can still print if the other four factors are strong enough.
5️⃣ Segment volume profile — range-distributed, anchored to the live trend leg.
The profile is rebuilt on the last bar from the exact flip bar of the current trend (capped by Max Profile Bars, default 500) — no arbitrary lookback padding. Accumulation is range-distributed: each bar's volume is split across every price bin its high–low range overlaps, weighted by overlap fraction:
bin_volume += bar_volume × overlap(bin, bar_range) / (bar_high − bar_low)
This shows where volume actually traded, not where bars happened to close. From the histogram LTM derives:
— 🟡 POC — the highest-volume bin of the segment, drawn with price and volume label. The strongest magnet / defense level of this leg.
— 📦 Value Area (70%) — expanded symmetrically from POC by always adding the larger neighboring bin until 70% of segment volume is enclosed. VAH / VAL edges act as dynamic S/R.
— 📈 HVN — local volume peaks ≥ 0.55 × POC volume (configurable): acceptance shelves where price tends to stall.
— 🕳️ LVN — local troughs ≤ 0.30 × POC volume inside the Value Area (configurable): volume vacuums that price tends to travel through quickly. Each LVN is labeled and feeds a dedicated break alert.
On symbols with no volume feed (forex, some CFDs) the engine substitutes a true-range proxy per bar, so the profile stays structurally meaningful instead of failing.
6️⃣ Trade engine with strict signal-trade parity.
Every confirmed signal (scored retest or trend flip) acts, with unambiguous rules:
— flat → open a position in the signal direction
— opposite position → reverse (close and enter the new direction on the same bar)
— same-direction position → ignored (no pyramiding, no stop tampering)
There are exactly four closure paths: SL hit, break-even stop-out, TP3 touch, or reversal by an opposite signal. Hit detection uses three safety guards: an entry-bar guard (SL/TP are never evaluated on the entry bar itself), a pessimistic same-bar rule (if a bar touches both SL and a TP, the SL wins — statistics never get the benefit of the doubt), and a break-even latency rule (a stop moved to break-even mid-bar cannot trigger on that same bar — the engine checks against the bar-start stop value).
7️⃣ Wick-anchored stop-loss mode.
Two SL modes at entry:
— Wick-Anchored (default) : SL = signal bar's wick extreme ± 0.25 × ATR buffer, with a minimum distance of 0.5 × ATR enforced. The stop hides behind the structure that produced the signal instead of floating at an arbitrary distance.
— ATR : classic fixed SL Multiplier × ATR from entry.
TP1 / TP2 / TP3 are pure risk multiples of the actual SL distance (defaults 1R / 2R / 3R), so the reward structure automatically adapts to how much room the stop needed. Four risk presets (Conservative 2.5 × ATR SL, TP 1/2/4R; Balanced 1.5, TP 1/2/3R; Aggressive 1.0, TP 1.5/2.5/4R; Scalping 0.8, TP 0.8/1.5/2R) plus full Custom control. Optional break-even moves the stop to entry after TP1.
8️⃣ Honest session statistics with a fixed win definition.
A closed trade counts as a win only if TP1 was touched before closure — including break-even stop-outs after TP1 (you banked at least 1R or protected the position). Everything else is a loss, including reversals that never reached TP1. The dashboard shows closed trades, W/L, win rate with a ▰▱ gauge, and a "Form" strip of the last 10 outcomes. Stats are session-scoped and reset on chart reload — this is transparent live tracking of the current settings on the current chart, not a backtest report.
9️⃣ Trend P&L tracker and theme-aware visual system.
An optional floating label follows price in real time and shows the directional % move since the current trend flip (a falling bear trend shows positive %), anchored by a dotted baseline at the trend start price. The label turns red when the trend is under water. The entire visual layer — band transparencies, heatmap fills, dashboard, profile, SL/TP palette — has separate Dark and Light calibrations (Auto-detected from the chart background), because bright hues that look right on dark charts wash out on white ones. TP lines recolor to solid teal with a ✓ when touched; the SL line dims and the entry label annotates "→ SL (BE)" when break-even activates. SL/TP lines persist after the trade closes as a visual record until the next entry replaces them.
⚙️ HOW IT WORKS — CALCULATION FLOW
Step 1 — Band geometry: The preset (or Custom inputs) resolves the base multiplier and proportional step; four multipliers m1–m4 are derived and multiplied by ATR (default length 13).
Step 2 — Ratcheting trail: In an uptrend each band only rises (max-lock); in a downtrend only falls (min-lock). On a flip the whole stack re-seeds on the opposite side of price.
Step 3 — Flip detection: A close beyond the previous bar's value of the chosen flip band (2/3/4) reverses the trend state. Flip labels print on confirmed bars after the warm-up period.
Step 4 — Pullback tracking: Any touch of Band 1–4 against the trend arms a pending retest with its maximum depth, valid for the retest window; pendings decay each bar and are voided on a flip.
Step 5 — Reclaim and scoring: A directional close back beyond Band 1 triggers scoring: depth (25) + candle (20) + volume (20) + HTF bias (20) + trend age (15). Score ≥ threshold and cooldown elapsed → confirmed signal on bar close.
Step 6 — Trade engine: The signal opens or reverses a position; SL is placed (wick-anchored or ATR), TP1–TP3 are projected as risk multiples; break-even, TP recolors and the four closure paths are managed bar by bar with pessimistic resolution.
Step 7 — Segment profile: On the last bar the profile is rebuilt from the flip bar: range-distributed accumulation → POC → 70% Value Area expansion → HVN/LVN detection → drawing.
Step 8 — Reporting: The dashboard updates trend state, signal state, profile levels, live trade card and session statistics; alerts fire on bar close in within-bar chronological order (management → closures → reversal → entries → info).
📖 HOW TO USE
🎯 Quick start:
1. Add the indicator to your chart and pick a Band Width Preset: Scalping for 1–15M, Balanced for most timeframes, Deep Trend for D–W position trading.
2. Set the Higher Timeframe Bias one or two steps above your chart (e.g. 1H while trading 15M).
3. Choose a Risk Preset that matches your style, or leave Balanced.
4. Watch the dashboard: Trend + HTF Bias aligned means you only consider signals in that direction with full conviction; the retest diamonds do the timing.
5. After 15–20 closed trades, read the Stats section and tune Min Retest Score up (fewer, cleaner signals) or down (more signals) for your instrument.
👁️ Reading the chart:
— 🟢 / 🔴 Band stack + heatmap = the liquidity trail zone; the deeper the fill, the closer price is to a trend flip.
— ◆ diamond with a number = confirmed scored retest entry (the number is the 0–100 quality score; hover the tooltip for the full component breakdown).
— ▲ / ▼ FLIP = confirmed trend reversal through the chosen flip band.
— Long ▲ / Short ▼ = trade entry taken by the engine on a flip (printed when there is no retest diamond on the same bar, so every entry is visibly marked).
— ENTRY / SL / TP1–TP3 lines = the live trade card; TP lines turn solid teal with ✓ when touched; a dimmed SL with "→ SL (BE)" on the entry label means the stop sits at break-even.
— 🟡 POC line = highest-volume price of the current trend leg; dashed VAH/VAL = Value Area edges; LVN labels = volume vacuums inside the Value Area.
— ▲ +X.XX% floating label (optional) = real-time directional P&L of the current trend since the flip.
📊 Dashboard fields:
— Trend / Age : direction of the band stack and bars since the last flip.
— HTF Bias : higher-timeframe EMA-50 direction (soft score component).
— Signal : current engine position — LONG, SHORT or Wait.
— Last signal : most recent event, its score, and bars elapsed.
— POC / VA High / VA Low : live segment profile levels.
— Entry / SL / TP1–TP3 / R:R / SL Dist % : the open trade card ("BE @" marks a break-even stop; ✓ marks touched targets); collapses to one row when flat.
— Trades / W-L / Win rate / Form : session statistics; ▰ = win, ▱ = loss, newest on the right.
🔧 Tuning guide:
— Too many weak signals: raise Min Retest Score toward 85–90, or increase Signal Cooldown.
— Too few signals: lower Min Retest Score toward 55–65, or widen the Retest Window to 10.
— Whipsaw flips on a choppy symbol: switch Flip Band to Deep (Band 4) or move to the Deep Trend preset.
— Flips lag too far behind on fast moves: Flip Band → Fast (Band 2) or the Scalping preset.
— Stops feel too tight / too wide: switch SL Mode between Wick-Anchored and ATR, or change the Risk Preset; on volatile symbols prefer Conservative.
— Profile looks coarse on long trends: raise Profile Rows to 50+ and Max Profile Bars toward 800.
— Counter-trend retests keep printing: set an explicit Higher Timeframe Bias — counter-bias signals lose 20 points and rarely clear a high threshold.
⚙️ KEY SETTINGS
⚙️ Trend Engine:
— Band Width Preset (default Balanced): Scalping 2.5 × ATR / step 0.20, Balanced 4.0 / 0.25, Deep Trend 6.0 / 0.30, or Custom.
— Base Multiplier (default 5.0) and Band Spacing (default 0.25): manual geometry, active in Custom preset only.
— ATR Length (default 13): lookback for band-width ATR.
— Source (default close): price series for trailing and flips.
— Flip Band (default Balanced / Band 3): which band a close must breach to flip the trend.
— Higher Timeframe Bias (default empty = chart TF): HTF for EMA-50 bias scoring.
🎯 Signals:
— Min Retest Score (default 80): 0–100 quality threshold for retest diamonds.
— Retest Window (default 8 bars): how long a band touch stays armed for a reclaim.
— Signal Cooldown (default 5 bars): minimum spacing between signals, shared across directions.
📦 Volume Profile:
— Show Segment Volume Profile (on), Profile Rows (30), Profile Width (34 bars), Max Profile Bars (500).
— Show POC (on), Show Value Area 70% (on), Show HVN / LVN Levels (on), Profile Label Size (Small).
🛡️ Risk Management:
— Risk Preset (default Balanced): Conservative / Balanced / Aggressive / Scalping / Custom.
— SL Mode (default Wick-Anchored): structure-aware wick stop vs. fixed ATR distance.
— ATR Length (Risk) (14), SL Multiplier (1.5), TP1 / TP2 / TP3 Multipliers (1.0 / 2.0 / 3.0 × risk) — Custom preset.
— Break-Even After TP1 (on): stop moves to entry once TP1 is touched.
— Show SL/TP Lines / Labels / % Distance and per-line style controls (Entry dotted, SL solid, TP dashed by default).
🎨 Visual:
— Theme (Auto / Dark / Light), Show Trail Bands , Show Band Heatmap Fill , Show Retest Signals , Show Flip Labels , Show Trend P&L Tracker (off by default), label size controls, watermark toggle, Bull / Bear color pickers.
📊 Dashboard:
— Show Dashboard (on), position (5 anchors), font size, and independent toggles for the Market, Profile, Trade and Stats sections.
🔧 Advanced:
— HVN Threshold (default 0.55 × POC volume): minimum relative volume for an acceptance node.
— LVN Threshold (default 0.30 × POC volume): maximum relative volume for a vacuum node.
🔔 ALERTS
— 🟢 LONG ENTRY / 🔴 SHORT ENTRY — ticker, timeframe, price, signal score, SL, TP1–TP3, R:R. Plain text or JSON webhook format ({"action":"buy"...}) for bot integrations.
— 🎯 TP1 / TP2 / TP3 HIT — target touches with prices (optional).
— 🛡️ BREAK-EVEN — stop moved to entry after TP1 (optional).
— 🛑 SL HIT / BE STOP-OUT — stop-loss trigger with direction, entry and stop prices; a distinct BE variant when the stop was at break-even.
— 🔄 REVERSAL — position reversed by an opposite signal, with the closed trade's outcome (after / before TP1).
— ▲ / ▼ TREND FLIP — informational flips that did not open or reverse a trade.
— ⚡ LVN BREAK — a close crossing a Low Volume Node of the live segment profile (price entering a volume vacuum often accelerates).
All alerts fire once per bar close. Alerts are ordered by within-bar chronology: trade management → closures → reversal → new entries → informational.
⚠️ IMPORTANT NOTES
— 🚫 No repainting. All signals, entries and alerts are confirmed on bar close (barstate.isconfirmed). The trend flip compares against the previous bar's band value. The HTF bias uses the higher timeframe's previous closed bar, so its value never changes retroactively. A warm-up guard suppresses signals for the first max(3 × ATR length, 60) bars.
— 📐 The segment volume profile is a live construct. It is redrawn on the last bar for the current trend leg and evolves as the leg grows — this is by design (it describes the present segment), and historical profile states are not preserved.
— 📊 Session statistics reset on chart reload. They are transparent live tracking of the current settings on the current symbol and timeframe — not a backtest, and past performance does not guarantee future results.
— ⚖️ Same-bar ambiguity is resolved pessimistically. If one bar touches both a stop and a target, the stop wins in the statistics. Intrabar sequence cannot be known from OHLC data, so the engine never gives itself the benefit of the doubt.
— 🕳️ Zero-volume symbols use a range-weighted proxy for the profile, and the volume score component defaults to a neutral value — profile shapes on such symbols reflect price dwell time, not traded volume.
— 🛠️ This is an analysis and trade-planning tool, not an automated trading bot. It detects trend state, scores retests, projects stops and targets, and tracks outcomes — trade decisions remain yours.
— 🌐 Works on all markets and timeframes. Indicateur

Footprint Master Pane [ZynAlgo]Overview
ZynAlgo Footprint Master Pane is an order-flow and footprint-style volume analysis indicator designed to help traders study micro-liquidity behavior inside each candlestick.
The tool displays intrabar volume-side activity as a matrix-style Footprint Profile in a separate pane. Instead of only observing open, high, low, and close movement, traders can study where buying and selling pressure appears across different price levels inside recent candles.
This can help users evaluate:
Intrabar volume concentration
Buy-side and sell-side pressure
Delta behavior inside each candle
Point of Control placement
Liquidity concentration at candle highs and lows
Potential absorption or exhaustion behavior
Chart example:
How to Read the Footprint Matrix
Each data block on the chart is displayed in this format:
Bid | Ask
Price Level
The price level represented by that row of the footprint matrix.
Bid - Left Number
Represents sell-side volume activity classified by the script for that price level.
Ask - Right Number
Represents buy-side volume activity classified by the script for that price level.
Background Color - Heatmap
The higher the volume at a price level, the stronger the heatmap intensity.
Default color logic:
Cyan: buy-side activity is dominant at that price level.
Pink: sell-side activity is dominant at that price level.
Gray: low or inactive liquidity area.
Key Highlights
POC - Point of Control
The Point of Control is the price level with the highest total trading volume within the selected candlestick.
It is displayed as the gold zone and represents the main volume concentration area for that candle.
Footer Metrics
The bottom of each footprint column displays summary data for the candle.
Delta
Delta represents the net difference between buy-side and sell-side volume activity.
A positive delta indicates that buy-side pressure is dominant. A negative delta indicates that sell-side pressure is dominant.
Total Volume
Total volume represents the combined volume activity for the entire candlestick.
Configuration Settings
1. Order Flow Engine
Intrabar Timeframe
Defines the lower timeframe used by the tool to extract intrabar volume information.
Lower intrabar timeframes can provide more detailed footprint construction, while higher intrabar timeframes may produce a smoother and lighter display.
Stack Levels - Height
Controls how many price levels each candlestick is divided into.
Higher values:
Show more footprint detail
Create a finer price-level breakdown
May increase chart processing load
Lower values:
Create a simpler footprint view
Reduce visual density
May run more smoothly on slower charts
Auto Detect Asset - Smart Grid
When enabled, the system attempts to measure the current asset's volatility and calculate an appropriate grid size automatically.
This is useful when switching between markets such as gold, crypto, forex, indices, or stocks.
Manual Tick Size
When Auto Detect Asset is disabled, users can manually define the tick or grid size.
This can be useful when a symbol requires a custom footprint scale.
2. Pane Visuals
Recent Bars to Render
Controls how many recent candles are displayed in detailed footprint form.
Limiting the number of rendered candles can help keep the chart responsive on TradingView.
Color Customization
Users can customize the colors for:
Buy-side activity
Sell-side activity
Point of Control zone
Heatmap display
This allows the footprint pane to match different chart themes and visual preferences.
Basic Analytical Applications
1. Absorption Observation
When price approaches a key support or resistance area, footprint data can help traders study whether one side of the market is being absorbed.
For example, if a bearish candle shows positive delta and large volume near the lower part of the candle, it may suggest that sell pressure is being absorbed by buy-side participation.
2. POC Migration
Point of Control migration can help traders evaluate where value is shifting across consecutive candles.
In an uptrend, POC zones that continue to migrate higher may suggest that market participation is accepting higher prices.
3. Liquidity at Highs and Lows
Traders can inspect volume activity near candle highs and lows to study exhaustion behavior.
For example, if price reaches a new high but the top levels show very low participation, that may indicate weaker continuation pressure.
How to Use
Add the indicator to the chart.
Choose an intrabar timeframe suitable for the chart timeframe and market.
Adjust stack levels to control footprint detail.
Use the heatmap to identify price levels with stronger participation.
Monitor the POC to study where volume concentration forms inside each candle.
Compare delta and total volume to evaluate buy-side or sell-side pressure.
Combine footprint observations with market structure, support and resistance, liquidity zones, and risk planning.
Best Use Cases
This indicator may be useful for:
Order-flow style analysis
Footprint chart reading
Intrabar volume analysis
Delta observation
Point of Control tracking
Absorption study
Exhaustion analysis
Liquidity-zone confirmation
Limitations
Footprint values depend on the intrabar data available from TradingView for the selected symbol and timeframe.
The Bid and Ask display is based on the script's volume-side classification logic and should be interpreted as analytical volume-side data.
Lower intrabar timeframes may provide more detail but can increase processing load.
A footprint imbalance does not guarantee price continuation or reversal.
The indicator does not provide automatic trade entries, exits, or position management.
Past order-flow or footprint behavior does not guarantee future results.
Important Note
This indicator is an analysis tool only. It does not provide financial advice, investment advice, or guaranteed trading results. Users are responsible for their own trading decisions and risk management.
Indicateur

Auction & Liquidity Command Center Volume Profile, MeasuredAuction & Liquidity Command Center — Volume Profile, Measured
The levels traders already use — prior POC, value area, naked POCs, prior day high/low, session AVWAP, HVN/LVN — each scored by its measured reaction on this chart: how often price rejects vs breaks, and what the fade has been worth in R. Levels with evidence, not levels with vibes. Never a buy or sell.
What it does
Every structure tool draws levels. None of them measures what happens when price gets there. This tool builds the session-anchored auction map with profile-grade accuracy, detects qualified touches of every level, resolves each touch through a triple-barrier outcome, and pools the results by level TYPE into a live scoreboard: pPOC +0.01R · rej 50% · n156. You see not just where the levels are, but which kinds of levels have actually meant something on this chart — and which are coin flips.
The components, and why they are combined
This is a deliberate synthesis of four parts, each covering the previous one's weakness:
A profile-grade level engine (Market Profile — J. P. Steidlmayer). Nine level types from the session volume-at-price profile and session extremes: prior POC, prior VAH/VAL (classical two-row 70% expansion), naked POCs (prior POCs never revisited), prior day high/low, the session's anchored VWAP, and HVN/LVN volume nodes (prominence-filtered local extremes). Accuracy choices: each bar's volume is distributed range-proportionally across the rows it overlaps (not binned at one point); POC ties break toward the session center. Weakness left open: a drawn level says nothing about whether it matters.
A qualified-touch detector. A level must be ARMED — price fully away from it by at least k×ATR — before a touch of it can count, and it disarms after every touch. Chop sitting on a line cannot enter the record. Approach direction is stored with every event. Weakness left open: a touch is not an outcome.
Triple-barrier outcome resolution (outcome labelling — M. López de Prado). From each touch: REJECT if price moves m×ATR back the way it came first, BREAK if it moves m×ATR through first, TIMEOUT after T bars. Purity rules: barriers are fixed at the ATR of the touch moment; evaluation starts the bar after the touch; a bar hitting both barriers is a timeout, never a guess. Weakness left open: one level's history is n = 1.
Per-TYPE pooling with honesty gates. Statistics pool by level type, never by individual line — a type is a real sample. A type shows no score until a minimum number of its touches have resolved (default 20); until then it reads BUILDING with its count. Timeouts are reported in n but excluded from the reject/break ratio. Fade expectancy = (rejects − breaks) / (rejects + breaks), in R.
How to read it
Rails are colored and styled by type (solid profile levels, dashed day levels, dotted volume nodes, violet naked POCs); each label carries its type's live score or its BUILDING count.
Evidence on the chart: a gray • at every qualified touch, then ○ (teal) where the touch rejected and ✕ (amber) where it broke. Every number on the scoreboard can be audited against the chart.
Dashboard: nearest level and its score, with a plain-language verdict (tends to hold / coin flip / tends to break) so the read needs no statistics background; per-type scoreboard (fade R · reject % · n) for all nine types; touch counts; the exact engine settings in the NOTE row.
Honest expectations: most types on most charts score near zero — that is the truthful baseline, and seeing it protects you from folklore. The value is in the exceptions this chart's own history reveals (for example, day extremes often carry a modest positive fade expectancy while POC retests are a coin flip), and in knowing the difference.
How to use it
Use the scoreboard to weight your own playbook: give more respect to touches of types that have measured well here, less to types that grade as noise — and size accordingly. The "Touch of a MEASURED level" alert fires only when price reaches a type with a real sample behind it. This is context about where price reactions have had structure — never a direction, never an entry signal.
Non-repaint & universality
Profiles, POC/VA/nodes and day levels commit only at session close on confirmed bars; touches and outcomes resolve on confirmed bars; the AVWAP is cumulative within its session. Nothing repaints. The script requests no external data of any kind — no lower timeframes, no security calls — so it runs identically on every plan and every symbol with volume.
Use on any market
Volume source, profile rows, value-area %, node thresholds, arm distance, barriers and sample gates are all inputs. Defaults suit liquid intraday index futures; intraday timeframes give the engine the most touches to learn from.
Originality & credits
The synthesis — a range-proportional session profile, qualified-touch detection, touch-time-ATR triple-barrier outcomes, and per-type pooled reaction statistics displayed as a live scoreboard — is original work for this publication. Concept credits: Market Profile / point of control / value area — J. Peter Steidlmayer; naked (virgin) POC — market-profile literature; anchored VWAP — as popularised in modern trading literature; triple-barrier outcome labelling — M. López de Prado. Implementation and charting design are the author's own.
Disclaimer
Research and education only. NOT financial advice, NOT a signal service, NOT a guarantee of future results. Reaction statistics are empirical frequencies from this chart's limited history, pooled per level type; they change with regime and sample, and a positive expectancy is not a promise. Validate independently and manage your own risk. Indicateur
