MOYA Sessions & Volume Profile [RealSebastianMoya]Hello traders!
Introducing: "MOYA Sessions and Volume Profile"
This script rebuilds a full Volume Profile for any session length you choose — from a single Tokyo/London/New York session up to a full Yearly cycle — and layers on POC, Value Area High/Low, a live in-progress profile, and (new) real futures volume normalization for Forex/CFD charts.
But before getting into the settings, it's worth explaining where this way of reading the market comes from, because the indicator has no real value if you don't know what questions it's actually answering.
The Underlying Theory: Auction Market Theory
The market isn't a line going up or down. It's a continuous auction. At every moment, buyers and sellers are negotiating a "fair" price, and price moves searching for the level where both sides are willing to transact in volume.
This theory — originally developed for Market Profile by J. Peter Steidlmayer at the CBOT — starts from a simple idea:
Price tells you where the market moved. Volume tells you how much conviction was behind that move.
A regular candlestick chart only shows you the time sequence of price. A Volume Profile rotates that information 90 degrees and asks a different question at every price level: "how much actually traded here?"
The level with the most activity is the Point of Control (POC) — the price the market has "voted" for most often as fair.
The Two Market Regimes
Under this theory, the market constantly alternates between two regimes:
Balance / Equilibrium
Technical name: Balance, Rotational Value Area
What it means: Buyers and sellers accept a range and price rotates inside it without clear direction
Profile shape: Bell curve (D-Shape) — POC centered
Imbalance / Trend
Technical name: Imbalance, Trend Day, Directional Auction
What it means: One side (buyers or sellers) dominates and price refuses to rotate, moving away from the range
Profile shape: Spike (P-Shape or b-Shape) — POC at one extreme
Knowing which regime the market is in completely changes what a touch of the POC or a Value Area edge should mean to you. This is what many newer traders miss: they apply the same rule ("buy at VAL, sell at VAH") regardless of regime, and end up fading strong trends as if they were reversions.
Correct Terminology — What Each Thing Is Actually Called
Here's the real vocabulary used when trading with Volume Profile, so you know exactly which term to use and what each one means:
Levels
POC (Point of Control): the price with the highest traded volume in the session. It's the center of gravity of price.
VAH (Value Area High): the upper boundary of the zone where 70% (adjustable) of volume occurred.
VAL (Value Area Low): the lower boundary of that same zone.
Value Area (VA): the full range between VAH and VAL — the fair price zone accepted by the market.
Naked POC: a POC from a previous session that price has not yet returned to touch. These act as strong magnets because they represent unresolved business.
Price Behaviors
Mean Reversion: when price moves away from the POC but returns to it because the market is in balance. This is the dominant behavior inside an equilibrium regime.
Continuation: when price breaks a Value Area extreme and keeps moving in that direction without returning, because the market is in imbalance.
Rejection: price touches a level (VAH, VAL, or POC) and snaps back quickly, leaving a wick — a sign that level was defended.
Acceptance: price enters a zone and stays there, building new volume — a sign the market considers that new range fair.
Excess: a long, thin wick with no volume behind it — a sign of violent rejection of a price, typical at range extremes.
Breakout: when price exits the Value Area with force and increasing volume. If acceptance follows the breakout, it confirms as a trend start; if there's no acceptance, it's a false breakout (fakeout) and price returns to the range (this is mean reversion after a failed breakout attempt).
Double Distribution (B-Shape): when the profile shows two high-volume zones separated by a low-volume zone — indicates the market was in two distinct price agreements during the session, typical of a trend that paused midway.
On Buyers and Sellers
Classic Volume Profile doesn't directly measure who bought or sold (that's what Delta/CVD does, not part of pure profile reading), but dominance can be inferred by observing:
If the POC shifts upward session after session, buyers are defending higher prices, buyer control.
If the POC shifts downward session after session, seller control.
If the POC stays relatively fixed while volume grows, both sides are actively negotiating without ceding ground, balance, indecisive market.
How the Indicator Works Within This Theory
The script tracks session boundaries using exact timeframe change detection and rebuilds the price/volume grid every time a new session starts.
Each candle's volume is distributed across the price levels its high-low range actually touched (body/wick weighted model), so the profile reflects where price genuinely spent time and volume — not just where it closed.
Once a session closes, the script locates the POC and expands outward, level by level, until the configured percentage of total volume (default 70%) is captured — that boundary becomes your Value Area.
Rather than just showing you where price moved, this helps you answer:
Where did volume concentrate during the session?
Was the session accepted (balance) or rejected (imbalance)?
Where is the fair price zone for this period?
How does that zone line up against higher or lower timeframe context?
While a session is still forming, the script keeps its profile, POC, and Value Area updating in real time (Live Zone) — not just the last closed session — so you can react to developing structure instead of only analyzing it afterward.
Trading Scenarios — How This Is Actually Traded
These are the real scenarios where this reading applies. You add the chart; here's the logic behind each one.
Scenario 1 — Mean Reversion Inside Balance
Regime context: The previous session's profile shows a bell-curve shape (D-Shape), POC centered, and a wide Value Area that has stayed stable across several sessions. This indicates a market in balance.
What you see on the Volume Profile: Current price is drifting away from the POC toward the VAH without growing volume behind it (little real push).
Reading: Since we're in a balance regime, the move toward VAH is likely testing the edge of the range, not the start of a trend.
How it's traded: Look for a short on rejection at the VAH, targeting the POC. Stop above the VAH with a small buffer. This is the classic fade trade — and it only makes sense because the regime is balance; the same signal in a trending regime would be a trap.
Scenario 2 — Continuation After a Breakout With Acceptance
Regime context: Price breaks above the previous session's VAH. Instead of falling back, price stays above that level for several candles, and the new forming profile (Live Zone) starts building its own POC above the old VAH.
What you see on the Volume Profile: Acceptance — the market is actively trading in the new price range, not just passing through it.
Reading: This is evidence of directional imbalance — control shifted hands (likely to buyers) and a new Value Area is forming higher up.
How it's traded: Look for a long entry on the first pullback into the old VAH (which now acts as support — the classic resistance-to-support flip), targeting the next significant volume level from a higher timeframe (e.g., the weekly POC if you're trading on Daily). Stop below the old POC.
Scenario 3 — False Breakout (Fakeout) — Reversion, Not Continuation
Regime context: Price breaks below the VAL with a strong candle, but in the following session (or in the indicator's Live Zone) price returns inside the original Value Area without building new volume below.What you see on the Volume Profile: No acceptance — the new profile forming outside the range has very little volume compared to the prior profile, a sign nobody is defending that price.
Reading: The breakout was a liquidity grab, not a real regime change. The market is still in balance.How it's traded: Look for a long entry on the return inside the Value Area, targeting the POC and potentially the opposite VAH. This is the scenario where confusing "breakout" with "continuation" costs the most money — which is why the indicator's Live Zone is key: it lets you see in real time whether the new profile is gaining volume (real continuation) or staying empty (fakeout).
Scenario 4 — Double Distribution (B-Shape) — A Pause Inside a TrendRegime context: The session's profile shows two separate high-volume zones with a thin low-volume "neck" between them.
What you see on the Volume Profile: The market traded heavily in one range, then migrated and traded heavily again in another range, without spending much time in the middle.Reading: This typically occurs inside a trend that paused — two distinct price agreements in the same session, usually connected by a fast directional move (the low-volume "neck" is where price moved without resistance).
How it's traded: The low-volume neck (the thin part of the profile) is a low-liquidity zone — if price returns there, it tends to cut through quickly in either direction, not stay. It's not a zone to trade reversion; it's a zone to wait for price to cross through and react at the POC of whichever side it's heading toward.
Scenario 5 — Multi-Timeframe Confluence (the Indicator's Most Powerful Use)Regime context: You run the indicator on Weekly and see current price touching the weekly VAL. You switch to Daily and see a daily POC also forming right at that same level.
What you see on the Volume Profile: Two different timeframes coinciding at the same price — the "why" (weekly context) and the "when" (daily execution) are aligned.Reading: This confluence across timeframes is the highest-probability signal in the whole system, because it doesn't depend on a single profile — it depends on the market respecting the same level from two different time perspectives.
How it's traded: Take the entry on Daily (precise execution), with directional bias given by the weekly regime (if weekly price is in balance, trade the reversion toward the weekly POC; if weekly is in imbalance, trade continuation toward the next relevant volume level). Stop goes outside the daily Value Area; target is the weekly POC or the opposite VAH/VAL, depending on the identified regime.
Scenario 6 — Using Real Futures Volume to Confirm Regime on Forex/CFDRegime context: You're trading XAUUSD on your CFD broker. Your broker's tick volume is synthetic (it counts price changes, not real contracts), so a profile built on that volume can show a different shape than actual market activity.
What you see on the Volume Profile: With External Futures Volume enabled and auto-detect pointing to COMEX:GC1! (Gold futures), the profile now reflects real futures market participation, while price levels still come from your XAUUSD chart.
Reading: This matters especially when your broker's tick volume gives you a POC in one place and real futures volume gives you a POC somewhere else — the difference tells you that real institutional market activity sits at a different level than what your broker is showing.
How it's traded: Prioritize the POC/VA calculated with real futures volume over native tick volume when the two diverge, because regulated futures volume (CME/COMEX/NYMEX) is auditable and reflects real participation, while tick count only reflects your specific broker's activity.Summary — Why Use This IndicatorThis script is designed for traders who read the market through:Volume Profile and Point of Control / Value Area (Auction Market Theory)Market regime identification (balance vs. imbalance)Multi-timeframe confluenceReal vs. synthetic volume on Forex/CFD instruments
Because you can run the same profile logic across completely different session lengths — from a single hourly cycle to a full year — you can compare how conviction built across timeframes: does the Daily POC sit inside last week's Value Area? Is price accepted or rejected at last month's VAH? That layered context is where this script earns its keep.Note: every scenario assumes you identify the market regime (balance vs. imbalance) first before deciding whether to trade reversion or continuation — trading the wrong signal for the wrong regime is the most common cause of losses when using Volume Profile.
Features
56 Session Lengths — 1 to 55 Minutes (1m, 2m, 3m, 4m, 5m, 6m, 7m, 8m, 9m, 10m, 12m, 15m, 20m, 25m, 30m, 35m, 40m, 45m, 50m, 55m), Tokyo, London, New York, 1 Hour through 12 Hours, Daily through 7 Days, Weekly through 5 Weeks, Monthly through 7 Months, Quarterly, Yearly.
POC, VAH, VAL with lines and text labels.
HVN/LVN — detects multiple volume peaks and valleys per session, not just the single POC.
External Futures Volume — auto-detects the real related futures contract for your symbol (metals, forex, indices, energy, crypto).
Live Panel — POC, VAH, VAL, distance, VA position, active volume source.
Configurable Styling — independent colors, widths, and sizes for every element.
Open Source Attribution and Credits
In strict compliance with TradingViews House Rules regarding open-source code reuse, I explicitly credit and thank the original developer @LeviathanCapital for their open-source script "Market sessions and Volume profile - By Leviathan", which served as the structural foundation for the session isolation and baseline volume array logic in this indicator.
Significant Algorithmic Enhancements and Added Value:
While the primary mathematical grid expansion retains architectural roots from open source, this script introduces massive procedural improvements, structural upgrades, and new calculations developed entirely by me to transform it into an institutional-grade utility:
Automated External Futures Volume Normalization (Forex/CFD Context): Implemented a dictionary algorithm (getAutoFuturesTicker) to auto-detect and scale native tick charts against centralized futures markets (e.g., CME:6E1!, COMEX:GC1!, CME_MINI:NQ1!). This replaces synthetic broker data with authentic trading volume while maintaining local price scales.
Volume Nodes Engine (Multi-Peak HVN / LVN Detection): Developed an array scanning filter that runs on closed sessions to automatically isolate contiguous high/low volume anomalies. This effectively flags multiple supply/demand zones (like the humps of a double-distribution profile) beyond the baseline single POC.
Real-Time Live Zone Tracking: Integrated a dynamic recalculation engine for ongoing unclosed trading sessions, updating developing POCs, VAHs, and VALs seamlessly on the active bar state.
Interactive Live Dashboard Panel: Programmed a comprehensive on-screen status table displaying absolute values for POC/VAH/VAL, current distance from point of control, value area boundary status, and status indicators of the active volume feed.
Expanded Graphical and Period Customization: Redesigned aesthetic configurations, text label sizing, box boundary styles, and added resolution adjustments alongside line right-extensions.
Open Source Attribution and Credits
In strict compliance with TradingViews House Rules regarding open-source code reuse, I explicitly credit and thank the original developer LeviathanCapital for their work.
The original script "Market sessions and Volume profile - By @LeviathanCapital served as the logical foundation for the session isolation and baseline volume array logic in this indicator. All rights and original logical baselines remain under their respective ownership.
Chỉ báo






















