Multi-Timeframe TTM Squeeze Pro with alerts and screenersBased of John Carters TTM Squeeze. Must open the settings and select wether you want to match the timeframe in your chart. This must be done in the pinescreener as well otherwise results will not be correct.
---
# **Squeeze Momentum Pro – Enhanced Screener + EMA Cross Alerts**
This custom version of the Squeeze Momentum indicator expands the standard TTM-style squeeze with screening and automated alert logic so you can quickly find high-quality setups across many tickers.
---
## **What This Script Does**
This indicator plots a three-level squeeze visual similar to TTM Squeeze:
Dot meanings in this indicator
Orange dot:
Strongest squeeze – Bollinger Bands are inside the tightest Keltner level (highest volatility compression).
Red dot:
Medium squeeze – still compressed, but not as tight as orange.
Black dot:
Weak squeeze / lowest level of volatility compression.
Price is coiling, but not as tight as the higher levels.
Green dot (“Fired”):
Squeeze has released — Bollinger Bands have expanded out of the channels and momentum is moving.
A momentum histogram is plotted to show directional pressure during the squeeze.
---
## **Major Improvements Added**
### **① Screenable Conditions for Stock Scanners**
This version includes multiple `alertcondition()` flags so the script can be used as a **Pine Screener inside TradingView**.
Currently it can screen for:
✔ Price closing above the 50-SMA
✔ Presence of an **orange (strong) squeeze dot**
✔ 6/20 EMA crossover signals inside a squeeze
These can be used inside the TradingView Screener or in watchlists to automatically highlight qualifying tickers.
---
### **② 6/20 EMA Trend Signals (Filtered by Squeeze)**
A crossover system was added:
* **Bullish Signal:** 6 EMA crosses above 20 EMA
* **Bearish Signal:** 6 EMA crosses below 20 EMA
But **these signals only trigger if the market is in a red or orange squeeze**, which helps remove noise and focus on valid setups.
---
### **③ Visual Markers Under the Histogram**
Whenever an EMA crossover occurs during a squeeze:
* A **green up-triangle** is plotted for a bullish cross
* A **red down-triangle** for a bearish cross
These markers are drawn **below the histogram**, keeping the display clean while still providing quick visual cues.
---
### **④ Fully Non-Repainting Logic**
All signals and squeeze calculations are based on standard fully-resolved `ta.*` functions, making the results stable both in backtesting and real-time.
---
## **Who This Script Helps**
This version is ideal for:
* Traders who use TradingView’s screener and want automated breakout/continuation filtering
* Traders who scan large watchlists for squeeze setups
* Users who want trend confirmation during volatility compression
---
## **How to Use It**
1. Add the script to your chart
2. Open TradingView Alerts or Screener
3. Select the conditions you want, for example:
* *“Orange Squeeze Detected”*
* *“Squeeze Fire after 3 squeeze dots*
* *“4 REd Dots in a row.”*
* *“Buy Alert”*
* *“EMA 6/20 Bullish Crossover (Squeeze Only)”*
* *“Close Above 50 SMA”*
Once active, TradingView will automatically flag symbols that meet the criteria.
---
## **Summary**
This enhanced Squeeze Momentum indicator turns the standard TTM-style visual into a **true screening and alert system** by adding:
* Multi-level squeezes
* EMA trend signals
* Screener-compatible alert conditions
* Clean visual signals
* Non-repainting logic
It helps traders quickly locate high-probability setups across any watchlist or market.
חפש סקריפטים עבור "日经ETF走势图"
920 Order Flow SATY ATR//@version=6
indicator("Order-Flow / Volume Signals (No L2)", overlay=true)
//======================
// Inputs
//======================
rvolLen = input.int(20, "Relative Volume Lookback", minval=5)
rvolMin = input.float(1.1, "Min Relative Volume (× avg)", step=0.1)
wrbLen = input.int(20, "Wide-Range Lookback", minval=5)
wrbMult = input.float(1, "Wide-Range Multiplier", step=0.1)
upperCloseQ = input.float(0.60, "Close near High (0-1)", minval=0.0, maxval=1.0)
lowerCloseQ = input.float(0.40, "Close near Low (0-1)", minval=0.0, maxval=1.0)
cdLen = input.int(25, "Rolling CumDelta Window", minval=5)
useVWAP = input.bool(true, "Use VWAP Bias Filter")
showSignals = input.bool(true, "Show Long/Short OF Triangles")
//======================
// Core helpers
//======================
rng = high - low
tr = ta.tr(true)
avgTR = ta.sma(tr, wrbLen)
wrb = rng > wrbMult * avgTR
// Relative Volume
volAvg = ta.sma(volume, rvolLen)
rvol = volAvg > 0 ? volume / volAvg : 0.0
// Close location in bar (0..1)
clo = rng > 0 ? (close - low) / rng : 0.5
// VWAP (session) + SMAs
vwap = ta.vwap(close)
sma9 = ta.sma(close, 9)
sma20 = ta.sma(close, 20)
sma200= ta.sma(close, 200)
// CumDelta proxy (uptick/downtick signed volume)
tickSign = close > close ? 1.0 : close < close ? -1.0 : 0.0
delta = volume * tickSign
cumDelta = ta.cum(delta)
rollCD = cumDelta - cumDelta
//======================
// Signal conditions
//======================
volActive = rvol >= rvolMin
effortBuy = wrb and clo >= upperCloseQ
effortSell = wrb and clo <= lowerCloseQ
cdUp = ta.crossover(rollCD, 0)
cdDown = ta.crossunder(rollCD, 0)
biasBuy = not useVWAP or close > vwap
biasSell = not useVWAP or close < vwap
longOF = barstate.isconfirmed and volActive and effortBuy and cdUp and biasBuy
shortOF = barstate.isconfirmed and volActive and effortSell and cdDown and biasSell
//======================
// Plot ONLY on price chart
//======================
// SMAs & VWAP
plot(sma9, title="9 SMA", color=color.orange, linewidth=3)
plot(sma20, title="20 SMA", color=color.white, linewidth=3)
plot(sma200, title="200 SMA", color=color.black, linewidth=3)
plot(vwap, title="VWAP", color=color.new(color.aqua, 0), linewidth=3)
// Triangles with const text (no extra pane)
plotshape(showSignals and longOF, title="LONG OF",
style=shape.triangleup, location=location.belowbar, size=size.tiny,
color=color.new(color.green, 0), text="LONG OF")
plotshape(showSignals and shortOF, title="SHORT OF",
style=shape.triangledown, location=location.abovebar, size=size.tiny,
color=color.new(color.red, 0), text="SHORT OF")
// Alerts
alertcondition(longOF, title="LONG OF confirmed", message="LONG OF confirmed")
alertcondition(shortOF, title="SHORT OF confirmed", message="SHORT OF confirmed")
//────────────────────────────
// End-of-line labels (offset to the right)
//────────────────────────────
var label label9 = na
var label label20 = na
var label label200 = na
var label labelVW = na
if barstate.islast
// delete old labels before drawing new ones
label.delete(label9)
label.delete(label20)
label.delete(label200)
label.delete(labelVW)
// how far to move the labels rightward (increase if needed)
offsetBars = input.int(3)
label9 := label.new(bar_index + offsetBars, sma9, "9 SMA", style=label.style_label_left, textcolor=color.white, color=color.new(color.orange, 0))
label20 := label.new(bar_index + offsetBars, sma20, "20 SMA", style=label.style_label_left, textcolor=color.black, color=color.new(color.white, 0))
label200 := label.new(bar_index + offsetBars, sma200, "200 SMA", style=label.style_label_left, textcolor=color.white, color=color.new(color.black, 0))
labelVW := label.new(bar_index + offsetBars, vwap, "VWAP", style=label.style_label_left, textcolor=color.black, color=color.new(color.aqua, 0))
//────────────────────────────────────────────────────────────────────
//────────────────────────────────────────────
// Overnight High/Low + HOD/LOD (no POC)
//────────────────────────────────────────────
sessionRTH = input.session("0930-1600", "RTH Session (exchange tz)")
levelWidth = input.int(2, "HL line width", minval=1, maxval=5)
labelOffsetH = input.int(10, "HL label offset (bars to right)", minval=0)
isRTH = not na(time(timeframe.period, sessionRTH))
rthOpen = isRTH and not isRTH
// --- Track Overnight High/Low during NON-RTH; freeze at RTH open
// --- Track Overnight High/Low during NON-RTH; freeze at RTH open
var float onHigh = na
var float onLow = na
var int onHighBar = na
var int onLowBar = na
var float onHighFix = na
var float onLowFix = na
var int onHighFixBar = na
var int onLowFixBar = na
if not isRTH
if na(onHigh) or high > onHigh
onHigh := high
onHighBar := bar_index
if na(onLow) or low < onLow
onLow := low
onLowBar := bar_index
if rthOpen
onHighFix := onHigh
onLowFix := onLow
onHighFixBar := onHighBar
onLowFixBar := onLowBar
onHigh := na, onLow := na
onHighBar := na, onLowBar := na
// ──────────────────────────────────────────
// Candle coloring + labels for 9/20/VWAP crosses
// ──────────────────────────────────────────
showCrossLabels = input.bool(true, "Show cross labels")
// Helpers
minAll = math.min(math.min(sma9, sma20), vwap)
maxAll = math.max(math.max(sma9, sma20), vwap)
// All three lines
goldenAll = open <= minAll and close >= maxAll
deathAll = open >= maxAll and close <= minAll
// 9/20 only (exclude cases that also crossed VWAP)
dcUpOnly = open <= math.min(sma9, sma20) and close >= math.max(sma9, sma20) and not goldenAll
dcDownOnly = open >= math.max(sma9, sma20) and close <= math.min(sma9, sma20) and not deathAll
// Candle colors (priority: all three > 9/20 only)
var color cCol = na
cCol := goldenAll ? color.yellow : deathAll ? color.black :dcUpOnly ? color.lime :dcDownOnly ? color.red : na
barcolor(cCol)
// Labels
plotshape(showCrossLabels and barstate.isconfirmed and goldenAll, title="GOLDEN CROSS",
style=shape.labelup, location=location.belowbar, text="GOLDEN CROSS",
color=color.new(color.yellow, 0), textcolor=color.black, size=size.tiny)
plotshape(showCrossLabels and barstate.isconfirmed and deathAll, title="DEATH CROSS",
style=shape.labeldown, location=location.abovebar, text="DEATH CROSS",
color=color.new(color.black, 0), textcolor=color.white, size=size.tiny)
plotshape(showCrossLabels and barstate.isconfirmed and dcUpOnly, title="DC UP",
style=shape.labelup, location=location.belowbar, text="DC UP",
color=color.new(color.lime, 0), textcolor=color.black, size=size.tiny)
plotshape(showCrossLabels and barstate.isconfirmed and dcDownOnly, title="DC DOWN",
style=shape.labeldown, location=location.abovebar, text="DC DOWN",
color=color.new(color.red, 0), textcolor=color.white, size=size.tiny)
// ──────────────────────────────────────────
// Audible + alert conditions
// ──────────────────────────────────────────
alertcondition(goldenAll, title="GOLDEN CROSS", message="GOLDEN CROSS detected")
alertcondition(deathAll, title="DEATH CROSS", message="DEATH CROSS detected")
alertcondition(dcUpOnly, title="DC UP", message="Dual Cross UP detected")
alertcondition(dcDownOnly,title="DC DOWN", message="Dual Cross DOWN detected")
Micha Stokes Buyers Breakout Alert v2Buyer Breakout Rules (Word Definition)
The alert is triggered when ALL conditions in Section 1 and Section 3 are met, AND one of the two Scenarios in Section 2 is met.
1. The Setup and Breakout (The Initial Requirement)
Price Action: The closing price of the current candle must break above the highest resistance level established during the recent period of flat trading (the setup).
2. The Confirmation (Scenario A OR Scenario B)
The breakout must be accompanied by evidence of buying strength:
Scenario A: High-Conviction Breakout (Immediate Demand)
The current candle is GREEN (it closed higher than it opened).
AND the volume is HIGHER than the volume of the previous candle.
Scenario B: Seller-Exhaustion Breakout (Micha Stokes' Unique Signal)
The current candle is GREEN (it closed higher than it opened).
AND the volume is LOWER than the volume of the previous candle. (This means the price rose without much seller resistance.)
3. The Strength Filter (Conviction Check)
The candle must close near its high, showing that buyers maintained control and didn't face significant selling pressure immediately after the breakout.
CNN Fear and Greed StrategyAdaptation of the CNN Fear and Greed Index Indicator (Original by EdgeTools)
The following changes have been implemented:
Put/Call Ratio Data Source: The data source for the Put/Call Ratio has been updated.
Bond Data Source: The data sources for the bond components (Safe Haven Demand and Junk Bond Demand) have been updated.
Normalization Adjustment: The normalization method has been adjusted to allow the CNN Fear and Greed Index to display over a longer historical period, optimizing it for backtesting purposes.
Style Modification: The display style has been modified for a simpler and cleaner appearance.
Strategy Logic Addition: Added a new strategy entry condition: index >= 25 AND index crosses over its 5-period Simple Moving Average (SMA), and a corresponding exit condition of holding the position for 252 bars (days).
CNN Fear & Greed Backtest Strategy (Adapted)
This script is an adaptation of the popular CNN Fear & Greed Index, originally created by EdgeTools, with significant modifications to optimize it for long-term backtesting on the TradingView platform.
The core function of the Fear & Greed Index is to measure the current emotional state of the stock market, ranging from 0 (Extreme Fear) to 100 (Extreme Greed). It operates on the principle that excessive fear drives prices too low (a potential buying opportunity), and excessive greed drives them too high (a potential selling opportunity).
Key Components of the Index (7 Factors)
The composite index is calculated as a weighted average of seven market indicators, each normalized to a score between 0 and 100:
Market Momentum: S&P 500's current level vs. its 125-day Moving Average.
Stock Price Strength: Stocks hitting 52-week highs vs. those hitting 52-week lows.
Stock Price Breadth: Measured by the McClellan Volume Summation Index (or similar volume/breadth metric).
Put/Call Ratio: The relationship between volume of put options (bearish bets) and call options (bullish bets).
Market Volatility: The CBOE VIX Index relative to its 50-day Moving Average.
Safe Haven Demand: The relative performance of stocks (S&P 500) vs. bonds.
Junk Bond Demand: The spread between high-yield (junk) bonds and U.S. Treasury yields.
Critical Adaptations for Backtesting
To improve the index's utility for quantitative analysis, the following changes were made:
Long-Term Normalization: The original normalization method (ta.stdev over a short LENGTH) has been replaced or adjusted to use longer historical data. This change ensures the index generates consistent and comparable sentiment scores across decades of market history, which is crucial for reliable backtesting results.
Updated Data Sources: Specific ticker requests for the Put/Call Ratio and Bond components (Safe Haven and Junk Bond Demand) have been updated to use the most reliable and long-running data available on TradingView, reducing data gaps and improving chart continuity.
Simplified Visuals: The chart display is streamlined, focusing only on the final Fear & Greed Index line and key threshold levels (25, 50, 75) for quick visual assessment.
Integrated Trading Strategy
This script also includes a simple, rules-based strategy designed to test the counter-trend philosophy of the index:
Entry Logic (Long Position): A long position is initiated when the market shows increasing fear, specifically when the index score is less than or equal to the configurable FEAR_LEVEL (default 25) and the index crosses above its own short-term 5-period Simple Moving Average (SMA). This crossover acts as a confirmation that sentiment may be starting to turn around from peak fear.
Exit Logic (Time-Based): All positions are subject to a time-based exit after holding for 252 trading days (approximately one year). This fixed holding period aims to capture the typical duration of a cyclical market recovery following a major panic event.
Forward Returns – (Next Month Start)This indicator calculates 1-month, 3-month, 6-month, and 12-month forward returns starting from the first trading day of the month following a defined price event.
A price event occurs when the selected asset drops below a user-defined threshold over a chosen timeframe (Day, Week, or Month).
For monthly conditions, the script evaluates the entire performance of the previous calendar month and triggers the event only at the first trading session of the next month, ensuring accurate forward-return alignment with historical monthly cycles.
The forward returns for each detected event are displayed in a paginated performance table, allowing users to navigate through large datasets using a page selector. Each page includes:
Entry Date
Forward returns (1M, 3M, 6M, 12M)
Average forward return
Win rate (percentage of positive outcomes)
This tool is useful for studying historical performance after major drawdowns, identifying seasonal patterns, and building evidence-based risk-management or timing models.
ATR Volatility AlertsOverview:
This is a dynamic alert tool based on the Average True Range (ATR), designed to help traders detect sudden price movements that exceed normal volatility levels. Whether you are trading breakouts or monitoring for abnormal spikes, this indicator visualizes these events on the chart and triggers system alerts when the price move exceeds your specified ATR multiplier.
Key Features:
Fully Customizable ATR Range:
You can adjust the ATR Length (Default: 14) and the Multiplier (Default: 1.5x).
Tip: Increase the multiplier (e.g., to 2.0 or 3.0) to catch only extreme volatility, or lower it for scalping smaller moves.
Visual Chart Signals:
Visual markers appear instantly when a bar's movement exceeds the ATR threshold.
Green Triangle: Indicates an Upward Spike.
Red Triangle: Indicates a Downward Spike.
Flexible System Alerts:
Designed to integrate seamlessly with TradingView's alert system. You can choose from three specific alert directions based on your strategy:
1.Price Spike Up: Triggers only on sharp upward moves.
2.Price Spike Down: Triggers only on sharp downward moves.
3.Bidirectional Volatility Alert: Triggers on BOTH huge pumps and dumps.
How to Set Alerts:
Click the "Create Alert" button in TradingView.
Select ATR Volatility Alerts in the "Condition" dropdown.
Choose the specific logic you need:
· Select Price Spike Up for bullish monitoring.
· Select Price Spike Down for bearish monitoring.
· Select Bidirectional Volatility Alert to watch for any volatility expansion.
TICK Indicator with Extreme AlertsOverview:
This indicator is designed to provide intraday traders (especially those trading SPX, ES, and NQ) with a clearer NYSE TICK analysis tool featuring visual alerts. Unlike traditional TICK line charts, this indicator utilizes OHLC Candlesticks to display data, allowing you to fully view the Open, High, Low, and Close within a specific timeframe, thereby capturing instantaneous liquidity sweeps.
Core Features & Logic:
Candlestick Visualization (OHLC Candles): Uses the USI:TICK.US data source by default. The candlestick patterns allow you to clearly see if the TICK pierced key levels intraday but retraced by the close—vital information that standard line charts often miss.
Dual Key Level System: The indicator is designed with two independent reference tiers for trend observation and reversal detection:
Reference Lines (+/- 800): Marked by gray dashed lines. These represent the standard bull/bear dividing zones. When TICK sustains above +800 or below -800, it typically indicates a strong trending market.
Extreme Alerts (+/- 1000): These thresholds are used to identify extreme market sentiment (overbought/oversold conditions).
Background Highlight Alerts (Visual Alerts): To reduce screen-watching fatigue, the indicator automatically highlights the candlestick background when extreme market sentiment occurs:
Green Background: Triggered when TICK High breaks above +1000. Represents extreme buying sentiment, potentially indicating exhaustion or a short squeeze.
Red Background: Triggered when TICK Low drops below -1000. Represents extreme panic selling (Washout), often serving as a potential signal for an intraday reversal or a short-term bottom.
Custom Settings:
All thresholds (800 reference lines, 1000 alert lines) are fully adjustable in the settings.
All colors (Candles, Reference Lines, Background Alert Colors) can be customized.
Use Cases: This tool is ideal for intraday counter-trend or trend-following trading when combined with Price Action analysis and key Support & Resistance levels.
S&P 500 Offense vs. Defense RatioS&P 500 Offense vs. Defense Ratio
Formula: (XLK+XLY+XLC+XLF+XLI) / (XLP+XLU+XLRE+XLV+XLE)
change of offensive sectors vs defensive sectors
Renko 2-block entry, 1-block exit (signals EVERY block)Renko 2-block entry, 1-block exit (signals EVERY block)
Dobrusky Pressure CoreWhat it does & who it’s for
Dobrusky Pressure Core is a volume by time replacement for traders who care about which side actually controls each bar. Instead of just plotting total volume, it splits each bar into estimated buy vs sell pressure and overlays a custom, session-aware volume baseline. It’s built for discretionary traders who want more nuanced volume context for entries, breakouts, and pullbacks.
Core ideas
Buy/sell pressure split: Each bar’s volume is broken into estimated buying and selling pressure.
Dominant side highlighting: The dominant side (buy or sell) is always displayed starting from the bottom of the bar, so you can quickly see who “owned” that bar.
Median-based baseline: Uses the median of the last N bars (50 by default) to build a robust volume baseline that’s less sensitive to one-off spikes.
Session-aware behavior: Baseline is calculated from Regular Trading Hours (RTH) by default, with an option to include Extended Hours (ETH) and a control to force Regular data on higher timeframes.
Volume regimes: Three multipliers (1x, 1.5x, 2x by default) show normal, high, and extreme volume regions.
Flexible display: Baseline can be shown as lines or as columns behind the volume, with full color customization.
How the pressure logic works
For each bar, the script:
Adjusts the range for gaps relative to the prior close so the “true” traded range is more consistent.
Computes buy pressure as a proportion of the adjusted range from low to close.
Defines sell pressure as: total volume minus buy pressure.
Marks the bar as buy-dominant if buy pressure ≥ sell pressure, otherwise sell-dominant, and colors the dominant side from the bottom to at least the midpoint using the selected buy/sell colors.
In practice, this turns basic volume columns into bars where the internal split and dominant side are clearly visible, helping you judge whether aggressive buyers or sellers truly controlled the bar instead of just looking at the price action.
Volume baseline & session logic
The script builds a session-aware baseline from recent volume:
Baseline length: A rolling window (default 50 bars) is used to compute a median volume value instead of a simple moving average.
RTH-only by default: By default, the baseline is built from Regular Trading Hours bars only. During extended hours, the baseline effectively “freezes” at the last RTH-derived value unless you choose to include extended session data.
Extended mode: If you select Extended mode, the script builds separate rolling baselines for RTH and ETH trading, using the appropriate one depending on the current session.
Force Regular Above Timeframe: On timeframes equal to or higher than your chosen threshold, the baseline automatically uses Regular session data, even if Extended is selected.
Multipliers: Three adjustable multipliers (1x, 1.5x, 2x by default) create normal, high, and extreme volume bands for quick identification.
This lets you choose whether you want a pure RTH reference or a baseline that adapts to extended-session activity.
Example ways to use it
1. Replace standard volume bars
Add Dobrusky Pressure Core to your volume pane and hide the default volume if you prefer a clean look.
Use the colors and split to see at a glance whether buyers or sellers were dominant on each bar.
2. Pressure confirmation for entries
For longs (example concept; adapt to your own rules):
Require that the entry bar’s buy pressure is greater than the previous bar’s sell pressure , or
If the entry and prior bar are both buy-dominant, require that the entry bar has more buy pressure than the prior bar.
This helps avoid taking a long when buying pressure is clearly fading relative to what sellers recently showed. A mirrored idea can be used for short setups with sell pressure.
3. Context from baseline multipliers
Use ~1x baseline as “normal” volume.
Watch for bars at or above 1.5x baseline when you want to see increased participation.
Treat 2x baseline and above as “extreme” volume zones that may mark climactic or especially important bars.
In practice, the baseline and multipliers are best used as context and filters, not as rigid rules.
Settings overview
Display
- Show Volume Baseline: toggle the baseline and its levels on or off.
- Baseline Display: choose between Line or Bars for the baseline visualization.
Baseline Calculation
- Length: lookback for the median baseline (default 50, configurable).
- Baseline Session Data: choose Regular or Extended to control which session data feeds the baseline.
Session Controls
- Regular Session (Local to TZ): define your RTH window (e.g., 0930-1600).
- Session Time Zone: choose the time zone used for that window.
- Force Regular Above Timeframe: on higher timeframes, force the baseline to use Regular session data only.
Baseline Levels
- Show Level x Multiplier 1/2/3: toggle each volume regime level.
- Multiplier 1/2/3: define what you consider normal, high, and extreme volume (defaults: 1.0, 1.5, 2.0).
Colors
- Buy Volume / Sell Volume: choose colors for buy and sell pressure.
- Baseline Bars (Base / x2 / x3): colors when the baseline is drawn as columns.
- Baseline Line (Base / x2 / x3): colors when the baseline is drawn as lines.
Limitations & best practices
This is a decision-support and visualization tool, not a buy/sell signal generator.
Best suited to markets where volume data is meaningful (e.g., index futures, liquid equities, liquid crypto).
The usefulness of any volume-based metric depends on the underlying data feed and instrument structure.
Always combine pressure and baseline context with your own strategy, risk management, and testing.
Originality
Most volume tools either show total volume only or compare it to a simple moving average. Dobrusky Pressure Core combines:
An intrabar buy/sell pressure split based on a gap-adjusted price range.
A median-based, configurable baseline built from session-specific data.
Session-aware behavior that keeps the baseline focused on Regular hours by default, with the option to incorporate Extended hours and force Regular data on higher timeframes.
The goal is to give traders a richer, session-aware view of participation and pressure that standard volume bars and simple SMA overlays don’t provide, while keeping everything transparent and open-source so users can review and adapt the logic.
Institutional Volume Flow (IVF) with VWAP & Zones. Accumulation Zone (Green Background)Logic: Signals potential institutional buying at the low.Conditions: The current close price is below VWAP $\text{(close} < \text{VWAP)}$, AND there has been at least one Aggressive Buy (IVF) bar within the last $\text{N}$ bars.2. Manipulation Zone (Red Background)Logic: Signals a Stop Hunt or False Breakout where the market briefly takes out a previous extreme before reversing with institutional conviction.Conditions:False Break High: Current high is a new 2-bar high, immediately followed by an Aggressive Sell (IVF) bar.False Break Low: Current low is a new 2-bar low, immediately followed by an Aggressive Buy (IVF) bar.3. Compression Zone (Purple Background)Logic: Signals a period of low volatility where price is "coiling up" for a large move.Conditions: The bar's range $\text{(high} - \text{low)}$ is consistently small (less than a multiplier of the Average True Range (ATR)) for a specific number of bars.The zones are plotted using bgcolor() for a visual area on the chart and plotshape() to mark the specific bar where the condition is met. Manipulation is given the highest plotting priority to ensure it's visible over other zones if conditions overlap.Would you like me to elaborate on the typical trading strategy associated with any of these three zones (Accumulation, Manipulation, or Compression)?
SuperMegaIndicator5000SuperMegaIndicator5000
key levels
ema
volume on price High Vol LowV and chop on price
London open close
vwap
orb
and maybe a couple other indicators
Last CLOSED Bar OHLCThis TradingView Pine Script (@version=6) creates a label that displays the previous fully closed candlestick’s OHLC data on the chart.
Vince/Williams Market Internals SuiteThis indicator is a powerhouse combination of three distinct market internal strategies developed by Ralph Vince and Larry Williams. Instead of using three separate scripts to monitor market health, this tool consolidates them into a single dashboard that analyzes NYSE "New Lows" data to detect structural rot, capitulation, and crash risks.
The first component is the Volatility Vulnerability monitor, which identifies when the market structure is decaying. It looks for an extended period where the number of New Lows fails to drop to negligible levels. If you see an Orange Circle while price is above the 50 SMA, it is a major warning that the uptrend is hollow and prone to a crash. Conversely, a Blue Circle below the 50 SMA suggests the weakness is already priced in, offering a contrarian entry signal.
The second component is the Selling Climax signal. This identifies moments of pure terror where New Lows hit extreme levels (default 20%). The script marks these panic days with Orange Diamonds, but the real value is the Green Diamond that appears immediately when the panic subsides, often signaling a sharp V-bottom.
Finally, the Bloodbath Rule runs in the background as a defensive filter. When the background turns red (marked by a Red Cross), it means New Lows have breached the "danger" threshold (default 4%). During these periods, internal selling pressure is accelerating, and you should strictly avoid entering new long positions until the background clears.
Note: This script relies on broad market data (ADVN/DECN/LOWN) and works best on Daily timeframes.
ATR STRUCTURE
So I can produce this
🟡 START = 662.63 ✳️ ATR ≈ 8.30 pts (0.5 ATR ≈ 4.15 • 1 ATR ≈ 8.30) 🙂📏
ATR bands (numeric)
🔼 START + 0.5 ATR = 662.63 + 4.15 = 666.78 (upper buffer / shelf)
🔼 START + 1 ATR = 662.63 + 8.30 = 670.93 (breakout band)
🔽 START − 0.5 ATR = 662.63 − 4.15 = 658.48 (near support)
🔽 START − 1 ATR = 662.63 − 8.30 = 654.33 (deeper stop zone)
— Priority level ladder (footprint‑first & ATR alignment) — (emoji = confidence • 🔥 = high • ✅ = footprint confirmed • 🟡 = medium)
🔥🟢 PM_LOW / D1 — ~659.95 → 660.50 ✅ (FOOTPRINT CONFIRMED)
Why: repeated 30m+1h absorption (sold‑into then bought up). DEEP confidence. 🧯🔁
🔥🔴 ORBH / U2 cluster — ~663.98 → 665.87 ✅ (FOOTPRINT SUPPLY)
Why: repeated rejections / sell MaxDelta rows on 30m & 1h. Treat as overhead supply / shelf. 🪓📉
🔥🟦 D3 / ORBL corridor — ~658.64 ✅ (TF confluence: 1h+4h MaxDelta)
Why: single‑row institutional sells map here; structural LVN / open‑range low. 🛡️📌
🟡⭐ START / U1 pivot zone — ~662.63 – 662.70 ✅ (session pivot, 1h absorption)
Why: session magnet—use for intraday bias pivot / quick confirms. 👀⚖️
🟡🔥 U4 / U5 upper HVN band — ~666.7 → 669.3 (ATR UPPER)
Why: strong HVN / stop‑run evidence on higher TFs — needs large buy MaxDelta to flip. 🚧🚀
⚪ D5 lower expansion support — ~654.3–656.7 (deeper target if sellers run)
Why: longer‑TF expansion area; lower immediate probability but high impact if hit. ⚠️📉
Vince/Williams Selling Climax SignalThis indicator identifies moments of ultimate market capitulation based on the "Selling Climax" research by Ralph Vince and Larry Williams. It monitors the ratio of New Lows to total traded issues to detect when selling pressure has reached an unsustainable, panic-driven extreme (defaulting to 20% of the entire market hitting new lows).
The script visualizes this process in two stages. First, it marks the actual days of panic with red diamonds, showing you where the "washout" is occurring. Second, and most importantly, it generates a green diamond buy signal on the very first day the panic subsides. This allows you to enter a position immediately after the supply of desperate sellers has been exhausted, often catching the absolute bottom of a sharp correction.
Vince/Williams Bloodbath Sidestepping RuleThis is a defensive risk management tool designed to keep you on the sidelines during devastating market crashes. Drawing on the "Bloodbath" criteria outlined by Vince and Williams, this script highlights periods where market internals have structurally broken down, specifically when the percentage of New Lows exceeds a "danger" threshold (default 4%).
Unlike the Climax signal which looks for the end of a drop, this rule is designed to spot the acceleration phase of a decline. When the background turns red, it indicates that the market is in a liquidating phase where support levels are likely to fail. You should use this as a strict filter to avoid opening new long positions or to tighten stops on existing ones until the background color clears, signaling that the internal bleeding has stopped.
Vince/Williams Extreme Volatility VulnerabilityDescription: This indicator implements the "Period of Extreme Vulnerability" concept developed by Ralph Vince and Larry Williams. The theory posits that a healthy market must regularly see the number of New Lows "dry up" (drop to near zero). When the percentage of New Lows fails to drop below a minimal threshold (default 0.15%) for a prolonged period (default 65 days), it indicates that internal market structure is rotting even if prices are rising, leaving the market fragile and prone to sudden volatility shocks.
I have programmed this script to track that exact condition—the extended absence of a "low" New Lows reading. It applies a 50-day Moving Average filter to contextually categorize the signal:
Red Dot (Crash Warning): Triggers when the vulnerability period begins while the price is above the 50 SMA. This is the classic warning signal, indicating that an uptrend is unsupported by market internals and a sharp correction may be imminent.
Green Dot (Contrarian Buy): Triggers when the vulnerability period begins while the price is below the 50 SMA. The script identifies this as a potential capitulation or value point where the persistent internal weakness is likely already priced in.
Note: This indicator requires exchange-wide data (New Lows, Advancers, Decliners) to function. It is best used on daily timeframes.
VIX Fix Indicator (Hestla 2015)This script provides a streamlined version of the VIX Fix, referencing the foundational work of Larry Williams and the strategies of Amber Hestla. It serves as a synthetic volatility gauge for assets that lack a dedicated VIX index. The math works by measuring the percentage drop from the highest recent close to the current low, essentially quantifying fear in the market without needing options data.
This specific script is designed to be purely visual. I have removed all the buy and sell labels found in other versions to leave a clean pane that plots only the oscillator and its moving average. You can use this to identify potential market bottoms when the black line spikes significantly, signaling that selling pressure is reaching a mathematical extreme relative to the recent trend.
Diodato 'All Stars Align' Signal (Trend Filtered)This indicator implements the Diodato "All Stars Align" strategy, a breadth-based system designed to identify high-probability reversal points by analyzing internal market strength rather than just price action. It works by monitoring Advancing versus Declining issues and volume across the exchange to detect moments of extreme market panic. When these internal breadth metrics hit specific oversold thresholds and align simultaneously with a standard Stochastic oscillator, the script signals a potential bottom.
I have modified this version to strictly enforce trend alignment. The signals are now filtered so that they will only appear if the 50 SMA is trading above the 200 SMA. This ensures that the indicator only highlights buying opportunities during established uptrends while completely filtering out signals during bearish market regimes.
You should use this tool to time entries during market pullbacks. A green cross indicates that one of the major breadth components has aligned with oversold Stochastics, while a purple cross indicates a stronger signal where both volume and issue-based breadth metrics have triggered together.
Volatility Tsunami RegimeVolatility Tsunami Regime
This indicator identifies periods of extreme volatility compression to help anticipate upcoming market expansions. It detects when volatility is unusually quiet, which historically precedes violent price moves.
The script pulls data from the CBOE VIX and VVIX indices regardless of the chart you are viewing. It calculates the standard deviation of both indices over a user-defined lookback period (default is 20). If the standard deviation drops below specific thresholds, the script flags the market regime as compressed.
The background color changes based on the severity of the compression. A red background signals a Double Compression, meaning both the VIX and VVIX are below their volatility thresholds. An orange background signals a Single Compression, meaning only one of the two indices has dropped below its threshold.
Use this tool to spot the "calm before the storm." When the background is red, volatility is statistically suppressed, making it a prime time to look for breakouts or buy options while premiums are cheap. Conversely, it serves as a warning to tighten stops if you are short volatility.
Percentage Distance from 200-Week SMA200-Week SMA % Distance Oscillator (Clean & Simple)
This lightweight, no-nonsense indicator shows how far the current price is from the classic 200-week Simple Moving Average, expressed as a percentage.
Key features:
• True percentage distance: (Price − 200w SMA) / 200w SMA × 100
• Auto-scaling oscillator (no forced ±100% range → the line actually moves and looks alive)
• Clean zero line
• +10% overbought and −10% oversold levels with subtle background shading
• Real-time table showing the exact current percentage
• Small label on the last bar for instant reading
• Alert conditions when price moves >10% above or below the 200-week SMA
Why 200-week SMA?
Many legendary investors and hedge funds (Stan Druckenmiller, Paul Tudor Jones, etc.) use the 200-week SMA as their ultimate long-term trend anchor. Being +10% or more above it has historically signaled extreme optimism, while −10% or lower has marked deep pessimism and generational buying opportunities.
Perfect for Bitcoin, SPX, gold, individual stocks – works on any timeframe (looks especially good on daily and weekly charts).
Open-source • No repainting • Minimalist & fast
Enjoy and trade well!
Distribution Day Grading [Blk0ut]Distribution Day Grading
This script is designed to give traders and investors a fast, objective, and modern read on market health by analyzing distribution days, and stall days, two forms of institutional selling that often begin to appear before trend weakness, failed breakouts, and sharp corrections.
The goal of this script isn’t to predict tops or bottoms, but instead, it measures the character of the tape in a way that’s simple, visual, and immediately actionable.
While distribution analysis has existed for decades, my implementation is, I think, a little more adaptive. Traditional rules for identifying distribution days, coming from CANSLIM methodology, were built for markets which had lower volatility, different liquidity profiles, and slower institutional rotation. This script updates the traditional method with modernized thresholds, recency-weighted decay, stall-day logic, and dynamic presets tuned uniquely for the personality of each major U.S. index (you can change the values yourself as well).
The results are displayed as a compact letter-grade that quantitatively reflects a measure of how much institutional supply has been hitting the market, as well as how recently. This helps determine whether conditions are supportive of breakouts, mean reversion trades, aggressive trend trades, or whether caution and lighter sizing are warranted.
__________________________________________________________________________________
How It Works
The script evaluates each bar for two conditions:
1. Distribution Day
A bar qualifies as distribution when:
- Price closes down beyond a threshold (default 0.30%, adjustable)
- Volume is higher than the prior session (optional toggle)
Distribution days typically represent active institutional selling .
2. Stall Day
A softer form of supply:
-Price remains flat to slightly negative within a small threshold
-Close < open
-Volume higher than prior day
Stall days represent a passive distribution or hidden supply .
Each distribution day is counted as 1 unit by the script, each stall day as 0.5 units.
Recency Weighting
The script applies an optional half-life decay so that fresh distribution matters more than old distribution. This mimics the “aging out” effect that professional traders use, but does it in a smoother, more mathematically consistent way.
The script then produces:
A weighted distribution score
A raw distribution + stall count
A letter grade from A → F
Let's talk about the letters...
_________________________________________________________________________________
Letter Grade Meaning
A — Very Healthy Tape
Minimal institutional selling.
Breakouts behave better, momentum holds, pullbacks are shallow, upside targets are hit more consistently.
B — Healthy / Slight Caution
Some isolated supply but nothing structural.
Conditions remain favorable for trend trades, pullbacks, and breakout continuation.
C — Mixed / Caution Warranted
Distribution is building.
Breakouts begin to fail faster, candles widen, rotation becomes unstable, and risk/reward compresses.
D — Weak / Risk Elevated
Institutional selling is becoming persistent.
Failed breakouts, sharp reversals, and failed rallies become more common. Position sizing should tighten.
F — Clear Deterioration
Broad, repeated institutional distribution.
This is where major tops, deeper pullbacks, and corrections often begin to form underneath the surface.
_________________________________________________________________________________
Index-Tuned Presets (Auto Mode)
Market structure varies dramatically across indices.
To address this, the script includes auto-detect presets for:
SPY / SPX equivalents
QQQ / NASDAQ-100 equivalents
IWM / Russell 2000 equivalents
DIA / Dow 30 equivalents
Each preset contains optimized values based on volatility, liquidity, noise, and institutional behavior:
SPY / SPX
Low noise, deep liquidity → classic thresholds work well.
Distribution thresholds remain conservative.
QQQ
Higher volatility → requires a slightly larger down-percentage filter to avoid false signals.
IWM
Noisiest of the major indices → requires much stricter thresholds to filter out junk signals.
DIA
Slowest-moving index → tighter conditions catch real distribution earlier.
The script automatically detects which symbol family you’re viewing and loads the appropriate preset unless manual overrides are enabled.
__________________________________________________________________________________
How to Interpret This Indicator
Grade A–B:
Breakouts have higher odds of clean continuation
Mean reversion is smoother
Position sizing can be more assertive
Grade C:
Start tightening risk
Focus on A- setups, not B- or C- risk ideas
Grade D–F:
Expect lower win rates
Expect breakout failures
Favor countertrend plays or reduced exposure
Take faster profits
____________________________
This indicator should help traders prevent themselves from fighting the tape or sizing aggressively when the underlying environment is deteriorating through:
- Modernized distribution logic, not the 1990s thresholds
- Recency-weighted decay instead of the old 5-week “aging out”
- Stall-day detection for subtle institutional supply
- Auto-presets tuned per index, adjusting thresholds to match volatility and liquidity
- Unified letter-grade scoring for visual clarity
- Independent application for any trading style, it helps with trend, momentum, mean reversion, and options
_________________________________________________________________________________
Keep in mind: This script is provided strictly for educational and informational purposes.
Nothing in this indicator constitutes financial advice, trading advice, investment guidance, or a recommendation to buy or sell any security, option, cryptocurrency, or financial instrument.
No indicator should ever be used as the sole basis for a trading or investment decision.
Markets carry risk. Past performance does not predict future results.
Always perform your own analysis, use proper risk management, and consult a licensed professional if you need advice specific to your financial situation.
Happy Trading!
Blk0uts






















