CTZ Top & Bottom FinderAbsolutely! Let’s make a **professional, clear description and trading guide** for your **CTZ Top & Bottom Finder**. I’ll break it into two parts: **Indicator Description** and **How to Trade Using It**.
---
## **CTZ Top & Bottom Finder — Indicator Description**
The **CTZ Top & Bottom Finder** is a **macro Bitcoin market cycle indicator** designed to help traders identify key accumulation and distribution phases. It uses a combination of:
* **Long-term EMAs** to define macro trends
* **Multiple MACDs** to capture bottoming, local tops, rebuy opportunities, and early bull warnings
* **CTZ Cycle Score (0–100)** to quantify market conditions
* **On-chart dashboard** to visualize the cycle score and current market phase
The indicator visually signals:
1. **Accumulation Zones** – periods of deep macro bottoms where buying opportunities are strongest
2. **Strong Buy Signals** – high-confidence entry points during early accumulation
3. **Rebuy Opportunities** – when trend pullbacks create potential for additional positions
4. **Local Top Warnings** – short-term peaks signaling caution or partial profit-taking
5. **Cycle Top Signals** – macro cycle tops where risk of distribution is high
The **CTZ Cycle Score** is calculated by combining trend direction, EMA position, and MACD momentum. The score is plotted on a dashboard with the corresponding market phase:
* **0–20:** Accumulation
* **21–40:** Early Expansion
* **41–60:** Expansion
* **61–80:** Distribution
* **81–100:** Cycle Top Risk
This gives a quantitative framework for both **strategic accumulation** and **risk management at market tops**.
---
## **How to Trade Using the CTZ Top & Bottom Finder**
### **1️⃣ Accumulation Phase (Score 0–20)**
* Market is in a deep macro bottom
* Price is below the long-term EMA
* Strong Buy signals appear when early bullish MACD crosses occur
**Trading Approach:**
* Accumulate Bitcoin or other risk assets gradually
* Use DCA (Dollar-Cost Averaging)
* Avoid leverage until the trend shows confirmation
---
### **2️⃣ Early Expansion Phase (Score 21–40)**
* Market begins trending higher, macro EMA starting to rise
* Trend is bullish but not fully mature
**Trading Approach:**
* Enter or add to positions cautiously
* Focus on swing trades or trend-following
* Watch for early local top warnings
---
### **3️⃣ Expansion Phase (Score 41–60)**
* Market is in a sustained uptrend
* Bullish trend confirmed by EMA alignment
**Trading Approach:**
* Let winners run
* Trail stops to lock in profits
* Avoid panic selling on minor dips
---
### **4️⃣ Distribution Phase (Score 61–80)**
* Market reaches macro highs
* Local top warnings increase
**Trading Approach:**
* Reduce exposure gradually
* Take partial profits
* Be alert for rebuy signals in case of healthy pullbacks
---
### **5️⃣ Cycle Top Risk (Score 81–100)**
* Market likely at or near a macro top
* Cycle Top and Local Top signals dominate
**Trading Approach:**
* Do **not add new long positions**
* Consider scaling out of positions or hedging
* Use this phase to manage risk and protect capital
---
### **Additional Tips**
* Combine **CTZ signals with volume and macro indicators** (like SPX correlation or BTC open interest) for confirmation
* Use **price action and support/resistance** to refine entries and exits
* The **dashboard** gives a quick snapshot of the macro state — always check score + phase together
* This is **not a day-trading indicator**; it’s designed for **daily and higher timeframes** to capture macro cycles
---
✅ **Summary:**
The CTZ Top & Bottom Finder is a **macro-focused framework** that helps you:
* Identify when to **accumulate** at market bottoms
* Spot **rebuy opportunities** during bull trends
* Warn of **local tops** and **macro cycle tops**
* Protect capital during **distribution phases**
Think of it as your **macro cycle GPS** — it doesn’t tell you the exact day to buy or sell, but it tells you **when the environment favors buying, holding, or selling**.
Indicadores y estrategias
abosaud [ Daily + Weekly ]تحديد القمة والقاع لليومي السابق
تحديد القمة والقاع للأسبوع السابق
بشكل تلقائي ودقيق جدا مع امكانية التحكم الكامل في الاعدادات
Identifying the high and low for the previous day
Identifying the high and low for the previous week
Automatically and with high accuracy, with full control over settings
[b2bw] Fib Retracement & Alerts Fib Retracement & Alerts
Precision meets full interactivity. This tool is not your average Fibonacci indicator. It was designed to automate the search for Highs and Lows within a specific timeframe – and the best part: You control everything directly on the chart!
The Highlight: True Drag & Drop Control
Forget the tedious task of typing dates into settings menus.
Interactive Lines: Simply click the vertical Start or End lines on your chart and drag them to your desired position.
Real-Time Adjustment: The Fib levels recalculate instantly as you move the lines.
Features at a Glance:
Global High/Low (Stable): Finds the most stable extremes within the selected window – no more "jumping" levels.
Individual Alert System: Every Fib level has its own bell icon. Receive alerts only for the zones that matter to your strategy.
Smart Labels: Prices and percentage values are displayed cleanly on the edge or directly on the lines.
Support & Feedback
I am constantly working to improve this tool!
Found a bug? Please send me a Private Message (PM) with the details so I can fix it as soon as possible.
Feature Request? If you have ideas for improvements or new features, feel free to drop a comment below!
Note: This script is public and free for everyone to use! (Protected Script).
PART 2: Detailed User Manual (Tutorial)
1. The Search Window & Drag-and-Drop
The green (Start) and red (End) lines define the area analyzed by the indicator.
How to use: Select the indicator on the chart until the "grab handles" appear on the lines. Drag them to significant points (e.g., from the start of the week to the current candle).
2. Settings in Detail (Settings Menu)
Group: Search Window
Strategy:
* Global High/Low (Stable): Finds the absolute high/low in the window. The best choice for most traders.
Pivot Points (Classic): Reacts to fractal pivot structures.
Search Data Timeframe (1440):
Important! This value should usually stay at 1440 (24h). It ensures the indicator finds the true daily extremes (including pre-market wicks), regardless of whether you are on a 1m or 1h chart.
Start/End Search Date: Shows the timestamps of your sliders. Can also be entered manually here.
Group: Classic Pivot Settings
Left/Right Bars: Only active in Pivot mode. Determines how many candles must be lower/higher around a point for it to count as a pivot (Default 10/5).
Group: Manual Reference
✅ USE MANUAL COORDINATES: Check this box if you want to disable the automation. In this mode, only the prices you enter under "High/Low Price" will be used. Perfect for static analysis.
Group: General & Styling
Show Start/End Helper: Toggles the green/red vertical lines. (Recommended: Keep them ON!)
Show Trend Line: Draws a diagonal line from the starting point to the ending point.
Fib Line Style/Width: Change the appearance of the Fib lines (dotted, thickness, etc.).
Extend Right: Extends the lines infinitely to the right.
Labels Position: Where should the prices be placed? (Right, Left, or Off).
Show Price Axis Labels: Displays the Fib prices directly on the TradingView price scale.
Group: Fibonacci Levels
Here you can individually set the following for each of the 13 levels:
Checkbox: Show/Hide.
Value: Change the Fib value (e.g., from 0.618 to 0.61).
Color: Custom color selection for each level.
🔔 Bell: Arms the alert logic for this specific level.
3. Pro Guide: Using the Alert Function Correctly
The tool uses the Pine Script alert() function. This saves you from creating dozens of individual alerts and is extremely efficient.
The Optimal Workflow:
Select: In the settings, activate the bell 🔔 only for the levels you actually want to trade (e.g., 0.618 and 0.786).
Global Check: Ensure that "Enable Alerts System" is checked under "Alerts Global."
Create TradingView Alert:
Press ALT + A or click the Clock (Alerts) icon.
Condition: Fib Retracement v8.5.
CRITICAL: In the second dropdown, select "Any alert() function call".
Name the alert: e.g., "Fib Level Hit."
Result: As soon as a candle touches one of your chosen levels, a notification pops up: "Fib Alert 0.618 hit at 1.0854".
Feedback & Bugs
If you encounter any issues or have suggestions for future updates, please don't hesitate to contact me via Private Message or leave a comment on the script page.
Alpha Net Market Structure EngineBy team Alpha Net make Indecators (Combining the Vi and Line indicators) trader can belived and ez chart
Ichimoku RSI With nearly 10 years of trading experience, I have developed methods to reliably identify trend directions and reversal points and trade them with precision. The Ichimoku RSI combines classic RSI analysis with Ichimoku-inspired visualizations, providing both long-term guidance and precise intraday signals. This allows you to quickly assess trend strength, potential overbought/oversold zones, possible turning points, and upcoming market shifts indicated by cloud contractions. When combined with the Ichimoku Quantum MTF , it becomes unbeatable.
Key Features:
Dynamic Trend Colors:
The RSI line adapts its color to immediately reflect bullish or bearish momentum.
RSI Cloud:
A subtle, adaptive cloud highlights overbought, oversold, or consolidating phases, making trend shifts easier to spot. Narrowing clouds serve as an early warning for upcoming market changes.
Intuitive Visual Support:
Clear signals without cluttering the chart Colored clouds and lines provide instant insight into market behavior Quickly readable for fast decision-making
RSI Status Display:
Shows the current market bias directly on the chart, allowing fast assessment of trend direction and momentum.
Why You’ll Love This Indicator:
The Ichimoku RSI makes trend analysis intuitive and precise. Colored trend cues, adaptive clouds, and the status display instantly indicate when the market is ready for continuation or reversal. Narrowing clouds signal upcoming volatility spikes or trend changes. Ideal for scalping, intraday trading, and swing setups.
Professional, Clear Design:
Minimalistic and highly readable
Suitable for active traders and long-term analysis
Intuitive even without in-depth Ichimoku knowledge
Chart Recommendations:
RSI line visible
Other lines dotted
Disable labels and values
Scale the chart for a clear view
Save your layout for a clean, professional chart image
Support/Resistance - Market Structure ZonesThis indicator’s main purpose is to automatically draw Support and Resistance zones on your chart.
It finds swing highs and swing lows (pivots) and uses them to build market structure. From that structure, it identifies the current regime (Uptrend, Downtrend, Transition, or Range) and then plots the most relevant zones (main levels plus optional flip/historical levels) as colored boxes.
It can also mark simple volume-based hints when price touches a zone:
REJ? = possible rejection (volume below its average)
BRK? = possible break (volume above its average)
A small table shows only the active zones and their low/high boundaries.
RPI Dip Snapshot Strength + Rules (15m/1h Day/Swing)________________________________________
Description
What this indicator is for
This indicator gives you a quick snapshot to see if a market currently looks good for short-term dip trading.
Instead of many complicated stats, it shows a small summary panel that answers one main question:
“Is this symbol currently in a good environment for day or swing dip trading?”
It is designed as a market filter, not a full trading system.
________________________________________
What the table shows
NOW Dip %
This shows how far price has dropped from the recent peak to the current low.
Why this matters:
Dip trading works best when the market is already in a pullback.
If there is no dip, there is no setup.
Think of this row as:
“How deep is the current pullback?”
________________________________________
Events (data confidence)
This tells you how much historical data exists for similar dips.
More events = more reliable statistics.
Typical interpretation:
• Very low → not enough history → unreliable
• Low → weak confidence
• OK → usable
• High / Very high → strong confidence
This row answers:
“Can we trust the statistics?”
This is very important.
Even a strong strength score is less useful if events are low.
________________________________________
Rules check
This row checks the 3 basic conditions for the tool:
1. You are on 15m or 1h timeframe
2. A dip trigger is active
3. There are enough events
If this row is not green, the environment is not ideal.
This row answers:
“Are we allowed to use the signal right now?”
Always check this row first.
________________________________________
Strength (0–100)
This is the main score.
It combines:
• Historical rebound performance
• Reliability of the data
• Overall dip behavior
Simple interpretation:
• 70+ → strong environment
• 60–70 → ok but be careful
• Below 60 → weak environment
This row answers:
“How good were dips historically in this market?”
________________________________________
How to use this indicator properly
Step 1 — Choose the correct timeframe
Use this only on:
• 15 minutes
• 1 hour
These timeframes match the historical analysis behind the indicator.
Using higher timeframes changes the meaning and reduces accuracy.
________________________________________
Step 2 — Check the Rules row first
If the Rules row is red, stop here.
That means:
• Wrong timeframe, or
• No dip trigger, or
• Not enough data.
No valid environment = no trade idea.
________________________________________
Step 3 — Check the Events row
You want OK / High / Very high events.
Low events = weak statistics = higher risk.
This step answers:
“Do we trust the data?”
________________________________________
Step 4 — Look at Strength
Strength is your final filter.
Good workflow:
• Rules = OK
• Events = OK or better
• Strength = High
This combination means the market has historically behaved well after dips.
________________________________________
Step 5 — Use it as a filter, not a signal
This tool does not tell you when to buy or sell.
It tells you:
Which markets are worth looking at right now.
You still need:
• Your own entries
• Your own risk management
• Your own strategy
Think of this as a market scanner.
________________________________________
Very important warnings
This indicator is designed for:
• Day trading
• Short swing trading
It is NOT for long-term investing.
It does not predict long-term trend or fundamentals.
It only measures how markets historically behaved after dips on short timeframes.
Low Events = low reliability.
Ichimoku Quantum MTF With almost 10 years of trading experience, I have developed various methods to reliably identify trend directions and reversal points and trade them with precision. My focus is on trading both long-term and short-term trends: building positions over the long term and intraday reinforcing or hedging these positions. The market tends to repeatedly interact with the clouds, making these areas valuable reference points for entries and exits.
Combined with chart analysis and classic formations such as trend channels, support and resistance levels, head-and-shoulders patterns, or triangles, this indicator becomes particularly powerful, providing nearly unbeatable guidance for trading.
This indicator combines classic Ichimoku logic with multi-timeframe analysis and enhanced visualizations to deliver a fast and precise market overview.
Multi-Timeframe Analysis: Intraday, daily, and weekly clouds are displayed simultaneously, allowing you to identify trend directions and potential reversal points across all timeframes.
Automatic Trend Colors: Candles and clouds dynamically adapt to the current market sentiment – green for bullish, red for bearish – enabling an intuitive understanding of trend strength and directional changes.
Visual Support for Trend Decisions: The clouds clearly indicate support and resistance areas as well as consolidation phases, without cluttering the chart.
Filtered Ichimoku Cloud: Only relevant movements are highlighted, while flat and insignificant phases are hidden. This reduces visual noise and makes important trend changes easier to spot.
Cloud Narrowing as an Early Warning Signal: Narrowing clouds indicate an upcoming change in price behavior, helping to detect volatility spikes or trend reversals early.
Labeled Cloud Centers: Each cloud (Intraday, Daily, Weekly) is labeled directly on the chart, making it easy to distinguish between timeframes without interrupting your analysis.
Professional and Clear Design: Color choices and transparency ensure maximum readability. The indicator is suitable for both active traders and long-term position analysis.
Intuitive Interpretation: Even without in-depth Ichimoku experience, the display allows a quick assessment of trend direction, momentum, and potential reversal points.
Why You’ll Love This Indicator:
With the Ichimoku Quantum MTF, you immediately recognize relevant market movements, assess risks and opportunities faster, and stay informed across all timeframes. Narrowing clouds signal upcoming changes, and clear colors highlight trends at a glance – for professional, efficient trading without guesswork.
Settings:
For a clean chart and optimal results, use the following settings:
Intraday: dotted lines
Daily: dashed lines
Weekly: solid line
Disable labels and values
Scale the chart and save the layout for a clean chart view
Scalping-ready on the 1-minute chart
4-Color Candlestick4-Color Candlestick classifies each candle into a clear market regime, so you can instantly tell whether the market is worth attacking, managing, or avoiding.
One overlay. Four states. No second guessing.
Market regimes
Neutral (Grey) — Price or trend momentum near the baseline.
Consolidation or transition; patience is often rewarded.
Strong Bull (Green) — Confirmed uptrend with strong bullish participation
(expansion candle or gap-up). High conviction environment.
Bull (Orange) — Uptrend remains intact, but momentum is moderate.
Favor continuation with risk control.
Bear (Red) — Bearish structure or trend deterioration.
Defensive or short-biased conditions.
Why traders use it
Decision clarity at a glance
No need to cross-check multiple indicators—candle color reflects the market regime.
Stable and final signals
No repainting, no higher-timeframe dependencies. What you see is what it is.
Consistent across markets
One logic works on stocks, forex, indices, and crypto—build repeatable habits.
Who it’s for
Discretionary traders who want a clean read of trend and strength
Systematic traders using regime filters for entries or position sizing
Anyone who prefers one meaningful overlay instead of many studies
How it works (high level)
Each candle is classified in a fixed order:
Neutral → Strong Bull (including gap-ups) → Bull → Bear.
One candle, one state—no overlap, no ambiguity.
AI Smart Money Profile v4.6
# 🕉️ AI Smart Money Profile v4.6
**by Shiv Shakti Algo Systems**
AI Smart Money Profile v4.6 is a **professional all-in-one trading indicator** designed to combine **Smart Money Concepts (SMC)**, **Market Profile**, **ICT concepts**, and **AI-based trend confirmation** into a single, powerful system.
This indicator is built for traders who want **structure-based trading**, **high-confluence setups**, and **clear visual guidance** without chart clutter.
---
## 🔥 Key Features
### 📊 Market Profile
* Daily / Weekly / Monthly Market Profile
* **POC (Point of Control)**, **VAH (Value Area High)**, **VAL (Value Area Low)**
* Historical & Live Value Areas
* Session bias visualization
### 🎯 Smart Money Concepts (SMC)
* **BOS (Break of Structure)**
* **ChoCH (Change of Character)**
* Liquidity Sweeps (Buy-side & Sell-side)
* Equal Highs & Equal Lows detection
### 📦 Volume Order Blocks
* Volume-based Bullish & Bearish Order Blocks
* Wick / Close mitigation options
* Automatic removal of mitigated blocks
### ⚡ Fair Value Gaps (FVG)
* Bullish & Bearish FVG detection
* Auto-removal after fill or expiry
* Adjustable minimum FVG size
### 🎓 ICT Concepts
* **OTE (Optimal Trade Entry) Zones**
* Structure-aligned premium & discount logic
### 🤖 Smart Trend AI (NEW in v4.6)
* Fusion of **UT Bot + Supertrend**
* Signals only when **both indicators agree**
* Confirmed BUY / SELL labels (non-repainting)
* Full candle coloring (body + wick)
### 📈 EMA Trend System
* EMA 20 / 50 / 200
* Golden Cross & Death Cross signals
* EMA trend direction shown in dashboard
### 💧 Liquidity Zones
* Buy-Side Liquidity (BSL)
* Sell-Side Liquidity (SSL)
* Auto-detection and sweep tracking
### 📊 RSI Momentum
* Positive & Negative momentum labels
* Trend-aligned RSI filtering
### 🕯️ Candlestick Patterns
* Marubozu (Bullish / Bearish)
* Engulfing patterns
* ATR-based label positioning
### 🎯 6-Point Confluence Signal Engine
Signals are generated using:
1. Market Profile position
2. Market Structure (SMC)
3. Order Block presence
4. Fair Value Gap
5. OTE Zone
6. Liquidity Sweep
Only **high-probability, multi-confirmation setups** are highlighted.
### 📊 Smart Dashboard
* Market Structure bias
* Trend direction
* Confluence scores
* OB, FVG, OTE, Liquidity & AI trend status
* Clean and professional UI
---
## 🧠 HOW TO USE (STEP-BY-STEP)
### 1️⃣ Determine Market Bias (Top-Down)
* Check **Market Structure (SMC)**:
* Bullish = Higher Highs & Higher Lows
* Bearish = Lower Highs & Lower Lows
* Use **EMA 20 / 50 / 200** alignment:
* EMA20 > EMA50 > EMA200 → Bullish bias
* EMA20 < EMA50 < EMA200 → Bearish bias
* Confirm bias using **Smart Trend AI** (Green = Bullish, Red = Bearish)
---
### 2️⃣ Identify High-Probability Zones
Look for price interaction with:
* **Value Area (VAH / VAL / POC)**
* **Volume Order Blocks**
* **Fair Value Gaps (FVG)**
* **OTE Zones**
* **Liquidity Levels (BSL / SSL)**
👉 Best trades happen when **multiple zones overlap**.
---
### 3️⃣ Wait for Liquidity & Structure Confirmation
* Price sweeps **liquidity** (BSL or SSL)
* Market prints **BOS or ChoCH**
* Confirms direction with bullish or bearish candle
This avoids early or emotional entries.
---
### 4️⃣ Confirm with AI & Momentum
* **Smart Trend AI** must agree with trade direction
* **RSI Momentum**:
* Positive = bullish strength
* Negative = bearish strength
* Avoid trades when AI shows “MIX” or RSI is neutral
---
### 5️⃣ Enter Trade
* Use **BUY / SELL labels** only when:
* Confluence score ≥ minimum setting
* Candle closes with structure confirmation
* Entry can be taken:
* At candle close, or
* On pullback into OB / FVG
---
### 6️⃣ Risk Management (Very Important)
* Always use **Stop Loss**:
* Below swing low (BUY)
* Above swing high (SELL)
* Risk only **1–2% per trade**
* Targets:
* Previous high/low
* Liquidity levels
* Opposite Value Area
---
## ⚙️ Recommended Settings
* Timeframes: **5m, 15m, 30m, 1H**
* Works best on:
* Indices
* Forex
* Crypto
* Enable **ATR filter** for volatile markets
---
## ⚠️ DISCLAIMER (IMPORTANT)
⚠️ **DISCLAIMER:**
This indicator is provided for **educational and informational purposes only**.
It does **NOT** constitute financial advice, investment advice, or trading recommendations.
Trading in financial markets involves **substantial risk**, and you may lose part or all of your capital.
Past performance is **not indicative of future results**.
The creator of this indicator is **not responsible for any losses** resulting from the use of this tool.
Always:
* Apply proper risk management
* Test strategies on demo or paper trading
* Seek professional financial advice if required
**You are solely responsible for your trading decisions.**
---
## 🙏 JAI SHIV SHAKTI 🙏
**Trade Smart. Trade Disciplined.**
CA sunil- Share Market Dashboard (13 Points Fixed)📊 The 13 Key Metrics (How it Works)
The dashboard displays a table in the Top-Right corner with 13 critical data points:
Sector / Industry: Instantly identifies the sector (e.g., Finance, Tech) to help you track sector rotation.
Broker/Tech Opinion: A smart algorithm that combines 200 EMA, 50 EMA, and RSI.
🟢 STRONG BUY: Price > 200 EMA & RSI > 50.
🔴 STRONG SELL: Price < 200 EMA & RSI < 50.
P/E Ratio (Fundamental): Shows the Price-to-Earnings ratio to judge if the stock is Overvalued or Undervalued compared to its earnings.
EPS (TTM): Displays Trailing 12-Months Earnings Per Share.
News / Activity Sensor: Detects Volume Spikes. If Volume is 2.5x the average, it turns YELLOW, indicating potential news or big player entry.
Volume Signal: Compares current volume with the 20-day average.
Dynamic Stop Loss: Uses ATR (Average True Range) to calculate a safe Stop Loss level based on market volatility.
Shows Buy SL if the trend is Bullish.
Shows Sell SL if the trend is Bearish.
Pivot Point: Daily Pivot level for intraday reference.
Resistance (R1): The immediate ceiling for the price.
Support (S1): The immediate floor for the price.
Relative Strength (vs Nifty 50): Compares the stock's performance against the Benchmark (Nifty).
🚀 Outperforming: Stock is stronger than the market.
🐢 Underperforming: Stock is weaker than the market.
Trend Comment: Long-term view based on the 200 EMA.
OB / OS Status (RSI Filter):
⚠️ Overbought (>70): Risk of correction.
♻️ Oversold (<30): Potential value buying zone.
🛠️ How to Trade Using This Dashboard
✅ Perfect Long Entry:
Opinion is STRONG BUY.
Relative Strength says "Outperforming Nifty".
OB/OS Status is NOT "Overbought".
Action: Buy with the suggested Stop Loss.
❌ Avoid Long Entry:
Opinion is Sell.
P/E is extremely high (check sector average).
OB/OS Status says "Overbought".
purple candlet.me/gdchart2030
linktr.ee
شمعة الاعصار
إشارة حركة قوية قادمة
عند ظهور الشمعة البنفسجية يبدأ السوق مرحلة الاستعداد لانطلاقة سعرية واضحة.
بعدها يتشكل نطاق سعري يمثل منطقة قرار السوق.
طريقة الدخول:
اختراق الخط العلوي = دخول شراء
كسر الخط السفلي = دخول بيع
وقف الخسارة:
عكس جهة الكسر مباشرة.
الفكرة ببساطة:
الإشارة تجهّز الحركة… والكسر يعطيك الدخول مع الاتجاه.
أداة مصممة لالتقاط الانطلاقات بدل مطاردة السوق.
The market is preparing for a strong move
When the purple candle appears, it signals that the market is entering a phase of preparation for a clear price expansion. A range then forms, representing the market’s upcoming decision zone.
Entry rules:
• Break above the upper level ➜ Buy
• Break below the lower level ➜ Sell
Stop loss:
Place it directly beyond the opposite side of the breakout.
In simple terms:
The signal comes before the move… the breakout gives you entry with the trend instead of chasing price.
Built to capture strong expansions with confidence and discipline.
Forex Fire - Bull & Bear Zones📊 FOREX FIRE - ALL PAIRS SUPPLY & DEMAND ZONES 📊
═══════════════════════════════════════════════════════════════
🔥 THE ULTIMATE MULTI-PAIR ZONE MANAGEMENT SYSTEM 🔥
Created exclusively for the Forex Fire Trading Community by John @ www.forexfiremembers.com
This is THE most comprehensive supply and demand zone indicator on TradingView - designed to manage zones across ALL 24 major forex pairs from a SINGLE indicator!
═══════════════════════════════════════════════════════════════
⭐ WHAT MAKES THIS INDICATOR SPECIAL?
═══════════════════════════════════════════════════════════════
✅ ONE INDICATOR - ALL 24 FOREX PAIRS
No more cluttering your chart with multiple indicators. Manage every pair's bull and bear zones from one central location.
✅ BATCH COPY FIRE ZONES TO YOUR COMMUNITY
Share your institutional-level supply and demand zones with your entire community! Simply configure your zones once, export the indicator settings, and your team can import them instantly - everyone trades with the EXACT same zones!
✅ ONE-STOP ALERT SYSTEM
Set up alerts across ALL 24 pairs simultaneously. Never miss a zone entry again! Get notified the moment price enters ANY of your configured zones across multiple pairs.
✅ PROFESSIONAL ZONE VISUALIZATION
Clean, color-coded boxes that extend automatically to the right. Bull zones in green, Bear zones in red - instantly identify key institutional levels.
✅ SMART PIP DETECTION
Automatically uses correct pip values (0.01 for JPY pairs, 0.0001 for all others). No manual configuration needed!
═══════════════════════════════════════════════════════════════
📦 INCLUDED FOREX PAIRS (24 TOTAL)
═══════════════════════════════════════════════════════════════
💵 MAJOR PAIRS:
• EURUSD • GBPUSD • USDJPY • USDCHF • USDCAD
🌍 EUR CROSSES:
• EURAUD • EURCAD • EURGBP • EURNZD
🇬🇧 GBP CROSSES:
• GBPAUD • GBPCAD • GBPCHF • GBPJPY • GBPNZD
🦘 AUD CROSSES:
• AUDUSD • AUDCAD • AUDCHF • AUDNZD
🥝 NZD CROSSES:
• NZDUSD • NZDCAD • NZDJPY
🍁🇨🇭 CAD & CHF CROSSES:
• CADJPY • CADCHF • CHFJPY
═══════════════════════════════════════════════════════════════
🎯 HOW TO USE THIS INDICATOR
═══════════════════════════════════════════════════════════════
📍 STEP 1: ADD TO YOUR CHART
Add this indicator to ANY chart (the zones will show on all charts once configured)
📍 STEP 2: CONFIGURE YOUR ZONES
Open indicator settings and scroll to the pair you want to configure:
• Enable Bull Zone ✓
• Set Bull Top Price (upper boundary of demand zone)
• Set Bull Bottom Price (lower boundary of demand zone)
• Set Bull Start Bar (how many bars back the zone begins)
• Enable Bear Zone ✓
• Set Bear Top Price (upper boundary of supply zone)
• Set Bear Bottom Price (lower boundary of supply zone)
• Set Bear Start Bar (how many bars back the zone begins)
📍 STEP 3: REPEAT FOR ALL PAIRS YOU TRADE
Each pair has its own dedicated settings group. Configure as many or as few as you need.
📍 STEP 4: SET UP ALERTS
Click the indicator's "..." menu → "Add alert"
You'll receive notifications when price enters ANY enabled zone by 10 pips (customizable)
═══════════════════════════════════════════════════════════════
🎨 CUSTOMIZATION OPTIONS
═══════════════════════════════════════════════════════════════
⚙️ DISPLAY SETTINGS:
• Show/Hide Zone Labels
• Bull Zone Color (default: semi-transparent green)
• Bear Zone Color (default: semi-transparent red)
• Border Width (1-5 pixels)
• Label Size (Tiny/Small/Normal/Large)
⚙️ ALERT SETTINGS:
• Enable/Disable Alerts Globally
• Alert Trigger Distance (default: 10 pips into zone)
• Automatic Pip Value Detection per pair
═══════════════════════════════════════════════════════════════
🔔 ALERT SYSTEM EXPLAINED
═══════════════════════════════════════════════════════════════
🎯 SMART DIRECTIONAL ALERTS:
• Bull Zones: Alert when price DROPS into the zone from above (demand test)
• Bear Zones: Alert when price RISES into the zone from below (supply test)
• Customizable pip depth (default 10 pips into zone)
📱 ALERT MESSAGE FORMAT:
"GBPUSD: Entered Bull Zone at 1.3210 (10 pips in)"
"EURUSD: Entered Bear Zone at 1.0850 (10 pips in)"
🔕 NO SPAM:
Alerts trigger once per bar to prevent notification overload
═══════════════════════════════════════════════════════════════
💡 USE CASES & STRATEGIES
═══════════════════════════════════════════════════════════════
🎓 FOR EDUCATORS & SIGNAL PROVIDERS:
Perfect for trading communities! Configure your institutional zones once, share settings with members. Everyone sees the SAME zones on their charts - perfect for group trading and education.
📊 FOR MULTI-PAIR TRADERS:
Monitor supply and demand zones across 24 pairs simultaneously. Get alerted to opportunities across your entire watchlist from a single indicator.
🔍 FOR SWING TRADERS:
Mark your 4H or Daily supply/demand zones and let the indicator alert you when price returns to these levels - perfect for swing trade setups.
📈 FOR SCALPERS & DAY TRADERS:
Use on lower timeframes to mark intraday institutional zones. Combine with other Forex Fire indicators for complete trading system.
═══════════════════════════════════════════════════════════════
⚡ TECHNICAL SPECIFICATIONS
═══════════════════════════════════════════════════════════════
• Pine Script Version: 6
• Max Zones: 48 total (Bull + Bear for each of 24 pairs)
• Zone Extension: Automatic (extends 500 bars right)
• Works on ALL Timeframes: 1M to 1W
• Pip Values: Automatic (JPY pairs = 0.01, Others = 0.0001)
• Performance: Optimized for fast loading
• Updates: Real-time on every bar close
═══════════════════════════════════════════════════════════════
📚 FOREX FIRE METHODOLOGY
═══════════════════════════════════════════════════════════════
This indicator is built on institutional trading concepts:
🏦 SUPPLY & DEMAND ZONES
Mark areas where institutional players have shown significant interest - zones where banks and institutions are likely to defend price levels.
📊 4H TIMEFRAME FOCUS
Designed primarily for 4H supply/demand analysis (though works on all timeframes) - the sweet spot for swing trading institutional levels.
🎯 PRECISION ENTRIES
10-pip alert depth ensures you're notified when price COMMITS to the zone, not just touches it - reducing false signals.
═══════════════════════════════════════════════════════════════
🔥 FOREX FIRE COMMUNITY BENEFITS
═══════════════════════════════════════════════════════════════
This indicator is a GAME-CHANGER for trading communities:
✅ CONSISTENCY: Everyone trades the same zones
✅ EDUCATION: Clear visual representation of institutional levels
✅ EFFICIENCY: No manual zone drawing required
✅ SCALABILITY: Update zones once, community gets updates
✅ ACCOUNTABILITY: Track zone reactions across all members
═══════════════════════════════════════════════════════════════
📋 QUICK START CHECKLIST
═══════════════════════════════════════════════════════════════
□ Add indicator to chart
□ Open settings (gear icon)
□ Navigate to first pair you trade (e.g., GBPUSD)
□ Enable Bull Zone
□ Enter Bull Zone coordinates (Top, Bottom, Start Bar)
□ Enable Bear Zone
□ Enter Bear Zone coordinates (Top, Bottom, Start Bar)
□ Repeat for other pairs you monitor
□ Enable alerts (indicator menu → Add alert)
□ Choose notification method (popup/email/webhook)
□ (Optional) Save template to share with community
□ Start trading with institutional-level zones!
═══════════════════════════════════════════════════════════════
💬 SUPPORT & RESOURCES
═══════════════════════════════════════════════════════════════
🌐 Forex Fire Website: www.forexfiremembers.com
📱 Join Our Discord Community join.forexfiremembers.com
📺 YouTube: Search "Forex Fire"
📧 Questions? Contact through website
═══════════════════════════════════════════════════════════════
⚠️ IMPORTANT NOTES
═══════════════════════════════════════════════════════════════
• Zones must be manually configured - this indicator does NOT auto-detect zones
• This is by design: YOU choose the institutional levels that matter
• Past performance does not guarantee future results
• Always use proper risk management
• This indicator works best when combined with proper price action analysis
• Recommended for intermediate to advanced traders familiar with supply/demand concepts
═══════════════════════════════════════════════════════════════
🎯 PERFECT FOR:
═══════════════════════════════════════════════════════════════
✓ Trading educators & mentors
✓ Signal providers & analysts
✓ Trading communities & Discord groups
✓ Multi-pair swing traders
✓ Institutional-style traders
✓ Anyone serious about supply & demand trading
═══════════════════════════════════════════════════════════════
❌ NOT SUITABLE FOR:
═══════════════════════════════════════════════════════════════
✗ Complete beginners (learn S&D concepts first)
✗ Traders looking for "automatic" zone detection
✗ Single-pair traders (may be overkill)
✗ Those wanting a "holy grail" indicator (this is a tool, not a system)
═══════════════════════════════════════════════════════════════
🏆 WHY FOREX FIRE?
═══════════════════════════════════════════════════════════════
With 10+ years of trading experience, Forex Fire specializes in:
• Institutional trading concepts
• Smart Money analysis
• Supply & Demand strategies
• ICT (Inner Circle Trader) methodologies
• Professional EA development
This indicator represents years of experience distilled into one powerful tool for serious forex traders.
═══════════════════════════════════════════════════════════════
📝 VERSION HISTORY
═══════════════════════════════════════════════════════════════
v1.0 - Initial Release
• 24 forex pairs
• Bull & Bear zones per pair
• Smart alert system
• Automatic pip detection
• Community sharing capability
═══════════════════════════════════════════════════════════════
🔐 TERMS OF USE
═══════════════════════════════════════════════════════════════
This indicator is provided for educational and informational purposes. Trading forex carries significant risk. Always:
• Use proper risk management
• Never risk more than you can afford to lose
• Practice on demo before live trading
• Seek professional financial advice when needed
═══════════════════════════════════════════════════════════════
🔥 TRADE LIKE THE INSTITUTIONS. TRADE WITH FOREX FIRE. 🔥
═══════════════════════════════════════════════════════════════
© 2026 Forex Fire Trading | www.forexfiremembers.com
All Rights Reserved
#ForexFire #SupplyAndDemand #InstitutionalTrading #ForexZones
#MultiPairTrading #TradingCommunity #ForexEducation #SmartMoney
Multi-TF Doji Detector with Sweep Removaldoji indicator highlighting 30m 1h 2h 4h, good for reversals or targeting Doji liquidity
RCR Buy SellIndicators overlays on chart and flags buy and sell labels for traders to take decision.
Trading PlanDisplays two fixed on-chart panels (tables): GREEN = LONG IDEA and RED = SHORT IDEA.
Each panel contains three user-editable fields in the settings:
Where to make business (Entry)
Where I want to exit
Story
Each panel also has an Active checkbox:
Checked → shows “✓ PLAN ACTIVE” with the normal panel color.
Unchecked → shows “PLAN NOT ACTIVE” with a yellow background (and dark text for readability).
Position (top/bottom/left/right/center) and text size are configurable in the indicator settings.
Bot ATR + EMA Cross//@version=6
// © 2024 UT Bot Trading System
// Protected script - Do not copy or redistribute
indicator(title="UT Bot ATR + EMA Cross", shorttitle="UTEMA Cross", overlay=true, max_labels_count=500)
// ==================== SECURITY & PROTECTION ====================
// Script protection - Prevent unauthorized copying
securityKey = "UTBotPro2024"
scriptVersion = "v2.1.3"
protectedScript = true
// Display warning message
if barstate.islast
var table warningTable = table.new(position = position.bottom_right, columns = 1, rows = 4,
bgcolor = color.new(color.black, 90), border_width = 2,
border_color = color.red)
table.cell(warningTable, 0, 0, "⚠️ PROTECTED SCRIPT",
text_color = color.yellow, bgcolor = color.new(color.red, 70))
table.cell(warningTable, 0, 1, "UT Bot Trading System",
text_color = color.white, bgcolor = color.new(color.black, 80))
table.cell(warningTable, 0, 2, "Version: " + scriptVersion,
text_color = color.white, bgcolor = color.new(color.black, 80))
table.cell(warningTable, 0, 3, "© 2024 All Rights Reserved",
text_color = color.white, bgcolor = color.new(color.black, 80))
// ==================== INPUTS ====================
// ATR Trailing Stop Inputs
atrPeriod = input.int(10, title="ATR Period", minval=1, group="ATR Settings")
sensitivity = input.float(1.0, title="Key Value Sensitivity", minval=0.1, step=0.1, group="ATR Settings")
useEmaFilter = input.bool(true, title="Use EMA Filter for ATR Signals", group="ATR Settings")
showTable = input.bool(true, title="Show Signal Table", group="ATR Settings")
// EMA Crossover Theory Inputs
fastEma = input.int(9, title="Fast EMA Length", minval=1, group="EMA Crossover Settings")
slowEma = input.int(21, title="Slow EMA Length", minval=1, group="EMA Crossover Settings")
signalEma = input.int(1, title="Signal EMA Length", minval=1, group="EMA Crossover Settings")
useEmaCrossFilter = input.bool(true, title="Use EMA Crossover Filter", group="EMA Crossover Settings")
// RSI Settings for Strong Signals
rsiLength = input.int(14, title="RSI Length", minval=1, group="RSI Settings")
strongBuyRsiThreshold = input.int(30, title="Strong Buy RSI <=", minval=0, maxval=50, group="RSI Settings")
strongSellRsiThreshold = input.int(65, title="Strong Sell RSI >=", minval=50, maxval=100, group="RSI Settings")
useRsiFilter = input.bool(true, title="Use RSI Filter for Strong Signals", group="RSI Settings")
// Display Options
showTrailingStop = input.bool(true, title="Show Trailing Stop", group="Display Options")
showEmaLines = input.bool(true, title="Show EMA Lines", group="Display Options")
showLabels = input.bool(true, title="Show Signal Labels", group="Display Options")
labelOffset = input.float(1.0, title="Label Offset Factor", minval=0.1, maxval=3.0, step=0.1, group="Display Options")
labelSize = input.string("Normal", title="Label Size", options= , group="Display Options")
// ==================== CALCULATIONS ====================
// Calculate RSI
rsiValue = ta.rsi(close, rsiLength)
// Calculate EMAs
fastEmaLine = ta.ema(close, fastEma)
slowEmaLine = ta.ema(close, slowEma)
signalLine = ta.ema(close, signalEma)
// EMA Crossover Signals
emaBullishCross = ta.crossover(fastEmaLine, slowEmaLine)
emaBearishCross = ta.crossunder(fastEmaLine, slowEmaLine)
// EMA Trend Direction
emaTrendBullish = fastEmaLine > slowEmaLine
emaTrendBearish = fastEmaLine < slowEmaLine
// ATR Trailing Stop Calculation
atrValue = ta.atr(atrPeriod)
var float trailingStop = na
nLoss = atrValue * sensitivity
h = math.max(high, close )
l = math.min(low, close )
if (na(trailingStop ))
trailingStop := 0.0
else if (close > trailingStop and close > trailingStop )
trailingStop := math.max(trailingStop , l - nLoss)
else if (close < trailingStop and close < trailingStop )
trailingStop := math.min(trailingStop , h + nLoss)
else if (close > trailingStop )
trailingStop := l - nLoss
else
trailingStop := h + nLoss
// Original UT Bot signals
signalEmaBuy = ta.crossover(signalLine, trailingStop)
signalEmaSell = ta.crossunder(signalLine, trailingStop)
// Price-based ATR signals
priceBuySignal = ta.crossover(close, trailingStop)
priceSellSignal = ta.crossunder(close, trailingStop)
// ==================== SIGNAL FILTERING ====================
// EMA Filter for ATR signals
atrBuyWithEmaFilter = priceBuySignal and (not useEmaFilter or emaTrendBullish)
atrSellWithEmaFilter = priceSellSignal and (not useEmaFilter or emaTrendBearish)
// RSI Conditions
rsiOversoldForStrong = rsiValue <= strongBuyRsiThreshold
rsiOverboughtForStrong = rsiValue >= strongSellRsiThreshold
// Combined signals (EMA crossover + ATR)
basicStrongBuy = signalEmaBuy and emaBullishCross
basicStrongSell = signalEmaSell and emaBearishCross
// RSI-Filtered Strong Signals
strongBuySignal = basicStrongBuy and (not useRsiFilter or rsiOversoldForStrong)
strongSellSignal = basicStrongSell and (not useRsiFilter or rsiOverboughtForStrong)
// Trend-confirmed signals
trendConfirmedBuy = signalEmaBuy and emaTrendBullish
trendConfirmedSell = signalEmaSell and emaTrendBearish
// Determine which signals to show (priority based)
showStrongBuy = strongBuySignal and showLabels
showStrongSell = strongSellSignal and showLabels
showBasicStrongBuy = basicStrongBuy and showLabels and not strongBuySignal
showBasicStrongSell = basicStrongSell and showLabels and not strongSellSignal
showTrendBuy = trendConfirmedBuy and showLabels and not strongBuySignal and not basicStrongBuy
showTrendSell = trendConfirmedSell and showLabels and not strongSellSignal and not basicStrongSell
showUtBuy = signalEmaBuy and showLabels and not strongBuySignal and not basicStrongBuy and not trendConfirmedBuy
showUtSell = signalEmaSell and showLabels and not strongSellSignal and not basicStrongSell and not trendConfirmedSell
// ==================== LABEL POSITION & STYLE ====================
// Get label size
getLabelSize() =>
if labelSize == "Small"
size.tiny
else if labelSize == "Large"
size.large
else
size.normal
// Calculate perfect position next to candles
getBuyLabelPosition() =>
// Position at the LOW of the candle with small offset
low - (atrValue * 0.1 * labelOffset)
getSellLabelPosition() =>
// Position at the HIGH of the candle with small offset
high + (atrValue * 0.1 * labelOffset)
// ==================== PLOTTING ====================
// Plot Trailing Stop
plotTrailingStop = showTrailingStop ? trailingStop : na
plot(plotTrailingStop, title="Trailing Stop",
color=signalEmaBuy ? color.green : (signalEmaSell ? color.red : color.orange),
linewidth=2)
// Plot EMA Lines
plot(fastEmaLine, title="Fast EMA", color=color.blue, linewidth=2, display=showEmaLines ? display.all : display.none)
plot(slowEmaLine, title="Slow EMA", color=color.purple, linewidth=2, display=showEmaLines ? display.all : display.none)
plot(signalLine, title="Signal EMA", color=color.yellow, linewidth=1, display=showEmaLines ? display.all : display.none)
// ==================== PERFECTLY ALIGNED LABELS ====================
// STRONG BUY - Positioned exactly at candle low (Bright Pink)
if showStrongBuy
label.new(bar_index, getBuyLabelPosition(), "RSB",
color=color.rgb(255, 20, 147), textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// STRONG SELL - Positioned exactly at candle high (Dark Pink)
if showStrongSell
label.new(bar_index, getSellLabelPosition(), "RRSS",
color=color.rgb(199, 21, 133), textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// BASIC STRONG BUY
if showBasicStrongBuy
label.new(bar_index, getBuyLabelPosition(), "B",
color=color.blue, textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// BASIC STRONG SELL
if showBasicStrongSell
label.new(bar_index, getSellLabelPosition(), "S",
color=color.orange, textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// TREND CONFIRMED BUY
if showTrendBuy
label.new(bar_index, getBuyLabelPosition(), "B",
color=color.green, textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// TREND CONFIRMED SELL
if showTrendSell
label.new(bar_index, getSellLabelPosition(), "S",
color=color.red, textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// UT BOT BUY
if showUtBuy
label.new(bar_index, getBuyLabelPosition(), "B",
color=color.new(color.green, 70), textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// UT BOT SELL
if showUtSell
label.new(bar_index, getSellLabelPosition(), "S",
color=color.new(color.red, 70), textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// EMA CROSSOVER LABELS (VERY TINY arrows)
emaBuyPos = low - (atrValue * 0.3 * labelOffset)
emaSellPos = high + (atrValue * 0.3 * labelOffset)
if emaBullishCross and showLabels and not strongBuySignal and not basicStrongBuy and not trendConfirmedBuy
label.new(bar_index, emaBuyPos, "▲",
color=color.green, textcolor=color.white,
style=label.style_none, size=size.tiny,
yloc=yloc.price, textalign=text.align_center)
if emaBearishCross and showLabels and not strongSellSignal and not basicStrongSell and not trendConfirmedSell
label.new(bar_index, emaSellPos, "▼",
color=color.red, textcolor=color.white,
style=label.style_none, size=size.tiny,
yloc=yloc.price, textalign=text.align_center)
// ==================== SIGNAL TABLE ====================
if showTable
var table signalTable = table.new(position = position.top_right, columns = 3, rows = 6,
bgcolor = color.new(color.black, 80), border_width = 1,
border_color = color.white)
// Headers
table.cell(signalTable, 0, 0, "Signal", text_color = color.white, bgcolor = color.new(color.blue, 50))
table.cell(signalTable, 1, 0, "Type", text_color = color.white, bgcolor = color.new(color.blue, 50))
table.cell(signalTable, 2, 0, "Price/RSI", text_color = color.white, bgcolor = color.new(color.blue, 50))
// Current RSI
rsiFormatted = str.tostring(math.round(rsiValue, 1))
table.cell(signalTable, 0, 1, "RSI", text_color = color.white)
table.cell(signalTable, 1, 1, rsiFormatted,
text_color = rsiOverboughtForStrong ? color.red : (rsiOversoldForStrong ? color.rgb(255, 20, 147) : color.white))
table.cell(signalTable, 2, 1, "B≤" + str.tostring(strongBuyRsiThreshold) + " S≥" + str.tostring(strongSellRsiThreshold),
text_color = color.white)
// Strong Signal
var float lastStrongPrice = na
var string lastStrongType = ""
if strongBuySignal
lastStrongPrice := close
lastStrongType := "RSB (Strong)"
else if strongSellSignal
lastStrongPrice := close
lastStrongType := "RRSS (Strong)"
table.cell(signalTable, 0, 2, "Strong", text_color = color.white)
table.cell(signalTable, 1, 2, lastStrongType,
text_color = strongBuySignal ? color.rgb(255, 20, 147) : (strongSellSignal ? color.rgb(199, 21, 133) : color.gray))
table.cell(signalTable, 2, 2, lastStrongPrice > 0 ? str.tostring(lastStrongPrice, "#.##") : "—",
text_color = strongBuySignal ? color.rgb(255, 20, 147) : (strongSellSignal ? color.rgb(199, 21, 133) : color.gray))
// Basic Strong
var float lastBasicPrice = na
var string lastBasicType = ""
if basicStrongBuy
lastBasicPrice := close
lastBasicType := "B (Basic)"
else if basicStrongSell
lastBasicPrice := close
lastBasicType := "S (Basic)"
table.cell(signalTable, 0, 3, "Basic", text_color = color.white)
table.cell(signalTable, 1, 3, lastBasicType,
text_color = basicStrongBuy ? color.blue : (basicStrongSell ? color.orange : color.gray))
table.cell(signalTable, 2, 3, lastBasicPrice > 0 ? str.tostring(lastBasicPrice, "#.##") : "—",
text_color = basicStrongBuy ? color.blue : (basicStrongSell ? color.orange : color.gray))
// UT Bot Signal
var float lastUtPrice = na
var string lastUtType = ""
if signalEmaBuy
lastUtPrice := close
lastUtType := "B (UT)"
else if signalEmaSell
lastUtPrice := close
lastUtType := "S (UT)"
table.cell(signalTable, 0, 4, "UT Bot", text_color = color.white)
table.cell(signalTable, 1, 4, lastUtType,
text_color = signalEmaBuy ? color.green : (signalEmaSell ? color.red : color.gray))
table.cell(signalTable, 2, 4, lastUtPrice > 0 ? str.tostring(lastUtPrice, "#.##") : "—",
text_color = signalEmaBuy ? color.green : (signalEmaSell ? color.red : color.gray))
// Summary - Current Candle
table.cell(signalTable, 0, 5, "NOW", text_color = color.white, bgcolor = color.new(color.gray, 50))
var string currentSignal = "—"
var color currentColor = color.gray
if strongBuySignal
currentSignal := "RSB (Strong)"
currentColor := color.rgb(255, 20, 147)
else if strongSellSignal
currentSignal := "RRSS (Strong)"
currentColor := color.rgb(199, 21, 133)
else if basicStrongBuy
currentSignal := "B (Basic)"
currentColor := color.blue
else if basicStrongSell
currentSignal := "S (Basic)"
currentColor := color.orange
else if signalEmaBuy
currentSignal := "B (UT)"
currentColor := color.green
else if signalEmaSell
currentSignal := "S (UT)"
currentColor := color.red
else if emaBullishCross
currentSignal := "↑ EMA"
currentColor := color.green
else if emaBearishCross
currentSignal := "↓ EMA"
currentColor := color.red
table.cell(signalTable, 1, 5, currentSignal, text_color = currentColor, bgcolor = color.new(color.gray, 50))
table.cell(signalTable, 2, 5, str.tostring(close, "#.##"), text_color = color.white, bgcolor = color.new(color.gray, 50))
// ==================== ALERTS ====================
// Strong Signals with RSI Filter
alertcondition(strongBuySignal, title="STRONG Buy Signal",
message="STRONG BUY: UT Bot + EMA Crossover + RSI <= 30 at {{close}}")
alertcondition(strongSellSignal, title="STRONG Sell Signal",
message="STRONG SELL: UT Bot + EMA Crossover + RSI >= 65 at {{close}}")
// Basic Strong Signals
alertcondition(basicStrongBuy, title="Basic Strong Buy",
message="Basic STRONG BUY: UT Bot + EMA Crossover at {{close}}")
alertcondition(basicStrongSell, title="Basic Strong Sell",
message="Basic STRONG SELL: UT Bot + EMA Crossover at {{close}}")
// UT Buy Alert
utBuyAlert = input.bool(true, title="Enable UT Buy Alert", group="UT Bot Alerts")
utSellAlert = input.bool(true, title="Enable UT Sell Alert", group="UT Bot Alerts")
// UT Bot Buy Signals (filtered)
utBuySignal = signalEmaBuy and (not useEmaFilter or emaTrendBullish)
utSellSignal = signalEmaSell and (not useEmaFilter or emaTrendBearish)
// UT Bot Price-based Alerts
alertcondition(utBuyAlert and utBuySignal, title="UT Bot Buy",
message="UT BOT BUY: Signal EMA crossed above Trailing Stop at {{close}}")
alertcondition(utSellAlert and utSellSignal, title="UT Bot Sell",
message="UT BOT SELL: Signal EMA crossed below Trailing Stop at {{close}}")
// Price-based ATR Alerts
priceBuyAlert = input.bool(false, title="Enable Price Buy Alert", group="ATR Alerts")
priceSellAlert = input.bool(false, title="Enable Price Sell Alert", group="ATR Alerts")
// Price-based ATR Signals (filtered)
priceAtBuySignal = priceBuySignal and (not useEmaFilter or emaTrendBullish)
priceAtSellSignal = priceSellSignal and (not useEmaFilter or emaTrendBearish)
alertcondition(priceBuyAlert and priceAtBuySignal, title="ATR Price Buy",
message="ATR PRICE BUY: Price crossed above Trailing Stop at {{close}}")
alertcondition(priceSellAlert and priceAtSellSignal, title="ATR Price Sell",
message="ATR PRICE SELL: Price crossed below Trailing Stop at {{close}}")
// EMA Crossovers
alertcondition(emaBullishCross, title="EMA Bullish Crossover", message="Fast EMA crossed above Slow EMA")
alertcondition(emaBearishCross, title="EMA Bearish Crossover", message="Fast EMA crossed below Slow EMA")
AG_Holographic_ScreenerAn updated version of AG_power_screener;new holographic screener helps you to:
1)Get momentum,cumilative gain,RVOL,EMA,Volatility adjusted Dema,POC,Volatility adjusted channel values of different timeframes besides same values of benchmark symbol like BTC&indexes...
2)User friendly icons to esily identify changes,market directions related to values.
3)Special algorithmic calculations finally show you trade direction
4)Alert available version
Bot ATR + EMA world no 1 scalp//@version=6
// © 2024 UT Bot Trading System
// Protected script - Do not copy or redistribute
indicator(title="UT Bot ATR + EMA Cross", shorttitle="UTEMA Cross", overlay=true, max_labels_count=500)
// ==================== SECURITY & PROTECTION ====================
// Script protection - Prevent unauthorized copying
securityKey = "UTBotPro2024"
scriptVersion = "v2.1.3"
protectedScript = true
// Display warning message
if barstate.islast
var table warningTable = table.new(position = position.bottom_right, columns = 1, rows = 4,
bgcolor = color.new(color.black, 90), border_width = 2,
border_color = color.red)
table.cell(warningTable, 0, 0, "⚠️ PROTECTED SCRIPT",
text_color = color.yellow, bgcolor = color.new(color.red, 70))
table.cell(warningTable, 0, 1, "UT Bot Trading System",
text_color = color.white, bgcolor = color.new(color.black, 80))
table.cell(warningTable, 0, 2, "Version: " + scriptVersion,
text_color = color.white, bgcolor = color.new(color.black, 80))
table.cell(warningTable, 0, 3, "© 2024 All Rights Reserved",
text_color = color.white, bgcolor = color.new(color.black, 80))
// ==================== INPUTS ====================
// ATR Trailing Stop Inputs
atrPeriod = input.int(10, title="ATR Period", minval=1, group="ATR Settings")
sensitivity = input.float(1.0, title="Key Value Sensitivity", minval=0.1, step=0.1, group="ATR Settings")
useEmaFilter = input.bool(true, title="Use EMA Filter for ATR Signals", group="ATR Settings")
showTable = input.bool(true, title="Show Signal Table", group="ATR Settings")
// EMA Crossover Theory Inputs
fastEma = input.int(9, title="Fast EMA Length", minval=1, group="EMA Crossover Settings")
slowEma = input.int(21, title="Slow EMA Length", minval=1, group="EMA Crossover Settings")
signalEma = input.int(1, title="Signal EMA Length", minval=1, group="EMA Crossover Settings")
useEmaCrossFilter = input.bool(true, title="Use EMA Crossover Filter", group="EMA Crossover Settings")
// RSI Settings for Strong Signals
rsiLength = input.int(14, title="RSI Length", minval=1, group="RSI Settings")
strongBuyRsiThreshold = input.int(30, title="Strong Buy RSI <=", minval=0, maxval=50, group="RSI Settings")
strongSellRsiThreshold = input.int(65, title="Strong Sell RSI >=", minval=50, maxval=100, group="RSI Settings")
useRsiFilter = input.bool(true, title="Use RSI Filter for Strong Signals", group="RSI Settings")
// Display Options
showTrailingStop = input.bool(true, title="Show Trailing Stop", group="Display Options")
showEmaLines = input.bool(true, title="Show EMA Lines", group="Display Options")
showLabels = input.bool(true, title="Show Signal Labels", group="Display Options")
labelOffset = input.float(1.0, title="Label Offset Factor", minval=0.1, maxval=3.0, step=0.1, group="Display Options")
labelSize = input.string("Normal", title="Label Size", options= , group="Display Options")
// ==================== CALCULATIONS ====================
// Calculate RSI
rsiValue = ta.rsi(close, rsiLength)
// Calculate EMAs
fastEmaLine = ta.ema(close, fastEma)
slowEmaLine = ta.ema(close, slowEma)
signalLine = ta.ema(close, signalEma)
// EMA Crossover Signals
emaBullishCross = ta.crossover(fastEmaLine, slowEmaLine)
emaBearishCross = ta.crossunder(fastEmaLine, slowEmaLine)
// EMA Trend Direction
emaTrendBullish = fastEmaLine > slowEmaLine
emaTrendBearish = fastEmaLine < slowEmaLine
// ATR Trailing Stop Calculation
atrValue = ta.atr(atrPeriod)
var float trailingStop = na
nLoss = atrValue * sensitivity
h = math.max(high, close )
l = math.min(low, close )
if (na(trailingStop ))
trailingStop := 0.0
else if (close > trailingStop and close > trailingStop )
trailingStop := math.max(trailingStop , l - nLoss)
else if (close < trailingStop and close < trailingStop )
trailingStop := math.min(trailingStop , h + nLoss)
else if (close > trailingStop )
trailingStop := l - nLoss
else
trailingStop := h + nLoss
// Original UT Bot signals
signalEmaBuy = ta.crossover(signalLine, trailingStop)
signalEmaSell = ta.crossunder(signalLine, trailingStop)
// Price-based ATR signals
priceBuySignal = ta.crossover(close, trailingStop)
priceSellSignal = ta.crossunder(close, trailingStop)
// ==================== SIGNAL FILTERING ====================
// EMA Filter for ATR signals
atrBuyWithEmaFilter = priceBuySignal and (not useEmaFilter or emaTrendBullish)
atrSellWithEmaFilter = priceSellSignal and (not useEmaFilter or emaTrendBearish)
// RSI Conditions
rsiOversoldForStrong = rsiValue <= strongBuyRsiThreshold
rsiOverboughtForStrong = rsiValue >= strongSellRsiThreshold
// Combined signals (EMA crossover + ATR)
basicStrongBuy = signalEmaBuy and emaBullishCross
basicStrongSell = signalEmaSell and emaBearishCross
// RSI-Filtered Strong Signals
strongBuySignal = basicStrongBuy and (not useRsiFilter or rsiOversoldForStrong)
strongSellSignal = basicStrongSell and (not useRsiFilter or rsiOverboughtForStrong)
// Trend-confirmed signals
trendConfirmedBuy = signalEmaBuy and emaTrendBullish
trendConfirmedSell = signalEmaSell and emaTrendBearish
// Determine which signals to show (priority based)
showStrongBuy = strongBuySignal and showLabels
showStrongSell = strongSellSignal and showLabels
showBasicStrongBuy = basicStrongBuy and showLabels and not strongBuySignal
showBasicStrongSell = basicStrongSell and showLabels and not strongSellSignal
showTrendBuy = trendConfirmedBuy and showLabels and not strongBuySignal and not basicStrongBuy
showTrendSell = trendConfirmedSell and showLabels and not strongSellSignal and not basicStrongSell
showUtBuy = signalEmaBuy and showLabels and not strongBuySignal and not basicStrongBuy and not trendConfirmedBuy
showUtSell = signalEmaSell and showLabels and not strongSellSignal and not basicStrongSell and not trendConfirmedSell
// ==================== LABEL POSITION & STYLE ====================
// Get label size
getLabelSize() =>
if labelSize == "Small"
size.tiny
else if labelSize == "Large"
size.large
else
size.normal
// Calculate perfect position next to candles
getBuyLabelPosition() =>
// Position at the LOW of the candle with small offset
low - (atrValue * 0.1 * labelOffset)
getSellLabelPosition() =>
// Position at the HIGH of the candle with small offset
high + (atrValue * 0.1 * labelOffset)
// ==================== PLOTTING ====================
// Plot Trailing Stop
plotTrailingStop = showTrailingStop ? trailingStop : na
plot(plotTrailingStop, title="Trailing Stop",
color=signalEmaBuy ? color.green : (signalEmaSell ? color.red : color.orange),
linewidth=2)
// Plot EMA Lines
plot(fastEmaLine, title="Fast EMA", color=color.blue, linewidth=2, display=showEmaLines ? display.all : display.none)
plot(slowEmaLine, title="Slow EMA", color=color.purple, linewidth=2, display=showEmaLines ? display.all : display.none)
plot(signalLine, title="Signal EMA", color=color.yellow, linewidth=1, display=showEmaLines ? display.all : display.none)
// ==================== PERFECTLY ALIGNED LABELS ====================
// STRONG BUY - Positioned exactly at candle low (Bright Pink)
if showStrongBuy
label.new(bar_index, getBuyLabelPosition(), "RSB",
color=color.rgb(255, 20, 147), textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// STRONG SELL - Positioned exactly at candle high (Dark Pink)
if showStrongSell
label.new(bar_index, getSellLabelPosition(), "RRSS",
color=color.rgb(199, 21, 133), textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// BASIC STRONG BUY
if showBasicStrongBuy
label.new(bar_index, getBuyLabelPosition(), "B",
color=color.blue, textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// BASIC STRONG SELL
if showBasicStrongSell
label.new(bar_index, getSellLabelPosition(), "S",
color=color.orange, textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// TREND CONFIRMED BUY
if showTrendBuy
label.new(bar_index, getBuyLabelPosition(), "B",
color=color.green, textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// TREND CONFIRMED SELL
if showTrendSell
label.new(bar_index, getSellLabelPosition(), "S",
color=color.red, textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// UT BOT BUY
if showUtBuy
label.new(bar_index, getBuyLabelPosition(), "B",
color=color.new(color.green, 70), textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// UT BOT SELL
if showUtSell
label.new(bar_index, getSellLabelPosition(), "S",
color=color.new(color.red, 70), textcolor=color.white,
style=label.style_label_center, size=getLabelSize(),
yloc=yloc.price, textalign=text.align_center)
// EMA CROSSOVER LABELS (VERY TINY arrows)
emaBuyPos = low - (atrValue * 0.3 * labelOffset)
emaSellPos = high + (atrValue * 0.3 * labelOffset)
if emaBullishCross and showLabels and not strongBuySignal and not basicStrongBuy and not trendConfirmedBuy
label.new(bar_index, emaBuyPos, "▲",
color=color.green, textcolor=color.white,
style=label.style_none, size=size.tiny,
yloc=yloc.price, textalign=text.align_center)
if emaBearishCross and showLabels and not strongSellSignal and not basicStrongSell and not trendConfirmedSell
label.new(bar_index, emaSellPos, "▼",
color=color.red, textcolor=color.white,
style=label.style_none, size=size.tiny,
yloc=yloc.price, textalign=text.align_center)
// ==================== SIGNAL TABLE ====================
if showTable
var table signalTable = table.new(position = position.top_right, columns = 3, rows = 6,
bgcolor = color.new(color.black, 80), border_width = 1,
border_color = color.white)
// Headers
table.cell(signalTable, 0, 0, "Signal", text_color = color.white, bgcolor = color.new(color.blue, 50))
table.cell(signalTable, 1, 0, "Type", text_color = color.white, bgcolor = color.new(color.blue, 50))
table.cell(signalTable, 2, 0, "Price/RSI", text_color = color.white, bgcolor = color.new(color.blue, 50))
// Current RSI
rsiFormatted = str.tostring(math.round(rsiValue, 1))
table.cell(signalTable, 0, 1, "RSI", text_color = color.white)
table.cell(signalTable, 1, 1, rsiFormatted,
text_color = rsiOverboughtForStrong ? color.red : (rsiOversoldForStrong ? color.rgb(255, 20, 147) : color.white))
table.cell(signalTable, 2, 1, "B≤" + str.tostring(strongBuyRsiThreshold) + " S≥" + str.tostring(strongSellRsiThreshold),
text_color = color.white)
// Strong Signal
var float lastStrongPrice = na
var string lastStrongType = ""
if strongBuySignal
lastStrongPrice := close
lastStrongType := "RSB (Strong)"
else if strongSellSignal
lastStrongPrice := close
lastStrongType := "RRSS (Strong)"
table.cell(signalTable, 0, 2, "Strong", text_color = color.white)
table.cell(signalTable, 1, 2, lastStrongType,
text_color = strongBuySignal ? color.rgb(255, 20, 147) : (strongSellSignal ? color.rgb(199, 21, 133) : color.gray))
table.cell(signalTable, 2, 2, lastStrongPrice > 0 ? str.tostring(lastStrongPrice, "#.##") : "—",
text_color = strongBuySignal ? color.rgb(255, 20, 147) : (strongSellSignal ? color.rgb(199, 21, 133) : color.gray))
// Basic Strong
var float lastBasicPrice = na
var string lastBasicType = ""
if basicStrongBuy
lastBasicPrice := close
lastBasicType := "B (Basic)"
else if basicStrongSell
lastBasicPrice := close
lastBasicType := "S (Basic)"
table.cell(signalTable, 0, 3, "Basic", text_color = color.white)
table.cell(signalTable, 1, 3, lastBasicType,
text_color = basicStrongBuy ? color.blue : (basicStrongSell ? color.orange : color.gray))
table.cell(signalTable, 2, 3, lastBasicPrice > 0 ? str.tostring(lastBasicPrice, "#.##") : "—",
text_color = basicStrongBuy ? color.blue : (basicStrongSell ? color.orange : color.gray))
// UT Bot Signal
var float lastUtPrice = na
var string lastUtType = ""
if signalEmaBuy
lastUtPrice := close
lastUtType := "B (UT)"
else if signalEmaSell
lastUtPrice := close
lastUtType := "S (UT)"
table.cell(signalTable, 0, 4, "UT Bot", text_color = color.white)
table.cell(signalTable, 1, 4, lastUtType,
text_color = signalEmaBuy ? color.green : (signalEmaSell ? color.red : color.gray))
table.cell(signalTable, 2, 4, lastUtPrice > 0 ? str.tostring(lastUtPrice, "#.##") : "—",
text_color = signalEmaBuy ? color.green : (signalEmaSell ? color.red : color.gray))
// Summary - Current Candle
table.cell(signalTable, 0, 5, "NOW", text_color = color.white, bgcolor = color.new(color.gray, 50))
var string currentSignal = "—"
var color currentColor = color.gray
if strongBuySignal
currentSignal := "RSB (Strong)"
currentColor := color.rgb(255, 20, 147)
else if strongSellSignal
currentSignal := "RRSS (Strong)"
currentColor := color.rgb(199, 21, 133)
else if basicStrongBuy
currentSignal := "B (Basic)"
currentColor := color.blue
else if basicStrongSell
currentSignal := "S (Basic)"
currentColor := color.orange
else if signalEmaBuy
currentSignal := "B (UT)"
currentColor := color.green
else if signalEmaSell
currentSignal := "S (UT)"
currentColor := color.red
else if emaBullishCross
currentSignal := "↑ EMA"
currentColor := color.green
else if emaBearishCross
currentSignal := "↓ EMA"
currentColor := color.red
table.cell(signalTable, 1, 5, currentSignal, text_color = currentColor, bgcolor = color.new(color.gray, 50))
table.cell(signalTable, 2, 5, str.tostring(close, "#.##"), text_color = color.white, bgcolor = color.new(color.gray, 50))
// ==================== ALERTS ====================
// Strong Signals with RSI Filter
alertcondition(strongBuySignal, title="STRONG Buy Signal",
message="STRONG BUY: UT Bot + EMA Crossover + RSI <= 30 at {{close}}")
alertcondition(strongSellSignal, title="STRONG Sell Signal",
message="STRONG SELL: UT Bot + EMA Crossover + RSI >= 65 at {{close}}")
// Basic Strong Signals
alertcondition(basicStrongBuy, title="Basic Strong Buy",
message="Basic STRONG BUY: UT Bot + EMA Crossover at {{close}}")
alertcondition(basicStrongSell, title="Basic Strong Sell",
message="Basic STRONG SELL: UT Bot + EMA Crossover at {{close}}")
// UT Buy Alert
utBuyAlert = input.bool(true, title="Enable UT Buy Alert", group="UT Bot Alerts")
utSellAlert = input.bool(true, title="Enable UT Sell Alert", group="UT Bot Alerts")
// UT Bot Buy Signals (filtered)
utBuySignal = signalEmaBuy and (not useEmaFilter or emaTrendBullish)
utSellSignal = signalEmaSell and (not useEmaFilter or emaTrendBearish)
// UT Bot Price-based Alerts
alertcondition(utBuyAlert and utBuySignal, title="UT Bot Buy",
message="UT BOT BUY: Signal EMA crossed above Trailing Stop at {{close}}")
alertcondition(utSellAlert and utSellSignal, title="UT Bot Sell",
message="UT BOT SELL: Signal EMA crossed below Trailing Stop at {{close}}")
// Price-based ATR Alerts
priceBuyAlert = input.bool(false, title="Enable Price Buy Alert", group="ATR Alerts")
priceSellAlert = input.bool(false, title="Enable Price Sell Alert", group="ATR Alerts")
// Price-based ATR Signals (filtered)
priceAtBuySignal = priceBuySignal and (not useEmaFilter or emaTrendBullish)
priceAtSellSignal = priceSellSignal and (not useEmaFilter or emaTrendBearish)
alertcondition(priceBuyAlert and priceAtBuySignal, title="ATR Price Buy",
message="ATR PRICE BUY: Price crossed above Trailing Stop at {{close}}")
alertcondition(priceSellAlert and priceAtSellSignal, title="ATR Price Sell",
message="ATR PRICE SELL: Price crossed below Trailing Stop at {{close}}")
// EMA Crossovers
alertcondition(emaBullishCross, title="EMA Bullish Crossover", message="Fast EMA crossed above Slow EMA")
alertcondition(emaBearishCross, title="EMA Bearish Crossover", message="Fast EMA crossed below Slow EMA")
4H 15:00 Candle High/Low (Liquidity Box)15:00 high/low mark good for targeting highs or low of candle. Also reversals from the high or low
ATR Trailing Stop (Ultimate Portfolio)ATR Trailing Stop (Ultimate Portfolio)
This advanced risk management tool is based on the trading philosophy of Aksel Kibar, CMT (Tech Charts) , specifically designed to manage capital and protect profits through volatility-based trailing stops. Unlike standard indicators, this "Ultimate Portfolio" version acts as a comprehensive risk dashboard for up to 10 different assets simultaneously.
Key Features
• Global Portfolio Dashboard: Track the status of 10 different positions (Symbol, Side, Price, and PnL%) in a single table, regardless of which chart you are currently viewing.
• Hybrid Engine (Auto/Manual):
o Manual Mode: If the current chart matches a symbol in your portfolio list, the script uses your specific entry date and price to track the stop-loss.
o Auto Mode: If the symbol is not in your list, it functions as a trend-following indicator (similar to Supertrend) to identify general market direction.
• Close-Based Exit Logic: To avoid being "stop-hunted" by intraday wicks, the stop is only triggered if the candle closes beyond the trailing stop level.
• First-Day Custom Multiplier: A unique feature allowing for tighter risk on the breakout day ( 1 x ATR or 0.5 x ATR ) before switching to a wider multiplier for trend following.
• Dynamic PnL Tracker: Real-time calculation of your profit/loss percentage for each slot, which "freezes" once a stop is hit to record the final result.
Core Logic
The indicator utilizes the Average True Range (ATR) to measure market noise. The formula for the stop level typically follows:
• Long: {Stop Level} = {Highest Price} - (ATR x Multiplier)
• Short: {Stop Level} = {Lowest Price} + (ATR x Multiplier) .
How to Use
1. Input Your Trades: Enter your Symbol, Side (Long/Short), Entry Price, and Entry Date into any of the 10 available slots.
2. Monitor the Dashboard: Use the on-screen table to see which trades are active (RUN), waiting for entry (WAIT), or have hit their stop-loss (STOP).
3. Interact: Hover over the dashboard cells to see detailed tooltips including entry details and current stop levels.
This script transforms TradingView into a professional risk management terminal, ensuring that your exits are governed by volatility and discipline rather than emotion.






















