Early Momentum Dashboard [Small Caps]Early Momentum Dashboard for Small Caps
A clean, real-time dashboard that detects building momentum before major moves in small-cap stocks.
Features:
• 7 key early-momentum indicators with traffic-light system (🟢 Bullish / 🟡 Neutral / 🔴 Bearish)
• Toggle each indicator on/off via settings
• Momentum Score (e.g., 5/7) – higher = stronger early signal
• Visual markers on chart (VOL, RSI, MACD)
• Includes: Relative Volume Spike, RSI Buildup, MACD, OBV Accumulation, ROC, ATR Volatility, VWAP Proximity
Ideal for scanning low-float or catalyst-driven small caps.
Tip: Look for 4+ green lights as a high-probability early entry signal.
Enjoy!
图表形态
Harmonic Patterns (Experimental) [Kodexius]Harmonic Patterns (Experimental) is a multi pattern harmonic geometry scanner that automatically detects, validates, and draws classic harmonic structures directly on your chart. The script continuously builds a pivot map (swing highs and swing lows), then evaluates the most recent pivot sequence against a library of harmonic ratio templates such as Gartley, Bat, Deep Bat, Butterfly, Crab, Deep Crab, Cypher, Shark, Alt Shark, 5-0, AB=CD, and 3 Drives.
Unlike simple “pattern exists / pattern doesn’t exist” indicators, this version scores candidates by accuracy . Each pattern includes “ideal” ratio targets, and the script computes a total error score by measuring how far the observed ratios deviate from the ideal. When multiple patterns could match the same pivot structure, the script selects the best match (lowest total error) and displays that one. This reduces clutter and makes the output more practical in real market conditions where many ratio ranges overlap.
The end result is a clean, information rich visualization of harmonic opportunities that is:
-Pivot based and swing aware
-Ratio validated with configurable tolerance
-Direction filtered (bullish, bearish, or both)
-Ranked by accuracy to prefer higher quality matches
Note: This is an experimental pattern engine intended for research, confluence and chart study. Harmonic patterns are probabilistic and can fail often. Always combine with your own risk management and confirmation tools.
🔹 Features
🔸Pivot Detection
The script uses pivot functions to detect structural turning points:
-Pivot Left Bars controls how many bars must exist on the left of the pivot
-Pivot Right Bars controls confirmation delay on the right (smaller value reacts faster)
Additionally, a Min Swing Distance (%) filter can ignore tiny swings to reduce noise. Pivots are stored separately for highs and lows and capped by Max Pivots to Store to keep the script efficient.
🔸Pattern Library (XABCD and Beyond)
Supported structures include:
-Gartley, Bat, Deep Bat, Butterfly, Crab, Deep Crab
-Cypher (uses XC extension and CD retracement logic)
-Shark and Alt Shark (0-X-A-B-C mapping)
-5-0 (AB and BC extensions with CD retracement)
-AB=CD (symmetry and proportionality checks)
-3 Drives (6 point structure, drive and retracement ratios)
Each pattern is defined by ratio ranges and also “ideal” ratio targets used for scoring.
🔸 Pattern Fibonacci Rules (Detailed Ratio Definitions)
This script validates each harmonic template by measuring a small set of Fibonacci relationships between the legs of the pattern. All measurements are computed using absolute price distance (so the ratios are direction independent), and then a directional sanity check ensures the geometry is positioned correctly for bullish or bearish cases.
How ratios are measured
Most patterns in this script use the standard X A B C D harmonic structure. Four ratios are evaluated:
1) XB retracement of XA
This measures how much price retraces from A back toward X when forming point B .
xbRatio = |B - A| / |A - X|
2) AC retracement of AB
This measures how much point C retraces the AB leg.
acRatio = |C - B| / |B - A|
3) BD extension of BC
This measures the “drive” from C into D relative to the BC leg.
bdRatio = |D - C| / |C - B|
4) XD retracement of XA
This is the most important “completion” ratio in many patterns. It measures where D lands relative to the original XA swing.
xdRatio = |D - A| / |A - X|
Important: the script applies a user defined Fibonacci Tolerance to each accepted range, meaning the pattern can still pass even if ratios are slightly off from the textbook values.
🔸 XABCD Pattern Ratio Templates
Below are the exact ratio rules used by the templates in this script.
Gartley
-XB must be ~0.618 of XA
-AC must be between 0.382 and 0.886 of AB
-BD must be between 1.272 and 1.618 extension of BC
-XD must be ~0.786 of XA
In practice, Gartley is a “non extension” structure, meaning D usually remains inside the X boundary .
Bat
-XB between 0.382 and 0.50 of XA
-AC between 0.382 and 0.886 of AB
-BD between 1.618 and 2.618 of BC
-XD ~0.886 of XA
Bat patterns typically complete deeper than Gartley and often create a sharper reaction at D.
Deep Bat
-XB ~0.886 of XA
-AC between 0.382 and 0.886 of AB
-BD between 1.618 and 2.618 of BC
-XD ~0.886 of XA
Deep Bat uses the same completion zone as Bat, but requires a much deeper B point.
Butterfly
-XB ~0.786 of XA
-AC between 0.382 and 0.886 of AB
-BD between 1.618 and 2.618 of BC
-XD between 1.272 and 1.618 of XA
Butterfly is an extension pattern . That means D is expected to break beyond X (in the completion direction).
Crab
-XB between 0.382 and 0.618 of XA
-AC between 0.382 and 0.886 of AB
-BD between 2.24 and 3.618 of BC
-XD ~1.618 of XA
Crab is also an extension pattern . It often produces a very deep D completion and a strong reaction zone.
Deep Crab
-XB ~0.886 of XA
-AC between 0.382 and 0.886 of AB
-BD between 2.0 and 3.618 of BC
-XD ~1.618 of XA
Deep Crab combines a deep B point with a strong XA extension completion.
🔸 Cypher Fibonacci Rules (XC Based)
Cypher is not validated with the same four ratios as XABCD patterns. Instead it uses an XC based completion model:
1) B as a retracement of XA
xb = |B - A| / |A - X| // AB/XA
Must be between 0.382 and 0.618 .
2) C as an extension from X relative to XA
xc = |C - X| / |A - X| // XC/XA
Must be between 1.272 and 1.414 .
3) D as a retracement of XC
xd = |D - C| / |C - X| // CD/XC
Must be ~ 0.786 .
This makes Cypher structurally different: the “completion” is defined as a retracement of the entire XC leg, not XA.
🔸 Shark and Alt Shark Fibonacci Rules (0-X-A-B-C Mapping)
Shark patterns are commonly defined as 0 X A B C . In this script the pivots are mapped like this:
0 = pX, X = pA, A = pB, B = pC, C = pD
So the final pivot (stored as pD) is labeled as C on the chart.
Three ratios are validated:
1) AB relative to XA
ab_xa = |B - A| / |A - X|
Must be between 1.13 and 1.618 .
2) BC relative to AB
bc_ab = |C - B| / |B - A|
Must be between 1.618 and 2.24 .
3) OC relative to OX
oc_ox = |C - 0| / |X - 0|
For Shark it must be between 0.886 and 1.13 .
For Alt Shark it must be between 1.13 and 1.618 (a deeper / more extended completion).
🔸 5-0 Fibonacci Rules
5-0 is validated as a sequence of extensions and then a fixed retracement:
1) AB extension of XA
ab_xa = |B - A| / |A - X|
Must be between 1.13 and 1.618 .
2) BC extension of AB
bc_ab = |C - B| / |B - A|
Must be between 1.618 and 2.24 .
3) CD retracement of BC
cd_bc = |D - C| / |C - B|
Must be approximately 0.50 .
Note that for 5-0 the script does not rely on an XA completion ratio like 0.786 or 1.618. The defining completion is the 0.5 retracement of BC.
🔸 AB=CD Fibonacci Rules
AB=CD is a symmetry pattern and is treated differently from the harmonic templates:
1) AB and CD length symmetry
The script checks if CD is approximately equal to AB within tolerance.
2) BC proportion
BC/AB is expected to fall in a common Fibonacci retracement zone:
-approximately 0.618 to 0.786 (with a looser tolerance in code)
3) CD/BC expansion
CD/BC is expected to be an expansion ratio:
-approximately 1.272 to 1.618 (also with a looser tolerance)
This allows the script to capture both classic equal leg AB=CD and common “expanded” variations.
🔸 3 Drives Fibonacci Rules (6 Point Structure)
3 Drives is a 6 point structure and is validated using retracement ratios and extension ratios:
Retracement rules
Retracement 1 must be between 0.618 and 0.786 of Drive 1
Retracement 2 must be between 0.618 and 0.786 of Drive 2
Extension rules
Drive 2 must be between 1.272 and 1.618 of Retracement 1
Drive 3 must be between 1.272 and 1.618 of Retracement 2
This pattern is meant to capture rhythm and proportional repetition rather than a single XA completion ratio.
🔸 Why the script can show “ratio labels” on legs
If you enable Show Fibonacci Values on Legs , the script prints the measured ratios near the midpoint of each leg (or diagonal, depending on pattern type). This makes it easy to visually confirm:
-Which ratios caused the pattern to pass
-How close the structure is to ideal harmonic values
-Why one template was preferred over another via the accuracy score
🔸 Fibonacci Tolerance Control
All ratio checks use a single tolerance input (percentage). This tolerance expands or contracts the acceptable ratio ranges, letting you decide whether you want:
-Tight, high precision matches (lower tolerance)
-Broader, more frequent matches (higher tolerance)
🔸 Direction Filter (Bullish Only / Bearish Only / Both)
You can restrict scanning to bullish patterns, bearish patterns, or allow both. This is useful if you are aligning with higher timeframe bias or only trading one side of the market.
🔸 Best Match Selection (Anti Clutter Logic)
When a new pivot confirms, the script evaluates all enabled patterns against the latest pivot sequence and keeps the one with the smallest total error score. This is especially helpful because many harmonic templates overlap in real time. Instead of drawing multiple conflicting labels, you get one “most accurate” candidate.
🔸 Clean Visual Rendering and Optional Details
The drawing system can display:
-Main structure lines (X-A-B-C-D or special mappings)
-Dashed diagonals for geometric context (XB, AC, BD, XD)
-Pattern fill to visually highlight the structure zone
-Point labels (X,A,B,C,D or 0..5 for 3 Drives, 0-X-A-B-C for Shark)
-Leg Fibonacci labels placed around midpoints for fast ratio reading
All colors (bullish and bearish line and fill) are configurable.
🔸 Pattern Spacing and Display Limits
To keep charts readable, the script includes:
-Max Patterns to Display to limit on-chart drawings
-Min Bars Between Patterns to avoid repeated signals too close together in the same direction
Older patterns are automatically deleted once the display limit is exceeded.
🔸 Alerts
When enabled, alerts trigger on new confirmed detections:
-Bullish Pattern Detected
-Bearish Pattern Detected
Alerts fire once per bar when a new pattern is confirmed by a fresh pivot.
🔹 Calculations
This section summarizes the core logic used under the hood.
1) Pivot Detection and Swing Filtering
The script confirms pivots using right side confirmation, then optionally filters them by minimum swing distance relative to the last opposite pivot.
// Pivot detection
float pHigh = ta.pivothigh(high, pivotLeftBars, pivotRightBars)
float pLow = ta.pivotlow(low, pivotLeftBars, pivotRightBars)
// Example swing distance filter (conceptual)
abs(newPivot - lastOppPivot) / lastOppPivot >= minSwingPercent
Pivots are stored in capped arrays (high pivots and low pivots), ensuring performance and stable memory usage.
2) Ratio Measurements (Retracement and Extension)
The engine measures harmonic ratios using two core helpers:
Retracement measures how much the third point retraces the previous leg.
Extension measures how much the next leg extends relative to the previous leg.
// Retracement: (p3 - p2) compared to (p2 - p1)
calcRetracement(p1, p2, p3) =>
float leg = math.abs(p2.price - p1.price)
float retr = math.abs(p3.price - p2.price)
leg != 0 ? retr / leg : na
// Extension: (p4 - p3) compared to (p3 - p2)
calcExtension(p2, p3, p4) =>
float leg = math.abs(p3.price - p2.price)
float ext = math.abs(p4.price - p3.price)
leg != 0 ? ext / leg : na
For a standard XABCD pattern the script evaluates:
-XB retracement of XA
-AC retracement of AB
-BD extension of BC
-XD retracement of XA
3) Tolerance Based Range Check
Ratio validation uses a flexible range check that expands min and max by the tolerance percent:
isInRange(value, minVal, maxVal, tolerance) =>
float tolMin = minVal * (1.0 - tolerance)
float tolMax = maxVal * (1.0 + tolerance)
value >= tolMin and value <= tolMax
This means even “fixed” ratios (like 0.786) still allow a user controlled deviation.
4) Positional Sanity Check for D (Beyond X or Not)
Some harmonic patterns require D to remain within X (non extension patterns), while others require D to break beyond X (extension patterns). The script enforces that using a boolean flag in each template.
Conceptually:
-If the pattern is an extension type, D should cross beyond X in the expected direction
-If the pattern is not extension type, D should stay on the correct side of X
This prevents visually incorrect “ratio matches” that violate the intended geometry.
5) Template Definitions (Ranges + Ideal Targets)
Every pattern includes ratio ranges plus ideal values. The ideal values are used only for scoring quality, not for pass/fail. Example concept:
-Ranges determine validity
-Ideal targets determine ranking
6) Accuracy Scoring (Total Error)
When a candidate passes all validity checks, the script computes an accuracy score by summing absolute deviations from ideal ratios:
calcError(value, ideal) =>
math.abs(value - ideal)
// Total error is the sum of the four leg errors (as available for the pattern)
totalError =
calcError(xbRatio, xbIdeal) +
calcError(acRatio, acIdeal) +
calcError(bdRatio, bdIdeal) +
calcError(xdRatio, xdIdeal)
Lower score means closer to the “textbook” harmonic proportions.
7) Best Match Resolution (Choosing One Winner)
When multiple enabled patterns match the same pivot structure, the script selects the one with the lowest totalError:
updateBest(currentBest, newCandidate) =>
result = currentBest
if not na(newCandidate)
if na(currentBest) or newCandidate.totalError < currentBest.totalError
result := newCandidate
result
This is a major practical feature because it reduces clutter and highlights the highest quality interpretation.
8) Bullish and Bearish Scanning Logic
The scanner runs when pivots confirm:
-Bullish patterns are evaluated on a newly confirmed pivot low (potential D)
-Bearish patterns are evaluated on a newly confirmed pivot high (potential D)
From that D pivot, the script searches backward through stored pivots to build a valid pivot sequence (X,A,B,C,D). If 3 Drives is enabled, it also attempts to find the extra preceding point needed for the 6 point structure.
9) Rendering: Lines, Fill, Labels, and Leg Fib Text
After detection the script draws:
-Primary legs with thicker lines
-Geometric diagonals with dashed lines (for XABCD types)
-Optional fill between selected legs to emphasize the structure area
-A summary label showing direction, pattern name, and ratios
-Optional point labels and leg ratio labels placed near midpoints
To avoid overlapping with candles, the script offsets labels using ATR:
float yOff = math.max(ta.atr(14) * 0.15, syminfo.mintick * 10)
10) Pattern Lifecycle and Cleanup
To respect chart limits and keep visuals clean, the script deletes old drawings once the maximum visible patterns threshold is exceeded. This includes lines, fills, and labels.
CCI + Buy/Sell Cross (supfabio)This indicator is an enhanced version of the Commodity Channel Index (CCI) designed to generate clear BUY and SELL signals based on customizable level crossovers, with built-in support for webhook automation and external trade execution.
🔹 Signal Logic
BUY Signal:
Triggered when the CCI crosses upward (from below to above) the user-defined BUY level (red line).
SELL Signal:
Triggered when the CCI crosses downward (from above to below) the user-defined SELL level (green line).
Signals can optionally be configured to trigger only on candle close, reducing real-time noise and false signals.
🔹 Key Features
✅ Original CCI calculation (standard formula preserved)
✅ Fully configurable BUY and SELL levels
✅ Optional display of signal level lines
✅ Visual BUY / SELL markers plotted on the CCI panel
✅ Support for moving average smoothing and Bollinger Bands applied to the CCI
✅ Dynamic alerts using alert(), ideal for:
Webhook integrations
Trading bots
External servers and automated execution systems
🔹 Alerts & Webhook Integration
The indicator sends dynamic alert messages containing:
Action type (BUY / SELL)
Symbol
Closing price
Timestamp
To use:
Add the indicator to your chart
Create an alert and select “Any alert() function call”
Enable Webhook URL and configure your endpoint
Done — signals will be sent automatically
🔹 Best Use Cases
Traders who use CCI as a primary entry trigger
Momentum or mean-reversion strategies
Automated trading systems
Visual backtesting and signal validation
⚠️ Disclaimer
This indicator is not a complete trading system and does not replace proper risk management. Always use it in combination with market context, confirmation tools, and sound position sizing.
Session Boxes 03:33-07:30 + 14:00ession Boxes & Pre-Market Structure (14:00–07:30) Indicator
This indicator plots key session structures and highlights a unique pre-market range window using colored boxes on the 15-minute chart. Designed for intraday traders, it visually marks important institutional activity times and a strategic price zone that often sets the tone for the following trading day.
📍 Key Features:
✅ 03:00 AM Box
Draws a purple box around the 03:00 candle (EST) until 16:00 (market close).
Useful for identifying London/early European session impact.
✅ 07:30 AM Box
Draws an orange box around the 07:30 candle (EST) until 16:00.
Marks the key pre-market data release period (e.g., CPI/NFP days).
✅ 🔴 14:00 to Next Day 07:30 Range Box
Draws a red box with 50% opacity starting from the 14:00 (2 PM) candle and ending at the 07:30 AM candle the next day.
This range often represents institutional positioning and pre-market accumulation/distribution zones.
Ideal for identifying breakout or rejection zones for the next session.
⚠️ Important Notes:
Works only on the 15-minute timeframe.
Auto-adjusts to the New York timezone (EST/EDT).
A visual label reminds you to switch to the correct timeframe if you’re on the wrong chart.
ICT Candle Reading PROICT Candle Reading – Visual Clean
This indicator is designed to provide a clean and precise price reading, based on ICT and Smart Money Concepts, without cluttering the chart.
Its purpose is to help traders identify real institutional zones, understand market intention, and improve entry timing, using pure price action.
🔹 What does this indicator show?
🟢 Fair Value Gaps (FVG / Imbalances)
Detects market inefficiencies created by impulsive moves.
Displayed as clean and minimal boxes extended into the future.
Useful as mitigation, reaction, or continuation zones.
🟠 Liquidity Sweeps
Highlights liquidity grabs above recent highs or below recent lows.
Drawn using dashed horizontal lines.
Helps identify market manipulation before the true move.
🔵 Displacement Candles
Identifies candles with dominant bodies, showing institutional momentum.
Marked with small symbols to keep the chart clean.
Useful to confirm impulse starts or shifts in market intent.
🎯 Indicator Philosophy
❌ No lagging indicators
❌ No chart clutter
✅ Real ICT concepts
✅ Clean candle reading
✅ Suitable for scalping, intraday, and swing trading
⚙️ Customization
Each concept can be enabled or disabled individually.
Zone extension length is adjustable.
Optimized for 15M, 1H, and 4H timeframes.
📈 How to use
This indicator does not provide automatic buy/sell signals.
It is best used with:
Higher timeframe bias
Market structure
Session timing (London / New York)
Proper risk management
🧠 Final Notes
ICT Candle Reading – Visual Clean helps you see the market from an institutional perspective, focusing only on what truly matters: price, liquidity, and intent.
Magical Thirteen Turns - The Greedy SnakeThe number 9 appears:
Meaning: Warning signal. The rise may encounter resistance and a cautious pullback is about to begin.
Operation: Consider reducing your holdings (selling a portion) to lock in profits and avoid experiencing wild fluctuations.
The number 13 appears:
Meaning: Strong sell signal. The upward momentum is likely to be exhausted, which is also known as "bull exhaustion".
Operation: It is recommended to liquidate your positions or significantly reduce them. Short sell (if you are trading contracts).
HTF Suspension Blocks [TakingProphets]-----------------------------------------------------------------------------------------------
HTF SUSPENSION BLOCKS
-----------------------------------------------------------------------------------------------
HTF Suspension Blocks bring ICT’s Suspension Block concept into a multi-timeframe workflow by detecting the 3-candle pattern on higher timeframes and projecting those zones directly onto your current execution chart.
Instead of only seeing Suspension Blocks on the timeframe they form, this script identifies valid HTF formations, draws their ranges on your lower timeframe, extends them forward, and manages invalidation automatically. You get higher-timeframe context while staying in your execution environment.
-----------------------------------------------------------------------------------------------
PURPOSE AND SCOPE
-----------------------------------------------------------------------------------------------
- Detect ICT-style Suspension Blocks on multiple higher timeframes (HTF 1 / HTF 2 / HTF 3)
- Project HTF blocks onto the current chart using bar-time anchored drawing
- Require measurable body-to-body separation defined in true ticks (instrument-aware)
- Auto-extend blocks forward in time until invalidation
- Optional Consequent Encroachment (50% equilibrium) inside each block
- Per-timeframe visibility limiting so charts stay clean and actionable
- Labels each block with the originating HTF (ex: M5 / M15 / M60)
- Alerts for:
- New HTF bullish / bearish block formation
- Price entering into any HTF bullish / bearish block
- Session-restricted alert windows (New York time)
-----------------------------------------------------------------------------------------------
WHAT IS A SUSPENSION BLOCK
-----------------------------------------------------------------------------------------------
A Suspension Block is a strict 3-candle displacement sequence defined by body-to-body gaps around a middle candle. This HTF variant uses the same model, but evaluates the pattern on a higher timeframe and then projects the zone onto your current chart.
Bullish Suspension Block logic:
- HTF Candle 1 close is BELOW HTF Candle 2 open by at least Minimum Body Separation
- HTF Candle 3 open is ABOVE HTF Candle 2 close by at least Minimum Body Separation
- HTF Candle 3 open is ABOVE HTF Candle 1 close to ensure a valid vertical span
- Block vertical span: Candle 1 close (low) to Candle 3 open (high)
- Block remains valid until price CLOSES below the block low (Candle 1 close)
Bearish Suspension Block logic (mirror conditions):
- HTF Candle 1 close is ABOVE HTF Candle 2 open by at least Minimum Body Separation
- HTF Candle 3 open is BELOW HTF Candle 2 close by at least Minimum Body Separation
- HTF Candle 3 open is BELOW HTF Candle 1 close to ensure a valid vertical span
- Block vertical span: Candle 1 close (high) to Candle 3 open (low)
- Block remains valid until price CLOSES above the block high (Candle 1 close)
All gap calculations are normalized using `syminfo.mintick` so the “ticks” setting behaves correctly across instruments.
-----------------------------------------------------------------------------------------------
GENERAL SETTINGS
-----------------------------------------------------------------------------------------------
- Minimum Body Separation (ticks)
- Minimum required body-to-body gap in HTF tick units
- Used for both:
- Candle 1 close to Candle 2 open separation
- Candle 2 close to Candle 3 open separation
- Examples:
- 0.25 = quarter-tick gap
- 1.0 = full tick gap
-----------------------------------------------------------------------------------------------
TIMEFRAMES
-----------------------------------------------------------------------------------------------
This script supports up to 3 higher timeframe sources. Each HTF has:
- Enable toggle
- Timeframe selector
- Per-timeframe Max Blocks visibility control
HTF 1 / HTF 2 / HTF 3:
- These are the timeframes the script scans for Suspension Blocks
- Blocks are drawn only when your current chart timeframe is LOWER than the selected HTF
- This prevents duplicate / redundant rendering when you’re already on the HTF or higher
Max Blocks per timeframe:
- Limits the number of most-recent blocks shown per side (bullish + bearish) for that HTF
- 0 = show all blocks for that timeframe
-----------------------------------------------------------------------------------------------
VISUALIZATION SETTINGS
-----------------------------------------------------------------------------------------------
Bullish Blocks:
- Toggle visibility
- Fill color controls opacity / emphasis
- Optional border with selectable style (Solid / Dashed / Dotted)
Bearish Blocks:
- Toggle visibility
- Fill color controls opacity / emphasis
- Optional border with selectable style (Solid / Dashed / Dotted)
Consequent Encroachment (CE):
- Optional 50% equilibrium line drawn inside each block
- Style options (Solid / Dashed / Dotted)
- Automatically extends as blocks extend
HTF Labels:
- Each block is labeled with its originating timeframe (ex: M5 / M15 / M60)
- Label styling includes:
- Text color
- Size (Tiny / Small / Normal / Large)
- Labels are intentionally hidden on non-visible blocks when visibility limiting is active
-----------------------------------------------------------------------------------------------
HOW HTF PROJECTION WORKS
-----------------------------------------------------------------------------------------------
- The script requests the last 3 candles of each selected HTF via `request.security()`
- It maps those HTF candles into the standard 3-candle Suspension Block model:
- Candle 1 = oldest
- Candle 2 = middle
- Candle 3 = most recent
- When a valid block forms:
- A box is created using `xloc.bar_time`
- The left side anchors to the HTF candle timestamp
- The right side projects forward to the current chart time
- Each HTF has its own independent storage set:
- Bull boxes, bear boxes
- High / low bounds
- CE lines
- Labels
-----------------------------------------------------------------------------------------------
BLOCK MANAGEMENT & INVALIDATION
-----------------------------------------------------------------------------------------------
- All blocks extend forward automatically to the current bar time
- Bullish invalidation:
- Block is removed when price CLOSES below the block low
- Bearish invalidation:
- Block is removed when price CLOSES above the block high
- When a block invalidates:
- The box is deleted
- Its CE line is deleted
- All stored references are removed from the set
This keeps the chart focused on active HTF zones only.
-----------------------------------------------------------------------------------------------
VISIBILITY LIMITING
-----------------------------------------------------------------------------------------------
Each timeframe’s “Max Blocks” setting controls how many blocks per side remain visible.
When Max Blocks > 0:
- The script calculates distance from current price to every stored block range
- It keeps the closest N blocks per side (bullish + bearish)
- Blocks not kept are made fully transparent:
- Hidden fill
- Hidden border
- Hidden CE line
- Hidden label text
This gives you the most relevant HTF structures near price without clutter.
-----------------------------------------------------------------------------------------------
ALERT SYSTEM
-----------------------------------------------------------------------------------------------
Alerts are optional and can be restricted to specific NY sessions.
Sessions (New York time):
- Session 1 (default: 09:30–16:00)
- Session 2 (optional)
- Session 3 (optional)
Alert types:
- HTF Bullish Block Formed
- Triggers when any enabled HTF forms a new bullish suspension block
- HTF Bearish Block Formed
- Triggers when any enabled HTF forms a new bearish suspension block
- Enter Bullish Block
- Triggers when price transitions from NOT inside any bullish HTF block to inside one
- Enter Bearish Block
- Triggers when price transitions from NOT inside any bearish HTF block to inside one
Messages:
- Fully customizable alert text inputs
- Script automatically appends ticker + current chart timeframe for context
-----------------------------------------------------------------------------------------------
BEST USE CASES
-----------------------------------------------------------------------------------------------
- Use HTF Suspension Blocks as “context zones” while executing on a lower timeframe
- Pair with ICT displacement, liquidity, PD arrays, and market structure for confluence
- Treat blocks as HTF inefficiency zones that can act as reaction points on retracements
- Use “enter block” alerts as a heads-up to shift into execution mode at HTF levels
-----------------------------------------------------------------------------------------------
DISCLAIMER
-----------------------------------------------------------------------------------------------
This indicator is provided for educational and analytical purposes only. It does not constitute financial advice. Trading involves risk, and past performance is not indicative of future results.
© TakingProphets
-----------------------------------------------------------------------------------------------
GoldHook Reversal ProGoldHook Reversal Pro v7 is an advanced market structure indicator designed to identify high-probability turning points. It automatically detects where price is accumulating—and monitors for specific momentum shifts that signal a valid Breakout or Reversal. By filtering out market noise with its "Smart Adaptive" logic, it helps traders distinguish between false moves and genuine trend opportunities, providing clear entry signals with built-in risk management targets.
IFVGs [NINE]Overview
The IFVG Indicator is a precision-engineered tool designed to identify and display Inversion Fair Value Gaps (IFVGs), a powerful price action concept rooted in ICT (Inner Circle Trader) methodology. This indicator automatically detects when price closes through an existing Fair Value Gap, causing the zone to "invert" and flip its directional bias, signaling potential areas of institutional interest for future price reactions.
What is an Inversion Fair Value Gap?
A Fair Value Gap (FVG) is a three-candle pattern where a gap exists between the wicks of the first and third candles, representing an imbalance in price delivery. These zones often act as magnets for price to return and "fill" the inefficiency.
An Inversion Fair Value Gap (IFVG) occurs when price doesn't just tap into an FVG, it closes through it with a candle body. This "inversion" transforms the zone:
A Bullish FVG that gets closed through becomes a Bearish IFVG (potential resistance/supply zone)
A Bearish FVG that gets closed through becomes a Bullish IFVG (potential support/demand zone)
IFVGs represent areas where the market has shown its hand — institutional order flow has aggressively moved through a prior inefficiency, and the inverted zone now becomes a point of interest for potential reversals or continuations.
Key Features
Automatic IFVG Detection
The indicator continuously monitors for Fair Value Gaps and automatically converts them to IFVGs when price body closes through the zone. No manual identification required.
Multiple Display Styles
Choose from four distinct visualization modes to match your chart aesthetic:
Level — Clean, minimal single line at the IFVG extreme (top for bullish, bottom for bearish)
Normal — Filled zone with dashed borders and dot label
Minimalist — High/low boundary lines with connecting link
Classic — Filled box with 50% midline only
Full Customization
Independent colors for bullish and bearish IFVGs
Adjustable transparency for zone fills
Optional 50% midline (Consequent Encroachment level)
Flexible label styles: "IFVG" or "+/−" notation
Multiple label sizes: Tiny, Small, Normal, Large
Smart Extension Options
Extend to Current Bar — Zones dynamically extend as price progresses
Extend to Confirmation — Zones end at the bar where inversion occurred
Manual Offset — Fine-tune extension length in bars
Clustered IFVG Filter
Prevents chart clutter by ensuring only one IFVG per direction forms within a 5-bar cooldown period. When a single candle closes through multiple FVGs, only the first IFVG of that directional series is displayed — eliminating redundant signals and keeping your chart clean.
FVG Lookback Control
Limit which FVGs can become IFVGs based on their age. Options include 10, 50, 100, 200, or 300 bars. This filters out old, stale FVGs that may create less relevant inversions.
Session Time Filters
Optional time-based filtering allows you to focus on specific trading sessions:
Configurable session windows (e.g., 9:30 AM - 12:00 PM)
Support for two independent session filters
Multiple timezone options including New York, London, Tokyo, and more
Volume Imbalance Detection
Optionally include Volume Imbalances (VIs) — gaps between candle bodies rather than wicks — expanding the scope of detectable inefficiencies.
Invalidation Tracking
IFVGs are automatically invalidated when price closes back through the zone in the opposite direction, with optional display of invalidated zones.
How to Use
Entry Confirmation
IFVGs serve as areas for trade entries. When price returns to a confirmed IFVG:
Bullish IFVG — Look for long entries as price taps the zone from above
Bearish IFVG — Look for short entries as price taps the zone from below
Settings Reference
Inversion Fair Value Gaps
Show IFVGs? — Master toggle for IFVG display
Style — Level, Normal, Minimalist, or Classic
Transparency % — Zone fill opacity (0-100)
Historical Display — Maximum IFVGs to show per direction
Bullish/Bearish Colors — Independent color selection
Show Invalidated? — Display IFVGs that have been invalidated
Extend IFVGs? — Enable dynamic zone extension
Extension Mode — Current Bar or Confirmation
Manual Offset — Additional bars to extend
High/Low Lines — Show boundary lines (Minimalist style)
50% Midline — Show Consequent Encroachment level
Show Labels? — Display zone labels
Label Style — IFVG or +/− notation
FVG Lookback — Maximum age of FVGs that can invert
Clustered Filter — Prevent multiple same-direction IFVGs in quick succession
Volume Imbalances — Include body gaps in detection
Session Filters
Enable 1st/2nd Time Filter — Activate session filtering
Session Times — Define active trading windows
Timezone — Reference timezone for session calculations
Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice, and nothing contained herein constitutes a recommendation, solicitation, or offer to buy or sell any securities, options, or other financial instruments.
Trading involves substantial risk of loss and is not suitable for all investors. Past performance is not indicative of future results. You should carefully consider your investment objectives, level of experience, and risk appetite before making any trading decisions.
The developer of this indicator makes no representations or warranties regarding the accuracy, completeness, or reliability of the information provided. You are solely responsible for your own trading decisions and any profits or losses that may result.
Always conduct your own research and consider seeking advice from a licensed financial professional before trading.
Daily OpenThis is a protected/private script. To request access, please provide:
TradingView username (required)
Your main market(s) and timeframe(s)
Intended use (education / backtesting / live trading)
(Optional) Any proof of eligibility if applicable
Once your request is reviewed, access will be granted to the username provided.
Usage Terms:
No copying, modifying, distributing, publishing, or reselling of this script or its logic
Access is granted to approved accounts only
This script is a tool for analysis and not financial advice; you assume all trading risks
The author reserves the right to update the script or revoke access at any time
Suspension Blocks [TakingProphets]-----------------------------------------------------------------------------------------------
SUSPENSION BLOCKS
-----------------------------------------------------------------------------------------------
Suspension Blocks are a new ICT concept designed to highlight price inefficiencies created by displacement and body-to-body gaps across a precise 3-candle sequence. These structures represent areas where price was temporarily “suspended” before continuation, often acting as high-probability reaction zones on future revisits.
This indicator automatically detects, visualizes, manages, and invalidates Suspension Blocks in real time, while intelligently limiting chart clutter to only the most relevant structures near current price.
-----------------------------------------------------------------------------------------------
PURPOSE AND SCOPE
-----------------------------------------------------------------------------------------------
- Detect ICT-style Bullish and Bearish Suspension Blocks using strict 3-candle body relationships
- Require measurable body-to-body separation defined in true ticks (instrument-aware)
- Automatically draw and extend Suspension Blocks forward in time
- Invalidate blocks only when price decisively closes beyond the defining boundary
- Optionally display Consequent Encroachment (50% equilibrium) within each block
- Limit on-chart visibility to the closest N blocks per side relative to current price
- Provide session-based, directional alerting for new block formations
-----------------------------------------------------------------------------------------------
WHAT IS A SUSPENSION BLOCK
-----------------------------------------------------------------------------------------------
A Suspension Block is a 3-candle displacement pattern defined by body gaps on both sides of a middle candle.
Bullish Suspension Block logic:
- Candle 1 close is BELOW Candle 2 open by at least the Minimum Body Separation
- Candle 3 open is ABOVE Candle 2 close by at least the Minimum Body Separation
- Candle 3 open is ABOVE Candle 1 close to ensure a valid vertical range
- The block spans from Candle 1 close (low) to Candle 3 open (high)
- The block remains valid until price CLOSES below Candle 1 close
Bearish Suspension Block logic (mirror conditions):
- Candle 1 close is ABOVE Candle 2 open by at least the Minimum Body Separation
- Candle 3 open is BELOW Candle 2 close by at least the Minimum Body Separation
- Candle 3 open is BELOW Candle 1 close to ensure a valid vertical range
- The block spans from Candle 1 close (high) to Candle 3 open (low)
- The block remains valid until price CLOSES above Candle 1 close
All calculations are performed using true tick values via `syminfo.mintick` to ensure precision across instruments.
-----------------------------------------------------------------------------------------------
GENERAL SETTINGS
-----------------------------------------------------------------------------------------------
- Minimum Body Separation (ticks)
- Defines the minimum required body-to-body gap between candles
- Measured in true ticks (0.25 = quarter tick, 1.0 = full tick, etc.)
- Max Visible Blocks per Side
- Limits the number of bullish and bearish blocks displayed
- Only the closest blocks to current price remain visible
-----------------------------------------------------------------------------------------------
VISUALIZATION SETTINGS
-----------------------------------------------------------------------------------------------
- Bullish Suspension Blocks
- Toggle bullish block visibility
- Custom fill color with adjustable transparency
- Optional border with selectable line style (Solid / Dashed / Dotted)
- Bearish Suspension Blocks
- Toggle bearish block visibility
- Custom fill color with adjustable transparency
- Optional border with selectable line style (Solid / Dashed / Dotted)
- Consequent Encroachment (CE)
- Optional 50% equilibrium line drawn inside each block
- Custom color and line style
- Automatically extends with the block
Blocks dynamically extend to the current bar and are hidden or shown based on proximity to price to keep the chart clean and actionable.
-----------------------------------------------------------------------------------------------
BLOCK MANAGEMENT & INVALIDATION
-----------------------------------------------------------------------------------------------
- Each block is stored persistently and extended forward bar-by-bar
- Bullish blocks are invalidated only when price CLOSES below the block low
- Bearish blocks are invalidated only when price CLOSES above the block high
- Invalidated blocks and their CE lines are automatically removed
- Visibility logic ensures only the most relevant structures are emphasized
-----------------------------------------------------------------------------------------------
ALERT SYSTEM
-----------------------------------------------------------------------------------------------
- Optional alerts when new Suspension Blocks form
- Independent toggles for bullish and bearish alerts
- Fully customizable alert messages
- Alerts can be restricted to specific trading sessions:
- Session 1 (default: 09:30–16:00 NY)
- Session 2 (optional)
- Session 3 (optional)
- Alerts include ticker and timeframe context automatically
-----------------------------------------------------------------------------------------------
BEST USE CASES
-----------------------------------------------------------------------------------------------
- High-probability reaction zones after displacement
- Confluence with liquidity, PD arrays, and market structure
- Execution refinement within ICT-based models
- Intraday and higher-timeframe contextual bias
- Clean, rules-based identification of inefficiency zones
-----------------------------------------------------------------------------------------------
DISCLAIMER
-----------------------------------------------------------------------------------------------
This indicator is provided for educational and analytical purposes only. It does not constitute financial advice. Trading involves risk, and past performance is not indicative of future results.
© TakingProphets
-----------------------------------------------------------------------------------------------
Smart Money Bot [MTF Confluence Edition]Uses multi-time frame analysis and supply and demand strategy.
Best used when swing trading.
Bottom & Top ReversalBottom & Top Reversal
Bottom Reversal (Bullish):
Opens gap down but recovers strongly
Makes new low but closes above previous close
Lime green arrow + label
Top Reversal (Bearish):
Opens gap up but fails
Makes new high but closes below previous close
Red arrow + label
Extra features:
Status table showing active patterns
Toggle each pattern on/off
Background highlights
Alert system
Gogreen.2.0The SRV EMA Pivot Volume – Trend Only indicator is designed to identify high-probability market trends by combining EMA Pivot direction, key Support & Resistance zones, and Volume strength.
This indicator focuses only on trend confirmation, helping traders stay aligned with strong market moves and avoid ranging or low-probability conditions.
Phoenix H4-M15 v1Public Release: Phoenix Capital H4-M15 Trading Strategy v1
We are excited to release a public version of our custom trading indicator! This strategy is designed to help you identify market trends with precision.
Supported Assets:
• Crypto: BTC, ETH
• Indices: NQ (Nasdaq), ES (S&P 500)
• Commodities: XAU (Gold)
Join Phoenix Capital: t.me
Time Liquidity a Zulu Kilo indicatorTime Liquidity (Daily/Weekly/Monthly/Quarterly/Yearly) — New York Time (ET)
Time Liquidity is a calendar-based “liquidity map” that tracks highs and lows for the current Day / Week / Month / Quarter / Year (using America/New_York time). When each period completes, its high/low becomes a persistent liquidity level that extends forward until price takes it—helping you quickly see where prior time-based liquidity is still “untouched.”
This is not a trading strategy and does not place trades. It is a context + levels tool designed to help you plan, frame targets, and monitor which higher-timeframe highs/lows remain in play.
What it plots:
1) Current period range boxes (optional)
-A live “bounding box” for the active D / W / M / Q / Y period, updating as new highs/lows form. This gives you better perspective
-Per-timeframe visibility controls and opacity controls.
2) Historical liquidity lines (optional)
-When a period rolls over, the completed period’s High (▲) and Low (▼) are projected forward as liquidity lines.
-Each line remains active until price breaches it (high taken when price trades above; low taken when price trades below).
-Tags identify the source timeframe (D/W/M/Q/Y) and side (high/low).
3) NeoHUD (optional)
-A compact panel showing the nearest next “untaken” liquidity above and below current price for each timeframe.
-Useful for quickly answering: “What’s the closest higher-timeframe high above me?” and “What’s the closest low below me?”
Time / session logic (important)
-All calendar boundaries are computed in New York time (America/New_York).
-Week start is Monday 00:00 ET.
-Sunday handling: you can choose whether Sunday merges into Monday (default behavior - This mostly for futures/FX markets) or is treated as a separate day (useful for Bitcoin, etc..).
(Note: This tool is calendar-based, not exchange-session-based. If your market has non-standard sessions/settlement conventions, interpret levels accordingly.)
How to use it (practical workflow)
-Turn on the timeframes you care about (D/W/M/Q/Y).
-Use current boxes to see the active period’s developing range.
-Use historical lines as a “to-do list” of still-untouched highs/lows.
-Watch the NeoHUD to stay oriented on the closest remaining liquidity above/below price (per timeframe).
For a cleaner chart or faster performance, reduce:
-Max Historical Liquidity Lines Kept / TF
-The number of enabled timeframes
-Glow/frame effects and/or boxes
Limitations / transparency
This indicator does not predict direction or guarantee outcomes; it only visualizes time-based highs/lows and whether they have been taken.
On very low timeframes or long histories, TradingView object limits may apply; use the settings above to manage chart load.
No alerts are included in this script (levels are intended for visual decision support).
Risk notice
Trading involves risk. This tool is provided for educational and informational purposes only and should not be used as the sole basis for trading decisions.
SMT (ICT Concepts)Overview
Smart Money Technique (SMT) Divergence is a price action analysis method derived from Inner Circle Trader (ICT) methodology. This indicator automatically detects SMT divergences by comparing price movements across correlated financial instruments, identifying moments when assets that typically move together begin to diverge - a phenomenon often associated with potential price reversals.
An SMT divergence occurs when one instrument makes a new swing high or low while a correlated instrument fails to confirm that move. This failure to confirm suggests that the instrument may be positioning for a reversal, as the divergence indicates a lack of conviction in the current price direction across related markets.
Theoretical Foundation
What is SMT Divergence?
In correlated markets, instruments tend to move in tandem. For example, the E-mini S&P 500 (ES) and E-mini Nasdaq 100 (NQ) futures typically make swing highs and lows together due to their shared exposure to U.S. equity markets. When this correlation breaks down at key swing points, it creates an SMT divergence.
Bullish SMT Divergence:
The chart instrument creates a lower low compared to a previous swing low, while the correlated comparison instrument creates a higher low (or fails to make a lower low). This divergence at the lows suggests potential buying pressure and a possible bullish reversal.
Bearish SMT Divergence:
The chart instrument creates a higher high compared to a previous swing high, while the correlated comparison instrument creates a lower high (or fails to make a higher high). This divergence at the highs suggests potential selling pressure and a possible bearish reversal.
Why SMT Divergences Matter
SMT divergences are considered significant because they may indicate:
Accumulation or distribution occurring in one instrument but not the other
Relative strength or weakness between correlated assets
Potential exhaustion of the current trend
Early warning signs before major reversals
Indicator Features
Multi-Timeframe SMT Detection
This indicator provides simultaneous SMT detection on two timeframes:
Current Timeframe (CTF) Detection:
The indicator scans for SMT divergences on the chart's active timeframe using multiple pivot lookback periods (3, 5, 8, 13, 21, and 34 bars). This multi-period approach ensures detection of both short-term and intermediate swing points, reducing the likelihood of missing valid divergences while filtering out noise.
Higher Timeframe (HTF) Detection:
Simultaneously, the indicator monitors a higher timeframe for SMT divergences using pivot periods of 3, 5, 8, 13, and 21 HTF candles. Higher timeframe signals generally carry more significance as they represent larger market structure.
Automatic Timeframe Pairing:
When enabled, the indicator automatically selects an appropriate higher timeframe based on your chart's current timeframe:
Sub-1 minute charts pair with 5-minute
1-2 minute charts pair with 15-minute
3-4 minute charts pair with 30-minute
5 minute charts pair with 1-hour
6-9 minute charts pair with 1-hour
15 minute charts pair with 4-hour
16-59 minute charts pair with Daily
1-4 hour charts pair with Weekly
Daily charts pair with Monthly
Combined Signal Detection:
When an SMT divergence is detected on both the current timeframe and higher timeframe at the same price pivots, the indicator combines these into a single enhanced signal. Combined signals display both timeframes in the label and use the higher timeframe styling to emphasize their increased significance.
Automatic Symbol Correlation
The indicator includes comprehensive automatic symbol selection based on the instrument you are viewing. When Auto SMT is enabled, the indicator intelligently selects correlated comparison symbols.
Index Futures Correlations:
E-mini Contracts:
NQ (Nasdaq 100) compares with ES (S&P 500) and YM (Dow Jones)
ES (S&P 500) compares with NQ (Nasdaq 100) and YM (Dow Jones)
YM (Dow Jones) compares with NQ (Nasdaq 100) and ES (S&P 500)
RTY (Russell 2000) compares with ES (S&P 500) and NQ (Nasdaq 100)
Micro Contracts:
MNQ (Micro Nasdaq) compares with MES (Micro S&P) and MYM (Micro Dow)
MES (Micro S&P) compares with MNQ (Micro Nasdaq) and MYM (Micro Dow)
MYM (Micro Dow) compares with MNQ (Micro Nasdaq) and MES (Micro S&P)
M2K (Micro Russell) compares with MES (Micro S&P) and MNQ (Micro Nasdaq)
Metals Futures Correlations:
Standard Contracts:
GC (Gold) compares with SI (Silver) and PL (Platinum)
SI (Silver) compares with GC (Gold) and PL (Platinum)
PL (Platinum) compares with GC (Gold) and SI (Silver)
Micro Contracts:
MGC (Micro Gold) compares with SIL (Micro Silver) and PL (Platinum)
SIL (Micro Silver) compares with MGC (Micro Gold) and PL (Platinum)
Energy Futures Correlations:
CL (Crude Oil) compares with RB (RBOB Gasoline) and NG (Natural Gas)
RB (RBOB Gasoline) compares with CL (Crude Oil) and NG (Natural Gas)
NG (Natural Gas) compares with CL (Crude Oil) and RB (RBOB Gasoline)
MCL (Micro Crude) compares with RB (RBOB Gasoline) and NG (Natural Gas)
Major ETF Correlations:
SPY (S&P 500 ETF) compares with QQQ, DIA, and IWM
QQQ (Nasdaq 100 ETF) compares with SPY, DIA, and IWM
DIA (Dow Jones ETF) compares with SPY, QQQ, and IWM
IWM (Russell 2000 ETF) compares with SPY, QQQ, and DIA
Stock Sector Mapping:
When viewing individual stocks, the indicator automatically identifies the stock's sector and selects appropriate sector ETFs for comparison:
Technology Sector (AAPL, MSFT, GOOGL, NVDA, AMD, INTC, etc.):
Primary: QQQ (Nasdaq 100 ETF)
Secondary: XLK (Technology Select Sector SPDR)
Tertiary: SPY (S&P 500 ETF)
Financial Sector (JPM, BAC, GS, MS, WFC, etc.):
Primary: XLF (Financial Select Sector SPDR)
Secondary: KBE (SPDR S&P Bank ETF)
Tertiary: SPY (S&P 500 ETF)
Energy Sector (XOM, CVX, COP, SLB, etc.):
Primary: XLE (Energy Select Sector SPDR)
Secondary: USO (United States Oil Fund)
Tertiary: SPY (S&P 500 ETF)
Healthcare Sector (JNJ, UNH, PFE, MRK, LLY, etc.):
Primary: XLV (Health Care Select Sector SPDR)
Secondary: IBB (iShares Biotechnology ETF)
Tertiary: SPY (S&P 500 ETF)
Consumer Discretionary Sector (TSLA, HD, NKE, MCD, etc.):
Primary: XLY (Consumer Discretionary Select Sector SPDR)
Secondary: SPY (S&P 500 ETF)
Tertiary: QQQ (Nasdaq 100 ETF)
Consumer Staples Sector (PG, KO, PEP, WMT, COST, etc.):
Primary: XLP (Consumer Staples Select Sector SPDR)
Secondary: SPY (S&P 500 ETF)
Tertiary: QQQ (Nasdaq 100 ETF)
Industrial Sector (CAT, BA, HON, UPS, etc.):
Primary: XLI (Industrial Select Sector SPDR)
Secondary: SPY (S&P 500 ETF)
Tertiary: QQQ (Nasdaq 100 ETF)
Materials Sector (LIN, APD, SHW, FCX, NEM, etc.):
Primary: XLB (Materials Select Sector SPDR)
Secondary: GLD (SPDR Gold Shares)
Tertiary: SPY (S&P 500 ETF)
Utilities Sector (NEE, DUK, SO, etc.):
Primary: XLU (Utilities Select Sector SPDR)
Secondary: SPY (S&P 500 ETF)
Tertiary: QQQ (Nasdaq 100 ETF)
Real Estate Sector (AMT, PLD, CCI, etc.):
Primary: XLRE (Real Estate Select Sector SPDR)
Secondary: VNQ (Vanguard Real Estate ETF)
Tertiary: SPY (S&P 500 ETF)
Communication Services Sector (NFLX, DIS, CMCSA, VZ, T, etc.):
Primary: XLC (Communication Services Select Sector SPDR)
Secondary: SPY (S&P 500 ETF)
Tertiary: QQQ (Nasdaq 100 ETF)
Forex Correlations:
EURUSD compares with GBPUSD
GBPUSD compares with EURUSD
Cryptocurrency Correlations:
BTCUSD compares with ETHUSD
ETHUSD compares with BTCUSD
Three-Symbol Comparison
The indicator supports comparison against up to three symbols simultaneously. When multiple comparison symbols show divergence at the same pivot point, all diverging symbols are displayed in the label, providing stronger confluence. For example, if NQ shows divergence with both ES and YM at the same swing high, the label will display "ES1! + YM1!" indicating divergence confirmation from multiple correlated instruments.
Invalidation Logic
SMT divergences are not indefinitely valid. The indicator includes automatic invalidation logic based on price action following the divergence signal.
Invalidation Rules:
Bearish SMT: Invalidates when price trades above the high of the confirmation pivot (right side of the divergence)
Bullish SMT: Invalidates when price trades below the low of the confirmation pivot (right side of the divergence)
The invalidation level is set at the confirmation bar (the second pivot that completes the SMT pattern), not the extreme of both pivots. This approach aligns with the concept that once price exceeds the confirmation point, the divergence setup is no longer valid.
Invalidation Display Options:
Users can choose to show or hide invalidated SMT signals separately for current timeframe and higher timeframe divergences. When shown, invalidated signals can be displayed with different line styles and widths to visually distinguish them from active signals. Separate limits prevent excessive invalidated signals from cluttering the chart (maximum 15 invalidated signals per timeframe type).
Input Settings
General Settings
Enable SMT Detection:
Master toggle to enable or disable all SMT divergence detection. When disabled, no SMT signals will be calculated or displayed.
Direction:
Filter which divergence types to display:
Both: Display both bullish and bearish SMT divergences
Bullish: Display only bullish SMT divergences (divergence at lows)
Bearish: Display only bearish SMT divergences (divergence at highs)
Symbol Settings
Enable Auto SMT:
When enabled, the indicator automatically selects correlated comparison symbols based on the chart instrument using the correlation mappings described above. When disabled, manual symbol inputs are used.
Symbol 1 (with enable toggle):
First comparison symbol. Enabled by default. When Auto SMT is disabled, enter the desired symbol manually.
Symbol 2 (with enable toggle):
Second comparison symbol. Enabled by default. When Auto SMT is disabled, enter the desired symbol manually.
Symbol 3 (with enable toggle):
Third comparison symbol. Disabled by default. Enable for additional confirmation from a third correlated instrument.
Current Timeframe SMT Settings
Show Current TF SMTs:
Toggle visibility of SMT divergences detected on the chart's current timeframe.
Bullish Color:
Color for bullish SMT divergence lines and labels on the current timeframe.
Bearish Color:
Color for bearish SMT divergence lines and labels on the current timeframe.
Line Style:
Style for current timeframe SMT lines (solid, dashed, or dotted).
Line Width:
Width of current timeframe SMT lines (1-4 pixels).
Show Labels:
Toggle visibility of labels on current timeframe SMT divergences.
Label Style:
Normal: Displays full information including timeframe and diverging symbol names
+/-: Displays minimal "+" or "-" characters with full information available in hover tooltip
Label Size:
Size of current timeframe SMT labels (Tiny, Small, Normal, or Large).
Show Invalidated:
Toggle visibility of invalidated current timeframe SMT signals.
Invalidated Line Style:
Line style for invalidated current timeframe SMT signals.
Invalidated Line Width:
Line width for invalidated current timeframe SMT signals.
Higher Timeframe SMT Settings
Show Higher TF SMTs:
Toggle visibility of SMT divergences detected on the higher timeframe.
Auto Timeframe:
When enabled, automatically selects an appropriate higher timeframe based on the chart's current timeframe. When disabled, uses the manually specified timeframe.
Manual Timeframe:
When Auto Timeframe is disabled, specify the higher timeframe to scan for SMT divergences.
Bullish Color:
Color for bullish SMT divergence lines and labels on the higher timeframe.
Bearish Color:
Color for bearish SMT divergence lines and labels on the higher timeframe.
Line Style:
Style for higher timeframe SMT lines (solid, dashed, or dotted).
Line Width:
Width of higher timeframe SMT lines (1-4 pixels).
Show Labels:
Toggle visibility of labels on higher timeframe SMT divergences.
Label Style:
Normal: Displays full information including timeframe and diverging symbol names
+/-: Displays minimal "+" or "-" characters with full information available in hover tooltip
Label Size:
Size of higher timeframe SMT labels (Tiny, Small, Normal, or Large).
Show Invalidated:
Toggle visibility of invalidated higher timeframe SMT signals.
Invalidated Line Style:
Line style for invalidated higher timeframe SMT signals.
Invalidated Line Width:
Line width for invalidated higher timeframe SMT signals.
Visual Representation
Line Display
SMT divergences are displayed as lines connecting the two pivot points that form the divergence:
For bearish SMT: A line connects the previous swing high to the current (higher) swing high
For bullish SMT: A line connects the previous swing low to the current (lower) swing low
The line color indicates the divergence type (bullish or bearish) and whether it was detected on the current timeframe or higher timeframe.
Label Display
Labels are positioned at the midpoint of the SMT line and display:
The timeframe on which the divergence was detected
The symbol(s) that showed divergence with the chart instrument
When using the "+/-" label style, labels show only "+" for bullish or "-" for bearish divergences, with full information accessible via hover tooltip.
All labels use monospace font formatting for consistent visual appearance.
Combined Signals
When the same divergence is detected on both current and higher timeframes, the signals are combined into a single display using higher timeframe styling. The label shows both timeframes (e.g., "M2 + M15") and all diverging symbols, indicating strong multi-timeframe confluence.
Practical Application Guidelines
Signal Interpretation
SMT divergences should be interpreted within the broader market context. Consider the following when evaluating signals:
Market Structure: SMT divergences occurring at key structural levels (previous highs/lows, order blocks, fair value gaps) tend to be more significant.
Timeframe Confluence: Signals appearing on multiple timeframes simultaneously suggest stronger institutional involvement.
Symbol Confluence: Divergences confirmed by multiple comparison symbols indicate broader market disagreement with the current price direction.
Time of Day: SMT divergences during high-volume trading sessions may carry more weight than those during low-liquidity periods.
Limitations and Considerations
Correlation Variability: Correlations between instruments can strengthen or weaken over time. The automatic symbol selection is based on typical correlations but may not always reflect current market conditions.
Pivot Detection Lag: Pivots are only confirmed after subsequent price action, meaning SMT signals appear with some delay after the actual swing point forms.
False Signals: Not all SMT divergences result in reversals. Use additional confirmation methods and proper risk management.
Data Requirements: The indicator requires sufficient historical data and may not function properly on instruments with limited price history.
Technical Notes
The indicator uses multiple pivot detection periods to identify swing points across different scales
Higher timeframe candle tracking is performed on the lower timeframe chart for precise pivot bar indexing
A deduplication system prevents the same divergence from being detected multiple times across different pivot periods
Array-based storage manages active and invalidated SMT signals with automatic cleanup to prevent memory issues
Maximum label and line counts are set to 500 each to accommodate extended analysis periods
Disclaimer
This indicator is provided for educational and informational purposes only. It is designed to assist traders in identifying potential SMT divergences based on historical price data and should not be considered as financial advice or a recommendation to buy or sell any financial instrument.
Trading financial markets involves substantial risk of loss and is not suitable for all investors. Past performance of any trading methodology, including concepts discussed in this indicator, does not guarantee future results. Users should conduct their own research and analysis before making any trading decisions.
The automatic symbol correlations and sector mappings are based on general market relationships and may not accurately reflect current or future correlations. Users are encouraged to verify correlations independently and adjust comparison symbols as needed.
Always use appropriate risk management techniques, including but not limited to position sizing and stop-loss orders. Never risk more capital than you can afford to lose.
Abyss Protocol OneAbyss Protocol One — Momentum Exhaustion Trading System
Overview
Abyss Protocol One is a momentum exhaustion indicator designed to identify high-probability reversal points by detecting when price momentum has reached extreme levels. It combines Chande Momentum Oscillator (CMO) threshold signals with dynamic volatility-adjusted bands and multiple protective filters to generate buy and sell signals.
Core Concept
The indicator operates on the principle that extreme momentum readings (CMO reaching ±80) often precede mean reversion. Rather than chasing trends, Abyss Protocol waits for momentum exhaustion before signaling entries and exits.
Key Components
1. Dynamic Bands (Money Line ± ATR)
Center line uses linear regression (Money Line) for smooth trend representation
Bands expand and contract based on Bollinger Band Width Percentile (BBWP)
Low volatility (BBWP < 30): Tighter bands using lower multiplier
High volatility (BBWP > 70): Wider bands using higher multiplier
Bands visually adapt to current market conditions
2. CMO Exhaustion Signals
BUY Signal: CMO drops below -80 (oversold/momentum exhaustion to downside)
SELL Signal: CMO rises above +80 (overbought/momentum exhaustion to upside)
Thresholds are configurable for different assets and timeframes
3. ADX Filter
Signals only fire when ADX exceeds minimum threshold (default: 22)
Ensures there's enough directional movement to trade
Prevents signals during choppy, directionless markets
4. Band Contraction Filter
Calculates band width percentile rank over configurable lookback
When bands are contracted (below 18th percentile), ALL signals are blocked
Prevents trading during low-volatility squeeze periods where breakout direction is uncertain
5. Consecutive Buy Limit
Maximum of 3 consecutive buys allowed before a sell is required
Prevents overexposure during extended downtrends
Counter resets when a sell signal fires
6. Underwater Protection
Tracks rolling average of recent entry prices (last 10 entries within 7 days)
Blocks sell signals if current price is below average entry price
Prevents locking in losses during drawdowns
7. Signal Cooldown
Minimum 5-bar cooldown between signals
Prevents rapid-fire signals during volatile swings
8. Extreme Move Detection
Detects when price penetrates beyond bands by more than 0.6 × ATR
Extreme signals can bypass normal cooldown period
Fire intra-bar for faster response to capitulation/blow-off moves
Still respects max consecutive buys and underwater protection
Visual Features
Trend State Detection
The indicator classifies market conditions into six states based on EMA stack, price position, and directional indicators:
STRONG UP: Full bullish alignment (EMA stack + price above trend + bullish DI + ADX > threshold)
UP: Moderate bullish conditions
NEUTRAL: No clear directional bias
DOWN: Moderate bearish conditions
STRONG DOWN: Full bearish alignment
CONTRACTED: Bands squeezed, volatility low
ADX Trend Bar
Colored dots at chart bottom provide instant trend state visibility:
Lime = Strong Uptrend
Blue = Uptrend
Orange = Neutral
Red = Downtrend
Maroon = Strong Downtrend
White = Contracted
Volume Spike Highlighting
Purple background highlights candles where volume exceeds 2x the 20-bar average, helping identify institutional activity or significant market events.
Signal Labels
Buy labels show consecutive buy count (e.g., "BUY 2/3"), price, and CMO value
Sell labels show consecutive sell count, price, and CMO value
Extreme signals display in distinct colors (cyan for buys, fuchsia for sells)
Signal candles turn bright blue for easy identification
Info Panel
Real-time dashboard displaying:
Current trend state
CMO value with threshold status
CMO thresholds (buy/sell levels)
ADX with directional indicator (▲/▼) and signal eligibility
BBWP percentage
Buy/Sell counters
Average entry price (with underwater shield indicator 🛡 when protected)
Price position relative to Money Line
Band width percentile rank
Extreme move status
Signals status (OPEN/BLOCKED)
Recommended Use
Timeframe: 5-15 minute charts (parameters tuned for this range)
Best suited for: Assets with regular oscillations between overbought/oversold extremes
Trading style: Mean reversion, momentum exhaustion, scaled entries
Parameters Summary
Money Line Length: 12 — Smoothing for center line
ATR Length: 10 — Volatility measurement
Band Multiplier (Low/High Vol): 1.5 / 2.5 — Dynamic band width
CMO Length: 9 — Momentum calculation period
CMO Buy/Sell Threshold: -80 / +80 — Signal trigger levels
ADX Min for Signals: 22 — Minimum trend strength
Signal Cooldown: 5 bars — Minimum bars between signals
Max Consecutive Buys: 3 — Position scaling limit
Band Contraction Threshold: 18th %ile — Low volatility filter
Band Contraction Lookback: 188 bars — Percentile calculation period
Extreme Penetration: 0.6 × ATR — Threshold for extreme signals
Smart Money Liquidity Structure AlgoSmart Money Liquidity Structure Algo is a rule-based trading strategy designed to analyze market structure, liquidity zones, and volatility conditions.
The script combines structure breakout logic, volatility filtering, order-block style price gaps, and Supertrend direction to generate systematic long and short signals.
This strategy is intended for educational and research purposes, helping traders study how liquidity, structure, and trend alignment can be combined into a single framework.
All signals are generated objectively using predefined conditions without repainting after bar close.
The strategy includes built-in risk management logic using ATR-based stop-loss and trailing exit mechanisms.
⚙️ Core Logic Overview
Market structure based on pivot-derived support and resistance
Volatility normalization filter to avoid low-activity periods
Price gap detection inspired by order-block concepts
Supertrend-based directional confirmation
Time-based holding logic before exits are allowed
✨ Features
Rule-based long and short entries
Liquidity & structure breakout detection
Volatility-filtered signal generation
Optional Supertrend trend filter
ATR-based stop-loss and trailing exits
Non-repainting logic after candle close
🧪 How to Use
Apply on liquid markets such as crypto, indices, or forex
Works best on intraday to higher timeframes
Adjust volatility filter and ATR multiplier based on the instrument
Always forward-test and paper-trade before live use
⚠️ Disclaimer
This script is not financial advice.
Trading involves risk, and past performance does not guarantee future results.
Use this strategy for analysis, testing, and educational purposes only.
ORB Strategy + Backtesting (fixed timestamp) - Lines Adjusted⚡ ORB Strategy + Backtesting (Pine Script v5)
This script implements a complete Opening Range Breakout (ORB) strategy, featuring built-in backtesting, advanced TP/SL visualization, full style customization, and a performance dashboard. It is designed for traders who want to clearly evaluate breakout performance directly on the chart.
🕑 ORB Window Configuration
🔹 Session selection: choose between Market Timezone or Custom Session.
🔹 Timezone support: configurable from UTC-8 to UTC+12.
🔹 Daily limit: option to allow only one trade per day.
🔹 Risk/Reward (RR) settings:
Configurable TP1, TP2, and TP3 levels.
Stop Loss calculated dynamically from the ORB range.
📊 Backtesting Engine
🔹 Interactive dashboard showing trades, wins, losses, and win rate.
🔹 Adjustable partial exits for each TP (TP1, TP2, TP3).
🔹 Automatic calculation of percentage-based profit and loss.
🔹 Tracks total trades, total profit, and average profit per trade.
🎨 Visual Customization
🔹 Fully customizable colors:
ORB high/low lines and range fill.
Buy/Sell entry labels.
TP and SL lines with background zones.
🔹 Line style and thickness options (solid, dotted, dashed).
🔹 Visibility controls for each TP/SL level.
🔹 Clear profit and loss zones drawn directly on the chart.
🚀 Trading Logic
🔹 LONG entries: triggered when price breaks above the ORB high.
🔹 SHORT entries: triggered when price breaks below the ORB low.
🔹 Automatic calculation of Stop Loss and TP1, TP2, TP3 based on ORB range and RR.
🔹 Customizable BUY / SELL labels displayed at entry.
✅ TP / SL Detection
🔹 Real-time detection of TP1, TP2, TP3, and SL hits.
🔹 Prevents double counting of the same level.
🔹 Extended TP/SL lines with shaded zones for better clarity.
📈 Backtesting Dashboard
🔹 Displayed in the top-right corner of the chart.
🔹 Shows:
Total trades
Wins / Losses
Win rate (%)
Total profit (%)
Average profit per trade
🔹 Fully customizable panel color.
✨ Summary
This script combines:
Opening Range detection
Breakout trading logic with advanced risk management
Professional-grade visualizations
Integrated historical performance tracking
High customization for sessions, styles, and colors
💡 Ideal for traders who want to trade ORB setups with clarity, structure, and measurable results.
O.R.B. New York (Opening Range)- Creates open range at New York Open (9:30am - 9:45am)
- Only shows most recent opening range for New York session (prevents clutter)
- Asset Classes: Micro Gold, Micro Silver, Micro ES, Micro NQ.
Unsurpassed Close LevelsThis indicator identifies and visually highlights previous candle close prices that have not yet been surpassed by any subsequent higher high — creating dynamic horizontal resistance levels based purely on closing prices.
How it works:
For every confirmed candle, a dashed horizontal ray is drawn from its close price extending to the right.
The ray remains visible as long as no future candle's high reaches or exceeds that previous close level.
As soon as price makes a new high that touches or surpasses the level, the ray is automatically removed.
Duplicate levels (exact same close price already active) are skipped to keep the chart clean.
A built-in limit of 50 active levels prevents overload on very long timeframes.
Use cases:
Spot potential resistance zones formed by previous closes that price has failed to reclaim on the upside.
Helpful in downtrends or ranging markets to visualize "overhead supply" levels where sellers previously stepped in at the close.
Great complement to traditional swing highs or supply/demand zones — focuses exclusively on close-based resistance.
Works on any timeframe and any instrument.
Visuals:
Dashed red horizontal rays extending right from unsurpassed closes.
Clean and lightweight — lines disappear automatically when invalidated.
Simple, effective, and fully automatic. No inputs required.
Feel free to customize the color, style, or max levels count in the code if desired.






















