Swing S/R Bounce ScreenerStep 1: Identify Swing Highs & Lows on 1 minute timeframe
- price bars that stand out from the 5 bars on each side (left and right). A swing high is a bar whose high is higher than the 5 bars before and after it. A swing low is a bar whose low is lower than the 5 bars before and after it.
Step 2: Draw Horizontal Lines
When a swing high/low is identified, the scanner draws a horizontal line from that point extending to the right of the chart.
Step 3: Monitor Price Returns
The scanner continuously watches for price to return to these horizontal lines. When price approaches and touches the line:
* Resistance: Price touches from below and closes below the line
* Support: Price touches from above and closes above the line
Индикаторы и стратегии
Higher High Lower Low Multi-TF📊 Higher High Lower Low Multi-Timeframe Indicator
Detects market structure shifts (HH, HL, LH, LL)
Identifies trend direction (bullish / bearish / neutral)
Works across multiple timeframes (M5 to Weekly)
Displays a compact trend summary table on the chart
Customizable pivot sensitivity (Left/Right Bars)
Visual labels on chart for structure points
Ideal for structure-based trading and SMC traders
BOS + Liquidity Sweep Entries//@version=5
indicator("BOS + Liquidity Sweep Entries (Both Directions) — Fixed", overlay=true, shorttitle="BOS+LS")
// ===== INPUTS =====
swingLen = input.int(5, "Swing lookback", minval=1)
sweepATRmult = input.float(0.5, "Sweep wick threshold (ATR multiplier)", minval=0.0, step=0.1)
maxBarsSinceBOS = input.int(50, "Max bars to wait for sweep after BOS", minval=1)
showLabels = input.bool(true, "Show labels", inline="lbl")
showShapes = input.bool(true, "Show shapes", inline="lbl")
atr = ta.atr(14)
// ===== PIVOTS =====
ph_val = ta.pivothigh(high, swingLen, swingLen)
pl_val = ta.pivotlow(low, swingLen, swingLen)
// persist last pivots and their bar indices
var float lastPH = na
var int lastPH_bar = na
var float lastPL = na
var int lastPL_bar = na
if not na(ph_val)
lastPH := ph_val
lastPH_bar := bar_index - swingLen
if not na(pl_val)
lastPL := pl_val
lastPL_bar := bar_index - swingLen
// ===== BOS DETECTION (record the bar where BOS first confirmed) =====
var int bull_bos_bar = na
bull_bos = not na(lastPH) and close > lastPH and bar_index > lastPH_bar
if bull_bos
// store first confirmation bar (overwrite only if new)
if na(bull_bos_bar) or bar_index > bull_bos_bar
bull_bos_bar := bar_index
var int bear_bos_bar = na
bear_bos = not na(lastPL) and close < lastPL and bar_index > lastPL_bar
if bear_bos
if na(bear_bos_bar) or bar_index > bear_bos_bar
bear_bos_bar := bar_index
// If pivots update to a more recent pivot, clear older BOS/sweep markers that predate the new pivot
if not na(lastPH_bar) and not na(bull_bos_bar)
if bull_bos_bar <= lastPH_bar
bull_bos_bar := na
// clear bull sweep when pivot updates
var int last_bull_sweep_bar = na
if not na(lastPL_bar) and not na(bear_bos_bar)
if bear_bos_bar <= lastPL_bar
bear_bos_bar := na
var int last_bear_sweep_bar = na
// ensure sweep tracking vars exist (declared outside so we can reference later)
var int last_bull_sweep_bar = na
var int last_bear_sweep_bar = na
// ===== SWEEP DETECTION =====
// Bullish sweep: wick above BOS (lastPH) by threshold, then close back below the BOS level
bull_sweep = false
if not na(bull_bos_bar) and not na(lastPH)
bars_since = bar_index - bull_bos_bar
if bars_since <= maxBarsSinceBOS
wick_above = high - lastPH
if (wick_above > sweepATRmult * atr) and (close < lastPH)
bull_sweep := true
last_bull_sweep_bar := bar_index
// Bearish sweep: wick below BOS (lastPL) by threshold, then close back above the BOS level
bear_sweep = false
if not na(bear_bos_bar) and not na(lastPL)
bars_since = bar_index - bear_bos_bar
if bars_since <= maxBarsSinceBOS
wick_below = lastPL - low
if (wick_below > sweepATRmult * atr) and (close > lastPL)
bear_sweep := true
last_bear_sweep_bar := bar_index
// ===== ENTRY RULES (only after sweep happened AFTER BOS) =====
long_entry = false
if not na(last_bull_sweep_bar) and not na(bull_bos_bar)
if (last_bull_sweep_bar > bull_bos_bar) and (bar_index > last_bull_sweep_bar) and (close > lastPH)
long_entry := true
// avoid duplicate triggers from the same sweep
last_bull_sweep_bar := na
short_entry = false
if not na(last_bear_sweep_bar) and not na(bear_bos_bar)
if (last_bear_sweep_bar > bear_bos_bar) and (bar_index > last_bear_sweep_bar) and (close < lastPL)
short_entry := true
// avoid duplicate triggers from the same sweep
last_bear_sweep_bar := na
// ===== PLOTTING LINES =====
plot(lastPH, title="Last Swing High", color=color.orange, linewidth=2, style=plot.style_linebr)
plot(lastPL, title="Last Swing Low", color=color.teal, linewidth=2, style=plot.style_linebr)
// ===== LABELS & SHAPES (managed to avoid label flooding) =====
var label lb_bull_bos = na
var label lb_bear_bos = na
var label lb_bull_sweep = na
var label lb_bear_sweep = na
var label lb_long_entry = na
var label lb_short_entry = na
if showLabels
if bull_bos
if not na(lb_bull_bos)
label.delete(lb_bull_bos)
lb_bull_bos := label.new(bar_index, high, "Bull BOS ✓", yloc=yloc.abovebar, style=label.style_label_up, color=color.green, textcolor=color.white)
if bear_bos
if not na(lb_bear_bos)
label.delete(lb_bear_bos)
lb_bear_bos := label.new(bar_index, low, "Bear BOS ✓", yloc=yloc.belowbar, style=label.style_label_down, color=color.red, textcolor=color.white)
if bull_sweep
if not na(lb_bull_sweep)
label.delete(lb_bull_sweep)
lb_bull_sweep := label.new(bar_index, high, "Bull Sweep", yloc=yloc.abovebar, style=label.style_label_down, color=color.purple, textcolor=color.white)
if bear_sweep
if not na(lb_bear_sweep)
label.delete(lb_bear_sweep)
lb_bear_sweep := label.new(bar_index, low, "Bear Sweep", yloc=yloc.belowbar, style=label.style_label_up, color=color.purple, textcolor=color.white)
if long_entry
if not na(lb_long_entry)
label.delete(lb_long_entry)
lb_long_entry := label.new(bar_index, low, "LONG ENTRY", yloc=yloc.belowbar, style=label.style_label_up, color=color.lime, textcolor=color.black)
if short_entry
if not na(lb_short_entry)
label.delete(lb_short_entry)
lb_short_entry := label.new(bar_index, high, "SHORT ENTRY", yloc=yloc.abovebar, style=label.style_label_down, color=color.red, textcolor=color.white)
// optional shapes (good for quick visual scanning)
if showShapes
plotshape(bull_sweep, title="Bull Sweep Shape", location=location.abovebar, color=color.purple, style=shape.triangledown, size=size.tiny)
plotshape(bear_sweep, title="Bear Sweep Shape", location=location.belowbar, color=color.purple, style=shape.triangleup, size=size.tiny)
plotshape(long_entry, title="Long Shape", location=location.belowbar, color=color.lime, style=shape.triangleup, size=size.small)
plotshape(short_entry, title="Short Shape", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)
// ===== ALERTS =====
alertcondition(bull_bos, title="Bullish BOS", message="Bullish BOS confirmed above swing high")
alertcondition(bear_bos, title="Bearish BOS", message="Bearish BOS confirmed below swing low")
alertcondition(bull_sweep, title="Bullish Sweep", message="Liquidity sweep above swing high detected")
alertcondition(bear_sweep, title="Bearish Sweep", message="Liquidity sweep below swing low detected")
alertcondition(long_entry, title="LONG Entry", message="LONG Entry: BOS -> sweep -> reclaim")
alertcondition(short_entry, title="SHORT Entry", message="SHORT Entry: BOS -> sweep -> reclaim")
Simple Liquidity Sweep [rare_gold_steak]- Shows when the liquidity was swept.
- Shows BSL and SSL.
- Simple options to change styling.
I use it personally and some people liked it so I thought i'll share it with the public.
Enhanced Chande Momentum OscillatorEnhanced Chande Momentum Oscillator (Enh CMO)
📊 Description
The Enhanced Chande Momentum Oscillator is an advanced version of the classic Chande Momentum Oscillator with dynamic envelope boundaries that automatically adapt to market volatility. This indicator provides clear visual signals for potential price reversals and momentum shifts.
Key Features:
Original Chande Momentum Oscillator calculation
Dynamic upper and lower boundaries based on statistical analysis
Adaptive envelope that adjusts to market volatility
Visual fill area between boundaries for easy interpretation
Real-time values table with current readings
Built-in alert conditions for boundary touches
Customizable moving average types (SMA, EMA, WMA)
⚙️ Settings
CMO Settings:
CMO Length (9): Period for calculating the base Chande Momentum Oscillator
Source (close): Price source for calculations
Envelope Settings:
Envelope Length (20): Lookback period for calculating the moving average and standard deviation
Envelope Multiplier (1.5): Multiplier for standard deviation to create upper/lower bounds
Moving Average Type (EMA): Type of moving average for envelope calculation
📈 How to Use
Visual Elements
Lines:
White Line: Main Chande Momentum Oscillator
Red Line: Upper boundary (resistance level)
Green Line: Lower boundary (support level)
Yellow Line: Moving average of CMO (trend direction)
Purple Fill: Visual envelope between boundaries
Reference Lines:
Zero Line: Neutral momentum level
+50/-50 Lines: Traditional overbought/oversold levels
Trading Signals
🔴 Sell/Short Signals
CMO touches or crosses above upper boundary → Potential bearish reversal
CMO is above +50 and declining → Weakening bullish momentum
CMO crosses below yellow MA line while above zero → Momentum shift
🟢 Buy/Long Signals
CMO touches or crosses below lower boundary → Potential bullish reversal
CMO is below -50 and rising → Weakening bearish momentum
CMO crosses above yellow MA line while below zero → Momentum shift
⚡ Advanced Signals
Boundary contraction → Decreasing volatility, potential breakout coming
Boundary expansion → High volatility period, use wider stops
CMO hugging upper boundary → Strong uptrend continuation
CMO hugging lower boundary → Strong downtrend continuation
🎯 Trading Strategies
Strategy 1: Reversal Trading
Wait for CMO to touch extreme boundaries (red or green lines)
Look for divergence with price action
Enter counter-trend position when CMO starts moving back toward center
Set stop beyond the boundary breach point
Take profit near zero line or opposite boundary
Strategy 2: Momentum Confirmation
Use CMO direction to confirm trend
Enter positions when CMO crosses above/below yellow MA line
Hold positions while CMO remains on the correct side of MA
Exit when CMO crosses back through MA line
Strategy 3: Volatility Breakout
Monitor boundary width (envelope expansion/contraction)
When boundaries contract significantly, prepare for breakout
Enter in direction of CMO breakout from narrow range
Use boundary expansion as confirmation signal
⚠️ Important Notes
Best Timeframes
Scalping: 1m, 5m charts
Day Trading: 15m, 30m, 1H charts
Swing Trading: 4H, Daily charts
Market Conditions
Trending Markets: Focus on momentum confirmation signals
Ranging Markets: Focus on boundary reversal signals
High Volatility: Increase envelope multiplier (1.8-2.5)
Low Volatility: Decrease envelope multiplier (1.0-1.3)
Risk Management
Always use stop losses beyond boundary levels
Reduce position size during boundary expansion periods
Combine with price action and support/resistance levels
Monitor the real-time table for precise entry/exit levels
🔔 Alerts
The indicator includes built-in alert conditions:
"CMO Above Upper Bound": Potential reversal down signal
"CMO Below Lower Bound": Potential reversal up signal
Set these alerts to catch opportunities without constantly monitoring charts.
💡 Tips for Success
Combine with other indicators: Use with RSI, MACD, or volume indicators for confirmation
Watch for divergences: CMO making new highs/lows while price doesn't follow
Use multiple timeframes: Check higher timeframe CMO for overall trend context
Adjust settings for different assets: Crypto may need different settings than forex
Paper trade first: Test the indicator with your trading style before using real money
🎨 Customization Tips
Change colors in the Pine Script to match your chart theme
Adjust envelope length for faster (shorter) or slower (longer) signals
Modify envelope multiplier based on asset volatility
Hide the table if it obstructs your view by commenting out the table section
Complete trading solution: Pair with the Optimus Indicator (paid indicator) for multi-timeframe trend analysis and trend signals.
Together they create a powerful confluence system for professional trading setups.
JDB MA Breakout IndicatorAll credit goes to JDB_Trading . Follow on X.
This indicator visualises one of his strategies.
1. Detecting the dominant moving average.
2. Price is supposed to be at least 70 candles below it for buy signals/40 above for sells.
3. detects break on dominant MA + BB 20,2.
4. Used on W & M timeframes.
5. alerts possible.
Buying, selling and setting goalsBuying, selling and setting goals
Buying, selling and setting goals
HPS VariablesThis script will provide a chart with a list of the 4 HPS variables for trading TCT models.
Yasser Multiple Inside Bar Breakout SignalsDescription
Yasser Multiple Inside Bar Breakout Signals (Yasser_MIB) is a powerful TradingView indicator designed to detect high-probability breakout setups based on multiple inside bar (MIB) formations. Inside bar breakouts often precede strong market moves, making this tool ideal for traders who rely on price action, volatility compression, and breakout trading strategies.
🔑 Key Features:
✅ Automatic MIB Detection – Identifies and counts consecutive inside bars.
✅ Breakout Signals – Generates BUY/SELL signals upon valid breakout of the mother bar.
✅ Custom Risk:Reward Settings – Adjustable risk-to-reward ratio with built-in Stop Loss (SL) and Take Profit (TP) levels.
✅ ATR-based Stop Loss (Optional) – Dynamic volatility-based risk management.
✅ Trend Filter – Optional EMA filter to trade only in the trend direction.
✅ Visual Clarity – Mother bar levels, inside bar marks, entry/SL/TP lines, and breakout highlights.
✅ Alerts Ready – Receive instant alerts for MIB setups and breakouts.
This indicator is suitable for Forex, Stocks, Indices, Commodities, and Crypto markets across multiple timeframes. Whether you are a trend trader or a breakout trader, Yasser_MIB provides a structured approach to capture explosive market moves with disciplined risk management.
📂 Categories
Indicators
Technical Analysis
Price Action
Breakout Strategies
Risk Management
🏷 Tags
inside bar
multiple inside bar
MIB breakout
price action
mother bar
breakout strategy
trend filter
EMA filter
ATR stop loss
risk reward
forex trading
crypto trading
stocks
commodities
indices
Yasser indicators
Average Daily Range Zones + QuartilesAdded quartile lines to the ADR Zones indicator. The quartile lines only show up on the current session.
TF-Gated CCI x MA + ConsCount + Vol S/R — Signal (v2.6)This is a strategy based on 3 indicators with a view of predicting price of the market in the next 1.5-7.5 minutes depending on the chart you are using. it is best suitable to use with brokers like Tickz.
MACD COM PONTOS//@version=5
indicator(title="MACD COM PONTOS", shorttitle="MACD COM PONTOS")
//Plot Inputs
res = input.timeframe("", "Indicator TimeFrame")
fast_length = input.int(title="Fast Length", defval=12)
slow_length = input.int(title="Slow Length", defval=26)
src = input.source(title="Source", defval=close)
signal_length = input.int(title="Signal Smoothing", minval = 1, maxval = 999, defval = 9)
sma_source = input.string(title="Oscillator MA Type", defval="EMA", options= )
sma_signal = input.string(title="Signal Line MA Type", defval="EMA", options= )
// Show Plots T/F
show_macd = input.bool(true, title="Show MACD Lines", group="Show Plots?", inline="SP10")
show_macd_LW = input.int(3, minval=0, maxval=5, title = "MACD Width", group="Show Plots?", inline="SP11")
show_signal_LW= input.int(2, minval=0, maxval=5, title = "Signal Width", group="Show Plots?", inline="SP11")
show_Hist = input.bool(true, title="Show Histogram", group="Show Plots?", inline="SP20")
show_hist_LW = input.int(5, minval=0, maxval=5, title = "-- Width", group="Show Plots?", inline="SP20")
show_trend = input.bool(true, title = "Show MACD Lines w/ Trend Color", group="Show Plots?", inline="SP30")
show_HB = input.bool(false, title="Show Highlight Price Bars", group="Show Plots?", inline="SP40")
show_cross = input.bool(false, title = "Show BackGround on Cross", group="Show Plots?", inline="SP50")
show_dots = input.bool(true, title = "Show Circle on Cross", group="Show Plots?", inline="SP60")
show_dots_LW = input.int(5, minval=0, maxval=5, title = "-- Width", group="Show Plots?", inline="SP60")
//show_trend = input(true, title = "Colors MACD Lines w/ Trend Color", group="Show Plots?", inline="SP5")
// MACD Lines colors
col_macd = input.color(#FF6D00, "MACD Line ", group="Color Settings", inline="CS1")
col_signal = input.color(#2962FF, "Signal Line ", group="Color Settings", inline="CS1")
col_trnd_Up = input.color(#4BAF4F, "Trend Up ", group="Color Settings", inline="CS2")
col_trnd_Dn = input.color(#B71D1C, "Trend Down ", group="Color Settings", inline="CS2")
// Histogram Colors
col_grow_above = input.color(#26A69A, "Above Grow", group="Histogram Colors", inline="Hist10")
col_fall_above = input.color(#B2DFDB, "Fall", group="Histogram Colors", inline="Hist10")
col_grow_below = input.color(#FF5252, "Below Grow", group="Histogram Colors",inline="Hist20")
col_fall_below = input.color(#FFCDD2, "Fall", group="Histogram Colors", inline="Hist20")
// Alerts T/F Inputs
alert_Long = input.bool(true, title = "MACD Cross Up", group = "Alerts", inline="Alert10")
alert_Short = input.bool(true, title = "MACD Cross Dn", group = "Alerts", inline="Alert10")
alert_Long_A = input.bool(false, title = "MACD Cross Up & > 0", group = "Alerts", inline="Alert20")
alert_Short_B = input.bool(false, title = "MACD Cross Dn & < 0", group = "Alerts", inline="Alert20")
// Calculating
fast_ma = request.security(syminfo.tickerid, res, sma_source == "SMA" ? ta.sma(src, fast_length) : ta.ema(src, fast_length))
slow_ma = request.security(syminfo.tickerid, res, sma_source == "SMA" ? ta.sma(src, slow_length) : ta.ema(src, slow_length))
macd = fast_ma - slow_ma
signal = request.security(syminfo.tickerid, res, sma_signal == "SMA" ? ta.sma(macd, signal_length) : ta.ema(macd, signal_length))
hist = macd - signal
// MACD Trend and Cross Up/Down conditions
trend_up = macd > signal
trend_dn = macd < signal
cross_UP = signal >= macd and signal < macd
cross_DN = signal <= macd and signal > macd
cross_UP_A = (signal >= macd and signal < macd) and macd > 0
cross_DN_B = (signal <= macd and signal > macd) and macd < 0
// Condition that changes Color of MACD Line if Show Trend is turned on..
trend_col = show_trend and trend_up ? col_trnd_Up : trend_up ? col_macd : show_trend and trend_dn ? col_trnd_Dn: trend_dn ? col_macd : na
//Var Statements for Histogram Color Change
var bool histA_IsUp = false
var bool histA_IsDown = false
var bool histB_IsDown = false
var bool histB_IsUp = false
histA_IsUp := hist == hist ? histA_IsUp : hist > hist and hist > 0
histA_IsDown := hist == hist ? histA_IsDown : hist < hist and hist > 0
histB_IsDown := hist == hist ? histB_IsDown : hist < hist and hist <= 0
histB_IsUp := hist == hist ? histB_IsUp : hist > hist and hist <= 0
hist_col = histA_IsUp ? col_grow_above : histA_IsDown ? col_fall_above : histB_IsDown ? col_grow_below : histB_IsUp ? col_fall_below :color.silver
// Plot Statements
//Background Color
bgcolor(show_cross and cross_UP ? col_trnd_Up : na, editable=false)
bgcolor(show_cross and cross_DN ? col_trnd_Dn : na, editable=false)
//Highlight Price Bars
barcolor(show_HB and trend_up ? col_trnd_Up : na, title="Trend Up", offset = 0, editable=false)
barcolor(show_HB and trend_dn ? col_trnd_Dn : na, title="Trend Dn", offset = 0, editable=false)
//Regular Plots
plot(show_Hist and hist ? hist : na, title="Histogram", style=plot.style_columns, color=color.new(hist_col ,0),linewidth=show_hist_LW)
plot(show_macd and signal ? signal : na, title="Signal", color=color.new(col_signal, 0), style=plot.style_line ,linewidth=show_signal_LW)
plot(show_macd and macd ? macd : na, title="MACD", color=color.new(trend_col, 0), style=plot.style_line ,linewidth=show_macd_LW)
hline(0, title="0 Line", color=color.new(color.gray, 0), linestyle=hline.style_dashed, linewidth=1, editable=false)
plot(show_dots and cross_UP ? macd : na, title="Dots", color=color.new(trend_col ,0), style=plot.style_circles, linewidth=show_dots_LW, editable=false)
plot(show_dots and cross_DN ? macd : na, title="Dots", color=color.new(trend_col ,0), style=plot.style_circles, linewidth=show_dots_LW, editable=false)
//Alerts
if alert_Long and cross_UP
alert("Symbol = (" + syminfo.tickerid + ") TimeFrame = (" + timeframe.period + ") Current Price (" + str.tostring(close) + ") MACD Crosses Up.", alert.freq_once_per_bar_close)
if alert_Short and cross_DN
alert("Symbol = (" + syminfo.tickerid + ") TimeFrame = (" + timeframe.period + ") Current Price (" + str.tostring(close) + ") MACD Crosses Down.", alert.freq_once_per_bar_close)
//Alerts - Stricter Condition - Only Alerts When MACD Crosses UP & MACD > 0 -- Crosses Down & MACD < 0
if alert_Long_A and cross_UP_A
alert("Symbol = (" + syminfo.tickerid + ") TimeFrame = (" + timeframe.period + ") Current Price (" + str.tostring(close) + ") MACD > 0 And Crosses Up.", alert.freq_once_per_bar_close)
if alert_Short_B and cross_DN_B
alert("Symbol = (" + syminfo.tickerid + ") TimeFrame = (" + timeframe.period + ") Current Price (" + str.tostring(close) + ") MACD < 0 And Crosses Down.", alert.freq_once_per_bar_close)
//End Code
LibbyThis script is a refined chopzone index script with additional functionalities.
it produce buy and sell signals as directed by chopzone
How to use:
BUY: Look for buy signal on the chart and proceed to place buy or long orders
SELL: Look for sell on the chart and proceed to place sell or short orders.
NOTE: i recommend you set alerts and make it activate on bar close to avoid fadeouts and sideways.
expect sideways market and multiple opposite signals within a short time during news or when economic data are released.
as always, no indicator is failproof, it is recommended to always pair more than 1 indicator for more clarity and practice safe trading.
Multi-TF 👀### Multi-Timeframe Analysis (MTF-Analysis)
**Overview**
The Multi-Timeframe Analysis indicator is a powerful visualization tool designed for traders who incorporate multi-timeframe (MTF) strategies into their decision-making process. It overlays compact, customizable candle representations from up to four higher timeframes directly on your chart, positioned to the right of the last bar for quick reference. This allows you to monitor price action, momentum via EMAs, and key levels like Fair Value Gaps (FVGs) across multiple resolutions without switching charts. Built with efficiency in mind, it supports automatic timeframe detection, real-time updates, and a clean, non-intrusive design that enhances your trading workflow.
Ideal for day traders, swing traders, and scalpers, this indicator helps identify alignments between timeframes, spot potential reversals or continuations, and validate entries/exits based on higher-timeframe context. It leverages Pine Script v6 for smooth performance, with optimizations to handle up to 5000 bars back and extensive drawing limits.
**Key Features**
- **Multi-Timeframe Candle Display**: Renders recent candles (configurable from 5 to 100 per timeframe) from selected higher timeframes (e.g., 5m, 15m, 1H, 4H) as compact bars with customizable width, spacing, and padding. Bullish and bearish candles are color-coded for instant recognition.
- **Automatic Timeframe Adaptation**: When enabled, the indicator intelligently selects complementary timeframes based on your chart's resolution (e.g., on a 1m chart, it might show 5m, 15m, and 1H). Manual overrides are available for full control.
- **EMA Overlays**: Plots EMA9, EMA21, and EMA50 on each MTF section using a user-defined source (e.g., OHLC/4, close). EMAs can be dashed for clarity and enabled/disabled per timeframe, helping to gauge momentum and trend strength.
- **Fair Value Gaps (FVGs)**: Detects bullish (+FVG) and bearish (-FVG) gaps with a configurable lookback length (5-50 bars). Gaps are visualized as dotted boxes extending from the candle, highlighting potential support/resistance zones or imbalances.
- **Time Labels and Debugging**: Displays timestamp labels under every fourth candle for chronological context. A debug mode expands spacing and adds detailed labels (e.g., OHLC, volume, EMA values) for testing and verification.
- **Customization Options**: Extensive inputs for colors (bodies, wicks, EMAs, FVGs), label sizes/styles, and layout ensure seamless integration with your chart theme. Supports futures symbols with a time offset adjustment.
- **Performance Optimizations**: Uses arrays for efficient data management, clears drawings on realtime updates or timeframe changes, and limits buffer sizes to prevent overload.
**How to Use**
1. Add the indicator to your chart via TradingView's "Indicators" menu.
2. Configure timeframes: Enable/disable up to four TFs and set the number of candles to display. Use "Auto Timeframe" for smart defaults.
3. Adjust EMAs: Select the source type and toggle per TF to focus on relevant momentum signals (e.g., EMA9 crossovers for short-term trades).
4. Enable FVGs: Activate per TF and tweak the length to suit your market (shorter for volatile assets, longer for trends).
5. Fine-tune appearance: Modify padding, candle width, and colors to avoid clutter. Use debug mode during setup.
6. Interpret: Align your chart's price action with MTF candles—look for confluence in trends, FVGs filling as support/resistance, or EMA alignments for high-probability setups.
**Input Settings**
- **General**: Hour offset for time adjustments (useful for futures).
- **Timeframes**: Enable TFs 1-4, select resolutions (e.g., "5m"), and set candle counts. Auto mode simplifies this.
- **FVG/iFVG**: Toggle per TF, customize colors and detection length.
- **EMA**: Enable per TF, choose source, colors, and dashed style.
- **Candle Appearance**: Bull/bear colors for bodies/wicks, width/spacing/padding, label size/color.
- **Debug**: Expands view for detailed inspection.
**Notes**
- This indicator is non-repainting and updates in realtime, but performance may vary on lower timeframes with many candles—reduce counts if needed.
- FVGs are calculated locally on recent bars for efficiency; historical gaps beyond the buffer aren't shown.
- Compatible with all symbols, but best on volatile markets like forex, crypto, or indices.
- Feedback welcome—updates may include more MA types or advanced FVG filters.
Enhance your edge with multi-timeframe insights—try MTF-Analysis today!
Double Top/Bottom Screenert must look across all USA Stocks that is traded on Exchanges : Nasdaq, Nyse, Amex and have volume traded today bigger than 1mln. so on all of this stock look for this pattern and give alert, when it appears.
Step 1: Identify Swing Highs & Lows on 1 minute timeframe
- price bars that stand out from the 5 bars on each side (left and right). A swing high is a bar whose high is higher than the 5 bars before and after it. A swing low is a bar whose low is lower than the 5 bars before and after it.
Step 2: Draw Horizontal Lines
When a swing high/low is identified, the scanner draws a horizontal line from that point extending to the right of the chart.
Step 3: Monitor Price Returns
The scanner continuously watches for price to return to these horizontal lines. When price approaches and touches the line:
* Resistance: Price touches from below and closes below the line
* Support: Price touches from above and closes above the line
Step 4: Generate Alerts
When price touch the support/resistance level (bounces off it), an alert is generated at the close of that bar.
OR Box + Full Key Levels (Cash Hours • Strict v5)This is the final working script, just choose from the drop down to adjkust for Europeon / US markets
Consensio with colouringConsensio MA - Short MA with Colouring
This is a trend-following indicator based on the stacking order of three Simple Moving Averages (SMAs) to determine market consensus and visualize strength using a monochrome scale.
Key Features:
Three Customizable SMAs:
Fast MA (Default: 2)
Standard MA (Default: 7)
Slow MA (Default: 30)
Consensus Index:
The indicator assigns a score from +3 (Strongest Buy) to -3 (Strongest Sell) based on the MAs' vertical order (e.g., Fast > Standard > Slow is +3).
Monochrome Bar Colouring:
Bullish Consensus (+1 to +3): Bars are coloured in shades of White to Light Gray.
Bearish Consensus (-1 to -3): Bars are coloured in shades of Black to Dark Gray.
The intensity of the colour directly reflects the strength of the consensus.
Dynamic MA Line Colouring:
Fast MA: Changes colour upon crossing the Standard or Slow MA to signal short-term momentum shifts.
Standard MA: Changes to Green/Red when crossing the Slow MA.
Slow MA: Changes to Green/Red only when the strongest consensus (+3 or -3) is achieved.
How to Interpret:
Strong Bullish Trend (+3): MAs are perfectly aligned (Fast > Standard > Slow) and the bar is pure White.
Strong Bearish Trend (-3): MAs are perfectly reversed (Slow > Standard > Fast) and the bar is pure Black.
Contradictory Signals: Use the Fast MA's colour changes (Dark Green/Red) to spot immediate momentum changes even if the bar colour indicates a weaker trend.
HFT Jude FootprintThis script is designed to detect potential High-Frequency Trader (HFT) activity based on unusual volume spikes and candle behavior, in order to identify potential intraday breakout opportunities. It is best suited for 3-minute and 5-minute charts across NSE-listed stocks.
How It Works
The strategy combines three core conditions:
Volume Spike Multiplier: Detects when current volume is > X times the rolling average (e.g., 5× 20-bar average volume).
Breakout Confirmation: Entry is considered only if the close is:
Near the high (for longs) or low (for shorts) of the candle.
Higher than the previous high (for longs), or lower than previous low (for shorts).
Visual Signal: When all conditions align, a Buy or Sell label is plotted on the chart, right at the candle where the footprint is detected.
This script is tailored for scalpers, intraday traders, and HFT watchers. It is not a mash-up of generic indicators and based on my backtesting and observation of large HFT firms that operate in the indian equities market,
Strong Body Close Candle (90%)This indicator highlights Strong Body Close Candles, which are single bars where the real body makes up the vast majority of the total range and the close is positioned very close to the candle’s extreme. By default, the script looks for candles where the body is at least 90% of the full high-low range, and the close falls within the top 10% (for bullish) or bottom 10% (for bearish). These settings ensure that only very strong, conviction-driven candles are marked. The script plots labels above or below qualifying bars, colors the candle accordingly, and provides alert conditions so you can be notified in real time when such a candle forms.
Both percentages are fully adjustable so you can fine-tune the strictness of the definition. For example, if you change the body threshold to 85% and the close-to-extreme threshold to 15%, the script will highlight candles where the body makes up at least 85% of the total range and the close is within 15% of the high or low. This adjustment allows for a slightly looser definition, catching more frequent signals while still maintaining strength criteria. Built-in alerts let you choose between bullish and bearish signals separately (or both), ensuring you won’t miss setups even when you’re away from the chart.
This tool is flexible across timeframes and instruments. On lower timeframes, signals may appear more frequently, highlighting intraday momentum bursts, while on higher timeframes such as daily or weekly charts, these signals often represent periods of strong directional conviction. Traders can combine this indicator with additional filters such as trend direction, volume confirmation, VWAP, or moving averages to improve reliability and fit it into their broader strategy. Because the body and close thresholds are user-defined, you have control over whether the indicator is tuned to rare but powerful candles (stricter settings) or more frequent signals (looser settings).
The indicator is designed to be non-repainting since it only evaluates candles after they close. It can be used purely visually with chart labels and bar coloring or as part of an automated workflow with TradingView alerts. Alerts are triggered on bar close whenever a bullish or bearish strong body close candle is detected, allowing you to integrate them into your trading process via pop-ups, emails, mobile notifications, or webhooks. Whether you’re looking for sharp reversals, momentum continuation signals, or simply want to filter out weaker candles, this tool provides a clear and adjustable framework for identifying high-conviction bars.
Stochastic [Paifc0de]Stochastic — clean stochastic oscillator with visual masking, neutral markers, and basic filters
What it does
This indicator plots a standard stochastic oscillator (%K with smoothing and %D) and adds practical quality-of-life features for lower timeframes: optional visual masking when %K hugs overbought/oversold, neutral K–D cross markers, session-gated edge triangles (K crossing 20/80), and simple filters (minimum %K slope, minimum |K–D| gap, optional %D slope agreement, mid-zone mute, and a cooldown between markers). Display values are clamped to 0–100 to keep the panel scale stable. The tool is for research/education and does not generate entries/exits or financial advice.
Default preset: 20 / 10 / 10
K Length = 20
Classic lookback used in many textbooks. On intraday charts it balances responsiveness and stability: short enough to react to momentum shifts, long enough to avoid constant whipsaws. In practice it captures ~the last 20 bars’ position of close within the high–low range.
K Smoothing = 10
A 10-period SMA applied to the raw %K moderates the “saw-tooth” effect that raw stochastic can exhibit in choppy phases. The smoothing reduces over-reaction to micro spikes while preserving the main rhythm of swings; visually, %K becomes a continuous path that is easier to read.
D Length = 10
%D is the moving average of smoothed %K. With 10, %D becomes a clearly slower guide line. The larger separation between %K(10-SMA) and %D(10-SMA of %K) produces cleaner crosses and fewer spurious toggles than micro settings (e.g., 3/3/3). On M5–M15 this pair often yields readable cross cycles without flooding the chart.
How the 20/10/10 trio behaves
In persistent trends, %K will spend more time near 20 or 80; the 10-period smoothing delays flips slightly and emphasizes only meaningful turn attempts.
In ranges, %K oscillates around mid-zone (40–60). With 10/10 smoothing, cross signals cluster less densely; combining with the |K–D| gap filter helps keep only decisive crosses.
If your symbol is unusually volatile or illiquid, reduce K Length (e.g., 14) or reduce K Smoothing (e.g., 7) to keep responsiveness. If crosses feel late, decrease D Length (e.g., 7). If noise is excessive, increase K Smoothing first, then consider raising D Length.
Visuals
OB/OS lines: default 80/20 reference levels and a midline at 50.
Masking near edges: %K can be temporarily hidden when it is pressing an edge, approaching it with low slope, or going nearly flat near the boundary. This keeps the panel readable during “stuck at the edge” phases.
Soft glow (optional): highlights %K’s active path; can be turned off.
Light/Dark palette: quick toggle to match your chart theme.
Scale safety: all plotted values (lines, fills, markers) are clamped to 0–100 to prevent the axis from expanding beyond the stochastic range.
Markers and filters
Neutral K–D cross markers: circles in the mid-zone when %K crosses %D.
Edge triangles: show when %K crosses 20 or 80; can be restricted to a session window (02:00–12:00 ET).
Filters (optional):
Min %K slope: require a minimum absolute slope so very flat crosses are ignored.
Min |K–D| gap: demand separation between lines at the cross moment.
%D slope agreement: keep crosses that align with %D’s direction.
Mid-zone mute: suppress crosses inside a user-defined 40–60 band (defaults).
Cooldown: minimum bars between successive markers.
Parameters (quick guide)
K Length / K Smoothing / D Length: core stochastic settings. Start with 20/10/10; tune K Smoothing first if you see too much jitter.
Overbought / Oversold (80/20): adjust for assets that tend to trend (raise to 85/15) or mean-revert (lower to 75/25).
Slope & gap filters: increase on very noisy symbols; reduce if you miss too many crosses.
Session window (triangles only): use if you want edge markers only during active hours.
Marker size and offset: cosmetic; they do not affect calculations.
Alerts
K–D Cross Up (filtered) and K–D Cross Down (filtered): fire when a cross passes your filters/cooldown.
Edge Up / Edge Down: fire when %K crosses the 20/80 levels.
All alerts confirm on bar close.
Notes & attribution
Original implementation and integration by Paifc0de; no third-party code is copied.
This indicator is for research/education and does not provide entries/exits or financial advice.
Optimized Candlestick Entry Indicator1. Conflict Prevention System:
Pattern Strength Scoring: Each pattern gets a strength score (0-1) based on how well it matches ideal characteristics
Context Filtering: Patterns only trigger in appropriate market conditions (uptrend/downtrend)
Signal Prioritization: When multiple patterns occur, only the strongest one triggers
Mutual Exclusion: Prevents simultaneous buy/sell signals on the same candle
2. Enhanced Pattern Recognition:
Minimum Strength Threshold: Configurable minimum pattern strength (default 60%)
Trend Context Awareness: Hammer/Inverted Hammer only in downtrends, Hanging Man/Shooting Star only in uptrends
Improved Ratios: Better body-to-wick ratio calculations
Volume Consideration: Patterns require meaningful price ranges
3. Smart Decision Logic:
Pattern Counting: Counts active bullish vs bearish patterns
Conflict Resolution: If both signals exist, chooses the stronger one
Final Signal Generation: Only one signal type per candle
4. Advanced Features:
Trend Filter: Optional MA-based trend filter (20-period default)
Strength Display: Shows pattern strength percentage in labels
Context Information: Alerts include trend direction
Visual Enhancements: Larger, clearer signals with strength indicators
5. Configuration Options:
Trend Filter Toggle: Enable/disable trend-based filtering
Minimum Pattern Strength: Adjust sensitivity (0.3-1.0)
Individual Pattern Control: Enable/disable specific patterns
Visual Customization: Control labels, shapes, and alerts
How It Prevents Conflicts:
Context Separation: Bullish patterns only trigger in bearish contexts and vice versa
Strength Comparison: When conflicts arise, only the strongest pattern signals
Pattern Validation: Each pattern must meet strict strength criteria
Final Decision Layer: A final logic layer ensures only one signal type per bar
This optimized version will give you clear, non-conflicting entry signals with much higher accuracy and reliability!Retry
CDC Action Zone (TH) by MeowToolsThe CDC Action Zone indicator is like a stock market traffic light — it tells you when it’s green to go and when it’s red to stop. By combining just two EMAs (12 and 26), it highlights Buy and Sell zones clearly, cutting through market noise and keeping you on the right side of the trend. Think of it as a radar that spots the big moves before most people notice, giving you the confidence to ride the trend and exit before getting trapped. Meow 😺 give it a try and see how it can help your portfolio take off 🚀📈