Candlestick analysis
Phantom Zone Visualizer (Auto-Mitigation)SCRIPT OVERVIEW: "Phantom Zone Visualizer (Auto-Mitigation)"
This is a custom Pine Script v5 indicator designed to automatically detect, display, and manage Phantom-style supply and demand zones directly on your TradingView chart.
🎯 PURPOSE:
To visually identify high-probability institutional price zones using the Phantom model:
Impulse → Base → Impulse
Wick-to-body precision
Auto-deletion on mitigation
🧠 HOW IT WORKS (STEP BY STEP):
🔍 1. Impulse Detection
The script first checks if the current candle (bar 0) is part of a strong directional move (an impulse):
Impulse Up = large bullish candle (body > ATR * strength factor)
Impulse Down = large bearish candle
It uses the ATR (Average True Range) to confirm if the candle is large enough, based on a user-defined multiplier (default = 1.5× ATR).
🧱 2. Base Detection (1–3 small candles)
If an impulse is detected, the script checks previous candles (up to 3) to find a tight base:
Base = candles with small bodies (less than 60% of ATR)
These represent institutional order blocks
This follows Phantom’s rule:
"Two candles is institutional; four is confusion."
🧰 3. Zone Construction (Wick-to-Body)
Once a valid base is found, it constructs a Phantom zone box, using:
Demand Zones (bullish):
Bottom = lowest wick of base
Top = highest body open/close
Supply Zones (bearish):
Top = highest wick of base
Bottom = lowest body open/close
This creates a visual green (demand) or red (supply) box extending 10 candles forward.
🏷 4. Labeling
Each zone includes a label showing:
Zone type (SUPPLY or DEMAND)
Price top and bottom
Number of candles in the base
This helps visually verify the purity of the zone at a glance.
💣 5. Auto-Mitigation Logic
Every new candle checks if price has touched or entered any zone:
If price overlaps a zone (wick or body):
The script deletes the box
This follows Phantom's principle:
"Once touched, zone is mitigated and no longer valid"
This keeps your chart clean and disciplined, avoiding reused zones.
⚙️ SETTINGS:
Setting Purpose
Lookback How far to check for impulses
Impulse Strength Multiplier of ATR to define "big candle"
Max Base Candles Max # of base candles to consider (default = 3)
✅ WHAT THIS SCRIPT DOES WELL:
✅ Follows Phantom rulebook with precision
✅ Marks clean, institutional zones only
✅ Enforces discipline by auto-deleting mitigated zones
✅ Helps traders avoid overtrading used zones
✅ Simple to plug and use on any asset/timeframe
✅ Fast visual scanning of structure, base, and strength
🚫 WHAT IT DOES NOT DO (yet):
❌ No scoring system (Phantom Score out of 20)
❌ No risk:reward (RRR) projections
❌ No trend/timeframe alignment filters (HTF/ITF)
❌ No alerts for zone creation/mitigation
🧩 SUMMARY:
Your Phantom Zone Visualizer (Auto-Mitigation) is a strict, rule-based tool to:
✅ Identify valid Impulse → Base → Impulse formations
✅ Draw zones using Phantom wick-to-body logic
✅ Remove zones once they are mitigated
🧘 Keep your chart clean, your trading structured, and your focus sharp
Order Block Finder | Gold | ProjectSyndicate🥇 ProjectSyndicate Gold Order Block Finder
📌 Institutional Order Blocks for XAUUSD Built for Gold’s Volatility
The ProjectSyndicate Gold Order Block Finder is a professional-grade TradingView indicator engineered specifically for XAUUSD / Gold traders who want clean, high-probability institutional supply & demand zones on their chart.
Gold moves fast, sweeps liquidity often, and loves sharp displacement. This tool is tuned to match that behavior—so you can quickly spot the zones where smart money likely stepped in, and plan entries, targets, and invalidations with confidence. ✅
🚀 Why Gold Traders Like It
✅ Made for XAUUSD: Detection is tuned for Gold’s unique volatility and impulse structure
🏦 Institutional Zone Detection: Finds the last opposing candle before a true displacement + structure break
🧹 Auto-Cleanup (Mitigation): Zones automatically disappear when invalidated (no clutter)
📦 Clean Visualization: Professional OB boxes that extend into live price action
⚡ Pine Script v6: Built on the latest TradingView engine for stability and speed
🧠 Detection Logic Simple, Effective, Battle-Tested
📈 Bullish Order Block (Demand):
The last bearish candle before a strong bullish displacement that breaks market structure (BOS)
📉 Bearish Order Block (Supply):
The last bullish candle before a strong bearish displacement that breaks market structure (BOS)
💥 Displacement Filter Power Move Confirmation:
Zones are validated only when the impulse move meets a minimum strength threshold (default: 1.3× candle range)—helping filter out weak noise and low-quality blocks.
🛠 Recommended Gold Settings (XAUUSD)
Use these presets to match Gold’s typical behavior across higher-impact timeframes:
Timeframe | Swing Length | Displacement
M5 | 5–7 | 1.2 – 1.4
M10 | 5–7 | 1.2 – 1.4
M30 | 5–7 | 1.2 – 1.4
H1 | 7–9 | 1.3 – 1.6
H4 | 8–10 | 1.5 – 2.0
💡 Tip: If you want more signals, reduce Swing Length.
If you want higher quality only, increase Displacement.
✅ Best Use-Cases on Gold
🎯 Mark premium supply/demand zones without manual drawing
🧲 Wait for price to return to the OB for cleaner entries
🛡️ Use OB boundaries for clear invalidation + stop placement
📊 Combine with trend bias / liquidity sweeps / session levels for extra confirmation
Max and Min Daily + 4H + 1H + Today Daily + 30mIndicator that shows on the chart the highs and lows of yesterday's daily, today's daily candle, the 4-hour, 1-hour, and 30-minute timeframes.
Indicatore che mostra sul grafico i max e min del daily di ieri, della candela giornaliera di oggi, del tf4h, tf1h e tf30 min.
HARSI RSI Shadow SHORT Strategy M1HARSI – Heikin Ashi RSI Shadow Indicator
HARSI (Heikin Ashi RSI Shadow) is a momentum-based oscillator that combines the concept of Heikin Ashi smoothing with the Relative Strength Index (RSI) to reduce market noise and highlight short-term trend strength.
Instead of plotting traditional price candles, HARSI transforms RSI values into a zero-centered oscillator (RSI − 50), allowing traders to clearly identify bullish and bearish momentum around the median line. The smoothing mechanism inspired by Heikin Ashi candles helps filter out false signals, making the indicator especially effective on lower timeframes such as M1.
The RSI Shadow reacts quickly to momentum shifts while maintaining smooth transitions, which makes it suitable for scalping and intraday trading. Key threshold levels (such as ±20 and ±30) can be used to detect momentum expansion, exhaustion, and potential continuation setups.
mua HARSI RSI Shadow Strategy M1 (Fixed)HARSI – Heikin Ashi RSI Shadow Indicator
HARSI (Heikin Ashi RSI Shadow) is a momentum-based oscillator that combines the concept of Heikin Ashi smoothing with the Relative Strength Index (RSI) to reduce market noise and highlight short-term trend strength.
Instead of plotting traditional price candles, HARSI transforms RSI values into a zero-centered oscillator (RSI − 50), allowing traders to clearly identify bullish and bearish momentum around the median line. The smoothing mechanism inspired by Heikin Ashi candles helps filter out false signals, making the indicator especially effective on lower timeframes such as M1.
The RSI Shadow reacts quickly to momentum shifts while maintaining smooth transitions, which makes it suitable for scalping and intraday trading. Key threshold levels (such as ±20 and ±30) can be used to detect momentum expansion, exhaustion, and potential continuation setups.
HARSI works best in liquid markets and can be used as a standalone momentum indicator or combined with trend filters such as moving averages or VWAP for higher-probability trades.
Key Features:
Zero-centered RSI oscillator (RSI − 50)
Heikin Ashi–style smoothing to reduce noise
Clear momentum-based entry signals
Optimized for lower timeframes (M1 scalping)
Suitable for both Spot and Futures trading
mua HARSI RSI Shadow Strategy M1 (Fixed)HARSI – Heikin Ashi RSI Shadow Indicator
HARSI (Heikin Ashi RSI Shadow) is a momentum-based oscillator that combines the concept of Heikin Ashi smoothing with the Relative Strength Index (RSI) to reduce market noise and highlight short-term trend strength.
Instead of plotting traditional price candles, HARSI transforms RSI values into a zero-centered oscillator (RSI − 50), allowing traders to clearly identify bullish and bearish momentum around the median line. The smoothing mechanism inspired by Heikin Ashi candles helps filter out false signals, making the indicator especially effective on lower timeframes such as M1.
The RSI Shadow reacts quickly to momentum shifts while maintaining smooth transitions, which makes it suitable for scalping and intraday trading. Key threshold levels (such as ±20 and ±30) can be used to detect momentum expansion, exhaustion, and potential continuation setups.
HARSI works best in liquid markets and can be used as a standalone momentum indicator or combined with trend filters such as moving averages or VWAP for higher-probability trades.
Key Features:
Zero-centered RSI oscillator (RSI − 50)
Heikin Ashi–style smoothing to reduce noise
Clear momentum-based entry signals
Optimized for lower timeframes (M1 scalping)
Suitable for both Spot and Futures trading
Basic Key Levels | Feng FuturesKey Levels | Feng Futures (Basic) automatically plots the most essential daily reference levels used by futures traders to establish intraday context and structure.
This lightweight version focuses on the three levels that matter most for session bias and liquidity reference:
Previous Day High (PDH)
Previous Day Low (PDL)
Session Open (18:00 NY for futures)
These levels are commonly used by professional and institutional participants as decision points for:
directional bias
continuation vs. reversal context
risk definition and invalidation
Features:
• Auto-plotted PDH and PDL
• Futures session open (18:00 NY)
• Clean, non-repainting levels
• Lines extend forward for intraday use
• Optional price labels pinned to the right edge
• Minimal design to reduce chart clutter
• Full color, width, and label customization
• Optimized for intraday futures trading
This indicator does not provide trade signals or alerts.
It is designed to support planning, execution, and review within your own trading framework.
Best used on:
ES, NQ, RTY, YM (intraday timeframes)
PDH / PDL levels can be used as take profit targets or to help form bias. For example, if we break out of PDH, we may look for longs.
Disclaimer:
This indicator is for educational purposes only and does not constitute financial advice. Trading futures involves significant risk and may not be suitable for all investors. Always do your own research and use proper risk management.
Long Wick Detector + Highlight + AlertWick set at 9 ticks..the longer the better..cut loss at lower of the wick..wait for candle completion in TF 5
PA Bar Count (First Edition)This script is written by FanFan.
It is designed to count price action bars and identify the bar number in a sequence.
The script helps traders track bar structure and improve PA analysis.
9/21 EMA Strategy"Disclaimer: I am not a SEBI Registered Investment Advisor. This script is for educational purposes only and should not be considered financial advice. Trading involves significant risk. Please consult your financial advisor before making any investment decisions based on this tool."Trading involves significant risk. This tool is for educational purposes and should be used alongside your own analysis.
BUY Sell Signal (Kewme)//@version=6
indicator("EMA Cross RR Box (1:4 TP Green / SL Red)", overlay=true, max_lines_count=500, max_boxes_count=500)
// ===== INPUTS =====
emaFastLen = input.int(9, "Fast EMA")
emaSlowLen = input.int(15, "Slow EMA")
atrLen = input.int(14, "ATR Length")
slMult = input.float(1.0, "SL ATR Multiplier")
rr = input.float(4.0, "Risk Reward (1:4)") // 🔥 1:4 RR
// ===== EMA =====
emaFast = ta.ema(close, emaFastLen)
emaSlow = ta.ema(close, emaSlowLen)
plot(emaFast, color=color.green, title="EMA Fast")
plot(emaSlow, color=color.red, title="EMA Slow")
// ===== ATR =====
atr = ta.atr(atrLen)
// ===== EMA CROSS =====
buySignal = ta.crossover(emaFast, emaSlow)
sellSignal = ta.crossunder(emaFast, emaSlow)
// ===== VARIABLES =====
var box tpBox = na
var box slBox = na
var line tpLine = na
var line slLine = na
// ===== BUY =====
if buySignal
if not na(tpBox)
box.delete(tpBox)
if not na(slBox)
box.delete(slBox)
if not na(tpLine)
line.delete(tpLine)
if not na(slLine)
line.delete(slLine)
entry = close
sl = entry - atr * slMult
tp = entry + atr * slMult * rr // ✅ 1:4 TP
// TP ZONE (GREEN)
tpBox := box.new(
left=bar_index,
top=tp,
right=bar_index + 20,
bottom=entry,
bgcolor=color.new(color.green, 80),
border_color=color.green
)
// SL ZONE (RED)
slBox := box.new(
left=bar_index,
top=entry,
right=bar_index + 20,
bottom=sl,
bgcolor=color.new(color.red, 80),
border_color=color.red
)
tpLine := line.new(bar_index, tp, bar_index + 20, tp, color=color.green, width=2)
slLine := line.new(bar_index, sl, bar_index + 20, sl, color=color.red, width=2)
label.new(bar_index, low, "BUY", style=label.style_label_up, color=color.green, textcolor=color.white)
// ===== SELL =====
if sellSignal
if not na(tpBox)
box.delete(tpBox)
if not na(slBox)
box.delete(slBox)
if not na(tpLine)
line.delete(tpLine)
if not na(slLine)
line.delete(slLine)
entry = close
sl = entry + atr * slMult
tp = entry - atr * slMult * rr // ✅ 1:4 TP
// TP ZONE (GREEN)
tpBox := box.new(
left=bar_index,
top=entry,
right=bar_index + 20,
bottom=tp,
bgcolor=color.new(color.green, 80),
border_color=color.green
)
// SL ZONE (RED)
slBox := box.new(
left=bar_index,
top=sl,
right=bar_index + 20,
bottom=entry,
bgcolor=color.new(color.red, 80),
border_color=color.red
)
tpLine := line.new(bar_index, tp, bar_index + 20, tp, color=color.green, width=2)
slLine := line.new(bar_index, sl, bar_index + 20, sl, color=color.red, width=2)
label.new(bar_index, high, "SELL", style=label.style_label_down, color=color.red, textcolor=color.white)
Live PDH/PDL Dashboard - Exact Time Fix saleem shaikh//@version=5
indicator("Live PDH/PDL Dashboard - Exact Time Fix", overlay=true)
// --- 1. Stocks ki List ---
s1 = "NSE:RELIANCE", s2 = "NSE:HDFCBANK", s3 = "NSE:ICICIBANK"
s4 = "NSE:INFY", s5 = "NSE:TCS", s6 = "NSE:SBIN"
s7 = "NSE:BHARTIARTL", s8 = "NSE:AXISBANK", s9 = "NSE:ITC", s10 = "NSE:KOTAKBANK"
// --- 2. Function: Har stock ke andar jaakar breakout time check karna ---
get_data(ticker) =>
// Kal ka High/Low (Daily timeframe se)
pdh_val = request.security(ticker, "D", high , lookahead=barmerge.lookahead_on)
pdl_val = request.security(ticker, "D", low , lookahead=barmerge.lookahead_on)
// Aaj ka breakout check karna (Current timeframe par)
curr_close = close
is_pdh_break = curr_close > pdh_val
is_pdl_break = curr_close < pdl_val
// Breakout kab hua uska time pakadna (ta.valuewhen use karke)
var float break_t = na
if (is_pdh_break or is_pdl_break) and na(break_t) // Sirf pehla breakout time capture karega
break_t := time
// --- 3. Sabhi stocks ka Data fetch karna ---
= request.security(s1, timeframe.period, get_data(s1))
= request.security(s2, timeframe.period, get_data(s2))
= request.security(s3, timeframe.period, get_data(s3))
= request.security(s4, timeframe.period, get_data(s4))
= request.security(s5, timeframe.period, get_data(s5))
= request.security(s6, timeframe.period, get_data(s6))
= request.security(s7, timeframe.period, get_data(s7))
= request.security(s8, timeframe.period, get_data(s8))
= request.security(s9, timeframe.period, get_data(s9))
= request.security(s10, timeframe.period, get_data(s10))
// --- 4. Table UI Setup ---
var tbl = table.new(position.top_right, 3, 11, bgcolor=color.rgb(33, 37, 41), border_width=1, border_color=color.gray)
// Row update karne ka logic
updateRow(row, name, price, hi, lo, breakT) =>
table.cell(tbl, 0, row, name, text_color=color.white, text_size=size.small)
string timeDisplay = na(breakT) ? "-" : str.format("{0,time,HH:mm}", breakT)
if price > hi
table.cell(tbl, 1, row, "PDH BREAK", bgcolor=color.new(color.green, 20), text_color=color.white, text_size=size.small)
table.cell(tbl, 2, row, timeDisplay, text_color=color.white, text_size=size.small)
else if price < lo
table.cell(tbl, 1, row, "PDL BREAK", bgcolor=color.new(color.red, 20), text_color=color.white, text_size=size.small)
table.cell(tbl, 2, row, timeDisplay, text_color=color.white, text_size=size.small)
else
table.cell(tbl, 1, row, "Normal", text_color=color.gray, text_size=size.small)
table.cell(tbl, 2, row, "-", text_color=color.gray, text_size=size.small)
// --- 5. Table Draw Karna ---
if barstate.islast
table.cell(tbl, 0, 0, "Stock", text_color=color.white, bgcolor=color.gray)
table.cell(tbl, 1, 0, "Signal", text_color=color.white, bgcolor=color.gray)
table.cell(tbl, 2, 0, "Time", text_color=color.white, bgcolor=color.gray)
updateRow(1, "RELIANCE", c1, h1, l1, t1)
updateRow(2, "HDFC BANK", c2, h2, l2, t2)
updateRow(3, "ICICI BANK", c3, h3, l3, t3)
updateRow(4, "INFY", c4, h4, l4, t4)
updateRow(5, "TCS", c5, h5, l5, t5)
updateRow(6, "SBI", c6, h6, l6, t6)
updateRow(7, "BHARTI", c7, h7, l7, t7)
updateRow(8, "AXIS", c8, h8, l8, t8)
updateRow(9, "ITC", c9, h9, l9, t9)
updateRow(10, "KOTAK", c10, h10, l10, t10)
NQ Volume Flip + Heiken Ashi Wick BreakThe HA Wick Break (second indicator) will ONLY alert and plot arrows if the bar is ALSO a true volume color flip bar
Sesion Operativa - Codigo InstitucionalThis indicator is designed for institutional and precision traders who need to visualize market liquidity and key session operating ranges without visual clutter.
Unlike standard session indicators, this tool focuses on clarity and the projection of key levels (Highs and Lows) to identify potential future reaction zones.
Key Features:
4 Customizable Sessions: Pre-configured with key institutional times (Pre-NY, NY Open, London, and Asia). Each session is fully adjustable in time, color, and style.
Minimalist Labeling: Displays the session name and operating range (in pips/points) in a clean, direct format (e.g., NY - 45), removing decimals and unnecessary text to keep the chart clean.
Range Projections: Option to project the Highs and Lows of each session forward (N candles) to use them as dynamic support or resistance levels.
Opening Highlight (NYSE): Special feature to highlight candle colors during specific high-volatility times (default 09:30 - 09:35 UTC-5), perfect for identifying manipulation or liquidity injections at the stock market open.
Adjustable Time Zone: Default setting is UTC-5 (New York), but fully adaptable to any user time zone.
Old Indicator Multi-Component Decision StrategyStrategy to test signals based on rsi and few other technicals
CPR Call-Out Panel (Daily + Weekly Context)Use on 5 minute chart along with CPR by KGS indicator. My script helps to interpret potential nifty 50 index behaviour based on levels. DM for more questions.






















