trade bằng mông xu hướng//@description=This TradingView indicator is designed to detect key price structure levels by identifying swing highs and lows on the chart. It automatically labels these points and draws trend zones (ranges) based on confirmed breakouts. The indicator helps traders visualize market structure shifts, determine trend direction (uptrend, downtrend, or neutral), and make more informed trading decisions. It includes customizable settings such as lookback period, label visibility, and zone colors, and supports multi-timeframe analysis for greater flexibility.
Jalur dan Saluran
Magnet Zones: Trap Detection & Flow Map [@darshakssc]This script detects potential bull and bear trap candles—price actions that may appear strong but are likely to reverse—based on:
🔺 Wick structure
📊 Volume spike behavior
💡 RSI confirmation logic
⏳ Signal cooldown filter to reduce false positives
The indicator then plots:
🟥 Red “🚨 Trap” labels above candles showing possible bull traps
🟩 Green “🧲 Trap” labels below candles showing possible bear traps
➖ Horizontal zone lines to mark these trap levels as “magnet zones,” which may act as future support or resistance
🧠 How It Works:
1. Volume Spike Detection
2. The script first checks for unusually high volume (1.5× the average volume over the last 20 candles).
3. Trap Candle Structure
4. A trap is suspected when there is a long wick opposite the direction of the candle body, signaling a failed breakout or price manipulation.
5. RSI Confirmation
6. Bull Traps: RSI must be above 60
7. Bear Traps: RSI must be below 40
✅ This helps validate whether the price was overbought or oversold.
✅ Cooldown Mechanism
✅ After a trap is detected, it waits for 10 bars before allowing another signal—this reduces noise and overfitting.
✅ How to Use It:
1. Apply on any timeframe, especially effective for intraday trading (e.g. 5m, 15m, 1h).
2. Use the trap signals as early warnings to avoid fake breakouts.
3. Combine with your own strategy or trend-following system for confirmation.
4. The trap lines (magnet zones) can be used as dynamic support/resistance levels for future pullbacks or reversals.
⚠️ Important Note:
This script is for educational purposes only and is not financial advice.
Always use traps in combination with your personal discretion, risk management, and other confluence tools.
SMC BOS Strategy for XAUUSDThis is a custom-built TradingView strategy that uses Smart Money Concept (SMC) logic to identify high-probability trend continuation and reversal entries based on Break of Structure (BOS) on XAUUSD. It is designed for traders looking to test institutional-style structure breaks with dynamic entry and risk-managed exits.
The strategy detects BOS using swing highs and lows, then enters trades based on price momentum (bullish or bearish candle confirmation). Each trade is automatically managed using a fixed stop loss in pips and a customizable risk-to-reward (RR) ratio. The goal is to backtest how BOS alone can drive clean directional entries, simulating Smart Money precision without repainting or false signals.
🔑 Key Features:
BOS-Based Entry Logic: Enters trades only after a valid break of structure (new higher high or lower low), signaling continuation from a Smart Money shift.
Momentum Filtered Entry: Requires candle confirmation to validate direction (e.g., bullish close after bullish BOS).
Full Backtest Engine: Built using strategy() functions, allowing you to test SL/TP performance and adjust position sizing.
Custom Risk Control: Adjust Stop Loss (in pips) and Target Profit using a flexible RR ratio (e.g. 1:2 or 1:3 setups).
Works Across Timeframes: Optimized for 15m, 1H, and 4H on XAUUSD, but works on any asset that respects structure.
⚙️ Settings:
Swing Sensitivity – Controls how strict pivot highs/lows are
Minimum Bar Spacing – Prevents overtrading after recent BOS
Stop Loss (in pips) – Fixed distance from entry
Risk/Reward Ratio – Multiplies SL for dynamic take-profit
Trade Direction – Supports both long and short with momentum
📊 How It Works:
Detects new structure break (BOS)
Confirms momentum with candle direction (close > open for long, close < open for short)
Triggers entry and sets TP/SL automatically
Logs results in the Strategy Tester for full backtest evaluation
📌 Optimized For:
XAUUSD (Gold)
Smart Money / SMC / ICT traders
Trend continuation + reversal structures
Backtest-focused strategy building
Institutional-level analysis
📎 Release Notes:
v1.0 – Initial release of BOS-only SMC strategy with full entry/exit simulation and strategy tester support.
⚠️ Disclaimer:
This strategy is built for educational and research purposes only. It is not a signal provider or financial advice. Always combine with your personal confirmation, confluence tools, and risk management.
MA Table [RanaAlgo]The "MA Table " indicator is a comprehensive and visually appealing tool for tracking moving average signals in TradingView. Here's a short summary of its usefulness:
Key Features:
Dual MA Support:
Tracks both EMA (Exponential Moving Average) and SMA (Simple Moving Average) signals (10, 20, 30, 50, 100 periods).
Users can toggle visibility for EMA/SMA separately.
Clear Signal Visualization:
Displays Buy (▲) or Sell (▼) signals based on price position relative to each MA.
Color-coded (green for buy, red for sell) for quick interpretation.
Customizable Table Design:
Adjustable position (9 placement options), colors, text size, and border styling.
Alternating row colors improve readability.
Optional MA Plots:
Can display the actual MA lines on the chart for visual confirmation (with distinct colors/styles).
Usefulness:
Quick Overview: The table consolidates multiple MA signals in one place, saving time compared to checking each MA individually.
Trend Confirmation: Helps confirm trend strength when multiple MAs align (e.g., price above all MAs → strong uptrend).
Flexible: Suitable for both short-term (10-20 period) and long-term (50-100 period) traders.
Aesthetic: Professional design enhances chart clarity without clutter.
Ideal For:
Traders who rely on moving average crossovers or price-MA relationships.
Multi-timeframe analysis when combined with other tools.
Beginners learning MA strategies (clear visual feedback).
Gustavo Zone Indicator JULYThis indicator watches for runs of at least three consecutive green (or red) candles followed by an opposite-color candle, then marks that reversal zone by drawing a rectangle from the wicks of the first two run candles. It optionally plots a horizontal “target” line at the wick of the third run candle. While the zone is active, if three bars in a row close beyond both the zone boundary and the target line, it issues a customizable “Sell” label above the bar (after bullish runs) or a “Buy” label below the bar (after bearish runs). All colors, text labels, sizes, offsets, and toggles for the zones, lines, and signals can be adjusted in the input settings.
SMC Structure Levels – BOS & CHoCH for XAUUSDThis is a custom-made TradingView indicator designed to visualize high-confidence market structure shifts based on Smart Money Concepts (SMC), focusing on Break of Structure (BOS) and Change of Character (CHoCH) points. The tool is optimized for XAUUSD but works across all major forex, crypto, and index markets.
It identifies key pivot points and filters them using both price distance and bar spacing, helping traders focus only on meaningful structural changes — not noisy signals. This makes it ideal for traders looking to track institutional-style price behavior with clarity.
🔑 Key Features:
Clean BOS & CHoCH Labels: The indicator plots “BOS” above candles when a structural break occurs in the trend direction, and “CHoCH” below candles when early signs of a reversal appear.
Spaced Signals: Only plots structure shifts that meet both time and price distance filters, preventing clutter and overplotting on the chart.
Swing-Based Logic: Built on pivot high/low analysis with adjustable sensitivity, ensuring flexible structure detection on any timeframe.
Fully Customizable: Modify:
Swing Sensitivity (number of bars before/after pivot)
Minimum bar spacing between BOS/CHoCH signals
Minimum price movement (in pips) between labels
Toggle BOS or CHoCH visibility individually
No Repainting: Once confirmed, signals remain fixed on the chart for historical review.
Zero Clutter: Unlike typical SMC tools that flood the chart, this indicator prioritizes clarity and signal quality.
🧠 What is BOS & CHoCH?
Break of Structure (BOS): Indicates continuation of the current market trend.
Change of Character (CHoCH): Suggests a potential early trend reversal or shift in momentum.
These tools are often used by Smart Money traders to mark significant turning points and trend confirmations.
⚙️ Use Cases:
Structural tracking in Smart Money Concepts (SMC)
Identifying trend continuation or early reversal
XAUUSD (Gold) swing and intraday analysis
Support for Order Blocks, Liquidity Grabs, and FVG confluence
Backtesting market structure break behavior
📌 Best Pairs:
XAUUSD (Gold)
Any asset where structure-based analysis is relevant
📎 Release Notes:
v1.0 – Initial release of BOS/CHoCH structure tool with spacing and pip-distance filtering for XAUUSD analysis.
⚠️ Disclaimer:
This indicator is built for educational and analytical purposes only. It does not constitute trading advice or guarantee profitable signals. Always use with a proper risk management strategy and confirm signals with additional confluence.
✅ This matches the exact quality and structure of the description you showed earlier.
Just copy this into your TradingView script page when publishing. If you'd like the next version with Order Blocks or FVG, say the word.
Williams FractalsBoaBias Fractals High & Lows is an indicator based on Bill Williams' fractals that helps identify key support and resistance levels on the chart. It displays horizontal lines at fractal highs (red) and lows (green), which extend to the current bar. Lines automatically disappear if the price breaks through them, leaving only the relevant levels. Additionally, the indicator shows the price values of active fractals on the price scale for convenient monitoring.
Key Features:
Customizable Fractals: Choose between 3-bar or 5-bar fractals (default: 3-bar).
Period: Adjust the number of periods for calculation
Visualization: Red lines for highs (resistance), green for lows (support). Lines are fixed on the chart and persist during scrolling or scaling changes.
Alert System: Notifications for the formation of a new fractal high/low and for level breaks (Fractal High Formed, Fractal Low Formed, Fractal High Broken, Fractal Low Broken).
How to Use:
Add the indicator to the chart.
Configure parameters: select the fractal type (3 or 5 bars) and period.
Set up alerts in TradingView to receive notifications about new fractals or breaks.
Use the lines as levels for entry/exit positions, stop-losses, or take-profits in fractal-based strategies.
Troubleshooting: If Levels Are Not Fixed on the Chart
If the levels (fractal lines) do not stay fixed on the chart and fail to move with it during scrolling or scaling (e.g., they remain stationary while the chart shifts), this is typically due to the indicator's scale settings in TradingView. The indicator may be set to "No scale," causing the lines to desynchronize from the chart's price scale.
What to Do:
Locate the Indicator Label: On the chart, find the indicator label in the top-left corner of the pane (or where "BoaBias Fractals High & Lows" is displayed).
Right-Click the Label: Click the right mouse button on this label.
Adjust the Scale:
In the context menu, look for the "Scale" or "Pin to scale" option.
If it shows "Pin to scale (now no scale)" or similar, select "Pin to right scale" (or "Pin to left scale," depending on your chart's main price scale—usually the right).
Refresh the Chart: After changing the setting, refresh the chart (press F5 or reload the page), or toggle the indicator off and on again to apply the changes.
After this, the lines should move and scale with the chart during scrolling (horizontal or vertical) or zooming. If the issue persists, check:
TradingView Limits: The indicator may draw too many lines (maximum ~500 per script). If there are many historical fractals, older lines might not display.
Chart Settings: Ensure the chart is not in logarithmic scale (if applicable) or that auto-scaling is enabled.
Indicator Version: Verify you are using the latest script version (Pine Script v6) and check for errors in the TradingView console.
This indicator is ideal for traders working with Bill Williams' chaos theory or those seeking dynamic support/resistance levels. It is based on standard fractals but with enhancements for convenience: automatic removal of broken levels and integration with the price scale.
Note: The indicator does not provide trading signals on its own — use it in combination with other tools. Test on historical data before real trading.
Code written in Pine Script v6. Original template: Mit Nayi.
Confirmed Entry Grid Pro//@version=5
indicator("Confirmed Entry Grid Pro", overlay=true)
// === المتوسطات ===
ma9 = ta.sma(close, 9)
ma21 = ta.sma(close, 21)
ma200 = ta.sma(close, 200)
// === الاتجاه ===
trendBull = close > ma200
trendBear = close < ma200
// === الزخم ===
rsi = ta.rsi(close, 14)
rsiBull = rsi > 50
rsiBear = rsi < 50
// === الحجم ===
volMA = ta.sma(volume, 20)
volHigh = volume > volMA
// === شموع ابتلاعية ===
bullEngulf = close > open and open < close and close > open
bearEngulf = close < open and open > close and close < open
// === بولنجر باند ===
basis = ta.sma(close, 20)
dev = ta.stdev(close, 20)
upper = basis + 2 * dev
lower = basis - 2 * dev
bbBreakUp = close > upper
bbBreakDown = close < lower
// === دعم / مقاومة ديناميكية ===
support = ta.lowest(low, 20)
resistance = ta.highest(high, 20)
nearSupport = math.abs(close - support) / close < 0.015
nearResistance = math.abs(close - resistance) / close < 0.015
// === تقاطع المتوسطات ===
crossUp = ta.crossover(ma9, ma21)
crossDown = ta.crossunder(ma9, ma21)
// === ATR ===
atr = ta.atr(14)
atrActive = atr > ta.sma(atr, 14)
// === SMC: BOS + CHOCH ===
bosUp = high > high and low > low
bosDown = low < low and high < high
chochUp = close > high and close < high
chochDown = close < low and close > low
smcBuy = bosUp and chochUp
smcSell = bosDown and chochDown
// === مناطق السيولة ===
liqHigh = ta.highest(high, 30)
liqLow = ta.lowest(low, 30)
liquidityBuyZone = close < liqLow
liquiditySellZone = close > liqHigh
// === حساب النقاط لكل صفقة ===
buyScore = (trendBull ? 1 : 0) + (rsiBull ? 1 : 0) + (volHigh ? 1 : 0) + (bullEngulf ? 1 : 0) + (smcBuy ? 1 : 0) + (bbBreakUp ? 1 : 0) + (nearSupport ? 1 : 0) + (crossUp ? 1 : 0) + (atrActive ? 1 : 0) + (liquidityBuyZone ? 1 : 0)
sellScore = (trendBear ? 1 : 0) + (rsiBear ? 1 : 0) + (volHigh ? 1 : 0) + (bearEngulf ? 1 : 0) + (smcSell ? 1 : 0) + (bbBreakDown ? 1 : 0) + (nearResistance ? 1 : 0) + (crossDown ? 1 : 0) + (atrActive ? 1 : 0) + (liquiditySellZone ? 1 : 0)
// === شروط الإشارات مع منع التكرار خلال آخر 5 شموع ===
var int lastBuyBar = na
var int lastSellBar = na
canBuy = buyScore >= 5 and (na(lastBuyBar) or bar_index - lastBuyBar > 5)
canSell = sellScore >= 5 and (na(lastSellBar) or bar_index - lastSellBar > 5)
if canBuy
lastBuyBar := bar_index
if canSell
lastSellBar := bar_index
showBuy = canBuy
showSell = canSell
// === طول الخطوط ===
var int lineLen = 5
// === رسم الإشارات ===
plotshape(showBuy, title="BUY", location=location.belowbar, style=shape.triangleup, size=size.small, color=color.green)
plotshape(showSell, title="SELL", location=location.abovebar, style=shape.triangledown, size=size.small, color=color.red)
// === خطوط الصفقة ===
var line buyLines = array.new_line(0)
var line sellLines = array.new_line(0)
if (showBuy)
entry = low
tpLevels = array.new_float(5)
array.set(tpLevels, 0, 0.618)
array.set(tpLevels, 1, 1.0)
array.set(tpLevels, 2, 1.272)
array.set(tpLevels, 3, 1.618)
array.set(tpLevels, 4, 2.0)
slLevel = -0.618
for i = 0 to 4
tp = entry + array.get(tpLevels, i) * atr
line = line.new(bar_index, tp, bar_index + lineLen, tp, color=color.green)
array.push(buyLines, line)
sl = entry + slLevel * atr
slLine = line.new(bar_index, sl, bar_index + lineLen, sl, color=color.red)
array.push(buyLines, slLine)
if (showSell)
entry = high
tpLevels = array.new_float(5)
array.set(tpLevels, 0, -0.618)
array.set(tpLevels, 1, -1.0)
array.set(tpLevels, 2, -1.272)
array.set(tpLevels, 3, -1.618)
array.set(tpLevels, 4, -2.0)
slLevel = 0.618
for i = 0 to 4
tp = entry + array.get(tpLevels, i) * atr
line = line.new(bar_index, tp, bar_index + lineLen, tp, color=color.green)
array.push(sellLines, line)
sl = entry + slLevel * atr
slLine = line.new(bar_index, sl, bar_index + lineLen, sl, color=color.red)
array.push(sellLines, slLine)
// === نسبة المخاطرة ===
label.new(bar_index, showBuy ? low : na, "Risk: 38.2%", style=label.style_label_left, textcolor=color.white, size=size.tiny, color=color.gray)
label.new(bar_index, showSell ? high : na, "Risk: 38.2%", style=label.style_label_left, textcolor=color.white, size=size.tiny, color=color.gray)
Kháng cự - Hỗ trợ đa khung V1 bởi TTVKháng cự khung D1,H4 H1 có thể hiện thị trên khung thời gian nhỏ hơn
Kairos BarakahTrade with precision during high-probability windows using this advanced Pine Script indicator, designed specifically for Indian Standard Time (IST). The tool identifies key reversal opportunities within a user-defined trading session, combining time-based reference levels, sequence-validated signals, and multi-factor win probability analysis for confident decision-making.
Key Features
1. Time-Based Reference Levels
Automatically sets high/low reference levels at a customizable start time (default: 19:00 IST).
Active trading window with adjustable duration (default: 135 minutes).
Clear visual reference lines for easy tracking.
2. Intelligent Signal Generation
Initial Signals:
Buy (B): Triggered when price closes above the reference high.
Sell (S): Triggered when price closes below the reference low.
Reversal Signals (R):
Valid only after an initial signal, ensuring proper sequence.
Buy Reversal: Price closes above reference high (after a Sell signal).
Sell Reversal: Price closes below reference low (after a Buy signal).
3. Multi-Dimensional Win Probability
Body Strength: Measures candle conviction (body size / total range).
Volume Confirmation: Compares current volume to 20-period average.
Trend Alignment: Uses EMA crosses (9/21) and RSI (14) for momentum.
Composite Score: Weighted blend of all factors, color-coded for quick interpretation:
🟢 >70%: High-confidence signal.
🟠 40-69%: Moderate confidence.
🔴 <40%: Weak signal.
4. Professional Visualization
Clean labels (B/S/R) at signal points.
Real-time reference table showing levels, active signal, and probabilities.
Customizable alerts for all signal types.
Why Use This Indicator?
IST-Optimized: Tailored for Indian market hours.
Rules-Based Reversals: Avoids false signals with strict sequence checks.
Data-Driven Confidence: Win probability metrics reduce guesswork.
Flexible Setup: Adjust time windows and parameters to fit your strategy.
Adaptive Trend Cloud + Smart Reversal Zones [@darshakssc]This indicator combines a volatility-adjusted trend cloud with RSI- and volume-based reversal signals to help traders visually spot potential trend continuation or reversal zones.
It’s designed to look clean, colorful, and informative — great for both beginners and experienced traders looking for chart clarity and actionable insights.
🔍 How It Works
🔵 1. Trend Cloud
1. The cloud is created using a 34-period EMA as the base and adjusted with a 14-period ATR multiplier.
2. When price is above the EMA, the cloud turns green (bullish).
3. When price is below the EMA, it turns red (bearish).
4. A neutral gray tone shows when price is inside the cloud, signaling potential indecision.
🔁 2. Smart Reversal Signal Logic
1. Signals appear only when price enters the cloud zone, indicating a potential change in direction.
2. To confirm the reversal, the following conditions must also be met:
3. RSI is below 40 (for bullish reversals) or above 60 (for bearish reversals)
4. A volume spike occurs (1.8× the 20-bar volume average)
5. A cooldown of 10 bars between signals prevents overplotting
🎯 3. TP & SL Labels
1. When a valid buy or sell signal appears:
🎯 TP (Take Profit) is placed at 2× ATR distance
🛑 SL (Stop Loss) is placed at 1× ATR distance
These levels are shown via chart labels for visual reference
🛎️ 4. Alerts
1. Built-in alerts trigger on:
🟢 Buy reversal signals
🔴 Sell reversal signals
✅ How to Use
1. Apply the indicator to any chart (works best on 5min–4h timeframes)
2. Look for the 🟢 Buy / 🔴 Sell labels when price touches the cloud
3. Use the visual TP/SL markers as reference zones — not financial advice
4. Combine with your own risk management, price action or confluence tools
⚙️ Customization Options
1. EMA & ATR lengths and multipliers
2. RSI and volume thresholds
3. Signal cooldown to reduce noise
4. Toggle TP/SL zones on or off
⚠️ Disclaimer
This script is for educational purposes only and does not constitute financial advice. Always test on demo accounts and combine with your own trading system.
EMA 20 and Anchored VWAP with Typical PriceIntraday scalping using EMA 20 and VWAP along with targets and Stoploss
Confirmed Entry Grid Pro//@version=5
indicator("Confirmed Entry Grid Pro", overlay=true,
max_lines_count=500, max_labels_count=500,
title="Confirmed Entry Grid Pro")
// === إعدادات المستخدم ===
showImpulse = input.bool(true, "Show Impulse Wave")
showShrinkWarning = input.bool(true, "Shrink Warning")
minConfirmations = input.int(5, "Minimum Confirmations", minval=3, maxval=10)
// === المتوسطات ===
ma9 = ta.sma(close, 9)
ma21 = ta.sma(close, 21)
ma200 = ta.sma(close, 200)
// === الاتجاه ===
trendBull = close > ma200
trendBear = close < ma200
// === الزخم ===
rsi = ta.rsi(close, 14)
rsiBull = rsi > 50
rsiBear = rsi < 50
// === الحجم ===
volMA = ta.sma(volume, 20)
volHigh = volume > volMA
// === شموع ابتلاعية ===
bullEngulf = close > open and open < close and close > open
bearEngulf = close < open and open > close and close < open
// === بولنجر باند ===
basis = ta.sma(close, 20)
dev = ta.stdev(close, 20)
upper = basis + 2 * dev
lower = basis - 2 * dev
bbBreakUp = close > upper
bbBreakDown = close < lower
// === دعم / مقاومة ديناميكية ===
support = ta.lowest(low, 20)
resistance = ta.highest(high, 20)
nearSupport = math.abs(close - support) / close < 0.015
nearResistance = math.abs(close - resistance) / close < 0.015
// === تقاطع المتوسطات ===
crossUp = ta.crossover(ma9, ma21)
crossDown = ta.crossunder(ma9, ma21)
// === ATR ===
atr = ta.atr(14)
atrActive = atr > ta.sma(atr, 14)
// === SMC: BOS + CHOCH + Impulsive Wave ===
bosUp = high > high and low > low
bosDown = low < low and high < high
chochUp = close > high and close < high
chochDown = close < low and close > low
smcBuy = bosUp and chochUp
smcSell = bosDown and chochDown
// === الموجة الدافعة (مؤشر اختياري لإشارة دخول قوية)
impulseWaveSell = close <= close and close <= close and close <= close and close < open
impulseWave = close >= close and close >= close and close >= close and close > open
// === مناطق السيولة ===
liqHigh = ta.highest(high, 30)
liqLow = ta.lowest(low, 30)
liquidityBuyZone = close < liqLow
liquiditySellZone = close > liqHigh
// === حساب النقاط لكل صفقة ===
buyScore = (trendBull ? 1 : 0) + (rsiBull ? 1 : 0) + (volHigh ? 1 : 0) + (bullEngulf ? 1 : 0) + (smcBuy ? 1 : 0) + (bbBreakUp ? 1 : 0) + (nearSupport ? 1 : 0) + (crossUp ? 1 : 0) + (atrActive ? 1 : 0) + (liquidityBuyZone ? 1 : 0)
sellScore = (trendBear ? 1 : 0) + (rsiBear ? 1 : 0) + (volHigh ? 1 : 0) + (bearEngulf ? 1 : 0) + (smcSell ? 1 : 0) + (bbBreakDown ? 1 : 0) + (nearResistance ? 1 : 0) + (crossDown ? 1 : 0) + (atrActive ? 1 : 0) + (liquiditySellZone ? 1 : 0)
// === شروط الإشارات مع منع التكرار خلال آخر 5 شموع ===
var int lastBuyBar = na
var int lastSellBar = na
canBuy = buyScore >= 5 and impulseWave and (na(lastBuyBar) or bar_index - lastBuyBar > 3)
canSell = sellScore >= 5 and impulseWaveSell and (na(lastSellBar) or bar_index - lastSellBar > 3)
if canBuy
lastBuyBar := bar_index
if canSell
lastSellBar := bar_index
showBuy = canBuy and buyScore >= minConfirmations
showSell = canSell and sellScore >= minConfirmations
// === طول الخطوط ===
var int lineLen = 5
// === رسم الإشارات ===
plotshape(showBuy, title="BUY", location=location.belowbar, style=shape.triangleup, size=size.small, color=color.green)
plotshape(showImpulse and impulseWave, title="Impulsive Buy", location=location.belowbar, style=shape.labelup, size=size.tiny, color=color.lime, text="IB")
plotshape(showSell, title="SELL", location=location.abovebar, style=shape.triangledown, size=size.small, color=color.red)
plotshape(showImpulse and impulseWaveSell, title="Impulsive Sell", location=location.abovebar, style=shape.labeldown, size=size.tiny, color=color.maroon, text="IS")
// === خطوط الصفقة ===
var line buyLines = array.new_line(0)
var line sellLines = array.new_line(0)
if (showBuy)
entry = close
label.new(bar_index, entry, "Entry " + str.tostring(entry, format.mintick), style=label.style_label_left, textcolor=color.white, size=size.normal)
tpLevels = array.from(0.618, 1.0, 1.272, 1.618, 2.0)
for i = 0 to array.size(tpLevels) - 1
fib = array.get(tpLevels, i)
tp = entry + fib * atr
fibLabel = "TP" + str.tostring(i + 1) + " - Fib " + str.tostring(fib)
line = line.new(bar_index, tp, bar_index + lineLen, tp, color=color.green)
label.new(bar_index + lineLen, tp, fibLabel + " " + str.tostring(tp, format.mintick), style=label.style_label_right, textcolor=color.lime, size=size.normal)
array.push(buyLines, line)
sl = entry - 0.618 * atr
slLine = line.new(bar_index, sl, bar_index + lineLen, sl, color=color.red)
label.new(bar_index + lineLen, sl, "SL " + str.tostring(sl, format.mintick), style=label.style_label_right, textcolor=color.red, size=size.normal)
array.push(buyLines, slLine)
if (showSell)
entry = close
label.new(bar_index, entry, "Entry " + str.tostring(entry, format.mintick), style=label.style_label_left, textcolor=color.white, size=size.normal)
tpLevels = array.from(-0.618, -1.0, -1.272, -1.618, -2.0)
for i = 0 to array.size(tpLevels) - 1
fib = array.get(tpLevels, i)
tp = entry + fib * atr
fibLabel = "TP" + str.tostring(i + 1) + " - Fib " + str.tostring(math.abs(fib))
line = line.new(bar_index, tp, bar_index + lineLen, tp, color=color.green)
label.new(bar_index + lineLen, tp, fibLabel + " " + str.tostring(tp, format.mintick), style=label.style_label_right, textcolor=color.green, size=size.normal)
array.push(sellLines, line)
sl = entry + 0.618 * atr
slLine = line.new(bar_index, sl, bar_index + lineLen, sl, color=color.red)
label.new(bar_index + lineLen, sl, "SL " + str.tostring(sl, format.mintick), style=label.style_label_right, textcolor=color.red, size=size.normal)
array.push(sellLines, slLine)
Step-MA Baseline (with optional smoother)Trackline – Trend-Following Baseline with Confirmation Zones
A clean trend-following baseline that adapts to price action while filtering noise. Built on a smoothed moving average (EMA or HMA), Trackline highlights directional bias, with optional zone coloring to indicate breakout alignment or pullback opportunities. Use it to identify trend direction, validate entries, or act as dynamic support/resistance in trending environments.
Features:
• Customizable length & smoothing method (EMA, HMA, or WMA)
• Optional signal coloring (bullish/bearish/neutral)
• Works on all timeframes and assets
• Pairs well with momentum or liquidity tools
The Kyber Cell's – TTM Squeeze ProThe Kyber Cell’s TTM Squeeze Pro
TTM Squeeze + ALMA + VWAP for Precision Trade Timing
⸻
1. Introduction
Kyber Cell’s Squeeze Pro is a comprehensive, all-in-one overlay indicator built on top of John Carter’s famous TTM Squeeze concept. It integrates advanced momentum and trend analysis using Arnaud Legoux Moving Averages (ALMA), a scroll-aware VWAP with optional deviation bands, and a clean, user-friendly visual system. The goal is simple: give traders a clear and configurable chart that identifies price compression, detects release moments, confirms direction, and helps manage risk and reward visually and effectively.
This tool is intended for traders of all styles — scalpers, swing traders, or intraday strategists — looking for cleaner signals, better visual cues, and more confidence in entry/exit timing.
⸻
2. Core Concepts
At its heart, the Squeeze Pro builds an in-chart visualization of the TTM Squeeze, a strategy that identifies when price volatility compresses inside a Bollinger Band that is narrower than a Keltner Channel. These moments often precede explosive breakouts. This version categorizes squeezes into three levels of compression:
• Blue Dot – Low Compression
• Orange Dot – Medium Compression
• Red Dot – High Compression
When the squeeze “fires” (i.e., the Bollinger Bands expand beyond all Keltner thresholds), the indicator flips to a Green Dot, signaling potential entry if confirmed by trend direction.
The indicator also includes a momentum model using linear regression on smoothed price deviation to determine directional bias. Momentum is further reinforced by a customizable trend engine, allowing you to switch between EMA-21 or HMA 34/144 logic.
An ALMA ribbon is plotted across the chart to represent smoothed trend strength with minimal lag, and a scroll-aware VWAP (Volume-Weighted Average Price) line, optionally with ±σ bands, helps confirm mean-reversion or momentum continuation setups.
⸻
3. Visual Components
Squeeze Pro replaces the traditional histogram with bar coloring logic based on your selected overlay mode:
• Momentum Mode colors bars based on whether momentum is rising or falling and in which direction (aqua/blue for bullish, red/yellow for bearish).
• Trend Mode colors bars using EMA or HMA logic to identify whether price is in a bullish, bearish, or neutral trend state.
A colored backdrop is triggered when a squeeze fires and momentum direction is confirmed. It remains green for bullish runs and red for bearish runs. The background disappears when the trend exhausts or reverses.
Each squeeze level (low, medium, high) is plotted as tiny dots above or below candles, with configurable colors. On the exact bar where the squeeze fires, the indicator optionally plots entry markers — either arrows or triangles — which can be placed with adjustable padding using ATR. These provide an at-a-glance signal of possible long or short entries.
EXPERIMENTAL : For risk and reward management, protective stop lines and limit targets can be toggled on. Stops are calculated using either recent swing highs/lows or a fixed ATR multiple, depending on user preference. Limit targets are calculated from entry price using ATR-based projections.
All colors are customizable.
⸻
4. Multi-Timeframe Squeeze Panel
An optional MTF Squeeze Panel appears in the top-right corner of the chart, displaying the squeeze status across multiple timeframes — from 1-minute to Monthly. Each timeframe is color-coded:
• Red for High Compression
• Orange for Medium Compression
• Blue for Low Compression
• Yellow for Open/No Compression
This provides rapid context for whether multiple timeframes are simultaneously compressing (a common precursor to explosive moves), helping traders align higher- and lower-timeframe signals. Colors are customizable.
The MTF panel dynamically adjusts to chart space and only renders the selected intervals for clarity and performance.
⸻
5. Inputs and Configuration Options
Squeeze Pro offers a rich configuration suite:
• Squeeze Settings: Control the Bollinger Band standard deviation, and three separate Keltner Channel multipliers (for low, medium, and high compression zones).
• ALMA Controls: Adjust the smoothing length, offset, and σ factor to control ribbon sensitivity.
• VWAP Options: Toggle VWAP on/off and optionally show ±σ bands for mean reversion signals.
• Entry Markers: Customize marker shape (arrow or triangle), size (tiny to huge), color, and padding using ATR multipliers.
• Stops and Targets:
• Choose between Swing High/Low or ATR-based stop logic.
• Define separate ATR lengths and multipliers for stops and targets.
• Independently toggle their visibility and color.
• Bar Coloring Mode: Select either Momentum or Trend logic for bar overlays.
• Trend Engine: Choose between EMA-21 or HMA 34/144 for identifying trend direction.
• Squeeze Dot Colors: Customize the colors for each compression level and release state.
• MTF Panel: Toggle visibility per timeframe — from 1m to Monthly.
This high degree of customization ensures that the indicator can adapt to nearly any trading style or preference.
⸻
6. Trade Workflow Suggestions
To get the most out of this tool, traders can follow a consistent workflow:
1. Watch Dot Progression: Blue → Orange → Red indicates increasing compression and likelihood of breakout.
2. Enter on Green Dot: When the squeeze fires (green dot), confirm entry direction with bar color and backdrop.
3. Use Confirmation Tools:
• ALMA should slope in the trade direction.
• VWAP should support the price move or confirm expansion away from mean.
4. Manage Risk and Reward (experimental):
• Respect stop-loss placements (Swing/ATR).
• Use ATR-based limit targets if enabled.
5. Exit:
• Consider exiting when momentum crosses zero.
• Or exit when the background color disappears, signaling potential trend exhaustion.
⸻
7. Alerts
Includes built-in alert conditions to notify you when a squeeze fires in either direction:
• “Squeeze Long”: Triggers when a green dot appears and momentum is bullish.
• “Squeeze Short”: Triggers when a green dot appears and momentum is bearish.
You can use these alerts for automation or to stay notified of new setups even when away from the screen.
⸻
8. Disclaimer
This indicator is designed for educational purposes only and should not be interpreted as financial advice. Trading is inherently risky, and any decisions based on this tool should be made with full awareness of personal risk tolerance and capital exposure.
🔔 NIFTY 100+ Points Early Move Signal (1H)//@version=5
indicator("🔔 NIFTY 100+ Points Early Move Signal (1H)", overlay=true)
// === Inputs === //
squeezePeriod = input.int(20, title="Price Squeeze Lookback")
rangeTrigger = input.float(100.0, title="Target Move (in Points)")
rsiLength = input.int(14, title="RSI Length")
macdFast = input.int(12)
macdSlow = input.int(26)
macdSignal = input.int(9)
volMultiplier = input.float(1.5, title="Volume Spike Multiplier")
// === RSI & MACD === //
rsi = ta.rsi(close, rsiLength)
= ta.macd(close, macdFast, macdSlow, macdSignal)
macdBullish = macdLine > signalLine
macdBearish = macdLine < signalLine
// === Price Compression === //
hh = ta.highest(high, squeezePeriod)
ll = ta.lowest(low, squeezePeriod)
compressionRange = hh - ll
tightCompression = compressionRange < (rangeTrigger * 0.6) // Pre-expansion
// === Volume Spike === //
avgVol = ta.sma(volume, 20)
volSpike = volume > avgVol * volMultiplier
// === Early Signal Logic === //
bullSetup = tightCompression and rsi > 50 and macdBullish and volSpike
bearSetup = tightCompression and rsi < 50 and macdBearish and volSpike
// === Plotting Signals === //
plotshape(bullSetup, title="Bullish Setup", location=location.belowbar, color=color.green, style=shape.labelup, text="100↑")
plotshape(bearSetup, title="Bearish Setup", location=location.abovebar, color=color.red, style=shape.labeldown, text="100↓")
bgcolor(bullSetup ? color.new(color.green, 85) : na)
bgcolor(bearSetup ? color.new(color.red, 85) : na)
// === Alerts === //
alertcondition(bullSetup, title="Bullish 100pt Setup", message="🚀 NIFTY: 100+ point UP move likely!")
alertcondition(bearSetup, title="Bearish 100pt Setup", message="🔻 NIFTY: 100+ point DOWN move likely!")
Gold Grid Lines (Fixed)Indicator function details: Gold Grid Lines (Fixed)
🧭 Purpose:
The indexer is designed to help structure the price of a horizontal line (Grid) on a graph of gold or any asset.
To use as a psychological reference, round-trip trading, or watch price fluctuations at equal levels.
⸻
🧩 Key Script Functions
1. 🔲 Draw horizontal lines in a grid (Grid Lines) style
• Use the Base Price that you specify, e.g. 2000.0.
• Draw a line up and down from the middle price with the same distance (Stepper Line).
• The number of lines on each side is set (Lines Up/Down).
• The line draws only one time when the graph is opened, so that the graph does not slow down.
✏️ Example:
• Base Price = 2000.0
• Stepper Line = 1.0 → means 100 gold dots.
• Lines = 5 → Draw 5 upper and 5 lower lines
→ get a price tag of 1995, 1996, … , 2005
⸻
2. 📉 Draw the day's open price line (Daily Open Line)
• When entering a new day, the system records the open price of the first bar of the day.
• Draw a horizontal line as "Daily Open Line" to help traders see how prices opened that day.
• Ideal for analysis of "over-open/under-open" behavior (e.g. trend, selling/buying force)
Common DMAs with LabelsHere's a short description for publishing:
Common Daily Moving Averages (DMA) Indicator with Smart Labels
Displays the most widely-used moving averages that professional traders watch: 5, 10, 20, 50, 100, and 200 DMAs with clear color-coding and descriptive labels.
Key Features:
Smart Labels - Each DMA shows its trading purpose (Day Trading, Swing Trading, Bull/Bear Line, etc.)
Customizable Display - Toggle any DMA on/off individually
Golden/Death Cross Alerts - Optional 50/200 crossover signals
Live Status Table - Shows current DMA values vs price with up/down arrows
Professional Styling - Color-coded lines with appropriate thickness (200 DMA emphasized)
Perfect for:
Multi-timeframe trend analysis
Support/resistance identification
Bull/bear market confirmation
Entry/exit timing
Usage: Add to chart, customize which DMAs to display in settings. Labels appear on the right showing each average's trading significance. Enable the status table for quick price-vs-DMA reference.
Ideal for both beginners learning key moving averages and experienced traders wanting a clean, informative DMA setup.
Volatility Squeeze – Blue Zone (classic) Volatility Squeeze – Blue Zone
Highlights periods when volatility contracts by showing a blue band between the Bollinger Bands (BB) whenever they fall inside the Keltner Channel (KC).
Blue zone = squeeze: BB upper & lower are inside KC – market coiling.
Automatic breakout alert: optional alert fires on the first bar after the squeeze releases.
Fully adjustable: BB/KC length, BB σ, KC ATR multiplier, zone colour & opacity, border on/off.
Clean overlay: zone hugs price bar-by-bar and disappears only when the squeeze ends, so past squeezes remain visible for context.
Use it to spot low-volatility setups, then watch for momentum or volume confirmations when the squeeze breaks.
Confirmed Entry Grid Pro//@version=5
indicator("Confirmed Entry Grid Pro", overlay=true)
// === المتوسطات ===
ma9 = ta.sma(close, 9)
ma21 = ta.sma(close, 21)
ma200 = ta.sma(close, 200)
// === الاتجاه ===
trendBull = close > ma200
trendBear = close < ma200
// === الزخم ===
rsi = ta.rsi(close, 14)
rsiBull = rsi > 50
rsiBear = rsi < 50
// === الحجم ===
volMA = ta.sma(volume, 20)
volHigh = volume > volMA
// === شموع ابتلاعية ===
bullEngulf = close > open and open < close and close > open
bearEngulf = close < open and open > close and close < open
// === بولنجر باند ===
basis = ta.sma(close, 20)
dev = ta.stdev(close, 20)
upper = basis + 2 * dev
lower = basis - 2 * dev
bbBreakUp = close > upper
bbBreakDown = close < lower
// === دعم / مقاومة ديناميكية ===
support = ta.lowest(low, 20)
resistance = ta.highest(high, 20)
nearSupport = math.abs(close - support) / close < 0.015
nearResistance = math.abs(close - resistance) / close < 0.015
// === تقاطع المتوسطات ===
crossUp = ta.crossover(ma9, ma21)
crossDown = ta.crossunder(ma9, ma21)
// === ATR ===
atr = ta.atr(14)
atrActive = atr > ta.sma(atr, 14)
// === SMC: BOS + CHOCH ===
bosUp = high > high and low > low
bosDown = low < low and high < high
chochUp = close > high and close < high
chochDown = close < low and close > low
smcBuy = bosUp and chochUp
smcSell = bosDown and chochDown
// === مناطق السيولة ===
liqHigh = ta.highest(high, 30)
liqLow = ta.lowest(low, 30)
liquidityBuyZone = close < liqLow
liquiditySellZone = close > liqHigh
// === حساب النقاط لكل صفقة ===
buyScore = (trendBull ? 1 : 0) + (rsiBull ? 1 : 0) + (volHigh ? 1 : 0) + (bullEngulf ? 1 : 0) + (smcBuy ? 1 : 0) + (bbBreakUp ? 1 : 0) + (nearSupport ? 1 : 0) + (crossUp ? 1 : 0) + (atrActive ? 1 : 0) + (liquidityBuyZone ? 1 : 0)
sellScore = (trendBear ? 1 : 0) + (rsiBear ? 1 : 0) + (volHigh ? 1 : 0) + (bearEngulf ? 1 : 0) + (smcSell ? 1 : 0) + (bbBreakDown ? 1 : 0) + (nearResistance ? 1 : 0) + (crossDown ? 1 : 0) + (atrActive ? 1 : 0) + (liquiditySellZone ? 1 : 0)
// === شروط الإشارات مع منع التكرار خلال آخر 5 شموع ===
var int lastBuyBar = na
var int lastSellBar = na
canBuy = buyScore >= 5 and (na(lastBuyBar) or bar_index - lastBuyBar > 5)
canSell = sellScore >= 5 and (na(lastSellBar) or bar_index - lastSellBar > 5)
if canBuy
lastBuyBar := bar_index
if canSell
lastSellBar := bar_index
showBuy = canBuy
showSell = canSell
// === طول الخطوط ===
var int lineLen = 5
// === رسم الإشارات ===
plotshape(showBuy, title="BUY", location=location.belowbar, style=shape.triangleup, size=size.small, color=color.green)
plotshape(showSell, title="SELL", location=location.abovebar, style=shape.triangledown, size=size.small, color=color.red)
// === خطوط الصفقة ===
var line buyLines = array.new_line(0)
var line sellLines = array.new_line(0)
if (showBuy)
entry = low
label.new(bar_index, entry, "Entry " + str.tostring(entry, format.mintick), style=label.style_label_left, textcolor=color.white, size=size.normal)
tpLevels = array.new_float(5)
array.set(tpLevels, 0, 0.618)
array.set(tpLevels, 1, 1.0)
array.set(tpLevels, 2, 1.272)
array.set(tpLevels, 3, 1.618)
array.set(tpLevels, 4, 2.0)
slLevel = -0.618
for i = 0 to 4
fibLabel = "TP" + str.tostring(i + 1) + " - Fib " + str.tostring(array.get(tpLevels, i))
tp = entry + array.get(tpLevels, i) * atr
line = line.new(bar_index, tp, bar_index + lineLen, tp, color=color.green)
label.new(bar_index + lineLen, tp, fibLabel + " (TP" + str.tostring(i + 1) + ") " + str.tostring(tp, format.mintick), style=label.style_label_right, textcolor=color.lime, size=size.normal)
array.push(buyLines, line)
sl = entry + slLevel * atr
slLine = line.new(bar_index, sl, bar_index + lineLen, sl, color=color.red)
label.new(bar_index + lineLen, sl, "SL " + str.tostring(sl, format.mintick), style=label.style_label_right, textcolor=color.red, size=size.normal)
array.push(buyLines, slLine)
if (showSell)
entry = high
label.new(bar_index, entry, "Entry " + str.tostring(entry, format.mintick), style=label.style_label_left, textcolor=color.white, size=size.normal)
tpLevels = array.new_float(5)
array.set(tpLevels, 0, -0.618)
array.set(tpLevels, 1, -1.0)
array.set(tpLevels, 2, -1.272)
array.set(tpLevels, 3, -1.618)
array.set(tpLevels, 4, -2.0)
slLevel = 0.618
for i = 0 to 4
fibLabel = "TP" + str.tostring(i + 1) + " - Fib " + str.tostring(math.abs(array.get(tpLevels, i)))
tp = entry + array.get(tpLevels, i) * atr
line = line.new(bar_index, tp, bar_index + lineLen, tp, color=color.green)
label.new(bar_index + lineLen, tp, fibLabel + " (TP" + str.tostring(i + 1) + ") " + str.tostring(tp, format.mintick), style=label.style_label_right, textcolor=color.green, size=size.normal)
array.push(sellLines, line)
sl = entry + slLevel * atr
slLine = line.new(bar_index, sl, bar_index + lineLen, sl, color=color.red)
label.new(bar_index + lineLen, sl, "SL " + str.tostring(sl, format.mintick), style=label.style_label_right, textcolor=color.red, size=size.normal)
array.push(sellLines, slLine)
// === متابعة نتائج الصفقة ===
// تحقق نجاح الصفقة (وصل أول TP)
buyHitTP = showBuy and high >= low + 0.618 * atr
sellHitTP = showSell and low <= high - 0.618 * atr
// تحقق فشل الصفقة (ضرب SL)
buyHitSL = showBuy and low <= low - 0.618 * atr
sellHitSL = showSell and high >= high + 0.618 * atr
// رسم الإشارة
plotshape(buyHitTP, title="Buy Success", style=shape.labelup, location=location.abovebar, color=color.green, size=size.small)
plotshape(sellHitTP, title="Sell Success", style=shape.labelup, location=location.abovebar, color=color.green, size=size.small)
plotshape(buyHitSL, title="Buy Failed", style=shape.labeldown, location=location.abovebar, color=color.red, size=size.small)
plotshape(sellHitSL, title="Sell Failed", style=shape.labeldown, location=location.abovebar, color=color.red, size=size.small)
Anomalías en Rendimientos LogarítmicosLogarithmic Returns Anomalies
This indicator detects unusual or extreme movements in the logarithmic returns of price data, helping to identify atypical market events.
It calculates the moving average and standard deviation of logarithmic returns over a configurable period, and visually highlights when the return deviates significantly from the average using thresholds based on multiples of the standard deviation.
Features:
Identifies high and low anomalies in logarithmic returns.
Clear visualization with lines for the mean and upper/lower thresholds.
Circle markers highlight anomalies in a separate pane.
Customizable parameters to adjust indicator sensitivity.
Ideal for quantitative traders and technical analysts looking to spot sharp changes or unusual behavior in financial assets.
Triple Banded Momentum CloudTriple Banded Momentum Cloud (TBMC) is an advanced, customizable momentum indicator that blends multiple moving averages with layered volatility zones. It builds on the DBMC framework by allowing full control over the type and length of three distinct moving averages: signal, trend, and base.
Signal MA tracks short-term price momentum.
Trend MA anchors the core standard deviation bands.
Base MA provides long-term market context.
Three volatility bands (A/B/C) adapt dynamically to market conditions using user-defined standard deviation multipliers.
Momentum Cloud shades between signal and base for a directional read.
This tool is highly adaptable — suitable for trend-following, mean reversion, or volatility breakout strategies. Customization is key: choose MA types (SMA, EMA, RMA, etc.) to match your trading context.
Double Banded Momentum CloudDouble Banded Momentum Cloud (DBMC) extends the logic of BMC by layering two volatility bands around a moving average to create stacked momentum thresholds. It compares a fast Exponential Moving Average (EMA) to a slow Simple Moving Average (SMA), while introducing inner and outer bands based on standard deviation multipliers.
SMA defines the central trend anchor.
EMA captures short-term price momentum.
Band A (inner) represents normal volatility range.
Band B (outer) flags extended or extreme conditions.
Momentum Cloud between EMA and SMA visualizes bias.
By observing how the EMA interacts with these bands, traders can distinguish between ordinary momentum and more aggressive or potentially exhausted moves.