LTF FVGs (Lower Timeframe Fair Value Gaps) [D4A]LTF FVGs - (Lower Timeframe FVGs)
This script draws Fair Value Gaps on the chart that occured on lower timeframe, eg. 1m FVG is drawn on 5 min chart. The script uses request.security_lower_tf to get the lower timeframe data for this. There are several distinct features that make this script unique:
- the script automatically pulls FVGs from the most relevant lower timeframe (this can be manually changed at any time)
- the size of smallest FVGs can be customized based on ATR threshold
- Volume Imbalance can be included as part of FVG
This script can be useful for traders who want to be informed about any gaps created on lower timeframe without switching to lower timeframe chart.
What is FVG?
FVG or Fair Value Gap is a three-candle formation where the middle candle moves so aggressively creating displacement that it leaves a gap between the wick of the prior candle and the wick of the following candle. Price often returns to fill these gaps before continuing — making them useful as targets, entry zones, or invalidation levels.
A bullish forms when the low of the current candle is above the high of two candles ago, with a bullish middle candle. A bearish FVG is the inverse.
FVGs often occur due to sudden market movements triggered by news events, changes in market sentiment, or large orders that move the price significantly. The market tend to return to these unfilled spaces, providing potential opportunities for traders. These areas may serve as either support (bullish FVG) or resistance (bearish FVG). They may also be completely filled by the price and then act as Inversion FVGs but this is outside of scope of this script.
SETTINGS
- Force Manual TF - the user can manually select lower timeframe from which the script can pull FVGs. When this option is not active, the script is pre-programmed to select lower timeframe automatically for FVG discovery which is at least one level below the current timeframe, eg. 15S when on 1m, 1m when on 5m and so on.
- FVG Fill and border transparency - customize the look of FVG boxes
- FVG threshold - set the threshold to eliminate very small gaps
- Volume Imbalance included - include Volume Imbalance as part of FVG. Enabled by default.
- Show LTF Label & Transparency - enable the label which shows from which timeframe is the FVG from
- Extend to Current Bar or by X-bars - customize how the FVG boxes are presented on the chart
- Max FVGs Displayed - how many FVGs should be kept in memory by default
When FVG is fully filled by price, the script removes it from the memory.
Other relevant scripts that are complementary to this script: Candle Displacement
-----------------
Disclaimer
The content provided in this script is for educational and informational purposes only. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs. Indicator

1st Presented Fvg's [M1D]OVERVIEW
1st Presented Fvg's (M1D) isolates the very first Fair Value Gap each hourly window prints —
the one everything else in that hour reacts to — and tracks its full lifecycle: does it
hold, does it fail, does it invert, and does the inversion validate on a retest. Instead of
marking every FVG on the chart, it keeps only the one gap the model cares about per hour and
reports what happened to it.
It is a single-timeframe, event-tracking tool rather than a signal generator. It tags one
gap per hourly window, runs a strict hold / fail / invert / validate state machine on it, and
rolls a running Hold %, Inverted count and Valid IFVG count into a small dashboard so you can
see how the current session is actually behaving.
Detection and every state transition evaluate on confirmed bars only — nothing is decided
intrabar, and the chart requires an intraday timeframe of 60 minutes or less.
WHAT IT PLOTS
- 1st Presented FVG zone — a coloured box drawn from the exact three-candle gap, labelled
with its hourly window (e.g. "1st - 2pm") and an optional macro-window time suffix (e.g.
"1st - 2pm 1:50-2:10"). Zone colour cycles through your chosen palette by hour.
- NY Open tag — inside the 9:30-10:00 NY session specifically, the gap is labelled "1st -
NY Open" instead of the generic hour label, and only appears once price has swept a recent
pivot high or low first (see Key Definitions below).
- Inversion (IFVG) tag — a gap that held, then closed through, turns orange and is
relabelled IFVG.
- Valid IFVG tag (✔) — once an inverted gap is retested (price trades back into it), it
gains a check mark and a brighter fill, so a live, usable IFVG stands out from one still
forming.
- Failed gap (optional) — a gap that closed through without ever holding can be kept on
chart dimmed for context, or deleted outright; either way it is counted in the stats.
- Dashboard (M1D) — a small monospace table showing the current session, current time, and
a Today vs. Total read of gaps tagged, gaps held, Hold %, gaps inverted, and validated
IFVGs.
KEY DEFINITIONS
- Held — the point at which a 1st Presented FVG is considered to have defended its zone,
rather than just being tagged. Governed by the Hold Definition setting below.
- Reject & Close Away (default Hold Definition) — price must trade into the gap and then
close back outside its proximal edge before it counts as held. A tap that closes through
without that rejection is scored as a fail, not a hold — so Hold % reflects confirmed
rejections, not every incidental touch.
- Touch & Hold (alternate Hold Definition) — any trade into the gap that doesn't close
through it counts as held immediately, no rejection required.
- Inversion (IFVG) — a gap that held first, then later closed through it. This sequence is
mandatory: a gap that runs straight through without ever holding is a fail, never an
inversion.
- Valid IFVG — an inverted gap that price has subsequently traded back into.
- Hold % — held gaps ÷ gaps tagged, shown separately for Today and All-Time.
- NY Open liquidity sweep — inside the 9:30-10:00 New York session, the 1st Presented tag
runs on its own daily slot, separate from the normal hourly one, so an earlier random gap
in the same clock hour can't use up the slot before the open range even happens. That slot
only fills once price has swept a recent confirmed swing pivot — a low for a bullish gap,
a high for a bearish gap — immediately before the gap forms, so the tag reflects a genuine
liquidity grab rather than the first random three-candle gap after 9:30.
HOW TO USE IT
Reading the state of the current gap
- A live-coloured zone with no orange means the 1st Presented FVG is still fresh or holding
— treat it as an active zone.
- Orange means it has inverted — price closed through it after holding, so it now has the
opposite role.
- Orange with a ✔ means the inversion has been retested and validated — the strongest read
of the three, since price has both flipped the gap and come back to confirm it.
- A dimmed zone (if you keep failed gaps) means it closed through without ever holding —
context only, not a level to lean on.
Reading the dashboard
- Hold % (Today vs. All-Time) tells you how respected first-hour gaps have been — a low
reading suggests today's imbalances are being run through rather than defended.
- Inverted vs. Valid IFVG counts show how often a failed gap actually resolves into a
confirmed continuation level (✔) rather than just failing outright.
- Session tells you which killzone you're in without leaving the chart.
Choosing your settings
- Use Reject & Close Away when you only want gaps that show a confirmed rejection —
Touch & Hold is looser and counts the first touch, useful for comparing how often price
even reaches the gap versus how often it truly holds.
- Switch Mode to First Of Each Direction if you want to track a bullish and a bearish 1st
gap side-by-side within the same hour, instead of only the first of either.
- Turn on the Displacement Filter if you want the tag to skip small, low-conviction gaps in
favour of the next one that clears your ATR multiple.
- Leave NY Open: Require Liquidity Sweep on if you specifically want the opening-range gap
isolated from the generic hourly noise; adjust Pivot Lookback to make the swing-pivot
reference tighter (fewer bars, more sensitive) or wider (more bars, more established swings).
SETTINGS
- Detection — 1st FVG Mode (First Of Either / First Of Each Direction), Hourly Window
Timezone, Displacement Filter (ATR × multiple), Restrict To Time Window, NY Open (9:30-
10:00): Require Liquidity Sweep, Pivot Lookback.
- Inversion (IFVG) — Track Inversions toggle, Hold Definition (Touch & Hold / Reject &
Close Away).
- Labels — Show Labels, Label Text prefix, Show Macro Window Time, Label Size, Label
Colour.
- Colours — Colours In Cycle (2 or 3), the cycle colours, Inversion Colour, Zone
Transparency.
- Display — Gap Lifetime (Until Invalidated / End Of Hour / End Of Day), Keep Failed Gaps
(Dimmed), Max Gaps On Chart.
- Stats Table — Show Stats Table, Position, Text Size.
This is a decision-support and context tool for discretionary ICT trading. It does not
generate buy or sell signals and does not place trades. This is not financial advice, and no
market's past behaviour is indicative of future results.
Indicator

Schrodinger Zone Probability [JOAT]SCHRÖDINGER ZONE PROBABILITY
The most quantitatively ambitious indicator in the JOAT suite. Detects Fair Value Gaps and Order Blocks the way a serious SMC engine should — and then, before they are touched, treats each one as a superposition zone with two simultaneous probabilities: P_S (the probability it will act as Support when revisited) and P_R (the probability it will act as Resistance). The two probabilities sum to one. The zone exists in a superposition of both states until price actually touches it; at that moment the wavefunction collapses to a single classical state — S or R — driven by the bars-after-touch confirmation logic. Then the script tags the zone with the committed direction and archives the collapse.
Detection — FVGs and OBs done properly
Two independent zone types feed the superposition engine:
Fair Value Gaps — the standard 3-candle imbalance definition, ATR-filtered (minimum gap = configurable × ATR, default 0.30×) so only meaningful gaps qualify. Bull and bear FVGs both detected.
Order Blocks — three methods exposed:
Last Opposite — latest opposite-color candle before displacement.
Extreme Opposite — most extreme (lowest low / highest high) candle in the walk-back window.
Strict Volume — Last Opposite filtered by volume above MA.
Displacement (the move that creates the zone) requires a body of displacement ATR multiple × ATR (default 1.20×). A configurable walk-back window controls how far back to search for the OB origin. Configurable mitigation rule (Wick = any pierce, Close = bar must close beyond).
The headline math — three-factor superposition probability
The collapse probabilities P_S / P_R are computed as a weighted blend of three orthogonal factors:
Distance factor — distance from current price to the zone, decayed exponentially with a configurable half-life in ATR units (default 2.0 ATR). Closer zones have higher commit probability.
Direction factor — which side of the zone current price is on. Above the zone leans the read toward Support collapse; below leans toward Resistance.
Flow factor — EMA-slope alignment over a configurable flow window (default 20 bars). Bullish flow biases toward Support; bearish flow biases toward Resistance.
Each factor's weight is independently tunable. Defaults (0.45 distance / 0.30 direction / 0.25 flow) are the script's institutional calibration. The output is two probabilities that sum to 1.
A zone with P_S ≈ P_R ≈ 0.5 is in pure superposition — the model is genuinely undecided. A zone with P_S = 0.85 / P_R = 0.15 is in a state nearly committed to Support; the wavefunction has already partly collapsed.
Wavefunction collapse — the engine's headline event
When price enters the zone within a configurable touch tolerance (default 0.05 × ATR slack) and holds inside for the configurable holdBars window (default 3 bars), the zone collapses to a single classical state:
Collapse to S — price bounced; the zone acted as Support. Marker prints "(+)→S" at the centroid.
Collapse to R — price was rejected from the other side; the zone acted as Resistance. Marker prints "(+)→R".
A configurable connector line is drawn at the committed level. Collapsed zones are optionally archived (default ON) so the chart shows the full history of how superpositions resolved.
Visual system — superposition rendering
Vertical gradient fill — each zone is rendered as a stack of N sub-boxes (configurable, default 8 slices) with progressive transparency, creating a vertical gradient that visually communicates "high probability of support at the bottom of the zone, high probability of resistance at the top". This is the script's signature visual.
Glow border — configurable glow intensity; becomes thicker when uncertainty is high (P_S ≈ P_R).
Animated superposition pulse — for zones in pure superposition (P ≈ 0.5), transparency oscillates with bar_index to indicate undecided state. Configurable period and amplitude.
Probability labels — P_S / P_R values printed on each active zone.
Zone type tags — FVG_BU, FVG_BE, OB_BU, OB_BE so origin is unambiguous.
Collapse markers — fancy glyphs (+)→S / (+)→R or plain S / R, configurable.
Show-only-superposition mode — hide collapsed and archived zones for a minimalist view.
Right extension — zones project a configurable number of bars to the right.
A locked institutional palette (cyan-teal bull / magenta bear) gives the chart a distinctive quantum-finance identity.
Dashboard
Monospaced table positionable to any of nine corners. Surfaces:
Active superposition zone count and archived count.
Nearest zone with its P_S / P_R values and distance.
Last collapse direction with bars-ago.
Current flow direction.
Detection thresholds and weights in use.
Mitigation rule.
Alerts
Multiple alert conditions:
New Superposition Zone Created (FVG or OB)
Collapse to Support
Collapse to Resistance
Approaching Zone (within collapse-touch tolerance)
High-Uncertainty Zone formed (P_S ≈ P_R ≈ 0.5)
How to read it
Three reads, in order of conviction:
Collapse alert with extreme one-sided probability — e.g. a zone with P_S = 0.85 collapses to S. The model was confidently pointing at one outcome, and the market confirmed it. The highest-conviction confluence read the script produces.
Approaching a zone with sharp probability bias — when P_S or P_R is dominant before touch, the model is committed to one direction. Position toward the dominant side; if the collapse confirms, you are in early.
High-uncertainty zone (P ≈ 0.5) — stand-aside signal. The model is genuinely undecided; trade only with strong external confluence (HTF structure, news flow) or skip the zone entirely.
Suggested settings
Defaults (FVG ATR 0.30×, displacement 1.20×, OB Last-Opposite, 15-bar walk-back, weights 0.45 / 0.30 / 0.25, half-life 2.0 ATR, 3-bar hold) are tuned for 15m–4H on liquid markets. For lower timeframes drop displacement to 1.0× and hold to 2. For HTF raise FVG ATR to 0.50× to keep only large gaps. The weights are calibrated together — change one and the others rebalance the probabilities; experimenting with the weights is a legitimate way to specialise the script to your instrument.
Originality
The implementation — the dual-source zone detector (FVG + OB) with three OB methods, the three-factor probability blend (distance / direction / flow) with independent weights, the exponential ATR-halflife distance decay, the touch-with-hold collapse-confirmation state machine, the vertical-gradient zone render using N stacked sub-boxes, the uncertainty-modulated glow border, the animated superposition pulse for high-uncertainty zones, the archive-on-collapse logic, and the dashboard's probability-aware layout — is JOAT-original. No third-party code reused. The Schrödinger framing (superposition → collapse) is the original conceptual contribution; the math is purpose-built.
Limitations
The "probability" output is a heuristic blend of three factors that historically correlate with which side a zone acts as — it is a ranked confidence, not a true Bayesian posterior. The factor weights are exposed precisely because no single weighting is universally correct. The collapse confirmation requires the holdBars window to elapse, so collapse markers lag the actual touch by that window (intentional — single-bar pierces should not commit a zone). The animated pulse for high-uncertainty zones is purely visual.
-made with passion by jackofalltrades
Indicator

Indicator

Intraday Trading Helper Tools**Intraday Trading Helper Tools**
A multi-feature intraday analysis indicator combining Fair Value Gaps, session visualization, key price levels and daily gap detection into a single lightweight script.
---
**Fair Value Gaps (FVG)**
Detects and draws bullish and bearish FVGs on the current timeframe. Only the closest N gaps above and below price are shown — filled gaps are removed instantly with fill % tracked live.
- Per-timeframe on/off toggle (1m → 1M) — disabled TFs skip all calculation, not just drawing
- HTF Layers: overlay FVGs from up to 5 higher timeframes (1H, 4H, 1D, 1W, 1M), each showing the single closest gap above and below price
- All layers independently toggleable with custom colors
**Trading Sessions**
Colored background boxes for Sydney, Tokyo, Frankfurt, London and New York with automatic DST adjustment.
- Configurable history in days (separately for 1H and minute TFs)
- Option to merge Sydney + Tokyo into a single Asia box
- Zero calculation cost when sessions are disabled
**Daily Opening Gap**
Real gap detection — fires only when today's open differs from the previous day's close. Visible on all timeframes. Box is deleted automatically the moment price fills the zone. Works correctly on 24/7 markets (crypto) and traditional markets.
**Key Levels**
- *PDH / PDL* — Previous Day High and Low
- *PWH / PWL* — Previous Week High and Low
- *PMH / PML* — Previous Month High and Low
- *DO* — Current Day Open (resets each day)
- *MO* — Current Month Open (resets each month)
All levels independently toggleable with custom colors and labels.
**Extremum Points**
Confirmed swing highs and lows marked with triangle shapes. Configurable pivot strength. Per-timeframe visibility control. Indicator

Fibonacci Imbalance Zones [JOAT]Fibonacci Imbalance Zones
Introduction
Fibonacci Imbalance Zones is an open-source overlay indicator that merges automatic Fibonacci retracement with Fair Value Gap (FVG) detection and order block identification to find high-probability confluence zones where institutional concepts overlap. When a Fibonacci level aligns with an unmitigated FVG or an active order block, the indicator highlights that zone as a confluence point and optionally generates entry signals. It bridges the gap between classical Fibonacci analysis and modern Smart Money Concepts.
Built with Pine Script v6, the indicator uses custom types for Fibonacci levels, FVG zones, confluence points, swing points, order blocks, and institutional levels.
Why This Indicator Exists
Fibonacci retracement and FVG analysis are both widely used, but they are almost always applied as separate tools. Traders manually eyeball whether a Fibonacci level happens to overlap with an FVG, which is subjective and error-prone. This indicator automates that process by:
Auto-Fibonacci calculation: Automatically identifies the most recent significant swing high and swing low using pivot detection, then draws Fibonacci levels between them — no manual drawing required
FVG lifecycle tracking: Detects bullish and bearish FVGs, filters them by minimum size (ATR-based), tracks mitigation, and classifies them as premium or discount relative to fair value
Confluence detection: Programmatically checks whether any active Fibonacci level falls within a configurable ATR tolerance of any unmitigated FVG or order block, and calculates a confluence strength score
Entry signal generation: When price enters an FVG zone that overlaps with a key Fibonacci level (0.500-0.786 range), the indicator generates a directional entry signal
Core Components Explained
1. Automatic Fibonacci Levels
The indicator uses pivot detection to find the most significant recent swing high and swing low. The pivot strength parameter (default 5) controls how many bars on each side must be lower/higher for a point to qualify as a swing. Once swings are identified, Fibonacci levels are calculated:
calcFibLevel(float swingH, float swingL, float ratio, int direction) =>
float level = na
if direction > 0
level := swingL + (swingH - swingL) * ratio
else
level := swingH - (swingH - swingL) * ratio
level
Standard levels include 0.236, 0.382, 0.500, 0.618, and 0.786, each toggleable independently. Extensions at 1.618 and 2.272 are also available. When harmonic ratios are enabled, additional levels at 0.127, 0.414, 0.707, and 0.886 are drawn, covering the full spectrum of Fibonacci and harmonic trading levels.
Each level is drawn as a dashed line extending from the swing range to the right of the chart, with a label showing the ratio. Harmonic ratios receive a glow effect (thicker line, lower transparency) to visually distinguish them from standard levels.
2. FVG Detection with Premium/Discount Classification
Fair Value Gaps are detected using the standard three-bar pattern: a bullish FVG forms when the current bar's low is above the high from two bars ago. The indicator filters FVGs by a minimum size threshold (default 0.3x ATR) to avoid plotting insignificant gaps.
Each FVG is classified as premium or discount relative to the fair value of the middle candle:
Premium FVG: The gap's midpoint is above fair value — sellers may have an edge
Discount FVG: The gap's midpoint is below fair value — buyers may have an edge
FVGs are drawn as colored boxes. Premium FVGs use a gold color, discount FVGs use cyan, and neutral FVGs use the standard bull/bear colors. When mitigation tracking is enabled, the indicator monitors each FVG and updates its visual style (dotted border, faded color) when price fills the gap's midpoint.
Chart showing auto-drawn Fibonacci levels between swing high and swing low, with FVG boxes classified as premium (gold) and discount (cyan), and confluence diamonds where Fibonacci levels overlap with FVGs
3. Order Block Detection
The indicator identifies order blocks as the last opposing candle before a significant swing point, filtered by volume. A bullish order block is the last bearish candle before a swing high, but only if the volume on that candle exceeds 1.5x the 20-period volume average. This volume filter ensures that only institutionally significant order blocks are tracked.
Order blocks are drawn as semi-transparent boxes and monitored for sweeps. When price breaks through an order block, it is marked as swept and its visual is updated to a neutral, dotted style.
4. Confluence Detection Engine
The confluence engine is the core innovation of this indicator. It iterates through all active Fibonacci levels and checks each one against all unmitigated FVGs and active order blocks:
tolerance = atrVal * confluenceTol
for fib in fibLevels
if fib.isActive
for fvg in fvgZones
if not fvg.isMitigated
if math.abs(fib.price - fvg.mid) < tolerance
confStrength += 1
Each confluence point receives a strength score based on how many factors align:
Fibonacci level + FVG = base confluence
Add +1 if the Fibonacci level is a harmonic ratio (0.382, 0.618, etc.)
Add +1 if the FVG is in the premium or discount zone
Add +1 if the FVG has above-average volume
Add +1 if an order block also overlaps
Confluence points are drawn as labeled boxes showing which factors are present (e.g., "Harmonic+Discount+Volume"). A minimum confluence strength threshold (default 2) filters out weak confluences.
5. Entry Signal Generation
When entry signals are enabled, the indicator generates a bullish entry when price enters a bullish FVG zone that overlaps with a Fibonacci level in the 0.500-0.786 range (the "golden pocket") and the current candle closes bullish. The bearish entry is the inverse. These signals are plotted as circles below (bullish) or above (bearish) the price bars.
Visual Elements
Fibonacci Lines: Dashed lines at each active ratio with labels, harmonic ratios get glow effect
FVG Boxes: Color-coded by direction and premium/discount status, updated on mitigation
Order Block Boxes: Semi-transparent boxes with sweep tracking
Confluence Boxes: Highlighted zones where Fibonacci and FVG/OB overlap, with strength labels
Entry Signals: Circle markers for bullish/bearish entries at confluence zones
Structure Line: Line connecting the swing high and swing low
Background Coloring: Subtle trend-direction background tint
Dashboard: Displays current Fibonacci range, trend direction, active FVG count, confluence count, and entry status
Input Parameters
Fibonacci Settings:
Swing Lookback (default 50) and Pivot Strength (default 5)
Toggle each standard level (0.236, 0.382, 0.500, 0.618, 0.786) and extensions
FVG Detection:
FVG Max Age (default 50 bars)
Track Mitigation toggle
Min FVG Size (default 0.3 ATR)
Confluence Settings:
Confluence Tolerance (default 0.3 ATR)
Show Entry Signals and Confluence Strength
Min Confluence Strength (default 2)
Advanced Fibonacci:
Show Harmonic Ratios (0.127, 0.414, 0.707, 0.886)
Show Institutional Levels (volume-based levels near swings)
Show Smart Money Concepts and Order Blocks
Show Premium/Discount classification
Visual Settings:
Color Scheme: Quantum, Classic, Professional, or Minimal
Show Structure Lines, Dashboard, Glow Effects, Animation
Max Visual Elements (default 30)
How to Use This Indicator
Step 1: Let the indicator automatically identify the current swing range and draw Fibonacci levels. The structure line shows the swing high to swing low connection.
Step 2: Identify the trend direction from the structure line. In an uptrend (swing low formed after swing high), look for bullish setups at discount Fibonacci levels (0.618, 0.786). In a downtrend, look for bearish setups at premium levels.
Step 3: Watch for confluence diamonds. When a Fibonacci level overlaps with an unmitigated FVG, the confluence box appears. Higher strength confluences (3+) are more significant.
Step 4: If entry signals are enabled, wait for price to enter the confluence zone and print a confirming candle (bullish close for longs, bearish close for shorts).
Step 5: Use order blocks within the confluence zone as precise entry levels. The order block's range provides a natural stop-loss area (below the OB for longs, above for shorts).
Close-up of a high-strength confluence zone showing a 0.618 Fibonacci level overlapping with a discount FVG and a bullish order block, with an entry signal circle below the bar
Indicator Limitations
Automatic Fibonacci levels depend on pivot detection, which has an inherent delay. The swing points update only after the pivot is confirmed.
Fibonacci levels are drawn between the two most recent significant swings. In choppy markets with many equal swings, the selected range may not be the most relevant one.
FVG detection uses the standard three-bar pattern, which can produce many gaps on volatile instruments. Use the minimum size filter to manage this.
Confluence detection is proximity-based. A Fibonacci level near an FVG does not guarantee a price reaction — it identifies a zone of potential interest.
Entry signals are mechanical and do not account for broader market context. They should be used as alerts for further analysis, not as standalone trade triggers.
The indicator draws many visual elements. On busy charts, consider using the Max Visual Elements setting and disabling less critical features.
Originality Statement
This indicator is original in its automated confluence detection between Fibonacci analysis and Smart Money Concepts. While Fibonacci tools and FVG indicators exist separately, this indicator is justified because:
It programmatically detects overlap between Fibonacci levels and FVG zones, eliminating subjective visual assessment
The confluence strength scoring system quantifies how many institutional factors align at each zone
Premium/discount FVG classification adds a fair-value context layer to standard FVG detection
Volume-filtered order block detection integrated with Fibonacci levels creates a three-way confluence system
Harmonic ratio support extends beyond standard Fibonacci to cover the full spectrum of institutional trading levels
The entry signal system combines Fibonacci position, FVG presence, and candle confirmation into a structured trigger
Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice or a recommendation to buy or sell any financial instrument. Trading involves substantial risk of loss. Fibonacci levels and FVG analysis are interpretive tools, not predictive guarantees. Always use proper risk management. The author is not responsible for any losses incurred from using this indicator.
-Made with passion by officialjackofalltrades
Indicator

Indicator

FVG MagicFVG Magic — Fair Value Gaps with Smart Mitigation, Inversion & Auto-Clean-up
FVG Magic finds every tradable Fair Value Gap (FVG), shows who powered it, and then manages each gap intelligently as price interacts with it—so your chart stays actionable and clean.
Attribution
This tool is inspired by the idea popularized in “Volumatic Fair Value Gaps ” by BigBeluga (licensed CC BY-NC-SA 4.0). Credit to BigBeluga for advancing FVG visualization in the community.
Important: This is a from-scratch implementation—no code was copied from the original. I expanded the concept substantially with a different detection stack, a gap state machine (ACTIVE → 50% SQ → MITIGATED → INVERSED), auto-clean up rules, lookback/nearest-per-side pruning, zoom-proof volume meters, and timeframe auto-tuning for 15m/H1/H4.
What makes this version more accurate
Full-coverage detection (no “missed” gaps)
Default ICT-minimal rule (Bullish: low > high , Bearish: high < low ) catches all valid 3-candle FVGs.
Optional Strict filter (stricter structure checks) for traders who prefer only “clean” gaps.
Optional size percentile filter—off by default so nothing is hidden unless you choose to filter.
Correct handling of confirmations (wick vs close)
Mitigation Source is user-selectable: high/low (wick-based) or close (strict).
This avoids false “misses” when you expect wick confirmations (50% or full fill) but your logic required closes.
State-aware labelling to prevent misleading data
The Bull%/Bear% meter is shown only while a gap is ACTIVE.
As soon as a gap is 50% SQ, MITIGATED, or INVERSED, the meter is hidden and replaced with a clear tag—so you never read stale participation stats.
Robust zoom behaviour
The meter uses a fixed bar-width (not pixels), so it stays proportional and readable at any zoom level.
Deterministic lifecycle (no stale boxes)
Remove on 50% SQ (instant or delayed).
Inversion window after first entry: if price enters but doesn’t invert within N bars, the box auto-removes once fully filled.
Inversion clean up: after a confirmed flip, keep for N bars (context) then delete (or 0 = immediate).
Result: charts auto-maintain themselves and never “lie” about relevance.
Clarity near current price
Nearest-per-side (keep N closest bullish & bearish gaps by distance to the midpoint) focuses attention where it matters without altering detection accuracy.
Lookback (bars) ensures reproducible behaviour across accounts with different data history.
Timeframe-aware defaults
Sensible auto-tuning for 15m / H1 / H4 (right-extension length, meter width, inversion windows, clean up bars) to reduce setup friction and improve consistency.
What it does (under the hood)
Detects FVGs using ICT-minimal (default) or a stricter rule.
Samples volume from a 10× lower timeframe to split participation into Bull % / Bear % (sum = 100%).
Manages each gap through a state machine:
ACTIVE → 50% SQ (midline) → MITIGATED (full) → INVERSED (SR flip after fill).
Auto-clean up keeps only relevant levels, per your rules.
Dashboard (top-right) displays counts by side and the active state tags.
How to use it
First run (show everything)
Use Strict FVG Filter: OFF
Enable Size Filter (percentile): OFF
Mitigation Source: high/low (wick-based) or close (stricter), as you prefer.
Remove on 50% SQ: ON, Delay: 0
Read the context
While ACTIVE, use the Bull%/Bear% meter to gauge demand/supply behind the impulse that created the gap.
Confluence with your HTF structure, sessions, VWAP, OB/FVG, RSI/MACD, etc.
Trade interactions
50% SQ: often the highest-quality interaction; if removal is ON, the box clears = “job done.”
Full mitigation then rejection through the other side → tag changes to INVERSED (acts like SR). Keep for N bars, then auto-remove.
Keep the chart tidy (optional)
If too busy, enable Size Filter or set Nearest per side to 2–4.
Use Lookback (bars) to make behaviour consistent across symbols and histories.
Inputs (key ones)
Use Strict FVG Filter: OFF(default)/ON
Enable Size Filter (percentile): OFF(default)/ON + threshold
Mitigation Source: high/low or close
Remove on 50% SQ + Delay
Inversion window after entry (bars)
Remove inversed after (bars)
Lookback (bars), Nearest per side (N)
Right Extension Bars, Max FVGs, Meter width (bars)
Colours: Bullish, Bearish, Inversed fill
Suggested defaults (per TF)
15m: Extension 50, Max 12, Inversion window 8, Clean up 8, Meter width 20
H1: Extension 25, Max 10, Inversion window 6, Clean up 6, Meter width 15
H4: Extension 15, Max 8, Inversion window 5, Clean up 5, Meter width 10
Notes & edge cases
If a wick hits 50% or the far edge but state doesn’t change, you’re likely on close mode—switch to high/low for wick-based behaviour.
If a gap disappears, it likely met a clean up condition (50% removal, inversion window, inversion clean up, nearest-per-side, lookback, or max-cap).
Meters are hidden after ACTIVE to avoid stale percentages.
Indicator

Indicator

FVG [TakingProphets]🧠 Purpose
This indicator is built for traders applying Inner Circle Trader (ICT) methodology. It detects and manages Fair Value Gaps (FVGs) — price imbalances that often act as future reaction zones. It also highlights New Day Opening Gaps (NDOGs) and New Week Opening Gaps (NWOGs) that frequently play a role in early-session price behavior.
📚 What is a Fair Value Gap?
A Fair Value Gap forms when price moves rapidly, skipping over a portion of the chart between three candles — typically between the high of the first candle and the low of the third. These zones are considered inefficient, meaning institutions may return to them later to:
-Rebalance unfilled orders
-Enter or scale into positions
-Engineer liquidity with minimal slippage
In ICT methodology, FVGs are seen as both entry zones and targets, depending on market structure and context.
⚙️ How It Works
-This script automatically identifies and manages valid FVGs using the following logic:
-Bullish FVGs: When the low of the current candle is above the high from two candles ago
-Bearish FVGs: When the high of the current candle is below the body of two candles ago
-Minimum Gap Filter: Gaps must be larger than 0.05% of price
-Combine Consecutive Gaps (optional): Merges adjacent gaps of the same type
-Consequent Encroachment Line (optional): Plots the midpoint of each gap
-NDOG/NWOG Tracking: Labels gaps created during the 5–6 PM session transition
-Automatic Invalidation: Gaps are removed once price closes beyond their boundary
🎯 Practical Use
-Use unmitigated FVGs as potential entry points or targets
-Monitor NDOG and NWOG for context around daily or weekly opens
-Apply the midpoint (encroachment) line for precise execution decisions
-Let the script handle cleanup — only active, relevant zones remain visible
🎨 Customization
-Control colors for bullish, bearish, and opening gaps
-Toggle FVG borders and midpoint lines
-Enable or disable combining of consecutive gaps
-Fully automated zone management, no manual intervention required
✅ Summary
This tool offers a clear, rules-based approach to identifying price inefficiencies rooted in ICT methodology. Whether used for intraday or swing trading, it helps traders stay focused on valid, active Fair Value Gaps while filtering out noise and maintaining chart clarity. Indicator

FVG | iSolani
Unveiling Market Inefficiencies with Precision
In fast-moving markets, spotting hidden opportunities often hinges on identifying imbalances between price and value. The FVG | iSolani indicator revolutionises this process by detecting Fair Value Gaps (FVGs) —zones where price action skips over "fair" valuation levels, creating potential retracement targets. Combining advanced filtering, dynamic visualisation, and automated management, this tool empowers traders to pinpoint high-probability setups with unprecedented clarity.
Core Methodology
The indicator employs a multi-layered approach to identify FVGs:
Three-Bar Gap Analysis: Bullish FVGs form when the current low exceeds the high of two bars prior, while bearish FVGs occur when the current high stays below the low of two bars back.
Volatility-Adjusted Filtering: Gaps are measured against a 100-bar standard deviation to exclude insignificant price jumps.
Volume Confirmation: Only gaps accompanied by above-average volume (relative to a 1-bar SMA) are validated, filtering out low-conviction moves.
Auto-Invalidation System: Continuously monitors price action to remove FVG zones once price closes within their range, maintaining chart cleanliness.
Breaking New Ground
This tool introduces three paradigm-shifting innovations:
Volume-Weighted Significance: Unlike traditional FVG detectors, it ties gap validity to volume spikes, emphasising institutional activity.
Adaptive Zone Management: Boxes automatically extend rightward (when enabled) and self-destruct when invalidated, eliminating manual cleanup.
Smart Color Encoding: Offers both monochrome (for multi-timeframe analysis) and standard bull/bear color schemes, with customisable transparency.
Engine Under the Hood
The script operates through four key processes:
Gap Detection: Scans every new bar for three-candle patterns meeting FVG criteria.
Statistical Filtering: Applies user-defined threshold (default: 1σ) to separate meaningful gaps from market noise.
Box Rendering: Draws semi-transparent zones between gap boundaries using PulseWire's box objects, styled according to user preferences.
Array-Based Memory: Stores all active FVGs in arrays, enabling real-time validation checks against current price action.
Standard Configuration
Optimised default settings balance visibility and functionality:
Filter: 1.0 (1 standard deviation threshold)
Colors: "Mono" mode (gray boxes) with 90% transparency
Text Labels: Enabled in medium gray
Extension: Gaps extend indefinitely rightward
Borders: Dotted lines with visible outlines
Through its fusion of quantitative rigor and visual adaptability, the FVG | iSolani transforms raw price data into actionable intelligence. By focusing on volume-confirmed gaps and automating zone management, it cuts through market chaos to reveal structurally significant levels—a must-have for traders navigating breakouts, reversals, or order-flow analysis. Indicator

2:30 [LuciTech]this is a technical analysis tool designed to highlight key price levels and patterns during a specific trading window, based on UK time (Europe/London). It overlays visual elements on the chart, including a 12 PM reference line, Buy Side Liquidity (BSL) and Sell Side Liquidity (SSL) levels, a highlighted 2:30 PM candle, and Engulfing Fair Value Gaps (FVGs). This indicator is intended for traders who focus on intraday price action and liquidity zones.
Features
The 12 PM Line displays a vertical line at 12:00 PM (UK time) to mark the start of the session. It’s customizable, allowing you to enable or disable it and adjust its color.
BSL/SSL Lines track the highest high (BSL) and lowest low (SSL) from 12:00 PM to 2:00 PM (UK time). These lines extend horizontally until 3:30 PM, after which they remain static at their last recorded levels. You can customize them by enabling or disabling visibility, adjusting colors, choosing a line style (solid, dashed, or dotted), and setting the width.
The 2:30 PM Candle highlights the candle at 2:30 PM (UK time) with a distinct color. It’s customizable, with options to enable or disable it and change its color.
Engulfing FVG (Fair Value Gap) identifies bullish and bearish engulfing patterns with a gap from the prior candle’s range. It draws a shaded box over the FVG area, and you can customize it by enabling or disabling it and adjusting the box color.
How It Works
The indicator operates within a session starting at 12:00 PM (UK time). BSL/SSL levels update between 12:00 PM and 2:00 PM, with lines extending until 3:30 PM. After 3:30 PM, these lines freeze.
BSL/SSL lines show the highest price (BSL) and lowest price (SSL) reached during the 12:00 PM to 2:00 PM window. After 3:30 PM, they remain static, marking the final range boundaries.
The 2:30 PM candle emphasizes a key timestamp, often of interest to intraday traders.
Engulfing FVGs detect significant price gaps created by engulfing candles, which may indicate potential reversal or continuation zones.
Settings
12 PM Line Settings let you toggle visibility and set the line color.
BSL/SSL Line Settings allow you to toggle visibility, set BSL and SSL colors, choose a line style (Solid, Dashed, Dotted), and adjust width (1-4).
2:30 Candle Settings let you toggle visibility and set the candle color.
Engulfing FVG Settings allow you to toggle visibility and set the box color.
Interpretation
The 12 PM Line serves as a reference for the session start.
BSL/SSL Lines may act as potential support or resistance zones or highlight liquidity areas. After 3:30 PM, they remain static, showing the session’s final range.
The 2:30 PM Candle can be monitored for price action signals, such as reversals or breakouts.
Engulfing FVGs shaded areas may indicate imbalances in supply and demand, useful for identifying trade opportunities or stop-loss placement.
Notes
The timezone is set to Europe/London (UK time). Ensure your chart’s timezone aligns for accurate results.
This indicator is best used on intraday timeframes, such as 1-minute or 5-minute charts.
It provides visual aids for analysis and does not generate buy or sell signals on its own. Indicator

Son Model ICT [TradingFinder] HTF DOL H1 + Sweep M15 + FVG M1🔵 Introduction
The ICT Son Model setup is a precise trading strategy based on market structure and liquidity, implemented across multiple timeframes. This setup first identifies a liquidity level in the 1-hour (1H) timeframe and then confirms a Market Structure Shift (MSS) in the 5-minute (5M) timeframe to validate the trend. After confirmation, the price forms a new swing in the 5-minute timeframe, absorbing liquidity.
Once this level is broken, traders typically drop to the 30-second (30s) timeframe and enter trades based on a Fair Value Gap (FVG). However, since access to the 30-second timeframe is not available to most traders, we take the entry signal directly from the 5-minute timeframe, using the same liquidity zones and confirmed breakouts to execute trades. This approach simplifies execution and makes the strategy accessible to all traders.
This model operates in two setups :
Bullish ICT Son Model and Bearish ICT Son Model. In the bullish setup, liquidity is first accumulated at the lows of the 1-hour timeframe, and after confirming a market structure shift, a long position is initiated. Conversely, in the bearish setup, liquidity is first drawn from higher levels, and upon confirmation of a bearish trend, a short position is executed.
Bullish Setup :
Bearish Setup :
🔵 How to Use
The ICT Son Model setup is designed around liquidity analysis and market structure shifts and can be applied in both bullish and bearish market conditions. The strategy first identifies a liquidity level in the 1-hour (1H) timeframe and then confirms a Market Structure Shift (MSS) in the 5-minute (5M) timeframe.
After this shift, the price forms a new swing, absorbing liquidity. When this level is broken in the 5-minute timeframe, the trader enters based on a Fair Value Gap (FVG). While the ideal entry is in the 30-second (30s) timeframe, due to accessibility constraints, we take entry signals directly from the 5-minute timeframe.
🟣 Bullish Setup
In the Bullish ICT Son Model, the 1-hour timeframe first identifies liquidity at the market lows, where price sweeps this level to absorb liquidity. Then, in the 5-minute timeframe, an MSS confirms the bullish shift.
After confirmation, the price forms a new swing, absorbing liquidity at a higher level. The price then retraces into a Fair Value Gap (FVG) created in the 5-minute timeframe, where the trader enters a long position, placing the stop-loss below the FVG.
🟣 Bearish Setup
In the Bearish ICT Son Model, liquidity at higher market levels is identified in the 1-hour timeframe, where price sweeps these levels to absorb liquidity. Then, in the 5-minute timeframe, an MSS confirms the bearish trend.
After confirmation, the price forms a new swing, absorbing liquidity at a lower level. The price then retraces into a Fair Value Gap (FVG) created in the 5-minute timeframe, where the trader enters a short position, placing the stop-loss above the FVG.
🔵 Settings
Swing period : You can set the swing detection period.
Max Swing Back Method : It is in two modes "All" and "Custom". If it is in "All" mode, it will check all swings, and if it is in "Custom" mode, it will check the swings to the extent you determine.
Max Swing Back : You can set the number of swings that will go back for checking.
FVG Length : Default is 120 Bar.
MSS Length : Default is 80 Bar.
FVG Filter : This refines the number of identified FVG areas based on a specified algorithm to focus on higher quality signals and reduce noise.
Types of FVG filters :
Very Aggressive Filter: Adds a condition where, for an upward FVG, the last candle's highest price must exceed the middle candle's highest price, and for a downward FVG, the last candle's lowest price must be lower than the middle candle's lowest price. This minimally filters out FVGs.
Aggressive Filter: Builds on the Very Aggressive mode by ensuring the middle candle is not too small, filtering out more FVGs.
Defensive Filter: Adds criteria regarding the size and structure of the middle candle, requiring it to have a substantial body and specific polarity conditions, filtering out a significant number of FVGs.
Very Defensive Filter: Further refines filtering by ensuring the first and third candles are not small-bodied doji candles, retaining only the highest quality signals.
🔵 Conclusion
The ICT Son Model setup is a structured and precise method for trade execution based on liquidity analysis and market structure shifts. This strategy first identifies a liquidity level in the 1-hour timeframe and then confirms a trend shift using the 5-minute timeframe.
Trade entries are executed based on Fair Value Gaps (FVGs), which highlight optimal entry points. By applying this model, traders can leverage existing market liquidity to enter high-probability trades. The bullish setup activates when liquidity is swept from market lows and a market structure shift confirms an upward trend, whereas the bearish setup is used when liquidity is drawn from market highs, confirming a downtrend.
This approach enables traders to identify high-probability trade setups with greater precision compared to many other strategies. Additionally, since access to the 30-second timeframe is limited, the strategy remains fully functional in the 5-minute timeframe, making it more practical and accessible for a wider range of traders.
Indicator

One Trading Setup for Life ICT [TradingFinder] Sweep Session FVG🔵 Introduction
ICT One Trading Setup for Life is a trading strategy based on liquidity and market structure shifts, utilizing the PM Session Sweep to determine price direction. In this strategy, the market first forms a price range during the PM Session (from 13:30 to 16:00 EST), which includes the highest high (PM Session High) and lowest low (PM Session Low).
In the next session, the price first touches one of these levels to trigger a Liquidity Hunt before confirming its trend by breaking the Change in State of Delivery (CISD) Level. After this confirmation, the price retraces toward a Fair Value Gap (FVG) or Order Block (OB), which serve as the best entry points in alignment with liquidity.
In financial markets, liquidity is the primary driver of price movement, and major market participants such as institutional investors and banks are constantly seeking liquidity at key levels. This process, known as Liquidity Hunt or Liquidity Sweep, occurs when the price reaches an area with a high concentration of orders, absorbs liquidity, and then reverses direction.
In this setup, the PM Session range acts as a trading framework, where its highs and lows function as key liquidity zones that influence the next session’s price movement. After the New York market opens at 9:30 EST, the price initially breaks one of these levels to capture liquidity.
However, for a trend shift to be confirmed, the CISD Level must be broken.
Once the CISD Level is breached, the price retraces toward an FVG or OB, which serve as optimal trade entry points.
Bullish Setup :
Bearish Setup :
🔵 How to Use
In this strategy, the PM Session range is first identified, which includes the highest high (PM Session High) and lowest low (PM Session Low) between 13:30 and 16:00 EST. In the following session, the price touches one of these levels for a Liquidity Hunt, followed by a break of the Change in State of Delivery (CISD) Level. The price then retraces toward a Fair Value Gap (FVG) or Order Block (OB), creating a trading opportunity.
This process can occur in two scenarios : bearish and bullish setups.
🟣 Bullish Setup
In a bullish scenario, the PM Session High and PM Session Low are identified. In the following session, the price first breaks the PM Session Low, absorbing liquidity. This process results in a Fake Breakout to the downside, misleading retail traders into taking short positions.
After the Liquidity Hunt, the CISD Level is broken, confirming a trend reversal. The price then retraces toward an FVG or OB, offering an optimal long entry opportunity.
The initial take-profit target is the PM Session High, but if higher timeframe liquidity levels exist, extended targets can be set.
The stop-loss should be placed below the Fake Breakout low or the first candle of the FVG.
🟣 Bearish Setup
In a bearish scenario, the market first defines its PM Session High and PM Session Low. In the next session, the price initially breaks the PM Session High, triggering a Liquidity Hunt. This movement often causes a Fake Breakout, misleading retail traders into taking incorrect positions.
After absorbing liquidity, the CISD Level breaks, indicating a shift in market structure. The price then retraces toward an FVG or OB, offering the best short entry opportunity.
The initial take-profit target is the PM Session Low, but if additional liquidity exists on higher timeframes, lower targets can be considered.
The stop-loss should be placed above the Fake Breakout high or the first candle of the FVG.
🔵 Setting
CISD Bar Back Check : The Bar Back Check option enables traders to specify the number of past candles checked for identifying the CISD Level, enhancing CISD Level accuracy on the chart.
Order Block Validity : The number of candles that determine the validity of an Order Block.
FVG Validity : The duration for which a Fair Value Gap remains valid.
CISD Level Validity : The duration for which a CISD Level remains valid after being broken.
New York PM Session : Defines the PM Session range from 13:30 to 16:00 EST.
New York AM Session : Defines the AM Session range from 9:30 to 16:00 EST.
Refine Order Block : Enables finer adjustments to Order Block levels for more accurate price responses.
Mitigation Level OB : Allows users to set specific reaction points within an Order Block, including: Proximal: Closest level to the current price. 50% OB: Midpoint of the Order Block. Distal: Farthest level from the current price.
FVG Filter : The Judas Swing indicator includes a filter for Fair Value Gap (FVG), allowing different filtering based on FVG width: FVG Filter Type: Can be set to "Very Aggressive," "Aggressive," "Defensive," or "Very Defensive." Higher defensiveness narrows the FVG width, focusing on narrower gaps.
Mitigation Level FVG : Like the Order Block, you can set price reaction levels for FVG with options such as Proximal, 50% OB, and Distal.
Demand Order Block : Enables or disables bullish Order Block.
Supply Order Block : Enables or disables bearish Order Blocks.
Demand FVG : Enables or disables bullish FVG.
Supply FVG : Enables or disables bearish FVGs.
Show All CISD : Enables or disables the display of all CISD Levels.
Show High CISD : Enables or disables high CISD levels.
Show Low CISD : Enables or disables low CISD levels.
🔵 Conclusion
The ICT One Trading Setup for Life is a liquidity-based strategy that leverages market structure shifts and precise entry points to identify high-probability trade opportunities. By focusing on PM Session High and PM Session Low, this setup first captures liquidity at these levels and then confirms trend shifts with a break of the Change in State of Delivery (CISD) Level.
Entering a trade after a retracement to an FVG or OB allows traders to position themselves at optimal liquidity levels, ensuring high reward-to-risk trades. When used in conjunction with higher timeframe bias, order flow, and liquidity analysis, this strategy can become one of the most effective trading methods within the ICT Concept framework.
Successful execution of this setup requires risk management, patience, and a deep understanding of liquidity dynamics. Traders can enhance their confidence in this strategy by conducting extensive backtesting and analyzing past market data to optimize their approach for different assets.
Indicator

ICT HTF FVGs v2 (fadi)NOTICE: Instead of updating the existing ICT HTF FVGs indicator, this indicator is being published separately due to the requests to keep the original by some traders and because of the drastic change in behavior/configurations. If the original v1 version is more appropriate for your style of trading, feel free to continue to use it.
ICT HTF FVGs v2
In trading, Fair Value Gaps (FVGs) refer to market inefficiencies or imbalances that occur when buying and selling activities are not equal. These gaps can be identified on various timeframes and are used in different trading strategies.
FVGs are crucial in price action trading as they highlight the difference between the current market price of an asset and its fair value. Traders use these gaps to identify potential trading opportunities, as they often indicate areas where the market may correct itself
This indicator will overlap the higher timeframe (HTF) FVGS over the current timeframe to help traders anticipate and plan their trades.
Features
Up to 6 higher timeframes (HTF) can be overlayed on a chart
Traders can limit the number of HTF FVGs to preset number of HTFs
Lower and current timeframes can be included
Configurable spacing of HTF FVGs to prevent overlapping
Configurable Smart Expansion of FVGs based on proximity to current price
Traders can decide what constitutes a Mitigated FVG
Show or hide mitigated FVGs to declutter the chart
Flexible display settings that controls how the FVGs are displayed
Flexible labeling of the FVG levels and content
Higher Timeframes Display Settings
This indicator provides the ability to select up to 6 HTF intervals. These intervals are based on the trader's timeframes including any custom timeframes.
Timeframe Configurations
Enable or Disable a Timeframe
The Timeframe to Display
Bullish / BISI FVG Color
Bearish / SIBI FVG Color
The number of FVGs For The Selected Timeframe
Limit to the next HTFs only can be used to display the selected number of HTF FVGs. For example, if the trader selects 3 then only 3 HTF FVGs will be displayed.
Note: If either of the next two options is selected, they will take up spots from this count.
Hide lower Timeframes restricts the FVGs to higher timeframes only. If this option is disabled, it will show lower timeframes FVGs as well.
Hide Current Timeframe removes current timeframe from the selected list of HTF FVGs. If this option is disabled, it will show current timeframe FVGs as well.
Background Transparency Enable or disable the background color (shaded area) of the FVG. If it is enabled, it will set the transparency amount. The higher the value, the more transparent the background.
Extend lines controls when and how to extend the FVG levels. There are three options:
Extension Only extends the FVGs by the specified number provided below only.
Current Candle Plus Extension extends all the FVGs beyond the current candle by the number provided below.
When in Range will only extend the FVGs near current price based on the advanced settings below. This setting will use Average True Range multiplier to calculate the range (shows FVGs that are higher or lower by the average candle size multiplied by the number in Advanced section).
Mitigated shows or hides the mitigated HTF FVGs. A FVG is considered mitigated based on one of the following options:
None will ignore mitigation and show all FVGs.
Touched when a HTF FVG is touched regardless of how deep the price get inside the FVG.
Wick filled the FVG is closed by a wick or body of a candle.
Body filled the FVG is closed by the body of a candle
Wick filled half a candle's wick or body has reached the C.E. of the FVG
Body filled half a candle body has reached the C.E. of the FVG
Extend mitigated lines sets the number of candles to extend the mitigated FVG levels by for better visibility.
Important Note: Mitigation is calculated based on the timeframe of the FVG, not current timeframe.
Display
Display settings focus on how the FVGs will be displayed. The trader is in total control and there are multiple ways to overlay FVGs on the chart.
Open / Close / C.E. / Link controls the borders. Traders can enable or disable any of them as well as set the thickness and style. Link is the right border.
C.E. also offers the option of setting the bullish (BISI) and bearish (SIBI) colors of the C.E. level
Labeling controls if the labels should be displayed next to the FVG, their color, background, and font size.
Label levels to display controls which levels to show. Open, High. or the C.E.
Label display content controls what to show in the labels, the timeframe of the label, is it a BISI or a SIBI, and a label to indicate if it is the Open or the Close.
Note: if the distance between the open and close has the potential of overlapping the labels, then the indicator will only show the C.E. label for visual clarity.
Advanced Settings
Advanced settings controls some internal calculations:
Proximity factor based on daily range used to calculate possible range of FVGs within a day's range to keep the chart clean. The higher the value, the more FVGs will be shown.
Combine labels factor for visibility used to calculate the distance between the open and close and if all the labels or only the C.E. should be displayed. The higher the value, the bigger the distance for combination (smaller numbers will show more labels).
Range should be within X candles used when "When in Range" option is selected. This is the ATR multiplier used to extend the FVGs. The higher the number, the more FVGs will be extended.
Once desired settings have been achieved, the settings can be saved as default from the bottom left of the indicator settings page for future use.
Indicator

Double FVG-BPR [QuantVue]The Double FVG BPR Indicator is a versatile tool that helps traders identify potential support and resistance levels through the concept of balanced price ranges.
A Balanced Price Range (BPR) is a zone on a price chart where the market has found equilibrium after a period of price imbalance.
It is identified by detecting a Fair Value Gap (FVG) in one direction, followed by an overlapping Fair Value Gap in the opposite direction.
Components of a Balanced Price Range
Fair Value Gap (FVG): A FVG occurs when there is a rapid price movement, creating a gap in the price chart where minimal trading occurs. This gap represents an imbalance between supply and demand.
Bullish FVG: A bullish FVG is identified when the low of a candle is higher than the high of a candle two periods ago, and the close of the previous candle is higher than the high of that same period.
Bearish FVG: A bearish FVG is identified when the high of a candle is lower than the low of a candle two periods ago, and the close of the previous candle is lower than the low of that same period.
Overlapping Fair Value Gap: For a BPR to be formed, an initial FVG must be followed by an overlapping FVG in the opposite direction. This creates a balanced zone where the price has moved up (or down) quickly and then moved down (or up) with similar intensity, suggesting a temporary equilibrium.
The area between the high and low points of these overlapping FVGs forms the BPR. This zone represents a temporary market equilibrium where supply and demand have balanced out after a period of significant price movement in both directions.
How to Use
Support and Resistance Levels: The upper and lower boundaries of the BPR act as dynamic support and resistance levels. Traders can use these levels to place buy and sell orders, anticipating that the price may find support or face resistance within these zones.
Trend Reversal and Continuation: The BPR can signal potential trend reversals or continuations.
If the price moves back into the BPR after a breakout, it may indicate a reversal. Conversely, if the price breaks out of the BPR with strong momentum, it may signal a trend continuation.
Indicator

Indicator

ICT Setup 01 [TradingFinder] FVG + Liquidity Sweeps/Hunt Alerts🔵 Introduction
The ICT (Inner Circle Trader) style of trading involves analyzing the behavior of market participants and market makers to identify areas where fake buy and sell activities occur. This trading style helps retail traders align with market maker behavior and avoid falling into market traps.
A key aspect of the ICT strategy is focusing on liquidity hunts. This involves searching for trading opportunities in areas of the market with low liquidity or where other traders have little activity. The ICT method leverages market inefficiencies and weaknesses, allowing traders to profit from small price movements that might go unnoticed by others.
In "ICT Setup 01," our focus is on these liquidity areas and stop hunts that form in Fair Value Gaps (FVGs). Trading within FVGs, combined with confirmations from "Hunts" and "Sweeps," can enhance trader performance.
🔵 How to Use
The presence of Fair Value Gaps (FVGs) in the market indicates rapid, powerful movements likely caused by the influx of smart money. When the price returns to these levels, a market reaction is expected.
Combining this with the complex and deceptive behavior of smart money—such as "Liquidity Sweeps" and "Stop Hunts"—forms an ICT-based price action setup that we expect to perform well.
Components of "ICT Setup 01" :
● Fair Value Gap (FVG)
● Premium and Discount
● Hunts / Sweeps
Whenever the price returns to an FVG area and reacts in such a way that only the wicks of the candles remain in the area and the candle bodies are outside the FVG, the first condition for creating the setup is met.
If subsequent candles hunt the wick that has penetrated the deepest into the FVG, a buy or sell signal is issued. In the format where hunting is based on Sweeps, penetrations that extend even outside the area are considered signals, provided they do not form a body within the area.
Additionally, a refining system exists for cases where a candle body forms in the area, optimizing the proximal levels of the FVG.
Bullish Setup :
Bearish Setup :
🔵 Features and Settings of "ICT Setup 01"
You can Find out more in Setting :
● FVG Detector Multiplier Factor
● FVG Validity Period
● Level in Low-Risk Zone
● Issuing Signals Method
● Number of Signals Allowed from a Zone
● Signal after Hunts/Sweeps
● How Many Hunts/Sweeps
● Show or Hide
● Alert Sender
FVG Detector Multiplier Factor :
This feature allows you to determine the size of the moves forming the FVGs based on the ATR (Average True Range). The default value is 1 to identify the majority of setups. You can increase this value according to the symbol and market you are trading in to achieve better results.
FVG Validity Period :
This shows the validity period of an FVG based on the number of candles. By default, an FVG area is valid for up to 15 candles. However, you can increase or decrease this period.
Level in Low-Risk Zone :
This feature helps reduce your risk. The method works by identifying the entire length of the three candles forming the FVG and dividing it into two equal areas. The upper area is "Premium," and the lower area is "Discount." To reduce risk, it is better for "Demand FVG" to be in the "Discount" and "Supply FVG" in the "Premium." This feature is off by default.
Issuing Signals Method :
This feature allows you to specify whether the hunt should occur only within the FVG area or if the wicks can extend outside the area.
If set to "Hunts," only signals where the wicks are within the area are issued, and the area loses its validity if the wicks extend outside.
In "Sweeps" mode, wicks can extend outside the area as long as they do not form a body within the area.
Number of Signals Allowed from a Zone :
This feature allows you to specify how many valid signals can be issued from one area.
Signal after Hunts/Sweeps :
In markets or symbols with a tendency for frequent stop hunts, this feature allows you to specify how many hunts should occur before you receive a signal to avoid receiving potentially failed signals.
How Many Hunts/Sweeps :
Enter the number of hunts you want to set for the "Signal after Hunts/Sweeps" feature here.
Show or Hide :
The number of setups formed may be very large, and displaying all of them on the chart can be distracting and messy. By default, only the last setup is displayed, but if you want to see all setups, you can turn on the relevant options.
Alert Sender :
You cannot constantly monitor multiple charts to identify trading opportunities. Using the alert sending feature can save time and improve performance.
Alerts Name : Customize the alert name to your preference.
Message Frequency : Determines the frequency of alert messages. Options include 'All' (triggers every time the function is called), 'Once Per Bar' (triggers only on the first call within the bar), and 'Once Per Bar Close' (triggers only on the final script execution of the real-time bar upon closure). The default is 'Once per Bar.'
Show Alert Time by Time Zone : Configure the alert messages to reflect any chosen time zone. For instance, input 'UTC+1' for London time. The default is 'UTC.'
By configuring these settings, traders can effectively utilize ICT setups to improve their trading strategies and outcomes.
Indicator

Fair Value Gaps Mitigation Oscillator [LuxAlgo]The Fair Value Gaps Mitigation Oscillator is an oscillator based on the traditional Fair Value Gaps (FVGs) imbalances. The oscillator displays the current total un-mitigated values for the number of FVGs chosen by the user.
The indicator also displays each New FVG as a bar representing the current ratio of the New FVG in relation to the current un-mitigated total for its direction.
🔶 USAGE
When an FVG forms, it is often interpreted as strong market sentiment in the direction of the gap. For example, an upward FVG during an uptrend is typically seen as a confirmation of the strength and continuation of the trend, as it indicates that buyers are willing to purchase at higher prices without much resistance, suggesting strong demand and positive sentiment.
By analyzing the mitigation (or lack thereof), we can visualize the increase of directional strength in a trend. This is where the proposed oscillator is useful.
🔶 DETAILS
The oscillator's values are expressed as Percentages (%). Each FVG is allocated 100% of the total of its width with a max potential value of 100 and minimum potential value of 0.
Based on the "FVG Lookback" Input, the FVGs are scaled to fit within the range of +1 to -1. Using a higher "FVG Lookback" value will allow you to get indications of longer-term trends.
A higher value of the normalized bullish FVG areas suggest a stronger and cleaner uptrend, while lower values of the bearish the normalized bullish FVG areas suggest a stronger and cleaner downtrend.
+1 or -1 indicates that there is a Full Lookback of FVGs, and each one is fully un-mitigated, and the opposite direction of FVGs is entirely Mitigated.
When the price closes over/under or within an FVG it begins to get mitigated, when this happens the % of mitigation is subtracted from the total.
When a New FVG is formed, a Histogram bar is created representing the ratio of the current FVG's width to the total width off all un-mitigated FVGs.
The entire bar represents 100% of total un-mitigated FVG Width.
The filled area represents the current FVG's width relative to the whole.
A 50% hash mark is also displayed for reference.
🔶 SETTINGS
FVG Lookback - Determines the number of FVGs (Bullish and Bearish Pairs) to keep in memory for analysis.
Indicator

FVG Detector LibraryLibrary "FVG Detector Library"
🔵 Introduction
To save time and improve accuracy in your scripts for identifying Fair Value Gaps (FVGs), you can utilize this library. Apart from detecting and plotting FVGs, one of the most significant advantages of this script is the ability to filter FVGs, which you'll learn more about below. Additionally, the plotting of each FVG continues until either a new FVG occurs or the current FVG is mitigated.
🔵 Definition
Fair Value Gap (FVG) refers to a situation where three consecutive candlesticks do not overlap. Based on this definition, the minimum conditions for detecting a fair gap in the ascending scenario are that the minimum price of the last candlestick should be greater than the maximum price of the third candlestick, and in the descending scenario, the maximum price of the last candlestick should be smaller than the minimum price of the third candlestick.
If the filter is turned off, all FVGs that meet at least the minimum conditions are identified. This mode is simplistic and results in a high number of identified FVGs.
If the filter is turned on, you have four options to filter FVGs :
1. Very Aggressive : In addition to the initial condition, another condition is added. For ascending FVGs, the maximum price of the last candlestick should be greater than the maximum price of the middle candlestick. Similarly, for descending FVGs, the minimum price of the last candlestick should be smaller than the minimum price of the middle candlestick. In this mode, a very small number of FVGs are eliminated.
2. Aggressive : In addition to the conditions of the Very Aggressive mode, in this mode, the size of the middle candlestick should not be small. This mode eliminates more FVGs compared to the Very Aggressive mode.
3. Defensive : In addition to the conditions of the Very Aggressive mode, in this mode, the size of the middle candlestick should be relatively large, and most of it should consist of the body. Also, for identifying ascending FVGs, the second and third candlesticks must be positive, and for identifying descending FVGs, the second and third candlesticks must be negative. In this mode, a significant number of FVGs are eliminated, and the remaining FVGs have a decent quality.
4. Very Defensive : In addition to the conditions of the Defensive mode, the first and third candlesticks should not resemble very small-bodied doji candlesticks. In this mode, the majority of FVGs are filtered out, and the remaining ones are of higher quality.
By default, we recommend using the Defensive mode.
🔵 How to Use
🟣 Parameters
To utilize this library, you need to provide four input parameters to the function.
"FVGFilter" determines whether you wish to apply a filter on FVGs or not. The possible inputs for this parameter are "On" and "Off", provided as strings.
"FVGFilterType" determines the type of filter to be applied to the found FVGs. These filters include four modes: "Very Defensive", "Defensive", "Aggressive", and "Very Aggressive", respectively exhibiting decreasing sensitivity and indicating a higher number of Fair Value Gaps (FVG).
The parameter "ShowDeFVG" is a Boolean value defined as either "true" or "false". If this value is "true", FVGs are shown during the Bullish Trend; however, if it is "false", they are not displayed.
The parameter "ShowSuFVG" is a Boolean value defined as either "true" or "false". If this value is "true", FVGs are displayed during the Bearish Trend; however, if it is "false", they are not displayed.
FVGDetector(FVGFilter, FVGFilterType, ShowDeFVG, ShowSuFVG)
Parameters:
FVGFilter (string)
FVGFilterType (string)
ShowDeFVG (bool)
ShowSuFVG (bool)
🟣 Import Library
You can use the "FVG Detector" library in your script using the following expression:
import TFlab/FVGDetectorLibrary/1 as FVG
🟣 Input Parameters
The descriptions related to the input parameters were provided in the "Parameter" section. In this section, for your convenience, the code related to the inputs is also included, and you can copy and paste it into your script.
PFVGFilter = input.string('On', 'FVG Filter', )
PFVGFilterType = input.string('Defensive', 'FVG Filter Type', )
PShowDeFVG = input.bool(true, ' Show Demand FVG')
PShowSuFVG = input.bool(true, ' Show Supply FVG')
🟣 Call Function
You can copy the following code into your script to call the FVG function. This code is based on the naming conventions provided in the "Input Parameter" section, so if you want to use exactly this code, you should have similar parameter names or have copied the "Input Parameter" values.
FVG.FVGDetector(PFVGFilter, PFVGFilterType, PShowDeFVG, PShowSuFVG)
Library

FVG Detector [TradingFinder] Fair Value Gap-Imbalance-Mitigated🔵 Introduction
When the market makes a strong move in the form of a "Marubozu" or "Spike" candlestick and consecutive candles move without a retracement, the maximum place where a "FVG" or "Fair Value Gap" is created.
🔵 Definition
To describe this precisely, whenever a move occurs where the current candle does not cover the body of the previous and subsequent candles, a fair value gap is created.
Important : The significant point is that, because there is no equilibrium between buyers and sellers in these conditions, and market power is in the hands of buyers or sellers, the market is likely to move towards these areas.
An example of "FVG" in a price increase where we expect buying on the return to it.
An example of "FVG" in a downward trend where the market will move towards it in a downward direction.
🔵 How to Use
🟣 Bearish FVG
In a downward trend, "orange boxes" are drawn, which are the same and can act as "support" zones along the downward path, and we expect the price to continue its downward trend on return.
🟣 Bullish FVG
In an upward trend, "green boxes" are drawn, which are . They act exactly like support in the upward path, and we expect the price to continue its upward trend on return.
🟣 Auxiliary Definitions
Imbalance : As mentioned above, market power is in the hands of one of the two sides, buyers or sellers, and a non-equilibrium zone is created. It may be completed in whole or in part in subsequent price movements.
Mitigated : If the price returns to the "FVG" area and fills it, we call it "Mitigated," and most "pending" or "profit and loss limits" positions are executed. We will not have a specific reaction on the return of the price.
🔵 Settings
Very Aggressive : In addition to the initial condition, another condition is added. For an upward FVG, the maximum price of the last candle should be larger than the middle candle's maximum price. Similarly, for a downward FVG, the minimum price of the last candle should be smaller than the middle candle's minimum price. In this mode, a very small number of FVGs are eliminated.
Aggressive : In addition to the conditions of the Very Aggressive mode, in this mode, the size of the middle candle should not be small. In this mode, a larger number of FVGs are eliminated.
Defensive : In addition to the conditions of the Very Aggressive mode, in this mode, the size of the middle candle should be relatively large, and the majority of it should be made up of the body. Additionally, to identify upward FVGs, the second and third candles must be positive, and to identify downward FVGs, the second and third candles must be negative. In this mode, a large number of FVGs are eliminated, leaving only those with suitable quality.
Very Defensive : In addition to the conditions of the Defensive mode, the first and third candles should not be very small-bodied doji candles. In this mode, the majority of FVGs are filtered out, leaving only the highest quality ones.
🔵 Features
Show Demand FVG : Displays demand-related boxes, which can be "off" and "on."
Show Supply FVG : Displays supply-related boxes along the path, and can be turned "off" and "on."
🔵 Indicator Advantages
In this indicator, I have implemented 4 types of "filters" that allow you to select one based on the trading symbol, timeframe, etc. From "Very Aggressive" to "Very Defensive" mode, it is possible to select.
In most indicators, all FVGs are displayed, and the chart becomes full of lines. But this unique feature allows the trader to manage the drawing of boxes. Indicator

lib_fvgLibrary "lib_fvg"
further expansion of my object oriented library toolkit. This lib detects Fair Value Gaps and returns them as objects.
Drawing them is a separate step so the lib can be used with securities. It also allows for usage of current/close price to detect fill/invalidation of a gap and to adjust the fill level dynamically. FVGs can be detected while forming and extended indefinitely while they're unfilled.
method draw(this)
Namespace types: FVG
Parameters:
this (FVG)
method draw(fvgs)
Namespace types: FVG
Parameters:
fvgs (FVG )
is_fvg(mode, precondition, filter_insignificant, filter_insignificant_atr_factor, live)
Parameters:
mode (int) : switch for detection 1 for bullish FVGs, -1 for bearish FVGs
precondition (bool) : allows for other confluences to block/enable detection
filter_insignificant (bool) : allows to ignore small gaps
filter_insignificant_atr_factor (float) : allows to adjust how small (compared to a 50 period ATR)
live (bool) : allows to detect FVGs while the third bar is forming -> will cause repainting
Returns: a tuple of (bar_index of gap bar, gap top, gap bottom)
create_fvg(mode, idx, top, btm, filled_at_pc, config)
Parameters:
mode (int) : switch for detection 1 for bullish FVGs, -1 for bearish FVGs
idx (int) : the bar_index of the FVG gap bar
top (float) : the top level of the FVG
btm (float) : the bottom level of the FVG
filled_at_pc (float) : the ratio (0-1) that the fill source needs to retrace into the gap to consider it filled/invalidated/ready for removal
config (FVGConfig) : the plot configuration/styles for the FVG
Returns: a new FVG object if there was a new FVG, else na
detect_fvg(mode, filled_at_pc, precondition, filter_insignificant, filter_insignificant_atr_factor, live, config)
Parameters:
mode (int) : switch for detection 1 for bullish FVGs, -1 for bearish FVGs
filled_at_pc (float)
precondition (bool) : allows for other confluences to block/enable detection
filter_insignificant (bool) : allows to ignore small gaps
filter_insignificant_atr_factor (float) : allows to adjust how small (compared to a 50 period ATR)
live (bool) : allows to detect FVGs while the third bar is forming -> will cause repainting
config (FVGConfig)
Returns: a new FVG object if there was a new FVG, else na
method update(this, fill_src)
Namespace types: FVG
Parameters:
this (FVG)
fill_src (float) : allows for usage of different fill source series, e.g. high for bearish FVGs, low vor bullish FVGs or close for both
method update(all, fill_src)
Namespace types: FVG
Parameters:
all (FVG )
fill_src (float)
method remove_filled(unfilled_fvgs)
Namespace types: FVG
Parameters:
unfilled_fvgs (FVG )
method delete(this)
Namespace types: FVG
Parameters:
this (FVG)
method delete_filled_fvgs_buffered(filled_fvgs, max_keep)
Namespace types: FVG
Parameters:
filled_fvgs (FVG )
max_keep (int) : the number of filled, latest FVGs to retain on the chart.
FVGConfig
Fields:
box_args (|robbatt/lib_plot_objects/36;BoxArgs|#OBJ)
line_args (|robbatt/lib_plot_objects/36;LineArgs|#OBJ)
box_show (series__bool)
line_show (series__bool)
keep_filled (series__bool)
extend (series__bool)
FVG
Fields:
config (|FVGConfig|#OBJ)
startbar (series__integer)
mode (series__integer)
top (series__float)
btm (series__float)
center (series__float)
size (series__float)
fill_size (series__float)
fill_lvl_target (series__float)
fill_lvl_current (series__float)
fillbar (series__integer)
filled (series__bool)
_fvg_box (|robbatt/lib_plot_objects/36;Box|#OBJ)
_fill_line (|robbatt/lib_plot_objects/36;Line|#OBJ) Library

Indicator
