Multi Averages - CustomizableThis script adds up to 5 moving averages to your plot!
Both type and length are customizable.
Exponential Moving Average (EMA)
Multi-Timeframe MA 200Multi-Timeframe MA 200
This powerful tool plots the 200-period Moving Average across multiple timeframes (5m, 15m, 30m, 1h, 4h, Daily) directly on your active chart. You can switch between SMA (Simple Moving Average) and EMA (Exponential Moving Average) for all timeframes at once.
Key features:
✅ 100% accurate calculation using the original timeframe
✅ Option to choose SMA or EMA
✅ Visual smoothing for cleaner display
✅ Floating labels showing the origin timeframe
✅ Clean interface – no clutter or legends
✅ Ideal for scalping, intraday, and swing traders
Developed by BELOTTO TRADER, founder of the CLUBE DO GAIN – one of the most engaged trading communities in the Portuguese-speaking world.
EMA 10,20 SMA 50, 200This indicator is very helpful for swing traders who plan their trades using EMAs and SMAs. It is used on the daily chart and displays the 10- and 20-EMA, as well as the 50- and 200-SMA.
Multi EMA & SMA IndicatorDraws EMA 5/20/50/100 and SMA 200 in different colors and thickness in a single indicator
Color Change EMA 200 (3 Min)- EMA 200 locked on 3 minute time frame
- Color changes red when bearish, and green when bullish.
3x Multi EMA/SMA ColoredThis is a Multi-Colored EMA/SMA Script with 3 ema's that can be toggled on/off and 3 sma's that can be toggled on/off.
Giving you more visibility where price is actually going using 3 ema's at the same time or 3 sma's at the same time allowing you to change the colors when Bearish or Bullish.
VIX Filter/RSI/EMA Bias/Cum-TICK w/ Exhaustion Zone DashboardThis all-in-one dashboard gives intraday traders a real-time visual read of market conditions, combining volatility regime, trend bias, momentum exhaustion, and internal strength — all in a fully customizable overlay that won’t clutter your chart.
📉 VIX Market Regime Detector
Identifies "Weak", "Normal", "Volatile", or "Danger" market states based on customizable VIX ranges and symbol (e.g., VXN or VIX).
📊 RSI Momentum Readout
Displays real-time RSI from any selected timeframe or symbol, with adjustable length, OB/OS thresholds, and color-coded exhaustion alerts.
📈 EMA Trend Bias Scanner
Compares fast and slow EMAs to define bullish or bearish bias, using your preferred timeframe, symbol, and EMA lengths — ideal for multi-timeframe setups.
🧠 Cumulative TICK Pressure & Exhaustion Engine
Analyzes internal market strength using cumulative TICK data to classify conditions as:
-Strong / Mild Bullish or Bearish Pressure
-Choppy / No Edge
-⚠️ Exhaustion Zones — when raw TICK values hit extreme highs/lows, a separate highlight box appears in the dashboard, warning of potential turning points
All logic is customizable, including TICK symbol, timeframes, thresholds, and lookback periods.
Scalpers and day traders who want fast, visual insight into market internals, exhaustion, and trend bias.
Combo 2/20 EMA & Bandpass Filter by TamarokDescription:
This strategy combines a 2/20 exponential moving average (EMA) crossover with a custom bandpass filter to generate buy and sell signals.
Use the Fast EMA and Slow EMA inputs to adjust trend sensitivity, and the Bandpass Filter Length, Delta, and Zones to fine-tune momentum turns.
Signals occur when both EMA and BPF agree in direction, with optional reversal and time filters.
How to use:
1. Add the script to your chart in TradingView.
2. Adjust the EMA and BP Filter parameters to match your asset’s volatility.
3. Enable ‘Reverse Signals’ to trade counter-trend, or use the time filter to limit sessions.
4. Set alerts on Long Alert and Short Alert for automated notifications.
Inspiration:
Based on HPotter’s original combo strategy (Stocks & Commodities Mar 2010).
Updated to Pine Script v6 with streamlined code and alerts.
WARNING:
For purpose educate only
Adjustable Percentage Range Moving Average - Add'l LinesThe Adjustable Percentage Range Moving Average (APRMA), originally developed by @ReallyWendy, is a versatile PineScript indicator designed for traders and market analysts to analyze market volatility and identify trends dynamically. Building on the original concept, this updated version plots a central moving average (MA) with four customizable percentage-based range bands around it. Users can select the MA type (SMA, EMA, HMA, RMA, SWMA, TMA, WMA, VWMA), timeframe, and length, tailoring the indicator to their trading style. Each range band (upper and lower) is calculated as a percentage offset from the MA, with adjustable colors and transparency settings for enhanced visual clarity. Extension lines project the latest values forward, with customizable styles (solid, dashed, dotted). The indicator includes toggleable display options for the MA and each range pair, making it an effective tool for identifying price ranges, support/resistance levels, and trend dynamics.
Credit to @ReallyWendy for the foundational concept.
9:45am NIFTY TRADINGTime Frame: 15 Minutes | Reference Candle Time: 9:45 AM IST | Valid Trading Window: 3 Hours
📌 Introduction
This document outlines a structured trading strategy for NIFTY & BANKNIFTY Options based on a 15-minute timeframe with a 9:45 AM IST reference candle. The strategy incorporates technical indicators, probability analysis, and strict trading rules to optimize entries and exits.
📊 Core Features
1. Reference Time Trading System
9:45 AM IST Candle acts as the reference for the day.
All signals (Buy/Sell/Reversal) are generated based on price action relative to this candle.
The valid trading window is 3 hours after the reference candle.
2. Signal Generation Logic
Signal Condition
Buy (B) Price breaks above reference candle high with confirmation
Sell (S) Price breaks below reference candle low with confirmation
Reversal (R) Early trend reversal signal (requires strict confirmation)
3. Probability Analysis System
The strategy calculates Win Probability (%) using 4 components:
Component Weight Calculation
Body Win Probability 30% Based on candle body strength (body % of total range)
Volume Win Probability 30% Current volume vs. average volume strength
Trend Win Probability 40% EMA crossover + RSI momentum alignment
Composite Probability - Weighted average of all 3 components
Probability Color Coding:
🟢 Green (High Probability): ≥70%
🟠 Orange (Medium Probability): 50-69%
🔴 Red (Low Probability): <50%
4. Timeframe Enforcement
Strictly 15-minute charts only (no other timeframes allowed).
System auto-disables signals if the wrong timeframe is selected.
📈 Technical Analysis Components
1. EMA System (Trend Analysis)
Short EMA (9) – Fast trend indicator
Middle EMA (20) – Intermediate trend
Long EMA (50) – Long-term trend confirmation
Rules:
Buy Signal: Price > 9 EMA > 20 EMA > 50 EMA (Bullish trend)
Sell Signal: Price < 9 EMA < 20 EMA < 50 EMA (Bearish trend)
2. Multi-Timeframe RSI (Momentum)
5M, 15M, 1H, 4H, Daily RSI values are compared for divergence/confluence.
Overbought (≥70) / Oversold (≤30) conditions help in reversal signals.
3. Volume Analysis
Volume Strength (%) = (Current Volume / Avg. Volume) × 100
Strong Volume (>120% Avg.) confirms breakout/breakdown.
4. Body Percentage (Candle Strength)
Body % = (Close - Open) / (High - Low) × 100
Strong Bullish Candle: Body > 60%
Strong Bearish Candle: Body < 40%
📊 Visual Elements
1. Information Tables
Reference Data Table (9:45 AM Candle High/Low/Close)
RSI Values Table (5M, 15M, 1H, 4H, Daily)
Signal Legend (Buy/Sell/Reversal indicators)
2. Chart Overlays
Reference Lines (9:45 AM High & Low)
EMA Lines (9, 20, 50)
Signal Labels (B, S, R)
3. Color Coding
High Probability (Green)
Medium Probability (Orange)
Low Probability (Red)
⚠️ Important Usage Guidelines
✅ Best Practices:
Trade only within the 3-hour window (9:45 AM - 12:45 PM IST).
Wait for confirmation (closing above/below reference candle).
Use probability score to filter high-confidence trades.
❌ Avoid:
Trading outside the 15-minute timeframe.
Ignoring volume & RSI divergence.
Overtrading – Stick to 1-2 high-probability setups per day.
🎯 Conclusion
This NIFTY Trading Strategy is optimized for 15-minute charts with a 9:45 AM IST reference candle. It combines EMA trends, RSI momentum, volume analysis, and probability scoring to generate high-confidence signals.
🚀 Key Takeaways:
✔ Reference candle defines the day’s bias.
✔ Probability system filters best trades.
✔ Strict 15M timeframe ensures consistency.
Happy Trading! 📈💰
Advanced Trend Panel v3.1This is a comprehensive dashboard indicator designed to give traders a multi-faceted view of the market at a single glance. It combines key indicators across multiple timeframes, calculates trend duration, and presents all information in a clean, color-coded table. This tool is perfect for confirming trade ideas, identifying trend alignment, and understanding the underlying market dynamics.
#### Key Features:
* **All-in-One Dashboard:** A convenient on-chart table summarizes the state of multiple key indicators, saving you screen space and time.
* **Multi-Timeframe (MTF) Forecast:** Analyzes the long-term trend on a higher timeframe (e.g., Daily) to provide context for the current chart's trend.
* **Trend Analysis:** Uses dual sets of EMAs (long-term and short-term) to define the primary and immediate trend directions.
* **Trend Duration:** A unique feature that calculates how long the current short-term and long-term trends have been active, helping you gauge trend maturity.
* **Core Indicators Included:**
* **ADX:** Measures trend strength to differentiate between strong trends and weak or sideways markets.
* **RSI:** Identifies overbought and oversold conditions.
* **Point of Control (POC):** Shows the price level with the highest traded volume over a lookback period, acting as a key level of support/resistance.
* **Volume:** Compares current volume to its moving average to spot unusual activity.
* **Customizable Alerts:** Set up alerts for trend changes (long-term or short-term), RSI crossing into overbought/oversold zones, or shifts in ADX trend strength.
#### How to Use:
1. Apply the indicator to your chart.
2. In the settings, configure the timeframes, indicator lengths, and display options to match your trading style.
3. Use the table to quickly assess if the long-term trend, short-term trend, and momentum are aligned.
4. Enable alerts to be notified of key changes in market conditions without having to watch the chart constantly.
**Disclaimer:** This script is for educational purposes only and should not be considered financial advice. All trading involves risk. Past performance is not indicative of future results. Please backtest and use this tool as part of a comprehensive trading plan with proper risk management.
Feedback is always welcome! If you find this indicator useful, please leave a like.
[LeonidasCrypto]EMA with Volatility GlowEMA Volatility Glow - Advanced Moving Average with Dynamic Volatility Visualization
Overview
The EMA Volatility Glow indicator combines dual exponential moving averages with a sophisticated volatility measurement system, enhanced by dynamic visual effects that respond to real-time market conditions.
Technical Components
Volatility Calculation Engine
BB Volatility Curve: Utilizes Bollinger Band width normalized through RSI smoothing
Multi-stage Noise Filtering: 3-layer exponential smoothing algorithm reduces market noise
Rate of Change Analysis: Dual-timeframe RoC calculation (14/11 periods) processed through weighted moving average
Dynamic Normalization: 100-period lookback for relative volatility assessment
Moving Average System
Primary EMA: Default 55-period exponential moving average with volatility-responsive coloring
Secondary EMA: Default 100-period exponential moving average for trend confirmation
Trend Analysis: Real-time bullish/bearish determination based on EMA crossover dynamics
Visual Enhancement Framework
Gradient Band System: Multi-layer volatility bands using Fibonacci ratios (0.236, 0.382, 0.618)
Dynamic Color Mapping: Five-tier color system reflecting volatility intensity levels
Configurable Glow Effects: Customizable transparency and intensity settings
Trend Fill Visualization: Directional bias indication between moving averages
Key Features
Volatility States:
Ultra-Low: Minimal market movement periods
Low: Reduced volatility environments
Medium: Normal market conditions
High: Increased volatility phases
Extreme: Exceptional market stress periods
Customization Options:
Adjustable EMA periods
Configurable glow intensity (1-10 levels)
Variable transparency controls
Toggleable visual components
Customizable gradient band width
Technical Calculations:
ATR-based gradient bands with noise filtering
ChartPrime-inspired multi-layer fill system
Real-time volatility curve computation
Smooth color gradient transitions
Applications
Trend Identification: Dual EMA system for directional bias assessment
Volatility Analysis: Real-time market stress evaluation
Risk Management: Visual volatility cues for position sizing decisions
Market Timing: Enhanced visual feedback for entry/exit consideration
EMA+ATR Band MTF Trend EntryThis is a Multi-Timeframe Trend Trading indicator strategy adapted from Sahil Rohmehtra’s Mentorship programme. The trading decision is made by first accessing the trend in higher timeframe (say Monthly) by using TWO EMAs. If the faster EMA (say 20 period) is above Slower EMA (say 50 period) and the price is above slower EMA then the trend is suitable for buyers. Similarly if faster EMA is below slow EMA and the price is below that then trend is suitable for sellers.
Once we access the trend in the higher timeframe we move to the lower timeframe (say Weekly) and access the 5-period RSI value. If RSI is below 30 then we can prepare for possible buy entry in lower (Daily) timeframe if entry conditions are met in daily timeframe. Similarly sell bias can be initiated when the higher timeframe EMA trend is down, daily RSI is above 70 and sell entry condition is met in daily timeframe. The RSI thresholds can be changed by the user.
Once we identified the RSI bias then wait for the confirmation candle in the lower timeframe (say 1 hour). In the entry timeframe we plot a band of 20 EMA of LOWs ± 1 ATR lines. Here,we wait for a candle to close above the 20 EMA of LOWs + 1 ATR for a buy signal with an increase in On Balance Volume (OBV) value. Similarly for sell signal we should get a candle close below the 20 EMA of LOWs - 1 ATR with corresponding change in OBV. This candle is the signal candle.
Once we get a Buy or Sell signal the corresponding stop loss is the nearest LOW - 1 ATR or HIGH + 1 ATR. The ATR scaling may be changed by the user. Now if another candle closes above the high of the buy signal candle then enter on buy. If the low of the buy signal candle is broken then it is a potential short-term sell entry. Similarly if another candle closes below the sell signal candle then enter short and if there is a close above high of the signal candle then it is a potential buy entry.
EMA Grid + Martingale Strategy (Long-Only) with CooldownTitle:
EMA Grid + Martingale Strategy (Long-Only) with Cooldown
Short Summary:
A long-only strategy combining EMA trend filters, grid-based entries, optional martingale sizing, and a cooldown feature to manage position timing and exits.
Full Description:
This strategy uses a 4-EMA trend confirmation system to detect bullish momentum, then deploys a grid-style entry method with optional martingale position sizing. It includes a cooldown mechanism to prevent reentry too soon after a completed trade cycle.
How It Works
1. Trend Confirmation: Two EMA groups (fast/slow) determine whether market conditions are bullish.
2. Initial Entry: A new position is entered when both EMA groups confirm an uptrend and no position is currently active.
3. Grid Entries: Additional long entries are placed when price drops by a defined pip distance from the last entry, respecting the maximum number of entries.
4. Martingale Sizing (Optional): Grid orders can increase in size with each level using a customizable multiplier.
5. Weighted-Average Exit: All positions close once price reaches or exceeds the average entry price plus a buffer.
6. Cooldown Timer: After closing a position set, the strategy waits a defined number of bars before opening a new grid.
Key Features
• 4 customizable EMAs for trend confirmation.
• Dynamic grid-style long entries based on pip intervals.
• Optional martingale-style position sizing.
• Weighted-average price exit logic with buffer control.
• Cooldown bar period to limit overtrading.
• Suitable for optimization and backtesting with full control over inputs.
Use Cases
• Designed for trending markets where pullbacks present entry opportunities.
• Helps manage staged entries while avoiding premature reentry.
• Ideal for testing martingale and grid-based strategies with exit precision.
Note: This strategy is for testing and educational purposes only. It does not guarantee profits and is not financial advice.
Advanced Swing Breakout + RSI + EMA + Smart Volume SpikeThis indicator is designed to identify high-probability swing trade setups using a confluence of:
Swing High/Low Breakouts
RSI Trend Strength
EMA Directional Bias
Smart Volume Spike Confirmation
It combines key price action levels with volume and momentum filters to generate clean, actionable breakout alerts. It’s perfect for both intraday and swing traders looking to trade breakouts with confirmation from multiple technical layers.
⚙️ How It Works:
✅ Swing Detection:
Plots Swing Highs and Swing Lows based on the past N candles.
Highlights breakouts above highs or breakdowns below lows.
💪 RSI Filter:
Confirms whether the breakout is supported by RSI momentum.
Bullish breakout requires RSI > 50 and price above EMA.
Bearish breakdown requires RSI < 50 and price below EMA.
📈 EMA Trend Bias:
EMA (default 20-period) shows directional bias.
Used as a filter to confirm trade direction.
🔊 Smart Volume Spike:
Detects significant volume spikes above a moving average threshold.
Color-coded bars show whether volume is bullish, bearish, or neutral.
Ensures breakout is not on weak or average volume.
🚨 Alerts Included:
✅ Break Above Swing High: Only triggers when RSI, EMA, and Volume all confirm the move.
⚠️ Break Below Swing Low: Triggered only when bearish conditions are met.
📊 Visual Output:
Swing Highs: 🔴 Red Dots
Swing Lows: 🟢 Green Dots
EMA Line: 🟠 Orange Line
Volume Spike Bars: Appears in separate pane with dynamic color logic.
🧠 Best Use Cases:
Intraday Scalping (5m–15m timeframes)
Swing Trading (1H–4H)
Breakout Confirmation
Volume-Supported Entry Filtering
Givemepeace EMA + Market Structure//@version=6
indicator("Givemepeace EMA + Market Structure", overlay=true, max_lines_count=20, max_labels_count=50)
//Settings
length = input.int(21, "Swing Length", minval=5, maxval=50)
ema_length = input.int(55, "EMA Length", minval=1)
show_ema = input.bool(true, "Show EMA Lines")
show_swing = input.bool(true, "Show Swing Points")
show_fibo = input.bool(true, "Show Fibonacci Levels")
show_weekly = input.bool(true, "Show Weekly Levels")
show_monday = input.bool(true, "Show Monday High/Low")
show_prev_weekly = input.bool(true, "Show Previous Weekly Levels")
//Style
swinghCss = input.color(color.red, 'Swing High Color', group = 'Style')
swinglCss = input.color(color.teal, 'Swing Low Color', group = 'Style')
// EMA Lines
ema_15m = request.security(syminfo.tickerid, "15", ta.ema(close, ema_length))
ema_1h = request.security(syminfo.tickerid, "60", ta.ema(close, ema_length))
ema_4h = request.security(syminfo.tickerid, "240", ta.ema(close, ema_length))
// Plot EMA lines
plot(show_ema ? ema_15m : na, title="EMA 15m", color=color.purple, linewidth=1)
plot(show_ema ? ema_1h : na, title="EMA 1H", color=color.blue, linewidth=2)
plot(show_ema ? ema_4h : na, title="EMA 4H", color=color.red, linewidth=3)
// Weekly Levels
weekly_open = request.security(syminfo.tickerid, "1W", open, lookahead=barmerge.lookahead_on)
prev_weekly_open = request.security(syminfo.tickerid, "1W", open , lookahead=barmerge.lookahead_on)
prev_weekly_high = request.security(syminfo.tickerid, "1W", high , lookahead=barmerge.lookahead_on)
prev_weekly_low = request.security(syminfo.tickerid, "1W", low , lookahead=barmerge.lookahead_on)
// Monday High/Low (first day of week)
is_monday = dayofweek == dayofweek.monday
var float monday_high = na
var float monday_low = na
if is_monday and na(monday_high )
monday_high := high
monday_low := low
else if is_monday
monday_high := math.max(monday_high, high)
monday_low := math.min(monday_low, low)
// Reset Monday levels on new week
if ta.change(time("1W")) != 0
monday_high := na
monday_low := na
// Draw horizontal lines with labels (only latest ones)
var line wo_line = na
var line mh_line = na
var line ml_line = na
var line pwo_line = na
var line pwh_line = na
var line pwl_line = na
var label wo_label = na
var label mh_label = na
var label ml_label = na
var label pwo_label = na
var label pwh_label = na
var label pwl_label = na
if show_weekly and not na(weekly_open) and barstate.islast
if not na(wo_line)
line.delete(wo_line)
label.delete(wo_label)
wo_line := line.new(bar_index, weekly_open, bar_index + 10, weekly_open, color=color.black, width=1, style=line.style_solid)
wo_label := label.new(bar_index + 10, weekly_open, "WO", style=label.style_none, color=color(na), textcolor=color.black, size=size.small)
if show_monday and not na(monday_high) and barstate.islast
if not na(mh_line)
line.delete(mh_line)
label.delete(mh_label)
mh_line := line.new(bar_index, monday_high, bar_index + 10, monday_high, color=color.red, width=1, style=line.style_solid)
mh_label := label.new(bar_index + 10, monday_high, "MH", style=label.style_none, color=color(na), textcolor=color.red, size=size.small)
if show_monday and not na(monday_low) and barstate.islast
if not na(ml_line)
line.delete(ml_line)
label.delete(ml_label)
ml_line := line.new(bar_index, monday_low, bar_index + 10, monday_low, color=color.red, width=1, style=line.style_solid)
ml_label := label.new(bar_index + 10, monday_low, "ML", style=label.style_none, color=color(na), textcolor=color.red, size=size.small)
// Previous Weekly Levels
if show_prev_weekly and not na(prev_weekly_open) and barstate.islast
if not na(pwo_line)
line.delete(pwo_line)
label.delete(pwo_label)
pwo_line := line.new(bar_index, prev_weekly_open, bar_index + 10, prev_weekly_open, color=color.gray, width=1, style=line.style_dashed)
pwo_label := label.new(bar_index + 10, prev_weekly_open, "PWO", style=label.style_none, color=color(na), textcolor=color.gray, size=size.small)
if show_prev_weekly and not na(prev_weekly_high) and barstate.islast
if not na(pwh_line)
line.delete(pwh_line)
label.delete(pwh_label)
pwh_line := line.new(bar_index, prev_weekly_high, bar_index + 10, prev_weekly_high, color=color.gray, width=1, style=line.style_dashed)
pwh_label := label.new(bar_index + 10, prev_weekly_high, "PWH", style=label.style_none, color=color(na), textcolor=color.gray, size=size.small)
if show_prev_weekly and not na(prev_weekly_low) and barstate.islast
if not na(pwl_line)
line.delete(pwl_line)
label.delete(pwl_label)
pwl_line := line.new(bar_index, prev_weekly_low, bar_index + 10, prev_weekly_low, color=color.gray, width=1, style=line.style_dashed)
pwl_label := label.new(bar_index + 10, prev_weekly_low, "PWL", style=label.style_none, color=color(na), textcolor=color.gray, size=size.small)
// Swing Detection (LuxAlgo style)
var float phy = na // Previous high
var float ply = na // Previous low
var float last_hh = na // Last Higher High
var float last_hl = na // Last Higher Low
var int last_hh_bar = na
var int last_hl_bar = na
ph = ta.pivothigh(length, length)
pl = ta.pivotlow(length, length)
n = bar_index
// Process Swing Highs
if not na(ph)
H = ph > phy ? 'HH' : 'LH'
if show_swing
label.new(n , ph, H, color = color(na), style = label.style_label_down, textcolor = swinghCss, size = size.normal)
// Track HH for Fibonacci
if H == 'HH'
last_hh := ph
last_hh_bar := n
phy := ph
// Process Swing Lows
if not na(pl)
L = pl < ply ? 'LL' : 'HL'
if show_swing
label.new(n , pl, L, color = color(na), style = label.style_label_up, textcolor = swinglCss, size = size.normal)
// Track HL and draw Fibonacci from last HH to this HL
if L == 'HL' and show_fibo and not na(last_hh)
last_hl := pl
last_hl_bar := n
// Calculate Fibonacci levels from HH to HL
swing_range = last_hh - last_hl
fib_236 = last_hl + (swing_range * 0.236)
fib_382 = last_hl + (swing_range * 0.382)
fib_500 = last_hl + (swing_range * 0.500)
fib_618 = last_hl + (swing_range * 0.618)
fib_705 = last_hl + (swing_range * 0.705)
fib_786 = last_hl + (swing_range * 0.786)
// Draw Fibonacci lines from HH to future
start_bar = last_hh_bar
end_bar = bar_index + 30
// Draw key Fibonacci levels
line.new(start_bar, fib_236, end_bar, fib_236, color=color.gray, width=1, style=line.style_dotted)
line.new(start_bar, fib_382, end_bar, fib_382, color=color.blue, width=1, style=line.style_dashed)
line.new(start_bar, fib_500, end_bar, fib_500, color=color.purple, width=2, style=line.style_solid)
line.new(start_bar, fib_618, end_bar, fib_618, color=color.yellow, width=2, style=line.style_dashed)
line.new(start_bar, fib_705, end_bar, fib_705, color=color.orange, width=2, style=line.style_dashed)
line.new(start_bar, fib_786, end_bar, fib_786, color=color.red, width=1, style=line.style_dashed)
// Add Fibonacci labels
label.new(end_bar - 5, fib_236, "23.6", style=label.style_label_left, color=color.gray, textcolor=color.white, size=size.small)
label.new(end_bar - 5, fib_382, "38.2", style=label.style_label_left, color=color.blue, textcolor=color.white, size=size.small)
label.new(end_bar - 5, fib_500, "50.0", style=label.style_label_left, color=color.purple, textcolor=color.white, size=size.small)
label.new(end_bar - 5, fib_618, "61.8", style=label.style_label_left, color=color.yellow, textcolor=color.black, size=size.small)
label.new(end_bar - 5, fib_705, "70.5", style=label.style_label_left, color=color.orange, textcolor=color.black, size=size.small)
label.new(end_bar - 5, fib_786, "78.6", style=label.style_label_left, color=color.red, textcolor=color.white, size=size.small)
// Add info box
if barstate.islast
var table info_table = table.new(position.top_right, 2, 5, bgcolor=color.white, border_width=1)
table.cell(info_table, 0, 0, "Last HH:", text_color=color.black, text_size=size.small)
table.cell(info_table, 1, 0, str.tostring(last_hh, '#.####'), text_color=color.red, text_size=size.small)
table.cell(info_table, 0, 1, "Last HL:", text_color=color.black, text_size=size.small)
table.cell(info_table, 1, 1, str.tostring(last_hl, '#.####'), text_color=color.teal, text_size=size.small)
table.cell(info_table, 0, 2, "Fib Range:", text_color=color.black, text_size=size.small)
table.cell(info_table, 1, 2, str.tostring(swing_range, '#.####'), text_color=color.blue, text_size=size.small)
table.cell(info_table, 0, 3, "WO:", text_color=color.black, text_size=size.small)
table.cell(info_table, 1, 3, str.tostring(weekly_open, '#.####'), text_color=color.black, text_size=size.small)
table.cell(info_table, 0, 4, "Mon H/L:", text_color=color.black, text_size=size.small)
table.cell(info_table, 1, 4, str.tostring(monday_high, '#.##') + "/" + str.tostring(monday_low, '#.##'), text_color=color.red, text_size=size.small)
ply := pl
filter duplicate buy sell short cover signals[VP]I was looking for an indicator that would filter signals but could only find solutions for a buy/sell system. I couldn't locate one that dealt with buy/sell AND short/cover.
The indicator expands the idea from the link:
stackoverflow.com
Trading Panel with EMA Crossovers## Trading Panel with EMA Crossovers - Description
**What it does:**
This indicator creates a comprehensive trading dashboard that monitors 6 key technical indicators and displays them in an easy-to-read table at the bottom right of your chart. It analyzes market conditions in real-time and provides clear buy/sell signals based on multiple confirmation factors.
**Key Features:**
1. **EMA Crossover Tracking (7/21 & 50/200)**
- Shows whether fast EMAs are above (CROSSOVER/BULL) or below (CROSSUNDER/BEAR) slow EMAs
- Helps identify trend direction and potential entry/exit points
- The 7/21 catches short-term momentum shifts
- The 50/200 confirms longer-term trend strength
2. **Momentum Indicators**
- **RSI**: Identifies overbought (>70) and oversold (<30) conditions
- **MFI**: Similar to RSI but includes volume, making it more reliable
- **MACD**: Confirms trend direction and momentum shifts
3. **Volume Analysis**
- **OBV (On Balance Volume)**: Shows whether smart money is accumulating or distributing
- Helps confirm if price moves are supported by volume
4. **Overall Signal System**
- Counts bullish vs bearish signals from all indicators
- Provides clear BUY/SELL/STRONG BUY/STRONG SELL recommendations
- When both EMAs align (both bull or both bear), it triggers the strongest signals
**Why it's helpful:**
1. **All-in-One View**: Instead of cluttering your chart with multiple indicators, everything is condensed into one clean table
2. **Multiple Confirmation**: Combines trend (EMAs), momentum (RSI/MFI/MACD), and volume (OBV) for more reliable signals
3. **Visual Clarity**: Color-coded signals (green for bullish, red for bearish) make it easy to assess market conditions at a glance
4. **Reduces False Signals**: By requiring multiple indicators to align, it filters out weak trades
5. **Time-Saving**: No need to check multiple indicators manually - the "OVERALL" row gives you an instant market assessment
**Best Use Cases:**
- Trend following: Enter when overall signal shows BUY/STRONG BUY in an uptrend
- Reversal spotting: Watch for divergences between price and indicators
- Risk management: Avoid trades when signals are mixed or neutral
- Confirmation tool: Use alongside your existing strategy for extra confidence
This indicator is particularly effective for swing traders and position traders who want a quick, comprehensive view of market conditions before making trading decisions.
EMA Grid + Martingale Indicator (Long-Only)Title:
EMA Grid + Martingale Indicator (Long-Only)
Short Summary:
A 4-EMA trend filter combined with a grid-based entry system and optional martingale sizing to visualize staged long entries and exits in bullish markets.
Full Description:
This indicator combines a 4-EMA trend filter with a grid-based entry system and optional martingale-style position sizing to help traders visualize staged long entries and exits in trending markets.
How It Works
1. Trend Detection: Uses two sets of EMAs (fast/slow pairs) to confirm bullish momentum. A long signal is generated when both EMA groups align in an uptrend.
2. Grid Entries: After the initial long entry, additional grid levels are triggered every time price drops by the specified grid step (in pips).
3. Martingale Sizing (Optional): Each subsequent entry can increase in size based on the defined martingale factor.
4. Weighted-Average Exit: Calculates the weighted average of all grid entries and signals an exit when the price reaches or surpasses this level plus an optional buffer.
Key Features
• 4 EMA Trend Filter with fully customizable lengths.
• Dynamic grid entries with visual labels (L1, L2, etc.).
• Optional martingale position sizing.
• Weighted-average exit with adjustable buffer.
• Customizable parameters for EMAs, grid steps, max entries, and buffer pips.
• Clear chart visualization of EMAs and entry/exit levels.
Use Cases
• For traders using cost-averaging or grid strategies in bullish markets.
• Visualizes multiple entry levels and profit targets.
• Useful for backtesting and strategy planning.
Note: This indicator is for visualization and planning purposes only. It does not execute trades automatically. It does not guarantee profits and is not financial advice.
OB/OS adaptative v1.1# OB/OS Adaptative v1.1 - Multi-Timeframe Adaptive Overbought/Oversold Indicator
## Overview
The `tradingview_indicator_emas.pine` script is a sophisticated multi-timeframe indicator designed to identify dynamic overbought and oversold levels in financial markets. It combines EMA (Exponential Moving Average) crossovers and Bollinger Bands across monthly, weekly, and daily timeframes to create adaptive support and resistance levels that adjust to changing market conditions.
## Core Functionality
### Multi-Timeframe Analysis
The indicator analyzes three timeframes simultaneously:
- **Monthly (M)**: Long-term trend identification
- **Weekly (W)**: Intermediate-term trend identification
- **Daily (D)**: Short-term volatility measurement
### Technical Indicators Used
- **EMA 9 and EMA 20**: For trend identification and momentum assessment
- **Bollinger Bands (20-period)**: For volatility measurement and extreme level identification
- **Price action**: For confirmation of level validity and signal generation
## Key Features
### Adaptive Level Calculation
The indicator dynamically determines overbought and oversold levels based on market structure and trend bias:
#### Monthly Level Logic
- **Bullish Bias** (when monthly open > EMA20):
- Oversold = lower of EMA9 or EMA20
- Overbought = upper of EMA9 or Bollinger Upper Band
- **Bearish/Neutral Bias** (when monthly open ≤ EMA20):
- Oversold = Bollinger Lower Band
- Overbought = upper of EMA20 or EMA9
#### Weekly Level Logic
- **Bullish Bias** (when weekly open > EMA20):
- Oversold = lower of EMA9 or EMA20
- Overbought = Bollinger Upper Band
- **Bearish/Neutral Bias** (when weekly open ≤ EMA20):
- Oversold = Bollinger Lower Band
- Overbought = upper of EMA20 or EMA9
#### Daily Level Logic
- Simple Bollinger Bands:
- Oversold = Bollinger Lower Band
- Overbought = Bollinger Upper Band
### Final Level Determination
The indicator combines all three timeframes through a weighted averaging process:
1. Calculates initial values as the average of monthly, weekly, and daily levels
2. Ensures mathematical consistency by enforcing overbought_final ≥ oversold_final using min/max functions
3. Calculates a midpoint average level as the center of the range
### Visual Elements
- **Dynamic Lines**: Draws horizontal lines for current and previous period overbought, oversold, and average levels
- **Labels**: Places clear textual labels at the start of each period
- **Color Coding**:
- Red for overbought levels (resistance)
- Green for oversold levels (support)
- Blue for average levels (pivot point)
- **Transparency**: Previous period lines use semi-transparent colors to distinguish between current and historical levels
### Update Mechanism
- **Calculation Day**: User-defined day of the week (default: Monday)
- On the specified calculation day, the indicator:
- Updates all levels based on previous bar's data
- Draws new lines extending forward for a user-defined number of days
- Maintains previous period lines for comparison and trend analysis
- Automatically deletes and recreates lines to ensure clean visualization
### Proximity Detection
- Alerts when price approaches overbought/oversold levels (configurable distance in percentage)
- Helps identify potential reversal zones before actual crossovers occur
- Distance thresholds are user-configurable for both overbought and oversold conditions
### Alert Conditions
The indicator provides four distinct alert types:
1. **Cross below oversold**: Triggered when price crosses below the oversold level
2. **Cross above overbought**: Triggered when price crosses above the overbought level
3. **Near oversold**: Triggered when price approaches the oversold level within the configured distance
4. **Near overbought**: Triggered when price approaches the overbought level within the configured distance
### Debug Mode
When enabled, displays comprehensive debug information including:
- Current values for all levels (oversold, overbought, average)
- Timeframe-specific calculations and raw data points
- System status information (current day, calculation day, etc.)
- Lines existence and timing information
- Organized in multiple labels at different price levels to avoid overlap
## Configuration Parameters
| Parameter | Default Value | Description |
|---------|---------------|-------------|
| Short EMA (9) | 9 | Length for short-term EMA calculation |
| Long EMA (20) | 20 | Length for long-term EMA calculation |
| BB Length | 20 | Period for Bollinger Bands calculation |
| Std Dev | 2.0 | Standard deviation multiplier for Bollinger Bands |
| Distance to overbought (%) | 0.5 | Percentage threshold for "near overbought" alerts |
| Distance to oversold (%) | 0.5 | Percentage threshold for "near oversold" alerts |
| Calculation day | Monday | Day of week when levels are recalculated |
| Lookback days | 7 | Number of days to extend previous period lines backward |
| Forward days | 7 | Number of days to extend current period lines forward |
| Show Debug Labels | false | Toggle for comprehensive debug information display |
## Trading Applications
### Primary Use Cases
1. **Reversal Trading**: Identify potential reversal zones when price approaches overbought/oversold levels
2. **Trend Confirmation**: Use the adaptive nature of levels to confirm trend strength and direction
3. **Position Sizing**: Adjust position size based on distance from key levels
4. **Stop Placement**: Use opposite levels as dynamic stop-loss references
### Strategic Advantages
- **Adaptive Nature**: Levels adjust to changing market volatility and trend structure
- **Multi-Timeframe Confirmation**: Signals are validated across multiple timeframes
- **Visual Clarity**: Clear color-coded lines and labels enhance decision-making
- **Proactive Alerts**: "Near" conditions provide early warnings before crossovers
## Implementation Details
### Data Security
Uses `request.security()` function to fetch data from higher timeframes (monthly, weekly) while maintaining proper bar indexing with ` ` offset for open prices.
### Performance Optimization
- Uses `var` keyword to declare persistent variables that maintain state across bars
- Efficient line and label management with proper deletion before recreation
- Conditional execution of debug code to minimize performance impact
### Error Handling
- Comprehensive NA (not available) checks throughout the code
- Graceful degradation when data is unavailable for higher timeframes
- Mathematical safeguards to prevent invalid level calculations
## Conclusion
The OB/OS Adaptative v1.1 indicator represents a sophisticated approach to identifying market extremes by combining multiple technical analysis concepts. Its adaptive nature makes it particularly useful in trending markets where static levels may be less effective. The multi-timeframe approach provides a comprehensive view of market structure, while the visual elements and alert system enhance its practical utility for active traders.
Moving Average Exponential (Daily Frozen EMA)This script plots an Exponential Moving Average (EMA) based on the daily timeframe, but with a unique twist:
✅ The EMA value is frozen for the entire current daily session, only updating when a new daily candle begins.
🔍 How it works:
The EMA is calculated using the 1-day timeframe, regardless of the chart's current timeframe.
This EMA value remains fixed throughout the day — it doesn't fluctuate intrabar.
It updates only once the daily candle has closed, providing a stable and reliable reference point during the trading day.
The default is the 5 day EMA but can be changed to any EMA timeframe you desire such as 9, 21, 50, 100. 200, etc.
✨ Additional Features:
✅ Optional smoothing with various moving average types (SMA, EMA, WMA, SMMA, VWMA).
✅ Optional Bollinger Bands on top of the smoothed EMA.
✅ Adjustable settings for EMA length, smoothing type, Bollinger Band deviation, and display options.
🛠️ Use Cases:
Ideal for traders who want a non-reactive EMA during intraday trading.
Helps reduce signal noise by anchoring EMA to higher timeframe structure.
Useful for strategy development where EMA should represent confirmed daily bias only.
Hope this helps, happy trading!
DI/ADX Trend Strategy | (1-Min Scalping)Strategy Overview
This is an experimental 1-minute trend-following strategy combining DI+/DI-, ADX, RSI, MACD, VWAP, and EMA filters with a time-based exit. It aims to catch strong directional moves while strictly managing risk.
Indicator Components
• DI+/DI- + ADX – Trend direction + strength filter
• RSI (14) – Momentum confirmation (RSI > 55 or < 45)
• MACD Histogram – Detects directional momentum shifts
• Candle Body % Filter – Screens for strong commitment candles
• EMA 600 / 2400 – Long-term trend alignment
• Weekly VWAP – Entry only when price is above/below VWAP
• Trade Limit – Max 2 trades per direction per VWAP cycle
• Time-Based Stop – 0.50% SL, 3.75% TP, 12h (720 bars) time stop
Entry Logic
Long Entry:
• DI+ crosses above DI−
• RSI > 55
• MACD histogram > 0
• Strong bullish candle
• Price > VWAP
• EMA600 > EMA2400
• Within 25 bars of EMA crossover
• Max 2 long trades before VWAP resets
Short Entry:
• DI+ crosses below DI−
• RSI < 45
• MACD histogram < 0
• Strong bearish candle
• Price < VWAP
• EMA2400 > EMA600
• Within 25 bars of EMA crossover
• Max 2 short trades before VWAP resets
Exit Logic
• Stop Loss: 0.50%
• Take Profit: 3.75% (7.5R)
• Time Stop: 720 bars (~12 hours on 1m chart)
• Each trade exits independently
Testing Parameters
• Initial Capital: $10,000
• Commission: 0.10%
• Timeframe: 1-minute
• Tested on: BTCUSDT, ETHUSDT
• Pyramiding: Up to 5 positions allowed
• VWAP resets trade counter to reduce overtrading
Alerts
• Buy / Sell signal
• Trade Opened / Closed
• SL/TP triggered
⚠️ Notes
• Early-stage strategy — entry count varies by trend conditions
• Shared for educational use and community feedback
• Please forward-test before using live
• Open-source — contributions and suggestions welcome!
Disclaimer
This strategy is for educational purposes only and should not be considered financial advice. Past performance does not guarantee future results. Always validate independently before trading live.
Refined MA + Engulfing (M5 + Confirmed Structure Break)I would like to start by saying that this strategy was put together using ChatGPT, some past trades from myself and some backtested trades, and from my time as a student in Wallstreet Academy under Cue Banks.
I am not profitable yet. I am too jumpy and blow accounts. I'm hoping this strategy (and it's indicator twin) can help me spend less time on the charts, so that I'm not tempted to press buttons as much.
It does fire quite a bit. But, the Strategy Tester tab shows a 30% win rate with our wins being significant to our losses. So, in theory, if you followed the rules of this strategy STRICTLY, you COULD BE profitable.
With that being said, there are times that this strategy has shown to trigger and I ask, "Why?".
I just want to help myself and others, and maybe make some decent\cool stuff along the way. Enjoy
KR