Confirmed Pivots + MACD Signals (with BOS Lines)Confirmed Pivots + MACD Signals
This indicator combines confirmed swing highs/lows (pivots) with MACD-based momentum signals to highlight key reversal and continuation points on the chart.
Core Logic
Confirmed Pivots:
The script identifies swing highs and lows using the user-defined pivot confirmation length.
Once a structure is broken beyond the last pivot, that level becomes a confirmed support (CL) or resistance (CH) line.
These levels are plotted as dashed horizontal rays and labeled directly on the chart.
MACD Integration:
The classic MACD crossover/under logic is used:
Bullish Crossover: MACD line crosses above the Signal line.
Bearish Crossunder: MACD line crosses below the Signal line.
Signal Filtering by Proximity:
A Proximity Zone (%) defines how close price must be to an active support or resistance to trigger a signal.
Buy Signal: When price is within the support zone and a bullish MACD crossover occurs.
Sell Signal: When price is within the resistance zone and a bearish MACD crossunder occurs.
Inputs
Pivot Confirmation Length: Bars used to confirm swing points.
MACD Fast/Slow/Signal Lengths: Standard MACD settings.
Proximity Zone (%): Defines zone width (e.g., 1% around active level).
Output
Labels: "CH" (Confirmed High) and "CL" (Confirmed Low) with color-coded dashed lines.
Signals: "BUY" and "SELL" markers appear when both pivot and MACD conditions align.
Tips
Works best on higher timeframes (H1 and above).
Combine with price action or trend filters for confirmation.
Use proximity percentage according to volatility (e.g., smaller % for low-vol assets).
⚠️ Disclaimer:
This script is provided for educational and informational purposes only.
It does not constitute financial or investment advice, and the author is not responsible for any financial losses that may occur from its use.
Always perform your own analysis and use this indicator together with other technical and risk management tools before making trading decisions.
---------------------------------------------------------------------------------------------
سقف و کف تاییدشده + سیگنالهای MACD
این اندیکاتور ترکیبی از شناسایی سقفها و کفهای تاییدشده (Pivot High/Low) به همراه سیگنالهای مومنتوم MACD است که نقاط برگشت یا ادامهی روند را روی چارت مشخص میکند.
🔹 منطق عملکرد
تایید سقف و کفها:
ابتدا سقف و کفهای محلی بر اساس تعداد کندلهای تنظیمشده شناسایی میشوند.
وقتی ساختار قیمتی از آخرین سقف یا کف عبور کند، آن سطح به عنوان حمایت یا مقاومت تاییدشده در نظر گرفته شده و با برچسبهای “CL” (کف تاییدشده) و “CH” (سقف تاییدشده) و خطوط نقطهچین رسم میشود.
ادغام با MACD:
از منطق کلاسیک کراساور/کراسآندر MACD استفاده شده است:
کراس صعودی: عبور خط MACD از بالای خط سیگنال.
کراس نزولی: عبور خط MACD از زیر خط سیگنال.
فیلتر سیگنال با ناحیه مجاور:
با استفاده از درصد ناحیه مجاور (Proximity Zone %)، فقط زمانی سیگنال صادر میشود که قیمت نزدیک حمایت یا مقاومت فعال باشد.
سیگنال خرید: وقتی قیمت در ناحیهی حمایت و همزمان MACD صعودی شود.
سیگنال فروش: وقتی قیمت در ناحیهی مقاومت و همزمان MACD نزولی شود.
تنظیمات ورودی
طول تأیید پیوتها
تنظیمات MACD (Fast, Slow, Signal)
درصد ناحیه مجاور برای فعال شدن سیگنالها
خروجیها
برچسبهای “CL” و “CH” برای سطوح تاییدشده
نشانگرهای “BUY” و “SELL” در محل صدور سیگنال
نکات کاربردی
بهترین عملکرد در تایمفریمهای بالاتر (۱ ساعته به بالا)
برای دقت بیشتر، آن را با فیلتر روند یا پرایساکشن ترکیب کنید
درصد ناحیه مجاور را با توجه به نوسانات دارایی تنظیم کنید
Recherche dans les scripts pour "swing high"
LETHINH-Swing pa,smc🟦 📌 Title (English)
Swing High / Swing Low – 3-Candle Fractal (5-Bar Pivot) | Auto Alerts
⸻
🟩 📌 Short Description
A clean and reliable swing high / swing low detector based on the classic 3-candle (5-bar) fractal pivot. Automatically marks SH/SL and triggers alerts when a swing is confirmed. No repainting after confirmation.
⸻
🟧 📌 Full Description (for TradingView Publishing)
🔶 Swing High / Swing Low – 3-Candle Fractal (5-Bar Pivot)
This indicator identifies Swing Highs (SH) and Swing Lows (SL) using the classic 3-candle fractal pattern, also known as the 5-bar pivot.
It marks swing points only after full confirmation, making it highly reliable and suitable for structure-based trading.
⸻
🔶 📍 How It Works
A swing is confirmed when the center candle is higher (or lower) than the two candles on each side:
Swing High (SH)
high > high , high , high
Swing Low (SL)
low < low , low , low
The confirmation occurs after 2 right candles close, so the indicator does not repaint once a swing is identified.
⸻
🔶 📍 Key Features
• Detects clean and accurate swings
• Uses pure price action — no indicators, no lag
• Marks swing high (SH) and swing low (SL) directly on the chart
• Non-repainting after confirmation
• Works on all timeframes and all markets
• Extremely lightweight and fast
• Includes alert conditions for both SH and SL
Perfect for traders using:
• Market Structure (BOS / CHoCH)
• Order Blocks (OB)
• Smart Money Concepts (SMC)
• Liquidity hunts
• Wyckoff
• Support/Resistance
• Price Action entries
⸻
🔶 📍 Why This Indicator Is Useful
Swing points are the foundation of market structure.
Accurately detecting them helps traders:
• Identify trend shifts
• Spot BOS / CHoCH correctly
• Find key zones (OB, liquidity levels, supply/demand)
• Time entries more precisely
• Avoid fake structure breaks
This indicator ensures swings are plotted only when fully confirmed, reducing noise and confusion.
⸻
🔶 📍 Alerts
You can create alerts for both conditions:
• Swing High Confirmed
• Swing Low Confirmed
Recommended settings:
• Once per bar close
• Open-ended alert
With alerts enabled, TradingView will automatically notify you every time a new swing forms.
⸻
🔶 📍 No Repainting
Once a swing is confirmed and plotted, it will not change or disappear.
This makes the indicator reliable for real-time alerts and backtesting.
⸻
🔶 📍 Pine Script (v5)
Paste your indicator code here if you want it visible.
Or leave the code hidden if you are publishing as protected.
⸻
🔶 📍 Final Notes
• This indicator focuses on confirmation, not prediction
• It is designed for clean structure reading
• All markets supported: Forex, Crypto, Stocks, Indexes, Commodities
• Suitable for scalping, intraday, swing, and even higher-timeframe trading
If you find this tool helpful, feel free to give it a like and add it to your favorites ❤️
Your support helps me share more tools with the community!
able MACD Overview
Purpose: The indicator combines the traditional MACD (Moving Average Convergence Divergence) with a short-term “forecast” (projection) of MACD/histogram values to give early warning of momentum changes.
Typical outputs:
MACD line (fastEMA − slowEMA)
Signal line (EMA of MACD)
Histogram (MACD − signal)
Forecasted MACD or histogram projected N bars ahead
Optional buy/sell markers and alert conditions
Add the indicator to TradingView (Installation)
Open TradingView and the chart you want to apply the indicator to.
Click “Pine Editor” at the bottom of the chart.
Copy the contents of able_macd_forecast.pine into the Pine Editor window.
Click “Add to chart” (or Save then Add to chart). If it’s a study, it will appear on the chart below price.
If you plan to re-use the script, click Save and give it a meaningful name.
Inputs / Parameters (typical) Note: exact input names may differ in your script. Replace the names below with the script’s input labels when you inspect it.
Source: price source for calculations (close, hl2, etc.).
Fast Length: length for the fast EMA (commonly 12).
Slow Length: length for the slow EMA (commonly 26).
Signal Length: length for the MACD signal EMA (commonly 9).
Forecast Length / Horizon: how many bars ahead the script projects the MACD/histogram (e.g., 1–5).
Forecast Method / Smoothing: choice of projection method (linear regression, EMA extrapolation, simple slope * N, etc.) if available.
Histogram Thresholds: numeric thresholds to emphasize significant momentum (optional).
Show Forecast: toggle on/off the forecast plot.
Alerts On/Off toggles: enable or disable alert conditions baked into the indicator.
Visual / Style settings: colors, plot thickness, histogram style (columns/areas), show labels, show buy/sell arrows.
How the indicator is typically calculated (summary)
MACD line = EMA(source, fast) − EMA(source, slow)
Signal line = EMA(MACD line, signal length)
Histogram = MACD − Signal
Forecast = method-specific short-term projection of MACD or histogram (for example: extend the last slope forward, apply linear regression to MACD values and extrapolate N bars, or apply an additional smoothing and extend that value) Note: For exact math, I need to inspect the script; this is the typical approach.
How to read the indicator (signals & interpretation)
Bullish signal:
MACD line crossing above the signal line (MACD cross up).
Histogram turns positive (cross above zero).
Forecast shows MACD/histogram moving higher in the next N bars (if forecast is positive or trending up).
Bearish signal:
MACD line crossing below the signal line (MACD cross down).
Histogram turns negative (cross below zero).
Forecast shows MACD/histogram moving lower ahead.
Confirmations:
Use price action (higher highs/lows for bullish, lower highs/lows for bearish).
Volume or other momentum/confluence indicators (RSI, ADX).
Divergences:
Bullish divergence: price makes lower low while MACD histogram makes higher low.
Bearish divergence: price makes higher high while MACD histogram makes lower high.
Forecast behavior:
If the forecast leads the MACD cross (forecast crosses before the current MACD does), it’s an early warning.
Use caution: forecasts are prone to false signals; always confirm.
Common trading setups using this indicator
Conservative:
Wait for MACD to cross signal + histogram above zero + forecast already trending same direction.
Use stop below recent swing low (for long) or above recent swing high (for short).
Aggressive (early entry):
Enter when forecast turns positive while MACD still below signal (anticipating cross).
Use tighter stops and smaller position sizes.
Exit rules:
Opposite MACD cross, histogram flipping sign, or a target based on risk-reward.
Use trailing stop based on ATR or structure.
Example settings for different timeframes (starting points)
Scalping / 5–15 min:
Fast 8, Slow 21, Signal 5, Forecast 1–2
Intraday / 1H:
Fast 12, Slow 26, Signal 9, Forecast 2–3
Swing / 4H–Daily:
Fast 12, Slow 26, Signal 9, Forecast 3–5 Adjust based on the asset volatility and backtests.
Adding alerts (TradingView)
Click the “Alerts” button (clock icon) or press Alt + A.
In the Condition dropdown, select the indicator name (able_macd_forecast) and choose a plotted series or built-in alert condition (if the script uses alertcondition).
Common alert types:
MACD crosses Signal (Crossing)
Histogram crosses 0 (Crossing)
Forecast crosses 0 or Forecast trend change (if provided)
Message templates:
“{{ticker}}: MACD crossed above signal on {{interval}}”
“{{ticker}} Forecast positive: MACD forecast shows upward momentum”
Customize the message for your trade automation or notifications.
Configure frequency (Only once, Once per bar, or Once per bar close) — for signals like crossovers, “Once per bar close” is usually safer to avoid repainting issues. Note: If the script includes alertcondition() calls with explicit IDs/messages, use those directly — they are the most reliable for automation.
Backtesting / Strategy conversion
If this script is a study (indicator), you can:
Convert it to a strategy by adding strategy.* order calls (strategy.entry, strategy.close) using the entry/exit logic you prefer, or
Use TradingView’s “Bar Replay” to manually test signals across different markets/timeframes.
If you want, I can help convert or write a strategy wrapper that uses the indicator’s signals to place backtest trades (I’ll need the code).
Practical tips & best practices
Use higher timeframe confirmation for lower-timeframe entries (e.g., check daily MACD momentum before trading 15m signals).
Beware of choppy markets; MACD / forecast may produce whipsaws. Combine with trend filters (moving average direction, ADX).
If you rely on forecasted values, prefer alerts “on bar close” when possible to reduce false alerts from intra-bar noise.
Tune parameters for the specific asset (FX, crypto, stocks have different behavior).
Record each signal and outcome for a sample period (20–100 trades) to evaluate performance.
Troubleshooting
Indicator won’t add: verify Pine version in script header (//@version=4 or //@version=5). TradingView may reject scripts with unsupported version syntax.
Plots missing: check script inputs (Some scripts hide plots if toggles are off).
Alerts firing too often: change alert frequency to “Once per bar close” or adjust threshold values.
Forecast seems to repaint: some forecast methods can repaint (use “bar_index” or store values only on closed bars, or use non-repainting forecast methods). Ask me to inspect the script for repainting logic.
What I can do next (recommended)
If you paste the content of able_macd_forecast.pine here, I will:
Produce a precise, line-by-line usage guide mapping to the exact input names and default values.
Show the exact plotted series names and how to reference them for alerts.
Point out any repainting risks and suggest fixes.
Provide example alert messages that match the script’s alertcondition IDs (if any).
Optionally convert it into a strategy for backtesting, or add non-repainting forecast logic if needed.
Smart Money Concepts [XoRonX]# Smart Money Concepts (SMC) - Advanced Trading Indicator
## 📊 Deskripsi
**Smart Money Concepts ** adalah indicator trading komprehensif yang menggabungkan konsep Smart Money Trading dengan berbagai alat teknikal analisis modern. Indicator ini dirancang untuk membantu trader mengidentifikasi pergerakan institusional (smart money), struktur pasar, zona supply/demand, dan berbagai sinyal trading penting.
Indicator ini mengintegrasikan multiple timeframe analysis, order blocks detection, fair value gaps, fibonacci retracement, volume profile, RSI multi-timeframe, dan moving averages dalam satu platform yang powerful dan mudah digunakan.
---
## 🎯 Fitur Utama
### 1. **Smart Money Structure**
- **Internal Structure** - Struktur pasar jangka pendek untuk entry presisi
- **Swing Structure** - Struktur pasar jangka panjang untuk trend analysis
- **BOS (Break of Structure)** - Konfirmasi kelanjutan trend
- **CHoCH (Change of Character)** - Deteksi potensi reversal
### 2. **Order Blocks**
- **Internal Order Blocks** - Zona demand/supply jangka pendek
- **Swing Order Blocks** - Zona demand/supply jangka panjang
- Filter otomatis berdasarkan volatilitas (ATR/Range)
- Mitigation tracking (High/Low atau Close)
- Customizable display (jumlah order blocks yang ditampilkan)
### 3. **Equal Highs & Equal Lows (EQH/EQL)**
- Deteksi otomatis equal highs/lows
- Indikasi liquidity zones
- Threshold adjustment untuk sensitivitas
- Visual lines dan labels
### 4. **Fair Value Gaps (FVG)**
- Multi-timeframe FVG detection
- Auto threshold filtering
- Bullish & Bearish FVG boxes
- Extension control
- Color customization
### 5. **Premium & Discount Zones**
- Premium Zone (75-100% dari range)
- Equilibrium Zone (47.5-52.5% dari range)
- Discount Zone (0-25% dari range)
- Auto-update berdasarkan swing high/low
### 6. **Fibonacci Retracement**
- **Equilibrium to Discount** - Fib dari EQ ke discount zone
- **Equilibrium to Premium** - Fib dari EQ ke premium zone
- **Discount to Premium** - Fib full range
- Reverse option
- Show/hide lines
- Custom colors
### 7. **Volume Profile (VRVP)**
- Visible Range Volume Profile
- Point of Control (POC)
- Value Area (70% volume)
- Auto-adjust rows
- Placement options (Left/Right)
- Width customization
### 8. **RSI Multi-Timeframe**
- Monitor 3 timeframes sekaligus
- Overbought/Oversold signals
- Visual table display
- Color-coded signals (Red OB, Green OS)
- Customizable position & size
### 9. **Moving Averages**
- 3 Moving Average lines
- Pilihan tipe: EMA, SMA, WMA
- Automatic/Manual period mode
- Individual color & width settings
- Cross alerts (MA vs MA, Price vs MA)
### 10. **Multi-Timeframe Levels**
- Support up to 5 different timeframes
- Previous high/low levels
- Custom line styles
- Color customization
### 11. **Candle Color**
- Color candles berdasarkan trend
- Bullish = Green, Bearish = Red
- Optional toggle
---
## 🛠️ Cara Penggunaan
### **A. Setup Awal**
1. **Tambahkan Indicator ke Chart**
- Buka TradingView
- Klik "Indicators" → "My Scripts" atau paste code
- Pilih "Smart Money Concepts "
2. **Pilih Mode Display**
- **Historical**: Tampilkan semua struktur (untuk backtesting)
- **Present**: Hanya tampilkan struktur terbaru (clean chart)
3. **Pilih Style**
- **Colored**: Warna berbeda untuk bullish/bearish
- **Monochrome**: Tema warna abu-abu
---
### **B. Penggunaan Fitur**
#### **1. Smart Money Structure**
**Internal Structure (Real-time):**
- ✅ Aktifkan "Show Internal Structure"
- Pilih tampilan: All, BOS only, atau CHoCH only
- Gunakan untuk entry timing presisi
- Filter confluence untuk mengurangi noise
**Swing Structure:**
- ✅ Aktifkan "Show Swing Structure"
- Pilih tampilan struktur bullish/bearish
- Adjust "Swings Length" (default: 50)
- Gunakan untuk konfirmasi trend utama
**Tips:**
- BOS = Konfirmasi trend continuation
- CHoCH = Warning untuk possible reversal
- Tunggu price retest ke order block setelah BOS
---
#### **2. Order Blocks**
**Setup:**
- ✅ Aktifkan Internal/Swing Order Blocks
- Set jumlah blocks yang ditampil (1-20)
- Pilih filter: ATR atau Cumulative Mean Range
- Pilih mitigation: Close atau High/Low
**Cara Trading:**
1. Tunggu BOS/CHoCH terbentuk
2. Identifikasi order block terdekat
3. Wait for price pullback ke order block
4. Entry saat price respek order block (rejection)
5. Stop loss di bawah/atas order block
6. Target: swing high/low berikutnya
**Color Code:**
- 🔵 Light Blue = Internal Bullish OB
- 🔴 Light Red = Internal Bearish OB
- 🔵 Dark Blue = Swing Bullish OB
- 🔴 Dark Red = Swing Bearish OB
---
#### **3. Equal Highs/Lows (EQH/EQL)**
**Setup:**
- ✅ Aktifkan "Equal High/Low"
- Set "Bars Confirmation" (default: 3)
- Adjust threshold (0-0.5, default: 0.1)
**Interpretasi:**
- EQH = Liquidity di atas, kemungkinan sweep lalu dump
- EQL = Liquidity di bawah, kemungkinan sweep lalu pump
- Biasanya smart money akan grab liquidity sebelum move besar
**Trading Strategy:**
- Wait for EQH/EQL formation
- Anticipate liquidity grab
- Entry setelah sweep dengan konfirmasi (order block, FVG, CHoCH)
---
#### **4. Fair Value Gaps (FVG)**
**Setup:**
- ✅ Aktifkan "Fair Value Gaps"
- Pilih timeframe (default: chart timeframe)
- Enable/disable auto threshold
- Set extension bars
**Cara Trading:**
1. Bullish FVG = Support zone untuk buy
2. Bearish FVG = Resistance zone untuk sell
3. Price tends to fill FVG (retest)
4. Entry saat price kembali ke FVG
5. Partial fill = valid, full fill = invalidated
**Tips:**
- FVG + Order Block = High probability setup
- Multi-timeframe FVG lebih kuat
- Unfilled FVG = strong momentum
---
#### **5. Premium & Discount Zones**
**Setup:**
- ✅ Aktifkan "Premium/Discount Zones"
- Zones akan auto-update berdasarkan swing high/low
**Interpretasi:**
- 🟢 **Discount Zone** = Area BUY (price murah)
- ⚪ **Equilibrium** = Neutral (50%)
- 🔴 **Premium Zone** = Area SELL (price mahal)
**Trading Strategy:**
- BUY dari discount zone
- SELL dari premium zone
- Avoid trading di equilibrium
- Combine dengan structure confirmation
---
#### **6. Fibonacci Retracement**
**Setup:**
- Pilih Fib yang ingin ditampilkan:
- Equilibrium to Discount
- Equilibrium to Premium
- Discount to Premium
- Toggle show lines
- Enable reverse jika perlu
- Custom colors
**Key Levels:**
- 0.236 = Shallow retracement
- 0.382 = Common retracement
- 0.5 = 50% golden level
- 0.618 = Golden ratio (penting!)
- 0.786 = Deep retracement
**Cara Pakai:**
- 0.618-0.786 = Ideal entry zone dalam trend
- Combine dengan order blocks
- Wait for confirmation candle
---
#### **7. Volume Profile (VRVP)**
**Setup:**
- ✅ Aktifkan "Show Volume Profile"
- Set jumlah rows (10-100)
- Adjust width (5-50%)
- Pilih placement (Left/Right)
- Enable POC dan Value Area
**Interpretasi:**
- **POC (Point of Control)** = Harga dengan volume tertinggi = magnet
- **Value Area** = 70% volume = fair price range
- **Low Volume Nodes** = Weak support/resistance
- **High Volume Nodes** = Strong support/resistance
**Trading:**
- POC acts as support/resistance
- Price tends to return to POC
- Breakout dari Value Area = momentum
---
#### **8. RSI Multi-Timeframe**
**Setup:**
- ✅ Aktifkan "Show RSI Table"
- Set 3 timeframes (default: chart, 5m, 15m)
- Set RSI period (default: 14)
- Set Overbought level (default: 70)
- Set Oversold level (default: 30)
- Pilih posisi & ukuran table
**Interpretasi:**
- 🟢 **OS (Oversold)** = RSI ≤ 30 = Kondisi jenuh jual
- 🔴 **OB (Overbought)** = RSI ≥ 70 = Kondisi jenuh beli
- **-** = Neutral zone
**Trading Strategy:**
1. Multi-timeframe alignment = strong signal
2. OS + Bullish structure = BUY signal
3. OB + Bearish structure = SELL signal
4. Divergence RSI vs Price = reversal warning
**Contoh:**
- TF1: OS, TF2: OS, TF3: OS + Price di discount zone = STRONG BUY
---
#### **9. Moving Averages**
**Setup:**
- Pilih MA Type: EMA, SMA, atau WMA (berlaku untuk ketiga MA)
- Pilih Period Mode: Automatic atau Manual
- Set period untuk MA 1, 2, 3 (default: 20, 50, 100)
- Custom color & width per MA
- ✅ Enable Cross Alerts
**Interpretasi:**
- **Golden Cross** = MA fast cross above MA slow = Bullish
- **Death Cross** = MA fast cross below MA slow = Bearish
- Price above all MAs = Strong uptrend
- Price below all MAs = Strong downtrend
**Trading Strategy:**
1. MA1 (20) = Short-term trend
2. MA2 (50) = Medium-term trend
3. MA3 (100) = Long-term trend
**Entry Signals:**
- Price bounce dari MA dalam trend = continuation
- MA cross dengan konfirmasi structure = entry
- Multiple MA confluence = strong support/resistance
**Alerts Available:**
- MA1 cross MA2/MA3
- MA2 cross MA3
- Price cross any MA
---
#### **10. Multi-Timeframe Levels**
**Setup:**
- Enable HTF Level 1-5
- Set timeframes (contoh: 5m, 1H, 4H, D, W)
- Pilih line style (solid/dashed/dotted)
- Custom colors
**Cara Pakai:**
- Previous high/low dari HTF = strong S/R
- Breakout HTF level = significant move
- Multiple HTF levels confluence = major zone
---
### **C. Trading Setup Combination**
#### **Setup 1: High Probability Buy (Bullish)**
1. ✅ Swing structure: Bullish BOS
2. ✅ Price di Discount Zone
3. ✅ Pullback ke Bullish Order Block
4. ✅ Bullish FVG di bawah
5. ✅ RSI Multi-TF: Oversold
6. ✅ Price bounce dari MA
7. ✅ POC/Value Area support
8. ✅ Fibonacci 0.618-0.786 retracement
**Entry:** Saat price reject dari order block dengan confirmation candle
**Stop Loss:** Below order block
**Target:** Swing high atau premium zone
---
#### **Setup 2: High Probability Sell (Bearish)**
1. ✅ Swing structure: Bearish BOS
2. ✅ Price di Premium Zone
3. ✅ Pullback ke Bearish Order Block
4. ✅ Bearish FVG di atas
5. ✅ RSI Multi-TF: Overbought
6. ✅ Price reject dari MA
7. ✅ POC/Value Area resistance
8. ✅ Fibonacci 0.618-0.786 retracement
**Entry:** Saat price reject dari order block dengan confirmation candle
**Stop Loss:** Above order block
**Target:** Swing low atau discount zone
---
#### **Setup 3: Liquidity Grab (EQH/EQL)**
1. ✅ Identifikasi EQH atau EQL
2. ✅ Wait for liquidity sweep
3. ✅ Konfirmasi dengan CHoCH
4. ✅ Order block terbentuk setelah sweep
5. ✅ Entry saat retest order block
---
### **D. Tips & Best Practices**
**Risk Management:**
- Selalu gunakan stop loss
- Risk 1-2% per trade
- Risk:Reward minimum 1:2
- Jangan over-leverage
**Confluence adalah Kunci:**
- Minimal 3-4 konfirmasi sebelum entry
- Lebih banyak konfirmasi = higher probability
- Quality over quantity
**Timeframe Analysis:**
- HTF (Higher Timeframe) = Trend direction
- LTF (Lower Timeframe) = Entry timing
- Align dengan HTF trend
**Backtesting:**
- Gunakan mode "Historical"
- Test strategy di berbagai market condition
- Record dan analyze hasil
**Market Condition:**
- Trending market = Follow BOS, use order blocks
- Ranging market = Use premium/discount zones, EQH/EQL
- High volatility = Wider stops, wait for clear structure
**Avoid:**
- Trading di equilibrium zone
- Entry tanpa konfirmasi
- Fighting the trend
- Overleveraging
- Emotional trading
---
## 📈 Recommended Settings
### **For Scalping (1m - 5m):**
- Internal Structure: ON
- Swing Structure: OFF
- Order Blocks: Internal only
- RSI Timeframes: 1m, 5m, 15m
- MA Periods: 9, 21, 50
### **For Day Trading (15m - 1H):**
- Internal Structure: ON
- Swing Structure: ON
- Order Blocks: Both
- RSI Timeframes: 15m, 1H, 4H
- MA Periods: 20, 50, 100
### **For Swing Trading (4H - D):**
- Internal Structure: OFF
- Swing Structure: ON
- Order Blocks: Swing only
- RSI Timeframes: 4H, D, W
- MA Periods: 20, 50, 200
---
## ⚠️ Disclaimer
Indicator ini adalah alat bantu analisis teknikal. Tidak ada indicator yang 100% akurat. Selalu:
- Lakukan analisa fundamental
- Gunakan proper risk management
- Praktik di demo account terlebih dahulu
- Trading memiliki resiko, trade at your own risk
---
## 📝 Version Info
**Version:** 5.0
**Platform:** TradingView Pine Script v5
**Author:** XoRonX
**Max Labels:** 500
**Max Lines:** 500
**Max Boxes:** 500
---
## 🔄 Updates & Support
Untuk update, bug reports, atau pertanyaan:
- Check documentation regularly
- Test new features in replay mode
- Backup your settings before updates
---
## 🎓 Learning Resources
**Recommended Study:**
1. Smart Money Concepts (SMC) basics
2. Order blocks theory
3. Liquidity concepts
4. ICT (Inner Circle Trader) concepts
5. Volume profile analysis
6. Multi-timeframe analysis
**Practice:**
- Start with higher timeframes
- Master one concept at a time
- Keep a trading journal
- Review your trades weekly
---
**Happy Trading! 🚀📊**
_Remember: The best indicator is your own analysis and discipline._
MACD Divergence Optimizer# MACD Divergence Optimizer - User Guide
## Overview
The **MACD Divergence Optimizer** is a professional-grade technical analysis indicator for TradingView that automatically detects hidden divergences on MACD with volume weighting. It identifies potential reversal points before price action confirms the move, giving traders an early edge.
---
## What is Divergence?
A **divergence** occurs when price and an oscillator (like MACD) move in opposite directions:
- **Bullish Divergence**: Price makes a lower low, but MACD makes a higher low → Potential uptrend reversal
- **Bearish Divergence**: Price makes a higher high, but MACD makes a lower high → Potential downtrend reversal
Divergences are among the most reliable reversal signals in technical analysis.
---
## Indicator Features
### Volume-Weighted MACD
- Standard MACD is calculated on closing price
- This indicator uses **volume-weighted closing prices** for greater accuracy
- Formula: MACD = (Volume-Weighted EMA₁₂ - Volume-Weighted EMA₂₆)
- Volume weighting gives more importance to high-conviction price moves
### Automatic Swing Detection
- Detects local highs and lows (5-bar lookback)
- Tracks the last 5 swings for divergence analysis
- Only meaningful swings are tracked (filtered for noise)
### Smart Signal Generation
- Green triangle (▲) = Bullish Divergence (BUY signal)
- Red triangle (▼) = Bearish Divergence (SELL signal)
- Triangles appear directly on the MACD line for precise entry timing
### Built-in Alerts
- Real-time notifications for divergence signals
- Alerts can trigger mobile push notifications or sound
- Never miss a trading opportunity
---
## How to Use
### Installation
1. Open TradingView and navigate to the Chart
2. Click "Indicator" → Search "MACD Divergence Optimizer"
3. Click "Add to Chart"
4. The indicator appears in a separate panel below the price chart
### Reading the Indicator
**MACD Panel displays:**
- **Blue Line** = MACD (fast momentum)
- **Orange Line** = Signal line (slow momentum)
- **Histogram** (colored bars) = Difference between MACD and Signal
- Green bars = MACD above signal (bullish)
- Red bars = MACD below signal (bearish)
**Divergence Signals:**
- **Green Triangle ▲** = Bullish divergence detected
- Price is lower, but MACD momentum is strengthening
- Look for uptrend reversal
- Confirm with higher closes or volume
- **Red Triangle ▼** = Bearish divergence detected
- Price is higher, but MACD momentum is weakening
- Look for downtrend reversal
- Confirm with lower closes or selling volume
---
## Parameters & Settings
### MACD Fast Length (Default: 12)
- Controls the faster moving average period
- **Lower values** → More responsive, more false signals
- **Higher values** → Smoother, fewer signals
- **Typical range**: 8-15
### MACD Slow Length (Default: 26)
- Controls the slower moving average period
- **Lower values** → Faster divergence detection
- **Higher values** → More reliable, fewer signals
- **Typical range**: 20-35
### Signal Smoothing (Default: 9)
- EMA period applied to MACD itself
- **Lower values** → Faster crossover signals
- **Higher values** → Fewer false crossovers
- **Typical range**: 5-15
### Min Divergence Strength (Default: 0.5%)
- Minimum % difference between current MACD and swing MACD
- **Lower values** → More divergence signals (noisier)
- **Higher values** → Only strong divergences (fewer signals)
- **Recommended**: 0.3% - 1.0%
### Lookback Bars (Default: 75)
- Historical window for analysis
- Larger lookback = more context but slower calculation
- **Typical range**: 50-100
---
## Trading Strategy
### Bullish Divergence (Entry Setup)
1. **Identify Signal**: Green triangle appears on MACD
2. **Confirm Price**: Look for price rejection of the low (bounce)
3. **Volume Check**: Buy on increase in volume at the bounce
4. **Entry**: Above the swing low level
5. **Stop Loss**: Below the most recent swing low
6. **Target**: Next swing high or resistance level
### Bearish Divergence (Entry Setup)
1. **Identify Signal**: Red triangle appears on MACD
2. **Confirm Price**: Look for price rejection of the high
3. **Volume Check**: Sell on increase in volume at rejection
4. **Entry**: Below the swing high level
5. **Stop Loss**: Above the most recent swing high
6. **Target**: Next swing low or support level
### Risk Management
- **Position Size**: Risk only 1-2% per trade
- **Stop Loss**: Place beyond recent swings
- **Take Profit**: Scale out at 1:1, 1:2, 1:3 risk-reward ratios
- **Filter**: Use on higher timeframes (4H, Daily) for reliability
---
## Timeframe Recommendations
| Timeframe | Best For | Signal Quality |
|-----------|----------|---|
| **1H** | Scalping, day trading | Moderate (some noise) |
| **4H** | Swing trading | Excellent |
| **Daily** | Position trading | Excellent |
| **Weekly** | Long-term trends | Excellent |
---
## Tips & Best Practices
### ✅ DO:
- **Use on trends**: Divergences work best when there's a clear trend
- **Combine signals**: Look for confirmation from price action, volume, or moving averages
- **Trade the bounce**: Wait for price to react to the swing, then enter
- **Adjust parameters**: Test different MACD lengths for your trading style
- **Use alerts**: Set up mobile alerts so you don't miss signals
### ❌ DON'T:
- **Trade every signal**: Some signals are stronger than others
- **Trade flat/choppy markets**: Divergences fail in ranging markets
- **Ignore support/resistance**: Trade divergences near key levels for best results
- **Over-leverage**: Divergences are probabilistic, not guaranteed
- **Disable volume analysis**: Always check volume when divergence fires
---
## Advanced Features
### Volume Weighting
The indicator uses **volume-weighted MACD** instead of standard MACD. This means:
- High-volume reversals get more emphasis
- Low-volume moves are smoothed out
- More accurate momentum readings
- Better at identifying true trend changes
### Array Tracking
The indicator tracks the last 5 swings in arrays:
- `swingLows ` = last 5 price lows
- `swingHighs ` = last 5 price highs
- `swingMacds ` = corresponding MACD values
This allows detection of **hidden divergences** not visible in traditional analysis.
---
## Common Questions
**Q: Why didn't the indicator trigger a signal when I see a divergence?**
A: The indicator may require:
- MACD histogram to cross the zero line (confirms momentum shift)
- Minimum strength threshold to be met (adjust Min Divergence Strength)
- At least 5 swings to be recorded in the lookback window
**Q: Can I use this on all timeframes?**
A: Yes, but divergences are more reliable on higher timeframes (4H+). Lower timeframes produce more signals but with more noise.
**Q: Should I trade every green/red triangle?**
A: No. Use them as a heads-up for potential reversals. Always confirm with:
- Price action (rejection of the swing)
- Volume (increasing volume at reversal)
- Key support/resistance levels
**Q: How do I set alerts?**
A:
1. Right-click the indicator → Edit Alerts
2. Check "Bullish Divergence" and/or "Bearish Divergence"
3. Choose notification type (browser, mobile, email)
4. Set frequency to "Once per bar close"
**Q: What's the difference between regular and hidden divergence?**
A: This indicator detects **hidden divergences** (also called continuation divergences):
- **Regular**: Price makes new extreme, but oscillator doesn't
- **Hidden**: Price makes new extreme, oscillator makes new extreme in different direction
- Hidden divergences are often more reliable for continuation plays
---
## Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice. Past performance does not guarantee future results. Always use proper risk management and combine with other analysis methods. Trading and investing carry risk of loss. Do your own research before making trading decisions.
---
## Support & Updates
For issues, feature requests, or questions:
- Check the indicator settings and parameter values
- Test on historical data first before live trading
- Adjust parameters to match your trading style and timeframe
---
**Version**: 1.0
**Last Updated**: November 2025
**Compatible**: TradingView v6+
Structure Pro by MurshidfxInspired by the 'mentfx Structure' indicator created by Anton (mentfx) on TradingView,
## Overview
Structure Pro tracks market structure by maintaining an adaptive dealing range and its midpoint. Swing highs and lows become structural boundaries, and the script responds to confirmed breakouts by recalculating the active range. Labels highlight the latest trend flip so the chart stays readable while the range evolves.
## Core Logic
- Detects swing highs/lows using a configurable pivot strength and promotes confirmed pivots to structural levels.
- Applies a percentage buffer to decide when price truly breaks structure; once triggered, the opposite boundary is recalculated with an anchor search that looks back through historical bars.
- Computes equilibrium as the midpoint between the current structural high and low so you can gauge premium versus discount zones.
- Emits a single BULL or BEAR label when the trend state changes, keeping only the most recent signal on the chart.
## How to Use
1. Open a clean chart and apply only this script.
2. Select a swing strength that matches the scale you want to monitor (lower values for responsive intraday swings, higher values for broader moves).
3. Tune the structure sensitivity percentage if you prefer tighter or looser confirmation before declaring a breakout.
4. Track DRH/DRL for the current dealing range, use the equilibrium line as a mean-reversion guide, and look to the BULL/BEAR label for structure confirmation.
5. Combine the levels with your own execution, risk, and position rules—this script does not manage orders.
## Inputs
- Swing Point Strength: bars required on both sides to confirm a pivot.
- Structure Break Sensitivity: percentage buffer applied to the range before calling a breakout.
- Dealing Range display: toggles for visibility, line width/color, label text, and label size.
- Equilibrium display: line style, width, and color controls.
- Trend Signals: enable/disable labels, adjust text size, and pick label colors.
## Notes
- Designed for live structure tracking; the script relies on confirmed pivots and does not peek into future data.
- Built to be chart-agnostic for standard candles; non-standard chart types can distort the measurements.
- Published open-source so traders can review and verify the implementation details.
Pivots High Low Live DetectionPivots High Low Live Detection
Identifies and visualizes swing highs and lows on the chart in real time.
Helps to observe evolving market structure by connecting confirmed or developing pivot points with lines and labels.
Using a configurable lookback, minimum deviation, and confirmation bar system, the indicator highlights new Higher Highs (HH), Higher Lows (HL), Lower Highs (LH), and Lower Lows (LL) as they form.
When “Live (repainting)” mode is enabled, the current swing leg updates dynamically with each candle, giving immediate feedback as price develops.
When disabled, only confirmed pivots are plotted, ideal for historical validation and backtesting.
+ Key Features
Detects and labels major swing points (HH, HL, LH, LL).
Works in live or confirmed (non-repainting) mode.
Adjustable parameters for lookback, deviation (in ticks), and confirmation bars.
Lightweight and compatible with any timeframe or symbol.
Includes runtime alerts for new structural pivots and direction shifts.
+ How to Use
Adjust the inputs under the “Pivots” group to control sensitivity.
Enable “Live (repainting)” to see developing swing legs, or disable it for confirmed structure only.
Use alerts to track structural changes or potential trend reversals.
Luxy BIG beautiful Dynamic ORBThis is an advanced Opening Range Breakout (ORB) indicator that tracks price breakouts from the first 5, 15, 30, and 60 minutes of the trading session. It provides complete trade management including entry signals, stop-loss placement, take-profit targets, and position sizing calculations.
The ORB strategy is based on the concept that the opening range of a trading session often acts as support/resistance, and breakouts from this range tend to lead to significant moves.
What Makes This Different?
Most ORB indicators simply draw horizontal lines and leave you to figure out the rest. This indicator goes several steps further:
Multi-Stage Tracking
Instead of just one ORB timeframe, this tracks FOUR simultaneously (5min, 15min, 30min, 60min). Each stage builds on the previous one, giving you multiple trading opportunities throughout the session.
Active Trade Management
When a breakout occurs, the indicator automatically calculates and displays entry price, stop-loss, and multiple take-profit targets. These lines extend forward and update in real-time until the trade completes.
Cycle Detection
Unlike indicators that only show the first breakout, this tracks the complete cycle: Breakout → Retest → Re-breakout. You can see when price returns to test the ORB level after breaking out (potential re-entry).
Failed Breakout Warning
If price breaks out but quickly returns inside the range (within a few bars), the label changes to "FAILED BREAK" - warning you to exit or avoid the trade.
Position Sizing Calculator
Built-in risk management that tells you exactly how many shares to buy based on your account size and risk tolerance. No more guessing or manual calculations.
Advanced Filtering
Optional filters for volume confirmation, trend alignment, and Fair Value Gaps (FVG) to reduce false signals and improve win rate.
Core Features Explained
### 1. Multi-Stage ORB Levels
The indicator builds four separate Opening Range levels:
ORB 5 - First 5 minutes (fastest signals, most volatile)
ORB 15 - First 15 minutes (balanced, most popular)
ORB 30 - First 30 minutes (slower, more reliable)
ORB 60 - First 60 minutes (slowest, most confirmed)
Each level is drawn as a horizontal range on your chart. As time progresses, the ranges expand to include more price action. You can enable or disable any stage and assign custom colors to each.
How it works: During the opening minutes, the indicator tracks the highest high and lowest low. Once the time period completes, those levels become your ORB high and low for that stage.
### 2. Breakout Detection
When price closes outside the ORB range, a label appears:
BREAK UP (green label above price) - Price closed above ORB High
BREAK DOWN (red label below price) - Price closed below ORB Low
The label shows which ORB stage triggered (ORB5, ORB15, etc.) and the cycle number if tracking multiple breakouts.
Important: Signals appear on bar close only - no repainting. What you see is what you get.
### 3. Retest Detection
After price breaks out and moves away, if it returns to test the ORB level, a "RETEST" label appears (orange). This indicates:
The original breakout level is now acting as support/resistance
Potential re-entry opportunity if you missed the first breakout
Confirmation that the level is significant
The indicator requires price to move a minimum distance away before considering it a valid retest (configurable in settings).
### 4. Failed Breakout Detection
If price breaks out but returns inside the ORB range within a few bars (before the breakout is "committed"), the original label changes to "FAILED BREAK" in orange.
This warns you:
The breakout lacked conviction
Consider exiting if already in the trade
Wait for better setup
Committed Breakout: The indicator tracks how many bars price stays outside the range. Only after staying outside for the minimum number of bars does it become a committed breakout that can be retested.
### 5. TP/SL Lines (Trade Management)
When a breakout occurs, colored horizontal lines appear showing:
Entry Line (cyan for long, orange for short) - Your entry price (the ORB level)
Stop Loss Line (red) - Where to exit if trade goes against you
TP1, TP2, TP3 Lines (same color as entry) - Profit targets at 1R, 2R, 3R
These lines extend forward as new bars form, making it easy to track your trade. When a target is hit, the line turns green and the label shows a checkmark.
Lines freeze (stop updating) when:
Stop loss is hit
The final enabled take-profit is hit
End of trading session (optional setting)
### 6. Position Sizing Dashboard
The dashboard (bottom-left corner by default) shows real-time information:
Current ORB stage and range size
Breakout status (Inside Range / Break Up / Break Down)
Volume confirmation (if filter enabled)
Trend alignment (if filter enabled)
Entry and Stop Loss prices
All enabled Take Profit levels with percentages
Risk/Reward ratio
Position sizing: Max shares to buy and total risk amount
Position Sizing Example:
If your account is $25,000 and you risk 1% per trade ($250), and the distance from entry to stop loss is $0.50, the calculator shows you can buy 500 shares (250 / 0.50 = 500).
### 7. FVG Filter (Fair Value Gap)
Fair Value Gaps are price inefficiencies - gaps left by strong momentum where one candle's high doesn't overlap with a previous candle's low (or vice versa).
When enabled, this filter:
Detects bullish and bearish FVGs
Draws semi-transparent boxes around these gaps
Only allows breakout signals if there's an FVG near the breakout level
Why this helps: FVGs indicate institutional activity. Breakouts through FVGs tend to be stronger and more reliable.
Proximity setting: Controls how close the FVG must be to the ORB level. 2.0x means the breakout can be within 2 times the FVG size - a reasonable default.
### 8. Volume & Trend Filters
Volume Filter:
Requires current volume to be above average (customizable multiplier). High volume breakouts are more likely to sustain.
Set minimum multiplier (e.g., 1.5x = 50% above average)
Set "strong volume" multiplier (e.g., 2.5x) that bypasses other filters
Dashboard shows current volume ratio
Trend Filter:
Only shows breakouts aligned with a higher timeframe trend. Choose from:
VWAP - Price above/below volume-weighted average
EMA - Price above/below exponential moving average
SuperTrend - ATR-based trend indicator
Combined modes (VWAP+EMA, VWAP+SuperTrend) for stricter filtering
### 9. Pullback Filter (Advanced)
Purpose:
Waits for price to pull back slightly after initial breakout before confirming the signal.
This reduces false breakouts from immediate reversals.
How it works:
- After breakout is detected, indicator waits for a small pullback (default 2%)
- Once pullback occurs AND price breaks out again, signal is confirmed
- If no pullback within timeout period (5 bars), signal is issued anyway
Settings:
Enable Pullback Filter: Turn this filter on/off
Pullback %: How much price must pull back (2% is balanced)
Timeout (bars): Max bars to wait for pullback (5 is standard)
When to use:
- Choppy markets with many fake breakouts
- When you want higher quality signals
- Combine with Volume filter for maximum confirmation
Trade-off:
- Better signal quality
- May miss some valid fast moves
- Slight entry delay
How to Use This Indicator
### For Beginners - Simple Setup
Add the indicator to your chart (5-minute or 15-minute timeframe recommended)
Leave all default settings - they work well for most stocks
Watch for BREAK UP or BREAK DOWN labels to appear
Check the dashboard for entry, stop loss, and targets
Use the position sizing to determine how many shares to buy
Basic Trading Plan:
Wait for a clear breakout label
Enter at the ORB level (or next candle open if you're late)
Place stop loss where the red line indicates
Take profit at TP1 (50% of position) and TP2 (remaining 50%)
### For Advanced Traders - Customized Setup
Choose which ORB stages to track (you might only want ORB15 and ORB30)
Enable filters: Volume (stocks) or Trend (trending markets)
Enable FVG filter for institutional confirmation
Set "Track Cycles" mode to catch retests and re-breakouts
Customize stop loss method (ATR for volatile stocks, ORB% for stable ones)
Adjust risk per trade and account size for accurate position sizing
Advanced Strategy Example:
Enable ORB15 only (disable others for cleaner chart)
Turn on Volume filter at 1.5x with Strong at 2.5x
Enable Trend filter using VWAP
Set Signal Mode to "Track Cycles" with Max 3 cycles
Wait for aligned breakouts (Volume + Trend + Direction)
Enter on retest if you missed the initial break
### Timeframe Recommendations
5-minute chart: Scalping, very active trading, crypto
15-minute chart: Day trading, balanced approach (most popular)
30-minute chart: Swing entries, less screen time
60-minute chart: Position trading, longer holds
The indicator works on any intraday timeframe, but ORB is fundamentally a day trading strategy. Daily charts don't make sense for ORB.
DEFAULT CONFIGURATION
ON by Default:
• All 4 ORB stages (5/15/30/60)
• Breakout Detection
• Retest Labels
• All TP levels (1/1.5/2/3)
• TP/SL Lines (Detailed mode)
• Dashboard (Bottom Left, Dark theme)
• Position Size Calculator
OFF by Default (Optional Filters):
• FVG Filter
• Pullback Filter
• Volume Filter
• Trend Filter
• HTF Bias Check
• Alerts
Recommended for Beginners:
• Leave all defaults
• Session Mode: Auto-Detect
• Signal Mode: Track Cycles
• Stop Method: ATR
• Add Volume Filter if trading stocks
Recommended for Advanced:
• Enable ORB15 + ORB30 only (disable 5 & 60)
• Enable: Volume + Trend + FVG
• Signal Mode: Track Cycles, Max 3
• Stop Method: ATR or Safer
• Enable HTF Daily bias check
## Settings Guide
The settings are organized into logical groups. Here's what each section controls:
### ORB COLORS Section
Show Edge Labels: Display "ORB 5", "ORB 15" labels at the right edge of the levels
Background: Fill the area between ORB high/low with color
Transparency: How see-through the background is (95% is nearly invisible)
Enable ORB 5/15/30/60: Turn each stage on or off individually
Colors: Assign colors to each ORB stage for easy identification
### SESSION SETTINGS Section
Session Mode: Choose trading session (Auto-Detect works for most instruments)
Custom Session Hours: Define your own hours if needed (format: HHMM-HHMM)
Auto-Detect uses the instrument's natural hours (stocks use exchange hours, crypto uses 24/7).
### BREAKOUT DETECTION Section
Enable Breakout Detection: Master switch for signals
Show Retest Labels: Display retest signals
Label Size: Visual size for all labels (Small recommended)
Enable FVG Filter: Require Fair Value Gap confirmation
Show FVG Boxes: Display the gap boxes on chart
Signal Mode: "First Only" = one signal per direction per day, "Track Cycles" = multiple signals
Max Cycles: How many breakout-retest cycles to track (6 is balanced)
Breakout Buffer: Extra distance required beyond ORB level (0.1-0.2% recommended)
Min Distance for Retest: How far price must move away before retest is valid (2% recommended)
Min Bars Outside ORB: Bars price must stay outside for committed breakout (2 is balanced)
### TARGETS & RISK Section
Enable Targets & Stop-Loss: Calculate and show trade management
TP1/TP2/TP3 checkboxes: Select which profit targets to display
Stop Method: How to calculate stop loss placement
- ATR: Based on volatility (best for most cases)
- ORB %: Fixed % of ORB range
- Swing: Recent swing high/low
- Safer: Widest of all methods
ATR Length & Multiplier: Controls ATR stop distance (14 period, 1.5x is standard)
ORB Stop %: Percentage beyond ORB for stop (20% is balanced)
Swing Bars: Lookback period for swing high/low (3 is recent)
### TP/SL LINES Section
Show TP/SL Lines: Display horizontal lines on chart
Label Format: "Short" = minimal text, "Detailed" = shows prices
Freeze Lines at EOD: Stop extending lines at session close
### DASHBOARD Section
Show Info Panel: Display the metrics dashboard
Theme: Dark or Light colors
Position: Where to place dashboard on chart
Toggle rows: Show/hide specific information rows
Calculate Position Size: Enable the position sizing calculator
Risk Mode: Risk fixed $ amount or % of account
Account Size: Your total trading capital
Risk %: Percentage to risk per trade (0.5-1% recommended)
### VOLUME FILTER Section
Enable Volume Filter: Require volume confirmation
MA Length: Average period (20 is standard)
Min Volume: Required multiplier (1.5x = 50% above average)
Strong Volume: Multiplier that bypasses other filters (2.5x)
### TREND FILTER Section
Enable Trend Filter: Require trend alignment
Trend Mode: Method to determine trend (VWAP is simple and effective)
Custom EMA Length: If using EMA mode (50 for swing, 20 for day trading)
SuperTrend settings: Period and Multiplier if using SuperTrend mode
### HIGHER TIMEFRAME Section
Check Daily Trend: Display higher timeframe bias in dashboard
Timeframe: What TF to check (D = daily, recommended)
Method: Price vs MA (stable) or Candle Direction (reactive)
MA Period: EMA length for Price vs MA method (20 is balanced)
Min Strength %: Minimum strength threshold for HTF bias to be considered
- For "Price vs MA": Minimum distance (%) from moving average
- For "Candle Direction": Minimum candle body size (%)
- 0.5% is balanced - increase for stricter filtering
- Lower values = more signals, higher values = only strong trends
### ALERTS Section
Enable Alerts: Master switch (must be ON to use any alerts)
Breakout Alerts: Notify on ORB breakouts
Retest Alerts: Notify when price retests after breakout
Failed Break Alerts: Notify on failed breakouts
Stage Complete Alerts: Notify when each ORB stage finishes forming
After enabling desired alert types, click "Create Alert" button, select this indicator, choose "Any alert() function call".
## Tips & Best Practices
### General Trading Tips
ORB works best on liquid instruments (stocks with good volume, major crypto pairs)
First hour of the session is most important - that's when ORB is forming
Breakouts WITH the trend have higher success rates - use the trend filter
Failed breakouts are common - use the "Min Bars Outside" setting to filter weak moves
Not every day produces good ORB setups - be patient and selective
### Position Sizing Best Practices
Never risk more than 1-2% of your account on a single trade
Use the built-in calculator - don't guess your position size
Update your account size monthly as it grows
Smaller accounts: use $ Amount mode for simplicity
Larger accounts: use % of Account mode for scaling
### Take Profit Strategy
Most traders use: 50% at TP1, 50% at TP2
Aggressive: Hold through TP1 for TP2 or TP3
Conservative: Full exit at TP1 (1:1 risk/reward)
After TP1 hits, consider moving stop to breakeven
TP3 rarely hits - only on strong trending days
### Filter Combinations
Maximum Quality: Volume + Trend + FVG (fewest signals, highest quality)
Balanced: Volume + Trend (good quality, reasonable frequency)
Active Trading: No filters or Volume only (many signals, lower quality)
Trending Markets: Trend filter essential (indices, crypto)
Range-Bound: Volume + FVG (avoid trend filter)
### Common Mistakes to Avoid
Chasing breakouts - wait for the bar to close, don't FOMO into wicks
Ignoring the stop loss - always use it, move it manually if needed
Over-leveraging - the calculator shows MAX shares, you can buy less
Trading every signal - quality > quantity, use filters
Not tracking results - keep a journal to see what works for YOU
## Pros and Cons
### Advantages
Complete all-in-one solution - from signal to position sizing
Multiple timeframes tracked simultaneously
Visual clarity - easy to see what's happening
Cycle tracking catches opportunities others miss
Built-in risk management eliminates guesswork
Customizable filters for different trading styles
No repainting - what you see is locked in
Works across multiple markets (stocks, forex, crypto)
### Limitations
Intraday strategy only - doesn't work on daily charts
Requires active monitoring during first 1-2 hours of session
Not suitable for after-hours or extended sessions by default
Can produce many signals in choppy markets (use filters)
Dashboard can be overwhelming for complete beginners
Performance depends on market conditions (trends vs ranges)
Requires understanding of risk management concepts
### Best For
Day traders who can watch the first 1-2 hours of market open
Traders who want systematic entry/exit rules
Those learning proper position sizing and risk management
Active traders comfortable with multiple signals per day
Anyone trading liquid instruments with clear sessions
### Not Ideal For
Swing traders holding multi-day positions
Set-and-forget / passive investors
Traders who can't watch market open
Complete beginners unfamiliar with trading concepts
Low volume / illiquid instruments
## Frequently Asked Questions
Q: Why are no signals appearing?
A: Check that you're on an intraday timeframe (5min, 15min, etc.) and that the current time is within your session hours. Also verify that "Enable Breakout Detection" is ON and at least one ORB stage is enabled. If using filters, they might be blocking signals - try disabling them temporarily.
Q: What's the best ORB stage to use?
A: ORB15 (15 minutes) is most popular and balanced. ORB5 gives faster signals but more noise. ORB30 and ORB60 are slower but more reliable. Many traders use ORB15 + ORB30 together.
Q: Should I enable all the filters?
A: Start with no filters to see all signals. If too many false signals, add Volume filter first (stocks) or Trend filter (trending markets). FVG filter is most restrictive - use for maximum quality but fewer signals.
Q: How do I know which stop loss method to use?
A: ATR works for most cases - it adapts to volatility. Use ORB% if you want predictable stop placement. Swing is for respecting chart structure. Safer gives you the most room but largest risk.
Q: Can I use this for swing trading?
A: Not really - ORB is fundamentally an intraday strategy. The ranges reset each day. For swing trading, look at weekly support/resistance or moving averages instead.
Q: Why do TP/SL lines disappear sometimes?
A: Lines freeze (stop extending) when: stop loss is hit, the last enabled take-profit is hit, or end of session arrives (if "Freeze at EOD" is enabled). This is intentional - the trade is complete.
Q: What's the difference between "First Only" and "Track Cycles"?
A: "First Only" shows one breakout UP and one DOWN per day maximum - clean but might miss opportunities. "Track Cycles" shows breakout-retest-rebreak sequences - more signals but busier chart.
Q: Is position sizing accurate for options/forex?
A: The calculator is designed for shares (stocks). For options, ignore the share count and use the risk amount. For forex, you'll need to adapt the lot size calculation manually.
Q: How much capital do I need to use this?
A: The indicator works for any account size, but practical day trading typically requires $25,000 in the US due to Pattern Day Trader rules. Adjust the "Account Size" setting to match your capital.
Q: Can I backtest this strategy?
A: This is an indicator, not a strategy script, so it doesn't have built-in backtesting. You can visually review historical signals or code a strategy script using similar logic.
Q: Why does the dashboard show different entry price than the breakout label?
A: If you're looking at an old breakout, the ORB levels may have changed when the next stage completed. The dashboard always shows the CURRENT active range and trade setup.
Q: What's a good win rate to expect?
A: ORB strategies typically see 40-60% win rate depending on market conditions and filters used. The strategy relies on positive risk/reward ratios (2:1 or better) to be profitable even with moderate win rates.
Q: Does this work on crypto?
A: Yes, but crypto trades 24/7 so you need to define what "session start" means. Use Session Mode = Custom and set your preferred daily reset time (e.g., 0000-2359 UTC).
## Credits & Transparency
### Development
This indicator was developed with the assistance of AI technology to implement complex ORB trading logic.
The strategy concept, feature specifications, and trading logic were designed by the publisher. The implementation leverages modern development tools to ensure:
Clean, efficient, and maintainable code
Comprehensive error handling and input validation
Detailed documentation and user guidance
Performance optimization
### Trading Concepts
This indicator implements several public domain trading concepts:
Opening Range Breakout (ORB): Trading strategy popularized by Toby Crabel, Mark Fisher and many more talanted traders.
Fair Value Gap (FVG): Price imbalance concept from ICT methodology
SuperTrend: ATR-based trend indicator using public formula
Risk/Reward Ratio: Standard risk management principle
All mathematical formulas and technical concepts used are in the public domain.
### Pine Script
Uses standard TradingView built-in functions:
ta.ema(), ta.atr(), ta.vwap(), ta.highest(), ta.lowest(), request.security()
No external libraries or proprietary code from other authors.
## Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice.
Trading involves substantial risk of loss and is not suitable for every investor. Past performance shown in examples is not indicative of future results.
The indicator provides signals and calculations, but trading decisions are solely your responsibility. Always:
Test strategies on paper before using real money
Never risk more than you can afford to lose
Understand that all trading involves risk
Consider seeking advice from a licensed financial advisor
The publisher makes no guarantees regarding accuracy, profitability, or performance. Use at your own risk.
---
Version: 3.0
Pine Script Version: v6
Last Updated: October 2024
For support, questions, or suggestions, please comment below or send a private message.
---
Happy trading, and remember: consistent risk management beats perfect entry timing every time.
Swing Points LiquiditySwing Points Liquidity
Unlock advanced swing detection and liquidity zone marking for smarter trading decisions.
Overview:
Swing Points Liquidity automatically identifies key swing highs and swing lows using a five-candle “palm” structure, marking each significant price turn with precise labels: “BSL swing high” for potential bearish liquidity and “SSL swing low” for potential bullish liquidity. This transparent swing logic provides a robust way to highlight areas where price is most likely to react—making it an invaluable tool for traders applying Smart Money Concepts, supply and demand, or liquidity-based strategies.
How It Works:
The indicator scans every candle on your chart to detect and label swing highs and lows.
A swing high (“BSL swing high”) is identified when a central candle’s high is greater than the highs of the previous two and next two candles.
A swing low (“SSL swing low”) is identified when a central candle’s low is lower than the lows of the previous two and next two candles.
Labels are plotted for every detected swing point, providing clear visualization of important market liquidity levels on any symbol and timeframe.
How to Use:
Liquidity levels marked by the indicator are potential price reversal zones. To optimize your entries, combine these levels with confirmation signals such as reversal candlestick patterns, order blocks, or fair value gaps (FVGs).
When you see a “BSL swing high” or “SSL swing low” label, observe the price action at that area—if a reliable reversal pattern or order block/FVG forms, it can signal a high-probability trade opportunity.
These marked liquidity swings are also excellent for locating confluence zones, setting stop losses, and identifying where institutional activity or smart money may trigger significant moves. Always use market structure and price action in conjunction with these levels for greater consistency and confidence in your trading.
Features:
Customizable label display for swing highs (BSL) and swing lows (SSL)
Automatic detection using robust 5-candle palm logic
Works with all symbols and chart timeframes
Lightweight, clear visual style—easy for manual and algorithmic traders
Notes:
The indicator requires at least two candles both before and after each swing point, so labels will start appearing after enough historical data is loaded.
For deeper historical analysis, simply scroll left or zoom out on your chart to load more candles—the indicator will automatically process and display swing points on all available data.
Smart Structure Pro - Market Structure & Smart Money Concepts═══════════════════════════════════════════════════════════════════════════════
SMART STRUCTURE PRO
═══════════════════════════════════════════════════════════════════════════════
A comprehensive market structure analysis tool that identifies institutional trading
patterns and smart money concepts for improved trade timing and decision-making.
═══════════════════════════════════════════════════════════════════════════════
📊 WHAT IT DOES
═══════════════════════════════════════════════════════════════════════════════
This indicator automatically detects and visualizes key market structure elements:
🔹 BOS (Break of Structure)
- Identifies trend continuation patterns
- Marks when price breaks above previous highs (bullish) or below previous lows (bearish)
- Confirms trend strength and momentum
🔹 CHoCH (Change of Character)
- Detects potential trend reversals
- Alerts when market structure shifts from bullish to bearish or vice versa
- Helps identify early reversal opportunities
🔹 Order Blocks
- Highlights institutional entry zones
- Identifies the last opposite candle before a structure break
- Shows areas where smart money likely entered positions
🔹 Fair Value Gaps (FVG)
- Detects price imbalances and inefficiencies
- Shows areas where price moved rapidly leaving gaps
- Often act as support/resistance when retested
🔹 Liquidity Zones
- Marks swing high and low levels
- Identifies areas where stop losses likely cluster
- Shows potential stop hunt and liquidity grab zones
═══════════════════════════════════════════════════════════════════════════════
🎯 HOW TO USE
═══════════════════════════════════════════════════════════════════════════════
BULLISH SETUP:
1. Wait for Bullish CHoCH (trend reversal signal) or BOS ↑ (continuation)
2. Look for price to pull back into an Order Block or Fair Value Gap
3. Enter long when price bounces from these zones
4. Place stop loss below the Order Block
5. Target the next liquidity zone or resistance level
BEARISH SETUP:
1. Wait for Bearish CHoCH (trend reversal signal) or BOS ↓ (continuation)
2. Look for price to retrace into an Order Block or Fair Value Gap
3. Enter short when price rejects from these zones
4. Place stop loss above the Order Block
5. Target the next liquidity zone or support level
DASHBOARD INTERPRETATION:
• Trend: Current market direction (Bullish/Bearish)
• Volume: Confirmation strength (High volume = stronger signals)
• Signal: Latest structure break detected
• Key High/Low: Critical levels for the current trend
• Position: Price location (Premium = expensive, Discount = cheap)
═══════════════════════════════════════════════════════════════════════════════
⚙️ SETTINGS GUIDE
═══════════════════════════════════════════════════════════════════════════════
STRUCTURE DETECTION:
• Pivot Length (Default: 10)
- Lower values = More signals but potentially weaker
- Higher values = Fewer signals but stronger/more reliable
- Recommended: 8-12 for intraday, 10-15 for higher timeframes
• Structure Line Extension
- Visual preference for how far lines extend
- Does not affect signal detection
SMART MONEY CONCEPTS:
• Order Block Extension: How long OB boxes remain visible
• FVG Extension: How long gap boxes remain visible
• Min FVG Size: Filter out small gaps (0 = show all)
- Set to 10-20% to reduce noise
- Set to 0 to see all gaps
VOLUME FILTER:
• Volume Confirmation (Recommended: ON)
- Filters weak signals without volume support
- Reduces false breakouts
• Volume Multiplier (Default: 1.5)
- Higher = Stricter filtering (fewer but stronger signals)
- Lower = More signals (but may include weak ones)
DISPLAY:
• Dashboard: Toggle information panel
• Trend Background: Subtle color tint showing current trend
• Dashboard Position: Choose corner placement
═══════════════════════════════════════════════════════════════════════════════
🔔 ALERTS
═══════════════════════════════════════════════════════════════════════════════
Available alert conditions:
✓ Bullish BOS - Uptrend continuation confirmed
✓ Bearish BOS - Downtrend continuation confirmed
✓ Bullish CHoCH - Reversal to uptrend detected
✓ Bearish CHoCH - Reversal to downtrend detected
✓ Structure Break - Any significant market structure change
To set up alerts:
1. Click the "⏰" alert icon
2. Select "Smart Structure Pro"
3. Choose your desired condition
4. Configure notification method
5. Click "Create"
═══════════════════════════════════════════════════════════════════════════════
⚠️ IMPORTANT DISCLOSURES
═══════════════════════════════════════════════════════════════════════════════
REPAINTING BEHAVIOR:
• Pivot points WILL repaint until confirmed (this is by design and unavoidable)
• Structure breaks (BOS/CHoCH) use CLOSED candles and do NOT repaint after confirmation
• Order Blocks and FVGs are drawn on confirmed signals and do NOT repaint
• All signals wait for candle close before triggering
BEST PRACTICES:
• Use on higher timeframes (15min+) for more reliable signals
• Combine with other analysis (support/resistance, volume profile, etc.)
• Wait for candle close confirmation before acting on signals
• Use proper risk management - this is not a standalone trading system
• Backtest on your preferred instrument and timeframe
PERFORMANCE:
• Limited to 100 boxes, 100 lines, 100 labels for optimal performance
• Older objects automatically removed as new ones appear
• Works on all markets (Forex, Crypto, Stocks, Indices, Commodities)
═══════════════════════════════════════════════════════════════════════════════
📚 CONCEPTS EXPLAINED
═══════════════════════════════════════════════════════════════════════════════
MARKET STRUCTURE:
Market structure refers to the pattern of price movements creating swing highs
and lows. Understanding structure helps identify trend direction and potential
reversal points.
SMART MONEY CONCEPTS:
These are trading techniques based on tracking institutional order flow and
understanding where large players (banks, funds, institutions) enter and exit
positions.
ORDER BLOCKS:
The last opposing candle before a strong directional move. Institutions often
leave unfilled orders in these zones, which can act as support/resistance when
price returns.
FAIR VALUE GAPS:
Areas where price moved so quickly that it left an imbalance. These gaps often
get "filled" as price returns to find equilibrium, creating trading opportunities.
═══════════════════════════════════════════════════════════════════════════════
🎓 EDUCATIONAL VALUE
═══════════════════════════════════════════════════════════════════════════════
This indicator helps traders:
✓ Understand market structure mechanics
✓ Identify institutional trading patterns
✓ Improve trade timing and entry precision
✓ Recognize trend continuation vs reversal
✓ Learn smart money concepts through visualization
═══════════════════════════════════════════════════════════════════════════════
📋 TECHNICAL DETAILS
═══════════════════════════════════════════════════════════════════════════════
• Version: 1.0.0
• Pine Script Version: 5
• Indicator Type: Overlay
• No Repainting: Structure breaks use confirmed candles
• Performance Optimized: Limited drawing objects
• Works On: All markets and timeframes
• Alerts: Yes, fully customizable
═══════════════════════════════════════════════════════════════════════════════
👤 AUTHOR
═══════════════════════════════════════════════════════════════════════════════
Created by: Zakaria Safri
Original Work: All code and concepts are original implementations
Based On: ICT (Inner Circle Trader) educational concepts
License: © 2024 Zakaria Safri - Personal Use Only
═══════════════════════════════════════════════════════════════════════════════
⚖️ DISCLAIMER
═══════════════════════════════════════════════════════════════════════════════
This indicator is for educational and informational purposes only. It does not
constitute financial advice. Trading involves substantial risk of loss. Past
performance does not guarantee future results. Always conduct your own research
and consult with a licensed financial advisor before making trading decisions.
The author is not responsible for any losses incurred from using this indicator.
═══════════════════════════════════════════════════════════════════════════════
If you find this indicator helpful, please:
👍 Like and favorite
⭐ Leave a review
📢 Share with other traders
💬 Comment with feedback or suggestions
Happy Trading! 📈
Trend Fib Zone Bounce (TFZB) [KedArc Quant]Description:
Trend Fib Zone Bounce (TFZB) trades with the latest confirmed Supply/Demand zone using a single, configurable Fib pullback (0.3/0.5/0.6). Trade only in the direction of the most recent zone and use a single, configurable fib level for pullback entries.
• Detects market structure via confirmed swing highs/lows using a rolling window.
• Draws Supply/Demand zones (bearish/bullish rectangles) from the latest MSS (CHOCH or BOS) event.
• Computes intra zone Fib guide rails and keeps them extended in real time.
• Triggers BUY only inside bullish zones and SELL only inside bearish zones when price touches the selected fib and closes back beyond it (bounce confirmation).
• Optional labels print BULL/BEAR + fib next to the triangle markers.
What it does
Finds structure using confirmed swing highs/lows (you choose the confirmation length).
Builds the latest zone (bullish = demand, bearish = supply) after a CHOCH/BOS event.
Draws intra-zone “guide rails” (Fib lines) and extends them live.
Signals only with the trend of that zone:
BUY inside a bullish zone when price tags the selected Fib and closes back above it.
SELL inside a bearish zone when price tags the selected Fib and closes back below it.
Optional labels print BULL/BEAR + Fib next to triangles for quick context
Why this is different
Most “zone + fib + signal” tools bolt together several indicators, or fire counter-trend signals because they don’t fully respect structure. TFZB is intentionally minimal:
Single bias source: the latest confirmed zone defines direction; nothing else overrides it.
Single entry rule: one Fib bounce (0.3/0.5/0.6 selectable) inside that zone—no counter-trend trades by design.
Clean visuals: you can show only the most recent zone, clamp overlap, and keep just the rails that matter.
Deterministic & transparent: every plot/label comes from the code you see—no external series or hidden smoothing
How it helps traders
Cuts decision noise: you always know the bias and the only entry that matters right now.
Forces discipline: if price isn’t inside the active zone, you don’t trade.
Adapts to volatility: pick 0.3 in strong trends, 0.5 as the default, 0.6 in chop.
Non-repainting zones: swings are confirmed after Structure Length bars, then used to build zones that extend forward (they don’t “teleport” later)
How it works (details)
*Structure confirmation
A swing high/low is only confirmed after Structure Length bars have elapsed; the dot is plotted back on the original bar using offset. Expect a confirmation delay of about Structure Length × timeframe.
*Zone creation
After a CHOCH/BOS (momentum shift / break of prior swing), TFZB draws the new Supply/Demand zone from the swing anchors and sets it active.
*Fib guide rails
Inside the active zone TFZB projects up to five Fib lines (defaults: 0.3 / 0.5 / 0.7) and extends them as time passes.
*Entry logic (with-trend only)
BUY: bar’s low ≤ fib and close > fib inside a bullish zone.
SELL: bar’s high ≥ fib and close < fib inside a bearish zone.
*Optionally restrict to one signal per zone to avoid over-trading.
(Optional) Aggressive confirm-bar entry
When do the swing dots print?
* The code confirms a swing only after `structureLen` bars have elapsed since that candidate high/low.
* On a 5-min chart with `structureLen = 10`, that’s about 50 minutes later.
* When the swing confirms, the script plots the dot back on the original bar (via `offset = -structureLen`). So you *see* the dot on the old bar, but it only appears on the chart once the confirming bar arrives.
> Practical takeaway: expect swing markers to appear roughly `structureLen × timeframe` later. Zones and signals are built from those confirmed swings.
Best timeframe for this Indicator
Use the timeframe that matches your holding period and the noise level of the instrument:
* Intraday :
* 5m or 15m are the sweet spots.
* Suggested `structureLen`:
* 5m: 10–14 (confirmation delay \~50–70 min)
* 15m: 8–10 (confirmation delay \~2–2.5 hours)
* Keep Entry Fib at 0.5 to start; try 0.3 in strong trends, 0.6 in chop.
* Tip: avoid the first 10–15 minutes after the open; let the initial volatility set the early structure.
* Swing/overnight:
* 1h or 4h.
* `structureLen`:
* 1h: 6–10 (6–10 hours confirmation)
* 4h: 5–8 (20–32 hours confirmation)
* 1m scalping: not recommended here—the confirmation lag relative to the noise makes zones less reliable.
Inputs (all groups)
Structure
• Show Swing Points (structureTog)
o Plots small dots on the bar where a swing point is confirmed (offset back by Structure Length).
• Structure Length (structureLen)
o Lookback used to confirm swing highs/lows and determine local structure. Higher = fewer, stronger swings; lower = more reactive.
Zones
• Show Last (zoneDispNum)
o Maximum number of zones kept on the chart when Display All Zones is off.
• Display All Zones (dispAll)
o If on, ignores Show Last and keeps all zones/levels.
• Zone Display (zoneFilter): Bullish Only / Bearish Only / Both
o Filters which zone types are drawn and eligible for signals.
• Clean Up Level Overlap (noOverlap)
o Prevents fib lines from overlapping when a new zone starts near the previous one (clamps line start/end times for readability).
Fib Levels
Each row controls whether a fib is drawn and how it looks:
• Toggle (f1Tog…f5Tog): Show/hide a given fib line.
• Level (f1Lvl…f5Lvl): Numeric ratio in . Defaults active: 0.3, 0.5, 0.7 (0 and 1 off by default).
• Line Style (f1Style…f5Style): Solid / Dashed / Dotted.
• Bull/Bear Colors (f#BullColor, f#BearColor): Per-fib color in bullish vs bearish zones.
Style
• Structure Color: Dot color for confirmed swing points.
• Bullish Zone Color / Bearish Zone Color: Rectangle fills (transparent by default).
Signals
• Entry Fib for Signals (entryFibSel): Choose 0.3, 0.5 (default), or 0.6 as the trigger line.
• Show Buy/Sell Signals (showSignals): Toggles triangle markers on/off.
• One Signal Per Zone (oneSignalPerZone): If on, suppresses additional entries within the same zone after the first trigger.
• Show Signal Text Labels (Bull/Bear + Fib) (showSignalLabels): Adds a small label next to each triangle showing zone bias and the fib used (e.g., BULL 0.5 or BEAR 0.3).
How TFZB decides signals
With trend only:
• BUY
1. Latest active zone is bullish.
2. Current bar’s close is inside the zone (between top and bottom).
3. The bar’s low ≤ selected fib and it closes > selected fib (bounce).
• SELL
1. Latest active zone is bearish.
2. Current bar’s close is inside the zone.
3. The bar’s high ≥ selected fib and it closes < selected fib.
Markers & labels
• BUY: triangle up below the bar; optional label “BULL 0.x” above it.
• SELL: triangle down above the bar; optional label “BEAR 0.x” below it.
Right-Panel Swing Log (Table)
What it is
A compact, auto-updating log of the most recent Swing High/Low events, printed in the top-right of the chart.
It helps you see when a pivot formed, when it was confirmed, and at what price—so you know the earliest bar a zone-based signal could have appeared.
Columns
Type – Swing High or Swing Low.
Date – Calendar date of the swing bar (follows the chart’s timezone).
Swing @ – Time of the original swing bar (where the dot is drawn).
Confirm @ – Time of the bar that confirmed that swing (≈ Structure Length × timeframe after the swing). This is also the earliest moment a new zone/entry can be considered.
Price – The swing price (high for SH, low for SL).
Why it’s useful
Clarity on repaint/confirmation: shows the natural delay between a swing forming and being usable—no guessing.
Planning & journaling: quick reference of today’s pivots and prices for notes/backtesting.
Scanning intraday: glance to see if you already have a confirmed zone (and therefore valid fib-bounce entries), or if you’re still waiting.
Context for signals: if a fib-bounce triangle appears before the time listed in Confirm @, it’s not a valid trade (you were too early).
Settings (Inputs → Logging)
Log swing times / Show table – turn the table on/off.
Rows to keep – how many recent entries to display.
Show labels on swing bar – optional tags on the chart (“Swing High 11:45”, “Confirm SH 14:15”) that match the table.
Recommended defaults
• Structure Length: 10–20 for intraday; 20–40 for swing.
• Entry Fib for Signals: 0.5 to start; try 0.3 in stronger trends and 0.6 in choppier markets.
• One Signal Per Zone: ON (prevents over trading).
• Zone Display: Both.
• Fib Lines: Keep 0.3/0.5/0.7 on; turn on 0 and 1 only if you need anchors.
Alerts
Two alert conditions are available:
• BUY signal – fires when a with trend bullish bounce at the selected fib occurs inside a bullish zone.
• SELL signal – fires when a with trend bearish bounce at the selected fib occurs inside a bearish zone.
Create alerts from the chart’s Alerts panel and select the desired condition. Use Once Per Bar Close to avoid intrabar flicker.
Notes & tips
• Swing dots are confirmed only after Structure Length bars, so they plot back in time; zones built from these confirmed swings do not repaint (though they extend as new bars form).
• If you don’t see a BUY where you expect one, check: (1) Is the active zone bullish? (2) Did the candle’s low actually pierce the selected fib and close above it? (3) Is One Signal Per Zone suppressing a second entry?
• You can hide visual clutter by reducing Show Last to 1–3 while keeping Display All Zones off.
Glossary
• CHOCH (Change of Character): A shift where price breaks beyond the last opposite swing while local momentum flips.
• BOS (Break of Structure): A cleaner break beyond the prior swing level in the current momentum direction.
• MSS: Either CHOCH or BOS – any event that spawns a new zone.
Extension ideas (optional)
• Add fib extensions (1.272 / 1.618) for target lines.
• Zone quality score using ATR normalization to filter weak impulses.
• HTF filter to only accept zones aligned with a higher timeframe trend.
⚠️ Disclaimer This script is provided for educational purposes only.
Past performance does not guarantee future results.
Trading involves risk, and users should exercise caution and use proper risk management when applying this strategy.
Smart Money Support/Resistance - LiteSmart Money Support/Resistance — Lite
Overview & Methodology
This indicator identifies support and resistance as zones derived from concentrated buying and selling pressure, rather than relying solely on traditional swing highs/lows. Its design focuses on transparency: how data is sourced, how zones are computed, and how the on‑chart display should be interpreted.
Lower‑Timeframe (LTF) Data
The script requests Up Volume, Down Volume, and Volume Delta from a lower timeframe to expose intrabar order‑flow structure that the chart’s native timeframe cannot show. In practical terms, this lets you see where buyers or sellers briefly dominated inside the body of a higher‑timeframe bar.
bool use_custom_tf_input = input.bool(true, title="Use custom lower timeframe", tooltip="Override the automatically chosen lower timeframe for volume calculations.", group=grpVolume)
string custom_tf_input = input. Timeframe("1", title="Lower timeframe", tooltip="Lower timeframe used for up/down volume calculations (default 5 seconds).", group=grpVolume)
import TradingView/ta/10 as tvta
resolve_lower_tf(useCustom, customTF) =>
useCustom ? customTF :
timeframe.isseconds ? "1S" :
timeframe.isintraday ? "1" :
timeframe.isdaily ? "5" : "60"
get_up_down_volume(lowerTf) =>
= tvta.requestUpAndDownVolume(lowerTf)
var float upVolume = na
var float downVolume = na
var float deltaVolume = na
string lower_tf = resolve_lower_tf(use_custom_tf_input, custom_tf_input)
= get_up_down_volume(lower_tf)
upVolume := u_tmp
downVolume := d_tmp
deltaVolume := dl_tmp
• Data source: TradingView’s ta.requestUpAndDownVolume(lowerTf) via the official TA library.
• Plan capabilities: higher‑tier subscriptions unlock seconds‑based charts and allow more historical bars per chart. This expands both the temporal depth of LTF data and the precision of short‑horizon analysis, while base tiers provide minute‑level data suitable for day/short‑swing studies.
• Coverage clarity: a small on‑chart Coverage Panel reports the active lower timeframe, the number of bars covered, and the latest computed support/resistance ranges so you always know the bounds of valid LTF input.
Core Method
1) Data acquisition (LTF)
The script retrieves three series from the chosen lower timeframe:
– Up Volume (buyers)
– Down Volume (sellers)
– Delta (Up – Down)
2) Rolling window & extrema
Over a user‑defined lookback (Global Volume Period), the algorithm builds rolling arrays of completed bars and scans for extrema:
– Buyers_max / Buyers_min from Up Volume
– Sellers_max / Sellers_min from Down Volume
Only completed bars are considered; the current bar is excluded for stability.
3) Price mapping
The extrema are mapped back to their source candles to obtain price bounds:
– For “maximum” roles the algorithm uses the relevant candle highs.
– For “minimum” roles it uses the relevant candle lows.
These pairs define candidate resistance (max‑based) and support (min‑based) zones or vice versa.
4) Zone construction & minimum width
To ensure practicality on all symbols, zones enforce a minimum vertical thickness of two ticks. This prevents visually invisible or overly thin ranges on instruments with tight ticks.
5) Vertical role resolution
When both max‑ and min‑based zones exist, the script compares their midpoints. If, due to local price structure, the min‑based zone sits above the max‑based zone, display roles are swapped so the higher zone is labeled Resistance and the lower zone Support. Colors/widths are updated accordingly to keep the visual legend consistent.
6) Rendering & panel
Two horizontal lines and a filled box represent each active zone. The Coverage Panel (bottom‑right by default) prints:
– Lower‑timeframe in use
– Number of bars covered by LTF data
– Current Support and Resistance ranges
If the two zones overlap, an additional “Range Market” note is shown.
Key Inputs
• Global Volume Period: shared lookback window for the extrema search.
• Lower timeframe: user‑selectable override of the automatically resolved lower timeframe.
• Visualization toggles: independent show/hide controls and colors for maximum (resistance) and minimum (support) zones.
• Coverage Panel: enable/disable the single‑cell table and its readout.
Operational Notes
• The algorithm aligns all lookups to completed bars (no peeking). Price references are shifted appropriately to avoid using the still‑forming bar in calculations.
• Second‑based lower timeframes improve granularity for scalping and very short‑term entries. Minute‑based lower timeframes provide broader coverage for intraday and short‑swing contexts.
• Use the Coverage Panel to confirm the true extent of available LTF history on your symbol/plan before drawing conclusions from very deep lookbacks.
Visual Walkthrough
A step‑by‑step image sequence accompanies this description. Each figure demonstrates how the indicator reads LTF volume, locates extrema, builds price‑mapped zones, and updates labels/colors when vertical order requires it.
Chart Interpretation
This chart illustrates two distinct perspectives of the Smart Money Support/Resistance — Lite indicator, each derived from different lookback horizons and lower-timeframe (LTF) resolutions.
1- Short-term view (43 bars, 10-second LTF)
Using the most recent 43 completed bars with 10-second intrabar data, the algorithm detects that both maximum and minimum volume extrema fall within a narrow range. The result is a clearly identified range market: resistance between 178.15–184.55 and support between 175.02–179.38.
The Coverage Panel (bottom-right) confirms the scope of valid input: the lower timeframe used, number of bars covered, and the resulting zones. This short-term scan highlights how the indicator adapts to limited data depth, flagging sideways structure where neither side dominates.
2 - Long-term view (120 bars, 30-second LTF)
Over a wider 120-bar lookback with higher-granularity 30-second data, broader supply and demand zones emerge.
– The long-term resistance zone captures the concentration of buyers and sellers at the upper boundary of recent price history.
– The long-term support zone anchors to the opposite side of the distribution, derived from maxima and minima of both buying and selling pressure.
These zones reflect deeper structural levels where market participants previously committed significant volume.
Combined Perspective
By aligning the short-term and long-term outputs, the chart shows how the indicator distinguishes immediate consolidation (range market) from more durable support and resistance levels derived from extended history. This dual resolution approach makes clear that support and resistance are not static lines but dynamic zones, dependent on both timeframe depth and the resolution of intrabar volume data.
Estimated Manipulation Movement Signal [AlgoPoint]Follow the Footprints of Whale Movements That Drive the Market
Overview
The market is not always driven by natural supply and demand. Large players—often called "whales" or institutions—can create artificial price movements to trigger stop-losses, induce panic or FOMO, and build their large positions at favorable prices. These events are known as "stop hunts" or "liquidity grabs."
The EMMS indicator is a specialized tool designed to detect these specific moments of potential market manipulation. It does not follow trends in a traditional sense; instead, it identifies high-probability reversal points created by the calculated actions of Smart Money trapping other market participants.
How It Works: The 3-Module Logic
The indicator uses a multi-stage confirmation process to identify a potential stop hunt:
1. Anomaly Detection: The engine first scans the chart for "Anomaly Candles." These are candles with unusually high volume and a very long wick relative to their body. This combination signals a sudden, forceful, and potentially unnatural price push.
2. Liquidity Zone Detection: The indicator automatically identifies and tracks recent significant swing highs and lows. These levels are considered "Liquidity Zones" because they are areas where a large number of stop-loss orders are likely clustered. These are the "hunting grounds" for whales.
3. The Stop Hunt Signal: A final signal is generated only when these two events align in a specific sequence:
An Anomaly Candle (high volume, long wick) spikes through a previously identified Liquidity Zone.
The same candle then reverses, closing back inside the previous price range.
This sequence confirms that the move was likely a "trap" designed to engineer liquidity, and a reversal in the opposite direction is now highly probable.
How to Interpret & Use This Indicator
BUY Signal: A BUY signal appears after a sharp price drop that pierces a recent swing low (taking out the stops of long positions) and then aggressively reverses to close higher. This suggests that Smart Money has absorbed the panic selling they just induced. The signal indicates a potential move UP.
SELL Signal: A SELL signal appears after a sharp price spike that pierces a recent swing high (taking out the stops of short positions) and then aggressively reverses to close lower. This suggests that Smart Money has sold into the FOMO buying they just created. The signal indicates a potential move DOWN.
This indicator is best used as a high-probability confirmation tool, ideally in conjunction with your understanding of the overall market trend and structure.
Cyclic Reversal Engine [AlgoPoint]Overview
Most indicators focus on price and momentum, but they often ignore a critical third dimension: time. Markets move in rhythmic cycles of expansion and contraction, but these cycles are not fixed; they speed up in trending markets and slow down in choppy conditions.
The Cyclic Reversal Engine is an advanced analytical tool designed to decode this rhythm. Instead of relying on static, lagging formulas, this indicator learns from past market behavior to anticipate when the current trend is statistically likely to reach its exhaustion point, providing high-probability reversal signals.
It achieves this by combining a sophisticated time analysis with a robust price-action confirmation.
How It Works: The Core Logic
The indicator operates on a multi-stage process to identify potential turning points in the market.
1. Market Regime Analysis (The Brain): Before analyzing any cycles, the indicator first diagnoses the current "personality" of the market. Using a combination of the ADX, Choppiness Index, and RSI, it classifies the market into one of three primary regimes:
- Trending: Strong, directional movement.
- Ranging: Sideways, non-directional chop.
- Reversal: An over-extended state (overbought/oversold) where a turn is imminent.
2. Adaptive Cycle Learning (The "Machine Learning" Aspect): This is the indicator's smartest feature. It constantly analyzes past cycles by measuring the bar-count between significant swing highs and swing lows. Crucially, it learns the average cycle duration for each specific market regime. For example, it learns that "in a strong trending market, a new swing low tends to occur every 35 bars," while "in a ranging market, this extends to 60 bars."
3. The Countdown & Timing Signal: The indicator identifies the last major swing high or low and starts a bar-by-bar countdown. Based on the current market regime, it selects the appropriate learned cycle length from its memory. When the bar count approaches this adaptive target, the indicator determines that a reversal is "due" from a timing perspective.
4. Price Confirmation (The Trigger): A signal is never generated based on timing alone. Once the timing condition is met (the cycle is "due"), the indicator waits for a final price-action confirmation. The default confirmation is the RSI entering an extreme overbought or oversold zone, signaling momentum exhaustion. The signal is only triggered when Time + Price Confirmation align.
How to Use This Indicator
- The Dashboard: The panel in the bottom-right corner is your command center.
- Market Regime: Shows the current market personality analyzed by the engine.
- Adaptive Cycle / Bar Count: This is the core of the indicator. It shows the target cycle length for the current regime (e.g., 50) and the current bar count since the last swing point (e.g., 45). The background turns orange when the bar count enters the "due zone," indicating that you should be on high alert for a reversal.
- BUY/SELL Signals: A label appears on the chart only when the two primary conditions are met:
The timing is right (Bar Count has reached the Adaptive Cycle target).
The price confirms exhaustion (RSI is in an extreme zone).
A BUY signal suggests a downtrend cycle is likely complete, and a SELL signal suggests an uptrend cycle is likely complete.
Key Settings
- Pivot Lookback: Controls the sensitivity of the swing point detection. Higher values will identify more significant, longer-term cycles.
- Market Regime Engine: The ADX, Choppiness, and RSI settings can be fine-tuned to adjust how the indicator classifies the market's personality.
- Require Price Confirmation: You can toggle the RSI confirmation on or off. It is highly recommended to keep it enabled for higher-quality signals.
FibNexus [CHE]FibNexus — Auto-Fibonacci with Adaptive TrendLen + TFRSI Triggers
What it is.
FibNexus is a chart overlay that auto-anchors Fibonacci levels to the most relevant swing range without any manual timeframe picking. It does this by computing an adaptive trend length (“TrendLen”) from recent price behavior, then drawing retracements/extensions from the detected swing High/Low. A built-in TFRSI module adds LONG/SHORT triggers and ready-made alerts.
What makes FibNexus different (the TrendLen edge)
Most Fibonacci tools either (a) use fixed lookbacks or (b) force you to choose a higher reference timeframe (or a multiplier of it) and then place Fibs on those higher-TF swings. Your earlier Ultimate Fibonacci Trading Tool \ follows that higher-reference approach (auto TF, multiplier, or manual) and emphasizes custom level/label options. ( )
FibNexus flips that workflow:
* It doesn’t rely on a higher timeframe or a static lookback.
* Instead, it measures multiple window lengths inside the current chart timeframe and selects the one that best fits the data right now.
* From that data-driven window, it automatically finds the most recent swing high & low and draws the entire Fib stack from there.
* When the statistically “best” window changes, anchors update once, labels refresh cleanly, and then lines just extend to the right on each new bar.
Result: No more guesswork about “which timeframe or lookback should I use?”—FibNexus adapts the anchors to market conditions and keeps the drawing noise low.
How TrendLen works (transparent, deterministic)
1. Scan windows: The script evaluates a series of lookbacks (10, 20, …, 500 bars).
2. Score by correlation: For each window, it computes the correlation between price and its lagged version and picks the window with the highest correlation (the strongest, most self-consistent trend segment).
3. Anchor the swing: On a confirmed bar and only when TrendLen changes, it scans the last `TrendLen` bars to capture the highest high and lowest low and marks them with “X”.
4. Draw once, extend later: It deletes the old Fib objects, redraws the active levels from those anchors, and from then on extends the lines to the right as new bars print (no redraw spam).
This makes FibNexus responsive (it adapts when the structure shifts) and quiet (it doesn’t constantly repaint Fibs).
Fibonacci engine (levels, labels, direction)
* Retracements: 0.000 · 0.236 · 0.382 · 0.500 · 0.618 · 0.786 · 1.000
* Extensions: 1.618 · 2.618 · 3.618 · 4.236
* Label styles: *Default* (percent + price), *None*, *Percentage*, *Price*
* Label sizing: *tiny → huge*
* Bull/Bear context: Direction is inferred from mid-range positioning; prices are projected accordingly (retracement vs. extension math is handled for both cases).
* Selective toggles: You can show/hide any level and color it independently.
Momentum & signals (TFRSI module)
FibNexus embeds your TFRSI (“The Forbidden RSI \ ”) as the momentum/trigger layer. TFRSI is your open-source oscillator published on TradingView and designed for fast, normalized momentum readouts with customizable length/smoothing. ( )
* Defaults: `TFRSI length = 6`, `signal smoothing = 2`
* Triggers:
* LONG when TFRSI crosses up through the Long level (default 2.0)
* SHORT when TFRSI crosses down through the Short level (default 98.0)
* On-chart labels: Green LONG under the bar, red SHORT above the bar.
* Spam control: Keep only the N most recent labels to avoid clutter.
* Confirmed bars only: Signals/labels finalize at bar close to reduce flicker.
Alerts (ready for TradingView)
* LONG signal (TFRSI crossover)
* SHORT signal (TFRSI crossunder)
* TrendLen changed (anchors/Fibs recalculated)
* Price crossed a Fib level (any active level)
Use the provided `alertcondition(...)` entries in the TV dialog. Optionally enable instant `alert()` calls with verbose text (avoid duplicates if you also add alertconditions).
Typical use-cases & playbook
* Level reaction trading: In trends, watch 0.382 / 0.5 / 0.618 for reaction. A TFRSI up-cross near a retracement in an uptrend is a straightforward continuation setup; the opposite applies in downtrends.
* Breakout objectives: After clearing the 1.000 line (old swing), 1.618 is a common first extension target; beyond that, 2.618/3.618/4.236 map stretch objectives.
* Chop control: In range conditions, keep signals conservative (e.g., stick with the tight defaults 2.0/98.0 or raise thresholds). Always seek confluence (candlesticks, volume, HTF bias).
* Less micromanagement: You don’t need to babysit timeframe selection or anchors—TrendLen recomputes only when the data say so.
Inputs (by group)
* Core: TFRSI length & smoothing.
* Fibonacci Levels: Per-level toggles, numeric values, colors.
* Fibonacci Labels: Style (percentage/price/both/none) and size.
* Signals: Max number of visible LONG/SHORT labels (or 0 = off).
* TFRSI Trigger: Long/Short thresholds (defaults 2.0 / 98.0).
* Alerts: Master enable, per-event toggles, optional instant `alert()`.
Performance & UX
* Overlay indicator; efficient object handling.
* Clean redraw policy: Full re-draw only when TrendLen changes; otherwise Fibs extend horizontally.
* Clarity: Auto-marked swing anchors (“X”), configurable labels/colors.
Credits & references
* TFRSI – “The Forbidden RSI \ ” (open-source publication and description on TradingView). Used here as the momentum basis.
* “Ultimate Fibonacci Trading Tool \ ” (your earlier open-source tool on TradingView). Focuses on higher-reference timeframe selection (auto/multiplier/manual) and rich labeling controls; FibNexus replaces the fixed/higher-TF anchor logic with adaptive TrendLen in the current timeframe.
Risk disclaimer
This indicator is for educational/information purposes only and is not financial advice. No performance guarantees; past behavior does not predict future results. Trading involves substantial risk (including total loss). Always do your own research, test on demo, use risk management, and consult a licensed advisor where appropriate. Use at your own risk.
Disclaimer:
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Enhance your trading precision and confidence with FibNexus ! 🚀
Happy trading
Chervolino
Market Structures by The Noiseless TraderMarket Structure by The Noiseless Trader is an indicator that highlights simple candle-based market structure patterns: Market Structure Low (MSL) and Market Structure High (MSH) . It is designed to make these shifts visible directly on the chart.
Pattern Logic
MSL (Market Structure Low)
Candle 2: Bearish
Candle 1: Bearish, closing below Candle 2’s close
Candle 0: Bullish, closing above Candle 1’s open
Candle 0 must also have a minimum body size (default = 2%)
MSH (Market Structure High)
Candle 2: Bullish
Candle 1: Bullish, closing above Candle 2’s close
Candle 0: Bearish, closing below Candle 1’s open
Candle 0 must also have a minimum body size (default = 2%)
Features
Label plotting: When a pattern forms, the script places an “MSL” or “MSH” label slightly offset from Candle 0 so that the signal is visible but does not overlap the bar.
Bar coloring: Optionally, the script colors the signal candles for faster visual recognition (green for MSL, red for MSH).
Repaint protection : A setting allows the user to confirm signals only on bar close. This ensures the label does not disappear once plotted, though it delays the signal until the candle closes.
Customizable inputs: Users can set the minimum body size threshold (in % of price) and adjust the label offset distance to their preference.
Alerts: TradingView alerts can be created for both MSL and MSH events, making it possible to receive notifications when patterns appear.
How to Use
MSL labels mark potential swing lows where bearish pressure is followed by a bullish reversal.
MSH labels mark potential swing highs where bullish pressure is followed by a bearish reversal.
These patterns are most useful for studying shifts in short-term trend structure. Traders can monitor them as potential areas of interest, but they are not standalone entry or exit signals.
This indicator should be used as part of a broader trading framework. For example, some traders may combine MSL/MSH with trend filters, higher-timeframe analysis, or support/resistance zones or even classical pattern clubbed with MSL/MSH.
Notes
This tool highlights specific three-candle formations. It does not generate buy/sell recommendations.
It is intended for educational and analytical purposes only.
Past appearances of MSL or MSH patterns do not guarantee future performance.
Always confirm with your own market analysis before taking trading decisions.
Developed by The Noiseless Trader .
VPOC Harmonics - Liquidity-Weighted Price / Time RatiosVPOC Harmonics - Liquidity-Weighted Price / Time Ratios
Summary
This indicator transforms a swing’s price range, duration, and liquidity profile into a structured set of price-per-bar ratios. By anchoring two points and manually entering the swing’s VPOC (highest-volume price), it generates candidate compression values that unify price, time, and liquidity structure. These values can be applied to chart scaling, harmonic testing, and liquidity-aware market geometry.
________________________________________
Overview
Most swing analysis tools only consider price (ΔP) and time (N bars). This script goes further by incorporating the VPOC (Point of Control) — the price with the highest traded volume — directly into swing geometry.
• Anchors define the swing’s Low (L), High (H), and bar count (N).
• The user manually enters the VPOC (highest-volume price).
• The indicator then computes a suite of ratios that integrate range, duration, and liquidity placement.
The output is a table of liquidity-weighted price-per-bar candidates, designed for compression testing and harmonic analysis across swings and instruments.
________________________________________
How to Use
1. Select a Swing
- Place Anchor A and Anchor B to define the swing’s Low, High, and bar count.
2. Find the VPOC
- Apply TradingView’s Fixed Range Volume Profile tool over the same swing.
- Identify the Point of Control (POC) — the price level with the highest traded volume.
3. Enter the VPOC
- Manually input the POC into the indicator settings.
4. Review Outputs
- The table will display candidate ratios expressed mainly as price-per-bar values.
5. Apply in Practice
- Use the ratios as chart compression inputs or as benchmarks for testing harmonic alignments across swings.
________________________________________
Outputs
Swing & Inputs
• Bars (N): total bar count of the swing.
• Low (L): swing low price.
• High (H): swing high price.
• ΔP = H − L: price range.
• Mid = (L + H) ÷ 2: midpoint price.
• VPOC (V): user-entered highest-volume price.
• Base slope s0 = ΔP ÷ N: average change per bar.
• π-adjusted slope sπ = (π × ΔP) ÷ (2 × N): slope adjusted for half-cycle arc geometry.
________________________________________
VPOC Harmony Ratios (L, H, V, N)
• λ = (V − L) ÷ ΔP: normalized VPOC position within the range.
• R = (V − L) ÷ (H − V): symmetry ratio comparing lower vs. upper segment.
• s1 = (V − L) ÷ N: slope from Low → VPOC.
• s2 = (H − V) ÷ N: slope from VPOC → High.
________________________________________
Blended Means (s1, s2)
These combine the two segment slopes in different ways:
• HM(s1,s2) = 2 ÷ (1/s1 + 1/s2): Harmonic mean, emphasizes the smaller slope.
• GM(s1,s2) = sqrt(s1 × s2): Geometric mean, balances both slopes proportionally.
• RMS(s1,s2) = sqrt((s1² + s2²) ÷ 2): Root-mean-square, emphasizes the larger slope.
• L2 = sqrt(s1² + s2²): Euclidean norm, the vector length of both slopes combined.
________________________________________
Slope Blends
• Quadratic weighting: s_quad = s0 × ((V−L)² + (H−V)²) ÷ (ΔP²)
• Tilted slope: s_tilt = s0 × (0.5 + λ)
• Entropy-scaled slope: s_ent = s0 × H2(λ), with H2(λ) = −
________________________________________
Curvature & Liquidity Extensions
• π-arc × λ: s_arc = sπ × λ
• Liquidity-π: s_piV = sπ × (V ÷ Mid)
________________________________________
Scale-Normalized Families
With k = sqrt(H ÷ L):
• k (scale factor) = sqrt(H ÷ L)
• s_comp = s0 ÷ k: compressed slope candidate
• s_exp = s0 × k: expanded slope candidate
• Exponentiated blends:
- s_kλ = s0 × k^(2λ−1)
- s_φλ = s0 × φ^(2λ−1), with φ = golden ratio ≈ 1.618
- s_√2λ = s0 × (√2)^(2λ−1)
________________________________________
Practical Application
All formulas generate liquidity-weighted price-per-bar ratios that integrate range, time, and VPOC placement.
These values are designed for:
• Chart compression settings
• Testing harmonic alignments across swings
• Liquidity-aware scaling experiments
________________________________________
Fibo Swing MFI by julzALGOOVERVIEW
Fibo Swing MFI by julzALGO blends MFI → RSI → Least-Squares smoothing to flag overbought/oversold swings and continuously plot Fibonacci retracements from the rolling high/low of the last 200 bars. It’s built to spot momentum shifts while giving you a clean, always-current fib map of the recent market range.
CORE PRINCIPLES
Hybrid Momentum Signal
- Uses MFI to integrate price and volume.
- Applies RSI to MFI for momentum clarity.
- Smooths the result with Least Squares regression to reduce noise.
Swing Identification
- Marks potential swing highs when momentum is overbought.
- Marks potential swing lows when momentum is oversold.
Fixed-Window Fibonacci Mapping
- Always calculates fib levels from the highest high and lowest low of the last 200 bars.
- This keeps fib zones consistent, independent of swing point detection.
Visual Clarity & Non-Repainting Logic
- Clean labels for OB/OS zones.
- Lines and levels update only as new bars confirm changes.
Adaptability
- Works on any market and timeframe.
- Adjustable momentum length, OB/OS thresholds, and smoothing.
HOW IT WORKS
- Computes Money Flow Index (MFI) from price & volume.
- Applies RSI to the MFI for clearer OB/OS momentum.
- Smooths the hybrid with a Least Squares (linear regression) filter.
- Swing labels appear when OB/OS conditions are met (green = swing low, red = swing high).
- Fibonacci retracements are always drawn from the highest high and lowest low of the last 200 bars (rolling window), independent of swing labels.
HOW TO USE
- Watch for OB/OS flips to mark potential swing highs/lows.
- Use the 200-bar fib grid as your active map of pullback levels and reaction zones.
- Combine fib reactions with your price action/volume cues for confirmation.
- Works across markets and timeframes.
SETTINGS
- Length – Period for both MFI and RSI.
- OB/OS Levels – Overbought/oversold thresholds (default 70/30).
- Smooth – Least-Squares smoothing length.
- Fibonacci Window – Fixed at 200 bars in this version (changeable in code via fibLen).
NOTES
- Logic is non-repainting aside from standard bar/label confirmation.
- Increase Length on very low timeframes to reduce noise.
- Swing labels help context; fibs are always based on the most recent 200-bar high/low range.
SUMMARY
Fibo Swing MFI by julzALGO is a momentum-plus-price action tool that merges MFI → RSI → smoothing to identify overbought/oversold swings and automatically plot Fibonacci retracements based on the rolling high/low of the last 200 bars. It’s designed to help traders quickly see potential reversal points and pullback zones, offering visual confluence between momentum shifts and fixed-window price structure.
DISCLAIMER
For educational purposes only. Not financial advice. Trade responsibly with proper risk management.
ICC Trading System# ICC Trading System - Indication, Correction, Continuation
## Overview
The ICC (Indication, Correction, Continuation) Trading System is a comprehensive market structure analysis tool designed to identify high-probability trend continuation setups. This indicator helps traders understand market phases and provides clear entry signals based on institutional trading concepts.
## Key Features
### 🎯 **Market Structure Analysis**
- Automatic detection of swing highs and swing lows
- Real-time identification of market trends and reversals
- Dynamic support and resistance zone mapping
- Clear visual representation of market phases
### 📊 **ICC Phase Detection**
- **Indication Phase**: Identifies new higher highs (bullish) or lower lows (bearish)
- **Correction Phase**: Tracks pullbacks and retracements
- **Continuation Phase**: Signals when trends resume after corrections
### 🚀 **Entry Signals**
- Precise BUY signals after bullish indications and corrections
- Clear SELL signals after bearish indications and corrections
- Entry points based on price breaking back through key levels
- Eliminates guesswork in trend continuation trades
### 🎨 **Visual Components**
- Swing point markers (triangles) for easy identification
- Color-coded support/resistance zones
- Background highlighting for current market phase
- Information table showing current
Dip Hunter [BackQuant]Dip Hunter
What this tool does in plain language
Dip Hunter is a pullback detector designed to find high quality buy-the-dip opportunities inside healthy trends and to avoid random knife catches. It watches for a quick drop from a recent high, checks that the drop happened with meaningful participation and volatility, verifies short-term weakness inside a larger uptrend, then scores the setup and paints the chart so you can act with confidence. It also draws clean entry lines, provides a meter that shows dip strength at a glance, and ships with alerts that match common execution workflows.
How Dip Hunter thinks
It defines a recent swing reference, measures how far price has dipped off that high, and only looks at candidates that meet your minimum percentage drop.
It confirms the dip with real activity by requiring a volume spike and a volatility spike.
It checks structure with two EMAs. Price should be weak in the short term while the larger context remains constructive.
It optionally requires a higher-timeframe trend to be up so you focus on pullbacks in trending markets.
It bundles those checks into a score and shows you the score on the candles and on a gradient meter.
When everything lines up it paints a green triangle below the bar, shades the background, and (if you wish) draws a horizontal entry line at your chosen level.
Inputs and what they mean
Dip Hunter Settings
• Vol Lookback and Vol Spike : The script computes an average volume over the lookback window and flags a spike when current volume is a multiple of that average. A multiplier of 2.0 means today’s volume must be at least double the average. This helps filter noise and focuses on dips that other traders actually traded.
• Fast EMA and Slow EMA : Short-term and medium-term structure references. A dip is more credible if price closes below the fast EMA while the fast EMA is still below the slow EMA during the pullback. That is classic corrective behavior inside a larger trend.
• Price Smooth : Optional smoothing length for price-derived series. Use this if you trade very noisy assets or low timeframes.
• Volatility Len and Vol Spike (volatility) : The script checks both standard deviation and true range against their own averages. If either expands beyond your multiplier the market confirms the move with range.
• Dip % and Lookback Bars : The engine finds the highest high over the lookback window, then computes the percentage drawdown from that high to the current close. Only dips larger than your threshold qualify.
Trend Filter
• Enable Trend Filter : When on, Dip Hunter will only trigger if the market is in an uptrend.
• Trend EMA Period : The longer EMA that defines the session’s backbone trend.
• Minimum Trend Strength : A small positive slope requirement. In practice this means the trend EMA should be rising, and price should be above it. You can raise the value to be more selective.
Entries
• Show Entry Lines : Draws a horizontal guide from the signal bar for a fixed number of bars. Great for limit orders, scaling, or re-tests.
• Line Length (bars) : How far the entry guide extends.
• Min Gap (bars) : Suppresses new entry lines if another dip fired recently. Prevents clutter during choppy sequences.
• Entry Price : Choose the line level. “Low” anchors at the signal candle’s low. “Close” anchors at the signal close. “Dip % Level” anchors at the theoretical level defined by recent_high × (1 − dip%). This lets you work resting orders at a consistent discount.
Heat / Meter
• Color Bars by Score : Colors each candle using a red→white→green gradient. Red is overheated, green is prime dip territory, white is neutral.
• Show Meter Table : Adds a compact gradient strip with a pointer that tracks the current score.
• Meter Cells and Meter Position : Resolution and placement of the meter.
UI Settings
• Show Dip Signals : Plots green triangles under qualifying bars and tints the background very lightly.
• Show EMAs : Plots fast, slow, and the trend EMA (if the trend filter is enabled).
• Bullish, Bearish, Neutral colors : Theme controls for shapes, fills, and bar painting.
Core calculations explained simply
Recent high and dip percent
The script finds the highest high over Lookback Bars , calls it “recent high,” then calculates:
dip% = (recent_high − close) ÷ recent_high × 100.
If dip% is larger than Dip % , condition one passes.
Volume confirmation
It computes a simple moving average of volume over Vol Lookback . If current volume ÷ average volume > Vol Spike , we have a participation spike. It also checks 5-bar ROC of volume. If ROC > 50 the spike is forceful. This gets an extra score point.
Volatility confirmation
Two independent checks:
• Standard deviation of closes vs its own average.
• True range vs ATR.
If either expands beyond Vol Spike (volatility) the move has range. This prevents false triggers from quiet drifts.
Short-term structure
Price should close below the Fast EMA and the fast EMA should be below the Slow EMA at the moment of the dip. That is the anatomy of a pullback rather than a full breakdown.
Macro trend context (optional)
When Enable Trend Filter is on, the Trend EMA must be rising and price must be above it. The logic prefers “micro weakness inside macro strength” which is the highest probability pattern for buying dips.
Signal formation
A valid dip requires:
• dip% > threshold
• volume spike true
• volatility spike true
• close below fast EMA
• fast EMA below slow EMA
If the trend filter is enabled, a rising trend EMA with price above it is also required. When all true, the triangle prints, the background tints, and optional entry lines are drawn.
Scoring and visuals
Binary checks into a continuous score
Each component contributes to a score between 0 and 1. The script then rescales to a centered range (−50 to +50).
• Low or negative scores imply “overheated” conditions and are shaded toward red.
• High positive scores imply “ripe for a dip buy” conditions and are shaded toward green.
• The gradient meter repeats the same logic, with a pointer so you can read the state quickly.
Bar coloring
If you enable “Color Bars by Score,” each candle inherits the gradient. This makes sequences obvious. Red clusters warn you not to buy. White means neutral. Increasing green suggests the pullback is maturing.
EMAs and the trend EMA
• Fast EMA turns down relative to the slow EMA inside the pullback.
• Trend EMA stays rising and above price once the dip exhausts, which is your cue to focus on long setups rather than bottom fishing in downtrends.
Entry lines
When a fresh signal fires and no other signal happened within Min Gap (bars) , the indicator draws a horizontal level for Line Length bars. Use these lines for limit entries at the low, at the close, or at the defined dip-percent level. This keeps your plan consistent across instruments.
Alerts and what they mean
• Market Overheated : Score is deeply negative. Do not chase. Wait for green.
• Close To A Dip : Score has reached a healthy level but the full signal did not trigger yet. Prepare orders.
• Dip Confirmed : First bar of a fresh validated dip. This is the most direct entry alert.
• Dip Active : The dip condition remains valid. You can scale in on re-tests.
• Dip Fading : Score crosses below 0.5 from above. Momentum of the setup is fading. Tighten stops or take partials.
• Trend Blocked Signal : All dip conditions passed but the trend filter is offside. Either reduce risk or skip, depending on your plan.
How to trade with Dip Hunter
Classic pullback in uptrend
Turn on the trend filter.
Watch for a Dip Confirmed alert with green triangle.
Use the entry line at “Dip % Level” to stage a limit order. This keeps your entries consistent across assets and timeframes.
Initial stop under the signal bar’s low or under the next lower EMA band.
First target at prior swing high, second target at a multiple of risk.
If you use partials, trail the remainder under the fast EMA once price reclaims it.
Aggressive intraday scalps
Lower Dip % and Lookback Bars so you catch shallow flags.
Keep Vol Spike meaningful so you only trade when participation appears.
Take quick partials when price reclaims the fast EMA, then exit on Dip Fading if momentum stalls.
Counter-trend probes
Disable the trend filter if you intentionally hunt reflex bounces in downtrends.
Require strong volume and volatility confirmation.
Use smaller size and faster targets. The meter should move quickly from red toward white and then green. If it does not, step aside.
Risk management templates
Stops
• Conservative: below the entry line minus a small buffer or below the signal bar’s low.
• Structural: below the slow EMA if you aim for swing continuation.
• Time stop: if price does not reclaim the fast EMA within N bars, exit.
Position sizing
Use the distance between the entry line and your structural stop to size consistently. The script’s entry lines make this distance obvious.
Scaling
• Scale at the entry line first touch.
• Add only if the meter stays green and price reclaims the fast EMA.
• Stop adding on a Dip Fading alert.
Tuning guide by market and timeframe
Equities daily
• Dip %: 1.5 to 3.0
• Lookback Bars: 5 to 10
• Vol Spike: 1.5 to 2.5
• Volatility Len: 14 to 20
• Trend EMA: 100 or 200
• Keep trend filter on for a cleaner list.
Futures and FX intraday
• Dip %: 0.4 to 1.2
• Lookback Bars: 3 to 7
• Vol Spike: 1.8 to 3.0
• Volatility Len: 10 to 14
• Use Min Gap to avoid clusters during news.
Crypto
• Dip %: 3.0 to 6.0 for majors on higher timeframes, lower on 15m to 1h
• Lookback Bars: 5 to 12
• Vol Spike: 1.8 to 3.0
• ATR and stdev checks help in erratic sessions.
Reading the chart at a glance
• Green triangle below the bar: a validated dip.
• Light green background: the current bar meets the full condition.
• Bar gradient: red is overheated, white is neutral, green is dip-friendly.
• EMAs: fast below slow during the pullback, then reclaim fast EMA on the bounce for quality continuation.
• Trend EMA: a rising spine when the filter is on.
• Entry line: a fixed level to anchor orders and risk.
• Meter pointer: right side toward “Dip” means conditions are maturing.
Why this combination reduces false positives
Any single criterion will trigger too often. Dip Hunter demands a dip off a recent high plus a volume surge plus a volatility expansion plus corrective EMA structure. Optional trend alignment pushes odds further in your favor. The score and meter visualize how many of these boxes you are actually ticking, which is more reliable than a binary dot.
Limitations and practical tips
• Thin or illiquid symbols can spoof volume spikes. Use larger Vol Lookback or raise Vol Spike .
• Sideways markets will show frequent small dips. Increase Dip % or keep the trend filter on.
• News candles can blow through entry lines. Widen stops or skip around known events.
• If you see many back-to-back triangles, raise Min Gap to keep only the best setups.
Quick setup recipes
• Clean swing trader: Trend filter on, Dip % 2.0 to 3.0, Vol Spike 2.0, Volatility Len 14, Fast 20 EMA, Slow 50 EMA, Trend 100 EMA.
• Fast intraday scalper: Trend filter off, Dip % 0.7 to 1.0, Vol Spike 2.5, Volatility Len 10, Fast 9 EMA, Slow 21 EMA, Min Gap 10 bars.
• Crypto swing: Trend filter on, Dip % 4.0, Vol Spike 2.0, Volatility Len 14, Fast 20 EMA, Slow 50 EMA, Trend 200 EMA.
Summary
Dip Hunter is a focused pullback engine. It quantifies a real dip off a recent high, validates it with volume and volatility expansion, enforces corrective structure with EMAs, and optionally restricts signals to an uptrend. The score, bar gradient, and meter make reading conditions instant. Entry lines and alerts turn that read into an executable plan. Tune the thresholds to your market and timeframe, then let the tool keep you patient in red, selective in white, and decisive in green.
Structure From Start – MTF (body-close BOS)Displays higher-timeframe market structure from a chosen start date using body-close BOS logic, with trend state, guard levels, and BOS markers plotted on your current chart.
Multi-Timeframe Market Structure with Body-Close BOS Logic
This indicator tracks market structure from a chosen start date on a higher-timeframe (HTF) of your choice, then displays it on your current chart for intraday context.
It detects swing highs/lows using pivot logic, confirms Break of Structure (BOS) only when a candle closes beyond the swing level (body-close rule), and maintains the “valid swing” level that invalidates the current bias.
Key Features:
• Works on any HTF you select (e.g., H1, H4) while you operate on lower TFs like M5 or M1.
• Start reading structure from any date/time you choose for focused backtesting or scenario analysis.
• Highlights trend state (long/short/neutral) with background colors.
• Plots the active “guard” level (valid swing high/low) that would flip bias if broken.
• Marks BOS events directly on your trading TF, updating only when the HTF candle closes.
Ideal for combining a clear higher-timeframe bias with lower-timeframe execution, without manually tracking HTF structure changes during live markets.
Gold Killzone Bias Suite🟡 Gold Killzone Bias Suite
The Gold Killzone Bias Suite is an advanced institutional-grade tool designed to generate high-confidence directional bias for XAU/USD (Gold) during the London and New York killzones.
Built for traders using a structured, confluence-driven approach, this tool blends price action, smart money principles, momentum, and volume into a real-time bias engine with a clean, easy-to-read dashboard.
🔧 Key Features
🕰️ Session-Based Bias (London / New York)
Independent bias calculation per session
Killzone times customizable with timezone support
Background highlighting (blue/red) for each session
📊 VWAP Engine
Reclaim & rejection detection
VWAP deviation alerts
Daily HTF VWAP integration
Score impact based on VWAP behaviour
📉 Market Structure (CHoCH / BOS)
Detects swing highs/lows
Labels bullish/bearish CHoCHs
Structure score contributes to session bias
💧 Liquidity Grabs
Detects stop hunts above highs / below lows
Confirms with candle rejection (body % filter)
Plots labels and adds to bias scoring
⚡ Momentum Filters
RSI: Bullish >55, Bearish <45
MACD: Histogram + Signal Line crossovers
Combined momentum score used in bias
🧠 Smart Money Proximity
Optional FVG/OB score toggle (placeholder for custom logic)
Adds static confluence for proximity-based setups
⏫ Higher Time Frame Context
Daily VWAP comparison
4H high/low structure breaks
Adds trend score to current session bias
🧠 How Bias Works
The suite uses a scoring model. Each confluence adds or subtracts points:
VWAP reclaim/reject: ±30
CHoCH/BOS: ±30
Liquidity grab: ±20
RSI/MACD: ±10
FVG/OB Proximity: +10
Daily VWAP trend: ±10
H4 Trend Break: ±10
Final Bias:
Bullish if score ≥ +20
Bearish if score ≤ -20
Neutral if between -19 and +19
A confidence % (capped at 100) is also shown, along with the contributing confluences (VWAP, Structure, Liquidity, etc.).
📋 Dashboard
A real-time dashboard shows for each session:
Session name and time
Bias (Bullish / Bearish / Neutral)
Confidence (%)
Confluences used
Position can be moved (Top Left, Top Right, etc.). Designed to be unobtrusive yet informative.
🧪 Best Practices
Use on 15m / 5m charts for intraday setups
Confirm with D1 or H4 structure for directional context
Combine with OB/FVG zones or SMT for entries
Use Trading View alerts for bias flips or liquidity grabs (custom logic can be added)
Bar Replay compatible for back testing and journaling bias shifts
🔐 Notes
Does not generate trade signals or alerts by default
Focused on bias generation and confluence stacking
Compatible with funded account trading models
📈 Built for traders who want a systematic, score-based approach to identifying directional edge in high-volume gold sessions.
SMC Structures and FVGสวัสดีครับ! ผมจะอธิบายอินดิเคเตอร์ "SMC Structures and FVG + MACD" ที่คุณให้มาอย่างละเอียดในแต่ละส่วน เพื่อให้คุณเข้าใจการทำงานของมันอย่างถ่องแท้ครับ
อินดิเคเตอร์นี้เป็นการผสมผสานแนวคิดของ Smart Money Concept (SMC) ซึ่งเน้นการวิเคราะห์โครงสร้างตลาด (Market Structure) และ Fair Value Gap (FVG) เข้ากับอินดิเคเตอร์ MACD เพื่อใช้เป็นตัวกรองหรือตัวยืนยันสัญญาณ Choch/BoS (Change of Character / Break of Structure)
1. ภาพรวมอินดิเคเตอร์ (Overall Purpose)
อินดิเคเตอร์นี้มีจุดประสงค์หลักคือ:
ระบุโครงสร้างตลาด: ตีเส้นและป้ายกำกับ Choch (Change of Character) และ BoS (Break of Structure) บนกราฟโดยอัตโนมัติ
ผสานการยืนยันด้วย MACD: สัญญาณ Choch/BoS จะถูกพิจารณาก็ต่อเมื่อ MACD Histogram เกิดการตัดขึ้นหรือลง (Zero Cross) ในทิศทางที่สอดคล้องกัน
แสดง Fair Value Gap (FVG): หากเปิดใช้งาน จะมีการตีกล่อง FVG บนกราฟ
แสดงระดับ Fibonacci: คำนวณและแสดงระดับ Fibonacci ที่สำคัญตามโครงสร้างตลาดปัจจุบัน
ปรับตาม Timeframe: การคำนวณและการแสดงผลทั้งหมดจะปรับตาม Timeframe ที่คุณกำลังใช้งานอยู่โดยอัตโนมัติ
2. ส่วนประกอบหลักของโค้ด (Code Breakdown)
โค้ดนี้สามารถแบ่งออกเป็นส่วนหลัก ๆ ได้ดังนี้:
2.1 Inputs (การตั้งค่า)
ส่วนนี้คือตัวแปรที่คุณสามารถปรับแต่งได้ในหน้าต่างการตั้งค่าของอินดิเคเตอร์ (คลิกที่รูปฟันเฟืองข้างชื่ออินดิเคเตอร์บนกราฟ)
MACD Settings (ตั้งค่า MACD):
fast_len: ความยาวของ Fast EMA สำหรับ MACD (ค่าเริ่มต้น 12)
slow_len: ความยาวของ Slow EMA สำหรับ MACD (ค่าเริ่มต้น 26)
signal_len: ความยาวของ Signal Line สำหรับ MACD (ค่าเริ่มต้น 9)
= ta.macd(close, fast_len, slow_len, signal_len): คำนวณค่า MACD Line, Signal Line และ Histogram โดยใช้ราคาปิด (close) และค่าความยาวที่กำหนด
is_bullish_macd_cross: ตรวจสอบว่า MACD Histogram ตัดขึ้นเหนือเส้น 0 (จากค่าลบเป็นบวก)
is_bearish_macd_cross: ตรวจสอบว่า MACD Histogram ตัดลงใต้เส้น 0 (จากค่าบวกเป็นลบ)
Fear Value Gap (FVG) Settings:
isFvgToShow: (Boolean) เปิด/ปิดการแสดง FVG บนกราฟ
bullishFvgColor: สีสำหรับ Bullish FVG
bearishFvgColor: สีสำหรับ Bearish FVG
mitigatedFvgColor: สีสำหรับ FVG ที่ถูก Mitigate (ลดทอน) แล้ว
fvgHistoryNbr: จำนวน FVG ย้อนหลังที่จะแสดง
isMitigatedFvgToReduce: (Boolean) เปิด/ปิดการลดขนาด FVG เมื่อถูก Mitigate
Structures (โครงสร้างตลาด) Settings:
isStructBodyCandleBreak: (Boolean) หากเป็น true การ Break จะต้องเกิดขึ้นด้วย เนื้อเทียน ที่ปิดเหนือ/ใต้ Swing High/Low หากเป็น false แค่ไส้เทียนทะลุก็ถือว่า Break
isCurrentStructToShow: (Boolean) เปิด/ปิดการแสดงเส้นโครงสร้างตลาดปัจจุบัน (เส้นสีน้ำเงินในภาพตัวอย่าง)
pivot_len: ความยาวของแท่งเทียนที่ใช้ในการมองหาจุด Pivot (Swing High/Low) ยิ่งค่าน้อยยิ่งจับ Swing เล็กๆ ได้, ยิ่งค่ามากยิ่งจับ Swing ใหญ่ๆ ได้
bullishBosColor, bearishBosColor: สีสำหรับเส้นและป้าย BOS ขาขึ้น/ขาลง
bosLineStyleOption, bosLineWidth: สไตล์ (Solid, Dotted, Dashed) และความหนาของเส้น BOS
bullishChochColor, bearishChochColor: สีสำหรับเส้นและป้าย CHoCH ขาขึ้น/ขาลง
chochLineStyleOption, chochLineWidth: สไตล์ (Solid, Dotted, Dashed) และความหนาของเส้น CHoCH
currentStructColor, currentStructLineStyleOption, currentStructLineWidth: สี, สไตล์ และความหนาของเส้นโครงสร้างตลาดปัจจุบัน
structHistoryNbr: จำนวนการ Break (Choch/BoS) ย้อนหลังที่จะแสดง
Structure Fibonacci (จากโค้ดต้นฉบับ):
เป็นชุด Input สำหรับเปิด/ปิด, กำหนดค่า, สี, สไตล์ และความหนาของเส้น Fibonacci Levels ต่างๆ (0.786, 0.705, 0.618, 0.5, 0.382) ที่จะถูกคำนวณจากโครงสร้างตลาดปัจจุบัน
2.2 Helper Functions (ฟังก์ชันช่วยทำงาน)
getLineStyle(lineOption): ฟังก์ชันนี้ใช้แปลงค่า String ที่เลือกจาก Input (เช่น "─", "┈", "╌") ให้เป็นรูปแบบ line.style_ ที่ Pine Script เข้าใจ
get_structure_highest_bar(lookback): ฟังก์ชันนี้พยายามหา Bar Index ของแท่งเทียนที่ทำ Swing High ภายในช่วง lookback ที่กำหนด
get_structure_lowest_bar(lookback): ฟังก์ชันนี้พยายามหา Bar Index ของแท่งเทียนที่ทำ Swing Low ภายในช่วง lookback ที่กำหนด
is_structure_high_broken(...): ฟังก์ชันนี้ตรวจสอบว่าราคาปัจจุบันได้ Break เหนือ _structureHigh (Swing High) หรือไม่ โดยพิจารณาจาก _highStructBreakPrice (ราคาปิดหรือราคา High ขึ้นอยู่กับการตั้งค่า isStructBodyCandleBreak)
FVGDraw(...): ฟังก์ชันนี้รับ Arrays ของ FVG Boxes, Types, Mitigation Status และ Labels มาประมวลผล เพื่ออัปเดตสถานะของ FVG (เช่น ถูก Mitigate หรือไม่) และปรับขนาด/ตำแหน่งของ FVG Box และ Label บนกราฟ
2.3 Global Variables (ตัวแปรทั่วทั้งอินดิเคเตอร์)
เป็นตัวแปรที่ประกาศด้วย var ซึ่งหมายความว่าค่าของมันจะถูกเก็บไว้และอัปเดตในแต่ละแท่งเทียน (persists across bars)
structureLines, structureLabels: Arrays สำหรับเก็บอ็อบเจกต์ line และ label ของเส้น Choch/BoS ที่วาดบนกราฟ
fvgBoxes, fvgTypes, fvgLabels, isFvgMitigated: Arrays สำหรับเก็บข้อมูลของ FVG Boxes และสถานะต่างๆ
structureHigh, structureLow: เก็บราคาของ Swing High/Low ที่สำคัญของโครงสร้างตลาดปัจจุบัน
structureHighStartIndex, structureLowStartIndex: เก็บ Bar Index ของจุดเริ่มต้นของ Swing High/Low ที่สำคัญ
structureDirection: เก็บสถานะของทิศทางโครงสร้างตลาด (1 = Bullish, 2 = Bearish, 0 = Undefined)
fiboXPrice, fiboXStartIndex, fiboXLine, fiboXLabel: ตัวแปรสำหรับเก็บข้อมูลและอ็อบเจกต์ของเส้น Fibonacci Levels
isBOSAlert, isCHOCHAlert: (Boolean) ใช้สำหรับส่งสัญญาณ Alert (หากมีการตั้งค่า Alert ไว้)
2.4 FVG Processing (การประมวลผล FVG)
ส่วนนี้จะตรวจสอบเงื่อนไขการเกิด FVG (Bullish FVG: high < low , Bearish FVG: low > high )
หากเกิด FVG และ isFvgToShow เป็น true จะมีการสร้าง box และ label ใหม่เพื่อแสดง FVG บนกราฟ
มีการจัดการ fvgBoxes และ fvgLabels เพื่อจำกัดจำนวน FVG ที่แสดงตาม fvgHistoryNbr และลบ FVG เก่าออก
ฟังก์ชัน FVGDraw จะถูกเรียกเพื่ออัปเดตสถานะของ FVG (เช่น การถูก Mitigate) และปรับการแสดงผล
2.5 Structures Processing (การประมวลผลโครงสร้างตลาด)
Initialization: ที่ bar_index == 0 (แท่งเทียนแรกของกราฟ) จะมีการกำหนดค่าเริ่มต้นให้กับ structureHigh, structureLow, structureHighStartIndex, structureLowStartIndex
Finding Current High/Low: highest, highestBar, lowest, lowestBar ถูกใช้เพื่อหา High/Low ที่สุดและ Bar Index ของมันใน 10 แท่งล่าสุด (หรือทั้งหมดหากกราฟสั้นกว่า 10 แท่ง)
Calculating Structure Max/Min Bar: structureMaxBar และ structureMinBar ใช้ฟังก์ชัน get_structure_highest_bar และ get_structure_lowest_bar เพื่อหา Bar Index ของ Swing High/Low ที่แท้จริง (ไม่ใช่แค่ High/Low ที่สุดใน lookback แต่เป็นจุด Pivot ที่สมบูรณ์)
Break Price: lowStructBreakPrice และ highStructBreakPrice จะเป็นราคาปิด (close) หรือราคา Low/High ขึ้นอยู่กับ isStructBodyCandleBreak
isStuctureLowBroken / isStructureHighBroken: เงื่อนไขเหล่านี้ตรวจสอบว่าราคาได้ทำลาย structureLow หรือ structureHigh หรือไม่ โดยพิจารณาจากราคา Break, ราคาแท่งก่อนหน้า และ Bar Index ของจุดเริ่มต้นโครงสร้าง
Choch/BoS Logic (ส่วนสำคัญที่ถูกผสานกับ MACD):
if(isStuctureLowBroken and is_bearish_macd_cross): นี่คือจุดที่ MACD เข้ามามีบทบาท หากราคาทำลาย structureLow (สัญญาณขาลง) และ MACD Histogram เกิด Bearish Zero Cross (is_bearish_macd_cross เป็น true) อินดิเคเตอร์จะพิจารณาว่าเป็น Choch หรือ BoS
หาก structureDirection == 1 (เดิมเป็นขาขึ้น) หรือ 0 (ยังไม่กำหนด) จะตีเป็น "CHoCH" (เปลี่ยนทิศทางโครงสร้างเป็นขาลง)
หาก structureDirection == 2 (เดิมเป็นขาลง) จะตีเป็น "BOS" (ยืนยันโครงสร้างขาลง)
มีการสร้าง line.new และ label.new เพื่อวาดเส้นและป้ายกำกับ
structureDirection จะถูกอัปเดตเป็น 1 (Bullish)
structureHighStartIndex, structureLowStartIndex, structureHigh, structureLow จะถูกอัปเดตเพื่อกำหนดโครงสร้างใหม่
else if(isStructureHighBroken and is_bullish_macd_cross): เช่นกันสำหรับขาขึ้น หากราคาทำลาย structureHigh (สัญญาณขาขึ้น) และ MACD Histogram เกิด Bullish Zero Cross (is_bullish_macd_cross เป็น true) อินดิเคเตอร์จะพิจารณาว่าเป็น Choch หรือ BoS
หาก structureDirection == 2 (เดิมเป็นขาลง) หรือ 0 (ยังไม่กำหนด) จะตีเป็น "CHoCH" (เปลี่ยนทิศทางโครงสร้างเป็นขาขึ้น)
หาก structureDirection == 1 (เดิมเป็นขาขึ้น) จะตีเป็น "BOS" (ยืนยันโครงสร้างขาขึ้น)
มีการสร้าง line.new และ label.new เพื่อวาดเส้นและป้ายกำกับ
structureDirection จะถูกอัปเดตเป็น 2 (Bearish)
structureHighStartIndex, structureLowStartIndex, structureHigh, structureLow จะถูกอัปเดตเพื่อกำหนดโครงสร้างใหม่
การลบเส้นเก่า: d.delete_line (หากไลบรารีทำงาน) จะถูกเรียกเพื่อลบเส้นและป้ายกำกับเก่าออกเมื่อจำนวนเกิน structHistoryNbr
Updating Structure High/Low (else block): หากไม่มีการ Break เกิดขึ้น แต่ราคาปัจจุบันสูงกว่า structureHigh หรือต่ำกว่า structureLow ในทิศทางที่สอดคล้องกัน (เช่น ยังคงเป็นขาขึ้นและทำ High ใหม่) structureHigh หรือ structureLow จะถูกอัปเดตเพื่อติดตาม High/Low ที่สุดของโครงสร้างปัจจุบัน
Current Structure Display:
หาก isCurrentStructToShow เป็น true อินดิเคเตอร์จะวาดเส้น structureHighLine และ structureLowLine เพื่อแสดงขอบเขตของโครงสร้างตลาดปัจจุบัน
Fibonacci Display:
หาก isFiboXToShow เป็น true อินดิเคเตอร์จะคำนวณและวาดเส้น Fibonacci Levels ต่างๆ (0.786, 0.705, 0.618, 0.5, 0.382) โดยอิงจาก structureHigh และ structureLow ของโครงสร้างตลาดปัจจุบัน
Alerts:
alertcondition: ใช้สำหรับตั้งค่า Alert ใน TradingView เมื่อเกิดสัญญาณ BOS หรือ CHOCH
plot(na):
plot(na) เป็นคำสั่งที่สำคัญในอินดิเคเตอร์ที่ไม่ได้ต้องการพล็อต Series ของข้อมูลบนกราฟ (เช่น ไม่ได้พล็อตเส้น EMA หรือ RSI) แต่ใช้วาดอ็อบเจกต์ (Line, Label, Box) โดยตรง
การมี plot(na) ช่วยให้ Pine Script รู้ว่าอินดิเคเตอร์นี้มีเอาต์พุตที่แสดงผลบนกราฟ แม้ว่าจะไม่ได้เป็น Series ที่พล็อตตามปกติก็ตาม
3. วิธีใช้งาน
คัดลอกโค้ดทั้งหมด ที่อยู่ในบล็อก immersive ด้านบน
ไปที่ TradingView และเปิดกราฟที่คุณต้องการ
คลิกที่เมนู "Pine Editor" ที่อยู่ด้านล่างของหน้าจอ
ลบโค้ดเดิมที่มีอยู่ และ วางโค้ดที่คัดลอกมา ลงไปแทน
คลิกที่ปุ่ม "Add to Chart"
อินดิเคเตอร์จะถูกเพิ่มลงในกราฟของคุณโดยอัตโนมัติ คุณสามารถคลิกที่รูปฟันเฟืองข้างชื่ออินดิเคเตอร์บนกราฟเพื่อเข้าถึงหน้าต่างการตั้งค่าและปรับแต่งตามความต้องการของคุณได้
Hello! I will explain the "SMC Structures and FVG + MACD" indicator you provided in detail, section by section, so you can fully understand how it works.This indicator combines the concepts of Smart Money Concept (SMC), which focuses on analyzing Market Structure and Fair Value Gaps (FVG), with the MACD indicator to serve as a filter or confirmation for Choch (Change of Character) and BoS (Break of Structure) signals.1. Overall PurposeThe main purposes of this indicator are:Identify Market Structure: Automatically draw lines and label Choch (Change of Character) and BoS (Break of Structure) on the chart.Integrate MACD Confirmation: Choch/BoS signals will only be considered when the MACD Histogram performs a cross (Zero Cross) in the corresponding direction.Display Fair Value Gap (FVG): If enabled, FVG boxes will be drawn on the chart.Display Fibonacci Levels: Calculate and display important Fibonacci levels based on the current market structure.Adapt to Timeframe: All calculations and displays will automatically adjust to the timeframe you are currently using.2. Code BreakdownThis code can be divided into the following main sections:2.1 Inputs (Settings)This section contains variables that you can adjust in the indicator's settings window (click the gear icon next to the indicator's name on the chart).MACD Settings:fast_len: Length of the Fast EMA for MACD (default 12)slow_len: Length of the Slow EMA for MACD (default 26)signal_len: Length of the Signal Line for MACD (default 9) = ta.macd(close, fast_len, slow_len, signal_len): Calculates the MACD Line, Signal Line, and Histogram using the closing price (close) and the specified lengths.is_bullish_macd_cross: Checks if the MACD Histogram crosses above the 0 line (from negative to positive).is_bearish_macd_cross: Checks if the MACD Histogram crosses below the 0 line (from positive to negative).Fear Value Gap (FVG) Settings:isFvgToShow: (Boolean) Enables/disables the display of FVG on the chart.bullishFvgColor: Color for Bullish FVG.bearishFvgColor: Color for Bearish FVG.mitigatedFvgColor: Color for FVG that has been mitigated.fvgHistoryNbr: Number of historical FVG to display.isMitigatedFvgToReduce: (Boolean) Enables/disables reducing the size of FVG when mitigated.Structures (โครงสร้างตลาด) Settings:isStructBodyCandleBreak: (Boolean) If true, the break must occur with the candle body closing above/below the Swing High/Low. If false, a wick break is sufficient.isCurrentStructToShow: (Boolean) Enables/disables the display of the current market structure lines (blue lines in the example image).pivot_len: Lookback length for identifying Pivot points (Swing High/Low). A smaller value captures smaller, more frequent swings; a larger value captures larger, more significant swings.bullishBosColor, bearishBosColor: Colors for bullish/bearish BOS lines and labels.bosLineStyleOption, bosLineWidth: Style (Solid, Dotted, Dashed) and width of BOS lines.bullishChochColor, bearishChochColor: Colors for bullish/bearish CHoCH lines and labels.chochLineStyleOption, chochLineWidth: Style (Solid, Dotted, Dashed) and width of CHoCH lines.currentStructColor, currentStructLineStyleOption, currentStructLineWidth: Color, style, and width of the current market structure lines.structHistoryNbr: Number of historical breaks (Choch/BoS) to display.Structure Fibonacci (from original code):A set of inputs to enable/disable, define values, colors, styles, and widths for various Fibonacci Levels (0.786, 0.705, 0.618, 0.5, 0.382) that will be calculated from the current market structure.2.2 Helper FunctionsgetLineStyle(lineOption): This function converts the selected string input (e.g., "─", "┈", "╌") into a line.style_ format understood by Pine Script.get_structure_highest_bar(lookback): This function attempts to find the Bar Index of the Swing High within the specified lookback period.get_structure_lowest_bar(lookback): This function attempts to find the Bar Index of the Swing Low within the specified lookback period.is_structure_high_broken(...): This function checks if the current price has broken above _structureHigh (Swing High), considering _highStructBreakPrice (closing price or high price depending on isStructBodyCandleBreak setting).FVGDraw(...): This function takes arrays of FVG Boxes, Types, Mitigation Status, and Labels to process and update the status of FVG (e.g., whether it's mitigated) and adjust the size/position of FVG Boxes and Labels on the chart.2.3 Global VariablesThese are variables declared with var, meaning their values are stored and updated on each bar (persists across bars).structureLines, structureLabels: Arrays to store line and label objects for Choch/BoS lines drawn on the chart.fvgBoxes, fvgTypes, fvgLabels, isFvgMitigated: Arrays to store FVG box data and their respective statuses.structureHigh, structureLow: Stores the price of the significant Swing High/Low of the current market structure.structureHighStartIndex, structureLowStartIndex: Stores the Bar Index of the start point of the significant Swing High/Low.structureDirection: Stores the status of the market structure direction (1 = Bullish, 2 = Bearish, 0 = Undefined).fiboXPrice, fiboXStartIndex, fiboXLine, fiboXLabel: Variables to store data and objects for Fibonacci Levels.isBOSAlert, isCHOCHAlert: (Boolean) Used to trigger alerts in TradingView (if alerts are configured).2.4 FVG ProcessingThis section checks the conditions for FVG formation (Bullish FVG: high < low , Bearish FVG: low > high ).If FVG occurs and isFvgToShow is true, a new box and label are created to display the FVG on the chart.fvgBoxes and fvgLabels are managed to limit the number of FVG displayed according to fvgHistoryNbr and remove older FVG.The FVGDraw function is called to update the FVG status (e.g., whether it's mitigated) and adjust its display.2.5 Structures ProcessingInitialization: At bar_index == 0 (the first bar of the chart), structureHigh, structureLow, structureHighStartIndex, and structureLowStartIndex are initialized.Finding Current High/Low: highest, highestBar, lowest, lowestBar are used to find the highest/lowest price and its Bar Index of it in the last 10 bars (or all bars if the chart is shorter than 10 bars).Calculating Structure Max/Min Bar: structureMaxBar and structureMinBar use get_structure_highest_bar and get_structure_lowest_bar functions to find the Bar Index of the true Swing High/Low (not just the highest/lowest in the lookback but a complete Pivot point).Break Price: lowStructBreakPrice and highStructBreakPrice will be the closing price (close) or the Low/High price, depending on the isStructBodyCandleBreak setting.isStuctureLowBroken / isStructureHighBroken: These conditions check if the price has broken structureLow or structureHigh, considering the break price, previous bar prices, and the Bar Index of the structure's starting point.Choch/BoS Logic (Key Integration with MACD):if(isStuctureLowBroken and is_bearish_macd_cross): This is where MACD plays a role. If the price breaks structureLow (bearish signal) AND the MACD Histogram performs a Bearish Zero Cross (is_bearish_macd_cross is true), the indicator will consider it a Choch or BoS.If structureDirection == 1 (previously bullish) or 0 (undefined), it will be labeled "CHoCH" (changing structure direction to bearish).If structureDirection == 2 (already bearish), it will be labeled "BOS" (confirming bearish structure).line.new and label.new are used to draw the line and label.structureDirection will be updated to 1 (Bullish).structureHighStartIndex, structureLowStartIndex, structureHigh, structureLow will be updated to define the new structure.else if(isStructureHighBroken and is_bullish_macd_cross): Similarly for bullish breaks. If the price breaks structureHigh (bullish signal) AND the MACD Histogram performs a Bullish Zero Cross (is_bullish_macd_cross is true), the indicator will consider it a Choch or BoS.If structureDirection == 2 (previously bearish) or 0 (undefined), it will be labeled "CHoCH" (changing structure direction to bullish).If structureDirection == 1 (already bullish), it will be labeled "BOS" (confirming bullish structure).line.new and label.new are used to draw the line and label.structureDirection will be updated to 2 (Bearish).structureHighStartIndex, structureLowStartIndex, structureHigh, structureLow will be updated to define the new structure.Deleting Old Lines: d.delete_line (if the library works) will be called to delete old lines and labels when their number exceeds structHistoryNbr.Updating Structure High/Low (else block): If no break occurs, but the current price is higher than structureHigh or lower than structureLow in the corresponding direction (e.g., still bullish and making a new high), structureHigh or structureLow will be updated to track the highest/lowest point of the current structure.Current Structure Display:If isCurrentStructToShow is true, the indicator draws structureHighLine and structureLowLine to show the boundaries of the current market structure.Fibonacci Display:If isFiboXToShow is true, the indicator calculates and draws various Fibonacci Levels (0.786, 0.705, 0.618, 0.5, 0.382) based on the structureHigh and structureLow of the current market structure.Alerts:alertcondition: Used to set up alerts in TradingView when BOS or CHOCH signals occur.plot(na):plot(na) is an important statement in indicators that do not plot data series directly on the chart (e.g., not plotting EMA or RSI lines) but instead draw objects (Line, Label, Box).Having plot(na) helps Pine Script recognize that this indicator has an output displayed on the chart, even if it's not a regularly plotted series.3. How to UseCopy all the code in the immersive block above.Go to TradingView and open your desired chart.Click on the "Pine Editor" menu at the bottom of the screen.Delete any existing code and paste the copied code in its place.Click the "Add to Chart" button.The indicator will be added to your chart automatically. You can click the gear icon next to the indicator's name on the chart to access the settings window and customize it to your needs.I hope this explanation helps you understand this indicator in detail. If anything is unclear, or you need further adjustments, please let me know.






















