Custom V2 KillZone US / FVG / EMAThis indicator is designed for traders looking to analyze liquidity levels, opportunity zones, and the underlying trend across different trading sessions. Inspired by the ICT methodology, this tool combines analysis of Exponential Moving Averages (EMA), session management, and Fair Value Gap (FVG) detection to provide a structured and disciplined approach to trading effectively.
Indicator Features
Identifying the Underlying Trend with Two EMAs
The indicator uses two EMAs on different, customizable timeframes to define the underlying trend:
EMA1 (default set to a daily timeframe): Represents the primary underlying trend.
EMA2 (default set to a 4-hour timeframe): Helps identify secondary corrections or impulses within the main trend.
These two EMAs allow traders to stay aligned with the market trend by prioritizing trades in the direction of the moving averages. For example, if prices are above both EMAs, the trend is bullish, and long trades are favored.
Analysis of Market Sessions
The indicator divides the day into key trading sessions:
Asian Session
London Session
US Pre-Open Session
Liquidity Kill Session
US Kill Zone Session
Each session is represented by high and low zones as well as mid-lines, allowing traders to visualize liquidity levels reached during these periods. Tracking the price levels in different sessions helps determine whether liquidity levels have been "swept" (taken) or not, which is essential for ICT methodology.
Liquidity Signal ("OK" or "STOP")
A specific signal appears at the end of the "Liquidity Kill" session (just before the "US Kill Zone" session):
"OK" Signal: Indicates that liquidity conditions are favorable for trading the "US Kill Zone" session. This means that liquidity levels have been swept in previous sessions (Asian, London, US Pre-Open), and the market is ready for an opportunity.
"STOP" Signal: Indicates that it is not favorable to trade the "US Kill Zone" session, as certain liquidity conditions have not been met.
The "OK" or "STOP" signal is based on an analysis of the high and low levels from previous sessions, allowing traders to ensure that significant liquidity zones have been reached before considering positions in the "Kill Zone".
Detection of Fair Value Gaps (FVG) in the US Kill Zone Session
When an "OK" signal is displayed, the indicator identifies Fair Value Gaps (FVG) during the "US Kill Zone" session. These FVGs are areas where price may return to fill an "imbalance" in the market, making them potential entry points.
Bullish FVG: Detected when there is a bullish imbalance, providing a buying opportunity if conditions align with the underlying trend.
Bearish FVG: Detected when there is a bearish imbalance, providing a selling opportunity in the trend direction.
FVG detection aligns with the ICT Silver Bullet methodology, where these imbalance zones serve as probable entry points during the "US Kill Zone".
How to Use This Indicator
Check the Underlying Trend
Before trading, observe the two EMAs (daily and 4-hour) to understand the general market trend. Trades will be prioritized in the direction indicated by these EMAs.
Monitor Liquidity Signals After the Asian, London, and US Pre-Open Sessions
The high and low levels of each session help determine if liquidity has already been swept in these areas. At the end of the "Liquidity Kill" session, an "OK" or "STOP" label will appear:
"OK" means you can look for trading opportunities in the "US Kill Zone" session.
"STOP" means it is preferable not to take trades in the "US Kill Zone" session.
Look for Opportunities in the US Kill Zone if the Signal is "OK"
When the "OK" label is present, focus on the "US Kill Zone" session. Use the Fair Value Gaps (FVG) as potential entry points for trades based on the ICT methodology. The identified FVGs will appear as colored boxes (bullish or bearish) during this session.
Use ICT Methodology to Manage Your Trades
Follow the FVGs as potential reversal zones in the direction of the trend, and manage your positions according to your personal strategy and the rules of the ICT Silver Bullet method.
Customizable Settings
The indicator includes several customization options to suit the trader's preferences:
EMA: Length, source (close, open, etc.), and timeframe.
Market Sessions: Ability to enable or disable each session, with color and line width settings.
Liquidity Signals: Customization of colors for the "OK" and "STOP" labels.
FVG: Option to display FVGs or not, with customizable colors for bullish and bearish FVGs, and the number of bars for FVG extension.
-------------------------------------------------------------------------------------------------------------
Cet indicateur est conçu pour les traders souhaitant analyser les niveaux de liquidité, les zones d’opportunité, et la tendance de fond à travers différentes sessions de trading. Inspiré de la méthodologie ICT, cet outil combine l'analyse des moyennes mobiles exponentielles (EMA), la gestion des sessions de marché, et la détection des Fair Value Gaps (FVG), afin de fournir une approche structurée et disciplinée pour trader efficacement.
Recherche dans les scripts pour "ict"
Killzones High/Low [FD] - ITADESCRIPTION ENGLISH - ITALIAN
Killzones High/Low - ITA - Indicator Description
Advanced Pine Script v5 indicator designed for ICT (Inner Circle Trader) strategies that identifies trading killzones, key support/resistance levels and midnight prices with granular controls for every element.
SETTINGS
General controls that affect all indicator elements:
Session Drawings Limit (1): Determines how many historical sessions to keep on chart for each element type. Higher values show more history but may slow performance
Timeframe Limit (30): Drawings disappear on timeframes equal or higher to avoid visual overload
Time Zone: Select reference timezone for sessions. America/New_York automatically adjusts for daylight saving, GMT options are fixed
Label Size: Controls global size of all labels (from Tiny to Huge)
Drawings Cutoff Time: Stops extension of all pivots at specified time (useful for end of trading day)
KILLZONES
Manages critical trading sessions with colored boxes and pivot lines:
General Controls
Show Boxes/Text: Enables visualization and texts in session boxes
Transparency: Controls opacity of boxes and text (0=opaque, 100=transparent)
Available Sessions
Five configurable sessions with individual controls for enabling, custom text, times and colors:
Asia (18:00-00:00): Blue by default
London (02:30-05:30): Red by default
N.Y. AM (07:00-11:30): Green by default
Lunch (11:30-13:00): Golden yellow, enabled by default
N.Y. PM (13:00-16:00): Purple by default
PDH / PDL
Manages Previous Day High and Previous Day Low levels:
Show PDH/PDL: Enables previous day's maximum/minimum
Extension: "Until Mitigation" (stops when broken) or "Most Recent Candle" (continues always)
Colors/Thickness: Visual customization of lines (dark purple by default, 1px thickness)
Labels: Shows "PDH"/"PDL" texts with customizable color (white by default)
PWH / PWL
Manages Previous Week High and Previous Week Low levels:
Show PWH/PWL: Enables previous week's maximum/minimum
Extension: Independent control of line extension
Colors/Thickness: Orange by default for both, 2px thickness
Labels: Configurable "PWH"/"PWL" texts
PMH / PML
Manages Previous Month High and Previous Month Low levels:
Show PMH/PML: Enables previous month's maximum/minimum using security()
Extension: Independent control like other systems
Colors/Thickness: Blue by default for both, 1px thickness
Labels: Customizable "PMH"/"PML" texts
MIDNIGHT PRICE LEVEL
Advanced system for multiple midnight prices:
Base Controls
Show Midnight Price: Enables line at pre-00:00 closing price (ICT strategy)
Midnight -2/-3 Days: Extends system to 2 and 3 days prior
Extension/Mitigation: "Until Mitigation" or "Most Recent Candle" with "Once" or "Multiple" mode
Customization
Separate Colors: D-1, D-2, D-3 with progressive transparency (gold by default)
Style/Thickness: Customizable lines (Solid, Dotted, Dashed)
Labels: Configurable texts (🌙1, 🌙2, 🌙3) with customizable background/text colors
Alerts: Alerts when mitigated during active killzones
KILLZONE LEVEL
Controls pivot lines and killzone labels:
Line Controls
Show Lines: Enables horizontal lines on killzone highs/lows
Break Alerts: Alerts when pivots are exceeded
Midpoints: Dashed lines at range center with stop option after mitigation
Label Offset: Moves labels ahead by 5 candles (0-20 configurable), rejoining when mitigated
Label Controls
Text Customization: Configurable labels for each session (Asia_H/L, London_H/L, etc.)
Background/Colors: Transparent or visible labels with customizable colors
Broken Labels: Additional text (❌ by default) and special colors when pivots mitigated
Extension: "Until Mitigation" or "Beyond Mitigation" with session filter ("Most Recent" or "All")
LABEL STYLES
Four dedicated sections to customize label graphic shapes:
Killzone Line Label Styles: Separate controls for killzone High/Low
PDH/PDL Label Styles: Customizable shapes for Previous Day levels
PWH/PWL Label Styles: Customizable shapes for Previous Week levels
PMH/PML Label Styles: Customizable shapes for Previous Month levels
Each section offers 15+ shape options (Arrows, Center, Circle, Square, Diamond, Triangles, Crosses, Flags, etc.)
MIDNIGHT LINES
System for vertical lines at 00:00:
Show Lines/Labels: Vertical lines with upward arrow labels
Customization: Color (gray by default), style, thickness of vertical lines
Labels: Configurable text ("00:00" by default) with customizable text color (black by default)
Label Offset: Percentage control (-10000% to +10000%) for vertical positioning
Extension: Configurable directions (None, Above, Below, Both)
Limit: Maximum number of lines maintained (4 by default, max 50)
The indicator offers granular control over every visual and functional aspect, making it possible to adapt it to any ICT trading strategy or personal setup.
---ITALIANO---
Killzones High/L ow - ITA
Indicatore avanzato per Pine Script v5 progettato per strategie ICT (Inner Circle Trader) che identifica killzones di trading, livelli chiave di supporto/resistenza e prezzi di mezzanotte con controlli granulari per ogni elemento.
IMPOSTAZIONI
Controlli generali che influenzano tutti gli elementi dell'indicatore:
-Limite Disegni Sessione (1): Determina quante sessioni storiche mantenere sul grafico per ogni tipo di elemento. Valori più alti mostrano più cronologia ma possono rallentare le prestazioni
-Limite Timeframe (30): I disegni scompaiono su timeframe uguali o superiori per evitare sovraccarico visivo
-Fuso Orario: Seleziona il fuso di riferimento per le sessioni. America/New_York si regola automaticamente per l'ora legale, le opzioni GMT sono fisse
-Dimensione Etichette: Controlla la dimensione globale di tutte le etichette (da Minuscola a Enorme)
-Orario Limite Disegni: Ferma l'estensione di tutti i pivot all'orario specificato (utile per fine giornata di trading)
KILLZONES
Gestisce le sessioni di trading critiche con riquadri colorati e linee pivot:
Controlli Generali
-Mostra Riquadri/Testo: Abilita visualizzazione e testi nei riquadri delle sessioni
-Trasparenza: Controlla opacità di riquadri e testo (0=opaco, 100=trasparente)
Sessioni Disponibili
Cinque sessioni configurabili con controlli individuali per abilitazione, testo personalizzato, orari e colori:
Asia (18:00-00:00): Blu di default
London (02:30-05:30): Rosso di default
N.Y. AM (07:00-11:30): Verde di default
Lunch (11:30-13:00): Giallo dorato, abilitata di default
N.Y. PM (13:00-16:00): Viola di default
PDH / PDL
Gestisce i livelli Previous Day High e Previous Day Low:
-Mostra PDH/PDL: Abilita massimo/minimo del giorno precedente
-Estensione: "Fino a Mitigazione" (si ferma quando rotto) o "Candela Più Recente" (continua sempre)
-Colori/Spessore: Personalizzazione visiva delle linee (viola scuro di default, spessore 1px)
-Etichette: Mostra testi "PDH"/"PDL" con colore personalizzabile (bianco di default)
PWH / PWL
Gestisce i livelli Previous Week High e Previous Week Low:
-Mostra PWH/PWL: Abilita massimo/minimo della settimana precedente
-Estensione: Controllo indipendente dell'estensione delle linee
-Colori/Spessore: Arancione di default per entrambi, spessore 2px
-Etichette: Testi "PWH"/"PWL" configurabili
PMH / PML
Gestisce i livelli Previous Month High e Previous Month Low:
-Mostra PMH/PML: Abilita massimo/minimo del mese precedente utilizzando security()
-Estensione: Controllo indipendente come gli altri sistemi
-Colori/Spessore: Blu di default per entrambi, spessore 1px
-Etichette: Testi "PMH"/"PML" personalizzabili
MIDNIGHT PRICE LEVEL
Sistema avanzato per prezzi di mezzanotte multipli:
Controlli Base
-Mostra Midnight Price: Abilita linea al prezzo di chiusura pre-00:00 (strategia ICT)
-Midnight -2/-3 Giorni: Estende il sistema a 2 e 3 giorni precedenti
-Estensione/Mitigazione: "Fino a Mitigazione" o "Candela Più Recente" con modalità "Una Volta" o "Multipla"
Personalizzazione
-Colori separati: D-1, D-2, D-3 con trasparenza progressiva (giallo oro di default)
-Stile/Spessore: Linee personalizzabili (Solida, Punteggiata, Tratteggiata)
-Etichette: Testi configurabili (🌙1, 🌙2, 🌙3) con colori sfondo/testo personalizzabili
-Avvisi: Alert quando mitigati durante killzones attive
KILLZONE LEVEL
Controlla linee pivot e etichette delle killzones:
Controlli Linee
-Mostra Linee: Abilita linee orizzontali sui massimi/minimi delle killzones
-Avvisi Rottura: Alert quando pivot vengono superati
-Punti Medi: Linee tratteggiate al centro del range con opzione di stop dopo mitigazione
-Offset Etichette: Sposta etichette avanti di 5 candele (0-20 configurabile), ricongiungendole quando mitigate
Controlli Etichette
-Personalizzazione Testi: Etichette configurabili per ogni sessione (Asia_H/L, London_H/L, ecc.)
-Sfondo/Colori: Etichette trasparenti o visibili con colori personalizzabili
-Etichette Rotte: Testo aggiuntivo (❌ di default) e colori speciali quando pivot mitigati
-Estensione: "Fino a Mitigazione" o "Oltre Mitigazione" con filtro sessioni ("Più Recente" o "Tutte")
STILI ETICHETTE
Tre sezioni dedicate per personalizzare la forma grafica delle etichette:
-Stili Etichette Linee Killzones: Controlli separati per High/Low delle killzones
-Stili Etichette PDH/PDL: Forme personalizzabili per Previous Day levels
-Stili Etichette PWH/PWL: Forme personalizzabili per Previous Week levels
-Stili Etichette PMH/PML: Forme personalizzabili per Previous Month levels
Ogni sezione offre 15+ opzioni di forma (Frecce, Centro, Cerchio, Quadrato, Diamante, Triangoli, Croci, Bandiere, ecc.)
LINEE MEZZANOTTE
Sistema per linee verticali alle ore 00:00:
-Mostra Linee/Etichette: Linee verticali con etichette freccia verso l'alto
-Personalizzazione: Colore (grigio di default), stile, spessore delle linee verticali
-Etichette: Testo configurabile ("00:00" di default) con colore testo personalizzabile (nero di default)
-Offset Etichette: Controllo percentuale (-10000% a +10000%) per posizionamento verticale
-Estensione: Direzioni configurabili (Nessuna, Sopra, Sotto, Entrambe)
-Limite: Numero massimo linee mantenute (4 di default, max 50)
L'indicatore offre controllo granulare su ogni aspetto visivo e funzionale, rendendo possibile adattarlo a qualsiasi strategia di trading ICT o setup personale.
[TA] Breaker BlocksDescription:
The Breaker Blocks Finder is a sophisticated tool designed for traders who seek to identify key market structures algorithmically. This indicator meticulously scans for both bullish and bearish breaker blocks, visually delineating them on the chart for easy identification.
Exploring ICT Breaker Blocks: Enhancing Your Trading with Precision
Understanding ICT Breaker Blocks: ICT Breaker Blocks are a nuanced trading concept that leverages market liquidity and manipulation to identify potential breakout points. This strategy is particularly effective in pinpointing moments where the market is poised for a significant directional move.
Mechanics of ICT Breaker Blocks: The essence of this strategy lies in detecting manipulation phases where liquidity is being accumulated, typically around critical market highs or lows. This setup leads to a Stop Hunt, a tactical move to trigger stop orders and fuel a breakout in the opposite direction.
Detailed Breakdown of Breaker Block Types:
Bullish Breaker Blocks:
• Bullish Order Block: The precursor to a bullish breakout, setting the stage for a potential upward move.
• Bullish Breaker Candle: An upward-closing candle that forms just before breaking past an old low, signaling a bullish reversal.
• Confirmation: Achieved when the price dips below the prior low and subsequently rises above the high of the swing, solidifying the bullish breakout.
• Identification: Look for a failed bearish order block, indicated by an initial drop in prices that ultimately reverses, hinting at a bullish shift.
• Key Elements: Monitor the pattern of lows and highs (low, high, lower low, higher high), which suggests an emerging bullish trend.
Bearish Breaker Blocks:
• Bearish Breaker Candle: A downward-closing candle that appears right before an old high is surpassed, indicating a bearish reversal.
• Confirmation: Occurs when prices climb above the previous high and then descend below the swing's low, confirming the bearish move.
• Identification: Initiate by identifying a failed bullish order block, where initial upward price momentum falters and reverses, signaling bearish potential.
• Key Elements: Focus on the sequence of highs and lows (high, low, higher high, lower low), which may denote a looming bearish trend.
Spotting High Probability Breaker Blocks: To enhance the reliability of breaker block identification, incorporate patterns that exhibit a Fair Value Gap (FVG), which typically indicates a stronger likelihood of a successful breakout.
Leveraging ICT Breaker Blocks in Trading: Our Inner Circle Trading mentorship delves into these concepts and more, providing you with comprehensive education and weekly market insights.
By mastering ICT Breaker Blocks, you're equipped with a powerful tool to navigate the intricacies of the market, making informed and strategic trading decisions.
This channel provides you with comprehensive education and weekly market insights. If you enjoyed this thread, like, share, and follow. Join us for an in-depth exploration of advanced trading strategies, and elevate your trading proficiency.
Still confused about Breaker Blocks?
Follow these steps for Bullish Breaker Blocks and reverse them for Bearish Breaker Blocks.
Think:
Bullish BB = Low, High, Lower Low, then Higher High
Bearish BB = High, Low, Higher High, then Lower Low
While this tool is a powerful addition to your trading strategy, it's important to note that it is not an autotrader. Traders should use this indicator as part of a comprehensive trading plan, considering other market factors and personal risk tolerance.
Risk Disclaimer:
Trading financial markets involves significant risk and can result in the loss of your invested capital. You should not invest more than you can afford to lose and should ensure that you fully understand the risks involved. Before trading, please take into consideration your level of experience, investment objectives, and seek independent financial advice if necessary. This indicator is provided as-is without any guarantees or warranty. Use of this indicator is at your own risk, and the creator is not responsible for any financial losses or damages.
Previous Cycle Range + SMTs [bilal x shpat]Inspired by ICT (Inner Circle Trader) concepts
Description made by ChatGPT
Thank you shpat.a for making the SMT option
📝 Overview
The Previous Cycle Range + SMTs indicator is a multi-timeframe tool designed to visualize key market structure levels derived from the previous trading cycle’s range — a concept heavily utilized in ICT-style analysis.
In addition to the traditional range levels, this indicator adds Smart Money Tool (SMT) detection, allowing traders to identify bullish or bearish divergences across multiple correlated assets, giving an edge in spotting potential turning points and liquidity imbalances.
It helps traders identify equilibrium levels, liquidity zones, and potential premium/discount areas based on the prior day (or any chosen period) high and low — now with intermarket divergence insights.
⚙️ Features
Custom Cycle Length: Define your own cycle in minutes (e.g., 1440 = 1 day, 10080 = 1 week).
Previous High/Low: Automatically plots the previous cycle’s high and low levels.
Equilibrium (EQ): Optional 50% midpoint line to highlight the market’s equilibrium.
Quarter Levels: Adds 25% and 75% range lines for refined premium/discount analysis.
Extended Ranges: Optional extended levels (e.g., -100%, +200%) to identify continuation or retracement targets.
Fib Levels (1.272 & 1.618): Adds ICT-style Fibonacci extension levels for confluence zones.
Smart Money Tool (SMT) Detection:
Detects bullish or bearish divergences between your main asset and up to two comparison symbols.
Highlights potential SMT zones with optional text labels for quick visualization.
Optional SMT summary table displays divergence status for all three assets.
Custom Styling: Full control over colors, line width, label style, and extension distance.
💡 How It Helps
This indicator aligns with ICT principles by making the previous day’s range visible and actionable, now with SMT divergence insights:
The previous day’s high/low often act as liquidity pools.
The equilibrium (EQ) represents fair value — useful for spotting premium/discount zones.
Quarter levels and Fibonacci extensions add precision when mapping market structure and potential reaction points.
SMT detection helps traders identify early divergence signals that may indicate upcoming bullish or bearish moves across correlated markets.
🔍 Example Uses
Identify where price is trading relative to the previous session’s range.
Use EQ and quarter levels to gauge premium vs. discount conditions.
Spot intermarket divergences using SMTs to anticipate potential reversal or continuation points.
Combine with other ICT-based tools (e.g., PD arrays, dealing ranges, or kill zones) for refined trade setups.
Previous Cycle Range [bilal]🧭 Previous Cycle Range
Inspired by ICT (Inner Circle Trader) concepts
description made by chatgpt
📝 Overview
The Previous Cycle Range indicator is a multi-timeframe tool designed to visualize key market structure levels derived from the previous trading cycle’s range — a concept heavily utilized in ICT-style analysis.
It helps traders identify equilibrium levels, liquidity zones, and potential premium/discount areas based on the prior day (or any chosen period) high and low.
⚙️ Features
Custom Cycle Length: Define your own cycle in minutes (e.g., 1440 = 1 day, 10080 = 1 week).
Previous High/Low: Automatically plots the previous cycle’s high and low levels.
Equilibrium (EQ): Optional 50% midpoint line to highlight the market’s equilibrium.
Quarter Levels: Adds 25% and 75% range lines for refined premium/discount analysis.
Extended Ranges: Optional extended levels (e.g., -100%, +200%) to identify continuation or retracement targets.
Fib Levels (1.272 & 1.618): Adds ICT-style Fibonacci extension levels for confluence zones.
Custom Styling: Full control over colors, line width, label style, and extension distance.
💡 How It Helps
This indicator aligns with ICT principles by making the previous day’s range visible and actionable:
The previous day’s high/low often act as liquidity pools.
The equilibrium (EQ) represents fair value — useful for spotting premium/discount zones.
Quarter levels and Fibonacci extensions add precision when mapping market structure and potential reaction points.
🔍 Example Uses
Identify where price is trading relative to the previous session’s range.
Use EQ and quarter levels to gauge premium vs. discount conditions.
Combine with other ICT-based tools (e.g., PD arrays, dealing ranges, or kill zones) for refined trade setups.
Separators & Liquidity [K]Separators & Liquidity
This indicator offers a unified visual framework for institutional price behaviour, combining calendar-based levels, intraday session liquidity, and opening price anchors. It is specifically designed for ICT-inspired traders who rely on time-of-day context, prior high/low sweeps, and mitigation dynamics to structure their trading decisions.
Previous Day, Week, and Month Highs/Lows
These levels are dynamically updated and optionally stop projecting forward once mitigated. Mitigation is defined as a confirmed price interaction (touch or break), and labels visually adjust upon confirmation.
Intraday Session Liquidity Zones
Includes:
Asia Session (18:00–02:30 EST)
London Session (02:00–07:00 EST)
New York AM Session (07:00–11:30 EST)
New York Lunch Session (11:30–13:00 EST)
Each session tracks its own high/low with mitigation logic and duplicate filtering to avoid plotting overlapping levels when values are identical to previous session or daily levels.
Opening Price Anchors
Plots key opens:
Midnight (00:00 EST) (Customizable)
New York Open (09:30 EST) (Customizable)
PM Session Open (13:30 EST) (Customizable)
Weekly Open
Monthly Open
These levels serve as orientation for daily range expansion/contraction and premium/discount analysis.
Time Labels
Includes weekday markers and mid-month labels for better visual navigation on intraday and higher timeframes.
All components feature user-defined controls for visibility, line extension, color, label size, and plotting style. Filtering logic prevents redundant lines and maintains chart clarity.
Originality and Justification
While elements such as daily highs/lows and session ranges exist in other indicators, this script combines them under a fully mitigation-aware, duplicate-filtering, and session-synchronized logic model. Each level is tracked and managed independently, but drawn cooperatively using a shared visual and behavioral control system.
This script is not a mashup but an integrated tool designed to support precise execution timing, market structure analysis, and liquidity-based interpretation within ICT-style trading frameworks.
This version does not reuse any code from open-source scripts, and no built-in indicators are merged. The logic is independently constructed for real-time tracking and multi-session visualization.
Inspiration
This tool is inspired by core ICT concepts and time-based session structures commonly discussed in educational content and the broader ICT community.
It also draws conceptual influence from the TFO Killzones & Pivots script by tradeforopp, particularly in the spirit of time-based liquidity tracking and institutional session segmentation. This script was developed independently but aligns in purpose. Full credit is given to TFO as an inspiration source, especially for traders using similar timing models.
Intended Audience
Designed for traders studying or applying:
ICT’s core market structure principles
Power of Three (PO3) setups
Session bias models (e.g., AM reversals, London continuations)
Liquidity sweep and mitigation analysis
Time-of-day-based confluence planning
The script provides structural levels—not signals—and is intended for visual scaffolding around discretionary execution strategies.
Price Action Analyst [OmegaTools]Price Action Analyst (PAA) is an advanced trading tool designed to assist traders in identifying key price action structures such as order blocks, market structure shifts, liquidity grabs, and imbalances. With its fully customizable settings, the script offers both novice and experienced traders insights into potential market movements by visually highlighting premium/discount zones, breakout signals, and significant price levels.
This script utilizes complex logic to determine significant price action patterns and provides dynamic tools to spot strong market trends, liquidity pools, and imbalances across different timeframes. It also integrates an internal backtesting function to evaluate win rates based on price interactions with supply and demand zones.
The script combines multiple analysis techniques, including market structure shifts, order block detection, fair value gaps (FVG), and ICT bias detection, to provide a comprehensive and holistic market view.
Key Features:
Order Block Detection: Automatically detects order blocks based on price action and strength analysis, highlighting potential support/resistance zones.
Market Structure Analysis: Tracks internal and external market structure changes with gradient color-coded visuals.
Liquidity Grabs & Breakouts: Detects potential liquidity grab and breakout areas with volume confirmation.
Fair Value Gaps (FVG): Identifies bullish and bearish FVGs based on historical price action and threshold calculations.
ICT Bias: Integrates ICT bias analysis, dynamically adjusting based on higher-timeframe analysis.
Supply and Demand Zones: Highlights supply and demand zones using customizable colors and thresholds, adjusting dynamically based on market conditions.
Trend Lines: Automatically draws trend lines based on significant price pivots, extending them dynamically over time.
Backtesting: Internal backtesting engine to calculate the win rate of signals generated within supply and demand zones.
Percentile-Based Pricing: Plots key percentile price levels to visualize premium, fair, and discount pricing zones.
High Customizability: Offers extensive user input options for adjusting zone detection, color schemes, and structure analysis.
User Guide:
Order Blocks: Order blocks are significant support or resistance zones where strong buyers or sellers previously entered the market. These zones are detected based on pivot points and engulfing price action. The strength of each block is determined by momentum, volume, and liquidity confirmations.
Demand Zones: Displayed in shades of blue based on their strength. The darker the color, the stronger the zone.
Supply Zones: Displayed in shades of red based on their strength. These zones highlight potential resistance areas.
The zones will dynamically extend as long as they remain valid. Users can set a maximum number of order blocks to be displayed.
Market Structure: Market structure is classified into internal and external shifts. A bullish or bearish market structure break (MSB) occurs when the price moves past a previous high or low. This script tracks these breaks and plots them using a gradient color scheme:
Internal Structure: Short-term market structure, highlighting smaller movements.
External Structure: Long-term market shifts, typically more significant.
Users can choose how they want the structure to be visualized through the "Market Structure" setting, choosing from different visual methods.
Liquidity Grabs: The script identifies liquidity grabs (false breakouts designed to trap traders) by monitoring price action around highs and lows of previous bars. These are represented by diamond shapes:
Liquidity Buy: Displayed below bars when a liquidity grab occurs near a low.
Liquidity Sell: Displayed above bars when a liquidity grab occurs near a high.
Breakouts: Breakouts are detected based on strong price momentum beyond key levels:
Breakout Buy: Triggered when the price closes above the highest point of the past 20 bars with confirmation from volume and range expansion.
Breakout Sell: Triggered when the price closes below the lowest point of the past 20 bars, again with volume and range confirmation.
Fair Value Gaps (FVG): Fair value gaps (FVGs) are periods where the price moves too quickly, leaving an unbalanced market condition. The script identifies these gaps:
Bullish FVG: When there is a gap between the low of two previous bars and the high of a recent bar.
Bearish FVG: When a gap occurs between the high of two previous bars and the low of the recent bar.
FVGs are color-coded and can be filtered by their size to focus on more significant gaps.
ICT Bias: The script integrates the ICT methodology by offering an auto-calculated higher-timeframe bias:
Long Bias: Suggests the market is in an uptrend based on higher timeframe analysis.
Short Bias: Indicates a downtrend.
Neutral Bias: Suggests no clear directional bias.
Trend Lines: Automatic trend lines are drawn based on significant pivot highs and lows. These lines will dynamically adjust based on price movement. Users can control the number of trend lines displayed and extend them over time to track developing trends.
Percentile Pricing: The script also plots the 25th percentile (discount zone), 75th percentile (premium zone), and a fair value price. This helps identify whether the current price is overbought (premium) or oversold (discount).
Customization:
Zone Strength Filter: Users can set a minimum strength threshold for order blocks to be displayed.
Color Customization: Users can choose colors for demand and supply zones, market structure, breakouts, and FVGs.
Dynamic Zone Management: The script allows zones to be deleted after a certain number of bars or dynamically adjusts zones based on recent price action.
Max Zone Count: Limits the number of supply and demand zones shown on the chart to maintain clarity.
Backtesting & Win Rate: The script includes a backtesting engine to calculate the percentage of respect on the interaction between price and demand/supply zones. Results are displayed in a table at the bottom of the chart, showing the percentage rating for both long and short zones. Please note that this is not a win rate of a simulated strategy, it simply is a measure to understand if the current assets tends to respect more supply or demand zones.
How to Use:
Load the script onto your chart. The default settings are optimized for identifying key price action zones and structure on intraday charts of liquid assets.
Customize the settings according to your strategy. For example, adjust the "Max Orderblocks" and "Strength Filter" to focus on more significant price action areas.
Monitor the liquidity grabs, breakouts, and FVGs for potential trade opportunities.
Use the bias and market structure analysis to align your trades with the prevailing market trend.
Refer to the backtesting win rates to evaluate the effectiveness of the zones in your trading.
Terms & Conditions:
By using this script, you agree to the following terms:
Educational Purposes Only: This script is provided for informational and educational purposes and does not constitute financial advice. Use at your own risk.
No Warranty: The script is provided "as-is" without any guarantees or warranties regarding its accuracy or completeness. The creator is not responsible for any losses incurred from the use of this tool.
Open-Source License: This script is open-source and may be modified or redistributed in accordance with the TradingView open-source license. Proper credit to the original creator, OmegaTools, must be maintained in any derivative works.
FVG and OB🧠 Concept Behind the “FVG and OB” Indicator
This indicator merges two core ICT (Inner Circle Trader) concepts — Fair Value Gaps (FVGs) and Order Blocks (OBs) — into one clean, dynamic visualization tool.
It is designed for professional price-action traders who want to track institutional imbalances and smart money footprints directly on the chart.
🟩 FAIR VALUE GAP (FVG)
An FVG represents an imbalance in price caused by aggressive buying or selling where the market fails to offer two-way liquidity.
It’s typically created when a strong candle leaves a visible “gap” between the previous candle’s high and the next candle’s low (for bullish FVG), or vice versa (for bearish FVG).
In this indicator:
🟢 Bullish FVGs are drawn when low > high
🔴 Bearish FVGs are drawn when high < low
Each gap box dynamically extends to the right until it is mitigated (partially or fully filled).
You can choose between two mitigation modes:
Boundary Touch (default): The FVG is considered mitigated once price touches the gap boundary.
Full Fill: The FVG remains active until the entire gap range is filled.
This gives you real-time awareness of whether liquidity has been rebalanced — a key ICT concept in identifying market turning points.
🟥 ORDER BLOCK (OB)
An Order Block represents the last opposing candle before a strong impulsive move.
It is where institutional traders likely executed large block orders, creating supply or demand zones that price often revisits.
In this script, an OB is automatically drawn:
🟥 Bearish OBs form after a strong down move (usually following a bearish FVG).
🟩 Bullish OBs form after a strong up move (usually following a bullish FVG).
Key features:
The indicator can detect OBs in two ways:
Only FVG’s First Candle: A stricter mode aligning OB formation directly with FVG events.
Classic (Last Opposite Color): A more traditional ICT-style detection that finds the last candle of the opposite color within a defined lookback range.
OBs auto-expand with the next candle’s wick, so any extra high/low beyond the original OB is included by default.
Each OB remains extended until mitigated — when price revisits and closes the imbalance.
⚙️ CONTROL & CUSTOMIZATION
You can control the entire behavior and visualization through the settings panel:
Display Mode: Show only FVGs, only OBs, or both simultaneously.
Mitigation Mode: Choose how strict the FVG closure logic should be.
Body-Only Option: Restrict OB calculation to candle bodies instead of wicks for cleaner structure.
Individual Color Settings: Customize border and fill colors for each block type.
Lookback Depth: Define how far back the system searches for valid OB structures.
The result is a clean, layered representation of institutional footprints — with automatic cleanup logic that prevents chart clutter and keeps only active zones visible.
📊 PRACTICAL APPLICATION
Use this indicator to:
Identify imbalances left by aggressive moves (potential retracement targets).
Confirm confluences between FVGs and OBs — the overlap areas often mark powerful reaction zones.
Track mitigation progress as price revisits those zones.
Refine entry timing when price reacts to unmitigated OBs or fills the last untested FVG.
🧩 TECHNICAL DESIGN
Built in Pine Script v5 with fully modular code architecture.
FVG and OB modules can be toggled or used independently.
Uses arrays for efficient management of multiple boxes.
Auto-updates in real-time and mitigates per-bar to minimize lag.
Designed for multi-timeframe backtesting compatibility.
💡 Summary
This tool visually bridges two of the most powerful Smart Money Concepts —
FVG = imbalance zones and OB = institutional origin blocks.
Together, they help traders map out liquidity flows, identify premium/discount zones, and anticipate where price is likely to react next.
🧑💻 Credits
Based on ICT & Smart Money Concepts, rewritten in modular PineScript with precision mitigation logic.
# For educational and analytical purposes only.
OSOK AMERICANA [TakingProphets]OVERVIEW
OSOK is an ICT-inspired execution framework designed to help traders map the interaction between Higher-Timeframe (HTF) liquidity sweeps, qualifying Order Blocks, and Current-Timeframe (CTF) confirmation signals — all within a single, structured workflow.
By sequencing an HTF CRT → Order Block → CTF CRT model and integrating IPDA 20 equilibrium context, this tool provides traders with a visual framework for aligning intraday execution decisions with higher-timeframe intent. All plotted elements — sweeps, blocks, open prices, and equilibrium levels — update continuously in real time.
-----------------------------------------------------------------------------------------------
Core Concepts (ICT-Based)
-----------------------------------------------------------------------------------------------
Candle Range Transition (CRT) Sweeps
Bullish CRT → The second candle runs below the first candle’s low and closes back inside its range.
Bearish CRT → The second candle runs above the first candle’s high and closes back inside its range.
These patterns are frequently associated with liquidity grabs and potential directional shifts.
HTF → CTF Alignment
-Detects valid HTF CRTs (e.g., Daily CRTs derived from H4 or Weekly CRTs derived from Daily).
-Locates a qualifying Order Block within HTF Candle-2 to identify areas of potential interest.
-Waits for a modified CRT confirmation on the current timeframe before signaling possible directional bias.
IPDA 20 Equilibrium
-Plots the midpoint of the daily highest and lowest prices over the last 20 periods.
-Provides a visual reference for premium and discount pricing zones.
-----------------------------------------------------------------------------------------------
How OSOK Works
-----------------------------------------------------------------------------------------------
Step 1 — HTF CRT Check
On each new HTF candle, the script scans for a clean CRT formation on the higher aggregation (e.g., H4 → D or D → W).
If found, it tags the candles as C1, C2, and C3 and optionally shades their backgrounds for clear visual parsing.
Step 2 — HTF Order Block Identification
Searches within HTF Candle-2 for a qualifying Order Block using a compact pattern filter.
Draws a persistent OB level with clear labeling for context.
Step 3 — CTF Confirmation (Modified CRT)
Monitors your current chart timeframe for a modified CRT in alignment with the HTF setup:
For bullish setups → waits for a bullish modified CRT and close above C1’s high zone.
For bearish setups → expects a bearish modified CRT and close below C1’s low zone.
Step 4 — Real-Time Maintenance
All labels, lines, and background spans update intrabar.
If the setup invalidates — for example, if implied targets are exceeded before entry — the layout resets and waits for the next valid sequence.
-----------------------------------------------------------------------------------------------
KEY FEATURES
-----------------------------------------------------------------------------------------------
HTF CRT Visualization
-Optional “×” markers on Daily/Weekly CRT sweeps.
-Independent background shading for C1, C2, and C3.
Order Block + Open Price Context
-Draws HTF Order Block levels and plots C3 Open Price (DOP) for additional directional reference.
CTF CRT Execution Cue
-Displays a modified CRT on your current timeframe when conditions align with the HTF narrative.
IPDA 20 Line + Label
-Plots a dynamic midpoint level with an optional label for quick premium/discount context.
Optimized Drawing Engine
-Lightweight, efficient use of chart objects ensures smooth performance without visual clutter.
INPUTS
-Higher Timeframe Settings
-Toggle markers for Daily/Weekly CRT sweeps.
-Enable and color C1, C2, and C3 background spans.
-IPDA Display Options
-Control visibility, color, and line style for IPDA 20 equilibrium levels.
-Sweep, OB, and Open Price Styles
-Per-element customization for colors, widths, and labels.
-----------------------------------------------------------------------------------------------
BEST PRACTICES
-----------------------------------------------------------------------------------------------
Start on H4 or Daily to identify valid HTF CRT formations.
Confirm a qualifying OB inside Candle-2.
Drop to your execution timeframe and wait for the modified CTF CRT confirmation before acting.
Use IPDA 20 equilibrium as a reference for premium vs. discount zones.
Combine with your ICT session bias and overall market context for optimal decision-making.
-----------------------------------------------------------------------------------------------
Important Notes
-----------------------------------------------------------------------------------------------
OSOK is not a buy/sell signal provider. It’s a visual framework for understanding ICT-based execution models.
All objects reset automatically when new HTF candles form or setups invalidate.
Works on any symbol and timeframe by default, with HTF mapping set to H4 → D and D → W.
Opening Range Gaps [TakingProphets]What is an Opening Range Gap (ORG)?
In ICT, the Opening Range Gap is defined as the price difference between the previous session’s close (e.g., 4:00 PM EST in U.S. indices) and the current day’s open (9:30 AM EST).
That gap is a liquidity void—an area where no trading occurred during regular hours.
Why ICT Traders Care About ORG
Liquidity Void (Gap Fill Logic)
-Because the gap is an untraded area, it naturally acts as a draw on liquidity.
-Price often seeks to rebalance by retracing into or fully filling this void.
Premium/Discount Sensitivity
-Once the ORG is defined, ICT treats it as a mini dealing range.
-Above EQ (Consequent Encroachment) = algorithmic premium (sell-sensitive).
-Below EQ = algorithmic discount (buy-sensitive).
-Price reaction at these levels gives a precise read on institutional intent intraday.
Support/Resistance from ORG
-If the session opens above prior close, the gap often acts as support until violated.
-If the session opens below prior close, the gap often acts as resistance until reclaimed.
Key ICT Concepts Anchored to ORG
Consequent Encroachment (CE): The midpoint of the gap. The algo is highly sensitive to CE as a decision point: reject → continuation; reclaim → reversal.
Draw on Liquidity (DoL): Price is algorithmically “pulled” toward gap fills, CE, or the opposite side of the ORG.
Order Flow Confirmation: If price ignores the gap and runs away from it, this signals strong institutional order flow in that direction.
Confluence with Other Tools: FVGs, OBs, and HTF PD arrays often overlap with ORG levels, strengthening setups.
Practical Application for Traders
Bias Formation:
Use ORG EQ as a line in the sand for intraday bias.
If price trades below ORG EQ after the open → look for short setups into the prior day’s low or external liquidity.
If price trades above ORG EQ → favor longs into highs/liquidity pools.
Execution Framework:
Wait for liquidity raids or market structure shifts at ORG edges (.00, .25, .50, .75).
Target: EQ, opposite quarter, or full gap fill.
Precision Reads:
ORG lines let traders anticipate where algorithms are likely to respond, providing mechanical invalidation and clear targets without clutter.
AMD [TakingProphets]Overview
The AMD indicator is a real-time, high-resolution tool designed for traders following ICT methodology who want a clear visualization of higher timeframe (HTF) candles directly on their lower timeframe charts.
It overlays current HTF structure, including open, high, low, and close projections, allowing traders to align intraday decisions with institutional price delivery — all without switching timeframes.
Concept & Background
In ICT concepts, market behavior often follows a pattern of accumulation, manipulation, and distribution. Understanding these phases is essential for anticipating when price is likely to expand or reverse.
AMD automates this process by:
-Overlaying HTF candles directly on your lower timeframe chart.
-Projecting live levels like the current open, high, low, and close to map out evolving bias.
-Helping traders see whether price is accumulating orders, engineering liquidity sweeps, or distributing aggressively.
Key Features
Live HTF Candle Overlay
-Displays the full HTF candle — body, wicks, and directional bias — on your active chart in real time.
-Perfect for traders aligning intraday setups with broader HTF context.
Dynamic HTF Price Projections
-Plots the evolving open, high, low, and close for the current HTF candle.
-Each projection can be customized by color, style, labels, and visibility to fit your workflow.
Full Customization Control
-Adjust candle body widths, wick styles, and transparency.
-Configure projection lines and time labels in both 12h and 24h formats.
-Includes an optional Info Box showing instrument, timeframe, and session context.
Session Timing & Labeling
-Smart timestamping marks the start and close of each HTF candle.
-Helps traders anticipate potential expansions or reversals during killzones or liquidity events.
How to Use It
Select Your HTF Context
-Choose any timeframe overlay (e.g., 1H, 4H, 1D) to match your trading model.
-Monitor Live HTF Levels
-Watch how price interacts with current HTF highs, lows, and equilibrium levels in real time.
-Integrate With ICT Concepts
-Use alongside tools like SMT divergence, Order Blocks, or Liquidity Levels for confirmation and context.
-Refine Intraday Entries
-Check whether price is expanding in your favor before entering positions.
Best Practices
Combine AMD with ICT killzone sessions to monitor HTF behavior during high-liquidity periods.
Use it alongside correlated SMT divergence tools for stronger directional bias confirmation.
Who It’s For
Scalpers anchoring quick entries to HTF sentiment.
Intraday traders syncing 5m/15m setups with 1H/4H context.
Swing traders monitoring HTF ranges without switching charts.
Educators & analysts needing clean visual overlays for teaching and content creation.
Why It’s Useful
AMD doesn’t provide trading signals or predictive guarantees. Instead, it offers a clean, structured view of HTF price delivery — enabling traders to understand institutional intent as it unfolds and manage their execution with greater confidence.
Scalp Sense AI# Scalp Sense AI (No Repaint)
**Adaptive trend & reversal detector with an AI-driven score, multi-timeframe confirmations, robust volume filters, and a purpose-built Scalping Mode.**
Signals are generated **only on bar close** (no repaint), include structured alert payloads for webhooks, and come with optional ATR-based TP/SL visualization for study and validation.
---
## What it is (in one paragraph)
**Scalp Sense AI** combines classic market structure (DI/ADX, EMA, SMA, Keltner, ATR) with a continuous **AI Score** that fuses RSI normalization, EMA distance (in ATR units), and DI edge into a single, volatility-aware signal. It adaptively gates **trend** and **reversal** entries, applies **HTF confirmation** without lookahead, and enforces **guard rails** (e.g., strong-trend reversal blocking) unless a high-confidence AI override and volume confirmation are present. **Scalping Mode** compresses reaction times and adds micro price-action cues (wick rejections, micro-EMA crosses, small engulfing) to surface more—but disciplined—opportunities.
---
## Non-Repainting Design
* All signals, markers, state, and alerts are computed **after bar close** using `barstate.isconfirmed`.
* HTF data are requested with `lookahead_off`.
* No “future-peeking” constructs are used.
* Result: signals do **not** change after the candle closes.
---
## How the engine works (pipeline overview)
1. **Base metrics**
* **RSI**, **EMA**, **ATR** (+ ATR SMA for regime/volatility), **SMA long & short**, **Keltner** (EMA ± ATR×mult).
* **Manual DI/ADX** for fine control (DM+, DM−, true range smoothing).
2. **Volatility regime**
* Compares ATR to its SMA and scales thresholds by √(ATR/ATR\_SMA) → robust “high\_vol” gating.
3. **Volume & flow**
* **Volume Z-score**, **OBV slope**, and **MFI** (all computed manually) to confirm impulses and filter weak reversals.
4. **Higher-Timeframe confirmation (optional)**
* Imports HTF **PDI/MDI/ADX** and **SMA** (no lookahead) to require alignment when enabled.
5. **AI Score**
* Weighted fusion of **RSI (normalized around 0)**, **EMA distance (in ATR)**, and **DI edge**.
* Smoothed; then its **mean (μ)** and **volatility (σ)** are estimated to form **adaptive bands** (hi/lo), with optional **hysteresis**.
* **Debounce** (M in N bars) avoids flicker; **bias state** persists until truly invalidated.
6. **Signal logic**
* **Trend entries** require AI bias + trend confirmations (DI/ADX/SMA, HTF if enabled), volatility OK, and **anti-breakout** filter.
* **Reversal entries** come in **core**, **early**, and **scalp** flavors (progressively more frequent), guarded by strong-trend blocks that an **AI+volume+ADX-cooling override** can bypass.
7. **Scalping Mode**
* Adaptive parameter contraction (shorter lengths), gentler guards, micro-patterns (wick/engulf/micro-EMA cross), and reduced cooldown to increase high-quality opportunities.
8. **Cooldown & state**
* One signal per side after a configurable spacing in bars; internal “last direction” avoids clustering.
9. **Visualization & alerts**
* **Triangles** for trend, **circles** for reversals (offset by ATR to avoid overlap).
* **Single-line alert payload** (BUY/SELL, reason, AI, volZ, ADX) ready for webhooks.
---
## Signals & visualization
* **Trend Long/Short** → triangle markers (above/below) when:
* AI bias aligns with trend confirmations (DI edge, ADX above threshold, price vs long SMA, optional HTF alignment).
* Volatility regime agrees; **anti-breakout** prevents entries exactly at lookback highs/lows.
* **Reversal Long/Short** → circular markers when:
* **Core**: AI near “loose” band, OBV/MFI/volZ supportive, ADX cooling, DI spread relaxed, PA confirms (crosses/div).
* **Early**: anticipatory patterns (Keltner exhaustion, simple RSI “quasi-divergence”).
* **Scalp**: micro-EMA cross, wick rejection, mini-engulfing, with relaxed guards but AI/volume still in the loop.
* **Markers appear only on the bar that actually emitted the signal** (no repaint); offsets use ATR so shapes don’t overlap.
---
## Alerts (ready for webhooks)
Enable “**Any alert() function call**” and you’ll receive compact, single-line payloads once per bar:
```
action=BUY;reason=reversal-early;ai=0.1375;volZ=0.82;adx=27.5
action=SELL;reason=trend;ai=-0.2210;volZ=0.43;adx=31.9
```
* `action`: BUY / SELL
* `reason`: `trend` | `reversal-core` | `reversal-early` | `reversal-scalp`
* `ai`: current smoothed AI Score at signal bar
* `volZ`: volume Z-score
* `adx`: current ADX
---
## Inputs (exhaustive)
### 1) Core Inputs
* **RSI Length (Base)** (`rsi_length_base`, int)
Base RSI lookback. Shorter = more reactive; longer = smoother.
* **RSI Overbought Threshold** (`rsi_overbought`, int)
Informational for context; RSI is used normalized in the AI fusion.
* **RSI Oversold Threshold** (`rsi_oversold`, int)
Informational; complements visual context.
* **EMA Length (Base)** (`ema_length_base`, int)
Primary adaptive mean; also used for Keltner mid and distance metric.
* **ATR Length (Base)** (`atr_length_base`, int)
Volatility unit for Keltner, SL/TP (debug), and regime detection.
* **ATR SMA Length** (`atr_sma_len`, int)
Smooth baseline for ATR regime; supports “high\_vol” logic.
* **ATR Multiplier Base** (`atr_mult_base`, float)
Scales volatility gating (sqrt-scaled); higher = tighter high-vol requirement.
* **Disable Volatility Filter** (`disable_volatility_check`, bool)
Bypass volatility gating if true.
* **Price Change Period (bars)** (`price_change_period_base`, int)
Simple momentum check (+/−% over N bars) used in trend validation.
* **Base Cooldown Bars Between Signals** (`signal_cooldown_base`, int ≥ 0)
Minimum bars to wait between signals (per side).
* **Trend Confirmation Bars** (`trend_confirm_bars`, int ≥ 1)
Require persistence above/below long SMA for this many bars.
* **Use Higher Timeframe Confirmation** (`use_higher_tf`, bool)
Turn on/off HTF alignment (no repaint).
* **Higher Timeframe for Confirmation** (`higher_tf`, timeframe)
E.g., “60” to confirm M15 with H1; used for HTF PDI/MDI/ADX and SMA.
* **TP as ATR Multiple** (`tp_atr_mult`, float)
For **visual debug** only (drawn after entries); not an order manager.
* **SL as ATR Multiple** (`sl_atr_mult`, float)
For visual debug only.
* **Enable Scalping Mode** (`scalping_mode`, bool)
Compresses lengths/thresholds, unlocks micro-PA modules, reduces cooldown.
* **Show Debug Lines** (`show_debug`, bool)
Plots AI bands, DI/ADX, EMA/SMA, Keltner, vol metrics, and TP/SL (debug).
### 2) AI Score & Thresholds
* **AI Score Smooth Len** (`ai_len`, int)
EMA smoothing over the raw fusion.
* **AI Volatility Window** (`ai_sigma_len`, int)
Window to estimate AI mean (μ) and standard deviation (σ).
* **K High (sigma)** (`ai_k_hi`, float)
Upper band width (σ multiplier) for strong threshold.
* **K Low (sigma)** (`ai_k_lo`, float)
Lower band width (σ multiplier) for loose threshold.
* **Debounce Window (bars)** (`ai_debounce_m`, int ≥ 1)
Rolling window length used by the confirm counter.
* **Min Bars>Thr in Window** (`ai_debounce_n`, int ≥ 1)
Minimum confirmations inside the debounce window to validate a state.
* **Use Hysteresis Thresholds** (`ai_hysteresis`, bool)
Requires crossing back past a looser band to exit bias → fewer whipsaws.
* **Weight DI Edge (0–1)** (`ai_weight_di`, float)
Importance of DI edge within the fusion.
* **Weight EMA Dist (0–1)** (`ai_weight_ema`, float)
Importance of EMA distance (in ATR units).
* **Weight RSI Norm (0–1)** (`ai_weight_rsi`, float)
Importance of normalized RSI.
* **Sensitivity (0–1)** (`sensitivity`, float)
Contracts/expands bands (higher = more sensitive).
### 3) Volume Filters
* **Volume MA Length** (`vol_ma_len`, int)
Baseline for volume Z-score.
* **Volume Z-Score Window** (`vol_z_len`, int)
Std-dev window for Z-score; larger = fewer volume “spikes”.
* **Reversal: Min Volume Z for confirm** (`vol_rev_min_z`, float)
Minimum Z required to validate reversals (adaptively relaxed in scalping).
* **OBV Slope Lookback** (`obv_slope_len`, int)
Rising/falling OBV over this window supports bull/bear confirmations.
* **MFI Length** (`mfi_len`, int)
Money Flow Index lookback (manual calculation).
### 4) Filters (Breakout / ADX / Reversal)
* **Enable Breakout Filter** (`enable_breakout_fil`, bool)
Avoid trend entries at lookback highs/lows.
* **Breakout Lookback Bars** (`breakout_lookback`, int ≥ 1)
Window for the anti-breakout guard.
* **Base ADX Length** (`adx_length_base`, int)
Lookback for DI/ADX smoothing (also adapted in Scalping Mode).
* **Base ADX Threshold** (`adx_threshold_base`, float)
Minimum ADX to validate trend context (scaled in Scalping Mode).
* **Enable Reversal Filter** (`enable_rev_filter`, bool)
Master switch for reversal logic.
* **Max ADX for Reversal** (`rev_adx_max`, float)
Hard cap: above this ADX, reversals are blocked (unless overridden by AI if allowed in Guards).
### 5) Reversal Guard (regime protection & overrides)
* **Strong Trend: ADX add-above Thr** (`guard_adx_add`, float)
Extra ADX above `adx_threshold` to mark “strong” trend.
* **Strong Trend: min DI spread** (`guard_spread_min`, float)
Minimum DI separation to consider a trend “dominant”.
* **Require ADX drop from window max (%)** (`guard_adx_drop_min_pct`, float 0–1)
ADX must drop at least this fraction from its window maximum to consider “cooling”.
* **Regime Window (bars)** (`guard_regime_len`, int ≥ 10)
Window over which ADX max is measured for the “cooling” check.
* **EMA Slope Lookback** (`guard_slope_len`, int ≥ 2)
EMA slope horizon used alongside Keltner for strong-trend identification.
* **Keltner Mult (ATR)** (`guard_kc_mult`, float)
Keltner width for strong trend bands and exhaustion checks.
* **HTF Reversal Block Mode** (`htf_block_mode`, string: `Off` | `On` | `AI-controlled`)
* `Off`: never block by HTF.
* `On`: block reversals whenever HTF is strong.
* `AI-controlled`: block **unless** AI+volume+ADX-cooling override criteria are met.
* **AI-controlled: allow AI override** (`ai_htf_override`, bool)
Enables the override mechanism in `AI-controlled` mode.
* **AI override multiplier (vs band\_hi)** (`ai_override_mult`, float)
Strength needed beyond the high band to count as “strong AI”.
* **AI override: min bars beyond strong thr** (`ai_override_min_bars`, int ≥ 1)
Debounce on the override itself.
### 6) Markers
* **Reversal Circle ATR Offset** (`rev_marker_offset_atr`, float ≥ 0)
Vertical offset for reversal circles; trend triangles use a separate (internal) offset.
### 7) Scalping Mode Tuning
* **Reversal aggressiveness (0–1)** (`scalp_rev_aggr`, float)
Higher = looser guards and stronger AI sensitivity.
* **Wick: body multiple (bull/bear)** (`scalp_wick_body_mult`, float)
Wick must be at least this multiple of body to count as rejection.
* **Wick: ATR multiple (min)** (`scalp_wick_atr_mult`, float)
Minimal wick length in ATR units.
* **Micro EMA factor (vs EMA base)** (`scalp_ema_fast_factor`, float 0.2–0.9)
Fast EMA length = base EMA × factor (rounded/int).
* **Relax breakout filter in scalping** (`scalp_breakout_relax`, bool)
Lets more trend entries through in scalping context.
### 8) ICT-style SMA (bases)
* **ICT SMA Long Length (Base)** (`sma_long_len_base`, int)
Long-term baseline for regime/trend.
* **ICT SMA Short1 Length (Base)** (`sma_short1_len_base`, int)
Short baseline for price-action crosses.
* **ICT SMA Short2 Length (Base)** (`sma_short2_len_base`, int)
Companion short baseline used in PA cross checks.
> **Adaptive “effective” values:** When **Scalping Mode** is ON, the script internally shortens multiple lengths (RSI/EMA/ATR/ADX/μσ windows, SMAs) and gently relaxes guards (ADX drop %, DI spread, volume Z, override thresholds), reduces cooldown/confirm bars, and optionally relaxes the breakout filter—so you get **more frequent but still curated** signals.
---
## Plots & debug (optional)
* DI+/DI−, ADX (curr + HTF), EMA, long SMA, Keltner up/down (when strong), AI Score, AI mean, AI bands (hi/lo; low plots only when hysteresis is on), Volume MA and Z-score, and ATR-based TP/SL guide (after entries).
* These are **study aids**; the indicator does not manage trades.
---
## Recommended use
* **Timeframes**:
* Scalping Mode: M1–M15.
* Standard Mode: M15–H1 (or higher).
* **Markets**: Designed for liquid FX, indices, metals, and large-cap crypto.
* **Chart type**: Standard candles recommended (Heikin-Ashi alters inputs and hence signals).
* **Alerts**: Use “Any alert() function call”. Parse the key/value payloads server-side.
---
## Good to know
* **Why some alerts don’t draw shapes retroactively**: markers are drawn **only on** the bar that emitted the signal (no repaint by design).
* **Why a reversal didn’t fire**: strong-trend guards + HTF block may have been active; check ADX, DI spread, Keltner position, EMA slope, and whether AI override criteria were met.
* **Too many / too few signals**: tune **Scalping Mode**, `signal_cooldown_base`, AI bands (`ai_k_hi/lo`, `sensitivity`), volume Z (`vol_rev_min_z`), and guards (`rev_adx_max`, `guard_*`).
---
## Disclaimer
This is an **indicator**, not a strategy or an execution system. It does not place, modify, or manage orders. Markets carry risk—validate on historical data and demo before any live decisions. No performance claims are made.
---
### Version
**Scalp Sense AI v11.5** — Adaptive AI bands with hysteresis/debounce, HTF no-lookahead confirmations, guarded reversal logic with AI override, full volume suite (Z, OBV slope, MFI), anti-breakout filter, and a dedicated Scalping Mode with micro-PA cues.
AI Strat ATR Dinamico + ADX + Trend Adaptivo (No Repaint)Below is a fully self-contained, English-language description of every input, function, and logical block inside the “AI Strat ATR Dinamico + ADX + Trend Adaptivo (No Repaint)” indicator. You can copy and paste this into TradingView’s “Description” field when you publish, without exposing any Pine code.
---
## Indicator Name and Purpose
**Name (Short Title):**
AI Strat Adaptive v3 (NoRepaint)
**Overview:**
This indicator combines multiple technical tools—RSI, EMA, ATR (with a dynamic multiplier), ADX/DI, and an “AI‐style” scoring mechanism—to generate trend-filtered and reversal signals. It also optionally confirms signals on a higher timeframe, dynamically adjusts its sensitivity based on volatility, and plots intrabar stop‐loss (SL) and take‐profit (TP) levels derived from ATR. Special care has been taken to ensure that no signals “repaint” (i.e., once drawn on a closed bar, they never disappear or shift).
---
## 1. Main Inputs
All of the inputs appear in the Settings dialog for the published indicator. Below is a detailed explanation of each input, grouped by logical category.
### A. RSI & EMA Base Parameters
1. **RSI Length (Base)**
* **Input type:** Integer (default 14)
* **Description:** Number of bars used to calculate the Relative Strength Index (RSI). A shorter RSI reacts more quickly to price changes; a longer RSI is smoother.
2. **RSI Overbought Threshold**
* **Input type:** Integer (default 60)
* **Description:** If the RSI value rises above this level, it contributes a “sell” signal component. You can adjust this (e.g., 70) to make your system more conservative.
3. **RSI Oversold Threshold**
* **Input type:** Integer (default 40)
* **Description:** If the RSI falls below this level, it contributes a “buy” signal component. Raising this threshold (e.g., 50) makes the strategy more aggressive in seeking reversals.
4. **EMA Length (Base)**
* **Input type:** Integer (default 20)
* **Description:** Number of bars for the Exponential Moving Average (EMA). A shorter EMA will produce more frequent crossovers, a longer EMA is smoother.
### B. ATR & Volatility Filter Parameters
5. **ATR Length (Base)**
* **Input type:** Integer (default 14)
* **Description:** Number of bars to calculate Average True Range (ATR). The ATR is used both for measuring volatility and for dynamic SL/TP levels.
6. **ATR SMA Length**
* **Input type:** Integer (default 50)
* **Description:** Number of bars to compute a Simple Moving Average of the ATR itself. This gives a baseline of “normal” volatility. If ATR rises significantly above this SMA, the indicator treats the market as “high volatility.”
7. **ATR Multiplier Base**
* **Input type:** Float (default 1.2, step 0.1)
* **Description:** Base multiplier for ATR when filtering for volatility. The actual threshold is computed as `ATR_SMA × (ATR_Multiplier Base) × sqrt(current_ATR / ATR_SMA)`. In other words, the multiplier becomes larger if volatility is rising, and smaller if volatility is falling.
8. **Disable Volatility Filter**
* **Input type:** Boolean (default false)
* **Description:** If enabled (true), the indicator will ignore any volatility‐based filtering, using signals regardless of ATR behavior. If disabled (false), signals only fire when ATR > (ATR\_SMA × dynamic multiplier).
### C. Price-Change & “AI Score” Parameters
9. **Price Change Period (bars)**
* **Input type:** Integer (default 3)
* **Description:** The number of bars back to measure percentage price change. Used to ensure that a “trend” signal is accompanied by a sufficiently positive (for longs) or negative (for shorts) price movement over this many bars.
10. **Base AI Score Threshold**
* **Input type:** Float (default 0.1)
* **Description:** The indicator computes a composite “AI-style” score by combining the RSI signal (overbought/oversold) and an EMA crossover signal. Only if the absolute value of that composite score exceeds this threshold will a trend signal be eligible. Raising it makes signals rarer but (potentially) higher-conviction.
### D. SMA “ICT” Trend Filter Parameters
11. **ICT SMA Long Length (Base)**
* **Input type:** Integer (default 50)
* **Description:** Number of bars for the “long” Simple Moving Average (SMA) used in the internal trend filter. Typically, price must be above this SMA (and ADX must be strong) to confirm an uptrend, or below it (and ADX strong) to confirm a downtrend.
12. **ICT SMA Short1 Length (Base)**
* **Input type:** Integer (default 10)
* **Description:** Secondary “fast” SMA used both for reversal logic (e.g., price crossing above it can count as a bullish reversal) and part of the internal trend confirmation.
13. **ICT SMA Short2 Length (Base)**
* **Input type:** Integer (default 20)
* **Description:** A second “medium” SMA used for reversal triggers (e.g., crossovers or crossunders alongside RSI conditions).
### E. ADX & DI Parameters
14. **Base ADX Length**
* **Input type:** Integer (default 14)
* **Description:** Number of bars for the ADX (Average Directional Index) moving averages, which measure trend strength. The same length is used for +DI and –DI smoothing.
15. **Base ADX Threshold**
* **Input type:** Float (default 25.0, step 0.5)
* **Description:** If ADX > this threshold and +DI > –DI, we consider an uptrend; if ADX > this threshold and –DI > +DI, we consider a downtrend. Raising this value demands stronger trends to qualify.
### F. Sensitivity & Cooldown
16. **Sensitivity (0–1)**
* **Input type:** Float between 0.0 and 1.0 (default 0.5)
* **Description:** A general “mixture” parameter used internally to weight how aggressively the indicator leans into trend versus reversal. In practice, the code uses it to fine-tune exact thresholds for switching between trend and reversal conditions. You can leave it at 0.5 unless you want to bias more heavily toward either regime.
17. **Base Cooldown Bars Between Signals**
* **Input type:** Integer (default 5, min 0)
* **Description:** Once a long or short signal fires, the indicator will wait at least this many bars before allowing a new signal in the same direction. Prevents “signal flipping” on each bar. A higher number forces fewer, more spaced-out entries.
18. **Trend Confirmation Bars**
* **Input type:** Integer (default 3, min 1)
* **Description:** After the directional filters (+DI/–DI cross, price vs. SMA), the indicator still requires that price remains on the same side of the long SMA for at least this many consecutive bars before confirming “trend up” or “trend down.” Larger values smooth out false breakouts but may lag signals.
### G. Higher Timeframe Confirmation
19. **Use Higher Timeframe Confirmation**
* **Input type:** Boolean (default true)
* **Description:** If true, the indicator will request a block of values (SMA, +DI, –DI, ADX) from a higher timeframe (default 60 minutes) and require that the higher timeframe is also in agreement (strong uptrend or strong downtrend) before confirming your current-timeframe trend. This helps filter out lower-timeframe noise.
20. **Higher Timeframe (TF) for Confirmation**
* **Input type:** Timeframe (default “60”)
* **Description:** The chart timeframe (e.g., 5, 15, 60 minutes) whose trend conditions must also be true. It’s sent through a `request.security(..., lookahead=barmerge.lookahead_off)` call so that it never “paints ahead.”
### H. Dynamic TP/SL Parameters
21. **TP as ATR Multiple**
* **Input type:** Float (default 2.0, step 0.1)
* **Description:** When a trade is open, the “take-profit” price is determined by looking at the highest high (for longs) or lowest low (for shorts) observed since entry, and then plotting a cross (“X”) at that level when the trend finally flips. This is purely for display. However, separate from that, this parameter can be adapted if you want a strictly ATR–based TP. In the “Minimal” version, TP is ≈ (highest high) once trend inverts, but you could rewrite it to use `entry_price + ATR×TP_Multiplier`.
22. **SL as ATR Multiple**
* **Input type:** Float (default 1.0, step 0.1)
* **Description:** While in a trade, a trailing SL line is plotted each bar. Its value is always `entry_price ± (ATR × SL_Multiplier)`. When the trend inverts, the SL no longer updates, and you see it on the chart.
### I. Display and Mode Options
23. **Show Debug Lines**
* **Input type:** Boolean (default true)
* **Description:** When enabled, the indicator will plot all intermediate lines—ATR SMA, ATR Threshold, +DI, –DI, ADX (current and HTF), HTF SMA, etc.—so that you can diagnose exactly what’s happening. Turn this off to hide all debug information and only see entry/exit shapes.
24. **Enable Scalping Mode**
* **Input type:** Boolean (default false)
* **Description:** If true, many of the “base” parameters are halved (e.g., RSI length becomes 7 instead of 14, ATR length becomes 7 instead of 14, ADX length becomes 7, etc.), and the ADX threshold is multiplied by 0.8. This makes all oscillators and moving averages more reactive, suited for very short-term (scalping) setups.
---
## 2. Core Calculation Blocks
Below is a high-level description of each logical block (in code order), translated from Pine into conceptual steps.
### A. Adjust Inputs if “Scalping Mode” Is On
If **Scalping Mode** = true, then:
* `RSI_Length` becomes `max(1, round(Base_RSI_Length / 2))`
* `EMA_Length` becomes `max(1, round(Base_EMA_Length / 2))`
* `ATR_Length` becomes `max(1, round(Base_ATR_Length / 2))`
* `Price_Change_Period` becomes `max(1, round(Base_Price_Change_Period / 2))`
* `SMA_Long_Length`, `SMA_Short1_Length`, and `SMA_Short2_Length` are each halved (minimum 1).
* `ADX_Length` = `max(1, round(Base_ADX_Length / 2))`
* `ADX_Threshold` = `Base_ADX_Threshold × 0.8`
* `Cooldown_Bars` = `max(0, round(Base_Cooldown_Bars / 2))`
Otherwise, all adjusted lengths = their base values.
### B. RSI, EMA & “AI Score” on Current Timeframe
1. **Compute RSI:**
* Uses the (possibly adjusted) `RSI_Length`.
* Denote this as `RSI_Value`.
2. **Compute ATR & Its SMA:**
* `ATR_Value` = `ta.atr(ATR_Length)`.
* `ATR_SMA` = `ta.sma(ATR_Value, ATR_SMA_Length)`.
* Then define `Volatility_Increase` = (`ATR_Value > ATR_SMA`).
* If the volatility has increased, the weighting of RSI vs. EMA changes.
3. **Compute Weights:**
* If `Volatility_Increase == true`, then:
* `RSI_Weight = 0.7`
* `EMA_Weight = 0.3`
* Otherwise:
* `RSI_Weight = 0.3`
* `EMA_Weight = 0.7`
4. **RSI Signal Component (`RSI_Sig`):**
* If `RSI_Value > RSI_Overbought`, then `RSI_Sig = –1`.
* Else if `RSI_Value < RSI_Oversold`, then `RSI_Sig = +1`.
* Otherwise, `RSI_Sig = 0`.
5. **EMA Value & Signal Component (`EMA_Sig`):**
* `EMA_Value` = `ta.ema(close, EMA_Length)`.
* `EMA_Sig = +1` if the current close crosses **above** the EMA; `EMA_Sig = –1` if the current close crosses **below** the EMA; else `0`.
6. **Compute Raw “AI Score”:**
$$
Raw\_AI = (RSI\_Sig \times RSI\_Weight)\;+\;(EMA\_Sig \times EMA\_Weight)
$$
Then,
$$
AI\_Score = \frac{Raw\_AI}{(RSI\_Weight + EMA\_Weight)}
$$
(This normalization ensures the score always ranges between –1 and +1 if both weights sum to 1.)
### C. Dynamic ATR Multiplier & Volatility Filter
1. **Volatility Factor:**
$$
Volatility\_Factor = \frac{ATR\_Value}{ATR\_SMA}
$$
2. **Dynamic ATR Multiplier:**
$$
ATR\_Multiplier = ATR\_Multiplier\_Base \times \sqrt{Volatility\_Factor}
$$
3. **High Volatility Condition (`High_Volatility`):**
* If `Disable_Volatility_Filter == true`, then treat `High_Volatility = true` always.
* Else, `High_Volatility = (ATR_Value > ATR_SMA × ATR_Multiplier)`.
### D. Price Change Percentage
* **Compute Price Change:**
$$
Price\_Change = \frac{(Close - Close )}{Close } \times 100
$$
* This is the percent return from `Price_Change_Period` bars ago to now.
* For a valid long‐trend signal, we require `Price_Change > 0`; for a short trend, `Price_Change < 0`.
### E. Local SMAs for Trend/Reversal Filters
* `SMA_Close_Long` = `ta.sma(close, SMA_Long_Length)`.
* `SMA_Close_Short1` = `ta.sma(close, SMA_Short1_Length)`.
* `SMA_Close_Short2` = `ta.sma(close, SMA_Short2_Length)`.
These three SMAs help define the “local trend” and reversal breakout points:
* **Primary Trend Filter:**
* Price must be above `SMA_Close_Long` for an uptrend filter, or below `SMA_Close_Long` for a downtrend filter.
* **Reversal Filter:**
* A bullish reversal is detected if **(RSI < Oversold AND close crosses above EMA)** OR **(RSI < Oversold AND close crosses above SMA\_Close\_Short1)**.
* A bearish reversal is detected if **(RSI > Overbought AND close crosses below EMA)** OR **(RSI > Overbought AND close crosses below SMA\_Close\_Short1)**.
### F. Manual +DI, –DI & ADX on Current Timeframe
Instead of relying on the built-in `ta.adx`, the script calculates DI and ADX manually. This makes it easier to replicate the exact logic on a higher timeframe via `request.security`. The steps are:
1. **Directional Movement (DM) Components:**
* `Up_Move` = `high – high `
* `Down_Move` = `low – low`
* `Plus_DM` = `Up_Move` if (`Up_Move > Down_Move` AND `Up_Move > 0`), else `0`
* `Minus_DM` = `Down_Move` if (`Down_Move > Up_Move` AND `Down_Move > 0`), else `0`
2. **True Range (TR) Components:**
* `TR1` = `high – low`
* `TR2` = `abs(high – close )`
* `TR3` = `abs(low – close )`
* `True_Range` = `max(TR1, TR2, TR3)`
3. **Smoothed Averages (RMA):**
* `Sm_TR` = `ta.rma(True_Range, ADX_Length)`
* `Sm_Plus` = `ta.rma(Plus_DM, ADX_Length)`
* `Sm_Minus`= `ta.rma(Minus_DM, ADX_Length)`
4. **Compute DI%:**
$$
Plus\_DI = \frac{Sm\_Plus}{Sm\_TR} \times 100,\quad
Minus\_DI = \frac{Sm\_Minus}{Sm\_TR} \times 100
$$
5. **DX and ADX:**
$$
DX = \frac{|Plus\_DI - Minus\_DI|}{Plus\_DI + Minus\_DI} \times 100,\quad
ADX = ta.rma(DX, ADX_Length)
$$
These values are referred to as `(plus_di, minus_di, adx_val)` for the current timeframe.
---
## 3. Higher Timeframe (HTF) Confirmation Function
If **Use Higher Timeframe Confirmation** is enabled, the script calls a single helper (Pine) function `f_htf` with two parameters: the ADX length and the SMA length (both taken from the “base” or “scaled” values). Internally, `f_htf` simply reruns the manual DI/ADX logic (same as above) on the higher timeframe’s bar data, and also includes that timeframe’s closing price and its SMA for trend comparison.
* **Request.Security Call:**
```
= request.security(
syminfo.tickerid,
higher_tf,
f_htf(adx_length, sma_long_len),
lookahead=barmerge.lookahead_off
)
```
* `lookahead=barmerge.lookahead_off` ensures that no HTF value “paints” early; you always see only confirmed HTF bars.
* The returned tuple provides:
1. `ht_close` = HTF closing price
2. `ht_sma` = HTF SMA of length `sma_long_len`
3. `ht_pdi` = HTF +DI percentage
4. `ht_mdi` = HTF –DI percentage
5. `ht_adx` = HTF ADX value
---
## 4. Trend & Reversal Filters (Current & HTF)
### A. Current-Timeframe Trend Filter
1. **Uptrend\_Basic (Current TF)**
$$
(plus\_di > minus\_di)\;\land\;(adx\_val > ADX\_Threshold)\;\land\;(close > SMA\_Close\_Long)
$$
2. **Downtrend\_Basic (Current TF)**
$$
(minus\_di > plus\_di)\;\land\;(adx\_val > ADX\_Threshold)\;\land\;(close < SMA\_Close\_Long)
$$
3. **Trend Confirmation by Bars:**
* `Bars_Since_Below` = number of bars since `close <= SMA_Close_Long`.
* `Bars_Since_Above` = number of bars since `close >= SMA_Close_Long`.
* If `Uptrend_Basic == true` AND `Bars_Since_Below ≥ Trend_Confirmation_Bars` → mark `Uptrend_Confirm = true`.
* If `Downtrend_Basic == true` AND `Bars_Since_Above ≥ Trend_Confirmation_Bars` → mark `Downtrend_Confirm = true`.
### B. Reversal Filters (Current TF)
1. **Bullish Reversal (`Rev_Bullish`):**
* If `(RSI < RSI_Oversold AND close crosses above EMA_Value)` OR
`(RSI < RSI_Oversold AND close crosses above SMA_Close_Short1)`
→ then `Rev_Bullish = true`.
2. **Bearish Reversal (`Rev_Bearish`):**
* If `(RSI > RSI_Overbought AND close crosses below EMA_Value)` OR
`(RSI > RSI_Overbought AND close crosses below SMA_Close_Short1)`
→ then `Rev_Bearish = true`.
### C. Higher-Timeframe Trend Filter (HTF)
1. **HTF Uptrend (`HT_Uptrend`):**
$$
(ht\_pdi > ht\_mdi)\;\land\;(ht\_adx > ADX\_Threshold)\;\land\;(ht\_close > ht\_sma)
$$
2. **HTF Downtrend (`HT_Downtrend`):**
$$
(ht\_mdi > ht\_pdi)\;\land\;(ht\_adx > ADX\_Threshold)\;\land\;(ht\_close < ht\_sma)
$$
3. **Combine Current & HTF:**
* If **Use\_HTF\_Confirmation == true**, then:
* `Uptrend_Confirm := Uptrend_Confirm AND HT_Uptrend`
* `Downtrend_Confirm := Downtrend_Confirm AND HT_Downtrend`
* Otherwise, just use the current timeframe’s `Uptrend_Confirm` and `Downtrend_Confirm`.
4. **Define `CurrentTrend` (Integer):**
* `CurrentTrend = +1` if `Uptrend_Confirm == true`.
* `CurrentTrend = –1` if `Downtrend_Confirm == true`.
* Otherwise, `CurrentTrend = 0`.
5. **Reset “One Trade Per Trend”:**
* There is a persistent variable `LastTradeTrend`.
* Every time `CurrentTrend` flips (i.e., `CurrentTrend != CurrentTrend `), the code sets `LastTradeTrend := 0`.
* That allows one new entry once the detected trend has changed.
---
## 5. One‐Time “Cooldown” Logic
* **`LastSignalBar`**
* A persistent integer (initially undefined).
* After each confirmed long or short entry, `LastSignalBar` is set to the bar index where that signal fired.
* **`Bars_Since_Signal`**
* If `LastSignalBar` is undefined, treat as a very large number (so that initial signals are always allowed).
* Otherwise, `Bars_Since_Signal = bar_index – LastSignalBar`.
* **Cooldown Check:**
* A new long (or short) can only be generated if `(Bars_Since_Signal > Signal_Cooldown)`.
* This prevents multiple signals in rapid succession.
---
## 6. Entry Conditions (No Repaint)
All of the conditions below are calculated “intrabar,” but the script only actually registers a **signal** on **bar close** (`barstate.isconfirmed`) so that signals never repaint.
### A. Trend‐Based “Raw” Conditions
1. **Trend\_Long\_Raw:**
$$
(AI\_Score > AI\_Score\_Threshold)\;\land\;Uptrend\_Confirm\;\land\;High\_Volatility\;\land\;(Price\_Change > 0)
$$
2. **Trend\_Short\_Raw:**
$$
(AI\_Score < -AI\_Score\_Threshold)\;\land\;Downtrend\_Confirm\;\land\;High\_Volatility\;\land\;(Price\_Change < 0)
$$
### B. Reversal “Raw” Conditions
1. **Rev\_Long\_Raw:**
$$
Rev\_Bullish\;\land\;(CurrentTrend \neq +1)
$$
2. **Rev\_Short\_Raw:**
$$
Rev\_Bearish\;\land\;(CurrentTrend \neq -1)
$$
### C. Combine Raw Signals
* `Raw_Long = Trend_Long_Raw OR Rev_Long_Raw`.
* `Raw_Short = Trend_Short_Raw OR Rev_Short_Raw`.
### D. Confirmed Long/Short Signal Flags
On each new bar **close** (`barstate.isconfirmed == true`):
* **Long\_Signal\_Confirmed** can fire if:
1. `Raw_Long == true`
2. `LastTradeTrend != +1` (we haven’t already taken a long in this same trend)
3. `Bars_Since_Signal > Signal_Cooldown`
If all three hold, then on this bar close the code sets:
* `Long_Signal = true`
* `LastTradeTrend := +1`
* `LastSignalBar := bar_index`
Otherwise, `Long_Signal := false` on this bar.
* **Short\_Signal\_Confirmed** works the same way but with `Raw_Short`, `LastTradeTrend != -1`, etc.
If triggered, it sets `Short_Signal = true`, `LastTradeTrend := -1`, and `LastSignalBar := bar_index`. Otherwise `Short_Signal := false`.
* **Important:** If the bar is still forming (`else` branch of `barstate.isconfirmed`), then both `Long_Signal` and `Short_Signal` are forced to `false`. This guarantees that no shape or alert appears until the bar actually closes.
---
## 7. Plotting Entry/Exit Shapes
1. **Trend Long Signal (Triangle Up)**
* Condition: `Long_Signal == true` **AND** `Trend_Long_Raw == true`.
* Appearance: A small, semi-transparent lime green triangle drawn **below** the bar.
2. **Trend Short Signal (Triangle Down)**
* Condition: `Short_Signal == true` **AND** `Trend_Short_Raw == true`.
* Appearance: A small, semi-transparent maroon triangle drawn **above** the bar.
3. **Reversal Long Signal (Circle)**
* Condition: `Long_Signal == true` **AND** `Rev_Long_Raw == true`.
* Appearance: A tiny, more transparent green circle drawn **below** the bar.
4. **Reversal Short Signal (Circle)**
* Condition: `Short_Signal == true` **AND** `Rev_Short_Raw == true`.
* Appearance: A tiny, more transparent red circle drawn **above** the bar.
Since `Long_Signal` and `Short_Signal` only ever become true at bar close, these shapes are never repainted or removed once drawn.
---
## 8. Unified Alert Message
* As soon as a new bar closes with either `Long_Signal` or `Short_Signal == true`, an alert message is sent:
* If `Long_Signal`, then `alert_msg = "action=BUY"`.
* If `Short_Signal`, then `alert_msg = "action=SELL"`.
* If neither, `alert_msg = ""` (no alert).
* The code calls `alert(alert_msg, freq=alert.freq_once_per_bar)` only if `barstate.isconfirmed` and `alert_msg` is non‐empty. This ensures exactly one alert per confirmed bar, no intrabar pops.
---
## 9. Dynamic TP/SL Logic (Minimal Implementation)
Once a long or short position is “open,” the script tracks these variables:
1. **Persistent Flags and Prices** (all persist between bars until reset):
* `InLong` (Boolean)
* `InShort` (Boolean)
* `Long_Max` (Float)
* `Short_Min` (Float)
* `Entry_Price` (Float)
2. **On Bar Close:**
* If `Long_Signal == true` →
* Set `InLong := true`,
* `Entry_Price := close` of that bar,
* `Long_Max := high ` (last bar’s high, so that we’re not using “future” data).
* If `Short_Signal == true` →
* Set `InShort := true`,
* `Entry_Price := close`,
* `Short_Min := low `.
3. **While `InLong == true`:**
* Continuously update `Long_Max = max(Long_Max, current high)` on each bar (intrabar, but finalized each close).
* Compute a dynamic SL:
$$
SL_{Long} = Entry\_Price - (ATR \times SL\_ATR\_Multiplier).
$$
* If **current trend** flips to non-uptrend (`CurrentTrend != +1`), mark `ExitLong = true`.
* Then the routine plots `TP_Long = Long_Max` as a cross (“X”) at that level.
* Set `InLong := false` so that no further changes to `Long_Max` or `Entry_Price` happen on future bars.
4. **While `InShort == true`:**
* Continuously update `Short_Min = min(Short_Min, current low)`.
* Compute a dynamic SL:
$$
SL_{Short} = Entry\_Price + (ATR \times SL\_ATR\_Multiplier).
$$
* If trend flips to non-downtrend (`CurrentTrend != –1`), mark `ExitShort = true`.
* Then the routine plots `TP_Short = Short_Min`.
* Set `InShort := false` to freeze those values.
5. **Plotting TP/SL if “Show Debug” is On:**
* **TP Shapes:**
* When `ExitLong == true`, plot a solid lime “X” at `TP_Long` (highest high).
* When `ExitShort == true`, plot a solid maroon “X” at `TP_Short` (lowest low).
* **SL Lines:**
* If still `InLong`, draw a thin red line at `SL_Long` on each bar.
* If still `InShort`, draw a thin green line at `SL_Short`.
Thus, your charts visually show the highest‐high take-profit cross for longs, the lowest-low take-profit cross for shorts, and a continuously updating trailing SL until the trend flips. Because all of this is triggered on confirmed bars, nothing “jumps around” after the fact.
---
## 10. Debug‐Only Plot Lines (When Enabled)
When **Show Debug Lines** = true, the indicator will also plot:
1. **ATR SMA (Orange):**
* The simple moving average of ATR over `ATR_SMA_Length`.
2. **ATR Threshold (Yellow):**
* `ATR_SMA × ATR_Multiplier` (the dynamically scaled threshold).
3. **+DI & –DI (Current TF):**
* +DI plotted as a green line, –DI plotted as a red line (opacity \~70%).
4. **ADX (Current TF, Blue):**
* A blue line for the present timeframe’s ADX.
5. **ADX Threshold (Gray):**
* A horizontal gray line showing `ADX_Threshold`.
6. **+DI & –DI (HTF, Darker Colors):**
* If HTF confirmation is on, “HTF +DI” is a greener but more transparent line; “HTF –DI” is a redder but more transparent line.
7. **ADX (HTF, Blue but Transparent):**
* HTF ADX plotted in blue (high transparency).
8. **HTF SMA (Orange, Transparent):**
* The higher timeframe’s SMA (same length as `SMA_Long_Length`), drawn in fainter orange.
9. **Volatility Zone Fill (Yellow Tinted Area):**
* Fills the area between `ATR_SMA` and `ATR_SMA × ATR_Multiplier`.
* Indicates “normal” versus “high‐volatility” regimes.
These debug lines are purely visual aids. Disable them if you want a cleaner chart.
---
## 11. Putting It All Together — Step-By-Step Flow
1. **Read Inputs** (RSI lengths, EMA length, ATR settings, etc.).
2. **Optionally Halve All Lengths** if “Scalping Mode” is checked.
3. **Calculate Current TF Indicators:**
* RSI, ATR, ATR\_SMA, EMA, price change, various SMAs, DI/ADX.
4. **Compute “AI Score”** (weighted sum of RSI and EMA signals).
5. **Compute Dynamic ATR Multiplier** and decide if “High Volatility” is true.
6. **Compute Raw Trend/Reversal Conditions** on the current timeframe (without triggering yet).
7. **Fetch HTF Values** in one `request.security` call (SMAs, DI/ADX).
8. **Combine Current & HTF Trend Filters** to confirm `Uptrend_Confirm` or `Downtrend_Confirm`.
9. **Check Reversal Conditions** (price crossing EMA or SMA short, in overbought/oversold zones).
10. **Enforce “One Trade Per Trend”** (clear `LastTradeTrend` whenever `CurrentTrend` flips).
11. **Enforce Cooldown** (must wait at least `Signal_Cooldown` bars since the prior signal).
12. **On Bar Close:**
* If `Raw_Long` AND not already in a long trend AND cooldown met, then fire `Long_Signal`.
* Else if `Raw_Short` AND not already in a short trend AND cooldown met, then fire `Short_Signal`.
* Otherwise, no new signal on this bar.
13. **Plot Long/Short Entry Shapes** according to whether it was a Trend signal or a Reversal signal.
14. **Send Alert** (“action=BUY” or “action=SELL”) exactly once per confirmed bar.
15. **If New Long/Short Signal, Set `InLong`/`InShort`, Record Entry Price, Initialize `Long_Max`/`Short_Min`.**
16. **While `InLong` is true:** Update `Long_Max = max(previous Long_Max, current high)`. Compute `SL_Long`. If the current trend flips (no longer uptrend), set `ExitLong = true`, plot a “TP X,” and close the position logic.
17. **While `InShort` is true:** Similarly update `Short_Min`, compute `SL_Short`, and if trend flips, set `ExitShort = true`, plot a “TP X,” and close the position logic.
18. **Optionally Display Debug Lines** (ATR SMA, ATR threshold, DI/ADX, HTF DI/ADX, etc.).
---
## 12. How to Use in TradingView Community
When you publish this indicator to the TradingView community—choosing “Protected” or “Invite-only” visibility—you can paste the above description into the “Description” field. Users will see exactly what each input does, how signals are generated, and what the various plotted lines represent, **without ever seeing the script source**. In this way, the code itself remains hidden but the logic is fully documented.
1. **Go to “Create New Indicator”** on TradingView.
2. **Paste Your Pine Code** (the full indicator script) in the Pine editor and save it.
3. **Set Visibility = Protected** (or Invite-only).
4. **In the “Description” Text Box, paste the entirety of this document** (steps 1–11).
5. **Click “Publish Script.”**
Users who view your indicator will see its name (“AI Strat Adaptive v3 (NoRepaint)”), a list of all inputs (with default values), and the detailed English description above. They can then load it on any chart, adjust inputs, and see the plotted signals, TP/SL lines, and optional debug overlays—without accessing the underlying Pine code.
---
### Summary of Key Points
* **RSI, EMA, ATR, DI/ADX, and “AI Score”** work together to define “trend vs. reversal.”
* **Dynamic volatility filter** uses ATR and ATR\_SMA to adapt the weighting of RSI vs. EMA and decide whether “volatility is high enough” to permit a trend trade.
* **One trade per detected trend** and a **cooldown period** prevent over‐trading.
* **Higher timeframe confirmation** (optional) further filters out noise.
* **No-repaint logic**:
* All signals only appear at bar close (`barstate.isconfirmed`).
* HTF values are fetched with `lookahead=barmerge.lookahead_off`.
* **Entry shapes** (triangles and circles) clearly mark trend vs. reversal entries.
* **Dynamic TP/SL**: highest‐high (or lowest‐low) since entry is used as TP, ATR×multiplier as SL.
* **Debug mode** (optional) shows every intermediate line for full transparency.
Use this description verbatim (or adapt it slightly for your personal style) when publishing. That way, your community sees exactly how each component works—inputs, functions, filters—while the Pine source code remains private.
CandelaCharts - Turtle Soup Model📝 Overview
The ICT Turtle Soup Model indicator is a precision-engineered tool designed to identify high-probability reversal setups based on ICT’s renowned Turtle Soup strategy.
The Turtle Soup Model is a classic reversal setup that exploits false breakouts beyond previous swing highs or lows. It targets areas where retail traders are trapped into breakout trades, only for the price to reverse sharply in the opposite direction.
Price briefly breaks a previous high (for short setups) or low (for long setups), triggering stop orders and pulling in breakout traders. Once that liquidity is taken, smart money reverses price back inside the range, creating a high-probability fade setup.
📦 Features
Liquidity Levels: Projects forward-looking liquidity levels after a Turtle Soup model is formed, highlighting potential price targets. These projected zones act as magnet levels—areas where price is likely to reach based on the liquidity draw narrative. This allows traders to manage exits and partials with more precision.
Market Structure Shift (MSS): Confirms reversal strength by detecting a bullish or bearish MSS after a sweep. Acts as a secondary confirmation to filter out weak setups.
Custom TF Pairing: Choose your own combination of entry timeframe and context timeframe. For example, trade 5m setups inside a 1h HTF bias — perfect for aligning microstructure with macro intent.
HTF & LTF PD Arrays: Displays HTF PD Arrays (e.g., Fair Value Gaps, Inversion Fair Value Gaps) to serve as confluence zones.
History: Review and backtest past Turtle Soup setups directly on the chart. Toggle historical models on/off to study model behavior across different market conditions.
Killzone Filter: Limit signals to specific trading sessions or time blocks (e.g., New York AM, London, Asia, etc). Avoid signals in low-liquidity or choppy environments.
Standard Deviation: Calculates and projects four levels of standard deviation from the point of model confirmation. These zones help identify overextended moves, mean-reversion opportunities, and confluence with liquidity or PD arrays.
Dashboard: The dashboard displays the active model type, remaining time of the HTF candle, current bias, asset name, and date—providing real-time context and signal clarity at a glance.
⚙️ Settings
Core
Status: Filter models based on status
Bias: Controls what model type will be displayed, bullish or bearish
Fractal: Controls the timeframe pairing that will be used
High Probability Models: Detects and plots only the high-probability models
Sweeps
Sweep: Shows the sweep that forms a model
I-sweep: Controls the visibility of invalidated sweeps
D-purge: Plots the double purge sweeps
S-area: Highlights the sweep area
Liquidity
Liquidity: Displays the liquidity levels that belong to the model
MSS
MSS: Displays the Market Structure Shift for a model
History
History: Controls the number of past models displayed on the chart
Filters
Asia: Filter models based on Asia Killzone hours
London: Filter models based on London Killzone hours
NY AM: Filter models based on NY AM Killzone hours
NY Launch: Filter models based on NY Launch Killzone hours
NY PM: Filter models based on NY PM Killzone hours
Custom: Filter models based on user Custom hours
HTF
Candles: Controls the number of HTF candles that will be visible on the chart
Candles T: Displays the model’s third timeframe candle, which serves as a confirmation of directional bias
NY Open: Display True Day Open line
Offset: Controls the distance of HTF from the current chart
Space: Controls the space between HTF candles
Size: Controls the size of HTF candles
PD Array: Displays ICT PD Arrays
CE Line: Style the equilibrium line of PD Array
Border: Style the border of the PD Array
LTF
H/L Line: Displays on the LTF chart the High and Low of each HTF candle
O/C Line: Displays on the LTF chart the Open and Close of each HTF candle
PD Array: Displays ICT PD Arrays
CE Line: Style the equilibrium line of PD Array
Border: Style the border of the PD Array
Standard Deviation
StDev: Controls standard deviation of available levels
Labels: Controls the size of standard deviation levels
Lines: Controls the line widths and color of standard deviation levels
Dashboard
Panel: Display information about the current model
💡 Framework
The Turtle Soup Model is designed to detect and interpret false breakout patterns by analyzing key price action components, each playing a vital role in identifying liquidity traps and generating actionable reversal signals.
The model incorporates the following timeframe pairing:
15s - 5m - 15m
1m - 5m - 1H
2m - 15m - 2H
3m - 30m - 3H
5m - 60m - 4H
15m - 1H - 8H
30m - 3H - 12H
1H - 4H - 1D
4H - 1D - 1W
1D - 1W - 1M
1W - 1M - 6M
1M - 6M - 12M
Below are the key components that make up the model:
Sweep
D-purge
MSS
Liquidity
Standard Deviation
HTF & LTF PD Arrays
The Turtle Soup Model operates through a defined lifecycle that identifies its current state and determines the validity of a trade opportunity.
The model's lifecycle includes the following statuses:
Formation (grey)
Invalidation (red)
Pre-Invalidation (purple)
Success (green)
By incorporating the phases of Formation, Invalidation, and Success, traders can effectively manage risk, optimize position handling, and capitalize on the high-probability opportunities presented by the Turtle Soup Model.
⚡️ Showcase
Introducing the Turtle Soup Model — a powerful trading tool engineered to detect high-probability false breakout reversals. This indicator helps you pinpoint liquidity sweeps, confirm market structure shifts, and identify precise entry and exit points, enabling more confident, informed, and timely trading decisions.
LTF PD Array
LTF PD Arrays are essential for model formation—a valid Turtle Soup setup will only trigger if a qualifying LTF PD Array is present near the sweep zone.
HTF PD Array
HTF PD Arrays provide macro-level context and are used to validate the direction and strength of the potential reversal.
Timeframe Alignment
In the Turtle Soup trading model, timeframe alignment is an essential structural component. The model relies on multi-timeframe context to identify high-probability reversal setups based on failed breakouts.
High-Probability Model
A high-probability setup forms when key elements align: a Sweep, Market Structure Shift (MSS), LTF and HTF PD Arrays.
Killzone Filters
Filter Turtle Soup Models based on key market sessions: Asia, London, New York AM, New York Launch, and New York PM . This allows you to focus on high-liquidity periods where smart money activity is most likely to occur, improving both the quality and timing of your trade setups.
Unlock your trading edge with the Turtle Soup Model — your go-to tool for sharper insights, smarter decisions, and more confident execution in the markets.
🚨 Alerts
This script offers alert options for all model types. The alerts need to be set up manually from TradingView.
Bearish Model
A bearish model alert is triggered when a model forms, signaling a high sweep, MS,S and LTF PD Array.
Bullish Model
A bullish model alert is triggered when a model forms, signaling a low sweep, MSS and LTF PD Array.
⚠️ Disclaimer
These tools are exclusively available on the TradingView platform.
Our charting tools are intended solely for informational and educational purposes and should not be regarded as financial, investment, or trading advice. They are not designed to predict market movements or offer specific recommendations. Users should be aware that past performance is not indicative of future results and should not rely on these tools for financial decisions. By using these charting tools, the purchaser agrees that the seller and creator hold no responsibility for any decisions made based on information provided by the tools. The purchaser assumes full responsibility and liability for any actions taken and their consequences, including potential financial losses or investment outcomes that may result from the use of these products.
By purchasing, the customer acknowledges and accepts that neither the seller nor the creator is liable for any undesired outcomes stemming from the development, sale, or use of these products. Additionally, the purchaser agrees to indemnify the seller from any liability. If invited through the Friends and Family Program, the purchaser understands that any provided discount code applies only to the initial purchase of Candela's subscription. The purchaser is responsible for canceling or requesting cancellation of their subscription if they choose not to continue at the full retail price. In the event the purchaser no longer wishes to use the products, they must unsubscribe from the membership service, if applicable.
We do not offer reimbursements, refunds, or chargebacks. Once these Terms are accepted at the time of purchase, no reimbursements, refunds, or chargebacks will be issued under any circumstances.
By continuing to use these charting tools, the user confirms their understanding and acceptance of these Terms as outlined in this disclaimer.
CVD Candlestick - Milana TradesThe CVD Candlestick indicator visualizes Cumulative Volume Delta (CVD) in the form of candlesticks, providing a deeper insight into intrabar buying and selling pressure.
Instead of plotting CVD as a simple line, this indicator displays it as a candle chart, allowing traders to analyze the momentum of volume delta just like price action.
How it Works
Delta is calculated as the difference between the bar’s close and open: delta = close - open.
Divergence + ICT-Based Confirmation
This indicator can be used effectively to detect CVD-price divergences, which may signal early signs of weakness in the current trend. When integrated with ICT (Inner Circle Trader) concepts, it becomes a powerful tool for precision-based trading setups.
CVD Divergence Logic:
A bearish divergence occurs when price makes a higher high while CVD makes a lower high — suggesting weakening buyer aggression.
A bullish divergence occurs when price makes a lower low while CVD makes a higher low — signaling potential seller exhaustion.
ICT Confirmation Methods:
After identifying divergence on CVD, traders may look for confirmation using ICT techniques, such as:
1) Liquidity sweeps (e.g. price takes out a prior high/low into a divergence zone)
2) Breaker blocks or order blocks aligning with the divergence area
3) Market structure shifts following divergence
4) Optimal Trade Entry (OTE) levels confluencing with CVD-based signals
Example Setup:
Identify divergence between price and CVD.
Wait for liquidity sweep or market structure break in the same zone.
Confirm entry with lower time frame precision, if needed.
Data Candle
CVD is computed as the cumulative sum of delta over time.
For each bar, a synthetic candlestick is generated based on:
CVD Open = previous CVD value
CVD Close = current CVD value
High/Low = relative range based on Open/Close
Candlestick color indicates whether buyers (green) or sellers (red) dominated the bar.
Note : This implementation uses price-based delta for simplicity and works universally across assets. For bid/ask-based delta, a feed with order book data is required, which is not accessible in Pine Script.
Use Cases
Identify divergences between price and volume delta
Confirm or question breakouts and trend strength
Use in combination with VWAP, volume profile, or liquidity zones
Analyze intrabar sentiment in a candlestick format
Features
CVD represented as full candlesticks
Clear color distinction for delta direction
Works on all symbols and timeframes
Lightweight and responsive
Weekly Open (Current Week Only)📘 Indicator Name: Weekly Open (Current Week Only)
📝 Description:
This indicator plots a horizontal line representing the weekly open price, visible only during the current trading week. At the beginning of each new week (based on TradingView’s weekly time segmentation), the indicator captures the open price of the first candle and draws a constant line across the chart until the week ends. Once the new week begins, the line resets and updates with the new weekly open.
🎯 How to Use – ICT Concepts Integration (Weekly Profile):
This tool is designed to complement ICT (Inner Circle Trader) trading strategies, particularly within the weekly profile framework, by offering a clear and persistent visual of the weekly open, which is a critical reference point in ICT’s market structure theory.
✅ Use Cases:
Directional Bias:
According to ICT concepts, price trading above the weekly open suggests a bullish bias for the week, while trading below it implies bearish conditions.
Traders can use the weekly open line to align their intraweek trades with higher timeframe directional bias.
Dealing Ranges:
Weekly open helps frame the weekly dealing range, especially when combined with other levels like weekly high/low or previous week’s range.
It allows traders to identify potential liquidity pools or areas where price may seek to rebalance.
Mean Reversion Entries:
Price often reverts to or reacts from the weekly open. Traders may use this as a target or entry level, particularly during Monday/Tuesday setups.
Works well in conjunction with concepts like OTE (Optimal Trade Entry) and Judas Swings.
Risk Management:
Acts as a clean and visual anchor to structure stop losses or take-profits based on weekly bias shifts.
Inner Circle Toolkit [TakingProphets]Inner Circle Toolkit — A Complete ICT Trading Companion
The Inner Circle Toolkit is a closed-source, all-in-one trading tool designed for traders following ICT (Inner Circle Trader) and Smart Money Concepts strategies. Every part of this script is built with purpose — not just a mashup of indicators, but a structured framework to help you follow price through the lens of institutional behavior and liquidity theory.
Let’s walk through what it does and how it can help you:
🕒 Session Liquidity Levels (Asia, London, New York, NY Lunch)
The indicator automatically marks the highs and lows of the major trading sessions:
-Asian Session
-London Session
-New York AM Session
-New York Lunch
These levels are important because price often returns to these points to grab liquidity before making a move. This gives traders clear areas to watch for potential sweeps, rejections, or reversals — without having to manually track session timings every day.
REQHs and REQLs — Equal Highs and Lows
This script detects Relatively Equal Highs and Lows (REQHs/REQLs), which are often used by institutions as stop-run targets.
It’s not just looking for copy-paste double tops or bottoms — it uses a tolerance-based algorithm that checks for clusters of similar highs or lows over a given time period. These are likely to hold stops and become magnets for price. When you see these on the chart, you’ll know where the “juice” is sitting.
Fair Value Gaps (FVG) — Multi-Timeframe
The script automatically plots Fair Value Gaps (FVGs) on both:
-Your current chart timeframe
-One or more higher timeframes (like H1 or H4)
These are three-candle gaps that form when price moves aggressively without filling in value. Price often comes back to these areas to rebalance. Seeing both local and higher-timeframe FVGs on your chart gives better context and helps with entries and exits.
The script is optimized so your chart doesn’t get messy — higher timeframe FVGs show up in a cleaner format with visual labels and lighter shading.
SMT Divergence — With Session Logic
This tool includes a real-time SMT divergence detector, based on the behavior of correlated markets like ES vs. NQ.
Here’s how it works:
If ES sweeps a liquidity level (like Asia Low), but NQ doesn’t, the script detects and marks that divergence.
This often signals institutional accumulation or distribution — a high-probability setup.
You won’t have to flip between charts or manually compare — the SMT logic runs automatically and only fires when it matters (at key session levels). It’s a smarter, more focused way to track intermarket divergences.
Daily Highs and Lows — Week-to-Week Structure
The indicator keeps track of the high and low for each day of the week — Monday through Friday — helping you understand how price is evolving across the week.
This helps build a weekly profile:
Did Monday set the high of the week?
Are we sweeping Tuesday’s low on Thursday?
These levels stay visible and labeled, helping you frame daily setups inside the bigger picture.
🕛 Midnight Open & 8:30 AM Open Levels
These two levels are core ICT concepts used to judge whether price is in premium or discount:
Midnight Open (00:00 EST): Used to determine daily bias
New York Open (08:30 EST): Often a launch point for key moves
Both are drawn automatically and extend throughout the day. This helps you align your trades with potential algorithmic bias, especially during NY session volatility.
⏰ 9:45 AM Vertical Marker — Macro Time Reminder
The script draws a subtle vertical line at 9:45 AM EST, which is the start of the NY AM macro session — one of the most likely times to see setups play out.
This is more than just a timer — it’s a visual cue that something important might be setting up soon, especially if you’re already watching SMT, FVGs, or liquidity zones from earlier.
How It All Connects — A Workflow, Not a Mashup
Every feature in this script is connected to the same goal: helping you trade with the Smart Money.
Here’s how the pieces work together:
Session levels → potential stop hunts
Equal highs/lows → targets
FVGs → entry points
SMT divergence → confirmation or warning
Daily highs/lows → Weekly structure frames bias
Open levels → premium vs. discount
Macro line → timing clue for execution
It’s built to help you flow with price action and trade the story, not just random signals.
Why It’s Closed Source — and Original
This script is closed-source because it contains:
A proprietary system for real-time SMT logic (with intermarket sweep detection)
Multi-timeframe FVG detection that auto-filters overlaps
Smart equal-high/low detection using range-based clustering
Optimized UI that shows a lot without overwhelming the chart
There are no moving averages, no public-domain indicators, and no mashup of standard tools. Everything here is purpose-built for traders who follow ICT strategies.
Let us know how we can improve!
Dynamic Customizable 50% Line & Daily High/Low + True Day OpenA Unique Indicator for Precise Market-Level Analysis
This indicator is a fully integrated solution that automates complex market-level calculations and visualizations, offering traders a tool that goes beyond the functionality of existing open-source alternatives. By seamlessly combining several trading concepts into a single script, it delivers efficiency, accuracy, and customization that cater to both novice and professional traders.
Key Features: A Breakdown of What Makes It Unique
1. Adaptive Daily Highs and Lows
Automatically detects and plots daily high and low levels based on the selected time frame, dynamically updating in real time.
Features session-based adjustments, allowing traders to focus on levels that matter for specific trading sessions (e.g., London, New York).
Fully customizable styling, visibility, and alerts tailored to each trader’s preferences.
How It Works:
The indicator calculates daily high and low levels directly from price data, integrating session-specific time offsets to account for global trading hours. These levels provide traders with clear visual markers for key liquidity zones.
2. Automated ICT 50% Range Line
A pioneering implementation of ICT’s mid-range concept, this feature dynamically calculates and displays the midpoint of the daily range.
Offers traders a visual guide to identify premium and discount zones, aiding in determining market bias and potential trade setups.
How It Works:
The script calculates the range between the day’s high and low, dividing it by two to generate the midline. This line updates in real-time, ensuring that traders always see the most current premium and discount levels as price action evolves.
3. Dynamic Market Open Levels
Plots session opens (e.g., Asia, London, New York) and the True Day Open to provide actionable reference points for intra-day trading strategies.
Enhances precision in identifying liquidity shifts and aligning trades with institutional price movements.
How It Works:
The indicator uses predefined session times to calculate and display the opening levels for key trading sessions. It dynamically adjusts for time zones, ensuring accuracy regardless of the trader’s location.
4. Custom Watermark for Enhanced Visualization
Includes an optional watermark feature that allows users to display custom text on their charts.
Ideal for personalization, branding, or highlighting session notes without disrupting the clarity of the chart.
Why This Indicator Stands Out
First-to-Market Automation:
While the ICT 50% range line is a widely recognized concept, this is the first script to automate its calculation, combining it with other pivotal trading levels in a single tool.
All-in-One Functionality:
Unlike open-source alternatives that focus on individual features, this script integrates daily highs/lows, mid-range levels, session opens, and customizable watermarks into one cohesive system. The consolidation reduces the need for multiple indicators and ensures a clean, efficient chart setup.
Dynamic Customization:
Every feature can be adjusted to align with a trader’s strategy, time zone, or aesthetic preferences. This level of adaptability is unmatched in existing tools.
Proprietary Logic:
The indicator’s underlying calculations are built from scratch, leveraging advanced programming techniques to ensure accuracy and reliability. These proprietary methods differentiate it from similar open-source scripts.
How to Use This Indicator
Apply the Indicator:
Add it to your TradingView chart from the library.
Configure Settings:
Use the intuitive settings panel to adjust plotted levels, colors, styles, and visibility. Tailor the indicator to your trading strategy.
Incorporate into Analysis:
Combine the plotted levels with your preferred trading approach to identify liquidity zones, establish market bias, and pinpoint potential reversals or entries.
Stay Focused:
With all key levels automated and updated in real time, traders can focus on execution rather than manual plotting.
Originality and Justification for Closed Source
This script is closed-source due to its unique combination of features and proprietary logic that automates complex trading concepts like the ICT 50% range line and session-specific levels. Open-source alternatives lack this level of integration and customization, making this indicator a valuable and original contribution to the TradingView ecosystem.
What Sets It Apart from Open-Source Scripts?
Unlike open-source tools, this indicator doesn’t just replicate individual features—it enhances and integrates them into a seamless, all-in-one solution that offers traders a more efficient and effective way to analyze the market.
Pure Price Action Structures [LuxAlgo]The Pure Price Action Structures indicator is a pure price action analysis tool designed to automatically identify real-time market structures.
The indicator identifies short-term, intermediate-term, and long-term swing highs and lows, forming the foundation for real-time detection of shifts and breaks in market structure.
Its distinctive/unique feature lies in its reliance solely on price patterns, without being limited by any user-defined input, ensuring a robust and objective analysis of market dynamics.
🔶 USAGE
Market structure is a crucial aspect of understanding price action. The script automatically identifies real-time market structure, enabling traders to comprehend market trends more easily. It assists traders in recognizing both trend changes and continuations.
Market structures are constructed from three sets of swing points, short-term swings, intermediary swings, and long-term swings. Market structures associated with longer-term swing points are indicative of longer-term trends.
A market structure shift (MSS), also known as a change of character (CHoCH), is a significant event in price action analysis that may signal a potential shift in market sentiment or direction. Conversely, a break of structure (BOS) is another significant event in price action analysis that typically indicates a continuation of the prevailing trend.
However, it's important to note that while an MSS can be the first indication of a trend reversal and a BOS signifies a continuation of the prevailing trend, they do not guarantee a complete reversal or continuation of the trend.
In some cases, MSS and BOS levels may also act as liquidity zones or areas of price consolidation, rather than indicating a definitive change in market direction or continuation. Traders should approach them with caution and consider additional factors to confirm the validity of the signal before making trading decisions.
🔶 DETAILS
🔹 Market Structures
Market structures are based on the analysis of price action and aim to identify key levels and patterns in the market, where swing point detection is one of the core concepts within ICT trading methodologies and teachings.
Swing points are automatically detected solely based on market movements, without any reliance on user-defined input.
🔹 Utilizing Swing Points
Swing points are not identified in real time as they occur. While short-term swing points may be displayed with a delay of at most one bar, the identification of intermediate and long-term swing points depends entirely on market movements. Furthermore, detection is not limited by any user-defined input but relies solely on pure price action. Consequently, swing points are not typically utilized in real-time trading scenarios.
Traders often analyze historical swing points to discern market trends and pinpoint potential entry and exit points for their trades. By identifying swing highs and lows, traders can:
Recognize Trends: Swing highs and lows help traders identify the direction of the trend. Higher swing highs and higher swing lows indicate an uptrend, while lower swing highs and lower swing lows indicate a downtrend.
Identify Support and Resistance Levels: Swing highs often serve as resistance levels, known in ICT terminology as Buyside Liquidity Levels, while swing lows function as support levels, also referred to in ICT terminology as Sellside Liquidity Levels. Traders can utilize these levels to strategize entry and exit points for their trades.
Spot Reversal Patterns: Swing points can form various reversal patterns, such as double tops or bottoms, head and shoulders patterns, and triangles. Recognizing these patterns can signal potential trend reversals, allowing traders to adjust their strategies accordingly.
Set Stop Loss and Take Profit Levels: In the context of ICT teachings, swing levels represent specific price levels where a concentration of buy or sell orders is anticipated. Traders can target these liquidity levels/pools to accumulate or distribute their positions, essentially using swing points to establish stop loss and take profit levels for their trades.
Overall, swing points provide valuable information about market dynamics and can assist traders in making more informed trading decisions.
🔶 SETTINGS
🔹 Structures
Swings and Size: Toggles the visibility of the structure's highs and lows, assigns an icon corresponding to the structures, and controls the size of the icons.
Market Structures: Toggles the visibility of the market structures.
Market Structure Labels: Controls the visibility of labels that highlight the type of market structure.
Line Style and Width: Customizes the style and width of the lines representing the market structure.
Swing and Line Colors: Customizes colors for the icons representing highs and lows, and the lines and labels representing the market structure.
🔶 RELATED SCRIPTS
Market-Structures-(Intrabar).
Buyside-Sellside-Liquidity.
Daye's Quarterly TheoryDaye's Quarterly Theory Indicator
Description
The Daye's Quarterly Theory Indicator divides trading time into smaller units to help traders identify potential accumulation, manipulation, distribution, and reversal/continuation phases within a day. It applies these time divisions to your charts, offering visual guidance aligned with ICT's PO3 concept:
Accumulation (A): The phase where positions are accumulated.
Manipulation (M): The phase where the market moves against the prevailing trend to trap traders.
Distribution (D): The phase where accumulated positions are distributed.
Reversal/Continuation (X): The phase indicating either a reversal or continuation of the trend.
This indicator breaks down time into quarters at different levels:
Daily Quarters:
Q1: 18:00 - 00:00 (Asia)
Q2: 00:00 - 06:00 (London)
Q3: 06:00 - 12:00 (NY AM)
Q4: 12:00 - 18:00 (NY PM)
90-Minute Quarters:
Q1: 18:00 - 19:30
Q2: 19:30 - 21:00
Q3: 21:00 - 22:30
Q4: 22:30 - 00:00
Micro Quarters (22.5 minutes) (Displayed on 7-minute TF or lower):
Q1: 18:00 - 18:22:30
Q2: 18:22:30 - 18:45
Q3: 18:45 - 19:07:30
Q4: 19:07:30 - 19:30
Features
Time Box Visualization: Highlights different quarters of the trading day to help visualize market phases.
Customizable Colors: Allows users to set different colors for daily, 90-minute, and micro quarters.
Flexible Settings: Designed to work out-of-the-box on both light and dark background charts.
ICT PO3 Alignment: Helps traders align their strategies with ICT's Accumulation, Manipulation, Distribution, and Reversal/Continuation phases.
Usage
Apply this indicator to your NQ1! or ES1! charts and observe the confluence with ICT's macro times. Use it to predict potential market phases and optimize your trading strategy by buying after manipulation down or selling after manipulation up.
Note: The indicator's display may vary based on the timeframe viewed and broker feeds. Back-test and research for best results on your preferred assets.
London Intraday Protraction (Normal + Delayed) [Pro+]The London Intraday Protraction° is an automatic market profiling tool designed from ICT Time and price parameters projected for London Session studies:
Time:
Central Bank Dealers Range (CBDR)
Asian Range (AR)
London Session
Price:
Central Bank Dealers Range Size (CBDR)
Central Bank Dealers Range (CBDR) Standard Deviations
Asian Range Size (AR)
Protraction (fake move, trap)
This tool allows you to keep your attention dialled into the Session harnessing the concepts listed above through historical data (statistics + previous sessions), and live visuals.
This tool automatically annotates your CBDR and AR reference points, and prints range values in pips as a label above the CBDR and AR; it also projects the CBDR deviations encompassed in London's Time opportunity – up to three standard deviations.
The range values for the Time-based ranges, and price action are filtered into conditional statements as taught in the Core Content from the Inner Circle Trader (ICT).
There are three profile types:
1) Normal Protraction – the high/low of the Day is anticipated in early London Session.
2) Delayed Protraction – due to invalid Price Parameters (Range Sizes) the Protraction is expected in the later stages of the London Session (this protraction may, or may not be, the high/low of the Day).
3) Normal Protraction Negated – due to invalid Time Parameters, the Protraction is expected in the later stages of the London Session (this protraction may, or may not be, the high/low of the Day).
Notice the color coding of the specific scenarios, as it always repeats – it will aid pattern recognition.
The statistical table shows the total number of viewable London Sessions on chart; it provides the total number of filtered Normal Protraction Sessions, and Delayed Protractions Sessions. It also indicates a percentage of how many filtered conditions held true and provided clean price action or narrative.
The true power of this tool lies in its specific window of Time opportunity, and solid conditional logic provided by ICT's teachings; having the London Session analysis automated, allows you to focus on price, and bias, rather than drawing predetermined ICT parameters.
Additional Features:
Customizable Colors
Auto-adapting Colors
Customizable Stat Table Position
Customizable Stat Table Size
These tools are available ONLY on the TradingView platform.
Terms and Conditions
These charting tools are products provided for informational and educational purposes only and do not constitute financial, investment, or trading advice. They are not designed to predict market movements or provide specific recommendations. Users should be aware that past performance is not indicative of future results and should not be relied upon for making financial decisions. By using these tools, the purchaser agrees that the seller and the creator are not responsible for any decisions made based on the information provided by these charting tools. The purchaser assumes full responsibility and liability for any actions taken and the consequences thereof, including any loss of money or investments that may occur as a result of using these products. Hence, by purchasing these charting tools, the customer accepts and acknowledges that the seller and the creator are not liable nor responsible for any unwanted outcome that arises from the development, the sale, or the use of these products. Finally, the purchaser indemnifies the seller from any and all liability.
By continuing to use these financial tools, the user acknowledges and agrees to the terms outlined in this legal disclaimer.
LANZ Origins🔷 LANZ Origins – Multi-Framework Liquidity, Structure & Risk Management Overlay
LANZ Origins is an advanced multi-framework visualization toolkit that unifies key institutional concepts into one efficient interface. Designed for professional traders, it merges session mapping, liquidity analysis, imbalance detection, multi-account risk control, and higher-timeframe candle tracing — all in a single overlay.
🧩 Core Components
🈵 Asian Range Liquidity
Automatically detects and projects the Asian session range (19:00–02:00 NY) with an optional mid-price line (50 %). This provides visual context for intraday liquidity and manipulation zones commonly referenced in ICT-style analysis.
📊 Imbalance Detector
Highlights Fair Value Gaps (FVG), Opening Gaps (OG), and Volume Imbalances (VI) directly on-chart, using separate color schemes for bullish and bearish inefficiencies. Each element can be customized by width, ATR filter, and extension length.
🕯️ Higher-Timeframe Candles (ICT Style)
Displays multi-timeframe candles (HTF1–HTF6) simultaneously — e.g., 5 m, 30 m, 1 h, 4 h, 1 D, 1 W — each rendered with independent wick, border, and fill settings. Includes remaining-time counters, timeframe labels, and optional imbalance shading between bodies.
📈 Market Structure (ZigZag 30 m)
Replicates 30-minute swing structure to all active timeframes, producing dynamic pivots with live extension. Ideal for contextualizing BOS/CHoCH events across multiple scales.
💸 Multi-Account Lot Size Panel
Calculates position size for up to five accounts simultaneously, using your defined capital, risk %, and fixed SL distance (in pips). Results appear in a clean table at the bottom-right corner of the chart.
🎨 Session Visualization
Colored backgrounds mark key trading phases:
🟢 Day division
🔴 No-action zone
🔵 Kill-zone
🟡 Hold session
⚙️ Customization & Performance
Every module can be toggled individually, with full color, opacity, and style control. The script is optimized for overlay use and supports up to 500 boxes, lines, and labels with efficient resource handling.
🧠 Best Use Case
LANZ Origins is ideal for traders who follow:
Smart Money Concepts / ICT methodology
Liquidity & Imbalance-based trading
Multi-timeframe confluence setups
Risk-based position sizing workflows
Use it to observe how price interacts with liquidity pools, higher-timeframe candles, and imbalances within key sessions — while monitoring lot size risk in real time.
📌 Recommended Setup
Timeframes: 30m - 5m – 3m
Pairs: FX
Session Timezone: New York (EST/EDT)
Combine with: LANZ Strategy series for execution and journaling
💬 Note
This indicator does not generate buy/sell signals. It’s a visual and analytical tool built to support your own decision-making process.
Liquidity On TimeIn ICT, liquidity means pools of orders resting in the market.
These are usually stop-losses or pending orders from retail traders.
Liquidity on time combines liquidity with the time-of-day element.
ICT teaches that markets deliver liquidity at specific trading sessions.
Main sessions: London Open (2–5 AM EST) and New York Open (7–10 AM EST).
These times concentrate order flow, creating high-probability moves.
Smart Money hunts liquidity at those hours, not randomly.
Example: During London Open, stops above Asian range = liquidity target.
New York session often sweeps London highs/lows before real move.
Thus, timing tells us when liquidity will likely be attacked.
"Liquidity on time" = confluence of where liquidity sits and when it’s taken.
It explains why moves often happen at precise clock times, not anytime.
Traders use it to avoid chasing price outside killzones.
ICT emphasizes “time & price” must agree for valid setups.
Price alone is incomplete; time confirms when Smart Money acts.
This prevents overtrading in quiet hours.
Example setup: Liquidity sweep at 9:30 AM NYSE open → entry trigger.
Liquidity on time also explains engineered stops runs before news.
The concept ties into Killzones, FVGs, and SMT divergence.
In short, Liquidity on Time = knowing WHEN liquidity will be raided.






















