TtM - The Phenomenal Five‘TtM - The Phenomenal Five’ Indicator
NOTE: I am NOT a professional trader. I DO NOT provide investment advice. This content and the data provided in the indicator is based on my live and simulated, personal observations and is ONLY intended for educational purposes. YOU are responsible for ALL your trading decisions and ALL subsequent tax ramifications. Past performance DOES NOT guarantee future results.
‘The Phenomenal Five’ refers to a specific group of five underlying indicators. That is how the indicator got its name. It is a slimmed down version of a prior indicator called ‘The Score Card’. The majority of those previous features got transferred to a new indicator called ‘The Calculator’. That new indicator represents the core of how I presently trade. Although nothing is perfect, ‘The Calculator’ was designed for short term scalps. In my case, those scalps usually range above the 2% mark.
With that being said, there were still features of ‘The Score Card’ that were extremely helpful visual aids. The display of those features, although still very important, could not be coded into a normal, lower indicator. That is why I separated out those five necessities into this indicator.
Here is a list of the features contained within ‘The Phenomenal Five’:
1. Automated Fibonacci Lines: Even though the display is simple, this feature took quite a bit to accomplish. Behind the scenes, it is tracking downward moves. It calculates from the MOST RECENT Pivot High (100%) as its beginning point and continues down to the MOST RECENT lowest low (0%) as its ending point. It then automatically projects Fibonacci Retracement Lines upward based on that downward move. The display of those lines will statically continue until a new lowest low is established OR a new Pivot High is reached. In either of those cases, the display will automatically readjust accordingly. The default values of the 5 adjustable, colored lines are as follows:
Level #1 Orange Line: 23.6%
Level #2 Lime Green Line: 38.2%
Level #3 Blue Line: 50.0%
Level #4 Purple Line: 61.8%
Level #5 Red Line: 78.6%
2. Highlighted Consolidation Zones: Consolidation may not be the right technical trading term here. However, I use it to help explain areas where price is within a range of indecision and is consolidating across a few bars. The yellow highlighted areas, especially the ones with a smaller quantity of bars and a tighter range, help train my eye to spot similar zones which may not meet the exact criteria of the indicator itself. I use the areas I spot AND the areas the indicator highlights as potential profit targets. In other words, instead of forcing my exit decision or a specific percentage as the outcome of a trade, I let the market tell me where to exit. My assumption is that once a trade starts heading in my direction that it would at least gravitate to the middle of the last area of indecision which is quite possibly a yellow Highlighted Consolidation Zone or at least a location I RECOGNIZED as similar to the highlighted areas.
3. Profit Projection Line: This is a line that rides at a specific percentage above current price. In my case, that percentage is 2%. (That number can be adjusted on the ‘Inputs’ window of the indicator.) I use this line combined with the yellow highlighted areas AND locations I define as important visual aids. If, for example, I want to only look at trades that potentially offer 2% or more profit, I can quickly glance at a chart and see if a setup is worth digging into deeper. In other words, if the Profit Projection Line is already above my profit target (yellow highlighted area OR one I recognize), then I move onto the next setup. On the other hand, if the line is below the zone(s), I get a little more interested in working through my trade decision process.
4. Pivot Highs and Lows: A Pivot High, as structured in this indicator, has 10 bars to the left AND 10 bars to the right of the High Bar that ALL closed lower than the close of the High Bar. A Pivot Low, as structured in this indicator, has 10 bars to the left AND 10 bars to the right of the Low Bar that ALL closed higher than the close of the Low Bar. There is NO guarantee that price is going to adjust itself at the High Bar, but based on the data, that adjustment is a logical assumption. However, the main problem is that once a Pivot High or Low has completed, price is already 10 bars past the High Bar. The point is that Pivots, both High and Low, provide real good indications of possible market sentiment, but they are a definitely a ‘lagging’ portion of the indicator.
Note: For visual reference, the indicator is coded to display on the High/Low Bar, even though the full Pivot did not complete until 10 bars later.
With that being said, I also have ‘The Phenomenal Five’ coded to display what might be considered 1/2 of a Pivot High or Low. In this case, the indicator DOES NOT take into account any bars to the right. Instead, I have what I call possible 8’s, 9’s and 10’s. This version of the Pivots, both High and Low, are displayed in purple boxes on the chart. An *8* High will only appear when the prior 8 bars closed lower than that interim High Bar. A *9* Low will only appear when the prior 9 bars closed higher than that interim Low Bar and so on.
Here is the reasoning behind these pseudo Pivots. Let’s assume I locate a bounce in the market and wanted to enter a trade. If an *8* High displayed, I may think twice about that entry. There are obviously NO guarantees, but perhaps the upward move I was looking to catch has already moved to far to sustain the profit percentage I desired. On the other hand, let’s assume I was looking for an early indication of a possible bounce. There are obviously NO guarantees, but if an *8* Low, then *9* Low and *10* Low displayed on the most recent 3 bars, I might be more confident in an earlier entry to catch a larger portion of the potential bounce.
5. Zig Zag Line: Price action on a chart can be quite annoying. It moves up, down, sideways or in whatever direction it wants whenever it wants to. I use the Zig Zag Line as a visual aid to help smooth out that chaos. It helps drown out some of the choppiness when I am in the heat of the battle trying to make a trading decision.
Be aware, that the Zig Zag Line is far from perfect. It is somewhat more of a hack than pure coding. It combines various readings across a different timeframe to even have a chance at being somewhat visually correct. The question then becomes, why did I code it into ‘The Phenomenal Five’? The answer is simple. None of my decisions depend on the line. Basically, it just tells me where I am at on the chart. So, in my case, I don’t mind a little imperfection in this visual aid. Additionally, the free version of TradingView allows for only 3 indicators on a chart. By combining a less than perfect version here, I freed up one of those slots. However, if I had an available slot on my charts for an additional indicator, I would use the TradingView, built-in Zig Zag tool. My personal settings for that tool are Deviation 0.00001, Depth 10 and I have the ‘Extend To Last Bar’ box checked. To disable my Zig Zag Line, I simply UNcheck the ‘Zig Zag Display’ box on the style page of the indicator.
Note: Just about everything (including, lines, levels, percentages and colors) within ‘The Phenomenal Five’ is adjustable. It’s as simple as clicking on the ‘gear’ icon to the right of the name of the indicator. From there, the ‘Input’ page controls the settings and the ‘Style’ page controls the colors. I can make my updates, hit ‘SAVE’ and in essence I have a new indicator that calculates based off the new edits. That makes things REAL EASY to change for further testing purposes.
That’s it. Let me know what you think. You can ‘Follow’ and/or ‘Message’ me within the TradingView platform at: www.tradingview.com
Full Speed ahead. Go get ‘em!!!
The Trading Guy
Acknowledgments: I would like to personally thank the following TV members for their inspiration and, in certain cases, their code snippet usage approval: RicardoSantos and LazyBear. By virtue of building on their publically available code snippets, the finish line came sooner rather than later. Also, a special thanks to gyromatical for assistance and brain storming.
스크립트에서 "high low"에 대해 찾기
Warpath Structure + Liquidity Tool (Updated - V3)Warpath visually organizes the key elements required to trade Gold professionally:
1. Market Structure Clarity
Automatically labels HH / HL / LH / LL on major pivot points (current chart timeframe). Makes directional bias immediately obvious. Helps prevent counter-trend trading in strong expansions.
2. Liquidity Sweep Detection (Wick-Only)
Highlights true liquidity sweeps using wick behavior (no breakout guessing). Marks the sweep wick with user-defined colors. Draws a swept-zone box that extends forward to show where liquidity was taken. Designed to identify fuel vs reversal behavior in trends.
3. Key Session Levels
Automatically plots:
Asian High / Low
Previous Day High / Low
Equal Highs / Equal Lows from current timeframe and higher timeframes (1H / 4H / Daily)
These levels represent where price is likely to react, not where trades should be forced.
4. Multi-Confluence HTF Bias Dashboard
Small dashboard showing bias for 15M, 1H, 4H, and Daily timeframes. Each timeframe bias is calculated using four confluence factors:
EMA Stack: 8/21/50 alignment and price position relative to EMAs
Structure: Recent HH/HL vs LH/LL pivot behavior
Price Patterns: Engulfing candles, hammers, double bottoms/tops, break of structure
Momentum: Recent candle direction and close trend
Displays a confluence score (e.g., "BULLS (4)") so you can see signal strength, not just direction. Overall bias weights higher timeframes more heavily for smarter alignment.
5. Trade Positioning Dashboard
Replaces basic overbought/oversold readings with actionable positioning context:
Range Position: Shows exactly where price sits within the selected range (Previous Session, Previous Day, or Weekly) as a percentage. Zones include Deep Discount (0-25%), Discount (25-40%), Equilibrium (40-60%), Premium (60-75%), and Deep Premium (75-100%).
VWAP Deviation: Displays distance from VWAP in standard deviations (σ). Readings beyond ±1.5σ indicate meaningful extension. Readings beyond ±2σ suggest caution on continuation and potential mean reversion.
Trade Favor: Combines HTF bias alignment, range position, and VWAP deviation into a single directional score. Displays as "LONGS ●●●○" or "SHORTS ●●○○" so you know at a glance whether conditions favor continuation or reversal.
6. Continuation Reload Awareness (Strong Trend Environments)
Built to handle markets that:
Remain overbought
Stay in premium
Sweep buy-side liquidity repeatedly
The multi-confluence scoring system catches trend continuation setups (like higher lows forming with bullish momentum) even before swing structure fully confirms. Supports compression → expansion continuation behavior. Prevents missed participation during multi-day trends without abandoning discipline.
SMC Pro+ ICT v4 Enhanced - FINAL🎯 SMC Pro+ ICT v4 Enhanced - Complete Smart Money Trading System📊 Professional All-in-One Indicator for Smart Money Concepts & ICT MethodologyThe SMC Pro+ ICT v4 Enhanced is a comprehensive trading system that combines Smart Money Concepts (SMC) with Inner Circle Trader (ICT) methodology. This indicator provides institutional-grade market structure analysis, liquidity mapping, and volume profiling in one powerful package.✨ CORE FEATURES🏗️ Advanced Market Structure Detection
MSS (Market Structure Shift) - Identifies major trend reversals with precision
BOS (Break of Structure) - Confirms trend continuation moves
CHoCH (Change of Character) - Detects internal structure shifts
Modern LuxAlgo-Style Lines - Clean, professional visualization
Dual Sensitivity System - External structure (major swings) + Internal structure (minor swings)
Customizable Labels - Tiny, Small, or Normal sizes
Structure Break Visualization - Clear break point markers
💎 Supply & Demand Zones (POI - Point of Interest)
Institutional Order Blocks - Where smart money enters/exits
ATR-Based Zone Sizing - Dynamically adjusted to market volatility
Smart Overlap Detection - Prevents cluttered charts
Historical Zone Tracking - Maintains up to 50 zones
POI Central Lines - Pinpoint entry/exit levels
Auto-Extension - Zones extend to current price
Auto-Cleanup - Removes broken zones automatically
📦 Fair Value Gap (FVG) Detection
Bullish & Bearish FVGs - Institutional inefficiencies
Consequent Encroachment (CE) - 50% fill levels
Auto-Delete Filled Gaps - Keeps charts clean
Customizable Lookback - 1-30 days of history
Color-Coded Zones - Easy visual identification
CE Line Styles - Dotted, Dashed, or Solid
🚀 Enhanced PVSRA Volume Analysis
This is one of the most powerful features:
200% Volume Candles - Extreme institutional activity (Lime/Red)
150% Volume Candles - High institutional interest (Blue/Fuchsia)
Volume Climax Detection - Major reversal signals with 2.5x+ volume
Exhaustion Signals - Identifies buying/selling exhaustion with high accuracy
Enhanced Volume Divergence - NEW! High-quality reversal detection
Price makes lower low, Volume makes higher low = Bullish Divergence
Price makes higher high, Volume makes lower high = Bearish Divergence
Strict trend context filtering for accuracy
Rising/Falling Volume Patterns - Momentum confirmation (allows 1 exception in 3 bars)
Volume Spread Analysis - Price range × Volume for true strength
Body/Wick Ratio Analysis - Candle structure quality
ATR Normalization - Adjusts for different market volatility
Volume Profile Indicators - 🔥 EXTREME, ⚡ VERY HIGH, 📈 HIGH, ✅ ABOVE AVG
💧 Advanced Liquidity System
Smart money targets these levels:
Weekly High/Low Liquidity - Major institutional targets
Daily High/Low Liquidity - Intraday key levels
4H Session Liquidity - Short-term targets
Distance Indicators - Shows % distance from current price
Strength Indicators - Identifies high-probability sweeps
Swept Level Detection - Tracks executed liquidity grabs
Customizable Line Styles - Width, length, offset controls
Color-Coded Levels - Easy visual hierarchy
🎯 Master Bias System
Data-driven directional bias with 9-factor scoring:
Bull/Bear Bias Calculation - 0-100% scoring system
Multi-Timeframe Analysis - Daily, 4H, 1H trend alignment
Kill Zone Integration - London (2-5 AM) & NY (8-11 AM) sessions
EMA Alignment Factor - Trend confirmation
Volume Confirmation - Adds 5% when volume supports direction
Range Filter Integration - Adds 10% for trending markets
Session Context - Above/below session midpoint scoring
Bias Strength Rating - STRONG (>75%), MODERATE (60-75%), WEAK (<60%)
Real-Time Updates - Dynamic recalculation
📈 Premium & Discount Zones
Fibonacci-based institutional pricing:
Extreme Premium - Above 78.6% (Overvalued)
Premium Zone - 61.8% - 78.6% (Expensive)
Equilibrium - 38.2% - 61.8% (Fair Value)
Discount Zone - 21.4% - 38.2% (Cheap)
Extreme Discount - Below 21.4% (Undervalued)
Visual Zone Boxes - Color-coded for instant recognition
200-500 Bar Lookback - Customizable range calculation
🔄 Range Filter
Advanced trend detection:
Smoothed Range Calculation - Eliminates noise
Dynamic Support/Resistance - Auto-adjusting levels
Upward/Downward Counters - Measures trend strength
Color-Coded Line - Green (uptrend), Red (downtrend), Orange (ranging)
Adjustable Period - 1-200 bars
Multiplier Control - Fine-tune sensitivity (0.1-10.0)
🌊 Liquidity Zones (Vector Zones)
PVSRA-based horizontal liquidity:
Above Price Zones - Resistance clusters
Below Price Zones - Support clusters
Maximum 500 Zones - Professional-grade capacity
Body/Wick Definition - Choose zone boundaries
Auto-Cleanup - Removes cleared zones
Color Override - Custom styling options
Transparency Control - 0-100% opacity
📊 EMA System
Triple EMA trend confirmation:
Fast EMA (9) - Green line - Immediate trend
Medium EMA (21) - Blue line - Short-term trend
Slow EMA (50) - Red line - Major trend
EMA Alignment Detection - Bull/Bear stack confirmation
Dashboard Integration - Status: 📈 BULL ALIGN, 📉 BEAR ALIGN, 🔀 MIXED
Adjustable Lengths - Customize all three EMAs (5-200)
🎯 IDM (Institutional Decision Maker) Levels
Key institutional price levels:
Latest IDM Detection - 20-bar pivot lookback
Extended Lines - Projects 50 bars into future
Customizable Styles - Solid, Dashed, or Dotted
Line Width Control - 1-5 pixels
Color Selection - Match your chart theme
Price Label - Shows exact level with tick precision
📱 Professional Dashboard
Real-time market intelligence panel:
🎯 SIGNAL - 🟢 LONG, 🔴 SHORT, ⏳ WAIT, 🛑 NO TRADE
🎲 BIAS - Bull/Bear with STRONG/MODERATE/WEAK rating
📊 BULL/BEAR Scores - 0-100% percentage display
💎 ZONE - Current premium/discount location
🕐 KZ - Kill Zone status (🇬🇧 LONDON/🇺🇸 NY/⏸️ OFF)
🏗️ STRUCT - Market structure status (BULLISH/BEARISH/NEUTRAL)
⚡ EVENT - Last structure event (MSS/BOS)
⚡ INT - Internal structure trend
🎯 IDM - Latest institutional level
📊 EMA - EMA alignment status
🔄 RF - Range Filter direction
📊 PVSRA - Volume status (🚀 CLIMAX/📈 RISING/📉 FALLING)
📅 MTF - Multi-timeframe alignment (✅ FULL/⚠️ PARTIAL/❌ CONFLICT)
💪 CONF - Confidence score (0-100%)
📊 VOL - Volume ratio (e.g., 1.8x average)
Advanced Metrics (Toggle On/Off):
📏 RSI - Value + Status (OVERBOUGHT/STRONG/NEUTRAL/WEAK/OVERSOLD)
📈 MACD - Value + Direction (BULL/BEAR)
🌪️ VOL - Volatility state (⚠️ EXTREME/🔥 HIGH/📊 NORMAL/😴 LOW)
🔊 VOL PROF - Volume profile ratio
⏱️ TF - Current timeframe
Dashboard Customization:
4 Positions - Top Left, Top Right, Bottom Left, Bottom Right
3 Sizes - Small, Normal, Large
2 Modes - Compact (MTF combined) or Full (separate rows)
Professional Design - Dark theme with color-coded cells
🎮 TRADING SIGNALS & SETUP SCORING🟢 LONG Setup Requirements (9-Factor Confidence Score)
MTF Alignment - Daily/4H/1H/Structure all bullish (+2 points for full, +1 for partial)
Volume Confirmation - Above 1.2x average (+1 point)
Structure Event - MSS or BOS bullish (+2 points)
EMA Alignment - 9 > 21 > 50 (+1 point)
Kill Zone Active - London/NY + Bull bias >75% (+2 points)
Bias Match - Master bias matches structure trend (+1 point)
Confidence Threshold - >60% minimum for signal
🔴 SHORT Setup Requirements
Same 9-factor system but inverted for bearish conditions.💪 Confidence Levels
75-100% - ⭐ HIGH CONFIDENCE (Strong setup, all factors aligned)
50-74% - ⚠️ MODERATE (Good setup, partial alignment)
0-49% - ❌ LOW CONFIDENCE (Wait for better setup)
🎯 Signal Output
🟢 LONG - Bull bias + Bullish structure + >60% confidence
🔴 SHORT - Bear bias + Bearish structure + >60% confidence
⏳ WAIT LONG - Bull bias but low confidence
⏳ WAIT SHORT - Bear bias but low confidence
🛑 NO TRADE - Neutral bias or conflicting signals
🔔 COMPREHENSIVE ALERT SYSTEM (12 Alerts)Structure Alerts
⚡ MSS Bullish - Major bullish reversal
⚡ MSS Bearish - Major bearish reversal
📈 BOS Bullish - Bullish continuation
📉 BOS Bearish - Bearish continuation
⚠️ CHoCH Bullish - Internal bullish shift
⚠️ CHoCH Bearish - Internal bearish shift
Bias & Confidence Alerts
🟢 Bias Shift Bull - Master bias turns bullish
🔴 Bias Shift Bear - Master bias turns bearish
⭐ High Confidence - Setup reaches 75%+ confidence
Volume Alerts (High Probability)
🚀 Volume Climax Buy - Extreme bullish volume spike
💥 Volume Climax Sell - Extreme bearish volume spike
⚠️ Selling Exhaustion - Potential bullish reversal
⚠️ Buying Exhaustion - Potential bearish reversal
📊 Bullish Volume Divergence - High-quality bullish reversal signal
📊 Bearish Volume Divergence - High-quality bearish reversal signal
🎨 EXTENSIVE CUSTOMIZATIONColors & Styling
✅ All colors customizable for every component
✅ Supply/Demand zone colors + outlines
✅ FVG colors (bullish/bearish)
✅ PVSRA candle colors (6 types)
✅ Liquidity level colors (Weekly/Daily/4H/Swept)
✅ Structure line colors
✅ Premium/Equilibrium/Discount zone colorsDisplay Controls
✅ Toggle each feature on/off independently
✅ Adjustable sensitivities (Structure: 5-30, Internal: 3-15)
✅ Label size controls (Tiny/Small/Normal)
✅ Line width adjustments (1-5 pixels)
✅ Transparency controls (0-100%)
✅ Extension lengths (20-100 bars)
✅ Lookback periods (50-500 bars)Volume Settings
✅ PVSRA symbol override (trade one asset, analyze another)
✅ Climax threshold (2.0-5.0x)
✅ Rising volume bar count (2-5 bars)
✅ Divergence filters (Strict/Lenient)
✅ Divergence minimum bars (10-30)
✅ Volume threshold multiplier (1.0-2.0x)Dashboard Settings
✅ Position (4 corners)
✅ Size (Small/Normal/Large)
✅ Compact/Full mode
✅ Show/Hide advanced metrics
✅ Show/Hide EMA status💡 BEST PRACTICES & USAGE TIPS⏰ Optimal Timeframes
Scalping - 1m, 5m (Use Kill Zones, Volume Climax, FVG)
Day Trading - 5m, 15m, 1H (Use Structure, Liquidity, Bias)
Swing Trading - 4H, Daily (Use MTF, Premium/Discount, Structure)
Position Trading - Daily, Weekly (Use major structure, liquidity)
🎯 Asset Classes
✅ Forex - All pairs (especially majors during Kill Zones)
✅ Crypto - BTC, ETH, altcoins (24/7 liquidity)
✅ Stocks - All stocks and indices (use session times)
✅ Commodities - Gold, Silver, Oil (high volume periods)
✅ Indices - S&P 500, NASDAQ, DAX, etc.🔥 High-Probability Setups
The Perfect Storm
MSS in direction of daily trend
Kill Zone active
Volume climax
Confidence >75%
Price in discount (long) or premium (short)
Volume Divergence Play
Enhanced volume divergence signal
CHoCH confirms direction change
Price near liquidity level
FVG forms for entry
Liquidity Sweep
Price sweeps weekly/daily high/low
Immediate rejection (selling/buying exhaustion)
Structure shift (MSS)
Volume confirmation
Structure Retest
BOS breaks structure
Price returns to POI/FVG
Volume confirms (>1.2x)
Kill Zone active
📊 Multi-Timeframe Analysis
Higher Timeframe - Identify trend & structure (Daily/4H)
Trading Timeframe - Find entries (15m/1H)
Lower Timeframe - Precise entries (1m/5m)
Look for MTF alignment - Dashboard shows ✅ FULL or ⚠️ PARTIAL
⚠️ Risk Management
Always use stop-loss (below/above recent structure)
Position size: 1-2% risk per trade
Target liquidity levels for take profit
Use supply/demand zones for SL placement
Watch for exhaustion signals near targets
First FVG After 9:30 AM ET + Opening Range (1min) OK# FVG + Opening Range Breakout Indicator (1M)
## Overview
A professional trading indicator designed for 1-minute candlestick charts that identifies Fair Value Gaps (FVG) and Opening Range breakout patterns with precise entry signals for institutional trading strategies.
## Key Features
### 1. Fair Value Gap Detection (FVG)
- **Automatic Detection**: Identifies the first FVG after 9:30 AM ET
- **Support for Both Types**:
- **Bearish FVG**: Gap formed when candle 3 high is below candle 1 low (downward gap)
- **Bullish FVG**: Gap formed when candle 3 low is above candle 1 high (upward gap)
- **Visual Representation**: Blue box marking the exact gap zone
- **Active Period**: 9:30 AM - 2:00 PM ET only
### 2. FVG Entry Signals
- **SELL Signal (Bearish FVG)**: Generated when price enters and respects the gap
- Triggers when close stays within the FVG range
- Multiple signals allowed on retests
- Position label placed above bearish candles
- **BUY Signal (Bullish FVG)**: Generated when price breaks above FVG top
- Triggers when close breaks above fvgHigh
- Allows multiple signals on subsequent retests
- Position label placed below bullish candles
### 3. Opening Range (9:30 - 10:00 AM ET)
- **Three Key Levels**:
- **OR High** (Red Dashed Line): Highest point during opening 30 minutes
- **OR Low** (Green Dashed Line): Lowest point during opening 30 minutes
- **OR Mid** (Orange Dotted Line): Midpoint between High and Low
- **Lines Extend**: 100 bars into the session for reference
### 4. Opening Range Breakout Signals
Detects breakouts from the opening range with a refined entry strategy:
- **BUY Signal (OR High Breakout)**:
1. Price breaks ABOVE OR High (high1m > orHigh)
2. Waits minimum 5 candles
3. Price retests OR High level (close ≤ orHigh)
4. Price rebounds UPWARD (close > orHigh)
5. Signal generated with label "BUY"
- **SELL Signal (OR Low Breakout)**:
1. Price breaks BELOW OR Low (low1m < orLow)
2. Waits minimum 5 candles
3. Price retests OR Low level (close ≥ orLow)
4. Price rebounds DOWNWARD (close < orLow)
5. Signal generated with label "SELL"
### 5. Time Filters
- **Session Start**: 9:30 AM ET (Market Open)
- **Session End**: 2:00 PM ET (14:00)
- **All signals only generated within this window**
- **Daily Reset**: All data clears at market open each trading day
## Settings
| Parameter | Default | Description |
|-----------|---------|-------------|
| FVG Box Color | Blue (80% transparent) | Visual color of FVG zone |
| FVG Border Color | Blue | Border line color |
| Border Width | 1 | Thickness of FVG box border |
| Box Extension Right | 20 bars | How far right the box extends |
| Box Extension Left | 5 bars | How far left the box extends |
| Minimum FVG Size | 5.0 points | Minimum gap size to display |
| FVG Respect Tolerance | 2.0 points | Price tolerance for FVG respect |
| Show FVG Labels | True | Display "First FVG" label |
| Show Signals | True | Display SELL/BUY entry signals |
| Show Opening Range | True | Display OR High/Low/Mid lines |
| OR High Color | Red (80% transparent) | OR High line color |
| OR Low Color | Green (80% transparent) | OR Low line color |
| OR Mid Color | Orange (80% transparent) | OR Mid line color |
| OR Line Width | 2 | Thickness of OR lines |
| OR Line Length | 100 bars | Extension of OR lines |
| Timezone Offset | -5 (EST) | UTC offset (-4 for EDT) |
## Trading Strategy Integration
### Institutional Trading Approach
This indicator combines two professional trading methodologies:
1. **Fair Value Gap Trading**: Exploits market inefficiencies (gaps) that institutional traders fill during the day
2. **Opening Range Breakout**: Captures momentum moves that break out of the morning consolidation
### Optimal Use Cases
- **Asian Session into London Open**: Monitor FVG formation
- **Pre-Market Gap Analysis**: Plan breakout trades
- **Early Morning Momentum**: Catch OR breakouts with precision entries
- **Intraday Scalping**: Use signals for quick risk/reward entries
### Risk Management
- Entry signals clearly marked with labels
- Trailing stops can be set at OR levels
- Multiple timeframe confirmation recommended
- Always use stop losses below/above key levels
## Signal Interpretation
| Signal | Type | Action | Location |
|--------|------|--------|----------|
| SELL | FVG Bearish | Short Entry | Above bearish candle |
| BUY | FVG Bullish | Long Entry | Below bullish candle |
| BUY | OR High Breakout | Long Entry | Above OR High |
| SELL | OR Low Breakout | Short Entry | Below OR Low |
## Color Scheme
- **Red**: Bearish direction (SELL signals, OR High)
- **Green**: Bullish direction (BUY signals, OR Low)
- **Orange**: Neutral reference (OR Mid point)
- **Blue**: FVG zones (gaps)
- **Yellow**: Background during FVG search phase
## Notes
- Indicator works exclusively on 1-minute charts
- Requires market open data (9:30 AM ET)
- All times referenced to Eastern Time (ET)
- Historical data should include full trading day for accuracy
- Use with volume and momentum indicators for confirmation
---
**Designed for professional traders using institutional-grade trading methodologies**
EMA Market Structure [BOSWaves]// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// Join our channel for more free tools: t.me
// This Pine Script® code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © BOSWaves
//@version=6
indicator("EMA Market Structure ", overlay=true, max_lines_count=500, max_labels_count=500, max_boxes_count=500)
// ============================================================================
// Inputs
// ============================================================================
// Ema settings
emaLength = input.int(50, "EMA Length", minval=1, tooltip="Period for the Exponential Moving Average calculation")
emaSource = input.source(close, "EMA Source", tooltip="Price source for EMA calculation (close, open, high, low, etc.)")
colorSmooth = input.int(3, "Color Smoothing", minval=1, group="EMA Style", tooltip="Smoothing period for the EMA color gradient transition")
showEmaGlow = input.bool(true, "EMA Glow Effect", group="EMA Style", tooltip="Display glowing halo effect around the EMA line for enhanced visibility")
// Structure settings
swingLength = input.int(5, "Swing Detection Length", minval=2, group="Structure", tooltip="Number of bars to the left and right to identify swing highs and lows")
swingCooloff = input.int(10, "Swing Marker Cooloff (Bars)", minval=1, group="Structure", tooltip="Minimum number of bars between consecutive swing point markers to reduce visual clutter")
showSwingLines = input.bool(true, "Show Structure Lines", group="Structure", tooltip="Display lines connecting swing highs and swing lows")
showSwingZones = input.bool(true, "Show Structure Zones", group="Structure", tooltip="Display shaded zones between consecutive swing points")
showBOS = input.bool(true, "Show Break of Structure", group="Structure", tooltip="Display BOS labels and stop loss levels when price breaks structure")
bosCooloff = input.int(15, "BOS Cooloff (Bars)", minval=5, maxval=50, group="Structure", tooltip="Minimum number of bars required between consecutive BOS signals to avoid signal spam")
slExtension = input.int(20, "SL Line Extension (Bars)", minval=5, maxval=100, group="Structure", tooltip="Number of bars to extend the stop loss line into the future for visibility")
slBuffer = input.float(0.1, "SL Buffer %", minval=0, maxval=2, step=0.05, group="Structure", tooltip="Additional buffer percentage to add to stop loss level for safety margin")
// Background settings
showBG = input.bool(true, "Show Trend Background", group="EMA Style", tooltip="Display background color based on EMA trend direction")
bgBullColor = input.color(color.new(#00ff88, 96), "Bullish BG", group="EMA Style", tooltip="Background color when EMA is in bullish trend")
bgBearColor = input.color(color.new(#ff3366, 96), "Bearish BG", group="EMA Style", tooltip="Background color when EMA is in bearish trend")
// ============================================================================
// Ema trend filter with gradient color
// ============================================================================
ema = ta.ema(emaSource, emaLength)
// Calculate EMA acceleration for gradient color
emaChange = ema - ema
emaAccel = ta.ema(emaChange, colorSmooth)
// Manual tanh function for normalization
tanh(x) =>
ex = math.exp(2 * x)
(ex - 1) / (ex + 1)
accelNorm = tanh(emaAccel / (ta.atr(14) * 0.01))
// Map normalized accel to hue (60 = green, 120 = yellow/red)
hueRaw = 60 + accelNorm * 60
hue = na(hueRaw ) ? hueRaw : (hueRaw + hueRaw ) / 2
sat = 1.0
val = 1.0
// HSV to RGB conversion
hsv_to_rgb(h, s, v) =>
c = v * s
x = c * (1 - math.abs((h / 60) % 2 - 1))
m = v - c
r = 0.0
g = 0.0
b = 0.0
if (h < 60)
r := c
g := x
b := 0
else if (h < 120)
r := x
g := c
b := 0
else if (h < 180)
r := 0
g := c
b := x
else if (h < 240)
r := 0
g := x
b := c
else if (h < 300)
r := x
g := 0
b := c
else
r := c
g := 0
b := x
color.rgb(int((r + m) * 255), int((g + m) * 255), int((b + m) * 255))
emaColor = hsv_to_rgb(hue, sat, val)
emaTrend = ema > ema ? 1 : ema < ema ? -1 : 0
// EMA with enhanced glow effect using fills
glowOffset = ta.atr(14) * 0.25
emaGlow8 = plot(showEmaGlow ? ema + glowOffset * 8 : na, "EMA Glow 8", color.new(emaColor, 100), 1, display=display.none)
emaGlow7 = plot(showEmaGlow ? ema + glowOffset * 7 : na, "EMA Glow 7", color.new(emaColor, 100), 1, display=display.none)
emaGlow6 = plot(showEmaGlow ? ema + glowOffset * 6 : na, "EMA Glow 6", color.new(emaColor, 100), 1, display=display.none)
emaGlow5 = plot(showEmaGlow ? ema + glowOffset * 5 : na, "EMA Glow 5", color.new(emaColor, 100), 1, display=display.none)
emaGlow4 = plot(showEmaGlow ? ema + glowOffset * 4 : na, "EMA Glow 4", color.new(emaColor, 100), 1, display=display.none)
emaGlow3 = plot(showEmaGlow ? ema + glowOffset * 3 : na, "EMA Glow 3", color.new(emaColor, 100), 1, display=display.none)
emaGlow2 = plot(showEmaGlow ? ema + glowOffset * 2 : na, "EMA Glow 2", color.new(emaColor, 100), 1, display=display.none)
emaGlow1 = plot(showEmaGlow ? ema + glowOffset * 1 : na, "EMA Glow 1", color.new(emaColor, 100), 1, display=display.none)
emaCore = plot(ema, "EMA Core", emaColor, 3)
emaGlow1b = plot(showEmaGlow ? ema - glowOffset * 1 : na, "EMA Glow 1b", color.new(emaColor, 100), 1, display=display.none)
emaGlow2b = plot(showEmaGlow ? ema - glowOffset * 2 : na, "EMA Glow 2b", color.new(emaColor, 100), 1, display=display.none)
emaGlow3b = plot(showEmaGlow ? ema - glowOffset * 3 : na, "EMA Glow 3b", color.new(emaColor, 100), 1, display=display.none)
emaGlow4b = plot(showEmaGlow ? ema - glowOffset * 4 : na, "EMA Glow 4b", color.new(emaColor, 100), 1, display=display.none)
emaGlow5b = plot(showEmaGlow ? ema - glowOffset * 5 : na, "EMA Glow 5b", color.new(emaColor, 100), 1, display=display.none)
emaGlow6b = plot(showEmaGlow ? ema - glowOffset * 6 : na, "EMA Glow 6b", color.new(emaColor, 100), 1, display=display.none)
emaGlow7b = plot(showEmaGlow ? ema - glowOffset * 7 : na, "EMA Glow 7b", color.new(emaColor, 100), 1, display=display.none)
emaGlow8b = plot(showEmaGlow ? ema - glowOffset * 8 : na, "EMA Glow 8b", color.new(emaColor, 100), 1, display=display.none)
// Create glow layers with fills (from outermost to innermost)
fill(emaGlow8, emaGlow7, showEmaGlow ? color.new(emaColor, 97) : na)
fill(emaGlow7, emaGlow6, showEmaGlow ? color.new(emaColor, 95) : na)
fill(emaGlow6, emaGlow5, showEmaGlow ? color.new(emaColor, 93) : na)
fill(emaGlow5, emaGlow4, showEmaGlow ? color.new(emaColor, 90) : na)
fill(emaGlow4, emaGlow3, showEmaGlow ? color.new(emaColor, 87) : na)
fill(emaGlow3, emaGlow2, showEmaGlow ? color.new(emaColor, 83) : na)
fill(emaGlow2, emaGlow1, showEmaGlow ? color.new(emaColor, 78) : na)
fill(emaGlow1, emaCore, showEmaGlow ? color.new(emaColor, 70) : na)
fill(emaCore, emaGlow1b, showEmaGlow ? color.new(emaColor, 70) : na)
fill(emaGlow1b, emaGlow2b, showEmaGlow ? color.new(emaColor, 78) : na)
fill(emaGlow2b, emaGlow3b, showEmaGlow ? color.new(emaColor, 83) : na)
fill(emaGlow3b, emaGlow4b, showEmaGlow ? color.new(emaColor, 87) : na)
fill(emaGlow4b, emaGlow5b, showEmaGlow ? color.new(emaColor, 90) : na)
fill(emaGlow5b, emaGlow6b, showEmaGlow ? color.new(emaColor, 93) : na)
fill(emaGlow6b, emaGlow7b, showEmaGlow ? color.new(emaColor, 95) : na)
fill(emaGlow7b, emaGlow8b, showEmaGlow ? color.new(emaColor, 97) : na)
// ============================================================================
// Swing high/low detection
// ============================================================================
// Swing High/Low Detection
swingHigh = ta.pivothigh(high, swingLength, swingLength)
swingLow = ta.pivotlow(low, swingLength, swingLength)
// Cooloff tracking
var int lastSwingHighPlot = na
var int lastSwingLowPlot = na
// Check if cooloff period has passed
canPlotHigh = na(lastSwingHighPlot) or (bar_index - lastSwingHighPlot) >= swingCooloff
canPlotLow = na(lastSwingLowPlot) or (bar_index - lastSwingLowPlot) >= swingCooloff
// Store swing points
var float lastSwingHigh = na
var int lastSwingHighBar = na
var float lastSwingLow = na
var int lastSwingLowBar = na
// Track previous swing for BOS detection
var float prevSwingHigh = na
var float prevSwingLow = na
// Update swing highs with cooloff
if not na(swingHigh) and canPlotHigh
prevSwingHigh := lastSwingHigh
lastSwingHigh := swingHigh
lastSwingHighBar := bar_index - swingLength
lastSwingHighPlot := bar_index
// Update swing lows with cooloff
if not na(swingLow) and canPlotLow
prevSwingLow := lastSwingLow
lastSwingLow := swingLow
lastSwingLowBar := bar_index - swingLength
lastSwingLowPlot := bar_index
// ============================================================================
// Structure lines & zones
// ============================================================================
var line swingHighLine = na
var line swingLowLine = na
var box swingHighZone = na
var box swingLowZone = na
if showSwingLines
// Draw line connecting swing highs with zones
if not na(swingHigh) and canPlotHigh and not na(prevSwingHigh)
if not na(lastSwingHighBar)
line.delete(swingHighLine)
swingHighLine := line.new(lastSwingHighBar, lastSwingHigh, bar_index - swingLength, swingHigh, color=color.new(#ff3366, 0), width=2, style=line.style_solid)
// Create resistance zone
if showSwingZones
box.delete(swingHighZone)
zoneTop = math.max(lastSwingHigh, swingHigh)
zoneBottom = math.min(lastSwingHigh, swingHigh)
swingHighZone := box.new(lastSwingHighBar, zoneTop, bar_index - swingLength, zoneBottom, border_color=color.new(#ff3366, 80), bgcolor=color.new(#ff3366, 92))
// Draw line connecting swing lows with zones
if not na(swingLow) and canPlotLow and not na(prevSwingLow)
if not na(lastSwingLowBar)
line.delete(swingLowLine)
swingLowLine := line.new(lastSwingLowBar, lastSwingLow, bar_index - swingLength, swingLow, color=color.new(#00ff88, 0), width=2, style=line.style_solid)
// Create support zone
if showSwingZones
box.delete(swingLowZone)
zoneTop = math.max(lastSwingLow, swingLow)
zoneBottom = math.min(lastSwingLow, swingLow)
swingLowZone := box.new(lastSwingLowBar, zoneTop, bar_index - swingLength, zoneBottom, border_color=color.new(#00ff88, 80), bgcolor=color.new(#00ff88, 92))
// ============================================================================
// Break of structure (bos)
// ============================================================================
// Track last BOS bar for cooloff
var int lastBullishBOS = na
var int lastBearishBOS = na
// Check if cooloff period has passed
canPlotBullishBOS = na(lastBullishBOS) or (bar_index - lastBullishBOS) >= bosCooloff
canPlotBearishBOS = na(lastBearishBOS) or (bar_index - lastBearishBOS) >= bosCooloff
// Bullish BOS: Price breaks above previous swing high while EMA is bullish
bullishBOS = showBOS and canPlotBullishBOS and emaTrend == 1 and not na(prevSwingHigh) and close > prevSwingHigh and close <= prevSwingHigh
// Bearish BOS: Price breaks below previous swing low while EMA is bearish
bearishBOS = showBOS and canPlotBearishBOS and emaTrend == -1 and not na(prevSwingLow) and close < prevSwingLow and close >= prevSwingLow
// Update last BOS bars
if bullishBOS
lastBullishBOS := bar_index
if bearishBOS
lastBearishBOS := bar_index
// Plot BOS with enhanced visuals and SL at the candle wick
if bullishBOS
// Calculate SL at the low of the current candle (bottom of wick) with buffer
slLevel = low * (1 - slBuffer/100)
// BOS Label with shadow effect
label.new(bar_index, low, "BOS", style=label.style_label_up, color=color.new(#00ff88, 0), textcolor=color.black, size=size.normal, tooltip="Bullish Break of Structure\nSL: " + str.tostring(slLevel))
// Main SL line at candle low
line.new(bar_index, slLevel, bar_index + slExtension, slLevel, color=color.new(#00ff88, 0), width=2, style=line.style_dashed, extend=extend.none)
// SL zone box for visual emphasis
box.new(bar_index, slLevel + (slLevel * 0.002), bar_index + slExtension, slLevel - (slLevel * 0.002), border_color=color.new(#00ff88, 60), bgcolor=color.new(#00ff88, 85))
// S/R label
label.new(bar_index + slExtension, slLevel, "S/R", style=label.style_label_left, color=color.new(#00ff88, 0), textcolor=color.black, size=size.tiny)
if bearishBOS
// Calculate SL at the high of the current candle (top of wick) with buffer
slLevel = high * (1 + slBuffer/100)
// BOS Label with shadow effect
label.new(bar_index, high, "BOS", style=label.style_label_down, color=color.new(#ff3366, 0), textcolor=color.white, size=size.normal, tooltip="Bearish Break of Structure\nSL: " + str.tostring(slLevel))
// Main SL line at candle high
line.new(bar_index, slLevel, bar_index + slExtension, slLevel, color=color.new(#ff3366, 0), width=2, style=line.style_dashed, extend=extend.none)
// SL zone box for visual emphasis
box.new(bar_index, slLevel + (slLevel * 0.002), bar_index + slExtension, slLevel - (slLevel * 0.002), border_color=color.new(#ff3366, 60), bgcolor=color.new(#ff3366, 85))
// S/R label
label.new(bar_index + slExtension, slLevel, "S/R", style=label.style_label_left, color=color.new(#ff3366, 0), textcolor=color.white, size=size.tiny)
// ============================================================================
// Dynamic background zones
// ============================================================================
bgcolor(showBG and emaTrend == 1 ? bgBullColor : showBG and emaTrend == -1 ? bgBearColor : na)
// ============================================================================
// Alerts
// ============================================================================
alertcondition(bullishBOS, "Bullish BOS", "Bullish Break of Structure detected!")
alertcondition(bearishBOS, "Bearish BOS", "Bearish Break of Structure detected!")
alertcondition(emaTrend == 1 and emaTrend != 1, "EMA Bullish", "EMA turned bullish")
alertcondition(emaTrend == -1 and emaTrend != -1, "EMA Bearish", "EMA turned bearish")
// ╔════════════════════════════════╗
// ║ Download at ║
// ╚════════════════════════════════╝
// ███████╗██╗███╗ ███╗██████╗ ██╗ ███████╗
// ██╔════╝██║████╗ ████║██╔══██╗██║ ██╔════╝
// ███████╗██║██╔████╔██║██████╔╝██║ █████╗
// ╚════██║██║██║╚██╔╝██║██╔═══╝ ██║ ██╔══╝
// ███████║██║██║ ╚═╝ ██║██║ ███████╗███████╗
// ╚══════╝╚═╝╚═╝ ╚═╝╚═╝ ╚══════╝╚══════╝
// ███████╗ ██████╗ ██████╗ ███████╗██╗ ██╗
// ██╔════╝██╔═══██╗██╔══██╗██╔════╝╚██╗██╔╝
// █████╗ ██║ ██║██████╔╝█████╗ ╚███╔╝
// ██╔══╝ ██║ ██║██╔══██╗██╔══╝ ██╔██╗
// ██║ ╚██████╔╝██║ ██║███████╗██╔╝ ██╗
// ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
// ████████╗ ██████╗ ██████╗ ██╗ ███████╗
// ╚══██╔══╝██╔═══██╗██╔═══██╗██║ ██╔════╝
// ██║ ██║ ██║██║ ██║██║ ███████╗
// ██║ ██║ ██║██║ ██║██║ ╚════██║
// ██║ ╚██████╔╝╚██████╔╝███████╗███████║
// ╚═╝ ╚═════╝ ╚═════╝ ╚══════╝╚══════╝
// ==========================================================================================
ACCDv3# ACCDv3 - Accumulation/Distribution MACD with Divergence Detection
## Overview
**ACCDv3** (Accumulation/Distribution MACD Version 3) is an advanced volume-weighted momentum indicator that combines the Accumulation/Distribution (A/D) line with MACD methodology and divergence detection. It helps identify trend strength, momentum shifts, and potential reversals by analyzing volume-weighted price movements.
## Key Features
- **Volume-Weighted MACD**: Applies MACD calculation to volume-weighted A/D values for earlier, more reliable signals
- **Divergence Detection**: Identifies when A/D trend diverges from MACD momentum
- **Volume Strength Filtering**: Distinguishes high-volume confirmations from low-volume noise
- **Color-Coded Histogram**: 4-color system showing momentum direction and volume strength
- **Real-Time Alerts**: Background colors and alert conditions for bullish/bearish divergences
## Components
### 1. Accumulation/Distribution (A/D) Line
The A/D line measures buying and selling pressure by comparing the close price to the trading range, weighted by volume:
```
A/D = Σ ((2 × Close - Low - High) / (High - Low)) × Volume
```
- **Rising A/D**: More accumulation (buying pressure)
- **Falling A/D**: More distribution (selling pressure)
- **Doji Handling**: When High = Low, contribution is zero (avoids division errors)
### 2. Volume-Weighted MACD
Instead of simple EMAs, the indicator weights A/D values by volume:
- **Fast Line** (default 12): `EMA(A/D × Volume, 12) / EMA(Volume, 12)`
- **Slow Line** (default 26): `EMA(A/D × Volume, 26) / EMA(Volume, 26)`
- **MACD Line**: Fast Line - Slow Line (green line)
- **Signal Line** (default 9): EMA or SMA of MACD (orange line)
- **Histogram**: MACD - Signal (color-coded columns)
This volume-weighting ensures that periods with higher volume have greater influence on the indicator values.
### 3. Histogram Color System
The histogram uses 4 distinct colors based on **direction** and **volume strength**:
| Condition | Color | Meaning |
|-----------|-------|---------|
| Rising + High Volume | **Dark Green** (#1B5E20) | Strong bullish momentum with volume confirmation |
| Rising + Low Volume | **Light Teal** (#26A69A) | Bullish momentum but weak volume (less reliable) |
| Falling + High Volume | **Dark Red** (#B71C1C) | Strong bearish momentum with volume confirmation |
| Falling + Low Volume | **Light Red/Pink** (#FFCDD2) | Bearish momentum but weak volume (less reliable) |
Additional shading:
- **Light Cyan** (#B2DFDB): Positive but not rising (momentum stalling)
- **Bright Red** (#FF5252): Negative and accelerating down
### 4. Divergence Detection
Divergence occurs when A/D trend and MACD momentum move in opposite directions:
#### Bullish Divergence (Green Background)
- **Condition**: A/D is trending up BUT MACD is negative and trending down
- **Interpretation**: Accumulation increasing while momentum appears weak
- **Signal**: Potential bullish reversal or continuation
- **Action**: Look for entry opportunities or hold long positions
#### Bearish Divergence (Red Background)
- **Condition**: A/D is trending down BUT MACD is positive and trending up
- **Interpretation**: Distribution increasing while momentum appears strong
- **Signal**: Potential bearish reversal or weakening uptrend
- **Action**: Consider exits, tighten stops, or prepare for reversal
## Parameters
| Parameter | Default | Range | Description |
|-----------|---------|-------|-------------|
| **Fast Length** | 12 | 1-50 | Period for fast EMA (shorter = more sensitive) |
| **Slow Length** | 26 | 1-100 | Period for slow EMA (longer = smoother) |
| **Signal Smoothing** | 9 | 1-50 | Period for signal line (MACD smoothing) |
| **Signal Line MA Type** | EMA | SMA/EMA | Moving average type for signal calculation |
| **Volume MA Length** | 20 | 5-100 | Period for volume average (strength filter) |
## Usage Guide
### Reading the Indicator
1. **MACD Lines (Green & Orange)**
- **Crossovers**: When green crosses above orange = bullish, below = bearish
- **Distance**: Wider gap = stronger momentum
- **Zero Line**: Above = bullish bias, below = bearish bias
2. **Histogram Colors**
- Focus on **dark colors** (dark green/red) for high-confidence signals
- Be cautious with **light colors** (teal/pink) - wait for volume confirmation
- Watch for **rising red bars** (V-bottom pattern) = potential bullish reversal
- Watch for **falling green bars** (Λ-top pattern) = potential bearish reversal
3. **Background Divergence Alerts**
- **Green background**: Bullish divergence - consider long entries
- **Red background**: Bearish divergence - consider exits or shorts
- Best used in combination with price action and support/resistance levels
### Trading Strategies
#### Trend Following
1. Wait for MACD to cross above zero line with dark green histogram
2. Enter long when histogram shows consecutive dark green bars
3. Exit when histogram turns light green or red appears
#### Divergence Trading
1. Wait for background divergence alert (green or red)
2. Confirm with price action (support/resistance, candlestick patterns)
3. Enter on next dark-colored histogram bar in divergence direction
4. Set stops beyond recent swing high/low
#### Volume Confirmation
1. Ignore signals during low-volume periods (light colors)
2. Take aggressive positions during high-volume confirmations (dark colors)
3. Use volume strength as position sizing guide (larger size on dark bars)
### Best Practices
✓ **Combine with price action**: Don't rely on indicator alone
✓ **Wait for dark colors**: High-volume bars are more reliable
✓ **Watch for divergences**: Early warning signs of reversals
✓ **Use multiple timeframes**: Confirm signals across 1m, 5m, 15m
✓ **Respect zero line**: Trading direction should align with MACD side
✗ **Don't chase light-colored signals**: Low volume = lower reliability
✗ **Don't ignore context**: Market structure and levels matter
✗ **Don't over-trade**: Wait for clear, high-volume setups
✗ **Don't ignore alerts**: Divergences are early warnings
## Technical Details
### Volume-Weighted Calculation Method
Traditional MACD uses simple price EMAs. ACCDv3 weights each A/D value by its corresponding volume:
```pine
// Volume-weighted fast EMA
close_vol_fast = ta.ema(ad × volume, fast_length)
vol_fast = ta.ema(volume, fast_length)
vw_ad_fast = close_vol_fast / vol_fast
// Same for slow EMA
close_vol_slow = ta.ema(ad × volume, slow_length)
vol_slow = ta.ema(volume, slow_length)
vw_ad_slow = close_vol_slow / vol_slow
// MACD is the difference
macd = vw_ad_fast - vw_ad_slow
```
This ensures high-volume periods have proportionally more impact on the indicator.
### Volume Strength Filter
Determines whether current volume is above or below average:
```pine
vol_avg = ta.sma(volume, vol_length)
vol_strength = volume > vol_avg
```
Used to select dark (high volume) vs light (low volume) histogram colors.
### Divergence Logic
```pine
// A/D trending up if above its 5-period SMA
ad_trend = ad > ta.sma(ad, 5)
// MACD trending up if above zero
macd_trend = macd > 0
// Divergence when trends oppose
divergence = ad_trend != macd_trend
// Specific conditions
bullish_divergence = ad_trend and not macd_trend and macd < 0
bearish_divergence = not ad_trend and macd_trend and macd > 0
```
## Alerts
The indicator includes built-in alert conditions:
- **Bullish Divergence**: "Bullish Divergence: A/D trending up but MACD trending down"
- **Bearish Divergence**: "Bearish Divergence: A/D trending down but MACD trending up"
To enable:
1. Click "Create Alert" button in TradingView
2. Select "ACCDv3" as condition
3. Choose "Bullish Divergence" or "Bearish Divergence"
4. Configure notification method (popup, email, webhook, etc.)
## Comparison with Standard MACD
| Feature | Standard MACD | ACCDv3 |
|---------|---------------|---------|
| **Input** | Close price | Accumulation/Distribution line |
| **Weighting** | Simple EMA | Volume-weighted EMA |
| **Divergence** | Price vs MACD | A/D vs MACD |
| **Volume Analysis** | None | Built-in strength filter |
| **Color System** | 2 colors (up/down) | 4+ colors (direction + volume) |
| **Leading/Lagging** | Lagging | More leading (volume-weighted) |
## Example Scenarios
### Scenario 1: Strong Bullish Signal
- **Chart**: MACD crosses above zero line
- **Histogram**: Dark green bars (#1B5E20) appearing
- **Volume**: Above 20-period average
- **Action**: Enter long, strong momentum with volume confirmation
### Scenario 2: Weak Bearish Signal
- **Chart**: MACD crosses below zero line
- **Histogram**: Light pink bars (#FFCDD2) appearing
- **Volume**: Below 20-period average
- **Action**: Avoid shorting, low volume = unreliable signal
### Scenario 3: Bullish Divergence Reversal
- **Chart**: Price making lower lows
- **Indicator**: A/D line trending up, MACD negative
- **Background**: Green shading appears
- **Histogram**: Transitions from red to dark green
- **Action**: Look for long entry on next dark green bar
### Scenario 4: V-Bottom Reversal
- **Chart**: Downtrend in place
- **Histogram**: Red bars start rising (becoming less negative)
- **Pattern**: Forms "V" shape at bottom
- **Confirmation**: Transitions to dark green bars
- **Action**: Bullish reversal signal, consider long entry
## Timeframe Recommendations
- **1-minute**: Scalping, very fast signals (noisy, use with caution)
- **5-minute**: Intraday momentum trading (recommended)
- **15-minute**: Swing entries, clearer trend signals
- **1-hour+**: Position trading, major trend identification
## Limitations
- **Requires volume data**: Will not work on instruments without volume
- **Lag during consolidation**: MACD is inherently trend-following
- **False signals in chop**: Sideways markets generate noise
- **Not a standalone system**: Should be combined with price action and risk management
## Version History
- **v3**: Removed traditional price MACD, using only volume-weighted A/D MACD with A/D divergence
- **v2**: Added A/D divergence detection, volume strength filtering, enhanced histogram colors
- **v1**: Basic MACD on A/D line with volume-weighted calculation
## Support & Further Reading
For questions, updates, or to report issues, refer to the main project documentation or contact the developer.
**Related Indicators in Suite:**
- **VMACDv3**: Volume-weighted MACD on price (not A/D)
- **RSIv2**: RSI with A/D divergence
- **DMI**: Directional Movement Index with A/D divergence
- **Elder Impulse**: Bar coloring system using volume-weighted MACD
---
*This indicator is for educational purposes. Always practice proper risk management and never risk more than you can afford to lose.*
BB/KC Squeeze Channels (v6)Technical Specification for the BB/KC Squeeze Volatility Indicator in Algorithmic Cryptocurrency Trading
I. Theoretical Foundations of Volatility Dynamics
The "Contraction-Expansion" Principle (Volatility Contraction/Expansion)
The fundamental analysis of market volatility dynamics relies on the principle popularized by John Bollinger: periods of low volatility are inevitably followed by periods of high volatility. This phenomenon, known as the cyclical nature of volatility, is the cornerstone of trading strategies based on range breakouts (Breakout Strategy). In the context of technical analysis, volatility contraction manifests as a consolidation phase where the trading range narrows, preceding a strong, directional price impulse.
The essence of volatility contraction lies in a phase of market equilibrium that is inherently unstable. Most often, this reflects the covert activities of large market participants who are either accumulating or distributing a significant volume of the asset. These actions occur within a narrow price corridor to avoid sharp price movements until the entire position is acquired. As a result, activity decreases, the range narrows, and the market accumulates "energy" for the subsequent large-scale expansion. For the cryptocurrency market, characterized by high impulsivity and a tendency toward sharp trending moves, accurately identifying the deep contraction phase becomes a powerful algorithmic predictor.
Identifying Prerequisites: Distinguishing Pre-Breakout Contraction
To build a reliable indicator, it is crucial to distinguish a true pre-breakout squeeze from other types of volatility reduction that do not lead to a strong impulse. Specifically, volatility, measured by the Average True Range (ATR), will always decline after the completion of a strong vertical movement, as the market enters a pullback or deceleration phase. Such a decline is post-impulse and does not necessarily signal an imminent breakout.
It is necessary to find signs of abnormally low volatility that occurs precisely in the consolidation phase. The optimal time to look for a Squeeze signal is the formation of a distinct sideways channel. In this phase, the middle line of the channel indicator (e.g., EMA or SMA) should be relatively horizontal. This confirms that the market is currently in a ranging state (absence of a strong current trend), not in a deceleration phase after a trend. Therefore, the Squeeze indicator algorithm must include a check for confirmed sideways movement (e.g., through analyzing the slope of the middle line or its statistical deviation from the horizontal over the last X periods). Only abnormally low volatility during a range can be classified as a high-confidence pre-breakout contraction.
II. Instrument Selection: Justification for the Composite BB/KC Squeeze Approach
For effective algorithmic determination of the extreme contraction phase, it is necessary to use an indicator that combines the advantages of the two most reliable methods for measuring volatility: Bollinger Bands and Keltner Channels.
Comparative Analysis of Volatility Indicators
| Indicator | Base Metric | Volatility Response | Primary Role in Squeeze |
|---|---|---|---|
| Bollinger Bands (BB) | Standard Deviation (SD) | Fast, Highly Sensitive | Contraction sensor, Early breakout signal |
| Keltner Channels (KC) | Average True Range (ATR) | Smooth, Noise Filtering | Defines stable range, Filters false signals |
Bollinger Bands (BB)
Bollinger Bands are based on the Standard Deviation (SD) of the price from a moving average. This statistical metric makes BB highly sensitive, as they quickly react to sudden changes in volatility. Due to this sensitivity, BB are ideal for early registration of a contraction and for generating the breakout signal. However, their high sensitivity is also a drawback, as it can lead to false signals and premature expansion during market noise.
Keltner Channels (KC)
Keltner Channels, in the modern version developed by Linda Raschke, use the Average True Range (ATR) to calculate the channel width. ATR represents the averaged true range of fluctuations, which provides a smoother and more stable measure of volatility. KC react to market changes slower than BB, but their smoothness allows for better filtering of false signals and determination of the true direction of movement. Unlike fixed-width price channels or percentage envelopes, which perform poorly in dynamic environments, BB and KC automatically adapt to market conditions.
The Squeeze Mechanism: Synergy of Instruments
The BB/KC Squeeze indicator uses the synergy of BB and KC to achieve maximum accuracy in identifying the accumulation phase.
The technical Squeeze condition (Squeeze ON) is defined when the fast and statistically-oriented Bollinger Bands (BB) are inside the wider and smoother Keltner Channels (KC). This state represents quantitative confirmation of extremely low volatility.
In standard settings, BB use a multiplier of 2.0 for Standard Deviation (SD), and KC use a multiplier of 1.5 for ATR. For the statistical width of BB (based on price deviation from the average) to narrow inside the width of KC (based on the averaged range), the current statistical deviation of the price must fall to abnormally low values relative to the historical average range of fluctuations. This is not just low volatility, but its extreme contraction, indicating maximum accumulation of potential energy before an impulse.
III. Quantitative Analysis: How Much, Why, and How Volatility Contracts
How Much: Mathematical Definition of the Degree of Contraction
The degree of volatility contraction before a breakout is measured through a strict mathematical condition that ensures the current volatility is significantly below its averaged historical value.
The Squeeze Condition (Squeeze ON) requires both of the following mathematical formulas to be true :
To understand how much the movement should contract, we must consider the channel width formulas:
* Bollinger Bands Width (\text{BB}_{\text{Width}}):
\text{KC}_{\text{Width}} = 2 \times (\text{ATR} \times 1.5) = 3.0 \times \text{ATR}$$
The Squeeze ON state means that \text{BB}_{\text{Width}} < \text{KC}_{\text{Width}}. This condition is equivalent to \text{SD} \times 4.0 < \text{ATR} \times 3.0. As a result, the current Standard Deviation (SD) must fall below 75% of the Average True Range (ATR) for the contraction to be registered. This requirement for SD to decrease to a level significantly below ATR is the criterion for identifying the deep market calm that serves as the energy base for the subsequent directional movement.
Why and How: Qualitative Signs
Volatility decreases because large market participants are slowly and covertly accumulating positions. They keep the price within a narrow range to fully acquire the necessary volume before allowing the price to impulsively exit consolidation. This creates a sideways movement phase, minimizing risks for the trader and enabling timely tracking of a bullish or bearish breakout.
To enhance the algorithm's reliability and prevent entry into false ranges, the following qualitative signs accompanying a true squeeze must be considered:
* Squeeze Duration: The longer the price remains in the Squeeze ON state, the more energy is accumulated. Experience suggests a minimum duration of 4–8 periods. Extended contraction periods (over 10–12 bars) often precede the strongest impulsive movements in the crypto market.
* Price Position: During the contraction phase, the price should remain close to the middle line (EMA/SMA). This confirms that the market is in equilibrium, and accumulation is occurring around the "fair" price of the current range.
* Momentum Context: The volatility indicator (BB/KC) determines when a move will happen, but not its direction. To predict the direction (prerequisite), a momentum component must be used (e.g., a histogram, as in the TTM Squeeze variant ). The appearance of positive momentum during the contraction, even without price movement, signals potential bullish strength, increasing the likelihood of an upward breakout.
Squeeze State Logic Table
| State | Mathematical Condition (BB vs KC) | Market Interpretation |
|---|---|---|
| Squeeze ON | (\text{BB}_{\text{Upper}} < \text{KC}_{\text{Upper}}) AND (\text{BB}_{\text{Lower}} > \text{KC}_{\text{Lower}}) | Extreme volatility contraction, accumulation phase, breakout pending. |
| Squeeze OFF | \text{BB}_{\text{Upper}} \ge \text{KC}_{\text{Upper}} OR \text{BB}_{\text{Lower}} \le \text{KC}_{\text{Lower}} | Normal volatility, trending movement, or unstable range. |
IV. Technical Specification: Step-by-Step Algorithm for the Squeeze Indicator (BB/KC)
This algorithm represents the sequence of steps required to code the indicator, which captures the contraction state and generates breakout signals.
1. Initialization and Calculation of Basic Values
* Define Period N: Determine the period N (recommended value N=20) for calculating the moving averages, ATR, and Standard Deviation (SD).
* Calculate True Range (TR): For each bar, calculate \text{TR} as the maximum value of three metrics: (High – Low), \text{Abs}(\text{High} - \text{Close}_{\text{prev}}), \text{Abs}(\text{Low} - \text{Close}_{\text{prev}}).
2. Calculation of Keltner Channel (KC) Components
* Calculate KC Middle Line (EMA): Calculate the Exponential Moving Average (EMA) of the closing price (\text{Close}) over period N.
* Calculate ATR: Calculate the Average True Range (ATR) as the moving average of \text{TR} over period N.
* Calculate KC Boundaries: Calculate the Upper and Lower KC lines, using the ATR multiplier Y (recommended Y=1.5 ):
* * 3. Calculation of Bollinger Band (BB) Components
* Calculate BB Middle Line (SMA): Calculate the Simple Moving Average (SMA) of the closing price (\text{Close}) over period N.
* Calculate SD: Calculate the Standard Deviation (SD) of the closing price over period N.
* Calculate BB Boundaries: Calculate the Upper and Lower BB, using the SD multiplier X (recommended X=2.0 ):
* * 4. Algorithm for Determining the "Squeeze" State
* Check Squeeze ON Condition: For the current bar, check if both conditions are met: \text{BB}_{\text{Upper}} < \text{KC}_{\text{Upper}} AND \text{BB}_{\text{Lower}} > \text{KC}_{\text{Lower}}.
* Assign State: IF both conditions in step 9 are true, THEN assign the variable \text{SqueezeState} the value \text{ON} (e.g., 1). ELSE assign the value \text{OFF} (e.g., 0).
5. Algorithm for Generating Breakout Signals
* Identify Trigger: Check if \text{SqueezeState} has changed from \text{ON} to \text{OFF} on the current bar. This signifies that volatility has expanded after the contraction period.
* Bullish Breakout Signal: IF \text{SqueezeState}_{\text{prev}} = \text{ON} AND \text{SqueezeState}_{\text{current}} = \text{OFF}, AND the closing price (\text{Close}) of the current bar is above \text{BB}_{\text{Upper}}, THEN generate a BUY (Breakout Long) signal.
* Bearish Breakout Signal: IF \text{SqueezeState}_{\text{prev}} = \tex (start_span) (end_span)t{ON} AND \text{SqueezeState}_{\text{current}} = \text{OFF}, AND the closing price (\text{Close}) of the current bar is below \text{BB}_{\text{Lower}}, THEN generate a SELL (Breakout Short) signal.
* Additional Momentum Filtering: To increase reliability, the breakout signal should be valid only IF the breakout occurs in the direction confirmed by a momentum indicator (e.g., if Momentum > 0 for a Bullish breakout, and Momentum < 0 for a Bearish breakout).
The Role of Momentum in the Algorithm
A key addition to the volatility indicator is the momentum component. Defining the Squeeze ON/OFF state helps understand the potential for movement, but not its direction. The momentum indicator (often implemented as a histogram, as in TTM Squeeze ) measures whether accumulation of buying or selling pressure occurs during the contraction phase. Therefore, the indicator must include a sub-component that measures this pressure. Using momentum in conjunction with the BB breakout ensures that entry occurs not just after volatility expansion, but after expansion in a confirmed direction, significantly reducing the number of false breakouts.
V. Parameters, Optimization, and Nuances for the Cryptocurrency Market
Adapting Standard Settings (20, 2.0, 1.5)
The standard parameters N=20, X_{\text{BB}}=2.0, and Y_{\text{KC}}=1.5 are designed for stock markets and provide a reliable starting point. However, the high volatility and dynamics of the cryptocurrency market require fine-tuning to optimize performance.
1. Optimization of Period N
Reducing the period N (e.g., to 18 or 14) on lower timeframes (1-hour and below) increases the indicator's sensitivity to local, fast contractions, which is useful for scalping. However, this may also generate more signals, including false ones. For medium-term trading strategies (4h, Daily), a period of N=20 or N=21 provides an optimal balance between sensitivity and noise filtering.
2. Optimization of Multiplier Y_{\text{KC}}
The Keltner Channel multiplier (Y) defaults to 1.5. KC are smoother and more stable due to the use of ATR. If backtesting shows the indicator generates too many false Squeeze ON signals, it may indicate that the KC channel is too narrow. In this case, a slight increase in multiplier Y (e.g., to 1.6 or 1.7) widens the KC. This requires an even more extreme drop in Standard Deviation for the BB to narrow inside the KC, thereby increasing the strictness and reliability of the Squeeze ON signal.
Importance of Timeframe Selection
While some indicators like KC and BB show higher effectiveness in trending conditions for trading off channel boundaries , the Squeeze Play strategy is fundamentally different. It deliberately seeks a range (volatility contraction) with the goal of catching the start of a new strong trend.
In the cryptocurrency market, false breakouts and market noise (chop) can be particularly intense on low timeframes. Therefore, for the Squeeze strategy, it is recommended to use timeframes where consolidation is cleanest: 4-hour, Daily, or Weekly charts for major crypto pairs like BTC/USD or ETH/USD. On lower timeframes, multi-timeframe confirmation must be implemented, for example, using a trend filter from a higher timeframe.
VI. Strategic Application of Squeeze Play and Filtering
Using Momentum for Direction Determination
As noted, the volatility indicator (BB/KC) is not a directional indicator. The squeeze function (Squeeze ON) only identifies a high probability of a strong movement. Therefore, successful trading requires the integration of Momentum.
The breakout should be used as a trigger, but the direction must be confirmed by Momentum. For example, a BUY signal should only be generated if two conditions are met:
* Exit from the Squeeze ON state and the closing price breaking above the upper BB (\text{Close} > \text{BB}_{\text{Upper}}).
* The momentum indicator confirms upward pressure (Momentum value is positive).
This approach prevents entries into false breakouts where volatility expands but not in the direction of the accumulated market pressure.
Risk and Position Management
Since the Keltner Channel is based on ATR, which is a dynamic measure of volatility , ATR should be used for setting the Stop-Loss (SL) in the algorithmic strategy.
* Stop-Loss (SL) Setting: It is recommended to set the SL at a level determined by 1 \times \text{ATR} below the middle line (EMA/SMA) or beyond the KC boundary opposite the breakout. Using ATR ensures that the SL dynamically adapts to the current volatility, avoiding overly tight stops during periods of normal range.
* Take-Profit (TP) Setting: Since the goal of Squeeze Play is to catch a strong directional movement, the take-profit can be set based on a fixed Risk/Reward ratio (e.g., 2:1 or 3:1) or based on the price exiting the KC boundaries. Breaking the KC often indicates an extreme price move and can serve as a point for partial or full profit taking.
Filtering Against False Signals in a Range
The main drawback of breakout trading is the high percentage of false signals in wide but non-directional ranges. Using the composite BB/KC Squeeze indicator effectively addresses this problem.
KC, being based on smoothed ATR, is less susceptible to short-term volatility spikes than BB. The Squeeze filter requires the sensitive BB to narrow inside the smoothed KC. This ensures that we enter only those breakouts that were preceded by a prolonged and abnormally low volatility phase. The breakout must be confirmed by the price breaking the BB after the Squeeze ON state ends, signaling a sustained volatility expansion rather than a brief price spike.
VII. Conclusion
The analysis confirms that the user's observation about the relationship between volatility contraction and subsequent strong movements is a fundamentally sound principle, the best implementation of which in the cryptocurrency market is achieved using the composite BB/KC Squeeze indicator.
This indicator provides a precise quantitative definition of "how much" volatility must contract (SD must fall below 75% of ATR) and includes the necessary qualitative prerequisites ("why and how" — consolidation, confirmed by momentum). The presented step-by-step algorithm provides the technical foundation for coding a highly effective tool that identifies accumulation phases and generates breakout signals, adapted to the dynamics of the crypto market. The inclusion of momentum-based filtering and proper risk management tied to ATR are key factors for transitioning from a pure indicator to a profitable trading strategy.
Техническая Спецификация Индикатора Волатильности BB/KC Squeeze для Алгоритмической Торговли Криптовалютами
I. Теоретические Основы Динамики Волатильности
Принцип "Сжатие-Расширение" (Volatility Contraction/Expansion)
Фундаментальный анализ динамики рыночной волатильности опирается на принцип, популяризированный Джоном Боллинджером: периоды низкой волатильности неизбежно сменяются периодами высокой волатильности. Это явление, известное как цикличность волатильности, является краеугольным камнем торговых стратегий, основанных на пробое диапазона (Breakout Strategy). В контексте технического анализа сжатие волатильности проявляется как фаза консолидации, в которой торговый диапазон сужается, предшествуя сильному, направленному ценовому импульсу.
Смысл контракции волатильности заключается в фазе рыночного равновесия, которое, однако, является неустойчивым. Чаще всего это отражает скрытую деятельность крупных участников, которые либо накапливают (аккумуляция), либо распределяют (дистрибуция) значительный объем актива. Эти действия происходят в узком ценовом коридоре, чтобы избежать резкого движения цены, пока позиция не будет полностью набрана. В результате активность падает, диапазон сужается, и рынок накапливает «энергию» для последующего масштабного расширения. Для криптовалютного рынка, который характеризуется высокой импульсивностью и склонностью к резким трендовым движениям, точная идентификация фазы глубокого сжатия становится мощным алгоритмическим предиктором.
Идентификация Предпосылок: Отличие Пред-пробойного Сжатия
Для построения надежного индикатора критически важно уметь отличать истинное пред-пробойное сжатие от других типов снижения волатильности, которые не ведут к сильному импульсу. В частности, волатильность, измеряемая, например, индикатором Average True Range (ATR), всегда будет снижаться после завершения сильного вертикального движения, поскольку рынок переходит в фазу отката или замедления. Такое снижение является пост-импульсным и не обязательно сигнализирует о скором пробое.
Требуется найти признаки аномально низкой волатильности, которая возникает именно в фазе консолидации. Оптимальный момент для поиска сигнала Сжатия — это возникновение четкого бокового канала. В этой фазе средняя линия канального индикатора (например, EMA или SMA) должна быть относительно горизонтальной. Это подтверждает, что рынок в данный момент находится в состоянии рейнджа (отсутствие сильного текущего тренда), а не в фазе замедления после тренда. Таким образом, в алгоритм индикатора Squeeze необходимо заложить проверку на подтверждение бокового движения (например, через анализ наклона средней линии или ее статистического отклонения от горизонтали за последние X периодов). Только аномально низкая волатильность в фазе рейнджа может быть квалифицирована как высоконадежное пред-пробойное сжатие.
II. Выбор Инструмента: Обоснование Композитного Подхода BB/KC Squeeze
Для эффективного алгоритмического определения фазы экстремального сжатия необходимо использовать индикатор, который комбинирует преимущества двух наиболее надежных методов измерения волатильности: Полос Боллинджера и Каналов Кельтнера.
Сравнительный Анализ Индикаторов Волатильности
Полосы Боллинджера (Bollinger Bands, BB)
Полосы Боллинджера основаны на Стандартном Отклонении (SD) цены от скользящей средней. Эта статистическая метрика делает BB высокочувствительными, поскольку они быстро реагируют на внезапные изменения волатильности. Благодаря этой чувствительности, BB идеально подходят для ранней регистрации начавшегося сжатия и для генерации сигнала пробоя. Однако их высокая чувствительность также является недостатком, так как она может приводить к ложным срабатываниям и преждевременному расширению в условиях рыночного шума.
Каналы Кельтнера (Keltner Channels, KC)
Каналы Кельтнера, в современной версии, разработанной Линдой Рашке, используют Average True Range (ATR) для расчета ширины канала. ATR представляет собой усредненный истинный диапазон колебаний, что обеспечивает более сглаженную и устойчивую меру волатильности. KC реагируют на изменения рынка медленнее, чем BB, но их плавность позволяет лучше фильтровать ложные сигналы и определять истинное направление движения. В отличие от ценовых каналов с фиксированной шириной или процентными конвертами, которые плохо работают в динамичных средах, BB и KC автоматически адаптируются к рыночным условиям.
Механизм Squeeze: Синергия Инструментов
Индикатор BB/KC Squeeze использует синергию BB и KC для достижения максимальной точности в идентификации фазы накопления.
Техническое условие Сжатия (Squeeze ON) определяется, когда быстрые и статистически ориентированные Полосы Боллинджера (BB) оказываются внутри более широких и сглаженных Каналов Кельтнера (KC). Это состояние представляет собой количественное подтверждение экстремально низкой волатильности.
В стандартных настройках BB используют множитель 2.0 от Стандартного Отклонения (SD), а KC используют множитель 1.5 от ATR. Для того чтобы статистическая ширина BB (основанная на отклонении цены от средней) сузилась внутрь ширины KC (основанной на усредненном диапазоне), текущее статистическое отклонение цены должно упасть до аномально низких значений по отношению к историческому среднему диапазону колебаний. Это не просто низкая волатильность, а ее экстремальное сокращение, указывающее на максимальное накопление потенциальной энергии перед импульсом.
Таблица Сравнения Ключевых Индикаторов Волатильности
| Индикатор | Базовая Метрика | Реакция на Волатильность | Основная Роль в Squeeze |
|---|---|---|---|
| Bollinger Bands (BB) | Стандартное Отклонение (SD) | Быстрая, Высокочувствительная | Датчик сжатия, Ранний сигнал пробоя |
| Keltner Channels (KC) | Average True Range (ATR) | Плавная, Фильтрация шума | Определение устойчивого диапазона, Фильтр ложных сигналов |
III. Количественный Анализ: На Сколько, Почему и Как Сокращается Волатильность
На Сколько: Математическое Определение Степени Сжатия
Степень сокращения волатильности перед пробоем измеряется через строгое математическое условие, которое обеспечивает, что текущая волатильность значительно ниже ее усредненного исторического значения.
Условие Сжатия (Squeeze ON) требует выполнения обеих следующих математических формул :
Для понимания того, на сколько должно сократиться движение, необходимо рассмотреть формулы ширины каналов:
* Ширина Полос Боллинджера (\text{BB}_{\text{Width}}):
\text{KC}_{\text{Width}} = 2 \times (\text{ATR} \times 1.5) = 3.0 \times \text{ATR}$$
Состояние Squeeze ON означает, что \text{BB}_{\text{Width}} < \text{KC}_{\text{Width}}. Это условие эквивалентно \text{SD} \times 4.0 < \text{ATR} \times 3.0. В результате, текущее стандартное отклонение (SD) должно упасть ниже 75% от усредненного истинного диапазона (ATR), чтобы сжатие было зарегистрировано. Такое требование к снижению SD до уровня, значительно ниже ATR, является критерием для идентификации глубокого покоя рынка, который служит энергетической базой для последующего направленного движения.
Почему и Как: Качественные Признаки
Снижение волатильности происходит потому, что крупные участники рынка медленно и скрытно накапливают позиции. Они поддерживают цену в узком диапазоне, чтобы полностью набрать необходимый объем, прежде чем позволить цене импульсивно выйти из консолидации. Это создает фазу бокового движения, минимизируя риски для трейдера и позволяя оперативно отследить «бычий» или «медвежий» прорыв.
Для повышения надежности алгоритма и предотвращения входа в ложные диапазоны, необходимо учитывать следующие качественные признаки, сопровождающие истинное сжатие:
* Длительность Сжатия: Чем дольше цена находится в состоянии Squeeze ON, тем больше энергии накапливается. Опыт показывает, что минимальная длительность должна составлять 4–8 периодов. Длительные периоды сжатия (более 10–12 баров) часто предшествуют наиболее сильным импульсным движениям на крипторынке.
* Положение Цены: Во время фазы сжатия цена должна находиться в непосредственной близости к средней линии (EMA/SMA). Это подтверждает, что рынок находится в состоянии равновесия, и накопление происходит вокруг "справедливой" цены текущего диапазона.
* Контекст Моментума: Индикатор волатильности (BB/KC) определяет когда произойдет движение, но не его направление. Для предсказания направления (признак) необходимо использовать компонент моментума (например, гистограмму, как в варианте TTM Squeeze ). Появление положительного моментума во время сжатия, даже при отсутствии движения цены, является признаком потенциальной бычьей силы, усиливающей вероятность пробоя вверх.
Логика Определения Состояния "Сжатия" (Squeeze State Logic)
| Состояние | Математическое Условие (BB vs KC) | Интерпретация Рынка |
|---|---|---|
| Squeeze ON | (\text{BB}_{\text{Upper}} < \text{KC}_{\text{Upper}}) И (\text{BB}_{\text{Lower}} > \text{KC}_{\text{Lower}}) | Экстремальная контракция волатильности, фаза накопления, ожидание прорыва. |
| Squeeze OFF | \text{BB}_{\text{Upper}} \ge \text{KC}_{\text{Upper}} ИЛИ \text{BB}_{\text{Lower}} \le \text{KC}_{\text{Lower}} | Нормальная волатильность, трендовое движение или неустойчивый диапазон. |
IV. Техническая Спецификация: Пошаговый Алгоритм Индикатора Squeeze (BB/KC)
Данный алгоритм представляет собой последовательность шагов, необходимых для кодирования индикатора, фиксирующего состояние сжатия и генерирующего сигналы пробоя.
1. Инициализация и Расчет Базовых Величин
* Определение Периода N: Определить период N (рекомендуемое значение N=20) для расчета скользящих средних, ATR и Стандартного Отклонения (SD).
* Расчет Истинного Диапазона (True Range, TR): Для каждого бара рассчитать \text{TR} как максимальное значение из трех метрик: (High – Low), \text{Abs}(\text{High} - \text{Close}_{\text{prev}}), \text{Abs}(\text{Low} - \text{Close}_{\text{prev}}).
2. Расчет Компонентов Канала Кельтнера (KC)
* Расчет Средней Линии KC (EMA): Рассчитать экспоненциальную скользящую среднюю (EMA) цены закрытия (\text{Close}) за период N.
* Расчет ATR: Рассчитать Средний Истинный Диапазон (ATR) как скользящую среднюю \text{TR} за период N.
* Расчет Границ KC: Рассчитать Верхнюю и Нижнюю линии KC, используя множитель ATR Y (рекомендуется Y=1.5 ):
* * 3. Расчет Компонентов Полос Боллинджера (BB)
* Расчет Средней Линии BB (SMA): Рассчитать простую скользящую среднюю (SMA) цены закрытия (\text{Close}) за период N.
* Расчет SD: Рассчитать Стандартное Отклонение (SD) цены закрытия за период N.
* Расчет Границ BB: Рассчитать Верхнюю и Нижнюю полосы BB, используя множитель SD X (рекомендуется X=2.0 ):
* * 4. Алгоритм Определения Состояния "Squeeze"
* Проверка Условия Squeeze ON: Для текущего бара проверить, выполняются ли оба условия: \text{BB}_{\text{Upper}} < \text{KC}_{\text{Upper}} И \text{BB}_{\text{Lower}} > \text{KC}_{\text{Lower}}.
* Присвоение Состояния: ЕСЛИ оба условия в шаге 9 истинны, ТО присвоить переменной \text{SqueezeState} значение \text{ON} (например, 1). ИНАЧЕ присвоить значение \text{OFF} (например, 0).
5. Алгоритм Генерации Сигналов Пробоя
* Идентификация Триггера: Проверить, что \text{SqueezeState} изменился с \text{ON} на \text{OFF} на текущем баре. Это означает, что волатильность расширилась после периода сжатия.
* Сигнал Бычьего Пробоя: ЕСЛИ \text{SqueezeState}_{\text{prev}} = \text{ON} И \text{SqueezeState}_{\text{current}} = \text{OFF}, И цена закрытия (\text{Close}) текущего бара выше \text{BB}_{\text{Upper}}, ТО генерировать сигнал ПОКУПКА (Breakout Long).
* Сигнал Медвежьего Пробоя: ЕСЛИ \text{SqueezeState}_{\text{prev}} (start_span) (end_span)= \text{ON} И \text{SqueezeState}_{\text{current}} = \text{OFF}, И цена закрытия (\text{Close}) текущего бара ниже \text{BB}_{\text{Lower}}, ТО генерировать сигнал ПРОДАЖА (Breakout Short).
* Дополнительная Фильтрация Моментумом: Для повышения надежности, сигнал пробоя должен быть действителен только ЕСЛИ пробой происходит в направлении, подтвержденном моментум-индикатором (например, если Моментум > 0 для Бычьего пробоя, и Моментум < 0 для Медвежьего пробоя).
Роль Моментума в Алгоритме
Ключевым дополнением к индикатору волатильности является компонент моментума. Определение состояния Squeeze ON/OFF позволяет понять потенциал движения, но не его направление. Моментум-индикатор (часто реализованный в виде гистограммы, как в TTM Squeeze ) позволяет измерить, происходит ли накопление давления покупателей или продавцов во время фазы сжатия. Следовательно, индикатор должен включать подкомпонент, который измеряет это давление. Использование моментума в сочетании с пробоем BB гарантирует, что вход в позицию происходит не просто после расширения волатильности, а после ее расширения в подтвержденном направлении, что существенно снижает количество ложных пробоев.
V. Параметры, Оптимизация и Нюансы для Криптовалютного Рынка
Адаптация Стандартных Настроек (20, 2.0, 1.5)
Стандартные параметры N=20, X_{\text{BB}}=2.0 и Y_{\text{KC}}=1.5 разработаны для фондовых рынков и являются надежной отправной точкой. Однако высокая волатильность и динамика криптовалютного рынка требуют тонкой настройки для оптимизации производительности.
1. Оптимизация Периода N
Уменьшение периода N (например, до 18 или 14) на более низких таймфреймах (1-часовой и ниже) увеличит чувствительность индикатора к локальным, быстрым сжатиям, что полезно для скальпинга. Однако, это также может привести к генерации большего количества сигналов, в том числе ложных. Для среднесрочных торговых стратегий (4h, Daily) период N=20 или N=21 обеспечивает оптимальный баланс между чувствительностью и фильтрацией шума.
2. Оптимизация Множителя Y_{\text{KC}}
Множитель Каналов Кельтнера (Y) по умолчанию равен 1.5. KC более плавные и устойчивые благодаря использованию ATR. Если в процессе тестирования индикатор генерирует слишком много ложных сигналов Squeeze ON, это может указывать на то, что канал KC слишком узок. В этом случае, небольшое увеличение множителя Y (например, до 1.6 или 1.7) расширит KC. Это потребует еще более экстремального падения Стандартного Отклонения, чтобы BB сузились внутрь KC, тем самым повышая строгость и надежность сигнала Squeeze ON.
Важность Выбора Таймфрейма
Хотя некоторые индикаторы, такие как KC и BB, показывают более высокую эффективность в трендовом состоянии для торговли отскоками от границ , стратегия Squeeze Play принципиально иная. Она целенаправленно ищет рейндж (контракцию волатильности) с целью поймать начало нового сильного тренда.
На рынке криптовалют ложные пробои и рыночный шум (chop) могут быть особенно интенсивными на низких таймфреймах. Поэтому для стратегии Squeeze рекомендуется использовать таймфреймы, на которых консолидация наиболее чиста: 4-часовой, Daily или Weekly графики для основных криптопар, таких как BTC/USD или ETH/USD. На более низких таймфреймах необходимо внедрять мультитаймфреймовое подтверждение, используя, например, фильтр тренда с более высокого таймфрейма.
VI. Стратегическое Применение Squeeze Play и Фильтрация
Использование Momentum для Определения Направления
Как уже было отмечено, индикатор волатильности (BB/KC) не является индикатором направления. Функция сжатия (Squeeze ON) лишь идентифицирует высокую вероятность сильного движения. Следовательно, для успешной торговли необходимо интегрировать Моментум.
Прорыв следует использовать как триггер, но направление должно быть подтверждено Моментумом. Например, сигнал ПОКУПКА должен быть сгенерирован, только если соблюдены два условия:
* Выход из состояния Squeeze ON и пробитие ценой закрытия верхней полосы BB (\text{Close} > \text{BB}_{\text{Upper}}).
* Моментум-индикатор подтверждает восходящее давление (значение Моментума положительно).
Такой подход предотвращает входы в ложные пробои, когда волатильность расширяется, но не в направлении накопленного рыночного давления.
Управление Рисками и Позицией
Поскольку Канал Кельтнера основан на ATR, который является динамической мерой волатильности , именно ATR следует использовать для установки стоп-лосса (SL) в алгоритмической стратегии.
* Установка Стоп-Лосса (SL): Рекомендуется устанавливать SL на уровне, определяемом 1 \times \text{ATR} ниже средней линии (EMA/SMA) или за границей канала KC, противоположной пробою. Использование ATR обеспечивает, что SL динамически адаптируется к текущей волатильности, избегая слишком узких стопов в периоды нормального диапазона.
* Установка Тейк-Профита (TP): Поскольку цель Squeeze Play — поймать сильное направленное движение, тейк-профит может быть установлен на основе фиксированного соотношения Риск/Прибыль (например, 2:1 или 3:1) или на основе выхода цены за пределы KC. Пробитие KC часто указывает на экстремальное ценовое движение и может служить точкой для частичной или полной фиксации прибыли.
Фильтрация Против Ложных Сигналов в Рейндже
Основной недостаток торговли на пробой — высокий процент ложных сигналов в широких, но не направленных диапазонах. Использование композитного индикатора BB/KC Squeeze эффективно решает эту проблему.
KC, будучи основанным на сглаженном ATR, менее подвержен краткосрочным всплескам волатильности, чем BB. Фильтр Сжатия требует, чтобы чувствительные BB сузились внутрь сглаженных KC. Это гарантирует, что мы входим только в те прорывы, которым предшествовала длительная и аномально низкая фаза волатильности. Пробой должен быть подтвержден тем, что цена пробивает BB после завершения состояния Squeeze ON, что сигнализирует об устойчивом расширении волатильности, а не о кратковременном ценовом всплеске.
VII. Заключение
Анализ подтверждает, что наблюдение пользователя о связи между сокращением волатильности и последующими сильными движениями является фундаментально верным принципом, наилучшая реализация которого на рынке криптовалют достигается с помощью композитного индикатора BB/KC Squeeze.
Этот индикатор предоставляет точное количественное определение "на сколько" волатильность должна сократиться (SD должно упасть ниже 75% от ATR) и включает необходимые качественные предпосылки ("почему и как" — консолидация, подтвержденная моментумом). Представленный пошаговый алгоритм обеспечивает техническую основу для кодирования высокоэффективного инструмента, который идентифицирует фазы аккумуляции и генерирует сигналы пробоя, адаптированные к динамике крипторынка. Включение фильтрации на основе моментума и надлежащее управление риском, привязанное к ATR, являются ключевыми факторами для перехода от чистого индикатора к прибыльной торговой стратегии.
6-9 session & levels6-9 Session & Levels - Customizable Range Analysis Indicator
Description:
This indicator provides comprehensive session-based range analysis designed for intraday traders. It calculates and displays key levels based on a customizable session period (default 6:00-9:00 AM ET).
Core Features:
Session Tracking
Monitors user-defined session times with timezone support
Displays session open, high, and low levels
Highlights session range with optional box visualization
Shows previous day RTH (Regular Trading Hours: 9:30 AM - 4:00 PM) levels
Range Levels
25%, 50%, and 75% range levels within the session
Range deviations at 0.5x, 1.0x, and 2.0x multiples
Fibonacci extension levels (customizable, default 1.33x and 1.66x)
Optional fill zones between Fibonacci levels
Time Zone Highlighting
Marks the 9:40-9:50 AM period as a potential reversal zone
Vertical lines with shading to identify key time windows
Statistical Analysis
Calculates mean and median extension levels based on historical sessions
Displays statistics table showing current range, average range, range difference, and z-score
Customizable sample size (1-100 sessions) for statistical calculations
Option to anchor extensions from either session open or high/low points
Input Settings Explained:
Session Settings
Levels Session Time: Define your session window in HHMM-HHMM format (default: 0600-0900)
Time Zone: Choose from UTC, America/New_York, America/Chicago, America/Los_Angeles, Europe/London, or Asia/Tokyo
Anchor Settings
Show Session Anchor: Toggle the session anchor line (marks session open price at 6:00 AM)
Anchor Style/Color/Width: Customize appearance (Solid/Dashed/Dotted, color, 1-4 width)
Show Anchor Label: Display price label for the anchor
Session Open Line: Similar options for the session open reference line
Range Box Settings
Show Range Box: Display a shaded rectangle highlighting the session high-to-low range
Range Box Color: Set the box background color and transparency
Range Levels (25%/50%/75%)
Show Range Levels: Toggle all three intermediate levels on/off
Individual Level Styling: Each level (25%, 50%, 75%) has its own color, style, and width settings
Show Range Level Labels: Display price labels for each level
Range Deviations
Show Range Deviations: Toggle deviation levels on/off
0.5x/1.0x/2.0x Settings: Each deviation multiplier can be customized with its own color, line style (Solid/Dashed/Dotted), and width
Show Range Deviation Labels: Display labels showing the deviation price levels
Previous Day RTH Levels
Show Previous RTH Levels: Display yesterday's regular trading hours high and low
RTH High/Low Styling: Separate color, style, and width settings for each level
Show Previous RTH Labels: Toggle price labels for RTH levels
Time Zones
Show 9:40-9:50 AM Zone: Highlight this specific time period with vertical lines and shading
Zone Color: Set the background fill color for the time zone
Zone Label Color/Text: Customize the label appearance and text
Fibonacci Extension Settings
Show Fibonacci Extensions: Toggle Fib levels on/off
Fib Extension Color/Style/Width: Customize line appearance
Show Fib Extension Labels: Display price labels
Fib Ext Level 1/2: Set custom multipliers (default 1.33 and 1.66, range 0-5 in 0.1 increments)
Show Fibonacci Fills: Display shaded zones between Fib levels
Fib Fill Color: Customize the fill color and transparency
Session High/Low Settings
Show Session High/Low Lines: Display the actual session extremes
Style/Color/Width: Customize line appearance
Show Labels: Toggle price labels for high/low levels
Extension Stats Settings
Show Statistical Levels on Chart: Display mean and median extension levels based on historical data
Extension Anchor Point: Choose whether to anchor from "Open" or "High/Low" of the session
Number of Sessions for Statistics: Set sample size (1-100, default 60) for calculating averages
Mean/Median High Extension: Separate styling for each statistical level (color, style, width)
Mean/Median Low Extension: Separate styling for downside statistical levels
Tables
Show Statistics Table: Display a summary table with current range, average range, difference, z-score, and sample size
Table Position: Choose from 9 positions (Bottom/Middle/Top + Center/Left/Right)
Table Text Size: Select from Auto, Tiny, Small, Normal, Large, or Huge
Display Settings
Projection Offset: Number of bars to extend lines forward (default 24)
Label Size: Choose from Tiny, Small, Normal, or Large
Price Decimal Precision: Set decimal places for price labels (0-6)
How It Works:
The indicator tracks the specified session period and calculates the session's open, high, low, and range. At the end of the session (9:00 AM by default), it projects all configured levels forward for the trading day. The statistical features analyze the last N sessions (you choose the number) to calculate typical extension behavior from either the session open or the session high/low points.
The z-score calculation helps identify whether the current session's range is normal, expanded, or contracted compared to recent history, allowing traders to adjust expectations for the rest of the day.
Use Case:
This indicator helps traders identify key support and resistance levels based on early session price action, understand current range context relative to historical averages, and spot potential reversal zones during specific time periods.
Note: This indicator is for informational purposes only and does not constitute investment advice. Always perform your own analysis before making trading decisions.
Dual SMT - Standard & Hidden [Pogiest]General
Smart Money Technique (SMT) involves identifying divergences in a correlated asset triad to predict new phases of price, a shift in market sentiment, and also potential trend reversals. An SMT divergence occurs when one or two assets makes a new high or low, but the other asset or assets does not, signaling a potential shift in market direction. A Hidden SMT Divergence occurs when one or two assets’ closing price closes higher or lower than the other one or two assets’ closing price. However, with potential gaps in price, an opening price can also be the extreme when comparing assets for divergences. Hidden SMT divergence compares the candle bodies while a Standard SMT divergence compares the highs and lows. Both types of SMTs are considered to be cracks in correlation and can be used to identify potential new phases of price whether it be a reversal, retracement, consolidation, and continuation.
Note: Credit of concepts/ideas goes to ICT and TraderDaye.
What Makes This Indicator Unique
The indicator has the ability to display Standard SMTs, Hidden SMTs, or both simultaneously in real-time, tick by tick in the time period selected in a correlated asset triad. Toggle modes for each type of SMT will run independently (runs when enabled) and therefore, optimizes performance. Option to select three different tickers in settings instead of limiting analysis to pairs makes this indicator more versatile. In addition, the indicator has “Invert” toggle options to track both Standard and Hidden SMTs for assets with negative correlations.
Instead of confirming SMT by selecting the number of pivots to look back for detection and confirmation, lines will be plotted on the chart on the first tick it detects a divergence. This can help traders anticipate SMTs in advance and give early warnings instead of waiting for a pivot confirmation. Active lines are displayed on the chart when the indicator identifies a divergence from the current time range to the previous time range in a correlated asset triad. These lines will move dynamically tick by tick on the chart and are anchored to the exact high/lows (Standard SMT) or bodies extremes (Hidden SMT). For inverted symbols, the lines will plot at the inverted anchor points. If new extremes are being made, the lines will move dynamically with the current forming candle for visual precision. During the current time period, the indicator continues to scan for new highs/lows as well as scanning the body high/lows while making line adjustments automatically. Lines will get deleted once the SMT becomes invalid.
The indicator is also designed for consecutive time ranges or cycles. Users are able to select the timeframe to monitor divergences which the indicator has multiple options to choose from including the most used timeframes (i.e. Monthly, Weekly, Daily, 6HR, 4HR, 90M, 1HR, 30M, 15M, etc). For example, if the 90m timeframe is selected, then the indicator will scan for divergences at the extremes in the current 90m cycle and compare the extremes to the previous 90m cycle. The indicator is designed to work when viewing lower timeframes while selecting higher timeframe cycles in settings.
There are four separate alert systems included in this indicator consisting of Standard bull/bear and Hidden bull/bear. Indicator is mode-aware and only triggers when alerts are enabled.
Dynamic Capabilities
Active (Real-Time):
For Standard SMT (High/Low), the indicator scans for divergences using the absolute highs and lows of each candle:
• Bull SMT: Compares the lowest points (wicks included).
• Bear SMT: Compares the highest points (wicks included).
In addition to SMT lines being plotted immediately after detection and lines moving dynamically at new high/low extremes, the indicator will remove the SMT automatically at the first tick it detects the divergence becoming invalid (i.e. all assets made a higher high or lower low in two consecutive time periods). Standard SMT labels are displayed as "SMT - TF" and are anchored to the center of the SMT line.
For Hidden SMT (Bodies), the indicator scans for divergences using only the candle body extremes (open/close, ignoring wicks):
• Bull SMT: Compares the lowest body prices (min of open/close) - divergence based on where bodies close, not wicks.
• Bear SMT: Compares the highest body prices (max of open/close) - divergence based on where bodies close, not wicks.
In addition to SMT lines being plotted immediately after detection and lines moving dynamically following the body high/low extremes, the indicator will remove the SMT automatically once the divergence becomes invalid (i.e. all assets made a higher high or lower low with the body extremes in two consecutive time periods). Hidden SMT labels are displayed as "SMT - TF" and are anchored to the center of the SMT line.
Historical (Fixed Plotting):
Once an SMT divergence (Standard or Hidden) was active and the current time range completes, the SMT line will be plotted and fixed on the chart as a historical line as the new time range starts. When the new time range starts, the cycle resets and the indicator scans for a new active SMT line in the current time range compared to the previous time range. Historical lines are stored for Standard SMT (up to 5) and Hidden SMT (up to 5) for the most recent lines.
Inverse SMT lines (Negative Correlation):
Assets with a negative correlation can be selected in settings with the Invert toggle option selected in settings. SMT divergences for both Standard and Hidden SMTs will be plotted on the chart at their respective anchor points from the previous time cycle to the current time cycle. Lines will behave normally as how it functions when the invert toggle is deselected. However, the lines are inverted on the chart with bullish SMT lines at the highs or bearish SMT lines at the lows.
Usage
Traders can use both types of SMT divergences to anticipate potential reversals in points of interest such as higher timeframe swing points, supply/demand zones, higher timeframe imbalances, key levels, etc. This indicator can also be beneficial in identifying cracks in correlation via Hidden SMT when there are no divergences off the highs and lows. SMT divergences (standard and hidden) can be used as a confirmation tool with other confluences to identify trend direction with respect to points of interest, higher timeframe order-flow, lower timeframe order-flow, etc. In addition, having both a Standard SMT and Hidden SMT divergence display could potentially signal a reversal. It is up to the trader to gauge the price action at the time.
Settings
1. Choose up to three different assets to monitor.
Note: If only two are selected, the indicator will only display the two selected and compare the two assets for divergences.
2. Choose up to one timeframe to monitor.
3. Enable/disable Invert mode.
4. For Standard and Hidden SMT: Enable/disable SMT-Active lines, option to change line style, line width, bull SMT line color, bear SMT line color, and bull/bear label text color.
5. For Standard and Hidden SMT: Enable/disable Historical SMT lines, adjust max historical SMT signals to be displayed (up to 5), option to change line style, line width, bull SMT line color, bear SMT line color, and bull/bear label text color.
6. For Standard and Hidden SMT: Show/hide SMT Labels and adjustable label offset.
7. Shared Label Settings: Adjust label size.
8. Enable/disable SMT Active alerts for Standard and Hidden SMT.
Risk Disclaimer
This indicator is for educational and informational purposes only and does not constitute financial advice. All trading and investment decisions remain solely the responsibility of the user.
Trading involves a high degree of risk, and past performance is not indicative of future results.
Always conduct your own research and consult with a qualified financial professional before making any trading decisions.
By using this indicator, users acknowledge they understand these risks and accept full responsibility for their trading decisions and outcomes.
ASR / ADR by Vanya_zvwey
🇺🇦 Детальний Опис та Інструкція Користувача Індикатора ASR/ADR Grid
Цей індикатор є інструментом для візуалізації волатильності, який використовує історичні дані для прогнозування потенційних цінових рівнів розширення та корекції. Він будує сітки на основі середнього діапазону сесії (ASR) та середнього денного діапазону (ADR).
🔑 Ключові Концепції
ASR (Average Session Range): Середній діапазон High-Low, який зазвичай досягається протягом обраної торгової сесії (Азія, Лондон, Нью-Йорк) за останні N днів.
ADR (Average Daily Range): Середній діапазон High-Low, досягнутий протягом цілого 24-годинного торгового дня за останні N днів.
Синхронізація Часового Поясу: На відміну від багатьох індикаторів, цей індикатор залежить від введеного саме вами Session Timezone. Він гарантує, що ваші сесії та денні відкриття розраховуються правильно, незалежно від часового поясу вашого графіку.
⚙️ Посібник із Налаштування (Вхідні Параметри)
Налаштування згруповані для зручності:
1. General Settings (Загальні Налаштування)
Session Timezone: Виберіть часовий пояс, який використовуватиметься як єдиний орієнтир для всіх часів Start/End. Це може бути "UTC+2", "America/New_York" тощо.
Lookback Period (Days): Кількість днів, що використовується для обчислення середнього значення ASR та ADR.
Grid Direction:
"Up": Сітки будуються від поточного Low сесії/дня і розширюються вгору.
"Down": Сітки будуються від поточного High сесії/дня і розширюються вниз.
Grid Step %: Крок для внутрішніх ліній сітки (наприклад, 25% дасть лінії 25%, 50%, 75%).
2. Session Settings (Asia, London, New York)
Show : Увімкнення/вимкнення відображення сітки для конкретної сесії.
Start Time (HH:MM) / End Time (HH:MM): Час початку та кінця сесії, який відповідає вибраному вами Session Timezone.
3. ADR (Daily) Grid (Сітка Денного Діапазону)
Show ADR Grid: Увімкнення/вимкнення сітки, що охоплює весь день.
ADR Anchor: Визначає, від якої ціни починається відлік ADR (0%):
"Day Open": Як якір використовується ціна відкриття дня (00:00 у вашому часовому поясі).
"Day Low/High": Як якір використовується поточний денний екстремум (Low, якщо напрямок "Up", або High, якщо напрямок "Down").
📈 Використання та Інтерпретація
Сітка складається з рівнів від 0% до 100%, які візуалізують, наскільки далеко ціна просунулася щодо середнього історичного діапазону.
Структура Сітки
0% Рівень (Границя): Це якірна точка (High або Low) поточної сесії/дня, з якої починається розрахунок. Лінія суцільна.
100% Рівень (Границя): Це ціновий рівень, що дорівнює 0% Якір + ASR/ADR. Це статистично очікуваний максимальний рух. Лінія суцільна.
Внутрішні Рівні (Grid Step): Пунктирні лінії (25%, 50%, 75% тощо), які показують проміжні цілі або зони корекції.
Торгова Інтерпретація
Рух до 50%: Ціна досягла половини середнього діапазону.
Досягнення 100%: Ціна досягла "середнього" діапазону волатильності. Це часто служить хорошою ціллю для фіксації прибутку або точкою, де можна очікувати корекції/розвороту, оскільки рух вже відповідає історичним нормам.
Рух за межі 100% (Екстремум): Рух, що перевищує 100% ASR/ADR, вважається нетипово сильним або екстремальним.
🇬🇧 Detailed Description and User Guide for the ASR/ADR Grid Indicator
This indicator is a robust volatility visualization tool designed to project potential price extension and retracement levels based on historical data. It constructs price grids using the Average Session Range (ASR) and the Average Daily Range (ADR).
🔑 Key Concepts
ASR (Average Session Range): The average High-to-Low range typically achieved during a selected trading session (Asia, London, New York) over the last N days
ADR (Average Daily Range): The average High-to-Low range achieved during the entire 24-hour trading day over the last N days.
Timezone Synchronization: This is critical. The indicator relies on a single Session Timezone input to correctly calculate all session start/end times and daily opens, ensuring accuracy regardless of your charting platform's native exchange time.
⚙️ Setup Guide (Input Parameters)
The settings are organized into logical groups:
1. General Settings
Session Timezone: Select the timezone that will serve as the single reference point for all Start/End times below (e.g., "UTC+2", "America/New_York").
Lookback Period (Days): The number of preceding days used to compute the average ASR and ADR values.
Grid Direction:
"Up": The grids are anchored at the current session/day's Low and extend upwards.
"Down": The grids are anchored at the current session/day's High and extend downwards.
Grid Step %: The percentage increment for the inner grid lines (e.g., 25% will plot lines at 25%, 50%, 75%).
2. Session Settings (Asia, London, New York)
Show : Toggles the visibility of the grid for that specific session.
Start Time (HH:MM) / End Time (HH:MM): The start and end times for the session, which must correspond to your chosen Session Timezone. The script supports overnight sessions (e.g., starting at 22:00 and ending at 02:00 the next day).
3. ADR (Daily) Grid
Show ADR Grid: Toggles the visibility of the grid covering the entire trading day.
ADR Anchor: Determines the price point from which the ADR (0%) is measured:
"Day Open": The anchor is the day's opening price (at 00:00 in your chosen timezone).
"Day Low/High": The anchor is the current day's extreme (Low if Direction is "Up", or High if Direction is "Down").
📈 Usage and Interpretation
The grid levels, ranging from 0% to 100%, visualize how far the price has traveled relative to the average historical volatility for that specific period.
Grid Structure
0% Level (Border): This is the anchor point (High or Low) of the current session/day, serving as the starting reference for the calculation. This line is solid.
100% Level (Border): This is the price level equal to the 0% Anchor + ASR/ADR. It represents the statistically expected average maximum move. This line is also solid.
Inner Levels (Grid Step): These dotted lines (25%, 50%, 75%, etc.) serve as intermediate targets or potential zones for pullback.
Trading Interpretation
Reaching 50%: The price has achieved half of the average range.
Reaching 100%: The price has fulfilled the "average" volatility range. This level often acts as an excellent profit target or a point where you might expect correction or reversal, as the move has met historical norms.
Moving Beyond 100% (Extreme): A price move that exceeds 100% ASR/ADR is considered unusually strong or extreme volatility.
NQ H1 Stats+NQ H1 Stats - Detailed Prob & Excursion Indicator
Overview
NQ H1 Stats - Detailed Prob & Excursion is a specialized statistical overlay indicator for TradingView, tailored for the Nasdaq futures (NQ) on a 1-hour timeframe. It provides real-time insights into the probability of price returning to the hourly open after sweeping the previous hour's high (PHH) or low (PHL), based on historical data segmented by hour and 20-minute intervals. The indicator visualizes these sweeps with lines, labels, circles, background fills, and "excursion zones" (also called "Magic Boxes") that highlight median/mean extensions post-sweep, along with percentile lines (75th, 90th, 95th) for gauging potential "pain" or extreme moves. This tool is designed for intraday traders focusing on liquidity sweeps, or mean-reversion setups, helping to quantify edge based on empirical probabilities and volatility excursions.
The data is hardcoded from extensive historical analysis of NQ behavior (e.g., probabilities range from ~7% to ~91%, with sample sizes up to 2000+ per segment), making it a backtested reference rather than dynamic learning. It emphasizes visual clarity during active hours, with options to filter for Regular Trading Hours (RTH: 09:00–15:59 ET) or high-probability (>70%) events only. Note: This is an educational tool for analyzing market structure; it does not predict future performance or provide trading signals/advice. Past data does not guarantee future results, and users should backtest on current conditions (as of December 2025 data availability) and use at their own risk, in compliance with TradingView's house rules.
Key Features
• Sweep Detection & Probability Labels: Identifies when price breaks PHH (upside) or PHL (downside), displaying a centered label with probability of returning to the hourly open, sample size (N), time of sweep, and a checkmark (✅) if the open is retested post-sweep.
• Visual Lines & Markers: Draws hourly open (h.o.), PHH, and PHL lines with customizable styles/colors; adds small circles on sweep bars for quick spotting.
• Breakout→Open Background Fill: Shaded zone from sweep bar until price returns to open, visualizing extension duration and retracement.
• Excursion (Pain) Zone - "Magic Box": Post-sweep box showing median/mean extension percentages, colored dynamically by probability (green high, orange mid, red low); includes dashed lines for 75th/90th/95th percentiles to mark statistical extremes.
• Time-Segmented Data: Probabilities and excursions vary by hour (0-23) and 20-min segments (0-19 min: _0, 20-39: _1, 40-59: _2), capturing intraday nuances (e.g., higher probs in early/late hours).
• Filters for Focus: RTH-only mode hides non-session elements; high-prob-only shows >70% events to reduce noise.
• Alerts: Triggers on PHH/PHL sweeps with messages for chart checks.
How It Works
• Data Foundation: Uses pre-computed maps for probabilities (prob_high_taken/prob_low_taken), sample sizes, and excursions (mean, median, p75/p90/p95 as percentages of open). Data is initialized on the first bar via f_init_high_data() and f_init_low_data(), covering 24 hours with 3 segments each (e.g., key "9_1" for 09:20-09:39). Probabilities represent historical likelihood of price returning to open after sweep; excursions quantify average/rare extensions (e.g., 0.156% mean = 0.156% of open price).
• Period Detection: On new 1H bars (new_period_bar), resets visuals, draws lines for open/PHH/PHL extending 1 hour forward, and labels if enabled. Uses request.security on standard ticker for real OHLC, bypassing chart transformations (e.g., Heikin Ashi).
• Sweep Logic: On each bar, checks if real high > PHH or real low < PHL. If so, fetches segment-specific data (hour + floor(minute/20)), displays probability label centered mid-hour. Skips if filtered (RTH-only or <70% prob).
• Excursion Visualization: If enabled, draws "Magic Box" from 1-min to 58-min into the hour, bounded by mean/median levels (top/bottom adjusted for high/low sweep). Adds percentile lines with labels (e.g., "75%") at right end. Box color reflects prob strength for quick bias assessment.
• Retest Check: Monitors for open retest post-sweep (high/low cross open, or gap scenarios from prev bar). Adds ✅ to label if hit on subsequent bars (skips sweep bar to avoid false positives). Stops background fill on retest or at 58-min mark.
• Background Fill: Activates on sweep, shades until retest, using user color.
• Cleanup & Performance: Manages labels in arrays, clears on new periods; no excess drawing beyond max counts (500 lines/labels/boxes).
This setup "meshes" statistical backtesting with real-time visualization: Hardcoded data provides empirical probabilities/excursions (reducing subjectivity in breakouts), while dynamic elements (lines, fills, boxes) overlay structure on the chart. It helps traders assess if a sweep is "high-edge" (e.g., >70% prob of revert) or likely to run (low prob, high excursion), blending historical context with current price action for informed decisions.
Settings and Customization
Inputs are grouped for ease:
1. Settings:
o Show RTH Only (9:00-15:59): Restricts to main session (default: false; tooltip: for RTH-focused stats).
o Show High Prob Only (>70%): Filters low-prob sweeps visually (default: false; tooltip: highlights confidence).
2. Visuals:
o Show Line Labels: Toggle "h.o."/ "phh"/ "phl" (default: true).
o Period Open Line Color: Gray 50% (default).
o Previous High/Low Line Colors: Gray 100% (default).
o Open Line Style/Width: Dotted/1 (default; options: Solid/Dotted/Dashed).
3. Breakout→Open Background:
o Show Breakout→Open Background: Toggle fill (default: true).
o Fill Color: Teal 85% (default).
4. Breakout Circles:
o Show Breakout Circles: Toggle (default: true).
o PHH/PHL Break Circle Colors: White 20% (default).
5. Info Label Style:
o Text Size: Small (default; options: Auto/Tiny/Normal/Large/Huge).
o Label Text Color: White (default).
o Low/Mid/High Probability Colors: Red 20%/Orange 20%/Green 20% (default).
6. Excursion (Pain) Zone:
o Show Excursion Zone: Toggle Magic Box (default: true).
o Excursion Box Color: Gray 75% (default; dynamic overrides).
o 75th/90th/95th Percentile Lines: Orange 30%/Red 30%/Dark Red 100% (default).
No additional tables/plots; all elements are lines/labels/boxes for overlay focus.
Usage Tips
• Breakout Trading: Watch for sweeps with high prob (>70%, green label) as potential fades back to open; low prob (red) may signal runs—use excursion box for targets (e.g., exit at 90th percentile for extremes).
• Time Awareness: Probabilities peak in open hours (e.g., 09:00 ~90%+ for initial sweeps) and drop in off-hours; segments capture momentum shifts (e.g., _2 often lower prob).
• RTH Focus: Enable for cleaner stats during high-liquidity sessions; disable for 24/7 view.
• Visual Filtering: Use high-prob-only in volatile conditions to avoid noise; combine with volume or other indicators for confirmation.
• Alerts Integration: Set TradingView alerts on sweeps; check label for prob/N before acting.
• Chart Setup: Best on 1H or lower NQ charts; adjust text size for readability on mobiles.
• Backtesting: Manually review historical sweeps against data maps to validate; update hardcoded values if new data emerges (as of 2025).
Limitations
• Fixed Data: Hardcoded stats may not reflect recent market changes (e.g., post-2025 volatility shifts); not adaptive.
• Reactive Only: Detects sweeps after they occur; no predictive signals.
• Timeframe Specific: Locked to 1H logic; may not translate to other assets/TFs without recoding data.
• Visual Clutter: On busy charts, labels/boxes may overlap—toggle off selectively.
• No Live Stats: Sample sizes are historical; real-time N/prob not updated.
• Gaps & Extremes: Handles gaps in retest logic, but rare events (e.g., news) may exceed 95th percentile.
Disclaimer
This indicator is for informational and educational purposes only. Trading involves significant risk of loss and is not suitable for all investors. The hardcoded data represents past NQ performance and does not guarantee future outcomes. No claims of profitability are made—results depend on market conditions, user strategy, and risk management. Consult a financial advisor before trading, and backtest extensively. Abiding by TradingView rules, this tool provides no investment recommendations.
One for AllOne for All (OFA) - Complete ICT Analysis Suite
Version 3.3.0 by theCodeman
📊 Overview
One for All (OFA) is a comprehensive TradingView indicator designed for traders who follow Inner Circle Trader (ICT) concepts. This all-in-one tool combines essential ICT analysis features—sessions, kill zones, previous period levels, and higher timeframe candles with Fair Value Gaps (FVGs) and Volume Imbalances (VIs)—into a single, highly customizable indicator. Whether you're a beginner learning ICT concepts or an experienced trader refining your edge, OFA provides the visual structure needed for precise market analysis and execution.
✨ Key Features
- 🏷️ Customizable Watermark**: Display your trading identity with customizable titles, subtitles, symbol info, and full style control
- 🌍 Trading Sessions**: Visualize Asian, London, and New York sessions with high/low lines, range boxes, and open/close markers
- 🎯 Kill Zones**: Highlight 5 critical ICT kill zones with precise timing and visual boxes
- 📈 Previous Period H/L**: Track Daily, Weekly, and Monthly highs/lows with customizable styles and lookback periods
- 🕐 Higher Timeframe Candles**: Display up to 5 HTF timeframes with OHLC trace lines, timers, and interval labels
- 🔍 FVG & VI Detection**: Automatically detect and visualize Fair Value Gaps and Volume Imbalances on HTF candles
- ⚙️ Universal Timezone Support**: Works globally with GMT-12 to GMT+14 timezone selection
- 🎨 Full Customization**: Control colors, styles, visibility, and layout for every feature
🚀 How to Use
Watermark Setup
The watermark overlay helps you identify your charts and maintain focus on your trading principles:
1. Enable/disable watermark via "Show Watermark" toggle
2. Customize the title (default: "Name") to display your trading name or account identifier
3. Set up to 3 subtitles (default: "Patience", "Confidence", "Execution") as trading reminders
4. Choose position (9 locations available), size, color, and transparency
5. Toggle symbol and timeframe display as needed
Use Case: Display your trading principles or account name for multi-monitor setups or content creation.
Trading Sessions Analysis
Sessions define market character and liquidity availability:
1. Enable "Show All Sessions" to visualize all three sessions
2. Adjust timezone to match your local market (default: UTC-5 for EST)
3. Customize session times if needed (defaults cover standard hours)
4. Enable session range boxes to see consolidation zones
5. Use session high/low lines to identify key levels for the current session
6. Enable open/close markers to track session transitions
Use Case: Identify which session you're trading in, track session highs/lows for liquidity, and anticipate session transition volatility.
Kill Zones Trading
Kill zones are ICT's high-probability trading windows:
1. Enable individual kill zones or use "Show All Kill Zones"
2. **Asian Kill Zone** (2000-0000 GMT): Early positioning and smart money accumulation
3. **London Kill Zone** (0300-0500 GMT): European market opening volatility
4. **NY AM Kill Zone** (0930-1100 EST): Post-NYSE open expansion
5. **NY Lunch Kill Zone** (1200-1300 EST): Midday consolidation or manipulation
6. **NY PM Kill Zone** (1330-1600 EST): Afternoon positioning and closes
7. Customize colors and times to match your trading style
8. Set max days display to control historical visibility (default: 30 days)
Use Case: Focus entries during high-probability windows. Watch for liquidity sweeps at kill zone openings and institutional positioning.
Previous Period High/Low Levels
Previous period levels act as magnetic price targets and support/resistance:
1. Enable Daily (PDH/PDL), Weekly (PWH/PWL), or Monthly (PMH/PML) levels individually
2. Set lookback period (how many previous periods to display)
3. Choose line style: Solid (current emphasis), Dashed (standard), or Dotted (subtle)
4. Customize colors per timeframe for visual hierarchy
5. Adjust line width (1-5) for visibility preference
6. Enable gradient effect to fade older periods
7. Position labels left or right based on chart layout
8. Customize label text for your preferred notation
Use Case: Identify key levels where price is likely to react. Daily levels work on intraday timeframes, Weekly on daily charts, Monthly for swing trading.
Higher Timeframe (HTF) Candles
HTF candles reveal the larger market context while trading lower timeframes:
1. Enable up to 5 HTF slots simultaneously (default: 5m, 15m, 1H, 4H, Daily)
2. Choose display mode: "Below Chart" (stacked rows) or "Right Side" (compact column)
3. Customize timeframe, colors (bull/bear), and titles for each slot
4. **OHLC Trace Lines**: Visual lines connecting HTF candle levels to chart bars
5. **HTF Timer**: Countdown showing time remaining until HTF candle close
6. **Interval Labels**: Display day of week (Daily+) or time (intraday) on each candle
7. For Daily candles: Choose open time (Midnight, 8:30, 9:30) to match your market structure preference
Use Case: Trade lower timeframes while respecting higher timeframe structure. Watch for HTF candle closes to confirm directional bias.
FVG & VI Detection
Fair Value Gaps and Volume Imbalances highlight inefficiencies that price often revisits:
1. **Fair Value Gaps (FVGs)**: Detected when HTF candle wicks don't overlap between 3 consecutive candles
- Bullish FVG: Gap between candle 1 high and candle 3 low (green box by default)
- Bearish FVG: Gap between candle 1 low and candle 3 high (red box by default)
2. **Volume Imbalances (VIs)**: Similar detection but focuses on body gaps
- Bullish VI: Gap between candle 1 close and candle 3 open
- Bearish VI: Gap between candle 1 open and candle 3 close
3. Enable FVG/VI detection per HTF slot individually
4. Customize colors and transparency for each imbalance type
5. Boxes appear on chart at formation and remain visible as retracement targets
**Use Case**: Identify high-probability retracement zones. Price often returns to fill FVGs and VIs before continuing the trend. Use as entry zones or profit targets.
🎨 Customization
OFA is built for flexibility. Every feature includes extensive customization options:
Visual Customization
- **Colors**: Independent color control for every element (sessions, kill zones, lines, labels, FVGs, VIs)
- **Transparency**: Adjust box and label transparency (0-100%) for clean charts
- **Line Styles**: Choose Solid, Dashed, or Dotted for previous period lines
- **Sizes**: Control text size, line width, and box borders
- **Positions**: Place watermark in 9 positions, labels left/right
Layout Control
- **HTF Display Mode**: "Below Chart" for detailed analysis, "Right Side" for space efficiency
- **Drawing Limits**: Set max days for sessions/kill zones to manage chart clutter
- **Lookback Periods**: Control how many previous periods to display (1-10)
- **Gradient Effects**: Enable fading for older previous period lines
Timing Adjustments
- **Timezone**: Universal GMT offset selector (-12 to +14) for global markets
- **Session Times**: Customize each session's start/end times
- **Kill Zone Times**: Adjust kill zone windows to match your market's characteristics
- **Daily Open**: Choose Midnight, 8:30, or 9:30 for Daily HTF candle open time
💡 Best Practices
1. Start Simple: Enable one feature at a time to learn how each element affects your analysis
2. Match Your Timeframe: Use Daily levels on intraday charts, Weekly on daily charts, HTF candles one or two levels above your trading timeframe
3. Kill Zone Focus: Concentrate your trading activity during kill zones for higher probability setups
4. HTF Confirmation: Wait for HTF candle closes before committing to directional bias
5. FVG/VI Entries: Look for price to return to unfilled FVGs/VIs for entry opportunities with favorable risk/reward
6. Customize Colors: Use a consistent color scheme that matches your chart theme and reduces visual fatigue
7. Reduce Clutter: Disable features you're not actively using in your current trading plan
8. Session Context: Understand which session controls the market—trade with session direction or anticipate reversals at session transitions
⚙️ Settings Guide
OFA organizes settings into logical groups for easy navigation:
- **═══ WATERMARK ═══**: Title, subtitles, position, style, symbol/timeframe display
- **═══ SESSIONS ═══**: Enable/disable sessions, times, colors, high/low lines, boxes, markers
- **═══ KILL ZONES ═══**: Individual kill zone toggles, times, colors, max days display
- **═══ PREVIOUS H/L - DAILY ═══**: Daily high/low lines, style, color, lookback, labels
- **═══ PREVIOUS H/L - WEEKLY ═══**: Weekly high/low lines, style, color, lookback, labels
- **═══ PREVIOUS H/L - MONTHLY ═══**: Monthly high/low lines, style, color, lookback, labels
- **═══ HTF CANDLES ═══**: Global display mode, layout settings
- **═══ HTF SLOT 1-5 ═══**: Individual HTF configuration (timeframe, colors, title, FVG/VI detection, trace lines, timer, interval labels)
Each setting includes tooltips explaining its function. Hover over any input for detailed guidance.
📝 Final Notes
One for All (OFA) represents a complete ICT analysis toolkit in a single indicator. By combining watermark customization, session visualization, kill zone highlighting, previous period levels, and higher timeframe candles with FVG/VI detection, OFA eliminates the need for multiple indicators cluttering your chart.
**Version**: 3.3.0
**Author**: theCodeman
**Pine Script**: v6
**License**: Mozilla Public License 2.0
Start with default settings to learn the indicator's structure, then customize extensively to match your personal trading style. Remember: tools provide information, but your edge comes from disciplined execution of a proven strategy.
Happy Trading! 📈
YM Ultimate SNIPER# YM Ultimate SNIPER - Documentation & Trading Guide
## 🎯 Unified GRA + DeepFlow | YM-Optimized for Low Volatility
**TARGET: 3-7 High-Confluence Trades per Day**
> **Philosophy:** *YM's lower volatility is not a weakness—it's our edge. Predictability + precision = consistent profits.*
---
## ⚡ QUICK REFERENCE CARD
```
┌─────────────────────────────────────────────────────────────────────────────┐
│ YM ULTIMATE SNIPER - QUICK REFERENCE │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 💰 YM BASICS: │
│ ═════════════ │
│ • 1 tick = 1 point = $5/contract │
│ • Typical daily range: 150-400 points │
│ • 30-40% less volatile than NQ │
│ • More institutional, less retail noise │
│ │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 🎯 TIER THRESHOLDS (YM-OPTIMIZED): │
│ ══════════════════════════════════ │
│ S-TIER: 50+ pts = $250+/contract → HOLD (Institutional sweep) │
│ A-TIER: 25-49 pts = $125-245/contract → SWING (Strong momentum) │
│ B-TIER: 12-24 pts = $60-120/contract → SCALP (Quick grab) │
│ │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ⏰ SESSION WINDOWS: │
│ ═══════════════════ │
│ LDN → 3:00-5:00 AM ET (European flow) │
│ NY → 9:30-11:30 AM ET (US opening drive) │
│ PWR → 3:00-4:00 PM ET (End-of-day rebalancing) │
│ │
│ Expected Trades: 1-2 LDN | 2-3 NY | 1-2 PWR = 4-7 total │
│ │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 📊 CONFLUENCE SCORING (MAX 10 POINTS): │
│ ═══════════════════════════════════════ │
│ Tier Signal: S=3, A=2, B=1 points │
│ In Active Zone: +2 points │
│ POC Aligned: +1 point (POC at body extreme) │
│ Imbalance Support:+1 point (supporting IMB nearby) │
│ Strong Volume: +1 point (2x+ average) │
│ Strong Delta: +1 point (70%+ dominance) │
│ CVD Momentum: +1 point (CVD trending with signal) │
│ │
│ MINIMUM SCORE: 5/10 to show signal (adjustable) │
│ IDEAL SCORE: 7+/10 for highest probability │
│ │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 🚨 SIGNAL TYPES: │
│ ═════════════════ │
│ S🎯 / A🎯 / B🎯 → GRA Tier Signals (Full confluence) │
│ Z🎯 → Zone Entry (At DFZ zone + delta + volume) │
│ SP → Single Print (Institutional impulse) │
│ │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ✓ ENTRY CHECKLIST: │
│ ═══════════════════ │
│ □ Signal appears (check Score ≥5) │
│ □ Session active (LDN!/NY!/PWR!) │
│ □ Table: Vol GREEN, Delta colored, Body GREEN │
│ □ CVD arrow (▲/▼) matches direction │
│ □ Note stop/target lines on chart │
│ □ Check Zone status (bonus if IN ZONE) │
│ □ Execute at signal candle close │
│ │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ 🎯 POSITION SIZING BY TIER: │
│ ═══════════════════════════ │
│ S-TIER (50+ pts): Full size, hold 2-5 min, target 2.5:1 R:R │
│ A-TIER (25-49): 75% size, hold 1-3 min, target 2.0:1 R:R │
│ B-TIER (12-24): 50% size, hold 30-90 sec, target 1.5:1 R:R │
│ │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ⛔ DO NOT TRADE WHEN: │
│ ════════════════════ │
│ ✗ Session shows "---" │
│ ✗ Score < 5/10 │
│ ✗ Vol shows RED (<1.8x) │
│ ✗ Delta < 62% │
│ ✗ Multiple conflicting signals │
│ ✗ Just before major news (FOMC, NFP, etc.) │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
```
---
## 📋 WHY YM? LEVERAGING LOW VOLATILITY
### The YM Advantage
Most traders avoid YM because "it doesn't move enough." This is precisely why it's perfect for precision scalping:
| Factor | NQ | YM | Advantage |
|--------|----|----|-----------|
| **Daily Range** | 300-600 pts | 150-400 pts | More predictable moves |
| **Tick Value** | $5/tick (4 ticks/pt) | $5/tick (1 tick/pt) | Simpler math |
| **Retail Noise** | High | Low | Cleaner signals |
| **Whipsaws** | Frequent | Rare | Fewer fakeouts |
| **Trend Persistence** | Short | Long | Easier holds |
| **Fill Quality** | Variable | Consistent | Better execution |
### Why 3-7 Trades is the Sweet Spot
```
YM SESSION BREAKDOWN:
════════════════════
LONDON (3-5 AM ET): 1-2 trades
├── Why: European institutions positioning for US open
├── Character: Slow build-up, clean trends
└── Best signals: Zone entries + A/B tier
NY OPEN (9:30-11:30 AM ET): 2-3 trades
├── Why: Highest volume, most institutional activity
├── Character: Initial balance formation, breakouts
└── Best signals: S/A tier, zone confluence
POWER HOUR (3-4 PM ET): 1-2 trades
├── Why: End-of-day rebalancing, MOC orders
├── Character: Mean reversion or trend acceleration
└── Best signals: Zone entries, B tier quick scalps
TOTAL: 4-7 high-quality setups per day
```
---
## 🔧 YM-SPECIFIC OPTIMIZATIONS
This unified indicator has been specifically tuned for YM's characteristics:
### Tier Thresholds
| Tier | NQ (Original) | YM (Optimized) | Rationale |
|------|---------------|----------------|-----------|
| S-Tier | 100 pts | **50 pts** | YM's daily range is ~50% of NQ |
| A-Tier | 50 pts | **25 pts** | Proportional scaling |
| B-Tier | 20 pts | **12 pts** | Still 5%+ of typical daily range |
### Filter Adjustments
| Filter | NQ Value | YM Value | Why |
|--------|----------|----------|-----|
| Volume Ratio | 1.5x | **1.8x** | Higher bar = less retail noise |
| Delta Threshold | 60% | **62%** | Tighter for cleaner signals |
| Body Ratio | 70% | **72%** | More conviction required |
| Range Multiplier | 1.3x | **1.4x** | Bigger move = real signal |
| Gap ATR% | 30% | **25%** | Smaller gaps still significant |
| Zone Age | 50 bars | **75 bars** | Zones last longer in slow market |
### Why These Changes Work
1. **Higher Volume Bar**: YM has more institutional flow. Requiring 1.8x volume ensures we're catching real moves, not retail chop.
2. **Tighter Delta**: With less noise, we can demand clearer buyer/seller dominance before entering.
3. **Longer Zone Life**: YM trends persist longer. A zone that would be stale in NQ is still viable in YM.
4. **Smaller Gap Threshold**: YM gaps are naturally smaller. 25% of ATR in YM is significant institutional activity.
---
## 📊 CONFLUENCE SCORING SYSTEM
The unified indicator uses a 10-point confluence scoring system to filter for only the highest-probability setups:
### Score Breakdown
```
CONFLUENCE SCORE CALCULATION:
═════════════════════════════
BASE POINTS (Tier):
├── S-Tier signal: +3 points
├── A-Tier signal: +2 points
└── B-Tier signal: +1 point
BONUS POINTS:
├── Inside Active Zone (DFZ): +2 points
│ └── Price within bull/bear zone = institutional level
│
├── POC Alignment: +1 point
│ └── POC at body extreme = strong conviction
│
├── Imbalance Support: +1 point
│ └── Supporting imbalance within 1 ATR
│
├── Strong Volume (2x+): +1 point
│ └── Exceptional institutional participation
│
├── Strong Delta (70%+): +1 point
│ └── Clear one-sided aggression
│
└── CVD Momentum: +1 point
└── CVD trending with signal direction
MAXIMUM POSSIBLE: 10 points
```
### Score Interpretation
| Score | Quality | Action | Expected Win Rate |
|-------|---------|--------|-------------------|
| 8-10 | 🥇 Elite | Full size, hold for target | 75-80% |
| 6-7 | 🥈 Strong | Standard size, manage actively | 65-70% |
| 5 | 🥉 Valid | Reduced size, quick scalp | 55-60% |
| <5 | ⚫ Filtered | No signal shown | N/A |
### Adjusting Minimum Score
- **Conservative (Score ≥6)**: Fewer trades, higher win rate
- **Standard (Score ≥5)**: Balanced approach, 3-7 trades/day
- **Aggressive (Score ≥4)**: More trades, requires active management
---
## 📐 SIGNAL TYPES EXPLAINED
### 1. GRA Tier Signals (S🎯, A🎯, B🎯)
These are the primary signals from the merged GRA system:
```
TIER SIGNAL REQUIREMENTS:
═══════════════════════════
ALL must be TRUE:
├── ✓ Point movement meets tier threshold
├── ✓ Volume ≥ 1.8x average
├── ✓ Delta ≥ 62% (buy or sell dominance)
├── ✓ Body ≥ 72% of candle range
├── ✓ Range ≥ 1.4x average
├── ✓ Small opposite wick (<50% of body)
├── ✓ CVD confirms direction (if enabled)
├── ✓ Active session (LDN/NY/PWR)
└── ✓ Confluence Score ≥ minimum (default 5)
```
### 2. Zone Entry Signals (Z🎯)
When price enters a DeepFlow zone with confirmation:
```
ZONE ENTRY REQUIREMENTS:
═══════════════════════════
ALL must be TRUE:
├── ✓ Price inside fresh/tested zone (not broken)
├── ✓ Delta ≥ 62% in zone direction
├── ✓ Volume ≥ 1.5x average
└── ✓ Active session
NOTE: Z🎯 only appears when NOT already showing tier signal
(prevents duplicate signals on same candle)
```
### 3. Single Print Markers (SP)
Mark institutional impulse candles for future S/R:
```
SINGLE PRINT REQUIREMENTS:
═══════════════════════════
ALL must be TRUE:
├── ✓ Range ≥ 1.6x average
├── ✓ Body ≥ 72% of range
├── ✓ Volume ≥ 1.8x average
├── ✓ Delta ≥ 62% confirms direction
└── ✓ Active session
USE: Horizontal lines at high/low act as future S/R
```
---
## 🎯 TRADING STRATEGIES
### Strategy 1: Zone + Tier Confluence (Highest Probability)
```
THE ULTIMATE YM SETUP:
═══════════════════════
Setup:
1. Active DeepFlow zone exists (green box below for long)
2. Price pulls back INTO the zone
3. Tier signal fires INSIDE the zone (S🎯/A🎯)
4. Score shows 7+/10
Entry: Signal candle close
Stop: Below zone bottom (for longs)
Target: Based on tier (1.5-2.5:1 R:R)
Why It Works:
• Zone = institutional limit orders
• Tier signal = momentum confirmation
• Double confirmation = high probability
Expected Win Rate: 70-75%
```
### Strategy 2: Pure Tier Signal with POC Stop
```
SNIPER TIER TRADE:
══════════════════
Setup:
1. Tier signal appears (preferably A or S)
2. Score ≥ 5/10
3. Note POC level on signal candle
4. Red/green stop/target lines appear
Entry: Signal candle close
Stop: Beyond POC (shown on chart)
Target: Auto-calculated based on tier
Key: POC placement matters
• POC near candle bottom (longs) = STRONG
• POC in middle = weaker signal
• POC at extreme = possible exhaustion
Expected Win Rate: 60-65%
```
### Strategy 3: Zone Bounce (Continuation)
```
ZONE BOUNCE TRADE:
══════════════════
Setup:
1. Fresh zone created during session
2. Price leaves zone, moves in zone direction
3. Price returns to test zone (within 15 bars)
4. Z🎯 signal appears or rejection candle forms
Entry: At CE line (middle of zone)
Stop: Beyond zone edge
Target: Previous swing high/low
Why It Works:
• Zones represent unfilled orders
• First retest often finds support/resistance
• Lower volatility = cleaner bounces
Expected Win Rate: 55-60%
```
### Strategy 4: Single Print Scalp
```
SINGLE PRINT SCALP:
═══════════════════
Setup:
1. Single Print (SP) marker appears
2. Note the gold/purple lines at high/low
3. Wait for price to return to SP level
4. Look for rejection or tier signal at level
Entry: At SP line with confirmation
Stop: Beyond the SP line
Target: Quick 1:1 or to next structure
Why It Works:
• SP = price moved too fast, orders unfilled
• Price often returns to "fill" these levels
• YM's slower pace makes retests likely
Expected Win Rate: 55-60%
```
---
## 📊 TABLE LEGEND
| Field | Reading | Color Meaning |
|-------|---------|---------------|
| **Pts** | Current candle points | Gold/Green/Yellow = Tiered |
| **Tier** | S/A/B/X | Tier color or white |
| **Vol** | Volume ratio | 🟢 ≥1.8x, 🔴 <1.8x |
| **Delta** | Buy/Sell % | 🟢 Buy dom, 🔴 Sell dom |
| **Body** | Body % of range | 🟢 ≥72%, 🔴 <72% |
| **CVD** | Trend direction | ▲ Bullish, ▼ Bearish |
| **Sess** | Active session | 🟡 LDN!/NY!/PWR!, ⚫ --- |
| **POC** | Point of Control | 🟡 Gold price level |
| **Zone** | Zone position | 🟢 BUY⬚, 🔴 SELL⬚, ⚫ --- |
| **Zones** | Active zone count | #B/#S format |
| **Score** | Confluence score | 🟢 7+, 🟡 5-6, ⚫ <5 |
| **IMB** | Recent imbalances | Count in last 10 bars |
| **R:R** | Risk/Reward | 🟢 On signal, ⚫ No signal |
---
## ⏰ SESSION-SPECIFIC PLAYBOOKS
### London Session (3:00-5:00 AM ET)
```
CHARACTER: Slow, methodical, trend-building
VOLUME: Medium (50-70% of NY)
BEST SETUPS: Zone entries, A/B tier with zones
PLAYBOOK:
• Enter on zone retests
• Expect 15-25 pt moves
• Don't fight early direction
• Watch for pre-NY positioning
TYPICAL TRADES: 1-2
```
### NY Open (9:30-11:30 AM ET)
```
CHARACTER: Fast, volatile, high-conviction
VOLUME: Highest of day
BEST SETUPS: S/A tier, zone confluence
PLAYBOOK:
• First 15 min: Observe Initial Balance
• 9:45-10:15: Best setups form
• S-tier signals = ride the wave
• Be aggressive on high scores
TYPICAL TRADES: 2-3
```
### Power Hour (3:00-4:00 PM ET)
```
CHARACTER: Rebalancing, MOC orders
VOLUME: Medium-high (70-80% of NY)
BEST SETUPS: B tier scalps, zone entries
PLAYBOOK:
• Watch for mean reversion setups
• Quick scalps around POC levels
• Don't hold through close
• Take profits at 1:1 R:R
TYPICAL TRADES: 1-2
```
---
## 🔧 RECOMMENDED SETTINGS
### Conservative (Fewer, Better Trades)
| Setting | Value | Notes |
|---------|-------|-------|
| Min Confluence Score | 6 | Only strong setups |
| Min Volume Ratio | 2.0 | Higher bar |
| Delta Threshold | 65% | Stricter dominance |
| Max Zones | 8 | Less clutter |
### Standard (Balanced)
| Setting | Value | Notes |
|---------|-------|-------|
| Min Confluence Score | 5 | Default |
| Min Volume Ratio | 1.8 | Default |
| Delta Threshold | 62% | Default |
| Max Zones | 12 | Default |
### Aggressive (More Opportunities)
| Setting | Value | Notes |
|---------|-------|-------|
| Min Confluence Score | 4 | More signals |
| Min Volume Ratio | 1.5 | Lower bar |
| Delta Threshold | 60% | Looser |
| Max Zones | 15 | More context |
---
## 🚨 ALERT SETUP
Configure these alerts in TradingView:
| Alert | Priority | Action |
|-------|----------|--------|
| 🎯 YM S-TIER LONG/SHORT | 🔴 CRITICAL | Drop everything, check immediately |
| 🎯 YM A-TIER LONG/SHORT | 🟠 HIGH | Evaluate within 15 seconds |
| 🎯 YM B-TIER LONG/SHORT | 🟡 MEDIUM | Check if available |
| 🎯 YM ZONE BUY/SELL | 🟢 STANDARD | Good context entry |
| 📦 NEW ZONE | 🔵 INFO | Mark on mental map |
| ⭐ SINGLE PRINT | 🔵 INFO | Note for future S/R |
| SESSION OPEN | ⚪ INFO | Prepare to trade |
### Alert Message Format
```
🎯 YM A-LONG | YM1! @ 42,150 | 68%B | Score: 7/10 | IN ZONE | POC: 42,125 | Stop: 42,098 | SWING
```
---
## ⚠️ COMMON MISTAKES TO AVOID
| Mistake | Why It's Bad | Solution |
|---------|-------------|----------|
| Trading outside sessions | Low volume = noise | Wait for LDN/NY/PWR |
| Ignoring score | Low scores = low probability | Require ≥5/10 |
| Fighting the zone | Zones are institutional | Trade WITH zones |
| Oversizing B-tier | Quick scalps, not holds | 50% size max |
| Holding through news | Volatility spike | Exit before FOMC, NFP |
| Chasing after signal | Entry on close only | Miss it = wait for next |
| Ignoring POC position | Middle POC = indecision | Strong = extreme POC |
---
## 📈 DAILY TRADE JOURNAL TEMPLATE
```
DATE: ___________
SESSION: □ LDN □ NY □ PWR
TRADE 1:
├── Time: _______
├── Signal: S🎯 / A🎯 / B🎯 / Z🎯
├── Score: ___/10
├── Entry: _______
├── Stop: _______
├── Target: _______
├── In Zone: □ Yes □ No
├── Result: +/- ___ pts ($_____)
└── Notes: _______________________
TRADE 2:
DAILY SUMMARY:
├── Total Trades: ___
├── Win Rate: ___%
├── Net P/L: $_____
├── Best Setup: _______
└── Improvement: _______________________
```
---
## 🏆 GOLDEN RULES FOR YM
> **"YM rewards patience. Wait for the confluence—it's worth it."**
> **"Low volatility means you can size up. One good trade beats five forced trades."**
> **"Score 7+ is your edge. Anything less is gambling."**
> **"The zone + tier combo is your bread and butter. Master it."**
> **"Leave every trade with money. YM gives you time to manage."**
---
## 📊 VISUAL GUIDE
```
PERFECT YM SNIPER SETUP:
═══════════════════════════════════════════════════════════════════
│ Current Price
│
┌─────────────────────────┴────────────────────────────┐
│ BEARISH ZONE (Red) │
│- - - - - - - CE Line (Entry for shorts) - - - - - - │
│ │
└──────────────────────────────────────────────────────┘
│
══════════════════╪══════════════════ SP High (Purple)
│
┌─────────────────────┤
│█████████████████████│ ← A🎯 LONG Signal
│█████████████████████│ Score: 8/10
│ ●──────────────────│ ← POC (Gold) near bottom = STRONG
│█████████████████████│
│█████████████████████│
└─────────────────────┤
│
══════════════════╪══════════════════ SP Low (Purple)
│
┌─────────────────────────┴────────────────────────────┐
│ BULLISH ZONE (Green) │
│- - - - - - - CE Line (Entry for longs) - - - - - - -│
│██████████████████████████████████████████████████████│
└──────────────────────────────────────────────────────┘
│
Stop Loss
CONFLUENCE CHECK:
✓ A-Tier signal (+2)
✓ At edge of bullish zone (+2)
✓ POC at bottom of candle (+1)
✓ Strong volume 2.3x (+1)
✓ Delta 72% buyers (+1)
✓ CVD bullish (+1)
TOTAL: 8/10 = ELITE SETUP
ACTION: Full size LONG at signal candle close
STOP: Below zone bottom
TARGET: 2:1 R:R (auto-calculated)
```
---
## 🔧 TROUBLESHOOTING
| Issue | Cause | Fix |
|-------|-------|-----|
| No signals appearing | Score too high | Lower min score to 4-5 |
| Too many signals | Score too low | Raise min score to 6+ |
| Zones cluttering chart | Max zones high | Reduce to 8-10 |
| POC not showing | Tiered filter on | Check "POC Only Tiered" |
| Session not highlighting | Wrong timezone | Verify timezone setting |
| Alerts not firing | Not configured | Set up in TradingView alerts |
---
## 📝 PINE SCRIPT V6 TECHNICAL NOTES
This indicator uses advanced features:
- **User Defined Types (UDT)**: Clean state management for zones/imbalances
- **`request.security_lower_tf()`**: Intrabar volume analysis
- **Dynamic Array Management**: Efficient memory for drawings
- **Confluence Scoring Engine**: Multi-factor signal qualification
- **Auto Stop/Target**: Dynamic risk management calculation
**Minimum TradingView Plan:** Pro (for intrabar data access)
---
*© Alexandro Disla - YM Ultimate SNIPER*
*Pine Script v6 | TradingView*
*Unified GRA v5 + DeepFlow Zones | YM-Optimized*
Ultimate Market Structure + MTF Dashboard [FIXED]Ultimate Market Structure + MTF Dashboard — Indicator Description
🔶 Overview
Ultimate Market Structure + MTF Dashboard is a fully-automated Smart Money Concepts (SMC) market-structure indicator designed to give traders extremely clean and accurate structural mapping on any timeframe.
It intelligently detects:
External (Swing) Structure
Internal Structure
BOS / CHoCH (Break of Structure / Change of Character)
HH/HL/LH/LL swing labels
Strong/Weak Highs & Lows
Equal Highs (EQH) & Equal Lows (EQL)
Internal BOS/CHoCH (micro-structure)
Multi-Timeframe Structure Dashboard (D, H4, H1, M15, M5)
This indicator eliminates clutter, repaints nothing, and provides crystal-clear visual understanding of market direction.
🎯 What This Indicator Solves
Most structure indicators fail because they:
✔ spam BOS/CHoCH everywhere
✔ repaint pivots
✔ mix internal and external structure
✔ draw messy lines
✔ ignore confluence
✔ don’t show higher timeframe structure
This script solves all of that by using:
Gap-proof pivot detection
Strict internal/external structure separation
Proper BOS/CHoCH logic using previous break
“LastBreak memory” system (no double BOS on same leg)
ATR-filtered internal pivots
Candle-context confluence filter
User-controlled filters for BOS/CHoCH only
Everything is designed for clean, reliable structure.
🧠 How It Works (Logic Explained Clearly)
1️⃣ Swing Structure – External
Based on user-defined swing length (default: 50).
Detects major turning points and evaluates:
HH / HL → Bullish structure
LH / LL → Bearish structure
Once a swing high/low is confirmed, the indicator tracks:
Has price crossed that pivot?
If yes → BOS or CHoCH depending on previous break direction.
2️⃣ Internal Structure – Micro Trend
A second layer using small length pivots (default: 5).
Useful for:
Entries
Scalp-level reversals
Early CHoCH detection
Internal structure uses ATR distance from swing pivots to avoid overlap.
3️⃣ BOS / CHoCH Logic
The script uses a very strict rule:
If previous break direction was opposite → CHoCH
If previous break direction was same → BOS
This eliminates false CHoCH spam and improves trend clarity.
4️⃣ Strong & Weak High/Low Detection
Each time a BOS occurs:
In bearish trend → last swing high = Strong High
In bullish trend → last swing low = Strong Low
Opposite becomes Weak High/Weak Low
These are important Smart Money Concepts levels for:
Premium/discount zones
Liquidity targets
Stop hunts
5️⃣ Equal Highs & Equal Lows (EQH/EQL)
The script automatically identifies EQH/EQL using:
Percentage threshold
Confirmation bar count
Useful for:
Liquidity sweep setups
Inducement
Stop runs
6️⃣ Multi-Timeframe Dashboard
Displays Internal & External structure for:
D (Daily)
H4
H1
M15
M5
Each cell is color-coded:
🟢 Bullish
🔴 Bearish
⚪ Neutral
This gives you instant top-down analysis without switching charts.
📌 What You Can Use This Indicator For
✔ Trend Trading
Keep trades aligned with:
Higher timeframe external trend
Lower timeframe internal entries
For example:
Daily → Bullish
H1 → Bullish
M5 → CHoCH bullish
Entry → Pullback to strong low
✔ Scalping
Internal structure (i-BOS, i-CHoCH) gives:
Fast reversals
Micro CHoCH entries
High-frequency trend shifts
Works extremely well on 1M–5M.
✔ Smart Money Concepts Trading
This indicator gives every SMC component you need:
Liquidity (EQH/EQL)
Swing structure
Internal structure
BOS/CHoCH
Strong/Weak High/Low
Multi-TF context
Perfect for ICT/SMC trading style.
✔ Institutional Order Flow Mapping
Using strong/weak highs/lows and BOS, you can easily determine:
Where smart money targets your stops
Where displacement started
Where structure shifted
Where mitigation may occur
✔ High-Timeframe Confirmation
The dashboard prevents you from trading against:
Daily trend
H4 liquidity levels
H1 structure direction
📈 Who Is This Indicator For?
Beginners
Learn structure visually instead of guessing.
Advanced Traders
Combine structure with:
Liquidity sweeps
FVG
OB
Breaker blocks
Momentum shifts
Scalpers
Use internal BOS/CHoCH for sniper entries.
Swing Traders
Use swing BOS to hold trades for large R:R moves.
ICT / SMC Traders
Perfect for order-block & FVG models.
📌 Recommended Settings
Swing Structure
Length: 50–100
Best for BTC, FX, XAU
Internal Structure
Length: 3–7
Best for scalping
EQ Threshold
FX: 0.10% – 0.25%
Crypto: 0.35% – 0.5%
Confirm Method
Close = safer
Wick = aggressive (scalping)
🧩 Unique Features (Compared to Other Indicators)
✔ Advanced gap-proof pivot engine
✔ Proper historical vs. present structure mode
✔ ATR-filtered internal pivots
✔ Smart confluence filter (detect candle context)
✔ Chart remains clean & minimal
✔ Works on all timeframes including 1-second
✔ No repaint structure
✔ Optimised for high-volatility assets like XAUUSD
🔚 Final Notes
This indicator was engineered to give traders a complete structure toolkit with professional-grade accuracy normally found only in premium paid tools.
With:
Clean BOS/CHoCH
Perfect swing tracking
Full multi-TF dashboard
Smart liquidity detection
Strong/weak level mapping
You can analyse any market with clarity and confidence.
Fractals by KaraTradeFractals by KaraTrade
OVERVIEW
This indicator identifies fractal patterns on the chart, which are key reversal points in price action. Fractals help traders identify potential support and resistance levels, as well as trend reversal zones.
WHAT IS A FRACTAL?
A fractal is a pattern where a central candle's high or low is surrounded by lower highs or higher lows on both sides. Fractals indicate where the market has made a local extreme and potentially reversed direction.
FEATURES
5-Candle Fractals (Dark Gray X marks)
Stronger signals with strict pattern validation
Requires a clear sequence where each candle progressively moves toward the center and then away
Bearish fractal: high < high < high > high > high
Bullish fractal: low > low > low < low < low
The central candle must be the highest high (bearish) or lowest low (bullish)
Displayed with offset=-2 on the central candle
3-Candle Fractals (Light Gray Triangles)
Weaker signals for more frequent patterns
Simpler pattern: central candle must be higher or lower than both neighbors
Bearish fractal: high < high > high
Bullish fractal: low > low < low
Displayed with offset=-1 on the central candle
SETTINGS
Show 5-Candle Fractals: Toggle 5-candle fractal display
Show 3-Candle Fractals: Toggle 3-candle fractal display
HOW TO USE
Bearish Fractals (top): Potential resistance levels or sell zones
Bullish Fractals (bottom): Potential support levels or buy zones
Use in combination with other indicators for confirmation
5-candle fractals are more reliable but less frequent
3-candle fractals provide more signals but require additional confirmation
TECHNICAL DETAILS
Uses strict sequential logic (no equal values allowed)
Based on high/low prices (including wicks/shadows)
Displays with a delay for pattern confirmation
Compatible with all timeframes
Created by KaraTrade
BORSA 321 - Care PackageOverview
Care Package is a complete higher-timeframe and intraday context tool designed to map out every important environmental factor on your chart: sessions, opening levels, gaps, market structure, order blocks, fair value gaps, volume imbalance and more.
It automatically plots:
Sessions / killzones (Asia, London, New York AM/Lunch/PM)
Key opening levels (00:00, 08:30, 09:30, 13:30)
Previous day AM/PM high–low ranges
New Day and New Week Opening Gaps (NDOG / NWOG)
RTH gap and RTH zone levels
Multi-timeframe Fair Value Gaps (up to 4)
Fractals and Order Blocks (with optional FVG confirmation)
Market structure (HH/HL/LL/LH, CHoCH, BOS)
Volume Imbalance zones with mitigation logic
All session logic runs on IANA time zones (like America/New_York), giving accurate sessions and market opens regardless of DST or broker feed.
Care Package serves as the full “context layer” for intraday execution charts.
What It Shows
1. Sessions / Killzones
The indicator automatically highlights:
Asia Session
London Session
New York AM
New York Lunch
New York PM
Each session displays:
A high–low range box
Labels for session high and session low
A midline showing the mean price
Optional forward extensions of session levels to the current bar
This cleanly outlines intraday phases for ICT/SMC execution.
2. Opening Price Levels
Key market open levels tracked:
00:00
08:30
09:30
13:30
For each open, the script draws:
A horizontal line at the opening price
A label showing time and price
An optional vertical line marking the opening bar
These opens often act as liquidity or reversal areas.
3. Previous Day AM/PM Levels
The script splits the prior day into:
Previous Day AM (first half)
Previous Day PM (second half)
Both provide:
PD AM High, PD AM Low
PD PM High, PD PM Low
Forward-projected levels
Labels for easy identification
Useful for navigating intraday targets and reaction zones.
4. Last N Days High/Low
Tracks a rolling daily range:
Each day’s High and Low
Labels containing the date
Forward extension into today’s price action
This shows where price sits relative to recent daily extremes.
5. New Day & New Week Opening Gaps (NDOG / NWOG)
The script automatically identifies:
NDOG (New Day Open Gap)
NWOG (New Week Open Gap)
Each gap includes:
A shaded zone between the two opens
Labels showing the gap type and date/week
Forward extension (optional)
Limiting the number of historical gaps (optional)
Critical for identifying unfilled imbalance zones across sessions and weeks.
6. RTH Gap & RTH Zone
You define RTH open/close times, and the indicator:
Detects RTH gaps
Draws a full zone based on direction
Plots subdivision lines (top, 75%, mid, 25%, bottom)
Extends the RTH Close reference line forward
Can extend old RTH zones automatically
Ideal for futures traders and equities.
7. Higher-Timeframe Fair Value Gaps (up to 4 TFs)
Supports up to four selectable FVG timeframes such as:
Chart timeframe
5m, 15m, 1H, 4H, 1D, 1W, 1M
Each FVG includes:
Top and bottom boundary
A midline (mean threshold)
Colored bullish or bearish fill
A label showing FVG + timeframe
Automatic cleanup when mitigated (close/wick based)
You get a clean and accurate HTF FVG map without clutter.
8. Fractals & Order Blocks
Fractals:
Standard or 5-bar fractals
Plotted as swing highs and lows
Order Blocks:
Bullish OB → down candle before up displacement
Bearish OB → up candle before down displacement
Optionally require OB to be near an FVG
Wick-based or body-based OB size
Forward-projected OB boxes
Auto-delete after mitigation
This keeps your OBs clean and execution-focused.
9. Market Structure (HH/HL/LL/LH, CHoCH, BOS)
The indicator automatically detects:
HH (Higher High)
HL (Higher Low)
LH (Lower High)
LL (Lower Low)
And also identifies:
CHoCH (Change of Character)
BOS (Break of Structure)
Each break includes:
A horizontal level at the break point
A color-coded label
Bullish (green) or bearish (red) styling
A complete market structure map is built automatically.
10. Volume Imbalances (VI)
Detects and displays:
Bullish VI (VI+)
Bearish VI (VI-)
Features:
Configurable colors
Custom label size
Max visible boxes
Extension until mitigation
Automatic mitigation detection (close or wick)
Highlight when price enters an active VI
Perfect for tracking aggressive buying/selling footprints.
11. Timezone & Date/Time Widget
Uses IANA timezones for:
Accurate session boundaries
Proper DST handling
Multi-market consistency
Also includes a small on-chart table showing:
Your timezone date/time
Exchange timezone date/time
Great for globally active traders.
12. Max Display Timeframe
To prevent clutter, the script disables visuals above a chosen timeframe.
If you exceed it:
A clean on-chart message appears
Tells you to lower your chart TF or adjust the Max Display TF
Keeps charts fast and clean
Key Inputs & Customization
Timezone (IANA format)
Max Display Timeframe
Session/Killzone toggles, colors, naming
Opening levels (00:00 / 08:30 / 09:30 / 13:30)
Previous Day AM/PM highs/lows
NDOG / NWOG gap settings
RTH gap settings
FVG batching (4 independent timeframes)
Fractal type
Order Block settings (range type, deletion, FVG filter)
Market structure settings
Volume Imbalance settings
Date/time widget settings
Everything is modular — turn features on/off individually.
How It Helps Traders
For Intraday Traders / Scalpers:
Session mapping for timing setups
Exact key opening prices
RTH gaps and internals
Precise daily AM/PM high–low context
HTF FVGs, OBs, VI zones for higher-timeframe bias
Real-time CHoCH/BOS for entry timing
For Swing Traders:
Daily/weekly context plotted automatically
NDOG, NWOG, RTH gap awareness
Macro structure levels
HTF FVGs and OBs for HTF targets
Scout Regiment - OBV# Scout Regiment - OBV Indicator
## English Documentation
### Overview
Scout Regiment - OBV (On-Balance Volume) is an advanced momentum indicator that combines volume and price movement to identify the strength of buying and selling pressure. This indicator features an oscillator-based approach with divergence detection to help traders spot potential trend reversals and confirm price movements.
### What is OBV?
On-Balance Volume (OBV) is a cumulative volume indicator that adds volume on up days and subtracts volume on down days:
- **Rising OBV**: Accumulation (buying pressure)
- **Falling OBV**: Distribution (selling pressure)
- **OBV Oscillator**: The difference between OBV and its smoothed moving average, making divergences easier to spot
### Key Features
#### 1. **OBV Oscillator Display**
Instead of displaying raw OBV values, this indicator shows the oscillator (difference between OBV and its smoothed line):
**Benefits:**
- Easier to identify divergences
- Clearer trend changes
- More sensitive to momentum shifts
- Zero line as reference point
**Visual Elements:**
- **Step Line**: Main OBV oscillator line
- Green: Positive oscillator (accumulation)
- Red: Negative oscillator (distribution)
- **Histogram**: Visual representation of oscillator strength
- Green bars: Above zero line
- Red bars: Below zero line
- **Zero Line**: White dotted horizontal line as reference
#### 2. **Smoothing Options**
Choose from multiple moving average types to smooth the OBV:
- **None**: Raw OBV (most sensitive)
- **SMA**: Simple Moving Average (equal weight)
- **EMA**: Exponential Moving Average (recent price emphasis) - Default
- **SMMA (RMA)**: Smoothed Moving Average (very smooth)
- **WMA**: Weighted Moving Average (linear weight)
- **VWMA**: Volume Weighted Moving Average (volume emphasis)
**Default Settings:**
- Type: EMA
- Length: 21 periods
- Best for: Most market conditions
#### 3. **Multi-Timeframe Analysis**
- Calculate OBV on any timeframe
- View higher timeframe momentum on lower timeframe charts
- Align trades with larger timeframe volume trends
- Empty field = Current chart timeframe
#### 4. **Visual Enhancements**
**Background Color**
- Light green: Positive oscillator (bullish volume pressure)
- Light red: Negative oscillator (bearish volume pressure)
- Optional display for cleaner charts
**Crossover Labels**
- "突破" (Breakout): When oscillator crosses above zero
- "跌破" (Breakdown): When oscillator crosses below zero
- Indicates potential trend changes
- Can be toggled on/off
#### 5. **Comprehensive Divergence Detection**
The indicator automatically detects four types of divergences:
**Regular Bullish Divergence (Yellow)**
- **Price**: Makes lower lows
- **OBV**: Makes higher lows
- **Signal**: Potential upward reversal
- **Label**: "看涨" (Bullish)
- **Use**: Enter long positions
**Regular Bearish Divergence (Blue)**
- **Price**: Makes higher highs
- **OBV**: Makes lower highs
- **Signal**: Potential downward reversal
- **Label**: "看跌" (Bearish)
- **Use**: Enter short positions or exit longs
**Hidden Bullish Divergence (Light Yellow)**
- **Price**: Makes higher lows
- **OBV**: Makes lower lows
- **Signal**: Trend continuation (uptrend)
- **Label**: "隐藏看涨" (Hidden Bullish)
- **Use**: Add to long positions
**Hidden Bearish Divergence (Light Blue)**
- **Price**: Makes lower highs
- **OBV**: Makes higher highs
- **Signal**: Trend continuation (downtrend)
- **Label**: "隐藏看跌" (Hidden Bearish)
- **Use**: Add to short positions
#### 6. **Customizable Divergence Detection**
**Pivot Lookback Settings:**
- **Left Lookback**: Bars to the left of pivot (default: 5)
- **Right Lookback**: Bars to the right of pivot (default: 5)
- Determines how "extreme" a point must be to qualify as a pivot
**Range Settings:**
- **Maximum Range**: Maximum bars between pivots (default: 60)
- **Minimum Range**: Minimum bars between pivots (default: 5)
- Filters out too-close or too-distant divergences
**Display Options:**
- Toggle regular divergences on/off
- Toggle hidden divergences on/off
- Toggle divergence labels on/off
- Show only the divergences you need
### Configuration Settings
#### Smoothing Settings
- **Smoothing Type**: Choose MA type (None/SMA/EMA/SMMA/WMA/VWMA)
- **Smoothing Length**: Number of periods for smoothing (default: 21)
#### Calculation Settings
- **Timeframe**: Select calculation timeframe (empty = current chart)
#### Display Settings
- **Show OBV Line**: Toggle step line display
- **Show OBV Histogram**: Toggle histogram display
- **Show Background Color**: Toggle background coloring
- **Show Crossover Labels**: Toggle breakout/breakdown labels
#### Divergence Settings
- **Pivot Right Lookback**: Right bars for pivot detection (default: 5)
- **Pivot Left Lookback**: Left bars for pivot detection (default: 5)
- **Range Maximum**: Max bars between divergences (default: 60)
- **Range Minimum**: Min bars between divergences (default: 5)
- **Show Regular Divergences**: Enable/disable regular divergences
- **Show Regular Labels**: Enable/disable regular divergence labels
- **Show Hidden Divergences**: Enable/disable hidden divergences
- **Show Hidden Labels**: Enable/disable hidden divergence labels
### How to Use
#### For Trend Confirmation
1. **Identify Trend with Price**
- Uptrend: Higher highs and higher lows
- Downtrend: Lower highs and lower lows
2. **Confirm with OBV Oscillator**
- Strong uptrend: OBV oscillator staying positive
- Strong downtrend: OBV oscillator staying negative
- Weak trend: OBV oscillator frequently crossing zero
3. **Volume Confirmation**
- Trend with increasing OBV = Strong trend
- Trend with decreasing OBV = Weak trend (watch for reversal)
#### For Divergence Trading
1. **Enable Divergence Detection**
- Start with regular divergences only
- Add hidden divergences for trend continuation
2. **Wait for Divergence Signal**
- Yellow label = Potential bullish reversal
- Blue label = Potential bearish reversal
3. **Confirm with Price Action**
- Wait for support/resistance break
- Look for candlestick confirmation
- Check higher timeframe alignment
4. **Enter Trade**
- Enter after confirmation
- Set stop loss beyond recent swing
- Target based on previous swing or support/resistance
#### For Breakout Trading
1. **Enable Crossover Labels**
- Identify when oscillator crosses zero line
2. **Confirm Volume Strength**
- Strong breakouts have large oscillator moves
- Weak breakouts barely cross zero
3. **Trade Direction**
- "突破" label = Enter long
- "跌破" label = Enter short
4. **Manage Position**
- Exit when oscillator crosses back
- Use price structure for stops
#### For Multi-Timeframe Analysis
1. **Set Higher Timeframe**
- Example: On 15min chart, set timeframe to 1H or 4H
2. **Identify Higher Timeframe Trend**
- Positive oscillator = Uptrend bias
- Negative oscillator = Downtrend bias
3. **Trade with the Trend**
- Only take long signals in uptrend
- Only take short signals in downtrend
4. **Time Entries**
- Use current timeframe for precise entry
- Confirm with higher timeframe direction
### Trading Strategies
#### Strategy 1: Regular Divergence Reversal
**Setup:**
1. Price in strong trend (up or down)
2. Regular divergence appears
3. Price reaches support/resistance level
**Entry:**
- Bullish: After "看涨" label, when price breaks above recent high
- Bearish: After "看跌" label, when price breaks below recent low
**Stop Loss:**
- Bullish: Below divergence low
- Bearish: Above divergence high
**Exit:**
- Take profit at next major support/resistance
- Or when opposite divergence appears
**Best For:** Swing trading, reversal trading
#### Strategy 2: Hidden Divergence Continuation
**Setup:**
1. Clear trend established
2. Price pulls back (retracement)
3. Hidden divergence appears
**Entry:**
- Bullish: After "隐藏看涨" label, when price resumes uptrend
- Bearish: After "隐藏看跌" label, when price resumes downtrend
**Stop Loss:**
- Behind the pullback swing point
**Exit:**
- Trail stop as trend continues
- Exit on regular divergence (reversal signal)
**Best For:** Trend following, adding to positions
#### Strategy 3: Zero Line Crossover
**Setup:**
1. Enable crossover labels
2. Oscillator crosses zero line
3. Confirm with price structure break
**Entry:**
- "突破" label = Buy signal
- "跌破" label = Sell signal
**Stop Loss:**
- Below/above recent swing
**Exit:**
- When oscillator crosses back over zero
- Or at predetermined target
**Best For:** Momentum trading, quick trades
#### Strategy 4: Multi-Timeframe Confluence
**Setup:**
1. Set indicator to higher timeframe (e.g., 4H on 1H chart)
2. Wait for higher TF oscillator to be positive (uptrend) or negative (downtrend)
3. Look for entries on current timeframe aligned with higher TF
**Entry:**
- Long: When both timeframes show positive oscillator or bullish divergence
- Short: When both timeframes show negative oscillator or bearish divergence
**Stop Loss:**
- Based on current timeframe structure
**Exit:**
- When higher timeframe oscillator turns negative (for longs) or positive (for shorts)
**Best For:** Swing trading, high-probability setups
### Best Practices
#### Volume Analysis
1. **Strong Moves Need Volume**
- Price increase + Rising OBV = Healthy uptrend
- Price increase + Falling OBV = Weak uptrend (warning)
2. **Watch for Confirmation**
- New highs with new OBV highs = Confirmed
- New highs without new OBV highs = Potential divergence
3. **Consider Context**
- Low volume periods (Asian session, holidays) = Less reliable
- High volume periods (News, London/NY overlap) = More reliable
#### Divergence Trading Tips
1. **Not All Divergences Work**
- Wait for price confirmation
- Stronger in oversold/overbought areas
- Better at support/resistance levels
2. **Multiple Divergences**
- Multiple divergences on same trend = Stronger signal
- Quick divergence failures = Ignore and wait for next
3. **Timeframe Matters**
- Higher timeframe divergences = More reliable
- Lower timeframe divergences = More frequent, less reliable
#### Smoothing Selection
1. **No Smoothing (None)**
- Most sensitive, more signals
- More noise, more false signals
- Best for: Scalping, very active trading
2. **EMA (Default)**
- Balanced approach
- Good for most strategies
- Best for: Swing trading, day trading
3. **SMMA (RMA)**
- Very smooth, fewer signals
- Less responsive to sudden changes
- Best for: Position trading, longer timeframes
### Indicator Combinations
**With Moving Averages:**
- Use EMAs for trend direction
- OBV for volume confirmation
- Enter when both align
**With RSI:**
- RSI for overbought/oversold
- OBV for volume confirmation
- Divergences on both = Stronger signal
**With Price Action:**
- Support/resistance for levels
- OBV for strength confirmation
- Breakouts with positive OBV = More likely to succeed
**With Bias Indicator:**
- Bias for price deviation
- OBV for volume confirmation
- Both showing divergence = High probability reversal
### Common Patterns
1. **Accumulation**: OBV rising while price consolidates (breakout likely)
2. **Distribution**: OBV falling while price consolidates (breakdown likely)
3. **Confirmation**: OBV and price both making new highs/lows (trend strong)
4. **Divergence**: OBV and price moving opposite directions (reversal warning)
5. **False Breakout**: Price breaks but OBV doesn't confirm (likely to fail)
### Performance Tips
- Disable unused display features for faster loading
- Start with regular divergences only, add hidden later
- Use histogram for quick visual reference
- Enable crossover labels for clear entry signals
- Test different smoothing lengths for your market
### Alert Conditions
The indicator includes alerts for:
- Regular bullish divergence detected
- Regular bearish divergence detected
- Hidden bullish divergence detected
- Hidden bearish divergence detected
**How to Set Alerts:**
1. Click on the indicator name
2. Select "Add Alert"
3. Choose condition
4. Configure notification method
---
## 中文说明文档
### 概述
Scout Regiment - OBV(能量潮)是一个高级动量指标,结合成交量和价格变动来识别买卖压力的强度。该指标采用振荡器方法并具有背离检测功能,帮助交易者发现潜在的趋势反转并确认价格走势。
### 什么是OBV?
能量潮(OBV)是一个累积成交量指标,在上涨日累加成交量,在下跌日减去成交量:
- **上升的OBV**:积累(买入压力)
- **下降的OBV**:派发(卖出压力)
- **OBV振荡器**:OBV与其平滑移动平均线之间的差值,使背离更容易识别
### 核心功能
#### 1. **OBV振荡器显示**
该指标不显示原始OBV值,而是显示振荡器(OBV与其平滑线之间的差值):
**优势:**
- 更容易识别背离
- 趋势变化更清晰
- 对动量变化更敏感
- 零线作为参考点
**视觉元素:**
- **阶梯线**:主OBV振荡器线
- 绿色:正振荡器(积累)
- 红色:负振荡器(派发)
- **柱状图**:振荡器强度的可视化表示
- 绿色柱:零线以上
- 红色柱:零线以下
- **零线**:白色虚线作为参考
#### 2. **平滑选项**
选择多种移动平均类型来平滑OBV:
- **None**:原始OBV(最敏感)
- **SMA**:简单移动平均(等权重)
- **EMA**:指数移动平均(强调近期价格)- 默认
- **SMMA (RMA)**:平滑移动平均(非常平滑)
- **WMA**:加权移动平均(线性权重)
- **VWMA**:成交量加权移动平均(强调成交量)
**默认设置:**
- 类型:EMA
- 长度:21周期
- 适合:大多数市场状况
#### 3. **多时间框架分析**
- 在任何时间框架上计算OBV
- 在低时间框架图表上查看高时间框架动量
- 使交易与更大时间框架的成交量趋势保持一致
- 空字段 = 当前图表时间框架
#### 4. **视觉增强**
**背景颜色**
- 浅绿色:正振荡器(看涨成交量压力)
- 浅红色:负振荡器(看跌成交量压力)
- 可选显示,图表更清爽
**穿越标签**
- "突破":振荡器向上穿越零线
- "跌破":振荡器向下穿越零线
- 指示潜在趋势变化
- 可开关
#### 5. **全面的背离检测**
指标自动检测四种类型的背离:
**常规看涨背离(黄色)**
- **价格**:创新低
- **OBV**:创更高的低点
- **信号**:潜在向上反转
- **标签**:"看涨"
- **用途**:进入多头仓位
**常规看跌背离(蓝色)**
- **价格**:创新高
- **OBV**:创更低的高点
- **信号**:潜在向下反转
- **标签**:"看跌"
- **用途**:进入空头仓位或退出多头
**隐藏看涨背离(浅黄色)**
- **价格**:创更高的低点
- **OBV**:创更低的低点
- **信号**:趋势延续(上升趋势)
- **标签**:"隐藏看涨"
- **用途**:加仓多头
**隐藏看跌背离(浅蓝色)**
- **价格**:创更低的高点
- **OBV**:创更高的高点
- **信号**:趋势延续(下降趋势)
- **标签**:"隐藏看跌"
- **用途**:加仓空头
#### 6. **可自定义的背离检测**
**枢轴回溯设置:**
- **左侧回溯**:枢轴点左侧K线数(默认:5)
- **右侧回溯**:枢轴点右侧K线数(默认:5)
- 决定一个点要多"极端"才能成为枢轴点
**范围设置:**
- **最大范围**:枢轴点之间最大K线数(默认:60)
- **最小范围**:枢轴点之间最小K线数(默认:5)
- 过滤太近或太远的背离
**显示选项:**
- 开关常规背离
- 开关隐藏背离
- 开关背离标签
- 只显示需要的背离
### 配置设置
#### 平滑设置
- **平滑类型**:选择MA类型(None/SMA/EMA/SMMA/WMA/VWMA)
- **平滑长度**:平滑周期数(默认:21)
#### 计算设置
- **时间周期**:选择计算时间框架(空 = 当前图表)
#### 显示设置
- **显示OBV点线**:切换阶梯线显示
- **显示OBV柱状图**:切换柱状图显示
- **显示背景颜色**:切换背景着色
- **显示突破标签**:切换突破/跌破标签
#### 背离设置
- **枢轴右侧回溯**:枢轴检测右侧K线数(默认:5)
- **枢轴左侧回溯**:枢轴检测左侧K线数(默认:5)
- **回看范围最大值**:背离之间最大K线数(默认:60)
- **回看范围最小值**:背离之间最小K线数(默认:5)
- **显示常规背离**:启用/禁用常规背离
- **显示常规背离标签**:启用/禁用常规背离标签
- **显示隐藏背离**:启用/禁用隐藏背离
- **显示隐藏背离标签**:启用/禁用隐藏背离标签
### 使用方法
#### 趋势确认
1. **用价格识别趋势**
- 上升趋势:更高的高点和更高的低点
- 下降趋势:更低的高点和更低的低点
2. **用OBV振荡器确认**
- 强劲上升趋势:OBV振荡器保持正值
- 强劲下降趋势:OBV振荡器保持负值
- 弱势趋势:OBV振荡器频繁穿越零线
3. **成交量确认**
- 趋势伴随上升的OBV = 强趋势
- 趋势伴随下降的OBV = 弱趋势(注意反转)
#### 背离交易
1. **启用背离检测**
- 先从常规背离开始
- 添加隐藏背离用于趋势延续
2. **等待背离信号**
- 黄色标签 = 潜在看涨反转
- 蓝色标签 = 潜在看跌反转
3. **用价格行为确认**
- 等待支撑/阻力突破
- 寻找K线确认
- 检查更高时间框架对齐
4. **进入交易**
- 确认后进入
- 在近期波动之外设置止损
- 基于前一波动或支撑/阻力设定目标
#### 突破交易
1. **启用穿越标签**
- 识别振荡器何时穿越零线
2. **确认成交量强度**
- 强突破有大振荡器移动
- 弱突破勉强穿越零线
3. **交易方向**
- "突破"标签 = 进入多头
- "跌破"标签 = 进入空头
4. **管理仓位**
- 振荡器反向穿越时退出
- 使用价格结构设置止损
#### 多时间框架分析
1. **设置更高时间框架**
- 例如:在15分钟图上,设置时间框架为1H或4H
2. **识别更高时间框架趋势**
- 正振荡器 = 上升趋势偏向
- 负振荡器 = 下降趋势偏向
3. **顺趋势交易**
- 仅在上升趋势中接受多头信号
- 仅在下降趋势中接受空头信号
4. **把握入场时机**
- 使用当前时间框架进行精确进入
- 用更高时间框架方向确认
### 交易策略
#### 策略1:常规背离反转
**设置:**
1. 价格处于强趋势(上涨或下跌)
2. 出现常规背离
3. 价格到达支撑/阻力水平
**入场:**
- 看涨:在"看涨"标签后,价格突破近期高点时
- 看跌:在"看跌"标签后,价格跌破近期低点时
**止损:**
- 看涨:背离低点之下
- 看跌:背离高点之上
**退出:**
- 在下一个主要支撑/阻力获利
- 或出现相反背离时
**适合:**波段交易、反转交易
#### 策略2:隐藏背离延续
**设置:**
1. 建立明确趋势
2. 价格回调(回撤)
3. 出现隐藏背离
**入场:**
- 看涨:在"隐藏看涨"标签后,价格恢复上升趋势时
- 看跌:在"隐藏看跌"标签后,价格恢复下降趋势时
**止损:**
- 在回调波动点之后
**退出:**
- 随着趋势延续移动止损
- 出现常规背离(反转信号)时退出
**适合:**趋势跟随、加仓
#### 策略3:零线穿越
**设置:**
1. 启用穿越标签
2. 振荡器穿越零线
3. 用价格结构突破确认
**入场:**
- "突破"标签 = 买入信号
- "跌破"标签 = 卖出信号
**止损:**
- 近期波动之下/之上
**退出:**
- 振荡器反向穿越零线时
- 或在预定目标
**适合:**动量交易、快速交易
#### 策略4:多时间框架汇合
**设置:**
1. 设置指标到更高时间框架(例如,在1H图上设置4H)
2. 等待更高TF振荡器为正(上升趋势)或负(下降趋势)
3. 在当前时间框架上寻找与更高TF一致的入场机会
**入场:**
- 多头:两个时间框架都显示正振荡器或看涨背离时
- 空头:两个时间框架都显示负振荡器或看跌背离时
**止损:**
- 基于当前时间框架结构
**退出:**
- 更高时间框架振荡器变为负(多头)或正(空头)时
**适合:**波段交易、高概率设置
### 最佳实践
#### 成交量分析
1. **强势波动需要成交量**
- 价格上涨 + 上升的OBV = 健康上升趋势
- 价格上涨 + 下降的OBV = 弱上升趋势(警告)
2. **注意确认**
- 新高伴随新OBV高点 = 已确认
- 新高没有新OBV高点 = 潜在背离
3. **考虑背景**
- 低成交量期(亚洲时段、假期)= 可靠性较低
- 高成交量期(新闻、伦敦/纽约重叠)= 更可靠
#### 背离交易技巧
1. **不是所有背离都有效**
- 等待价格确认
- 在超卖/超买区域更强
- 在支撑/阻力水平更好
2. **多重背离**
- 同一趋势上多个背离 = 更强信号
- 背离快速失败 = 忽略并等待下一个
3. **时间框架重要**
- 更高时间框架背离 = 更可靠
- 更低时间框架背离 = 更频繁,可靠性较低
#### 平滑选择
1. **无平滑(None)**
- 最敏感,更多信号
- 更多噪音,更多假信号
- 适合:剥头皮、非常活跃的交易
2. **EMA(默认)**
- 平衡方法
- 适合大多数策略
- 适合:波段交易、日内交易
3. **SMMA (RMA)**
- 非常平滑,更少信号
- 对突然变化响应较慢
- 适合:仓位交易、更长时间框架
### 指标组合
**与移动平均线配合:**
- 使用EMA确定趋势方向
- OBV确认成交量
- 两者一致时进入
**与RSI配合:**
- RSI用于超买超卖
- OBV用于成交量确认
- 两者都背离 = 更强信号
**与价格行为配合:**
- 支撑/阻力确定水平
- OBV确认强度
- 正OBV的突破 = 更可能成功
**与Bias指标配合:**
- Bias用于价格偏离
- OBV用于成交量确认
- 两者都显示背离 = 高概率反转
### 常见形态
1. **积累**:OBV上升而价格盘整(突破可能)
2. **派发**:OBV下降而价格盘整(跌破可能)
3. **确认**:OBV和价格都创新高/新低(趋势强劲)
4. **背离**:OBV和价格反向移动(反转警告)
5. **假突破**:价格突破但OBV不确认(可能失败)
### 性能提示
- 禁用未使用的显示功能以加快加载
- 先从常规背离开始,稍后添加隐藏背离
- 使用柱状图快速视觉参考
- 启用穿越标签以获得清晰的入场信号
- 为您的市场测试不同的平滑长度
### 警报条件
指标包含以下警报:
- 检测到常规看涨背离
- 检测到常规看跌背离
- 检测到隐藏看涨背离
- 检测到隐藏看跌背离
**如何设置警报:**
1. 点击指标名称
2. 选择"添加警报"
3. 选择条件
4. 配置通知方法
---
## Technical Support
For questions or issues, please refer to the TradingView community or contact the indicator creator.
## 技术支持
如有问题,请参考TradingView社区或联系指标创建者。
Curvature Tensor Pivots - HIVECurvature Tensor Pivots - HIVE
I. CORE CONCEPT & ORIGINALITY
Curvature Tensor Pivots - HIVE is an advanced, multi-dimensional pivot detection system that combines differential geometry, reinforcement learning, and statistical physics to identify high-probability reversal zones before they fully form. Unlike traditional pivot indicators that rely on simple price comparisons or lagging moving averages, this system models price action as a smooth curve in geometric space and calculates its mathematical curvature (how sharply the price trajectory is "bending") to detect pivots with scientific precision.
What Makes This Original:
Differential Geometry Engine: The script calculates first and second derivatives of price using Kalman-filtered trajectory analysis, then computes true mathematical curvature (κ) using the classical formula: κ = |y''| / (1 + y'²)^(3/2). This approach treats price as a physical phenomenon rather than discrete data points.
Ghost Vertex Prediction: A proprietary algorithm that detects pivots 1-3 bars BEFORE they complete by identifying when velocity approaches zero while acceleration is high—this is the mathematical definition of a turning point.
Multi-Armed Bandit AI: Four distinct pivot detection strategies (Fast, Balanced, Strict, Tensor) run simultaneously in shadow portfolios. A Thompson Sampling reinforcement learning algorithm continuously evaluates which strategy performs best in current market conditions and automatically selects it.
Hive Consensus System: When 3 or 4 of the parallel strategies agree on the same price zone, the system generates "confluence zones"—areas of institutional-grade probability.
Dynamic Volatility Scaling (DVS): All parameters auto-adjust based on current ATR relative to historical average, making the indicator adaptive across all timeframes and instruments without manual re-optimization.
II. HOW THE COMPONENTS WORK TOGETHER
This is NOT a simple mashup —each subsystem feeds data into the others in a closed-loop learning architecture:
The Processing Pipeline:
Step 1: Geometric Foundation
Raw price is normalized against a 50-period SMA to create a trajectory baseline
A Zero-Lag EMA smooths the trajectory while preserving edge response
Kalman filter removes noise while maintaining signal integrity
Step 2: Calculus Layer
First derivative (y') measures velocity of price movement
Second derivative (y'') measures acceleration (rate of velocity change)
Curvature (κ) is calculated from these derivatives, representing how sharply price is turning
Step 3: Statistical Validation
Z-Score measures how many standard deviations current price deviates from the Kalman-filtered "true price"
Only pivots with Z-Score > threshold (default 1.2) are considered statistically significant
This filters out noise and micro-fluctuations
Step 4: Tensor Construction
Curvature is combined with volatility (ATR-based) and momentum (ROC-based) to create a multidimensional "tensor score"
This tensor represents the geometric stress in the price field
High tensor magnitude = high probability of structural failure (reversal)
Step 5: AI Decision Layer
All 4 bandit strategies evaluate current conditions using different sensitivity thresholds
Each strategy maintains a virtual portfolio that trades its signals in real-time
Thompson Sampling algorithm updates Bayesian priors (alpha/beta distributions) based on each strategy's Sharpe ratio, win rate, and drawdown
The highest-performing strategy's signals are displayed to the user
Step 6: Confluence Aggregation
When multiple strategies agree on the same price zone, that zone is highlighted as a confluence area. These represent "hive mind" consensus—the strongest setups
Why This Integration Matters:
Traditional indicators either detect pivots too late (lagging) or generate too many false signals (noisy). By requiring geometric confirmation (curvature), statistical significance (Z-Score), multi-strategy agreement (hive voting), and performance validation (RL feedback) , this system achieves institutional-grade precision. The reinforcement learning layer ensures the system adapts as market regimes change, rather than degrading over time like static algorithms.
III. DETAILED METHODOLOGY
A. Curvature Calculation (Differential Geometry)
The system models price as a parametric curve where:
x-axis = time (bar index)
y-axis = normalized price
The curvature at any point represents how quickly the direction of the tangent line is changing. High curvature = sharp turn = potential pivot.
Implementation:
Lookback window (default 8 bars) defines the local curve segment
Smoothing (default 5 bars) applies adaptive EMA to reduce tick noise
Curvature is normalized to 0-1 scale using local statistical bounds (mean ± 2 standard deviations)
B. Ghost Vertex (Predictive Pivot Detection)
Classical pivot detection waits for price to form a swing high/low and confirm. Ghost Vertex uses calculus to predict the turning point:
Conditions for Ghost Pivot:
Velocity (y') ≈ 0 (price rate of change approaching zero)
Acceleration (y'') ≠ 0 (change is decelerating/accelerating)
Z-Score > threshold (statistically abnormal position)
This allows detection 1-3 bars before the actual high/low prints, providing an early entry edge.
C. Multi-Armed Bandit Reinforcement Learning
The system runs 4 parallel "bandits" (agents), each with different detection sensitivity:
Bandit Strategies:
Fast: Low curvature threshold (0.1), low Z-Score requirement (1.0) → High frequency, more signals
Balanced: Standard thresholds (0.2 curvature, 1.5 Z-Score) → Moderate frequency
Strict: High thresholds (0.4 curvature, 2.0 Z-Score) → Low frequency, high conviction
Tensor: Requires tensor magnitude > 0.5 → Geometric-weighted detection
Learning Algorithm (Thompson Sampling):
Each bandit maintains a Beta distribution with parameters (α, β)
After each trade outcome, α is incremented for wins, β for losses
Selection probability is proportional to sampled success rate from the distribution
This naturally balances exploration (trying underperformed strategies) vs exploitation (using best strategy)
Performance Metrics Tracked:
Equity curve for each shadow portfolio
Win rate percentage
Sharpe ratio (risk-adjusted returns)
Maximum drawdown
Total trades executed
The system displays all metrics in real-time on the dashboard so users can see which strategy is currently "winning."
D. Dynamic Volatility Scaling (DVS)
Markets cycle between high volatility (trending, news-driven) and low volatility (ranging, quiet). Static parameters fail when regime changes.
DVS Solution:
Measures current ATR(30) / close as normalized volatility
Compares to 100-bar SMA of normalized volatility
Ratio > 1 = high volatility → lengthen lookbacks, raise thresholds (prevent noise)
Ratio < 1 = low volatility → shorten lookbacks, lower thresholds (maintain sensitivity)
This single feature is why the indicator works on 1-minute crypto charts AND daily stock charts without parameter changes.
E. Confluence Zone Detection
The script divides the recent price range (200 bars) into 200 discrete zones. On each bar:
Each of the 4 bandits votes on potential pivot zones
Votes accumulate in a histogram array
Zones with ≥ 3 votes (75% agreement) are drawn as colored boxes
Red boxes = resistance confluence, Green boxes = support confluence
These zones act as magnet levels where price often returns multiple times.
IV. HOW TO USE THIS INDICATOR
For Scalpers (1m - 5m timeframes):
Settings: Use "Aggressive" or "Adaptive" pivot mode, Curvature Window 5-8, Min Pivot Strength 50-60
Entry Signal: Triangle marker appears (🔺 for longs, 🔻 for shorts)
Confirmation: Check that Hive Sentiment on dashboard agrees (3+ votes)
Stop Loss: Use the dotted volatility-adjusted target line in reverse (if pivot is at 100 with target at 110, stop is ~95)
Take Profit: Use the projected target line (default 3× ATR)
Advanced: Wait for confluence zone formation, then enter on retest of the zone
For Day Traders (15m - 1H timeframes):
Settings: Use "Adaptive" mode (default settings work well)
Entry Signal: Pivot marker + Hive Consensus alert
Confirmation: Check dashboard—ensure selected bandit has Sharpe > 1.5 and Win% > 55%
Filter: Only take pivots with Pivot Strength > 70 (shown in dashboard)
Risk Management: Monitor the Live Position Tracker—if your selected bandit is holding a position, consider that as market structure context
Exit: Either use target lines OR exit when opposite pivot appears
For Swing Traders (4H - Daily timeframes):
Settings: Use "Conservative" mode, Curvature Window 12-20, Min Bars Between Pivots 15-30
Focus on Confluence: Only trade when 4/4 bandits agree (unanimous hive consensus)
Entry: Set limit orders at confluence zones rather than market orders at pivot signals
Confirmation: Look for breakout diamonds (◆) after pivot—these signal momentum continuation
Risk Management: Use wider stops (base stop loss % = 3-5%)
Dashboard Interpretation:
Top Section (Real-Time Metrics):
κ (Curv): Current curvature. >0.6 = active pivot forming
Tensor: Geometric stress. Positive = bullish bias, Negative = bearish bias
Z-Score: Statistical deviation. >2.0 or <-2.0 = extreme outlier (strong signal)
Bandit Performance Table:
α/β: Bayesian parameters. Higher α = more wins in history
Win%: Self-explanatory. >60% is excellent
Sharpe: Risk-adjusted returns. >2.0 is institutional-grade
Status: Shows which strategy is currently selected
Live Position Tracker:
Shows if the selected bandit's shadow portfolio is currently holding a position
Displays entry price and real-time P&L
Use this as "what the AI would do" confirmation
Hive Sentiment:
Shows vote distribution across all 4 bandits
"BULLISH" with 3+ green votes = high-conviction long setup
"BEARISH" with 3+ red votes = high-conviction short setup
Alert Setup:
The script includes 6 alert conditions:
"AI High Pivot" = Selected bandit signals short
"AI Low Pivot" = Selected bandit signals long
"Hive Consensus BUY" = 3+ bandits agree on long
"Hive Consensus SELL" = 3+ bandits agree on short
"Breakout Up" = Resistance breakout (continuation long)
"Breakdown Down" = Support breakdown (continuation short)
Recommended Alert Strategy:
Set "Hive Consensus" alerts for high-conviction setups
Use "AI Pivot" alerts for active monitoring during your trading session
Use breakout alerts for momentum/trend-following entries
V. PARAMETER OPTIMIZATION GUIDE
Core Geometry Parameters:
Curvature Window (default 8):
Lower (3-5): Detects micro-structure, best for scalping volatile pairs (crypto, forex majors)
Higher (12-20): Detects macro-structure, best for swing trading stocks/indices
Rule of thumb: Set to ~0.5% of your typical trade duration in bars
Curvature Smoothing (default 5):
Increase if you see too many false pivots (noisy instrument)
Decrease if pivots lag (missing entries by 2-3 bars)
Inflection Threshold (default 0.20):
This is advanced. Lower = more inflection zones highlighted
Useful for identifying order blocks and liquidity voids
Most users can leave default
Pivot Detection Parameters:
Pivot Sensitivity Mode:
Aggressive: Use in low-volatility range-bound markets
Normal: General purpose
Adaptive: Recommended—auto-adjusts via DVS
Conservative: Use in choppy, whipsaw conditions or for swing trading
Min Bars Between Pivots (default 8):
THIS IS CRITICAL for visual clarity
If chart looks cluttered, increase to 12-15
If missing pivots, decrease to 5-6
Match to your timeframe: 1m charts use 3-5, Daily charts use 20+
Min Z-Score (default 1.2):
Statistical filter. Higher = fewer but stronger signals
During news events (NFP, FOMC), increase to 2.0+
In calm markets, 1.0 works well
Min Pivot Strength (default 60):
Composite quality score (0-100)
80+ = institutional-grade pivots only
50-70 = balanced
Below 50 = will show weak setups (not recommended)
RL & DVS Parameters:
Enable DVS (default ON):
Leave enabled unless you want to manually tune for a specific market condition
This is the "secret sauce" for cross-timeframe performance
DVS Sensitivity (default 1.0):
Increase to 1.5-2.0 for extremely volatile instruments (meme stocks, altcoins)
Decrease to 0.5-0.7 for stable instruments (utilities, bonds)
RL Algorithm (default Thompson Sampling):
Thompson Sampling: Best for non-stationary markets (recommended)
UCB1: Best for stable, mean-reverting markets
Epsilon-Greedy: For testing only
Contextual: Advanced—uses market regime as context
Risk Parameters:
Base Stop Loss % (default 2.0):
Set to 1.5-2× your instrument's average ATR as a percentage
Example: If SPY ATR = $3 and price = $450, ATR% = 0.67%, so use 1.5-2.0%
Base Take Profit % (default 4.0):
Aim for 2:1 reward/risk ratio minimum
For mean-reversion strategies, use 1.5-2.0%
For trend-following, use 3-5%
VI. UNDERSTANDING THE UNDERLYING CONCEPTS
Why Differential Geometry?
Traditional technical analysis treats price as discrete data points. Differential geometry models price as a continuous manifold —a smooth surface that can be analyzed using calculus. This allows us to ask: "At what rate is the trend changing?" rather than just "Is price going up or down?"
The curvature metric captures something fundamental: inflection points in market psychology . When buyers exhaust and sellers take over (or vice versa), the price trajectory must curve. By measuring this curvature mathematically, we detect these psychological shifts with precision.
Why Reinforcement Learning?
Markets are non-stationary —statistical properties change over time. A strategy that works in Q1 may fail in Q3. Traditional indicators have fixed parameters and degrade over time.
The multi-armed bandit framework solves this by:
Running multiple strategies in parallel (diversification)
Continuously measuring performance (feedback loop)
Automatically shifting capital to what's working (adaptation)
This is how professional hedge funds operate—they don't use one strategy, they use ensembles with dynamic allocation.
Why Kalman Filtering?
Raw price contains two components: signal (true movement) and noise (random fluctuations). Kalman filters are the gold standard in aerospace and robotics for extracting signal from noisy sensors.
By applying this to price data, we get a "clean" trajectory to measure curvature against. This prevents false pivots from bid-ask bounce or single-print anomalies.
Why Z-Score Validation?
Not all high-curvature points are tradeable. A sharp turn in a ranging market might just be noise. Z-Score ensures that pivots occur at statistically abnormal price levels —places where price has deviated significantly from its Kalman-filtered "fair value."
This filters out 70-80% of false signals while preserving true reversal points.
VII. COMMON USE CASES & STRATEGIES
Strategy 1: Confluence Zone Reversal Trading
Wait for confluence zone to form (red or green box)
Wait for price to approach zone
Enter when pivot marker appears WITHIN the confluence zone
Stop: Beyond the zone
Target: Opposite confluence zone or 3× ATR
Strategy 2: Hive Consensus Scalping
Set alert for "Hive Consensus BUY/SELL"
When alert fires, check dashboard—ensure 3-4 votes
Enter immediately (market order or 1-tick limit)
Stop: Tight, 1-1.5× ATR
Target: 2× ATR or opposite pivot signal
Strategy 3: Bandit-Following Swing Trading
On Daily timeframe, monitor which bandit has best Sharpe ratio over 30+ days
Take ONLY that bandit's signals (ignore others)
Enter on pivot, hold until opposite pivot or target line
Position size based on bandit's current win rate (higher win% = larger position)
Strategy 4: Breakout Confirmation
Identify key support/resistance level manually
Wait for pivot to form AT that level
If price breaks level and diamond breakout marker appears, enter in breakout direction
This combines support/resistance with geometric confirmation
Strategy 5: Inflection Zone Limit Orders
Enable "Show Inflection Zones"
Place limit buy orders at bottom of purple zones
Place limit sell orders at top of purple zones
These zones represent structural change points where price often pauses
VIII. WHAT THIS INDICATOR DOES NOT DO
To set proper expectations:
This is NOT:
A "holy grail" with 100% win rate
A strategy that works without risk management
A replacement for understanding market fundamentals
A signal copier (you must interpret context)
This DOES NOT:
Predict black swan events
Account for fundamental news (you must avoid trading during major news if not experienced)
Work well in extremely low liquidity conditions (penny stocks, microcap crypto)
Generate signals during consolidation (by design—prevents whipsaw)
Best Performance:
Liquid instruments (SPY, ES, NQ, EUR/USD, BTC/USD, etc.)
Clear trend or range conditions (struggles in choppy transition periods)
Timeframes 5m and above (1m can work but requires experience)
IX. PERFORMANCE EXPECTATIONS
Based on shadow portfolio backtesting across multiple instruments:
Conservative Mode:
Signal frequency: 2-5 per week (Daily charts)
Expected win rate: 60-70%
Average RRR: 2.5:1
Adaptive Mode:
Signal frequency: 5-15 per day (15m charts)
Expected win rate: 55-65%
Average RRR: 2:1
Aggressive Mode:
Signal frequency: 20-40 per day (5m charts)
Expected win rate: 50-60%
Average RRR: 1.5:1
Note: These are statistical expectations. Individual results depend on execution, risk management, and market conditions.
X. PRIVACY & INVITE-ONLY NATURE
This script is invite-only to:
Maintain signal quality (prevent market impact from mass adoption)
Provide dedicated support to users
Continuously improve the algorithm based on user feedback
Ensure users understand the complexity before deploying real capital
The script is closed-source to protect proprietary research in:
Ghost Vertex prediction mathematics
Tensor construction methodology
Bandit reward function design
DVS scaling algorithms
XI. FINAL RECOMMENDATIONS
Before Trading Live:
Paper trade for minimum 2 weeks to understand signal timing
Start with ONE timeframe and master it before adding others
Monitor the dashboard —if selected bandit Sharpe drops below 1.0, reduce size
Use confluence and hive consensus for highest-quality setups
Respect the Min Bars Between Pivots setting —this prevents overtrading
Risk Management Rules:
Never risk more than 1-2% of account per trade
If 3 consecutive losses occur, stop trading and review (possible regime change)
Use the shadow portfolio as a guide—if ALL bandits are losing, market is in transition
Combine with other analysis (order flow, volume profile) for best results
Continuous Learning:
The RL system improves over time, but only if you:
Keep the indicator running (it learns from bar data)
Don't constantly change parameters (confuses the learning)
Let it accumulate at least 50 samples before judging performance
Review the dashboard weekly to see which bandits are adapting
CONCLUSION
Curvature Tensor Pivots - HIVE represents a fusion of advanced mathematics, machine learning, and practical trading experience. It is designed for serious traders who want institutional-grade tools and understand that edge comes from superior methodology, not magic formulas.
The system's strength lies in its adaptive intelligence —it doesn't just detect pivots, it learns which detection method works best right now, in this market, under these conditions. The hive consensus mechanism provides confidence, the geometric foundation provides precision, and the reinforcement learning provides evolution.
Use it wisely, manage risk properly, and let the mathematics work for you.
Disclaimer: This indicator is a tool for analysis and does not constitute financial advice. Past performance of shadow portfolios does not guarantee future results. Trading involves substantial risk of loss. Always perform your own due diligence and never trade with capital you cannot afford to lose.
Taking you to school. — Dskyz, Trade with insight. Trade with anticipation.
Liquidity Void Zone Detector [PhenLabs]📊 Liquidity Void Zone Detector
Version: PineScript™v6
📌 Description
The Liquidity Void Zone Detector is a sophisticated technical indicator designed to identify and visualize areas where price moved with abnormally low volume or rapid momentum, creating "voids" in market liquidity. These zones represent areas where insufficient trading activity occurred during price movement, often acting as magnets for future price action as the market seeks to fill these gaps.
Built on PineScript v6, this indicator employs a dual-detection methodology that analyzes both volume depletion patterns and price movement intensity relative to ATR. The revolutionary 3D visualization system uses three-layer polyline rendering with adaptive transparency and vertical offsets, creating genuine depth perception where low liquidity zones visually recede and high liquidity zones protrude forward. This makes critical market structure immediately apparent without cluttering your chart.
🚀 Points of Innovation
Dual detection algorithm combining volume threshold analysis and ATR-normalized price movement sensitivity for comprehensive void identification
Three-layer 3D visualization system with progressive transparency gradients (85%, 78%, 70%) and calculated vertical offsets for authentic depth perception
Intelligent state machine logic that tracks consecutive void bars and only renders zones meeting minimum qualification requirements
Dynamic strength scoring system (0-100 scale) that combines inverted volume ratios with movement intensity for accurate void characterization
Adaptive ATR-based spacing calculation that automatically adjusts 3D layering depth to match instrument volatility
Efficient memory management system supporting up to 100 simultaneous void visualizations with automatic array-based cleanup
🔧 Core Components
Volume Analysis Engine: Calculates rolling volume averages and compares current bar volume against dynamic thresholds to detect abnormally thin trading conditions
Price Movement Analyzer: Normalizes bar range against ATR to identify rapid price movements that indicate liquidity exhaustion regardless of instrument or timeframe
Void Tracking State Machine: Maintains persistent tracking of void start bars, price boundaries, consecutive bar counts, and cumulative strength across multiple bars
3D Polyline Renderer: Generates three-layer rectangular polylines with precise timestamp-to-bar index conversion and progressive offset calculations
Strength Calculation System: Combines volume component (inverted ratio capped at 100) with movement component (ATR intensity × 30) for comprehensive void scoring
🔥 Key Features
Automatic Void Detection: Continuously scans price action for low volume conditions or rapid movements, triggering void tracking when thresholds are exceeded
Real-Time Visualization: Creates 3D rectangular zones spanning from void initiation to termination, with color-coded depth indicating liquidity type
Adjustable Sensitivity: Configure volume threshold multiplier (0.1-2.0x), price movement sensitivity (0.5-5.0x), and minimum qualifying bars (1-10) for customized detection
Dual Color Coding: Separate visual treatment for low liquidity voids (receding red) and high liquidity zones (protruding green) based on 50-point strength threshold
Optional Compact Labels: Toggle LV (Low Volume) or HV (High Volume) circular labels at void centers for quick identification without visual clutter
Lookback Period Control: Adjust analysis window from 5 to 100 bars to match your trading timeframe and market volatility characteristics
Memory-Efficient Design: Automatically manages polyline and label arrays, deleting oldest elements when user-defined maximum is reached
Data Window Integration: Plots void detection binary, current strength score, and average volume for detailed analysis in TradingView's data window
🎨 Visualization
Three-Layer Depth System: Each void is rendered as three stacked polylines with progressive transparency (85%, 78%, 70%) and calculated vertical offsets creating authentic 3D appearance
Directional Depth Perception: Low liquidity zones recede with back layer most transparent; high liquidity zones protrude with front layer most transparent for instant visual differentiation
Adaptive Offset Spacing: Vertical separation between layers calculated as ATR(14) × 0.001, ensuring consistent 3D effect across different instruments and volatility regimes
Color Customization: Fully configurable base colors for both low liquidity zones (default: red with 80 transparency) and high liquidity zones (default: green with 80 transparency)
Minimal Chart Clutter: Closed polylines with matching line and fill colors create clean rectangular zones without unnecessary borders or visual noise
Background Highlight: Subtle yellow background (96% transparency) marks bars where void conditions are actively detected in real-time
Compact Labeling: Optional tiny circular labels with 60% transparent backgrounds positioned at void center points for quick reference
📖 Usage Guidelines
Detection Settings
Lookback Period: Default: 10 | Range: 5-100 | Number of bars analyzed for volume averaging and void detection. Lower values increase sensitivity to recent changes; higher values smooth detection across longer timeframes. Adjust based on your trading timeframe: short-term traders use 5-15, swing traders use 20-50, position traders use 50-100.
Volume Threshold: Default: 1.0 | Range: 0.1-2.0 (step 0.1) | Multiplier applied to average volume. Bars with volume below (average × threshold) trigger void conditions. Lower values detect only extreme volume depletion; higher values capture more moderate low-volume situations. Start with 1.0 and decrease to 0.5-0.7 for stricter detection.
Price Movement Sensitivity: Default: 1.5 | Range: 0.5-5.0 (step 0.1) | Multiplier for ATR-normalized price movement detection. Values above this threshold indicate rapid price changes suggesting liquidity voids. Increase to 2.0-3.0 for volatile instruments; decrease to 0.8-1.2 for ranging or low-volatility conditions.
Minimum Void Bars: Default: 10 | Range: 1-10 | Minimum consecutive bars exhibiting void conditions required before visualization is created. Filters out brief anomalies and ensures only sustained voids are displayed. Use 1-3 for scalping, 5-10 for intraday trading, 10+ for swing trading to match your time horizon.
Visual Settings
Low Liquidity Color: Default: Red (80% transparent) | Base color for zones where volume depletion or rapid movement indicates thin liquidity. These zones recede visually (back layer most transparent). Choose colors that contrast with your chart theme for optimal visibility.
High Liquidity Color: Default: Green (80% transparent) | Base color for zones with relatively higher liquidity compared to void threshold. These zones protrude visually (front layer most transparent). Ensure clear differentiation from low liquidity color.
Show Void Labels: Default: True | Toggle display of compact LV/HV labels at void centers. Disable for cleaner charts when trading; enable for analysis and review to quickly identify void types across your chart.
Max Visible Voids: Default: 50 | Range: 10-100 | Maximum number of void visualizations kept on chart. Each void uses 3 polylines, so setting of 50 maintains 150 total polylines. Higher values preserve more history but may impact performance on lower-end systems.
✅ Best Use Cases
Gap Fill Trading: Identify unfilled liquidity voids that price frequently returns to, providing high-probability retest and reversal opportunities when price approaches these zones
Breakout Validation: Distinguish genuine breakouts through established liquidity from false breaks into void zones that lack sustainable volume support
Support/Resistance Confluence: Layer void detection over key horizontal levels to validate structural integrity—levels within high liquidity zones are stronger than those in voids
Trend Continuation: Monitor for new void formation in trend direction as potential continuation zones where price may accelerate due to reduced resistance
Range Trading: Identify void zones within consolidation ranges that price tends to traverse quickly, helping to avoid getting caught in rapid moves through thin areas
Entry Timing: Wait for price to reach void boundaries rather than entering mid-void, as voids tend to be traversed quickly with limited profit-taking opportunities
⚠️ Limitations
Historical Pattern Indicator: Identifies past liquidity voids but cannot predict whether price will return to fill them or when filling might occur
No Volume on Forex: Indicator uses tick volume for forex pairs, which approximates but doesn't represent true trading volume, potentially affecting detection accuracy
Lagging Confirmation: Requires minimum consecutive bars (default 10) before void is visualized, meaning detection occurs after void formation begins
Trending Market Behavior: Strong trends driven by fundamental catalysts may create voids that remain unfilled for extended periods or permanently
Timeframe Dependency: Detection sensitivity varies significantly across timeframes; settings optimized for one timeframe may not perform well on others
No Directional Bias: Indicator identifies liquidity characteristics but provides no predictive signal for price direction after void detection
Performance Considerations: Higher max visible void settings combined with small minimum void bars can generate numerous visualizations impacting chart rendering speed
💡 What Makes This Unique
Industry-First 3D Visualization: Unlike flat volume or liquidity indicators, the three-layer rendering with directional depth perception provides instant visual hierarchy of liquidity quality
Dual-Mode Detection: Combines both volume-based and movement-based detection methodologies, capturing voids that single-approach indicators miss
Intelligent Qualification System: State machine logic prevents premature visualization by requiring sustained void conditions, reducing false signals and chart clutter
ATR-Normalized Analysis: All detection thresholds adapt to instrument volatility, ensuring consistent performance across stocks, forex, crypto, and futures without constant recalibration
Transparency-Based Depth: Uses progressive transparency gradients rather than colors or patterns to create depth, maintaining visual clarity while conveying information hierarchy
Comprehensive Strength Metrics: 0-100 void strength calculation considers both the degree of volume depletion and the magnitude of price movement for nuanced zone characterization
🔬 How It Works
Phase 1: Real-Time Detection
On each bar close, the indicator calculates average volume over the lookback period and compares current bar volume against the volume threshold multiplier
Simultaneously measures current bar's high-low range and normalizes it against ATR, comparing the result to price movement sensitivity parameter
If either volume falls below threshold OR movement exceeds sensitivity threshold, the bar is flagged as exhibiting void characteristics
Phase 2: Void Tracking & Qualification
When void conditions first appear, state machine initializes tracking variables: start bar index, initial top/bottom prices, consecutive bar counter, and cumulative strength accumulator
Each subsequent bar with void conditions extends the tracking, updating price boundaries to envelope all bars and accumulating strength scores
When void conditions cease, system checks if consecutive bar count meets minimum threshold; if yes, proceeds to visualization; if no, discards the tracking and resets
Phase 3: 3D Visualization Construction
Calculates average void strength by dividing cumulative strength by number of bars, then determines if void is low liquidity (>50 strength) or high liquidity (≤50 strength)
Generates three polyline layers spanning from start bar to end bar and from top price to bottom price, each with calculated vertical offset based on ATR
Applies progressive transparency (85%, 78%, 70%) with layer ordering creating recession effect for low liquidity zones and protrusion effect for high liquidity zones
Creates optional center label and pushes all visual elements into arrays for memory management
Phase 4: Memory Management & Display
Continuously monitors polyline array size (each void creates 3 polylines); when total exceeds max visible voids × 3, deletes oldest polylines via array.shift()
Similarly manages label array, removing oldest labels when count exceeds maximum to prevent memory accumulation over extended chart history
Plots diagnostic data to TradingView’s data window (void detection binary, current strength, average volume) for detailed analysis without cluttering main chart
💡 Note:
This indicator is designed to enhance your market structure analysis by revealing liquidity characteristics that aren’t visible through standard price and volume displays. For best results, combine void detection with your existing support/resistance analysis, trend identification, and risk management framework. Liquidity voids are descriptive of past market behavior and should inform positioning decisions rather than serve as standalone entry/exit signals. Experiment with detection parameters across different timeframes to find settings that align with your trading style and instrument characteristics.
W%R Cycle Swings - MTF Trend📄 English Description
Overview
The W%R Cycle Swings – MTF Trend indicator is a market-structure tool built on top of Williams %R cycle logic. It detects meaningful swing highs and lows from W%R behavior, then uses those swings to locate the first Market Structure Shift (MSS-first) and track multi-timeframe trend bias + cancel levels.
This is not a random mashup of indicators: all components are derived from one core concept—W%R cycles—and are combined into a single, coherent framework for reading structure and trend across timeframes.
Core Concepts
1. Williams %R Cycle Swings (Current Timeframe)
Instead of using price swings based only on highs/lows, this script uses Williams %R behavior to define swing points:
Swing High pattern: OS → OB → OS
Swing Low pattern: OB → OS → OB
The script:
Tracks overbought/oversold states using user-defined levels.
Builds a zone for each potential swing (accumulating the extremums during the OB/OS phase).
Confirms a swing only when the opposite state appears again.
Plots labels on the chart:
Swing High label above price
Swing Low label below price
Optional price display on the label (toggle in settings).
This makes the swing points cycle-based rather than purely bar-based.
2. MSS-first (Market Structure Shift on Current TF)
Once swings are defined, the script looks for the first break of the most recent swing:
Bullish MSS-first: price breaks above the last confirmed swing high.
Bearish MSS-first: price breaks below the last confirmed swing low.
You can choose whether to confirm by close or by wick (mssByClose input).
When an MSS-first is detected:
A colored label (bullish/bearish) is drawn at the relevant swing level.
A horizontal line is drawn from the swing bar to the MSS bar to visually connect the structure break.
Internal trendBias is updated to Up or Down, preventing duplicate MSS labels in the same direction.
This gives a clear, visual definition of when the structure actually shifted based on W%R-driven swings.
3. MTF MSS-first Trend & Cancel Logic
The same MSS-first concept is applied inside a function and called via request.security() on multiple timeframes (5m, 15m, 30m, 1h, 4h).
For each timeframe, the function:
Recalculates W%R swings with the same parameters.
Detects MSS-first events (bullish or bearish).
Tracks a trend state:
1 → Up trend
-1 → Down trend
0 → Unknown / Neutral
Maintains a cancel level, which represents the price that would invalidate the current trend:
In an uptrend, cancel is typically the last relevant swing low.
In a downtrend, cancel is typically the last relevant swing high.
This provides:
Trend direction per TF (Up / Down / -)
A concrete price level that acts as a structural “stop” or invalidation level.
4. MTF Trend Table (Visual Overview)
If enabled, a compact table is displayed on the chart (position configurable):
Columns: 5m, 15m, 30m, 1h, 4h
Rows:
Trend → shows Up, Down or -, with color-coded background.
Cancel → shows the current cancel price for that timeframe.
This creates a multi-timeframe structure dashboard that tells you:
Which timeframes are currently in an Up or Down MSS-based trend.
At which price the current structural view would be canceled.
5. Alert Conditions
The script includes alert conditions for:
Current timeframe MSS-first:
Bullish MSS-first (structure break up).
Bearish MSS-first (structure break down).
MTF MSS-first events for:
5m, 15m, 30m, 1h, 4h (Bullish & Bearish separately).
This allows you to receive notifications when a fresh structural shift happens on any of the tracked timeframes.
How to Use
Use Swing High / Swing Low labels to understand the current W%R cycle structure on your main timeframe.
Watch for MSS-first labels to catch the first break of structure after a swing completes.
Use the MTF Trend table:
Trade in the direction of higher-timeframe trends.
Use cancel levels as logical invalidation areas or structural stop guides.
Combine the current timeframe swings with MTF bias:
Example: look for long setups when H1/H4 show Up trend and price forms new bullish MSS on lower TF.
The tool is suitable for both intraday and swing trading, on any symbol and timeframe.
Why This Script Is Original
It links cycle-based swings from Williams %R directly to MSS-first detection, rather than using generic pivot logic.
It combines:
W%R-driven swing definition,
MSS-first structural breaks,
Multi-timeframe trend state,
Cancel (invalidation) levels,
Alerts for MSS events on multiple TFs,
into a single, coherent market-structure framework.
The MTF table is not a generic dashboard: it is specifically built around this W%R-MSS-first structural model, which gives traders both trend context and exact invalidation prices.
🇹🇭 Thai Description — คำอธิบายภาษาไทย
ภาพรวม
อินดิเคเตอร์ W%R Cycle Swings – MTF Trend เป็นเครื่องมืออ่านโครงสร้างราคา โดยใช้ “วงจรของ Williams %R” เป็นหลักในการหา Swing High / Swing Low แล้วใช้จุด Swing เหล่านั้นมาหา MSS-first (จุดเปลี่ยนโครงสร้างครั้งแรก) จากนั้นต่อยอดไปสู่ การดูแนวโน้มหลายกรอบเวลา + ระดับ Cancel (จุดที่โครงสร้างจะถูกมองว่าพัง)
แนวคิดหลัก
Swing จาก Williams %R (TF ปัจจุบัน)
ใช้รูปแบบ OS → OB → OS เพื่อยืนยัน Swing High
และ OB → OS → OB เพื่อยืนยัน Swing Low
เมื่อยืนยันแล้วจะสร้าง Label “Swing High / Swing Low” บนกราฟ และสามารถแสดงราคาบนป้ายได้
ทำให้จุด Swing มีพื้นฐานจาก “Cycle ของ W%R” ไม่ใช่แค่ high/low เฉย ๆ
MSS-first บน TF ปัจจุบัน
ถ้าราคาทะลุ Swing High ล่าสุด → มองเป็น Bullish MSS-first
ถ้าราคาทะลุ Swing Low ล่าสุด → มองเป็น Bearish MSS-first
เลือกได้ว่าจะยืนยันจาก Close หรือจาก ไส้แท่งเทียน
วาดป้าย MSS + เส้นเชื่อมจาก Swing ไปยังจุดที่เกิด MSS
มีตัวแปร trendBias ป้องกันไม่ให้ยิง MSS ซ้ำในทิศทางเดิมจนรก
MTF MSS-first + Cancel Logic
นำ Logic เดียวกันไปใช้กับ TF: 5m, 15m, 30m, 1h, 4h
สำหรับแต่ละ TF จะได้:
สถานะแนวโน้ม: Up / Down / Unknown
ระดับ Cancel: ราคาที่ถ้าหลุดจะถือว่าโครงสร้างเทรนด์นั้นถูก “ยกเลิก”
เช่น ในเทรนด์ขาขึ้น ระดับ Cancel มักมาจาก Swing Low ล่าสุด ฯลฯ
MTF Table บนกราฟ
แสดง Trend + Cancel ของ 5 TF ในรูปแบบตาราง
อ่านง่าย: แถว Trend เป็น Up/Down พร้อมสีพื้น, แถว Cancel เป็นตัวเลขราคา
ใช้ดูภาพรวมโครงสร้างหลาย TF ในมุมมองเดียว
Alert Conditions
แจ้งเตือน MSS-first ของ TF ปัจจุบัน
แจ้งเตือน MSS-first ของ TF 5m / 15m / 30m / 1h / 4h แยก Bull / Bear
วิธีใช้งาน
ใช้ Swing High / Swing Low เพื่อดูว่าโครงสร้าง cycle ปัจจุบันอยู่ตรงไหน
รอให้เกิด MSS-first เพื่อมองว่า “โครงสร้างราคาเริ่มกลับตัวแล้ว”
ใช้ Table MTF:
ดูว่า TF ไหนเป็น Up / Down
ใช้ราคาบรรทัด Cancel เป็นแนว “จุดตัดขาดทุนเชิงโครงสร้าง” หรือจุดเปลี่ยนมุมมอง
เทรดตามทิศทาง TF ใหญ่ แล้วหา Entry จาก MSS ของ TF เล็ก
จุดเด่น / ความเป็น Original
ใช้ Williams %R เป็นฐานในการสร้าง Swing Pattern แทนการใช้ Pivot ธรรมดา
เชื่อม W%R Swing เข้ากับแนวคิด MSS-first อย่างเป็นระบบ
มีทั้ง:
ป้าย Swing
ป้าย MSS + เส้นเชื่อม
MTF Trend + Cancel
Alert เตือน MSS ในหลาย TF
อยู่ในสคริปต์เดียว
เหมาะกับคนที่ต้องการอ่านโครงสร้างราคาแบบมีที่มาที่ไป ไม่ใช่แค่ตามอินดี้ตัวเดียวครับ ✅
Structure Pilot - Z&Z [Wang Indicators]Structure Pilot Zone & Zil is a complete suite of structure driven features that's build around pattern that can be visible around any timeframe.
Built in collaboration with Dave Teaches,
All these tools were shaped and combined together as the only toolkit Structure & DTFX traders want to have !
▫️ Structures & Zones ▫️
Zones are drawn when a break of structure (new high or low being created) or a market reversal happens.
It will highlight the last valid down move before a new high for bullish zones and the last valid up move before a new low for bearish zones.
These zones are used to analyze the market trend and to make entries into the market trend once the price retraces into these zones.
For example, with the latest bullish zones drawn in green for LTF zones and in blue for HTF zones, when the price retraces into this zone, there is a strong probability that the price will turn around to provide a buying opportunity all the way to the top of the zone or even higher.
These buying opportunities generally occur at specific retracement levels in the 30%, 50% and 70% zones, automatically represented by broken lines in the zones when they are created.
Example with bullish zones :
The aim with these zones is to find places on the chart where it's best to buy or sell, in order to take the biggest possible move while minimizing your risk.
Indeed, if the price is rising and a bullish zone has been created, I don't want to buy on the highs, preferring to wait for a retracement in my bullish zone to buy lower and reduce my risk, as the invalidation of the current trend will be found below the last protected low under the bullish zone drawn in blue for the HTF and in green for the LTF. Conversely, if the price is falling and a bearish zone has been created, I don't want to sell at the bottom. I'd rather wait for a retracement in the bearish zone to sell higher and reduce my risk, as the invalidation of the current trend will this time be above the last protected high above the bearish zone drawn in orange for the HTF and red for the LTF.
Example with bearish zones :
When it comes to market structure, it's good to know that zones recur within the same trend at a frequency of between 3 and 6 before there's a trend reversal.
So, after a certain number of successive zones, you can expect a reversal or the last protected high or low to be breached. The indicator automatically counts the number of successive zones, so you can keep track of the market and avoid surprises.
The zones are generated through the structure length. It can be increased to display larger (and more important) zones.
As we recommend keeping the default value (20) for new traders, experienced traders will find some success with other settings depending on their strategies.
Structure Pilot also provides auto HTF Zones, which is particularly useful to have a macro vision of the market.
Settings:
Swing types: Bullish only, Bearish only, both, or none
Structure length
Swing count: useful when it comes to tracking Trend strenght in any given time frame
Show Zones: Display boxes with 30%, 50%, and 70% fibs
Show HTF Zones: Display HTF zones with the same retracement configuration as the regular zones
Show 30%, 50% and 70%: Enable/disable these options to show or hide the corresponding fibs.
Box visibility, Line width & Line style: Style configuration for the zone
All settings can be activated or deactivated in the indicator parameters to suit individual needs and preferences.
30% Level : This is often considered a shallow retracement. If prices pull back to this level after an uptrend and flip in a lower timeframe, traders might view it as a strong sign of continued bullish momentum. Conversely, after a downtrend, this level could act as a temporary resistance where sellers might re-enter after a flip in a lower timeframe.
50% Level : This level is seen as a balance point or midpoint in the price move. A retracement to 50% can indicate a strong trend change or continuation.
70% Level : A retracement this deep can signal that the market might be losing steam or that the previous trend could be weakening. If the price bounces off this level, it might suggest that the trend is still in control but needed a more significant correction before moving further in its original direction.
We as structure traders prefer to take entry out of The 50% or when price retrace past it
there will be something at the level i'm looking for price to reverse from either some specific candles or imbalances.
Advanced traders might combine these levels with other tools or chart patterns that we bundle in this indicator.
▫️ ZIL ▫️
The ZIL Indicator is designed to automate the process of identifying key structural levels in the market and applying Fibonacci retracements when a significant price break occurs.
The indicator detects when a market structure (high or low) is broken and a candle closes below the previous low or above the previous high, indicating a potential trend shift or continuation.
• Tracks the break of structural lows or highs and waits for a confirmation candle that closes above or bellow the candle that set the new low.
Automated Fibonacci Retracement:
• Once the structure break is confirmed, the indicator automatically plots a Fibonacci retracement between:
• The high of the last bullish move (before the new low is set) or the low of the last bearish move (before the new high is set)
• The newly formed low after the structure break or the newly formed high after the structure break
Fibonacci levels plotted with colors :
• -0.27 : Dark red - Stop loss
• 0 : white - The new high/low - Potential entry
• 0.3, Orange 0.5, Light green 0.7: Green : Levels - Partial and take profit zones
• 1.15 pale blue - for your runner
We may long the retracement when the price is comming from a bearish zone using the ZIL to manage
Example :
Multi-Timeframe Support:
• Using the option "HTF ZIL" will display ZIL on higher timeframe (corresponding to the HTF Zones) on your charts to help traders find structural breaks and Fibonacci setups in both short-term and long-term markets.
HTF ZIL is really usefull to manage trades if the regular ZIL target get ran through
Wang use case :
HTF zill level are used when the small zill get ran through
▫️ Opening Range Tracker ▫️
The Opening Range Tracker is designed to help traders identify and track the opening range of a specified time period, specifically starting with the 144-minute candle between 8:24 AM and 10:48 AM. (default value) The indicator highlights this range and automatically plots key levels (30%, 50%, 70%) to provide potential strong reaction areas for trading. The time period for the opening range is fully customizable, allowing users to adjust it according to their strategy.
Opening range should be seen and used as a classic zone. If we trade above or below it price tend to come back into it and bounce of of the One or multiple level...
classic 30/50/70.
• Customizable Opening Range: Adapt the indicator to any market or session by changing the opening range time window.
• Precise Levels for Trading: The 30%, 50%, and 70% levels provide key zones where price may react, helping traders define entries, exits, or stop loss placements.
• Visual Clarity: The range box and levels make it easy to see the important price areas during the opening range and the rest of the trading session. If we range a lot in the opening range, we may range for the rest of the day. We should keep that in mind to avoid taking wrong decisions.
its basically a large zone that's we have seen often time price rejects from the level in it
Daily Reset: Each trading day resets the opening range, giving traders fresh data and new opportunities to capitalize on market movements.
Structure Pilot is built for beginner and experienced. It provides the tools to the traders that want to learn, understand, and trade efficiently within the principles of structure trading.
▫️ Alerts▫️
Alerts can be configured to these events :
New Swing / HTF Swing
Trend Change
Zil attached to a zone/HTF zone
Price cross 30/50/70 zones levels
Trend change and align the HTF/LTF trend
On cross partial (50%) and take profit (70%) ZIL and HTF ZIL
On cross Zil can now be configured for Bull or Bear zone
On HTF ZIL when 30% is crossed
FVG & Market Structure//@version=5
indicator("FVG & Market Structure", overlay=true)
// Inputs
fvg_lookback = input.int(100, "FVG Lookback Period")
fvg_strength = input.int(1, "FVG Minimum Strength")
show_fvg = input.bool(true, "Show FVG")
show_liquidity = input.bool(true, "Show Liquidity Zones")
show_bos = input.bool(true, "Show BOS")
// Calculate swing highs and lows
swing_high = ta.pivothigh(high, 2, 2)
swing_low = ta.pivotlow(low, 2, 2)
// Detect Fair Value Gaps (FVG)
detect_fvg() =>
// Bullish FVG (current low > previous high + threshold)
bullish_fvg = low > high and show_fvg
// Bearish FVG (current high < previous low - threshold)
bearish_fvg = high < low and show_fvg
= detect_fvg()
// Plot FVG areas
bgcolor(bullish_fvg ? color.new(color.green, 95) : na, title="Bullish FVG")
bgcolor(bearish_fvg ? color.new(color.red, 95) : na, title="Bearish FVG")
// Breach of Structure (BOS) detection
detect_bos() =>
var bool bull_bos = false
var bool bear_bos = false
// Bullish BOS - price breaks above previous swing high
if high > ta.valuewhen(swing_high, high, 1) and not na(swing_high)
bull_bos := true
bear_bos := false
// Bearish BOS - price breaks below previous swing low
if low < ta.valuewhen(swing_low, low, 1) and not na(swing_low)
bear_bos := true
bull_bos := false
= detect_bos()
// Plot BOS signals
plotshape(bull_bos and show_bos, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Bullish BOS")
plotshape(bear_bos and show_bos, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Bearish BOS")
// Liquidity Zones (Recent Highs/Lows)
liquidity_range = input.int(20, "Liquidity Lookback")
buy_side_liquidity = ta.highest(high, liquidity_range)
sell_side_liquidity = ta.lowest(low, liquidity_range)
// Plot Liquidity Zones
plot(show_liquidity ? buy_side_liquidity : na, color=color.red, linewidth=1, title="Sell Side Liquidity")
plot(show_liquidity ? sell_side_liquidity : na, color=color.green, linewidth=1, title="Buy Side Liquidity")
// Order Block Detection (Simplified)
detect_order_blocks() =>
// Bullish Order Block - strong bullish candle followed by pullback
bullish_ob = close > open and (close - open) > (high - low) * 0.7 and show_fvg
// Bearish Order Block - strong bearish candle followed by pullback
bearish_ob = close < open and (open - close) > (high - low) * 0.7 and show_fvg
= detect_order_blocks()
// Plot Order Blocks
bgcolor(bullish_ob ? color.new(color.lime, 90) : na, title="Bullish Order Block")
bgcolor(bearish_ob ? color.new(color.maroon, 90) : na, title="Bearish Order Block")
// Alerts for key events
alertcondition(bull_bos, "Bullish BOS Detected", "Bullish Breach of Structure")
alertcondition(bear_bos, "Bearish BOS Detected", "Bearish Breach of Structure")
// Table for current market structure
var table info_table = table.new(position.top_right, 2, 4, bgcolor=color.white, border_width=1)
if barstate.islast
table.cell(info_table, 0, 0, "Market Structure", bgcolor=color.gray)
table.cell(info_table, 1, 0, "Status", bgcolor=color.gray)
table.cell(info_table, 0, 1, "Bullish BOS", bgcolor=bull_bos ? color.green : color.red)
table.cell(info_table, 1, 1, bull_bos ? "ACTIVE" : "INACTIVE")
table.cell(info_table, 0, 2, "Bearish BOS", bgcolor=bear_bos ? color.red : color.green)
table.cell(info_table, 1, 2, bear_bos ? "ACTIVE" : "INACTIVE")
table.cell(info_table, 0, 3, "FVG Count", bgcolor=color.blue)
table.cell(info_table, 1, 3, str.tostring(bar_index))
Pinbar MTF - No Repaint# Pinbar MTF - No Repaint Indicator
## Complete Technical Documentation
---
## 📊 Overview
**Pinbar MTF (Multi-Timeframe) - No Repaint** is a professional-grade TradingView Pine Script indicator designed to detect high-probability pinbar reversal patterns with advanced filtering systems. The indicator is specifically engineered to be **100% non-repainting**, making it reliable for both live trading and backtesting.
### Key Features
✅ **Non-Repainting** - Signals only appear AFTER bar closes, never disappear
✅ **Three-Layer Filter System** - ATR, SWING, and RSI filters
✅ **Automatic SL/TP Calculation** - Based on risk:reward ratios
✅ **Real-time Alerts** - TradingView notifications for all signals
✅ **Visual Trade Management** - Lines, labels, and areas for entries, stops, and targets
✅ **Backtesting Ready** - Reliable historical data for strategy testing
---
## 🎯 What is a Pinbar?
A **Pinbar (Pin Bar/Pinocchio Bar)** is a single candlestick pattern that indicates a potential price reversal:
### Bullish Pinbar (BUY Signal)
- **Long lower wick** (rejection of lower prices)
- **Small body at the top** of the candle
- Shows buyers rejected sellers' attempt to push price down
- Forms at support levels or swing lows
- Entry signal for LONG positions
### Bearish Pinbar (SELL Signal)
- **Long upper wick** (rejection of higher prices)
- **Small body at the bottom** of the candle
- Shows sellers rejected buyers' attempt to push price up
- Forms at resistance levels or swing highs
- Entry signal for SHORT positions
---
## 🔧 How the Indicator Works
### 1. **Pinbar Detection Logic**
The indicator analyzes the **previous closed bar ** to identify pinbar patterns:
```
Bullish Pinbar Requirements:
- Lower wick > 72% of total candle range (adjustable)
- Upper wick < 28% of total candle range
- Close > Open (bullish candle body)
Bearish Pinbar Requirements:
- Upper wick > 72% of total candle range (adjustable)
- Lower wick < 28% of total candle range
- Close < Open (bearish candle body)
```
**Why check ?** By analyzing the previous completed bar, we ensure the pattern is fully formed and won't change, preventing repainting.
---
### 2. **Three-Layer Filter System**
#### 🔍 **Filter #1: ATR (Average True Range) Filter**
- **Purpose**: Ensures the pinbar has significant size
- **Function**: Only signals if pinbar range ≥ ATR value
- **Benefit**: Filters out small, insignificant pinbars
- **Settings**:
- Enable/Disable toggle
- ATR Period (default: 7)
**Example**: If ATR = 50 pips, only pinbars with 50+ pip range will signal.
---
#### 🔍 **Filter #2: SWING Filter** (Always Active)
- **Purpose**: Confirms pinbar forms at swing highs/lows
- **Function**: Validates the pinbar is an absolute high/low
- **Benefit**: Identifies true reversal points
- **Settings**:
- Swing Candles (default: 3)
**How it works**:
- For bullish pinbar: Checks if low is lowest of past 3 bars
- For bearish pinbar: Checks if high is highest of past 3 bars
**Example**: With 3 swing candles, a bullish pinbar must have the lowest low among the last 3 bars.
---
#### 🔍 **Filter #3: RSI (Relative Strength Index) Filter**
- **Purpose**: Confirms momentum conditions
- **Function**: Prevents signals in extreme momentum zones
- **Benefit**: Avoids counter-trend trades
- **Settings**:
- Enable/Disable toggle
- RSI Period (default: 7)
- RSI Source (Close, Open, High, Low, HL2, HLC3, OHLC4)
- Overbought Level (default: 70)
- Oversold Level (default: 30)
**Logic**:
- Bullish Pinbar: Only signals if RSI < 70 (not overbought)
- Bearish Pinbar: Only signals if RSI > 30 (not oversold)
---
### 3. **Stop Loss Calculation**
Two methods available:
#### Method A: ATR-Based Stop Loss (Recommended)
```
Bullish Pinbar:
SL = Pinbar Low - (1 × ATR)
Bearish Pinbar:
SL = Pinbar High + (1 × ATR)
```
**Benefit**: Dynamic stops that adapt to market volatility
#### Method B: Fixed Pips Stop Loss
```
Bullish Pinbar:
SL = Pinbar Low - (Fixed Pips)
Bearish Pinbar:
SL = Pinbar High + (Fixed Pips)
```
**Settings**:
- Calculate Stop with ATR (toggle)
- Stop Pips without ATR (default: 5)
---
### 4. **Take Profit Calculation**
Take Profit is calculated based on Risk:Reward ratio:
```
Bullish Trade:
TP = Entry + (Entry - SL) × Risk:Reward Ratio
Bearish Trade:
TP = Entry - (SL - Entry) × Risk:Reward Ratio
```
**Example**:
- Entry: 1.2000
- SL: 1.1950 (50 pip risk)
- RR: 2:1
- TP: 1.2100 (100 pip reward = 50 × 2)
**Settings**:
- Risk:Reward Ratio (default: 1.0, range: 0.1 to 10.0)
---
## 📈 Visual Elements
### On-Chart Displays
1. **Signal Markers**
- 🟢 **Green Triangle Up** = Bullish Pinbar (BUY)
- 🔴 **Red Triangle Down** = Bearish Pinbar (SELL)
- Placed directly on the pinbar candle
2. **Entry Labels**
- Green "BUY" label with entry price
- Red "SELL" label with entry price
- Shows exact entry level
3. **Stop Loss Lines**
- 🔴 Red horizontal line
- "SL" label
- Extends 20 bars forward
4. **Take Profit Lines**
- 🟢 Green horizontal line
- "TP" label
- Extends 20 bars forward
5. **Risk/Reward Areas** (Optional)
- Red shaded box = Risk zone (Entry to SL)
- Green shaded box = Reward zone (Entry to TP)
- Visual risk:reward visualization
6. **Info Table** (Top Right)
- Displays current settings
- Shows filter status (ON/OFF)
- Real-time RSI value
- Quick reference panel
---
## 🔔 Alert System
Three alert types available:
### 1. Combined Alert: "Pinbar Signal (Any Direction)"
- Fires for BOTH bullish and bearish pinbars
- **Best for**: General monitoring
- **Message**: "Pinbar Signal Detected on {TICKER} at {PRICE}"
### 2. Bullish Alert: "Bullish Pinbar Alert"
- Fires ONLY for BUY signals
- **Best for**: Long-only strategies
- **Message**: "BUY Signal on {TICKER} at {PRICE}"
### 3. Bearish Alert: "Bearish Pinbar Alert"
- Fires ONLY for SELL signals
- **Best for**: Short-only strategies
- **Message**: "SELL Signal on {TICKER} at {PRICE}"
---
## ⚙️ Input Parameters Reference
### **Filters Group**
| Parameter | Default | Range | Description |
|-----------|---------|-------|-------------|
| ATR Filter on Pinbar Range? | ✅ ON | Boolean | Enable/disable ATR filter |
| ATR Period | 7 | 1+ | Lookback period for ATR calculation |
| Swing Candles | 3 | 1+ | Bars to check for swing high/low |
| RSI Filter on Pinbar? | ❌ OFF | Boolean | Enable/disable RSI filter |
| RSI Period | 7 | 2+ | Lookback period for RSI calculation |
| RSI Source | Close | Multiple | Price data for RSI (Close/Open/High/Low/etc) |
| RSI Overbought Level | 70 | 50-100 | Upper threshold for RSI filter |
| RSI Oversold Level | 30 | 0-50 | Lower threshold for RSI filter |
### **Pinbar Detection Group**
| Parameter | Default | Range | Description |
|-----------|---------|-------|-------------|
| Shadow % vs Body | 72 | 50-95 | Minimum wick size as % of total range |
### **Visualization Group**
| Parameter | Default | Range | Description |
|-----------|---------|-------|-------------|
| Show SL and TP Lines? | ✅ ON | Boolean | Display stop loss and take profit lines |
| Show SL and TP Area? | ❌ OFF | Boolean | Show shaded risk/reward boxes |
### **Risk Management Group**
| Parameter | Default | Range | Description |
|-----------|---------|-------|-------------|
| Risk:Reward Ratio | 1.0 | 0.1-10.0 | Target profit vs risk (1.0 = 1:1, 2.0 = 1:2) |
| Calculate Stop with ATR? | ✅ ON | Boolean | Use ATR for stop calculation |
| Stop Pips without ATR | 5 | 1+ | Fixed pip stop when ATR disabled |
---
## 🚫 Non-Repainting Architecture
### What is Repainting?
**Repainting** occurs when an indicator's historical signals differ from what appeared in real-time. This makes backtesting unreliable and can lead to false confidence in a strategy.
### How This Indicator Prevents Repainting
1. **Closed Bar Analysis**
- All calculations use ` ` offset (previous bar)
- Only analyzes COMPLETED candles
- Signals appear on the bar AFTER the pinbar closes
2. **Confirmed Swing Points**
- Waits for sufficient bar history before signaling
- Only checks historical bars that cannot change
- Prevents premature swing detection
3. **Static Alert Timing**
- Alerts fire only after bar completion
- No conditional logic that changes historically
- Same results in replay mode and live trading
### Verification Method
To verify non-repainting behavior:
1. Apply indicator to chart
2. Note signal locations and prices
3. Refresh browser / reload chart
4. **Signals remain in exact same locations**
---
## 💼 Trading Strategy Guidelines
### Entry Rules
**For Bullish Pinbar (LONG):**
1. Wait for green triangle to appear
2. Enter at close of pinbar (shown in label)
3. Alternative: Enter on break of pinbar high
4. Place stop loss at red SL line
5. Set target at green TP line
**For Bearish Pinbar (SHORT):**
1. Wait for red triangle to appear
2. Enter at close of pinbar (shown in label)
3. Alternative: Enter on break of pinbar low
4. Place stop loss at red SL line
5. Set target at green TP line
### Risk Management
- **Position Sizing**: Risk only 1-2% of account per trade
- **Stop Loss**: Always use the calculated SL (never move it wider)
- **Take Profit**: Use calculated TP or trail stop after 1:1 RR
- **Multiple Timeframes**: Confirm signals on higher timeframe
### Best Practices
✅ **DO:**
- Wait for bar to close before entering
- Trade in direction of higher timeframe trend
- Use on liquid markets with clear support/resistance
- Combine with price action analysis
- Keep a trading journal
❌ **DON'T:**
- Enter before bar closes (prevents seeing full pattern)
- Trade against strong trends
- Ignore the filters (they improve win rate)
- Risk more than 2% per trade
- Trade every signal (be selective)
---
## 📊 Backtesting & Data Export
### Available Data Points
The indicator exports these values for strategy development:
| Output | Description |
|--------|-------------|
| Bullish Signal | 1 = BUY signal, 0 = No signal |
| Bearish Signal | 1 = SELL signal, 0 = No signal |
| Bull SL | Stop loss level for long trades |
| Bull TP | Take profit level for long trades |
| Bull Entry | Entry price for long trades |
| Bear SL | Stop loss level for short trades |
| Bear TP | Take profit level for short trades |
| Bear Entry | Entry price for short trades |
### How to Use in Strategy
These values can be accessed by Pine Script strategies using:
```pine
indicator_values = request.security(syminfo.tickerid, timeframe.period,
)
```
---
## 🎓 Understanding the Filters
### Why Use Multiple Filters?
Single-indicator systems often generate too many false signals. This indicator uses a **confluence approach**:
1. **Pinbar Pattern** = Price rejection detected
2. **+ SWING Filter** = Rejection at key level
3. **+ ATR Filter** = Significant move
4. **+ RSI Filter** = Favorable momentum
**Result**: Higher probability setups with better risk:reward
### Filter Optimization
**Conservative Settings** (Fewer, Higher Quality Signals):
- ATR Filter: ON
- Swing Candles: 5
- RSI Filter: ON
- Shadow %: 75%
**Aggressive Settings** (More Signals, More Noise):
- ATR Filter: OFF
- Swing Candles: 2
- RSI Filter: OFF
- Shadow %: 65%
**Balanced Settings** (Recommended):
- ATR Filter: ON
- Swing Candles: 3
- RSI Filter: OFF (or ON for trending markets)
- Shadow %: 72%
---
## 🔍 Troubleshooting
### "No Signals Appearing"
**Possible Causes:**
1. Filters are too strict
2. No pinbars forming on chart
3. Insufficient bar history
**Solutions:**
- Reduce Shadow % to 65%
- Reduce Swing Candles to 2
- Disable ATR or RSI filters temporarily
- Check that chart has enough data loaded
### "Too Many Signals"
**Solutions:**
- Enable ATR filter
- Increase Swing Candles to 4-5
- Enable RSI filter
- Increase Shadow % to 75-80%
### "Signals Appearing Late"
**This is normal behavior!** The indicator:
- Analyzes previous closed bar
- Signals appear on the bar AFTER the pinbar
- This is what prevents repainting
- Signal latency is 1 bar (by design)
---
## 📝 Technical Specifications
**Indicator Type:** Overlay (displays on price chart)
**Pine Script Version:** 5
**Max Labels:** 500
**Max Lines:** 500
**Repainting:** None (100% non-repainting)
**Data Window Values:** 8 exported values
**Alert Types:** 3 (Combined, Bullish, Bearish)
**Performance:**
- Lightweight script (fast execution)
- Works on all timeframes
- Compatible with all markets (Forex, Crypto, Stocks, Futures)
- No data snooping bias
---
## 🎯 Use Cases
### 1. **Swing Trading**
- Timeframe: Daily, 4H
- Filter Settings: All enabled
- Best for: Catching major reversals
### 2. **Day Trading**
- Timeframe: 15m, 1H
- Filter Settings: ATR + SWING only
- Best for: Intraday reversals
### 3. **Scalping**
- Timeframe: 5m, 15m
- Filter Settings: SWING only (aggressive)
- Best for: Quick reversals (requires experience)
### 4. **Position Trading**
- Timeframe: Weekly, Daily
- Filter Settings: All enabled + high RR (2:1 or 3:1)
- Best for: Long-term trend reversal catches
---
## 🏆 Advantages Over Other Pinbar Indicators
✅ **Guaranteed Non-Repainting** - Many pinbar indicators repaint; this one never does
✅ **Automatic SL/TP** - No manual calculation needed
✅ **Multi-Layer Filtering** - Reduces false signals significantly
✅ **Visual Trade Management** - Clear entry, stop, and target levels
✅ **Flexible Configuration** - Adaptable to any trading style
✅ **Alert System** - Never miss a setup
✅ **Backtesting Ready** - Reliable historical data
✅ **Professional Grade** - Suitable for live trading
---
## 📚 Educational Resources
### Recommended Reading on Pinbars
- "The Pin Bar Trading Strategy" by Nial Fuller
- "Price Action Trading" by Al Brooks
- TradingView Education: Price Action Patterns
### Practice Recommendations
1. Paper trade signals for 20+ trades before live trading
2. Backtest on different timeframes and markets
3. Keep detailed records of all trades
4. Analyze winning vs losing setups
5. Refine filter settings based on results
---
## ⚖️ Disclaimer
This indicator is a tool for technical analysis and does not guarantee profits. Trading involves substantial risk of loss. Past performance is not indicative of future results.
- Always use proper risk management
- Never risk more than you can afford to lose
- Consider your trading experience and objectives
- Seek independent financial advice if needed
---
## 📧 Version Information
**Current Version:** 1.0
**Last Updated:** 2024
**Compatibility:** TradingView Pine Script v5
**Status:** Production Ready
---
## 🔄 Future Enhancements (Potential)
Possible future additions:
- Multi-timeframe confirmation option
- Volume filter integration
- Customizable color schemes
- Win rate statistics display
- Partial profit taking levels
- Trailing stop functionality
---
## 📖 Quick Start Guide
### 5-Minute Setup
1. **Add to Chart**
- Open TradingView
- Go to Pine Editor
- Paste the code
- Click "Add to Chart"
2. **Configure Settings**
- Open indicator settings (gear icon)
- Start with default settings
- Enable "Show SL and TP Lines"
3. **Set Alert**
- Right-click indicator name
- Click "Add Alert"
- Select "Pinbar Signal (Any Direction)"
- Configure notification method
4. **Test**
- Scroll back on chart
- Verify signals make sense
- Check that signals don't repaint
5. **Trade** (After Practice!)
- Wait for alert
- Verify signal quality
- Enter, place SL/TP
- Manage trade
---
## 🎯 Final Thoughts
The **Pinbar MTF - No Repaint** indicator is designed for serious traders who value:
- **Reliability** over flashy signals
- **Quality** over quantity
- **Honesty** over false promises
This indicator will NOT:
- Make you rich overnight
- Win every trade
- Replace proper trading education
This indicator WILL:
- Identify high-probability reversal setups
- Save you analysis time
- Provide consistent, non-repainting signals
- Help you develop a systematic trading approach
**Success in trading comes from:**
1. Proper education (60%)
2. Risk management (30%)
3. Technical tools like this indicator (10%)
Use this tool as part of a complete trading plan, not as a standalone solution.






















