Ultimate Reversion BandsURB – The Smart Reversion Tool
URB Final filters out false breakouts using a real retest mechanism that most indicators miss. Instead of chasing wicks that fail immediately, it waits for price to confirm rejection by retesting the inner band—proving sellers/buyers are truly exhausted.
Eliminates fakeouts – The retest filter catches only genuine reversions
Triple confirmation – Wick + retest + optional volume/RSI filters
Clear visuals – Outer bands show extremes, inner bands show retest zones
Works on any timeframe – From scalping to swing trading
Perfect for traders tired of getting stopped out by false breakouts.
Core Construction:
Smart Dynamic Bands:
Basis = Weighted hybrid EMA of HLC3, SMA, and WMA
Outer Bands = Basis ± (ATR × Multiplier)
Inner Bands = Basis ± (ATR × Multiplier × 0.5) → The "retest zone"
The Unique Filter: The Real Retest
Step 1: Identify an extreme wick touching the outer band
Step 2: Wait 1-3 bars for price to return and touch the inner band
Why it works: Most false breakouts never retest. A genuine reversal shows seller/buyer exhaustion by allowing price to come back to the "halfway" level.
Optional Confirmations:
Volume surge filter (default ON)
RSI extremes filter (optional)
Each can be toggled ON/OFF
How to Use:
Watch for extreme wicks touching the red/lime outer bands
Wait for the retest – price must return to touch the inner band (dotted line) within 3 bars
Enter on confirmation with built-in volume/RSI filters
Set stops beyond the extreme wick
Bands and Channels
LSTM-Inspired BB Mean Reversion// ============================================================================
// BOLLINGER BANDS MEAN REVERSION STRATEGY
// Based on LSTM Model True Positive Signal Characteristics
// ============================================================================
// Model learned to identify:
// 1. Price at/below Lower Bollinger Band (100% of TP signals)
// 2. RSI < 30 (Oversold) (75% of TP signals)
// 3. High volatility (wide BB bands)
// 4. Below average volume (contrarian)
// ============================================================================
Kernel EnvelopeKernel Envelope is a non-repainting dynamic band system designed to identify price overextension, trend exhaustion, volatility expansion, and high-probability reversal points.
Using a kernel-based smoothing technique, the indicator builds adaptive upper and lower envelopes that respond fluidly to market structure while maintaining exceptional stability for systematic trading.
These envelopes form the core of the system and allow traders to:
Detect bullish rebounds from the lower band
Detect bearish rejections from the upper band
Filter trend-following entries using volatility context
Identify zones where price is statistically stretched
Highlight exhaustion points during impulsive moves
The indicator also includes an integrated pivot-based trendline engine, which draws dynamic support and resistance levels derived from structural highs and lows.
These lines auto-extend forward and include breakout alerts, making them ideal for breakout traders, liquidity hunters, and structure-based strategies.
Key Features
Fully non-repainting envelope calculation
Adaptive smoothing responsive to market volatility
Clean gold/silver visual theme for maximum clarity
Glow-style rendering for enhanced band visibility
Automatic trendline generation using pivot points
Breakout alerts for upper and lower trendlines
Rebound and rejection alerts on envelope interaction
Works on all markets and timeframes
Whether you trade reversals, breakouts, or trend continuation setups, Kernel Envelope provides a reliable, low-noise framework for identifying high-quality trade signals.
Acknowledgment
This indicator is inspired by the original Nadaraya-Watson Envelope by LuxAlgo, whose work served as the foundation for further research and development.
Follow Me on X
For more indicators, updates, automated strategies, and educational content, you can follow me here:
X (Twitter): x.com
SCOTTGO Advanced MACD🌟 Custom MACD: Enhanced Visuals & Crossover Signals
This indicator is a highly customized version of the traditional Moving Average Convergence Divergence (MACD) oscillator, designed to provide clear, immediate visual confirmation of signal line crossovers and zero-line crossings.
Core Features:
MACD Crossover Shadow Fill: The area between the MACD line and the Signal line is filled with a customizable shadow. This instantly visualizes whether the MACD is above (bullish crossover) or below (bearish crossover) the Signal line.
Signal Crossover Markers (Arrows & Dots):
Crossover Dot: A small, configurable solid dot is plotted exactly at the point where the MACD and Signal lines intersect, providing pinpoint accuracy for the crossover event.
Crossover Arrows: Customizable up (green) and down (red) arrows are plotted using a small numerical offset from the crossover point, ensuring visibility without cluttering the indicator lines.
Zero-Line Crossing Markers: Distinct, small markers (circles/diamonds) are used to signal when the MACD line crosses the zero line, indicating a shift in momentum relative to the baseline.
Customizable MA Type: The user can select either Exponential Moving Average (EMA) or Simple Moving Average (SMA) for both the MACD oscillator calculation and the signal line calculation.
This indicator is ideal for traders who rely on MACD crossovers and require precise, configurable visual feedback directly on the chart.
Liquidity Sweep + FVG Entry Model//@version=5
indicator("Liquidity Sweep + FVG Entry Model", overlay = true, max_labels_count = 500, max_lines_count = 500)
// Just to confirm indicator is loaded, always plot close:
plot(close, color = color.new(color.white, 0))
// ─────────────────────────────────────────────
// PARAMETERS
// ─────────────────────────────────────────────
len = input.int(5, "Liquidity Lookback")
tpMultiplier = input.float(2.0, "TP Distance Multiplier")
// ─────────────────────────────────────────────
// LIQUIDITY SWEEP DETECTION
// ─────────────────────────────────────────────
lowestPrev = ta.lowest(low, len)
highestPrev = ta.highest(high, len)
sweepLow = low < lowestPrev and close > lowestPrev
sweepHigh = high > highestPrev and close < highestPrev
// Plot liquidity levels
plot(lowestPrev, "Liquidity Low", color = color.new(color.blue, 40), style = plot.style_line)
plot(highestPrev, "Liquidity High", color = color.new(color.red, 40), style = plot.style_line)
// ─────────────────────────────────────────────
// DISPLACEMENT DETECTION
// ─────────────────────────────────────────────
bullDisp = sweepLow and close > open and close > close
bearDisp = sweepHigh and close < open and close < close
// ─────────────────────────────────────────────
// FAIR VALUE GAP (FVG)
// ─────────────────────────────────────────────
bullFVG = low > high
bearFVG = high < low
// we’ll store the last FVG lines
var line fvgTop = na
var line fvgBottom = na
// clear old FVG lines when new one appears
if bullFVG or bearFVG
if not na(fvgTop)
line.delete(fvgTop)
if not na(fvgBottom)
line.delete(fvgBottom)
// Bullish FVG box
if bullFVG
fvgTop := line.new(bar_index , high , bar_index, high , extend = extend.right, color = color.new(color.green, 60))
fvgBottom := line.new(bar_index , low, bar_index, low, extend = extend.right, color = color.new(color.green, 60))
// Bearish FVG box
if bearFVG
fvgTop := line.new(bar_index , low , bar_index, low , extend = extend.right, color = color.new(color.red, 60))
fvgBottom := line.new(bar_index , high, bar_index, high, extend = extend.right, color = color.new(color.red, 60))
// ─────────────────────────────────────────────
// ENTRY, SL, TP CONDITIONS
// ─────────────────────────────────────────────
var line slLine = na
var line tp1Line = na
var line tp2Line = na
f_deleteLineIfExists(line_id) =>
if not na(line_id)
line.delete(line_id)
if bullDisp and bullFVG
sl = low
tp1 = close + (close - sl) * tpMultiplier
tp2 = close + (close - sl) * (tpMultiplier * 1.5)
f_deleteLineIfExists(slLine)
f_deleteLineIfExists(tp1Line)
f_deleteLineIfExists(tp2Line)
slLine := line.new(bar_index, sl, bar_index + 1, sl, extend = extend.right, color = color.red)
tp1Line := line.new(bar_index, tp1, bar_index + 1, tp1, extend = extend.right, color = color.green)
tp2Line := line.new(bar_index, tp2, bar_index + 1, tp2, extend = extend.right, color = color.green)
label.new(bar_index, close, "BUY Entry FVG Retest SL Below Sweep",
style = label.style_label_up, color = color.new(color.green, 0), textcolor = color.white)
if bearDisp and bearFVG
sl = high
tp1 = close - (sl - close) * tpMultiplier
tp2 = close - (sl - close) * (tpMultiplier * 1.5)
f_deleteLineIfExists(slLine)
f_deleteLineIfExists(tp1Line)
f_deleteLineIfExists(tp2Line)
slLine := line.new(bar_index, sl, bar_index + 1, sl, extend = extend.right, color = color.red)
tp1Line := line.new(bar_index, tp1, bar_index + 1, tp1, extend = extend.right, color = color.green)
tp2Line := line.new(bar_index, tp2, bar_index + 1, tp2, extend = extend.right, color = color.green)
label.new(bar_index, close, "SELL Entry FVG Retest SL Above Sweep",
style = label.style_label_down, color = color.new(color.red, 0), textcolor = color.white)
Rolling Z-Score (Quant Lab)What does this Z-Score measure?
• src (default = close) → the value of the series you selected
• len → the window you are measuring based on the average of the last few bars
• Z ≈ 0 → price close to the average
• Z > 2 → price 2 standard deviations above the average (extremely positive deviation)
• Z < -2 → 2 standard deviations below the average (extremely negative deviation)
In modern mean-reversion strategies:
• Z > +2 → short / take profit candidate
• Z < –2 → long / dip buy candidate
Shannon Entropy (Quant Lab)🟦 Shannon Entropy = The level of "order" or "chaos" in the market.
This indicator gives you the answer to the question:
"Is the market currently orderly and understandable, or is it random and chaotic?"
No other classical indicator can accurately show this.
The value of Entropy is between 0 and 1:
⸻
🟩 1) Entropy = 0.0 – 0.3 → Structured, orderly, readable market
During these periods, the price:
• A trend forms • Ranges work clearly • Patterns (head & shoulders, flag, triangle) form smoothly • Systems like Z-score, VWAP, EMA work very cleanly • Data for modeling (algorithmic strategies, ML) is high quality
Think of this region as follows:
The market "works according to rules," it's easy to trade.
⸻
🟧 2) Entropy = 0.3 – 0.7 → Normal behavior region
In this region:
• Neither too orderly nor too chaotic
• Most systems operate at an average rate • We can say the market is healthy
It is tradable; however, the conditions are not perfect.
⸻
🟥 3) Entropy = 0.7 – 1.0 → Chaos / Noise / Manipulation region
This is the MOST DANGEROUS REGION OF THE MARKET.
What happens?
• Prices jump randomly left and right. • Wicks increase excessively. • Fake breakouts multiply. • The win rate of strategies decreases. • Trend-following systems constantly generate "false signals." • Even mean-reversion systems are caught off guard. • ML models learn junk data during these periods. • Generally, news, liquidation cascades, and manipulation periods increase entropy.
This period perfectly illustrates:
"There is no logic in this market right now — it's moving randomly."
Therefore, it's a period where you need to be very careful:
Reduce position size. • Trade less. • Avoid unnecessary risks. • Tighten stop losses. • Don't use leverage.
This is your risk alert panel.
⸻
🔥 The real superpower Entropy gives you: Trend selection and system selection
Entropy → Determines which strategy you will use.
✔ Low Entropy → Trend following or mean-reversion that works like a toy
✔ High Entropy → Even opening a trade is risky
✔ Normal Entropy → Most strategies work
Building a strategy without this information is unprofessional.
⸻
🧠 Critical summary (you can even copy and paste it as a description in TradingView):
Low entropy → market is structured, patterns & trends are reliable
High entropy → market is chaotic, noisy, unpredictable; avoid aggressive trading
Entropy tells you if your strategy has a high chance or low chance of working
⸻
🟦 Signals Entropy gives in practice:
🔹 Entropy is falling →
The market is stabilizing → A major trend or strong move is approaching.
🔹 Entropy is rising →
The market is becoming chaotic → Sudden spike, a period of trading in prayer mode, extra risk.
🔹 Low Entropy + VR > 1 + High ER → FULL TREND MARKET
A true “trend paradise” period.
🔹 Low Entropy + VR < 1 + High FDI → RANGE MARKET
A paradise of mean reversion.
🔹 High Entropy + High VoV → DANGEROUS PERIOD
Big explosions, news, and liquidations happen here.
⸻
⭐ IN SHORT:
Entropy = an indicator of how randomly the market behaves.
• 0–0.3 → regular, good, reliable market
• 0.3–0.7 → normal market
• 0.7–1.0 → chaotic, dangerous market
It tells you at a glance whether you should trade during this period or not.
Standard Deviation Levels with Settlement Price and VolatilityStandard Deviation Levels with Settlement Price and Volatility.
This indicator plots the standard deviation levels based on the settlement price and the implied volatility. It works for all Equity Stocks and Futures.
For Futures
Symbol Volatility Symbol (Implied Volatility)
NQ VXN
ES VIX
YM VXD
RTY RVX
CL OVX
GC GVZ
BTC DVOL
The plot gives you an ideas that the price has what probability staying in the range of 1SD,2SD,3SD ( In normal distribution method)
Please provide the feedback or comments if you find any improvements
Rolling Skewness & Kurtosis (Quant Lab)🔹 Skewness (Asymmetric Risk)
• Skew > 0 (green) → Right tail heavier:
• More frequent positive extreme movements
• Higher probability of pump/sharp rally
• Skew < 0 (red) → Left tail heavier:
• Higher risk of crash, dump, liquidation
• Skew ≈ 0 → Distribution is symmetrical, neither right nor left side is dominant
🔹 Excess Kurtosis (Intensity of Extreme Movements)
• Kurt > 0 → Fat tails:
• More extreme movements compared to a normal distribution
• Increased risk of unexpected large spikes, flash moves
• Kurt < 0 → Thin tail:
• More “calm” distribution, fewer extreme movements
This pair tells you:
“Which direction could this instrument explode in right now?
and has the intensity of extreme movements increased?”
Variance Ratio & Efficiency Ratio (Quant Lab)1️⃣ Variance Ratio (VR)
Formula:
VR ≈ Var(q-step returns) / (q × Var(1-step returns))
Interpretation:
• VR ≈ 1 → The market is like a random walk; neither trend nor mean-reversion is dominant.
• VR > 1 → Trend behavior is dominant.
• Trend-following systems (EMA, Supertrend, breakout) work better.
• VR < 1 → Mean-reversion is dominant.
• Range/reversal strategies (Z-score, Bollinger fade, RSI reversal) work better.
In short:
• VR > 1 → Trending market
• VR < 1 → Mean-reverting market
This tells you:
“Should I build a trend system or a mean-reversion system for this instrument?”
⸻
2️⃣ Efficiency Ratio (ER)
Formula logic:
ER = |Close_now – Close_n-bars-ago| / Σ|Close_i – Close_{i+1}|
In other words:
• Numerator → Net movement over N bars
• Denominator → Total noise over N bars
Interpretation:
• ER ≈ 1 → The price has moved in almost a straight line in one direction.
→ The trend is very efficient, noise is low.
• ER ≈ 0 → The price has fluctuated a lot but hasn't gone anywhere definitively.
→ A complete noise/range market.
This tells you:
“How clear is the trend in this last N bars, and how much noise is there?”
⸻
🔥 The intelligence provided by both together:
• VR > 1 and ER is high (0.6–1.0) →
➜ Strong, high-quality trend. Golden age for trend-following.
• VR > 1 but ER is low (0.2–0.4) →
➜ Trend exists but there is a lot of noise, many fake movements. • VR < 1 and ER is low →
➜ Net range / sideways market. Ideal for mean-reversion.
Lead/Lag Correlation (Quant Lab)How to use it? (Briefly)
• otherSymbol: The asset you think could be the leader
• Example: If you are on a BTC chart → BINANCE:ETHUSDT, TOTAL3, USDT.D etc.
• lagBars:
• If you say 5: You are looking to see if there is a correlation between the movement of the other instrument 5 bars ago and your current movement. • In other words, is the other one leading?
• corr (green/red line):
• Close to +1 → strong positive correlation
• Close to -1 → strong negative correlation
• Close to 0 → no correlation
Lead/Lag interpretation:
• If the correlation is high for a specific lagBars (e.g., 0.7+):
➜ The otherSymbol you chose could be a strong "leader" for your current chart. In other words, its movement 5 bars ago is now explaining yours.
Momentum Gamma StraddleExact definition of what that script does
1) Purpose
The script is a decision aid for intraday expiry-day ATM straddle trades. It detects intraday structure breakouts and signals candidate long straddle entries for Nifty or Sensex using price structure, volume, RSI momentum, and a user-supplied combined ATM premium value (CE + PE). It draws support/resistance, shows an info box, and raises alerts.
2) Inputs the user can change
Trading time window: startHour, startMin, endHour, endMin.
Structure lookback: res_lookback (how many candles to use to compute resistance/support).
Minimum candle body as fraction of candle range: min_body_pct.
Volume multiplier threshold: vol_mult (breakout candle volume must exceed vol_mult * sma5).
RSI length and thresholds: rsi_len, rsi_bull_thresh, rsi_bear_thresh.
Combined premium source: choose Manual or Symbol. If Manual, set manual_combined. If Symbol, provide a TradingView symbol that returns CE+PE combined ATM premium.
Combined premium acceptable band: min_combined_ok and max_combined_ok.
Profit target percent and SL percent (target_pct and sl_pct).
Misc pattern heuristics: min_res_hits (min tests of resistance inside lookback), low_slope_min (used to detect rising lows).
Micro-confirmation toggle, micro timeframe, nonrepaint option, show_entry_label toggle (in the later fixed versions some of these were added, but the earlier fixed script had basic combined_symbol options and a lookahead fallback).
3) Data calculated on each bar
Safety check hasEnough: true when bar_index >= res_lookback.
resistance: the highest high over res_lookback bars.
support: the lowest low over res_lookback bars.
res_hits: count of bars within lookback whose high is within a tolerance of resistance. Tolerance is 10 percent of the range between resistance and support.
low_slope: simple slope of lows over res_lookback bars.
body_pct: the candle body as a fraction of its high-low range. strong_body true when body_pct >= min_body_pct.
bull_breakout: true if hasEnough and current close > resistance and strong_body and res_hits >= min_res_hits.
bear_breakout: true if hasEnough and current close < support and strong_body and res_hits >= min_res_hits.
vol_sma5 and vol_ok: vol_ok true when current volume > vol_mult * vol_sma5.
rsi and rsi checks: rsi_bull_ok true if rsi >= rsi_bull_thresh; rsi_bear_ok true if rsi <= rsi_bear_thresh.
combined_premium: either the manual_combined input or the value read from combined_symbol via request.security. The script attempted a fallback to manual when the symbol was not valid.
combined_ok: true if combined_premium lies between min_combined_ok and max_combined_ok.
final signals: bull_signal when in_time_window and bull_breakout and vol_ok and rsi_bull_ok and combined_ok. bear_signal similar for bearish breakout.
4) Visual output and alerts
Plots resistance and support lines on the chart.
Plots a label shape "STRADDLE BUY" below the bar for bull_signal and above the bar for bear_signal.
Creates an info label (on last bar) that shows TimeOK, VolOK and vol ratio, RSI, Combined premium and whether it is OK, ResHits and LowSlope.
Sets two alertcondition events: "Bull Straddle BUY" and "Bear Straddle BUY" with a short candidate message. The alerts fire when the corresponding signal is true.
5) Execution assumptions you must follow manually
The script does not place any orders or compute option strike-level prices or greeks. It only flags candidate entry bars.
When combined_source is Manual you must type CE+PE yourself. The indicator will only accept the manual number and treat it as the combined premium.
When combined_source is Symbol the script uses request.security to read that symbol. For historical bars the indicator may repaint depending on lookahead settings. The earlier fixed script attempted to use request.security inside a conditional which leads to runtime or compile errors. You experienced that exact error.
6) Known implementation caveats and bugs you encountered
Pine typing issue with low_slope. The earlier version set low_slope = na without explicit type. That triggers the Pine error: "Value with NA type cannot be assigned to a variable that was defined without type keyword". This required changing to float low_slope = na.
The earlier version attempted to call request.security() inside an if block or conditional. Pine prohibits request.security in conditional blocks unless allowed patterns are followed. That produced the error you saw: "Cannot use request.* call within loops or conditional structures" or similar. The correct pattern is to call request.security at top-level and decide later which value to use.
If combined_symbol is invalid or not available on your TradingView subscription, request.security can return na and the script must fall back to manual value. The earlier fixed script attempted fallback but compiled errors prevented reliable behavior.
The earlier script did not include micro-confirmation or advanced nonrepaint controls. Those were added in later versions. Because of that, the earlier script may have given signals that appear to repaint on historical bars or may have thrown errors when using combined_symbol.
7) Decision logic summary (exact)
Only operate if current chart time is inside user set time window.
Only consider trade candidates when enough history exists for res_lookback.
Identify a resistance level as the highest high in the lookback. Count how many times that resistance was tested. Ensure the breakout candle has a strong body and volume spike. Ensure RSI is aligned with breakout direction.
Require combined ATM premium to be inside a user preferred band. If combined_symbol is used the script tries to read that value and use it; otherwise it uses manual_combined input.
If all the above conditions are true on a confirmed bar, the script plots a STRADDLE BUY label and triggers an alertcondition.
8) What the script does not do
It does not calculate CE and PE prices by strike. It only consumes or accepts combined premium number.
It does not compute greeks, IV, or OI. OI and IV checks must be done manually.
It does not manage positions. No SL management or automatic exits are executed by the script.
It does not simulate fills or account for bid/ask spreads or slippage.
It cannot detect off-exchange block trades or read exchange-level auction states beyond raw volume bars.
It may repaint historical labels if the combined_symbol was read with lookahead_on or the script used request.security in a way that repainted. The corrected final version uses nonrepaint options.
9) Manual checks you must always perform even when the script signals BUY
Confirm the live combined ATM premium and the bid/ask for CE and PE.
Check ATM IV and recent IV movement for a potential IV crush risk.
Check option OI distribution and recent OI changes for strike pinning or large player exposure.
Confirm CE and PE liquidity and depth. Wide spreads make fills unrealistic.
Confirm there is no scheduled news or auction within the next few minutes.
Confirm margin and position sizing fits your risk plan.
10) Quick testing checklist you can run now
Add the script to a 5-minute chart with combined_source = Manual.
Enter manual_combined equal to the real CE+PE at the moment you test.
Set startHour and endHour so the in_time_window is true for current time.
Look for STRADDLE BUY label on confirmed bars. Inspect the info box to see why it did or did not signal.
If you set combined_source = Symbol, verify the symbol exists and that TradingView returns values for it. If you previously saw the request.security error, that was caused by placing the request inside a conditional. The correct behavior is to call request.security unconditionally at top-level like in the final fixed version.
Two individual BB - AxeThis indicator combines two Bollinger Bands into a single script, designed for traders who utilize dual-band strategies but want to keep their chart and indicator list clean.
Instead of adding two separate indicators, this script allows you to manage two Bollinger Bands within one interface. It maintains the full flexibility of the classic Bollinger Bands while adding independent toggles for better visibility control.
BALA'S Indicator - Dynamic + 5-Min + Pre-Market LevelsINTRADAY Strategy on Nifty with 15min Candle Setup.
Fractal Dimension (Katz, Quant Lab)This indicator estimates the Katz Fractal Dimension of the price series over a rolling window.
It computes:
• L = sum of absolute price changes within the window
• d = maximum distance between any point and the first point in the window
• n = window length
Then applies Katz’s formula:
FDI = ln(n) / (ln(n) + ln(d / L))
The resulting Fractal Dimension typically lies between 1.0 and 2.0:
• FDI ≈ 1.0–1.3 → Strong, directional trend (low randomness)
• FDI ≈ 1.3–1.5 → Mixed / transitional behavior
• FDI ≈ 1.5–2.0 → Noisy, choppy, mean-reverting / range market
Terils 1hr HTF EMA Add-On EMA 50/100its EMA 50 and EMA 100 in 1 her time frame.
its EMA 50 and EMA 100 in 1 her time frame.
its EMA 50 and EMA 100 in 1 her time frame.
its EMA 50 and EMA 100 in 1 her time frame.
its EMA 50 and EMA 100 in 1 her time frame.
Volatility Value BandsThis indicator is a modern adaptation of Mark Helweg's original Value Charts concept, focused on visually displaying volatility zones and "extreme value" areas directly on the price chart. It does not replicate the original work but draws inspiration from the logic of normalizing price by volatility to highlight statistically stretched regions.
1. Introduction
This study displays three lines directly on the chart:
- a central reference line (base),
- an upper overvaluation band,
- and a lower undervaluation band.
The bands are calculated from the relationship between price, moving average, and volatility (via true range/ATR), following Mark Helweg's Value Charts concept but with a custom implementation and adjustable parameters for different assets and timeframes. This allows objectively visualizing when price is in a statistically extended region relative to its recent behavior.
2. Key Features
- Volatility-normalized base
The indicator converts price deviation into "value units" using a combination of moving average and smoothed volatility (true range/ATR), making levels comparable across different assets and time horizons.
- Auto-adjusting limits (optional)
An automatic mode can calculate upper and lower limits from recent value unit extremes, using a configurable sampling window and percentile, allowing bands to adapt to the current volatility regime without manual recalibration.
- Direct plot on price chart
The three lines (central, upper, and lower) are drawn directly on the main asset chart (`overlay`), making it easy to read context: it's clear when price "touches" or breaks the volatility bands without switching to a separate pane.
- Flexible parameters
Users can control:
- base moving average period (length)
- volatility factor (manual or automatic)
- independent windows for volatility and limits calculation
- limits mode (auto or manual) and percentile used
This allows adapting behavior to different markets (stocks, indices, forex, crypto).
3. How to Use
- Basic interpretation
- When price approaches or exceeds the upper band, it indicates a statistically overvalued zone where the asset is stretched upward relative to recent volatility.
- When price approaches or exceeds the lower band, it indicates a statistically undervalued zone.
- The central line serves as a reference for recent "average value," derived from the base moving average.
- Recommended initial setup
- Choose the Value Chart period (e.g., 144 bars) for the base.
- Enable automatic limits mode for coherent bands matching the asset's volatility.
- Adjust the limits window and percentile for tighter bands (more signals) or wider bands (fewer but more extreme).
- Best practices
- Use bands as context filters, not standalone buy/sell signals. Combine with trend, market structure, or other confirmation indicators.
- Avoid decisions solely because price touched a band; in strong trends, price can "walk the edge" for extended periods.
- Always follow TradingView community rules when publishing: clearly state in the description that the study is "inspired by Mark Helweg's Value Charts concept," without claiming official status, reproducing proprietary code, or violating copyrights.
BB latif Multi MAThis is a version of the Bollinger Band with the addition of the "but" averaging method. It gives good results in different timeframes and I think it's better than simple or exponential averaging. I use the values 20-2.4-40.
MorphWave Bands [JOAT]MorphWave Bands - Adaptive Volatility Envelope System
MorphWave Bands create a dynamic price envelope that automatically adjusts its width based on current market conditions. Unlike static Bollinger Bands, this indicator blends ATR and standard deviation with an efficiency ratio to expand during trending conditions and contract during consolidation.
What This Indicator Does
Plots adaptive upper and lower bands around a customizable moving average basis
Automatically adjusts band width using a blend of ATR and standard deviation
Detects volatility squeezes when bands contract to historical lows
Highlights breakouts when price moves beyond the bands
Provides squeeze alerts for anticipating volatility expansion
Adaptive Mechanism
The bands adapt through a multi-step process:
// Blend ATR and Standard Deviation
blendedVol = useAtrBlend ? (atrVal * 0.6 + stdVal * 0.4) : stdVal
// Normalize volatility to its historical range
volNorm = (blendedVol - volLow) / (volHigh - volLow)
// Create adaptive multiplier
adaptMult = baseMult * (0.5 + volNorm * adaptSens)
This creates bands that respond to market regime changes while maintaining stability.
Squeeze Detection
A squeeze is identified when band width drops below a specified percentile of its historical range:
Background highlighting indicates active squeeze conditions
Low percentile readings suggest compressed volatility
Squeeze exits often precede directional moves
Inputs Overview
Band Length — Period for basis calculation (default: 20)
Base Multiplier — Starting band width multiplier (default: 2.0)
MA Type — Choose from SMA, EMA, WMA, VWMA, or HMA
Adaptation Lookback — Historical period for normalization (default: 50)
Adaptation Sensitivity — How much bands respond to volatility changes
Squeeze Threshold — Percentile below which squeeze is detected
Dashboard Information
Current trend direction relative to basis and bands
Band width percentage
Squeeze status (Active or None)
Efficiency ratio
Current adaptive multiplier value
How to Use It
Look for squeeze conditions as potential precursors to breakouts
Use band touches as dynamic support/resistance references
Monitor breakout signals when price closes beyond bands
Combine with momentum indicators for directional confirmation
Alerts
Upper/Lower Breakout — Price exceeds band boundaries
Squeeze Entry/Exit — Volatility compression begins or ends
Basis Crosses — Price crosses the center line
This indicator is provided for educational purposes. It does not constitute financial advice.
— Made with passion by officialjackofalltrades
Breakout Scanner (Screener)Breakout Scanner (Screener style — single indicator to drop in Screener tab)
Emmanuel Optuma Bar Colors v2This script colours TradingView’s Bar Chart to follow a simple, powerful bar-type logic used in Optuma-style analysis.
It makes the chart easier to read by showing the relationship between:
Up bars
Down bars
Outside bars
Inside bars
🔍 Bar Type Detection
Up Bar
Close > Previous close
→ Indicates upward strength
→ Coloured Green
Down Bar
Close < Previous close
→ Indicates downward pressure
→ Coloured Red
Outside Bar
High > Previous high and Low < Previous low
→ Market expands its range
→ Coloured Blue
Inside Bar
High < Previous high and Low > Previous low
→ Market contracts inside the previous bar
→ Follows previous bar’s colour
🎨 Colour Rules Summary
Bar Type Colour Meaning
Up Bar 🟩 Green Bullish pressure
Down Bar 🟥 Red Bearish pressure
Outside Bar 🔵 Blue Range expansion, bar resets structure
Inside Bar Same as previous bar Market indecision, continuation
🧠 Inside Bar Logic (Very Important)
Inside bars always copy the colour of the previous bar, which means:
If the previous bar was Green → inside bar becomes Green
If the previous bar was Red → inside bar becomes Red
If the previous bar was Blue → inside bar becomes Blue
This keeps the structure visually consistent and easy to read.
📈 Why This Helps Traders
This approach makes it easier to see:
✔ Trend continuation
Inside bars keep the trend colour, making swings clearer.
✔ Trend weakness
Inside bars after outside bars show contraction.
✔ Breakouts
Blue outside bars stand out as moments of range expansion.
✔ Market rhythm
The chart becomes easier to follow for beginners and advanced traders.
🧩 How to Use It
Set chart type to Bars
Add the script
Hide default colours (barcolor replaces them)
This instantly transforms TradingView into a teaching-friendly chart like Optuma.
Unmitigated MTF High Low - Cave Diving Plot
IntroductionThe Unmitigated MTF High Low -
Cave Diving Plot is a multi-timeframe (MTF) indicator designed for NQ and ES futures traders who want to identify high-probability entry and exit zones based on unmitigated price levels. The "Cave Diving" visualization helps you navigate between support (floor) and resistance (ceiling) zones, while the integrated Strat analysis provides directional context.
Who Is This For?
Futures traders (NQ, ES) trading during ETH and RTH sessions
Scalpers and day traders looking for precise entry/exit levels
Traders using The Strat methodology for directional analysis
Anyone seeking confluence between price action and key levels
Core Concepts
1. Unmitigated Level:
An unmitigated level is a price high or low that has been created but not yet tested (touched) by price. These levels act as magnets - price often returns to test them.Key Properties:
Resistance (Highs): Price has created a high but hasn't revisited it
Support (Lows): Price has created a low but hasn't revisited it
Mitigation: When price touches a level, it becomes "mitigated" and loses strength
2. The Cave Diving MetaphorThink of trading as cave diving between two zones:
┌─────────────────────────────────┐
│ CEILING (Upper Band) │ ← 1st & 2nd Unmitigated Highs
│ 🟥 Resistance Zone │
├─────────────────────────────────┤
│ │
│ THE TUNNEL │ ← Price navigates here
│ (Trading Channel) │
│ │
├─────────────────────────────────┤
│ 🟢 Support Zone │
│ FLOOR (Lower Band) │ ← 1st & 2nd Unmitigated Lows
└─────────────────────────────────┘
Trading Concept:
Ceiling: Formed by the 1st and 2nd most recent unmitigated highs
Floor: Formed by the 1st and 2nd most recent unmitigated lows
Tunnel: The space between ceiling and floor where price operates
Cave Diving: Navigating between these zones for entries and exits
3. Session-Based Age TrackingLevels are tracked by session age:
Session: 6:00 PM to 5:00 PM NY time (23-hour window)
Age 0: Created in the current session (today)
Age 1: Created 1 session ago (yesterday)
Age 2+: Older levels (more significant)
Why Age Matters:
Older unmitigated levels are typically stronger magnets
Fresh levels (Age 0) may be weaker and easier to break
Age 2+ levels often provide high-probability reversal zones
Indicator Components
Visual Elements
1. Colored Bands (Cave Zones)Upper Band (Pink/Maroon - 95% transparency)
Space between 1st and 2nd unmitigated highs
Acts as resistance zone
Price often hesitates or reverses here
Lower Band (Teal - 95% transparency)
Space between 1st and 2nd unmitigated lows
Acts as support zone
Price often finds buyers here
2. Information Table Located in your chosen corner (default: Bottom Right), the table displays:
5 most recent unmitigated highs (top section)
Tunnel row (middle separator)
5 most recent unmitigated lows (bottom section)
Reading the TableTable Structure
┌────────┬──────────┬────────┬───────┐
│ Level │ $ │ Points │ Age │
├────────┼──────────┼────────┼───────┤
│ ↑↑↑↑↑ │ 21,450.25│ +45.30 │ 3 │ ← 5th High (oldest)
│ ↑↑↑↑ │ 21,425.50│ +32.75 │ 2 │ ← 4th High
│ ↑↑↑ │ 21,410.00│ +25.00 │ 1 │ ← 3rd High
│ ↑↑ │ 21,400.75│ +18.50 │ 1 │ ← 2nd High
│ ↑ │ 21,395.25│ +12.00 │ 0 │ ← 1st High (newest)
├────────┼──────────┼────────┼───────┤
│ Tunnel │ 🟢 │ Δ 85.50│ 2U │ ← Current State
├────────┼──────────┼────────┼───────┤
│ ↓ │ 21,310.00│ -15.25 │ 0 │ ← 1st Low (newest)
│ ↓↓ │ 21,295.50│ -22.75 │ 1 │ ← 2nd Low
│ ↓↓↓ │ 21,280.25│ -30.00 │ 1 │ ← 3rd Low
│ ↓↓↓↓ │ 21,265.75│ -38.50 │ 2 │ ← 4th Low
│ ↓↓↓↓↓ │ 21,250.00│ -45.00 │ 3 │ ← 5th Low (oldest)
└────────┴──────────┴────────┴───────┘Column
Breakdown
Column 1: Level (Arrows)
Green arrows (↑): Resistance levels above current price
Red arrows (↓): Support levels below current price
Arrow count: Indicates recency (1 arrow = newest, 5 arrows = oldest)
Why This Matters:
More arrows = older level = stronger magnet for price
Column 2: $ (Price)
Exact price of the unmitigated level
Use this for limit orders and stop placement
Column 3: Points (Distance)
Positive (+) for highs: Points above current price
Negative (-) for lows: Points below current price
Helps gauge proximity to key levels
Trading Application:
If you're +2.50 points from resistance, a reversal may be imminent
If you're -45.00 points from support, you're far from the floor
Column 4: Age (Sessions)
Number of full 6pm-5pm sessions the level has survived
Age 0: Created today (current session)
Age 1+: Created in previous sessions
Significance Ladder:
Age 0: Weak, may break easily
Age 1-2: Medium strength
Age 3+: Strong, high-probability reaction zone
Tunnel Row (Critical Information)│ Tunnel │ 🟢 │ Δ 85.50│ 2U │
└─┬─┘ └─┬─┘ └──┬──┘ └─┬─┘
│ │ │ │
Label Direction Range Strat
1. Tunnel Label: Identifies the separator row
2. Direction Indicator (🟢/🔴)
🟢 Green Circle: Current 15m bar closed bullish (above previous close)
🔴 Red Circle: Current 15m bar closed bearish (below previous close)
3. Δ (Delta/Range)
Distance in points between 1st High and 1st Low
Shows the tunnel width (trading range)
Example: Δ 85.50 = 85.50 points between ceiling and floor
Trading Use:
Wide tunnel (>100 points): More room to trade, consider range strategies
Narrow tunnel (<50 points): Tight range, expect breakout
4. Strat Pattern
1: Inside bar (consolidation)
2U: 2 Up (bullish directional bar)
2D: 2 Down (bearish directional bar)
3: Outside bar (expansion/volatility)
Color Coding:
Green: 2U (bullish)
Red: 2D (bearish)
Yellow: 3 (expansion)
Gray: 1 (inside/neutral)






















