FVGs & CEs + Alerts: simple & efficient methodFair Value Gap indicator: Paints FVGs and their midlines (CEs). Stops painting when CE is hit, or when fully filled; user choice of threshold. This threshold is also used in the Alert conditions.
~~Plotted here on ES1! (CME), on the 15m timeframe~~
-A FVG represents a 'naked' body where the wicks/tails on either side do not meet. This can be seen as a type of 'gap', which price will have a tendency to want to re-fill (in part or in full).
-The midline (CE, or 'Consequent encroachment') of FVGs also tend to show price sensitivity.
-This indicator paints all FVGs until priced into, and should give an idea of which are more meaningful and which are best ignored (based on context: location, Time of day, market structure, etc).
-This is a simpler and more efficient method of painting Fair value gaps which auto-stop painting when price reaches them.
//Aims of Publishing:
-Education of ICT concepts of Fair Value Gaps and their midlines (CEs): To easily see via forward testing or backtesting, the sensitivity that price shows to these areas & levels.
-Demonstration of a much more efficient way of plotting FVGs which terminate at price, thanks to a modification of @Bjorgums's clever looping method referenced below.
//Settings:
-Toggle on/off upward and downward FVGs independently(blue and orange by default).
-Toggle on/off midline (CE).
-Standard color/line formatting options.
-Choose Threshold: CE of FVG or Full Fill of FVG: This will determine both the 'stop-painting' trigger and the 'Alert' trigger.
-Choose number of days lookback to control how many historical FVGs paint on chart.
//On alerts:
-Simple choice of 2 alerts:
~~One for price crossing into/above the nearest untouched 'premium' FVG above ( orange ). Trigger is user choice of CE or full fill.
~~Another for price crossing into/below the nearest untouched 'discount' FVG below (blue). Trigger is user choice of CE or full fill.
-Alerts set via the three dots in indicator status line.
//Cautionary notes:
-Do not use the alerts blindly to find trades. Wait until you have identified a good FVG above/below which you think price may show sensitivity to
-Usage on very low timeframes can cause unexpected results with alerts: due to new FVGs forming in realtime the Alert will always trigger at the most recent FVG above/ below having its threshold hit.
-Big thank you to @Bjorgum for his fantastic extendAndRemove method. Modified here for use with boxes and to integrate Alerts.
-Also Credit to ICT (inner circle trader) for the concepts used here: Fair value gaps and their Consequent Encroachment (CE).
Cerca negli script per "ict"
Liquidity Candles with Prev Day High/Low and Midnight OpenAlright, let's talk about how to use this fancy indicator. But first, let me warn you, using indicators is like driving a car, you can't just press the gas pedal and hope for the best. You need to know what you're doing, or else you'll crash and burn faster than a soufflé in a microwave.
Now, let's get started. The first thing you need to do is understand what this indicator is telling you. Think of it like a signalman at a train station. He's waving flags and giving hand signals to tell you whether it's safe to proceed or if you need to stop and wait. This indicator works the same way.
It's going to give you signals based on price movements, telling you whether it's safe to buy or sell. But don't get too excited, my friend. You still need to use your brain and make smart decisions. Don't just blindly follow the signals, or else you'll end up like a sheep being led to the slaughter.
Now, let's talk about some of ICT's smart money trading concepts. First up, we have "liquidity grabs". This is when the big boys in the market create false breakouts to shake out the weak hands. They're like school bullies stealing lunch money from the little kids. But you can avoid being a victim by watching for signs of a liquidity grab, and using your brain to decide whether it's a real breakout or just a trap.
Next up, we have "stop runs". This is when the big players purposely trigger stop-loss orders to get a better entry or exit. It's like a game of chicken, but with your money on the line. To avoid being run over, keep an eye on your stop-loss orders, and don't be too predictable in your trading.
Finally, we have "market structure". This is like the blueprint of the market, showing you where the support and resistance levels are. It's like a treasure map to finding the best trades. But don't forget that market structure can change over time, so keep updating your map and stay ahead of the game.
So there you have it, my friend. A quick tutorial on using this indicator, with a side of ICT's smart money trading concepts. But remember, indicators are just tools, and you're the one driving the car. Use your brain, stay alert, and don't be a sheep. Happy trading!
Divergent Trades LLC:
Disclaimer: The information provided by the Divergent Trades LLC indicator is for educational and informational purposes only. It should not be considered financial advice or a recommendation to buy, sell, or trade any financial instrument. Divergent Trades LLC is not responsible for any losses incurred as a result of using this indicator. Trading in the financial markets carries a high level of risk and may not be suitable for all investors. Before making any investment decisions, please consult with a financial advisor and do your own due diligence. Past performance is not indicative of future results. By using the Divergent Trades LLC indicator, you acknowledge that you have read and understand this disclaimer and agree to its terms and conditions.
Session LiquidityThe “Session Liquidity” TradingView indicator by Infinity Trading creates dynamic horizontal lines at the high and low points of a specified time span within the trading day. This indicator gives the user control of three separate time spans so the user can dynamically see the highs and lows of their favorite daily time spans.
Purpose
This indicator is similar to my TradingView indicator “Futures Exchange Sessions 3.0”. In that indicator the user gets control of dynamic price boxes. For me, these boxes made it difficult to spot ICT’s Orderblocks. So instead of boxes I made independently controllable lines and now I can spot ICT Orderblocks and easily identify Liquidity Pools.
Inputs and Style
Everything about the three dynamic lines can but independently configured. Start & End Times, Line Color, Line Style, Line Width, Text Characters, Text Size, Text Color can all be adjusted. The high and low lines as well as their text labels can be individually toggled on or off for maximum control.
Timezone
All of the start and end times are in EST. Additionally, each time span line needs a specific start of each day. This is controlled by a setting called “Line Start Day Timezone” where the user sets a timezone that corresponds with the start time. In general if a timespan resides within a particular Session pick the corresponding timezone. If the users line fits in the Asian Session then choose Asia/Shanghai. If the line is within the London Session then choose Europe/London. And the same goes for the New York Session.
Special Notes
If the Line Start Time is within one candle of the Start Day Timezone in the Settings, then the line/box won’t display. So choose the previous timezone
Lines only display when the timeframe is <= 30 minute
Gallery
Index OverlayNote: use this indicator only with New York Timezone + you need to understand ICT concepts already, this indicator simplifies the chart work.
Also, in this script I added some open-source scripts from creators here on tradingview, but I forgot to annotate their names...
If you recognize your script, please text me and I'll add your credits.
features
- displays Midnight and Sunday open lines
- day separation (from midnight)
- FVGs
- VWAP (calculated from midnight open)
- daily labels
- TDH & TDL (liquidity)
- trading time window (from 9:30 to 12:00 ny time)
HOW TO USE
Combined with daily bias, the idea is to wait for 9:30 to open, and then wait for a liquidation of TDH (plotted in blue) or TDL (in red).
Once it happens, you can look for ICT buy / sell model, ideally in the 5m TF.
Advanced Price Ranges ICTThis indicator automatically divides price into fixed ranges (configurable in points or pips) and plots important reference levels such as the high, low, 50% midpoint, and 25%/75% quarters. It is designed to help traders visualize structured price movement, spot confluence zones, and frame their trading bias around clean range-based levels.
🔹 Key Features
Custom Range Size: Define ranges in points (e.g., 100, 50, 25, 10) or in Forex pips.
Forex Mode: Automatically adapts pip size (0.0001 or 0.01 for JPY pairs).
Dynamic Anchoring: Price ranges automatically align to the current price, snapping into blocks.
Multiple Ranges: Option to extend visualization above and below the current active block for a complete grid.
Level Types:
High / Low of the range
50% midpoint
25% and 75% quarters
Custom Styling: Adjustable line colors and widths for each level type.
Labels: Optional right-edge labels showing level type and exact price.
Alerts: Built-in alerts for when price crosses the range high, low, or 50% midpoint.
🔹 Use Cases
Quickly map out 100/50/25/10 point structures like Zeussy’s advanced price range method.
Identify key reaction levels where liquidity is often built or swept.
Support ICT-style concepts like range-based bias, fair value gaps, and liquidity pools.
Works for indices, futures, crypto, and forex.
🔹 Customization
Range increments can be set to any size (default 100).
Toggle which levels are shown (High/Low, Midpoint, Quarters).
Adjustable line widths, colors, and label visibility.
Extend ranges above and below for broader market context.
IFVG by Toño# IFVG by Toño - Pine Script Indicator
## Overview
This Pine Script indicator identifies and visualizes **Fair Value Gaps (FVG)** and **Inverted Fair Value Gaps (IFVG)** on trading charts. It provides advanced analysis of price inefficiencies and their subsequent inversions when mitigated.
## Key Features
### 1. Fair Value Gap (FVG) Detection
- **Bullish FVG**: Detected when `low > high ` (gap between current low and high of 2 bars ago)
- **Bearish FVG**: Detected when `high < low ` (gap between current high and low of 2 bars ago)
- Visual representation using colored rectangles (green for bullish, red for bearish)
### 2. Inverted Fair Value Gap (IFVG) Creation
- **IFVG Formation**: When a FVG gets mitigated (price fills the gap with candle body), an IFVG is created
- **Color Inversion**: The IFVG takes the opposite color of the original FVG
- Mitigated bullish FVG → Creates red (bearish) IFVG
- Mitigated bearish FVG → Creates green (bullish) IFVG
- **Mitigation Logic**: Uses only candle body (not wicks) to determine when a FVG is filled
### 3. Customizable Display Options
- **Show Normal FVG**: Toggle visibility of regular Fair Value Gaps
- **Show IFVG**: Toggle visibility of Inverted Fair Value Gaps
- **Smart FVG Display**: Even when "Show Normal FVG" is disabled, FVGs that are part of IFVGs remain visible
- **Extension Control**: Option to extend FVGs until they are mitigated
### 4. IFVG Extension Methods
- **Full Cross Method**: IFVG remains active until price completely crosses through it (including wicks)
- **Number of Bars Method**: IFVG remains active for a specified number of bars (1-100)
### 5. Visual Mitigation Signals
- **Cross Markers**: Shows X-shaped markers when IFVGs are mitigated
- Green cross above bar: Bearish IFVG mitigated
- Red cross below bar: Bullish IFVG mitigated
### 6. Comprehensive Alert System
- **IFVG Formation Alerts**: Notifications when new IFVGs are created
- **IFVG Mitigation Alerts**: Notifications when IFVGs are filled/mitigated
- **Separate Controls**: Individual toggles for bullish and bearish IFVG alerts
## How It Works
### Step-by-Step Process:
1. **FVG Detection**: Script continuously scans for 3-bar patterns that create price gaps
2. **FVG Tracking**: Each FVG is stored with its coordinates, type, and status
3. **Mitigation Monitoring**: Script watches for candle bodies that fill the FVG
4. **IFVG Creation**: Upon mitigation, creates an IFVG with opposite polarity at the same location
5. **IFVG Management**: Tracks and extends IFVGs according to chosen method
6. **Visual Updates**: Dynamically updates colors and visibility based on user settings
## Use Cases
- **Support/Resistance Analysis**: IFVGs often act as strong support/resistance levels
- **Market Structure Understanding**: Helps identify how market inefficiencies get filled and reversed
- **Entry/Exit Timing**: Can be used to time entries around IFVG formations or mitigations
- **Confluence Analysis**: Combine with other technical analysis tools for stronger signals
## Configuration Parameters
- **Colors**: Customizable colors for bullish/bearish FVGs and IFVGs
- **Extension**: Choose how long to display gaps on the chart
- **Alerts**: Full control over notification preferences
- **Visual Clarity**: Options to show/hide different gap types for cleaner charts
## Technical Specifications
- **Pine Script Version**: 5
- **Overlay**: True (displays directly on price chart)
- **Max Boxes**: 500 (supports up to 500 simultaneous gaps)
- **Performance**: Optimized array management for smooth operation
This indicator is particularly valuable for traders who use **Smart Money Concepts (SMC)** and **Inner Circle Trader (ICT)** methodologies, as it provides clear visualization of how institutional order flow creates and fills market inefficiencies.
CandelaCharts - HTF Sweeps📝 Overview
This indicator lets you overlay a higher timeframe (HTF) onto your current chart, giving you a clearer view of broader market movements without switching timeframes.
This indicator also detects liquidity sweeps and plots them on both the higher timeframe (HTF) and the current lower timeframe (LTF), helping traders clearly spot potential reversal points. It adds LTF dividers for better structure clarity, making it easier to align with HTF shifts and refine entry timing with greater precision.
📦 Features
This indicator identifies price sweeps and their invalidations, helping traders spot potential liquidity grabs and failed breakout attempts.
Overlay a configurable higher timeframe (HTF) on the current chart
Detects and plots liquidity sweeps on both HTF and LTF
Adds lower timeframe (LTF) dividers for improved structure clarity
Ideal for ICT-style top-down analysis and precision entries without switching charts
⚙️ Settings
Customize the indicator to suit your strategy. Alert options are also available, so you can stay informed when key market events are triggered.
Timeframes: Select the higher timeframe (HTF) to overlay on your current chart.
HTF Coloring: Customize the color scheme for HTF candles.
HTF Offset: Space of HTF Candles and current chart.
HTF Size: Adjust the size of HTF candles.
HTF Labels: Toggle labels for HTF.
LTF H/L Line: Show or hide high/low lines from the lower timeframe.
LTF O/C Line: Display open/close lines from the lower timeframe.
Sweep: Enable detection and plotting of liquidity sweeps.
I-sweep: Toggle invalidated sweep detection.
Alerts: Enable Sweep Formation or Invalidation alerts
⚡️ Showcase
See the indicator applied in live market scenarios, illustrating how sweep detections and invalidations unfold on various charts.
HTF Candles
HTF Sweeps
LTF Sweeps
Invalidated Sweeps
🚨 Alerts
This indicator includes built-in alert functionality to keep you informed of key market events in real time. It supports the following customizable alerts on TradingView:
Sweep Detection: Notifies you when a price sweep is detected—either a liquidity sweep above recent highs or below recent lows. This can be a strong signal of potential reversals or liquidity grabs by larger market participants.
Sweep Invalidation: Alerts you when a previously detected sweep becomes invalidated due to price action moving beyond a defined threshold. This helps traders stay adaptive and avoid acting on outdated signals.
These alerts are fully integrated with TradingView’s native alert system, so you can receive notifications via app, email, or pop-up—ensuring you're always up to date, even when you're away from the chart.
⚠️ Disclaimer
Trading involves significant risk, and many participants may incur losses. The content on this site is not intended as financial advice and should not be interpreted as such. Decisions to buy, sell, hold, or trade securities, commodities, or other financial instruments carry inherent risks and are best made with guidance from qualified financial professionals. Past performance is not indicative of future results.
Briese CoT Movement IndexThis Briese CoT (Commitments of Traders) Movement Index histogram indicator was built based on the formula by Stephen Briese in his book "The Commitments of Traders Bible":
"...difference between the COT Index and its reading of one or several weeks prior. I use six." —Chapter 7, page 75.
The code is a bit of a remix of the "ICT Commitment of Traders°" indicator by toodegrees and is meant for use in a new pane below a Weekly Chart .
The upper and lower thresholds are +40/-40. Some context: "A ± 40 point surge in the COT Index within a six-week period frequently marks the end of a counter-trend price reaction"
40 Point CoT Surge Rules (Commercials) from page 76
"During a correction from a prevailing uptrend, a +40 point movement in the CoT Index within a six-week period often marks the end of a corrective pullback, and the resumption of the major uptrend."
"During a reaction in a prevailing downtrend, a -40 point movement in the CoT Index within a six-week period frequently marks the end of a price reaction, and the resumption of the established downtrend."
"The failure of a ± point CoT Movement Index signal to restart the prevailing trend is a tip-off to a major trend change"
I'd recommend reading Briese's book for examples on how to properly interpret this indictor.
This indicator can be used in conjunction with another one I've published called the "Williams x Briese Hybrid CoT Index" which can be found on my scripts page.
Institutional Sessions Overlay (Asia/London/NY)Institutional Sessions Overlay is a professional TradingView indicator that visually highlights the main trading sessions (Asia, London, and New York) directly on your chart.
Customizable: Easily adjust session start and end times (including minutes) for each market.
Timezone Alignment: Shift session boxes using the timezone offset parameter so sessions match your chart’s timezone exactly.
Clear Visuals: Colored boxes and optional labels display session opens and closes for fast institutional market structure reference.
Toggle Labels: Show or hide session open/close labels with a single click for a clean or detailed look.
Intuitive UI: User-friendly grouped settings for efficient configuration.
This tool is designed for day traders, institutional traders, and anyone who wants to instantly recognize global session timing and ranges for SMC, ICT, and other session-based strategies.
How to use:
Set your chart to your local timezone.
Use the "Session timezone offset" setting if session boxes do not match actual session opens on your chart.
Adjust the hours and minutes for each session as needed.
Enable or disable labels in the “Display” settings group.
Tip: Use the overlay to spot session highs and lows, volatility windows, and institutional liquidity sweeps.
Logistic Regression ICT FVG🚀 OVERVIEW
Welcome to the Logistic Regression Fair Value Gap (FVG) System — a next-gen trading tool that blends precision gap detection with machine learning intelligence.
Unlike traditional FVG indicators, this one evolves with each bar of price action, scoring and filtering gaps based on real market behavior.
🔧 CORE FEATURES
✨ Smart Gap Detection
Automatically identifies bullish and bearish Fair Value Gaps using volatility-aware candle logic.
📊 Probability-Based Filtering
Uses logistic regression to assign each gap a confidence score (0 to 1), showing only high-probability setups.
🔁 Real-Time Retest Tracking
Continuously watches how price interacts with each gap to determine if it deserves respect.
📈 Multi-Factor Assessment
Evaluates RSI, MACD, and body size at gap formation to build a full context snapshot.
🧠 Self-Learning Engine
The logistic regression model updates on each bar using gradient descent, refining its predictions over time.
📢 Built-In Alerts
Get instant alerts when a gap forms, gets retested, or breaks.
🎨 Custom Display Options
Control the color of bullish/bearish zones, and toggle on/off probability labels for cleaner charts.
🚩 WHAT MAKES IT DIFFERENT
This isn’t just another box-drawing indicator.
While others mark every imbalance, this system thinks before it draws — using statistical modeling to filter out noise and prioritize high-impact zones.
By learning from how price behaves around gaps (not just how they form), it helps you trade only what matters — not what clutters.
⚙️ HOW IT WORKS
1️⃣ Detection
FVGs are identified using ATR-based thresholds and sharp wick imbalances.
2️⃣ Behavior Monitoring
Every gap is tracked — and if respected enough times, it becomes part of the elite training set.
3️⃣ Context Capture
Each new FVG logs RSI, MACD, and body size to provide a feature-rich context for prediction.
4️⃣ Prediction (Logistic Regression)
The model predicts how likely the gap is to be respected and assigns it a probability score.
5️⃣ Classification & Alerts
Gaps above the threshold are plotted with score labels, and alerts trigger for entry/respect/break.
⚙️ CONFIGURATION PANEL
🔧 System Inputs
• Max Retests – How many times a gap must be respected to train the model
• Prediction Threshold – Minimum score to show a gap on the chart
• Learning Rate – Controls how fast the model adapts (default: 0.009)
• Max FVG Lifetime – Expiration duration for unused gaps
• Show Historic Gaps – Show/hide expired or invalidated gaps
🎨 Visual Options
• Bullish/Bearish Colors – Set gap colors to fit your chart style
• Confidence Labels – Show probability scores next to FVGs
• Alert Toggles – Enable alerts for:
– New FVG detected
– FVG respected (entry)
– FVG invalidated (break)
💡 WHY LOGISTIC REGRESSION?
Traditional FVG tools rely on candle shapes.
This system relies on probability — by training on RSI, MACD, and price behavior, it predicts whether a gap will act as a true liquidity zone.
Logistic regression lets the system continuously adapt using new data, making it more accurate the longer it runs.
That means smarter signals, fewer false positives, and a clearer view of where real opportunities lie.
MirPapa:ICT:HTF: FVG OB Threeple# MirPapa:ICT:HTF: FVG OB (Fair Value Gap Order Block)
**Version:** Pine Script® v6
**Author:** © goodia
**License:** MPL-2.0 (Mozilla Public License 2.0)
---
## Overview
“FVG OB” (Fair Value Gap Order Block) identifies higher-timeframe candle ranges where a gap (imbalance) exists between two non-consecutive candles, signaling potential institutional order blocks. This module draws bullish or bearish FVG OB boxes on your lower-timeframe chart, extends them until price interacts a specified number of times, and then finalizes (recolors) the box.
---
## Inputs
- **Enable FVG OB Boxes** (`bool`)
Toggle drawing of HTF FVG OB boxes on the chart.
- **Enable FVG OB Midlines** (`bool`)
Toggle drawing of a midpoint line inside each FVG OB box.
- **FVG OB Close Count** (`int` 1–10)
Number of HTF closes beyond the FVG range required to finalize (recolor) the box.
- **FVG OB Bull Color** (`color`)
Fill & border color for bullish FVG OB boxes.
- **FVG OB Bear Color** (`color`)
Fill & border color for bearish FVG OB boxes.
- **FVG OB Box Transparency** (`int` 1–100)
Opacity level for FVG OB box fills (higher = more transparent).
---
## How It Works
1. **HTF Data Retrieval**
- The script uses `request.security()` (via `GetHTFrevised()`) to fetch HTF OHLC and historical values:
- `_htfHigh3` (high three bars ago) and `_htfLow1` (low one bar ago) for bullish FVG OB.
- `_htfLow3` (low three bars ago) and `_htfHigh1` (high one bar ago) for bearish FVG OB.
- It also tracks the HTF `bar_index` on the lower timeframe to align drawing.
2. **FVG OB Detection**
- **Bullish FVG OB**: Occurs when the HTF low of the previous bar (`low `) is strictly above the HTF high of three bars ago (`high `), creating a gap.
- **Bearish FVG OB**: Occurs when the HTF high of the previous bar (`high `) is strictly below the HTF low of three bars ago (`low `), creating a gap.
3. **Box Creation**
- On each new HTF bar (`ta.change(time(HTF)) != 0`), if a bullish or bearish FVG OB condition is met, the script calls `CreateBoxData()` with:
- **Bullish**: `bottom = HTF low `, `top = HTF high `, `_isBull = true`.
- **Bearish**: `bottom = HTF low `, `top = HTF high `, `_isBull = false`.
- Midline toggled by input.
- A `BoxData` struct is created and stored in either the Bull or Bear array.
4. **Box Extension & Finalization**
- On **every LTF bar**, `ProcessBoxDatas(...)` iterates over all active FVG OB boxes:
1. **Extend Right Edge**: `box.set_right(bar_index)` ensures the box follows the latest bar.
2. **Record Volume Delta**: Tracks buy/sell volume inside the box.
3. **Touch Stage Update**: `modBoxUpdateStage()` increments `_stage` when price touches its “basePoint” (for FVG OB, the basePrice is one side of the gap).
4. **Finalize**: `setBoxFinalize()` checks if the configured number of closes beyond the FVG gap (`FVG OB Close Count`) has occurred. If so:
- `_isActive := false`
- Border and background colors are changed to the “Box Close Color” (input).
- Finalized boxes remain on screen semi-transparent, indicating that the FVG OB zone has been tested.
5. **Midline (Optional)**
- If “Enable FVG OB Midlines” is checked, `ProcessBoxDatas()` also extends a horizontal midpoint line inside the box with `line.set_x2(bar_index)`.
---
## Usage Instructions
1. **Installation**
- Copy the FVG OB section of the Pine Script into TradingView’s Pine Editor (ensure the library import is included).
- Click “Add to Chart.”
2. **Configure Inputs**
- Choose a Higher Time Frame via the dropdown (e.g., “4시간” maps to a 4H timeframe).
- Toggle “Enable FVG OB Boxes” and “Enable FVG OB Midlines.”
- Select colors for bullish and bearish boxes and set transparency.
- Adjust “FVG OB Close Count” to control how many closes beyond the gap finalize the box.
3. **Interpretation**
- **Active FVG OB Boxes** extend to the right until price closes beyond the gap range the specified number of times.
- When finalized, each box changes to the “Box Close Color,” signaling that institutional orders in that gap have likely been filled.
Enjoy precise visualization of higher-timeframe Fair Value Gap Order Blocks on your lower-timeframe chart!
FVG Premium [no1x]█ OVERVIEW
This indicator provides a comprehensive toolkit for identifying, visualizing, and tracking Fair Value Gaps (FVGs) across three distinct timeframes (current chart, a user-defined Medium Timeframe - MTF, and a user-defined High Timeframe - HTF). It is designed to offer traders enhanced insight into FVG dynamics through detailed state monitoring (formation, partial fill, full mitigation, midline touch), extensive visual customization for FVG representation, and a rich alert system for timely notifications on FVG-related events.
█ CONCEPTS
This indicator is built upon the core concept of Fair Value Gaps (FVGs) and their significance in price action analysis, offering a multi-layered approach to their detection and interpretation across different timeframes.
Fair Value Gaps (FVGs)
A Fair Value Gap (FVG), also known as an imbalance, represents a range in price delivery where one side of the market (buying or selling) was more aggressive, leaving an inefficiency or an "imbalance" in the price action. This concept is prominently featured within Smart Money Concepts (SMC) and Inner Circle Trader (ICT) methodologies, where such gaps are often interpreted as footprints left by "smart money" due to rapid, forceful price movements. These methodologies suggest that price may later revisit these FVG zones to rebalance a prior inefficiency or to seek liquidity before continuing its path. These gaps are typically identified by a three-bar pattern:
Bullish FVG : This is a three-candle formation where the second candle shows a strong upward move. The FVG is the space created between the high of the first candle (bottom of FVG) and the low of the third candle (top of FVG). This indicates a strong upward impulsive move.
Bearish FVG : This is a three-candle formation where the second candle shows a strong downward move. The FVG is the space created between the low of the first candle (top of FVG) and the high of the third candle (bottom of FVG). This indicates a strong downward impulsive move.
FVGs are often watched by traders as potential areas where price might return to "rebalance" or find support/resistance.
Multi-Timeframe (MTF) Analysis
The indicator extends FVG detection beyond the current chart's timeframe (Low Timeframe - LTF) to two higher user-defined timeframes: Medium Timeframe (MTF) and High Timeframe (HTF). This allows traders to:
Identify FVGs that might be significant on a broader market structure.
Observe how FVGs from different timeframes align or interact.
Gain a more comprehensive perspective on potential support and resistance zones.
FVG State and Lifecycle Management
The indicator actively tracks the lifecycle of each detected FVG:
Formation : The initial identification of an FVG.
Partial Fill (Entry) : When price enters but does not completely pass through the FVG. The indicator updates the "current" top/bottom of the FVG to reflect the filled portion.
Midline (Equilibrium) Touch : When price touches the 50% level of the FVG.
Full Mitigation : When price completely trades through the FVG, effectively "filling" or "rebalancing" the gap. The indicator records the mitigation time.
This state tracking is crucial for understanding how price interacts with these zones.
FVG Classification (Large FVG)
FVGs can be optionally classified as "Large FVGs" (LV) if their size (top to bottom range) exceeds a user-defined multiple of the Average True Range (ATR) for that FVG's timeframe. This helps distinguish FVGs that are significantly larger relative to recent volatility.
Visual Customization and Information Delivery
A key concept is providing extensive control over how FVGs are displayed. This control is achieved through a centralized set of visual parameters within the indicator, allowing users to configure numerous aspects (colors, line styles, visibility of boxes, midlines, mitigation lines, labels, etc.) for each timeframe. Additionally, an on-chart information panel summarizes the nearest unmitigated bullish and bearish FVG levels for each active timeframe, providing a quick glance at key price points.
█ FEATURES
This indicator offers a rich set of features designed to provide a highly customizable and comprehensive Fair Value Gap (FVG) analysis experience. Users can tailor the FVG detection, visual representation, and alerting mechanisms across three distinct timeframes: the current chart (Low Timeframe - LTF), a user-defined Medium Timeframe (MTF), and a user-defined High Timeframe (HTF).
Multi-Timeframe FVG Detection and Display
The core strength of this indicator lies in its ability to identify and display FVGs from not only the current chart's timeframe (LTF) but also from two higher, user-selectable timeframes (MTF and HTF).
Timeframe Selection: Users can specify the exact MTF (e.g., "60", "240") and HTF (e.g., "D", "W") through dedicated inputs in the "MTF (Medium Timeframe)" and "HTF (High Timeframe)" settings groups. The visibility of FVGs from these higher timeframes can be toggled independently using the "Show MTF FVGs" and "Show HTF FVGs" checkboxes.
Consistent Detection Logic: The FVG detection logic, based on the classic three-bar imbalance pattern detailed in the 'Concepts' section, is applied consistently across all selected timeframes (LTF, MTF, HTF)
Timeframe-Specific Visuals: Each timeframe's FVGs (LTF, MTF, HTF) can be customized with unique colors for bullish/bearish states and their mitigated counterparts. This allows for easy visual differentiation of FVGs originating from different market perspectives.
Comprehensive FVG Visualization Options
The indicator provides extensive control over how FVGs are visually represented on the chart for each timeframe (LTF, MTF, HTF).
FVG Boxes:
Visibility: Main FVG boxes can be shown or hidden per timeframe using the "Show FVG Boxes" (for LTF), "Show Boxes" (for MTF/HTF) inputs.
Color Customization: Colors for bullish, bearish, active, and mitigated FVG boxes (including Large FVGs, if classified) are fully customizable for each timeframe.
Box Extension & Length: FVG boxes can either be extended to the right indefinitely ("Extend Boxes Right") or set to a fixed length in bars ("Short Box Length" or "Box Length" equivalent inputs).
Box Labels: Optional labels can display the FVG's timeframe and fill percentage on the box. These labels are configurable for all timeframes (LTF, MTF, and HTF). Please note: If FVGs are positioned very close to each other on the chart, their respective labels may overlap. This can potentially lead to visual clutter, and it is a known behavior in the current version of the indicator.
Box Borders: Visibility, width, style (solid, dashed, dotted), and color of FVG box borders are customizable per timeframe.
Midlines (Equilibrium/EQ):
Visibility: The 50% level (midline or EQ) of FVGs can be shown or hidden for each timeframe.
Style Customization: Width, style, and color of the midline are customizable per timeframe. The indicator tracks if this midline has been touched by price.
Mitigation Lines:
Visibility: Mitigation lines (representing the FVG's opening level that needs to be breached for full mitigation) can be shown or hidden for each timeframe. If shown, these lines are always extended to the right.
Style Customization: Width, style, and color of the mitigation line are customizable per timeframe.
Mitigation Line Labels: Optional price labels can be displayed on mitigation lines, with a customizable horizontal bar offset for positioning. For optimal label placement, the following horizontal bar offsets are recommended: 4 for LTF, 8 for MTF, and 12 for HTF.
Persistence After Mitigation: Users can choose to keep mitigation lines visible even after an FVG is fully mitigated, with a distinct color for such lines. Importantly, this option is only effective if the general setting 'Hide Fully Mitigated FVGs' is disabled, as otherwise, the entire FVG and its lines will be removed upon mitigation.
FVG State Management and Behavior
The indicator tracks and visually responds to changes in FVG states.
Hide Fully Mitigated FVGs: This option, typically found in the indicator's general settings, allows users to automatically remove all visual elements of an FVG from the chart once price has fully mitigated it. This helps maintain chart clarity by focusing on active FVGs.
Partial Fill Visualization: When price enters an FVG, the indicator offers a dynamic visual representation: the portion of the FVG that has been filled is shown as a "mitigated box" (typically with a distinct color), while the original FVG box shrinks to clearly highlight the remaining, unfilled portion. This two-part display provides an immediate visual cue about how much of the FVG's imbalance has been addressed and what potential remains within the gap.
Visual Filtering by ATR Proximity: To help users focus on the most relevant price action, FVGs can be dynamically hidden if they are located further from the current price than a user-defined multiple of the Average True Range (ATR). This behavior is controlled by the "Filter Band Width (ATR Multiple)" input; setting this to zero disables the filter entirely, ensuring all detected FVGs remain visible regardless of their proximity to price.
Alternative Usage Example: Mitigation Lines as Key Support/Resistance Levels
For traders preferring a minimalist chart focused on key Fair Value Gap (FVG) levels, the indicator's visualization settings can be customized to display only FVG mitigation lines. This approach leverages these lines as potential support and resistance zones, reflecting areas where price might revisit to address imbalances.
To configure this view:
Disable FVG Boxes: Turn off "Show FVG Boxes" (for LTF) or "Show Boxes" (for MTF/HTF) for the desired timeframes.
Hide Midlines: Disable the visibility of the 50% FVG Midlines (Equilibrium/EQ).
Ensure Mitigation Lines are Visible: Keep "Mitigation Lines" enabled.
Retain All Mitigation Lines:
Disable the "Hide Fully Mitigated FVGs" option in the general settings.
Enable the feature to "keep mitigation lines visible even after an FVG is fully mitigated". This ensures lines from all FVGs (active or fully mitigated) remain on the chart, which is only effective if "Hide Fully Mitigated FVGs" is disabled.
This setup offers:
A Decluttered Chart: Focuses solely on the FVG opening levels.
Precise S/R Zones: Treats mitigation lines as specific points for potential price reactions.
Historical Level Analysis: Includes lines from past, fully mitigated FVGs for a comprehensive view of significant price levels.
For enhanced usability with this focused view, consider these optional additions:
The on-chart Information Panel can be activated to display a quick summary of the nearest unmitigated FVG levels.
Mitigation Line Labels can also be activated for clear price level identification. A customizable horizontal bar offset is available for positioning these labels; for example, offsets of 4 for LTF, 8 for MTF, and 12 for HTF can be effective.
FVG Classification (Large FVG)
This feature allows for distinguishing FVGs based on their size relative to market volatility.
Enable Classification: Users can enable "Classify FVG (Large FVG)" to identify FVGs that are significantly larger than average.
ATR-Based Threshold: An FVG is classified as "Large" if its height (price range) is greater than or equal to the Average True Range (ATR) of its timeframe multiplied by a user-defined "Large FVG Threshold (ATR Multiple)". The ATR period for this calculation is also configurable.
Dedicated Colors: Large FVGs (both bullish/bearish and active/mitigated) can be assigned unique colors, making them easily distinguishable on the chart.
Panel Icon: Large FVGs are marked with a special icon in the Info Panel.
Information Panel
An on-chart panel provides a quick summary of the nearest unmitigated FVG levels.
Visibility and Position: The panel can be shown/hidden and positioned in any of the nine standard locations on the chart (e.g., Top Right, Middle Center).
Content: It displays the price levels of the nearest unmitigated bullish and bearish FVGs for LTF, MTF (if active), and HTF (if active). It also indicates if these nearest FVGs are Large FVGs (if classification is enabled) using a selectable icon.
Styling: Text size, border color, header background/text colors, default text color, and "N/A" cell background color are customizable.
Highlighting: Background and text colors for the cells displaying the overall nearest bullish and bearish FVG levels (across all active timeframes) can be customized to draw attention to the most proximate FVG.
Comprehensive Alert System
The indicator offers a granular alert system for various FVG-related events, configurable for each timeframe (LTF, MTF, HTF) independently. Users can enable alerts for:
New FVG Formation: Separate alerts for new bullish and new bearish FVG formations.
FVG Entry/Partial Fill: Separate alerts for price entering a bullish FVG or a bearish FVG.
FVG Full Mitigation: Separate alerts for full mitigation of bullish and bearish FVGs.
FVG Midline (EQ) Touch: Separate alerts for price touching the midline of a bullish or bearish FVG.
Alert messages are detailed, providing information such as the timeframe, FVG type (bull/bear, Large FVG), relevant price levels, and timestamps.
█ NOTES
This section provides additional information regarding the indicator's usage, performance considerations, and potential interactions with the TradingView platform. Understanding these points can help users optimize their experience and troubleshoot effectively.
Performance and Resource Management
Maximum FVGs to Track : The "Max FVGs to Track" input (defaulting to 25) limits the number of FVG objects processed for each category (e.g., LTF Bullish, MTF Bearish). Increasing this value significantly can impact performance due to more objects being iterated over and potentially drawn, especially when multiple timeframes are active.
Drawing Object Limits : To manage performance, this script sets its own internal limits on the number of drawing objects it displays. While it allows for up to approximately 500 lines (max_lines_count=500) and 500 labels (max_labels_count=500), the number of FVG boxes is deliberately restricted to a maximum of 150 (max_boxes_count=150). This specific limit for boxes is a key performance consideration: displaying too many boxes can significantly slow down the indicator, and a very high number is often not essential for analysis. Enabling all visual elements for many FVGs across all three timeframes can cause the indicator to reach these internal limits, especially the stricter box limit
Optimization Strategies : To help you manage performance, reduce visual clutter, and avoid exceeding drawing limits when using this indicator, I recommend the following strategies:
Maintain or Lower FVG Tracking Count: The "Max FVGs to Track" input defaults to 25. I find this value generally sufficient for effective analysis and balanced performance. You can keep this default or consider reducing it further if you experience performance issues or prefer a less dense FVG display.
Utilize Proximity Filtering: I suggest activating the "Filter Band Width (ATR Multiple)" option (found under "General Settings") to display only those FVGs closer to the current price. From my experience, a value of 5 for the ATR multiple often provides a good starting point for balanced performance, but you should feel free to adjust this based on market volatility and your specific trading needs.
Hide Fully Mitigated FVGs: I strongly recommend enabling the "Hide Fully Mitigated FVGs" option. This setting automatically removes all visual elements of an FVG from the chart once it has been fully mitigated by price. Doing so significantly reduces the number of active drawing objects, lessens computational load, and helps maintain chart clarity by focusing only on active, relevant FVGs.
Disable FVG Display for Unused Timeframes: If you are not actively monitoring certain higher timeframes (MTF or HTF) for FVG analysis, I advise disabling their display by unchecking "Show MTF FVGs" or "Show HTF FVGs" respectively. This can provide a significant performance boost.
Simplify Visual Elements: For active FVGs, consider hiding less critical visual elements if they are not essential for your specific analysis. This could include box labels, borders, or even entire FVG boxes if, for example, only the mitigation lines are of interest for a particular timeframe.
Settings Changes and Platform Limits : This indicator is comprehensive and involves numerous calculations and drawings. When multiple settings are changed rapidly in quick succession, it is possible, on occasion, for TradingView to issue a "Runtime error: modify_study_limit_exceeding" or similar. This can cause the indicator to temporarily stop updating or display errors.
Recommended Approach : When adjusting settings, it is advisable to wait a brief moment (a few seconds) after each significant change. This allows the indicator to reprocess and update on the chart before another change is made
Error Recovery : Should such a runtime error occur, making a minor, different adjustment in the settings (e.g., toggling a checkbox off and then on again) and waiting briefly will typically allow the indicator to recover and resume correct operation. This behavior is related to platform limitations when handling complex scripts with many inputs and drawing objects.
Multi-Timeframe (MTF/HTF) Data and Behavior
HTF FVG Confirmation is Essential: : For an FVG from a higher timeframe (MTF or HTF) to be identified and displayed on your current chart (LTF), the three-bar pattern forming the FVG on that higher timeframe must consist of fully closed bars. The indicator does not draw speculative FVGs based on incomplete/forming bars from higher timeframes.
Data Retrieval and LTF Processing: The indicator may use techniques like lookahead = barmerge.lookahead_on for timely data retrieval from higher timeframes. However, the actual detection of an FVG occurs after all its constituent bars on the HTF have closed.
Appearance Timing on LTF (1 LTF Candle Delay): As a natural consequence of this, an FVG that is confirmed on an HTF (i.e., its third bar closes) will typically become visible on your LTF chart one LTF bar after its confirmation on the HTF.
Example: Assume an FVG forms on a 30-minute chart at 15:30 (i.e., with the close of the 30-minute bar that covers the 15:00-15:30 period). If you are monitoring this FVG on a 15-minute chart, the indicator will detect this newly formed 30-minute FVG while processing the data for the 15-minute bar that starts at 15:30 and closes at 15:45. Therefore, the 30-minute FVG will become visible on your 15-minute chart at the earliest by 15:45 (i.e., with the close of that relevant 15-minute LTF candle). This means the HTF FVG is reflected on the LTF chart with a delay equivalent to one LTF candle.
FVG Detection and Display Logic
Fair Value Gaps (FVGs) on the current chart timeframe (LTF) are detected based on barstate.isconfirmed. This means the three-bar pattern must be complete with closed bars before an FVG is identified. This confirmation method prevents FVGs from being prematurely identified on the forming bar.
Alerts
Alert Setup : To receive alerts from this indicator, you must first ensure you have enabled the specific alert conditions you are interested in within the indicator's own settings (see 'Comprehensive Alert System' under the 'FEATURES' section). Once configured, open TradingView's 'Create Alert' dialog. In the 'Condition' tab, select this indicator's name, and crucially, choose the 'Any alert() function call' option from the dropdown list. This setup allows the indicator to trigger alerts based on the precise event conditions you have activated in its settings
Alert Frequency : Alerts are designed to trigger once per bar close (alert.freq_once_per_bar_close) for the specific event.
User Interface (UI) Tips
Settings Group Icons: In the indicator settings menu, timeframe-specific groups are marked with star icons for easier navigation: 🌟 for LTF (Current Chart Timeframe), 🌟🌟 for MTF (Medium Timeframe), and 🌟🌟🌟 for HTF (High Timeframe).
Dependent Inputs: Some input settings are dependent on others being enabled. These dependencies are visually indicated in the settings menu using symbols like "↳" (dependent setting on the next line), "⟷" (mutually exclusive inline options), or "➜" (directly dependent inline option).
Settings Layout Overview: The indicator settings are organized into logical groups for ease of use. Key global display controls – such as toggles for MTF FVGs, HTF FVGs (along with their respective timeframe selectors), and the Information Panel – are conveniently located at the very top within the '⚙️ General Settings' group. This placement allows for quick access to frequently adjusted settings. Other sections provide detailed customization options for each timeframe (LTF, MTF, HTF), specific FVG components, and alert configurations.
█ FOR Pine Script® CODERS
This section provides a high-level overview of the FVG Premium indicator's internal architecture, data flow, and the interaction between its various library components. It is intended for Pine Script™ programmers who wish to understand the indicator's design, potentially extend its functionality, or learn from its structure.
System Architecture and Modular Design
The indicator is architected moduarly, leveraging several custom libraries to separate concerns and enhance code organization and reusability. Each library has a distinct responsibility:
FvgTypes: Serves as the foundational data definition layer. It defines core User-Defined Types (UDTs) like fvgObject (for storing all attributes of an FVG) and drawSettings (for visual configurations), along with enumerations like tfType.
CommonUtils: Provides utility functions for common tasks like mapping user string inputs (e.g., "Dashed" for line style) to their corresponding Pine Script™ constants (e.g., line.style_dashed) and formatting timeframe strings for display.
FvgCalculations: Contains the core logic for FVG detection (both LTF and MTF/HTF via requestMultiTFBarData), FVG classification (Large FVGs based on ATR), and checking FVG interactions with price (mitigation, partial fill).
FvgObject: Implements an object-oriented approach by attaching methods to the fvgObject UDT. These methods manage the entire visual lifecycle of an FVG on the chart, including drawing, updating based on state changes (e.g., mitigation), and deleting drawing objects. It's responsible for applying the visual configurations defined in drawSettings.
FvgPanel: Manages the creation and dynamic updates of the on-chart information panel, which displays key FVG levels.
The main indicator script acts as the orchestrator, initializing these libraries, managing user inputs, processing data flow between libraries, and handling the main event loop (bar updates) for FVG state management and alerts.
Core Data Flow and FVG Lifecycle Management
The general data flow and FVG lifecycle can be summarized as follows:
Input Processing: User inputs from the "Settings" dialog are read by the main indicator script. Visual style inputs (colors, line styles, etc.) are consolidated into a types.drawSettings object (defined in FvgTypes). Other inputs (timeframes, filter settings, alert toggles) control the behavior of different modules. CommonUtils assists in mapping some string inputs to Pine constants.
FVG Detection:
For the current chart timeframe (LTF), FvgCalculations.detectFvg() identifies potential FVGs based on bar patterns.
For MTF/HTF, the main indicator script calls FvgCalculations.requestMultiTFBarData() to fetch necessary bar data from higher timeframes, then FvgCalculations.detectMultiTFFvg() identifies FVGs.
Newly detected FVGs are instantiated as types.fvgObject and stored in arrays within the main script. These objects also undergo classification (e.g., Large FVG) by FvgCalculations.
State Update & Interaction: On each bar, the main indicator script iterates through active FVG objects to manage their state based on price interaction:
Initially, the main script calls FvgCalculations.fvgInteractionCheck() to efficiently determine if the current bar's price might be interacting with a given FVG.
If a potential interaction is flagged, the main script then invokes methods directly on the fvgObject instance (e.g., updateMitigation(), updatePartialFill(), checkMidlineTouch(), which are part of FvgObject).
These fvgObject methods are responsible for the detailed condition checking and the actual modification of the FVG's state. For instance, the updateMitigation() and updatePartialFill() methods internally utilize specific helper functions from FvgCalculations (like checkMitigation() and checkPartialMitigation()) to confirm the precise nature of the interaction before updating the fvgObject’s state fields (such as isMitigated, currentTop, currentBottom, or isMidlineTouched).
Visual Rendering:
The FvgObject.updateDrawings() method is called for each fvgObject. This method is central to drawing management; it creates, updates, or deletes chart drawings (boxes, lines, labels) based on the FVG's current state, its prev_* (previous bar state) fields for optimization, and the visual settings passed via the drawSettings object.
Information Panel Update: The main indicator script determines the nearest FVG levels, populates a panelData object (defined in FvgPanelLib), and calls FvgPanel.updatePanel() to refresh the on-chart display.
Alert Generation: Based on the updated FVG states and user-enabled alert settings, the main indicator script constructs and triggers alerts using Pine Script's alert() function."
Key Design Considerations
UDT-Centric Design: The fvgObject UDT is pivotal, acting as a stateful container for all information related to a single FVG. Most operations revolve around creating, updating, or querying these objects.
State Management: To optimize drawing updates and manage FVG lifecycles, fvgObject instances store their previous bar's state (e.g., prevIsVisible, prevCurrentTop). The FvgObject.updateDrawings() method uses this to determine if a redraw is necessary, minimizing redundant drawing calls.
Settings Object: A drawSettings object is populated once (or when inputs change) and passed to drawing functions. This avoids repeatedly reading numerous input() values on every bar or within loops, improving performance.
Dynamic Arrays for FVG Storage: Arrays are used to store collections of fvgObject instances, allowing for dynamic management (adding new FVGs, iterating for updates).
Quarter ICT Theo TradeQuarter ICT | Theo Trade
The "Multi-Level Yearly Divisions" indicator is a visual tool designed for TradingView charts. Its primary purpose is to help traders and analysts visualize and analyze price action within a structured, hierarchical breakdown of the year. It divides each year into progressively smaller, equal time segments, allowing for detailed observation of how markets behave during specific portions of the year, quarters, and even finer sub-divisions.
Yearly Detection: It first identifies the start of each new year on the chart.
Four Levels of Division:
Level 0: Marks the beginning of the year with a distinct line.
Level 1 (Quarters): Divides the entire year into four equal parts (quarters).
Level 2: Each quarter is then further divided into four equal smaller segments.
Level 3: Each of these Level 2 segments is again divided into four equal parts.
Level 4: Finally, each Level 3 segment is divided into four more equal parts.
Silver Bullet 5 minutes Box - By KaVeHThis indicator plots high-low range boxes based on selected intraday time windows on the 5-minute chart. It's inspired by the "Silver Bullet" trading concept, highlighting key liquidity grabs and volatility pockets at predefined times. It helps traders visually identify potential smart money trading windows during the New York session and other time anchors.
⚠️ This script only works on the 5-minute chart.
📦 Main Features:
⏰ Customizable Time Boxes:
Define up to 4 separate time windows per day:
3:00 AM – 3:05 AM (New York time) (Box 1)
10:00 AM – 10:05 AM (New York time) (Box 2)
2:00 PM – 2:05 PM (New York time) (Box 3)
8:00 PM – 8:05 PM (New York time) (Box 4)
🎨 Color and Visibility Control:
Each box can be independently toggled and colored for visual distinction.
🕔 New York Time Based:
All timestamps are automatically adjusted to New York Time, aligning with institutional market behavior.
📉 Post-Box Projection:
After each time window closes, a box extends forward 6 hours (72 bars on a 5-minute chart) to highlight the range.
💡 Use Case:
These boxes are best used to:
Detect liquidity sweeps.
Mark potential entry or exit zones.
Track price behavior after specific time-based events.
For example, the 10 AM box is often used to identify setups just after the NYSE open and into the first hour of volatility.
⚠️ TradingView Compliance Notes:
This script is original and does not replicate or resell premium/paid indicators.
All logic is coded from scratch by kaveh_mirmousavi, using public concepts from ICT/Smart Money Trading.
Fully complies with the Mozilla Public License 2.0.
Does not include financial advice or signals — for educational use only.
✅ How to Use:
Apply to a 5-minute chart.
Adjust the desired time boxes in the input panel.
Watch for price action within and after the boxes.
Enjoy and feel free to share feedback or ideas for improvement!
FVG Candle HighlighterThis indicator highlights only the true Fair Value Gap (FVG) creator candle — the middle candle in a 3-bar FVG formation — with zero clutter.
🔹 Bullish FVG: Candle is colored if price gaps above the high two bars back
🔹 Bearish FVG: Candle is colored if price gaps below the low two bars back
✨ No boxes. No zones. Just pure, visual price-action accuracy.
🔧 Powered by Pine Script v6
🧠 Based on institutional-style FVG logic
🎯 Ideal for Smart Money / ICT / Order Block strategies
FVG + OB + RSI Divergence + Volume Spikes🧠 FVG + OB + RSI Divergence + Volume Spikes – Market Structure Confluence Tool
This all-in-one indicator brings together four powerful market concepts into a single script designed to help traders identify high-probability trade setups with precision and clarity:
🔍 What It Does
✅ Fair Value Gaps (FVG)
Highlights inefficiencies in price action, showing where the market may return to “rebalance.”
✅ Order Blocks (OB)
Marks key institutional footprints — bullish and bearish order blocks based on engulfing candle structures.
✅ RSI Divergence
Detects both bullish and bearish divergences between price and RSI, signaling potential reversals.
✅ Volume Spikes
Flags bars where volume significantly exceeds the average — a common footprint of smart money.
🎯 How to Use
Use this tool to spot confluences between price inefficiencies (FVG), key reversal zones (OB), momentum shifts (RSI Divergence), and institutional interest (Volume Spikes). The best setups often occur when multiple signals align — especially at key support/resistance or trend zones.
⚙️ Inputs
RSI length (for divergence)
Volume spike sensitivity (multiplier)
Lookback for Order Blocks and FVGs
⚠️ Notes
This is a non-repainting tool.
Ideal for price action, SMC, ICT, and order flow traders.
Combine with your existing strategy and higher time frame bias for best results.
Dealing rangeHi all!
This indicator will show you the current dealing range. The concept of dealing range comes from the inner circle trader (ICT) and gives you a range between an established swing high and an established swing low (the length of these pivots can be changed in settings parameter Length and defaults to 5/2 (left/right)). These swing points must have taken out liquidity to be considered "established". The liquidity that must be grabbed by the swing point has to be a pivot of left length of 1 and a right length of 1.
The dealing range that's created should be used in conjunction with market structure. This could be done through scripts (maybe the Market structure script that I published ()) or manually. It's a common approach to look for long opportunities when the trend is bullish and price is currently in the discount zone of the dealing range. If the trend is bearish then short opportunities are presented when the price is currently in the premium zone of the dealing range.
The zones within the dealing range are premium and discount that are split on the 50% level of the dealing range. These zones can be split into 3 zone with a Fair price (also called Fair value ) zone in between premium and discount. This makes the premium zone to be in the upper third of the dealing range, fair price in the middle third and discount in the lower third. This can be enabled in the settings through the Fair price parameter.
Enabled:
You can choose to enable/disable the visualisation of liquidity grabs and the External liquidity available above and below the swing points that created the dealing range.
Enabled:
Disabled:
Enabled on a higher timeframe (will display a box of the liquidity grab price instead of a label):
This dealing range is configurable to be created by a higher timeframe then the visible charts. Use the setting Higher timeframe to change this.
You can force candles to be closed (for liquidity and swing points). Please note that if you use a higher timeframe then the visible charts the candles must be closed on this timeframe.
Lastly you can also change the transparency of liquidity grabs and external liquidity outside of the dealing range. Use the Transparency setting to change this (a lower value will lead to stronger visuals).
If you have any input or suggestions on future features or bugs, don't hesitate to let me know!
Best of trading luck!
[TTM] ICT Sessions & Ranges🌟 Overview 🌟
The ICT Sessions & Ranges Indicator helps traders identify key intraday price levels by marking custom session highs/lows and opening ranges.
It helps traders spot potential liquidity grabs, reversals, and breakout zones by tracking price behavior around these key areas
🌟 Session Highs & Lows – Liquidity Zones 🌟
Session highs and lows often attract price due to stop orders resting above or below them. These levels are frequently targeted during high-volatility moves.
🔹 Asia Session
- Usually ranges in low volatility.
- Highs/lows often get swept during early London.
- Price may raid these levels, then reverse.
🔹 London Session
- First major volatility of the day.
- Highs/lows often tested or swept in New York.
- Commonly forms the day’s true high or low.
🌟 Opening Range Concepts 🌟
The Opening Range is the first 15, 30, or 60 minutes of a session (e.g., New York).
The high (ORH) and low (ORL) define the market’s initial balance and key reaction levels.
🔹 Breakout Trade
- Price breaks ORH/ORL with momentum.
- Signals directional intent.
- Traders enter on the breakout, with stops inside the range.
🔹 Liquidity Raid
- Price briefly breaks ORH/ORL to trigger stops.
- Reverses after the sweep.
- Look for structure shift and entry near FVG or OB.
🌟 Customizable Settings 🌟
The indicator includes 3 configurable ranges , each with:
Start & End Time – Set any custom time window.
Display Type – Choose Box (highlight range) or Lines (mark high/low).
Color Settings – Set custom colors for boxes and lines.
🌟 Default Settings 🌟
Range 1 : 19:00–00:00 (Asia Session)
Range 2 : 01:45–05:15 (London Session)
Range 3 : 09:30–10:00 (NY Opening Range – 30m)
Initial Imbalance [First FVG - ICT] v1Initial Imbalance v1
This indicator identifies the first Fair Value Gap (FVG) at the start of a user-defined session, inspired by The Inner Circle Trader. It helps traders spot initial imbalance in a sessions price action, offering filter options to refine FVG detection and optional session high/low lines for context.
Features:
Detects the first bullish or bearish FVG at the session start (default: 08:30). ISE: Sets a custom session start time (hour and minute).
Filters FVGs by size: None, ATR-based, or Points-based.
Displays session high/low lines (optional) to visualize the session range.
Customizable colors for bullish and bearish FVGs (background and border derived from a single color input).
Alerts for new FVGs and mitigated FVGs.
Settings:
Session Start Time: Define the hour and minute for the session start.
FVG Filter Type: Choose None, ATR, or Points to filter FVGs by size.
ATR Multiple / Minimum Points: Set the minimum FVG size for ATR or Points filters.
Show Session High/Low Lines: Toggle visibility of session range lines.
Bullish/Bearish FVG Colors: Customize colors for FVGs.
Technical Details:
Overlay indicator, displayed directly on the price chart.
This indicator is ideal for traders seeking to identify key price imbalances at the start of a session, with flexible filtering and visualization options.
CandelaCharts - Premium & Discount 📝 Overview
Premium and Discount are key concepts in ICT (Inner Circle Trader) trading strategies, used to pinpoint ideal entry and exit points in the market. These concepts are based on an understanding of market structure and the behavior of institutional traders, commonly referred to as Smart Money.
To understand the Premium and Discount zones, it's crucial to first grasp the concept of the equilibrium level, also known as the basic or fair value. The equilibrium represents the midpoint of a given price range and acts as a reference point, dividing the range into Premium and Discount zones.
The equilibrium reflects the "fair value" of the price within the considered range. Traders use this as a benchmark to assess whether the current price is in the Premium or Discount zone.
The Premium zone lies above the equilibrium level, while the Discount zone is located below it within the price range.
📦 Features
Swing-based detection
Custom detection
Modes
Styling
⚙️ Settings
Range: Determines how you will identify Premium and Discount, either by swing points or by custom date.
Mode: Controls what UI will be displayed
Premium: Sets the Premium color
Discount: Sets the Discount color
Equilibrium: Sets the Equilibrium color
Labels: Controls the labels visibility
⚡️ Showcase
Pro Mode
Solid Mode
Outlined Mode
Flat Mode
The Indicator can be effortlessly applied in replay mode to highlight premium and discount zones based on the most prominent market swings.
🚨 Alerts
The indicator does not provide any alerts!
⚠️ Disclaimer
Trading involves significant risk, and many participants may incur losses. The content on this site is not intended as financial advice and should not be interpreted as such. Decisions to buy, sell, hold, or trade securities, commodities, or other financial instruments carry inherent risks and are best made with guidance from qualified financial professionals. Past performance is not indicative of future results.
CISD with Alerts [neo|]█ OVERVIEW
CISD (or Change in State of Delivery) is an ICT concept and reversal pattern which may allow traders to identify reversals or changes in market structure early, compared to using traditional market structure. This script aims to correctly identify, and update these levels and provide alerts, so that traders can take advantage of this concept with ease.
█ CONCEPTS
Simply put, CISD may be identified when price closes above the open of the candle which started the most recent downtrend or liquidity sweep. Generally, it is most powerful when applied to key points in the market as a confirmation from where you may want price to reverse.
For example, when price is in a downtrend, we take the open of the last consecutive downwards candle and observe the CISD once price closes above it, beginning an uptrend.
Examples:
COMEX:GC1!
CME_MINI:NQ1!
█ How to use
To use the indicator, simply apply it to your chart and modify any of your desired inputs.
• Bullish CISD color allows you to change the color of +CISD levels.
• Bearish CISD color allows you to change the color of -CISD levels.
• Line width allows you to modify the width of +-CISD lines.
• Line extension bars allows you to change how far ahead CISD levels are drawn (by default it is 5).
• Keep old CISD levels will allow you to preserve all past CISD levels if you would like to observe the logic.
• Enable stat table will let you add a table on your chart which will tell you the current CISD trend, as well as your ticker and timeframe.
• Table position allows you to customize where the table will appear on your chart.
TR FVG Finder 1.0TR FVG Finder 1.0 - Identify High-Probability Trading Zones
Unlock the power of Fair Value Gaps (FVGs) with this advanced TradingView indicator! Designed for traders seeking high-probability setups, the Fair Value Gap Detector identifies key price imbalances on your chart, helping you spot potential reversal and continuation zones with precision.
Key Features:
Accurate FVG Detection: Automatically detects bullish and bearish Fair Value Gaps based on a proven 3-candle pattern, highlighting areas where price is likely to return.
Customizable Display: Shows the most recent 3 FVGs by default (combined bullish and bearish), with an option to adjust the number of FVGs displayed.
Visual Clarity: Draws semi-transparent boxes (green for bullish FVGs, red for bearish FVGs) that extend 15 candles to the right, making it easy to track key levels.
Versatile for All Markets: Works on any timeframe and instrument—perfect for forex, stocks, crypto, and commodities like XAU/USD (gold).
User-Friendly: Simple to use with customizable settings, ideal for both beginner and experienced traders.
How It Works:
The indicator identifies FVGs by analyzing a 3-candle pattern:
- Bullish FVG: When the high of the candle two bars back is below the low of the current candle.
- Bearish FVG: When the low of the candle two bars back is above the high of the current candle. These gaps often act as magnets for price, making them powerful zones for trading strategies like breakouts, pullbacks, or reversals.
Why Use This Indicator?
- Enhance your technical analysis with a proven concept used by institutional traders.
- Spot high-probability trading opportunities with clear visual cues.
- Save time by automating FVG detection—no manual drawing required.
Best Practices:
- Use on lower timeframes (e.g., 15-minute or 1-hour) for more frequent FVGs, especially in volatile markets like forex or crypto.
- Combine with other indicators (e.g., support/resistance, volume) for confirmation.
- Ideal for strategies like ICT (Inner Circle Trader) concepts, Smart Money trading, and price action analysis.
Regards,
Trader Riaz
D|W|M|Y Breaks with NY TimezoneThis indicator plots breaks for multiple timeframes: Daily, Weekly, Monthly, Quarterly, Half Yearly, Yearly.
I also added the option to change timezone to New York to see the week the ICT way ;)