ICT 9:30am First FVGThis indicator is designed based on ICT (Inner Circle Trader)'s algorithmic price action theory, specifically targeting the first fair value gap (FVG) that forms immediately after the New York Stock Exchange opens at 9:30am. The FVG represents an imbalance in the price delivery where a significant price action gap occurs, which can play a crucial role in future price movements.
Features:
Identification of First FVG: Automatically identifies and plots the first fair value gap that forms post the 9:30am NY open.
Customizable Visualization: Choose between block or line styles for visual representation, with customizable colors and border styles.
Date Labeling: Optionally displays date labels for each identified gap to track patterns over time.
Imbalance Extension: Options to extend the imbalances to the current bar, helping to visualize their influence on ongoing price action.
Purpose:
The first fair value gap formed after the market opens is an important algorithmic price range in ICT's price action theory. This indicator simplifies the identification of these critical gaps and helps in understanding their impact on future price action.
ค้นหาในสคริปต์สำหรับ "imbalance"
ICT Killzones Toolkit [LuxAlgo]The ICT Killzones Toolkit is a comprehensive set of tools designed to assist traders in identifying key trading zones and patterns within the market.
The ICT Killzones Toolkit includes the following Price Action components:
ICT Killzones with Pivot Highs/Lows
Order Blocks
Breaker Blocks
Fair Value Gaps
Market Structure Shifts
By combining these components, the ICT Killzones Toolkit provides traders with a comprehensive framework for analyzing the market and identifying setups of interest. Leveraging these tools effectively can enhance traders' decision-making process and improve killzones interpretability.
🔶 USAGE
In forex/futures trading, timing is crucial. ICT Killzone are specific periods when there's a higher chance of finding setups of interest. Mastering these time intervals can offer significant advantages to traders who know how to use them effectively.
The image above highlights a potential setup of interest when using the ICT Killzones Toolkit.
As another example for utilizing the ICT Killzones Toolkit, we can see in the image above when price retests setups generated from killzones such as Order Blocks or Fair Value Gaps, a potential strategy could be to look for entries on those & take profits as the next killzone appears.
🔹 Order Blocks
Order Blocks are sections on a price chart where notable buying or selling activity has occured, often signaling interest zones for institutional traders. This toolkit's Order Blocks component pinpoints these areas within the Killzone, which may act as potential support or resistance levels.
🔹 Breaker Blocks
Breaker Blocks are zones built from mitigated order blocks, and highlight zones on the chart where price has previously stalled or reversed. These areas may act as significant barriers to price movement in the future, and the Breaker Blocks component helps traders identify them for potential trading opportunities.
🔹 Fair Value Gaps
Fair value gaps are especially favored by price action traders and arise from market inefficiencies or imbalances, typically when buying and selling are unequal. These gaps often attract price movement before resuming in the same direction. the Fair Value Gaps component of the toolkit helps traders identify and analyze them.
🔹 Market Structure Shifts
Market Structure Shifts refer to significant changes in the overall structure of the market, such as shifts in trend direction, volatility, or trading activity. These shifts can provide valuable insights into market sentiment and potential trading opportunities, and the Market Structure Shifts component helps traders identify and interpret them.
Overall, the ICT Killzone Toolkit combines these components to provide traders with a comprehensive framework for analyzing the markets and identifying high-probability trading setups.
🔶 SETTINGS
🔹 ICT Killzones
Asian, London Open, New York, and London Close: toggles the visibility of specific Killzones, allowing users to customize time periods and Killzone colors.
Killzone Lines : Top/Bottom, Mean and Extend Top/Bottom: toggles the visibility of the Killzone's pivot high and low lines, mean (average) line, and allows users to extend the pivot lines.
Killzone Labels: Toggles the visibility of the Killzone labels.
Display Killzones within Timeframes Up To: Toggles the visibility of the Killzones up to selected Timeframes.
Open Price, Separator, Label, and Color: toggles the visibility of the open price of the Killzones or for the day, week, or month. If the day, week, or month is selected, a separator will be displayed to highlight the beginning of each respective period. Additionally, users can customize the color and toggle the label as needed.
🔹 Order Blocks & Breaker Blocks
Order Blocks | Breaker Blocks: toggles the visibility of the order blocks & breaker blocks.
Swing Detection Length: lookback period used for the detection of the swing points used to create order blocks & breaker blocks.
Mitigation Price: allows users to select between closing price or wick of the candle.
Use Candle Body in Detection: allows users to use candle bodies as order block areas instead of the full candle range.
Remove Mitigated Order Blocks & Breaker Blocks: toggles the visibility of the mitigated order blocks & breaker blocks.
Extend Order Blocks & Breaker Blocks: enables processing of the order blocks & breaker blocks beyond the boundaries of the killzones.
Display Order Blocks & Breaker Blocks: enables the display of the first, last, or all occurrences of the order blocks & breaker blocks.
Order Blocks : Bullish, Bearish Color: color customization option for order blocks.
Breaker Blocks : Bullish, Bearish Color: color customization option for breaker blocks.
Show Order Blocks & Breaker Blocks Text: toggles the visibility of the order blocks & breaker blocks labels.
🔹 Market Structure Shifts
Market Structure Shifts: toggles the visibility of the market structure shifts.
Detection Length: market structure shift detection length.
Display Market Structure Shifts: enables the display of the first, last, or all occurrences of the market structure shifts.
Market Structure Shifts : Bullish, Bearish Color: color custumization option for market structure shifts.
Show Market Structure Shifts Text: toggles the visibility of the market structure shifts labels.
🔹 Fair Value Gaps
Fair Value Gaps: toggles the visibility of the fair value gaps.
Fair Value Gap Width Filter: filtering threshold wile detecting fair value gaps.
Remove Mitigated Fair Value Gaps: removes mitigated fair value gaps.
Extend Fair Value Gaps: enables processing of the fair value gaps beyond the boundaries of the killzones.
Display Fair Value Gaps: enables the display of the first, last, or all occurrences of the fair value gaps.
Bullish Imbalance Color: color customization option.
Bearish Imbalance Color: color customization option.
Show Fair Value Gaps Text: toggles the visibility of the fair value gaps labels.
🔶 RELATED SCRIPTS
Smart-Money-Concepts
Order-Blocks-Breaker-Blocks
Thanks to our community for recommending this script. For more conceptual scripts and related content, we welcome you to explore by visiting >>> LuxAlgo-Scripts .
Fair Value Gap [LuxAlgo]Fair value gaps (FVG) highlight imbalances areas between market participants and have become popular amongst technical analysts. The following script aims to display fair value gaps alongside the percentage of filled gaps and the average duration (in bars) before gaps are filled.
Users can be alerted when an FVG is filled using the alerts built into this script.
🔶 USAGE
In practice, FVG's highlight areas of support (bullish FVG) and resistances (bearish FVG). Once a gap is filled, suggesting the end of the imbalance, we can expect the price to reverse.
This approach is more contrarian in nature, users wishing to use a more trend-following approach can use the identification of FVG as direct signals, going long with the identification of a bullish FVG, and short with a bearish FVG.
🔹 Mitigation
By default, the script highlights the areas of only unmitigated FVG's. Users can however highlight the mitigation level of mitigated FVG's, that is the lower extremity of bullish FVG's and the upper extremity of bearish FVG's.
The user can track the evolution of a mitigated FVG's using the "Dynamic" setting.
🔹 Threshold
The gap height can be used to determine the degree of imbalance between buying and selling market participants. Users can filter fair value gaps based on the gap height using the "Threshold %" setting. Using the "Auto" will make use of an automatic threshold, only keeping more volatile FVG's.
🔶 DETAILS
We use the following rules for detecting FVG's in this script:
Bullish FVG
low > high(t-2)
close(t-1) > high(t-2)
(low - high(t-2)) / high(t-2) > threshold
Upper Bullish FVG = low
Lower Bullish FVG = high(t-2)
Bearish FVG
high < low(t-2)
close(t-1) < low(t-2)
(low(t-2) - high) / high < -threshold
Upper Bearish FVG = low(t-2)
Lower Bearish FVG = high
🔶 SETTINGS
Threshold %: Threshold percentage used to filter our FVG's based on their height.
Auto Threshold: Use the cumulative mean of relative FVG heights as threshold.
Unmitigatted Levels: Extent the mitigation level of the number of unmitigated FVG's set by the user.
Mitigation Levels: Show the mitigation levels of mitigated FVG's.
Timeframe : Timeframe of the price data used to detect FVG's.
Rally/Drop Market Structure (Multi-Timeframe)Rally/Drop Market Structure
Supply and Demand Zones from Bullish/Bearish Breaks
Overview:
The Rally/Drop Market Structure indicator is a powerful price action tool that identifies key structural turning points in the market by detecting bullish and bearish breaks . After each confirmed break, it plots either a demand zone (following a bullish break or rally) or a supply zone (following a bearish break or drop). These zones represent institutional footprints — areas where price is likely to react due to imbalance or unfilled orders.
The indicator is based on synthetic higher timeframe (HTF) candles to provide a more stable and smoothed structural map, improving clarity and signal quality over raw candles.
How It Works:
- A bullish break is defined when price makes a higher high and a higher low (or closes above the previous high depending on your selected mode).
- A bearish break is defined when price makes a lower high and a lower low (or closes below the previous low).
- After a bullish break, the indicator plots a demand zone based on the low and high of the most recent bearish candle — representing where demand stepped in.
- After a bearish break, the indicator plots a supply zone from the most recent bullish candle — indicating where supply took control.
- Optional mitigation logic marks zones as mitigated (or deletes them) once price trades into the opposing side.
- Internal shift detection highlights swing highs and lows , labels structural points (HH, HL, LH, LL), and identifies potential liquidity sweeps .
Features:
- Dynamic plotting of rally-based demand zones and drop-based supply zones
- Toggle to use Highs/Lows or Close-based breaks for structure
- Support for LTF, MTF, and HTF analysis (with selectable timeframe)
- Zone mitigation logic with optional automatic cleanup
- Labeling of key swing points: HH , HL , LH , LL , and LS (Liquidity Sweep)
- Zigzag visualization for structure flow
- Alert-ready for internal shifts, BoS, and zone creation
- Separate styling options for BoS lines, internal shift shapes, and zone colors
How to Use:
- Set your desired HTF candle source (e.g., 1H or 4H) depending on your trading style.
- Use Highs/Lows mode for pure price action structure or Close mode for more conservative signals.
- Observe when a bullish break occurs — a demand zone will form where price previously dropped before rallying. Look for long opportunities if price revisits this zone.
- After a bearish break , a supply zone forms where the rally failed — use this to scout short entries on retests.
- Use BoS lines to confirm structure shifts and validate entry triggers or trend direction.
- Monitor mitigated zones for reduced reliability or avoid them completely by enabling automatic deletion.
- Use alerts to stay notified about key changes without watching the chart constantly.
Recommended Strategies:
- Smart money or ICT-style trading : identify institutional footprints and mitigation setups
- Reversal trading : catch price rejecting off unmitigated zones after structure break
- Trend continuation : enter in the direction of internal structure after pullbacks into zones
- Liquidity sweep confirmation : filter out false breaks using HH/LL with LS detection
Tips:
- Combine this indicator with a higher timeframe bias tool (e.g., moving average, higher timeframe market structure).
- For scalping, use tighter HTFs and reduce the zone duration.
- For swing trading, use larger HTFs (1H, 4H, Daily) and increase zone persistence.
Summary:
The Rally/Drop Market Structure indicator gives you an actionable framework for understanding price structure, market intent, and supply/demand imbalances. Whether you're looking for precision entries, trend confirmation, or smart money concepts, this tool helps simplify complex price behavior into clean, usable structure and zones.
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.
TJR SEEK AND DESTROYTJR SEEK AND DESTROY – Intraday ICT Trading Tool
Built for day traders, TJR SEEK AND DESTROY combines Smart Money concepts like order blocks, fair value gaps, and liquidity sweeps with structure breaks and daily bias to pinpoint high-probability trades during US market hours (9:30–16:00). Ideal for scalping or intraday strategies on stocks, futures, or forex.
What Makes It Unique?
Unlike standalone ICT indicators, this script integrates:
Order Blocks with volume and range filters for precise support/resistance zones.
Fair Value Gaps (FVG) to spot pre-market price imbalances.
Break of Structure (BOS) and Liquidity Sweeps for trend and reversal signals.
A 1H MA-based Bias to align trades with the day’s direction.
BUY/SELL Labels triggered only when bias, BOS, and sweeps align, reducing noise.
How Does It Work?
Order Blocks: Marks zones with high volume (>1.5x 20-period SMA) and low range (<0.5x ATR20) as teal boxes—potential reversal points.
Fair Value Gap: Compares the prior day’s close to the current open (pre- or post-9:30), shown as a purple line and label (e.g., "FVG: 0.005").
Pivot Point: Calculates (prevHigh + prevLow + prevClose) / 3 from the prior day, plotted as an orange line for equilibrium.
Break of Structure: Detects crossovers of 5-bar highs/lows (gray lines), marked with red triangles.
Liquidity Sweeps: Tracks breaches of the prior day’s high/low (yellow lines), marked with yellow triangles.
Daily Bias: Uses 1H close vs. 20-period MA (blue line) for bullish (green background), bearish (red), or neutral (gray) context.
Signals: BUY (green label) when bias is bullish, price breaks up, and sweeps the prior high; SELL (red label) when bias is bearish, price breaks down, and sweeps the prior low.
How to Use It
Setup: Apply to 1M–15M charts for US session trading (9:30–16:00 EST).
Trading:
Wait for a BUY label after a yellow sweep triangle above the prior day’s high in a green (bullish) background.
Wait for a SELL label after a yellow sweep triangle below the prior day’s low in a red (bearish) background.
Use order blocks (teal boxes) as support/resistance for stop-loss or take-profit.
Markets: Best for SPY, ES futures, or forex pairs with US session volatility.
Underlying Concepts
Order Blocks: High-volume, low-range bars suggest institutional activity.
FVG: Gaps between close and open indicate imbalance to be filled.
BOS & Sweeps: Price breaking key levels signals momentum or stop-hunting.
Bias: 1H MA filters trades by broader trend.
Chart Setup
Displays order blocks (teal boxes), pivot (orange), open (purple), bias (colored background), BOS/sweeps (triangles), and signals (labels). Keep other indicators off for clarity.
Intrabar Volume Distribution [BigBeluga]Intrabar Volume Distribution is an advanced volume and order flow indicator that visualizes the buy and sell volume distribution within each candlestick.
🔔 Before Use:
Turn off the background color of your candles for clear visibility.
Overlay the indicator on the top layout to ensure accurate alignment with the price chart.
🔵 Key Features:
Inside Bar Volume Visualization:
Each candlestick is divided into two columns:
Left column displays the sell % volume amount.
Right column displays the buy % volume amount.
Provides a clear representation of buyer-seller activity within individual bars.
Percentage Volume Labels:
Labels above each bar show the percentage share of sell and buy volume relative to the total (100%).
Quickly assess market sentiment and volume imbalances.
Point of Control (POC) Levels:
Orange dashed lines mark the POC inside each bar, indicating the price level with the highest traded volume.
Helps identify key liquidity zones within individual candlesticks.
Multi-Timeframe Volume Analysis:
The indicator automatically uses a timeframe 20-30 times lower than the current one to gather detailed volume data.
For each higher timeframe candle, it collects 20-30 bars of lower timeframe data for precise volume mapping.
Each bar is divided into 100 volume bins to capture detailed volume distribution across the price range.
Bins are filled based on the aggregated volume from the lower timeframe data.
Lookback Period:
Allows traders to select how many bars to display with delta and volume information.
The beginning of the selected lookback period is marked with a gray line and label for quick reference.
Indicator displays up to 80 bars back
🔵 Usage:
Order Flow Analysis: Monitor buy/sell volume distribution to spot potential reversals or continuations.
Liquidity Identification: Use POC levels to locate areas of strong market interest and potential support/resistance.
Volume Imbalance Detection: Pay attention to percentage labels for quick recognition of buyer or seller dominance.
Scalping & Intraday Trading: Ideal for traders seeking real-time insight into order flow and volume behavior.
Historical Analysis: Adjust the lookback period to analyze past price action and volume activity.
Intrabar Volume Distribution is a powerful tool for traders aiming to gain deeper insight into market sentiment through detailed volume analysis, allowing for more informed trading decisions based on real-time order flow dynamics.
Bull/Bear FVG Density RatioThis indicator tracks the directional frequency of Fair Value Gaps (FVGs) over a configurable lookback window, offering a clean, responsive measure of market imbalance.
🔍 What It Does:
Detects bullish and bearish FVGs using a 3-bar displacement logic
Calculates the ratio of FVGs to candles over the last N bars
Plots separate density curves for bullish and bearish FVGs
Includes a threshold line to help identify regime shifts (e.g., drought vs spate)
📈 How to Use:
Use rising density to confirm trend strength or breakout momentum
Watch for crossovers above the threshold to signal active imbalance regimes
Combine with price action or volume overlays for high-confluence setups
⚙️ Inputs:
Lookback Window: Number of candles used to calculate FVG density
Threshold: Visual guide for regime classification (default: 0.2)
This tool is ideal for traders who want to move beyond symptomatic signals and model structural causality. It pairs well with lifecycle scoring, retest velocity, and HTF overlays.
Smart Money Flow Index (SMFI) - Advanced SMC [PhenLabs]📊Smart Money Flow Index (SMFI)
Version: PineScript™v6
📌Description
The Smart Money Flow Index (SMFI) is an advanced Smart Money Concepts implementation that tracks institutional trading behavior through multi-dimensional analysis. This comprehensive indicator combines volume-validated Order Block detection, Fair Value Gap identification with auto-mitigation tracking, dynamic Liquidity Zone mapping, and Break of Structure/Change of Character detection into a unified system.
Unlike basic SMC indicators, SMFI employs a proprietary scoring algorithm that weighs five critical factors: Order Block strength (validated by volume), Fair Value Gap size and recency, proximity to Liquidity Zones, market structure alignment (BOS/CHoCH), and multi-timeframe confluence. This produces a Smart Money Score (0-100) where readings above 70 represent optimal institutional setup conditions.
🚀Points of Innovation
Volume-Validated Order Block Detection – Only displays Order Blocks when formation candle exceeds customizable volume multiplier (default 1.5x average), filtering weak zones and highlighting true institutional accumulation/distribution
Auto-Mitigation Tracking System – Fair Value Gaps and Order Blocks automatically update status when price mitigates them, with visual distinction between active and filled zones preventing trades on dead levels
Proprietary Smart Money Score Algorithm – Combines weighted factors (OB strength 25%, FVG proximity 20%, Liquidity 20%, Structure 20%, MTF 15%) into single 0-100 confidence rating updating in real-time
ATR-Based Adaptive Calculations – All distance measurements use 14-period Average True Range ensuring consistent function across any instrument, timeframe, or volatility regime without manual recalibration
Dynamic Age Filtering – Automatically removes liquidity levels and FVGs older than configurable thresholds preventing chart clutter while maintaining relevant levels
Multi-Timeframe Confluence Integration – Analyzes higher timeframe bias with customizable multipliers (2-10x) and incorporates HTF trend direction into Smart Money Score for institutional alignment
🔧Core Components
Order Block Engine – Detects institutional supply/demand zones using characteristic patterns (down-move-then-strong-up for bullish, up-move-then-strong-down for bearish) with minimum volume threshold validation, tracks mitigation when price closes through zones
Fair Value Gap Scanner – Identifies price imbalances where current candle's low/high leaves gap with two-candle-prior high/low, filters by minimum size percentage, monitors 50% fill for mitigation status
Liquidity Zone Mapper – Uses pivot high/low detection with configurable lookback to mark swing points where stop losses cluster, extends horizontal lines to visualize sweep targets, manages lifecycle through age-based removal
Market Structure Analyzer – Tracks pivot progression to identify trend through higher-highs/higher-lows (bullish) or lower-highs/lower-lows (bearish), detects Break of Structure and Change of Character for trend/reversal confirmation
Scoring Calculation Engine – Evaluates proximity to nearest Order Blocks using ATR-normalized distance, assesses FVG recency and distance, calculates liquidity proximity with age weighting, combines structure bias and MTF trend into smoothed final score
🔥Key Features
Customizable Display Limits – Control maximum Order Blocks (1-10), Liquidity Zones (1-10), and FVG age (10-200 bars) to maintain clean charts focused on most relevant institutional levels
Gradient Strength Visualization – All zones render with transparency-adjustable coloring where stronger/newer zones appear more solid and weaker/older zones fade progressively providing instant visual hierarchy
Educational Label System – Optional labels identify each zone type (Bullish OB, Bearish OB, Bullish FVG, Bearish FVG, BOS) with color-coded text helping traders learn SMC concepts through practical application
Real-Time Smart Money Score Dashboard – Top-right table displays current score (0-100) with color coding (green >70, yellow 30-70, red <30) plus trend arrow for at-a-glance confidence assessment
Comprehensive Alert Suite – Configurable notifications for Order Block formation, Fair Value Gap detection, Break of Structure events, Change of Character signals, and high Smart Money Score readings (>70)
Buy/Sell Signal Integration – Automatically plots triangle markers when Smart Money Score exceeds 70 with aligned market structure and fresh Order Block detection providing clear entry signals
🎨Visualization
Order Block Boxes – Shaded rectangles extend from formation bar spanning high-to-low of institutional candle, bullish zones in green, bearish in red, with customizable transparency (80-98%)
Fair Value Gap Zones – Rectangular areas marking imbalances, active FVGs display in bright colors with adjustable transparency, mitigated FVGs switch to gray preventing trades on filled zones
Liquidity Level Lines – Dashed horizontal lines extend from pivot creation points, swing highs in bearish color (short targets above), swing lows in bullish color (long targets below), opacity decreases with age
Structure Labels – "BOS" labels appear above/below price when Break of Structure confirmed, colored by direction (green bullish, red bearish), positioned at 1% beyond highs/lows for visibility
Educational Info Panel – Bottom-right table explains key terminology (OB, FVG, BOS, CHoCH) and score interpretation (>70 high probability) with semi-transparent background for readability
📖Usage Guidelines
General Settings
Show Order Blocks – Default: On, toggles visibility of institutional supply/demand zones, disable when focusing solely on FVGs or Liquidity
Show Fair Value Gaps – Default: On, controls FVG zone display including active and mitigated imbalances
Show Liquidity Zones – Default: On, manages liquidity line visibility, disable on lower timeframes to reduce clutter
Show Market Structure – Default: On, toggles BOS/CHoCH label display
Show Smart Money Score – Default: On, controls score dashboard visibility
Order Block Settings
OB Lookback Period – Default: 20, Range: 5-100, controls bars scanned for Order Block patterns, lower values detect recent activity, higher values find older blocks
Min Volume Multiplier – Default: 1.5, Range: 1.0-5.0, sets minimum volume threshold as multiple of 20-period average, higher values (2.0+) filter for strongest institutional candles
Max Order Blocks to Display – Default: 3, Range: 1-10, limits simultaneous Order Blocks shown, lower settings (1-3) maintain focus on most recent zones
Fair Value Gap Settings
Min FVG Size (%) – Default: 0.3, Range: 0.1-2.0, defines minimum gap size as percentage of close price, lower values detect micro-imbalances, higher values focus on significant gaps
Max FVG Age (bars) – Default: 50, Range: 10-200, removes FVGs older than specified bars, lower settings (10-30) for scalping, higher (100-200) for swing trading
Show FVG Mitigation – Default: On, displays filled FVGs in gray providing visual history, disable to show only active untouched imbalances
Liquidity Zone Settings
Liquidity Lookback – Default: 50, Range: 20-200, sets pivot detection period for swing highs/lows, lower values (20-50) mark shorter-term liquidity, higher (100-200) identify major swings
Max Liquidity Age (bars) – Default: 100, Range: 20-500, removes liquidity lines older than specified bars, adjust based on timeframe
Liquidity Sensitivity – Default: 0.5, Range: 0.1-1.0, controls pivot detection sensitivity, lower values mark only major swings, higher values identify minor swings
Max Liquidity Zones to Display – Default: 3, Range: 1-10, limits total liquidity levels shown maintaining chart clarity
Market Structure Settings
Pivot Length – Default: 5, Range: 3-15, defines bars to left/right for pivot validation, lower values (3-5) create sensitive structure breaks, higher (10-15) filter for major shifts
Min Structure Move (%) – Default: 1.0, Range: 0.1-5.0, sets minimum percentage move required between pivots to confirm structure change
Multi-Timeframe Settings
Enable MTF Analysis – Default: On, activates higher timeframe trend analysis incorporation into Smart Money Score
Higher Timeframe Multiplier – Default: 4, Range: 2-10, multiplies current timeframe to determine analysis timeframe (4x on 15min = 1hour)
Visual Settings
Bullish Color – Default: Green (#089981), sets color for bullish Order Blocks, FVGs, and structure elements
Bearish Color – Default: Red (#f23645), defines color for bearish elements
Neutral Color – Default: Gray (#787b86), controls color of mitigated zones and neutral elements
Show Educational Labels – Default: On, displays text labels on zones identifying type (OB, FVG, BOS), disable once familiar with patterns
Order Block Transparency – Default: 92, Range: 80-98, controls Order Block box transparency
FVG Transparency – Default: 92, Range: 80-98, sets Fair Value Gap zone transparency independently from Order Blocks
Alert Settings
Alert on Order Block Formation – Default: On, triggers notification when new volume-validated Order Block detected
Alert on FVG Formation – Default: On, sends alert when Fair Value Gap appears enabling quick response to imbalances
Alert on Break of Structure – Default: On, notifies when BOS or CHoCH confirmed
Alert on High Smart Money Score – Default: On, alerts when Smart Money Score crosses above 70 threshold indicating high-probability setup
✅Best Use Cases
Order Block Retest Entries – After Break of Structure, wait for price retrace into fresh bullish Order Block with Smart Money Score >70, enter long on zone reaction targeting next liquidity level
Fair Value Gap Retracement Trading – When price creates FVG during strong move then retraces, enter as price approaches unfilled gap expecting institutional orders to continue trend
Liquidity Sweep Reversals – Monitor price approaching swing high/low liquidity zones against prevailing Smart Money Score trend, after stop hunt sweep watch for rejection into premium Order Block/FVG
Multi-Timeframe Confluence Setups – Identify alignment when current timeframe Order Block coincides with higher timeframe FVG plus MTF analysis showing matching trend bias
Break of Structure Continuations – After BOS confirms trend direction, trade pullbacks to nearest Order Block or FVG in direction of structure break using Smart Money Score >70 as entry filter
Change of Character Reversal Plays – When CHoCH detected indicating potential reversal, look for Smart Money Score pivot with opposing Order Block formation then enter on structure confirmation
⚠️Limitations
Lagging Pivot Calculations – Pivot-based features (Liquidity Zones, Market Structure) require bars to right of pivot for confirmation, meaning these elements identify levels retrospectively with delay equal to lookback period
Whipsaw in Ranging Markets – During choppy conditions, Order Blocks fail frequently and structure breaks produce false signals as Smart Money Score fluctuates without clear institutional bias, best used in trending markets
Volume Data Dependency – Order Block volume validation requires accurate volume data which may be incomplete on Forex pairs or limited in crypto exchange feeds
Subjectivity in Scoring Weights – Proprietary 25-20-20-20-15 weighting reflects general institutional behavior but may not optimize for specific instruments or market regimes, user cannot adjust factor weights
Visual Complexity on Lower Timeframes – Sub-hour timeframes generate excessive zones creating cluttered charts, requires aggressive display limit reduction and higher minimum thresholds
No Fundamental Integration – Indicator analyzes purely technical price action and volume without incorporating economic events, news catalysts, or fundamental shifts that override technical levels
💡What Makes This Unique
Unified SMC Ecosystem – Unlike indicators displaying Order Blocks OR FVGs OR Liquidity separately, SMFI combines all three institutional concepts plus market structure into single cohesive system
Proprietary Confidence Scoring – Rather than manual setup assessment, automated Smart Money Score quantifies probability by weighting five institutional dimensions into actionable 0-100 rating
Volume-Filtered Quality – Eliminates weak Order Blocks forming without institutional volume confirmation, ensuring displayed zones represent genuine accumulation/distribution
Adaptive Lifecycle Management – Automatically updates mitigation status and removes aged zones preventing trades on dead levels through continuous validity and age monitoring
Educational Integration – Built-in tooltips, labeled zones, and reference panel make indicator functional for both learning Smart Money Concepts and executing strategies
🔬How It Works
Order Block Detection – Scans for patterns where strong directional move follows counter-move creating last down-candle before rally (bullish OB) or last up-candle before sell-off (bearish OB), validates formations only when candle exhibits volume exceeding configurable multiple (default 1.5x) of 20-bar average volume
Fair Value Gap Identification – Compares current candle’s high/low against two-candles-prior low/high to detect price imbalances, calculates gap size as percentage of close and filters micro-gaps below minimum threshold (default 0.3%), monitors whether subsequent price fills 50% triggering mitigation status
Liquidity Zone Mapping – Employs pivot detection using configurable lookback (default 50 bars) to identify swing highs/lows where retail stops cluster, extends horizontal reference lines from pivot creation and applies age-based filtering to remove stale zones
Market Structure Analysis – Tracks pivot progression using structure-specific lookback (default 5 bars) to determine trend, confirms uptrend when new pivot high exceeds previous by minimum move percentage, detects Break of Structure when price breaks recent pivot level, flags Change of Character for potential reversals
Multi-Timeframe Confluence – When enabled, requests security data from higher timeframe (current TF × HTF multiplier, default 4x), compares HTF close against HTF 20-period MA to determine bias, contributes ±50 points to score ensuring alignment with institutional positioning on superior timeframe
Smart Money Score Calculation – Evaluates Order Block component via ATR-normalized distance producing max 100-point contribution weighted at 25%, assesses FVG factor through age penalty and distance at 20% weight, calculates Liquidity proximity at 20%, incorporates structure bias (±50-100 points) at 20%, adds MTF component at 15%, applies 3-period smoothing to reduce volatility
Visual Rendering and Lifecycle – Draws Order Block boxes, Fair Value Gap rectangles with color coding (green/red active, gray mitigated), extends liquidity dashed lines with fade-by-age opacity, plots BOS labels, displays Smart Money Score dashboard, continuously updates checking mitigation conditions and removing elements exceeding age/display limits
💡Note:
The Smart Money Flow Index combines multiple Smart Money Concepts into unified institutional order flow analysis. For optimal results, use the Smart Money Score as confluence filter rather than standalone entry signal – scores above 70 indicate high-probability setups but should be combined with risk management, higher timeframe bias, and market regime understanding.
Kalman VWAP Filter [BackQuant]Kalman VWAP Filter
A precision-engineered price estimator that fuses Kalman filtering with the Volume-Weighted Average Price (VWAP) to create a smooth, adaptive representation of fair value. This hybrid model intelligently balances responsiveness and stability, tracking trend shifts with minimal noise while maintaining a statistically grounded link to volume distribution.
If you would like to see my original Kalman Filter, please find it here:
Concept overview
The Kalman VWAP Filter is built on two core ideas from quantitative finance and control theory:
Kalman filtering — a recursive Bayesian estimator used to infer the true underlying state of a noisy system (in this case, fair price).
VWAP anchoring — a dynamic reference that weights price by traded volume, representing where the majority of transactions have occurred.
By merging these concepts, the filter produces a line that behaves like a "smart moving average": smooth when noise is high, fast when markets trend, and self-adjusting based on both market structure and user-defined noise parameters.
How it works
Measurement blend : Combines the chosen Price Source (e.g., close or hlc3) with either a Session VWAP or a Rolling VWAP baseline. The VWAP Weight input controls how much the filter trusts traded volume versus price movement.
Kalman recursion : Each bar updates an internal "state estimate" using the Kalman gain, which determines how much to trust new observations vs. the prior state.
Noise parameters :
Process Noise controls agility — higher values make the filter more responsive but also more volatile.
Measurement Noise controls smoothness — higher values make it steadier but slower to adapt.
Filter order (N) : Defines how many parallel state estimates are used. Larger orders yield smoother output by layering multiple one-dimensional Kalman passes.
Final output : A refined price trajectory that captures VWAP-adjusted fair value while dynamically adjusting to real-time volatility and order flow.
Why this matters
Most smoothing techniques (EMA, SMA, Hull) trade off lag for smoothness. Kalman filtering, however, adaptively rebalances that tradeoff each bar using probabilistic weighting, allowing it to follow market state changes more efficiently. Anchoring it to VWAP integrates microstructure context — capturing where liquidity truly lies rather than only where price moves.
Use cases
Trend tracking : Color-coded candle painting highlights shifts in slope direction, revealing early trend transitions.
Fair value mapping : The line represents a continuously updated equilibrium price between raw price action and VWAP flow.
Adaptive moving average replacement : Outperforms static MAs in variable volatility regimes by self-adjusting smoothness.
Execution & reversion logic : When price diverges from the Kalman VWAP, it may indicate short-term imbalance or overextension relative to volume-adjusted fair value.
Cross-signal framework : Use with standard VWAP or other filters to identify convergence or divergence between liquidity-weighted and state-estimated prices.
Parameter guidance
Process Noise : 0.01–0.05 for swing traders, 0.1–0.2 for intraday scalping.
Measurement Noise : 2–5 for normal use, 8+ for very smooth tracking.
VWAP Weight : 0.2–0.4 balances both price and VWAP influence; 1.0 locks output directly to VWAP dynamics.
Filter Order (N) : 3–5 for reactive short-term filters; 8–10 for smoother institutional-style baselines.
Interpretation
When price > Kalman VWAP and slope is positive → bullish pressure; buyers dominate above fair value.
When price < Kalman VWAP and slope is negative → bearish pressure; sellers dominate below fair value.
Convergence of price and Kalman VWAP often signals equilibrium; strong divergence suggests imbalance.
Crosses between Kalman VWAP and the base VWAP can hint at shifts in short-term vs. long-term liquidity control.
Summary
The Kalman VWAP Filter blends statistical estimation with market microstructure awareness, offering a refined alternative to static smoothing indicators. It adapts in real time to volatility and order flow, helping traders visualize balance, transition, and momentum through a lens of probabilistic fair value rather than simple price averaging.
Smart Money Dynamics Blocks — Pearson MatrixSmart Money Dynamics Blocks — Pearson Matrix
A structural fusion of Prime Number Theory, Pearson Correlation, and Cumulative Delta Geometry.
1. Mathematical Foundation
This indicator is built on the intersection of Prime Number Theory and the Pearson correlation coefficient, creating a structural framework that quantifies how price and time evolve together.
Prime numbers — unique, indivisible, and irregular — are used here as nonlinear time intervals. Each prime length (2, 3, 5, 7, 11…97) represents a regression horizon where correlation is measured between price and time. The result is a multi-scale correlation lattice — a geometric matrix that captures hidden directional strength and temporal bias beyond traditional moving averages.
2. The Pearson Matrix Logic
For every prime interval p, the indicator calculates the linear correlation:
r_p = corr(price, bar_index, p)
Each r_p reflects how closely price and time move together across a prime-defined window. All r_p values are then averaged to create avgR, a single adaptive coefficient summarizing overall structural coherence.
- When avgR > 0.8 → strong positive correlation (labeled R+).
- When avgR < -0.8 → strong negative correlation (labeled R−).
This approach gives a mathematically grounded definition of trend — one that isn’t based on pattern recognition, but on measurable correlation strength.
3. Sequential Prime Slope and Median Pivot
Using the ordered sequence of 25 prime intervals, the model computes sequential slopes between adjacent primes. These slopes represent the rate of change of structure between two prime scales. A robust median aggregator smooths the slopes, producing a clean, stable directional vector.
The system anchors this slope to the 41-bar pivot — the median of the first 25 primes — serving as the geometric midpoint of the prime lattice. The resulting yellow line on the chart is not an ordinary regression line; it’s a dynamic prime-slope function, adapting continuously with correlation feedback.
4. Regression-Style Parallel Bands
Around this prime-slope line, the indicator constructs parallel bands using standard deviation envelopes — conceptually similar to a regression channel but recalculated through the prime–Pearson matrix.
These bands adjust dynamically to:
- Volatility, via standard deviation of residuals.
- Correlation strength, via avgR sign weighting.
Together, they visualize statistical deviation geometry, making it easier to observe symmetry, expansion, and contraction phases of price structure.
5. Volume and Cumulative Delta Peaks
Below the geometric layer, the indicator incorporates a custom lower-timeframe volume feed — by default using 15-second data (custom_tf_input_volume = “15S”). This allows precise delta computation between up-volume and down-volume even on higher timeframe charts.
From this feed, the indicator accumulates delta over a configurable period (default: 100 bars). When cumulative delta reaches a local maximum or minimum, peak and trough markers appear, showing the precise bar where buying or selling pressure statistically peaked.
This combination of geometry and order flow reveals the intersection of market structure and energy — where liquidity pressure expresses itself through mathematical form.
6. Chart Interpretation
The primary chart view represents the live execution of the indicator. It displays the relationship between structural correlation and volume behavior in real time.
Orange “R+” and blue “R−” labels indicate regions of strong positive or negative Pearson correlation across the prime matrix. The yellow median prime-slope line serves as the structural backbone of the indicator, while green and red parallel bands act as dynamic regression boundaries derived from the underlying correlation strength. Peaks and troughs in cumulative delta — displayed as numerical annotations — mark statistically significant shifts in buying and selling pressure.
The secondary visualization (Prime Regression Concept) expands on this by illustrating how regression behavior evolves across prime intervals. Each colored regression fan corresponds to a prime number window (2, 3, 5, 7, …, 97), demonstrating how multiple regression lines would appear if drawn independently. The indicator integrates these into one unified geometric model — eliminating the need to plot tens of regression lines manually. It’s a conceptual tool to help visualize the internal logic: the synthesis of many small-scale regressions into a single coherent structure.
7. Interpretive Insight
This model is not a prediction tool; it’s an instrument of mathematical observation. By translating price dynamics into a prime-structured correlation space, it reveals how coherence unfolds through time — not as a forecast, but as a measurable evolution of structure.
It unifies three analytical domains:
- Prime distribution — defines a nonlinear temporal architecture.
- Pearson correlation — quantifies statistical cohesion.
- Cumulative delta — expresses behavioral imbalance in order flow.
The synthesis creates a geometric analysis of liquidity and time — where structure meets energy, and where the invisible rhythm of market flow becomes measurable.
8. Contribution & Feedback
Share your observations in the comments:
- The time gap and alternation between R+ and R− clusters.
- How different timeframes change delta sensitivity or reveal compression/expansion.
- Prime intervals/clusters that tend to sit near turning points or liquidity shifts.
- How avgR behaves across assets or regimes (trending, ranging, high-vol).
- Notable interactions with the parallel bands (touches, breaks, mean-revert).
Your field notes help others read the model more effectively and compare contexts.
Summary
- Primes define the structure.
- Pearson quantifies coherence.
- Slope median stabilizes geometry.
- Regression bands visualize deviation.
- Cumulative delta locates imbalance.
Together, they construct a framework where mathematics meets market behavior.
Liquidity Pro Map [ChartPrime]⯁ OVERVIEW
Liquidity Pro Map is a market-structure tool that simulates liquidity distribution by splitting price history into buy-side and sell-side profiles. Using candle volume and the standard deviation of close, the indicator builds two mirrored volume maps on the right-hand side of the chart. It also extends liquidity levels backwards in time until they are crossed by price, allowing you to see which zones remain untouched and where liquidity is most likely resting. Cumulative skew lines and highlighted POC levels give additional clarity on imbalance between buyers and sellers.
⯁ KEY FEATURES
Dual Liquidity Profiles: The chart is divided into buy-side (green) and sell-side (red) liquidity profiles, letting you instantly compare both sides of order flow.
Level Extension Logic: Each liquidity level is extended back in time until price crosses it. If not crossed, it persists all the way to the indicator’s lookback period, marking zones that remain “untapped.”
Dynamic Binning with Standard Deviation: The indicator distributes candle volumes into bins using close-price deviation, creating a more realistic liquidity map than static price levels.
priceDeviation = ta.stdev(close, 25) * 2
priceReference = close > open ? low - priceDeviation : high + priceDeviation
Cumulative Volume Skew Lines: Polylines on the right-hand side show the aggregated buy and sell volume profiles, making it easy to spot imbalance.
POC Identification: Highest-volume levels on both sides are marked as POC (Point of Control) , providing key zones of interest.
Clear Color Coding: Gradient shading intensifies with volume concentration—dark teal/green for buy zones, dark pink/red for sell zones.
⯁ HOW IT WORKS (UNDER THE HOOD)
Volume Distribution: Each bar’s volume is assigned to a price bin based on its reference price (close ± standard deviation offset).
Buy vs. Sell Splitting: If bins above last close price, volume is allocated to sell-side liquidity; otherwise, it’s allocated to buy-side liquidity.
Level Extension: Boxes marking liquidity bins extend back until crossed by price. If uncrossed, they anchor all the way to the start of the lookback window.
Cumulative Polylines: As bins are stacked, cumulative buy and sell values form skew polylines plotted at the right edge.
POC Levels: The highest-volume bin on each side is highlighted with labels and arrows, marking where the heaviest liquidity is concentrated.
⯁ USAGE
Use buy/sell profiles to see where liquidity is likely resting. Green shelves suggest potential support zones; red shelves suggest resistance or sell liquidity pools.
Watch untouched extended levels —these often become magnets for price as liquidity is swept.
Track POC levels as primary liquidity targets, where reactions or fakeouts are most common.
Compare cumulative skew lines to judge which side dominates in volume. Heavy buy skew may indicate absorption of sell pressure, and vice versa.
Adjust lookback period to switch between intraday liquidity maps and larger swing-based profiles.
Use separator feature to hide bins borders for better visual clarity.
Use as a confluence tool with OBs, support/resistance, and liquidity sweep setups.
⯁ CONCLUSION
Liquidity Pro Map transforms candle volume into a structured simulation of where liquidity may rest across the chart. By dividing buy vs. sell profiles, extending untouched levels, and marking cumulative skew and POC, it equips traders with a clear visual map of potential liquidity pools. This allows for better anticipation of sweeps, reversals, and areas of high market activity.
DeltaFlow Volume Profile [BigBeluga]🔵 OVERVIEW
The DeltaFlow Volume Profile builds a compact volume profile next to price and enriches every bin with flow context : bullish vs. bearish participation (%), a per-bin Delta % , an optional Delta Heat Map , and a PoC band with the bin’s absolute volume. This lets you see not just where volume clustered, but who (buyers or sellers) dominated inside each price slice.
🔵 CONCEPTS
Binned Volume Profile : Price range over a user-defined LookBack is split into Bins ; each bin aggregates traded volume.
Bull/Bear Split : Within every bin, volume is separated by candle direction into Bull Volume and Bear Volume , then normalized to % of the bin’s displayed size.
Delta % : The difference between Bull % and Bear % for the bin. Positive = buyer dominance; negative = seller dominance.
Delta Heat Map : Bin background shading that scales with both total volume strength and delta bias.
PoC (Point of Control) : The most significant bin gets a PoC band and a label with its absolute volume.
🔵 FEATURES
Profile with Flow : A clean horizontal volume bar per bin plus stacked Bull % and Bear % .
Per-Bin Delta Label : A readable “Δ xx%” tag at the start of each bin shows dominance at a glance.
Delta Heat Map : Optional gradient that intensifies with higher volume and stronger delta.
PoC Highlight : Optional PoC band colored separately, labeled with absolute volume (e.g., “1.23M”).
Configurable Inputs : LookBack, number of Bins (10–100), toggles for Delta, Heat Map, Volume Bars, and PoC color.
Readable Colors : Separate inputs for bullish (volume +) and bearish (volume –) hues.
🔵 HOW TO USE
Set the window : Choose LookBack and Bins to balance detail vs. performance (more bins = finer resolution).
Enable “Volume Bars” to display the bull/bear split as two stacked percent bars inside each bin.
High Bull % near support → constructive demand.
High Bear % near resistance → active supply.
Use Δ labels (toggle “Delta”) to quickly spot bins with clear buyer/seller control; combine with price position for confluence.
Turn on Delta Heat Map to prioritize areas with both large volume and strong imbalance.
Watch the PoC : The PoC band marks the most traded (and often magnet) level; its label shows absolute size for context.
Trade ideas :
Breakout continuation when Δ stays positive across consecutive upper bins.
Reversion risk when price enters a large bearish-Δ cluster below.
Manage risk around the PoC; reactions there can be sharp.
🔵 CONCLUSION
DeltaFlow Volume Profile upgrades a classic profile with flow intelligence. The bull/bear split, explicit Δ %, heat-weighted backdrop, and PoC volume label make dominant participation and key price shelves obvious. Use it to filter levels, time entries with imbalance, and validate breakouts or fades with objective volume-flow evidence.
ATAI Volume Pressure Analyzer V 1.0 — Pure Up/DownATAI Volume Pressure Analyzer V 1.0 — Pure Up/Down
Overview
Volume is a foundational tool for understanding the supply–demand balance. Classic charts show only total volume and don’t tell us what portion came from buying (Up) versus selling (Down). The ATAI Volume Pressure Analyzer fills that gap. Built on Pine Script v6, it scans a lower timeframe to estimate Up/Down volume for each host‑timeframe candle, and presents “volume pressure” in a compact HUD table that’s comparable across symbols and timeframes.
1) Architecture & Global Settings
Global Period (P, bars)
A single global input P defines the computation window. All measures—host‑TF volume moving averages and the half‑window segment sums—use this length. Default: 55.
Timeframe Handling
The core of the indicator is estimating Up/Down volume using lower‑timeframe data. You can set a custom lower timeframe, or rely on auto‑selection:
◉ Second charts → 1S
◉ Intraday → 1 minute
◉ Daily → 5 minutes
◉ Otherwise → 60 minutes
Lower TFs give more precise estimates but shorter history; higher TFs approximate buy/sell splits but provide longer history. As a rule of thumb, scan thin symbols at 5–15m, and liquid symbols at 1m.
2) Up/Down Volume & Derived Series
The script uses TradingView’s library function tvta.requestUpAndDownVolume(lowerTf) to obtain three values:
◉ Up volume (buyers)
◉ Down volume (sellers)
◉ Delta (Up − Down)
From these we define:
◉ TF_buy = |Up volume|
◉ TF_sell = |Down volume|
◉ TF_tot = TF_buy + TF_sell
◉ TF_delta = TF_buy − TF_sell
A positive TF_delta indicates buyer dominance; a negative value indicates selling pressure. To smooth noise, simple moving averages of TF_buy and TF_sell are computed over P and used as baselines.
3) Key Performance Indicators (KPIs)
Half‑window segmentation
To track momentum shifts, the P‑bar window is split in half:
◉ C→B: the older half
◉ B→A: the newer half (toward the current bar)
For each half, the script sums buy, sell, and delta. Comparing the two halves reveals strengthening/weakening pressure. Example: if AtoB_delta < CtoB_delta, recent buying pressure has faded.
[ 4) HUD (Table) Display /i]
Colors & Appearance
Two main color inputs define the theme: a primary color and a negative color (used when Δ is negative). The panel background uses a translucent version of the primary color; borders use the solid primary color. Text defaults to the primary color and flips to the negative color when a block’s Δ is negative.
Layout
The HUD is a 4×5 table updated on the last bar of each candle:
◉ Row 1 (Meta): indicator name, P length, lower TF, host TF
◉ Row 2 (Host TF): current ↑Buy, ↓Sell, ΔDelta; plus Σ total and SMA(↑/↓)
◉ Row 3 (Segments): C→B and B→A blocks with ↑/↓/Δ
◉ Rows 4–5: reserved for advanced modules (Wings, α/β, OB/OS, Top
5) Advanced Modules
5.1 Wings
“Wings” visualize volume‑driven movement over C→B (left wing) and B→A (right wing) with top/bottom lines and a filled band. Slopes are ATR‑per‑bar normalized for cross‑symbol/TF comparability and converted to angles (degrees). Coloring mirrors HUD sign logic with a near‑zero threshold (default ~3°):
◉ Both lines rising → blue (bullish)
◉ Both falling → red (bearish)
◉ Mixed/near‑zero → gray
Left wing reflects the origin of the recent move; right wing reflects the current state.
5.2 α / β at Point B
We compute the oriented angle between the two wings at the midpoint B:
β is the bottom‑arc angle; α = 360° − β is the top‑arc angle.
◉ Large α (>180°) or small β (<180°) flags meaningful imbalance.
◉ Intuition: large α suggests potential selling pressure; small β implies fragile support. HUD cells highlight these conditions.
5.3 OB/OS Spike
OverBought/OverSold (OB/OS) labels appear when directional volume spikes align with a 7‑oscillator vote (RSI, Stoch, %R, CCI, MFI, DeMarker, StochRSI).
◉ OB label (red): unusually high sell volume + enough OB votes
◉ OS label (teal): unusually high buy volume + enough OS votes
Minimum votes and sync window are user‑configurable; dotted connectors can link labels to the candle wick.
5.4 Top3 Volume Peaks
Within the P window the script ranks the top three BUY peaks (B1–B3) and top three SELL peaks (S1–S3).
◉ B1 and S1 are drawn as horizontal resistance (at B1 High) and support (at S1 Low) zones with adjustable thickness (ticks/percent/ATR).
◉ The HUD dedicates six cells to show ↑/↓/Δ for each rank, and prints the exact High (B1) and Low (S1) inline in their cells.
6) Reading the HUD — A Quick Checklist
◉ Meta: Confirm P and both timeframes (host & lower).
◉ Host TF block: Compare current ↑/↓/Δ against their SMAs.
◉ Segments: Contrast C→B vs B→A deltas to gauge momentum change.
◉ Wings: Right‑wing color/angle = now; left wing = recent origin.
◉ α / β: Look for α > 180° or β < 180° as imbalance cues.
◉ OB/OS: Note labels, color (red/teal), and the vote count.
◉Top3: Keep B1 (resistance) and S1 (support) on your radar.
Use these together to sketch scenarios and invalidation levels; never rely on a single signal in isolation.
[ 7) Example Highlights (What the table conveys) /i]
◉ Row 1 shows the indicator name, the analysis length P (default 55), and both TFs used for computation and display.
◉ B1 / S1 blocks summarize each side’s peak within the window, with Δ indicating buyer/seller dominance at that peak and inline price (B1 High / S1 Low) for actionable levels.
◉ Angle cells for each wing report the top/bottom line angles vs. the horizontal, reflecting the directional posture.
◉ Ranks B2/B3 and S2/S3 extend context beyond the top peak on each side.
◉ α / β cells quantify the orientation gap at B; changes reflect shifting buyer/seller influence on trend strength.
Together these visuals often reveal whether the “wings” resemble a strong, upward‑tilted arm supported by buyer volume—but always corroborate with your broader toolkit
8) Practical Tips & Tuning
◉ Choose P by market structure. For daily charts, 34–89 bars often works well.
◉ Lower TF choice: Thin symbols → 5–15m; liquid symbols → 1m.
◉ Near‑zero angle: In noisy markets, consider 5–7° instead of 3°.
◉ OB/OS votes: Daily charts often work with 3–4 votes; lower TFs may prefer 4–5.
◉ Zone thickness: Tie B1/S1 zone thickness to ATR so it scales with volatility.
◉ Colors: Feel free to theme the primary/negative colors; keep Δ<0 mapped to the negative color for readability.
Combine with price action: Use this indicator alongside structure, trendlines, and other tools for stronger decisions.
Technical Notes
Pine Script v6.
◉ Up/Down split via TradingView/ta library call requestUpAndDownVolume(lowerTf).
◉ HUD‑first design; drawings for Wings/αβ/OBOS/Top3 align with the same sign/threshold logic used in the table.
Disclaimer: This indicator is provided solely for educational and analytical purposes. It does not constitute financial advice, nor is it a recommendation to buy or sell any security. Always conduct your own research and use multiple tools before making trading decisions.
Advanced ICT Theory - A-ICT📊 Advanced ICT Theory (A-ICT): The Institutional Manipulation Detector
Are you tired of being the liquidity? Stop chasing shadows and start tracking the architects of price movement.
This is not another lagging indicator. This is a complete framework for viewing the market through the lens of institutional traders. Advanced ICT Theory (A-ICT) is an all-in-one, military-grade analysis engine designed to decode the complex language of "Smart Money." It automates the core tenets of Inner Circle Trader (ICT) methodology, moving beyond simple patterns to build a dynamic, real-time narrative of market manipulation, liquidity engineering, and institutional order flow.
AIT provides a living blueprint of the market, identifying high-probability zones, tracking structural shifts, and scoring the quality of setups with a sophisticated, multi-factor algorithm. This is your X-ray into the market's true intentions.
🔬 THE CORE ENGINE: DECODING THE THEORY & FORMULAS
A-ICT is built upon a sophisticated, multi-layered logic system that interprets price action as a story of cause and effect. It does not guess; it confirms. Here is the foundational theory that drives the engine:
1. Market Structure: The Blueprint of Trend
The script first establishes a deep understanding of the market's skeleton through multi-level pivot analysis. It uses ta.pivothigh and ta.pivotlow to identify significant swing points.
Internal Structure (iBOS): Minor swings that show the short-term order flow. A break of internal structure is the first whisper of a potential shift.
External Structure (eBOS): Major swing points that define the primary trend. A confirmed break of external structure is a powerful statement of trend continuation. AIT validates this with optional Volume Confirmation (volume > volumeSMA * 1.2) and Candle Confirmation to ensure the break is driven by institutional force, not just a random spike.
Change of Character (CHoCH): This is the earthquake. A CHoCH occurs when a confirmed eBOS happens against the prevailing trend (e.g., a bearish eBOS in a clear uptrend). A-ICT flags this immediately, as it is the strongest signal that the primary trend is under threat of reversal.
2. Liquidity Engineering: The Fuel of the Market
Institutions don't buy into strength; they buy into weakness. They need liquidity. A-ICT maps these liquidity pools with forensic precision:
Buyside & Sellside Liquidity (BSL/SSL): Using ta.highest and ta.lowest, AIT identifies recent highs and lows where clusters of stop-loss orders (liquidity) are resting. These are institutional targets.
Liquidity Sweeps: This is the "manipulation" part of the detector. AIT has a specific formula to detect a sweep: high > bsl and close < bsl . This signifies that institutions pushed price just high enough to trigger buy-stops before aggressively selling—a classic "stop hunt." This event dramatically increases the quality score of subsequent patterns.
3. The Element Lifecycle: From Potential to Power
This is the revolutionary heart of A-ICT. Zones are not static; they have a lifecycle. AIT tracks this with its dynamic classification engine.
Phase 1: PENDING (Yellow): The script identifies a potential zone of interest based on a specific candle formation (a "displacement"). It is marked as "Pending" because its true nature is unknown. It is a question.
Phase 2: CLASSIFICATION: After the zone is created, AIT watches what happens next. The zone's identity is defined by its actions:
ORDER BLOCK (Blue): The highest-grade element. A zone is classified as an Order Block if it directly causes a Break of Structure (BOS) . This is the footprint of institutions entering the market with enough force to validate the new trend direction.
TRAP ZONE (Orange): A zone is classified as a Trap Zone if it is directly involved in a Liquidity Sweep . This indicates the zone was used to engineer liquidity, setting a "trap" for retail traders before a reversal.
REVERSAL / S&R ZONE (Green): If a zone is not powerful enough to cause a BOS or a major sweep, but still serves as a pivot point, it's classified as a general support/resistance or reversal zone.
4. Market Inefficiencies: Gaps in the Matrix
Fair Value Gaps (FVG): AIT detects FVGs—a 3-bar pattern indicating an imbalance—with a strict formula: low > high (for a bullish FVG) and gapSize > atr14 * 0.5. This ensures only significant, volatile gaps are shown. An FVG co-located with an Order Block is a high-confluence setup.
5. Premium & Discount: The Law of Value
Institutions buy at wholesale (Discount) and sell at retail (Premium). AIT uses a pdLookback to define the current dealing range and divides it into three zones: Premium (sell zone), Discount (buy zone), and Equilibrium. An element's quality score is massively boosted if it aligns with this principle (e.g., a bullish Order Block in a Discount zone).
⚙️ THE CONTROL PANEL: A COMPLETE GUIDE TO THE INPUTS MENU
Every setting is a lever, allowing you to tune the AIT engine to your exact specifications. Master these to unlock the script's full potential.
🎯 A-ICT Detection Engine
Min Displacement Candles: Controls the sensitivity of element detection. How it works: It defines the number of subsequent candles that must be "inside" a large parent candle. Best practice: Use 2-3 for a balanced view on most timeframes. A higher number (4-5) will find only major, more significant zones, ideal for swing trading. A lower number (1) is highly sensitive, suitable for scalping.
Mitigation Method: Defines when a zone is considered "used up" or mitigated. How it works: Cross triggers as soon as price touches the zone's boundary. Close requires a candle to fully close beyond it. Best practice: Cross is more responsive for fast-moving markets. Close is more conservative and helps filter out fake-outs caused by wicks, making it safer for confirmations.
Min Element Size (ATR): A crucial noise filter. How it works: It requires a detected zone to be at least this multiple of the Average True Range (ATR). Best practice: Keep this around 0.5. If you see too many tiny, irrelevant zones, increase this value to 0.8 or 1.0. If you feel the script is missing smaller but valid zones, decrease it to 0.3.
Age Threshold & Pending Timeout: These manage visual clutter. How they work: Age Threshold removes old, mitigated elements after a set number of bars. Pending Timeout removes a "Pending" element if it isn't classified within a certain window. Best practice: The default settings are optimized. If your chart feels cluttered, reduce the Age Threshold. If pending zones disappear too quickly, increase the Pending Timeout.
Min Quality Threshold: Your primary visual filter. How it works: It hides all elements (boxes, lines, labels) that do not meet this minimum quality score (0-100). Best practice: Start with the default 30. To see only A- or B-grade setups, increase this to 60 or 70 for an exceptionally clean, high-probability view.
🏗️ Market Structure
Lookbacks (Internal, External, Major): These define the sensitivity of the trend analysis. How they work: They set the number of bars to the left and right for pivot detection. Best practice: Use smaller values for Internal (e.g., 3) to see minor structure and larger values for External (e.g., 10-15) to map the main trend. For a macro, long-term view, increase the Major Swing Lookback.
Require Volume/Candle Confirmation: Toggles for quality control on BOS/CHoCH signals. Best practice: It is highly recommended to keep these enabled. Disabling them will result in more structure signals, but many will be false alarms. They are your filter against market noise.
... (Continue this detailed breakdown for every single input group: Display Configuration, Zones Style, Levels Appearance, Colors, Dashboards, MTF, Liquidity, Premium/Discount, Sessions, and IPDA).
📊 THE INTELLIGENCE DASHBOARDS: YOUR COMMAND CENTER
The dashboards synthesize all the complex analysis into a simple, actionable intelligence briefing.
Main Dashboard (Bottom Right)
ICT Metrics & Breakdown: This is your statistical overview. Total Elements shows how much structure the script is tracking. High Quality instantly tells you if there are any A/B grade setups nearby. Unmitigated vs. Mitigated shows the balance of fresh opportunities versus resolved price action. The breakdown by Order Blocks, Trap Zones, etc., gives you a quick read on the market's recent character.
Structure & Market Context: This is your core bias. Order Flow tells you the current script-determined trend. Last BOS shows you the most recent structural event. CHoCH Active is a critical warning. HTF Bias shows if you are aligned with the higher timeframe—the checkmark (✓) for alignment is one of the most important confluence factors.
Smart Money Flow: A volume-based sentiment gauge. Net Flow shows the raw buying vs. selling pressure, while the Bias provides an interpretation (e.g., "STRONG BULLISH FLOW").
Key Guide (Large Dashboard only): A built-in legend so you never have to guess. It defines every pattern, structure type, and special level visually.
📖 Narrative Dashboard (Bottom Left)
This is the "story" of the market, updated in real-time. It's designed to build your trading thesis.
Recent Elements Table: A live list of the most recent, high-quality setups. It displays the Type , its Narrative Role (e.g., "Bullish OB caused BOS"), its raw Quality percentage, and its final Trade Score grade. This is your at-a-glance opportunity scanner.
Market Narrative Section: This is the soul of A-ICT. It combines all data points into a human-readable story:
📍 Current Phase: Tells you if you are in a high-volatility Killzone or a consolidation phase like the Asian Range.
🎯 Bias & Alignment: Your primary direction, with a clear indicator of HTF alignment or conflict.
🔗 Events: A causal sequence of recent events, like "💧 Sell-side liquidity swept →
📊 Bullish BOS → 🎯 Active Order Block".
🎯 Next Expectation: The script's logical conclusion. It provides a specific, forward-looking hypothesis, such as "📉 Pullback expected to bullish OB at 1.2345 before continuation up."
🎨 READING THE BATTLEFIELD: A VISUAL INTERPRETATION GUIDE
Every color and line is a piece of information. Learn to read them together to see the full picture.
The Core Zones (Boxes):
Blue Box (Order Block): Highest probability zone for trend continuation. Look for entries here.
Orange Box (Trap Zone): A manipulation footprint. Expect a potential reversal after price interacts with this zone.
Green Box (Reversal/S&R): A standard pivot area. A good reference point but requires more confluence.
Purple Box (FVG): A market imbalance. Acts as a magnet for price. An FVG inside an Order Block is an A+ confluence.
The Structural Lines:
Green/Red Line (eBOS): Confirms the trend direction. A break above the green line is bullish; a break below the red line is bearish.
Thick Orange Line (CHoCH): WARNING. The previous trend is now in question. The market character has changed.
Blue/Red Lines (BSL/SSL): Liquidity targets. Expect price to gravitate towards these lines. A dotted line with a checkmark (✓) means the liquidity has been "swept" or "purged."
How to Synthesize: The magic is in the confluence. A perfect setup might look like this: Price sweeps below a red SSL line , enters a green Discount Zone during the NY Killzone , and forms a blue Order Block which then causes a green eBOS . This sequence, visible at a glance, is the story of a high-probability long setup.
🔧 THE ARCHITECT'S VISION: THE DEVELOPMENT JOURNEY
A-ICT was forged from the frustration of using lagging indicators in a market that is forward-looking. Traditional tools are reactive; they tell you what happened. The vision for A-ICT was to create a proactive engine that could anticipate institutional behavior by understanding their objectives: liquidity and efficiency. The development process was centered on creating a "lifecycle" for price patterns—the idea that a zone's true meaning is only revealed by its consequence. This led to the post-breakout classification system and the narrative-building engine. It's designed not just to show you patterns, but to tell you their story.
⚠️ RISK DISCLAIMER & BEST PRACTICES
Advanced ICT Theory (A-ICT) is a professional-grade analytical tool and does not provide financial advice or direct buy/sell signals. Its analysis is based on historical price action and probabilities. All forms of trading involve substantial risk. Past performance is not indicative of future results. Always use this tool as part of a comprehensive trading plan that includes your own analysis and a robust risk management strategy. Do not trade based on this indicator alone.
観の目つよく、見の目よわく
"Kan no me tsuyoku, ken no me yowaku"
— Miyamoto Musashi, The Book of Five Rings
English: "Perceive that which cannot be seen with the eye."
— Dskyz, Trade with insight. Trade with anticipation.
SCE Price Action SuiteThis is an indicator designed to use past market data to mark key price action levels as well as provide a different kind of insight. There are 8 different features in the script that users can turn on and off. This description will go in depth on all 8 with chart examples.
#1 Absorption Zones
I defined Absorption Zones as follows.
//----------------------------------------------
//---------------Absorption---------------------
//----------------------------------------------
box absorptionBox = na
absorptionBar = ta.highest(bodySize, absorptionLkb)
bsab = ta.barssince(bool(ta.change(absorptionBar)))
if bsab == 0 and upBar and showAbsorption
absorptionBox := box.new(left = bar_index - 1, top = close, right = bar_index + az_strcuture, bottom = open, border_color = color.rgb(0, 80, 75), border_width = boxLineSize, bgcolor = color.rgb(0, 80, 75))
absorptionBox
else if bsab == 0 and downBar and showAbsorption
absorptionBox := box.new(left = bar_index - 1, top = close, right = bar_index + az_strcuture, bottom = open, border_color = color.rgb(105, 15, 15), border_width = boxLineSize, bgcolor = color.rgb(105, 15, 15))
absorptionBox
What this means is that absorption bars are defined as the bars with the largest bodies over a selected lookback period. Those large bodies represent areas where price may react. I was inspired by the concept of a Fair Value Gap for this concept. In that body price may enter to be a point of support or resistance, market participants get “absorbed” in the area so price can continue in whichever direction.
#2 Candle Wick Theory/Strategy
I defined Candle Wick Theory/Strategy as follows.
//----------------------------------------------
//---------------Candle Wick--------------------
//----------------------------------------------
highWick = upBar ? high - close : downBar ? high - open : na
lowWick = upBar ? open - low : downBar ? close - low : na
upWick = upBar ? close + highWick : downBar ? open + highWick : na
downWick = upBar ? open - lowWick : downBar ? close - lowWick : na
downDelivery = upBar and downBar and high > upWick and highWick > lowWick and totalSize > totalSize and barstate.isconfirmed and session.ismarket
upDelivery = downBar and upBar and low < downWick and highWick < lowWick and totalSize > totalSize and barstate.isconfirmed and session.ismarket
line lG = na
line lE = na
line lR = na
bodyMidpoint = math.abs(body) / 2
upWickMidpoint = math.abs(upWickSize) / 2
downWickkMidpoint = math.abs(downWickSize) / 2
if upDelivery and showCdTheory
cpE = chart.point.new(time, bar_index - 1, downWickkMidpoint)
cpE2 = chart.point.new(time, bar_index + bl, downWickkMidpoint)
cpG = chart.point.new(time, bar_index + bl, downWickkMidpoint * (1 + tp))
cpR = chart.point.new(time, bar_index + bl, downWickkMidpoint * (1 - sl))
cpG1 = chart.point.new(time, bar_index - 1, downWickkMidpoint * (1 + tp))
cpR1 = chart.point.new(time, bar_index - 1, downWickkMidpoint * (1 - sl))
lG := line.new(cpG1, cpG, xloc.bar_index, extend.none, color.green, line.style_solid, 1)
lE := line.new(cpE, cpE2, xloc.bar_index, extend.none, color.white, line.style_solid, 1)
lR := line.new(cpR1, cpR, xloc.bar_index, extend.none, color.red, line.style_solid, 1)
lR
else if downDelivery and showCdTheory
cpE = chart.point.new(time, bar_index - 1, upWickMidpoint)
cpE2 = chart.point.new(time, bar_index + bl, upWickMidpoint)
cpG = chart.point.new(time, bar_index + bl, upWickMidpoint * (1 - tp))
cpR = chart.point.new(time, bar_index + bl, upWickMidpoint * (1 + sl))
cpG1 = chart.point.new(time, bar_index - 1, upWickMidpoint * (1 - tp))
cpR1 = chart.point.new(time, bar_index - 1, upWickMidpoint * (1 + sl))
lG := line.new(cpG1, cpG, xloc.bar_index, extend.none, color.green, line.style_solid, 1)
lE := line.new(cpE, cpE2, xloc.bar_index, extend.none, color.white, line.style_solid, 1)
lR := line.new(cpR1, cpR, xloc.bar_index, extend.none, color.red, line.style_solid, 1)
lR
First I get the size of the wicks for the top and bottoms of the candles. This depends on if the bar is red or green. If the bar is green the wick is the high minus the close, if red the high minus the open, and so on. Next, the script defines the upper and lower bounds of the wicks for further comparison. If the candle is green, it's the open price minus the bottom wick. If the candle is red, it's the close price minus the bottom wick, and so on. Next we have the condition for when this strategy is present.
Down delivery:
Occurs when the previous candle is green, the current candle is red, and:
The high of the current candle is above the upper wick of the previous candle.
The size of the current candle's top wick is greater than its bottom wick.
The total size of the previous candle is greater than the total size of the current candle.
The current bar is confirmed (barstate.isconfirmed).
The session is during market hours (session.ismarket).
Up delivery:
Occurs when the previous candle is red, the current candle is green, and:
The low of the current candle is below the lower wick of the previous candle.
The size of the current candle's bottom wick is greater than its top wick.
The total size of the previous candle is greater than the total size of the current candle.
The current bar is confirmed.
The session is during market hours
Then risk is plotted from the percentage that users can input from an ideal entry spot.
#3 Candle Size Theory
I defined Candle Size Theory as follows.
//----------------------------------------------
//---------------Candle displacement------------
//----------------------------------------------
line lECD = na
notableDown = bodySize > bodySize * candle_size_sensitivity and downBar and session.ismarket and barstate.isconfirmed
notableUp = bodySize > bodySize * candle_size_sensitivity and upBar and session.ismarket and barstate.isconfirmed
if notableUp and showCdSizeTheory
cpE = chart.point.new(time, bar_index - 1, close)
cpE2 = chart.point.new(time, bar_index + bl_strcuture, close)
lECD := line.new(cpE, cpE2, xloc.bar_index, extend.none, color.rgb(0, 80, 75), line.style_solid, 3)
lECD
else if notableDown and showCdSizeTheory
cpE = chart.point.new(time, bar_index - 1, close)
cpE2 = chart.point.new(time, bar_index + bl_strcuture, close)
lECD := line.new(cpE, cpE2, xloc.bar_index, extend.none, color.rgb(105, 15, 15), line.style_solid, 3)
lECD
This plots candles that are “notable” or out of the ordinary. Candles that are larger than the last by a value users get to specify. These candles' highs or lows, if they are green or red, act as levels for support or resistance.
#4 Candle Structure Theory
I defined Candle Structure Theory as follows.
//----------------------------------------------
//---------------Structure----------------------
//----------------------------------------------
breakDownStructure = low < low and low < low and high > high and upBar and downBar and upBar and downBar and session.ismarket and barstate.isconfirmed
breakUpStructure = low > low and low > low and high < high and downBar and upBar and downBar and upBar and session.ismarket and barstate.isconfirmed
if breakUpStructure and showStructureTheory
cpE = chart.point.new(time, bar_index - 1, close)
cpE2 = chart.point.new(time, bar_index + bl_strcuture, close)
lE := line.new(cpE, cpE2, xloc.bar_index, extend.none, color.teal, line.style_solid, 3)
lE
else if breakDownStructure and showStructureTheory
cpE = chart.point.new(time, bar_index - 1, open)
cpE2 = chart.point.new(time, bar_index + bl_strcuture, open)
lE := line.new(cpE, cpE2, xloc.bar_index, extend.none, color.red, line.style_solid, 3)
lE
It is a series of candles to create a notable event. 2 lower lows in a row, a lower high, then green bar, red bar, green bar is a structure for a breakdown. 2 higher lows in a row, a higher high, red bar, green bar, red bar for a break up.
#5 Candle Swing Structure Theory
I defined Candle Swing Structure Theory as follows.
//----------------------------------------------
//---------------Swing Structure----------------
//----------------------------------------------
line htb = na
line ltb = na
if totalSize * swing_struct_sense < totalSize and upBar and downBar and high > high and showSwingSturcture and session.ismarket and barstate.isconfirmed
cpS = chart.point.new(time, bar_index - 1, high)
cpE = chart.point.new(time, bar_index + bl_strcuture, high)
htb := line.new(cpS, cpE, xloc.bar_index, color = color.red, style = line.style_dashed)
htb
else if totalSize * swing_struct_sense < totalSize and downBar and upBar and low > low and showSwingSturcture and session.ismarket and barstate.isconfirmed
cpS = chart.point.new(time, bar_index - 1, low)
cpE = chart.point.new(time, bar_index + bl_strcuture, low)
ltb := line.new(cpS, cpE, xloc.bar_index, color = color.teal, style = line.style_dashed)
ltb
A bearish swing structure is defined as the last candle’s total size, times a scalar that the user can input, is less than the current candles. Like a size imbalance. The last bar must be green and this one red. The last high should also be less than this high. For a bullish swing structure the same size imbalance must be present, but we need a red bar then a green bar, and the last low higher than the current low.
#6 Fractal Boxes
I define the Fractal Boxes as follows
//----------------------------------------------
//---------------Fractal Boxes------------------
//----------------------------------------------
box b = na
int indexx = na
if bar_index % (n * 2) == 0 and session.ismarket and showBoxes
b := box.new(left = bar_index, top = topBox, right = bar_index + n, bottom = bottomBox, border_color = color.rgb(105, 15, 15), border_width = boxLineSize, bgcolor = na)
indexx := bar_index + 1
indexx
The idea of this strategy is that the market is fractal. It is considered impossible to be able to tell apart two different time frames from just the chart. So inside the chart there are many many breakouts and breakdowns happening as price bounces around. The boxes are there to give you the view from your timeframe if the market is in a range from a time frame that would be higher than it. Like if we are inside what a larger time frame candle’s range. If we break out or down from this, we might be able to trade it. Users can specify a lookback period and the box is that period’s, as an interval, high and low. I say as an interval because it is plotted every n * 2 bars. So we get a box, price moves, then a new box.
#7 Potential Move Width
I define the Potential Move Width as follows
//----------------------------------------------
//---------------Move width---------------------
//----------------------------------------------
velocity = V(n)
line lC = na
line l = na
line l2 = na
line l3 = na
line l4 = na
line l5 = na
line l6 = na
line l7 = na
line l8 = na
line lGFractal = na
line lRFractal = na
cp2 = chart.point.new(time, bar_index + n, close + velocity)
cp3 = chart.point.new(time, bar_index + n, close - velocity)
cp4 = chart.point.new(time, bar_index + n, close + velocity * 5)
cp5 = chart.point.new(time, bar_index + n, close - velocity * 5)
cp6 = chart.point.new(time, bar_index + n, close + velocity * 10)
cp7 = chart.point.new(time, bar_index + n, close - velocity * 10)
cp8 = chart.point.new(time, bar_index + n, close + velocity * 15)
cp9 = chart.point.new(time, bar_index + n, close - velocity * 15)
cpG = chart.point.new(time, bar_index + n, close + R)
cpR = chart.point.new(time, bar_index + n, close - R)
if ((bar_index + n) * 2 - bar_index) % n == 0 and session.ismarket and barstate.isconfirmed and showPredictionWidtn
cp = chart.point.new(time, bar_index, close)
cpG1 = chart.point.new(time, bar_index, close + R)
cpR1 = chart.point.new(time, bar_index, close - R)
l := line.new(cp, cp2, xloc.bar_index, extend.none, color.aqua, line.style_solid, 1)
l2 := line.new(cp, cp3, xloc.bar_index, extend.none, color.aqua, line.style_solid, 1)
l3 := line.new(cp, cp4, xloc.bar_index, extend.none, color.red, line.style_solid, 1)
l4 := line.new(cp, cp5, xloc.bar_index, extend.none, color.red, line.style_solid, 1)
l5 := line.new(cp, cp6, xloc.bar_index, extend.none, color.teal, line.style_solid, 1)
l6 := line.new(cp, cp7, xloc.bar_index, extend.none, color.teal, line.style_solid, 1)
l7 := line.new(cp, cp8, xloc.bar_index, extend.none, color.blue, line.style_solid, 1)
l8 := line.new(cp, cp9, xloc.bar_index, extend.none, color.blue, line.style_solid, 1)
l8
By using the past n bar’s velocity, or directional speed, every n * 2 bars. I can use it to scale the close value and get an estimate for how wide the next moves might be.
#8 Linear regression
//----------------------------------------------
//---------------Linear Regression--------------
//----------------------------------------------
lr = showLR ? ta.linreg(close, n, 0) : na
plot(lr, 'Linear Regression', color.blue)
I used TradingView’s built in linear regression to not reinvent the wheel. This is present to see past market strength of weakness from a different perspective.
User input
Users can control a lot about this script. For the strategy based plots you can enter what you want the risk to be in percentages. So the default 0.01 is 1%. You can also control how far forward the line goes.
Look back at where it is needed as well as line width for the Fractal Boxes are controllable. Also users can check on and off what they would like to see on the charts.
No indicator is 100% reliable, do not follow this one blindly. I encourage traders to make their own decisions and not trade solely based on technical indicators. I encourage constructive criticism in the comments below. Thank you.
Fibonacci Snap Tool [TradersPro]
OVERVIEW
The Fibonacci Snap tool automatically snaps to the swing high and swing low of the price data shown on the chart display. Fibonacci retracement levels can be used for entry, exit, or as a confirmation of trend continuation.
If the swing high on the chart comes before the swing low, the price is in a downtrend.If the swing high comes after the swing low, the price is in an uptrend.
We call the 23.60% Fibonacci level the momentum zone of the trend. Price in a solid trend, either up or down, will typically hold the 23.60% Fibonacci level as support (demand) in an uptrend or resistance (supply) in a downtrend.
Deeper Fibonacci levels of 38.20%, 50.00%, and 61.80% are corrective supply/demand zones. As price moves against the found trend, it can move into this range block we call the corrective zone.
Fibonacci retracement levels are used to identify potential supply/demand areas where price could reverse or consolidate. These levels are based on key ratios derived from the Fibonacci sequence, and we only use the core 23.60%, 38.20%, 50.00%, and 61.80% ratios.
CONCEPTS
Price action moves in trend cycles, these retracement levels help traders measure proportional relationships between the high/low swings in the price trend.
When a price trend is moving against the trend, traders can find opportunities to trade with the current trend at key Fibonacci levels. Fibonacci levels can be used to anticipate where price might find supply/demand imbalance and continue moving in the trend direction.
Traders apply the indicator by selecting a window of price they want to analyze in the chart display, and the Fibonacci Snap tool will snap to the high and low of the visible price display.
The Intent and Use of This Tool
The 23.60% level acts as a momentum or continuation of trend. The 38.20% to 61.80% range are corrective zones of the trend.
The 61.80% level, also known as the golden ratio (Google the term “Golden Ratio”; it's fun), can often represent the location of supply/demand imbalance.
In an uptrend, it can represent the area of no more selling supply, and the balance can shift to buying demand. In a downtrend, it can represent the area of no more buying demand and the balance can shift to selling supply.
When used with the Momentum Zones indicator, these two tools create a powerful combination for traders to find, implement, and manage trades.
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.
MTF Fair Value Gap Indicator ULTRAFVG Fair Value Gap Indicator
FVG's commonly known as Fair Value Gaps are mostly in use for forex trading, however it’s been widely used in price action trading, even on regular large cap stocks. Think of it as an imbalance area where the price of the stock may actually be under/over valued due to many orders being injected in a short amount of time, ie . a gap caused by an impulse created by the speed of the price movement. In essence, the FVG can become a kind of magnet drawing the price back to that level to attempt to balance out the orders (when? we don't know). Please do research to understand the concept of FVG's.
You can look for an opportunity as price approaches the FVG for entry either long/short because after all, it is an "Area of Interest" so the price will either bounce or blow through the area. No indicator works 100% of the time so take in context as just another indicator. It tends work on larger time frames best.
IMPORTANT TV RELATED LIMITATIONS: You should take the time to understand the following. A MAXIMUM of 500 boxes and labels are allowed, thus if you elect to display many different time frames of FVGs and/or select to not auto delete old Daily FVGs, the oldest FVGs will be deleted and not be seen. Additionally if you are on a smaller chart time frame (1 min), you may not see older FVGs such as Daily ones that occurred and still exist from long ago. This is due to TV limitation of 20,000 candles of history in each chart timeframe. Example: A 1 minute chart supports approximately 14 days worth of data so looking for Daily FVGs would only go back that far, whereas if your chart was set to 5 minutes you'd be able to see 5 times as many, ie . 60 days worth of Daily FVG's. Obviously setting your chart and looking for Daily FVG's would support up to 20,000 days worth.
The Indicator Provides many different features:
*Creation of FVG's for all hours or just during market hours. Currently you can enable FVG’s for the following timeframes: Current chart timeframe, 5Min, 10Min, 15Min, 1Hr, 4Hr, 8Hr, Daily, Weekly, Monthly.
*Text label displays overlaying FVG bands including creation timestamps.
* Bands reflecting FVG's in action (created/deleted) for the current chart time frame, 15min, 1hr, 4hr, 8hr and daily time frames. The FVG's will be overlayed on the chart if enabled.
*Mitigation Action - Normal - When FVG is balanced out by price action, the FVG will disappear. Dynamic - The FVG band will decrease as the price movement eats into it thus only showing the remaining imbalance. None - For those that wish to retain FVG's even if they were mitigated. Half - FVG’s disappear when the price intrudes 50% of the overall FVG band zone.
*Mitigation Type - The elimination or balancing of the FVG is caused by either the candle wick or body passing completely through the FVG.
*Maximum FVGs - A maximum number of FVGs are created for each different enabled time frame (be aware setting a large number could impact system performance).
*All FVG band colors can be customized by the user.
* All FVG bands auto extend to the right.
* Intrusion Alerts - Trading View alerts are supported. You can use the indicator settings to enable an alert if the price intrudes into the FVG zone by a certain percentage. This is not related to mitigation or removal of the FVG, just a warning that price has reached the area of interest.
Bitcoin CME gaps multi-timeframe auto finder1. Overview
The Bitcoin CME Gap Multi-Timeframe Detector automatically identifies price gaps in the Bitcoin CME (Chicago Mercantile Exchange) futures market and visually displays them on the TradingView chart.
Because the CME futures market closes for about an hour after each weekday session and remains closed over the weekend, price gaps frequently appear when trading resumes on Monday.
This indicator analyzes gaps across six major timeframes, from 5-minute to 1-day charts, allowing traders to easily identify structural imbalances and potential support/resistance zones.
It is the most accurate and feature-rich CME gaps indicator available on TradingView.
2. Key Features
■ Multi-Timeframe Gap Detection
Analyzes 5m, 15m, 30m, 1h, 4h, and 1D charts simultaneously.
This enables traders to observe both short-term volatility and mid-to-long-term structure, providing a multi-dimensional view of market dynamics.
■ Gap Direction Classification
Up Gap: When the next candle’s open is higher than the previous candle’s high (default color: green tone)
Down Gap: When the next candle’s open is lower than the previous candle’s low (default color: red tone)
Gaps are color-coded to intuitively visualize potential support and resistance zones.
■ Highlight Function
Gaps exceeding a user-defined threshold (%) are highlighted (default color: yellow).
This helps quickly identify zones with abnormal volatility or sharp price dislocations.
■ Labels and Box Extension
Each gap displays a percentage label indicating its relative size and significance.
Gap zones are extended to the right as boxes, allowing traders to visually track when and how the gap gets filled over time.
■ Alert System
When a gap forms on the selected timeframe (or across all timeframes), a TradingView alert is triggered.
This enables real-time response to significant gap events.
3. Trading Strategies
■ Gap Fill Behavior
CME gaps statistically tend to get filled over time.
Gap boxes help distinguish between filled and unfilled gaps at a glance.
Up Gap: Price tends to decline to fill the previous high–next open zone.
Down Gap: Price often rises later to fill the previous low–next open zone.
■ Support & Resistance Levels
Gap zones frequently act as strong support or resistance.
When price retests a gap area, observing the reaction of buyers and sellers can provide valuable trading insights.
Overlapping gap boxes across multiple timeframes indicate high-confidence support/resistance zones.
■ Market Sentiment & Volatility Analysis
Large gaps usually result from shifts in market sentiment or major news events.
This indicator allows traders to detect volatility spikes early and prepare for potential trend reversals.
■ Combination with Other Technical Tools
While fully functional on its own, this indicator works even better when combined with tools like moving averages (MA), RSI, MACD, or Fibonacci retracements.
For example, if the bottom of a gap coincides with the 0.618 Fibonacci level, it may signal a strong rebound zone.
4. Settings Options
Minimum Gap % | Sets the minimum percentage movement required to detect a gap (lower values show smaller gaps)
Display Timeframes | Choose which timeframes to display (5m, 15m, 30m, 1h, 4h, 1D)
Box Colors | Assign colors for up and down gaps
Box Extension (Bars) | Number of bars to extend gap boxes to the right
Show Labels | Toggle display of gap percentage labels
Label Position / Size | Adjust label position and size
Highlight Gap ≥ % | Highlight gaps exceeding a specified percentage
Highlight Colors | Set highlight color for labels and boxes
Enable Alerts | Enable or disable alerts
Alert Timeframe | Select timeframe(s) for alerts (“All” = all timeframes)
5. Summary
This indicator is a professional trading tool that provides quantitative and visual analysis of price gaps in the Bitcoin CME futures market.
By combining multi-timeframe detection, highlighting, and alert systems, it helps traders clearly identify zones of market imbalance and potential reversal areas.
Buyside & Sellside Liquidity The Buyside & Sellside Liquidity Indicator is an advanced Smart Money Concepts (SMC) tool that automatically detects and visualizes liquidity zones and liquidity voids (imbalances) directly on the chart.
🟢 Function and meaning:
1. Buyside Liquidity (green):
Highlights price zones above current price where short traders’ stop-loss orders are likely resting.
When price sweeps these areas, it often indicates a liquidity grab or stop hunt.
👉 These zones are labeled with 💵💰 emojis for a clear visual cue where smart money collects liquidity.
2. Sellside Liquidity (red):
Highlights zones below the current price where long traders’ stop-losses are likely placed.
Once breached, these often signal a potential reversal upward.
👉 The 💵💰🪙 emojis make these liquidity targets visually intuitive on the chart.
3. Liquidity Voids (bright areas):
Indicate inefficient price areas, where the market moved too quickly without filling orders.
These zones are often revisited later as the market seeks balance (fair value).
👉 Shown as light shaded boxes with 💰 emojis to emphasize imbalance regions.
💡 Usage:
• Helps spot smart money manipulation and stop hunts.
• Marks potential reversal or breakout zones.
• Great for traders applying SMC, ICT, or Fair Value Gap strategies.
✨ Highlight:
Dollar and money bag emojis (💵💰🪙💸) are integrated directly into chart labels to create a clear and visually engaging representation of liquidity areas.
Fair Value Gaps by DGTFair Value Gaps
A refined, multi-timeframe Fair Value Gap (FVG) detection tool that brings institutional imbalance zones to life directly on your chart.
Designed for precision, it visualizes how price delivers into inefficiencies across chart, higher, and lower (intrabar) timeframes — offering a fluid, structural view of liquidity displacement and market flow.
The script continuously tracks unfilled, partially repaired, and fully resolved imbalances, revealing where liquidity inefficiencies concentrate and where price may seek rebalancing.
Overlapping zones naturally expose institutional footprints, potential liquidity targets, and key re-pricing regions within the broader market structure.
KEY FEATURES
⯌ Multi-Timeframe Detection
Detect and display FVGs from the current chart, higher timeframes (HTF), or lower timeframes (LTF)
⯌ Smart Fill Tracking
Automatic real-time monitoring of each FVG’s fill progress with live percentage updates
⯌ Custom Fill Logic
Choose your preferred definition of when a gap is considered filled: Any Touch
Midpoint Reached
Wick Sweep
Body Beyond
⯌ Dynamic Labels & Tooltips
Labels can be toggled on/off. Even when hidden, detailed tooltips remain available by hovering over the FVG midpoint.
⯌ Adaptive Lower-Timeframe Mode
When set to “Auto,” the script intelligently selects the optimal lower timeframe based on the chart resolution.
DISCLAIMER
This script is intended for informational and educational purposes only. It does not constitute financial, investment, or trading advice. All trading decisions made based on its output are solely the responsibility of the user.
Adaptive Volume Delta Map---
📊 Adaptive Volume Delta Map (AVDM)
What is Adaptive Volume Delta Map (AVDM)?
The Adaptive Volume Delta Map (AVDM) is a smart, multi-timeframe indicator that visualizes buy and sell volume imbalances directly on the chart.
It adapts automatically to the best available data resolution (tick, second, minute, or daily), allowing traders to analyze market activity with micro-level precision .
In addition to calculating volume delta (the difference between buying and selling pressure), AVDM can display a Volume Distribution Map — a per-price-level visualization showing how volume is split between buyers and sellers.
Key Features
✅ Adaptive Resolution Selection — Automatically chooses the highest possible data granularity — from tick to daily timeframe.
✅ Volume Delta Visualization — Displays delta candles reflecting the dominance of buyers (green), sellers (red), and delta (orange).
✅ Per-Level Volume Map (optional) — Shows detailed buy/sell volume distribution per price level, grouped by `Ticks Per Row`.
✅ Bid/Ask Classification — When enabled, AVDM uses bid/ask logic to classify trade direction with greater accuracy.
✅ Smart Auto-Disable Protection — Automatically disables volume map if too many price levels (>50) are detected — preventing performance degradation.
Inputs Overview
Use Seconds Resolution — Enables use of second-level data (if your TradingView subscription allows it).
Use Tick Resolution — Enables tick-based analysis for the most detailed view. If available, enable both tick and seconds resolution.
Use Bid/Ask Calculated — Uses bid/ask midpoint logic to classify trades.
Show Volume Distribution — Toggles per-price-level buy/sell volume visualization.
Ticks Per Row — Controls how many ticks are grouped per volume level. Reduce this value for finer detail, or increase it to reduce visual load.
Calculated Bars — Sets how many historical bars the indicator should process. Higher value increases accuracy but may impact performance.
How to Use
1. Add the indicator to your chart.
2. Ensure that your symbol provides volume data (and preferably tick or second-level data).
3. The indicator will automatically select the optimal timeframe for detailed calculation.
4. If your TradingView subscription allows second-level data , enable “Use Seconds Resolution.”
5. If your subscription allows tick-level data , enable both “Use Tick Resolution” and “Use Seconds Resolution.”
6. Adjust the “Calculated Bars” input to set how many historical bars the indicator should process.
7. Observe the Volume Delta Candles :
* Green = Buy pressure dominates
* Red = Sell pressure dominates
8. To see buy/sell clustering by price, enable “Show Volume Distribution.”
9. If the indicator disables the map and shows:
" Volume Distribution disabled: Too many price levels detected (>50). Try decreasing 'Ticks Per Row' or using a lower chart resolution. If you don’t care about the map, just turn off 'Show Volume Distribution'. "
— follow the instructions to reduce chart load.
Notes
* Automatically adapts to your chart’s resolution and data availability.
* If your symbol doesn’t provide volume data, a runtime warning will appear.
* Works best on futures , FX , and crypto instruments with high-frequency volume streams.
Why Traders Love It
AVDM combines adaptive resolution , volume delta analysis , and visual distribution mapping into one clean, efficient tool.
Perfect for traders studying:
* Market microstructure
* Aggressive vs. passive participation
* Volume absorption
* Order flow imbalance zones
* Delta-based divergence signals
Technical Highlights
* Built with Pine Script v6
* Adaptive resolution logic (`security_lower_tf`)
* Smart memory-safe map rendering
* Dynamic bid/ask classification
* Automatic overload protection
---






















