FVG Heatmap [Hash Capital Research]FVG Map
FVG Map is a visual Fair Value Gap (FVG) mapping tool built to make displacement imbalances easy to see and manage in real time. It detects 3-candle FVG zones, plots them as clean heatmap boxes, tracks partial mitigation (how much of the zone has been filled), and summarizes recent “fill speed” behavior in a small regime dashboard.
This is an indicator (not a strategy). It does not place trades and it does not publish performance claims. It is a market-structure visualization tool intended to support discretionary or systematic workflows.
What this script detects
Bullish FVG (gap below price)
A bullish FVG is detected when the candle from two bars ago has a high below the current candle’s low.
The zone spans from that prior high up to the current low.
Bearish FVG (gap above price)
A bearish FVG is detected when the candle from two bars ago has a low above the current candle’s high.
The zone spans from the current high up to that prior low.
What makes it useful
Heatmap zones (clean, readable FVG boxes)
Bullish zones plot below price. Bearish zones plot above price.
Partial fill tracking (mitigation progress)
As price trades back into a zone, the script visually shows how much of the zone has been filled.
Mitigation modes (your definition of “filled”)
• Full Fill: price fully trades through the zone
• 50% Fill: price reaches the midpoint of the zone
• First Touch: price touches the zone one time
Optional auto-cleanup
Optionally remove zones once they’re mitigated to keep the chart clean.
Fill-Speed Regime Dashboard
When zones get mitigated, the script records how many bars it took to fill and summarizes the recent environment:
• Average fill time
• Median fill time
• % fast fills vs % slow fills
• Regime label: choppy/mean-revert, trending/displacement, or mixed
How to use
Use FVG zones as structure, not guaranteed signals.
• Bullish zones are often watched as potential support on pullbacks.
• Bearish zones are often watched as potential resistance on rallies.
The fill-speed dashboard helps provide context: fast fills tend to appear in more rotational conditions, while slow fills tend to appear in stronger trend/displacement conditions.
Alerts
Bullish FVG Created
Bearish FVG Created
Notes
FVGs are not guaranteed reversal points. Fill-speed/regime is descriptive of recent behavior and should be treated as context, not prediction. On realtime candles, visuals may update as the bar forms.
Liquidity
Unmitigated MTF High Low Pro - Cave Diving Bookmap Heatmap Plot
Unmitigated MTF High Low Pro - Cave Diving Bookmap Heatmap Plot
---
## 📖 Table of Contents
1. (#what-this-indicator-does)
2. (#core-concepts)
3. (#visual-components)
4. (#the-cave-diving-framework)
5. (#how-to-use-it-for-trading)
6. (#settings--customization)
7. (#best-practices)
8. (#common-scenarios)
---
## What This Indicator Does
The **Unmitigated MTF High Low v2.0** tracks unmitigated (untouch) high and low levels across multiple timeframes, helping you identify key support and resistance zones that the market hasn't revisited yet. Think of it as a sophisticated memory system for price action - it remembers where price has been, and more importantly, where it *hasn't been back to*.
### Why "Unmitigated" Matters
In futures trading, especially on instruments like NQ and ES, the market has a tendency to revisit levels where liquidity was left behind. An "unmitigated" level is one that hasn't been touched since it was formed. These levels often act as magnets for price, and understanding their age and proximity gives you a significant edge in:
- **Entry timing** - Waiting for price to approach tested levels
- **Exit planning** - Taking profits before ancient resistance/support
- **Risk management** - Avoiding entries when approaching multiple old levels
- **Liquidity mapping** - Visualizing where orders likely cluster
---
## Core Concepts
### 1. **Sessions & Age**
The indicator uses **New York trading sessions** (6:00 PM to 5:59 PM NY time) as the primary time measurement. This aligns with how futures markets naturally segment their activity.
**Age Categories:**
- 🟢 **New (0-1 sessions)** - Fresh levels, recently formed
- 🟡 **Medium (2-3 sessions)** - Tested by time, gaining significance
- 🔴 **Old (4-6 sessions)** - Highly significant, survived multiple days
- 🟣 **Ancient (7+ sessions)** - Extreme significance, major support/resistance
The longer a level remains unmitigated, the more significant it becomes. Think of it like compound interest - time adds weight to these zones.
### 2. **Multi-Timeframe Tracking**
You can set the indicator to track high/low levels from any timeframe (default is 15 minutes). This means you're watching for unmitigated 15-minute highs and lows while trading on, say, a 1-minute or 5-minute chart.
**Why this matters:**
- Higher timeframe levels have more weight
- You can see multiple timeframe structure simultaneously
- Helps you avoid fighting larger timeframe momentum
### 3. **Mitigation**
A level becomes "mitigated" (deactivated) when price touches it:
- **High levels** are mitigated when price reaches or exceeds them
- **Low levels** are mitigated when price reaches or goes below them
Once mitigated, the level disappears from view. The indicator only shows you the untouch levels that still matter.
---
## Visual Components
### 📊 The Dashboard Table
Located in the corner of your chart (configurable), the table shows:
```
┌─────────┬───────────┬────────┬─────┬───────┐
│ Level │ Price │ Points │ Age │ % │
├─────────┼───────────┼────────┼─────┼───────┤
│ ↑↑↑↑↑ │ 21,450.25 │ +45.50 │ 8 │ +0.21%│ ← 5th High (Ancient)
│ ↑↑↑↑ │ 21,430.00 │ +25.25 │ 5 │ +0.12%│ ← 4th High (Old)
│ ↑↑↑ │ 21,420.50 │ +15.75 │ 3 │ +0.07%│ ← 3rd High (Medium)
│ ↑↑ │ 21,412.00 │ +7.25 │ 1 │ +0.03%│ ← 2nd High (New)
│ ↑ ⚠️ │ 21,408.25 │ +3.50 │ 0 │ +0.02%│ ← 1st High (Proximity Alert!)
├─────────┼───────────┼────────┼─────┼───────┤
│ 15 mins │ 🟢 │ Δ 8.75 │ 2U │ │ ← Status Row
├─────────┼───────────┼────────┼─────┼───────┤
│ ↓ ⚠️ │ 21,399.50 │ -5.25 │ 0 │ -0.02%│ ← 1st Low (Proximity Alert!)
│ ↓↓ │ 21,395.00 │ -9.75 │ 2 │ -0.05%│ ← 2nd Low (Medium)
│ ↓↓↓ │ 21,385.25 │ -19.50 │ 4 │ -0.09%│ ← 3rd Low (Old)
│ ↓↓↓↓ │ 21,370.00 │ -34.75 │ 6 │ -0.16%│ ← 4th Low (Old)
│ ↓↓↓↓↓ │ 21,350.75 │ -54.00 │ 9 │ -0.25%│ ← 5th Low (Ancient)
├─────────┼───────────┼────────┼─────┼───────┤
│ 📊 15↑ / 12↓ │ ← Statistics (optional)
└─────────┴───────────┴────────┴─────┴───────┘
```
**Reading the Table:**
- **Level Column**: Number of arrows indicates position (1-5), color shows age
- **Price**: The actual price level
- **Points**: Distance from current price (+ for highs, - for lows)
- **Age**: Number of full sessions since creation
- **%**: Percentage distance from current price
- **⚠️**: Proximity alert - price is within threshold distance
- **Status Row**: Shows timeframe, direction (🟢 bullish/🔴 bearish), tunnel width (Δ), and Strat pattern
### 📈 Visual Elements on Chart
**1. Level Lines**
- Horizontal lines showing each unmitigated level
- **Color-coded by age**: Bright colors = new, darker = older, deep purple/teal = ancient
- **Line style**: Customizable (solid, dashed, dotted)
- Automatically turn **yellow** when price gets close (proximity alert)
**2. Price Labels**
- Show the exact price and age: "21,450.25 (8d)"
- Fixed at small size for clean readability
- Positioned with configurable offset from current bar
**3. Bands (Optional)**
- Shaded zones between pairs of unmitigated levels
- Default: Between 1st and 2nd levels (the "tunnel")
- Can switch to 1st-3rd, 2nd-3rd, or disable entirely
- **Upper band** (pink/maroon) - Between unmitigated highs
- **Lower band** (blue/teal) - Between unmitigated lows
- These represent the "no man's land" or consolidation zones
---
## The Cave Diving Framework
This indicator is designed around the **Cave Diving Trading Framework** - a psychological and technical approach that maps cave diving safety protocols to futures trading risk management.
### 🤿 The Core Metaphor
**Cave diving has clear danger zones based on depth and overhead environment. Your trading should too.**
#### Shallow Water (New Levels, 0-1 Sessions)
- **Light**: Bright colors (bright red highs, bright green lows)
- **Psychology**: Fresh territory, recently tested
- **Trading**: Be aware but not overly concerned
- **Cave Diving Parallel**: You can see the surface, easy exit
#### Penetration Depth (Medium Levels, 2-3 Sessions)
- **Light**: Medium intensity colors
- **Psychology**: Building significance, market memory forming
- **Trading**: Start respecting these levels for entries/exits
- **Cave Diving Parallel**: Deeper in, need to track your line back
#### Deep Dive Zone (Old Levels, 4-6 Sessions)
- **Light**: Dark colors (deep maroon, dark blue)
- **Psychology**: Highly tested support/resistance
- **Trading**: Major decision points, plan accordingly
- **Cave Diving Parallel**: Significant overhead, careful navigation required
#### Overhead Environment (Ancient Levels, 7+ Sessions)
- **Light**: Very dark, purple/deep teal
- **Psychology**: Extreme caution required, major liquidity zones
- **Trading**: These are your "turn back" signals - don't fight ancient levels
- **Cave Diving Parallel**: Maximum danger, no room for error
### 🎯 The Proximity Alert System
Just like a cave diver's depth gauge that warns at critical thresholds, the proximity alerts (⚠️) tell you when you're entering a danger zone. When price gets within your configured threshold (default 5 points), the indicator:
- Highlights the level in **yellow** on the chart
- Shows **⚠️** in the table
- Signals: "You're entering a high-significance zone - adjust your position accordingly"
This prevents the trading equivalent of going deeper into a cave without checking your air supply.
---
## How to Use It for Trading
### 🎯 Entry Strategies
**1. The "Bounce Setup" (Mean Reversion)**
- Wait for price to approach an old or ancient unmitigated level
- Look for confluence: multiple levels nearby, bands narrowing
- Enter when price shows rejection (reversal candle patterns)
- **Example**: Price drops to a 6-session-old low, shows bullish engulfing → Long entry
**2. The "Break and Retest" (Trend Following)**
- Wait for price to break through an unmitigated level (mitigates it)
- Enter on the retest of the newly broken level
- **Example**: Price breaks above 4-session-old high → Wait for pullback to that level → Long entry
**3. The "Tunnel Trade" (Range Trading)**
- When bands are active, trade the range between 1st-2nd levels
- Short near upper band resistance, long near lower band support
- Exit at opposite side or when bands break
### 🚨 Risk Management Rules
**The Ancient Level Rule**
> Never fight ancient levels (7+ sessions). If you're long and approaching an ancient high, take profits. If you're short and approaching an ancient low, take profits.
These levels have survived a full trading week without being touched - there's likely significant liquidity and institutional interest there.
**The Proximity Exit Rule**
> When you see ⚠️ proximity alerts on multiple levels above/below your position, tighten stops or scale out.
This is your "overhead environment" warning. You're in dangerous territory.
**The New Level Filter**
> Be cautious taking positions based solely on new levels (0-1 sessions). Wait for them to age or combine with other confluence.
Fresh levels haven't been tested by time. They're like unconfirmed support/resistance.
### 📊 Reading Market Structure
**Bullish Structure (🟢 in status row)**
- Unmitigated lows are aging and holding
- Price respecting the lower band
- Old lows below acting as strong support
- **Bias**: Look for long entries at lower levels
**Bearish Structure (🔴 in status row)**
- Unmitigated highs are aging and holding
- Price respecting the upper band
- Old highs above acting as strong resistance
- **Bias**: Look for short entries at higher levels
**The Tunnel Compression**
- When the Δ (delta) in the status row is small, levels are tight
- This often precedes a breakout
- **Trading**: Wait for breakout direction, then trade the break
### 🔄 Strat Integration
The indicator shows Strat patterns in the status row:
- **1** - Inside bar (consolidation)
- **2U** - Broke high only (bullish)
- **2D** - Broke low only (bearish)
- **3** - Broke both (wide range, volatility)
Use these with the unmitigated levels:
- **2U near old high** → Potential resistance, watch for rejection
- **2D near old low** → Potential support, watch for bounce
- **3 pattern** → High volatility, respect wider stops
---
## Settings & Customization
### 📅 Session & Timeframe Settings
**HL Interval** (Default: 15 minutes)
- The timeframe for high/low calculation
- **Lower (1m, 5m)**: More levels, more noise, good for scalping
- **Higher (30m, 1H, 4H)**: Fewer levels, stronger significance, good for swing trading
- **Recommendation for NQ/ES**: 15m or 30m for day trading, 1H for swing trading
**Session Age Threshold** (Default: 2)
- How many sessions before a level is considered "old"
- Lower = more levels classified as old
- Higher = stricter definition of significance
### 📊 Level Display Options
**Show Level Lines**
- Toggle: Display horizontal lines for each level
- **Turn off** if you prefer a cleaner chart and only want the table
**Show Level Labels**
- Toggle: Display price labels on the chart
- **Turn off** for minimal visual clutter
**Label Offset**
- Distance (in bars) from current price bar to place labels
- Increase if labels overlap with price action
**Level Line Width & Style**
- Customize visual appearance
- **Thin solid**: Minimal distraction
- **Thick dashed**: High visibility
### 🎨 Age-Based Color Coding
Customize colors for each age category (high and low separately):
- **New (0-1 sessions)**: Default bright red/green
- **Medium (2-3 sessions)**: Default medium intensity
- **Old (4+ sessions)**: Default dark red/blue
- **Ancient (7+ sessions)**: Default deep purple/teal
**Color Strategy Tips:**
- Keep ancient levels in highly contrasting colors
- Use opacity (transparency) if you want subtler lines
- Match your chart's color scheme for aesthetic coherence
### 🎯 Band Settings
**Band Mode**
- **1st-2nd** (Default): The primary "tunnel" between most recent levels
- **1st-3rd**: Wider band, more room for price action
- **2nd-3rd**: Band between less immediate levels
- **Disabled**: No bands, lines only
**Band Colors & Borders**
- Customize fill color and border separately
- **Tip**: Keep bands very transparent (90-95% transparency) to avoid obscuring price action
### ⚠️ Proximity Alert Settings
**Enable Proximity Alerts**
- Toggle: Turn on/off the warning system
- When enabled, levels within threshold distance show ⚠️ and turn yellow
**Alert Threshold** (Default: 5.0 points)
- Distance in points to trigger the alert
- **For NQ**: 5-10 points is reasonable
- **For ES**: 2-5 points is reasonable
- **For MES/MNQ**: Scale down proportionally
**Alert Highlight Color**
- The color lines/labels turn when proximity is triggered
- Default: Yellow (high visibility)
### 📋 Table Settings
**Show Table**
- Toggle: Display the dashboard table
**Table Location**
- Top Left, Top Right, Bottom Left, Bottom Right
- Choose based on your chart layout and other indicators
**Text Size**
- Tiny, Small, Normal, Large
- **Recommendation**: Normal for 1080p monitors, Small for 4K
**Show % Distance**
- Toggle: Add percentage distance column to table
- Useful for comparing relative distances across different price ranges
**Show Statistics Row**
- Toggle: Show total count of unmitigated highs/lows
- Format: "📊 15↑ / 12↓" (15 unmitigated highs, 12 unmitigated lows)
- Useful for gauging overall market structure
### ⚡ Performance Settings
**Enable Level Cleanup**
- Automatically remove very old levels to maintain performance
- **Keep on** unless you want unlimited history
**Max Lookback Levels** (Default: 10,000)
- Maximum number of levels to track
- 10,000 ≈ 6+ months of 15-minute bars
- **Increase** if you want more history
- **Decrease** if experiencing performance issues
**Max Boxes Per Band** (Default: 245)
- TradingView limit is 500 total boxes
- With 2 bands, 245 each = 490 total (safe maximum)
---
## Best Practices
### 🎯 Position Management
**1. Scaling In Near Old Levels**
```
Price approaching 5-session-old low:
- First position: 30% size at proximity alert (⚠️)
- Second position: 40% size at exact level
- Third position: 30% size if it shows strong rejection
```
**2. Scaling Out Near Ancient Levels**
```
Holding long position, approaching 8-session-old high:
- Exit 50% at proximity alert (⚠️)
- Exit 30% at exact level
- Trail stop on remaining 20%
```
### 🧠 Trading Psychology Integration
Drawing from principles in *The Mountain Is You*, this indicator helps you:
**1. Recognize Self-Sabotage Patterns**
- **The Premature Entry**: Entering before price reaches your planned level
- **Solution**: Set alerts at unmitigated levels, wait for proximity warnings
- **The Profit-Taking Problem**: Exiting too early from fear
- **Solution**: Identify the next unmitigated level and commit to holding until proximity alert
- **The Loss Holding**: Refusing to exit losing trades
- **Solution**: When price breaks through and mitigates your entry level, it's telling you the structure changed
**2. Building Better Habits**
The color-coded age system trains your brain to:
- Respect levels that have proven themselves over time
- Distinguish between noise (new levels) and structure (old levels)
- Make decisions based on objective data, not fear or greed
**3. Emotional Regulation**
The proximity alerts serve as:
- **Circuit breakers** - Forcing you to re-evaluate before dangerous zones
- **Permission to act** - Giving you objective signals to exit without second-guessing
- **Validation** - Confirming when you're in alignment with market structure
### 📝 Pre-Market Routine
**Daily Setup Checklist:**
1. ✅ Identify the 3 nearest unmitigated highs above current price
2. ✅ Identify the 3 nearest unmitigated lows below current price
3. ✅ Note which are ancient (7+) - these are your "no-go" zones
4. ✅ Check the tunnel width (Δ in status row) - tight or wide?
5. ✅ Set alerts at the 1st high and 1st low for proximity warnings
6. ✅ Plan: "If we go up, I exit at ___. If we go down, I enter at ___."
### 🔄 Timeframe Confluence
**Multi-Timeframe Strategy:**
Run the indicator on **three instances**:
- **15-minute** (short-term structure)
- **1-hour** (intermediate structure)
- **4-hour** (major structure)
**Strong Setup**: When all three timeframes show unmitigated levels converging at the same price zone.
**Example:**
- 15m: Old low at 21,400
- 1H: Ancient low at 21,398
- 4H: Ancient low at 21,395
- **Result**: 21,395-21,400 is a monster support zone
### ⚠️ What This Indicator Doesn't Do
**Not a Crystal Ball**
- It doesn't predict where price will go
- It shows you where price *hasn't been* and how long it's been avoided
- The trading decisions are still yours
**Not an Entry Signal Generator**
- It provides context and structure
- You need to combine it with your entry methodology (price action, indicators, order flow, etc.)
**Not Foolproof**
- Ancient levels get broken
- Proximity alerts can trigger early in strong trends
- The market doesn't "owe" you a reversal at any level
---
## Common Scenarios
### Scenario 1: "Level Cluster Ahead"
**Situation**: You're long at 21,400. The table shows:
- 1st High: 21,425 (2 sessions old)
- 2nd High: 21,428 (3 sessions old)
- 3rd High: 21,435 (6 sessions old)
**Interpretation**: There's a resistance cluster just 25-35 points away. The 6-session-old level is particularly significant.
**Action**:
- Set first profit target at 21,420 (before the cluster)
- Set second target at 21,426 (between 1st and 2nd)
- Trail remaining position, but be ready to exit on rejection at 21,435
**Cave Diving Analogy**: You're approaching an overhead section with limited clearance. Lighten your load (reduce position) before entering.
---
### Scenario 2: "Ancient Level Approaches"
**Situation**: The market is grinding higher. You see ⚠️ appear next to a 9-session-old high at 21,500.
**Interpretation**: This level has survived over a week without being touched. Massive potential liquidity zone.
**Action**:
- If long, this is your absolute exit zone. Take profits before or at level.
- If looking to short, wait for clear rejection (price taps and reverses)
- Don't try to buy the breakout until it clearly breaks and retests
**Cave Diving Analogy**: Your dive computer is beeping - you've reached your planned turn-back depth. No matter how interesting it looks ahead, honor your plan.
---
### Scenario 3: "Mitigated Levels Create New Structure"
**Situation**: Price breaks and mitigates the 1st High. The previous 2nd High becomes the new 1st High.
**Interpretation**: The structure just shifted. What was the 2nd level is now most relevant.
**Action**:
- Watch how price reacts to the newly-mitigated level
- If it holds below (acts as resistance), bearish
- If it reclaims and holds above (acts as support), bullish
- The NEW 1st High is your next target/resistance
**Cave Diving Analogy**: You've passed through a restriction - the cave layout ahead is different now. Update your mental map.
---
### Scenario 4: "Tight Tunnel, Upcoming Breakout"
**Situation**: The Δ in the status row shows 3.25 points (very tight). Bands are converging.
**Interpretation**: Price is consolidating between very close unmitigated levels. Breakout likely.
**Action**:
- Don't try to predict direction
- Set alerts above 1st High and below 1st Low
- When break occurs, trade the retest
- Expect volatility - use wider stops
**Cave Diving Analogy**: You're in a narrow passage. Movement will be sudden and directional once it starts.
---
### Scenario 5: "Imbalanced Structure"
**Situation**: The statistics row shows "📊 22↑ / 7↓"
**Interpretation**: There are many more unmitigated highs than lows. This suggests:
- Price has been declining (hitting lows, leaving highs behind)
- Potential bullish reversal zone (lots of overhead supply mitigated)
- Or continued bearish structure (resistance everywhere above)
**Action**:
- Look at the age of those 22 highs
- If mostly new (0-2 sessions): Just a recent downmove, not significant yet
- If many old/ancient: Strong overhead resistance, be cautious on longs
- Compare to price action: Is price respecting the remaining lows?
**Cave Diving Analogy**: You've swam deeper than your starting point - most of your markers are above you now. Are you planning the ascent or going deeper?
---
## Final Thoughts: The Philosophy
This indicator is built on a simple but powerful principle: **The market has memory, and that memory has weight.**
Every unmitigated level represents:
- Liquidity left behind
- Orders waiting to be filled
- Institutional interest potentially parked
- Psychological significance for participants
The longer a level remains unmitigated, the more "charged" it becomes. When price finally revisits it, something significant usually happens - either a strong reversal or a definitive break.
Your job as a trader isn't to predict which outcome will occur. Your job is to:
1. **Recognize** when you're approaching these charged zones
2. **Respect** them by adjusting position size and risk
3. **React** appropriately based on how price behaves at them
4. **Remember** that ancient levels (like ancient wisdom) deserve extra reverence
The Cave Diving Framework embedded in this indicator serves as a constant reminder: Trading, like cave diving, requires rigorous respect for environmental hazards, meticulous planning, and the discipline to turn back when your limits are reached.
**Every proximity alert is the market asking you**: *"Do you really want to go deeper?"*
Sometimes the answer is yes - when your setup, confluence, and risk management all align.
Often, the answer should be no - and that's the trader avoiding the accident that would have happened to the gambler.
---
### 🎯 Quick Reference Card
**Color System:**
- 🟢 Bright colors = New (0-1 sessions) = Shallow water
- 🟡 Medium colors = Medium (2-3 sessions) = Penetration depth
- 🔴 Dark colors = Old (4-6 sessions) = Deep dive zone
- 🟣 Deep dark colors = Ancient (7+ sessions) = Overhead environment
**Symbols:**
- ↑ ↑↑ ↑↑↑ ↑↑↑↑ ↑↑↑↑↑ = High levels (1st through 5th)
- ↓ ↓↓ ↓↓↓ ↓↓↓↓ ↓↓↓↓↓ = Low levels (1st through 5th)
- ⚠️ = Proximity alert (danger zone)
- 🟢 = Bullish structure
- 🔴 = Bearish structure
- Δ = Tunnel width (distance between 1st high and 1st low)
**Critical Rules:**
1. Never fight ancient levels (7+ sessions)
2. Respect proximity alerts (⚠️)
3. Scale out near old/ancient resistance
4. Wait for confluence when entering
5. Let mitigated levels prove their new role
---
**Remember**: The indicator gives you structure. The trading edge comes from your discipline in respecting that structure.
Trade safe, trade smart, and always know your exit before your entry. 🎯
---
*"You don't become your best self by denying your patterns. You become your best self by recognizing them, understanding them, and choosing differently." - Adapted from The Mountain Is You*
In trading: You don't become profitable by ignoring market structure. You become profitable by recognizing it, understanding it, and choosing your entries accordingly.
Unmitigated Cave Diving MTF High Low - BookMap Style Chart
Unmitigated Cave Diving MTF High Low - BookMap Style Chart
Introduction
This Pine Script indicator tracks unmitigated higher timeframe highs and lows with a session-aware approach, inspired by KinetiCapital's X D HL Targets.
Built for precision trading on instruments like NQ during extended trading hours (ETH), it visualizes support and resistance levels that have not yet been breached, helping traders identify key price zones for potential reversals or breakouts.
Core Features
The indicator monitors multi-timeframe levels (default 15-minute) and applies intelligent styling based on recency and survival duration:
Most Recent Levels: The 1st and 2nd most recent unmitigated highs and lows are highlighted with distinct colors and widths for quick visual identification
Session Age Tracking: Levels are categorized by how many full trading sessions (1800-1700 NQ ETH) they've survived unmitigated, with "old" levels receiving special highlighting once they exceed your defined threshold
BookMap-Style Visualization: Clean horizontal lines with optional price labels positioned above highs and below lows for minimal chart clutter
Real-Time Summary Table: Displays the four most recent levels with their prices, distance in points from current price, and session age
Mitigation Logic
Levels automatically update when price touches them - high levels are mitigated when price reaches or exceeds them, while low levels are mitigated when price touches or breaks below. Mitigated levels change to a neutral gray color and can optionally be deleted at session end to preserve chart memory.
This tool is particularly valuable for intraday traders who trade around key structural levels and need to understand which unmitigated zones represent the freshest or most significant price memory in the market.
Amihud Illiquidity Ratio [MarkitTick]💡This indicator implements the Amihud Illiquidity Ratio, a financial metric designed to measure the price impact of trading volume. It assesses the relationship between absolute price returns and the volume required to generate that return, providing traders with insight into the "stress" levels of the market liquidity.
Concept and Originality
Standard volume indicators often look at volume in isolation. This script differentiates itself by contextualizing volume against price movement. It answers the question: "How much did the price move per unit of volume?" Furthermore, unlike static indicators, this implementation utilizes dynamic percentile zones (Linear Interpolation) to adapt to the changing volatility profile of the specific asset you are viewing.
Methodology
The calculation proceeds in three distinct steps:
1. Daily Return: The script calculates the absolute percentage change of the closing price relative to the previous close.
2. Raw Ratio: The absolute return is divided by the volume. I have introduced a standard scaling factor (1,000,000) to the calculation. This resolves the issue of the values being astronomically small (displayed as roughly 0) without altering the fundamental logic of the Amihud ratio (Absolute Return / Volume).
- High Ratio: Indicates that price is moving significantly on low volume (Illiquid/Thin Order Book).
- Low Ratio: Indicates that price requires massive volume to move (Liquid/Deep Order Book).
3. Dynamic Regimes: The script calculates the 75th and 25th percentiles of the ratio over a lookback period. This creates adaptive bands that define "High Stress" and "Liquid" zones relative to recent history.
How to Use
Traders can use this tool to identify market fragility:
- High Stress Zone (Red Background): When the indicator crosses above the 75th percentile, the market is in a High Illiquidity Regime. Price is slipping easily. This is often observed during panic selling or volatile tops where the order book is thin.
- Liquid Zone (Green Background): When the indicator drops below the 25th percentile, the market is in a Liquid Regime. The market is absorbing volume well, which is often characteristic of stable trends or accumulation phases.
- Dashboard: A visual table on the chart displays the current Amihud Ratio and the active Market Regime (High Stress, Normal, or Liquid).
Inputs
- Calculation Period: The lookback length for the average illiquidity (Default: 20).
- Smoothing Period: The length of the additional moving average to smooth out noise (Default: 5).
- Show Quant Dashboard: Toggles the visibility of the on-screen information table.
● How to read this chart
• Spike in Illiquidity (Red Zones)
Price is moving on "thin air." Expect high volatility or potential reversals.
• Low Illiquidity (Green/Stable Zones)
The market is deep and liquid. Trends here are more sustainable and reliable.
• Divergence
Watch for price making new highs while liquidity is drying up—a classic sign of an exhausted trend.
Example:
● Chart Overview
The chart displays the Amihud Illiquidity indicator applied to a Gold (XAUUSD) 4-hour timeframe.
Top Pane: Price action with manual text annotations highlighting market reversals relative to liquidity zones.
Bottom Pane: The specific technical indicator defined in the logic. It features a Blue Line (Raw Illiquidity), a Red Line (Signal/Smoothed), and dynamic background coloring (Red and Green vertical strips).
● Deep Visual Analysis
• High Stress Regime (Red Zones)
Visual Event: In the bottom pane, the background periodically shifts to a translucent red.
Technical Logic: This event is triggered when the amihudAvg (the smoothed illiquidity ratio) exceeds the 75th percentile ( hZone ) of the lookback period.
Forensic Interpretation: The logic calculates the absolute price change relative to volume. A spike into the red zone indicates that price is moving significantly on relatively lower volume (high price impact). Visually, the chart shows these red zones aligning with local price peaks (volatility expansion), leading to the bearish reversal marked by the red box in the top pane.
• Liquid Regime (Green Zones)
Visual Event: The background shifts to a translucent green in the bottom pane.
Technical Logic: This triggers when the amihudAvg falls below the 25th percentile ( lZone ).
Forensic Interpretation: This state represents a period where large volumes are absorbed with minimal price impact (efficiency). On the chart, this green zone corresponds to the consolidation trough (green box, top pane), validating the annotated accumulation phase before the bullish breakout.
• Indicator Lines
Blue Line: This is the illiquidityRaw value. It represents the raw daily return divided by volume.
Red Line: This is the smoothedVal , a Simple Moving Average (SMA) of the raw data, used to filter out noise and define the trend of liquidity stress.
● Anomalies & Critical Data
• The Reversal Pivot
The transition from the "High Stress" (Red) background to the "Liquid" (Green) background serves as a visual proxy for market regime change. The chart shows that as the Red zones dissipate (volatility contraction), the market enters a Green zone (efficient liquidity), which acted as the precursor to the sustained upward trend on the right side of the chart.
● About Yakov Amihud
Yakov Amihud is a leading researcher in market liquidity and asset pricing.
• Brief Background
Professor of Finance, affiliated with New York University (NYU).
Specializes in market microstructure, liquidity, and quantitative finance.
His work has had a major impact on both academic research and practical investment models.
● The Amihud (2002) Paper
In 2002, he published his influential paper: “Illiquidity and Stock Returns: Cross-Section and Time-Series Effects” .
• Key Contributions
Introduced the Amihud Illiquidity Measure, a simple yet powerful proxy for market liquidity.
Demonstrated that less liquid stocks tend to earn higher expected returns as compensation for liquidity risk.
The measure became one of the most widely used liquidity metrics in finance research.
● Why It Matters in Practice
Used in quantitative trading models.
Applied in portfolio construction and risk management.
Helpful as a liquidity filter to avoid assets with excessive price impact.
In short: Yakov Amihud established a practical and robust link between liquidity and returns, making his 2002 work a cornerstone in modern financial economics.
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.
Effort-Result Divergence [Interakktive]The Effort-Result Divergence (ERD) measures whether volume effort is producing proportional price result. It quantifies the classic Wyckoff principle: when price moves easily, momentum is real; when price struggles despite heavy volume, absorption is occurring.
Think of ERD as "energy efficiency" for price movement — green means price is gliding, red means price is grinding.
█ WHAT IT DOES
• Measures volume EFFORT relative to average volume
• Measures price RESULT relative to ATR-normalized movement
• Computes ERD = Result minus Effort (each scaled 0-100)
• Flags statistical divergences via Z-score analysis
• Absorption events: high effort, low result (negative ERD)
• Vacuum events: low effort, high result (positive ERD)
█ WHAT IT DOES NOT DO
• NO buy/sell signals
• NO entry/exit recommendations
• NO alerts (v1 is educational only)
• NO performance claims or guarantees
This is a context tool for understanding market participation quality.
█ HOW IT WORKS
The ERD analyzes two dimensions of market activity and compares them.
EFFORT (Volume Intensity)
Compares current volume to a moving average baseline:
Effort Ratio = Volume ÷ SMA(Volume, Length)
Effort Score = clamp(100 × Effort Ratio ÷ Effort Cap)
High effort means above-average volume participation.
Low effort means below-average volume participation.
RESULT (Price Efficiency)
Measures how much price moved relative to expected volatility:
Result Ratio = |Close − Previous Close| ÷ ATR
Result Score = clamp(100 × Result Ratio ÷ Result Cap)
High result means price moved significantly for the volatility regime.
Low result means price barely moved despite market activity.
ERD SCORE
ERD = Result − Effort
• Positive ERD: Result exceeds effort → price moved easily (vacuum/thin liquidity)
• Negative ERD: Effort exceeds result → price struggled (absorption/accumulation)
• Near zero: Balanced effort-to-result relationship
STATISTICAL DIVERGENCE DETECTION
Z-score analysis identifies statistically significant extremes:
Z = (ERD − Mean) ÷ StdDev
• Absorption Event: Z ≤ −threshold (extreme negative ERD)
• Vacuum Event: Z ≥ +threshold (extreme positive ERD)
█ INTERPRETATION
GREEN BARS (Positive ERD)
Price moved with relatively little volume effort. This suggests:
• Thin liquidity / low resistance
• Strong directional interest
• Momentum is "real" — not forced
RED BARS (Negative ERD)
Heavy volume was used but price barely moved. This suggests:
• Absorption / accumulation occurring
• Large players opposing the move
• Inefficiency — someone is working hard for little result
THE KEY INSIGHT
When you see:
• Down moves = high effort (red spikes)
• Up moves = low effort (green bars)
This means: It's easier for price to go up than down.
That is asymmetric strength — classic bullish pressure.
The reverse (red on up moves, green on down moves) signals bearish pressure.
PRACTICAL RULES
Without any other indicators:
• Avoid shorting when ERD is mostly green and red spikes appear only on down candles
• Be cautious buying when ERD turns red on up candles (signals absorption of buying pressure)
• Vacuum events (extreme green) often precede continuation or pause — not violent reversal
• Absorption events (extreme red) often precede reversals or range formation
█ VOLUME DATA NOTE
This indicator uses the volume variable which represents:
• Exchange volume on stocks and futures
• Tick volume on Forex and CFD instruments
Tick volume is a proxy for activity, not actual exchange volume. The indicator remains useful on Forex as relative volume comparisons are still meaningful, but interpretation should account for this limitation.
█ INPUTS
Core Settings
• Volume Average Length: Baseline period for effort calculation (default: 20)
• ATR Length: Volatility normalization period (default: 14)
• Effort Cap: Volume ratio that maps to 100% effort (default: 3.0)
• Result Cap: ATR multiple that maps to 100% result (default: 1.0)
Divergence Detection
• Z-Score Lookback: Statistical analysis window (default: 100)
• Z-Score Threshold: Standard deviations for event flags (default: 2.0)
Visual Settings
• Show ERD Histogram: Toggle main display
• Show Zero Line: Toggle reference line
• Show Divergence Markers: Toggle event circles
• Show Effort/Result Lines: Display component breakdown
█ ORIGINALITY
While Wyckoff's effort-versus-result principle is well-established, existing implementations are typically:
• Purely visual with no quantification
• Pattern-based requiring subjective interpretation
• Not statistically normalized for comparison across instruments
ERD is original because it:
1. Normalizes both effort and result to 0-100 scales for direct comparison
2. Uses ATR for result normalization (adapts to volatility regime)
3. Applies statistical Z-score for objective divergence detection
4. Provides quantified output suitable for systematic analysis
█ DATA WINDOW EXPORTS
When enabled, the following values are exported:
• Effort (0-100)
• Result (0-100)
• ERD Score
• Z-Score
• Absorption Event (1/0)
• Vacuum Event (1/0)
█ SUITABLE MARKETS
Works on: Stocks, Futures, Forex, Crypto
Best on: Instruments with reliable volume data (stocks, futures, crypto)
Timeframes: All timeframes — interpretation adapts accordingly
█ RELATED
• Market Efficiency Ratio — measures price path efficiency
• Wyckoff Volume Spread Analysis — conceptual foundation
█ DISCLAIMER
This indicator is for educational purposes only. It does not constitute financial advice. Past performance does not guarantee future results. Always conduct your own analysis before making trading decisions.
Liquidity Sweep Guardian (Universal % or point based)
Liquidity Sweep Guardian - Complete User Guide
## Overview
The **Liquidity Sweep Guardian** is a visual warning system designed to prevent premature counter-trend trades (fades) near Previous Day High (PDH) and Previous Day Low (PDL) levels. This indicator helps you avoid one of the most common trading mistakes: fading too early before liquidity sweeps complete.
---
## 🎯 Core Trading Principle
### **THE GOLDEN RULE: Don't Fade Until It's Unlocked**
Price often **accelerates into key levels** to sweep liquidity before reversing. Trading against this momentum is extremely dangerous.
**The Process:**
1. **Danger Zone** (Red/White Box) = ⚠️ **DO NOT FADE** - Sweep likely incoming
2. **Sweep Occurs** (Triangle marker appears) = Price penetrates the level
3. **Reclaim Happens** (Price returns above/below level) = Level is tested
4. **🔓 UNLOCKED** (Gold border, green label) = **NOW you may CONSIDER a fade**
> **Important:** "UNLOCKED" means you may now *consider* a fade setup. It is NOT a trade signal itself. You still need your entry confirmation, risk management, and trade plan.
---
## 📊 Visual Elements Explained
### 1. **Danger Zone Boxes (Red Border by Default)**
**Two types of zones around PDH/PDL:**
- **Outer Danger Zone** (White fill): ±75pts (or 0.30%) around the level
- Indicates proximity to a key level where sweeps commonly occur
- Yellow/cautious trading zone
- **Inner Critical Zone** (Black fill): ±25pts (or 0.10%) around the level
- Highest probability area for liquidity sweep traps
- Avoid fading here at all costs
**What to do:**
- When price enters these zones, **wait and watch**
- Do not initiate counter-trend positions
- Allow the sweep to play out
### 2. **Unlocked Zones (Gold Border #ffeb3b)**
When a zone turns **gold/yellow** with green fill:
- The level has been swept AND reclaimed
- The liquidity grab is complete
- You may now look for fade opportunities with proper confirmation
### 3. **PDH/PDL Lines**
- **PDH Line** (Red): Previous Day High with price label
- **PDL Line** (Green): Previous Day Low with price label
- These are your key reference levels for the session
### 4. **Sweep Labels**
**Triangle Markers (SWEEP):**
- **Green Triangle** = Clean sweep (10-25pts penetration)
- **Orange Triangle** = Extended sweep (25-50pts penetration)
- **Red Triangle** = Deep penetration (50+ pts) - likely continuation, not reversal
**Warning Labels:**
- **⚠️ DEEP CONTINUATION?** = Penetration too deep, probably NOT a reversal setup
**Unlock Labels:**
- **🔓 LONG UNLOCKED** = PDL swept and reclaimed, may consider long fades
- **🔓 SHORT UNLOCKED** = PDH swept and reclaimed, may consider short fades
---
## ⚙️ Settings Guide
### **Calculation Mode**
**Use Percentage Mode (Default: ON)**
- ✅ **Enabled**: Universal mode - works on NQ, ES, RTY, stocks, crypto, forex
- ❌ **Disabled**: Fixed points mode - for specific instruments only
**When to use each:**
- **Percentage Mode**: Trading multiple instruments, or instruments with varying price levels
- **Fixed Points Mode**: Single instrument focus (e.g., only trading NQ at current levels)
### **Danger Zone Settings**
**Percentage Mode (Default for Universal Use):**
- **Danger Zone**: 0.30% each side (≈75pts on NQ@25,000)
- **Critical Zone**: 0.10% each side (≈25pts on NQ@25,000)
**Fixed Points Mode (For NQ Specifically):**
- **Danger Zone**: 75 points each side
- **Critical Zone**: 25 points each side
**Adjustment Tips:**
- For more volatile instruments: Increase percentages/points
- For less volatile instruments: Decrease percentages/points
- For higher timeframes: Use wider zones
- For lower timeframes: Use tighter zones
### **Sweep Classification**
**What defines a "real" sweep:**
- **Minimum**: 10pts / 0.04% - Shallow penetration may not grab enough liquidity
- **Optimal**: 10-25pts / 0.04-0.10% - "Goldilocks zone" for reversal setups
- **Extended**: 25-50pts / 0.10-0.20% - Deeper sweep, less reliable
- **Continuation**: 50+pts / 0.20%+ - Too deep, likely NOT reversing
**Max Bars for Reclaim**: 5 bars (default)
- Price should reclaim the level relatively quickly
- If it takes too long, the sweep may have failed
### **Visual Customization**
**Box Settings:**
- **Left Extension**: 60 bars (how far back the box extends)
- **Right Extension**: 50 bars (how far forward the box extends)
**Toggle Options:**
- Show/Hide Danger Zone Boxes
- Show/Hide PDH/PDL Lines
- Show/Hide Price Labels on lines
- Show/Hide Sweep Labels
- Show/Hide Unlock Labels
### **Color Customization**
All colors are fully customizable:
- Danger Zone Fill & Border
- Critical Zone Fill & Border
- Unlocked Zone Fill & Border
- PDH/PDL Line Colors
- PDH/PDL Label Colors
- Border Widths (1-5 pixels)
- Line Widths (1-5 pixels)
---
## 🎓 Trading Strategy Examples
### **Example 1: Long Setup at PDL**
1. **Morning**: Price approaches PDL (danger zone appears)
2. **Don't Fade Yet**: Price enters critical zone - resist urge to buy
3. **Sweep**: Price drops 15pts below PDL (green triangle appears)
4. **Reclaim**: Price closes back above PDL within 3 bars
5. **🔓 UNLOCKED**: Gold border + "LONG UNLOCKED" label appears
6. **Trade Setup**: Now look for bullish confirmation (order flow, structure, etc.)
### **Example 2: Avoiding a Trap at PDH**
1. **Afternoon**: Price rallies into PDH danger zone
2. **Temptation**: You want to short here (it "looks toppy")
3. **Sweep**: Price breaks 50pts above PDH (red triangle + ⚠️ warning)
4. **Continuation**: Deep penetration suggests continuation, not reversal
5. **Result**: No unlock occurs, price keeps running higher - trap avoided!
### **Example 3: Failed Unlock (No Trade)**
1. Price sweeps PDL by 12pts (green triangle)
2. Price struggles to reclaim PDL, stays below for 10+ bars
3. No "UNLOCKED" label appears
4. **Correct Action**: Do not fade - sweep failed to reclaim
---
## 📱 Alerts
The indicator includes built-in alerts for:
- **Entering Danger Zones**: Get warned when price approaches PDH/PDL
- **Sweep Detection**: Know immediately when a level is swept
- **Unlock Signals**: Get notified when fade setups become available
- **Continuation Warnings**: Alert when penetration suggests continuation
**To Set Alerts:**
1. Right-click indicator → "Add Alert"
2. Select desired alert condition
3. Configure notification preferences
---
## ⚠️ Important Disclaimers
### **What This Indicator IS:**
✅ A visual warning system to prevent premature fades
✅ A tool to identify when liquidity sweeps have completed
✅ A framework for counter-trend trade timing
### **What This Indicator IS NOT:**
❌ A complete trading system
❌ An entry signal generator
❌ A guarantee of trade success
❌ A substitute for proper risk management
### **Always Remember:**
- "UNLOCKED" = You may CONSIDER a fade (not a signal to trade)
- You still need your own entry confirmation
- You still need proper stop placement
- You still need position sizing and risk management
- Not every unlock leads to a successful trade
- Market context and order flow still matter
---
## 🔧 Recommended Settings by Instrument
### **NQ (Nasdaq-100 E-mini Futures)**
- Mode: Percentage or Fixed Points
- Percentage: 0.30% / 0.10% (default)
- Fixed Points: 75pts / 25pts (default)
### **ES (S&P 500 E-mini Futures)**
- Mode: Percentage
- Danger: 0.25% / Critical: 0.08%
- Or Fixed Points: 15pts / 5pts
### **RTY (Russell 2000 E-mini Futures)**
- Mode: Percentage
- Danger: 0.35% / Critical: 0.12%
- Or Fixed Points: 8pts / 3pts
### **Stocks (High Volume Large Caps)**
- Mode: Percentage (recommended)
- Danger: 0.20-0.40% / Critical: 0.08-0.15%
- Adjust based on ATR and volatility
### **Crypto (BTC, ETH)**
- Mode: Percentage (essential)
- Danger: 0.40-0.60% / Critical: 0.15-0.20%
- Higher volatility requires wider zones
---
## 💡 Pro Tips
1. **Use on Higher Timeframes**: Works best on 5min, 15min, 1hr charts
2. **Combine with Order Flow**: Use with footprint/delta for confirmation
3. **Watch Volume**: Strong volume on sweep = better reversal potential
4. **Consider Time of Day**: Sweeps during RTH often more reliable
5. **Multiple Timeframes**: Check if higher TF also shows unlock
6. **Don't Force Trades**: Not every session produces clean setups
7. **Journal Results**: Track which unlock types work best for you
8. **Respect Continuation Signals**: When indicator says "too deep," listen
---
## 🆘 Troubleshooting
**Q: Box isn't showing up**
A: Check that "Show Danger Zone Boxes" is enabled in Visual Settings
**Q: No price on labels**
A: Enable "Show Price Labels on Lines" in Visual Settings
**Q: Zones seem too tight/wide**
A: Adjust Danger Zone % or points based on current volatility
**Q: Getting too many/too few unlocks**
A: Adjust sweep classification thresholds (min/max penetration)
**Q: Want thicker/thinner lines**
A: Adjust line widths in "PDH/PDL Line Colors" section
**Q: Colors not matching my chart theme**
A: Fully customize all colors in the color settings groups
---
## 📚 Additional Resources
- Study price action around PDH/PDL on your instruments
- Learn about liquidity sweeps and stop hunts
- Understand market structure and order flow
- Practice identifying setups on replay/historical data
- Keep a trading journal of unlock scenarios
---
*Remember: The best trade is often the one you don't take. This indicator helps you avoid the trades you shouldn't take, so you can focus on the ones you should.*
Cave Diving 3 Lines System
🤿 Cave Diving Dashboard - A Deep Dive into Market Structure
## The Cave Diving Analogy
Imagine you're a cave diver exploring underwater caverns. As you descend deeper, you encounter different layers of the cave system:
- **The Surface (Internal Levels)** - Where you currently are, constantly shifting with each breath
- **The First Chamber (De Novo Levels)** - Your last known safe position, recently established
- **Deep Caverns (External Levels)** - Ancient, untouched chambers deeper in the system
Just as a cave diver must constantly monitor their position relative to these reference points, traders must track price action against key structural levels.
---
## 🎯 Understanding the Three-Tiered System
### 📍 **INTERNAL LEVELS** (Current 15m Candle)
*Your real-time position in the market*
**Internal High** 🟡 - The highest point reached in the current unfinished 15-minute candle
**Internal Low** 🟢 - The lowest point reached in the current unfinished 15-minute candle
**Think of these as:**
- Your current depth while actively diving
- They update continuously as price moves
- Status shows "Updating" when actively changing, "Intact" when stable
- These are NOT trade levels—they're awareness zones
**Key Insight:** When Internal Low drops below De Novo Low, you're in **Situation A** (bearish pressure building)—the indicator highlights this with red coloring.
---
### 🎯 **DE NOVO LEVELS** (Previous Closed 15m Candle)
*Your most recent confirmed safe zone*
**De Novo High** 🔵 - The high of the last completed 15-minute candle
**De Novo Low** 🟣 - The low of the last completed 15-minute candle
**Etymology:** "De Novo" = Latin for "from new" or "anew"—these are freshly established reference points
**Think of these as:**
- The last solid ground you stood on
- Your most recent confirmed position
- The bridge between where you are (Internal) and where you've been (External)
**Status Tracking:**
- **⬆️ Upgrade** - Level moved favorably (Higher high for resistance, Higher low for support)
- **⬇️ Downgrade** - Level moved unfavorably (Lower high, Lower low)
- **= Same** - No structural change from previous candle
**Trading Significance:**
- Primary reference points for intraday structure
- Breaking De Novo levels often signals directional commitment
- Can merge with External Level 1 when they align (shown as "DN🟰Ext1")
---
### ⛽🤿 **EXTERNAL LEVELS** (Unmitigated Historical 15m Levels)
*Deep liquidity pools waiting to be discovered*
**External High 1 & 2** 🟢🔵 - The two most recent unmitigated 15m highs
**External Low 1 & 2** 🟠🌸 - The two most recent unmitigated 15m lows
**Think of these as:**
- Untouched chambers in the cave system
- Liquidity pools that smart money is targeting
- Levels that "remember" and attract price
**What Makes a Level "Unmitigated"?**
- **Highs**: Price has NOT yet traded through them (broken above)
- **Lows**: Price has NOT yet swept them (broken below)
- Once touched, they're "mitigated" and removed from tracking
- The indicator automatically maintains the two most recent unmitigated levels
**Why "External"?**
They exist outside your current candle structure—historical reference points that institutions use for:
- Stop loss placement
- Profit taking targets
- Liquidity hunting zones
---
## 🎨 Color Coding System
### HIGHS (Resistance/Targets) - Cool Colors
- 🔵 **Ext High 2** - Light Blue (Distant target)
- 🟢 **Ext High 1** - Lime Green (Primary target)
- 🔵 **De Novo High** - Cyan (Recent resistance)
- 🟡 **Internal High** - Lemon Yellow (Current ceiling)
### LOWS (Support/Stops) - Warm Colors
- 🟢 **Internal Low** - Lime (Current floor)
- 🟣 **De Novo Low** - Purple (Recent support)
- 🟠 **Ext Low 1** - Orange-Red (Primary stop zone)
- 🌸 **Ext Low 2** - Pink (Distant support)
---
## 📊 Dashboard Breakdown
### The Table Shows:
1. **Level** - Which level you're tracking
2. **Price** - Exact price of the level
3. **Pts** - Distance from current price (+ above, - below)
4. **Status** - Current state or role of the level
### Special Features:
- **⏰ Countdown Timer** - Shows time remaining until next 15m candle close (next De Novo update)
- **⚠️ Proximity Alerts** - Bottom row warns when within threshold distance of key levels (default: 25 points, adjustable)
---
## 🎯 Trading Applications
### **For Buyers (Going Long):**
- **Entry Zone**: Between De Novo Low and Ext Low 1
- **Stops**: Below Ext Low 1 (or Ext Low 2 for wider stops)
- **Targets**: De Novo High → Ext High 1 → Ext High 2
- **Confirmation**: Internal Low holds above De Novo Low
### **For Sellers (Going Short):**
- **Entry Zone**: Between De Novo High and Ext High 1
- **Stops**: Above Ext High 1 (or Ext High 2 for wider stops)
- **Targets**: De Novo Low → Ext Low 1 → Ext Low 2
- **Warning**: Watch for Situation A (Internal Low < De Novo Low)
### **Risk Management:**
- **DN🟰Ext1** status means De Novo = External 1 (tighter range, use caution)
- Proximity alerts help you avoid chasing price into resistance/support
- "Updating" status on Internal levels = active volatility
- "Upgrade/Downgrade" signals = structural shift in progress
---
## ⚙️ Customization Options
### Lookback Period
- Default: 500 candles (searches 125 hours of 15m data)
- Increase for more historical External levels
- Decrease for focus on recent structure
### Proximity Threshold
- Default: 25 points
- Set based on your instrument's average range
- Lower = tighter alerts (for scalping)
- Higher = strategic warnings (for swing trading)
### Visual Customization
- Line thickness (1-5)
- Line style (Solid/Dashed/Dotted)
- All colors fully customizable
- Show/hide lines independently
---
## 🧭 The Cave Diving Mindset
**Never dive deeper than you can safely return from.**
In trading terms:
- Know your Internal position (real-time awareness)
- Respect your De Novo levels (recent structure)
- Hunt for External liquidity (where the targets are)
- Always have an exit plan (stops below Ext Lows, above Ext Highs)
The market, like a cave, has structure. This indicator illuminates that structure across three timeframes of reference, helping you navigate with precision rather than guessing in the dark.
---
## 🎓 Key Takeaways
1. **Internal** = Real-time, unfinished, awareness only
2. **De Novo** = Just confirmed, primary reference, updates every 15m
3. **External** = Historical, unmitigated, high-probability targets/stops
4. **Upgrades/Downgrades** = Trend signals
5. **DN🟰Ext1** = Structural alignment (tighter range)
6. **Situation A** = Bearish warning (Internal < De Novo Low)
---
## 📝 Credits
*"In cave diving, you plan your dive and dive your plan. In trading, you plan your levels and trade your levels."*
**Indicator:** Cave Diving Dashboard - Part 1: Price Levels
**Timeframe:** Optimized for 15-minute structure on any chart timeframe
**Philosophy:** Structure first, price second. Know where you are, where you've been, and where the liquidity waits.
---
Happy Diving! 🤿📈
Liquidity Levels Pro Tool - thewallranka
Liquidity Levels Pro Tool is a market-structure and liquidity-mapping indicator designed to help discretionary futures and index traders identify statistically relevant price levels where reactions, continuations, or liquidity sweeps are more likely to occur.
This script is a decision-support tool, not a signal generator. It does not issue buy/sell alerts or predict future price movement. Instead, it organizes and scores liquidity information so traders can make their own contextual decisions.
What this indicator does
The script continuously detects and maintains liquidity zones derived from price pivots, then evaluates those zones using multiple structural and contextual factors:
Repeated price interaction (touches)
Freshness (time since last interaction)
Confluence with key reference levels
Reaction behavior after contact
Session relevance (RTH vs overnight)
Market regime (trend vs mean reversion)
Time-of-day effects (open, midday, power hour)
Only the most relevant zones—based on a dynamic scoring system—are displayed to reduce chart clutter and focus attention on levels that have historically mattered.
Core components
1. Liquidity Zones
Zones are built from pivot highs and lows and expanded into areas using a configurable tick-based padding. Nearby zones are merged to avoid redundancy.
Each zone is continuously evaluated and assigned a score (0–100) reflecting its relative importance.
2. Zone Scoring (No Lookahead)
Zone scores are based on:
Number of confirmed interactions
Recency of the last touch
Confluence with prior day/week levels, VWAP, and Opening Range
Reaction quality after touches (speed and follow-through)
Session alignment (zones that “work” in the current session are favored)
Penalties after liquidity sweeps
Zones are not forward-looking and do not rely on future data.
3. Context Engine
The script classifies the current environment using VWAP slope and distance:
Trend (up or down)
Mean reversion
Mixed/transition
Time-of-day context (Open, Midday, Power Hour) is also tracked internally and influences zone scoring.
This context is displayed in the HUD to support situational awareness, not automated decisions.
4. Liquidity Sweeps
Optional sweep detection highlights situations where price trades beyond a zone and closes back inside, indicating potential stop runs or failed breakouts.
Sweeps are rate-limited and applied conservatively to avoid visual noise.
5. Trade Planning Levels (Optional)
When enabled, the script highlights the nearest high-quality liquidity level above and below price based on score thresholds.
These are intended as reference targets, not trade entries or exits.
HUD (Heads-Up Display)
The on-chart HUD summarizes:
Key reference levels (prior day/week, Opening Range)
Nearest strong liquidity above/below price
Market regime and time-of-day context
Distance to levels (ticks or points)
The HUD is fully optional, positionable, and includes resizable modes (Small / Medium / Large) to fit different chart layouts.
How to use this tool
This indicator is best used as part of a discretionary trading process, for example:
Identifying areas where price is more likely to react or pause
Framing trades around higher-quality structure instead of arbitrary levels
Filtering setups based on session and regime context
Managing expectations near known liquidity rather than chasing price
It is intentionally designed not to provide trade signals.
Limitations and important notes
This script does not predict outcomes or guarantee reactions
High-scoring zones can still fail
Liquidity behavior is context-dependent and probabilistic
No performance claims or backtested results are provided
The indicator should not be used in isolation
Past behavior does not imply future results.
Chart and usage notes
The script is intended for standard time-based charts
Recommended for liquid futures and index products
Use a clean chart for clarity when publishing or sharing
No external indicators are required
Final note
Liquidity Levels Pro (Tool) — v6 is designed to organize complex market structure into a clear, readable framework, allowing traders to focus on execution and risk management rather than raw level detection.
This script reflects an analytical approach to intraday liquidity and structure, not an automated trading system.
Raeinex Momentum Liquidity IndexEntry arrow signals with volumetric momentum (buying and selling pressure) and the possibility to use all entry signals as liquidity area for price retest.
RMI Valid FVG & IFVGRMI • Valid FVG & iFVG (Smart Money Concept)
RMI • Valid FVG & iFVG is a precision-focused Fair Value Gap indicator designed for traders who follow Smart Money Concepts (SMC) / ICT logic and want to filter out low-quality, random gaps.
This indicator does not plot every FVG.
It highlights only structurally relevant FVGs that form in the direction of the trend and have a high probability of being filled.
Core Features
Bullish & Bearish Fair Value Gaps
Inverse Fair Value Gaps (iFVG)
Trend-aligned FVG filtering
Automatic invalidation after mitigation
Clean background zones for clear visibility
Optimized for intraday trading
Adjustable settings for scalping, intraday & swing trading
Smart Filtering Logic
FVGs are validated using market structure context
Only FVGs that form within the active trend are displayed
Weak or low-probability gaps are ignored
Inverse FVGs appear after strong displacement and rejection
Zones are visually faded once mitigated
This helps reduce chart noise and keeps the focus on high-probability reaction zones.
Best Use Cases
Entry refinement after BOS / CHoCH
Confluence with liquidity grabs
Premium / discount zone trading
Intraday & session-based trading
Works well with ICT, SMC, price action & structure-based strategies
Recommended Timeframes
Scalping: M1 – M5
Intraday (default): M5 – M15
Swing Trading: M15 – H1
(Default settings are optimized for intraday trading.)
Important Notes
This is not a signal indicator
No repainting
No buy/sell arrows
Designed as a decision-support tool, not an automated system
Always combine with proper risk management and confirmation.
RMI • Precision over noise.
Trade structure, not randomness.
Absorption BubblesSUMMARY
This indicator visualizes absorption events by plotting bubbles on candle wicks where volume activity suggests one side of the market is absorbing the other’s pressure. Instead of raw volume, the script normalizes activity against a rolling standard deviation defined by the Lookback Period. Bubbles appear on upper or lower wicks depending on whether buyers or sellers are absorbing pressure. The goal is to highlight whether aggressive orders are being accepted or absorbed at key price points.
METHODOLOGY
Absorption occurs when one side of the market absorbs aggressive orders from the other, preventing continuation. The script measures normalized volume against a user‑defined threshold to filter out weaker signals.
Green bubbles on upper wicks → Selling absorption (buyers push price up, sellers absorb the buying).
Red bubbles on lower wicks → Buying absorption (sellers push price down, buyers absorb the selling).
Red‑colored bars highlight candles where large volume is concentrated inside the body, signifying aggressive selling activity.
Green‑colored bars highlight candles where large volume is concentrated inside the body, signifying aggressive buying activity.
The Lookback Period controls how many bars are used to calculate the rolling standard deviation of volume, letting traders adjust sensitivity to recent vs. longer‑term activity. Optional significant volume lines extend forward, marking areas where absorption was strongest.
FUNCTIONS
Normalized volume detection using rolling standard deviation
Adjustable Lookback Period for volume normalization
Dynamic bubble plotting on candle wicks (size scales with absorption strength)
Separate visualization for buying vs. selling absorption
Alerts for buying absorption, selling absorption, or any absorption event (only at bar close)
Bar coloring when large absorption occurs inside candle bodies
APPLICATION
Setup: Add the script to any chart and timeframe. Adjust the Absorption Threshold to filter out weaker bubbles and the Lookback Period to control how volume normalization is calculated. Red bubbles highlight buying absorption, often signalling potential price pivots - price can often go upwards from this. Green bubbles mark selling absorption, reflecting resistance to upward moves - price may go downwards from this.
Interpretation:
Green bubbles on upper wicks = sellers absorbing buying pressure.
Red bubbles on lower wicks = buyers absorbing selling pressure.
Larger bubbles = stronger absorption relative to recent volume.
Settings & Use:
Raising the Absorption Threshold filters out smaller bubbles, leaving only significant absorption events.
Changing the Lookback Period alters how “normal” volume is defined — shorter periods make the script more sensitive, longer periods smooth out noise.
Alerts can be set for buying absorption, selling absorption, or any absorption event, and they only trigger at bar close to avoid noise.
3SPC Three Candle Price Action Setup3SPC (Three Candle Price Action Setup) is an open-source indicator designed to detect
a simple and clearly defined three-candle price action pattern.
The logic is based on the following structure:
• The first two candles move in the same direction (bullish or bearish).
• The third candle interacts with the real bodies of both previous candles,
which may indicate a short-term liquidity sweep or price reaction.
• A bullish setup is confirmed when price holds above the open of the first candle.
• A bearish setup is confirmed when price holds below the open of the first candle.
This script does not use oscillators or lagging indicators.
It is intended as a visual aid for discretionary traders and should be used
together with market context, risk management and higher timeframe analysis.
The script is published as open-source for educational and transparency purposes.
UI Labels Translation:
- نمایش ستاپ صعودی: Show bullish setups
- نمایش ستاپ نزولی: Show bearish setups
Liquidity Buy SignalLiquidity Buy Signal is an indicator designed to detect BUY entries based on liquidity (swing lows) combined with a bullish reversal candle pattern. It automatically marks recent swing-low zones/levels, tracks the transition from solid → dashed when a level gets broken, and then confirms a signal when price sweeps/cuts the correct level and a bullish candle pattern appears.
OANDA:EURUSD
BUY signal (green triangle) triggers when:
A bullish reversal candle pattern (based on a set of rules) is detected, and
The Liquidity chain conditions are satisfied using the most recent swing lows:
Price crosses the level with the lower wick, or
The level is within the lower 30% range of the previous candle (n-1), and
The level does not pass through the bodies of older candles (filtered by lookback).
Key settings:
Pivot Lookback: controls swing-low detection sensitivity.
Swing Area: Wick Extremity / Full Range for zone definition.
Filter lookback older bodies: filters out levels that intersect older candle bodies (skips n-2).
Style: toggle Swing Low display + zone/line colors.
Alerts:
Includes a built-in alertcondition for BUY signals (useful for notifications/webhooks).
This indicator is especially well-suited for identifying potential bottoms in a downtrend.
Note: This tool provides trading signals and should be combined with context (trend/HTF/volume/risk management) before entering trades. Not financial advice.
FOMC Sweep Reaction AP Capital – FOMC Sweep Reaction v1.0
AP Capital – FOMC Sweep Reaction v1.0 is a news-reaction and liquidity-based trading tool designed specifically to track and trade FOMC volatility on Gold (XAUUSD) and other highly reactive instruments.
The indicator focuses on liquidity sweeps, structure breaks, and EMA reclaims that commonly occur around Federal Reserve interest-rate decisions and Powell speeches, helping traders identify high-probability reversal or continuation moves after the initial spike.
🔍 What This Indicator Detects
This tool highlights the most repeatable FOMC behaviours observed across multiple months of broker data:
• Sweeps of previous day’s high or low
• Stop-hunt wicks into liquidity pools
• EMA13 reclaim after the news spike
• Break and close beyond short-term structure
• Momentum shift following volatility exhaustion
The goal is not to predict the news, but to react to confirmed price behaviour after liquidity has been taken.
📌 Core Features
• FOMC Sweep Detection
Identifies aggressive wicks into prior highs/lows during news volatility
• EMA Reclaim Confirmation
Uses EMA13 to validate momentum shift after the sweep
• Market Structure Awareness
Filters reactions that fail to break structure to avoid false reversals
• Session-Aligned Logic
Designed around London → NY → FOMC release timing
• Clean Visuals
Minimal chart clutter for fast decision-making during volatile conditions
🧠 How to Use
Wait for FOMC release / Powell speech
Allow price to sweep previous liquidity (PDH / PDL / local extremes)
Observe reclaim of EMA13
Enter only after structure confirmation
Manage trade using EMA trailing or structure-based exits
⚠️ This is a reaction system, not a prediction tool.
📊 Best Use Cases
• XAUUSD (Gold)
• NASDAQ / US indices
• High-impact macro news events
• 5-min to 15-min timeframes
⚠️ Important Notes
• News volatility is extreme — risk management is essential
• Not designed for low-volatility or ranging markets
• Best combined with a clear trading plan and strict risk rules
📎 Disclaimer
This indicator is for educational purposes only and does not constitute financial advice. Trading during high-impact news events involves significant risk.
ICT Macro Tracker - Study Version (Original by toodegrees)This indicator is a modified study version of the ICT Algorithmic Macro Tracker by toodegrees, based on the original open-source script available at The original indicator plots ICT Macro windows on the chart, corresponding to specific time [ periods when the Interbank Price Delivery Algorithm undergoes checks/instructions (aka "macros") for the price engine to reprice to an area of liquidity or inefficiency.
This study version adds functionality to hide bars outside macro periods. When enabled, the indicator draws boxes that cover the full chart height during non-macro periods, obscuring those bars so only macro periods are visible. This helps focus on macro-only price action. The feature is configurable, allowing users to enable or disable it and customize the box color. All original functionality remains intact.
VCAI Volume & Liquidity Map LiteVCAI Volume & Liquidity Map Lite visualises recent market participation using a horizontal liquidity/volume histogram plotted beside current price.
It shows where trading activity has clustered, where the chart is thin, and how much of that activity came from buying vs selling pressure.
This Lite edition keeps the tool simple and fast:
Yellow = buy-side volume (aggressive buyers / upward pressure)
Purple = sell-side volume (aggressive sellers / downward pressure)
Thicker sections = higher traded volume at that price
POC line (purple) marks the price with the highest volume concentration
Value Area lines (yellow dashed) mark where ~70% of volume has traded
Bars extend outward to the right of price for a clean, unobstructed chart
Lookback setting controls how many candles the map is built from
Use it to quickly identify:
high-interest price zones
low-liquidity areas where price can move fast
likely reaction levels
where momentum may slow, reverse, or break through
Designed as a lightweight, open-source tool for anyone wanting a clean liquidity/volume map without complex settings.
Part of the VCAI Lite Series.
Unmitigated MTF High Low - Cave Diving Plot
IntroductionThe Unmitigated MTF High Low -
Cave Diving Plot is a multi-timeframe (MTF) indicator designed for NQ and ES futures traders who want to identify high-probability entry and exit zones based on unmitigated price levels. The "Cave Diving" visualization helps you navigate between support (floor) and resistance (ceiling) zones, while the integrated Strat analysis provides directional context.
Who Is This For?
Futures traders (NQ, ES) trading during ETH and RTH sessions
Scalpers and day traders looking for precise entry/exit levels
Traders using The Strat methodology for directional analysis
Anyone seeking confluence between price action and key levels
Core Concepts
1. Unmitigated Level:
An unmitigated level is a price high or low that has been created but not yet tested (touched) by price. These levels act as magnets - price often returns to test them.Key Properties:
Resistance (Highs): Price has created a high but hasn't revisited it
Support (Lows): Price has created a low but hasn't revisited it
Mitigation: When price touches a level, it becomes "mitigated" and loses strength
2. The Cave Diving MetaphorThink of trading as cave diving between two zones:
┌─────────────────────────────────┐
│ CEILING (Upper Band) │ ← 1st & 2nd Unmitigated Highs
│ 🟥 Resistance Zone │
├─────────────────────────────────┤
│ │
│ THE TUNNEL │ ← Price navigates here
│ (Trading Channel) │
│ │
├─────────────────────────────────┤
│ 🟢 Support Zone │
│ FLOOR (Lower Band) │ ← 1st & 2nd Unmitigated Lows
└─────────────────────────────────┘
Trading Concept:
Ceiling: Formed by the 1st and 2nd most recent unmitigated highs
Floor: Formed by the 1st and 2nd most recent unmitigated lows
Tunnel: The space between ceiling and floor where price operates
Cave Diving: Navigating between these zones for entries and exits
3. Session-Based Age TrackingLevels are tracked by session age:
Session: 6:00 PM to 5:00 PM NY time (23-hour window)
Age 0: Created in the current session (today)
Age 1: Created 1 session ago (yesterday)
Age 2+: Older levels (more significant)
Why Age Matters:
Older unmitigated levels are typically stronger magnets
Fresh levels (Age 0) may be weaker and easier to break
Age 2+ levels often provide high-probability reversal zones
Indicator Components
Visual Elements
1. Colored Bands (Cave Zones)Upper Band (Pink/Maroon - 95% transparency)
Space between 1st and 2nd unmitigated highs
Acts as resistance zone
Price often hesitates or reverses here
Lower Band (Teal - 95% transparency)
Space between 1st and 2nd unmitigated lows
Acts as support zone
Price often finds buyers here
2. Information Table Located in your chosen corner (default: Bottom Right), the table displays:
5 most recent unmitigated highs (top section)
Tunnel row (middle separator)
5 most recent unmitigated lows (bottom section)
Reading the TableTable Structure
┌────────┬──────────┬────────┬───────┐
│ Level │ $ │ Points │ Age │
├────────┼──────────┼────────┼───────┤
│ ↑↑↑↑↑ │ 21,450.25│ +45.30 │ 3 │ ← 5th High (oldest)
│ ↑↑↑↑ │ 21,425.50│ +32.75 │ 2 │ ← 4th High
│ ↑↑↑ │ 21,410.00│ +25.00 │ 1 │ ← 3rd High
│ ↑↑ │ 21,400.75│ +18.50 │ 1 │ ← 2nd High
│ ↑ │ 21,395.25│ +12.00 │ 0 │ ← 1st High (newest)
├────────┼──────────┼────────┼───────┤
│ Tunnel │ 🟢 │ Δ 85.50│ 2U │ ← Current State
├────────┼──────────┼────────┼───────┤
│ ↓ │ 21,310.00│ -15.25 │ 0 │ ← 1st Low (newest)
│ ↓↓ │ 21,295.50│ -22.75 │ 1 │ ← 2nd Low
│ ↓↓↓ │ 21,280.25│ -30.00 │ 1 │ ← 3rd Low
│ ↓↓↓↓ │ 21,265.75│ -38.50 │ 2 │ ← 4th Low
│ ↓↓↓↓↓ │ 21,250.00│ -45.00 │ 3 │ ← 5th Low (oldest)
└────────┴──────────┴────────┴───────┘Column
Breakdown
Column 1: Level (Arrows)
Green arrows (↑): Resistance levels above current price
Red arrows (↓): Support levels below current price
Arrow count: Indicates recency (1 arrow = newest, 5 arrows = oldest)
Why This Matters:
More arrows = older level = stronger magnet for price
Column 2: $ (Price)
Exact price of the unmitigated level
Use this for limit orders and stop placement
Column 3: Points (Distance)
Positive (+) for highs: Points above current price
Negative (-) for lows: Points below current price
Helps gauge proximity to key levels
Trading Application:
If you're +2.50 points from resistance, a reversal may be imminent
If you're -45.00 points from support, you're far from the floor
Column 4: Age (Sessions)
Number of full 6pm-5pm sessions the level has survived
Age 0: Created today (current session)
Age 1+: Created in previous sessions
Significance Ladder:
Age 0: Weak, may break easily
Age 1-2: Medium strength
Age 3+: Strong, high-probability reaction zone
Tunnel Row (Critical Information)│ Tunnel │ 🟢 │ Δ 85.50│ 2U │
└─┬─┘ └─┬─┘ └──┬──┘ └─┬─┘
│ │ │ │
Label Direction Range Strat
1. Tunnel Label: Identifies the separator row
2. Direction Indicator (🟢/🔴)
🟢 Green Circle: Current 15m bar closed bullish (above previous close)
🔴 Red Circle: Current 15m bar closed bearish (below previous close)
3. Δ (Delta/Range)
Distance in points between 1st High and 1st Low
Shows the tunnel width (trading range)
Example: Δ 85.50 = 85.50 points between ceiling and floor
Trading Use:
Wide tunnel (>100 points): More room to trade, consider range strategies
Narrow tunnel (<50 points): Tight range, expect breakout
4. Strat Pattern
1: Inside bar (consolidation)
2U: 2 Up (bullish directional bar)
2D: 2 Down (bearish directional bar)
3: Outside bar (expansion/volatility)
Color Coding:
Green: 2U (bullish)
Red: 2D (bearish)
Yellow: 3 (expansion)
Gray: 1 (inside/neutral)
Imbalance Heatmap (Free) – pc75A clean, efficient visualisation of liquidity voids, 3-bar imbalances, and price inefficiency zones.
This indicator highlights where the market left gaps in the order flow — areas price often revisits to rebalance.
Imbalances are displayed as stacked horizontal “heatmap strips,” making it easy to see:
Where aggressive buying/selling left a void
Whether multiple voids overlap (stronger zones)
Whether price is likely to return to fill the imbalance
How old a void is (older zones are marked differently)
This is a refined v6 rewrite based on a script I liked, completely modernised with cleaner logic, better performance, and optional labels.
🔍 Features
3-bar liquidity void detection (ICT-style logic)
Bullish imbalance when price displaces upward with no wick overlap
Bearish imbalance for downward displacement
✔ Heatmap-style visualisation
Each imbalance is sliced into multiple thin horizontal bands to create a visual density effect.
✔ Stacking intelligence
If a new void overlaps previous ones, the heatmap is drawn brighter, showing areas where the market left multiple inefficiencies.
✔ “Void xN” labels
Optional labels show how many overlapping voids existed at the moment the imbalance formed.
✔ Automatic deletion when filled
As soon as price trades back through a slice, that slice is removed.
This keeps the chart clean and focuses only on active inefficiencies.
✔ Smart ageing
Older voids are marked with a subtle border so you can distinguish freshly formed inefficiencies from historical ones.
✔ Alerts
Set alerts for when price taps a stacked imbalance zone (“Void x2” and above).
⚙ Inputs & Customisation
ATR threshold (optional)
Minimum tick size gap
Number of heatmap slices
Bullish / bearish toggles
Label toggles
Colour and transparency configuration
Max slice memory for performance
💡 How to Use
Imbalance zones often behave as:
Magnets → price gravitates toward them
Support/resistance → structure respects inefficiencies
Continuity points → used with market structure shifts
Targets → for both scalpers and swing traders
Strong (stacked) voids typically represent areas of institutional displacement, where the market is more likely to return for rebalancing.
📢 Notes
This is the free version.
Educational only — not financial advice.
Volume Flow Anatomy [Kodexius]Volume Flow Anatomy is a dynamic, multi-dimensional volume map that reconstructs how buy, sell, and “stealth” activity is distributed across price rather than just across time. Instead of relying on a static, session-based volume profile, it uses an exponentially decaying memory of recent bars to build a constantly evolving “anatomy” of the auction, where each price level carries an adaptive history of order flow.
The script separates buy vs. sell pressure, adds a third “Stealth Flow” dimension for low-volume price movement (ease of movement / divergence), and automatically derives POC, Value Area, imbalances, absorption zones, and classic profile shapes (D, P, b, B). This gives the trader a compact but highly information-dense map on the right side of the chart to read control (buyers vs. sellers), structure (balanced vs. trending vs. double distribution), and key reaction levels (support/resistance born from flow, not just wicks).
🔹 Features
🔸 Dynamic Lookback with Decay
- The script computes an effective lookback N from the Decay Factor and caps it with Max Lookback.
- Higher decay keeps more history; lower decay emphasizes the most recent flow.
- The profile continuously adapts as new bars are printed.
🔸 Price-Bucketed Flow Map
Each bucket accumulates:
- Sell Flow (sell pressure)
- Buy Flow (buy pressure)
- Stealth Flow (low-volume price movement)
- Box width at each bucket is proportional to the relative intensity of that component.
🔸 Stealth Flow (Low-Volume Price Movement)
- Measures close to close movement relative to volume, emphasizing price movement that occurs on comparatively low volume.
- Helps reveal hidden participation, inefficient moves, and areas that may be vulnerable to re-tests or reversions.
🔸 POC & 70% Value Area (VA)
- Identifies the Point of Control (price bucket with the highest total volume) over the effective lookback.
- Builds a 70% Value Area by expanding from POC towards the nearest high volume neighbors until 70% of the total volume is included.
- POC is drawn as a line over the analyzed range; VA is displayed as a shaded band in the profile area.
🔸 Market Profile Shape Detection
Splits the profile vertically into three zones (bottom / middle / top) and compares their volume distribution.
Classifies structure as:
- D-Shape (Balanced)
- P-Shape (Short Covering)
- b-Shape (Long Liquidation)
- B-Shape (Double Distribution)
Displays a shape label with color coded bias for quick auction context interpretation.
🔸 Imbalance Zones & Absorption
Imbalance: detects buckets where Buy Flow or Sell Flow exceeds the opposite side by at least Imbalance Ratio.
Absorption: flags zones with high volume but low price “ease”, where price is not moving much despite significant volume.
Extends these levels into horizontal zones, marking potential support/resistance and trap areas.
Bullish Imbalance Zone :
Bearish Imbalance Zone :
Absorption Zone :
🔸 Range Context & On-Chart Legend
Draws a Range Box covering the dynamically determined lookback (N bars), with a label displaying the effective bar count.
A bottom-right legend summarizes:
- Color keys for Buy / Sell / Stealth
- POC / VA status
- Bullish vs. Bearish dominance percentage
- Profile shape classification
- Imbalance and Absorption conventions
🔹 Calculations
1. Dynamic Lookback & Price Buckets
int N = math.min(int(4 / (1 - decayFactor) - 1), maxHistory)
float priceHigh = ta.highest(high, N)
float priceLow = ta.lowest(low, N)
float bucketSize = (priceHigh - priceLow) / bucketCount
The effective lookback N is derived from the Decay Factor, using the approximation 4 / (1 - decay) to capture roughly 99% of the decayed influence, then capped with maxHistory to control performance. Over that adaptive range, the script finds the highest and lowest prices and divides the band into bucketCount equal slices (bucketSize). Each slice is a price bucket that will accumulate volume-flow information.
2. Exponentially Decayed Volume Allocation
addValue(array profile, float weight, float minPrice, float maxPrice) =>
for j = 0 to bucketCount - 1
float bucketMin = priceLow + j * bucketSize
float bucketMax = bucketMin + bucketSize
float overlapMin = math.max(minPrice, bucketMin)
float overlapMax = math.min(maxPrice, bucketMax)
float overlapRange = overlapMax - overlapMin
if overlapRange > 0
profile.set(j, profile.get(j) * decayFactor + weight * overlapRange)
This function is the core engine of the indicator. For a given price span and intensity, it checks every bucket for overlap, distributes the weight proportionally to the overlapping range, and before adding new value, decays the existing bucket content by decayFactor. This results in an exponentially weighted profile: recent activity dominates, while older levels retain a gradually fading footprint.
3. POC and 70% Value Area
array totalProfile = array.new(bucketCount, 0)
for j = 0 to bucketCount - 1
float total = sellProfile.get(j) + buyProfile.get(j)
totalProfile.set(j, total)
if total > eaMax
eaMax := total
int pocIdx = 0
float pocVal = 0.0
for j = 0 to bucketCount - 1
if totalProfile.get(j) > pocVal
pocVal := totalProfile.get(j)
pocIdx := j
float totalSum = totalProfile.sum()
float targetSum = totalSum * 0.70
int vaLow = pocIdx
int vaHigh = pocIdx
float currentSum = pocVal
while currentSum < targetSum and (vaLow > 0 or vaHigh < bucketCount - 1)
float lowVal = vaLow > 0 ? totalProfile.get(vaLow - 1) : 0.0
float highVal = vaHigh < bucketCount - 1 ? totalProfile.get(vaHigh + 1) : 0.0
First, totalProfile is built as the sum of buy and sell flow per bucket, and eaMax (the maximum total) is tracked for later normalization. The POC bucket (pocIdx) is simply the index with the highest totalProfile value.
To compute the 70% Value Area, the algorithm starts at the POC bucket and expands outward, each step adding either the upper or lower neighbor depending on which has more volume. This continues until the cumulative volume reaches 70% of totalSum. The result is a volume-driven VA, not necessarily symmetric around POC, which more accurately represents where the market has truly traded.
4. Market Profile Shape Classification
float volTopThird = 0.0
float volMidThird = 0.0
float volBotThird = 0.0
int thirdIdx = int(bucketCount / 3)
for j = 0 to bucketCount - 1
float val = totalProfile.get(j)
if j < thirdIdx
volBotThird += val
else if j < thirdIdx * 2
volMidThird += val
else
volTopThird += val
float totalVolShape = totalProfile.sum()
string shapeStr = "D-Shape (Balanced)"
if (volTopThird > totalVolShape * 0.20) and (volBotThird > totalVolShape * 0.20) and (volMidThird < totalVolShape * 0.50)
shapeStr := "B-Shape (Double Dist)"
else
if pocIdx > bucketCount * 0.5 and volTopThird > volBotThird * 1.3
shapeStr := "P-Shape (Short Covering)"
else if pocIdx < bucketCount * 0.5 and volBotThird > volTopThird * 1.3
shapeStr := "b-Shape (Long Liquidation)"
else
shapeStr := "D-Shape (Balanced)"
The profile is split into bottom, middle, and top thirds. The script compares how much volume is concentrated in each and combines that with the relative location of POC. If both extremes are heavy and the middle light, it labels a B-Shape (double distribution). If the POC is high and the top dominates the bottom, it’s a P-Shape (short covering). If the POC is low and the bottom dominates, it’s a b-Shape (long liquidation). Otherwise, it defaults to a D-Shape (balanced). This provides a quick, at-a-glance assessment of auction structure.
5. Imbalances, Absorption & Zones
bool isBuyImb = showImb and sVal > 0 and (bVal / sVal >= imbRatio)
bool isSellImb = showImb and bVal > 0 and (sVal / bVal >= imbRatio)
float volRatio = eaMax > 0 ? tVal / eaMax : 0
float stRatio = esmRange > 0 ? (stVal - esmMin) / esmRange : 1.0
bool isAbsorp = showAbsorp and volRatio > 0.6 and stRatio < 0.25
if showImbZone
if isSellImb
zoneBoxes.push(box.new(bar_index - N + 1, bucketHi, bar_index + 1, bucketLo, ...))
if isBuyImb
zoneBoxes.push(box.new(bar_index - N + 1, bucketHi, bar_index + 1, bucketLo, ...))
if isAbsorp
zoneBoxes.push(box.new(bar_index - N + 1, bucketHi, bar_index + 1, bucketLo, ...))
Imbalances are identified where one side’s volume (buy or sell) exceeds the other by at least Imbalance Ratio. These buckets are marked as buy or sell imbalance zones, indicating aggressive participation from one side.
Absorption is detected by combining a high volume ratio (volRatio) with a low normalized stealth ratio (stRatio). High volume with limited price movement suggests that opposing orders are absorbing flow at that level. Both imbalance and absorption buckets are extended into horizontal zones from the start of the lookback to the current bar, visually emphasizing key support/resistance and liquidity areas.
6. Building Buy, Sell & Stealth Profiles
sellProfile := array.new(bucketCount, 0)
buyProfile := array.new(bucketCount, 0)
stealthProfile := array.new(bucketCount, 0)
Three arrays are used to store Sell Flow, Buy Flow, and Stealth Flow. Bars are processed from oldest to newest so that decay is applied in correct chronological order. For each bar, a volume density (volume / range) is calculated and distributed across the candle range. Bull candles feed buyProfile, bear candles feed sellProfile.
Stealth Flow computes the close-to-close move between consecutive bars, scaled by 1 / (1 + volume). Big moves on low volume produce high stealth values, which are then allocated across the move’s price span into stealthProfile. This yields a three-layer profile per price level: directional volume and stealthy price movement.
Obsidian Flux Matrix# Obsidian Flux Matrix | JackOfAllTrades
Made with my Senior Level AI Pine Script v6 coding bot for the community!
Narrative Overview
Obsidian Flux Matrix (OFM) is an open-source Pine Script v6 study that fuses social sentiment, higher timeframe trend bias, fair-value-gap detection, liquidity raids, VWAP gravitation, session profiling, and a diagnostic HUD. The layout keeps the obsidian palette so critical overlays stay readable without overwhelming a price chart.
Purpose & Scope
OFM focuses on actionable structure rather than marketing claims. It documents every driver that powers its confluence engine so reviewers understand what triggers each visual.
Core Analytical Pillars
1. Social Pulse Engine
Sentiment Webhook Feed: Accepts normalized scores (-1 to +1). Signals only arm when the EMA-smoothed value exceeds the `sentimentMin` input (0.35 by default).
Volume Confirmation: Requires local volume > 30-bar average × `volSpikeMult` (default 2.0) before sentiment flags.
EMA Cross Validation: Fast EMA 8 crossing above/below slow EMA 21 keeps momentum aligned with flow.
Momentum Alignment: Multi-timeframe momentum composite must agree (positive for longs, negative for shorts).
2. Peer Momentum Heatmap
Multi-Timeframe Blend: RSI + Stoch RSI fetched via request.security() on 1H/4H/1D by default.
Composite Scoring: Each timeframe votes +1/-1/0; totals are clamped between -3 and +3.
Intraday Readability: Configurable band thickness (1-5) so scalpers see context without losing space.
Dynamic Opacity: Stronger agreement boosts column opacity for quick bias checks.
3. Trend & Displacement Framework
Dual EMA Ribbon: Cyan/magenta ribbon highlights immediate posture.
HTF Bias: A higher-timeframe EMA (default 55 on 4H) sets macro direction.
Displacement Score: Body-to-ATR ratio (>1.4 default) detects impulses that seed FVGs or VWAP raids.
ATR Normalization: All thresholds float with volatility so the study adapts to assets and regimes.
4. Intelligent Fair Value Gap (FVG) System
Gap Detection: Three-candle logic (bullish: low > high ; bearish: high < low ) with ATR-sized minimums (0.15 × ATR default).
Overlap Prevention: Price-range checks stop redundant boxes.
Spacing Control: `fvgMinSpacing` (default 5) avoids stacking from the same impulse.
Storage Caps: Max three FVGs per side unless the user widens the limit.
Session Awareness: Kill zone filters keep taps focused on London/NY if desired.
Auto Cleanup: Boxes delete when price closes beyond their invalidation level.
5. VWAP Magnet + Liquidity Raid Engine
Session or Rolling VWAP: Toggle resets to match intraday or rolling preferences.
Equal High/Low Scanner: Looks back 20 bars by default for liquidity pools.
Displacement Filter: ATR multiplier ensures raids represent genuine liquidity sweeps.
Mean Reversion Focus: Signals fire when price displaces back toward VWAP following a raid.
6. Session Range Breakout System
Initial Balance Tracking: First N bars (15 default) define the session box.
Breakout Logic: Requires simultaneous liquidity spikes, nearby FVG activity, and supportive momentum.
Z-Score Volume Filter: >1.5σ by default to filter noisy moves.
7. Lifestyle Liquidity Scanner
Volume Z-Scores: 50-bar baseline highlights statistically significant spikes.
Smart Money Footprints: Bottom-of-chart squares color-code buy vs sell participation.
Panel Memory: HUD logs the last five raid timestamps, direction, and normalized size.
8. Risk Matrix & Diagnostic HUD
HUD Structure: Table in the top-right summarizes HTF bias, sentiment, momentum, range state, liquidity memory, and current risk references.
Signal Tags: Aggregates SPS, FVG, VWAP, Range, and Liquidity states into a compact string.
Risk Metrics: Swing-based stops (5-bar lookback) + ATR targets (1.5× default) keep risk transparent.
Signal Families & Alerts
Social Pulse (SPS): Volume-confirmed sentiment alignment; triangle markers with “SPS”.
Kill-Zone FVG: Session + HTF alignment + FVG tap; arrow markers plus SL/TP labels.
Local FVG: Captures local reversals when HTF bias has not flipped yet.
VWAP Raid: Equal-high/low raids that snap toward VWAP; “VWAP” label markers.
Range Breakout: Initial balance violations with liquidity and imbalance confirmation; circle markers.
Liquidity Spike: Z-score spikes ≥ threshold; square markers along the baseline.
Visual Design & Customization
Theme Palette: Primary background RGB (12,6,24). Accent shading RGB (26,10,48). Long accents RGB (88,174,255). Short accents RGB (219,109,255).
Stylized Candles: Optional overlay using theme colors.
Signal Toggles: Independently enable markers, heatmap, and diagnostics.
Label Spacing: Auto-spacing enforces ≥4-bar gaps to prevent text overlap.
Customization & Workflow Notes
Adjust ATR/FVG thresholds when volatility shifts.
Re-anchor sentiment to your webhook cadence; EMA smoothing (default 5) dampens noise.
Reposition the HUD by editing the `table.new` coordinates.
Use multiples of the chart timeframe for HTF requests to minimize load.
Session inputs accept exchange-local time; align them to your market.
Performance & Compliance
Pure Pine v6: Single-line statements, no `lookahead_on`.
Resource Safe: Arrays trimmed, boxes limited, `request.security` cached.
Repaint Awareness: Signals confirm on close; alerts mirror on-chart logic.
Runtime Safety: Arrays/loops guard against `na`.
Use Cases
Measure when social sentiment aligns with structure.
Plan ICT-style intraday rebalances around session-specific FVG taps.
Fade VWAP raids when displacement shows exhaustion.
Watch initial balance breaks backed by statistical volume.
Keep risk/target references anchored in ATR logic.
Signal Logic Snapshot
Social Pulse Long/Short: `sentimentEMA` gated by `sentimentMin`, `volSpike`, EMA 8/21 cross, and `momoComposite` sign agreement. Keeps hype tied to structural follow-through.
Kill-Zone FVG Long/Short: Requires session filter, HTF EMA bias alignment, and an active FVG tap (`bullFvgTap` / `bearFvgTap`). Labels include swing stops + ATR targets pulled from `swingLookback` and `liqTargetMultiple`.
Local FVG Long/Short: Uses `localBullish` / `localBearish` heuristics (EMA slope, displacement, sequential closes) to surface intraday reversals even when HTF bias has not flipped.
VWAP Raids: Detect equal-high/equal-low sweeps (`raidHigh`, `raidLow`) that revert toward `sessionVwap` or rolling VWAP when displacement exceeds `vwapAlertDisplace`.
Range Breakouts: Combine `rangeComplete`, breakout confirmation, liquidity spikes, and nearby FVG activity for statistically backed initial balance breaks.
Liquidity Spikes: Volume Z-score > `zScoreThreshold` logs direction, size, and timestamp for the HUD and optional review workflows.
Session Logic & VWAP Handling
Kill zone + NY session inputs use TradingView’s session strings; `f_inSession()` drives both visual shading and whether FVG taps are tradeable when `killZoneOnly` is true.
Session VWAP resets using cumulative price × volume sums that restart when the daily timestamp changes; rolling VWAP falls back to `ta.vwap(hlc3)` for instruments where daily resets are less relevant.
Initial balance box (`rangeBars` input) locks once complete, extends forward, and stays on chart to contextualize later liquidity raids or breakouts.
Parameter Reference
Trend: `emaFastLen`, `emaSlowLen`, `htfResolution`, `htfEmaLen`, `showEmaRibbon`, `showHtfBiasLine`.
Momentum: `tf1`, `tf2`, `tf3`, `rsiLen`, `stochLen`, `stochSmooth`, `heatmapHeight`.
Volume/Liquidity: `volLookback`, `volSpikeMult`, `zScoreLen`, `zScoreThreshold`, `equalLookback`.
VWAP & Sessions: `vwapMode`, `showVwapLine`, `vwapAlertDisplace`, `killSession`, `nySession`, `showSessionShade`, `rangeBars`.
FVG/Risk: `fvgMinTicks`, `fvgLookback`, `fvgMinSpacing`, `killZoneOnly`, `liqTargetMultiple`, `swingLookback`.
Visualization Toggles: `showSignalMarkers`, `showHeatmapBand`, `showInfoPanel`, `showStylizedCandles`.
Workflow Recipes
Kill-Zone Continuation: During the defined kill session, look for `killFvgLong` or `killFvgShort` arrows that line up with `sentimentValid` and positive `momoComposite`. Use the HUD’s risk readout to confirm SL/TP distances before entering.
VWAP Raid Fade: Outside kill zone, track `raidToVwapLong/Short`. Confirm the candle body exceeds the displacement multiplier, and price crosses back toward VWAP before considering reversions.
Range Break Monitor: After the initial balance locks, mark `rangeBreakLong/Short` circles only when the momentum band is >0 or <0 respectively and a fresh FVG box sits near price.
Liquidity Spike Review: When the HUD shows “Liquidity” timestamps, hover the plotted squares at chart bottom to see whether spikes were buy/sell oriented and if local FVGs formed immediately after.
Metadata
Author: officialjackofalltrades
Platform: TradingView (Pine Script v6)
Category: Sentiment + Liquidity Intelligence
Hope you Enjoy!
Vietnamese Stock: Discount Linear Regression Liquidity GrabThe Discount Linear Regression Liquidity Grab is a sophisticated technical analysis tool that combines statistical trend analysis with Premium/Discount Zone and Price Action logic. Unlike standard Linear Regression Channels that repaint or stretch indefinitely, this indicator is dynamic: it automatically detects volatility breakouts to "reset" the channel, creating distinct market "Sections."
This tool is designed to help traders identify trend exhaustion, fair value gaps (FVGs), and high-probability reversal or continuation zones using two distinct built-in strategies.
Key Features
1. Dynamic Channel Resets
The core engine calculates a Linear Regression Channel based on a Pearson R coefficient and Deviation multipliers.
- How it works: When price breaks out of the Upper or Lower Deviation bands, the script recognizes a shift in momentum. It "locks" the previous channel and begins calculating a new one from the breakout point.
- Benefit: This creates a historical map of market structure, showing you exactly where previous trends began and ended.
2. Smart Money Concepts (SMC) Integration
For every completed section (channel), the indicator automatically highlights:
Highest High & Lowest Low Boxes: Identifies the structural range of the previous move.
- Gaps & FVGs: Automatically draws boxes for Fair Value Gaps and Price Gaps within the channel, acting as potential magnets for price.
3. The Discount Zone (New Feature)
The indicator projects a Discount Area (Red Box) from the previous section's midline down to its lowest low.
- Logic: This box represents the "Discount" pricing relative to the previous move.
- Behavior: The box extends to the right until price successfully "grabs liquidity" (closes below the midline/red line). Once the grab occurs, the box stops extending, marking that the liquidity event is complete.
Built-In Strategies
This indicator includes two automated strategy signals based on the interaction between current price and historical sections.
Strategy 1: Breakout & Retest (Trend Continuation)
This strategy looks for a classic resistance-turned-support setup.
- Breakout: Price closes above the Highest High of a previous section (Triangle Up).
- Retest: Price pulls back and closes at or below that breakout level (Triangle Down).
- Confirmation: Price breaks above the high of the initial breakout candle (Green Background).
Strategy 2: Midline Reclaim (Mean Reversion / Discount Buy)
This strategy focuses on buying from the "Discount" zone.
- Liquidity Grab: Price drops below the Midline (Red Line) of a previous section, entering the Discount Zone.
- Reclaim: Price closes back above the Midline, signaling that the dip was bought up.
Signal: A Diamond shape and Teal Background appear.
How to Use
- Trend Trading: Use the Dynamic Channels to visualize the current slope. If the channel is angling up, look for long setups.
- Confluence: Use the Discount Zones and FVG boxes as areas of interest. If price enters a Red Discount Box and forms a reversal pattern, it is a high-probability entry.
- Stop Loss Placement: The Lowest Low boxes of previous sections serve as excellent invalidation points for long positions.
Alerts
The indicator comes with pre-configured alerts for:
- Strategy 1 Confirmation.
- Strategy 2 Midline Reclaim.
- New Channel Formation (Trend Reset).
- Liquidity Grab Events.
Simulated Liquidation Heatmap [QuantAlgo]🟢 Overview
This indicator visualizes where clusters of stop-loss orders and liquidation levels are likely located, displayed as a 'heatmap'. It's based on the concept of market structure liquidity: large groups of stop orders tend to gather around obvious technical levels (like swing highs and lows), and these pools of orders often attract price movement from institutional traders. The indicator uses a fractal-based algorithm to identify these high-probability liquidation zones and displays them as dynamic, color-coded boxes.
The key feature is the thermal color gradient, which indicates the freshness (age) and therefore the relative relevance of the liquidity zone. Hot colors (e.g., Red/Yellow) represent fresh clusters that have just formed, suggesting strong and immediate liquidity interest. Cold colors (e.g., Blue/Purple) represent aged or decaying clusters that are becoming less relevant over time. This visualization allows traders to anticipate potential liquidity sweeps (stop hunts) and understand areas of significant retail and institutional positioning.
🟢 Key Features
1. Liquidity Zone Heatmap
The core function is the identification of swing high and swing low price points using a user-defined Lookback period. These points are where retail traders are statistically most likely to place their stop-loss orders. The indicator simulates the clustering of these orders by drawing a zone (box) around the detected swing point, with the vertical size controlled by the Stop/Liquidation Zone Width (%) setting.
▶ Cluster Lookback: Defines the sensitivity of swing point detection. Lower values detect frequent, minor zones (scalping/intraday); higher values detect major, stronger swing points (swing trading).
▶ Zone Width (%): Sets the percentage range above and below the swing point where stops are simulated to cluster, accounting for slippage and typical stop placement spread.
▶ Liquidity Decay: Zones gradually fade in color intensity and are eventually removed after the user-defined Liquidity Decay Period (Bars), ensuring the heatmap only displays relevant, current liquidity areas.
▶ Round Number Filter: An optional filter that limits the display to liquidity zones occurring only at psychologically significant round numbers (e.g., $100, $1,500.00), which typically attract higher concentrations of orders.
2. Thermal Color Gradient
The heatmap's color is a direct function of the zone's age, providing a visual proxy for immediate relevance.
▶ Freshness: Newly created zones are displayed in the Hot Color (high relevance).
▶ Decay: As bars pass, the zone color transitions along the gradient toward the Cold Color and increased transparency (lower relevance), until it is removed entirely.
▶ Color Schemes: Multiple pre-configured and custom color schemes are available to optimize the visualization for different chart themes and color preferences.
3. Liquidity Heat Thermometer
An optional visual thermometer is displayed on the chart to provide an instant, overall assessment of the current liquidation heat level in the immediate vicinity of the price.
▶ Calculation: The thermometer calculates an aggregate heat score based on the age and proximity of all liquidity zones within a user-defined Zone Detection Range (%) of the current price.
▶ Visual Feedback: A marker (triangle) points to the corresponding level on the thermometer's color gradient (Hot to Cold). A high reading indicates price is close to fresh, dense stop clusters, suggesting high volatility or an imminent liquidity sweep is probable. A low reading indicates price is in a low-density or aged liquidity area.
▶ Customization: The thermometer's resolution, position, and text size are fully customizable for optimal chart placement and readability.
🟢 Practical Applications
▶ Anticipate Sweeps: Prioritize trading in the direction of Hot (fresh) liquidity zones. For example, a hot low-side zone suggests strong sell-side liquidity (stop-losses) is available for large buyers to sweep.
▶ Filter Noise: Use the Round Number Filter to focus only on the highest probability liquidation zones, which are often at clean, psychological price levels.
▶ Validate Entries: Combine the Heat Thermometer with price action analysis. A rising heat level indicates increasing proximity to a major stop cluster, signaling a potential turn or an aggressive market move to sweep those stops.
▶ Risk Management: Understand that price often acts dynamically around these zones. High heat levels imply high risk/reward setups; stops should be placed strategically beyond the defined Liquidation Zone Width.
▶ Multi-Timeframe Context: Higher timeframes (e.g., Daily, 4-Hour) often reveal more significant, major liquidity zones. Use this indicator on lower timeframes (e.g., 5-min, 15-min) for execution, but prioritize zones that align with higher-timeframe structures.






















