HTF Ghost Candles + SMTBroken Indicator that shows HTF candles to the right. We have SMT integrated that also includes the SMT on the HTF ghost candles. Feel free to check out my other indicators.Pine Script® indicatorby AmmDegenUpdated 19
Trend Strength + SSL Channel TableHOW TO READ THIS (POWERFUL COMBO) Trend Strength = timing SSL Channel = directional bias Best trade conditions: Bullish Trend + Strong/Medium + SSL Bullish Bearish Trend + Strong/Medium + SSL Bearish Avoid: Exhaustion + SSL disagreement → chop / fakeouts This table is now a high-quality trade filter, not just information.Pine Script® indicatorby yassermalik102212
Order Flow + Mean Reversion + Vol S/R + MTFW mean reversion script i got 100 percent on a new york open Pine Script® indicatorby stefmarloo31
QuantumPips Session Trend StructureQuantumPips Session Trend Structure is an indicator built to help you read session structure and spot higher-quality breakout → retest opportunities when trend and momentum conditions agree. It does three main things: Maps sessions (Asia / London / New York) with live High/Low boxes Adds trend direction using EMA bias (50/200 + optional slope) Prints BUY/SELL labels only after a clean breakout + retest sequence, optionally filtered by volume, range expansion (ATR), and candle body strength Educational tool only — not financial advice. Always manage risk. What you’ll see on the chart Session boxes (structure) The indicator draws a box for each session and updates the session High/Low while the session is active. Default settings (Timezone Europe/London): Asia: 00:00–09:00 London: 08:00–17:00 New York: 13:00–22:00 Optional: vertical dotted lines at session starts. EMA bias (direction) Two EMAs are plotted: EMA Fast (50) EMA Slow (200) Bias is: Bullish: EMA50 above EMA200 (and optionally EMA50 rising) Bearish: EMA50 below EMA200 (and optionally EMA50 falling) This is designed to reduce counter-trend signals. The core idea (simple) Each major session often reacts to the previous session’s range. This script uses that concept by selecting a reference range: During London, reference = Asia High/Low During New York, reference = London High/Low During Asia (optional), reference = New York High/Low The panel shows Ref Range, which is just: Ref Range = Reference High − Reference Low Signal logic: Breakout → Retest (with confluence) A signal is only considered when you are inside a session you enabled (Asia/London/NY toggles). BUY (Long) Trend bias is Bullish Price closes above the reference High (breakout) Price returns to retest near the broken High (ATR tolerance) Optional: retest candle must close back up (confirm-close) Optional confirmations pass (volume / expansion / body) SELL (Short) Trend bias is Bearish Price closes below the reference Low (breakout) Price returns to retest near the broken Low (ATR tolerance) Optional: retest candle must close back down (confirm-close) Optional confirmations pass (volume / expansion / body) This approach is meant to avoid “first-touch” entries and focus on structured moves. Filters (optional, but useful) Volume Spike Filter Requires elevated participation: volume ≥ SMA(volume) × multiplier (Volume varies by market/data feed; use discretion on symbols where volume is not meaningful.) Range Expansion Filter (ATR) Requires a candle with enough “energy” to avoid weak breakouts: (high − low) ≥ ATR × range multiplier Strong Body Filter (optional) Filters wick-heavy candles around key levels: body % of candle range ≥ threshold Side Panel (Top Right) — how to read it Session Shows the active session: Asia / London / New York / Off EMA Bias Shows: Bullish / Bearish / Neutral Ref Range Shows the size of the reference session range being used for the current session: London uses Asia range NY uses London range Asia (optional) uses NY range Volume Shows status of the volume filter: High = passes Normal = fails Off = filter disabled Expansion Shows status of the ATR expansion filter: Yes = passes No = fails Off = filter disabled Body Shows status of the strong-body filter: Yes = passes No = fails Off = filter disabled Confluence Example Recommended starting settings If you want fewer, higher-quality setups: Enable London + New York Keep EMA bias ON Volume filter ON (1.2–1.5×) Expansion ON (0.8–1.0× ATR) Body filter optional (0.55–0.70) Confirm-close ON If you want more signals: Lower volume multiplier (1.1–1.2×) Lower expansion (0.6–0.8× ATR) Body filter OFF Best timeframes (TF) to use Best overall: 5m, 15m, 30m Best Pairs for Sessions: EURUSD, GBPUSD, GBPJPY, USDJPY, XAUUSDPine Script® indicatorby QuantumPipsio18
3+ Consecutive Inside Candles Detectorlotshape(signal, title="Inside Candle Sequence", style=shape.labeldown, text="Inside 3+", location=location.abovebar, color=color.new(color.blue, 0), size=size.tiny) Pine Script® indicatorby Danito_2
3-Candle Swing + Rejectionplotshape(swingHigh, title="Swing High", style=shape.triangleup, location=location.abovebar, color=color.red, size=size.tiny, offset=-1) plotshape(swingLow, title="Swing Low", style=shape.triangPine Script® indicatorby Danito_2
GBPUSD/EURUSD FVG Synchronizationsmt divergence between eurusd and gbpusd. with swing low detection. help traders execute trades with only these pairsPine Script® indicatorby Danito_0
FVG Detector - With Close Direction & Breakoutdetects fvg. sharp rejection and sweep. developed to help traders achieve success with close direction and breakoutPine Script® indicatorby Danito_1
Ultimate Open Marker with Time ZonesYour Ultimate Open Marker with Time Zones: Preset Market Opens: NY Open (9:30 AM ET) - default London Open (8:00 AM GMT) Frankfurt Open (9:00 AM CET) Tokyo Open (9:00 AM JST) Hong Kong Open (9:30 AM HKT) Sydney Open (10:00 AM AEST) Custom Time Zone Option: 18 major time zones to choose from: Set any hour (0-23) and minute (0-59) for your custom open Custom label text (e.g., "RTH Start", "Open", etc.) Works on every timeframe including custom ones. Marker Settings: - Default: Sky blue flag with background highlight and time label for the NY open as default. You can change all that in the settings. - Various marker shape options: Triangle, Diamond, Label Flag, Arrow Up/Down, Arrow this, Arrow that... So you can pick whatever annoys you the least lol - Auto-positioning: above bear candles, below bull candles (default) - or always above/below - 5 sizes from tiny to huge - Vertical offset fine-tuning - you can move your marker closer to the bar if you like, or farther from it Vertical Lines Options: - Line ON the 9:30 bar - Line BEFORE the 9:30 bar (so on 5min you'd see a line on 9:25, on 15min on 9:15, etc. - this way you can see the open candle well) Time Label Option: Default "9:30 EST" label (customizable text, color, size) Automatically shows the open time and timezone abbreviation For custom: shows your label + time + timezone (e.g., "Open 9:30 AM ET") Date Label Option: Four format options: - MM/DD/YY (American) - DD/MM/YY (European) - DD Mon. 'YY (Written, like "04 Feb. '26") - Mon DD, YYYY (Full) Plus optional day of week (short or full) Bonus: Background highlight option for the open bar Let me know if you need any adjustments. Thanks. : )Pine Script® indicatorby Stokrotka4
TX_Smart_Cross_Session_TrendFollowA Pine Script v5 strategy for Taiwan Index Futures (TX). Features macro pivot analysis, cross-session micro-structure (Chen Kuei concept), dynamic risk management, and smart trend-following logic.Pine Script® strategyby aammyytseng84
stelaraX - Moving Average MultistelaraX – Multi MA stelaraX – Multi MA is a flexible moving average indicator that allows the use of up to four independently configurable moving averages on a single chart. Each moving average can be customized by type, length, source, color, and line width, making the indicator suitable for a wide range of trading styles and timeframes. The indicator is designed to provide a clear overview of trend direction, dynamic support and resistance, and moving average interactions. Core logic The script supports multiple moving average calculation methods: * Simple Moving Average (SMA) * Exponential Moving Average (EMA) * Weighted Moving Average (WMA) * Hull Moving Average (HMA) * Volume Weighted Moving Average (VWMA) * Running Moving Average (RMA) Each of the four moving averages can be enabled or disabled individually and calculated from any price source. Crossover signals The indicator can generate crossover signals between any two selected moving averages: * bullish crossover when the fast MA crosses above the slow MA * bearish crossover when the fast MA crosses below the slow MA Crossover signals are displayed directly on the chart using directional markers and can be enabled or disabled as needed. MA cloud An optional moving average cloud can be displayed between two selected moving averages: * bullish cloud when the faster MA is above the slower MA * bearish cloud when the faster MA is below the slower MA Cloud colors and transparency are fully customizable. Visualization The indicator plots up to four moving average lines directly on the chart. Additional visual features include: * optional MA crossover markers * optional moving average cloud * optional bar coloring based on price position relative to selected moving averages Bar colors reflect basic trend conditions when price is above or below selected averages. Alerts Alert conditions are available for: * bullish and bearish moving average crossovers * price crossing above or below selected moving averages * price crossing above or below the long-term moving average Alerts trigger only on confirmed crossover conditions. Use case This indicator is intended for: * trend identification and confirmation * moving average crossover strategies * dynamic support and resistance analysis * multi-timeframe trend alignment * general market structure visualization Disclaimer This indicator is provided for educational and technical analysis purposes only and does not constitute financial advice or trading recommendations. All trading decisions and risk management remain the responsibility of the user. Pine Script® indicatorby stelaraX_official2
Previous 1-Hour High/Low Marks the high and low of the previous 1 hour candle.Pine Script® indicatorby mark_mmegwa13
Ultimate NY 9:30 Open MarkerYour ultimate New York Open Marker... So you can analyze your charts when everybody else sleeps or parties, you crazy chart people! Works on every timeframe including custom ones. Customizable in settings: Marker Settings: - Default: Sky blue flag with background highlight and time label for the NY open as default. You can change all that in the settings. - Various marker shape options: Triangle, Diamond, Label Flag, Arrow Up/Down, Arrow this, Arrow that... So you can pick whatever annoys you the least lol - Auto-positioning: above bear candles, below bull candles (default) - or always above/below - 5 sizes from tiny to HUGE - Vertical offset fine-tuning - you can move your marker closer to the bar if you like, or farther from it Vertical Lines Options: - Line ON the 9:30 bar - Line BEFORE the 9:30 bar (so on 5min you'd see a line on 9:25, on 15min on 9:15, etc. - this way you can see the open candle well) - Solid, dotted, dashed, pick your poison Time Label Option: "9:30 EST" label (customizable text, color, size) Date Label Option: Four format options: - MM/DD/YY (American) - DD/MM/YY (European) - DD Mon. 'YY (Written, like "04 Feb. '26") - Mon DD, YYYY (Full) Plus optional day of week (short or full) Bonus: Background highlight option for the open bar The indicator handles DST automatically via the "America/New_York" timezone and works on any timeframe including custom ones. This is a repost, apparently you can't use caps in the title. Sorry about that. Let me know if you'd like any adjustments. Thanks. : )Pine Script® indicatorby Stokrotka19
Renko TimekeeperRenko charts delete time. This tool puts it back.The Renko Timekeeper prints a number next to every brick telling you exactly how many minutes that specific brick took to form.This converts a "Static Chart" into a "Velocity Chart." It allows you to spot Momentum Decay before the price actually reverses.1. The Visual GuideThe indicator prints a single number (e.g., 4.2) above or below every brick.Text ColorValue RangeEngineering StateInterpretationGREEN< 5.0High VelocityThe "Turbo" is on. Buyers/Sellers are aggressive. HOLD or ADD to the trade.GRAY5.0 – 15.0Normal CruiseThe trend is stable. Standard market breathing. HOLD.RED> 15.0STALL (Warning)The engine has died. The market is struggling to push price. EXIT immediately.Pine Script® indicatorby cechapmanUpdated 10
AI Heavy Buyer Scanner V6 - 100min to Close100 minutes before the end of daily trading, scan US-traded stocks and ETFs with a market cap > $50B and ETFs (including 3x leveraged). Locate Japanese candlesticks on an intraday chart where the following conditions are met: 1. The price has increased by at least 1% from the daily opening price. 2. The candlestick has a lower shadow that is at least 1% longer than the price. 3. The daily trading volume up to this time is 10% higher than the daily average of the last 100 days. Send an instant alertPine Script® indicatorby Izik683
MTF Candle Average Priceaverage of all time frames , give all time average at one place Pine Script® indicatorby Kartik22j4
Nifty By PaisaPani It is a trading system. • Separate indicator designed specifically for BankNifty • Intended for the mentioned timeframe only • Focused on execution clarity, not predictions 🔒 Full access is limited. ⚠ Disclaimer: For educational and demonstration purposes only. Trading involves risk. No profit guarantees are implied.Pine Script® indicatorby PaisaPani_Indicator16
Intrabar Delta Volume Bubbles [Absorption & Exhaustion]Visualizes aggressive buying/selling pressure using intrabar data to spot Absorption (Red Bubble on Green Candle) and Exhaustion (Green Bubble on Red Candle) on standard feeds.Pine Script® indicatorby yeosc_030832
Banknifty By PaisaPaniThis indicator displays a DEMO performance snapshot to show how the PaisaPani approach behaves on BankNifty. It is a trading system. • Separate indicator designed specifically for BankNifty • Intended for the mentioned timeframe only • Focused on execution clarity, not predictions 🔒 Full access is limited. ⚠ Disclaimer: For educational and demonstration purposes only. Pine Script® indicatorby PaisaPani_Indicator2
Weekly Tightness Near EMA//@version=6 indicator("Weekly Tightness Near EMA", overlay=true) // =========================== // INPUT PARAMETERS // =========================== tightness_pct = input.float(3.0, "Tightness % Range", minval=0.1, maxval=10.0) ema_proximity_pct = input.float(5.0, "EMA Proximity %", minval=0.5, maxval=15.0) small_candle_pct = input.float(5.0, "Small Candle % (body)", minval=0.5, maxval=10.0) show_ema10 = input.bool(true, "Show 10 Week EMA") show_ema20 = input.bool(true, "Show 20 Week EMA") show_signals = input.bool(true, "Show Tightness Signals") // =========================== // GET WEEKLY DATA // =========================== weekly_close = request.security(syminfo.tickerid, "W", close, barmerge.gaps_off, barmerge.lookahead_off) weekly_open = request.security(syminfo.tickerid, "W", open, barmerge.gaps_off, barmerge.lookahead_off) weekly_high = request.security(syminfo.tickerid, "W", high, barmerge.gaps_off, barmerge.lookahead_off) weekly_low = request.security(syminfo.tickerid, "W", low, barmerge.gaps_off, barmerge.lookahead_off) weekly_close_1 = request.security(syminfo.tickerid, "W", close , barmerge.gaps_off, barmerge.lookahead_off) weekly_open_1 = request.security(syminfo.tickerid, "W", open , barmerge.gaps_off, barmerge.lookahead_off) weekly_high_1 = request.security(syminfo.tickerid, "W", high , barmerge.gaps_off, barmerge.lookahead_off) weekly_low_1 = request.security(syminfo.tickerid, "W", low , barmerge.gaps_off, barmerge.lookahead_off) weekly_close_2 = request.security(syminfo.tickerid, "W", close , barmerge.gaps_off, barmerge.lookahead_off) weekly_open_2 = request.security(syminfo.tickerid, "W", open , barmerge.gaps_off, barmerge.lookahead_off) weekly_high_2 = request.security(syminfo.tickerid, "W", high , barmerge.gaps_off, barmerge.lookahead_off) weekly_low_2 = request.security(syminfo.tickerid, "W", low , barmerge.gaps_off, barmerge.lookahead_off) // Weekly EMAs weekly_ema10 = request.security(syminfo.tickerid, "W", ta.ema(close, 10), barmerge.gaps_off, barmerge.lookahead_off) weekly_ema20 = request.security(syminfo.tickerid, "W", ta.ema(close, 20), barmerge.gaps_off, barmerge.lookahead_off) // =========================== // CALCULATE CANDLE SIZE // =========================== // Calculate body size (close - open) as percentage of price candle_body_0 = math.abs(weekly_close - weekly_open) candle_body_1 = math.abs(weekly_close_1 - weekly_open_1) candle_body_2 = math.abs(weekly_close_2 - weekly_open_2) candle_body_pct_0 = (candle_body_0 / weekly_close) * 100 candle_body_pct_1 = (candle_body_1 / weekly_close_1) * 100 candle_body_pct_2 = (candle_body_2 / weekly_close_2) * 100 // Calculate full range (high - low) as percentage candle_range_0 = weekly_high - weekly_low candle_range_1 = weekly_high_1 - weekly_low_1 candle_range_2 = weekly_high_2 - weekly_low_2 candle_range_pct_0 = (candle_range_0 / weekly_close) * 100 candle_range_pct_1 = (candle_range_1 / weekly_close_1) * 100 candle_range_pct_2 = (candle_range_2 / weekly_close_2) * 100 // Check if all 3 candles are small small_candle_0 = candle_body_pct_0 <= small_candle_pct small_candle_1 = candle_body_pct_1 <= small_candle_pct small_candle_2 = candle_body_pct_2 <= small_candle_pct all_candles_small = small_candle_0 and small_candle_1 and small_candle_2 // Average candle body size avg_candle_body = (candle_body_pct_0 + candle_body_pct_1 + candle_body_pct_2) / 3 avg_candle_range = (candle_range_pct_0 + candle_range_pct_1 + candle_range_pct_2) / 3 // =========================== // CALCULATE TIGHTNESS // =========================== // Find highest and lowest of last 3 weekly closes highest_close = math.max(weekly_close, weekly_close_1, weekly_close_2) lowest_close = math.min(weekly_close, weekly_close_1, weekly_close_2) // Calculate range percentage close_range_pct = ((highest_close - lowest_close) / lowest_close) * 100 // Check if within tightness range is_tight = close_range_pct <= tightness_pct // =========================== // CHECK PROXIMITY TO EMAs // =========================== // Distance from EMAs dist_from_ema10_pct = math.abs((weekly_close - weekly_ema10) / weekly_ema10) * 100 dist_from_ema20_pct = math.abs((weekly_close - weekly_ema20) / weekly_ema20) * 100 // Near EMA conditions near_ema10 = dist_from_ema10_pct <= ema_proximity_pct near_ema20 = dist_from_ema20_pct <= ema_proximity_pct near_any_ema = near_ema10 or near_ema20 // =========================== // COMBINED SIGNAL (with small candles filter) // =========================== tightness_signal = is_tight and near_any_ema and all_candles_small // =========================== // PLOT EMAs // =========================== plot(show_ema10 ? weekly_ema10 : na, "10 Week EMA", color=color.new(color.blue, 0), linewidth=2) plot(show_ema20 ? weekly_ema20 : na, "20 Week EMA", color=color.new(color.orange, 0), linewidth=2) // =========================== // PLOT SIGNALS // =========================== // Background color when tight and near EMA bgcolor(show_signals and tightness_signal ? color.new(color.green, 90) : na, title="Tightness Signal") // Plot signal markers plotshape(show_signals and tightness_signal and not tightness_signal , title="Tightness Start", location=location.belowbar, color=color.new(color.green, 0), style=shape.triangleup, size=size.small, text="TIGHT") // =========================== // DISPLAY TABLE // =========================== var table info_table = table.new(position.top_right, 2, 9, border_width=1, border_color=color.gray, frame_width=1, frame_color=color.gray) if barstate.islast // Header table.cell(info_table, 0, 0, "Weekly Analysis", bgcolor=color.new(color.gray, 70), text_color=color.white, text_size=size.normal) table.cell(info_table, 1, 0, "Status", bgcolor=color.new(color.gray, 70), text_color=color.white, text_size=size.normal) // Average candle body size candle_color = all_candles_small ? color.new(color.green, 85) : color.new(color.red, 85) table.cell(info_table, 0, 1, "Avg Candle Body", bgcolor=candle_color, text_color=color.white, text_halign=text.align_left) table.cell(info_table, 1, 1, str.tostring(avg_candle_body, "#.##") + "%", bgcolor=candle_color, text_color=color.white) // Small candle threshold table.cell(info_table, 0, 2, "Small Candle <", bgcolor=color.new(color.gray, 90), text_color=color.white, text_halign=text.align_left) table.cell(info_table, 1, 2, str.tostring(small_candle_pct, "#.#") + "%", bgcolor=color.new(color.gray, 90), text_color=color.white) // 3 Week Close Tightness tight_color = is_tight ? color.new(color.green, 85) : color.new(color.red, 85) table.cell(info_table, 0, 3, "3W Close Range", bgcolor=tight_color, text_color=color.white, text_halign=text.align_left) table.cell(info_table, 1, 3, str.tostring(close_range_pct, "#.##") + "%", bgcolor=tight_color, text_color=color.white) // Tightness threshold table.cell(info_table, 0, 4, "Threshold", bgcolor=color.new(color.gray, 90), text_color=color.white, text_halign=text.align_left) table.cell(info_table, 1, 4, "<" + str.tostring(tightness_pct, "#.#") + "%", bgcolor=color.new(color.gray, 90), text_color=color.white) // Distance from 10W EMA ema10_color = near_ema10 ? color.new(color.blue, 85) : color.new(color.gray, 85) table.cell(info_table, 0, 5, "From 10W EMA", bgcolor=ema10_color, text_color=color.white, text_halign=text.align_left) table.cell(info_table, 1, 5, str.tostring(dist_from_ema10_pct, "#.##") + "%", bgcolor=ema10_color, text_color=color.white) // Distance from 20W EMA ema20_color = near_ema20 ? color.new(color.orange, 85) : color.new(color.gray, 85) table.cell(info_table, 0, 6, "From 20W EMA", bgcolor=ema20_color, text_color=color.white, text_halign=text.align_left) table.cell(info_table, 1, 6, str.tostring(dist_from_ema20_pct, "#.##") + "%", bgcolor=ema20_color, text_color=color.white) // Near EMA status near_ema_color = near_any_ema ? color.new(color.green, 85) : color.new(color.red, 85) near_ema_text = near_any_ema ? "✓ NEAR" : "✗ Far" table.cell(info_table, 0, 7, "Near EMA", bgcolor=near_ema_color, text_color=color.white, text_halign=text.align_left) table.cell(info_table, 1, 7, near_ema_text, bgcolor=near_ema_color, text_color=color.white) // Combined signal signal_color = tightness_signal ? color.new(color.lime, 70) : color.new(color.gray, 85) signal_text = tightness_signal ? "🎯 SETUP!" : "No Setup" table.cell(info_table, 0, 8, "SIGNAL", bgcolor=signal_color, text_color=color.white, text_halign=text.align_left, text_size=size.large) table.cell(info_table, 1, 8, signal_text, bgcolor=signal_color, text_color=color.white, text_size=size.large) // =========================== // ALERTS // =========================== alertcondition(tightness_signal and not tightness_signal , title="Tightness Setup Alert", message="Weekly setup detected: Small candles, tight closes, near EMA!")Pine Script® indicatorby harishjagtap5
Chart Info & Candle CountdownThis indicator displays essential chart information directly on the chart: Displays the current date Displays the current symbol Displays the current timeframe with a countdown to candle close The candle close countdown is visually highlighted to improve time awareness: from 2 minutes before candle close on minute timeframes from 15 minutes before candle close on higher timeframes This indicator is designed for informational purposes only and does not generate trading signals.Pine Script® indicatorby ducal92Updated 14
Trading Sessions Highs & LowsFull Azia , London and New York Sessions Highs & Lows are shown until triggered.Pine Script® indicatorby susinskisdovydas16
ddddddrrrrrr//@version=5 indicator("🚀 EventSniper HF v3.0 - 高频方向信号", overlay=true) // 参数 emaFast = input.int(5, "快速EMA") emaSlow = input.int(20, "慢速EMA") rsiLen = input.int(7, "RSI周期") volRatio = input.float(1.8, "量能放大倍数") // 指标计算 ema1 = ta.ema(close, emaFast) ema2 = ta.ema(close, emaSlow) rsi = ta.rsi(close, rsiLen) volAvg = ta.sma(volume, 20) volSpike = volume > volAvg * volRatio // 高频方向信号(核心逻辑) longCond = ema1 > ema2 and rsi > 50 and volSpike shortCond = ema1 < ema2 and rsi < 50 and volSpike // 信号绘图 plotshape(longCond, title="建议做多", location=location.belowbar, color=color.lime, style=shape.labelup, text="多") plotshape(shortCond, title="建议做空", location=location.abovebar, color=color.red, style=shape.labeldown, text="空") // 文本提示 label.new(longCond ? bar_index : na, low, "📈 建议多头方向", style=label.style_label_up, color=color.green, textcolor=color.white) label.new(shortCond ? bar_index : na, high, "📉 建议空头方向", style=label.style_label_down, color=color.red, textcolor=color.white) // 报警条件(用于接入Telegram) alertcondition(longCond, title="📈 多方向警报", message="🚀 多方向信号触发:{{ticker}}") alertcondition(shortCond, title="📉 空方向警报", message="🚨 空方向信号触发:{{ticker}}")Pine Script® indicatorby zhaohongsen851