Supply and Demand Zones | Flux ChartsGENERAL OVERVIEW
Supply and Demand Zones indicator uses a simple but effective mechanism to find the most useful supply and demand zones on any chart. Most tools draw every zone they can find and leave the trader to sort through the clutter. This indicator does the opposite: it watches how price actually behaves at each zone and keeps only the levels that have earned attention.
The mechanism is straightforward. Each zone is built from a confirmed price swing, and from that moment it is tracked as a living object. Every time price returns, the indicator records what happened — a clean rejection (retest), a failed push-through that snaps back (also a retest), or a decisive break. From that record it computes one honest number, Held: the share of retests where the zone successfully pushed price away. A zone that has held four of five tests is immediately separated from one that keeps breaking.
That same track record then drives what you see. Instead of showing every zone, the indicator surfaces a small set of the most useful ones — ranked by how reliably they have held, how often they have been tested, and how close they are to current price. The result is a clean chart focused on the zones that have actually proven themselves, rather than a wall of boxes you have to filter by eye.
WHAT IS THE THEORY BEHIND THE INDICATOR?
Supply and demand trading is built on a simple idea: where price reversed sharply once, it often reacts again, because unfilled orders and trapped traders remain at that level. The problem is that not every zone is equal. Some levels are respected again and again; others break the first time they are tested. Most supply and demand tools draw every zone the same way and leave the trader to guess which ones still matter.
This indicator takes the position that a zone's history is more informative than its existence. A level that has been tested five times and held four of them is telling you something a fresh, untested level cannot. So instead of treating zones as static boxes, the indicator watches every interaction — bounces, failed breakouts, and clean breaks — and turns that record into a measurable hold rate. A zone earns its place on your chart by performing, not just by existing.
FEATURES
Finds the most useful zones — instead of drawing every zone, it tracks how each one behaves and surfaces only the levels that have proven themselves
Automatic zone detection — supply and demand zones are built from confirmed price swings, with boundaries sized by the average wick so each box covers the real reaction area
Per-zone track record — every zone carries its own data: how many times it has been retested, how many times it has broken, and how reliably it has held
Held statistic — each zone shows the share of its retests that successfully held, turning its history into one honest reliability number you can read at a glance
Retest tracking — every test of a zone is recorded and marked on the chart, including failed breakouts that snap back into the zone
Breakout & flip tracking — clean breaks are recorded, and the zone flips from supply to demand (or vice-versa) while keeping its full history
Strongest / Nearest ranking — shows the most useful zones, ranked by how reliably they have held, how often they have been tested, and how close they are to price
Clear, data-rich visuals — gradient zone fills, glowing retest markers, colour-coded flip segments, and a per-zone stats label that displays its retests, breakouts, and Held % right beside it
Clean-chart controls — minimum spacing hides near-duplicate zones, and a smooth fade-out dims zones as they drop off the list
Four alerts — retests and breakouts, on both supply and demand
ZONE DETECTION AND BOUNDARIES
What is a zone?
A zone is a price area drawn around a recent swing high or swing low. A swing high becomes a supply zone (an area sellers defended); a swing low becomes a demand zone (an area buyers defended). New zones are only created when they don't overlap an existing one, so the chart never stacks duplicate boxes on the same level.
Why does it matter?
Swings are where the market actually changed its mind, which makes them the most natural place to expect a future reaction. Building zones only from confirmed swings — and skipping overlaps — keeps the set of zones meaningful instead of cluttered. Clean, non-overlapping detection is the foundation everything else builds on: the track record and ranking are only as useful as the zones they start from.
How is it detected and calculated?
The indicator waits for a swing to confirm using the Swing Period: a high or low only counts once that many bars have printed on both sides of it. The zone's outer edge sits at the swing's extreme (the high for supply, the low for demand). The inner edge is set using the average wick of the candles around the swing, so the zone covers the real reaction area rather than a single thin line. Because a swing needs bars on both sides to confirm, each zone appears a fixed number of bars after the swing itself — a normal, non-repainting delay rather than a level that appears and disappears.
Settings
Swing Period — how many bars must confirm a swing on each side before it forms a zone. Higher = fewer, more significant zones; lower = more zones that react faster to price. Default 30.
Lookback — how far back the indicator looks for zones, in bars. Higher keeps older zones on the chart; lower focuses on recent price action. Default 2000.
RETESTS AND FAILED BREAKOUTS
What is a retest?
A retest is when price returns to a zone, touches it, and is rejected — closing back out on the same side it came from. This is the classic supply/demand reaction: price revisits the area and the zone pushes it away. A failed breakout — price pushing through the zone but then closing back inside it — is also counted as a retest, because the zone ultimately won.
Why does it matter?
Retests are the evidence that a zone is still active. A level that keeps rejecting price is one the market is clearly watching. Counting failed breakouts as retests is important too: a level that traps breakout traders and reclaims is often the strongest kind of level, and ignoring those events would understate a zone's true strength.
How is it detected and calculated?
On each closed bar, a zone is checked for a reaction: for a supply zone, price reaching into the zone but closing back below it counts as a retest; for a demand zone, reaching in but closing back above. To avoid over-counting when price lingers at a level, a Retest Cooldown requires a minimum number of bars between two counted retests on the same zone. Separately, if price closes clean through a zone and then closes back inside it on the next resolution, that failed breakout is recorded as a retest as well. All events are evaluated only on confirmed (closed) bars, so nothing is counted on an unfinished candle.
Settings
Retest Cooldown — waits this many bars before counting another test of the same zone, so price lingering at a level isn't counted as many separate retests. Default 3.
Retests (toggle + marker) — show or hide retest markers and choose their shape (Circle, Triangle, Cross, Diamond).
BREAKOUTS AND ZONE FLIPS
What is a breakout?
A breakout is when price closes decisively through a zone and keeps going, rather than being rejected. When a zone breaks, it flips: a broken supply zone becomes a demand zone, and a broken demand zone becomes a supply zone — the same idea as old resistance becoming new support. Crucially, the zone keeps its history through the flip; it doesn't start over.
Why does it matter?
A clean break is the opposite of a hold, and tracking it is what makes the Held statistic meaningful. The flip behaviour also reflects how these levels really work in practice — a level that breaks rarely disappears; it changes role. Keeping each zone's full history across flips means a level that has been a battleground through several cycles is shown as exactly that.
How is it detected and calculated?
When price first closes through a zone, the zone enters a pending state. The very next resolution decides what happened: if price closes through again, it is confirmed as a breakout and the zone flips its side; if price instead closes back inside, it is recorded as a failed breakout (a retest). This two-step confirmation avoids calling a breakout on a single bar that immediately reverses. Each flip also starts a new coloured time segment, so the zone's box visually records when it was supply and when it was demand across its life.
Settings
Breakouts (toggle + marker) — show or hide breakout markers and choose their shape. Off by default to keep the chart clean.
THE HELD STATISTIC
What is Held?
Held is the heart of the indicator. It answers a simple question: when price comes back to this zone, how often does the zone actually hold? It is shown on each zone's stats label as a count and a percentage, for example "Held: 4 (80%)" — meaning four of the zone's five retests successfully held.
Why does it matter?
This is the number that separates a level worth trading from one that just happens to be on the chart. A high Held % means the zone has repeatedly done its job; a low one warns you the level is leaky. Because it is measured from the zone's own history rather than assumed, it gives you an honest, at-a-glance read on reliability.
How is it detected and calculated?
After each retest, the indicator looks forward over the Hold Window — a set number of candles — and checks whether the zone was broken during that window. If the zone survived the window without a breakout, that retest counts as a hold. Only retests old enough to have a full window behind them are judged, so a very recent retest doesn't distort the number before its outcome is known. Held is then the count of successful holds, shown alongside its percentage of all retests.
Settings
Hold Window — after a retest, the zone must avoid a breakout for this many candles to count as a successful hold. Drives the Held stat and the Strongest ranking. Default 10.
STRONGEST AND NEAREST RANKING
What is the ranking?
Rather than crowd the chart with every zone it finds, the indicator shows a limited number per side and chooses which ones using one of two modes. Nearest simply shows the zones closest to current price. Strongest shows the zones that have most reliably held, weighted by how often they've been tested and how close they are to price.
Why does it matter?
Most charts have far more historical zones than are useful at once. Nearest is best when you care about the levels price is about to interact with regardless of their record. Strongest is best when you want the chart to surface proven levels — the ones that have repeatedly held — so your attention goes to the areas with the best track record.
How is it detected and calculated?
The Strongest score combines three things. Reliability is the zone's hold rate, but smoothed so a zone tested only once can't look perfect — its record is trusted more as it accumulates more tests. Evidence rewards zones that have been tested more often, with diminishing returns so one ancient zone doesn't dominate forever. Proximity favours zones closer to price. A small bonus is given to zones already on screen so the displayed list stays steady instead of swapping every bar. Nearest mode, by contrast, simply ranks by distance to price.
Settings
Rank By — Strongest (most reliable, weighted by tests and proximity) or Nearest (closest to price). Default Strongest.
Show — how many supply and how many demand zones to show at once; each side is counted separately. Default 5.
ZONE SPACING AND FADE-OUT
What are spacing and fade-out?
Two features keep the chart readable. Minimum spacing hides a zone that sits too close to one already shown, so you don't get several near-identical boxes stacked together. Fade-out smoothly dims a zone as it drops off the visible list, instead of having it vanish abruptly.
Why does it matter?
A clean chart is easier to act on. Spacing prevents visual clutter at congested levels, and the fade-out makes it obvious when a zone is no longer among the top picks without the chart jumping around distractingly.
How is it detected and calculated?
When selecting which zones to show, the indicator skips any candidate sitting within the Min Zone Spacing distance (a percentage of price) of a zone already chosen. When a previously shown zone is no longer selected, it is moved to a fade list and dimmed over a fixed number of bars before being removed. Drawing is also budgeted internally so the gradient zone fills always stay within the platform's object limits.
Settings
Min Zone Spacing (%) — hides zones sitting too close to one already shown, to keep the chart clean. Set to 0 to show every zone. Default 0.1%.
Supply / Demand colours — the colours used for supply and demand zones, their gradient fills, and their markers.
ALERTS
What alerts are available?
Bullish Retest — price bounced from a demand zone.
Bearish Retest — price rejected from a supply zone.
Bullish Breakout — price broke above a supply zone.
Bearish Breakout — price broke below a demand zone.
When do they fire?
Each alert fires on a confirmed bar at the moment the matching event is recorded, so you are notified of bounces and breaks as they are confirmed rather than on an unfinished candle.
IMPORTANT NOTES
All retests, breakouts and flips are evaluated only on closed (confirmed) bars, so events are not counted on an in-progress candle.
A breakout requires price to close through a zone and then confirm on the next resolution. A single bar that closes through and immediately closes back in is recorded as a retest (failed breakout), not a breakout.
Held only judges retests that have a full Hold Window of bars behind them, so the most recent retest may not yet be reflected in the Held count until its outcome is known.
When a zone breaks it flips side and keeps its full history, so a single long-lived zone can show interactions from several supply/demand cycles.
The number of zones shown is limited per side by the Show setting; other valid zones continue to be tracked in the background and can appear later as conditions change.
UNIQUENESS
Most supply and demand indicators draw zones and stop there, leaving the trader to guess which levels still matter. Supply and Demand Zones treats each zone as a tracked object with a measurable record. Every retest, failed breakout and clean break is recorded over the zone's life, and the Held statistic turns that record into a single, honest reliability number shown right on the zone — a level that has held four of five tests is immediately distinguishable from one that keeps breaking. Failed breakouts are folded into retests rather than ignored, capturing the trap-and-reclaim behaviour that often marks the strongest levels, and broken zones flip side while keeping their entire history instead of resetting. The Strongest ranking is driven by that same measured record — reliability, number of tests, and proximity — with smoothing so a single lucky test can't masquerade as a perfect level, meaning the chart automatically surfaces the zones that have actually proven themselves. The result is a supply and demand tool that doesn't just show you where zones are, but how much each one has earned your trust.
DISCLAIMER
This indicator is an analytical and educational tool. It does not predict future price movement and does not provide financial advice. A zone's past hold rate describes what has already happened and does not guarantee future behaviour. Always use proper risk management and combine this tool with your own analysis. インジケーター

Strong Rejection Zones | ProjectSyndicateSTRONG REJECTION ZONES
Strong Rejection Zones marks the prices where the market keeps getting pushed back, and grades every one of them so you can tell at a glance which levels are worth respecting and which are likely to fold. It scans for three independent signatures of rejection — swing pivots, dominant rejection wicks, and volume spikes — folds overlapping hits at the same price into a single zone, and assigns each zone a live 0–10 power score built only from measurable level quality. Heavily-confirmed zones are drawn bold and solid; thin, one-off levels stay faint. An on-chart leaderboard ranks every live zone, so the whole support-and-resistance map is readable in one look.
🎯 0–10 POWER SCORE
Each zone earns a live grade from four weighted, sign-stable factors:
Confluence — how many separate detections stack at the level, with diminishing returns so one isolated touch never scores high on its own.
Diversity — a level confirmed by pivots AND wicks AND volume outranks one confirmed a single way.
Detection strength — volume versus its baseline, wick dominance, and range expansion on the candle that formed the level.
Recency — recently defended levels rank above stale ones, with a configurable decay.
ELITE (9–10) is intentionally hard to reach: in practice it takes all three footprint types lining up on a strong, fresh, well-confirmed level — so the grade reflects real edge, not decoration. All four weights are adjustable.
🏷️ IN-ZONE LABELS
Every graded zone carries a tag above the band — side (BULL / BEAR), tier, the X/10 score, a star rating, the confluence count (×N detections), and live distance from price in both percent and pips. The tag is pinned to the zone's right edge and grows inward, so it never hangs off the box.
🧲 CONFLUENCE MERGING
Same-side detections that land within the cluster tolerance are folded into one zone and raise its grade, instead of littering the chart with a separate line for every swing. One graded level per pool.
🥇 ELITE HIGHLIGHT
The top tier is rendered in a brighter shade of its side colour with a heavy accent border, so the levels that matter jump out before you read a single number. Tier ladder: FAINT → WEAK → MEDIUM → STRONG → ELITE.
🎨 STRENGTH-SHADED FILL
Fill opacity tracks the score — strong zones print solid, weak ones stay faint — so relative importance is visible without reading any text.
📊 RANKED DASHBOARD
A leaderboard sorts active zones by power and shows rank, side, tier, exact price, score with stars, and distance + direction from price (▲ above / ▼ below). Choose any of four corners, four text sizes (Tiny → Large), and how many rows to show. A header line summarises how many ELITE / STRONG / active zones are live.
📍 ORIGIN-ANCHORED ZONES
Each zone is drawn from the bar where its level first formed and extended to the right. It stays anchored to that price — it does not drift or re-center as new detections arrive, so the band always sits on the price action that created it.
🔒 STABLE, LOCK-IN ZONES
Zones are built only on confirmed bars and updated in place. A zone keeps its grade, tier and position once it is drawn; it only changes state when price genuinely breaches it (by close or by wick — your choice), at which point it either clears or stays on as a faded broken level.
🧹 CLEAN-UP FILTERS
Hide any zone under a chosen power score, enforce a minimum separation between same-side zones, and suppress zones forming right on top of current price.
🔔 NATIVE ALERTS
Dedicated alerts for an ELITE cluster forming, a STRONG cluster forming, a zone being breached, fresh bullish and bearish detections, and price approaching a STRONG or an ELITE zone.
🔧 FULLY ADJUSTABLE
Detection toggles and sensitivity (pivot length, wick-dominance ratio, volume-spike multiple, baseline length); clustering tolerance and minimum separation; zone geometry (ATR length, height, max active zones, right-extension); the four score weights plus confluence-for-full-credit, decay length and decay floor; score and distance filters, breach method (close or wick), and keep-or-clear on breach; the full colour theme (bull, bear, broken, accent), fill-opacity range and ELITE border width; label size and which scores get labelled; dashboard position, rows and text size; and alert thresholds.
🚀 Works on gold (XAUUSD), silver, forex, crypto and indices, on any timeframe.
────────────────────────
HOW TO TRADE IT — TWO APPROACHES
The score chooses the playbook. High-grade zones tend to hold and reverse; thin zones tend to give way. So treat them differently.
FADE THE ZONE — reversion (STRONG / ELITE, score ≥ 7)
Use when price is approaching a high-grade zone — the most-confirmed levels, and statistically the most likely to react.
Wait for price to tap the zone (the dashboard distance shows it closing in).
Look for a wick into the band and a close back outside it.
Enter on the rejection back out of the zone.
Stop just past the far edge — a sustained close through it means the level failed.
Target the next zone on the dashboard, then the nearest strong zone on the opposite side.
TRADE THE BREAK — continuation (WEAK / MEDIUM, or once a strong zone breaches)
Use on thin, single-type or stale levels — the ones most likely to break.
Wait for a decisive close through the zone on expanding volume, not a single wick.
The zone switching to a broken state is your confirmation it is a real break, not a stop-hunt.
Enter with the break beyond the zone, or on a retest of the broken level.
Stop back inside the broken zone.
Target the next zone in that direction.
Rule of thumb: high-grade → expect a reaction, fade the tap. Low-grade on volume → expect follow-through, trade the break.
────────────────────────
⚠️ This tool highlights high-probability rejection levels and frames fade-versus-break scenarios. It is NOT a standalone buy/sell signal. Always combine it with your own strategy, price-action analysis and risk management to confirm setups. Past statistical behaviour does not guarantee future results. インジケーター

Session Edge Profiler | Flux ChartsGENERAL OVERVIEW:
The Session Edge Profiler is a statistical dashboard indicator that profiles up to five configurable trading sessions (Asia, London, NY AM, NY Lunch, NY PM by default) across the available completed trading days loaded on the chart. The indicator records each session's range, volume, directional outcome, and smart money structure (Fair Value Gaps, swing breaks, higher highs, lower lows) on every completed day, then surfaces the resulting statistics in a configurable on-chart dashboard with progress bars and best value markers.
For every metric, the indicator filters history by the selected weekdays. Range-based metrics are normalized against the previous daily ATR for cross-volatility comparison, while volume, directional, extreme, and structure metrics are calculated directly from completed session records. The indicator also computes percentile rankings of the current session range against its historical distribution. Session boxes can be plotted for visual reference, and a live label tracks the active session's running range against its historical average and percentile rank in real time. The indicator is statistical, session based, dashboard driven, and includes one alert condition for sessions exceeding the 90th percentile of their historical range distribution.
WHAT IS THE THEORY BEHIND THE INDICATOR?:
Markets do not move uniformly across the day. Each trading session carries different participant types, different volume profiles, and different structural behaviors. The Asia session tends to be range bound and accumulative. The London session frequently sweeps overnight liquidity. NY AM often produces the largest expansions of the day. NY Lunch is typically the lowest volume window. NY PM frequently reverses or extends NY AM moves into the close.
These tendencies are widely cited but rarely measured per instrument. The Session Edge Profiler quantifies them. By recording per session statistics across the historical window available on the chart, and by filtering by selected weekdays, the indicator builds an empirical profile of how each session has actually behaved on a specific symbol rather than relying on generalized assumptions. The result is a session level statistical profile that can be compared against the current session in real time, identifying when a given session is behaving unusually large, unusually quiet, or consistent with its historical edge.
SESSION EDGE PROFILER FEATURES:
◇ Session tracking with customizable times, names, and colors
◇ Statistical dashboard with up to thirteen configurable metrics
◇ ATR normalized range comparison across sessions
◇ Today percentile ranking of the live session range
◇ Daily extremes tracking (HOD %, LOD %)
◇ Directional statistics (Bull %, Continuation %)
◇ Volume profiling (Vol Share %, Avg Vol)
◇ Smart money structure analytics (FVGs, Swing Breaks, FVG Survival, HH, LL)
◇ Active session live label with real time percentile and average comparison
◇ Session range boxes with current and historical display
◇ Weekday filtering applied uniformly across all statistics
◇ Dashboard theming (Dark or Light), nine position options, and five text sizes
◇ High percentile range alert
SESSION TRACKING AND RANGE BOXES:
🔹What is Session Tracking?
Session Tracking is the foundation of the indicator. Five configurable session windows are monitored on every bar. When price enters a session window, the indicator opens an active tracking object that records the session's high, low, open price, total volume, and structural events. When price leaves the session window, the active object is closed and its values are committed to the historical record for that session.
🔹Why is Session Tracking important?
Every statistic computed by the indicator depends on accurately segmenting the trading day into sessions. Without a reliable session lifecycle, range comparisons, HOD/LOD attribution, volume share, and structure counts would be inconsistent. The session lifecycle also defines what gets drawn on the chart: the live range box for the current session and, optionally, persistent boxes for historical sessions.
🔹How is Session Tracking detected and calculated?
Every bar is checked against the configured session time windows in New York time. The moment price enters a session window, a new session opens: the session's high, low, open, and volume start fresh, and the FVG, swing break, HH, and LL counters reset to zero. While the session is active, the high updates to the running maximum, the low updates to the running minimum, and volume accumulates with each new bar. When price leaves the session window, the session is closed: the final high, low, open, close, and volume are committed and the session is marked complete for the day.
A trading day boundary is determined by shifting time forward by 6 hours and comparing the resulting calendar date in New York time. This shift causes a new day to register at 18:00 NY time, aligning the trading day with the start of the Asia session at 19:00 NY. When a new trading day begins, the completed session statistics from the previous day are added to each session's history along with the weekday they were recorded on, the daily fields reset, and a new tracking cycle begins.
🔹Settings: Sessions Group
◇ Enable Toggle: Turns the session on or off. Disabled sessions are excluded from the dashboard, the live label, and all calculations.
◇ Session Name: Custom label used in the dashboard column header, on the session box, and in the active session label. Defaults: Asia, London, NY AM, NY Lunch, NY PM.
◇ Session Time: The session window in NY time using HHMM,HHMM format. Defaults: Asia 1900,0200, London 0200,0830, NY AM 0830,1200, NY Lunch 1200,1330, NY PM 1330,1600.
◇ Session Color: Color applied to the dashboard column header (when active), the session box border and background, and the active session label.
🔹Customization
Display Group
◇ Show Session Ranges: When enabled, plots a translucent box around the current session showing its running high and low, with the session name labeled in the top left corner. Historical session boxes are also retained on the chart for visual reference.
◇ Show Active Session Stats: When enabled, plots a live label next to the most recent bar of the active session displaying the session name, current range, current range as a percentage of historical average, and current percentile rank.
◇ Label Size: Sets the text size of the active session label. Options: Tiny, Small, Normal, Large, Huge.
STATISTICAL DASHBOARD:
🔹What is the Statistical Dashboard?
The Statistical Dashboard is a configurable table that summarizes the historical statistical profile of every enabled session. Rows correspond to metrics. Columns correspond to sessions. Each cell shows the metric value for that session, optionally rendered with a unicode progress bar and a star marker (★) for the session with the highest value on metrics where "highest" is the meaningful target.
🔹Why is the Statistical Dashboard important?
The dashboard is where the indicator's measurements surface. Rather than requiring a trader to scroll through chart history and visually estimate session behavior, the dashboard reduces the entire weekday filtered history of every session to a compact table of directly comparable numbers. The header line shows the active weekday filter and the maximum number of historical days used in any cell, providing immediate context for the statistical sample size.
🔹How is the Statistical Dashboard calculated?
On the most recent bar of the chart, the indicator reviews each enabled session's stored history. For every past session, it checks whether the weekday it was recorded on is included in the selected weekday filter. If yes, the session contributes to the running totals: range sums, volume sums, HOD/LOD counts, bull counts, continuation counts, FVG counts, swing break counts, HH counts, LL counts, and volume share. After the review, totals are converted to averages or percentages and written to the dashboard cells.
Best value markers are computed by tracking the maximum value across all enabled sessions for the metrics where "highest" is the intended target: Avg Range, HOD %, LOD %, Avg FVGs, and FVG Survival %. For metrics where directional bias matters (Bull %, Continuation %) or where higher is not strictly better (Vol Share %, Avg Swing Breaks, Avg HH, Avg LL), no best marker is shown.
[Screenshot: Full dashboard table screenshot in Dark Mode with every metric row enabled. Header line showing the active weekday filter and sample size, column headers in each session's color, progress bars rendered in percentage cells, and the SMART MONEY divider row visible separating the structural metrics from the range and directional metrics above.
🔹Settings: Dashboard Group
◇ Show Dashboard: Master toggle for the entire dashboard. When disabled, no table is rendered.
◇ Theme: Dark Mode or Light Mode. Controls background, row, header, and text colors. The best value highlight cell uses a deeper accent color on the selected theme.
◇ Position: Table placement on the chart. Options cover all nine combinations of vertical (Top, Middle, Bottom) and horizontal (Left, Center, Right) anchoring.
◇ Text Size: Tiny, Small, Normal, Large, Huge. Affects every cell.
◇ Show Progress Bars: When enabled, percentage and percentile cells render an 8 segment unicode bar alongside the numeric value, scaling from 0% to 100%. When disabled, only the numeric value is shown.
🔹Customization
Metric Toggles
Each of the following dashboard rows can be independently shown or hidden:
◇ Avg Range (ATR%)
◇ Vol Share %
◇ Avg Vol
◇ HOD %
◇ LOD %
◇ Bull %
◇ Continuation %
◇ Today Percentile
◇ Avg FVGs
◇ Avg Swing Breaks
◇ FVG Survival %
◇ Avg HH
◇ Avg LL
🔹Signal Colors
◇ High: Color applied to high tier values (Today Percentile at or above 75, FVG Survival at or above 70). Default: green.
◇ Mid: Color applied to mid tier values (Today Percentile between 25 and 75, FVG Survival between 40 and 70). Default: orange.
◇ Low: Color applied to low tier values (Today Percentile at or below 25, FVG Survival below 40). Default: red.
ATR NORMALIZED RANGE STATISTICS:
🔹What is ATR Normalized Range?
The Avg Range (ATR%) metric expresses each session's average range as a percentage of the daily Average True Range. A value of 45% means the session, on average, covered 45% of a full day's ATR.
🔹Why is ATR Normalized Range important?
Raw range values cannot be compared across instruments or across volatility regimes. A 200 point range means very different things in calm versus volatile markets. Normalizing by daily ATR removes that distortion: the resulting percentage is directly comparable between sessions, between symbols, and between months of history.
🔹How is ATR Normalized Range calculated?
For each completed session, the raw range (session high minus session low) is divided by the daily ATR value of the previous completed day. The daily ATR uses a configurable length (default 14) and is always read from the previous daily bar, which means the value is fixed for the entire current trading day and never repaints. The session's normalized range is stored alongside its weekday in the history. When the dashboard renders, the indicator averages all normalized ranges from sessions whose weekday passes the filter, then multiplies by 100 to produce the displayed percentage.
🔹What is Today Percentile?
Today Percentile expresses where the current session's live range sits within the historical distribution of that same session's past ranges. The comparison stays within the session: today's London is compared only against past Londons, today's NY AM only against past NY AMs, and so on, all filtered by the selected weekdays. A value of 80 means the live range is larger than 80% of past occurrences of the same session on those weekdays.
🔹How is Today Percentile calculated?
For each enabled session, the indicator computes the current normalized range (current session range divided by daily ATR). It then walks through that session's own past history, counting how many past sessions have a normalized range less than or equal to the current value, while skipping any past session whose weekday is not enabled in the filter. The percentile is the percentage of qualifying past sessions at or below the current value.
The cell color reflects the tier: at or above 75 uses the High color, at or below 25 uses the Low color, otherwise the Mid color. The numeric value is rendered with an ordinal suffix (1st, 2nd, 3rd, 4th, and so on) for readability, and the progress bar segments scale from 0 to 100.
🔹Settings:Filters Group
◇ ATR Length: Lookback for the daily ATR used in normalization. Range: 5 to 50. Default: 14.
DAILY EXTREMES TRACKING:
🔹What are HOD % and LOD %?
HOD % measures how often a given session contained the day's highest price. LOD % measures how often it contained the day's lowest price. Both are expressed as a percentage of the total weekday filtered days in history.
🔹Why are HOD/LOD statistics important?
Knowing which session historically sets the daily extreme on a given instrument helps frame intraday liquidity expectations. A session with a high HOD % is the session that most frequently posts the day's selling extreme. A session with a high LOD % most frequently posts the day's buying extreme. On many instruments NY AM dominates both, but the ratio shifts by symbol and by weekday, which is why measuring rather than assuming is useful.
🔹How are HOD % and LOD % calculated?
While the trading day is in progress, the indicator continuously tracks the day's running high and running low across all bars, not just within session windows. When a new trading day begins, every completed session from the previous day is checked: if the session's recorded high matches the day's high, that session is tagged as the HOD session; if its low matches the day's low, it is tagged as the LOD session. These tags are stored with the session in history. When the dashboard renders, it counts how many sessions in the weekday filtered history carry each tag and converts those counts to percentages. The session with the highest HOD % across all enabled sessions receives a star marker, and the same applies to LOD %.
DIRECTIONAL STATISTICS:
🔹What are Bull % and Continuation %?
Bull % is the percentage of historical sessions that closed higher than they opened. Continuation % is the percentage of historical sessions whose direction matched the previous occurrence of the same session.
🔹Why are directional statistics important?
Bull % captures the session's directional skew. A session with Bull % consistently above 60% on a particular instrument and weekday set has a measurable upward tendency. Continuation % captures the session's persistence: a high continuation rate means the session frequently extends the previous day's same session direction, while a low rate suggests the session tends to reverse the prior day's bias.
🔹How are Bull % and Continuation % calculated?
For each completed session, Bull is true when the session's close (the chart close at the bar where the session ended) exceeds its open. Continuation is true when the previous occurrence of the same session was bullish in the same direction (both bullish or both bearish). The very first occurrence in history has no previous reference and is excluded from the continuation calculation. The dashboard divides the bullish session count by the total session count for Bull %, and the matched continuation count by the continuation eligible count for Continuation %.
No best value marker is shown for either metric, since "highest" is not inherently better: directional bias and continuation are interpretive measurements rather than competitive ones across sessions.
VOLUME PROFILING:
🔹What is Volume Profiling?
The indicator tracks two volume metrics per session: Vol Share % (the session's average share of total daily volume) and Avg Vol (the session's average absolute volume).
🔹Why is Volume Profiling important?
Volume distribution across the day reveals participant activity. Sessions that historically account for a disproportionate share of daily volume are the sessions where flow is most concentrated. Sessions with low volume share (typically NY Lunch) are statistical low conviction windows where moves are more likely to be lower quality.
🔹How is Volume Profiling calculated?
While each session is active, the indicator accumulates bar volume into the session's running total. When the trading day rolls over, total day volume is computed as the sum of all completed session volumes for that day. Each session's Vol Share is then computed as its session volume divided by total day volume, multiplied by 100, and saved into the session's history alongside the absolute volume. When the dashboard renders, Avg Vol is the simple weekday filtered mean of recorded session volumes, and Vol Share % is averaged across the weekday filtered history.
SMART MONEY STRUCTURE ANALYTICS:
🔹What are the Smart Money metrics?
The Smart Money section of the dashboard surfaces four structural counters per session:
◇ Avg FVGs: average number of Fair Value Gaps formed during the session.
◇ Avg Swing Breaks: average instances where the close pierces a previously confirmed pivot high or pivot low.
◇ FVG Survival %: percentage of FVGs that were not invalidated within the same session in which they formed.
◇ Avg HH and Avg LL: average count of new higher highs and lower lows in pivot structure during the session.
🔹Why are Smart Money metrics important?
These metrics quantify the structural activity of each session. High FVG counts indicate aggressive displacement and gap creation. High Swing Break counts indicate liquidity sweeps and structural inflection. FVG Survival measures how often gaps formed during the session are respected (not immediately filled in the opposite direction), giving a session level reliability score for the FVG concept. HH and LL counts profile each session's tendency to extend structure in one direction versus the other.
🔹How are Smart Money metrics calculated?
A Fair Value Gap is detected as a 3 bar pattern: a bullish FVG forms when the current bar's low sits above the high from two bars ago, and a bearish FVG forms when the current bar's high sits below the low from two bars ago. Whenever an FVG forms during an active session, the session's FVG counter increments and the gap level (the high from two bars ago for a bullish FVG, the low from two bars ago for a bearish FVG) is added to a list of active gaps for that session, along with its direction.
On every later bar within the same session, the indicator checks each active gap. If price closes below a bullish FVG's level, or closes above a bearish FVG's level, the gap is treated as invalidated and removed from the active list, and the session's invalidation counter increments. At the end of the session, FVG Survival % is computed as the count of total FVGs minus invalidated FVGs, divided by total FVGs, expressed as a percentage. The cell is color coded by tier: at or above 70 uses High, at or above 40 uses Mid, otherwise Low.
Swing breaks use a configurable pivot strength (default 5 bars on each side). When a pivot high confirms and price subsequently closes above that pivot level, a bullish swing break fires and the pivot is consumed (cleared from active tracking). The same applies symmetrically for pivot lows. Each break increments the active session's Swing Break counter.
HH and LL counts use the same pivot detection. When a new pivot high confirms with a level greater than the session's previous tracked pivot high, the session's HH counter increments. When a new pivot low confirms with a level less than the session's previous tracked pivot low, the LL counter increments.
🔹Settings: Filters Group
◇ Pivot Strength: Bars on each side required to confirm a pivot high or pivot low for the swing break and HH/LL calculations. Range: 2 to 20. Default: 5. Higher values produce fewer, more significant pivots; lower values produce more frequent, noisier pivots.
ACTIVE SESSION LIVE LABEL:
🔹What is the Active Session Live Label?
A floating label that appears next to the most recent bar of the active session, displaying live statistics for the session currently in progress.
🔹Why is the Active Session Live Label important?
The dashboard summarizes completed historical sessions. The live label answers a different question: how does the session that is currently developing compare to history, right now? It allows a trader to see, mid session, whether the current session is tracking above, near, or below its average range and what percentile it currently occupies, without waiting for the session to close.
🔹How is the Active Session Live Label calculated?
The label content includes the session name, the live range (current session high minus current session low), the ratio of the live normalized range to the historical average normalized range expressed as a percentage, and the current percentile. The percentile is computed by iterating the session's weekday filtered history and counting how many records have a normalized range at or below the live value.
The label position updates every bar to track the right edge of the current session at its current high. When the session ends, the label is deleted.
🔹Settings
◇ Show Active Session Stats: Toggle for the label.
◇ Label Size: Sets text size. Options: Tiny, Small, Normal, Large, Huge.
WEEKDAY FILTERING:
🔹What is Weekday Filtering?
A set of seven toggles (Sunday through Saturday) that determines which weekdays contribute to every statistic on the dashboard, the live label, and the alert condition.
🔹Why is Weekday Filtering important?
Session behavior is not uniform across the week. Monday open behavior differs from midweek behavior. Friday afternoon often shows reduced participation. By filtering history to only the selected weekdays, traders can profile each session under conditions that match the current trading day, rather than averaging in unrelated days.
🔹How is Weekday Filtering applied?
Each session in history is tagged with the weekday it was recorded on. Every calculation in the dashboard, the live label, and the alert checks that weekday against the user's selection and skips any session whose weekday is not enabled. The dashboard header line displays a compact label of the active filter: "All" when every weekday is enabled, "Weekdays" when only Monday through Friday are enabled, or a custom combination such as "M/Tu/W" otherwise. The header also shows the largest number of sessions any column was able to use after filtering, which serves as the sample size indicator.
🔹Settings: Filters Group
◇ Sun, Mon, Tue, Wed, Thu, Fri, Sat: Individual toggles. Defaults: Mon, Tue, Wed, Thu, Fri enabled; Sun and Sat disabled.
ALERTS:
🔹What alerts are available?
A single alert condition is provided:
◇ Range > 90th Percentile: Fires when an active session's current normalized range exceeds the 90th percentile of its weekday filtered historical normalized range distribution.
🔹When does it fire?
On every bar where at least one enabled, active session has a current normalized range above which 90% of its history sits. The alert fires once per qualifying bar, allowing traders to be notified when a session is in the process of becoming statistically large relative to its own history.
IMPORTANT NOTES:
◇ All session times are evaluated in New York time regardless of the chart's display timezone. Adjust session times if profiling instruments where session timing conventions differ from the defaults.
◇ Trading day boundaries are anchored to 18:00 NY time (the 6 hour shift before midnight) so that the Asia session opens at the start of each new trading day. This is the convention used for HOD/LOD attribution and for pushing completed session records to history.
◇ Daily ATR is always read from the previous completed daily bar. This means the value used for normalization is fixed for the current trading day and does not repaint as new bars print, while still giving the live percentile calculations a stable reference.
◇ The session history for each session is built progressively as the chart loads. Sessions on the very first day on the chart cannot contribute to continuation statistics because no earlier occurrence of the same session exists to compare against.
◇ Best value markers (★) are shown only on metrics where "highest" is the meaningful target: Avg Range, HOD %, LOD %, Avg FVGs, and FVG Survival %. Other metrics intentionally omit the marker.
◇ FVG Survival counts gaps that survive to the end of the session in which they formed. A gap that survives the session but is invalidated on a later day is still counted as survived for the session that created it.
UNIQUENESS:
The Session Edge Profiler distinguishes itself from common session indicators in several ways. Most session tools plot boxes and stop there, while this indicator extends session tracking into a full statistical profile with thirteen configurable metrics per session, reducing the entire history of every session to a single, scannable table. Range comparisons use ATR normalization rather than raw point values, making the dashboard meaningful across volatility regimes and instruments without per chart recalibration, and percentile ranking of the live session against history provides a single number answer to a question many traders ask intuitively: is this session unusually large or unusually small for this time and this weekday? FVG and swing break tracking are integrated into the session profile rather than treated as separate indicators, allowing direct comparison of which session produces the most structural activity and how reliable that structure tends to be on a given instrument. FVG Survival % quantifies a concept that is rarely measured anywhere else: how often each session's FVGs actually hold within their own session, converting a qualitative idea into a session level reliability score. Weekday filtering applies uniformly to every statistic on the dashboard, the live label, and the alert, allowing traders to profile sessions only on days that match the current trading day rather than diluting the sample with unrelated weekdays. Best value markers and progress bars make the dashboard scannable at a glance, with the strongest session per metric immediately visible without parsing numbers. Finally, the active session live label provides real time positional context that complements the historical dashboard: the dashboard answers what a session usually does, while the label answers what the session is doing right now, with both views driven by the same underlying statistical model. インジケーター

Liquidity Sweep Profiler | Flux ChartsGENERAL OVERVIEW:
The Liquidity Sweep Profiler is a multi-source liquidity tracking and outcome statistics indicator. It automatically identifies key liquidity levels across three categories (intraday sessions, higher timeframe key levels, and chart structure), monitors each level for sweep events (wick pierces with rejection), and then tracks what happens after each sweep over a configurable watch window. Every resolved sweep is recorded in an internal history that powers a dashboard showing, by liquidity type, the average reversal magnitude, average breach magnitude, and an Edge ratio between the two. The dashboard highlights the liquidity type with the strongest historical edge on the current chart and instrument.
The indicator plots session high/low lines (Asia, London, NY AM, NY Lunch, NY PM), previous-period highs and lows (PDH/PDL, PWH/PWL, PMH/PML), and chart structure liquidity (Swing Highs/Lows, EQH/EQL clusters). When a level is swept, it draws a Sweep Zone box marking the rejection range and an x marker at the wick extreme. An Active Sweep Tracker label shows the live performance of the most recent unresolved sweep against its historical baseline. The indicator is multi-timeframe, session-based, statistical, and rules-based. Optional quality filters let the user restrict the statistics to sweeps that meet specific volume, wick, or delta thresholds.
Screenshot: a hero shot showing session, key level, and structure liquidity lines on one chart with several Sweep Zones marked, plus the dashboard visible in a corner.
WHAT IS THE THEORY BEHIND THE INDICATOR?
In intraday and swing trading, certain price levels function as "liquidity pools", areas where a critical mass of resting orders (stop losses, breakout buy/sell orders, and pending entries) tends to accumulate. The high of yesterday, the low of last week, the high of the London session, and a recent swing high are all examples of such levels. When price reaches these levels, the resting orders get triggered, which can produce one of two outcomes: a sustained breakout where the order flow continues past the level, or a sweep where price briefly pierces the level, triggers the orders, and then reverses back through it. The sweep outcome is what this indicator is designed to detect and study.
Different liquidity types behave differently. On some instruments, swept session highs and lows tend to reverse cleanly. On others, sweeps of weekly or monthly extremes are more reliable. On yet others, sweeps of equal highs and lows (clustered pivots) outperform sweeps of standalone swing points. The behavioral pattern can also vary by day of the week and by whether the sweep candle showed strong rejection characteristics (high relative volume, large rejection wick, strong intrabar volume imbalance toward the rejection direction). The Liquidity Sweep Profiler treats every sweep as a data point, records the recovery and breach magnitudes that followed it, and aggregates the data by liquidity type to surface which type has shown the strongest reversal tendency on the specific chart and instrument the trader is using.
This is a statistical profile, not a prediction. The dashboard reports what has happened historically on the current chart. The trader uses that profile to focus attention on the liquidity types with the strongest empirical edge, while remaining aware that future behavior can deviate from past behavior. Every sweep is treated as evidence to be aggregated, and the indicator surfaces the resulting profile for the trader to interpret.
FEATURES:
◇ Multi-source liquidity detection (sessions, higher timeframe key levels, structure)
◇ Sweep detection with configurable confirmation window
◇ Sweep Zone boxes and x markers
◇ Outcome tracking (recovery and breach magnitudes over a watch window)
◇ Statistics dashboard with per-type sweep counts, averages, and Edge ratios
◇ Best-Edge banner highlighting the top-performing liquidity type
◇ Active Sweep Tracker for live monitoring of the most recent sweep
◇ Quality filters (relative volume, wick %, intrabar delta %)
◇ Trading-day filter (per-weekday inclusion)
◇ Display unit selector (ATR, Price, Pips, Ticks)
◇ Configurable label, line, zone, and theme styling
◇ Built-in alerts for new sweeps and high-edge sweeps
Screenshot: a clean overview showing one example from each liquidity category (a session line, a PDH, EQL/EQL line) with their distinct color coding visible.
LIQUIDITY LEVEL DETECTION
🔹 What are liquidity levels?
A liquidity level is a price where resting orders tend to accumulate. The Liquidity Sweep Profiler tracks three categories:
◇ Session liquidity: the high and low formed during each defined intraday session (Asia, London, NY AM, NY Lunch, NY PM). Each session is a configurable time window.
◇ Key levels: the high and low of the previous completed day (PDH/PDL), week (PWH/PWL), and month (PMH/PML).
◇ Structure liquidity: pivot-based swing highs and lows detected on the current chart, plus EQH/EQL clusters where two or more recent pivots formed at approximately the same price.
🔹 Why do these levels matter?
Each category captures a different participant base. Session highs and lows matter to intraday traders working specific market hours. Daily, weekly, and monthly extremes matter to swing traders and institutional desks that operate on those reference points. Swing pivots and equal highs/lows matter to participants who place orders relative to recent chart structure. By tracking all three in one indicator, the trader can observe which category produces the most reliable sweep behavior on the specific instrument.
🔹 How are levels detected?
Session levels are tracked in real time during each session window. The session detector evaluates whether the current bar's New York time falls inside the session's start-end string. While the session is active, the indicator maintains a running high and low, updating both the level and the bar index of each extreme on every new high or low. When the session window closes (the next bar is outside the session), both the final high and the final low are stored as liquidity levels, with the bar index of the actual extreme preserved as the level's anchor bar.
Previous-period levels are fetched from the daily, weekly, and monthly timeframes. The indicator requests the prior period's high and low (offset by one period, so the value is stable and never references the still-developing current period). Each time the fetched value changes (which happens once per new day, week, or month), the new level is added to tracking.
Structure liquidity uses standard pivot detection with a configurable lookback length (default 5 bars on each side). When a new pivot high or pivot low forms, it is checked against the most recent prior pivots in the same direction: if it falls within an ATR-based threshold (default 0.1 x ATR) of one of the last three same-side pivots, it is classified as an EQH or EQL. Otherwise it is recorded as a standalone Swing High or Swing Low.
For each category, a Track Last input controls how many of the most recent levels of each type are kept on the chart simultaneously. When a new level of a given type is added, the oldest level of that same type is trimmed from the tracking array if the count exceeds the limit.
Screenshot: showing session-derived levels (dashed lines), HTF key levels (solid lines), and structure levels (dotted lines)
🔹 Settings
◇ Session enable toggles, names, time windows (in New York timezone), and per-session colors for all five sessions.
◇ Track Last (Sessions): how many days of session highs and lows to keep tracked. Default 1.
◇ Enable PDH/PDL, PWH/PWL, PMH/PML with individual color pickers.
◇ Track Last (Previous Periods): number of previous periods kept per type (days for PDH/PDL, weeks for PWH/PWL, months for PMH/PML). Default 1.
◇ Pivot Length: number of bars on each side used for pivot detection. Default 5.
◇ EQH/EQL Threshold (ATR): two pivots within this multiple of ATR distance count as equal. Default 0.1.
◇ Track Last (Structure): number of structure levels kept per type. Default 5.
🔹 Customization
◇ Per-category visibility toggles under Visual Overlays (Session Liq, PDH/PDL, PWH/PWL, PMH/PML, Swings, EQH/EQL).
◇ Day Suffix toggle: appends (Today), (Yest), or (-Nd) to session labels when tracking more than one day of session liquidity.
◇ Boxes toggle: optionally renders the live session range as a translucent box while the session is active.
SWEEP DETECTION
🔹 What is a sweep?
A sweep occurs when price reaches a tracked liquidity level, briefly trades beyond it with its wick, and then closes back through it within a defined confirmation window. The wick pierces the level (triggering the resting orders), but the candle body closes back on the original side, indicating that the move past the level was rejected. This is the canonical stop-run-and-reverse pattern.
🔹 Why does the confirmation window matter?
A pure same-bar sweep requires the same candle to both pierce the level with its wick and close back through it. This is the strictest definition and captures the cleanest rejections. Allowing one or more additional bars for the close to come back through captures sweeps that take a slightly longer time to resolve, at the cost of including weaker rejections. The trader picks the trade-off they prefer using the Sweep Confirmation Window input.
🔹 How are sweeps detected?
Each tracked level carries two state flags: pierced and taken. On every new bar, the indicator walks the list of untaken levels and evaluates two conditions per level:
◇ Wick-through: for a high-side level, the bar's high exceeds the level. For a low-side level, the bar's low falls below the level.
◇ Closed-back: for a high-side level, the bar's close is below the level. For a low-side level, the close is above it.
The flow is:
◇ If the level is not yet pierced and the wick-through condition is true on this bar, the level is marked pierced, the piercing bar index is stored, and the wick extreme is recorded. If the closed-back condition is also true on the same bar, the level is immediately marked taken (a same-bar sweep).
◇ If the level was already pierced on a previous bar, the indicator first updates the wick extreme if the current bar exceeded the previous extreme. It then checks how many bars have elapsed since the pierce. If the elapsed count exceeds the confirmation window, the level is marked taken with the broken flag set (clean breakout, no rejection). Otherwise, if closed-back is true on the current bar, the level is marked taken with broken cleared (confirmed sweep).
When a sweep confirms (taken, broken = false), the indicator captures a snapshot of the sweep candle's context:
◇ Relative volume: current bar's volume divided by the 20-bar simple moving average of volume.
◇ Wick percentage: the rejection wick's share of the candle's total range. For a high sweep, this is (high − max(open, close)) / (high − low) x 100. For a low sweep, (min(open, close) − low) / (high − low) x 100.
◇ Intrabar volume delta: the share of lower-timeframe volume on the rejecting side. The indicator requests lower-timeframe up-volume (close > open) and down-volume (close < open) for the bar, sums both, and computes the rejecting side's share. For a high sweep, that's down-volume / total. For a low sweep, up-volume / total.
These three values are stored on the sweep record and become the basis for the optional quality filters.
🔹 Bullish Example (low sweep)
A Swing Low at 1.0850 sits on the chart. Price drops to 1.0840 on a single candle (wick extreme), then closes at 1.0855, back above the original level. The level is marked as swept (low sweep), a green Sweep Zone box is drawn from the wick extreme up to the level, and an x marker is plotted at 1.0840.
🔹 Bearish Example (high sweep)
A PDH sits at 1.0950. Price rallies to 1.0965 on the wick, then closes at 1.0945, back below the original level. The level is marked as swept (high sweep), a red Sweep Zone box is drawn from the level up to the wick extreme, and an x marker is plotted at 1.0965.
Screenshot: bullish low sweep and one bearish high sweep visible on the same chart, both with their Sweep Zone boxes and x markers rendered.
🔹 Settings
◇ Sweep Confirmation Window: number of additional bars allowed after the wick pierce for the close to come back through. 0 = same-bar rejection only. 1 = same-bar or next bar. Default 0.
🔹 Customization
◇ Show Sweep Zones: toggle Sweep Zone box rendering.
◇ High Sweep Zone Color / Low Sweep Zone Color: customize the fill color for high-sweep and low-sweep zones.
◇ Show Sweep x Mark: toggle the x marker plotted at the wick extreme of each confirmed sweep.
OUTCOME TRACKING
🔹 What is outcome tracking?
Detecting that a sweep occurred is only half the picture. To know whether a particular liquidity type tends to produce reversals worth trading, the indicator also needs to measure what happened after the sweep. Outcome tracking does this by monitoring each confirmed sweep for a fixed number of bars and recording two values:
◇ Recovery: the maximum favorable excursion away from the swept level (in the rejecting direction). For a high sweep, this is how far price fell below the sweep candle's close. For a low sweep, how far the price rose above it.
◇ Breach: the maximum adverse excursion past the swept level (in the original sweep direction). For a high sweep, how far price went above the sweep candle's close. For a low sweep, how far the price went below it.
🔹 Why measure both?
Recovery alone could mislead. A liquidity type might produce large reversals on average but also large breaches when the sweep fails, which is information the trader needs. Tracking both Recovery and Breach, and then computing their ratio as an Edge value (Recovery / Breach), captures the full risk-reward profile of sweeps on that level type. An Edge above 1 indicates the type tends to deliver more reversal magnitude than breach magnitude on average.
🔹 How is outcome tracking calculated?
When a sweep confirms, the indicator stores the sweep candle's close price, the ATR value at that moment (using the configured ATR length, default 14), and the other metadata snapshot. From the next bar onward, for the configured Outcome Watch Window (default 20 bars), it computes two per-bar values:
◇ Recovery on the current bar = (sweep_close − low) / sweep_ATR for high sweeps, or (high − sweep_close) / sweep_ATR for low sweeps.
◇ Breach on the current bar = (high − sweep_close) / sweep_ATR for high sweeps, or (sweep_close − low) / sweep_ATR for low sweeps.
The running maximum of each is updated bar by bar. When the watch window expires (bars since sweep ≥ watch window), the sweep is marked completed and its final maxRecovery, maxBreach, and metadata snapshot are pushed into the indicator's history array along with the resolution day's weekday. This history is what powers the dashboard.
If the level was classified as broken instead of swept (the confirmation window expired without a close-back-through), the record is not added to the history, since the indicator only counts confirmed sweep outcomes.
Recovery and Breach are stored in the history as ATR multiples to keep them comparable across different volatility regimes. The dashboard's Display Unit input converts them to ATR multiples, Price, Pips, or Ticks for display at render time. Pip conversion uses mintick x 10 (or x 100 for JPY pairs), and Tick conversion uses raw mintick.
Screenshot: A swept level showing two arrows. One marks how far price moved back (Recovery). The other marks how far price moved past the level (Breach).
🔹 Settings
◇ Outcome Watch Window: number of bars to track each sweep for measuring Recovery and Breach. Default 20.
◇ ATR Length: ATR period used for the volatility snapshot at sweep time. Default 14.
STATISTICS DASHBOARD
🔹 What is the dashboard?
The dashboard is the analytic output of the indicator. It aggregates every completed sweep in the history array and displays per-type statistics in a table grouped by category. The columns are:
◇ Type: the liquidity type (Asia High, PDH, Swing Low, etc.).
◇ Total Sweeps: number of completed sweep records for that type that passed all active filters.
◇ Avg Recovery: average maximum favorable excursion, in the selected Display Unit.
◇ Avg Breach: average maximum adverse excursion, in the selected Display Unit.
◇ Edge: Avg Recovery / Avg Breach. A value above 1 means recovery has typically exceeded breach on that type.
The row with the highest Edge (subject to a minimum sample count of 5) is highlighted, and a Best Edge banner above the table calls out the winning type explicitly. Types with fewer than 5 samples can appear in the table but are excluded from the Best Edge competition.
🔹 Why aggregate by type?
The whole point of the indicator is to surface which liquidity types behave reliably on the current chart. A flat list of every sweep is not actionable. Grouping by type and computing aggregate statistics turns the raw sweep records into a usable trading profile.
🔹 How are statistics calculated?
For each liquidity type, the indicator walks the history array and filters by the active toggles (trading-day filter, relative volume filter, wick % filter, delta % filter). For records that pass all filters, it converts each stored ATR-multiple to the current Display Unit and sums the Recovery and Breach values. Avg Recovery and Avg Breach are computed by dividing the running sums by the filtered count. Edge is the ratio of the resulting averages.
To pick the Best Edge across all categories, the indicator runs the same aggregation for every active liquidity type (sessions, key levels, structure), filters out types with fewer than 5 samples, and selects the one with the highest Edge. The selection is independent of category, so a Swing High can win over an Asia Low if its Edge is higher and its sample count qualifies.
In the table itself, Avg Recovery is colored green when it exceeds Avg Breach for that row. Avg Breach is colored red when it exceeds Avg Recovery. The Edge cell is colored green at 1.5 or above, neutral between 1.0 and 1.5, and red below 1.0. The Best Edge row gets a green background and a star marker.
Screenshot: a close-up of the dashboard table showing all three category sections (Sessions, Key Levels, Structure) populated with realistic data, with the Best Edge banner visible and one row highlighted as the winner.
🔹 Settings
◇ Show Dashboard: master toggle.
◇ Theme: Dark Mode or Light Mode.
Screenshot: Showing Light Mode Theme
◇ Position: nine-position selector for table placement (Top Left, Top Center, Top Right, Middle Left, Middle Center, Middle Right, Bottom Left, Bottom Center, Bottom Right).
◇ Text Size: Tiny, Small, Normal, Large, Huge.
◇ Display Unit: ATR (volatility-normalized multiples), Price (raw price excursion), Pips (mintick x 10 for forex, x 100 for JPY pairs), Ticks (mintick units).
Screenshot: the dashboard configured to show only the liquidity types the user enabled. Sessions section shows only London High and London Low. Key Levels shows only PDH and PDL. Structure shows only EQH and EQL. Disabled types are filtered out of the table entirely.
QUALITY FILTERS
🔹 What are quality filters?
Quality filters restrict the sweeps that get counted in the dashboard statistics. Each one is independently togglable, and any combination can be active at once.
◇ Volume Spike Multiplier: the sweep candle's volume must be at least this multiple of its 20-bar volume average. Default 1.5x.
◇ Sweep Wick %: the rejection wick must be at least this percent of the candle's total range. Default 50%.
◇ Sweep Delta %: the rejecting side's intrabar volume share must be at least this percent of total intrabar volume. The lower timeframe used to compute delta is configurable (default 1 minute).
🔹 Why filter quality?
Not every sweep is equal. A sweep that occurs on heavy volume, with a long rejection wick, and with the rejecting side dominating intrabar volume is a fundamentally stronger rejection than one without those characteristics. By filtering the dashboard to only count high-quality sweeps, the trader can see whether quality-filtered sweeps produce a meaningfully different Edge than the unfiltered set. This is useful both for refining a setup definition and for evaluating which characteristics matter on the current instrument.
🔹 How do filters interact with the dashboard?
The total sweeps count shown in the dashboard title reflects the filtered count. The Best Edge banner and per-row statistics are also computed against the filtered set. Toggling any filter on or off triggers an immediate recomputation of the dashboard.
Screenshot: a before-and-after dashboard pair showing how the statistics change when quality filters are applied
🔹 Settings
◇ Volume Spike Multiplier: enable toggle and threshold (default 1.5x).
◇ Sweep Wick %: enable toggle and minimum percent (default 50).
◇ Sweep Delta %: enable toggle, minimum percent (default 60), and intrabar timeframe (default 1 minute).
TRADING DAY FILTER
🔹 What is the Trading Day Filter?
A row of seven weekday checkboxes that controls which days of the week are included in the dashboard statistics. Each sweep's resolution day is stored with the record. The filter excludes records whose weekday is unchecked.
🔹 Why filter by weekday?
Sweep behavior frequently varies by day of the week. Monday opens often produce different patterns than Wednesday midweek sessions or Friday closes. Letting the trader exclude specific weekdays makes it possible to test whether the Edge values on each liquidity type are weekday-dependent.
🔹 Settings
◇ Sun, Mon, Tue, Wed, Thu, Fri, Sat: each is an independent on/off toggle. Defaults: Mon through Fri on, Sat and Sun off.
ACTIVE SWEEP TRACKER
🔹 What is the Active Sweep Tracker?
A floating label rendered near the current bar that shows the live performance of the most recent unresolved sweep. It updates each bar while the watch window is still open. The label displays:
◇ The liquidity type that was swept.
◇ Bars elapsed since the sweep, against the watch window total.
◇ Current Recovery and Breach magnitudes (running max plus current-bar excursion).
◇ The historical average Recovery, Breach, and Edge for that type, if there are at least 5 samples for that type.
🔹 Why does it matter?
The dashboard shows aggregate historical statistics, but during a live setup the trader wants to know how the current move is tracking against the baseline. The Active Sweep Tracker makes this comparison explicit on the chart: at any moment, the trader can see whether the active sweep is matching, exceeding, or underperforming what that type has typically delivered.
🔹 How is the tracker calculated?
On the last bar of the chart, the indicator scans the levels array for any level that is taken, has broken = false, and is not yet completed. Among those, it picks the one with the highest takenBar (the most recent unresolved sweep). For that sweep, it computes the current-bar Recovery and Breach using the same formulas as outcome tracking, takes the maximum of the running max and the current-bar value (so the displayed value reflects either the historical peak or the live excursion, whichever is larger), and pulls the historical stats for that sweep type using the same filter pipeline as the dashboard.
The label's background color reflects which side is winning in real time. Bull color when the higher of the two excursions is on the Recovery side, bear color otherwise.
Screenshot: a chart with an active unresolved sweep, the Sweep Zone visible, and the Active Sweep Tracker label rendered near the current bar showing the live Bar x / Y count, current excursion values, and historical baseline comparison.
🔹 Settings
◇ Show Active Sweep Tracker: master toggle.
◇ Text Size: Tiny, Small, Normal, Large, Huge.
DISPLAY AND STYLING
🔹 Label and line styling
Liquidity levels render as horizontal lines extended to the right. Each category uses a distinct line style: solid for key levels, dashed for session levels, dotted for structure levels. Each type has its own color, customizable from the Sessions, Previous Periods, and Structure input groups. Labels render at the right edge with the type name and an optional day suffix for session levels when tracking more than one day.
🔹 Hide-on-Swept behavior
By default, swept levels remain drawn on the chart. With Hide on Swept enabled, swept levels are removed from the chart after a configurable grace period (Keep Swept Levels For). The grace period is measured in bars from when the level resolved (either taken or broken). This is useful for keeping the chart focused on the active liquidity once the historical sweep map becomes dense.
🔹 Settings
◇ Extend Right: number of bars to extend liquidity lines past the current bar. Default 3.
◇ Label Size: Tiny, Small, Normal, Large, Huge.
◇ Hide on Swept: toggle removal of swept levels.
◇ Keep Swept Levels For: grace period in bars before removal (applies when Hide on Swept is enabled). Default 5.
ALERTS
🔹 New Sweep
Fires when any tracked liquidity level is freshly swept on the current bar (taken status set this bar, broken = false). The alert message includes ticker and timeframe.
🔹 High-Edge Sweep
Fires when a new sweep occurs on a liquidity type whose historical Edge meets or exceeds the High-Edge Alert Threshold, provided that type has at least 5 historical samples. The Edge value is computed using the same filter pipeline as the dashboard, so any active quality filters and weekday filters are respected when evaluating whether the alert qualifies.
🔹 Settings
◇ High-Edge Alert Threshold: Edge value at or above which the High-Edge alert qualifies. Default 1.5.
IMPORTANT NOTES:
◇ The Sweep Delta % filter relies on lower-timeframe volume data, which may be unavailable for some instruments (forex pairs with no native volume, certain crypto exchanges, etc.). On those instruments, the delta filter can be left disabled.
◇ Statistics displayed in the dashboard reflect the sweeps visible in the historical data the chart has access to. Loading more historical bars (by scrolling left on lower timeframes or increasing the chart's bar limit) will increase the sample size and may shift the Edge rankings.
◇ The Best Edge banner requires a minimum of 5 sweeps per type to qualify. Types with fewer sweeps are shown in the dashboard but do not compete for the banner.
◇ Past sweep behavior on a given liquidity type does not guarantee future sweep behavior. The dashboard provides a statistical profile of historical sweeps; trade decisions remain the user's responsibility.
◇ Session times are interpreted in the America/New_York timezone regardless of the chart's session timezone. The default windows correspond to common Asia / London / NY conventions but can be edited freely.
UNIQUENESS:
The Liquidity Sweep Profiler is built around a feedback loop that most liquidity-tracking indicators do not provide. It detects liquidity levels, monitors them for sweeps, measures what happened after each sweep, and aggregates the results into a per-type statistical profile on the current chart. The trader sees not just where liquidity sits, but which categories of liquidity have actually produced clean reversals on the specific instrument and timeframe in question. Most competing tools stop at plotting the levels and flagging sweeps, leaving the trader to estimate behavior by eye. The Sweep Profiler turns this into structured data with sample counts, average magnitudes, and an Edge ratio that captures the recovery-to-breach trade-off.
The indicator also combines several feature categories that are usually distributed across multiple tools: intraday session tracking, higher timeframe key levels, chart-structure liquidity (swings and equal highs/lows), volume and delta quality filters, weekday filtering, and a live Active Sweep Tracker that compares the current unresolved sweep to its historical baseline in real time. All of this is unified into one dashboard with a Best Edge banner that surfaces the strongest-performing liquidity type at a glance. Display values can be expressed in ATR, raw price, pips, or ticks, so the same indicator reads naturally on indices, forex, futures, and crypto without manual conversion. Sweep detection itself is configurable from strict same-bar rejection to multi-bar close-back-through, letting the trader tune the detection logic to match the rejection style they actually trade. インジケーター

Anchored VWAP Suite | Flux ChartsGENERAL OVERVIEW
The Anchored VWAP Suite is an all-in-one anchored VWAP toolkit designed to plot every meaningful VWAP a trader needs from a single indicator. Instead of dropping a stand-alone anchored VWAP each time the chart prints a new swing high, swing low, daily extreme, or session boundary, the indicator does that work automatically and keeps every line on the chart managed, color-coded, and labeled.
The main goal of this indicator is to give traders a clean, automatic read on where the volume-weighted average sits from every important reference point in the market — without having to manually anchor anything. Every line you see on the chart represents the average price the market has traded at since a moment that mattered: a swing high, a session open, today’s low, and so on.
It plots six different families of anchored VWAPs simultaneously: Swing High/Low, Lookback High/Low, Daily Open/High/Low, Weekly Open/High/Low, Monthly Open/High/Low, and Session High/Low (Asia, London, NY). Every family is independently configurable — you can enable only the ones you use, set the price source for each, and control the color, line style, and how many of each type stay on the chart.
The indicator also smartly merges overlapping VWAP labels at the right edge of the chart. When two or more VWAPs converge to the same level, you see one combined label like "Daily High & Swing Low" instead of multiple stacked labels fighting for space.
This indicator was developed for traders who already use anchored VWAPs as part of their workflow and want every important anchor — swing, session, daily, weekly, monthly — drawn for them automatically and kept clean even when many are active at once.
WHAT IS THE THEORY BEHIND THIS INDICATOR?
An anchored VWAP plots the average price weighted by volume, starting from a specific bar — the "anchor." Once anchored, the line continues forward and updates each bar, showing the volume-weighted average price of everyone who has traded since that anchor was set.
Why traders use it: the anchor point is usually a moment of decision in the market — a swing high where supply showed up, a daily open where the session began, or the start of a major session. Everyone who entered around that anchor is now positioned relative to the VWAP. When price reclaims or rejects the line, it tells you whether those traders are in profit or in loss as a group, and the line itself often acts as dynamic support or resistance.
The challenge with anchored VWAPs is that there are many useful anchor points. A serious trader might want VWAPs from the last swing high, the last swing low, today’s open, today’s high, today’s low, the previous week’s high, the start of the NY session, and so on. Manually anchoring all of those — and re-anchoring them every time a new extreme prints — is tedious and error-prone.
The Anchored VWAP Suite handles this automatically. It detects every meaningful anchor point on the chart, draws the VWAP from that anchor, keeps it updated as new extremes print, retires old VWAPs as they age out, and presents the whole set in a way that stays readable even when ten or more lines are on the chart at once.
ANCHORED VWAP SUITE FEATURES
The Anchored VWAP Suite includes 7 main features:
Session Anchors
Swing Anchors
Lookback Anchors
Daily Anchors
Weekly Anchors
Monthly Anchors
Customization Options
🔹 Method
Method controls how each new bar affects a VWAP after its anchor is set. Three modes are available:
◇ Standard: every bar from the anchor counts equally. This is the classic anchored VWAP — older bars carry the same weight as the most recent ones. The line becomes steadily slower to respond as the anchor moves further into the past.
◇ EMA: recent bars are weighted more heavily, using a 2/(N+1) coefficient. The VWAP responds faster to new price action while still tracking back to the anchor point.
◇ RMA: also weights recent bars more, but with a slower 1/N coefficient (Wilder's smoothing). Smoother than EMA, but lags more.
The default is RMA, which produces a responsive line that behaves consistently whether the anchor is recent or far back.
🔹 Period
Period sets the length used by the EMA and RMA modes. Larger values smooth more — the line moves less. Smaller values make the line more reactive but jumpier. Period is ignored when Method is set to Standard, since Standard treats every bar equally regardless of length.
The default is 20.
🔹 Max VWAP Length
Max VWAP Length caps how far back a single VWAP can anchor before it's dropped from the chart. The default of 5,000 bars covers most use cases. Raise it if you need to keep very old anchored VWAPs visible — for example, swing VWAPs from far back in history. Lower it if you find the indicator slowing down on heavy charts; a smaller cap means less work to render and a snappier response when many VWAPs are active at once.
This cap also applies when a new VWAP is first drawn: anchors older than the configured limit are not created, so every line on the chart always fits inside the configured length.
COMMON ANCHOR SETTINGS: SOURCE & COUNT
Beyond the General Configuration above, two settings — Source and Count — appear in nearly every anchor family. Because they work the same way across all of them, they are explained here once and then referenced inside each anchor family below.
🔹 Source
Source controls which price each bar contributes to the VWAP after the anchor is set, but it does not change the anchor itself. The anchor bar is always pinned to its defining extreme: a Swing High VWAP anchors at the actual high of the swing-high candle, a Daily Open VWAP anchors at the actual open of the day, a Daily Low VWAP anchors at the actual low, and so on. From the bar after that, the Source you choose decides which price gets fed into the volume-weighted calculation.
Available sources:
◇ High — only the high of each bar contributes
◇ Low — only the low of each bar contributes
◇ Close — only the close of each bar contributes
◇ Open — only the open of each bar contributes
◇ HLC3 — average of high, low, and close (the classic "typical price")
◇ HL2 — midpoint of high and low
◇ OHLC4 — average of open, high, low, and close
In practice, most traders leave Source at the default for each anchor type: High for "high" anchors, Low for "low" anchors, Open for open-based anchors. Switching to HLC3, HL2, or OHLC4 produces a smoother VWAP that's less sensitive to long wicks, while sticking with High, Low, or Close keeps the line tight to a single price point on every bar.
🔹 Count
Count controls how many VWAPs of a given type are kept on the chart at once. As new anchors form, older ones drop off automatically — so a Count of 3 on Daily Open VWAPs means the indicator always shows the three most recent daily-open VWAPs and quietly drops anything older.
Set Count to 1 for a clean chart that only shows the latest anchor of each type. Raise it when you want a side-by-side view of how price has interacted with multiple historical anchors of the same kind.
SESSION ANCHORS
🔹 What Are Session Anchors?
Session anchors are VWAPs anchored to the session high and session low of the three major intraday sessions: Asia, London, and New York. They appear as each session develops and lock in once the session closes.
🔹 Default Session Times (New York Time)
◇ Asia: 20:00 – 22:00
◇ London: 02:00 – 04:00
◇ New York: 10:00 – 12:00
🔹 Live Re-Anchoring
While a session is open, the high and low VWAPs re-anchor automatically each time price prints a new extreme inside that session. The moment the session ends, the final anchors are confirmed and stay on the chart, giving traders a clean record of where the session’s volume-weighted averages sit relative to current price.
🔹 Session Boxes and Labels
Each session is also drawn as a colored box that expands as price moves. The box contains the full high-to-low range of the session and is labeled with the session name (Asia, London, NY) along its top edge. Boxes from previous sessions are kept on the chart so you can quickly see the prior session’s range alongside the live one.
🔹 Customization Options
Show / Hide toggle for each session (Asia, London, NY)
High and Low source for each session
High color and Low color for each session
Show / Hide Session Boxes toggle and box color
Show / Hide Session Labels toggle
Line style (Solid, Dotted, Dashed) and width for session VWAPs
SWING ANCHORS
🔹 What Are Swing Anchors?
Swing anchors are VWAPs drawn from the last confirmed swing high or swing low on the chart. A swing high is a candle whose high stands above the highs of the bars surrounding it; a swing low is the opposite. Both make natural anchor points because they often mark the moment supply or demand showed up in size.
🔹 How the Indicator Detects Swings
The indicator looks for pivots using two confirmation windows: a "Swing Bars Left" count and a "Swing Bars Right" count. The current pivot must be the most extreme bar over both windows before the swing is locked in, and a VWAP is anchored to it. Larger values catch only the more meaningful swings; smaller values catch more frequent (but noisier) ones. The default is 10 bars left and 10 bars right.
🔹 Count
Up to 10 swing-high VWAPs and 10 swing-low VWAPs can be kept on the chart at once. As new swings form, older ones drop off automatically.
🔹 Extend All Toggle
When Extend All is on, every kept swing VWAP keeps drawing forward to the current bar — useful for studying how price interacts with multiple historical anchors at once. When off, each swing VWAP stops where the next one of the same direction begins, keeping the chart cleaner.
🔹 Customization Options
Show / Hide toggle for Swing High VWAPs and Swing Low VWAPs
Count for each (1–10)
Price source for each (High, Low, Close, Open, HLC3, HL2, OHLC4)
Swing Bars Left and Right (1–50)
Line style (Solid, Dotted, Dashed) and width (1–5)
Color for swing high and swing low
Extend All toggle
LOOKBACK ANCHORS
🔹 What Are Lookback Anchors?
A lookback anchor is a VWAP that re-anchors automatically every time the price prints a new extreme over a rolling window. The Highest High VWAP re-anchors whenever the current bar’s high tops the highest high of the previous N bars. The Lowest Low VWAP works the same way for new lows.
🔹 How It Helps
Where a swing anchor needs confirmation bars before it locks in, a lookback anchor responds the moment a new extreme is made. This makes lookback VWAPs useful for tracking the most aggressive recent move — they always reflect the volume-weighted average from the most recent breakout high or breakdown low.
🔹 Customization Options
Show / Hide toggles for Highest High and Lowest Low
Price source for each
Color for each
Lookback Length (2–500, default 50)
Line style and width
DAILY ANCHORS
🔹 What Are Daily Anchors?
Daily anchors are VWAPs anchored to the current trading day’s Open, High, and Low bars. They appear as the day develops and re-anchor live whenever a new daily extreme prints. At the end of the day, the active anchors are confirmed, and a fresh set begins the next day.
🔹 The Three Daily VWAPs
◇ Daily Open VWAP: anchored to the bar that opened today’s session. Tracks the volume-weighted average from the start of the day.
◇ Daily High VWAP: anchored to today’s high bar. Re-anchors when a new daily high prints.
◇ Daily Low VWAP: anchored to today’s low bar. Re-anchors when a new daily low prints.
🔹 Why It Matters
The daily open is one of the most-watched intraday levels. A VWAP from it tells you immediately whether the average trader who entered today is in profit or loss. The daily high and low VWAPs do the same for the people who entered at the day’s extremes — useful for spotting reaction zones around prior swing points.
🔹 Customization Options
Show / Hide toggles for Daily Open, Daily High, Daily Low
Count for each (1–50, lets you keep historical daily VWAPs on the chart)
Price source for each
Color for each
Line style and width
Extend All toggle
WEEKLY ANCHORS
🔹 What Are Weekly Anchors?
Weekly anchors work the same way as daily anchors, but for the current trading week’s Open, High, and Low. They appear as the week develops and re-anchor when new weekly extremes print. At the start of each new week, the previous week’s anchors are confirmed and the next week begins.
🔹 The Three Weekly VWAPs
◇ Weekly Open VWAP: anchored to the bar that opened this week.
◇ Weekly High VWAP: anchored to the week’s high bar so far.
◇ Weekly Low VWAP: anchored to the week’s low bar so far.
🔹 Why It Matters
Weekly VWAPs are useful for swing traders and for anyone watching how price holds up against bigger structural references. A break and hold above the Weekly Open VWAP often confirms the bullish case for the week; a break below confirms the bearish one.
🔹 Customization Options
Show / Hide toggles for Weekly Open, Weekly High, Weekly Low
Count for each (1–50)
Price source for each
Color for each
Line style and width
Extend All toggle
MONTHLY ANCHORS
🔹 What Are Monthly Anchors?
Monthly anchors plot VWAPs from the current month’s Open, High, and Low. Like the daily and weekly versions, they re-anchor as new monthly extremes print and confirm at the end of the month.
🔹 The Three Monthly VWAPs
◇ Monthly Open VWAP: anchored to the first bar of the current calendar month.
◇ Monthly High VWAP: anchored to the month’s high bar so far.
◇ Monthly Low VWAP: anchored to the month’s low bar so far.
🔹 Why It Matters
Monthly anchors give a longer-term read that’s especially helpful on higher-timeframe trades. They often line up with major structural levels and can highlight institutional positioning over multi-week windows.
🔹 Customization Options
Show / Hide toggles for Monthly Open, Monthly High, Monthly Low
Count for each (1–50)
Price source for each
Color for each
Line style and width
Extend All toggle
SMART RIGHT-EDGE LABELS
🔹 What the Labels Show
Every VWAP on the chart can display a small text tag at its right edge, naming what that VWAP is anchored to — for example "Swing High," "Daily Open," or "London Low." This makes it instantly clear what each line on the chart represents without needing to memorize colors.
🔹 Auto-Merging at Confluence Zones
When two or more VWAPs converge to the same price at the same bar, the indicator automatically merges their labels into one combined tag using an "&" separator. For example, if the Daily Open VWAP and a Swing Low VWAP land on the same price, the right edge shows a single label that reads "Daily Open & Swing Low" instead of two stacked labels overlapping each other.
This keeps the chart readable even when many VWAPs are active and converging at confluence zones.
🔹 Customization Options
Show / Hide VWAP Labels toggle (global)
IMPORTANT NOTES
The Anchored VWAP Suite is designed to run on intraday timeframes for the session anchors to function. Session boxes and session VWAPs are automatically hidden on Daily, Weekly, and Monthly charts. Daily, Weekly, and Monthly anchor families work on any timeframe at or below their period.
The Max VWAP Length setting controls how far back a single VWAP can anchor before it’s dropped from the chart. The default of 5,000 bars covers most use cases. If you need to keep extremely old anchored VWAPs visible, raise the value; if you find the indicator is slow on large symbols, lower it.
Live anchors (the developing daily, weekly, monthly, and session anchors) update intra-bar so the line keeps pace with price. Historical bars never repaint after they close.
When Extend All is off (default for Swing, Daily, Weekly, and Monthly families), each VWAP of a given type stops where the next one of the same type begins. This keeps the chart from looking cluttered when many historical anchors are kept.
UNIQUENESS
The Anchored VWAP Suite is unique because it consolidates every anchor family a serious anchored VWAP user would draw — swing, lookback, daily, weekly, monthly, and session — into a single managed indicator. Each family has its own price source, color, line style, count, and extend mode, which means the same script can render dozens of independently configured VWAPs at once without users needing to load multiple separate scripts. Live anchors automatically re-anchor as new extremes print during the in-progress period and lock in the moment the period closes, so the chart always reflects the most current set of meaningful anchors. Three smoothing modes — Standard, EMA, and RMA — give traders a choice between the classic cumulative anchored VWAP and faster, more responsive variants that stay usable even when the anchor is very far back. The smart right-edge label system automatically merges overlapping labels at confluence zones, which keeps the chart readable even when many VWAPs are active and crossing at the same price. By unifying all of these capabilities into one indicator with consistent styling, shared smoothing logic, and automatic anchor management, the Anchored VWAP Suite removes the need to drop and manually maintain many separate anchored VWAPs and produces a clean, deterministic read on every important VWAP across the chart. インジケーター

SuperTrend Logistic Regression | Flux ChartsGENERAL OVERVIEW
The SuperTrend Logistic Regression indicator combines the classic SuperTrend trend-following tool with a self-training logistic regression model that assigns a probability percentage to every SuperTrend flip. Each time the SuperTrend changes direction, the indicator evaluates the market conditions at the flip across 14 features spanning candle structure, trend context, and technical indicators, then outputs a probability score between 0% and 100% representing how similar the current setup is to past flips that resolved profitably on the same chart.
The model trains itself in real time using past SuperTrend signals as labeled examples. Each historical flip becomes a training example: the features captured at the flip are paired with the outcome at the next opposite flip, producing a continuously growing dataset that the model uses to refine its weights. The probability displayed on each new flip reflects what the model has learned about this specific instrument and timeframe, not a universal assumption about what makes a good signal.
screenshot: Full chart showing SuperTrend line with multiple flips and probability labels
🔹What is the purpose of the indicator?
The indicator addresses a common problem with SuperTrend: not every flip leads to a sustained trend. Many flips occur during choppy or transitional conditions and reverse quickly, producing losing signals. By scoring each flip with a probability, traders get a quantitative sense of how much confidence the model has in that specific signal based on similar past setups. The indicator does not change the SuperTrend calculation itself, so every flip is still detected and visualized. The probability score adds a filtering layer that helps traders separate high-confidence flips from low-confidence ones.
🔹What is the theory behind the indicator?
The indicator is built on the idea that market behavior around trend reversals is not random. Certain combinations of candle structure, volatility conditions, volume patterns, and prior trend context tend to precede trends that follow through, while different combinations tend to precede trends that reverse quickly. Logistic regression is a statistical method well-suited to learning these relationships. Given a set of input features and historical outcomes, it produces a set of weights that map feature combinations to probability estimates.
In this indicator, each SuperTrend flip becomes a data point. The features at the flip are recorded, and the outcome is determined at the next opposite flip. If price moved in the signal's direction (higher for bull, lower for bear), the signal is labeled as a win. Otherwise, it is labeled as a loss. The model continuously retrains on this growing dataset, adjusting weights so that feature patterns historically associated with wins produce higher probabilities, and feature patterns associated with losses produce lower probabilities.
SUPERTREND LOGISTIC REGRESSION FEATURES
SuperTrend Core
Logistic Regression Model
Candle Features
Trend Context Features
Technical Features
Separate Bull and Bear Models
Exponential Decay Weighting
Minimum Sample Gating
Probability Labels and Filtering
Gradient-Colored SuperTrend Visualization
Optional Momentum Dots
Alerts
SUPERTREND CORE
The SuperTrend is the foundation of every signal. All detection, training, and prediction is tied to SuperTrend flips. The core SuperTrend calculation in this indicator is standard: ATR multiplied by a user-defined factor produces the trailing line, and a flip occurs when price crosses through the line, changing the direction state.
🔹How SuperTrend is calculated
The SuperTrend is derived from Average True Range (ATR) with a user-configurable period and factor. When the calculated line is below price, the indicator is in an uptrend state and the line acts as dynamic support. When the line is above price, the indicator is in a downtrend state and the line acts as dynamic resistance. A flip occurs at the exact bar where price crosses through the line, changing the direction from bullish to bearish or vice versa.
🔹Why SuperTrend was chosen
SuperTrend is one of the most widely used trend-following tools on TradingView. It produces clean, deterministic signals with well-understood behavior. Rather than reinventing or modifying the underlying calculation, this indicator treats SuperTrend as a signal source and adds a separate statistical layer on top. This keeps the core behavior familiar to traders already using SuperTrend and ensures that every flip is still detected, regardless of the probability score.
🔹SuperTrend Inputs
Two inputs control the SuperTrend calculation: Factor (the ATR multiplier, default 3.0) and ATR Period (the number of bars in the ATR calculation, default 10). These correspond to the standard SuperTrend parameters. Changing these values affects where flips occur, which in turn affects what signals the model trains on.
LOGISTIC REGRESSION MODEL
Logistic regression is a statistical model that predicts binary outcomes from a set of input features. It takes each feature, multiplies it by a learned weight, sums the results, adds a bias term, and passes the total through a sigmoid function that maps the output to a probability between 0 and 1. The model learns the weights by comparing its predictions against actual outcomes and adjusting through gradient descent.
🔹What is Logistic Regression?
Logistic regression works by finding the set of weights that best separates winning signals from losing signals in feature space. A large positive weight on a feature means that higher values of that feature are associated with winning outcomes. A large negative weight means higher values are associated with losing outcomes. A weight near zero means the feature does not discriminate between winners and losers on this chart.
The sigmoid function is what turns the weighted sum into a probability. It outputs values near 0 when the weighted sum is very negative, values near 1 when the weighted sum is very positive, and values near 0.5 when the weighted sum is near zero. This gives the output a natural probability interpretation.
🔹How the model is trained
Training happens every time a new SuperTrend flip occurs. The indicator looks at all past resolved signals (signals that have already seen their next opposite flip and therefore have a known outcome) and runs gradient descent over them. Gradient descent calculates how much each weight should change to reduce the model's prediction error, then applies those changes iteratively. The indicator runs multiple training epochs on each update to ensure the weights converge reasonably well to the current data.
L2 regularization is applied to prevent any single weight from becoming extreme. Weight clipping further constrains weights to a reasonable range, avoiding instability when training data is thin or features are noisy. Together, these make the model more robust on small sample sizes.
🔹Outcome evaluation
For training to work, every historical signal needs a win/loss label. The indicator uses flip-to-flip evaluation: a bull signal is considered a win if the close at the next bear flip is higher than the close at the bull flip. A bear signal is considered a win if the close at the next bull flip is lower than the close at the bear flip. This matches the natural lifecycle of a SuperTrend trade, where entry and exit are both on flips.
🔹A Winning Signal Example
A winning bull signal forms when a bull flip occurs and, by the time the next bear flip occurs, the close at the bear flip is higher than the close at the bull flip. The probability label on the bull flip reflects the model's confidence at entry, while the outcome is confirmed at the next flip.
🔹A Losing Signal Example
A losing signal forms when price fails to move in the signal's direction by the next opposite flip. For example, a bull flip where price immediately reverses and ends lower than entry when the next bear flip occurs.
CANDLE FEATURES
Candle features describe the shape and volume of the flip candle itself, compared against recent averages. These are the most direct, local features the model uses. All candle features are toggleable in the "Candle Features" input group and are normalized to a range centered at zero, where zero means the feature value matches the recent average.
🔹Body
Body measures the size of the flip candle's body (the absolute distance from open to close) relative to the average body size over the recent lookback window. A value above zero means the flip candle had a larger body than recent candles, suggesting stronger conviction. A value below zero means the body was smaller than usual, suggesting indecision. The model learns whether strong-bodied flips tend to produce winning trends on this chart.
🔹Upper Wick
Upper Wick measures the length of the upper wick (the distance from the body top to the high) relative to recent average upper wicks. Long upper wicks can indicate rejection at highs, while short upper wicks suggest price accepted the top of the candle cleanly. The model learns how upper wick behavior at flips correlates with outcomes.
🔹Lower Wick
Lower Wick measures the length of the lower wick (the distance from the body bottom to the low) relative to recent average lower wicks. Long lower wicks can indicate rejection at lows, while short lower wicks suggest clean acceptance. This feature is disabled by default because it historically showed the weakest predictive signal across tested instruments.
🔹Range
Range measures the total high-to-low range of the flip candle relative to the recent average range. A wide-range flip candle indicates volatility expansion, while a tight-range candle suggests contraction. The model learns whether flips during volatility expansion tend to perform differently from flips during contraction.
🔹Volume
Volume compares the flip candle's volume to the average volume over the recent lookback window. Higher than average volume at a flip generally indicates stronger participation, while lower than average volume suggests weak conviction. The model learns how volume conviction at flips relates to trend outcomes.
🔹Delta Volume
Delta Volume estimates the net buying versus selling pressure within the flip candle by sampling 1-minute lower timeframe bars. The indicator distributes each 1-minute bar's volume to either the bullish or bearish side based on whether that bar closed up or down, then outputs the net direction as a feature value from fully bearish to fully bullish. This gives the model a finer-grained view of what happened inside the flip candle beyond the aggregate close.
TREND CONTEXT FEATURES
Trend context features describe the market conditions leading into the flip, not just the flip candle itself. These are calculated from the lookback window before the flip. All trend context features are toggleable in the "Trend Features" input group.
🔹Momentum
Momentum counts consecutive candle direction leading into the flip. Each bullish candle increments the streak in the positive direction, and each bearish candle increments it in the negative direction. The value is capped so very long streaks do not dominate. A strongly positive momentum value before a bull flip indicates buying was already building; a strongly negative value before a bull flip indicates a sharp reversal from recent selling. The model learns which regime tends to produce better bull outcomes.
🔹Pre-Flip Trend
Pre-Flip Trend averages the signed candle bodies (close minus open) over the recent lookback window, normalized by the average range. This gives a broader picture of whether the market was drifting up, drifting down, or chopping sideways before the flip. Unlike momentum, which only counts direction, pre-flip trend captures the magnitude of the directional bias.
🔹ATR Slope
ATR Slope compares the current ATR value to the ATR value from the lookback period ago. A positive slope means volatility is expanding into the flip, often associated with stronger follow-through. A negative slope means volatility is contracting, often associated with weaker signals. The model learns whether volatility expansion at the flip is a positive or negative factor for the specific instrument.
🔹Volume Trend
Volume Trend compares the average volume of recent bars to the average volume of bars further back. A positive value means participation is increasing; a negative value means it is fading. This feature is disabled by default because it historically showed weak signal across tested instruments.
🔹ST Distance
ST Distance measures how far price was from the SuperTrend line before the flip, normalized by ATR. A value near zero means the flip was a tight cross; a larger absolute value means price was well above or below the line and had to travel significantly to trigger the flip. The model learns whether tight crosses or aggressive breaks produce better outcomes.
🔹Trend Duration
Trend Duration measures how many bars the previous trend lasted before flipping. Short previous trends might indicate choppy conditions where flips come and go quickly. Longer previous trends might signal genuine exhaustion at reversal. The model learns how previous trend length relates to the success of the current flip.
TECHNICAL FEATURES
Technical features bring in classic technical indicator readings at the flip point. These are toggleable in the "Technical Features" input group.
🔹RSI
RSI (Relative Strength Index) is calculated with the same lookback as the other features and then centered around the 50 level. Values near the oversold end push the feature toward -1, values near the overbought end push it toward +1, and values near 50 are near zero. The model learns whether overbought or oversold RSI readings at flips correlate with different outcomes on the specific chart. On some instruments, flips at extreme RSI readings perform well; on others, they perform poorly. The model discovers this from the data.
🔹BB Position
BB Position measures where price sits within Bollinger Bands at the flip. Price at the lower band gives a value of -1, price at the basis gives 0, and price at the upper band gives +1. The Bollinger Bands are calculated with the same lookback as the other features. This feature captures mean-reversion versus breakout context: a flip near the lower band is different from a flip near the upper band, and the model learns which band positions tend to precede successful trends.
SEPARATE BULL AND BEAR MODELS
The indicator maintains completely independent models for bull signals and bear signals. Each has its own set of weights, its own training dataset, and its own prediction logic.
🔹Why separate models?
A single model that assumes features mean opposite things for opposite directions would be an oversimplification. For example, a long lower wick on a bull flip might indicate strong buyer defense, while a long lower wick on a bear flip might indicate weak sellers. These are different setups with different implications, and forcing them into one model with flipped signs would blur the signal.
By training separate bull and bear models, the indicator gives each direction room to learn its own relationships. A feature that strongly predicts bull wins might be irrelevant or even negatively correlated for bear wins, and the separate models can capture this without interference.
🔹Implementation
Each direction has its own array of signals and its own weights array. When a bull flip occurs, the bull signals array is updated and the bull model is retrained. When a bear flip occurs, the bear signals array and bear model are updated separately. The two models never share state, and their predictions are based only on their own training data.
EXPONENTIAL DECAY WEIGHTING
Not all training examples are equally relevant. Recent signals reflect current market conditions, while older signals may reflect regimes that no longer apply. The indicator addresses this with exponential decay weighting during training.
🔹How decay works
Each resolved signal is assigned a weight based on its age. The newest resolved signal gets the highest weight (1.0 after normalization), and older signals get progressively smaller weights based on a decay factor. A decay factor close to 1 means old and new signals are weighted roughly equally. A decay factor close to 0 means recent signals dominate and old signals are effectively ignored.
🔹Why decay is important
Markets change. A feature that strongly predicted wins six months ago might have weak or reversed predictive power now. Without decay weighting, the model would be slow to adapt to new conditions because old data would dilute the influence of recent outcomes. With decay weighting, the model naturally updates its weights to reflect the most recent dynamics while still using historical data to maintain stability.
PROBABILITY LABELS AND FILTERING
When a new flip passes the minimum sample gate, the indicator calculates the probability from the current feature values and the trained weights. This is displayed as a colored triangle label at the flip bar.
🔹Label Appearance
Bull flip labels appear below the bar as upward-pointing green triangles with the probability percentage inside. Bear flip labels appear above the bar as downward-pointing red triangles with the probability percentage inside. The colors are partially transparent so the labels do not obscure price action.
🔹High Probability Example
A high probability label means the model found the current flip's features similar to past flips that resolved as wins. For example, a bull flip with strong pre-flip momentum, expanding volatility, positive delta volume, and price well above the SuperTrend line might receive a probability above 65% if those conditions have historically preceded successful bull trends.
🔹Low Probability Example
A low probability label means the model found the current flip's features similar to past flips that resolved as losses. Low probability signals might share characteristics with flips that occurred during choppy conditions or weak momentum regimes.
🔹Min Probability Filter
A Min Probability input lets users hide labels below a confidence threshold. Setting it to 0 shows every signal. Setting it to 60 only shows labels where the model estimates at least 60% probability of a profitable outcome. This filter only affects visual display and alerts. The SuperTrend line and color change still appear on every flip, and the model still trains on every signal regardless of the filter.
🔹Interpreting the probability
The probability represents the model's estimate that the current flip will resolve profitably by the next opposite flip, based on how similar past flips performed. A 70% label does not guarantee a win; it means the model finds this flip's conditions more similar to past winners than past losers. Probabilities should be interpreted relative to the base rate (the overall percentage of past flips that won) rather than as absolute guarantees.
VISUAL CUSTOMIZATION
The indicator includes several visual elements that help traders see the SuperTrend state and the probability labels clearly.
🔹Gradient-Colored SuperTrend
The SuperTrend line is plotted with a color gradient based on how far current price has moved from the line since the most recent flip. The color intensifies as price extends further in the trend direction, giving a visual indication of how developed the trend is at any point. Fills between the body midpoint and the SuperTrend line reinforce this gradient effect.
🔹Momentum Dots
An optional momentum dots display overlays circles on the SuperTrend line with colors that shift between yellow and the trend color (green or red) based on price position. This provides a secondary visual cue for trend strength. The Enable Momentum Dots input toggles this display on or off.
INPUTS
🔹SuperTrend
Factor: ATR multiplier used in the SuperTrend calculation. Default is 3.0. Increasing this value makes the SuperTrend less sensitive and produces fewer, wider flips. Decreasing it makes the SuperTrend more sensitive and produces more frequent flips.
ATR Period: Number of bars used in the ATR calculation. Default is 10. Larger periods smooth the ATR, while smaller periods make it more reactive.
🔹Display
Enable Momentum Dots: Toggles the momentum dots overlay on the SuperTrend line. Default is on.
🔹Filters
Min Probability %: Minimum probability required for a signal label to appear on the chart. Default is 0 (show all signals). Setting this to a higher value hides lower-confidence signals.
🔹Candle Features
Body: Enable body size feature. Default is on.
Upper Wick: Enable upper wick feature. Default is on.
Lower Wick: Enable lower wick feature. Default is off.
Range: Enable candle range feature. Default is on.
Volume: Enable volume feature. Default is on.
Delta Vol: Enable delta volume feature using 1-minute LTF data. Default is on.
🔹Trend Features
Momentum: Enable consecutive candle direction feature. Default is on.
Pre-Flip Trend: Enable average directional body feature. Default is on.
ATR Slope: Enable volatility expansion feature. Default is on.
Volume Trend: Enable volume building feature. Default is off.
ST Distance: Enable distance from SuperTrend line feature. Default is on.
Trend Duration: Enable previous trend length feature. Default is on.
🔹Technical Features
RSI: Enable RSI feature. Default is on.
BB Position: Enable Bollinger Band position feature. Default is on.
ALERTS
The indicator includes alert conditions for the following events:
Bull Flip: Fires on a confirmed bullish SuperTrend flip that passes the Min Probability filter.
Bear Flip: Fires on a confirmed bearish SuperTrend flip that passes the Min Probability filter.
Users can configure alerts from the TradingView alerts menu and choose which condition to subscribe to.
IMPORTANT NOTES
🔹Non-Repainting Behavior
Signals are detected and probability labels are calculated on the bar where the SuperTrend flip confirms. The probability value is based only on feature values at the time of the flip and the model weights as of that bar. The outcome label used for training is only recorded after the next opposite flip has occurred, so the current bar's prediction never uses future data.
🔹Probability Interpretation
The probability represents the model's learned estimate from past data on the current chart. It is not a guaranteed win rate. Markets can shift in ways the model has not yet seen, and sample size is always a limitation. Probabilities should be used as one input among many in a trading decision, not as a standalone signal.
UNIQUENESS
The SuperTrend Logistic Regression indicator takes a distinct approach to SuperTrend enhancement. Rather than altering the SuperTrend calculation itself, it preserves the classic SuperTrend behavior and adds a statistical layer on top that scores each flip independently. Every flip is still detected, so users never miss signals; the probability only determines what gets visually emphasized. The logistic regression implementation uses proper gradient descent with L2 regularization, weight clipping, and exponential decay weighting, making the training process stable and adaptive. Weights persist across bars and are refined with each new resolved signal rather than being recalculated from scratch. Separate bull and bear models learn direction-specific feature relationships independently, avoiding the oversimplification of assuming features have opposite meanings for opposite directions. All 14 features are toggleable, spanning candle structure, trend context, and technical indicators, so users can customize which market characteristics feed into the model. The probability is backed by a concrete, testable definition: the likelihood that the current flip will resolve profitably by the time the next opposite flip occurs, based on how similar past flips performed. This matches how SuperTrend is naturally traded on flip-to-flip cycles. Minimum sample gating ensures that probability labels only appear once the model has enough training data to make meaningful predictions, preventing misleading early signals. Together, these choices make the indicator a disciplined, data-driven extension of SuperTrend that adapts to each instrument and timeframe it runs on, rather than applying a one-size-fits-all scoring system. インジケーター

FVG Quality Scorer | Flux ChartsGENERAL OVERVIEW:
FVG Quality Scorer is a Fair Value Gap analysis tool designed to extend beyond basic gap detection. Instead of treating every gap equally, this indicator evaluates each FVG across four independent scoring axes and assigns a letter grade (A through D) based on configurable thresholds. This creates a structured view of the chart where gaps are organized by their relative characteristics.
Every FVG is scored once at the moment of creation across Displacement Strength, Volume Delta, Contextual Location, and Structural Alignment. Each axis is scored from 0 to 25, producing a weighted composite score out of 100. Scores are fixed at creation, ensuring the evaluation reflects the conditions present at the time of formation and does not change retroactively. In contrast, each FVG’s lifecycle state (Fresh, Tested, Partially Filled, Mitigated) updates in real time as price interacts with the zone, providing a current view of how price is interacting with each gap.
A companion dashboard tracks grade distribution, active counts, total formations, and average fill times across the visible chart history. Score labels at the edge of each FVG box provide a quick reference to the assigned grade, with optional tooltips displaying the full scoring breakdown and current lifecycle state.
FEATURES:
◇ Four-axis scoring system: Displacement Strength, Volume Delta, Contextual Location, and Structural Alignment, each scored from 0 to 25 for a maximum composite score of 100
◇ Letter grade assignment (A, B, C, D) using per-axis threshold gates with configurable minimum scores and required axes per grade
◇ Lower timeframe volume delta analysis using intrabar data to estimate directional volume distribution within the displacement candle
◇ Higher timeframe FVG nesting detection to identify when current timeframe gaps are positioned within higher timeframe imbalances
◇ Session timing reference covering Asian, London, New York AM, and New York PM sessions based on New York time
◇ Premium and Discount zone scoring using a proportional gradient based on the FVG’s position within a defined price range
◇ Market structure classification using swing high and swing low sequences to label conditions as bullish, bearish, or mixed
◇ Break of Structure (BOS) tracking using crossover logic to identify recent structural breaks relative to the FVG direction
◇ Post-sweep proximity detection identifying FVGs that form after a liquidity sweep of a swing level
◇ Lifecycle state tracking: Fresh → Tested → Partially Filled → Mitigated, with corresponding visual updates on the chart
◇ Score labels with optional tooltips displaying axis scores and current lifecycle state
◇ Dashboard displaying active counts, total formations, and average bars to mitigation per grade, along with nearest A-grade distance tracking
◇ Configurable axis weights for adjusting the influence of each scoring dimension in the composite score
◇ Alerts for newly formed A-grade and B-grade FVGs based on defined grading criteria
WHAT IS A FAIR VALUE GAP?
A Fair Value Gap is a three-candle price formation that highlights an imbalance in price movement. It occurs when the third candle’s wick does not overlap with the first candle’s wick, leaving a visible gap created by the middle candle. This middle candle is often referred to as the “displacement” candle, as it reflects a relatively strong move in price over a short period.
In a bullish FVG, the low of the third candle is positioned above the high of the first candle. In a bearish FVG, the high of the third candle is positioned below the low of the first candle. The space between these two wicks defines the FVG zone.
Within ICT and Smart Money Concepts frameworks, these gaps are interpreted as areas where price moved quickly, leaving limited trading activity at certain levels. As a result, these zones are often monitored as areas of interest if price revisits them in the future. However, not all FVGs share the same characteristics, and variations in formation context are what this indicator evaluates using its scoring system.
WHAT IS THE THEORY BEHIND THIS INDICATOR?
The core premise behind FVG Quality Scorer is that gap detection alone does not capture the full context of how Fair Value Gaps form. On any given trading day, multiple FVGs can appear across timeframes, each with different characteristics depending on the surrounding price action. This indicator evaluates those characteristics using a structured scoring approach.
Not all FVGs form under the same conditions. For example, a gap created by a relatively small candle during low volume periods in a ranging market will differ in structure from one formed during a strong displacement move with increased volume, aligned with broader market structure and session timing. These differences are often considered when analyzing FVGs, but evaluating them manually across multiple factors and timeframes can be time intensive and subjective. FVG Quality Scorer standardizes this process by quantifying these characteristics into a consistent framework.
The indicator’s four-axis model reflects commonly used analytical considerations within ICT and Smart Money Concepts methodologies. These include measuring displacement strength, assessing volume characteristics, evaluating contextual positioning within a range or session, and identifying alignment with market structure. By organizing these factors into a rule-based system, the indicator provides a consistent method for comparing FVG formations based on their underlying attributes.
Axis 1: Displacement Strength (0 to 25 points)
The displacement candle is the middle candle of the three-bar FVG formation and is the candle responsible for creating the gap. This axis evaluates the characteristics of that candle based on its size, structure, and relation to surrounding price action. Candles with larger bodies relative to their total range, higher relative size compared to recent volatility, and alignment with neighboring candles are scored differently than candles with smaller bodies or more pronounced wicks.
The indicator evaluates three sub-metrics within this axis. Body-to-range ratio (0 to 10 points) measures how much of the candle’s total range is composed of the body versus the wicks. A ratio of 0.85 or higher receives 10 points, ratios between 0.70 and 0.85 receive 7 points, ratios between 0.55 and 0.70 receive 4 points, and anything below 0.55 receives zero.
ATR multiple (0 to 10 points) compares the displacement candle’s total range to the 14-period Average True Range. A range equal to or greater than 2 times the ATR receives 10 points, 1.5x to 2x receives 7 points, 1x to 1.5x receives 4 points, and values below 1x receive zero.
Consecutive displacement (0 to 5 points) evaluates whether the candles immediately before and after the displacement candle close in the same direction as the FVG. If both surrounding candles align, the FVG receives 5 points. If one aligns, it receives 2 points. If neither aligns, it receives zero. This metric reflects the consistency of direction across the three-candle formation.
Axis 2: Volume Delta (0 to 25 points)
Volume reflects how much activity occurred, while volume delta separates that activity into directional components based on price movement. By analyzing lower timeframe data, volume can be divided into buying and selling activity within the displacement candle, providing additional context on how volume was distributed during the move.
The indicator uses lower timeframe intrabar data (configurable, default 1 minute) to estimate this distribution. Each lower timeframe candle within the displacement bar is classified as bullish volume (close above open) or bearish volume (close at or below open), and these values are aggregated to form a directional breakdown.
This axis evaluates three sub-metrics. LTF dominance (0 to 12 points) measures the percentage of total volume on the displacement candle that aligns with the FVG direction. Values above 75% receive 12 points, 60% to 75% receive 8 points, 50% to 60% receive 4 points, and values below 50% receive zero.
Relative volume (0 to 8 points) compares the displacement candle’s volume to the 20-period volume average. Volume equal to or greater than 2 times the average receives 8 points, 1.5x to 2x receives 5 points, 1x to 1.5x receives 2 points, and values below the average receive zero.
Volume rising (0 to 5 points) evaluates whether volume increases across the three candles of the formation, where volume on the displacement candle exceeds the prior candle, and the prior candle exceeds the one before it. This metric captures the progression of volume across the formation.
Screenshot: Zoomed view showing the Delta volume panel below with visible volume spike on the displacement candle]
Axis 3: Contextual Location (0 to 25 points)
The location of an FVG within the recent price range provides additional context for how it formed. In ICT methodology, the range is often divided into two halves using the equilibrium (50%) level. The lower half is referred to as the “discount zone,” while the upper half is referred to as the “premium zone.”
A bullish FVG forming in the lower portion of the range is positioned within the discount zone, while a bearish FVG forming in the upper portion is positioned within the premium zone. FVGs that form closer to the midpoint or on the opposite side of the range can be described as having different contextual positioning relative to the defined range.
This indicator incorporates that positioning into its scoring by evaluating where the FVG forms within the selected lookback range, using a proportional approach rather than a fixed cutoff at the midpoint.
In addition to premium and discount positioning, other contextual factors can be used to describe how an FVG forms within the broader price environment. These include whether the FVG appears after a liquidity sweep, whether it is positioned within a higher timeframe FVG, and whether it forms during specific session windows. These elements provide additional structure for evaluating the formation context.
This axis evaluates four sub-metrics. Premium and Discount scoring (0 to 8 points) uses a proportional gradient across the recent price range defined by the Range Lookback setting. For bullish FVGs, gaps forming in the lower half of the range (below equilibrium) receive the full 8 points. Gaps forming above equilibrium receive a reduced score that decreases progressively as the FVG approaches the top of the range. The same logic is applied in reverse for bearish FVGs.
HTF FVG nesting (0 to 8 points) evaluates whether the current FVG is fully contained within a higher timeframe FVG of the same direction. The indicator retrieves higher timeframe data using the configurable HTF input and checks for this containment condition.
Post-sweep proximity (0 to 5 points) evaluates whether a swing level was exceeded shortly before the FVG formed. A sweep is defined as price moving beyond a swing high or swing low and then returning back within the prior range. This metric checks for that condition within a configurable lookback window.
Killzone timing (0 to 4 points) evaluates whether the FVG forms during predefined session windows. The indicator converts bar time to New York time and checks against four intervals: Asian session (20:00 to 00:00), London session (02:00 to 05:00), New York AM (09:30 to 11:00), and New York PM (13:30 to 16:00).
Axis 4: Structural Alignment (0 to 25 points)
Market structure provides a framework for describing how price is evolving over time. This axis evaluates how the direction of an FVG relates to the current structure defined by swing highs and swing lows.
The indicator identifies swing highs and swing lows using pivot detection with a configurable swing length and evaluates three sub-metrics. Market structure classification (0 to 10 points) compares the most recent swing highs and swing lows to determine whether price is forming higher highs and higher lows, lower highs and lower lows, or a mixed sequence. These conditions are labeled as bullish, bearish, or mixed. Scoring is then assigned based on the relationship between the FVG direction and the identified structure.
EMA alignment (0 to 8 points) evaluates the position of price relative to a configurable Exponential Moving Average (default 50 period). For bullish FVGs, higher scores are assigned when price is positioned above the EMA, while for bearish FVGs, higher scores are assigned when price is positioned below the EMA. Scores are reduced when price is positioned on the opposite side relative to the FVG direction.
Recent BOS detection (0 to 7 points) evaluates whether a Break of Structure (BOS) has occurred within a configurable lookback window (default 20 bars). A BOS is defined as price closing beyond a recent swing high or swing low. The indicator uses crossover logic to identify these events and ensures each structural break is only counted once. Scoring is based on whether a recent BOS aligns with, differs from, or is absent relative to the FVG direction.
Screenshot: Showing BoS and HH
Grade Assignment System
Instead of using a single composite score cutoff, FVG Quality Scorer applies a per-axis threshold system for grade assignment. For each grade level (A, B, C), you can define which axes are required and the minimum score each must meet. An FVG must satisfy all required axis thresholds to be assigned a given grade. This structure ensures that each selected dimension is evaluated independently rather than relying on a single averaged value.
For example, with default settings, an A grade requires all four axes to meet a minimum score of 12 out of 25. A B grade requires only the Displacement and Volume axes to meet a minimum of 12, while a C grade requires those same axes to meet a minimum of 8. Any FVG that does not meet the criteria for A, B, or C is assigned a D grade. These thresholds and required axes can be fully customized for each grade level.
A weighted composite score (0 to 100) is also calculated and displayed in the score label tooltip for reference, but it does not determine the assigned grade. This allows the grading system to operate independently of the composite value. The composite score uses configurable axis weights (default 25 per axis), which can be adjusted to modify how each dimension contributes to the total score.
Lifecycle State Machine
Each FVG is tracked through a series of lifecycle states as price interacts with the zone, and these transitions occur automatically regardless of grade. The lifecycle begins at Fresh when the FVG forms and no candle has interacted with the zone boundary. When price first wicks into the boundary (detected using crossover logic that excludes the formation candle), the state transitions to Tested.
If price closes within the zone, the state changes to Partially Filled, and the visual appearance of the box is adjusted to reflect this state. If price later closes back outside the zone, the state returns to Tested rather than Fresh, as the zone has already been interacted with. When price fully crosses through the zone, the FVG is marked as Mitigated. The definition of mitigation can be configured to require either a wick crossing or a full candle close beyond the zone.
Mitigated FVGs can either be removed from the chart or remain visible as dimmed boxes using the Show Historic setting. When mitigation occurs, the right edge of the box is fixed at the candle where the event took place. The current lifecycle state is displayed in the tooltip alongside the scoring breakdown when hovering over the score label.
🔹 Dashboard
The dashboard provides a statistical summary of FVG activity across the visible chart history. It is structured as a table with one row per grade (A through D) and three data columns. The Active column displays the number of unmitigated FVGs currently present on the chart for each grade. The Total column shows the total number of FVGs formed for each grade across the chart history. The Avg Fill Time column displays the average number of bars between formation and mitigation for FVGs of that grade that have been fully mitigated. This calculation includes only completed (mitigated) FVGs.
A bottom row in the dashboard tracks the nearest active A-grade FVG relative to the current price. It displays the distance from the current close to the nearest boundary of the zone (the lower boundary if the FVG is above price, or the upper boundary if below), along with a directional indicator. If price is currently within an A-grade zone, the dashboard displays “Inside zone.” If no A-grade FVGs are active, it displays “None active.” The dashboard position and text size can be configured.
Screenshot: Close up of the dashboard table showing all four grade rows with Active, Total, and Avg Fill Time populated. Include the Nearest A row showing a directional arrow with distance.
🔹 Score Labels and Tooltips
Each FVG box displays its grade letter (A, B, C, or D) centered inside the zone. At the right edge of the box, a small label shows the composite quality score out of 100. Hovering over this label reveals a detailed tooltip with the complete scoring breakdown: the total score, the grade, individual scores for all four axes (each out of 25), and the current lifecycle state. This gives you instant access to why a particular FVG earned its grade without needing to open any settings. Score labels can be toggled off using the Show Score Labels setting if you prefer a cleaner chart.
INPUTS:
🔹 Settings
◇ Swing Length: Lookback period for pivot high and pivot low detection used in market structure analysis, BOS tracking, and sweep detection. Higher values produce fewer, more significant swing points. Default 5.
◇ ATR Length: Period for the Average True Range calculation used in displacement scoring. Default 14.
◇ LTF for Volume Delta: Lower timeframe used to calculate intrabar volume delta on the displacement candle. Default 1 minute. Must be lower than the chart timeframe for accurate results.
◇ HTF for FVG Nesting: Higher timeframe checked for FVG nesting confluence. Default 60 minutes (1 hour). Should be higher than the chart timeframe.
◇ Range Lookback: Number of bars used to calculate the premium and discount range for contextual scoring. Default 50.
◇ Sweep Proximity Window: Number of bars to look back for recent liquidity sweeps when scoring post sweep proximity. Default 5.
◇ BOS/CHoCH Lookback: Maximum number of bars a Break of Structure can be from the current bar and still be considered "recent" for structural scoring. Default 20.
◇ EMA Length: Period for the Exponential Moving Average used in structural alignment scoring. Default 50.
◇ Mitigation Method: Determines how FVG invalidation is measured. Wick mode triggers mitigation when a wick crosses through the zone. Close mode requires a candle close beyond the zone. Default Wick.
Screenshot of the Settings input group in TradingView showing all the configurable parameters: Swing Length, ATR Length, LTF, HTF, Range Lookback, Sweep Window, BOS Lookback, EMA Length, and Mitigation Method.
🔹 Axis Weights
◇ Displacement Weight: Relative weight applied to the Displacement Strength axis when calculating the composite score displayed in the tooltip. Higher weight increases this axis's influence on the total score. Default 25.
◇ Volume Delta Weight: Relative weight for the Volume Delta axis. Default 25.
◇ Contextual Weight: Relative weight for the Contextual Location axis. Default 25.
◇ Structural Weight: Relative weight for the Structural Alignment axis. Default 25.
🔹 Display
◇ Minimum Display Grade: Hides FVGs below this grade threshold from the chart. Set to D to show all grades, or A to show only the highest quality gaps. Default C.
◇ Show Historic (Mitigated): When enabled, mitigated FVGs remain visible as grayed out boxes instead of being removed from the chart. Useful for studying how different grade levels performed historically. Default off.
◇ Show Score Labels: Toggles the score labels at the right edge of each FVG box. Hover over the label to see the full axis breakdown tooltip. Default on.
◇ Grade Colors (A → D): Four color pickers on a single row controlling the color for each grade tier. Defaults are green (A), teal (B), amber (C), and gray (D).
🔹 Dashboard
◇ Show Dashboard: Toggles the statistics dashboard on or off. Default on.
◇ Dashboard Position: Choose from all nine screen positions (top, middle, bottom combined with left, center, right). Default Top Right.
◇ Dashboard Size: Controls the text size of the dashboard. Options are Tiny, Small, Normal, and Large. Default Small.
🔹 A Grade / B Grade / C Grade
◇ Each grade tier has its own settings group with four minimum score thresholds (one per axis, 0 to 25) and four toggle switches to select which axes are required for that grade. An FVG must meet or exceed the minimum score on every required axis to earn the grade. Grades are checked top down: A first, then B, then C. Any FVG that fails all three checks receives a D grade. Unchecking a required axis means that axis is ignored for that grade's evaluation, allowing you to create grade profiles that focus on specific quality dimensions.
Screenshot of the settings panel showing the A Grade, and B Grade input groups with their min score thresholds and require toggles visible.
ALERTS:
◇ New A Grade FVG: Fires when a new Fair Value Gap is detected that meets all A grade requirements. Use this to get notified of the highest quality setups without watching the chart continuously.
◇ New B Grade FVG: Fires when a new Fair Value Gap is detected that meets B grade requirements but does not qualify for A grade.
UNIQUENESS:
Many FVG indicators on TradingView focus on detecting gaps and may include basic filtering based on size or direction. FVG Quality Scorer extends this approach by evaluating each gap across multiple dimensions, including lower timeframe volume distribution, higher timeframe positioning, market structure classification, and session-based context. These factors are combined into a structured scoring framework.
The axis-based grading system provides an alternative to single-threshold scoring methods. Instead of relying on a single composite cutoff, each grade level is determined by minimum requirements across selected axes. This ensures that each specified dimension meets defined criteria rather than being offset by higher values in other areas.
The lifecycle state system tracks how each FVG evolves as price interacts with the zone, while the dashboard aggregates metrics such as counts and average bars to mitigation across grade levels. These features provide a structured way to review how FVGs have behaved over the selected chart history and to adjust grading configurations accordingly. インジケーター

Daily Bias | Flux ChartsGENERAL OVERVIEW
Daily Bias is a session-based bias tool built to help traders understand whether the current session is more likely to be bullish, bearish, or neutral.
It tracks the key liquidity levels from the Asia, London, and New York sessions, along with important higher-timeframe levels like the previous 1-hour, 4-hour, and daily highs and lows. It then watches for sweeps of those levels, checks whether price rejects them or keeps moving, reads what the previous session likely did, and uses a simple lower-timeframe structure to confirm direction.
All of that is combined into one clear dashboard, so instead of only showing a bullish or bearish bias, the indicator also shows why that bias is being given.
[SCREENSHOT: Chart showing session zones, HTF liquidity lines, and the Daily Bias dashboard
WHAT IS THE THEORY BEHIND THIS INDICATOR?
The main idea behind this indicator is that one session often sets up the next one.
Price will often run above a known high or below a known low to take liquidity first. After that, the important question is whether the price keeps going, or rejects that move and turns back. That reaction gives a clue about the likely direction of the next session.
For example, if the previous session trades above a key high but then falls back below it, that shows rejection from the highs and can suggest bearish pressure for the current session. If the previous session trades below a key low but then climbs back above it, that shows rejection from the lows and can suggest bullish pressure for the current session.
This indicator reads that behavior automatically by looking at what the previous session did around important liquidity levels. It also keeps an eye on major intraday reference points like the previous 1-hour high and low, 4-hour high and low, and previous day high and low, because price often reacts around those areas.
Then it checks whether the market is starting to confirm that idea on lower timeframes. After that, everything is brought together into one final bias: bullish, bearish, or neutral. The dashboard does not just show the bias — it also shows the reasoning behind it, so traders can quickly understand why the indicator is leaning in a certain direction.
SCREENSHOT: Example showing a liquidity sweep followed by a reversal.
DAILY BIAS FEATURES
The Daily Bias indicator includes 9 main features:
Sessions Liquidity (Asia, London, NY)
Higher Timeframe Liquidity (1H, 4H, Previous Day)
Liquidity Level Labels
Sweep Markers
Historical Levels
Session Profile Classification
Lower Timeframe Structure Confirmation
Final Bias Engine
Daily Bias Dashboard
Each component operates independently while sharing the same underlying liquidity logic. All features feed into a unified dashboard that displays the current state of the bias decision, along with detailed tooltips on every cell.
SESSIONS LIQUIDITY
🔹 What Is a Session?
A session is a fixed time window within the trading day during which a major financial center is most active. The Asia session corresponds to the Tokyo trading window, London corresponds to the European morning, and NY corresponds to the US morning. Each session tends to deliver a characteristic style of price action, and the highs and lows formed inside them often act as draws on liquidity for the next session.
🔹 How the Indicator Tracks Sessions
The Daily Bias indicator tracks three key trading sessions and maps out each one directly on the chart with its own colored range, session high and low, and session label.
By default, the sessions are based on the New York time zone:
Asia: 20:00 – 22:00
London: 02:00 – 04:00
New York: 10:00 – 12:00
As soon as a session begins, the indicator starts building that session’s range in real time. It expands the zone as price moves and keeps updating the session high and session low until the session closes. Once the session is complete, the final high, low, open, and close of that session are saved and used later by the bias logic.
This matters because the completed session range becomes an important liquidity reference for the sessions that follow. In other words, the indicator is not just drawing session boxes for visuals, it is using those completed session highs and lows as part of the read on where price may want to trade next.
These session drawings only appear on intraday charts and are automatically hidden on daily and higher timeframes.
SCREENSHOT: Asia, London, and NY session boxes plotted across an intraday chart
🔹 Session Titles and Extension Lines
When enabled, each session displays a title label above its box. Once a session ends, its high and low are extended forward as horizontal lines until replaced by the next instance of that same session. Each session has independent color controls for its high line and low line. Default colors are teal/maroon for Asia, blue/orange for London, and purple/green for NY.
SCREENSHOT: session extension lines with titles active after the session closes
🔹 Customization Options
Show / Hide toggle per session
Session zone color and opacity per session
High and low line colors per session
Session titles toggle and label size (Tiny, Small, Normal, Large, Huge)
Line style (Solid, Dashed, Dotted) and line width (1-5)
HIGHER TIMEFRAME LIQUIDITY
🔹 What Is Higher Timeframe Liquidity?
A higher-timeframe high or low is the extreme price reached during the most recently completed candle on a higher timeframe. These levels are visible on every higher timeframe chart, which makes them natural locations for stop-loss orders and pending breakout orders to accumulate.
🔹 How the Indicator Tracks HTF Liquidity
The indicator tracks three higher-timeframe liquidity sources: the previous 1-Hour high and low, the previous 4-Hour high and low, and the previous Day high and low. When a new higher-timeframe candle begins, the previous candle's final high and low are archived and drawn as horizontal lines on the chart. These levels remain visible until replaced by the next completed candle and are also used by the bias engine to classify session profiles.
SCREENSHOT: 1H, 4H, and Previous Day high and low extension lines on 5m chart
🔹 Extend Levels
When Extend Levels is enabled, all HTF liquidity lines extend forward by a user-defined number of bars beyond the current bar, making them easier to see as future targets. The extension distance is shared across all three HTF sources.
🔹 Customization Options
Show / Hide toggle per source (1H, 4H, Previous Day)
High and low line colors per source
Extend Levels toggle and bar count (0-100)
Line style (Solid, Dashed, Dotted) and line width (1-5)
LIQUIDITY LEVEL LABELS
The Daily Bias indicator displays labels next to each tracked liquidity level on the right edge of the chart. When two or more sources fall on the exact same price, the text is automatically merged with an ampersand (for example, "1H & 4H High") so the label shows at a glance how many sources align there.
SCREENSHOT: merged liquidity labels showing combined sources
🔹 Customization Options
Show Labels toggle
Label color (global)
Label size (Tiny, Small, Normal, Large, Huge)
SWEEP MARKERS
A liquidity sweep occurs when the price trades beyond a previously established high or low, triggering resting stop orders at that level. When Sweep Markers is enabled, a small red diamond appears above any candle that sweeps a high-side liquidity level, and a small green diamond appears below any candle that sweeps a low-side level.
SCREENSHOT: chart with sweep markers active, showing both high and low sweep diamonds
The same sweep events also feed the Current Status section of the dashboard and the bias engine, regardless of whether the markers are visually enabled.
🔹 Customization Options
Show / Hide toggle (off by default)
HISTORICAL LEVELS
By default, the Daily Bias indicator shows only the most recent set of sessions and HTF liquidity lines. When Historical Levels is enabled, older lines from previous sessions and previous higher-timeframe candles remain visible on the chart, anchored at their original times. Up to 60 historical lines per side per source are kept on the chart at once. When the limit is exceeded, the oldest line is automatically deleted.
SCREENSHOT: chart with Historical Levels enabled showing older session and HTF lines
🔹 Customization Options
Show / Hide toggle (off by default)
SESSION PROFILE CLASSIFICATION
🔹 The Four Profiles
Once a session ends, the indicator examines how the session interacted with all tracked liquidity sources and assigns one of four profiles:
◇ Consolidation: the session did not clearly sweep any tracked liquidity level
◇ Manipulation (Sweep Only): the session swept one side of liquidity but did not close back through it
◇ Reversal: the session swept one side of liquidity and closed back through it in the opposite direction
◇ Complex: the session swept both high-side and low-side liquidity, making direction unreliable
SCREENSHOT: example of a Bullish Reversal session that swept a low and closed back above it
SCREENSHOT: example of a Complex session that swept both highs and lows
🔹 How the Indicator Classifies Sessions
At the close of each session, the indicator checks whether the session high exceeded any tracked high-side liquidity level and whether the session low exceeded any tracked low-side level. If both sides were swept, the profile is Complex. If neither side was swept, the profile is Consolidation. If only one side was swept, the indicator then checks whether the session close ended back inside the range — if yes, the profile is Reversal; if no, the profile is Manipulation.
🔹 Profile Direction and Color Coding
Each profile carries an associated direction and color in the dashboard:
◇ Consolidation: Neutral (gray)
◇ Manipulation: Neutral, leaning bullish or bearish (orange)
◇ Bullish Reversal: Bullish (lime)
◇ Bearish Reversal: Bearish (red)
◇ Complex: Neutral (yellow)
LOWER TIMEFRAME STRUCTURE CONFIRMATION
🔹 What Is Structure Confirmation?
Structure confirmation is a check against the previous 5-minute and 15-minute highs and lows. The current bar's close must trade above one of those previous highs to qualify as bullish-confirmed, or below one of those previous lows to qualify as bearish-confirmed.
🔹 How the Indicator Uses Structure Confirmation
When Use 5m/15m Confirmation is enabled (default on), the bias engine requires the structure check to agree with the expected direction before assigning Bullish or Bearish to the Final Bias. If structure is not yet confirmed, the bias remains Neutral and the dashboard reason explains that the engine is waiting for confirmation. When disabled, the bias engine assigns direction purely from the session profile and current liquidity events.
The dashboard 5m/15m Structure cell displays one of four states: Bullish, Bearish, Not Confirmed, or Off.
FINAL BIAS ENGINE
🔹 How the Engine Decides Direction
The Final Bias is the indicator's primary output. It combines the previous session's profile, the current session's live liquidity activity, and (optionally) the lower-timeframe structure confirmation into a single directional decision. The decision logic is rule-based and depends on the previous session's profile.
◇ If the previous session was Consolidation: the engine waits for the current session to perform its own manipulation and reversal. If the Current Status shows a remembered Bullish Reversal and structure agrees, the Final Bias becomes Bullish. The bearish case is symmetric.
◇ If the previous session was Manipulation (Sweep Only): the engine waits for the current session to confirm the reversal the previous session left incomplete.
◇ If the previous session was Reversal: the engine expects continuation in the same direction.
◇ If the previous session was Complex: the engine refuses to assign a directional bias. The Final Bias is Neutral.
◇ If no session is currently active: the Final Bias is Neutral with reason "No active session."
🔹 Final Bias Output
The Final Bias is displayed in the dashboard as Bullish (lime), Bearish (red), or Neutral (gray). Every bias decision is paired with a Reason line that explains the exact rule that produced the current value.
SCREENSHOT: dashboard Final Bias showing Bullish with corresponding Reason line
DAILY BIAS DASHBOARD
The Daily Bias indicator includes a built-in dashboard that displays the current state of every component used in the bias decision. The dashboard is divided into four sections: a header, Session Context, Bias Engine, and Reason. Every cell that contains a value also includes a tooltip that explains what the value means and why it currently shows what it does.
🔹 Session Context
Current Session: the session price is trading in right now (Asia, London, NY, or None)
Previous Session: the session that immediately preceded the current one
Current Status: the most recent remembered liquidity event from any tracked source, updated every time a sweep or reversal occurs, and remembered until a newer same-source event replaces it
🔹 Bias Engine
Previous Profile: the classification of the previous session (Consolidation, Manipulation, Reversal, or Complex)
Previous Direction: the directional takeaway from the previous session profile
Expected Now: what the engine expects from the current session based on the previous session's profile
5m/15m Structure: the current structural state from the lower-timeframe confirmation system
Final Bias: the engine's current directional decision
🔹 Reason
The bottom row displays the exact reason behind the current Final Bias in plain English. This text changes dynamically as the engine state changes.
🔹 Tooltips
Every cell has its own tooltip that explains both what the field means in general and why the current value is what it is. For example, hovering over Previous Profile when the value is Bullish Reversal reveals: "Previous Profile means the profile of the previous session, which is NY. It is Bullish Reversal because that session swept low-side liquidity at PD Low and then closed back above it." This makes the dashboard fully self-documenting.
🔹 Customization Options
Show / Hide Dashboard toggle
Text size (Tiny, Small, Normal, Large)
IMPORTANT NOTES
The Daily Bias indicator is designed to run on intraday timeframes. Session tracking is automatically disabled on Daily, Weekly, and Monthly charts. The indicator uses the America/New_York time zone for all session calculations. The 5m/15m structure confirmation reads only closed previous candles and produces no future-looking data. The bias engine is intentionally session-anchored — outside of the three tracked sessions, the Final Bias remains Neutral with reason "No active session."
UNIQUENESS
The Daily Bias indicator focuses on session-anchored directional bias by combining session profile classification, live liquidity event tracking, and lower-timeframe structure confirmation into a single transparent system. Unlike indicators that only display levels or only show signals, every decision the engine makes is exposed on the dashboard along with a plain-English Reason line and detailed tooltips on every cell. The session profile system classifies each completed session into one of four distinct states by examining how it interacted with three higher-timeframe liquidity sources and two cross-session sources at once. The Current Status system remembers the most recent valid liquidity event across all six tracked sources. The bias engine combines profile, expected behavior, current status, and structure into a single directional decision that is fully traceable from cell to cell. インジケーター

ICT Suspension Blocks | Flux ChartsGENERAL OVERVIEW:
ICT Suspension Blocks is built around the idea that one candle can become important when it is suspended between two volume imbalances - one above it and one below it. In ICT theory, that suspended area can behave like a compact inefficiency zone and may later act as a reaction point when price revisits it.
The indicator automates that idea by scanning for bullish and bearish three-candle formations, identifying the suspended price area between the two imbalances, plotting the zone directly on the chart, and then managing its lifecycle through retest and invalidation logic.
The goal of the indicator is not just to mark a pattern, but to keep the structure practical for chart use: active zones can be prioritized by proximity, invalidated zones can optionally remain visible for reference, retests can be marked, and overlapping zones can be merged when the user wants a cleaner display.
(Screenshot: Full chart view showing bullish and bearish Suspension Block zones)
(Screenshot: Example of a Suspension Block forming between two body-to-body imbalances)
WHAT IS THE THEORY BEHIND THE INDICATOR?:
This indicator is based on the ICT idea that a single candle can become meaningful when it is suspended between two volume imbalances. The logic starts with understanding what a volume imbalance is, then how two of those imbalances can frame a single candle and turn that area into a Suspension Block.
What IS A VOLUME IMBALANCE?
A volume imbalance, in this context, is a body-to-body inefficiency between two consecutive candles. It appears when the open of the newer candle gaps away from the close of the previous candle, showing that price moved so aggressively that the candle bodies did not match smoothly from one bar to the next.
Bullish volume imbalance: the newer candle opens above the previous candle’s close.
Bearish volume imbalance: the newer candle opens below the previous candle’s close.
Wick overlap is allowed. What matters is the body separation, not whether the wicks overlap.
These imbalances matter because they show inefficient price delivery. In ICT theory, the market often revisits inefficient areas later, which is why traders treat them as important reference zones.
Step by step:
1. Look at the close of one candle.
2. Compare it to the open of the next candle.
2a. If the next candle opens clearly above that close, it creates a bullish body-to-body imbalance.
2b. If the next candle opens clearly below that close, it creates a bearish body-to-body imbalance.
3. That body gap is the imbalance the indicator uses as part of the Suspension Block structure.
(Screenshot: Bullish volume imbalance example)
(Screenshot: Bearish volume imbalance example)
WHAT IS A SUSPENSION BLOCK?:
A Suspension Block is the price area created when one candle is framed by a volume imbalance on one side and another volume imbalance on the other side. In simple terms, the candle is “suspended” between two body-to-body inefficiencies, which is why the pattern gets its name.
In the theory referenced for this indicator, the suspended candle behaves similarly to a compact inefficiency zone or PD Array. That means the market may revisit the area later and react from it as support or resistance, depending on whether the structure is bullish or bearish.
Step by step:
1. Start with a three-candle sequence.
2. Check whether there is a valid body-to-body imbalance between candle 3 and candle 2.
Then check whether there is another valid body-to-body imbalance between candle 2 and candle 1.
3. If both imbalances exist in the same direction, the middle part of that structure becomes the Suspension Block setup.
For a bullish Suspension Block, the sequence is bullish and the two imbalances are upward.
For a bearish Suspension Block, the sequence is bearish and the two imbalances are downward.
The indicator then draws the zone from the close of candle 3 to the open of candle 1, which defines the suspended price area.
(Screenshot: Bullish suspension Block area highlighted between two volume imbalances)
(Screenshot: Bearish suspension Block area highlighted between two volume imbalances)
HOW THE INDICATOR SHOWCASES THAT THEORY:
Once the structure is confirmed, the indicator turns the concept into a practical chart tool. It plots the Suspension Block zone, extends active zones to the current bar, tracks valid retests, and stops the zone when invalidation happens.
Bullish and bearish zones are displayed with separate colors for fast recognition.
The zone is anchored to the suspended price area.
Retests are stored and can be marked with triangle labels.
Invalidated zones can be hidden or kept as historical reference.
Nearby zones can be prioritized with Show Nearest, and overlapping same-side zones can be merged with Combine Overlapping Zones.
This makes the indicator useful not only for learning the ICT concept, but also for applying it directly on live charts in a structured way.
(Screenshot: Indicator showcase with active bullish and bearish Suspension Blocks)
(Screenshot: Indicator showcase with retest markers and invalidation)
(Screenshot: Indicator showcase with combined overlapping zones)
FEATURES:
🔷Bullish
Sets the fill color used for bullish Suspension Block zones.
This controls how active and historical bullish zones appear on the chart.
(Screenshot: Bullish Suspension Block color styling)
🔷Bearish
Sets the fill color used for bearish Suspension Block zones. This gives bearish zones their own visual identity and helps separate them from bullish zones at a glance.
(Screenshot: Bearish Suspension Block color styling)
🔷Invalidation Method
Controls how a Suspension Block becomes invalid.
Wick mode invalidates a zone as soon as price trades through the far side with the wick.
Close mode invalidates a zone only when price closes through the far side.
(Screenshot: Wick invalidation)
(Screenshot: Close invalidation)
🔷Midline
Turns the midpoint line inside each zone on or off. When enabled, the indicator draws a center line halfway between the top and bottom of the Suspension Block.
(Screenshot: Midline drawn through the center of a Suspension Block)
🔷Midline Style
Controls whether the midpoint line is solid, dashed, or dotted. This is a visual preference setting that changes how prominent the midline appears.
🔷Zone Labels
Turns the SB+ and SB- labels on or off. The labels are placed inside the zone at the right-center area so the zone remains clearly identified without extending the label beyond the box.
(Screenshot: SB+ and SB- labels positioned inside the right side of each zone)
🔷Retest Labels
Turns retest triangle markers on or off. When enabled, the indicator stores retest times and displays a triangle marker for each valid retest that belongs to a visible zone.
(Screenshot: Green and red retest triangles displayed on valid zone retests)
🔷Combine Overlapping Zones
When enabled, overlapping Suspension Block zones of the same side are merged into one wider combined zone. The combined zone keeps the earliest left boundary, expands to the full overlapping price range, and merges the retest history from the older zones into the new one.
(Screenshot: Multiple overlapping zones merged into one zone)
🔷Hide Invalidated Zones
Controls whether mitigated or invalidated zones remain visible.
When turned on, invalidated zones are removed from the chart.
When turned off, invalidated zones are stored separately and can still be displayed as historical reference without being used again in active-zone logic such as nearest-zone selection or future retest checks.
(Screenshot: Invalidated zones hidden)
(Screenshot: Invalidated zones displayed for historical reference)
🔷Show Nearest
Limits how many bullish and bearish active zones remain visible at the same time. The indicator ranks active zones by distance from current price and shows only the nearest ones for each side.
(Screenshot: Only the nearest active bullish and bearish zones displayed)
🔷Minimum Size
Filters out very small Suspension Blocks by requiring the zone size to be at least a selected fraction of ATR.
A value of 0 disables the size filter.
Higher values make the indicator more selective and remove weaker or very small formations.
🔷Alerts
Users can enable alerts with this indicator via AnyAlert() functionality. The following alerts are available:
◇ New Bullish SB
Alerts for newly detected bullish Suspension Blocks.
◇ New Bearish SB
Alerts for newly detected bearish Suspension Blocks.
◇ Bullish SB Retest
Alerts for bullish Suspension Block retests.
◇ Bearish SB Retest
Alerts for bearish Suspension Block retests.
UNIQUENESS:
ICT Suspension Blocks is unique because it turns a relatively niche ICT concept into a structured chart tool that not only detects the pattern, but also manages its full lifecycle - from creation, to retest tracking, to invalidation, to optional historical display - while keeping the chart readable.
The zone is drawn from candle 3 close to candle 1 open, so it reflects the actual suspended price space between the two imbalances rather than defaulting to the body of the middle candle.
Daily and weekly opening gaps are filtered out from the imbalance checks, which helps avoid false detections caused by session-opening jumps.
Retest logic is stricter than a simple touch: the indicator checks whether price approached from the correct side, touched the zone with the wick, and still closed back on the original side.
Invalidated zones can be displayed as history without being recycled into active-zone logic, which keeps historical context available without contaminating nearest-zone selection or future retest processing.
Overlapping same-side zones can be merged into one combined structure, making the indicator more practical on charts where multiple nearby Suspension Blocks form in the same area.
(Screenshot: Example comparing separate overlapping zones vs combined zone mode)
インジケーター

Breakout Volume Delta | Flux ChartsGENERAL OVERVIEW:
Breakout Volume Delta is an indicator that measures breakout strength using lower-timeframe volume delta. It estimates buyer vs. seller participation within the breakout candle by summing bullish and bearish sub-candle volumes, then visualizes that dominance by splitting the candle body into bullish and bearish segments.
https://www.tradingview.com/x/UuFy5eif/
What is the theory behind the indicator?:
Breakouts often look strong on price alone, but their quality depends on participation. A breakout candle that is driven by dominant buying or selling pressure is generally more meaningful than a breakout candle that forms with mixed or weak participation.
This indicator gauges participation using lower timeframe volume delta. It breaks the current candle into lower timeframe sub-candles, sums volume on bullish sub-candles as bullish volume, and sums volume on bearish sub-candles as bearish volume. Those totals are converted into dominance percentages.
The breakout candle is then visualized using a split-body overlay: the portion sized by the dominant side is shown in the breakout color, and the remaining portion is shown as the opposite side. This makes it easy to judge whether the breakout candle was supported by real directional participation or if the opposite side was active inside the same candle.
Bullish dominant breakout candle:
Bearish dominant breakout candle:
FEATURES:
🔹Swing Left and Right
Controls how many swing-timeframe candles are required on the left and right side to confirm a swing point before a level is drawn. Higher values reduce noise by requiring stronger confirmation. Higher values increase confirmation delay because more candles are needed to validate the pivot.
🔹Swing Timeframe
Selects the timeframe used to detect swing levels. Default setting uses the chart timeframe. Creates each swing timeframe candle by combining the smaller candles inside it, then tracks the highest high and lowest low made during that period. Saves the exact time when those highs and lows happened so levels can be placed accurately on lower timeframes.
Swing levels detected on a higher timeframe and shown on a lower timeframe chart:
🔹Volume Delta LTF
Selects the lower timeframe used to estimate buy vs sell participation inside each breakout candle.
Bull volume sums volume from sub-candles where close is above open.
Bear volume sums volume from sub-candles where close is below open.
Converts those totals into bullish and bearish dominance percentages.
Volume delta label showing bullish and bearish dominance:
🔹Breakout by
Controls how a swing level is considered broken.
Wick mode confirms a break when the wick crosses the level.
Close mode confirms a break only when the candle closes beyond the level.
Close breakout:
Wick breakout:
🔹Show Nearest
Limits how many of the most recent swing levels remain visible on the chart. Deletes older levels once the stored level count exceeds the chosen number.
Only the most recent swing levels shown on the chart:
🔹Breakout Volume Filter
Optional filter that only validates a breakout if the breakout candle shows enough dominance from the breakout side.
Bullish breakouts require bullish dominance to exceed the threshold.
Bearish breakouts require bearish dominance to exceed the threshold.
If the filter fails, the affected level is removed instead of being marked as broken.
Bullish breakout with Breakout Volume Filter activated:
Bearish breakout with Breakout Volume Filter activated:
🔹Unmitigated Levels
Controls how live (unmitigated) swing levels are drawn. Users can customize the Line style, thickness, and colors for live levels.
Live levels shown with unmitigated styling:
🔹Broken Levels
Controls how a level looks after it breaks and locks it to the breakout bar. Switches the level to broken style, width, and color, and stops extending and ends at the breakout candle time.
🔹Volume Delta
Controls the colors used for bullish and bearish dominance on the split-body overlay.
🔹Extend Levels
Controls how far levels extend forward when Extend Right is disabled.
🔹Extend Right
When enabled, levels extend all the way to the right instead of stopping at a fixed future point.
🔹Volume Delta Labels
Optional volume delta labels that print bullish and bearish volume with dominance percentages on breakout bars.
Shows bull and bear volumes plus percentages.
Places label above bullish breakouts and below bearish breakouts.
UNIQUENESS:
Breakout Volume Delta is unique because it visualizes breakout strength directly on the breakout candle using lower timeframe buy vs sell dominance, instead of relying on price action alone.
Breakout strength is shown inside the breakout candle by splitting the body into bullish and bearish participation segments.
Lower timeframe activity is mapped onto the higher timeframe candle so dominance is visible exactly where the breakout happened.
Swing levels provide breakout context, while the split-body overlay explains how much real participation supported the move.
Chart-clean design keeps the display readable by limiting how many levels remain on screen.
インジケーター

Market Structure Dashboard | Flux ChartsGENERAL OVERVIEW
Market Structure Dashboard is a multi-timeframe market structure analysis indicator. It combines EMA trend detection, swing high/low tracking, market structure labels, Order Block detection, Fair Value Gap detection, liquidity sweep detection, volume analysis, volatility analysis, trading sessions, ICT killzones, a weighted trend bias system, and HTF levels into one unified dashboard. Each component is calculated independently across up to 7 configurable timeframes and displayed together in a single organized view.
(Screenshot: Full dashboard overview - all sections visible)
(Screenshot: Dashboard on a busy chart showing OB/FVG boxes, swing labels, HTF lines)
WHAT IS THE THEORY BEHIND THIS INDICATOR?
The core idea is that a trade setup becomes more reliable when multiple timeframes agree on direction. A bullish signal on a 5-minute chart carries more weight when the 15-minute, 1-hour, and daily timeframes also show bullish conditions. Analyzing each timeframe separately is both time-consuming and prone to error. The Market Structure Dashboard automates this process by calculating key metrics across all enabled timeframes and presenting them side by side.
The indicator draws from two established trading methodologies. Smart Money Concepts (SMC) focuses on identifying institutional footprints in price action through patterns like Order Blocks, Fair Value Gaps, and liquidity sweeps. Inner Circle Trader (ICT) methodology emphasizes time-based analysis through specific trading windows called killzones and the importance of previous day, week, and month highs and lows.
Rather than treating these concepts in isolation, the dashboard organizes them into a layered framework. Structure shows where the market has been. Zones show where it may react. Sessions and killzones show when activity tends to increase. The trend bias system combines all factors into a single weighted score, giving traders a quick read on overall market sentiment across timeframes.
The purpose of the Market Structure Dashboard is to present the current market activity across multiple timeframes and how these conditions relate to earlier market structure, volume, and timing.
(Screenshot: Multi-timeframe confluence example - all TFs showing bearish alignment)
(Screenshot: Multi-timeframe disagreement example - mixed signals across TFs)
MARKET STRUCTURE DASHBOARD FEATURES
The Market Structure Dashboard indicator includes 14 main features:
EMA Trend Detection
Swing High/Low Tracking
Market Structure Labels (HH/HL/LH/LL)
Order Block Detection
Fair Value Gap Detection
Liquidity Sweep & Reclaim Detection
Volume Analysis
Volatility Analysis
Trading Sessions
ICT Killzones
Trend Bias System
HTF Levels (PDH/L, PWH/L, PMH/L)
Visual Overlays
Dashboard Customization
Each component operates independently while sharing the same underlying market structure logic. All features are calculated across up to 7 user-configurable timeframes and displayed in a unified dashboard. Detailed explanations for each component are provided in the sections that follow.
EMA TREND DETECTION
🔹 What is an EMA?
An Exponential Moving Average (EMA) is a type of moving average that gives more weight to recent price data. Unlike a Simple Moving Average that weights all prices equally, the EMA responds faster to recent price changes while still considering historical data. Traders use EMAs to identify trend direction and dynamic support/resistance levels.
When price trades above the EMA, the short-term trend is considered bullish. When price trades below the EMA, the short-term trend is considered bearish. The distance between price and EMA can indicate trend strength, with larger distances suggesting stronger momentum.
🔹 How the Indicator Uses EMA
The dashboard calculates a 9-period EMA (configurable) for each enabled timeframe. The EMA Trend column displays both direction and distance.
◇ Direction is shown with an up arrow (↑) when price is above EMA, or a down arrow (↓) when price is below EMA.
◇ Distance is displayed as percentage, price, or pips based on the Distance Display setting. For example, "+0.45% ↑" means price is 0.45% above the EMA on that timeframe.
◇ Color coding shows green when price is above EMA (bullish) and red when price is below EMA (bearish).
The EMA can optionally be plotted as a visual overlay on the chart. It can also be included as a factor in the Trend Bias calculation, where each timeframe's EMA direction contributes to the overall bias score.
(Screenshot: EMA column showing bearish readings - red, ↓)
SWING HIGH/LOW TRACKING
🔹 What are Swing Highs and Lows?
A swing high is a price peak where a candle's high is higher than the highs of surrounding candles. A swing low is a price trough where a candle's low is lower than the lows of surrounding candles. These points represent short-term reversals and define the boundaries of price movement.
Swing points are foundational to market structure analysis. Breaking a swing high suggests bullish momentum. Breaking a swing low suggests bearish momentum. The sequence of swing points creates market structure patterns that reveal trend direction.
🔹 How the Indicator Tracks Swing Highs/Lows?
The indicator detects swing points using a configurable Swing Length parameter (default: 5). A swing high is confirmed when a candle's high is higher than the specified number of candles on both sides. A swing low is confirmed when a candle's low is lower than the specified number of candles on both sides. This confirmation requirement means swing points are identified with a delay, ensuring they are valid pivots rather than temporary spikes. This same Swing Length setting is also used by Order Block detection and Market Structure labels, so adjusting it affects all three features.
◇ The Swing H/L column displays a visual position indicator showing where price sits within the current swing range. A dot moves along a bar between L (swing low) and H (swing high) to show exact position.
◇ When price breaks outside the range, arrows indicate the direction. An up arrow (↑) appears when price breaks above the swing high. A swing high break indicates that buyers have pushed price beyond the previous peak, suggesting bullish momentum and a potential continuation higher.
(Screenshot: Price above Swing High)
A down arrow (↓) appears when price breaks below the swing low. A swing low break indicates that sellers have pushed price beyond the previous trough, suggesting bearish momentum and a potential continuation lower
(Screenshot: Price breaks Swing Low)
When a liquidity sweep occurs (price breaks a level then reclaims it), special arrows appear: ⤴ for a swept and reclaimed low, ⤵ for a swept and reclaimed high. A swept and reclaimed swing means price broke beyond the level, likely triggering stop-loss orders resting beyond it, but then reversed back inside the range. This suggests the breakout was a false move and the opposite direction may follow. Liquidity sweeps are explained in detail in the Liquidity Sweep & Reclaim Detection section below.
◇ Color coding shows green when price is in the lower half of the range or breaks above the swing high, and red when price is in the upper half or breaks below the swing low.
(Screenshot)
◇ Tooltips provide additional context when hovering over any Swing H/L cell, such as "Price is nearing swing low on 15M" or "Price above swing high on 1H - swing high broken."
MARKET STRUCTURE LABELS (HH/HL/LH/LL)
🔹 What is Market Structure?
Market structure refers to the pattern of swing highs and swing lows that price creates over time. By comparing consecutive swing points, each new swing can be classified into one of four types.
◇ HH (Higher High): A swing high that is higher than the previous swing high, indicating bullish momentum.
◇ HL (Higher Low): A swing low that is higher than the previous swing low, indicating bullish momentum.
◇ LH (Lower High): A swing high that is lower than the previous swing high, indicating bearish momentum.
◇ LL (Lower Low): A swing low that is lower than the previous swing low, indicating bearish momentum.
(Screenshot: Bullish and Bearish Swing Points)
Bullish structure consists of HH and HL patterns, where price makes higher highs and higher lows. Bearish structure consists of LH and LL patterns, where price makes lower highs and lower lows. Mixed structure contains conflicting patterns and indicates consolidation or potential trend change.
🔹 How the Indicator Displays Market Structure
The Structure column shows the last three structure labels in sequence along with an overall bias arrow.
◇ "LL-LH-HL →" indicates mixed structure with no clear direction.
◇ "HH-HL-HH ↑" indicates bullish structure with higher highs and higher lows.
◇ "LH-LL-LH ↓" indicates bearish structure with lower highs and lower lows.
(Screenshot: Dashboard showing neutral, bearish and bullish indication across different timeframes)
The indicator tracks each new swing point as it forms, compares it to the previous swing of the same type, and assigns the appropriate label. Market Structure labels use the same Swing Length setting as Swing High/Low tracking, so both features stay synchronized. Structure bias is determined by the most recent high type and low type combined. If the last swing high was HH and the last swing low was HL, bias is bullish. If the last swing high was LH and the last swing low was LL, bias is bearish. Any other combination shows neutral.
Color coding shows green for bullish structure, red for bearish structure, and gray for mixed or neutral structure.
ORDER BLOCK DETECTION
🔹 What is an Order Block?
An Order Block is a concept from Smart Money analysis representing a candle or consolidation area where institutional orders may have been placed. In SMC methodology, Order Blocks are identified as the last opposing candle before a significant price move that breaks market structure.
◇ A Bullish Order Block is the last bearish candle before a rally that breaks a swing high. When price returns to this zone, it may find support.
◇ A Bearish Order Block is the last bullish candle before a drop that breaks a swing low. When price returns to this zone, it may find resistance.
Order Blocks are considered "mitigated" when price trades completely through them, suggesting the institutional orders have been filled.
🔹 How the Indicator Detects Order Blocks
The detection algorithm follows a specific sequence to identify valid Order Blocks.
◇ Step 1: The indicator tracks swing highs and swing lows using the configured Swing Length setting (shared with Swing High/Low tracking and Market Structure labels).
◇ Step 2: When price breaks above a swing high, the indicator identifies a bullish breakout. When price breaks below a swing low, it identifies a bearish breakout.
◇ Step 3: For a bullish Order Block, the indicator finds the candle with the lowest low between the broken swing high and the current bar. For a bearish Order Block, it finds the candle with the highest high between the broken swing low and the current bar.
◇ Step 4: The Order Block zone is created spanning from that candle's low to its high.
◇ Step 5: Mitigation is applied when price closes through the Order Block. Bullish OBs are mitigated when price closes below the zone. Bearish OBs are mitigated when price closes above the zone.
The Order Block column shows the nearest unmitigated Order Block for each timeframe. "IN BULL OB ↑" means price is currently inside a bullish Order Block. "BULL OB (5.4%) ↑" means the nearest OB is bullish and 5.5% away. "NONE" means no unmitigated Order Blocks exist on that timeframe.
(Screenshot: Nearest order block is Bull OB)
(Screenshot: Price in Bear OB)
FAIR VALUE GAP DETECTION
🔹What is a Fair Value Gap?
A Fair Value Gap (FVG), also called an imbalance, is a three-candle pattern where a gap exists between the first and third candle that the middle candle did not fill. This gap represents an area where price moved quickly, creating an imbalance in the market.
◇ A Bullish FVG forms when the first candle's high is lower than the third candle's low, creating an upward gap. When price returns to this gap, it may find support.
◇ A Bearish FVG forms when the first candle's low is higher than the third candle's high, creating a downward gap. When price returns to this gap, it may find resistance.
FVGs are considered mitigated when price wicks into the gap, filling the inefficiency.
🔹 How the Indicator Detects FVGs
The detection logic checks for the three-candle gap pattern with specific conditions.
◇ For a Bullish FVG, the current candle's low must be above the candle from three bars ago's high (gap exists), and the middle candle must be bullish (displacement candle).
◇ For a Bearish FVG, the current candle's high must be below the candle from three bars ago's low (gap exists), and the middle candle must be bearish (displacement candle).
◇ The FVG zone spans from the gap's bottom to its top.
◇ Mitigation occurs when price wicks below the gap bottom for bullish FVGs, or above the gap top for bearish FVGs. Note that FVG mitigation is more sensitive than Order Block mitigation.
FVGs only need a wick to touch them, while Order Blocks require a close through them.
The FVG column displays similarly to Order Blocks. "IN BULL FVG ↑" means price is inside a bullish Fair Value Gap. "BULL FVG (0.2%) ↑" means the nearest FVG is bullish and 0.2% away. "NONE" means no unmitigated FVGs exist on that timeframe.
(Screenshot: Price in Bull FVG)
(Screenshot: Bear FVG +3.4% away)
LIQUIDITY SWEEP & RECLAIM DETECTION
🔹 What is a Liquidity Sweep?
Liquidity refers to resting orders in the market, particularly stop-loss orders. Traders commonly place stops just beyond swing highs and swing lows, creating pools of liquidity at these levels. A liquidity sweep occurs when price breaks beyond a swing point, potentially triggering stops, but then reverses and closes back inside the range.
◇ A Bullish Liquidity Sweep occurs when price breaks below a swing low, then reverses and closes back above it. This pattern suggests potential buying interest after weak hands have been stopped out.
◇ A Bearish Liquidity Sweep occurs when price breaks above a swing high, then reverses and closes back below it. This pattern suggests potential selling interest after weak hands have been stopped out.
🔹 How the Indicator Detects Liquidity Sweeps
The indicator tracks whether each swing level has been broken and then reclaimed.
◇ A swing low is marked as broken when price trades below it. A swing high is marked as broken when price trades above it.
◇ A reclaim is detected when price closes back above a broken swing low (bullish) or back below a broken swing high (bearish).
◇ The break and reclaim flags reset when a new swing point forms, ensuring fresh detection for each level.
When a liquidity sweep is detected, the Swing H/L column displays special indicators. The ⤴ symbol indicates a bullish liquidity sweep where price swept the low and reclaimed. The ⤵ symbol indicates a bearish liquidity sweep where price swept the high and reclaimed. Tooltips provide additional context such as "Liquidity sweep - price swept swing low and reclaimed on 15M."
(Screenshot: Swing High Swept)
(Screenshot: Previous Month Low Swept)
VOLUME ANALYSIS
🔹 What is Volume Analysis?
Volume represents the number of shares, contracts, or units traded during a given period. High volume suggests strong interest and participation behind a price move. Low volume suggests weak interest and moves may lack follow-through. Comparing current volume to average volume helps identify unusual activity.
🔹 How the Indicator Analyzes Volume The dashboard calculates current volume as a percentage of its 20-period simple moving average.
◇ The Volume column displays a visual bar using filled and empty blocks to represent volume level relative to average.
◇ Volume states are classified as EXTREME (over 200% of average), HIGH (over 120%), NORMAL (over 80%), LOW (over 50%), or VERY LOW (50% or less).
(Screenshot: Extreme Volume)
◇ Color coding shows yellow for extreme volume, orange for high volume, and gray for normal, low, and very low.
◇ Tooltips show the exact percentage, such as "Volume is currently at 145% of average."
VOLATILITY ANALYSIS
🔹 What is Volatility?
Volatility measures how much price fluctuates over a given period. High volatility means large price swings. Low volatility means small price movements. The Average True Range (ATR) is a common volatility measure that calculates the average of true ranges over a period.
🔹 How the Indicator Measures Volatility
The dashboard calculates a 14-period ATR and compares it to its own 20-period average (configurable).
◇ The Volatility column displays the current state as HIGH (ATR over 130% of average), NORMAL (ATR between 70-130% of average), or LOW (ATR under 70% of average).
◇ Color coding shows red for high volatility, gray for normal, and green for low volatility.
◇ Tooltips provide context such as "Volatility is currently high" or "Volatility is currently low."
Low volatility often precedes significant moves, making it a useful setup indicator when combined with price at key levels.
(Screenshot: High Volatility)
TRADING SESSIONS
🔹 What are Trading Sessions?
Financial markets have varying activity levels throughout the day. Trading is typically divided into three major sessions based on which financial centers are open.
◇ Asian Session runs from 7:00 PM to 3:00 AM EST. It is characterized by generally lower volatility and ranging price action
◇ London Session runs from 3:00 AM to 12:00 PM EST. It is characterized by higher volatility and trending moves
◇ New York Session runs from 8:00 AM to 5:00 PM EST. It has high volatility especially during the London overlap from 8:00 AM to 12:00 PM EST, affecting USD pairs and all majors.
🔹 How the Indicator Displays Sessions
The Session column shows the current session name in the first row as ASIAN, LONDON, NEW YORK, or OFF HOURS (between sessions from 5:00 PM to 7:00 PM EST).
◇ The second row shows a progress bar that fills as the session advances, with each block representing approximately one hour.
◇ Sessions are color-coded as blue for Asian, green for London, orange for New York, and gray for off hours. These colors can be customized in the settings
◇ The indicator uses New York (EST) timezone for all session calculations and includes replay mode support.
(Asian Session and Killzone)
ICT KILLZONES
🔹 What are Killzones?
Killzones are specific time windows within each trading session when market activity tends to be higher. These windows are derived from ICT (Inner Circle Trader) methodology and represent times when significant moves are more likely to occur.
◇ Asian Killzone runs from 8:00 PM to 12:00 AM EST and often sets the initial range for the day.
◇ London Killzone runs from 2:00 AM to 5:00 AM EST and covers the London open when major moves are common.
◇ New York AM Killzone runs from 9:30 AM to 11:00 AM EST and covers the NYSE open, a high volume period.
◇ New York Lunch runs from 12:00 PM to 1:00 PM EST and typically has lower activity and consolidation.
◇ New York PM Killzone runs from 1:30 PM to 4:00 PM EST when afternoon continuation moves occur.
🔹 How the Indicator Displays Killzones
The Killzone column shows the current killzone in the first row as ASIAN KZ, LONDON KZ, NY AM KZ, NY LUNCH, NY PM KZ, or NO KILLZONE when outside all killzones.
◇ When outside a killzone, the second row shows a countdown to the next killzone, such as "NY AM KZ in 2h:15m."
◇ Killzones are color-coded as blue for Asian, green for London, orange for NY AM, gray for NY Lunch, and purple for NY PM. These colors can be customized in the settings
TREND BIAS SYSTEM
🔹 What is Trend Bias?
The Trend Bias System aggregates multiple factors across all enabled timeframes to produce a single directional bias score. Instead of analyzing each factor and timeframe separately, this system provides a weighted summary of overall market sentiment.
🔹 How the Indicator Calculates Trend Bias The calculation involves three components working together.
(Screenshot: BTC Bearish Trend)
◇ Factors determine what contributes to bias. Users can enable or disable Structure (market structure bias), Order Block (direction of nearest OB), FVG (direction of nearest FVG), EMA Trend (price position relative to EMA), and Swing Position (where price sits in the swing range). Each enabled factor contributes +1 for bullish, -1 for bearish, or 0 for neutral per timeframe.
◇ Weights determine how much each timeframe matters. Each timeframe has a configurable weight from 0 to 10. Default weights are 1 for 1M and 5M, 2 for 15M, 1H, and 4H, 3 for Daily, and 4 for Weekly. Higher weights mean that timeframe contributes more to the final score.
(Screenshot: Gold Bullish Trend)
◇ Score Calculation combines factors and weights. For each active timeframe, the sum of factor scores is multiplied by the timeframe's weight. The total score is the sum of all timeframe scores. The maximum possible score is the sum of each weight multiplied by the number of enabled factors. The bias percentage equals the total score divided by the maximum possible score, multiplied by 100.
◇ Bias Labels are assigned based on percentage. Over 50% shows BULLISH ↑. Between 20% and 50% shows LEAN BULL ↑. Between -20% and 20% shows NEUTRAL →. Between -50% and -20% shows LEAN BEAR ↓. Below -50% shows BEARISH ↓.
The Trend Bias column displays the bias label in the first row and the raw score in the second row, such as "+22/60" meaning 22 points out of 60 possible.
HTF LEVELS (PDH/L, PWH/L, PMH/L)
🔹 What are HTF Levels?
Higher Timeframe (HTF) Levels are significant price points from previous completed periods. These levels represent clear, objective reference points that many traders watch.
◇ PDH/PDL (Previous Day High/Low) are the high and low of the previous completed trading day and act as intraday support and resistance.
◇ PWH/PWL (Previous Week High/Low) are the high and low of the previous completed week and are significant levels for swing trading.
◇ PMH/PML (Previous Month High/Low) are the high and low of the previous completed month and are major levels for position trading.
🔹 How the Indicator Displays HTF Levels The HTF Levels Dashboard section (optional) shows a swing-style position bar for each enabled level, displaying where price sits within the previous day, week, or month range.
◇ The same liquidity sweep detection applies to HTF levels. If price sweeps PDL and reclaims, the ⤴ indicator appears.
(Screenshot: Previous Week Low Swept)
◇ Visual overlays can plot HTF level lines on the chart with customizable colors and line styles.
◇ When multiple levels are close together, labels automatically combine. For example, "PDH/PWH" appears when both levels are at similar prices, or "PDL/PWL/PML" when all three lows align.
(Screenshot: PWH/PMH labels combined when Previous Week Low and Previous Month Low align)
VISUAL OVERLAYS
Beyond the dashboard, the indicator offers optional visual overlays that plot directly on the price chart.
🔹 Order Block Zones
When enabled, Order Blocks appear as semi-transparent rectangular boxes. Green boxes represent bullish Order Blocks and red boxes represent bearish Order Blocks. Boxes span from the OB candle's low to its high and extend forward based on the Extend setting. Optional labels show "OB ↑" or "OB ↓" inside the zones.
🔹 FVG Zones
Fair Value Gaps appear as boxes with dashed borders to distinguish them from Order Blocks. Green dashed boxes represent bullish FVGs and red dashed boxes represent bearish FVGs. They share the same extend and label options as Order Blocks.
(Order Blocks & Fair Value Gaps)
🔹 Swing Labels
HH, HL, LH, and LL labels can be plotted directly at each swing point on the chart. Labels appear above swing highs and below swing lows. Green labels indicate bullish structure (HH, HL) and red labels indicate bearish structure (LH, LL). The Show Last setting controls how many labels appear.
🔹 Swing Lines
Horizontal lines can be drawn at the current swing high and swing low. A red line appears at the swing high and a green line at the swing low. Line styles are customizable as solid, dashed, or dotted.
(Swing Labels & Swing Lines)
🔹 HTF Level Lines
Horizontal lines can be plotted at Previous Day, Week, and Month highs and lows. Each level has a separate enable toggle with customizable colors and line styles. Labels auto-combine when levels are close together.
🔹 EMA Line
A standard EMA line can be plotted on the chart using the same EMA Length setting as the dashboard with customizable color.
DASHBOARD CUSTOMIZATION:
The dashboard is highly customizable to fit different trading styles and screen setups.
🔹Dashboard Position
Choose from 9 dashboard positions including top left, top center, top right, middle left, middle center, middle right, bottom left, bottom center, and bottom right.
🔹Dashboard Colors
Two color themes are available. Dark Mode has dark backgrounds with light text and is the default. Light Mode has light backgrounds with dark text.
🔹Column Toggles
Enable or disable individual columns in each dashboard section to show only the information needed. The Market Structure Dashboard section can toggle EMA Trend, Swing H/L, Structure, Order Block, and FVG columns. The Current Timeframe Dashboard section can toggle Volume, Swing H/L, and Volatility columns. The Market Context Dashboard section can toggle Session, Killzone, and Trend Bias columns. The HTF Levels Dashboard section can toggle PDH/L, PWH/L, and PMH/L levels.
🔹Color Settings
Customize colors for trend colors (bull, bear, neutral), session colors (Asian, London, NY), and killzone colors (Asian KZ, London KZ, NY AM, Lunch, PM).
🔹Distance Display
Choose how distances are shown. Percent shows values like "0.45%" and is the default. Price shows raw values like "45.50". Pips shows values like "45 pips" and is useful for forex.
SETTINGS:
🔹 Timeframes
Configure which timeframes are analyzed in the dashboard. Enable toggles turn each of the 7 timeframes on or off. Timeframe selection sets the specific timeframe for each slot (1M, 5M, 15M, 1H, 4H, D, W, M, or custom). Trend weight controls how much each timeframe contributes to the overall bias calculation (0-10), with higher values giving that timeframe more influence.
🔹 Market Structure Dashboard
Controls the main multi-timeframe dashboard section. The enable toggle turns the entire section on or off. Column toggles allow you to show or hide individual columns: EMA Trend, Swing H/L, Structure, Order Block, and FVG. Disabling columns you don't need reduces visual clutter and focuses the dashboard on the information most relevant to your trading style.
🔹 Current Timeframe Dashboard
Controls the current chart timeframe section that displays volume, swing position, and volatility data. The enable toggle turns the entire section on or off. Column toggles allow you to show or hide individual columns: Volume, Swing H/L, and Volatility.
🔹 Market Context Dashboard
Controls the market context section that displays session, killzone, and trend bias information. The enable toggle turns the entire section on or off. Column toggles allow you to show or hide individual columns: Session, Killzone, and Trend Bias.
🔹 HTF Levels Dashboard
Controls the higher timeframe levels section that displays previous day, week, and month high/low data. The enable toggle turns the entire section on or off. Level toggles allow you to show or hide individual levels: PDH/L, PWH/L, and PMH/L.
🔹 Trend Bias Settings
Controls which factors contribute to the trend bias calculation. Factor toggles allow you to include or exclude Structure, Order Block, FVG, EMA Trend, and Swing H/L from the bias score. Disabling factors you don't find relevant customizes how the overall bias is determined.
🔹 Visual Overlays
Controls what is plotted directly on the price chart. Order Blocks and FVGs each have an enable toggle, bull/bear colors, show last count (how many zones to display), extend bars (how far zones project forward), and labels toggle. Swing Labels have an enable toggle, bull/bear colors, and show last count. Swing Lines have an enable toggle, high/low colors, line style (solid, dashed, dotted), and extend bars. HTF Level Lines for Previous Day, Week, and Month highs/lows each have an enable toggle, colors, and line style, with a shared extend setting for all HTF lines. EMA has an enable toggle and color setting.
🔹 General Settings
Core indicator parameters. EMA Length sets the period for EMA calculation (default 9). Swing Length sets how many bars are required to confirm a pivot and is used for Swing Point detection, Order Block detection, and Market Structure labels (default 5). Volatility Lookback sets the period for ATR averaging (default 20). Distance Display controls how distances are shown: Percent, Price, or Pips. Dashboard Position sets where the dashboard appears on the chart (9 options). Dashboard Theme switches between Dark Mode and Light Mode. Color settings allow customization of trend colors (bull, bear, neutral), session colors (Asian, London, NY), and killzone colors (Asian KZ, London KZ, NY AM, Lunch, PM).
(Full Dashboard)
(Customized Display)
UNIQUENESS:
The Market Structure Dashboard focuses on multi-timeframe confluence by calculating and displaying the same analytical components across up to 7 timeframes simultaneously. Unlike indicators that show one timeframe at a time, each row in the dashboard represents a complete analysis of that timeframe's structure, zones, and trend state. This allows traders to observe alignment, disagreement, and transitions across timeframes within a single view.
The weighted Trend Bias System combines structure, zones, EMA, and swing position into a single score that accounts for timeframe importance. Higher timeframes can be weighted more heavily, reflecting their greater significance in establishing overall market direction.
The dashboard also integrates time-based context through session and killzone tracking, helping traders identify when market conditions align with historically active trading windows. All components coexist without overriding each other, providing a comprehensive framework for multi-timeframe market structure analysis. インジケーター

Consolidation Zones Volume Delta | Flux ChartsGENERAL OVERVIEW:
The Consolidation Zones Volume Delta | Flux Charts indicator is designed to identify and visualize consolidation zones on the chart. Rather than only outlining areas of sideways price movement, the indicator analyzes volume activity occurring inside each consolidation zone. This is done by aggregating lower-timeframe volume data into the higher-timeframe consolidation range, allowing users to see how buying and selling activity evolves while price remains in a range.
What is the theory behind the indicator?:
The indicator is built around three core analytical concepts that guide how consolidation zones are detected and evaluated.
1. Consolidation as a structural phase
Periods of consolidation are characterized by reduced directional movement and compressed price ranges. During these phases, price action often alternates within a defined high–low boundary, creating a structure that can be objectively measured and tracked over time.
2. Volume behavior inside consolidation
While price may appear balanced within a consolidation range, volume activity inside that range can vary. The indicator evaluates volume contributions occurring within the vertical boundaries of the consolidation zone by using lower-timeframe data and weighting each candle’s volume based on its overlap with the zone. This produces an internal volume delta profile that reflects how buying and selling volume accumulates throughout the consolidation.
Delta behavior inside a zone may show:
Persistent dominance of buying or selling volume
Alternating shifts between buyers and sellers
Periods of relatively balanced participation
3. Markets consolidate in multiple ways, one detection method is not enough
Markets do not consolidate in a single, uniform way. To account for this, the indicator includes three distinct consolidation detection methods. Each method is calculated objectively, does not repaint, and targets a different type of sideways or low-expansion price behavior:
Candle Compression
ADX Low Trend Strength
Visual Range Boundaries
CONSOLIDATION ZONES VOLUME DELTA FEATURES:
The Consolidation Zones Volume Delta indicator includes 4 main features:
Consolidation Zones
Volume Delta
Standard Deviation Bands
Alerts
CONSOLIDATION ZONES:
🔹What is a Consolidation Zone?
A consolidation zone is a defined price range where market movement becomes compressed and price remains contained within clear upper and lower boundaries for a sustained period of time. During this phase, price does not establish a strong directional trend and instead oscillates within a relatively narrow range.
🔹Consolidation Zone Detection
The indicator automatically detects consolidation zones using three independent, rule-based methods. Each method evaluates a different market condition and can be selected individually depending on how you want consolidation to be defined. Regardless of the method used, all zones are calculated objectively and finalized once confirmed.
◇ Candles (Candle Compression)
The Candles method identifies consolidation by detecting periods of candle compression and reduced range expansion. A candle is considered part of a consolidation sequence when:
The candle body is small relative to its total range
The candle’s high–low range is smaller than the short-term Average True Range (ATR)
ATR is calculated using a 4-period average true range and is used as a volatility reference. If consecutive candles continue to meet these compression conditions, the indicator increments an internal count.
Under the Consolidation Candles section in the settings, you’ll find two controls.
Min. Consolidation Candles setting
This defines how many consecutive compressed candles are required before a consolidation zone is confirmed. Candle compression is determined using candle structure and short-term ATR, ensuring that only periods of reduced range expansion are counted. Once the minimum threshold is reached, the indicator creates a consolidation zone using the highest high and lowest low formed during the compressed sequence.
Mark Consolidation Candles
When enabled, the indicator highlights candles that meet the compression criteria, making it easy to visually identify which candles contributed to the formation of the consolidation zone.
◇ ADX (Low Trend Strength)
The ADX method identifies consolidation based on weak or declining trend strength rather than candle structure. This method uses the Average Directional Index (ADX) to determine when directional movement is reduced.
ADX is calculated using directional movement values that are smoothed over time. When ADX remains below a user-defined threshold, price is treated as being in a low-trend market. While this condition persists, the indicator tracks the highest high and lowest low formed during the low-trend period.
Under the ADX Settings section in the settings, you’ll find the following controls.
ADX Length
Defines the lookback period used to calculate directional movement for ADX.
ADX Smoothing
Controls the smoothing applied to the ADX calculation.
ADX Threshold
Sets the level below which ADX must remain for the market to be considered consolidating.
Consolidation Strength
Defines how many consecutive candles’ ADX must stay below the threshold before a consolidation zone is confirmed. Once this requirement is met, the indicator creates a consolidation zone using the accumulated high and low from the low-trend window.
Mark Candles Below Threshold
When enabled, the indicator highlights candles where ADX remains below the threshold.
◇ Visual Range
The Visual Range method identifies consolidation by detecting clearly defined horizontal price ranges where price remains contained for a sustained period of time. The indicator continuously tracks the rolling highest high and lowest low across recent candles. When price remains inside the same high–low boundaries without breaking above or below the range, an internal counter advances.
Under the Visual Range section in the settings, you’ll find the following control.
Min. Candles in Range
Defines how many consecutive candles must remain fully contained within the same high–low range before a consolidation zone is confirmed. Once this requirement is met, the indicator creates a consolidation zone using the established range boundaries.
🔹Consolidation Zone Settings
◇ Invalidation Method
Users can choose how Consolidation Zones are invalidated, selecting between Close Break or Wick Break.
Close Break: A Consolidation Zone is invalidated when a candle closes above/below the zone.
Wick Break: A Consolidation Zone is invalidated when a candle’s wick goes above/below the zone.
◇ Merge Overlapping Zones
When enabled, overlapping Consolidation Zones are automatically combined into one unified zone.
◇ Show Last
This setting determines how many Consolidation Zones are displayed on your chart. For example, setting this to 5 will display the 5 most recent zones.
VOLUME DELTA:
Delta Volume visualizes how buying and selling volume accumulates inside each consolidation zone. Instead of using the full candle volume, the indicator isolates only the volume that occurs within the vertical boundaries of the zone. This allows you to see whether bullish or bearish volume is dominating while price remains range-bound. The visualization updates in real time while the zone is active and reflects cumulative participation rather than individual candles.
🔹How Volume Delta is Calculated
Delta Volume is calculated using lower-timeframe data and applied to the higher-timeframe consolidation zone.
Each candle’s volume is split into bullish or bearish volume based on candle direction.
Lower-timeframe candles are pulled using the selected delta timeframe.
For each lower-timeframe candle, only the portion of volume that vertically overlaps the consolidation zone is counted.
Volume is weighted by the amount of overlap between the candle’s range and the zone’s range.
Bullish and bearish volume are accumulated over time to form a running, cumulative delta profile for the zone.
🔹Volume Delta Settings
◇ Enable
Turns the Delta Volume visualization on or off. Consolidation zones continue to plot when disabled.
◇ Show Delta %
Displays the percentage breakdown of bullish versus bearish volume inside the consolidation zone. Percentages are derived from cumulative volume totals.
◇ 3D Visual
When enabled, the delta blocks are extended diagonally using a depth offset derived from the instrument’s daily ATR. This creates visible side faces and top faces for the delta blocks, simulating depth without altering any calculations. The 3D effect is purely visual. It does not change how volume is calculated, weighted, or accumulated.
Users can control the intensity of the 3D effect choosing a value between 1 and 5. Increasing this value increases:
The horizontal offset of the delta blocks
The vertical depth projection applied to the volume faces
Higher values produce a more pronounced 3D appearance by pushing the delta visualization further away from the consolidation box. Lower values keep the visualization flatter and closer to the box boundaries. The depth scaling is normalized using ATR, so the effect adapts proportionally to the instrument’s volatility.
◇ Volume Delta Display Style
Controls how bullish and bearish volume are displayed inside the Consolidation Zone:
Horizontal: Volume is split top-to-bottom within the zone
Vertical: Volume is split left-to-right across the zone
◇ Timeframe
Defines the lower timeframe used for Volume Delta calculations. When a timeframe is selected, the indicator pulls lower-timeframe price and volume data and maps it into the higher-timeframe consolidation zone. Each lower-timeframe candle is evaluated individually. Only the portion of its volume that vertically overlaps the consolidation zone is included, and that volume is weighted based on the candle’s overlap with the zone’s price range. If the Timeframe field is left empty, the indicator defaults to using the chart’s current timeframe for delta calculations.
Using a lower timeframe increases the granularity of the delta calculation, allowing volume changes inside the zone to be measured more precisely. Using a higher timeframe produces a smoother, less granular delta profile.
Please Note: Delta rendering is automatically limited to available lower-timeframe data to prevent incomplete or distorted visuals when historical lower-timeframe volume is unavailable due to TradingView data limits.
STANDARD DEVIATION BANDS:
Standard Deviation Bands project measured price distance away from a confirmed consolidation zone using the size of that zone as the reference unit. Rather than calculating volatility from historical price dispersion, the bands are derived directly from the height of the consolidation range itself. Each band represents a fixed multiple of the consolidation zone’s height and is plotted symmetrically above and below the zone.
🔹How the bands are calculated
Once a consolidation zone is finalized, the indicator calculates the zone height as:
Zone Height = Zone High − Zone Low
This value becomes the base measurement for all deviation calculations. For each enabled band:
Upper bands are placed above the consolidation zone’s high
Lower bands are placed below the consolidation zone’s low
The distance of each band from the zone is calculated by multiplying the zone height by the selected band multiplier. These band levels are fixed relative to the consolidation zone and do not recalculate based on future price movement.
🔹Standard Deviation Band Settings
◇ Band 1
Enables the first deviation band above and below the consolidation zone. The Band 1 multiplier defines how far the band is placed from the zone in terms of zone height. For example, a multiplier of 1 plots the band one full zone height above and below the consolidation range.
◇ Band 2
Enables a second deviation band at a greater distance from the consolidation zone. Band 2 uses its own multiplier and is calculated independently of Band 1, allowing multiple expansion levels to be displayed simultaneously.
◇ Fill Bands
When enabled, the area between the consolidation zone and each deviation band is filled with a semi-transparent color. Upper fills apply to bands above the zone, and lower fills apply to bands below the zone. Fills are static and tied directly to the consolidation zone boundaries.
◇ Color Customization
Each deviation band has independent color controls for:
Upper band lines and fills
Lower band lines and fills
This allows users to visually distinguish between bullish and bearish extensions as well as between multiple deviation levels.
ALERTS:
Users can create alerts for the following:
New Consolidation Zone Formed
Consolidation Zone Break
UNIQUENESS:
This indicator combines multiple consolidation detection methods with lower-timeframe volume delta analysis inside each consolidation zone. It visualizes bullish and bearish volume using weighted overlap logic and optional 3D rendering for improved clarity. Users can choose how volume is displayed, apply structure-based deviation bands, and enable alerts for new zones and zone breaks. All features are rule-based, configurable, and designed to work together within a single framework. インジケーター

Support and Resistance Logistic Regression | Flux Charts💎 GENERAL OVERVIEW
Introducing our new Logistic Regression Support / Resistance indicator! This tool leverages advanced statistical modeling "Logistic Regressions" to identify and project key price levels where the market is likely to find support or resistance. For more information about the process, please check the "HOW DOES IT WORK ?" section.
Logistic Regression Support / Resistance Features :
Intelligent S/R Identification : The indicator uses a logistic regression model to intelligently identify and plot significant support and resistance levels.
Predictive Probability : Each identified level comes with a calculated probability, indicating how likely it is to act as a true support or resistance based on historical data.
Retest & Break Labels : The indicator clearly marks on your chart when a detected support or resistance level is retested (price touches and respects the level) or broken (price decisively crosses through the level).
Alerts : Real-time alerts for support retests, resistance retests, support breaks, and resistance breaks.
Customizable : You can change support & resistance line style, width and colors.
🚩 UNIQUENESS
What makes this indicator truly unique is its application of logistic regression to the concept of support and resistance. Instead of merely identifying historical highs and lows, our indicator uses a statistical model to predict the future efficacy of these levels. It analyzes underlying market conditions (like RSI and body size at pivot formation) to assign a probability to each potential S/R zone. This predictive insight, combined with dynamic, real-time labeling of retests and breaks, provides a more robust and adaptive understanding of market structure than traditional, purely historical methods.
📌HOW DOES IT WORK ?
The Logistic Regression Support / Resistance indicator operates in several key steps:
First, it identifies significant pivot highs and lows on the chart based on a user-defined "Pivot Length." These pivots are potential areas of support or resistance.
For each detected pivot, the indicator extracts relevant market data at that specific point, including the RSI (Relative Strength Index) and the Body Size (the absolute difference between the open and close price of the candle). These serve as input features for the model.
The core of the indicator lies in its logistic regression model. This model is continuously trained on past pivot data and their subsequent behavior (i.e., whether they were "respected" as support/resistance multiple times). It learns the relationship between the extracted features (RSI, Body Size) and the likelihood of a pivot becoming a significant S/R level.
When a new pivot is identified, the model uses its learned insights to calculate a prediction value—a probability (from 0 to 1) that this specific pivot will act as a strong support or resistance.
If the calculated probability exceeds a user-defined "Probability Threshold," the pivot is designated a "Regression Pivot" and drawn on the chart as a support or resistance line. The indicator then actively tracks how price interacts with these levels, displaying "R" labels for retests when the price bounces off the level and "B" labels for breaks when the price closes beyond it.
⚙️ SETTINGS
1. General Configuration
Pivot Length: This setting defines the number of bars used to determine a significant high or low for pivot detection.
Target Respects: This input specifies how many times a level must be "respected" by price action for it to be considered a strong support or resistance level by the underlying model.
Probability Threshold: This is the minimum probability output from the logistic regression model for a detected pivot to be considered a valid support or resistance level and be plotted on the chart.
2. Style
Show Prediction Labels: Enable or disable labels that display the calculated probability of a newly identified regression S/R level.
Show Retests: Toggle the visibility of "R" labels on the chart, which mark instances where price has retested a support or resistance level.
Show Breaks: Toggle the visibility of "B" labels on the chart, which mark instances where price has broken through a support or resistance level. インジケーター

Impulse Zones | Flux Charts💎 GENERAL OVERVIEW
Introducing our new Impulse Zones indicator, a powerful tool designed to identify significant price movements accompanied by strong volume, highlighting potential areas of support and resistance. These Impulse Zones can offer valuable insights into market momentum and potential reversal or continuation points. For more information about the process, please check the "HOW DOES IT WORK ?" section.
Impulse Zones Features :
Dynamic Zone Creation : Automatically identifies and plots potential supply and demand zones based on significant price impulses and volume spikes.
Customizable Settings : Allows you to adjust the sensitivity of zone detection based on your trading style and market conditions.
Retests and Breakouts : Clearly marks instances where price retests or breaks through established Impulse Zones, providing potential entry or exit signals.
Alerts : You can set alerts for Bullish & Bearish Impulse Zone detection and their retests.
🚩 UNIQUENESS
Our Impulse Zones indicator stands out by combining both price action (impulsive moves) and volume confirmation to define significant zones. Unlike simple support and resistance indicators, it emphasizes the strength behind price movements, potentially filtering out less significant levels. The inclusion of retest and breakout visuals directly on the chart provides immediate context for potential trading opportunities. The user can also set up alerts for freshly detected Impulse Zones & the retests of them.
📌 HOW DOES IT WORK ?
The indicator identifies bars where the price range (high - low) is significantly larger than the average true range (ATR), indicating a strong price movement. The Size Sensitivity input allows you to control how large this impulse needs to be relative to the ATR.
Simultaneously, it checks if the volume on the impulse bar is significantly higher than the average volume. The Volume Sensitivity input governs this threshold.
When both the price impulse and volume confirmation criteria are met, an Impulse Zone is created in the corresponding direction. The high and low of the impulse bar define the initial boundaries of the zone. Zones are extended forward in time to remain relevant. The indicator manages the number of active zones to maintain chart clarity and can remove zones that haven't been touched for a specified period. The indicator monitors price action within and around established zones.
A retest is identified when the price touches a zone and then moves away. A break occurs when the price closes beyond the invalidation point of a zone. Keep in mind that if "Show Historic Zones" setting is disabled, you will not see break labels as their zones will be removed from the chart.
The detection of Impulse Zones are immediate signs of significant buying or selling pressure entering the market. These zones represent areas where a strong imbalance between buyers and sellers has led to a rapid price movement accompanied by high volume. Bullish Impulse Zones act as a possible future support zone, and Bearish Impulse Zones act as a possible future resistance zone. Retests of the zones suggest a strong potential movement in the corresponding direction.
⚙️ SETTINGS
1. General Configuration
Show Historic Zones: If enabled, invalidated or expired Impulse Zones will remain visible on the chart.
2. Impulse Zones
Invalidation Method: Determines which part of the candle (Wick or Close) is used to invalidate a zone break.
Size Sensitivity: Controls the required size of the impulse bar relative to the ATR for a zone to be detected. Higher values may identify fewer, larger zones. Lower values may detect more, smaller zones.
Volume Sensitivity: Controls the required volume of the impulse bar relative to the average volume for a zone to be detected. Higher values require more significant volume.
Labels: Toggles the display of "IZ" labels on the identified zones.
Retests: Enables the visual highlighting of retests on the zones.
Breaks: Enables the visual highlighting of zone breaks.
インジケーター

Balanced Price Range | Flux Charts💎 GENERAL OVERVIEW
Introducing our new Balanced Price Range (BPR) indicator! A Balanced Price Range is a trading concept used by price action traders. It is detected by finding overlapping area between two contrary Fair Value Gaps (FVGs). These areas can be used as entry points during market pullbacks. For more information about the process, please check the "HOW DOES IT WORK ?" section.
Balanced Price Range Features :
Balanced Price Range Detection : Identifies areas where bullish and bearish FVGs overlap, suggesting a zone of price equilibrium.
Customizable FVG & BPR Detection : You can fine-tune FVG detection and sensitivity for BPR detection to your liking.
Retest Labels : Bullish & Bearish retest labels will be rendered for BPRs.
Alerts : You can set alerts for Bullish & Bearish BPR detection and their retests.
🚩 UNIQUENESS
This indicator doesn't just detect standard FVGs but specifically looks for areas where bullish and bearish IFVGs (Invalidated Fair Value Gaps) overlap, defining a Balanced Price Range. It also actively manages and updates identified BPR zones, removing them when they are invalidated or remain untouched for a specified period. It highlights and alerts users to retests of established BPR zones, signaling potential trading opportunities. Users can tailor the appearance of the BPR zones and retest markers, as well as configure specific alerts for new BPR formations and retests.
📌 HOW DOES IT WORK ?
A Fair Value Gap generally occur when there is an imbalance in the market. They can be detected by specific formations within the chart. The indicator first detects bullish & bearish FVG zones according to their formations on chart. Then, they are dynamically tracked and flagged as invalidated if the price crosses them, turning them into IFVGs. When a FVG & IFVG of the same type overlaps, the indicator combines them into a single BPR of corresponding type. The detected BPR is updated as new data comes in, and renders retests labels as they occur. A bullish BPR can be used to find long trade entry opportunities, while a bearish BPR can be used to find short trade entry opportunities. Retests can also indicate potential movements in the corresponding direction of the BPR. Users can set-up alerts for BPR detection & BPR retests and will get notified as they occur.
⚙️ SETTINGS
Show Historic Zones: If enabled, invalidated or expired BPR zones will remain visible on the chart.
Balanced Price Range:
FVG Detection Method: Determines the criteria for the bar types forming the initial FVG.
Same: All three bars forming the FVG must be of the same type (all bullish or all bearish).
Mixed: The bar types must vary (a mix of bullish and bearish bars).
All: Bar types can vary or be the same.
FVG Invalidation Method: Determines which part of the candle (wick or close) invalidates the initial FVG.
BPR Invalidation Method: Determines which part of the candle (wick or close) invalidates the Balanced Price Range.
Sensitivity: Adjusts the sensitivity of FVG detection. Higher values may identify fewer, larger BPRs, while lower values may detect more, smaller BPRs.
Labels: Toggles the display of text labels on the identified zones.
Retests: Enables or disables the detection and visualization of BPR retests. インジケーター

Bollinger Bands MTF & Kalman Filter | Flux Charts📈 Multi-Timeframe Kalman Filtered Bollinger Bands Indicator
Introducing our MTF Kalman Filtered Bollinger Bands – a powerful multi-timeframe Bollinger Bands (BB) indicator enhanced with Kalman filtering for superior smoothing and trend analysis. This indicator dynamically adapts Bollinger Bands across multiple timeframes while incorporating volume-based gradient transparency to highlight significant price movements. This indicator is better optimized for lower timeframes.
❓ How to Interpret the Bands & Volume Gradient:
Our indicator combines Lower Timeframe (LTF) and Higher Timeframe (HTF) Bollinger Bands to provide a comprehensive trend analysis. It applies Kalman filtering to the LTF bands, ensuring smoother, noise-reduced signals. The color gradient and relative volume-based transparency offer deeper insights into price strength.
🔹 LTF Bollinger Bands: Shorter-period bands filtered with a Kalman smoothing algorithm, reducing lag and noise.
🔹 HTF Bollinger Bands: Traditional Bollinger Bands plotted on a higher timeframe, offering macro trend analysis.
🔹 Volume Gradient Transparency: The bands adjust their opacity based on relative buy/sell volume, allowing traders to assess momentum strength.
📌 How Does It Work?
1️⃣ Multi-Timeframe Bollinger Bands Calculation
The LTF BB uses Kalman filtering for a smoother price representation, helping to reduce false signals.
The HTF BB is EMA-smoothed for improved trend clarity.
2️⃣ Adaptive Gradient Transparency
The opacity of the fill color between the bands is determined by relative buy/sell volume.
Higher buy volume = stronger bullish signal (greener bands).
Higher sell volume = stronger bearish signal (redder bands).
3️⃣ Dynamic Trend Signals & Breakouts
Buy Signal: When price breaks below the HTF lower band and LTF bands start rising.
Sell Signal: When price breaks above the HTF upper band and LTF bands start falling.
⚙️ Settings & Customization:
🛠 LTF and HTF Bollinger Bands Settings:
Multiplier: The multiplier applied to the BB to determine the upper and lower bands
Length: Define the number of bars determines the BB calculations.
Custom Timeframe Selection: Choose from predefined options (e.g., 5m, 15m, 1H, 4H, etc).
🎨 Gradient & Transparency Settings:
Bullish/Bearish Color Options: Customize colors for uptrend and downtrend conditions.
Max & Min Opacity: Adjust the transparency levels based on volume intensity.
Solid vs. Gradient Mode: Choose between a gradient fill or a solid color mode for clarity.
📌 Recommended Settings for Optimal Use:
1️⃣ Timeframe Selection (LTF -> HTF):
1 min -> 5 min
2 min -> 5 min
3 min -> 15 min
5 min -> 15 min
15 min -> 1 hr
1 hr -> 4 hr
4 hr -> 1 day
2️⃣ Multiplier: Use 2.0 for LTF and 2.25 for HTF
3️⃣Length: Use a length of 20 - 30 bars
🚀 Why Use This Indicator?
✅ Multi-Timeframe Bollinger Bands with Kalman Filtering – Ideal for traders looking for reduced lag and clearer trend signals.
✅ Volume-Based Transparency – See momentum shifts instantly with adaptive opacity.
✅ Dynamic Buy & Sell Signals – Alerts based on price action + volume trends.
✅ Customizable for Any Strategy – Adjust colors, timeframes, and filtering options for personalized trading. インジケーター

SuperTrend + Relative Volume (Kernel Optimized)Introducing our new KDE Optimized Supertrend + Relative Volume Indicator!
This innovative indicator combines the power of the Supertrend indicator along with Relative Volume. It utilizes the Kernel Density Estimation (KDE) to estimate the probability of a candlestick marking a significant trend break or reversal.
❓How to Interpret the KDE %:
The KDE % is a crucial metric that reflects the likelihood that the current candlestick represents a true break in the SuperTrend line, supported by an increase in relative volume. It estimates the probability of a trend shift or continuation based on historical SuperTrend breaks and volume patterns:
Low KDE %: A lower probability that the current break is significant. Price action is less likely to reverse, and the trend may continue.
Moderate KDE - High KDE %: An increased possibility that a trend reversal or consolidation could occur. Traders should start watching for confirmation signals.
📌How Does It Work?
The SuperTrend indicator uses the Average True Range (ATR) to determine the direction of the trend and identifies when the price crosses the SuperTrend line, signaling a potential trend reversal. Here's how the KDE Optimized SuperTrend Indicator works:
SuperTrend Calculation: The SuperTrend indicator is calculated, and when the price breaks above (bullish) or below (bearish) the SuperTrend line, it is logged as a significant event.
Relative Volume: For each break in the SuperTrend line, we calculate the relative volume (current volume vs. the average volume over a defined period). High relative volume can suggest stronger confirmation of the trend break.
KDE Array Calculation: KDE is applied to the break points and relative volume data:
Define the KDE options: Bandwidth, Number of Steps, and Array Range (Array Max - Array Min).
Create a density range array using the defined number of steps, corresponding to potential break points.
Apply a Gaussian kernel function to the break points and volume data to estimate the likelihood of the trend break being significant.
KDE Value and Signal Generation: The KDE array is updated as each break occurs. The KDE % is calculated for the breakout candlestick, representing the likelihood of the trend break being significant. If the KDE value exceeds the defined activation threshold, a darker bullish or bearish arrow is plotted after bar confirmation. If the KDE value falls below the threshold, a more transparent arrow is drawn, indicating a possible but lower probability break.
⚙️Settings:
SuperTrend Settings:
ATR Length: The period over which the Average True Range (ATR) is calculated.
Multiplier: The multiplier applied to the ATR to determine the SuperTrend threshold.
KDE Settings:
Bandwidth: Determines the smoothness of the KDE function and the width of the influence of each break point.
Number of Bins (Steps): Defines the precision of the KDE algorithm, with higher values offering more detailed calculations.
KDE Threshold %: The level at which relative volume is considered significant for confirming a break.
Relative Volume Length: The number of historic candles used in calculating KDE %
インジケーター

Inversion Fair Value Gap Oscillator | Flux Charts💎 GENERAL OVERVIEW
Introducing the new Inversion Fair Value Gap Oscillator (IFVG Oscillator) indicator! This unique indicator identifies and tracks Inversion Fair Value Gaps (IFVGs) in price action, presenting them in an oscillator format to reveal market momentum based on IFVG strength. It highlights bullish and bearish IFVGs while enabling traders to adjust detection sensitivity and apply volume and ATR-based filters for more precise setups. For more information about the process, check the "📌 HOW DOES IT WORK" section.
Features of the new IFVG Oscillator:
Fully Customizable FVG & IFVG Detection
An Oscillator Approach To IFVGs
Divergence Markers For Potential Reversals
Alerts For Divergence Labels
Customizable Styling
📌 HOW DOES IT WORK?
Fair Value Gaps are price gaps within bars that indicate inefficiencies, often filled as the market retraces. An Inversion Fair Value Gap is created in the opposite direction once a FVG gets invalidated. The IFVG Oscillator scans historical bars to identify these gaps, then filters them based on ATR or volume. Each IFVG is marked as bullish or bearish according to the opposite direction of the original FVG that got invalidated.
An oscillator is calculated using recent IFVGs with this formula :
1. The Oscillator starts as 0.
2. When a new IFVG Appears, it contributes (IFVG Width / ATR) to the oscillator of the corresponding type.
3. Each confirmed bar, the oscillator is recalculated as OSC = OSC * (1 - Decay Coefficient)
The oscillator aggregates and decays past IFVGs, allowing recent IFVG activity to dominate the signal. This approach emphasizes current market momentum, with oscillations moving bullish or bearish based on IFVG intensity. Divergences are marked where IFVG oscillations suggest potential reversals. Bullish Divergence conditions are as follows :
1. The current candlestick low must be the lowest of last 25 bars.
2. Net Oscillator (Shown in gray line by default) must be > 0.
3. The current Bullish IFVG Oscillator value should be no more than 0.1 below the highest value from the last 25 bars.
Traders can use divergence signals to get an idea of potential reversals, and use the Net IFVG Oscillator as a trend following marker.
🚩 UNIQUENESS
The Inversion Fair Value Gap Oscillator stands out by converting IFVG activity into an oscillator format, providing a momentum-based visualization of IFVGs that reveals market sentiment dynamically. Unlike traditional indicators that statically mark IFVG zones, the oscillator decays older IFVGs over time, showing only the most recent, relevant activity. This approach allows for real-time insight into market conditions and potential reversals based on oscillating IFVG strength, making it both intuitive and powerful for momentum trading.
Another unique feature is the combination of customizable ATR and volume filters, letting traders adapt the indicator to match their strategy and market type. You can also set-up alerts for bullish & bearish divergences.
⚙️ SETTINGS
1. General Configuration
Decay Coefficient -> The decay coefficient for oscillators. Increasing this setting will result in oscillators giving the weight to recent IFVGs, while decreasing it will distribute the weight equally to the past and recent IFVGs.
2. Fair Value Gaps
Zone Invalidation -> Select between Wick & Close price for FVG Zone Invalidation.
Zone Filtering -> With "Average Range" selected, algorithm will find FVG zones in comparison with average range of last bars in the chart. With the "Volume Threshold" option, you may select a Volume Threshold % to spot FVGs with a larger total volume than average.
FVG Detection -> With the "Same Type" option, all 3 bars that formed the FVG should be the same type. (Bullish / Bearish). If the "All" option is selected, bar types may vary between Bullish / Bearish.
Detection Sensitivity -> You may select between Low, Normal or High FVG detection sensitivity. This will essentially determine the size of the spotted FVGs, with lower sensitivies resulting in spotting bigger FVGs, and higher sensitivies resulting in spotting all sizes of FVGs.
3. Inversion Fair Value Gaps
Zone Invalidation -> Select between Wick & Close price for IFVG Zone Invalidation.
4. Style
Divergence Labels On -> You can switch divergence labels to show up on the chart or the oscillator plot. インジケーター

Fair Value Gap Oscillator | Flux Charts💎 GENERAL OVERVIEW
Introducing the new Fair Value Gap Oscillator (FVG Oscillator) indicator! This unique indicator identifies and tracks Fair Value Gaps (FVGs) in price action, presenting them in an oscillator format to reveal market momentum based on FVG strength. It highlights bullish and bearish FVGs while enabling traders to adjust detection sensitivity and apply volume and ATR-based filters for more precise setups. For more information about the process, check the "📌 HOW DOES IT WORK" section.
Features of the new FVG Oscillator:
Fully Customizable FVG Detection
An Oscillator Approach To FVGs
Divergence Markers For Potential Reversals
Alerts For Divergence Labels
Customizable Styling
📌 HOW DOES IT WORK?
Fair Value Gaps are price gaps within bars that indicate inefficiencies, often filled as the market retraces. The FVG Oscillator scans historical bars to identify these gaps, then filters them based on ATR or volume. Each FVG is marked as bullish or bearish according to the trend direction that preceded its formation.
An oscillator is calculated using recent FVGs with this formula :
1. The Oscillator starts as 0.
2. When a new FVG Appears, it contributes (FVG Width / ATR) to the oscillator of the corresponding type.
3. Each confirmed bar, the oscillator is recalculated as OSC = OSC * (1 - Decay Coefficient)
The oscillator aggregates and decays past FVGs, allowing recent FVG activity to dominate the signal. This approach emphasizes current market momentum, with oscillations moving bullish or bearish based on FVG intensity. Divergences are marked where FVG oscillations suggest potential reversals. Bullish Divergence conditions are as follows :
1. The current candlestick low must be the lowest of last 25 bars.
2. Net Oscillator (Shown in gray line by default) must be > 0.
3. The current Bullish FVG Oscillator value should be no more than 0.1 below the highest value from the last 25 bars.
Traders can use divergence signals to get an idea of potential reversals, and use the Net FVG Oscillator as a trend following marker.
🚩 UNIQUENESS
The Fair Value Gap Oscillator stands out by converting FVG activity into an oscillator format, providing a momentum-based visualization of FVGs that reveals market sentiment dynamically. Unlike traditional indicators that statically mark FVG zones, the oscillator decays older FVGs over time, showing only the most recent, relevant activity. This approach allows for real-time insight into market conditions and potential reversals based on oscillating FVG strength, making it both intuitive and powerful for momentum trading.
Another unique feature is the combination of customizable ATR and volume filters, letting traders adapt the indicator to match their strategy and market type. You can also set-up alerts for bullish & bearish divergences.
⚙️ SETTINGS
1. General Configuration
Decay Coefficient -> The decay coefficient for oscillators. Increasing this setting will result in oscillators giving the weight to recent FVGs, while decreasing it will distribute the weight equally to the past and recent FVGs.
2. Fair Value Gaps
Zone Invalidation -> Select between Wick & Close price for FVG Zone Invalidation.
Zone Filtering -> With "Average Range" selected, algorithm will find FVG zones in comparison with average range of last bars in the chart. With the "Volume Threshold" option, you may select a Volume Threshold % to spot FVGs with a larger total volume than average.
FVG Detection -> With the "Same Type" option, all 3 bars that formed the FVG should be the same type. (Bullish / Bearish). If the "All" option is selected, bar types may vary between Bullish / Bearish.
Detection Sensitivity -> You may select between Low, Normal or High FVG detection sensitivity. This will essentially determine the size of the spotted FVGs, with lower sensitivies resulting in spotting bigger FVGs, and higher sensitivies resulting in spotting all sizes of FVGs.
3. Style
Divergence Labels On -> You can switch divergence labels to show up on the chart or the oscillator plot. インジケーター

Rolling ATR Bands | Flux Charts💎 GENERAL OVERVIEW
Introducing the Rolling ATR Bands indicator! This indicator overlays adaptive bands around the price, using the Average True Range (ATR) to define dynamic support and resistance levels. The Rolling ATR Bands are color-coded to visually indicate potential trend strength, shifting between bearish, neutral, and bullish colors. This tool can help traders interpret price volatility, as well as identify probable trend changes, continuations, or reversals. For more information about the process, check the "HOW DOES IT WORK ?" section.
Features of the new Rolling ATR Bands:
ATR Bands With Customizable ATR Length & Multiplier
Smooth Trend Strength With Adjustable Smoothing Options
Color-coded bands Representing Bearish, Neutral, or Bullish Trends
Alerts for Retests & Breaks
Customizable Visuals
📌 HOW DOES IT WORK?
The Rolling ATR Bands indicator calculates the ATR based on the specified length and multiplier to form upper and lower bands around the price. These bands adapt with market volatility, widening during high volatility and contracting during lower volatility periods.
In addition, the indicator calculates a "trend strength" score by combining an interpolated RSI, Supertrend, and EMA crossover. This score is smoothed with a customizable length, and a color gradient is applied to visually denote the strength of bearish, neutral, or bullish conditions.
Here's how to interpret the bands:
Upper Band: Acts as dynamic resistance; when price approaches or touches it, this often suggests potential overbought conditions.
Lower Band: Acts as dynamic support; touching or nearing this band might indicate potential oversold conditions.
Color Shifts: Color changes indicate shifts in trend direction. For example, a green color suggests a bullish trend, while red hints at bearish tendencies.
🚩 UNIQUENESS
What sets the Rolling ATR Bands apart is the combined use of interpolated RSI, Supertrend, and EMA cross values, creating a weighted trend strength score. This integration allows for nuanced, color-coded visual cues that respond quickly to trend changes without excessive noise, offering traders an intuitive view of both trend direction and potential momentum. You can also set up alerts for retest & alerts for upper and lower bands to get informed of potential movements.
⚙️ SETTINGS
1. General Configuration
ATR Length : Controls the ATR calculation length for the bands.
Smoothing: Adjusts the trend strength smoothing to control sensitivity to trend changes.
ATR Multiplier : Sets the width of the bands by multiplying the ATR value.
Trend Smoothing : Higher settings will result in longer periods of time required for trend to change direction from bullish to bearish and vice versa. インジケーター

Cumulative Volume Delta Strategy | Flux Charts💎 GENERAL OVERVIEW
Introducing the Cumulative Volume Delta Strategy (CVDS) Indicator, an advanced tool designed to enhance trading strategies by identifying potential trend reversals through volume dynamics. This script features integrated order block detection, Fair Value Gaps (FVGs), and a dynamic take-profit (TP) and stop-loss (SL) system. For an in-depth understanding of the strategy, refer to the "HOW DOES IT WORK?" section below.
Features of the new Cumulative Volume Delta Strategy (CVDS) Indicator :
Cumulative Volume Delta-based Strategy
Order Block and Fair Value Gap (FVG) Entry Methods
Dynamic TP/SL System
Customizable Risk Management Settings
Alerts for Buy, Sell, TP, and SL Signals
📌 HOW DOES IT WORK ?
The CVDS indicator operates by tracking the net volume difference between buyers and sellers to identify divergences that could indicate potential trend reversals. A cumulative volume delta (CVD) calculation is employed to measure the intensity of these divergences in relation to price movements. The net volume sum is reset every trading day (can be changed from the settings using the anchor period option), and divergences are detected when the cumulative volume crosses the 0-line over or under.
Once a significant divergence is detected, the indicator identifies breakout points, confirmed by either Fair Value Gaps (FVGs) or Order Blocks (OBs). Depending on your chosen entry mode, the indicator will trigger a buy or sell entry when the confirmation signal aligns with the breakout direction. Alerts for Buy, Sell, Take-Profit, and Stop-Loss are available.
Note that the indicator cannot run on 1-minute and 1-second charts, as it needs to get data from a lower timeframe. 1-minutes & 1-second timeframes are the minimum timeframes in their ranges respectively.
🚩 UNIQUENESS
What sets this indicator apart is the combination of volume divergence analysis with advanced price action tools like Fair Value Gaps (FVGs) and Order Blocks (OBs). The ability to choose between these methods, along with a dynamic TP/SL system that adapts based on volatility, provides flexibility for traders in any market condition. The backtesting dashboard provides metrics about the performance of the indicator. You can use it to tune the settings for best use in the current ticker. The CVD-based strategy ensures that trades are initiated only when meaningful divergences between volume and price occur, filtering out noise and increasing the likelihood of profitable trades.
⚙️ SETTINGS
1. General Configuration
Anchor Period: Time anchor period used in CVD calculation. This is essentially the period that the volume delta sum will be reset. Lower timeframes may result in more entries at the cost of less reliable results.
Entry Mode: Choose between FVGs or OBs to trigger your entries based on the confirmation signals.
Retracement Requirement: Enable to confirm the entry after a retracement toward the FVG or OB.
2. Fair Value Gaps
FVG Sensitivity: Modify the sensitivity of FVG detection, allowing for more or fewer gaps to be considered valid.
3. Order Blocks (OB)
Swing Length: Define the swing length to identify OB formations. Shorter lengths find smaller OBs, while longer lengths detect larger structures.
4. TP / SL
TP / SL Method:
a) Dynamic: The TP / SL zones will be auto-determined by the algorithm based on the Average True Range (ATR) of the current ticker.
b) Fixed : You can adjust the exact TP / SL ratios from the settings below.
Dynamic Risk: The risk you're willing to take if "Dynamic" TP / SL Method is selected. Higher risk usually means a better winrate at the cost of losing more if the strategy fails. This setting is has a crucial effect on the performance of the indicator, as different tickers may have different volatility so the indicator may have increased performance when this setting is correctly adjusted. インジケーター

Candle Range Theory | Flux Charts💎 GENERAL OVERVIEW
Introducing our new Candle Range Theory Indicator! This powerful tool offers a strategy built around the Candle Range Theory, which analyzes market movements through the relative size and structure of price candles. For more information about the process, check the "HOW DOES IT WORK" section.
Features of the new Candle Range Theory Indicator :
Implementation of the Candle Range Theory
FVG & Order Block Entry Methods
2 Different TP / SL Methods
Customizable Execution Settings
Customizable Backtesting Dashboard
Alerts for Buy, Sell, TP & SL Signals
📌 HOW DOES IT WORK ?
The Candle Range Theory (CRT) indicator operates by identifying significant price movements through the relative size and structure of candlesticks. A key part of the strategy is determining large candles based on their range compared to the Average True Range (ATR) in a higher timeframe. Once identified, a breakout of either the high wick or the low wick of the large candle is required. This breakout is considered a liquidity grab. After that, the indicator waits for confirmation through Fair Value Gaps (FVGs) or Order Blocks (OBs). The confirmation structure must be the opposite direction of the breakout, for example if the high wick is broken, a bearish FVG is required for the short entry. After a confirmation signal is received, the indicator will trigger entry points based on your chosen entry method (FVG or OB), and exit points will be calculated using either a dynamic ATR-based TP/SL method or fixed percentages. Alerts for Buy, Sell, Take-Proft, and Stop-Loss are available.
🚩 UNIQUENESS
This indicator stands out because it combines two highly effective entry methods: Fair Value Gaps (FVGs) and Order Blocks (OBs). You can choose between these strategies depending on market conditions. Additionally, the dynamic TP/SL system uses the ticker's volatility to automatically calculate stop-loss and take-profit targets. The backtesting dashboard provides metrics about the performance of the indicator. You can use it to tune the settings for best use in the current tiker. The Candle Range Theory approach offers more flexibility compared to traditional indicators, allowing for better customization and control based on your risk tolerance.
⚙️ SETTINGS
1. General Configuration
Higher Timeframe: Customize the higher timeframe for analysis. Recommended combinations include M15 -> H4, H4 -> Daily, Daily -> Weekly, and Weekly -> Monthly.
HTF Candle Size: Define the size of the higher timeframe candles as Big, Normal, or Small to filter valid setups based on their range relative to ATR.
Entry Mode: Choose between FVGs and Order Blocks for your entry triggers.
Require Retracement: Enable this option if you want a retracement to the FVG or OB for entry confirmation.
Show HTF Candle Lines: Toggle to display the higher timeframe candle lines for better visual clarity.
2. Fair Value Gaps
FVG Sensitivity: You may select between Low, Normal, High or Extreme FVG detection sensitivity. This will essentially determine the size of the spotted FVGs, with lower sensitivities resulting in spotting bigger FVGs, and higher sensitivities resulting in spotting all sizes of FVGs.
3. Order Blocks
Swing Length: Swing length is used when finding order block formations. Smaller values will result in finding smaller order blocks.
4. TP / SL
TP / SL Method:
a) Dynamic: The TP / SL zones will be auto-determined by the algorithm based on the Average True Range (ATR) of the current ticker.
b) Fixed : You can adjust the exact TP / SL ratios from the settings below.
Dynamic Risk: The risk you're willing to take if "Dynamic" TP / SL Method is selected. Higher risk usually means a better winrate at the cost of losing more if the strategy fails. This setting is has a crucial effect on the performance of the indicator, as different tickers may have different volatility so the indicator may have increased performance when this setting is correctly adjusted. インジケーター

ICT Judas Swing | Flux Charts💎 GENERAL OVERVIEW
Introducing our new ICT Judas Swing Indicator! This indicator is built around the ICT's "Judas Swing" strategy. The strategy looks for a liquidity grab around NY 9:30 session and a Fair Value Gap for entry confirmation. For more information about the process, check the "HOW DOES IT WORK" section.
Features of the new ICT Judas Swing :
Implementation of ICT's Judas Swing Strategy
2 Different TP / SL Methods
Customizable Execution Settings
Customizable Backtesting Dashboard
Alerts for Buy, Sell, TP & SL Signals
📌 HOW DOES IT WORK ?
The strategy begins by identifying the New York session from 9:30 to 9:45 and marking recent liquidity zones. These liquidity zones are determined by locating high and low pivot points: buyside liquidity zones are identified using high pivots that haven't been invalidated, while sellside liquidity zones are found using low pivots. A break of either buyside or sellside liquidity must occur during the 9:30-9:45 session, which is interpreted as a liquidity grab by smart money. The strategy assumes that after this liquidity grab, the price will reverse and move in the opposite direction. For entry confirmation, a fair value gap (FVG) in the opposite direction of the liquidity grab is required. A buyside liquidity grab calls for a bearish FVG, while a sellside grab requires a bullish FVG. Based on the type of FVG—bullish for buys and bearish for sells—the indicator will then generate a Buy or Sell signal.
After the Buy or Sell signal, the indicator immediately draws the take-profit (TP) and stop-loss (SL) targets. The indicator has three different TP & SL modes, explained in the "Settings" section of this write-up.
You can set up alerts for entry and TP & SL signals, and also check the current performance of the indicator and adjust the settings accordingly to the current ticker using the backtesting dashboard.
🚩 UNIQUENESS
This indicator is an all-in-one suit for the ICT's Judas Swing concept. It's capable of plotting the strategy, giving signals, a backtesting dashboard and alerts feature. Different and customizable algorithm modes will help the trader fine-tune the indicator for the asset they are currently trading. Three different TP / SL modes are available to suit your needs. The backtesting dashboard allows you to see how your settings perform in the current ticker. You can also set up alerts to get informed when the strategy is executable for different tickers.
⚙️ SETTINGS
1. General Configuration
Swing Length -> The swing length for pivot detection. Higher settings will result in
FVG Detection Sensitivity -> You may select between Low, Normal, High or Extreme FVG detection sensitivity. This will essentially determine the size of the spotted FVGs, with lower sensitivies resulting in spotting bigger FVGs, and higher sensitivies resulting in spotting all sizes of FVGs.
2. TP / SL
TP / SL Method ->
a) Dynamic: The TP / SL zones will be auto-determined by the algorithm based on the Average True Range (ATR) of the current ticker.
b) Fixed : You can adjust the exact TP / SL ratios from the settings below.
Dynamic Risk -> The risk you're willing to take if "Dynamic" TP / SL Method is selected. Higher risk usually means a better winrate at the cost of losing more if the strategy fails. This setting is has a crucial effect on the performance of the indicator, as different tickers may have different volatility so the indicator may have increased performance when this setting is correctly adjusted. インジケーター
