Master ORB (Custom TZ, TF 5m/15m/30m/60m)Master ORB (Custom TZ, TF 5m / 15m / 30m / 60m) is a precision Opening Range Breakout indicator built for traders who want clean, rule-based structure across global market sessions.
The indicator automatically defines the Opening Range based on your selected timeframe (5, 15, 30, or 60 minutes) and session, with full custom time zone support. Once the opening range is formed, the high and low are clearly plotted on the chart, creating objective breakout levels for the rest of the session.
Master ORB is designed to remove discretion and noise by:
Locking in the opening range once it completes
Maintaining fixed, non-repainting levels
Visually separating range formation from breakout phase
This allows traders to focus on execution, confirmation, and risk management, rather than constantly adjusting levels.
The indicator works across major sessions including London, New York, Frankfurt, and NY PM, making it suitable for index futures, forex, and liquid equities. It integrates seamlessly with momentum tools, trend filters, and higher-timeframe bias.
Best used for:
Opening range breakout and breakdown trades
Session-based trading plans
Bias confirmation and invalidation levels
Structured entries with defined risk
Key features:
Selectable ORB length: 5m, 15m, 30m, or 60m
Custom time zone alignment
Fixed, non-repainting range levels
Multi-session support
Clean visual structure with minimal chart clutter
Master ORB is a framework indicator, not a signal generator. It provides the structure needed to trade with discipline, consistency, and clarity across sessions and markets.
Indicateurs et stratégies
SMA 20 & 5 MagicMoving Average based envelops and bands are quite popular tools in the equity trading universe. One such popular band is 20 SMA High-Low band. In 20 SMA High-Low band generally a BUY is signaled when price breaks above the High of the band, and a SELL when price falls below the Low of the band. However, at times the time-price points to look for trading/ investing opportunities and taking position are not very clear in this generic mode.
This script combines the 20 SMA High-Low band and a 5 SMA line plotted over it, to tackle this limitation. It helps to find more precise trading/ investing opportunities, Entry and Exit time-price points above & below the band, traversing along the 5 SMA line. The price within the band is usually considered as 'no trades' zone.
This set up can be applied on any TF, but generally holds good for swings on daily/ hourly TFs. By tweaking SMA 20 and 5 to SMA 200 and 50 respectively in the settings, it may also help in identifying medium/Long term trends and investment opportunities using daily/ weekly TFs .
Take it as a tool for learning and analysis. Happy trading/ investing.
FVG Detector - With Close Direction & Breakoutdetects fvg. sharp rejection and sweep. developed to help traders achieve success with close direction and breakout
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.
Swing Trader's DCR/WCRHere is the description formatted with simple tags, ready to copy and paste into your TradingView script description or personal notes.
Swing Trader's DCR/WCR Dashboard
This script creates a real-time dashboard on your chart to measure the Closing Range —a critical metric for verifying breakouts and momentum. It answers the question: "Who won the battle today, the bulls or the bears?"
The Logic
The script calculates the position of the Close relative to the High/Low range:
0%: Closed at the absolute low (Max Bearish)
50%: Closed in the middle (Neutral/Indecision)
100%: Closed at the absolute high (Max Bullish)
How to Read the Signals
The dashboard uses a high-contrast "Dark Mode" theme for instant readability:
STRONG (Dark Green): The stock is closing in the Top 25% of its range. This is your primary confirmation for breakouts. It signals that institutions are buying into the close.
WEAK (Dark Red): The stock is closing in the Bottom 25% of its range. This is a warning sign. If a stock breaks out but closes "WEAK," it is likely a failed breakout (or "Squat").
Trading Strategy Use Cases
Breakout Confirmation: Only trust breakouts that show a "STRONG" DCR signal.
Multi-Timeframe Check: Ensure both DCR (Day) and WCR (Week) are Green to confirm the trend is aligned on multiple timeframes.
End-of-Day Execution: Use this in the last 15 minutes of the session to filter out noise and enter trades with the highest conviction.
Markets [SolQuant]The Markets indicator displays global trading session times with visual range boxes and highlights market maker activity zones. It maps the three major sessions — New York, London, and Asia — along with specialized zones that have been observed to correlate with specific market behaviors.
█ USAGE
Session Boxes
Colored boxes are drawn for each active trading session, spanning from the session open to the session close. The box height covers the price range traded during that session. Each session uses a distinct color for quick identification:
• New York: The primary session for US equities and crypto volume.
• London: Overlaps with New York for peak liquidity in forex and global markets.
• Asia: Tokyo/Hong Kong session, often setting the tone for the following London session.
Session boxes provide immediate visual context about which global market was active during any given price action.
Market Maker Zones
Two specialized time windows are highlighted:
• Reversal Session: A time window commonly associated with market reversals and directional shifts.
• Gap Session: A time window where gaps and displacement moves frequently occur.
These zones are derived from observed patterns in market maker behavior and are intended as awareness tools rather than predictive signals.
█ DETAILS
Sessions are defined by fixed time ranges in their respective timezones. The indicator uses daylight saving time-aware timezone strings to ensure accuracy year-round. Each session's price range (high/low) is tracked dynamically and the box height updates in real time as the session progresses.
Market maker zones use the same box-drawing mechanism but target narrower time windows. All boxes are automatically removed after a configurable maximum count to prevent chart clutter.
█ SETTINGS
• Show NY / London / Asia: Toggle each session's display.
• Show Reversal Session / Gap Session: Toggle market maker zones.
• Session Colors: Customizable colors for each session and zone.
• Max Boxes: Controls how many historical session boxes are kept on chart.
This indicator displays fixed time-based session zones and does not predict price direction. Market maker zones are based on observed patterns that may not persist. It does not constitute financial advice.
ADAPTIVE SCALP MASTERADAPTIVE SCALP MASTER (ASM)
Overview
ADAPTIVE SCALP MASTER (ASM) is a high-performance technical analysis tool specifically engineered for scalpers and day traders. It combines statistical volatility analysis with a unique time-frame adaptation engine, allowing the script to automatically recalibrate its sensitivity whether you are trading the 1-minute chart or the 4-hour trend.
The core logic is based on Z-Score Mean Reversion coupled with Zero-Lag Least Squares Moving Average (ZLSMA) for trend filtering, ensuring that you enter trades only when momentum and statistical overextension align.
Key Features
Timeframe Adaptation Engine: ASM automatically adjusts its Z-Score lengths, thresholds, and ATR multipliers based on your current chart. It tightens parameters for high-frequency scalping (M1-M5) and widens them for higher timeframes to filter out market noise.
Z-Score Mean Reversion: Utilizes statistical standard deviation to identify overbought and oversold conditions with precision.
Zero-Lag Trend Filtering: Features a customized ZLSMA to provide a smooth, reactive trend baseline without the lag of traditional MAs.
Smart Risk Management: Automatically calculates dynamic Stop Loss and Take Profit levels based on current ATR volatility.
Aggressive Scalping Mode: A specialized toggle for experienced traders that maximizes signal frequency by loosening standard confirmation filters.
How It Works
Normalization: The indicator calculates the price deviation (Z-Score).
Adaptive Thresholds: It checks if the price has reached a statistically significant extreme (Overbought/Oversold).
Multi-Stage Filtering:
Trend Filter: Signals must align with the ZLSMA direction (optional).
Volume Filter: Requires a surge in volume to confirm the move (optional).
Candle Confirmation: Requires price action to flip in the signal's direction before firing.
Execution: Once all conditions are met, the script plots entry shapes and dynamic risk levels.
Settings Guide
Aggressive Mode: Use this for fast-paced scalping on M1. It disables the trend and volume filters to capture every micro-reversal.
Base Sensitivity: Controls how far back the Z-Score looks. Default is 10. Lower values make the indicator more reactive.
Base Threshold: Standard is 1.5. Increase this value (e.g., to 2.0) if you want fewer, higher-probability signals.
Min Bars Between: Use this to prevent "signal clustering" during periods of high volatility.
User Interface
The Info Panel provides real-time data including:
Current Market Bias (Trend direction).
Live Z-Score value.
Current ATR-based volatility status.
Trade Signal confirmation status.
MTF RSI Confluence (3 TFs) + Table + AlertsThis indicator displays RSI confluence across three user-selectable timeframes in a single oscillator pane. It's designed to help you quickly confirm whether momentum conditions (overbought/oversold/neutral) align across multiple time horizons before acting.
What it does
- Plots three RSI lines at once, each sourced from a different timeframe (defaults: 5m / 15m / 1H ).
- Applies independent overbought/oversold thresholds per timeframe , so each RSI can be evaluated with its own rules.
- Shows a color-coded table summarizing:
- timeframe
- RSI value
- status (OVERBOUGHT / NEUTRAL / OVERSOLD)
- that timeframe's OB/OS levels
- Highlights the pane background when there is full confluence:
- All 3 overbought (red tint)
- All 3 oversold (green tint)
- Provides alert conditions when all three timeframes agree on overbought or oversold.
How it works (key logic)
- RSI is calculated per timeframe using request.security() with lookahead=barmerge.lookahead_off to avoid forward-looking values.
- Each timeframe's RSI is classified:
- RSI >= Overbought → Overbought
- RSI <= Oversold → Oversold
- otherwise → Neutral
- Confluence triggers when all three statuses match (all overbought or all oversold).
- Signals/alerts are gated by barstate.isconfirmed so the confluence events only trigger on confirmed bars (reduces repaint-like behavior on the current forming bar).
How to use it
1. Add to chart (works on any symbol: crypto, forex, indices, stocks).
2. Configure:
- RSI Length (1–200)
- TF1 / TF2 / TF3 (any TradingView timeframe string)
- OB/OS per timeframe with input constraints:
- Overbought: 50–100
- Oversold: 0–50
- Optional: enable/disable the table and choose its position.
3. Interpret output:
- RSI line colors reflect status (red = overbought, green = oversold, gray = neutral).
- Table provides an at-a-glance confluence dashboard.
- Use alerts for "all oversold" or "all overbought" as a filter for entries/exits or as a regime warning.
Recommended usage
- Works well on lower chart timeframes (1m–15m) to confirm setups with a higher timeframe (e.g., 1H / 4H).
- Typical approach:
- Look for all-oversold confluence during uptrends (potential pullback exhaustion).
- Look for all-overbought confluence during downtrends (potential bounce exhaustion).
- Consider pairing with trend context (moving averages, market structure) to avoid counter-trend signals.
What makes it useful/original
- Combines three MTF RSI readings + independent thresholds into one pane and a compact table, reducing chart clutter.
- Uses non-forward-looking MTF data (lookahead_off) and confirmed-bar gating for more reliable confluence alerts.
- Clear "traffic light" style status labeling to support fast discretionary decisions and alert-driven workflows.
Disclaimer
This script is for educational and informational purposes only and does not constitute financial advice. Alerts and signals are based on historical/hypothetical calculations and do not guarantee future results. Always manage risk and validate signals within your own trading plan.
EMA + Ichimoku with LabelsSai and Deb - Levels marked with Exponential moving average of 9,20, 50 and 200 along with Ichimoku concept of kijunsen and SSB.
Forward Path (ATR Drift) + Confidence [v6]This indicator helps traders visualize where price is statistically likely to travel, how wide the uncertainty is, and how confident history has been in similar conditions — all without claiming to “predict” the market.
What this indicator does
This indicator projects a probable future price path for the next 15 / 20 / 30 candles on any chart and timeframe.
It combines:
Trend direction (EMA slope)
Volatility (ATR)
Historical behavior in similar market conditions
to show where price is likely to travel and how confident that expectation is.
What you see on the chart
Solid forward line
→ The most likely price path based on current trend momentum.
Dotted upper & lower lines
→ Expected price range using current volatility (ATR).
Think of this as the probable zone, not a target.
Confidence label
Prob Up (%) – how often price moved higher after N candles in similar conditions
Prob Down (%) – how often price moved lower
These are historical probabilities, not predictions.
How to use it (simple & practical)
1️⃣ Directional bias
If the projected path slopes up and Prob Up > 60%, the market favors longs.
If the path slopes down and Prob Down > 60%, the market favors shorts.
Near 50/50 → no edge, wait for structure or confirmation.
2️⃣ Expectation setting
Use the projection length (15 / 20 / 30 bars) to match your trade horizon.
Don’t expect price to exceed the dotted bands easily — they represent normal volatility.
3️⃣ Risk & trade management
Entries near the base path = better risk-reward.
Use the opposite band as a guide for:
Stop placement
Partial profit booking
Wide bands = reduce position size.
4️⃣ Trade filtering
Take trades only when your setup aligns with the projected direction.
Skip trades when:
Probability is low
Bands are extremely wide
Projection is flat (range-bound market)
Best use cases
Swing trading
Trade planning before entry
Position sizing & expectation control
Avoiding low-edge, random trades
What this indicator is NOT
❌ A price predictor
❌ A buy/sell signal generator
❌ A replacement for price action
It is a decision-support tool designed to visualize direction, uncertainty, and historical confidence.
Simple Trend + Signal (No Bug)//@version=5indicator("Simple Trend + Signal (No Bug)", overlay=true)
// === INPUTS ===fastEMA = input.int(20, "Fast EMA")slowEMA = input.int(50, "Slow EMA")lookback = input.int(20, "Zone Lookback")
// === TREND ===emaFast = ta.ema(close, fastEMA)emaSlow = ta.ema(close, slowEMA)
trendUp = emaFast > emaSlowtrendDown = emaFast < emaSlow
// === ZONES ===highestHigh = ta.highest(high, lookback)lowestLow = ta.lowest(low, lookback)
// === SIGNALS ===buySignal = trendUp and close <= emaFastsellSignal = trendDown and close >= emaFast
// === PLOTS ===plot(emaFast, color=color.green, linewidth=2)plot(emaSlow, color=color.red, linewidth=2)
plot(highestHigh, color=color.new(color.blue, 70))plot(lowestLow, color=color.new(color.orange, 70))
plotshape(buySignal, title="BUY", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")plotshape(sellSignal, title="SELL", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
Fibonacci Pivot OscillatorFIB PIVOT OSCILLATOR - Price Position Indicator
See exactly WHERE your price sits between Fibonacci pivot levels. This oscillator normalizes price position relative to classic Pivot Points, giving you a clear view of market structure.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 WHAT DOES IT DO?
Instead of cluttering your chart with multiple pivot lines, this indicator displays a single oscillator showing WHERE price is within the pivot range. Instantly see if price is in support or resistance territory.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚙️ HOW IT WORKS
1. Calculates Standard Pivot Point from previous period:
Pivot = (High + Low + Close) / 3
2. Applies Fibonacci ratios to determine Support/Resistance levels:
• R1/S1 = Pivot ± (Range × 38.2%)
• R2/S2 = Pivot ± (Range × 61.8%)
• R3/S3 = Pivot ± (Range × 100%)
3. Normalizes current price position on a fixed scale:
• +100 = Price at R3 (100% Fib extension)
• +61.8 = Price at R2
• +38.2 = Price at R1
• 0 = Price at Pivot Point
• -38.2 = Price at S1
• -61.8 = Price at S2
• -100 = Price at S3
4. Adds a 9-period EMA signal line for momentum confirmation
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎯 SIGNALS
- BUY: Price crosses ABOVE the Pivot (oscillator crosses above 0)
- SELL: Price crosses BELOW the Pivot (oscillator crosses below 0)
- Optional: Display all Fibonacci level crossings
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📈 HOW TO USE
- Oscillator > 0 → Price in RESISTANCE zone (bullish bias)
- Oscillator < 0 → Price in SUPPORT zone (bearish bias)
- Extreme values (±100) → Price at major Fib levels, watch for reversals
- Histogram color intensity reflects momentum strength
- Use signal line crossovers for additional confirmation
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚙️ SETTINGS
- Period: Daily, Weekly, or Monthly pivot calculation
- Display: Toggle histogram, position line, zones, info table
- Signals: Show/hide BUY/SELL and secondary Fib crossings
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔔 ALERTS INCLUDED
- Pivot crossover (main BUY/SELL)
- R1, R2, R3 breakouts
- S1, S2, S3 breakdowns
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.
Acrobatic Loto Predictor [Taolue Remix]
市場のカオスを、幸運の数字へ。
このインジケーターは、現在のチャートの「価格変動」「時間」「ボラティリティ」を複雑な計算式(カオス力学)に通すことで、 Loto 6 (6/43) および Loto 7 (7/37) の予想数字を算出する実験的なツールです。
単なるランダム生成(乱数)ではありません。RSIやボリンジャーバンドといったテクニカル指標の数値を「乱数の種(シード)」として使用しているため、 「相場の息遣い」がそのまま数字として出力されます。
【主な機能】
1. モード: 設定画面から「Loto 6」と「Loto 7」を切り替え可能です。
2. カオス&テクニカル・ロジック:
- カオス力学: ローレンツ・アトラクタに着想を得た非線形計算。
- テクニカル: RSI(相対力指数)とボリンジャーバンドの位置関係を係数化。
- 概念定数: 黄金比(φ)や特定の数学的定数を隠し味に配合。
3. ストップ(固定)機能: チャートが動くたびに数字は変動しますが、「ここだ!」と思った瞬間にチェックボックスで数字を 完全固定(ロック) できます。
4. リロール(再抽選)機能: 固定した数字が気に入らない場合、リロール値を変更することで、その瞬間のパラレルワールド(別の計算結果)を呼び出せます。
5. ディスコモード: 数字が変動している間は背景色がリズミカルに変化し、固定すると色が落ち着く視覚効果付き。
【使い方】
1. チャートに追加します(ビットコインや為替など、動きのある銘柄推奨)。
2. 設定画面で Loto 6 か Loto 7 を選びます。
3. チャートを眺め、相場の「波」を感じます。
4. 直感的に良いタイミングで設定画面の 「ストップ(数値を固定)」 にチェックを入れます。
5. 表示された数字をメモします。(気に入らなければ「結果のリロール」数値を変更してください)
※免責事項:
このツールはエンターテインメント目的で作成されています。当選を保証するものではありません。宝くじの購入は自己責任で楽しみましょう。
---
Transform Market Chaos into Lucky Numbers.
This indicator is an experimental tool that generates predictions for Loto 6 and Loto 7 by feeding current chart data—price action, time, and volatility—into complex chaotic algorithms.
This is not a simple random number generator. It uses technical indicators like RSI and Bollinger Bands as "seeds" for generation. Essentially, the heartbeat of the market decides your numbers.
1. Mode: Switch between "Loto 6" (pick 6 from 43) and "Loto 7" (pick 7 from 37) in the settings.
2. Chaos & Technical Logic:
- Chaos Dynamics: Non-linear calculations inspired by the Lorentz Attractor.
- Technical Analysis: Weighing factors based on RSI and Bollinger Band positioning.
- Conceptual Constants: Incorporates the Golden Ratio (φ) and other mathematical constants.
3. Freeze/Lock Function: Numbers fluctuate with every tick. Use the "Stop" checkbox to lock the numbers at the exact moment you feel the market energy align.
4. Reroll System: If you lock the numbers but don't like the result, change the "Reroll" value to access a parallel timeline (alternate calculation result) for the same candle.
5. Disco Visuals: Background colors dance rhythmically while spinning and settle down when locked.
1. Add to chart (highly volatile assets like BTC or FX recommended).
2. Select Loto 6 or Loto 7 in the settings.
3. Watch the chart and feel the "wave" of the market.
4. Check the "Stop (Lock Numbers)" box in settings when your intuition strikes.
5. Note down the numbers. (Use the "Reroll" input if you want to reshape your destiny).
This tool is for entertainment purposes only. It does not guarantee any lottery winnings. Please play responsibly.
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!")
S21 SETUP (EMA9/21 + RSI 14)This script is only intended for a specific set up or strategy develop by our trading group. Lightning Strategy Group T3 Sniper has its specific strategy that requires this indicator script.
Supertrend with VWAP FilterThe Logic Breakdown
VWAP Integration: Added a standard VWAP calculation.
Filtering: The Supertrend "Buy" signal only triggers if close > vwap.
Dynamic Coloring: If the Supertrend says "up" but price is below VWAP, the line turns gray.
Candle Highlights: I added logic for Bullish/Bearish Engulfing and Dojis. These will highlight the bar color specifically when they align with your VWAP-filtered trend.
VIX-Market Stress & Volatility OscillatorVIXATA is a specialized sentiment tool designed to transform raw VIX data into a structured oscillator. By using fixed threshold levels, it identifies specific zones of market "complacency" and "extreme panic," helping traders spot potential market reversals with higher precision.
Technical Logic & Levels
Unlike standard VIX charts, VIXATA focuses on key psychological and technical levels to categorize market stress:
Level 20 (Green Dashed Line): The "Confidence Zone." Indicates a stable market where risk appetite is generally high.
Level 25-30 (Yellow/Orange Zones): The "Caution Zone." Volatility is rising, suggesting that the market is becoming unsettled.
Level 30 (Red Solid Line): The "High Stress" threshold. Historically, when VIXATA crosses this line, market fear is significant.
Level 40+ (Purple Solid Line): The "Extreme Panic" zone. These peaks often correlate with major price capitulations and long-term bottoming signals.
Daily ATR & Market Cap DisplayDaily ATR & Market Cap Display:
Displays daily ATR percentage with color-coded volatility alerts (🟢 0-4%, 🟡 4-8%, 🔴 8%+) and market cap with size indicators (🔴 <1B, 🟡 1-5B, 🟢 5B+).
Features:
- Daily ATR remains constant across all timeframes
- Customizable position (9 locations + vertical offset)
- Adjustable text size and colors
- Clean, fixed on-screen display
RSI(5) on RSI(14)RSI(5) on RSI(14)
This indicator is displayed in a separate pane and works on all timeframes.
It combines a classic RSI with a secondary RSI calculated on the RSI values themselves, allowing deeper analysis of momentum and internal strength.
Indicator Logic
The indicator consists of two components:
RSI (period 14) calculated from price data (default: Close).
RSI (period 5) calculated on the values of RSI(14), equivalent to Previous Indicator’s Data in MetaTrader.
This structure helps to:
identify overbought and oversold zones using the primary RSI,
observe acceleration, deceleration, and momentum shifts inside the RSI itself using the secondary RSI.
Visualization
RSI(14) is plotted as a configurable colored line.
RSI(5) on RSI(14) is plotted as a thin black line on top of the main RSI.
The indicator scale is fixed between 0 and 100.
Levels
20 and 80 — configurable oversold and overbought levels:
adjustable values,
customizable color,
line width,
line style (solid, dashed, dotted).
50 level:
black,
thin,
dashed,
acts as a mid-level equilibrium reference.
Inputs
Users can adjust:
RSI(14) period,
RSI(5) period,
price source for RSI(14),
colors and line widths,
level values and styles for 20 / 80.
Use Cases
This indicator can be used for:
momentum and strength analysis,
detecting internal RSI momentum shifts,
trend confirmation and filtering,
standalone oscillator analysis or as part of a larger trading system.






















