Sessions & Liquidity with HTF Order BlocksWHAT IT DOES
This indicator combines three intraday concepts on one chart: the actual price range of each trading session, the unswept extremes those sessions leave behind, and higher-timeframe order blocks. The goal is to see where liquidity is resting and where the higher timeframe last shifted direction, without stacking three separate scripts on the chart.
1. SESSION RANGE
For each of the three sessions (Asia, London, New York) the script tracks the running high and low and draws them as two horizontal segments bounded by the session window itself — the segments do not run across the whole chart. While a session is open, the segments are projected forward to its scheduled close time, which is computed from the session string (HHMM-HHMM) in the selected time zone; overnight windows such as 1600-0100 are handled by rolling the close into the next day. When the session ends, the projection is trimmed back to the last bar of the session, so what remains on the chart is the true range of that session and nothing more.
Session windows, names, colors and the time zone are all inputs. The defaults are set for Europe/Moscow (UTC+3): Asia 03:00-12:00, London 10:00-19:00, New York 16:00-01:00.
2. LIQUIDITY LEVELS (HH session / HL session)
The moment a session closes, its high and low are converted into liquidity levels: dashed lines extended to the right and re-anchored to the current bar on every new bar. The idea is the standard one — a session extreme that has not been traded through is resting liquidity, and price tends to reach for it.
A level is considered swept as soon as any bar trades beyond it (high > level for a high, low < level for a low). A swept level is deleted from the chart instead of being greyed out, so at any moment the chart only shows liquidity that is still intact. Optionally an alert fires on the sweep, on bar close, with the level type and price in the message.
Only the N most recent levels per side are kept (4 by default) so the chart does not accumulate old lines.
3. HIGHER-TIMEFRAME ORDER BLOCKS
Order blocks are calculated on a configurable higher timeframe (1H by default) via request.security with lookahead_off, so no future data is used and the blocks do not repaint into the past.
The definition used here is deliberately simple and mechanical:
- a bullish block is the last bearish candle after which the next candle closed above its high;
- a bearish block is the last bullish candle after which the next candle closed below its low.
That candle's range (its high and low) becomes the zone. A block is drawn from the timestamp of the origin candle and its right edge follows the close of the session currently in progress — when London and New York overlap, the earlier close is used, and the edge jumps forward once that session ends. This ties the zones visually to the session structure rather than letting them extend indefinitely.
A block is removed as soon as price closes beyond it (below a bullish zone, above a bearish zone) — a wick through the zone does not mitigate it. Only the N most recent blocks per side are kept (3 by default).
HOW TO USE IT
- Intended timeframes: 5m, 15m, 30m, 1H. Sessions do not exist on daily and above, so on 1D and higher the script only prints a warning label and draws nothing.
- Set the time zone input to the one your session hours are written in — everything else follows from it.
- A typical read: price sweeps an HH session level (the level disappears and the alert fires), then reacts from a higher-timeframe order block in the opposite direction. The sweep marks where liquidity was taken; the block marks where the reaction is expected.
- The session ranges themselves are useful as context: a New York range opening entirely above the London range is a different market than one opening inside it.
ALERTS
Enable "Alert when a level is swept" and create an alert on the indicator with "Any alert() function call". The message contains the level type (HH/HL session) and its price.
ORIGINALITY AND NOTES
Session boxes, liquidity levels and order blocks all exist as separate published scripts. What is specific to this one is how the three are wired together: session extremes become liquidity levels automatically on session close, swept levels are deleted rather than kept, and the right edge of every order block is bound to the close of the session currently running instead of extending forever. All levels come from closed sessions and all order blocks are read with lookahead_off, so nothing on the chart is drawn using data that was not available at that time.
This script is not a signal generator and produces no entries or exits — it is a context tool.
Indicator

SATTAM | CRT+TBSOVERVIEW
A rule-based implementation of Candle Range Theory (CRT) combined with Turtle Body Soup (TBS). It reads the setup on a higher timeframe, requires a key level for context, waits for a liquidity sweep, then marks the entry and manages the trade on your current chart.
HOW IT WORKS
Seven stages are evaluated in order. A failure at any stage cancels everything downstream.
1. Higher timeframe selection — automatic pairing (a 5m chart reads 4H, a 1H chart reads Daily), or set manually
2. Key level detection — Old High, Old Low, Order Block, Fair Value Gap
3. CRT detection — accumulation, manipulation, distribution
4. Time filter — configurable blocked hours
5. TBS confirmation — a body sweep of prior liquidity plus a reversal close
6. Entry model — Model #1, CISD, or MSS+FVG
7. Trade management — stop, three targets, breakeven
THE CRT SEQUENCE
Accumulation — one candle defines the range; its high becomes CRH, its low CRL.
Manipulation — a later candle wicks through the boundary but closes back inside. Direction and target are set here.
Distribution — price travels toward the opposite side.
The decisive rule: the break is made by the wick, with the close returning inside. A close beyond the range is a genuine breakout, not a trap — the setup is invalidated and labelled a reverse CRT.
Four CRT types are classified automatically. The fourth, where price is swept twice, is flagged as a caution and draws its T.S level.
The manipulation is drawn as a zone spanning the candles that carried price past the level and back, so the depth of the sweep is visible rather than implied.
KEY LEVELS
A CRT in isolation is treated as insufficient — the methodology names a missing key level as a primary failure cause. Confluence is required by default and can be disabled.
Display toggles for each zone type control drawing only. Hidden zones are still detected, still satisfy confluence, and still count toward the zone cap. Hiding a zone type never changes which signals fire.
TURTLE BODY SOUP
Two conditions together: a candle closes beyond a prior swing (the sweep is made by the body, not the wick), and a subsequent candle closes back beyond the last opposing candle.
ENTRY MODELS
Model #1 — a full candle closes beyond the previous candle; entry at that close.
CISD — the opening level of the last directional leg is broken; entry on the break.
MSS + FVG — structure breaks with displacement leaving a gap; entry from the gap on the retrace.
All three can run together, or one can be selected. Each fires once per setup.
TRADE MANAGEMENT
Stop sits beyond the manipulation and sweep extremes with an ATR buffer.
Targets follow the range rather than fixed risk multiples:
TP1 — the range midpoint, the 50% level the methodology marks in its diagrams
TP2 — the opposite extreme, the target the methodology names; risk-to-reward is measured here
TP3 — an extension beyond the range, by a configurable multiple
A target that does not sit beyond the entry is dropped rather than drawn behind price. Once TP1 trades through, the stop moves to entry. The stop is checked before the targets on each bar, so a bar touching both is reported as the loss.
ADDITIONAL MODULES
Accumulation and Distribution — detects range compression and classifies it by which way price finally leaves.
Sweep — marks wick raids on internal pivots that no close has broken, with a cooldown so the same area is not reported repeatedly.
Daily Bias — previous day and previous week high and low, each anchored to the candle that made it and extended with price, plus unmitigated swing points.
DASHBOARD AND ALERTS
An on-chart table reports the higher timeframe in use, CRT stage and type, direction, CRH and CRL, the three targets, live trade state, key level type, active entry model, daily bias, and time filter status.
Seventeen alert conditions cover every stage from CRT formation through target completion.
REPAINTING
Higher timeframe data is requested with a one-bar offset so only closed higher timeframe candles are used. Signals are evaluated on bar close by default. The script does not repaint under these settings. Disabling the bar-close option allows intrabar signals, which can change before the candle completes — this is stated in the setting's tooltip.
NOTES
The blocked-hours defaults follow the source methodology, which does not state a reference timezone. The timezone input therefore defaults to New York and should be adjusted to your own reference.
Interface labels are bilingual. Text drawn on the chart switches between Arabic and English; setting names show both, because Pine requires input titles to be known at compile time.
This script implements the CRT+TBS methodology as published by its original author. Credit for the underlying concepts belongs to that source; the Pine implementation is my own.
This is an analysis tool. It organises a discretionary method into explicit rules and visible states — it does not predict outcomes and is not a signal service. Position sizing and risk management remain entirely the responsibility of the user. Test on historical data and in simulation before applying to a live account.
نظرة عامة
تطبيق قائم على القواعد لنظرية نطاق الشمعة (CRT) مدمجاً مع حساء جسم السلحفاة (TBS). يقرأ الإعداد على فريم كبير، ويشترط منطقة اهتمام، وينتظر سحب السيولة، ثم يحدد الدخول ويدير الصفقة على شارتك.
آلية العمل
سبع مراحل متسلسلة. فشل أي مرحلة يُلغي ما بعدها.
١. اختيار الفريم الكبير — ترابط تلقائي حسب جدول المنهج، أو يدوي
٢. رصد مناطق الاهتمام — قمة سابقة، قاع سابق، أوردر بلوك، فجوة سعرية
٣. رصد الـCRT — تجميع، تلاعب، توزيع
٤. فلتر الأوقات الممنوعة
٥. تأكيد الـTBS
٦. مودل الدخول
٧. إدارة الصفقة
تسلسل الـCRT
تجميع — شمعة تحدد النطاق، قمتها CRH وقاعها CRL.
تلاعب — شمعة لاحقة يخترق ويكها الحد ثم يعود الإغلاق داخل النطاق. هنا يُحدَّد الاتجاه والهدف.
توزيع — السعر يقصد الطرف المقابل.
القاعدة الحاسمة: الاختراق بالويك والإغلاق راجع داخل النطاق. أما الإغلاق خارجه فاختراق حقيقي لا فخ — ويُلغى الإعداد ويوصف بـ«CRT عكسي».
تُصنَّف الأنواع الأربعة تلقائياً. والرابع، حيث يُسحب السعر مرتين، يُعلَّم كتحذير ويُرسم مستوى T.S الخاص به.
ويُرسم التلاعب منطقةً تغطي الشمعات التي تجاوزت الحد وعادت، فيظهر عمق السحب بدل أن يُستنتج.
مناطق الاهتمام
الـCRT وحده غير كافٍ — فالمنهج يعدّ غياب منطقة الاهتمام سبباً رئيسياً للفشل. الاشتراط مفعّل افتراضياً ويمكن إطفاؤه.
مفاتيح إظهار كل نوع تتحكم بالرسم وحده. المناطق المخفية تُرصد وتُحقق شرط الالتقاء وتُحتسب في الحد. إخفاء نوع لا يغيّر الإشارات إطلاقاً.
حساء جسم السلحفاة
شرطان معاً: إغلاق شمعة يتجاوز قمة أو قاعاً سابقاً — السحب بالجسم لا بالويك — ثم إغلاق شمعة لاحقة خلف آخر شمعة معاكسة.
مودلات الدخول
Model #1 — إغلاق شمعة كاملة خلف السابقة، والدخول عند ذلك الإغلاق.
CISD — كسر مستوى فتح آخر موجة، والدخول فور الكسر.
MSS + FVG — كسر بنيوي بإزاحة تخلّف فجوة، والدخول من الفجوة عند الارتداد.
تعمل الثلاثة معاً أو يُختار واحد. كل مودل يُطلق مرة واحدة لكل إعداد.
إدارة الصفقة
الوقف خلف أقصى امتداد للتلاعب والسحب، مع هامش محسوب بالـATR.
الأهداف تتبع الرنج لا مضاعفات ثابتة للمخاطرة:
TP1 — منتصف الرنج، وهو مستوى ٥٠٪ الذي يعلّمه المنهج في رسوماته
TP2 — الطرف المقابل، هدف المنهج المعلن، وعليه تُقاس نسبة المخاطرة للعائد
TP3 — امتداد بعد الرنج بمضاعف قابل للتعديل
الهدف الذي لا يقع خلف سعر الدخول يُهمَل بدل رسمه خلف السعر. وعند تحقق TP1 ينتقل الوقف لنقطة التعادل. ويُفحص الوقف قبل الأهداف في كل شمعة، فالشمعة التي تلمس الاثنين تُحتسب خسارة.
وحدات إضافية
التجميع والتوزيع — يرصد انضغاط النطاق ويصنّفه باتجاه خروج السعر منه.
سحب السيولة — يعلّم غارات الويك على نقاط داخلية لم يكسرها إغلاق، مع فترة تهدئة تمنع تكرار الإشارة.
الانحياز اليومي — أعلى وأدنى اليوم والأسبوع السابقين، كل مستوى مربوط بالشمعة التي صنعته وممتد مع السعر، مع نقاط التأرجح غير المستهلكة.
الجدول والتنبيهات
جدول على الشارت يعرض الفريم الكبير المستخدم، ومرحلة الـCRT ونوعه، والاتجاه، وCRH وCRL، والأهداف الثلاثة، وحالة الصفقة الحيّة، ونوع منطقة الاهتمام، والمودل النشط، والانحياز اليومي، وحالة فلتر الوقت.
سبعة عشر تنبيهاً تغطي كل مرحلة من تكوّن الـCRT حتى تحقق الأهداف.
إعادة الرسم
تُطلب بيانات الفريم الكبير بإزاحة شمعة واحدة، فلا تُستخدم إلا الشمعات المغلقة. وتُقيَّم الإشارات على إغلاق الشمعة افتراضياً. المؤشر لا يعيد الرسم بهذه الإعدادات. وإطفاء خيار الإغلاق يسمح بإشارات داخل الشمعة قد تتغيّر قبل اكتمالها، وهذا مذكور في تلميح الإعداد.
ملاحظات
الساعات الممنوعة الافتراضية تتبع المنهج المصدر، وهو لا يذكر التوقيت المرجعي. لذلك يأتي إعداد المنطقة الزمنية بتوقيت نيويورك افتراضياً، ويُضبط حسب توقيتك.
واجهة الإعدادات ثنائية اللغة. نصوص الشارت تتبدّل بين العربية والإنجليزية، أما أسماء الإعدادات فتظهر باللغتين معاً لأن Pine يشترط معرفة عناوين المدخلات وقت التصريف.
هذا المؤشر يطبّق منهجية CRT+TBS كما نشرها مؤلفها الأصلي. الفضل في المفاهيم الأساسية يعود لذلك المصدر، والتنفيذ بلغة Pine من عملي.
أداة تحليل تنظّم منهجاً اجتهادياً في قواعد صريحة وحالات مرئية — لا تتنبأ بالنتائج وليست خدمة توصيات. تحديد حجم المركز وإدارة المخاطر مسؤولية المستخدم وحده. اختبره على البيانات التاريخية وفي التداول التجريبي قبل تطبيقه على حساب حقيقي. Indicator

Inversion Order Blocks [iOB] (Zeiierman)█ Overview
Inversion Order Blocks (Zeiierman) identifies when traditional Order Blocks fail and transition into inversion zones where the opposing side of the market may gain control.
A regular Order Block represents the final opposing candle before a strong displacement move breaks market structure. These areas are commonly monitored as potential support or resistance because they mark the origin of aggressive buying or selling pressure.
However, not every Order Block remains valid.
Some Order Blocks are broken as price closes completely through them. Rather than immediately discarding these failed zones, the indicator stores them inside an internal memory system and watches for a later opposing Order Block to form in the same price region.
When an Order Block fails, the indicator remembers it. If an opposite Order Block forms soon after in the same price area, either overlapping it or sitting very close to it, that area becomes an Inversion Order Block.
This creates a more selective framework that focuses on failed Order Blocks followed by confirmation from the opposite side of the market.
⚪ Order Block Detection
The indicator continuously scans the price for displacement candles that close through recent market structure.
A Bullish Order Block forms when:
• A bullish displacement candle closes above the previous structure high.
• The candle range exceeds the minimum ATR requirement.
• The candle body occupies the required percentage of its total range.
• The nearest bearish candle before the displacement becomes the bullish Order Block.
A Bearish Order Block forms when:
• A bearish displacement candle closes below the previous structure low.
• The candle range exceeds the minimum ATR requirement.
• The candle body occupies the required percentage of its total range.
• The nearest bullish candle before the displacement becomes the bearish Order Block.
⚪ Inversion Order Block Detection
Once an Order Block is created, it enters the internal memory system. If price later closes through the far side of the Order Block, the zone is considered broken.
A broken Order Block is not immediately forgotten. It remains eligible to pair with a later opposing Order Block for the duration of the Pairing Window.
Unlike strict inversion models, the two Order Blocks do not need to overlap perfectly. They may also form within a small ATR-adjusted proximity controlled by the Maximum Pairing Proximity setting.
Bullish iOB
• A bearish Order Block is broken.
• A bullish Order Block forms within the Pairing Window.
• The two zones overlap or form within the allowed proximity.
• The resulting area becomes a bullish Inversion Order Block.
Bearish iOB
• A bullish Order Block is broken.
• A bearish Order Block forms within the Pairing Window.
• The two zones overlap or form within the allowed proximity.
• The resulting area becomes a bearish Inversion Order Block.
█ How It Works
⚪ Order Block Detection
The script searches for strong displacement candles that close beyond recent market structure.
Each displacement is filtered using:
• ATR-based candle range.
• Minimum candle body ratio.
• Minimum Order Block size.
The nearest opposing candle before the displacement becomes the Order Block.
⚪ Memory & iOB Formation
Every valid Order Block is stored internally.
A bullish OB is considered broken when price closes below it, while a bearish OB is broken when price closes above it.
If a later opposing OB forms within the Pairing Window, the script checks whether the two zones overlap or sit within the Maximum Pairing Proximity.
bool overlaps = overlapHi > overlapLo
bool nearby = not overlaps and gap <= tolerance
When they overlap, the shared price area becomes the iOB. When they are only nearby, the failed original OB becomes the inversion zone.
⚪ Zone Management
Each zone can transition through several states:
• Active
• Tested
• Mitigated
• Frozen
• Removed
Mitigation may use wick touches or candle closes and can occur at the 50% level or after a full fill. Mitigated zones can either be deleted or retained as historical references.
⚪ Dynamic Zone Merging
Nearby compatible zones may be combined visually to reduce clutter.
• Bullish OBs merge with bullish OBs.
• Bearish OBs merge with bearish OBs.
• Bullish and bearish iOBs may merge into one neutral Merged iOB.
• Live and retained mitigated zones remain separate.
Retained zones only merge when their historical active periods overlap.
⚪ Distance Filtering
Zones beyond the selected ATR distance from the current price are hidden from the chart.
Hidden zones remain internally active and continue updating their memory, mitigation, and alert states.
█ How to Use
⚪ Bullish iOB Retest
After a bearish Order Block fails and a later bullish Order Block confirms the inversion, the resulting bullish iOB may act as support.
Rather than entering during the initial displacement, traders can wait for price to retrace into the bullish iOB.
A bullish reaction from the zone may indicate that buyers are defending the former resistance area.
⚪ Bearish iOB Retest
After a bullish Order Block fails and a later bearish Order Block confirms the inversion, the resulting bearish iOB may act as resistance.
Traders can wait for price to retrace into the bearish iOB and observe whether selling pressure returns.
A bearish reaction may indicate that sellers are defending the former support area.
█ Settings
Structure Lookback: Number of completed bars used to determine the structure high or low that a displacement candle must close through.
Order Block Search: Number of previous candles searched to locate the nearest opposing candle before the displacement.
Minimum Displacement Range: Minimum candle range measured as a multiple of ATR before a displacement is accepted.
Minimum Displacement Body: Minimum percentage of the displacement candle that must be occupied by its body.
Order Block Source: Select whether Order Blocks use the complete candle range or only the candle body.
Minimum Order Block Size: Minimum ATR-adjusted size required before an Order Block is accepted.
Pairing Window: Number of bars a broken Order Block remains eligible to pair with a later opposing Order Block.
Maximum Memory Age: Maximum number of bars an Order Block may remain inside the internal memory system.
Maximum Pairing Proximity: Maximum ATR-adjusted distance allowed between a failed Order Block and a later opposing Order Block. A value of zero requires direct overlap.
Delete Mitigated Zones: Removes mitigated zones or freezes them as historical references.
Mitigation Level: Select whether mitigation occurs at the 50% equilibrium level or after a complete fill.
Mitigation Source: Uses wick penetration or candle closes to confirm mitigation.
Merge Retained Mitigated Zones: Visually combines compatible historical zones that overlap in both price and active time.
Mitigated Zone Transparency: Controls how transparent retained historical zones appear.
Show Mitigated EQ Lines: Displays or hides equilibrium lines inside retained mitigated zones.
Filter Distant Zones: Hides Order Blocks and iOBs that are far away from the current price.
Maximum Distance From Price: Maximum ATR distance allowed before a zone becomes hidden.
Merge Nearby Zones: Visually combines compatible live zones and retained mitigated zones.
Maximum Merge Distance: Controls how close compatible zones must be before they merge visually.
Show iOBs: Displays bullish, bearish, and merged Inversion Order Blocks.
Show Regular OBs: Displays regular bullish and bearish Order Blocks. Detection and memory remain active when regular OBs are hidden.
Show EQ Line: Displays the equilibrium midpoint of each visible zone.
Fade With Age: Gradually increases zone transparency as the zone becomes older.
-----------------
Disclaimer
The content provided in my scripts, indicators, ideas, algorithms, and systems is for educational and informational purposes only. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
Indicator

Asian Range Liquidity Sweep - Kill Zone ReversalASIAN RANGE LIQUIDITY SWEEP — the complete ICT Asian Range liquidity model in one indicator
The Asia session builds a small, quiet range. London opens, runs the stops sitting above or below that range, and then walks the price the other way. That single move is one of the most repeatable things in FX, and this indicator is the full rule set for it: the range, the liquidity raid, the higher-timeframe point of interest that makes the raid tradeable, the entry, the stop, the targets — and, just as important, the days on which the raid will NOT happen.
Everything is drawn in New York time, the way the model is defined.
━━━ WHAT IT DOES ━━━
① ASIAN RANGE (20:00 – 00:00 New York)
A time based range, not a structural one. The box, its high, its low and its 50 % are projected forward into the whole trading day. The high is buy side liquidity, the low is sell side liquidity. Direction is mechanical and never inverts: above the range this model only sells, below the range it only buys.
② HIGHER TIMEFRAME POI ENGINE — the filter that decides everything
A raid of the Asian high on its own is, most of the time, a trap. The raid only becomes high probability when it lands inside a higher-timeframe point of interest. The indicator scans three timeframes at once (15m / 1h / 4h by default) for
· Fair Value Gaps
· Order Blocks
· Breaker Blocks (a demand block that price closed through and that now acts as resistance)
· Inverse Fair Value Gaps (a bullish gap that got closed through and flipped bearish)
Every zone is anchored to the exact candles that built it, is extended while it is alive, and is dropped once it is used up or once it sits too far from the daily range to matter. On top of that, the higher-timeframe structure itself has to agree: bearish structure for shorts, bullish for longs.
③ LONDON KILL ZONE (02:00 – 05:00, optional 01:30 start) — Trade 1
Between those hours the indicator waits for price to raid the Asian high (or low) INTO one of those zones. A raid is not even accepted as valid until price has traded back into a fair value gap. Then it waits for a lower-timeframe confirmation and enters at a point of interest — never at market:
· MSS + FVG — market structure shift, entry on the retracement into the gap
· CISD — change in state of delivery, entry back at the CISD level itself
· FVG tap — proximal edge on small gaps, 50 % on big ones
· HIDDEN ORDER BLOCK — the opposite-colour candle trapped between two same-direction fair value gaps. The block almost nobody marks, and the sharpest entry in the whole model
That list is a risk ladder: 1m MSS+FVG is the most aggressive and pays the most, 15m FVG is the safest, wins most often and pays the least. Pick the timeframe you actually want to trade and run the indicator there.
Stop goes on the protective structure that belongs to the entry zone. Target 1 is always the opposite side of the Asian range. Target 2 extends to the next inducement swing — the draw for the day.
④ NEW YORK KILL ZONE (07:00 – 10:00) — Trade 2, the continuation
When the London raid then breaks the OPPOSITE side of the Asian range with displacement, the London extreme is very likely the high or the low of the day. The indicator draws the optimal trade entry fibonacci over that impulse — 0.5 / 0.618 / 0.705 / 0.79 — and takes the continuation from the retracement into it, with the stop beyond 0.79 or 1.0. The setup is strongest when the origin zone was a 4h zone, because the whole day is then a 4h market-maker model running internal to external. If the draw on liquidity was already reached before New York opens, the day is flagged as low probability and skipped.
⑤ THE NO-SWEEP FILTERS — the part almost nobody explains
Two situations mean the raid you are waiting for will never come:
· HTF POI ALREADY TAPPED IN ASIA — price worked into the zone during the Asian session and then broke structure against the range. The Asian high is now protected. The indicator says so on the chart and points you at the fallbacks instead: the 50 % of the range, an internal range high (trend line liquidity), or a fair value gap built inside the Asian session.
· STRONG HIGH / STRONG LOW INSIDE THE RANGE — a sweep immediately followed by a break of structure. That extreme is protected. What looks like equal highs later on is a rejection-block reversal, not a raid. Wait for the sweep and you miss the trade.
⑥ NEWS FILTER
High-impact US news in the New York session turns London into a range or a one-way run with no reversal. Pine cannot read a news feed, so paste the dates and those days are skipped.
━━━ WHY EVERY SIGNAL EXPLAINS ITSELF ━━━
Hover any signal pill and you get the full reasoning, not a label:
the range and its size, the exact price the liquidity was raided at, which point of interest it landed in, what the higher timeframe structure was doing, which confirmation fired, whether the raid was validated by a fair value gap, plus entry, stop, both targets, risk in pips, reward in pips and the R multiple.
Setups that were found but rejected are explained too. A "NO TRADE" tag tells you the raid, the zone and the confirmation were all there but the reward did not pay for the stop — so you learn the filter instead of wondering why nothing fired.
Every zone, every structure event, the range lines, the OTE levels and both education cards carry the same kind of tooltip. There is a HOW TO READ THIS card and an honest BEFORE YOU TRADE THIS card on the chart.
━━━ COCKPIT PANEL ━━━
Live session state, symbol, chart timeframe, higher-timeframe bias, the full Asian range with a PROTECTED / OPEN flag on each side, an eight-step checklist that fills in as the setup builds, the open position with stop and target, a large status line, a rough win / loss / break-even tracker and the timestamp of the last signal.
━━━ ALERTS AND AUTOMATION ━━━
Every event fires a clean JSON payload ready for a webhook — entry, stop, both targets, the range boundaries, the point of interest that produced the signal, symbol, exchange, timeframe, volume and an optional account field. Events: ENTRY, TP1, SL, BE, SWEEP, RANGE. Five plain-language alertconditions are included as well for anybody who just wants a notification.
━━━ SETTINGS WORTH KNOWING ━━━
· Sessions are fully configurable if your broker feed needs a different reference
· Turn individual POI types and POI timeframes on and off
· Choose one confirmation model or let it take the first valid trigger
· Four stop modes, two-target management, break-even at a chosen R
· Full chart theme with navy background, mint / red candles and session shading — or switch it off and keep your own
━━━ HONEST NOTES ━━━
This model is mechanical up to the trigger. Direction is fixed and never inverts, the windows are fixed, the filters are fixed — but the final judgement, is this really the high of the session, stays discretionary. Anybody telling you a setup is 100 % mechanical is selling you something.
Expect zero to four setups a day across two pairs, roughly 20 pips average per trade, and losing days. Judge it weekly and monthly, never daily. The safest entry model fires rarely by design; the aggressive ones fire more and stop out more.
The win / loss counter in the panel is a rough on-chart tracker that assumes a fill at the marked price and resolves target before stop within the same bar. It is not a backtest and it is not a performance claim.
This indicator is a study tool. It is not financial advice.
━━━ CREDIT ━━━
The rule set follows the well-known ICT Asian-sweep model as it is taught publicly in the ICT community. The implementation, the point-of-interest engine, the no-sweep filters, the panel and the design are original work.
Open source — read it, change it, learn from it.
WHY THESE PARTS BELONG TOGETHER
The session range, the higher-timeframe point of interest and the lower-timeframe confirmation form
a single filter chain, and the model does not work with any link missing. The range supplies the
liquidity pool that is going to be raided, the higher-timeframe zone decides whether that raid is a
reversal or a trap, and the lower-timeframe trigger decides when. A raid without a zone is noise,
a zone without a raid has nothing to react to, and both without a trigger have no entry.
Indicator

Indicator

FVG Confluence [AFD]This Pine Script v6 overlay documents confirmed fair-value gaps (FVGs), optional order blocks (OBs), and overlap evidence from two selected higher timeframes. Its main output is a confluence band whose label identifies the two source timeframes and zone types when two same-direction zones overlap by a configurable amount.
This is a descriptive chart tool. It records what the source zones have done, how they overlap, and how price has interacted with them. It does not provide trade instructions, manage positions, or forecast an outcome.
────────── 1. Overview ──────────
The script has three related layers:
- Chart FVGs: three-candle fair-value gaps detected on the chart timeframe.
- Optional Order Blocks: the last opposite candle identified before a confirmed swing break.
- MTF Confluence: an overlap between source zones from Compare timeframe 1 and Compare timeframe 2.
By default, MTF confluence bands and labels showing their source timeframes and zone types are visible. Raw higher-timeframe source boxes are hidden by default and can be shown per timeframe with a choice of FVGs, Order Blocks, or both. Standalone chart FVG boxes and chart OB boxes are off by default; each appears when its respective Enable FVGs or Enable Order Blocks setting is turned on.
────────── 2. How FVGs are detected ──────────
A bullish chart FVG is recorded when the current confirmed bar's low is above the high from two bars earlier. A bearish FVG is the inverse. The Minimum gap filter removes gaps smaller than the selected ATR multiple or tick distance. The default filter is 0.05 ATR.
The same gap test is evaluated in each selected higher-timeframe context. Higher-timeframe events are admitted once per source origin time, which prevents the same source event from producing duplicate records on the chart.
────────── 3. FVG lifecycle ──────────
Each FVG keeps its original boundaries and tracks penetration using the selected Mitigation / fill rule:
- FRESH - price has not touched or entered the gap.
- TESTED - price has touched or entered the gap but has not reached its 50% midpoint.
- MITIGATED - price has reached the 50% midpoint but has not fully traversed the gap.
- FILLED - price has fully traversed the gap. Filled chart FVGs are removed unless Keep filled FVGs is enabled.
Wick mode uses the candle range for penetration and state changes. Close mode requires the candle close to reach the relevant boundary. The rule is applied consistently to chart FVGs, chart order blocks, and higher-timeframe FVG source zones. Higher-timeframe OB sources track penetration with the same FRESH → TESTED → MITIGATED lifecycle as chart OBs, so raw HTF OB labels show state and fill percentage. A higher-timeframe zone (FVG or OB) that is fully traversed becomes FILLED: it stays tracked internally, is hidden by default, can be revealed per timeframe with the Show 100% filled zones settings, and never feeds confluence.
A boundary touch counts as TESTED, while the fill percentage measures penetration through the original zone. A boundary-only test can therefore still display 0% Filled until price advances farther into the zone.
Shrink on partial fill changes only the displayed near edge of a chart FVG. The original boundaries and 50% midpoint remain available for fill measurement and lifecycle identity. Order Blocks have their own OB partial fill setting (off by default) that shrinks OB boxes the same way. Breaker blocks restart measurement from the near edge in the new direction.
The FVG Labels settings can show the percentage filled and, optionally, the FVG lifecycle state. Labels can be placed inside the box or to its right, with user-selected offset, size, and text color.
────────── 4. Order blocks ──────────
When enabled, the script confirms swing points using Swing strength and searches the configured OB candle lookback for the last opposite candle before a confirmed break. It records bullish and bearish blocks separately and limits the retained count per side.
OBs use the same Wick or Close interaction basis as FVGs. They can move from FRESH to TESTED and MITIGATED. If Show breakers is enabled, a block that is crossed changes direction and becomes a BREAKER with a new penetration measurement. If breakers are disabled, the crossed block is removed. When OB partial fill is enabled, OB boxes shrink their near edge inward as confirmed penetration advances, and breaker blocks restart measurement from the near edge in the new direction.
Chart OB detection, retention, and drawing are controlled together in the Order Blocks settings and are off by default.
────────── 5. MTF confluence ──────────
Confluence uses only the two selected comparison timeframes. The chart timeframe is not a confluence source. Both comparison timeframes must be strictly higher than the chart timeframe and must be different from each other. If either timeframe is invalid, or either source is disabled, the corresponding confluence path is not active.
The script compares source zones by:
1. Direction - bullish zones pair only with bullish zones, and bearish zones pair only with bearish zones.
2. Original geometry - qualification uses the original source boundaries, not a partially shrunk display edge.
3. Minimum overlap - the positive overlap must meet the configured threshold, measured as a multiple of the confirmed TF1 timeframe ATR and subject to a minimum tick. Using a fixed-timeframe ATR keeps band qualification stable when the chart timeframe changes.
4. Source details - a band retains both source origins, source timeframes, source types, and its own formation time.
The source HTF calculation uses shifted, completed higher-timeframe values and confirms pivot-based events before admission. This avoids using a developing higher-timeframe event, but it introduces confirmation delay. A source zone may therefore appear after the originating higher-timeframe movement rather than during it.
Raw HTF FVGs / OBs can be shown separately for inspection, with a per-timeframe choice of FVGs, Order Blocks, or both. The type selection is display-only; all raw zones still feed confluence. Each timeframe has its own raw partial fill setting (TF1 raw partial fill and TF2 raw partial fill) that shrinks the near edge of that timeframe's raw zone boxes (both FVGs and OBs) as penetration advances, and its own Show 100% filled zones setting (off by default) that keeps fully traversed raw zones visible. Raw HTF labels show state and fill percentage for all zone kinds. Confluence is FVG-only by default. If Include Order Blocks in confluence is enabled, same-direction FVG/OB, OB/FVG, and OB/OB overlaps can also qualify. Any band containing an OB is labeled STATIC because it does not have the pure FVG/FVG fill cycle.
────────── 6. Reading confluence bands ──────────
The band color describes overlap density, not a rating:
- One active overlap - the single-overlap color.
- Two active overlaps - the two-overlap color.
- Three or more active overlaps - the dense-overlap color.
Density counts active same-direction confluence records that share positive price overlap and are currently visible under the state and filled-band filters. Changing those visibility filters can therefore change a displayed band's density color. Density does not measure historical performance, reliability, or the future behavior of a level.
For pure FVG/FVG bands, Confluence partial fill can shrink the displayed band as confirmed penetration advances. Confluence fill % label reports penetration through the original overlap. The fill percentage is descriptive and is not a forecast.
Confluence labels can show:
- Source timeframes and source types.
- The number of overlapping active bands.
- Fill percentage for pure FVG/FVG bands on its own label line.
- FRESH, TESTED, PARTIAL, FILLED, or STATIC state, shown together with age on one horizontal metadata line.
- Age in chart bars or HH:MM:SS.
- Visits and breaks in the tooltip.
Fresh, Tested, Partial, and Filled visibility can be controlled independently. Filled confluence bands are hidden by default. Nearby labels are grouped onto a shared horizontal row and spaced by a configurable number of chart bars; this changes label placement only and does not change the bands.
────────── 7. Alerts ──────────
The script exposes two confirmed-bar alert conditions for chart-timeframe detections:
- FVG formed - a new confirmed chart-timeframe FVG.
- Order Block formed - a new confirmed chart-timeframe order block.
There are no built-in alerts for confluence formation, fills, mitigation, state changes, or position management. You can create PulseWire alerts from the two available conditions.
────────── 8. Settings and defaults ──────────
FVG Drawings controls chart FVG detection, drawing, per-side retention, Wick or Close measurement, ATR or tick filtering, partial display shrink, filled-zone retention, lifecycle display, and bullish/bearish colors.
FVG Labels controls fill percentage, position, right-side offset, text size, and label color.
Order Blocks controls OB detection, drawing, per-side retention, swing strength, candle lookback, breaker behavior, partial fill, and colors.
MTF Confluence controls the MTF master enable, the two comparison timeframes, source inclusion, raw HTF visibility, and — independently per timeframe — raw zone types (FVGs, Order Blocks, or both), raw partial fill, filled-zone visibility, and source color. It also controls HTF retention, HTF lookback days, and raw labels. The default comparison pair is 30 minutes and 60 minutes.
Confluence Evidence controls partial fill, fill labels, OB-containing overlap inclusion, minimum overlap, maximum retained bands, source-detail labels, filled-band visibility, overlap colors, state and age display, label collision spacing, age format, and state filters.
Visuals controls the confluence label size.
────────── 9. How to use ──────────
1. Start on a time-based chart timeframe below both comparison timeframes. The default 30-minute and 60-minute pair is intended to be used from a lower chart timeframe such as 15 minutes.
2. Leave both comparison source checkboxes enabled when you want TF1 × TF2 confluence. Selecting the same comparison timeframe twice does not create a valid pair.
3. Use the default FVG-only mode when you want all bands to have the FVG lifecycle and fill measurement. Enable OB inclusion only when STATIC FVG/OB, OB/FVG, or OB/OB overlap evidence is useful to your analysis.
4. Use Wick or Close consistently with how you want penetration measured. Close mode ignores wick-only penetration for state and fill progression.
5. Turn on raw HTF zones, or enable chart FVGs/OBs in their own settings sections, only when you need to inspect those layers. They are intentionally hidden in the default chart view.
6. Use the state, age, fill, density, and source details to understand what produced a band and how price has interacted with it. Do not treat color density as a score.
────────── 10. What this script does not do ──────────
- It is not a strategy and does not provide backtests, win rates, performance statistics, or position sizing.
- It does not place orders, manage risk, or generate trade instructions.
- It does not use the chart timeframe as a confluence source.
- It does not create confluence from opposite-direction zones.
- It does not guarantee that every historical FVG or OB remains visible. Source retention, HTF lookback, state filters, filled-band visibility, and PulseWire drawing limits can remove or hide records.
- It does not eliminate higher-timeframe confirmation delay. A valid setting can show no band when no recent confirmed source pair qualifies.
- It does not claim that every chart, symbol, session, or timeframe will produce the same number of zones. ATR, tick size, available history, market hours, and price behavior affect detection.
────────── 11. Limitations and developing values ──────────
Lifecycle mutations, HTF source admission, confluence identity, fill measurement, and state changes are gated on confirmed bars. Boxes and labels are redrawn on the last chart bar so their right edge, text, colors, and collision layout reflect the current view. This means the display can update while the underlying lifecycle remains confirmation-gated.
Changing the chart timeframe or either comparison timeframe clears the prior MTF context and rebuilds it from confirmed source history. The selected comparison timeframes must be higher than the new chart timeframe. If the new context has no retained qualifying source pair, the confluence view can be empty until confirmed source events are available. Band qualification uses the confirmed TF1 timeframe ATR, so the same source pairs qualify regardless of the chart timeframe. In the Wick basis, fill percentages and lifecycle states are chart-timeframe independent; in the Close basis, penetration follows chart-bar closes, so fill percentages and states can legitimately differ between chart timeframes.
The script is capped by PulseWire drawing limits and by its own retention settings. Chart and higher-timeframe zone arrays prune older records according to their configured limits. The confluence maximum is a retained-record capacity: when a new qualifying pair arrives beyond the cap, the oldest record is removed first. A crowded chart can therefore show fewer drawings than the underlying detection logic considered. Higher-timeframe records are also limited by the HTF lookback-days and max-zones-per-HTF/type settings.
The implementation is confirmation-gated, but this description does not make an absolute non-repainting claim. Verify the current publication on PulseWire with the intended symbols, timeframes, input changes, reload behavior, and Bar Replay before relying on its historical appearance.
────────── 12. Originality ──────────
FVGs, order blocks, pivots, ATR filters, and multi-timeframe analysis are established market-analysis concepts. The implementation focus here is showing which two source zones created each overlap and tracking its lifecycle: each confluence band preserves the source records that formed it, keeps immutable original overlap geometry, separates display-only partial fill from band identity, and exposes state, age, fill, visit, break, source, and overlap-density information instead of hiding them inside an unexplained composite value.
The source is open for inspection under the MPL 2.0 license. The calculations and visual labels are intended to be read as a record of price interaction, not as a promise about what happens next.
────────── 13. Disclaimer ──────────
For educational and informational purposes only. Not financial advice. Past chart behavior does not predict future results. Indicator

Indicator

Liq Sweep + CHoCH + OB InstantLIQ SWEEP + CHoCH + OB INSTANT
This script is a three-stage liquidity-trap detector that resolves a full smart-money sequence into a single confirmed entry, with no retest wait. It is not a collection of separate SMC tools stacked on one chart. It is one state machine in which each stage must validate before the next can arm, and only the completed sequence produces a signal.
WHY THE SEQUENCE MATTERS
Most liquidity-based scripts fire on a single event: a sweep, or a change of character, or an order-block tap. Each of those in isolation is noisy. Sweeps occur constantly without follow-through. CHoCH prints in chop with no displacement behind it. Order blocks form everywhere.
The idea here is that none of those events is treated as a signal on its own. They are treated as preconditions that must occur in order, within a defined window, all supporting the same directional thesis. The script formalizes the trap as a sequence and refuses to act until that sequence completes. A sweep with no CHoCH is discarded. A CHoCH with no identifiable order block produces nothing. Only the full chain fires.
HOW THE COMPONENTS INTEGRATE
STAGE 1 — LIQUIDITY SWEEP
Pivot-based swing highs and lows are tracked in rolling arrays. A sweep registers only when price wicks through a tracked level and closes back inside it, marking that resting liquidity above a high or below a low has been taken rather than genuinely broken. Each sweep opens a candidate setup and records the opposite-side structure level that will be watched next.
STAGE 2 — CHANGE OF CHARACTER
A candidate is promoted only if price then closes through that opposite structure level within a user-set lookback window. This is the directional confirmation: after buy-side liquidity is swept, a close below the prior swing low confirms reversal intent, and the mirror applies for the bullish case. Candidates that never produce a CHoCH inside the window expire and are discarded, so a stale sweep from fifty bars ago cannot fire later.
STAGE 3 — ORDER BLOCK AS ENTRY
On a confirmed CHoCH, the script scans back for the last opposing candle before the displacement move and marks that zone as the order block, along with its 50 percent midline. Because the sweep and the CHoCH have already validated the setup, order-block identification is treated as the entry trigger itself rather than waiting for a retest that may never come. The stop is placed beyond the swept level, since that level is what the setup is predicated on. The target is derived either from a configurable risk-to-reward multiple of the stop distance, or from an optional fixed-percentage mode.
The three stages are not independent indicators sharing a chart. Stage 2 cannot exist without Stage 1's swept level. Stage 3's scan window is anchored to Stage 2's displacement bar. The stop is defined by Stage 1's level. Removing any stage collapses the logic entirely, which is why they are integrated into one state machine rather than published as separate tools.
WHAT YOU SEE
Confirmed setups draw the swept-liquidity line, the accumulation zone spanning sweep to CHoCH, the highlighted CHoCH candle, and the order-block zone with its midline. Entries print a labeled trade box showing entry, stop, target and risk-to-reward. Exits are marked with the realized result as take-profit, stop, or time-based close. A status dashboard summarizes current stage, direction, swept level, active order block, setup counts, exit mode, position state, and trade management values.
SETTINGS
Structure — swing lookback for pivot detection, wick-sweep requirement, CHoCH lookback window.
Order Block — scan depth, minimum rejection-wick ratio, midline toggle, maximum zone age.
Trade Management — risk-to-reward ratio, stop buffer beyond the swept level, maximum bars in trade, cooldown between signals, RSI filter bounds, label toggles.
Exit Management — optional percentage-based take-profit and stop mode. Default behavior uses the risk-to-reward derived from the swept level.
Visuals — zone colors, ghost candles, dashboard, per-stage step labels.
HOW TO USE
Apply to a clean chart. Watch the dashboard stage indicator move from scanning, to sweep, to CHoCH as a setup builds. A trade box prints when the order block is identified on a confirmed bar. Tune the swing lookback and order-block scan depth to your instrument and timeframe. The tooltips include suggested starting ranges for futures and crypto. The risk-to-reward ratio controls target distance measured off the swept-level stop.
REFERENCE SETTINGS
The defaults are deliberately neutral. As a concrete starting point, these are the values I run on MNQ:
Swing Lookback 6
CHoCH Lookback 10
OB Scan Bars 50
Enable % Exit Mode: on
TP 0.25%
SL 1.0%
Max Bars in Trade 55
Cooldown Bars 3
These are a starting point for one instrument, not an optimized or recommended configuration, and they are not intended to suggest any particular outcome. Different instruments, timeframes and volatility conditions will call for different values. Treat them as a place to begin your own testing rather than a setting to adopt as-is.
NON-REPAINTING
All structure, sweep, CHoCH and order-block evaluations run on confirmed bar closes. Pivot detection uses right-side confirmation. Signals do not repaint once a bar has closed. Take-profit and stop levels are evaluated intrabar for realistic exit marking, while the entry itself is fixed on the confirmed bar that completes the sequence.
DISCLAIMER
For educational and informational purposes only. This is not financial advice, and nothing here is a guarantee of future results. Markets are uncertain and past behavior does not predict future behavior. Always do your own analysis and use proper risk management.
Indicator

RPFXBYDAN Liquidity Sweep Cascade [SMC]# Publication settings
**Publish this open-source, not invite-only/closed-source.** Every concept used here (liquidity sweeps, CISD, FVG, order blocks, kill zones, SMT divergence) is public-domain ICT/SMC terminology, not proprietary logic — PulseWire's moderators specifically hold closed-source and invite-only scripts to a much higher bar (you have to justify what's unique enough to hide, and why it's worth paying for). Open-source sidesteps that requirement entirely and is the safer, more defensible choice for a script built from publicly-known building blocks combined in an original way.
# Title
RPFXBYDAN Liquidity Sweep Cascade
# Description
**Why these pieces are combined (not a mashup for its own sake)**
Each concept here exists to solve a specific failure mode of using it alone. A liquidity sweep by itself is noise — most swing highs/lows get taken out without reversing. Requiring a CISD (a shift in orderflow) after the sweep filters out sweeps that don't actually reverse. Requiring the entry to land inside a Fair Value Gap in the discount/premium half of the range filters out CISDs that reverse but leave a bad entry price. None of these three alone is a tradeable signal; the combination is the point.
The three-tier structure exists because a signal on one timeframe alone doesn't tell you if you're trading with or against the bigger picture. Tier 1 establishes the higher-timeframe liquidity/imbalance context. Tier 2 only starts hunting once Tier 1 completes, confirming the reaction on a mid-timeframe inside a session kill zone. Tier 3 only starts once Tier 2 completes, and is the only tier that produces a real stop/target — it's the culmination of the other two agreeing, not an independent signal. That sequential gating (each tier consumed by exactly one attempt from the tier above it) is the original mechanism in this script, not the individual concepts themselves.
SMT divergence and Inverse FVG tracking are optional add-ons layered on top of that same gated engine, off by default, for traders who already use those specific confluences.
**What this is**
A three-tier Smart Money Concepts checklist that only flags a setup once liquidity, structure, and risk all line up across three timeframes:
- **Tier 1 – HTF Context**: a higher-timeframe liquidity sweep reacting into an HTF imbalance (your Point of Interest).
- **Tier 2 – Mid Structure**: inside a session/kill-zone window, a mid-timeframe (default 15m) sweep, shift in orderflow (CISD), and Fair Value Gap / order block — only evaluated once Tier 1 has completed.
- **Tier 3 – Entry**: on your chart's own timeframe, a sweep, CISD, and FVG (or a confirmed Inverse FVG retest if no fresh FVG appears) — only evaluated once Tier 2 has completed. This is the only tier with a defined stop, a fixed R-multiple take-profit, and a Risk:Reward gate.
Optional confluence layers: SMT divergence against a correlated symbol (e.g. ES vs NQ), and an HTF directional bias readout.
A live table shows exactly which of the checklist items are satisfied, tier by tier, so you can see why a setup is or isn't "complete" instead of guessing.
**How to use it**
1. Set Tier 1's HTF input to something meaningfully higher than your chart (e.g. 4H/Daily if you trade 5m-15m).
2. Set Tier 2's mid-timeframe input (default 15m).
3. Enable the kill zone(s) you actually trade (New York AM is on by default).
4. Optionally set a correlated symbol for SMT divergence.
5. Watch the table: green checks across all three tiers plus R:R = a completed setup. Alerts fire automatically on completion (bullish and bearish are separate alert conditions).
**Limitations (read before trusting a green table)**
- This is a deterministic, rule-based approximation of a discretionary trading concept. Every judgment call in the code — how CISD is defined, where the 50% discount/premium line sits, how SMT divergence is measured — is this author's interpretation, not a universally agreed-upon standard.
- Higher-timeframe values only update when that HTF candle closes, by design, so they can lag price intentionally.
- Bar Replay does not render this script's drawings/table live (a PulseWire platform limitation with drawing objects, not a bug in the script) — use a live or normal historical chart to watch it work.
- No indicator predicts the future. Backtest and forward-test on your own instrument and timeframe before risking real money. Nothing here is financial advice.
Indicator

Flops - OrderblocksDescription
The Advanced Flops - Orderblock indicator is a sophisticated, algorithmic supply and demand tracking system. It dynamically identifies trend-following institutional structures by detecting "Flops" (often known as Orderblocks) in real-time, visualizing exact areas where momentum aggressively shifted.
Instead of relying on a rigid, single-candle definition, this engine operates on a multi-timeframe perspective natively. It simultaneously evaluates 1-Candle, 2-Candle, and 3-Candle breakout logic on every single bar to validate structural breaks and paint flawless institutional supply/demand zones on your chart.
🎯 How It Works: The 1, 2, 3 Logic
The engine evaluates the market looking for a sequence of momentum candles that break structure against the previous opposing candle. By running the 1, 2, and 3-candle logic simultaneously, the script guarantees it catches both immediate V-shape reversals (1-candle) and slower, grinding structural breaks (3-candle) without drawing overlapping or duplicated zones.
Bullish ( Flops - Orderblock ): Formed when the price forcefully breaks the high of the last bearish candle. This indicates newly created demand.
Bearish ( Flops - Orderblock ): Formed when the price forcefully breaks the low of the last bullish candle. This indicates newly created supply.
✨ Key Features
Simultaneous Multi-Candle Logic: Runs three independent sequence checkers at the exact same time to ensure no valid Orderblock is ever missed.
Dynamic Mitigation Engine: Active zones project forward indefinitely into future price action until they are touched or closed through (customizable).
Single Mitigated Memory: A sleek visual feature that automatically deletes old, invalidated zones. It keeps only the absolute last mitigated zone on your chart to show you the most recent point of failure, without cluttering your screen with historical noise.
Trend Deactivation: The script understands market structure. If the dominant trend fully flips (e.g., from Bullish to Bearish based on a 3-candle sequence), all opposing active ( Flops - Orderblock ) zones are immediately deactivated and labeled as "Trend Flip", preventing you from taking trades against a confirmed structural shift.
Boundary Customization: Choose exactly how you want your Orderblock zones measured—either wick-to-wick (High/Low) or body-to-body (Open/Close).
⚙️ Settings
Flop Boundary: Define zones using full Wicks or strictly Candle Bodies.
Mitigation Mode: Choose whether a zone is invalidated the moment a wick "Touches" it, or only when a candle "Closes" fully through the zone.
Show Only Last Mitigated Flop: Keep your charts clean by automatically erasing old mitigated lines and only leaving the single most recent mitigated Orderblock on the chart.
Deactivate on Trend Flip: Automatically invalidate all active supply zones if the macro trend shifts bullish (and vice versa).
Full Visual Control: Customize colors, line widths, line styles (solid, dashed, dotted), and label visibility to fit your exact chart aesthetic. Indicator

Confluence FVG Finder | ProjectSyndicateConfluence FVG Finder automatically identifies and validates high-probability, non-repainting Fair Value Gaps. It filters for structural quality using an ATR-based imbalance filter, normalizes all zone heights for consistency, and embeds a live multi-timeframe confluence engine inside every zone to provide a quantifiable, data-driven edge.
🧠 Live Multi-Timeframe Engine — This is not a single-timeframe tool. Every FVG zone displayed on the chart is the result of a live, proximity-based confluence engine scanning three independent higher timeframes (default H1, H2, H4) simultaneously. Each label shows exactly how many timeframes confirmed the zone, its composite strength rating (0–10), the session it formed in, its age, and its exact pip height, giving you an instant structural edge.
🎯 Imbalance-Validated FVGs — The engine doesn't just mark any three-candle gap. It validates each Fair Value Gap on the higher timeframes by requiring the gap to exceed a user-defined multiple of ATR, filtering out insignificant micro-gaps and focusing only on imbalances that reflect true market-moving intent before they are even considered for merging.
🎨 ATR-Normalized Zones — Eliminates visual noise from inconsistent gap sizes. This feature forces every merged FVG zone to a uniform, ATR-based height (e.g., 0.75x ATR). This provides a clean, consistent chart and allows for a more objective analysis of price interaction with zones of equal visual weight, preventing oversized gaps from distorting the chart.
📊 Proximity-Based Merging — Timeframes rarely align perfectly to the pip. The confluence engine uses an intelligent ATR-based proximity tolerance to detect when Fair Value Gaps from different timeframes are clustered in the same price territory. It then mathematically merges them into a single, high-probability "Confluence Zone," ensuring you don't miss valid setups due to minor price discrepancies across timeframes.
✅ Chart-Timeframe Independent — The engine's credibility comes from its architectural stability. Each timeframe is detected entirely inside its own data context and every zone is anchored to the timestamp it formed on, so — unlike standard MTF indicators that repaint or shift zones depending on the chart you are viewing — the merged zones are mathematically identical whether you view them on a 5-minute, 15-minute, or 1-hour chart.
🔧 Fully Customizable — Control every aspect of the engine, including the 3 target timeframes (default H1 / H2 / H4), the Minimum Timeframe Confluence threshold (e.g., require 3 out of 3 TFs), the Proximity Tolerance multiplier, the Minimum Strength Filter, the per-timeframe strength bonus, the mitigation mode (Touch / Full Fill / 50% Fill), and the colors/visibility of Bullish and Bearish zones.
🔬 Why this algo is unique: Standard FVG indicators are subjective — often just shading every three-candle gap on the current timeframe with no proof of higher-timeframe alignment. The Confluence FVG Engine transforms this into an objective, multi-dimensional instrument. It doesn't just show you a gap; it proves the imbalance is backed by aligned intent across multiple timeframes, merging them into a single, undeniable area of interest on the exact chart you are viewing.
🌐 Apply to Gold (XAUUSD), Indices (US30, NAS100), Forex Majors, and Crypto. With the default H1 / H2 / H4 structure, execute from any timeframe at or below H1 (1m–1h) while the engine tracks the H1, H2, and H4 imbalances. The engine is designed for assets that exhibit clear impulsive moves and respect deep supply/demand dynamics.
🗂️ How to use this? The most critical metrics are the Timeframe Confluence Count and the Strength Rating. A zone confirmed by 3 timeframes with a Strength of 8.0+ indicates a massive structural edge. Consider only taking trades from these high-confluence zones that align with the prevailing higher-timeframe trend. The embedded label also shows the exact "pips away" distance, allowing for precise limit order placement. Note: Timeframe 1 is the anchor — keep your chart at or below it (H1 by default) so zones render exactly; an on-chart warning appears if your chart timeframe is set higher.
⚙️ IMPORTANT NOTICE: This indicator is a professional-grade tool designed to identify structural confluence. It should NOT be used as a standalone signal for entering trades blindly. Always use it in conjunction with your own trading strategy, price action analysis, and strict risk management to confirm trade setups. Indicator

ICT Confluence Framework[BullByte]ICT Confluence Framework is a structural price-action engine that monitors the chart for five independent ICT-style behaviors and fires a directional setup only when several of them align inside a short structural window. Designed for intraday traders on 1m–15m charts in crypto, indices, and futures, with an auto-adapter that rescales every meaningful lookback to the chart timeframe.
Most ICT tools draw one element - order blocks, liquidity pools, BOS lines - and leave the trader to combine them mentally. This framework does the combining, scores the result against the current market regime and volatility phase, and prints one clean setup with an Entry, two Reference Levels, and an Invalidation level. The chart stays focused on what is currently relevant - no permanent boxes, no arrows on every candle, no flashing icons.
WHY THIS IS NOT A MASHUP
No public indicator is imported, wrapped, or re-skinned. Every detector is written from first principles against raw OHLCV. The five detectors share four custom layers that no single public indicator provides:
- A common confluence scoring layer with adaptive per-pattern weighting
- A regime classifier based on path efficiency
- A volatility-phase filter based on rolling ATR percentile rank
- A signal lifecycle manager with deterministic outcome resolution
The originality is in how five orthogonal behaviors are unified into one decision - not in the behaviors themselves.
THE FIVE BEHAVIORS MONITORED
1. Liquidity Sweep + Reclaim
Price violates a recent swing extreme - taking out resting stops - then closes back inside the prior range within a short window. The classic stop-hunt-then-reverse footprint.
2. Stopping Volume
A high-volume bar at a local extreme that closes with a strong rejection wick. Marks a level where aggressive flow was absorbed by passive flow.
3. Range Compression to Expansion
A bar that is the narrowest of its recent window is immediately followed by an expansion bar of meaningful size. A bullish expansion contributes to a bullish setup; a bearish expansion to a bearish one.
4. Break of Structure (BOS)
A close beyond the last confirmed pivot high or low. The script uses 3-bar right-confirmed pivots, so BOS prints with structural lag by design - this removes false breaks.
5. Order Block Mitigation
Price returns to the last opposing candle preceding a strong impulse, wicks into it, and closes back outside the zone.
Each behavior is detected independently against raw price and volume.
WHY THESE FIVE
At structural turning points markets do a small number of distinct things: they trap traders (sweep), they absorb flow (stopping volume), they release energy (compression-expansion), they confirm intent (BOS), and they retest origin (order block). When two or more of these align within the same structural window on the same side, the setup quality is materially higher than any one of them in isolation.
WHAT MAKES THIS DIFFERENT
Signals are stable. Detection and signal arming occur only on confirmed bar close. Once a setup prints, it does not move, redraw, or vanish on the next tick.
The script adapts to your chart. Every pattern carries a rolling reliability score calculated from its own follow-through history on the instrument and timeframe you are viewing. Follow-through is measured as maximum favorable excursion in ATR multiples over a configurable evaluation window. Patterns that have been working get more weight; patterns that have been failing get less, bounded by a user-set floor so no pattern is fully silenced.
Market regime is respected. An efficiency ratio (net displacement divided by path length) classifies the market as Trend Up, Trend Down, Range, Volatile, or Neutral. Inside this classification, BOS in a Range is soft-weighted to 0.4x and Expansion in a Volatile regime is soft-weighted to 0.5x. Counter-trend setups inside a strong trend are weighted down to 0.5x but still allowed.
Volatility phase aware. The current ATR's percentile rank classifies the bar as Quiet, Normal, or Active. Active phase tightens the required pattern count by one (capped at five). Quiet and Normal use the user's setting unchanged.
Confluence decay. A residual opposing score decays linearly by 1.0 per bar with no fresh pattern activity, so a stale opposing cluster cannot block a fresh signal indefinitely. The decayed value is also reset to zero on trade closure so the post-cooldown chart starts clean.
The chart stays clean. While no trade is active, the Hunting Layer shows what the script is monitoring. The moment a signal fires, every hunting visual that did not contribute to the signal and is not contextually inside the trade's expected path is erased. Contributors and contextual zones are recolored to the signal's direction and promoted into permanent history.
CHART EXAMPLE
1.ETH/USD 15m: Bullish Alignment: Expansion + BOS. Following a sharp bearish leg into a session low near 08:00, price entered a tight compression range between approximately 10:30 and 12:00. An expansion bar then broke above the last confirmed swing high (the LH pivot at ~11:00), firing the Compression-to-Expansion and Break of Structure detectors simultaneously. The framework printed a Bullish Alignment at 2036.60 with Invalidation at 2022.77. The market has advanced through Reference Level 1 (2050.43) and is approaching Reference Level 2 (2064.27).
2.ETH/USD 15m: Bullish High-Confluence: Sweep + BOS + OB. During a Range regime under Active volatility phase (which tightened the confluence requirement to three patterns), price swept the sellside liquidity at approximately 10:30 below a confirmed swing low. After consolidation, the entry bar at approximately 13:30 mitigated a bullish Order Block and broke above the local pivot. Three patterns aligned at signal close, firing a Bullish High-Confluence setup at 2118.34 with Invalidation at 2097.19. The market is currently advancing toward Reference Level 1 (2139.49) and Reference Level 2 (2160.64
3.ETH/USD 15m: Bearish Alignment: StopVol + BOS. Following a multi-hour consolidation between approximately 10:00 and 13:00 near the 2115–2125 area, price rejected the consolidation high with a high-volume bar at approximately 13:00, then broke below the local pivot. Stopping Volume and Break of Structure aligned on the same bar in a Volatile regime, firing a Bearish Alignment at 2110.89 with Invalidation at 2133.24. The setup is currently in progress, advancing toward Reference Level 1 (2088.54) and Reference Level 2 (2066.18), with a large sellside liquidity pool sitting in the path.
HOW TO READ THE OUTPUT
When a setup fires you will see four horizontal levels with right-side labels:
ENTRY (solid line, signal-direction color)
The closing price of the signal bar.
REFERENCE LEVEL 1 (dashed line, reference color)
Placed at 1R by default. Informational only - the setup does not close here. Useful for partial-exit planning or scaling.
REFERENCE LEVEL 2 (dashed line, reference color)
Placed at 2R by default. Reaching this level closes the setup as a success.
INVALIDATION (dotted line, invalidation color)
Placed at 3 ATR from entry by default. Reaching this level closes the setup as a failure.
Outcome and historical record
The setup closes when either Reference Level 2 or Invalidation is reached intrabar. Outcome is detected on the bar's high/low. When a single bar's range spans both levels, the setup closes on that bar; the script does not assume intrabar order, so the user should treat such ambiguous closures cautiously when reviewing historical results.
When the trade closes, right-side labels and connectors are removed and the four lines freeze at the closure bar. The signal label at the firing bar remains as a permanent record. To keep object counts within PulseWire limits on long histories, the script retains the most recent 400 signal labels and the most recent 400 closed-trade lines; older items are recycled automatically.
COOLDOWN
After any trade closes, the script waits a configurable number of bars before arming the next setup. Prevents back-to-back firing on noisy moves.
THE DASHBOARD
A 9-row status panel reports:
Regime - Trend Up, Trend Down, Range, Volatile, or Neutral.
Phase - Quiet, Normal, or Active.
Pattern rows - for each of the five behaviors: rolling Activity count and a Low / Medium / High Emphasis rating based on recent follow-through reliability on this chart.
Patterns Required - the integer minimum that must align for a signal to fire on the current bar. Equal to your "Minimum Patterns Required" input in Quiet and Normal phases; tightened by one (capped at five) in Active phase.
Status - Ready, Cooldown, or Signal Active.
THE HUNTING LAYER
Drawn while no trade is active and the script is hunting for confluence:
Buyside Liquidity zones - blue boxes above swing highs.
Sellside Liquidity zones - teal boxes below swing lows.
Bullish Order Blocks - teal boxes at the last bearish candle before a strong bullish impulse.
Bearish Order Blocks - red boxes at the last bullish candle before a strong bearish impulse.
Compression bars - amber boxes on narrow-range candles.
Stopping Volume markers - amber triangles at high-volume rejection candles at local extremes.
BOS labels - text labels at confirmed structural breaks, centered on the broken level.
Sweep markers - text labels at the bar where price violated a confirmed pivot extreme, marking where liquidity was taken.
Reclaim labels - text labels at the bar where price closed back inside the prior range, confirming the sweep. Together with the Sweep marker, these tell the complete two-event Sweep+Reclaim story.
HH / HL / LH / LL pivot labels - market structure narration. Pivots are independent of the BOS module switch and are shown whenever the pivot toggle is enabled.
Duplicate BOS, Sweep, and Reclaim markers at the same price level within a recent window are automatically suppressed. Each confirmed pivot can be swept and reclaimed at most once until a new pivot forms.
At signal fire
Each active hunting item is evaluated:
- If its pattern type contributed to the signal, it is recolored to the signal's direction and promoted to history.
- If it is a liquidity zone or order block sitting inside the trade's expected path AND structurally aligned with the trade, it is promoted as context.
- Everything else is erased instantly.
At signal fire, BOS and Reclaim markers are explicitly drawn so every fired setup carries its structural anchor. The Reclaim marker is guaranteed when the Sweep pattern contributed; the BOS marker is drawn when BOS contributed and no recent BOS marker exists at the same level.
TIMEFRAME GUIDANCE
1m and 3m - high-frequency scalping on liquid pairs (BTC/USDT, ETH/USDT, NQ, ES).
5m and 15m - intraday swing entries on the same instruments and other liquid markets.
30m and above - functional but signal frequency drops noticeably; suitable for positional approaches.
The Auto-Calibrate by Timeframe input automatically scales swing lookback, ATR length, volume lookback, sweep window, stopping-volume percentile, and compression lookback. Disable only for full manual control.
HOW TO USE IT
1. Load on a clean chart. Leave Auto-Calibrate enabled.
2. Watch the Hunting Layer to see what the script is monitoring.
3. Wait for a signal label to print at bar close. The label text lists the contributing patterns.
4. The four levels appear automatically.
5. The setup auto-closes when Reference Level 2 or Invalidation is reached. After cooldown, hunting resumes.
INPUTS GUIDE
Auto-Calibrate by Timeframe - master switch that scales all lookbacks to the chart timeframe.
Pattern Modules - enable or disable any of the five detectors individually.
Core Parameters - manual swing, ATR, and volume lookbacks (used when Auto-Calibrate is OFF).
Pattern Tuning - per-pattern sensitivity controls.
Adaptive Learning - evaluation window, follow-through threshold in ATR multiples, learning memory, and minimum emphasis floor.
Regime Filter - toggle regime awareness and set its lookback.
Volatility Phase - toggle phase-based threshold tightening and set its lookback.
Confluence Decay - toggle linear decay of residual opposing scores.
Output - Quiet Mode (only High-Confluence tier fires), minimum patterns required, cooldown bars, RR for Reference Levels 1 and 2, Invalidation distance in ATR multiples, and label offset from the last bar.
Visual - color tones for bullish, bearish, reference, invalidation, and label background.
ICT Hunting Layer - individual toggles and color controls for every visual element and the legend panel.
ALERTS
Six alert conditions cover every tier and direction combination:
- Bullish High-Confluence
- Bearish High-Confluence
- Bullish Alignment
- Bearish Alignment
- Bullish Watch
- Bearish Watch
Add through the standard PulseWire alert dialog.
TECHNICAL NOTES
- All pattern detection and signal arming occur on confirmed bar close. No intrabar fires, no repaint.
- No request.security() calls. No higher-timeframe lookups. No lookahead modifiers. No future leakage.
- Pivots use 3-bar right confirmation - structural lag is intentional and removes false breaks.
- The script uses one active trade slot at a time. New setups can only arm after the current one closes and cooldown expires.
- Same-bar conflict between Reference Level 2 and Invalidation resolves conservatively as invalidation. This is the honest interpretation when intrabar order is unknown.
- Object retention is bounded: 400 signal labels, 400 closed-trade lines, 400 hunting-history items. Adaptive learning memory is configurable up to 1000 bars per pattern.
WHAT THIS SCRIPT IS NOT
- Not a strategy. It does not place trades or compute P&L.
- Not a holy grail. No indicator is.
- Not a black box. Every threshold and lookback is exposed as an input.
- Not predictive. It reacts to confirmed structural events at bar close.
DISCLAIMER
This script is published as an open-source educational and analytical tool. It does not constitute financial advice, a recommendation to buy or sell any instrument, or any guarantee of future performance. Past behavior of any pattern on any chart does not guarantee future results. You are solely responsible for your trading decisions, your risk management, and your testing on a demo environment before any live use. The author and PulseWire accept no liability for losses incurred from use of this script.
CREDITS
Concepts inspired by public ICT (Inner Circle Trader) educational material. All detection logic, scoring, regime classification, adaptive learning, lifecycle management, and visualization is original implementation by the author. Indicator

SMC Flip Zone Engine ViprasolOverview
The original detects a break of structure, walks back to find the reaction leg that preceded it, and draws a colored zone box, with optional Liquidity Sweep, Fair Value Gap, HTF EMA alignment, and OTE (discount/premium) filters that can be toggled on to reduce noise. This version keeps that zone-detection engine intact and adds a Viprasol confluence and lifecycle layer: a 0-4 confluence score with A/B/C grading, a minimum-score gate, zone mitigation (retest) and invalidation tracking, a per-side cooldown, and an ATR-free risk overlay that projects Entry/SL/TP from a zone when price returns to it.
It is built for traders who work with break-of-structure flip zones and want each zone graded by how much SMC confluence actually backs it, plus automatic tracking of when zones are retested or broken.
How It Works
Structure Break & Reaction Leg (from original):
A bullish flip is triggered when close crosses over the prior highest-high of the lookback window (supply broken); a bearish flip when close crosses under the prior lowest-low (demand broken). On a break, the script walks back over the reaction-leg length to find the extreme of the trap leg — for a bull flip, the lowest low in that window and its bar's high define the zone's bottom and top. A box is drawn from that reaction bar forward.
SMC Filters (from original, toggle-gated):
Four optional filters can each be required before a zone is drawn:
- Liquidity Sweep — the reaction leg must have exceeded the prior structural extreme (taken liquidity).
- FVG / Displacement — a fair value gap must be present around the break (e.g. low > high ).
- HTF Alignment — bull zones only above, bear zones only below, the 50 EMA of a higher timeframe.
- OTE (Discount/Premium) — the zone midpoint must sit in the discount half (bull) or premium half (bear) of the leg, where equilibrium = leg low + (leg high − leg low) × 0.5.
Confluence Score & Grade (new):
Independently of which filters are toggled on, the script evaluates all four confluence conditions as raw booleans on every new zone and sums them into a 0-4 score:
score = sweep? + fvg? + ote? + htfAligned?
The score is mapped to a grade — A (>= 3), B (= 2), C (<= 1) — and printed on the zone box. This means even with all filters off (so every break draws a zone), you can still see which zones are backed by genuine confluence. A "Minimum Confluence Score" input then lets you suppress any zone below a chosen score without having to hard-require specific filters.
Zone Mitigation & Invalidation (new):
Every existing zone is tracked across bars. A zone is mitigated the first time price trades back into its range (low <= top and high >= bot) — this fires a mitigation alert (a potential entry as the flip zone is retested). A zone is invalidated when price closes through it (close < bot for a bull zone, close > top for a bear zone); invalidated zones are recolored gray (or can be left as-is) and fire an invalidation alert. Each transition fires once per zone.
Risk Overlay on Mitigation (new):
When "Show SL/TP on Mitigation" is enabled, the first retest of a zone projects three lines: Entry at the near edge of the zone, Stop-Loss at the far edge (so the zone height is the risk), and Take-Profit at Entry ± zone-height × the Risk:Reward ratio. Colored ENTRY/SL/TP price labels mark the line ends. Only the most recent mitigation's projection is kept, to avoid clutter.
Per-Side Cooldown (new):
An optional cooldown enforces a minimum number of bars between new zones on the same side (tracked as bar_index − lastSideBar >= cooldown), preventing a burst of overlapping zones during a single fast move.
What Is Original (Viprasol Additions)
1. Confluence score (0-4) and A/B/C grade printed on each zone, computed from raw sweep/FVG/OTE/HTF conditions regardless of which filters are toggled.
2. Minimum-confluence-score gate — suppress low-quality zones without hard-requiring individual filters.
3. Zone mitigation (retest) detection with a dedicated alert.
4. Zone invalidation detection (price closes through) with recoloring and a dedicated alert.
5. Risk overlay — Entry/SL/TP projection with colored price labels drawn on the first mitigation of a zone, sized by zone height and the Risk:Reward ratio.
6. Per-side zone cooldown to prevent clustering.
Key Features
From the Original:
- Break-of-structure detection via crossover/crossunder of the lookback high/low
- Reaction-leg walk-back to locate the trap zone behind the break
- Bullish and bearish flip-zone boxes with labels
- Optional Liquidity Sweep, FVG, HTF 50-EMA alignment, and OTE filters
- Oldest-zone pruning to limit chart clutter
Added in This Version (Viprasol):
- 0-4 confluence score with A/B/C grade on every zone
- Minimum-score quality gate
- Mitigation (retest) and invalidation lifecycle tracking with recoloring
- Entry/SL/TP risk overlay with colored price labels on mitigation
- Per-side cooldown
- Info dashboard (active zone counts, HTF state, filters-on count, min score)
- Six alert conditions with dynamic {{ticker}}/{{close}}/{{interval}} messages
How to Use
Getting Started:
1. Add to a standard candlestick chart (not Heikin Ashi).
2. With all filters off (default), every structure break draws a graded zone — read the A/B/C grade to judge quality.
3. To trade only stronger setups, either raise "Minimum Confluence Score" or turn on the specific filters you require.
Reading the Chart:
- Green zone = bullish flip (drawn after a supply break); red zone = bearish flip (after a demand break).
- The bracket on each zone, e.g. , is the confluence grade and score.
- A zone turning gray means price closed through it — it is invalidated.
- When price returns into a zone and SL/TP is enabled, Entry/SL/TP lines and price labels project to the right.
Recommended Starting Points:
- Intraday (5m-15m): Lookback 20, Reaction 7, Min Score 0-1, Cooldown 0-3
- Swing (1H-4H): Lookback 30, Reaction 7-10, Min Score 2, enable HTF alignment
- Higher conviction: Min Score 3 (grade A only), or require Sweep + FVG
These are starting points only — every market and timeframe behaves differently. Backtest and adjust before trading live.
Settings
Market Structure: structure lookback period, reaction-leg length, and max zones kept per side.
SMC Strict Filters: toggles for Liquidity Sweep, FVG (displacement), HTF 50-EMA alignment (with HTF resolution), and OTE (discount/premium). All default off so zones appear immediately.
Confluence & Quality (Viprasol): minimum confluence score, show grade on zone, and per-side zone cooldown.
Risk Overlay (Viprasol): show SL/TP on mitigation, show price labels, and the Risk:Reward ratio.
Visuals: bullish/bearish fill and border colors, and a toggle to dim invalidated zones gray.
Dashboard / Display: dashboard toggle and position.
Alerts
1. New Bull Zone — a bullish flip zone was created
2. New Bear Zone — a bearish flip zone was created
3. Any New Zone — either direction created
4. Bull Mitigation — price returned to a bullish zone (potential long)
5. Bear Mitigation — price returned to a bearish zone (potential short)
6. Zone Invalidated — a zone was closed through and invalidated
All alerts include {{ticker}}, {{close}}, and {{interval}} for dynamic notification messages.
Limitations & Disclaimer
- Zones are created on the bar the structure break confirms; because detection uses crossover/crossunder of close versus the prior swing, signals are evaluated on the closing relationship and the reaction leg is identified after the fact.
- The HTF alignment filter uses request.security with lookahead disabled; HTF values update only as the higher-timeframe bar progresses.
- The FVG and OTE checks are simplified single-bar/leg-midpoint approximations, not full multi-leg ICT constructs.
- Mitigation is detected on the first wick back into a zone; this is an awareness signal, not a guaranteed reversal.
- SL/TP lines and price labels are visual references only and do not place or manage trades.
- Filters and the minimum-score gate reduce the number of zones; in choppy ranges valid zones may be suppressed, while in fast trends overlapping zones may appear if cooldown is off.
- Past performance does not guarantee future results. This indicator is for educational and analytical purposes only and is not financial advice. Always use proper risk management and test on historical data before trading live.
Credits & Attribution
Based on an open-source "Advanced SMC Flip Zones" community indicator, which provided the break-of-structure detection (crossover/crossunder of the lookback high/low), the reaction-leg walk-back that locates the trap zone, the bullish and bearish flip-zone boxes, the optional Liquidity Sweep / FVG / HTF 50-EMA / OTE filters, and the oldest-zone pruning. Added by Viprasol: the 0-4 confluence score and A/B/C grading, the minimum-score quality gate, zone mitigation and invalidation lifecycle tracking with recoloring, the Entry/SL/TP risk overlay with colored price labels, the per-side cooldown, the info dashboard, and the six-condition dynamic alert set.
Published open-source per PulseWire House Rules.
Indicator

Strong Retest Zones | ProjectSyndicateStrong Retest Zones automatically maps and power-ranks the swing-based levels that price keeps reacting to. It tracks each level through its full life — formation, tests, breakout, and retest — scores it 0–10 from real interaction, and shows only the zones that earn their place, keeping the chart clean and focused on levels that matter.
🎯 Power-Ranking System (0–10) — every zone earns a live score from three things: how many times it's been tested/retested, the volume traded while it was active, and the depth of the rejection wicks off it. An idle-decay lets ignored levels fade while respected ones stay strong, so the score reflects current relevance.
🔁 Double-Shaded Break & Retest Zones — each level is drawn in two tones: one shade while it holds, a contrasting shade once price breaks through. You see at a glance whether a zone is still defending or has flipped.
🏷️ In-Zone Strength Labels — every zone carries its grade inside it: stars, the X.X/10 score, a tier (FORMING → WEAK → MODERATE → STRONG → ELITE), and the live retest count (R:) — quality reads instantly without a separate panel.
🧹 Overlap Suppression — when a new zone would stack on top of an existing one, it's skipped so each price area shows a single clean level instead of a cluster.
⭐ Strong-Only Filter — hide everything below a score threshold (default 5/10); weak zones that never earn the score are discarded rather than kept, so the chart only carries proven levels.
🔔 Comprehensive Native Alerts — proximity alerts for bullish and bearish zones, dedicated STRONG-zone proximity alerts (configurable, e.g. 7/10+), plus touch/retest and break events, so you never miss a key level interaction.
⚙️ Uniform or Natural Zone Height — normalize every zone to one ATR- or %-based thickness for a clean look, or anchor to the raw swing.
🚦 Performance Guards — a lookback window and a max-zones-kept cap keep load times fast on long histories; retired zones are fully removed, not just hidden.
🔧 Fully Customizable — std-dev color palette, transparency, borders, label size (Large by default), marker mode, scoring weights, pivot sensitivity, and max levels shown — all adjustable.
🎯 Why this algo is unique — standard pivot tools flood the chart with equal-weight lines. Strong Retest Zones filters, dedupes, and ranks them, then keeps only the levels that have proven they matter. It doesn't just show where a level was — it quantifies how strong it is from real interaction (touches, volume, rejection), giving you a clear read on which levels are holding and which are likely to break.
🚀 Apply to Gold (XAUUSD), Forex, Crypto, and Indices on any timeframe. Pivot sensitivity, zone height, lookback, and the strong threshold adapt it from scalping to swing trading.
🎯 How to use this? Focus on zones rated 7/10 or higher — these have the highest probability of producing a significant reaction. Watch the two-tone state to judge whether a level is holding or has flipped, and use the proximity and strong-zone alerts to prepare entries or exits.
⚠️ IMPORTANT NOTICE: This indicator identifies high-probability retest zones. It should NOT be used as a standalone signal for entering trades. Always use it alongside your own trading strategy, price action analysis, and other technical indicators to confirm setups and manage risk. Indicator

Falcon AI Lite | SMC Signal OverlayFalcon AI Lite is a free educational overlay that marks the two foundational Smart Money Concepts (SMC) patterns — Break of Structure (BOS) and Order Block (OB) — and highlights the zones where they align in confluence.
What it shows
▲ Green triangle (below bar) — Bullish Break of Structure
▼ Red triangle (above bar) — Bearish Break of Structure
● Gray dots — Tracked swing high/low levels
◆ Gold "FAL" label — 2-factor confluence: BOS + Order Block retest
When a gold "FAL" label appears, it means a Break of Structure has occurred AND price has pulled back into the relevant Order Block zone within the active session — the foundational SMC entry concept.
How to use it
1. Add to a 30-minute chart of MNQ or your preferred CME futures contract
2. Adjust the Session Window input to match your active trading hours
3. Observe how the FAL labels mark setups you might consider studying or trading
4. Your entry decision, your stop, your target, your risk management
Why SMC works
Smart Money Concepts is a market-structure-based methodology used by institutional traders. The Break of Structure confirms a directional shift in the market; the Order Block identifies where institutional orders were filled before the impulsive move. Watching for price to retest the Order Block after a BOS gives a higher-probability location for trade ideas than either signal alone.
What this is NOT
This indicator does NOT place trades. It does NOT backtest. It does NOT calculate position sizing. It does NOT include stop-loss or take-profit logic. It is an educational overlay for studying the SMC patterns — nothing more.
The full Falcon AI system uses 12-factor AI-weighted confidence scoring across 4 SMC patterns (Fair Value Gaps, Liquidity Sweeps, Displacement, plus the patterns shown here), with multi-timeframe HTF bias filtering, live news event suppression (FOMC, CPI, NFP), and 4 backtested chart configurations validated via 3-year walk-forward (May 2023 → May 2026). Total combined backtested net: $1.23M, average win rate 90.16%, profit factor 3.49.
If you want the full system, see thefalconai.com — 14-day free trial, transparent methodology, real LLC, real refund policy.
Recommended timeframes
Optimized visualization for the 30-minute chart on MNQ. Also works on 15-minute and 1-hour. The 5-minute and below will produce too many noise signals.
Disclaimer
Educational technology only. Not financial advice. Past pattern formations do NOT guarantee future price behavior. The signals shown here are pattern detections, not trade recommendations. Always apply your own risk management. Use a stop loss. Size positions appropriately. Trading futures involves substantial risk of loss.
Falcon AI is operated by The Marko Family Group LLC (Florida, USA) and is NOT a registered investment adviser, broker-dealer, or NFA member.
Full system at thefalconai.com Indicator

ICT/SMC Institutional Intelligence -- Dual Detection [IID]ICT/SMC Institutional Intelligence — Dual Detection
An integrated ICT/SMC structural analysis system built around two independent verdict engines — Continuation and Reversal — that score the same market in parallel and surface what the price action is doing, where the market structure stands, and whether continuation or reversal pressure is building. The system describes conditions. It does not issue buy or sell instructions.
---
█ What Makes It Different
Dual independent verdict engines.
Continuation and Reversal score simultaneously, against the same chart, with configurable conflict resolution — Show Both , Dominant Wins , or CONFLICT Flag — so traders see when both pressures are real, when one is dominant, and when the two are fighting.
-
Multi-factor confluence engine across three categories.
A composite confluence score grouped into Zone , Reference , and Timing buckets, so traders can see what kind of confluence is present, not just how much.
-
Real-time Intelligence Briefing.
A three-column briefing — STATE / OBSERVED / TRACKING — that translates the engine readings into plain structural language and tracks live events like pending sweep confirmations as they unfold.
---
█ Key Capabilities
The system includes BUT NOT LIMITED TOO:
Dual verdict engines
(Continuation and Reversal) scoring INACTIVE → EARLY → FORMING → BUILDING → CONFIRMED, with timeframe-aware multipliers and modifier handling for consolidation, lunch dead-zone, NY overlap, and active sweeps.
-
Structure detection
including Break of Structure ( BOS ), Change of Character ( CHoCH ), and Market Structure Shift ( MSS ) across configurable timeframes, with validation-event freshness gating.
-
Zone management
for Order Blocks (OB) , Fair Value Gaps (FVG) , Breaker Blocks (BB) , Balanced Price Range (BPR) , and Inverted FVG (iFVG) — each treated as dynamic support and resistance with full lifecycle tracking (formation, mitigation, inversion, aging, pruning).
-
Liquidity tracking
including liquidity pool detection, liquidity sweep identification, and a sweep-reclaim confirmation-window finite-state machine that distinguishes a wick raid from a confirmed reclaim with follow-through.
-
Multi-factor confluence scoring
across Zone , Reference , and Timing categories, with configurable STRONG / STANDARD / WEAK tier thresholds.
-
Five structural phases —
Expansion, Pullback, Consolidation, Continuation, Reversal — classified at chart-timeframe speed, each with its own optional alert.
-
Multi-timeframe market-structure grid
showing structure, swing position, zone presence, and trend per row. Rows hidden from the dashboard still compute for scoring.
-
Premium / Discount labelling and Optimal Trade Entry (OTE) zone detection (21–38% discount, 62–79% premium) from the active swing range.
-
Kill-zone awareness
for Asian, London, NY AM, and NY PM sessions, with a lunch dead-zone modifier and asset-class-aware gating.
-
Three-EMA trend system and anchored VWAP (Daily / Weekly / Session / Monday anchors) with previous-anchor reference.
-
Session reference levels
including previous-day high, previous-day low, and midnight open.
-
Impulse classification
with displacement and absorption recognition, volume-climax exhaustion detection (opt-in), and an order-flow bias layer.
-
SMT divergence
against up to two correlated tickers, with configurable inverse-correlation logic.
-
Intelligence Briefing
delivering STATE / OBSERVED / TRACKING context on every confirmed bar.
-
Comprehensive alert system
with alert conditions across three categories, individually toggleable, gated by bar close.
-
Multi-asset support
with asset-class-aware behaviour for forex, crypto, equity-like instruments, and other classes.
! (dashboard-overview.png)
(Screenshot: Full IID Dual dashboard on BTCUSDT during a Pullback phase — Market State verdict band, three-column Intelligence Briefing, multi-timeframe market structure grid, VWAP anchoring, confluence scoring, chart-timeframe intelligence, and Market Context with MAG / IMP / LIQ / BIAS)
---
█ Who It's For
Whether you follow ICT methodology , trade Smart Money Concepts (SMC) setups, or work in pure price action analysis, IID Dual is built to give you structural context without prescribing entries. It is designed for traders who want to read the market, not be told what to do — practitioners who already have an entry framework and want a measured, transparent map of the conditions around their setup.
---
█ How It Works — The System
The system reads the chart in layers: structural events, zone behaviour, liquidity dynamics, confluence, and live tracking — all feeding two parallel verdict engines that score the picture in tandem. The architecture is integrative, not modular-in-isolation. Each layer feeds the next:
Structure detection runs first. Manual pivot logic with an ATR filter generates swing highs and lows, which produce BOS, CHoCH, and MSS validation events. These events have freshness windows — stale structure does not count toward the verdict.
Zone management tracks every reactive level the structure produces. Order Blocks, Fair Value Gaps, Breaker Blocks, BPRs, and inverted FVGs are created, aged, tested, mitigated, and pruned. The system knows which zones are active, which have been touched, and which have inverted.
Liquidity tracking maintains equal-high and equal-low pools and watches for sweeps. When a sweep occurs, a confirmation-window finite-state machine arms, then progresses through reclaim and follow-through — distinguishing a real institutional rotation from a stop-hunt that fails to confirm.
The Intelligence Briefing surfaces what matters from this stream in plain language: what state the system reads, what structural evidence supports it, and what live events are being tracked right now.
The confluence engine measures alignment by counting the active factors across Zone, Reference, and Timing categories, then classifying the percentage into STRONG, STANDARD, or WEAK tiers.
Both verdict engines score this picture in parallel. The Continuation engine combines higher-timeframe bias, confluence, kill-zone alignment, impulse, liquidity-path clearance, volume, and structural bonuses.
The Reversal engine requires hard gates — fresh CHoCH/MSS/BB-retest against bias, plus a prior validated sweep — before it allows a score, then composes its tier from validation age, sweep quality, confluence, impulse, volume, FVG, equal-highs/lows, kill-zone, and SMT divergence.
Conflict routing decides what the trader sees when both engines are active: both sides displayed, the configured dominant engine wins, or an explicit CONFLICT flag is raised.
The trader decides.
! (engine-continuation-breakdown.png)
(Screenshot: Continuation engine on EUR/USD 15M during a bullish trending move — FORMING ▲ BULL 54%, with full component breakdown visible: BIAS 1 + CON 16 + KZ 5 + IMP 6 + LIQ 0 + B8 = 54%, driven by CON; Reversal independently inactive)
! (engine-reversal-breakdown.png)
(Screenshot: Reversal engine on US30 15M after a confirmed CHoCH event — CONFIRMED ▼ BEAR 74%, with full component breakdown visible: VAL 25 + SWP 20 + CON 8 + IMP 7 + KZ 0 + E5 = 74% (CHoCH); Continuation independently EARLY ▲ BULL 22%)
---
█ The Dashboard
The dashboard is a structured top-to-bottom readout, with seven bands designed to be read in order:
Market State
(top) — both engine tiers and percentages plus the central market-state classification
Intelligence Briefing —
STATE / OBSERVED / TRACKING in three cards
Multi-timeframe structure grid —
one row per configured timeframe with TF, swing position, structure pattern, OB up/down, BB, FVG, and trend
VWAP row —
current anchor distance and previous anchor reference
Confluence —
tier summary plus factor breakdown by Zone, Reference, and Timing
Chart Timeframe Intelligence —
volume, swing percentile, volatility, session, and kill-zone status
Market Context —
MAG (nearest magnet), IMP (impulse history), LIQ (sweep status), and BIAS (multi-timeframe consensus)
Every row is individually toggleable. The dashboard position and background opacity are configurable. Critically, structure grid rows hidden from view still compute for scoring — traders can simplify what they look at without losing analytical depth.
! (dashboard-annotated-walkthrough.png)
(Screenshot: Annotated walkthrough of every dashboard band — Market State, Intelligence Briefing, multi-timeframe Structure Grid, VWAP, Confluence, Chart Timeframe Intelligence, and Market Context — each labelled in reading order)
! (structure-grid-closeup.png)
(Screenshot: Per-timeframe structure grid showing one row per configured timeframe with swing position, structure pattern, order block and FVG presence, breaker blocks, and trend — multi-timeframe discount and sweep alignment visible vertically down the columns)
---
█ The Intelligence Briefing
No other ICT/SMC indicator delivers this layer — a three-column briefing that translates the engine readings into plain structural language, telling the trader what the system reads, what evidence it sees, and what events it's tracking right now.
STATE classifies the current market condition —
Continuation phase, Reversal phase, Consolidation, Expansion, Pullback, or DUAL STAND-DOWN when neither engine is sufficiently active — and identifies which engine is dominant when both are scoring.
OBSERVED
describes the structural evidence the system has registered around the current state, expressed in ICT/SMC vocabulary rather than raw values.
TRACKING
is the live monitor. When a liquidity sweep arms the confirmation window, TRACKING shows the pending event, the countdown to the confirmation deadline, and the active kill-zone context. When no event is pending, it shows the directional narrative or stays quiet — silence is information too.
The briefing updates on the last confirmed bar so traders read a stable, non-flickering snapshot of what the system understands about this moment in the chart.
! (intelligence-briefing-closeup.png)
(Screenshot: Intelligence Briefing close-up — STATE classifies the current market reading, OBSERVED describes the structural evidence in ICT/SMC vocabulary, TRACKING reports live events including pending sweep confirmations and active kill-zone context)
---
█ Setup & Configuration
The defaults work out of the box, but a few inputs are worth knowing about — they determine which timeframes the indicator reads from, how its multi-TF grid is structured, and how patient the indicator is when classifying impulse and structure. The three subsections below cover each in turn. All three are independent — changing one does not change the others.
█ Context & Validation Timeframes
The indicator's primary anchor points are two timeframe inputs. Context timeframe (bias) sets the higher TF the indicator reads bias from. Validation timeframe (confirmation) sets the TF where structural events (BOS, CHoCH, MSS) need to confirm before the engines treat them as valid.
The defaults are 1 hour Context and 15 minutes Validation. These match a Day Trader's typical workflow — a higher-TF bias view paired with a lower-TF confirmation window. Scalpers will usually want lower values for both (15m Context / 1m Validation is common). Swing traders running H4 or daily charts will want higher values (4h Context / 1h Validation, or higher).
The two inputs work together but are independent. Changing Context doesn't change Validation; changing either doesn't affect the Trader Type setting or the Structure Grid configuration. Pick the pair that matches the structural read you actually trade — the indicator does the rest.
! (setup-context-validation.png)
(Screenshot: Properties → Inputs → Timeframes — Context timeframe (bias) and Validation timeframe (confirmation) at their defaults of 1 hour / 15 minutes)
█ Structure Grid Configuration
The 7-Timeframe Market Structure Grid is fully customisable. Each of the seven rows has two settings: a timeframe selector (any TF from 1-minute to monthly) and a Show toggle.
The default ladder is Weekly, Daily, 4-hour, 1-hour, 15-minute, 5-minute, 1-minute — covering the most common trading horizons from high-timeframe context down to execution. Any row can be reassigned to a different TF, and rows can be enabled or disabled individually using their Show checkboxes. A trader running a non-standard ladder (e.g., only the four TFs they actually trade) can hide the rest.
Hidden rows still compute for scoring. This is important — the indicator's engines, BIAS aggregation, and confluence logic read from all seven configured rows regardless of which are visible. Hiding a row removes it from the dashboard display, not from the analysis. Customise the visible ladder to match what you want to see ; the indicator continues to use the full 7-TF data for its decisions.
! (setup-structure-grid.png)
(Screenshot: Properties → Inputs → Timeframes — the seven Structure row dropdowns at their defaults (Weekly → 1-minute ladder), each with an individual Show checkbox; in this view, only the 15-minute row is set to Show)
█ Trader Type
Trader Type is a single dropdown with three values: Scalper, Day Trader (default), and Swing. It controls how patient the indicator is.
The setting doesn't change which timeframes the indicator reads. What it changes is the sensitivity applied to that data. Scalper reacts faster: smaller candle bodies count as meaningful, shorter consolidations register, recent structural events qualify as fresh. Swing waits longer: bodies need to be more decisive, consolidations more developed, events more recent. Day Trader sits between them.
The effect shows up in several places — IMP row candle classifications in Market Context, TREND column readings in the Structure Grid, the Structural Phase header in the Verdict Banner, and delivery-state consolidation detection. The same chart and timeframes will produce different engine reads under different Trader Types because the indicator is asking different questions about the same data.
Pick Trader Type to match your trading style — how long you typically hold trades and how patient you are waiting for setups — not the chart timeframe you happen to be viewing. A scalper running a 1-minute chart will likely want Scalper; a swing trader on H4 will likely want Swing. But the mapping isn't enforced — Trader Type just tells the indicator how strict to be.
Trader Type and the timeframe inputs are independent. Selecting a different Trader Type does not change your Context or Validation Timeframe values. For a complete style-switch, change all three together.
! (setup-trader-type.png)
(Screenshot: Properties → Inputs → Trader Profile — the Trader type dropdown open, showing Scalper, Day Trader (default, highlighted), and Swing)
---
█ Reading the Indicator on a Live Chart
The dashboard mockups above show what each section looks like. The four worked examples below show what each section does — captured from real PulseWire replay sessions, with the indicator running on price as it would in normal use. Each scenario teaches one state the system can be in.
Conditions Ripening — system naming the pre-confirmation state
! (scenario-conditions-ripening.png)
(Screenshot: XAUUSD 5M during live replay — displacement and impulse are building; the system reports the setup before any signal fires)
(Dashboard view: Verdict Banner + Market Context. Other sections hidden.)
Most indicators are silent until conditions confirm, then they fire. IID Dual reports the state before the signal: when displacement and impulse start building a directional case, the Market State band names it explicitly as CONDITIONS RIPENING · FORMING · PRE-PHASE. The system isn't predicting; it's describing what it sees, with timestamps.
Underneath, the impulse layer doesn't just report a single reading — it shows the progression : HLLW → WEAK → SLID → NOW: STRG ↓ at 138% volume, momentum present. Four stages, each named, each timestamped.
The displacement isn't a wick; the case is building. If the next bars deliver continuation, the engine will progress from FORMING to BUILDING to CONFIRMED. If the move stalls, the ripening narrative dissolves and the system moves on.
█ TRACKING in Action — sweep confirmation window
! (scenario-tracking-in-action.png)
(Screenshot: XAUUSD 5M during live replay — a chart sweep arms the confirmation window; the system reads the event and counts down)
(Dashboard view: Verdict Banner + Intelligence Briefing + Pending Strip. Other sections hidden.)
A sweep alone isn't a reversal — it's a question. When price takes out a swing high or low and the confirmation window arms, the dashboard surfaces the pending event explicitly — here a bear sweep at 4762.905, 4 of 5 bars remaining — and the TRACKING column counts down bar by bar so the trader knows whether they're watching a confirmed reclaim or a failed raid. Above, the verdict banner shows Reversal already reading EARLY ▼ BEAR 81% — the engines have priced the structural case; the pending sweep is the live evidence that confirms or invalidates it.
The dashboard isn't predicting; it's reading the chart in real time and reporting what it sees. If the bar closes back inside the original range before the counter expires, the sweep is confirmed and the structural-reversal case strengthens. If the window expires without a clean close, the raid failed and the system moves on.
█ Divergent Signals — both engines speaking at once
! (scenario-divergent-signals.png)
(Screenshot: XAUUSD 5M during live replay — both engines scoring the same chart: Continuation FORMING bear, Reversal BUILDING bull — the system flags the divergence explicitly)
(Dashboard view: Verdict Banner + Intelligence Briefing. Other sections hidden.)
Most indicators force a single directional read. IID Dual lets both engines speak. When a fresh MSS on chart arms the reversal case but the prior continuation hasn't fully invalidated, the dashboard shows both engines scoring at once — here Continuation FORMING ▼ BEAR 22% alongside Reversal BUILDING ▲ BULL 55%, with the Market State band reporting "DIVERGENT SIGNALS · OPPOSED · ENGINES SPLIT" and the sub-line stating "engines disagree . wait for resolution before acting." The STATE column in the Intelligence Briefing reinforces with "DIVERGENT SIGNALS ⚠ Conflict."
The system isn't choosing for the trader; it's reporting what it sees, in detail. If the trader has configured Dominant Wins , the higher-tier engine (here Reversal at 55%) takes the displayed read. If Show Both or CONFLICT Flag is set, the dashboard surfaces the disagreement rather than resolving it — leaving the read to the trader's judgement.
█ Confluence Breakdown — what KIND of confluence is active
! (scenario-confluence-breakdown.png)
(Screenshot: XAUUSD 5M during live replay — multiple timing factors firing while zone and reference categories sit partial; the dashboard splits the confluence score into its three constituent buckets)
(Dashboard view: Verdict Banner + Confluence row. Other sections hidden.)
Confluence usually arrives as a single number. IID Dual splits it. The CONFLUENCE row reports the headline — here 6/15 STANDARD mixed — but the three category lines beneath name exactly what kind of confluence is active: ZONE 2/7 , REFERENCE 0/4 inactive , TIMING 4/4 .
Read those three lines and the same 6/15 score tells a much sharper story. TIMING is fully saturated — every timing factor the system tracks is firing. ZONE is partial — a sweep and a premium/discount read, but no order block or FVG contribution.
REFERENCE is silent — no EMA or VWAP alignment in play. A trader who relies on EMA structure now knows their preferred confluence layer isn't contributing; a trader who weighs timing knows the timing-side case is as strong as it gets. The headline number is honest; the breakdown is where the read lives.
---
█ Component Reference
The four worked examples above teach what the system does in different market states. The nine entries below cover what each component shows , in isolation — each captured with only that component visible, so its structure and tooltips can be read without competition. The Properties panels in each image are the recipe; replicate any view by setting the same toggles.
█ Chart Overlays
! (anatomy-chart-overlays.png)
(Screenshot: EURUSD 15M — chart populated with the indicator's full visible vocabulary; Structure Grid configured to a single TF on the right as a bridge to the dashboard)
Chart Overlays are the indicator's chart-side teaching layer — they show you what the dashboard is actually reading from. Every zone, structural marker, and event tag the indicator draws directly on price corresponds to a cell or column somewhere in the dashboard.
Zones (OB, FVG, iFVG, BB, BPR) appear as coloured regions with right-edge labels naming what they are. Structural markers (BOS, CHoCH, MSS, DISP) sit at the bars where the indicator detected those events. Sweep tags (SWEEP, SMT BEAR, SMT BULL) mark the levels where liquidity was taken.
Chart overlays don't carry hover-tooltips themselves — the dashboard's other components do the descriptive work. Here, the 1-TF Structure Grid sits next to the chart as a bridge: each chart object the indicator draws on price (BEAR OB, BULL FVG, BOS, SWEEP) corresponds to a cell in the grid's columns.
The tooltip surfaced on the TF cell confirms the system-wide principle: "Timeframe row. Hidden rows can be toggled, but engine computation continues."
The chart-side vocabulary is foundational. Every other section in this reference reads from these objects — the Structure Grid summarises them across timeframes, the Confluence row counts them as factors, the engines score them through tier logic.
This view uses three toggles: Show dashboard, Show chart overlays, and Show 7-timeframe market structure grid (configured to one TF). The Properties panel on the left shows the configuration.
The full multi-timeframe treatment of chart objects is covered next, in the Structure Grid.
█ Verdict Banner
! (anatomy-verdict-banner.png)
(Screenshot: EURUSD 10M — engines scoring in opposition, Market State band naming the divergence; centre cell hovered)
The Verdict Banner is the dashboard's headline read — your one-glance answer to "what state is the market in right now?" . Three cells across the top: Continuation on the left, Reversal on the right, Market State between them. Above all three, a Structural Phase header names the broader regime.
The Market State cell carries a tooltip explaining each state's trigger. Here the band reads DIVERGENT SIGNALS, and the tooltip explains the rule: "One engine is BUILDING+ now while the other was BUILDING+ within 15 bars but faded below BUILDING." That last clause matters — the system holds memory of recently-strong engines for 15 bars, so a state can persist after the engine that earned it has cooled.
The Intelligence Briefing uses the same memory principle on a 30-bar window.
Read the banner as a system. The Continuation and Reversal cells each carry a tier (EARLY, FORMING, BUILDING, CONFIRMED) and a direction (BULL ▲, BEAR ▼) from that engine's own scoring.
The Market State band synthesises: CONDITIONS RIPENING when displacement is building, CONTINUATION PHASE or REVERSAL PHASE when one engine dominates, DIVERGENT SIGNALS when the engines disagree. The sub-line names what's driving the read — "driven by CON" or "driven by BIAS + IMP" . The Structural Phase header at the top (PULLBACK, EXPANSION, REVERSAL, CONSOLIDATION) frames the macro regime.
This view uses just two toggles: Show dashboard and Show verdict banner. The Properties panel on the left shows the configuration.
The Verdict Banner is the only section that always speaks — other sections can read quiet, but the banner always reports something , even if INACTIVE 0%.
█ Modifier & Trade-level Strip
! [Modifier strip — firing with engine impact](anatomy-modifier-strip.png)
(Screenshot: EURUSD 10M — Modifier strip showing tag with Verdict Banner context above; modifier cell hovered)
The Modifier & Trade-level Strip surfaces context the engine scores alone can't show — sessions, sweeps, conflicts, structural exceptions. It's a single row that sits beneath the Verdict Banner, normally quiet, lighting up only when a modifier is firing. When it does, it appears as a labelled tag — ` ` for a recent sweep contribution, ` ` for a session penalty, ` ` for a validation warning, and others.
The hovered tooltip explains the active modifier's effect: "Validation conflict cuts Continuation by 1 tier; Reversal treats it as N/A." That's not a passive label — the modifier is actively changing the engine output.
The Verdict Banner shown above reads Continuation FORMING ▼ BEAR 46%; without the conflict cut, the Continuation engine would presumably sit one tier higher. The double-exclamation ` ` notation marks high-priority modifiers — ones that materially change scoring rather than just nudging it.
Each modifier in the strip's vocabulary has its own scoring rule. The strip is the indicator's way of surfacing context that the engine logic alone wouldn't expose — sessions, sweeps, conflicts, structural exceptions.
This view uses three toggles: Show dashboard, Show verdict banner, and Show modifier and trade-level strip. The strip currently requires the Verdict Banner to be enabled to render — captured here as configured.
█ Intelligence Briefing
! (anatomy-intelligence-briefing.png)
(Screenshot: EURUSD 5M — REVERSAL EMERGING state with active sweep being tracked; STATE column hovered)
The Intelligence Briefing answers "what is the indicator actually seeing right now?" in plain structural language. It translates engine percentages into the kind of observation a trader would make at the chart. Three columns: STATE (the indicator's current classification), OBSERVED (what structural evidence has been detected), TRACKING (what live events the system is watching).
The STATE column tooltip surfaces an engine-logic principle: "Reversal is active now or was BUILDING+ within 30 bars, with Continuation outside handoff control." The system has memory — STATE doesn't just reflect the current bar's read, it reflects whether either engine was strong within a 30-bar window.
The handoff system manages how engines pass control between phases. The Verdict Banner uses a similar 15-bar memory on its DIVERGENT trigger; together, the two windows mean the indicator reports on recent history, not just instantaneous classification.
The OBSERVED column reports validated structural events — what the indicator has actually confirmed on chart. The TRACKING column reports pending events with countdowns — sweeps awaiting close confirmation, structural breaks under validation. When TRACKING is active, the system is mid-evaluation; when it's quiet, no live events are pending.
This view uses just two toggles: Show dashboard and Show Intelligence Briefing. The Properties panel on the left shows the configuration.
The Briefing is the dashboard's translation layer between the engines' percentages and the trader's structural vocabulary.
█ 7-Timeframe Market Structure Grid
! (anatomy-structure-grid.png)
(Screenshot: EURUSD 5M — the grid showing per-timeframe readings across Weekly through 1M, with the 5M row's SWING H/L cell hovered to surface its tooltip)
The 7-Timeframe Market Structure Grid is a per-timeframe snapshot of where price sits in its swing range, what structural events have validated, what unfilled order blocks and FVGs sit at proximity, and what trend mode each timeframe is reading. One row per configured timeframe; one column per structural dimension.
Each cell carries a hover-tooltip with its plain-language meaning. Hovering the 5M row's SWING H/L cell surfaces the tooltip shown: "5 52%. Equilibrium (EQ)." followed by a compact legend — the dot glyph marks the current position in the swing range, arrow glyphs name sweep and reclaim events, and the bracketed tags identify zone-state ( for premium, for discount, for equilibrium, for OTE — the optimal-trade-entry discount zone, for proximity to a swing extreme).
The reading "5 52%" means the 5-minute timeframe sits at the 52nd percentile of its current swing range — squarely in equilibrium. Every other cell in the grid carries the same kind of legend on hover.
The grid earns its keep when read vertically . A single timeframe showing tells you that one chart is in discount; five timeframes showing in the SWING H/L column tells you the whole structure is in discount and that any bullish entry sits with the broader ladder, not against it. The OB↑ and OB↓ columns work the same way — a column showing unfilled bullish order blocks at low proximity across multiple timeframes is a more durable read than the same reading on one timeframe alone.
The TREND column on the far right collapses each timeframe's macro mode into one tag (CON for continuation, PUL for pullback, TRN for transition, REV for reversal); scan that column for the macro picture.
This view uses just two toggles: Show dashboard and Show 7-timeframe market structure grid. The Properties panel on the left shows the configuration.
Hidden rows still compute for scoring. Turning a timeframe off the display removes it from the visible grid, not from the engine — the dashboard simplifies the view, not the analysis.
█ VWAP Row
! (anatomy-vwap-row.png)
(Screenshot: EURUSD 10M — VWAP row showing current and prior-day anchor values; VWAP label cell hovered)
The VWAP Row gives you the chart's daily fair-value reference without having to plot VWAP on chart. Three cells: a label, the current anchored VWAP with distance to price, and the prior-day completed VWAP value.
The label cell carries the row's hover-tooltip: "Selected VWAP anchor is the fair-value reference. Middle shows current anchored VWAP and distance; right shows the prior completed anchor value." The middle cell — here reading `D: 1.16335 dn | 0.02% above` — packs two facts: the VWAP value is dropping (`dn`), and current price sits 0.02% above the VWAP line. Direction and distance reported in the same cell. The right cell — here `PD: 1.16412` — shows where yesterday's VWAP closed, available as a reference even after the new day's anchor has reset.
VWAP serves the indicator's confluence and structural logic as a reactive level — a place price often respects on revisit. The row makes the reference and distance available at a glance without requiring VWAP to be drawn on chart.
This view uses just two toggles: Show dashboard and Show VWAP row. The Properties panel on the left shows the configuration.
The data cells don't carry their own tooltips; the label-level tooltip covers the whole row.
█ Confluence Row
! (anatomy-confluence-row.png)
(Screenshot: EURUSD 10M — confluence reading 7/15 STANDARD mixed; TIMING title hovered)
The Confluence Row answers "how much evidence is the indicator seeing for the current read?" — and where that evidence is coming from. A headline score (here 7/15 STANDARD with a progress bar and a composition label) sits above three category lines: ZONE, REFERENCE, and TIMING.
The TIMING title tooltip teaches one category's firing rule: "Timing factors activate during major killzones and while recent BOS, CHoCH, or MSS events are still fresh." The same activation logic applies by analogy to the others. ZONE factors fire when price interacts with structural zones (OB, FVG, BB, BPR, sweep proximity, premium/discount position).
REFERENCE factors fire when price relates to anchored references (EMA, VWAP). Each category has its own count of how many factors are firing out of how many possible.
The breakdown matters more than the headline number. Here ZONE reads 4/7 (partial), REFERENCE reads 0/4 inactive, TIMING reads 3/4 (near full). Same 7/15 score, but the composition tells a sharper story — timing-led and structurally-supported, with no reference-level alignment. The composition label at the top (here mixed ) names the dominant mode: structural-led when ZONE dominates, reference-led when REFERENCE dominates, timing-led when TIMING dominates, mixed when factors spread across categories.
This view uses just two toggles: Show dashboard and Show confluence row. The Properties panel on the left shows the configuration.
The headline number is honest; the breakdown is where the read lives.
█ Detail Strip
! (anatomy-detail-strip.png)
(Screenshot: EURUSD 10M — the strip showing all five chart-timeframe sub-components active; CHART TIMEFRAME INTELLIGENCE header hovered)
The Detail Strip is the indicator's compact answer to "what's happening right now on this chart?" . Five chart-timeframe context readings packed into one row: volume, swing position, volatility, session state, and killzone countdown.
The section header tooltip names the five sub-components in order: "Chart-timeframe inputs: volume, swing position, volatility, lunch state, and active killzone countdown." Each sub-component reports a small but distinct fact. VOL shows current volume relative to average. SWING reports where price sits within the current swing range and which zone-state applies ( , , , , ).
VLT reports volatility deviation from baseline (`+36%` here). The session indicator names the active session (EARLY LDN visible) including the lunch state mentioned in the tooltip. The killzone countdown reports time remaining in the active killzone window (`11% KZ LONDON 160m`).
These are all chart-timeframe inputs — they read from the timeframe of the chart, not from the multi-TF ladder. The Detail Strip is the indicator's compact context summary for "what's happening right now, on this chart."
This view uses just two toggles: Show dashboard and Show detail strip. The Properties panel on the left shows the configuration.
█ Market Context
! (anatomy-market-context.png) (Screenshot: EURUSD 10M — the four-row block showing structural context; IMP row hovered)
Market Context tells you what the broader trading environment is doing — where the magnets are, whether impulse is building, what liquidity is doing, and whether the multi-timeframe picture leans one way. Four rows sitting near the bottom of the dashboard: MAG (magnet proximity), IMP (impulse progression), LIQ (liquidity state), and BIAS (cross-timeframe directional conviction).
The IMP row tooltip reveals the indicator's candle-classification scoring rule: "STRONG/SOLID candles can score impulse; HOLLOW/ABSORBED/WEAK do not, though ABSORBED can add a Reversal pattern bonus." The IMP row shows the recent progression of candle classifications (`WEAK → SLID → SLID → NOW: STRG ↑ | 120% volume`) — a four-stage history of how impulse has built over recent bars. The Scenario 1 worked example above teaches this progression pattern in context.
Each row in Market Context reports a different aspect. MAG names the nearest magnetic level (prior-day high, VWAP, prior-day low) and which is closest. LIQ reports active liquidity state — sweep awaiting, sweep active, structural-side dominance (BSL = buy-side, SSL = sell-side). BIAS aggregates conviction from all seven Structure Grid timeframes into a single signed read; its calibration tiers are 7 full, 5+ leaning, 3+ scattered, and no consensus.
This view uses just two toggles: Show dashboard and Show market context rows. The Properties panel on the left shows the configuration.
The BIAS row's aggregation from seven structure rows is the dashboard's clearest cross-section data flow — confluence among components, not just within one.
---
█ Alerts
Alert conditions span three categories, each individually toggleable, all gated by bar close (no intra-bar firing) and with built-in per-family cooldowns:
ENGINE alerts
fire when the Continuation or Reversal engine enters CONFIRMED. Master toggles per engine gate alerts only — both engines continue computing and displaying regardless.
-
STRUCTURE alerts
fire on chart-timeframe phase transitions — Expansion, Pullback, Consolidation, Continuation, Reversal — and on confirmed sweep reclaims (after the confirmation-window FSM completes).
-
ZONE alerts
fire when price enters swing-high or swing-low proximity, or when price enters the OTE discount (21–38%) or OTE premium (62–79%) zones.
Use them à la carte. Subscribe to phase transitions for context, to engine confirmations for high-tier readings, or to zone entries for proximity-based attention.
! (alert-categories.png)
(Screenshot: Alert conditions grouped by category — ENGINE for verdict confirmations, STRUCTURE for chart-timeframe phase transitions and sweep-reclaim events, ZONE for swing proximity and OTE discount/premium entries — each individually toggleable and bar-close gated)
---
█ Getting Started
Add IID Dual to any chart. The indicator works on any instrument and any timeframe PulseWire supports.
-
Collapse the chart legend (click the arrow next to the indicator name) for a cleaner view — all status-line clutter is already suppressed by design.
-
Read the dashboard. Market State and the Intelligence Briefing give the headline; the structure grid, confluence breakdown, and market context fill in the detail.
-
Configure timeframes under the Timeframes input group to match your workflow, then choose your alert categories.
---
█ Feeling Overwhelmed? Start Simple
Dashboards in this category are often described as overwhelming. IID Dual is built to be turned down. Every section — Verdict Banner, Intelligence Briefing, Structure Grid, VWAP, Confluence, CTI strip, Market Context, Footer, Chart Overlays — is individually toggleable from the Properties panel. Each of the four worked examples above shows a different dashboard configuration — the toggles in their Properties panels are the recipe.
! (feeling-overwhelmed-divergent-demo.png)
(Screenshot: EURUSD 10M · all sections lit · Cont 42% vs Rev 50% · the system speaking in full)
A clean starting point: leave only Market State and the Intelligence Briefing on, and add bands back as their meaning clicks. Anything you hide still computes for scoring — you simplify the view, not the analysis. Every dashboard cell and every input carries a plain-language tooltip on hover, and status-line clutter is already suppressed by design.
! (properties-display-toggles.png)
(Screenshot: Properties → Inputs → Display panel — every dashboard section individually toggleable, with (i) tooltip indicators that reveal plain-language explanations on hover for inputs and dashboard cells throughout)
---
█ ICT/SMC Concepts Used
Break of Structure (BOS) —
price closes beyond a prior swing in the existing trend direction, confirming continuation.
-
Change of Character (CHoCH) —
price closes beyond a prior swing against the current trend, signalling a possible regime change.
-
Market Structure Shift (MSS) —
a higher-conviction structural break, often paired with displacement, marking a transition between bullish and bearish delivery.
-
Order Block (OB) —
the last opposing candle before a displacement move, treated as an institutional reactive level.
-
Fair Value Gap (FVG) —
a three-candle imbalance where price moved with insufficient overlap, leaving an inefficiency that may be revisited.
-
Inverted FVG (iFVG) —
an FVG that has been traded through and now acts as resistance/support in the opposite direction.
-
Breaker Block (BB) —
a failed order block that has been broken and retested, often signalling a structural pivot.
-
Balanced Price Range (BPR) —
overlap of bullish and bearish FVGs, treated as a high-probability reactive area.
-
Liquidity Sweep —
price taking out a prior swing high/low (equal highs/lows or pivot extremes) before reversing.
-
Sweep Reclaim —
a confirmed sweep where price closes back inside the original range with follow-through, distinguishing a successful raid from a continuation.
-
Premium / Discount Zones —
the upper and lower halves of the active swing range; OTE values sit within these.
-
Optimal Trade Entry (OTE) —
the 62–79% premium retracement (short-bias) and the 21–38% discount retracement (long-bias) of the active swing.
-
Kill Zones —
the Asian, London, NY AM, and NY PM session windows where institutional volume is concentrated.
-
VWAP —
Volume Weighted Average Price, anchored to Daily, Weekly, Session, or Monday, with previous-anchor reference.
-
Impulse Classification —
categorisation of directional moves by displacement strength, absorption, and volume context.
---
█ Limitations, Transparency & Development
Built-in tooltip system.
Every cell, column header, and dashboard section in IID Dual carries a contextual tooltip. Hover over any data point, a verdict state, a confluence factor, a structure label, a modifier, a row title, and the indicator explains what you're looking at, how it was calculated, and what it means in the current market context.
The dashboard is designed to teach as you use it, so newcomers to ICT and SMC concepts can build fluency without leaving the chart, and experienced traders can verify the exact methodology behind any reading. The Intelligence Briefing is the primary interpretive layer; the tooltip system is the reference layer beneath it.
Non-prescriptive by design.
This indicator describes market conditions. It does not issue buy or sell instructions, place orders, or claim a strategy edge. Alerts report state changes — not trade calls.
Methodology honesty.
The confluence engine treats its factors with equal weighting; the Intelligence Briefing's OBSERVED column is intentionally conservative and may show fallback narration when structural evidence is sparse. The Reversal engine requires hard gates before it will score, which by design produces fewer signals than the Continuation engine.
Not financial advice.
Trading involves risk. This indicator is an analytical tool. All decisions are the trader's.
Active development.
IID Dual is actively maintained. Feature updates, additional alert conditions, methodology refinements, and bug fixes are delivered through code updates — see release notes below the description for the latest changes. Indicator

Twiggs Liquidity & Order Block Engine [MarkitTick]💡 Hybrid technical indicator designed to synthesize volume-weighted momentum with structural price action analysis. By harmonizing a modernized Twiggs Money Flow (TMF) algorithm with an automated Smart Money Concepts (SMC) overlay, this script provides a multi-dimensional perspective on market dynamics. Traders can monitor underlying accumulation and distribution cycles while simultaneously visualizing critical market structure shifts and historically significant supply and demand zones, offering a comprehensive, all-in-one chart analysis environment.
✨ Originality and Utility
● A Unique Analytical Mashup
Most technical analysis tools isolate either volume momentum or price action structure. This script introduces a vital mashup by blending the quantitative rigor of the Twiggs Money Flow with the visual geometry of Smart Money Concepts (SMC).
The utility lies in cross-verification: an Order Block (structural support/resistance) becomes exponentially more actionable when validated by a corresponding surge or exhaustion in the TMF volume oscillator.
This synthesis actively filters out false breakouts. A break of structure occurring on weak or divergent money flow can be flagged as a potential liquidity sweep rather than a genuine trend continuation.
Additionally, the integration of a dynamic, real-time dashboard centralizes complex data, removing the need to manually cross-reference multiple traditional indicators, thereby saving screen space and enhancing cognitive focus during active chart analysis.
🔬 Methodology and Concepts
● The Twiggs Money Flow (TMF) Engine
The oscillator component of this script is rooted in the Twiggs Money Flow, which serves as an evolution of traditional money flow calculations.
True Range Implementation: Rather than relying strictly on the high and low of the current candle, the engine calculates the True High (maximum of current high or previous close) and True Low (minimum of current low or previous close). This inherently factors in market gaps, preventing skewed volume data during highly volatile opens.
Volume Multiplier: A proprietary multiplier determines the placement of the close relative to the True Range. The multiplier forces a value between -1.0 and +1.0, dictating the proportion of trading volume classified as buying pressure (accumulation) versus selling pressure (distribution).
Exponential Smoothing: The raw money flow volume and the raw price volume are independently smoothed using an exponential moving average (EMA) system. The final TMF value is derived by dividing the smoothed money flow volume by the smoothed absolute volume.
Signal Line Construction: A secondary exponential moving average is applied directly to the finalized TMF output, creating a responsive signal line to identify momentum crossovers and track the expansion or contraction of volume momentum.
● Smart Money Concepts (SMC) Architecture
The structural overlay maps the fractal nature of market trends using strict geometric logic.
Swing Detection: The script scans historical data across a user-defined lookback period to pinpoint distinct Swing Highs and Swing Lows, creating the foundation of the market structure.
BOS and CHoCH Logic: When the closing price breaches an active Swing High or Swing Low, the engine dynamically labels the event as a Break of Structure (BOS) if it aligns with the prevailing trend, or a Change of Character (CHoCH) if it signifies a potential trend reversal.
Order Block Generation: Upon a confirmed structural break, the engine projects Order Blocks based on the origin of the impulse move. The depth and visual boundary of these blocks are calibrated using a localized Average True Range (ATR) calculation.
Mitigation Tracking: The script features a state-tracking algorithm that monitors price interaction with active Order Blocks. Once price re-enters and "mitigates" a block, the zone is visually dimmed or entirely hidden, keeping the chart completely focused on unmitigated liquidity zones.
🎨 Visual Guide
● Oscillator Pane Elements
TMF Histogram & Line: The primary TMF value is plotted as both a solid line and a supporting histogram. Values above the zero line utilize a Neon Violet color to indicate bullish money flow, while values below the zero line shift to a Neon Orange/Red to denote bearish flow.
Signal Line: Displayed as a dotted Gold/Yellow line tracking alongside the TMF.
Overbought/Oversold Zones: Dashed horizontal thresholds exist at user-defined overbought (+0.20) and oversold (-0.20) levels. When the TMF breaches these extremes, the background of the oscillator pane fills with a semi-transparent red or green glow.
Alert Shapes: Small geometric shapes (triangles and circles) populate the oscillator pane to mark exact moments where the TMF crosses the zero line or breaches the outer extreme zones.
● Price Chart Overlay
Candle Coloring: If enabled, standard price candles are re-colored based on the relationship between the TMF and its Signal Line. Bright Violet implies expanding bullish momentum, while dimmed Violet indicates narrowing bullish momentum. Conversely, Bright Orange implies expanding bearish momentum, with dimmed Orange signifying fading bearish pressure.
Structure Labels: Dashed lines paired with small text labels (BOS / CHoCH) appear precisely where structural breaks are confirmed.
Order Blocks: Solid rectangular boxes project forward in time. Unmitigated bullish blocks are filled with semi-transparent Violet, while unmitigated bearish blocks are filled with semi-transparent Orange. Once price touches these zones, they transition to a muted Slate/Grey color to signify mitigation.
● Real-Time Dashboard
Positioned in the top-right corner, this dark-themed data table provides a high-level summary of the current market state. It displays the numeric TMF and Signal values accompanied by 10-segment visual power bars. It also explicitly spells out the current Momentum Gap status, Overbought/Oversold Regime, Zero Cross Age (in bars), and the overarching Market Structure trend.
📖 How to Use
● Analyzing Momentum Crossovers
Primary trend confirmation is achieved by observing the TMF relative to the Zero Line. A sustained period above zero indicates healthy accumulation, whereas resting below zero signifies persistent distribution.
Short-term entry triggers can be identified by the TMF crossing its dotted Gold Signal Line. An upward cross while below zero can signal an early mean-reversion opportunity, whereas an upward cross above zero confirms strong trend continuation.
● Exploiting the Mashup Confluence
The most robust trading setups occur when both the oscillator and the price action overlay align perfectly.
Bullish Setup: Wait for the SMC engine to print a bullish Change of Character (CHoCH) followed by the generation of a fresh, Violet Order Block. As price retraces downward into this Order Block, look at the oscillator. If the TMF is rising, crossing its Signal Line, or rejecting the oversold threshold, the probability of a successful bounce increases significantly.
Bearish Setup: Observe price rallying into a pre-existing Orange bearish Order Block. If the dashboard simultaneously indicates that the TMF is in an "Overbought Regime" and the histogram begins crossing downward below the Signal Line, this provides confluence for a potential short entry or long exit.
⚙️ Inputs and Settings
● Calculation Parameters
TMF Period: Determines the lookback length for the underlying money flow moving averages. Increasing this smooths the oscillator but introduces lag.
Signal Line Period: Adjusts the sensitivity of the dotted signal line tracking the TMF.
Overbought/Oversold Levels: Custom thresholds for extreme zones (default +/- 0.20), allowing traders to adapt the script to highly volatile or highly ranging assets.
● Neon Colors
Total control over the aesthetic theme, including individual hex color overrides for Bullish/Rising states, Bearish/Falling states, Histogram fills, and Candle coloring.
● SMC & Market Structure
Enable SMC Overlay: A master toggle to display or hide structural lines and Order Blocks.
Swing Length: Dictates the strictness of pivot high/low detection. A lower number reacts to micro-trends, while a higher number identifies macro-structural shifts.
Track / Hide Mitigated OBs: Toggles the visual state of Order Blocks after price interacts with them. Users can choose to leave them on the chart as dimmed boxes or delete them entirely for maximum chart cleanliness.
🔍 Deconstruction of the Underlying Scientific and Academic Framework
● Volumetric Price Analysis Theory
The framework of this indicator is deeply anchored in auction market theory and the foundational work of Marc Chaikin, subsequently refined by Colin Twiggs. Traditional money flow indices often fail to capture the reality of market gaps, leading to incomplete volumetric profiles. By integrating the True Range calculation, the mathematics ensure that the proportional distance between the close and the absolute extreme of the session accurately reflects the terminal buying or selling pressure.
● Exponential Smoothing Mechanics
The internal architecture relies on parallel exponential moving averages (EMA). Unlike simple averages, the EMA assigns mathematically weighted significance to the most recent data points via an alpha constant (1/N). By smoothing the price-volume product and the raw volume independently before division, the indicator mitigates the erratic noise inherent in isolated volume spikes, producing a normalized quotient that tracks the authentic underlying liquidity flow.
● Fractal Market Structure & Geometric Support
The secondary framework relies on the premise that financial markets move in fractals, creating self-similar structures across all timeframes. By programmatically defining a "Swing" as a local extremum untouched over a specified sample size, the script mathematically formalizes the identification of supply and demand origin points. The dynamic projection of Order Blocks utilizes the Average True Range (ATR) as a standard deviation metric, recognizing that liquidity zones are not precise, one-dimensional price points, but rather two-dimensional areas defined by the asset's current historical volatility.
⚠️ Disclaimer
All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. I expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion. Indicator

SwingRegress Volatility Analytics [MarkitTick]💡 A comprehensive, multi-dimensional charting tool designed to fuse structural market analysis, statistically derived linear regression pathways, and volatility compression mechanics into a single, cohesive interface. By dynamically adapting its calculations to the latest shifts in market structure—specifically Change of Character (CHoCH) events—this script offers an adaptive mapping of price action, trend trajectory, and potential breakout zones directly on the primary chart.
● ✨ Originality and Utility
Traditional linear regression tools often require manual anchoring or rely on fixed lookback periods that fail to adapt to rapidly unfolding price dynamics. The distinct utility of this script lies in its self-adjusting structural anchoring mechanism. By automatically locking the regression baseline to the most recent significant pivot high or pivot low immediately following a structural break, the channel remains mathematically and contextually relevant to the current market regime.
Furthermore, this tool eliminates the need for separate sub-chart oscillators by integrating a sophisticated Smart Volatility Squeeze engine. This engine compares price variance against true range to identify periods of extreme price compression, overlaying these signals directly within the active regression pathway. The result is a unified, chart-centric view of both directional trend geometry and kinetic energy build-up, allowing for a more focused and uncluttered analytical process.
● 🔬 Methodology and Concepts
The underlying logic of this script is driven by three core mathematical engines operating in tandem:
• Pivot Discovery and Market Structure
The script continuously scans incoming price data to identify localized extremes, defined as Pivot Highs and Pivot Lows. A candidate bar is confirmed as a pivot only if it remains unbroken for a user-defined number of bars both prior to and following its occurrence. Once confirmed, these pivots establish the market structure. If the closing price breaks beyond the most recent opposing pivot, a Change of Character (CHoCH) is triggered, officially shifting the trend state.
• Anchored Linear Regression
Upon the confirmation of a new CHoCH, the script calculates a fresh Linear Regression Channel (LRC). The anchoring point is the origin pivot of the newly established trend. The script uses the Ordinary Least Squares (OLS) method to compute the slope and intercept of the best-fit line through the closing prices of the current regime. It then calculates the standard error of the estimate (standard deviation of the residuals) to project upper and lower variance bands parallel to the mid-line.
• Volatility Squeeze Mechanics
To identify volatility compression, the script employs a comparative analysis between standard deviation and Average True Range (ATR). It calculates a Bollinger Band (representing standard deviation) and a Keltner Channel (representing ATR) around a moving average baseline. A "squeeze" is structurally confirmed when the outer limits of the Bollinger Bands contract entirely within the boundaries of the Keltner Channels. This signifies that historical variance has dropped substantially below the average true range, often preceding a dynamic expansion in price movement.
● 🎨 Visual Guide
The visual interface is highly detailed and structurally color-coded to provide immediate contextual awareness without cluttering the chart.
• Current Anchored LRC
Mid Line: A solid Neon Cyan line representing the true mean of the current trend regime.
Band 1: A dashed Soft Cyan line mapping the first standard deviation threshold.
Band 2: A dotted Deep Azure line mapping the secondary, outer standard deviation extreme.
• Previous Anchored LRC
Mid Line: A solid Magenta line representing the historical mean of the preceding trend.
Band 1: A dashed Soft Magenta line for the historical inner variance.
Band 2: A dotted Blue-Violet line for the historical outer variance.
• Swing Point Zones
Swing High Boxes: Translucent red zones originating from a confirmed pivot high, drawing forward to act as dynamic resistance until broken by price action.
Swing Low Boxes: Translucent green zones originating from a confirmed pivot low, acting as dynamic support until structurally invalidated.
• Volatility Squeeze Candles
Cyber Gold Candles: When the market enters a state of extreme volatility compression (Bollinger Bands inside Keltner Channels) and is actively trading within the current or previous LRC pathway, the candles are painted a vibrant gold to highlight imminent kinetic release.
• Heads-Up Dashboard Display
Located in the top right corner, this self-updating data matrix provides critical real-time telemetry:
Structure Regime: Displays the active directional bias (Bullish, Bearish, or Neutral).
Last CHoCH: Indicates the direction and age (in bars) of the most recent structural shift.
Squeeze Intensity: A visual block-bar measuring the depth of the volatility compression.
ATR (14): The current absolute value of the Average True Range.
Dist to Swings: The percentage distance between the current price and the nearest Swing High/Low.
Risk/Reward Quality: A dynamic measurement of potential risk versus structural reward.
LRC Window Age: The duration of the current regression channel in bars.
LRC Position: Indicates whether price is currently trading inside the active regression channel, the previous channel, or is entirely unanchored.
● 📖 How to Use
The primary application of this tool is identifying high-probability continuation or mean-reversion setups following structural confirmation.
When a CHoCH event occurs, wait for the new Linear Regression Channel to populate. This channel defines your trading parameters. A high-probability setup manifests when price pulls back to the inner or mid-line of the active LRC, accompanied by the appearance of Cyber Gold squeeze candles. This visual confluence suggests that price is compressing directly at the statistical mean of the new trend, building energy for a move in the direction of the underlying structural regime.
Conversely, if price approaches the outer standard deviation bands (Deep Azure) without structural confirmation of a breakout, it suggests the market is statistically overextended, offering a potential mean-reversion opportunity back toward the Neon Cyan mid-line.
Note on Mechanics: Because the pivot discovery process requires a defined number of bars to confirm a swing high or low, there is an inherent lookback period. The swing zones will only appear after the pivot has been structurally verified. Furthermore, the linear regression channel recalculates its slope dynamically as new price data is added to the active regime, meaning the exact angle of the channel adapts in real-time until a new CHoCH locks it into history as the "Previous LRC."
● ⚙️ Inputs and Settings
The configuration panel is logically divided into primary analytical modules to allow for precise user calibration.
• Current Anchored CHoCH LRC
Adjust the sensitivity of the pivot discovery engine by modifying the Left and Right Pivot Bars. You can also customize the multipliers for the primary and secondary standard deviation bands, as well as toggle their visibility and modify line weights.
• Previous Anchored CHoCH LRC
Allows for the toggling of the historical channel, providing context on how the previous trend failed. Color and visibility settings are fully adjustable here.
• Swing Points & Zones Settings
Toggle the structural resistance and support boxes on or off, and customize their respective color opacities for a cleaner chart overlay.
• Smart Volatility Squeeze (BB vs KC)
Tune the underlying volatility engine. You can adjust the lookback length for the variance baseline, as well as the specific deviation multipliers for both the Bollinger Band boundaries and the Keltner Channel limits.
• Webhook Execution Configuration
Input exact JSON payload action names for algorithmic execution routing (Long, Short, Close Long, Close Short).
• Dashboard Settings
Customize the background and text colors of the heads-up data matrix to match your specific chart theme.
● 🔍 Deconstruction of the Underlying Scientific and Academic Framework
The mathematical foundation of this script is anchored heavily in econometrics and statistical probability theory.
At its core, the linear regression calculation utilizes the Ordinary Least Squares (OLS) estimator. This formula determines the line of best fit through a sequence of time-series data points by minimizing the sum of the squared differences (residuals) between the observed closing prices and the values predicted by the linear model. The slope of this line represents the average rate of change per unit of time, mathematically quantifying the drift of the active regime.
The parallel bands wrapping the regression line are derived by calculating the standard error of the estimate. Assuming the residuals are normally distributed (Gaussian distribution), one standard deviation captures approximately 68 percent of the price variance, while two standard deviations capture roughly 95 percent. When price moves beyond these outer bands, it represents a statistically significant deviation from the mean, inherently increasing the probabilistic likelihood of mean reversion.
The volatility squeeze mechanic operates on the principle of variance compression. Bollinger Bands are a derivative of standard deviation, making them highly reactive to short-term variance. Keltner Channels utilize the Average True Range (ATR), which measures absolute periodic volatility independent of a central mean. When the standard deviation of price contracts to such a degree that the Bollinger Bands fall entirely within the ATR-based Keltner Channels, it statistically confirms a state of anomalous energy compression. In financial academia, periods of artificially suppressed variance are overwhelmingly followed by periods of geometric expansion, providing the theoretical basis for breakout execution.
⚠️ Disclaimer
All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. I expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion. Indicator

Ranked Order Block Zones (Zeiierman)█ Overview
Ranked Order Block Zones (Zeiierman) is an advanced Order Block engine that transforms traditional OB detection into a dynamic ranking and prioritization system.
Instead of displaying every detected Order Block equally, the script stores each zone as a structured data object, evaluates its quality in real time using multiple market factors, and continuously ranks all active zones based on their relative strength.
The result is a cleaner, more intelligent Order Block framework that focuses attention on the highest-quality institutional zones currently influencing price action.
█ How It Works
⚪ Structured Order Block Engine
Each detected Order Block is stored as a structured UDT object containing its price range, direction, size, mitigation state, volume behavior, trend alignment, internal strength, and overall quality score. This allows every zone to behave like an active market structure rather than a static drawing.
The script detects Order Blocks using candle-flip structures combined with ATR-normalized body validation, allowing the system to automatically adapt across different assets, volatility conditions, and timeframes.
⚪ Dynamic Quality Ranking
Every Order Block receives a continuously updated quality score based on:
• Zone size relative to ATR
• Volume expansion
• EMA trend alignment
• Candle displacement strength
• Mitigation progress
• Zone age decay
All Order Block objects are stored inside an array and ranked using Pine Script’s native UDT collection sorting:
obs.sort(order.descending, sort_field = "qualityScore")
This allows the script to dynamically reorder all active zones in real time, prioritizing the strongest institutional areas while weaker zones gradually lose ranking.
⚪ Smart Zone Management
After sorting, only the highest-ranked Order Blocks are displayed on the chart while lower-quality zones remain internally tracked but hidden from view. The script can also merge overlapping zones of the same direction to reduce clutter and create a cleaner institutional structure.
Each zone continuously tracks mitigation progress. As price trades deeper into an Order Block, its quality score weakens until fully mitigated zones are automatically removed.
⚪ Internal Strength Distribution
Every Order Block contains bullish and bearish internal pressure components displayed as live strength bars inside the zone.
These help visualize:
• Directional dominance
• Continuation potential
• Structural weakness
• Opposing pressure developing inside the zone
█ How to Use
⚪ Focus on Top-Ranked Zones
Only the strongest Order Blocks are displayed based on current market conditions and quality ranking.
⚪ Read Internal Strength Bars
• Strong directional dominance → higher continuation probability
• Balanced pressure → weaker structure
• Opposing pressure growth → increasing failure risk
⚪ Watch for Retests
Order Blocks become most useful when price revisits the zone after the initial displacement move.
Strong retests often show:
• Immediate reaction from the zone
• Strong directional continuation
• Respect of internal strength alignment
Deeper or repeated retests can weaken the zone over time as mitigation increases and quality decays.
█ Related Scripts
Ranked FVG Imbalance Zones (Zeiierman)
█ Settings
Show Top Zones: Controls how many of the highest-ranked Order Blocks are displayed.
Max Stored OBs: Controls how many Order Blocks are tracked internally.
Volume MA Length: Defines the baseline used for volume expansion scoring.
Trend EMA Length: Defines the EMA used for trend alignment scoring.
Min Flip Body ATR: Defines the minimum candle body size required for valid Order Block creation.
Merge Overlapping OBs: Enables automatic merging of overlapping zones.
Max Merge Size ATR: Prevents merged zones from becoming excessively large.
-----------------
Disclaimer
The content provided in my scripts, indicators, ideas, algorithms, and systems is for educational and informational purposes only. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
Indicator

Smart Money Concept: Liquidity Sweep [MarkitTick]💡 The Smart Money Concept: Liquidity Sweep is an advanced technical suite engineered for precision algorithmic trading and comprehensive market analysis.
this unified market intelligence hub tracks major market participant footprints by analyzing liquidity raids, structural shifts, and fair value gaps.
It operates strictly on confirmed data to ensure zero lookahead bias, making it an authoritative tool for quantitative analysts and disciplined traders who demand rigorous data integrity.
This system provides a complete and deterministic view of price action, abstracting complex market mechanics into clear, actionable signals.
Every module within this script has been optimized for minimal execution overhead while maximizing analytical depth.
● ✨ Originality and Utility
Unlike generic structure indicators that simply plot highs and lows, this tool integrates a proprietary Confluence Score Dashboard and a robust Liquidity Sweep Filter.
It does not merely react to price crossing a level; it evaluates the nature of the interaction, distinguishing between genuine market structure shifts and manipulative liquidity sweeps orchestrated by large-cap market participants.
By unifying ten distinct analytical modules into a single, performance-optimized architecture, it provides a complete and cohesive trading ecosystem without cluttering the chart.
These modules range from Order Block mitigation tracking to Session Kill Zones and Premium/Discount mapping, ensuring all aspects of price action are covered.
Furthermore, it is explicitly built for automation, seamlessly generating strictly formatted JSON payloads for direct routing to external execution platforms like PineConnector or 3Commas.
These JSON webhooks dynamically calculate and transmit precise Entry, Take Profit, and Stop Loss parameters strictly utilizing format.mintick string conversions.
● 🔬 Methodology and Concepts
The core engine operates on a multi-dimensional analysis framework, utilizing advanced market mechanics to decode price delivery algorithms:
• Fractal Market Structure
The script mathematically identifies key swing points to establish dynamic structural ranges.
It accurately tracks the active trend and flags both Break of Structure (BOS) and Change of Character (CHoCH) events based on confirmed price closes.
This ensures that the underlying trend logic is grounded in true market conviction rather than momentary volatility.
• Liquidity Engineering
The engine actively monitors previous pivot extremes for sweep conditions.
This ensures that entries are backed by strategic liquidity harvesting from large-volume entities, rather than falling for premature breakouts or retail traps.
• Multi-Timeframe Alignment
The indicator employs a higher-timeframe variance filter to gauge the overarching trend direction.
It utilizes offset data arrays with strict lookahead protection to ensure a strictly non-repainting bias confirmation across multiple chart periods.
• Inefficiency Mapping
The algorithm detects and maintains active Fair Value Gaps (FVG) and structural Inducements (IDM).
It dynamically mitigates and clears these zones from the chart as price action naturally rebalances the market inefficiency, keeping the visual workspace clean.
● 🎨 Visual Guide
The script provides a clean, highly actionable visual hierarchy directly on the chart to minimize cognitive load:
Structure Candles:
Candlesticks are dynamically colored to reflect the current internal state.
They are painted Cyan during confirmed bullish structural trends and Magenta during confirmed bearish trends.
Structural Lines and Labels:
Dashed lines project horizontally from broken swing points.
These lines are explicitly annotated with BOS or CHoCH labels indicating the exact direction and type of structural shift that occurred.
Zone Fills (Boxes):
Support and Resistance Zones: Cyan and Magenta boxes highlight active bullish and bearish Order Blocks (OB). Mitigated blocks dynamically change to a muted gray color to reduce visual noise.
Premium and Discount Zones: When enabled, the active structural range is divided into a Magenta Premium zone, a white Equilibrium line, and a Cyan Discount zone.
FVG Zones: Transparent graphical fills indicate unmitigated Fair Value Gaps waiting for price rebalancing.
Session Kill Zones: Highlighted backgrounds map the Asian (Orange), London (Gold), and New York (Green) active trading windows for temporal confluence.
Inducement Labels:
Yellow IDM tags mark minor pullbacks that have been successfully swept, confirming liquidity capture.
Confluence Dashboard:
A dynamic text label appears precisely at the point of signal generation.
It displays an aggregate score from 0 to 5, color-coded Green for High Confluence, Orange for Medium, or Red for Low.
A detailed hover-tooltip breaks down the active filters contributing to the score.
● 📖 How to Use
To maximize the utility of this robust tool, traders should seek alignment across multiple internal analytical modules:
Establish Context:
Begin by utilizing the Session Kill Zones and Premium/Discount areas to frame the current market environment.
Ideal long setups originate deep within the Cyan Discount zone during active London or New York trading hours.
Identify Liquidity Capture:
Wait patiently for a confirmed liquidity sweep or the breaking of an Inducement (IDM) level.
This validates that major market operators have accumulated positions and trapped counter-trend traders.
Confirm the Shift:
Monitor the chart for a valid BOS or CHoCH signal backed by the Confluence Score Dashboard.
A score of 4 or 5 indicates exceptionally high alignment between HTF bias, liquidity sweeps, market gaps, and session timing.
Execution and Risk:
Upon signal generation, the script automatically plots the optimal entry point.
It also calculates a dynamic ATR-based Stop Loss and a predefined Risk/Reward-based Take Profit.
These exact price coordinates are simultaneously broadcast via the automated JSON alert webhook for seamless execution.
● ⚙️ Inputs and Settings
The suite is highly customizable, divided into logical control groups for rapid configuration:
• Market Structure
Adjust the Swing Length sensitivity to filter out market noise and define the exact target Risk/Reward Ratio for automated signal generation.
• Visuals
Granular control is provided over all interface colors, including specific toggles for dynamic candle coloring and user-configurable zone opacities.
• Toggleable Filter Modules
Ten individual toggles allow users to enable or disable specific algorithmic engines, including:
① Liquidity Sweep Filter
② HTF Bias Filter (with customizable resolution)
③ Premium / Discount Zone
④ Session Kill Zones
⑤ Fair Value Gap Engine
⑥ Inducement Detection
⑦ MSS Body Confirmation (requires full body closes for valid structure breaks)
⑧ ATR-Adaptive SL (with custom length and standard deviation multiplier)
⑨ OB Mitigation Tracker
⑩ Confluence Score Dashboard
● 🔍 Deconstruction of the Underlying Scientific and Academic Framework
The algorithmic foundation of this analytical suite is firmly anchored in Auction Market Theory and variance-adjusted statistical modeling.
At its core, the indicator rejects the standard premise of random walk price action, instead modeling the financial market as a highly efficient, liquidity-seeking mechanism.
By mathematically isolating structural extremes and standardizing pivot lengths, the engine calculates the probability of order flow absorption versus trend continuation.
The script analyzes the temporal decay of market inefficiencies, specifically mapping how quickly Fair Value Gaps are rebalanced by subsequent price delivery.
The inclusion of an ATR-adaptive risk model ensures that stop-loss parameters expand and contract proportionally to current market variance.
This utilizes average true range standard deviations to normalize volatility, preventing premature stop-outs during periods of high structural stress.
Furthermore, the proprietary Confluence Score relies on a multi-variate Boolean matrix.
This matrix synthesizes time-domain variables (Session Zones), spatial distribution metrics (Premium/Discount mapping), and momentum vectors (HTF Bias) into a singular, quantized metric of setup validity.
This deterministic mathematical approach removes subjective bias, relying purely on the physics of price delivery, volume distribution, and order flow imbalance.
⚠️ Disclaimer
All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. I expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion. Indicator

PD ArraysHi all!
This indicator is based on my indicator 'Order blocks' () that will show you order blocks (OB) found by the indicator or the once that are in alignment with the current trend.
This indicator will, however, not only show you order blocks but it will also find fair value gaps (FVG). Order blocks and fair value gaps are popular and a big part of inner circle trading (ICT). The true power lies in that the indicator will give you alerts and show you labels for retest ('R'), false breakouts ('FB') and breakouts ('B'). This is possible through my library 'Touched' (). The possibilities of interactions in the form of breakouts allows for the findings of broken order blocks and fair value gaps. That means that this indicator allows the showing of zones that are before the CHoCH/CHoCH+ and has flipped function. So a support becomes resistance and vice versa. These zones are popular and are called breaker blocks (BB, a flipped order block) and inversion fair value gap (IFVG, a flipped fair value gap). If a broken order block is before a BOS (instead of a CHoCH/CHoCH+) it's called a mitigation block (MB) instead of a breaker block, but it has the same function.
So, broken order blocks are called breaker blocks (BB) if they're before a change of character (CHoCH/CHoCH+) and mitigation blocks (MB) if they're before a break of structure (BOS).
Broken fair value gaps are called inversion fair value gaps (IFVG). The following zones will be displayed by the indicator:
• Fair value gaps
• Inversion fair value gaps
• Order blocks
• Breaker blocks
• Mitigation blocks
The trend is based on price action that creates change of characters (CHoCH/CHoCH+) and break of structures (BOS). This is based on pivots/swings with your set length for left and right and is possible through my script 'PriceAction' (). The market structure will be displayed with solid lines and a label showing the type (CHoCH/CHoCH+/BOS).
2 things can invalidate a zone and cause it to disappear;
• broken by price or
• a CHoCH/CHoCH+ appears to start a new trend.
I.e. a bullish zone (OB/FVG/BB/MB/IFVG) will disappear upon the closing price being lower than the zone's low or a bearish CHoCH/CHoCH+ happens. A bullish BB/MB/IFVG means a bearish OB/FVG that has been broken by price and is now bullish.
I've tried to make the ability to find zones to be on a different timeframe than chart (like in my script 'Order blocks') but I have not found it to be reliable yet, so the zones are found on the chart's timeframe. I will keep working on making it more reliable, but for now it's only possible to find them on the chart's timeframe.
The default settings will show you all zones (OB/FVG) and their broken version (BB/MB/IFVG). If the trend is bullish it will show bullish OBs and bullish FVGs and bearish OBs/FVGs that are broken and now are bullish (BB/MB/IFVG), and vice versa. OBs and FVGs will be displayed as soon as they are found, IFVGs when it's broken by price and BBs/MBs upon the next structural break (CHoCH/CHoCH+/BOS). All zones within a CHoCH/CHoCH+ (from the high/low pivot that's broken to when it's broken by price) will be kept to be take action on by the script's code. They're hidden until they make sense regarding to the new trend that's determined by the 'PriceAction' library.
Settings
• Keep history
Check this if you want old zones to be kept (from previous trends). They are removed if they are broken or a CHoCH/CHoCH+ appears.
PD ARRAYS
• Fair value gaps
Show fair value gaps or not.
• Inversion fair value gaps
Show inversion fair value gaps or not.
• Order blocks
Show order blocks or not.
• Breaker blocks
Show breaker blocks or not.
• Mitigation blocks
Show mitigation blocks or not.
FAIR VALUE GAPS
• Consecutive rising/falling
The candles in the reaction must consecutivly rise or fall (the 'hl2' must be rising/falling).
• Force strong
If this is enabled it will force the FVG middle candle to have a higher/lower 'hl2' (middle of the entire candle) than the first candle's high.
• Hide consecutive zones
If multiple fair value gaps are found after each other only the first one will be found by the indicator.
• Minimum size
A factor of the Average True Range (of length 14) that the size of the fair value gap must have.
ORDER BLOCKS
• Reaction
A factor of the Average True Range (of length 14) that the total reaction must have. A higher value will create fewer zones with a bigger reaction. And check the checkbox if you want the limit to be displayed.
• Take out
The bar that start the reaction must take out the previous bar high/low (liquidity sweep).
• Consecutive rising/falling
The candles in the reaction must consecutivly rise or fall.
• Fair value gap
The middle bar in the order block must create a fair value gap.
• Hide consecutive zones
If multiple order blocks are found after each other only the first one will be found by the indicator.
DISPLAY
• Bull
The color for bullish zones (OB or FVG). This is the color before a breakout from the price, if it's broken by price once its a bearish zone instead.
• Bear
The color for bearish zones (OB or FVG). This is the color before a breakout from the price, if it's broken by price once its a bullish zone instead.
MARKET STRUCTURE
• Enable
If zones found should follow market structure or not. This is automatically enabled if 'Current trend' is true.
• Pivot
Set the length of pivots and check if they should be shown or not.
• Font size
Set the font size of market structure text.
ALERT
• Retests
Enable alerts for retest.
• False breakouts
Enable alerts for false breakouts.
• Breakouts
Enable alerts for breakouts.
Examples
Below will be some examples of how the indicator behaves. All the examples are with the default settings but only the example zone is visible.
• This demonstrates a retest of an inversion fair value gap after a CHoCH+. After price goes higher (after that support) price retests later IFVGs and goes even higher.
• Shows the lowest bullish fair value gap that's retested two times and goes higher. On the journey of higher prices more FVGs are retested/has false breakouts and price goes higher.
• Shows a bearish order block (at the top) that's retested and price goes lower.
• Shows a bearish breaker block that has two retests and a false breakout. The origin is a bullish order block that's now (after price has broken it) a bearish breaker block. After that resistance price goes lower.
• Shows a retest of a bullish mitigation block (that's a broken bearish order block).
The code for finding these PD Arrays are extracted to my library 'PDArrays' ().
I hope that this indicator will help you in your trading and I've been trying to make an indicator like this for a very long time. Many new tries, a lot of time spent and lots of lines of code I managed to make one that I think is good enough!
If you have any findings of unexpected behavior or feature of, feel free to reach out!
Best of luck trading! Indicator

Indicator

Indicator
