Alpha Net Market Structure EngineBy team Alpha Net make Indecators (Combining the Vi and Line indicators) trader can belived and ez chartPine Script®指标由DinhCaoCrypto提供7
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. Pine Script®指标由ReconHK提供已更新 6
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.Pine Script®指标由Zak-提供已更新 6
Rainer Trend-Follow (200d High/Low + 6ATR Trail)Trendfollow Strategie mit Entry und Stop-Loss AngabenPine Script®指标由Arkaidou提供2
Multi-TF BB Oscillator DivergenceThis code useful for stock knowing ,IT WILL GIVE YOU ALERTS FOR SALE AND BUY STOCKSPine Script®指标由HINDFX提供5
Topscore SMC Dashboard v7.2 DUAL + Liquidity + HTF FVGThis is a highly advanced **Smart Money Concepts (SMC) & ICT (Inner Circle Trader)** trading suite. It automates the analysis of market structure, liquidity, and imbalances across multiple timeframes to provide high-probability trade setups. Here is a breakdown of how it works, its features, and how to trade with it. --- ### 1. Key Features & Logic #### **A. Liquidity Pools (BSL / SSL)** * **What it does:** It identifies "Equal Highs" (BSL - Buy Side Liquidity) and "Equal Lows" (SSL - Sell Side Liquidity). * **Visuals:** * **Red Dashed Lines:** BSL (Resistance/Liquidity above). * **Green Dashed Lines:** SSL (Support/Liquidity below). * **The "Sweep":** When price pierces these lines and reverses, the script marks it as **"💰 BSL/SSL Swept"**. In SMC, a sweep is often a precursor to a reversal. #### **B. Fair Value Gaps (FVG) - Dual Timeframe** * **LTF FVG (Lower Timeframe):** Detects standard gaps on your *current* chart (Standard Boxes). * **HTF FVG (Higher Timeframe):** Uses `request.security` to look inside a higher timeframe (default is 1 Hour/60min) and projects those gaps onto your current chart. * **Benefit:** Allows you to trade a 5-minute chart while seeing 1-hour "Magnet" levels without switching screens. #### **C. Probability Engine** * The script calculates a "Win Probability" % based on a confluence checklist. It adds points for: 1. **Liquidity Sweeps:** (+40 points) Highest weight. 2. **HTF FVG Alignment:** (+30 points) Trading into a higher timeframe gap. 3. **Trend Alignment:** (+15 points) Is price above/below the 50 SMA? 4. **FVG Quality:** (+10 points) Size and clarity of the gap. * **Dual Calculation:** It calculates the score for **BOTH Long and Short** scenarios simultaneously and highlights the stronger side. #### **D. Smart Risk Management** * **Stop Loss (SL):** It doesn't just use a fixed number. It intelligently places SL behind: * The recent Liquidity Sweep wick. * The boundary of an FVG. * A recent Swing High/Low. * **Take Profit (TP):** Calculated based on your defined Risk:Reward Ratio (default 1:2). --- ### 2. The Dashboard (Top Right) explained The dashboard is your "Cockpit." Here is how to read it row by row: | Row | Description | | --- | --- | | **Entry** | Shows current price (or your manual entry price if set in settings). | | **Liquidity** | Tells you if a pool (BSL/SSL) has just been swept or if active pools exist. | | **HTF** | Status of the Higher Timeframe. e.g., "Bull FVG" means price is inside a 1H Buy zone. | | **LONG / SHORT** | Shows the Probability Score for both directions. The stronger side will have a Star (⭐). | | **SL / TP** | The exact price levels for Stop Loss and Take Profit calculated by the script. | | **RR / Status** | Shows Risk:Reward and flashes **"HIGH PROB!"** if score > 65%. | | **Confluence** | Lists *why* the score is high (e.g., "SSL Swept, HTF Bull FVG"). | --- ### 3. How to Trade using this Indicator #### **Scenario 1: The Reversal Setup (High Probability)** 1. **Wait for a "Sweep":** Look for price to cross a Dotted Line (Liquidity Pool) and generate a **"💰 Swept"** label. 2. **Check HTF:** Ideally, this sweep happens inside a Higher Timeframe FVG (Large colored box). 3. **Check Dashboard:** Look for the probability score to turn **Green (>65%)**. 4. **Entry:** Enter when the dashboard confirms the setup. 5. **Execution:** Place your SL and TP exactly where the lines on the chart indicate. #### **Scenario 2: Trend Continuation** 1. **Trend Check:** Price is trending (e.g., creating higher highs). 2. **Retracement:** Price pulls back into a **LTF FVG** (small box) or **HTF FVG** (large box). 3. **Confirmation:** Dashboard shows "Confluence: Uptrend, Quality FVG". 4. **Trade:** Take the trade in the direction of the trend. --- ### 4. Settings Guide (Inputs) * **General Settings:** * `Show LTF/HTF FVG`: Toggle boxes on/off. * `Max boxes to keep`: Increase if you want to see history, decrease to make the chart faster. * **HTF Settings:** * `HTF Timeframe`: If you scalp M1/M5, set this to "60" (1 Hour). If you trade H1, set this to "240" (4 Hour) or "D" (Daily). * **Liquidity Settings:** * `Liquidity Lookback`: Higher number = Major swing points only. Lower number = Minor internal liquidity. * **Trade Setup Calculator:** * `Entry Price`: Leave at 0 for "Live" pricing. Set a specific price if you are planning a Limit Order and want to see where the SL/TP would be. * `Risk:Reward`: Default is 2.0. Change to 1.5 or 3.0 based on your style. ### 5. Pro Tips for this Script 1. **Don't follow blindly:** A 90% probability on the dashboard is mathematical based on *past* logic, not a guarantee of the future. 2. **Best Timeframes:** This works best on **M5 and M15** for execution, with the HTF setting set to **H1 or H4**. 3. **The "Sweep" is Key:** The highest probability setups usually involve a Liquidity Sweep (Stop Hunt) *before* the move. If there is no sweep, the setup is weaker. นี่คือคำอธิบายฉบับภาษาไทยสำหรับอินดิเคเตอร์ **"SMC Dashboard v7.2 DUAL + Liquidity + HTF FVG"** ครับ ตัวนี้ถือเป็นเครื่องมือระดับ "All-in-One" สำหรับสายเทรด **SMC (Smart Money Concepts)** และ **ICT** ที่ช่วยวิเคราะห์โครงสร้างตลาด สภาพคล่อง (Liquidity) และช่องว่างราคา (FVG) ให้แบบอัตโนมัติ พร้อมคำนวณความน่าจะเป็นในการเข้าเทรดให้ด้วย --- ### 1. หลักการทำงานและฟีเจอร์เด่น #### **A. การหา Liquidity (สภาพคล่อง / จุดกิน Stop Loss)** * **BSL (Buy Side Liquidity):** เส้นประสีแดงด้านบน (แนวต้านที่มีคนวาง SL ไว้เยอะ) * **SSL (Sell Side Liquidity):** เส้นประสีเขียวด้านล่าง (แนวรับที่มีคนวาง SL ไว้เยอะ) * **The Sweep (การกวาด):** เมื่อราคาแทงทะลุเส้นประเหล่านี้แล้วดึงกลับ ระบบจะขึ้นป้ายเตือนว่า **"💰 BSL/SSL Swept"** * *เทคนิค:* ในสาย SMC การเกิด Sweep คือสัญญาณการกลับตัวที่ทรงพลังมาก (แปลว่ารายใหญ่เก็บของครบแล้ว) #### **B. Fair Value Gaps (FVG) แบบ 2 Timeframe** * **LTF FVG (กล่องเล็ก):** คือ Gap ใน Timeframe ปัจจุบันที่คุณเปิดอยู่ * **HTF FVG (กล่องใหญ่):** ระบบจะไปดึงข้อมูลจาก **Timeframe ใหญ่** (ค่ามาตรฐานคือ 1 ชั่วโมง) มาวาดเป็นกล่องบนกราฟปัจจุบันให้ * *ประโยชน์:* ทำให้คุณเทรด M5 แต่เห็นแนวรับ/ต้านสำคัญของ H1 ได้ทันทีโดยไม่ต้องสลับหน้าจอ #### **C. ระบบคำนวณความน่าจะเป็น (Probability Engine)** ระบบจะให้คะแนน (Score) ว่าฝั่งไหนน่าเล่นกว่ากัน โดยดูจาก: 1. มีการกวาด Liquidity (Sweep) หรือไม่? (+40 คะแนน) 2. ราคาอยู่ในโซน HTF FVG หรือไม่? (+30 คะแนน) 3. เทรนด์เป็นขาขึ้นหรือลง? (+15 คะแนน) 4. คุณภาพของ Gap สวยไหม? (+10 คะแนน) --- ### 2. วิธีอ่านค่าบน Dashboard (ตารางมุมขวาบน) ตารางนี้เปรียบเสมือนหน้าปัดเครื่องบิน บอกข้อมูลสำคัญดังนี้: | หัวข้อ | ความหมาย | | --- | --- | | **Entry** | ราคาปัจจุบัน (หรือราคาที่เราตั้งใจจะเข้า) | | **Liquidity** | สถานะล่าสุด: บอกว่ามีการ "Sweep" (กวาด) ไปแล้วหรือยัง | | **HTF** | บอกสถานะ Timeframe ใหญ่ เช่น "Bull FVG" (อยู่ในโซนซื้อของ H1) | | **LONG / SHORT** | **ไฮไลท์สำคัญ:** บอก % ความน่าจะเป็นของทั้งสองฝั่ง ฝั่งไหนคะแนนเยอะกว่าจะมีดาว (⭐) | | **SL / TP** | จุด Stop Loss และ Take Profit ที่ระบบคำนวณให้แนะนำ | | **RR / Status** | อัตราส่วนกำไรต่อขาดทุน ถ้าคะแนนเกิน 65% จะขึ้นว่า **"HIGH PROB!"** (น่าเข้ามาก) | | **Confluence** | เหตุผลสนับสนุน: ระบบจะบอกว่าทำไมถึงให้คะแนนสูง (เช่น เพราะมี Sweep + เทรนด์ขาขึ้น) | --- ### 3. วิธีการเทรด (How to Trade) #### **ท่าไม้ตาย 1: สวนเทรนด์ (Reversal Setup)** 1. **รอสัญญาณ Sweep:** รอให้ราคาแทงทะลุเส้นประ (Liquidity) แล้วหดไส้กลับ (ขึ้นป้าย 💰 Swept) 2. **ดู Dashboard:** คะแนนความน่าจะเป็นต้องเป็นสีเขียว (>65%) 3. **เข้าออเดอร์:** กด Buy/Sell ตามทิศทางที่กลับตัว 4. **วาง SL/TP:** ตามเส้นที่ระบบขีดให้บนกราฟ (SL จะอยู่หลังไส้เทียนที่ไปกวาดมา) #### **ท่าไม้ตาย 2: ตามเทรนด์ (Continuation)** 1. **ดูเทรนด์:** กราฟเป็นขาขึ้น (ราคายืนเหนือเส้น SMA 50) 2. **รอย่อ:** ราคาย่อตัวลงมาในกล่อง **FVG** (ทั้งกล่องเล็กหรือกล่องใหญ่) 3. **เช็ค Dashboard:** ช่อง Confluence ขึ้นว่า "Uptrend, Quality FVG" 4. **เข้าออเดอร์:** Buy ตามน้ำขึ้นไป --- ### 4. การตั้งค่าที่แนะนำ (Settings) * **HTF Timeframe:** * ถ้าคุณเทรด **M1 - M5** แนะนำให้ตั้ง HTF เป็น **"60" (1 ชั่วโมง)** * ถ้าคุณเทรด **M15** แนะนำให้ตั้ง HTF เป็น **"240" (4 ชั่วโมง)** * **Risk:Reward:** ค่าเดิมคือ 2.0 (กำไร 2 เท่าของความเสี่ยง) สามารถปรับเป็น 1.5 หรือ 3.0 ได้ตามสไตล์ * **Entry Price:** ปกติให้เป็น 0 (ใช้ราคา Real-time) แต่ถ้าจะวาง Pending Order ให้ใส่ราคาที่เราต้องการลงไป ระบบจะคำนวณ SL/TP ใหม่ให้เห็นภาพล่วงหน้า ### 5. ข้อแนะนำเพิ่มเติม * **อย่าเชื่อ 100%:** แม้ Dashboard จะบอกว่าโอกาสชนะ 90% แต่มันคำนวณจากสูตรคณิตศาสตร์ ตลาดจริงมีความผันผวนเสมอ * **การกวาด (Sweep) คือหัวใจ:** Setup ที่ดีที่สุดของตัวนี้คือตอนที่เกิด **Liquidity Sweep** แล้วไปชนกับ **HTF FVG** (กล่องใหญ่) จังหวะนี้จะมีโอกาสชนะสูงที่สุดครับPine Script®指标由thanachaiyo27提供82
Multi-TF Doji Detector with Sweep Removaldoji indicator highlighting 30m 1h 2h 4h, good for reversals or targeting Doji liquidityPine Script®指标由frazerlittle提供2
TL Compress & StealthBreak v3.3Here is the simplified **Practical User Guide** for this indicator. ### **How to Read the Screen** 1. **The Dashboard (Table):** Tells you the current market health. 2. **Background Color:** Tells you the "Phase" of the market. 3. **Triangles:** The final signal to trade. --- ### **Step-by-Step Usage** #### **1. WAIT (The Squeeze)** * **Look for:** **Yellow** or **Orange** background. * **Meaning:** The market is "Compressing" (quiet before a big move). * **Action:** **Do nothing.** Wait for the breakout. #### **2. GET READY (The Setup)** * **Look for:** **Blue** (Bullish) or **Pink** (Bearish) background. * **Meaning:** The market has pulled back and is "Ready" to launch. * **Action:** Prepare your order. Watch for the signal. #### **3. EXECUTE (The Signal)** * **Look for:** * 🟢 **Green Triangle (BUY):** When the trend is UP. * 🔴 **Red Triangle (SELL):** When the trend is DOWN. * **Dashboard Check:** Ensure the "TREND" row on the table matches your signal (e.g., TREND = UP for a Buy). * **Action:** **Enter the trade immediately.** --- ### **Stop Loss & Exit Strategy** * **Stop Loss (SL):** * **For BUY:** Place SL just below the **Orange Line** (Slow EMA). * **For SELL:** Place SL just above the **Orange Line** (Slow EMA). * **Take Profit (TP):** * Target a 1:1.5 or 1:2 Risk-Reward ratio. * **Or:** Exit if the background color disappears or changes to the opposite color. ### **Important Note** * **"Zero Delay" Mode:** The signals appear very fast. If the candle closes and the Triangle remains, the signal is valid. Do not enter if the signal flashes and disappears before the candle closes.Pine Script®指标由thanachaiyo27提供27
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.Pine Script®指标由PeterParker_ST提供4
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")Pine Script®指标由tasir57提供1
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")Pine Script®指标由tasir57提供1112
Roboballs42 Auto Bull/Bear Flag (ZigZag) + Targets [Parallel]Roboballs42 • Auto Bull/Bear Flag (ZigZag) + Targets automatically detects bull flags and bear flags using a ZigZag-style pivot engine, draws a parallel flag channel anchored back to the flagpole (xB), and projects the channel only a limited number of bars into the future (no infinite rays). While a flag is active, the script shows a live breakout arrow as soon as price breaks the channel intrabar. Once the breakout confirms, the arrow locks at the breakout candle and the flag is considered complete. Patterns that get invalidated (price breaks the “wrong side” of the flag) are automatically deleted to keep the chart clean. If you enjoy this indicator and want to support the project, BTC donations are appreciated: bc1qvda8daynuqhpx8e9g07ddyelhpmv4ja5wc9cmm Key Features Auto Bull Flags + Bear Flags Parallel channel that extends left to the flagpole (no incomplete flags) Limited forward projection (Projection bars) to avoid endless lines Live breakout arrow (realtime) + locked arrow on confirmation Measured-move target plotted on confirmed breakout Invalidation cleanup (delete patterns when price violates the wrong side) Custom controls: pivot sensitivity, pole size (ATR), flag depth %, max flag length, touch tolerance, breakout type, invalidation type, and memory limits Notes “Early pivots” can repaint like a standard fast ZigZag. This indicator is a pattern-visualization tool, not financial advice.Pine Script®指标由Roboballs42提供已更新 34
IntraDayIndicatorNiftyOverview The Nifty Breakout & Reversal Indicator is a price-action tool designed specifically for the 1-minute timeframe. It automates the visualization of a classic range-breakout strategy. Key Features Timeframe Locked: To ensure precision in calculation, the script only functions on the 1m chart. Dynamic Visuals: Clearly plots Entry, Stop Loss, and Take Profit levels on the chart. Alert Ready: Includes built-in alert conditions for Initial Entries, Reversals, and the 3:15 PM Exit. Important Disclaimers Educational Purposes Only This indicator is provided for educational and informational purposes only. It is intended to demonstrate coding logic and backtesting concepts. It does not constitute financial advice, investment recommendations, or a guarantee of profit. Trading involves significant risk, and users should perform their own due diligence or consult with a certified professional before making any financial decisions. SEBI Disclosure & Compliance I am not a SEBI (Securities and Exchange Board of India) Registered Investment Advisor or Research Analyst. This script does not provide "buy" or "sell" tips. It is a mathematical visualization of a specific logic. Past performance is not indicative of future results. The developer of this script is not responsible for any financial losses incurred through the use of this tool.Pine Script®指标由firebird23提供已更新 5
Failed 2 StratInspired by Trader Mike, this indicator brings up failed 2 candles, alerting to possible reversals and 1R:1R scalps in the opposite direction. I've been using the m3 9EMA for continuation to push the trade a little further too. Supported Timeframes Summary Failed 2 on Opposite FVG on fvg_window) Approx Coverage M15 M1 25 ~25 min H1 M5 15 ~75 min H3 M15 12 ~3 hours H4 M15 10 ~2.5 hours H6 M15 8 ~2 hours D H1 12 ~12 hoursPine Script®指标由gtglivesey提供已更新 15
Expert Imtiazz 3.0.5 Pro With Hybrid Multiple Strategy🔹 Expert Imtiazz 3.0.5 Pro – With Hybrid Multiple Strategy Expert Imtiazz 3.0.5 Pro is a high-performance TradingView indicator specially designed for Binary Options trading, with a strong focus on the 1-minute timeframe. This indicator delivers powerful and fast Buy/Sell signals by combining multiple hybrid strategies that analyze trend direction, momentum, and market volatility in real time. It is optimized to capture short-term price movements, making it ideal for quick and precise entries. 🚀 Core Highlights: • ⚡ 1-Minute Timeframe Optimized – Built for fast market conditions • 💹 Strong Buy & Sell Signals – Clear, non-repainting trade signals • 🔼 Uptrend & 🔽 Downtrend Detection – Trade only in the correct market direction • 🌊 Market Volatility Filter – Avoids low-probability and choppy zones • 🔗 Hybrid Strategy Engine – Multiple strategies combined for stronger confirmation • 🎯 Binary-Focused Logic – Designed specifically for CALL & PUT entries 📌 Ideal For: • Binary Options traders • 1-minute scalping strategies • Traders who prefer quick, high-probability setups ⚠️ Risk Notice: This indicator is a trading assistance tool. Results may vary depending on market conditions. Always apply proper money management and test on a demo account before live trading.Pine Script®指标由imtiaz_trader提供13
Roboballs42 EMA + PVSRA Vector Candles + CME Gap + SMC BoxesAll-in-one BTC overlay: 13/50/200/800 EMAs + 50 EMA cloud + PVSRA vector candles + VCZ zones + CME weekend gaps + Auto-Fib Golden Pocket + optional S/D boxes. Roboballs42 • EMA Strategy + Vector Candles + CME Gap (All-in-One Overlay) This is my personal “daily driver” overlay built for BTC/crypto, but it works on any chart/timeframe. It combines clean trend structure with liquidity/volume cues and a few high-utility market context tools. What’s included EMA Strategy: 13 / 50 / 200 / 800 EMAs (custom colors, thickness, line style) 50 EMA Cloud (volatility-based band, border hidden for clean look) 13/50 Cross Markers (custom shapes/sizes) + optional ATR-offset arrows PVSRA Vector Candles (via TradersReality library) + alerts Vector Candle Zones (VCZ) (optional zones based on vector candle logic) CME Bitcoin Weekend Gap: shaded weekend + gap box that extends right and shrinks as filled Auto-Fib Golden Pocket (0.618–0.65) + optional 0.382 / 0.5 / 0.786 + anchor line Daily Open + Weekly Psy Levels (TR style) SMC Lite Supply/Demand Boxes (optional, lightweight) How I use it (simple) Trend bias from EMAs (13/50 for momentum, 200/800 for macro bias) Vector candles + VCZ for “effort / participation” and reaction zones CME gaps for weekend inefficiencies + likely magnets/targets Golden Pocket + 0.5 for clean pullback zones in trend Support / Donations (BTC) If this indicator helps you and you want to support continued development, BTC donations are appreciated: BTC: bc1qvda8daynuqhpx8e9g07ddyelhpmv4ja5wc9cmm Notes Some tools are designed for specific timeframes (e.g., Weekly Psy levels valid for certain intraday TFs). CME gap logic is based on Chicago time and weekend schedule assumptions. Disclaimer For educational and analytical purposes only. Not financial advice. Always manage risk.Pine Script®指标由Roboballs42提供已更新 42
Roboballs42 Auto W/M Pattern Detector + Measured Move & Fib TaRoboballs42 — Auto W/M Pattern Detector + Measured Move & Fib Targets This indicator automatically detects Double Bottom (W) and Double Top (M) patterns using a ZigZag-based market structure engine with built-in quality filtering. Designed for clean charts, realistic targets, and high-signal price action, this tool removes manual drawing and highlights only meaningful reversal structures. 🔍 Core Features Automatic W (double bottom) and M (double top) detection Clear adjacent structure triangles for pattern validation Neckline detection with projected measured move targets Automatic Fibonacci extension levels from the structure Optional multi-timeframe logic Quality and risk filtering to reduce low-probability setups Smart memory system to keep charts uncluttered Fully scalable visuals for all timeframes 📐 Why Traders Use It Quickly spot reversal structures without manual drawing Visualize realistic upside/downside targets Combine market structure + fib logic in one clean tool Useful for BTC, crypto, forex, stocks, and indices ⚙️ Customization Toggle W/M patterns, necklines, measured moves, invalidation rays Adjust pivot sensitivity and risk filtering Control label size, opacity, and chart cleanliness Designed to work cleanly on any timeframe ❤️ Support / Donations If this indicator helps your trading and you’d like to support continued development, BTC donations are appreciated: Bitcoin (BTC): bc1qvda8daynuqhpx8e9g07ddyelhpmv4ja5wc9cmm 💡 Tip: The address is copyable from Settings → Inputs for easy copy/paste. ⚠️ Disclaimer This script is for educational and analytical purposes only. It is not financial advice. Always manage risk and confirm setups with your own analysis.Pine Script®指标由Roboballs42提供已更新 1131
TOP BOTTOM SCALPINGTOP BOTTOM SCALPING Intraday scalping is a high-frequency trading strategy aimed at profiting from small price changes on high-volume, liquid assets, with trades lasting seconds to minutes. Scalpers execute 10–50+ trades daily, using 1-5 minute charts, tight stop-lossesPine Script®指标由dab-yummy-street提供0
DACC 2026-This indicator was designed and developed in Bolivia to support trading decision-making through advanced technical market analysis. It combines multiple market conditions to identify potential entry and exit zones, helping traders improve trend confirmation and risk management.Pine Script®指标由kiestrew4036提供4
Robust Adaptive Cloud - Blue/White ThemeRobust Adaptive Cloud - Blue/White Theme Robust Adaptive Cloud - Blue/White ThemeRobust Adaptive Cloud - Blue/White ThemeRobust Adaptive Cloud - Blue/White ThemeRobust Adaptive Cloud - Blue/White ThemeRobust Adaptive Cloud - Blue/White Theme Pine Script®指标由GILLYi提供3
Zen Measured Moves - Price Extension Targets Based on Prior Bar Overview Zen Measured Moves identifies potential price extension targets by projecting the prior bar's range forward from breakout points. This indicator helps traders anticipate how far price might travel after breaking above a prior high or below a prior low. How It Works The indicator calculates three measured move targets in each direction: Bullish Targets (from prior bar's high): 0.5x - Half the prior range (50% extension) 1x - Full prior range (100% extension) 2x - Double the prior range (200% extension) Bearish Targets (from prior bar's low): 0.5x - Half the prior range (50% extension) 1x - Full prior range (100% extension) 2x - Double the prior range (200% extension) Visual Signals Blue circles above bars indicate bullish measured moves achieved: Light blue (tiny) = 0.5x target hit Medium blue (small) = 1x target hit Dark blue (normal) = 2x target hit Red circles below bars indicate bearish measured moves achieved: Light red (tiny) = 0.5x target hit Medium red (small) = 1x target hit Dark red (normal) = 2x target hit Data Window Outputs All calculated values are available in the Data Window for analysis or export to Excel: Target hit indicators (1/0 boolean values) Actual target price levels Bar type classifications (bullish/bearish) Range measurements Internal Bar Strength (IBS) values Use Cases Identify potential profit targets after breakouts Gauge momentum strength by which targets are reached Filter for high-momentum vs low-momentum moves Backtest measured move reliability on your instruments Export data for statistical analysis in Excel Best Practices Works on any timeframe or instrument Most effective when prior bar has clear directional bias Consider combining with volume or other confirmation indicators Use IBS values to assess entry/exit quality within bars Pine Script®指标由Zen_Trading_Tech提供38
PeakBot ORBSet up your opening range in different time frames across different tickers.Pine Script®指标由bcolabella提供3
ATR [Atlasfutures]Minimal ATR and distance in points from the GlobEx open.Pine Script®指标由atlasfutures提供4