Quantile Threshold Bands | NickJoanQuantile Threshold Bands | NickJoan
Core Idea
Quantile Threshold Bands measures the position of price within a lookback window and uses that information to define adaptive upper and lower threshold bands. The script calculates two percentile levels from a user-defined lookback window and uses them to classify the current source value as bullish or bearish.
When the price moves above the upper quantile, the indicator turns bullish. When the price moves below the lower quantile, it turns bearish. When it returns inside the band area, the script keeps the last active state until the opposite threshold is crossed again. This gives the indicator a persistent regime structure.
Calculation Logic
The indicator works through three steps:
Source selection.
- The user chooses the price series to analyze.
Quantile calculation.
- The script looks back over a chosen number of bars.
- From that window, it calculates a lower quantile band and an upper quantile band.
- These values are obtained with a nearest-rank percentile calculation.
State assignment.
- If the source is above the upper band, the state becomes bullish.
- If the source is below the lower band, the state becomes bearish.
- If the source is between the bands, the previous state remains active.
What the Bands Mean
The lower and upper bands represent the selected percentile levels inside the recent price window.
The lower band marks a lower threshold within recent price behavior.
The upper band marks a higher threshold within recent price behavior.
The area between them defines the central zone where price is neither breaking upward nor downward.
Because the levels are recalculated on every bar, they adjust as the market changes. The result is a dynamic set of thresholds that follow the market’s own recent distribution.
Chart Output
The script displays four visual elements on the chart:
Lower Quantile line.
Upper Quantile line.
Filled zone between the two bands.
Colored candles showing the active state.
The color logic is:
Aqua when the regime is bullish.
Olive when the regime is bearish.
No color yet before the first valid state is established.
The output is designed to make the current state readable at a glance.
Inputs
The indicator has four primary inputs:
Source - The series used in the quantile calculation.
Lookback - The number of bars used to build the rolling window.
Lower Quantile % - The percentile used for the lower band.
Upper Quantile % - The percentile used for the upper band.
The lower percentile must be smaller than the upper percentile.
Alerts
The script includes alerts for regime changes:
Long Signal - Triggers when the state turns bullish.
Short Signal - Triggers when the state turns bearish.
These alerts are designed to notify the trader when price breaks into a new regime.
How to Use It
This indicator can be used as a regime filter or market bias tool.
Typical use cases include:
Directional bias filter. Use the bullish state when price is above the upper quantile and the bearish state when price is below the lower quantile.
Threshold-based alerts. Use the long and short alerts to notify you when price breaks into a new percentile regime.
Range / compression read. The distance between the two bands can help show whether recent price action has been compressed or expanded. A narrow band zone suggests tighter recent movement, while a wider band zone suggests broader recent movement.
Trade filtering. Use it to decide whether to allow only long setups, only short setups, or no directional trades depending on regime.
インジケーター

GreenStar ATR% Extension MonitorGreenStar ATR% Extension Monitor
The GreenStar ATR% Extension Monitor answers two questions in one window:
1) How volatile is the name? (14-period ATR as a percent of price)
2) How far has price stretched from a moving average, in relation to historical data?
Some names routinely stretch to 10-12x before mean-reverting. Others rarely clear 5x.
Scroll back on a daily chart to see extension habits for that symbol.
Why extension matters
Dollar distance from a 50-day MA does not compare a $15 name to a $400 name.
Dividing percent gain from the MA by ATR% provides a multiple of normal daily range.
That is the blue xFromMA line.
The green ATR% stepline shows the denominator: typical range relative to price.
These are separate formulas on the same pane and timeline to show correlation.
(It does not draw on the price chart.)
Two plots with independent calculations
ATR% (green stepline): 14-period ATR as a percent of price. Typical daily range relative to price level.
xFromMA (blue line): how many ATR% units price sits above or below the MA.
ATR% = ATR(14) / close x 100
xFromMA = ((close - MA) / MA x 100) / ATR%
Zero on xFromMA means price is at the MA.
A negative value indicates price is currently below the MA level.
Reading the pane
Both lines declining together often means the name is compressing toward the MA. Volatility and stretch easing at the same time.
Both rising means it's expanding.
Diverging slopes happen too.
xFromMA climbing while ATR% falls can mean price drifting from the MA while day-to-day volatility cools.
Read each line first, then note whether they agree.
Note: The lines share a pane for context, not because they combine into a signal.
A green/blue touch or cross is not a buy or sell event.
Visible-range markers (optional)
High, low, and mean for xFromMA are calculated from the visible bars on the chart.
There is no fixed lookback period.
They update on scroll or zoom, comparing current stretch to recent visible history.
The mean is the average xFromMA over those visible bars, not the midpoint between high and low.
Visible-range mean requires high/low lines enabled in the same settings group.
Optional zero line (dotted): xFromMA = 0, full width of the pane.
ATR% high/low bands exist too, off by default.
Settings
MA period (default 50)
MA type (default SMA)
ATR period (default 14)
Line colors and widths (default: dark green ATR%, blue xFromMA)
Zero line (default on)
High/low bands, xFromMA (default on)
Visible-range mean (default on)
ATR% high/low bands (default off)
Disclaimer
Context tool only. Not a signal, not financial advice. No entry or exit triggers. Past extension habits do not predict future price action.
インジケーター

Advanced Volatility1. Normalized ATR (%) - The Blue Line
What it is: The standard Average True Range (ATR) divided by the current closing price.
Why it matters: It tells you exactly what percentage the asset moves on an average bar. If the nATR is 2.0%, you know the asset swings roughly 2% per candle. This is incredibly useful for setting dynamic stop losses and take profits that scale mathematically with the asset's price, rather than guessing arbitrary dollar amounts.
2. BB Width (%) - The Orange Line
What it is: The distance between the Upper and Lower Bollinger Bands, divided by the Middle Band.
Why it matters: This acts as a highly effective "Squeeze" proxy. Volatility is cyclical; it contracts, then it expands. When you see the Orange line drop to extremely low historical levels, it means the Bollinger Bands are pinching tight. This contraction indicates that energy is building up, and a massive breakout/expansion move is imminent.
3. Historical Volatility (%) - The Fuchsia Line
What it is: A strict statistical calculation heavily used in options pricing (often referred to as HV or Realized Volatility). It calculates the standard deviation of logarithmic returns over a period, and annualizes it (multiplying by √252 trading days).
Why it matters: It gives you the "true" statistical variance of the asset. A rising Fuchsia line means the market is becoming highly chaotic and unpredictable, while a falling line means the market is returning to a stable, directional grind.
By layering all three of these metrics on one panel, you can easily spot when a market has compressed to zero (all lines dropping near the Zero Base) right before a massive trend erupts! インジケーター

インジケーター

IV Rank & Percentile XVI (S&P/ASX200 VIX)Most IV Rank and IV Percentile indicators on TradingView are built for the US VIX. This one is built specifically for XVI — the S&P/ASX 200 VIX (A-VIX) — so Australian index traders, and anyone trading XJO options, finally get the same volatility context without borrowing a US proxy. It reads straight off the published XVI value, so there's no option-chain reconstruction or estimation involved.
The core idea:
XVI is the ASX's "fear number" — the implied volatility of the XJO, the market's estimate of how much it's about to move over the next 30 days. The problem is that a raw XVI value is meaningless on its own. Is 16 high? Low? You can't know without context. This indicator's whole job is to give that context by answering one question: compared to its own recent history, is volatility currently rich, normal, or cheap?
The two ways it measures that:
IV Rank is the simple one. It looks at the highest and lowest XVI over your lookback window (a year by default) and asks where today sits on that line. XVI at its yearly low reads 0. At its yearly high, 100. Halfway between, 50. That's it — it's just "where in the range are we."
IV Percentile asks a slightly different question: of all the days in the window, what percentage had a lower XVI than today? If it reads 70, then vol is higher than it was on 70% of the past year's days. The reason this one's usually better is that IV Rank gets distorted by a single spike — one brief crash sets a sky-high "yearly high," and then every reading afterward looks artificially low against it for a whole year. Percentile doesn't have that problem because it counts days, so one freak day is just one day. That's why the regime label runs off Percentile by default.
The regime label:
This translates those 0–100 numbers into a single word so you don't have to interpret them each time. You set two thresholds — default 80 and 20. Above 80 it reads HIGH (vol is richer than most of the past year). Below 20, LOW (vol is cheap). Anything between, NORMAL. The thresholds are yours to move: if you think 80 is too strict and want it flagging "high" earlier, drop it to 70. The cutoffs define what you consider rich versus cheap. You can also switch whether the label reads off Percentile or Rank.
Live updating:
The ranking history is built from daily XVI closes (you want to rank against a year of daily data, not intraday noise), but the current reading floats live against that history. As XVI moves through the session, IV Rank, IV Percentile, and the regime word update with it rather than waiting for the daily close.
Settings:
Volatility index — defaults to ASX:XVI. Can be pointed at another volatility index if you want to reuse the tool elsewhere.
History timeframe — the bar size the ranking history is measured on. Daily is standard.
Lookback — how far back it ranks. 252 ≈ one year. Drop it to 90 or 60 for a tighter, more recent read; the long-window and short-window answers genuinely differ when the past year contains a stale spike, so comparing the two is useful.
Regime read from / High threshold / Low threshold — choose whether the label is driven by Percentile or Rank, and set the two cutoffs.
Display — plot the Percentile line on or off, and position the readout table in any corner.
Reading it:
The pane plots IV Rank (aqua) and IV Percentile (orange) on a 0–100 scale, with dashed guide lines at your high and low thresholds and a dotted midline at 50. The corner table shows the live XVI level alongside both readings and the current regime.
A note on the data: because XVI is a calculated index rather than a traded instrument, your reading is only as live as your XVI data feed. On delayed feeds it updates with that delay, which is still perfectly adequate for volatility-regime context.
This script is a volatility-context tool, not a trading system. It tells you where implied volatility sits relative to its own history; it does not generate buy or sell signals, and nothing here is financial advice. インジケーター

Daily Return Z-Score / OutlierDaily Return Z-Score / Outlier
What this indicator does
Daily Return Z-Score / Outlier measures how unusual today's daily return is relative to the instrument's own historical return distribution. It converts the current return into a Z-Score (standard-deviation scale) and colours the bars according to whether the return sits in the normal range, a warning zone, or an extreme zone (fat-tail event).
The goal is to make statistical outliers visible — days on which the price move is materially larger than the recent history would suggest.
How it works
Data basis (daily context): Daily returns are sampled on the daily timeframe ("D") via request.security, independent of the chart timeframe currently displayed. This keeps the statistical reference consistent.
Return calculation: Either simple percentage returns (close − close ) / close or log returns ln(close / close ).
Distribution statistics over a rolling window (default: 252 trading days ≈ 1 year). Two methods are available:
MAD (robust): Median and median absolute deviation. Insensitive to individual extreme values. The Z-Score is computed as 0.6745 · (return − median) / MAD (scaled to the normal distribution).
Classic: Mean and standard deviation. Z = (return − mean) / stdev. More reactive to, and distorted by, extreme values.
Empirical percentiles: In addition to the Z-Score, warning and extreme thresholds are derived directly from the observed percentiles of the return distribution (e.g. 5% / 95% for warning, 1% / 99% for extreme). Bar colour follows these empirical percentiles rather than normality assumptions.
Live return: The running return is computed against yesterday's daily close, so the classification updates intraday as the current day develops.
Display
Histogram of the Z-Score on a common sigma scale.
Reference lines at 0, ±1, ±2 and ±3 sigma for visual orientation.
Live label showing the current Z-Score on the last bar.
Values table (optional, bottom-right) with Z-Score, band classification, selected method, today's return, the dispersion measure (MAD or stdev), warning/extreme thresholds, and the effective sample size.
Colour logic
Normal — return within the warning percentiles.
Warn + / − — return beyond the warning percentile.
EXTREME + / − — return beyond the extreme percentile (fat tail).
Settings
Method: MAD (robust) or Classic (mean/stdev).
Lookback (days): Length of the statistics window (5–1000).
Log returns: Log instead of percentage returns.
Warning percentile % and Extreme percentile %: Colouring thresholds.
Colours for bullish/bearish warning and extreme zones.
Show values table.
Alerts
Extreme outlier UP — daily return beyond the upper extreme percentile.
Extreme outlier DOWN — daily return beyond the lower extreme percentile.
Extreme outlier (both directions) — combined condition.
How to use it
The indicator helps highlight days with a statistically notable move — for example to add context to news days, to watch for volatility clustering, or as a filter alongside an existing strategy. The MAD method is recommended when the history contains isolated strong outliers.
Notes
A Z-Score measures how unusual a move is, not its direction as a forecast.
Significance depends on a sufficiently large sample (see the "Sample" field in the table).
This script is an analysis tool and does not constitute financial advice. Past distributions are no guarantee of future behaviour.
═══════════════════════════════════════
Daily Return Z-Score / Outlier — Deutsch
Was macht dieser Indikator?
Daily Return Z-Score / Outlier misst, wie ungewöhnlich der heutige Tages-Return im Vergleich zur eigenen historischen Verteilung des Wertpapiers ist. Der Indikator wandelt den aktuellen Return in einen Z-Score (Standardabweichungs-Skala) um und färbt die Balken danach ein, ob sich der Return im normalen Bereich, in einer Warn-Zone oder in einer Extrem-Zone (Fat-Tail-Ereignis) befindet.
Ziel ist es, statistische Ausreisser sichtbar zu machen — also Tage, an denen die Kursbewegung deutlich grösser ausfällt, als es die jüngste Historie nahelegt.
Wie es funktioniert
Datenbasis (Daily-Kontext): Über request.security werden die Tages-Returns auf dem Tages-Timeframe ("D") erhoben, unabhängig vom aktuell angezeigten Chart-Timeframe. So bleibt der statistische Bezug konsistent.
Return-Berechnung: Wahlweise einfache prozentuale Returns (close − close ) / close oder Log-Returns ln(close / close ).
Verteilungsstatistik über ein rollierendes Fenster (Standard: 252 Handelstage ≈ 1 Jahr). Zwei Methoden stehen zur Wahl:
MAD (robust): Median und Median-Absolutabweichung. Unempfindlich gegen einzelne Extremwerte. Der Z-Score wird als 0.6745 · (Return − Median) / MAD berechnet (skaliert auf die Normalverteilung).
Klassisch: Mittelwert und Standardabweichung. Z = (Return − Mean) / Stdev. Reagiert stärker auf Extremwerte und wird von diesen verzerrt.
Empirische Perzentile: Zusätzlich zum Z-Score werden Warn- und Extrem-Schwellen direkt aus den beobachteten Perzentilen der Return-Verteilung gebildet (z. B. 5% / 95% für Warnung, 1% / 99% für Extrem). Die Balkenfarbe richtet sich nach diesen empirischen Perzentilen, nicht nach Normalverteilungs-Annahmen.
Live-Return: Der laufende Return wird gegen den gestrigen Tages-Schluss berechnet, sodass die Einordnung schon während des laufenden Tages aktualisiert wird.
Anzeige
Histogramm des Z-Scores auf einer gemeinsamen Sigma-Skala.
Referenzlinien bei 0, ±1, ±2 und ±3 Sigma zur visuellen Orientierung.
Live-Label mit dem aktuellen Z-Score am letzten Balken.
Werte-Tabelle (optional, unten rechts) mit Z-Score, Band-Einstufung, gewählter Methode, heutigem Return, Streuungsmass (MAD bzw. Stdev), Warn-/Extrem-Schwellen sowie der effektiven Stichprobengrösse.
Farb-Logik
Normal — Return innerhalb der Warn-Perzentile.
Warn + / − — Return jenseits des Warn-Perzentils.
EXTREM + / − — Return jenseits des Extrem-Perzentils (Fat Tail).
Einstellungen
Methode: MAD (robust) oder Klassisch (mean/stdev).
Lookback (Tage): Länge des Statistik-Fensters (5–1000).
Log-Returns: Log- statt prozentuale Returns.
Warn-Perzentil % und Extrem-Perzentil %: Schwellen für die Färbung.
Farben für bullische/bärische Warn- und Extrem-Zonen.
Werte-Tabelle anzeigen.
Alerts
Extrem-Ausreisser HOCH — Tagesreturn jenseits des oberen Extrem-Perzentils.
Extrem-Ausreisser RUNTER — Tagesreturn jenseits des unteren Extrem-Perzentils.
Extrem-Ausreisser (beide Richtungen) — kombinierte Bedingung.
Verwendung
Der Indikator eignet sich, um Tage mit statistisch auffälliger Bewegung hervorzuheben — etwa zur Kontext-Einordnung von News-Tagen, zur Beobachtung von Volatilitäts-Clustern oder als Filter neben einer bestehenden Strategie. Die MAD-Methode wird empfohlen, wenn die Historie einzelne starke Ausreisser enthält.
Hinweise
Ein Z-Score misst die Ungewöhnlichkeit einer Bewegung, nicht deren Richtung im Sinne einer Prognose.
Die Aussagekraft hängt von einer ausreichend grossen Stichprobe ab (siehe Feld "Sample" in der Tabelle).
Dieses Skript ist ein Analyse-Werkzeug und stellt keine Anlageberatung dar. Vergangene Verteilungen sind keine Garantie für zukünftiges Verhalten.
インジケーター

インジケーター

インジケーター

インジケーター

インジケーター

Compass | AnonycryptousCompass | Anonycryptous
Description & user manual
Credits
The weekly psychological level calculation in this indicator is based on open-source code originally published on TradingView. The original script was created by plasmapug. Continued development was done by infernixx, Peshocore, and xtech5192 in collaboration with TradersReality. Significant modifications have been made to integrate this component into the Compass framework.
Why this indicator is different
Most indicators answer one question. A moving average tells you the trend direction. An oscillator tells you momentum. A session box tells you the time. A volume indicator tells you participation. Each one is useful. None of them tells you where you are.
Before placing a trade, a trader needs to answer several questions simultaneously. What session is active and what does that mean for the type of price action to expect? Where does the macro trend stand? Is volume confirming the move or contradicting it? Are there open imbalances nearby that price may return to? How much of the day's expected range has already been consumed? Where are the key structural levels — pivots, the daily open, prior week references?
Answering each of these questions separately requires stacking tool after tool until the chart becomes unreadable. Compass answers all of them at once.
It is not a signal indicator. It does not fire arrows or tell you when to buy or sell. What it does is something more fundamental: it gives you a complete read of the market environment before any decision is made. Sessions, trend, volume, imbalances, range levels, pivots, psychological references — all in one overlay, all configurable, all on one chart.
The design philosophy is orientation first. Decision second. Compass tells you where you are. What you do with that is your responsibility.
Important notice
Compass does not generate trading signals.
It does not tell you when to buy or sell.
It does not predict market direction.
It does not replace your trading strategy or your own analysis.
All illustrative examples in this manual are for educational purposes only and are not trading recommendations.
All trading decisions remain entirely with the user.
Always apply your own judgment and manage your own risk.
1. Overview
Compass is a comprehensive market context indicator that combines eleven independent analysis frameworks into one unified overlay. Every component is individually toggleable. Six presets are included for different trading styles, from fast scalping to full multi-component analysis.
What it includes:
- Five-EMA suite with adaptive cloud around the EMA 50
- EMA crossover system with configurable signals and candle coloring
- Stochastic RSI background alerts with four alert types and RSI divergence detection
- PVSRA volume vector candle analysis with zone tracking and configurable thresholds
- Eight global market sessions with automatic DST awareness
- Average daily, weekly, and monthly range levels with 50% midpoints
- Classic pivot points with mid-point levels
- Daily open reference line with historical opens
- Fair value gap detection with partial absorption tracking
- Weekly psychological level tracking
- Live dashboard with eighteen data points across all active components
2. EMA suite
Five exponential moving averages are plotted simultaneously: EMA 5, EMA 13, EMA 50, EMA 200, and EMA 800. Together they cover short-term momentum, medium-term trend direction, macro trend, and long-term structural bias.
The EMA 50 is wrapped in a dynamic cloud calculated from two standard deviations of price. The cloud expands during volatility and contracts during consolidation. A widening cloud indicates active price discovery. A thinning cloud indicates equilibrium or compression before a directional move.
The EMA 200 is the primary macro bias filter. Price above it defines a broadly bullish environment. Price below it defines a broadly bearish environment. This is shown in the dashboard at all times.
The EMA 800 provides long-term structural context, particularly useful on mid to higher timeframes where it marks the gravitational center of multi-month price structure.
All five EMA lengths are configurable. Each has individual color and transparency controls. An EMA label option displays the current value at the right edge of each line.
3. EMA cross system
The EMA cross tracks a configurable fast EMA crossing a configurable slow EMA and marks the crossover bar. All candles after a cross continue in the direction of that cross until the opposite cross fires.
Three display modes are available: show both the fast and slow EMA lines, show a single consolidated EMA line, or hide the EMA lines entirely while keeping the crossover signals visible.
This component is a trend state indicator, not a trade trigger. A bull cross does not mean buy. It means the short-term trend has shifted upward relative to the medium-term average.
Signals and candle coloring can be toggled independently.
4. Stochastic RSI
The stochastic RSI component runs a standard stochastic RSI calculation and generates background color alerts based on crossover conditions at configurable band levels.
Four alert types are available, each independently toggleable:
Middle band crossover — K line crosses D line near the 50 level. Indicates a possible trend shift in momentum.
Overbought/oversold crossover — K line crosses D line from overbought or oversold territory. Indicates a potential reversal from an extreme.
Entering overbought — K line crosses above the upper band. Indicates that momentum has moved into overbought territory.
Entering oversold — K line crosses below the lower band. Indicates that momentum has moved into oversold territory.
The dashboard displays the current stochastic RSI state and the RSI value. RSI appears in green when above the midline and in red when below. Regular bullish and bearish divergence is detected automatically and shown in the dashboard as a directional label. When divergence is active, a thin reference line appears on the price chart marking the divergence candles.
5. PVSRA volume vector analysis
PVSRA analysis colors candles based on volume relative to the 10-bar average and the relationship between volume and candle spread.
Four vector types:
Green vector — bullish bar where volume is at or above the green/red threshold (default 200% of the 10-bar average), or where volume multiplied by spread is the highest of the last 10 bars. Indicates strong bullish institutional participation.
Red vector — same conditions on a bearish bar. Indicates strong bearish institutional participation.
Blue vector — bullish bar where volume is at or above the blue/violet threshold (default 150% of average). Indicates elevated bullish volume below the institutional threshold.
Violet vector — same conditions on a bearish bar. Indicates elevated bearish volume.
Grey — no vector conditions met. Normal volume.
Both thresholds are configurable directly from the settings panel. Blue and violet signals are strictly exclusive from green and red — a bar cannot qualify for both simultaneously.
Vector candle zones draw boxes at each vector candle location and remain active until price moves through the zone, marking areas where elevated institutional activity was detected at the time the candle formed.
The PVSRA override input allows a different symbol to be used for the volume calculation. This is useful when the charted instrument has unreliable volume data, such as CFDs, perpetual swaps, or instruments where the primary volume is on a related market.
6. Market sessions
Eight global trading sessions are tracked simultaneously, each with automatic DST awareness. Sessions are displayed as expanding boxes with high and low lines and a real-time label showing the session open.
Sessions included:
- London: 08:00–16:30 UTC
- New York: 14:30–21:00 UTC
- Tokyo: 00:00–06:00 UTC
- Hong Kong: 01:30–08:00 UTC
- Sydney: 22:00–06:00 UTC
- EU brinks: 08:00–09:00 UTC
- US brinks: 14:00–15:00 UTC
- Frankfurt: 07:00–16:30 UTC
DST is handled automatically for London, New York, and Sydney. No manual adjustment is needed. Each session can be toggled individually, and box color, transparency, and label color are fully configurable per session.
Session context matters because market behavior differs significantly depending on which participants are active. London and New York overlap produces the highest volume and fastest price movement. Tokyo and Sydney sessions tend to consolidate. The brinks windows mark the transition periods where session highs and lows often form.
7. Range levels
Three statistical range frameworks measure the expected price range for the current period based on historical averages.
Average daily range (ADR) — the expected high and low for the current trading day. When price reaches the ADR level, the day's expected range has been consumed. Moves beyond the ADR are extension moves that occur with lower statistical probability and often mean-revert. The dashboard shows ADR % used — how much of today's expected range has already been consumed. Above 80% indicates the day is approaching its expected limit.
Average weekly range (AWR) — the same concept applied to the current week. Useful for assessing how much room the week has left to move.
Average monthly range (AMR) — the same concept applied to the current month. Provides macro context for position sizing and target expectations.
Each framework includes a 50% midpoint level marking the center of the expected range. The ADR measure from daily open option calculates the range starting from that day's open price rather than the statistical high, making the levels static for the entire day.
All three frameworks have individual lookback period inputs, color controls, line styles, and label toggles.
8. Pivot points
Classic pivot points are calculated from the prior day's high, low, and close. Levels include PP, R1/S1, R2/S2, R3/S3, and M mid-point levels between each major level.
Pivot points provide structural reference for the current session. Price above PP defines a broadly bullish day structure. R levels act as potential resistance targets. S levels act as potential support targets. M levels provide intermediate precision references between major pivots.
All levels can be toggled individually. Lines extend rightward from the prior session and can optionally extend in both directions. Each level has individual color and line style controls.
9. Daily open
A horizontal line marks the current day's opening price. This is one of the most referenced structural levels among short-term traders because it defines the starting point for the day's price discovery.
Price above the daily open reflects a bullish session bias. Price below reflects a bearish session bias. When price oscillates around the daily open without committing direction, the session is in balance — a lower probability environment for trend trades.
Historical daily opens can optionally be shown as reference for prior day context.
10. Fair value gaps
A fair value gap is a three-bar imbalance where price moved through a range without leaving two-sided trade — the low of the upper candle is above the high of the lower candle (bullish gap) or vice versa (bearish gap). These areas represent unfinished business where the market may return to achieve balance.
Gaps are filtered by a minimum width threshold expressed as a multiple of ATR. Gaps narrower than the threshold are excluded. Partial absorption is tracked — as price returns into the gap, the fill color changes to show how much of the imbalance has been recovered.
Fully mitigated gaps can be kept on the chart as historical reference or deleted automatically to maintain a clean view.
11. Psychological levels
Weekly psychological levels mark the prior week's high and low as calculated by a specific session-anchored method. These levels represent deliberate structural references where participants have previously committed size — breakouts and rejections around these levels tend to be more intentional than random price noise.
Three GMT offset options accommodate the session anchor calculation for different global market structures. Two mode options are available: crypto (weekly reset on Saturday Sydney open) and forex (weekly reset on Monday Tokyo open).
12. Settings reference
Preset
- Custom: full manual control over all settings.
- Clean scalper: sessions, EMA suite, FVG, subtle candle coloring. Low noise.
- Full context: everything on, medium transparency. Best for analysis.
- Signal focus: EMA cross, stoch RSI background, PVSRA bar color prominent. Rest subtle.
- Minimal: sessions, daily open, ADR only. No signals.
- PVSRA pro: PVSRA and vector candle zones central. EMA 200 and 800 only.
Global settings
- Master opacity offset (custom preset only): shifts all transparency values simultaneously.
- Show bull/bear label text: shows or hides text on EMA cross signal triangles.
EMA suite
- Show EMA suite and labels
- Individual EMA color and transparency controls
- EMA cloud fill and border transparency
- EMA line width
EMA cross
- Show EMA cross signals
- Fast EMA, slow EMA, and consolidated EMA lengths
- Show both EMAs or consolidated only
- Bull, bear, and neutral colors and transparency
- Cross EMA line width
Stochastic RSI
- Show stochastic RSI background alerts
- RSI length and stochastic length
- Overbought and oversold band levels
- Individual alert type toggles (four types)
- Alert colors and transparency
- RSI divergence lookback period
- Divergence line color and width
PVSRA
- Vector colors (red, green, violet, blue, regular up/down)
- Green/red threshold (× average volume, default 2.0)
- Blue/violet threshold (× average volume, default 1.5)
- Include spread filter for green/red classification
- Override symbol toggle and input
- Show vector candle zones with transparency and width settings
Candle coloring
- Enable candle coloring
- Coloring mode: EMA cross / PVSRA / EMA 200 / off
- Bull and bear candle color and transparency
Market sessions
- Show market sessions
- Session timezone
- Show sessions on weekends
- Session high/low line style and width
- Per session: toggle, box color, transparency, label color
Range levels
- Show ADR, AWR, AMR (individual toggles)
- Lookback periods for each
- Show 50% midpoint levels
- Measure from daily open (ADR only)
- Color, transparency, line width, line style, labels
Pivot points
- Show PP, R1/S1, R2/S2, R3/S3, M levels individually
- Show labels
- Extend lines both directions
- Individual level colors and line styles
- Pivot line width
Daily open
- Show daily open
- Show label
- Show historical daily opens
- Color, transparency, line width
Fair value gaps
- Show fair value gaps
- Width filter (ATR multiplier)
- Extend to current bar
- Bullish and bearish FVG colors
- Mitigation fill colors
- Keep historical FVGs after mitigation
Psychological levels
- Show psy levels and labels
- Show historical psy levels
- GMT offset (GMT+1, GMT+2, GMT+3)
- Psy type: crypto or forex
- High and low colors and transparency
Dashboard
- Show dashboard
- Position: top left, top right, bottom left, bottom right
- Size: tiny, small, normal
13. Dashboard reference
The dashboard provides eighteen live data points across all active components:
Session — the currently active market session.
EMA cross — current EMA cross direction: bull or bear.
EMA 200 — whether price is above or below the EMA 200.
Stoch RSI — current stochastic RSI condition.
RSI — current RSI value, colored green above midline and red below.
RSI divergence — active bullish or bearish divergence, or none.
PVSRA — current candle vector type.
ADR % used — how much of today's expected daily range has been consumed.
FVG active — count of open unmitigated fair value gaps and mitigation percentage.
Psy level — whether price is above or below the prior week's psychological level.
Timezone — active session timezone setting.
VCZ active — count of active vector candle zones above and below current price.
Pivot PP — current pivot point value.
Daily open — current daily open price and direction.
14. How to use
14.1 Initial setup
Select a preset that matches your primary trading style. Adjust the session timezone to match your location or your primary exchange. If you trade an instrument with unreliable volume data, enable the PVSRA override and set it to a correlated liquid instrument. Set the ADR lookback period to your preference — 14 days is a standard starting point. For FVGs, set the width filter to 0.5 or higher to exclude minor gaps.
14.2 Reading the dashboard
The dashboard is the fastest way to orient yourself on a new chart or a new session. Check session, EMA cross direction, EMA 200 position, stoch RSI state, and ADR consumed before anything else. Five seconds to a full picture of where the market stands.
14.3 Reading the chart
Check EMA alignment. When EMA 13, EMA 50, and EMA 200 are stacked in the same direction, the trend is more significant than a single crossover. Divergence between them reflects a transition or competing timeframe pressures.
Check ADR percentage. Below 50% means the day has statistical room to move. Above 80% means the day is near its expected limit and extension moves are less probable.
Look for open FVGs near current price. An unmitigated FVG in the direction of the prevailing trend is a precision reference area where price has historically returned.
Check the psy level. If price is approaching the prior week's high or low, be aware that participant behavior around those references tends to be deliberate.
14.4 Timeframe guide
1 minute to 3 minutes — clean scalper preset, candle coloring set to EMA cross.
5 minutes to 15 minutes — clean scalper or signal focus preset.
30 minutes to 1 hour — full context preset, use ADR and pivot points.
4 hours to daily — full context or minimal preset.
14.5 Tips
PVSRA override — use when your broker's volume data is unreliable, when you trade a CFD or derivative with synthetic volume, or when you want spot market volume for a futures chart.
Master opacity offset — adding 10 to 20 increases overall transparency and dims the chart if it feels cluttered. Subtracting 10 to 20 makes all elements more prominent. This shifts all transparency values simultaneously without changing individual settings. Only active in custom preset.
Not every component needs to be active at once. Most traders will find three to four components provide the context they need for their specific setup.
15. Disclaimer
This indicator is provided for educational and informational purposes only.
Nothing in this document constitutes financial advice or any form of trading recommendation.
Trading financial instruments involves substantial risk of loss.
Past performance is not indicative of future results.
You may lose all of your invested capital.
All trading decisions are made entirely by the user.
Use at your own discretion.
インジケーター

インジケーター

インジケーター

Rolling Sharpe Ratio Oscillator | Astral Vision Rolling Sharpe Ratio Oscillator | Astral Vision 🌠💠
The Sharpe Ratio measures risk-adjusted return: how much excess return is being generated per unit of volatility. Applied as a rolling oscillator to Bitcoin's daily log returns, it answers a question that neither price nor momentum indicators address: is the current appreciation being earned efficiently relative to the risk being taken, or is it a volatile, noisy move that consumes large drawdowns to produce modest gains?
High rolling Sharpe values indicate sustained, low-volatility uptrends where return per unit of risk is structurally elevated, historically coinciding with the most efficient phases of Bitcoin's bull runs. Negative Sharpe values indicate periods where volatility exceeds returns, marking drawdowns and bear phases.
This indicator plots the annualized rolling Sharpe as a smoothed oscillator with configurable thresholds, and back-projects those thresholds onto the price chart as dynamic levels representing the price that would produce each Sharpe extreme given current return and volatility conditions.
Calculation ⚙️
`Log Return = log(close / close )`
`Rolling Sharpe = (SMA(Log Return, length) / StdDev(Log Return, length)) × √365`
The ratio is annualized by multiplying by the square root of 365, expressing it in standard annual terms. An EMA of configurable length is then applied to smooth the raw Sharpe before threshold evaluation and coloring.
The price bands invert the Sharpe thresholds back to price space:
`Band Price = close × exp(threshold × StdDev / √365 × length)`
This produces a dynamic price level representing what price would need to be, given current volatility, to produce the specified Sharpe value.
Plots 📊
Smoothed Sharpe oscillator line in the indicator panel, colored by regime or continuous gradient
Overbought and oversold threshold lines
Fill between oscillator and overbought threshold when breached (distribution zone)
Fill between oscillator and oversold threshold when breached (accumulation zone)
Dynamic overbought and oversold price bands on the price chart, EMA-smoothed
Candle coloring on the price chart by regime or gradient
Background highlight on the price chart when either threshold is active
Inputs 🎛️
`Lookback Period (days)`: rolling window for mean and standard deviation of log returns (default 365)
`Smoothing EMA Length`: EMA applied to the raw Sharpe before all output (default 30)
`Oversold Threshold`: Sharpe level marking risk-adjusted accumulation extremes (default −1.5)
`Overbought Threshold`: Sharpe level marking risk-adjusted distribution extremes (default 2.8)
`Use Gradient Color`: toggles between continuous gradient coloring across the −2 to +2 range and discrete regime-based coloring
Colors 🎨
5 Astral Vision presets + custom override. Default: Futura. In gradient mode, color transitions continuously from negative to positive across the Sharpe range. In discrete mode, positive color activates above the overbought threshold, negative below the oversold threshold, and neutral between them.
Purpose 🎯
Standard momentum indicators like RSI and MACD measure price direction and speed, but are blind to whether that directional move is being achieved efficiently. A 30% Bitcoin rally with 80% annualized volatility carries very different risk-adjusted implications than the same rally with 40% volatility, yet both look identical on a price or momentum chart.
The rolling Sharpe makes that distinction explicit. The price band back-projection eliminates the need to mentally translate Sharpe values into price context: the bands show directly on the chart what price level corresponds to each statistical extreme given current volatility, updating dynamically as the volatility regime evolves.
The gradient coloring option provides a continuous read of risk-adjusted efficiency across the entire oscillator range, not just at binary threshold crossings.
Disclaimer ⭕️
It is not financial advice, not an investment recommendation, and not affiliated with any financial institution, research firm, or organization of any kind. All content is provided for educational and informational purposes only. Always conduct your own research before making any financial decision. インジケーター

Volatility Gated Supertrend [BackQuant]Volatility Gated Supertrend
Overview
Volatility Gated Supertrend is a regime-aware trend-following indicator built around a modified Supertrend engine with an integrated volatility filter . Unlike a traditional Supertrend, which flips direction whenever price crosses its trailing bands, this version introduces a gating mechanism that can block trend reversals during low-volatility conditions .
The purpose of the indicator is simple:
Keep the responsiveness and structure of a Supertrend.
Reduce false flips during sideways or compressed conditions.
Allow trend transitions primarily when volatility is expanding enough to justify participation.
The result is a smoother and more selective trend engine designed to suppress whipsaws while still reacting to meaningful directional movement.
The full source structure for the indicator can be referenced here: :contentReference {index=0}
Core idea
Traditional Supertrend indicators work well during directional markets but struggle in compressed environments:
Price repeatedly crosses the trailing bands.
Trend direction flips too frequently.
False reversals appear during chop.
This indicator attempts to solve that problem by asking:
“Is there enough volatility expansion to justify accepting a new trend?”
Instead of blindly allowing every flip, the indicator measures:
Current volatility,
Baseline volatility,
Relative expansion or compression.
Only when volatility conditions are sufficient does the trend engine allow a directional transition.
What the Supertrend is
The Supertrend is a volatility-based trailing trend indicator built from:
ATR (Average True Range)
A central price source
A directional trailing stop structure
The classic logic:
Upper band = price source + ATR × multiplier
Lower band = price source − ATR × multiplier
These bands trail price dynamically:
In bullish conditions, the lower band ratchets upward.
In bearish conditions, the upper band ratchets downward.
When price crosses one of the bands:
The trend flips direction.
This creates a clean directional regime model.
How this version differs
The major difference is the volatility gate .
A normal Supertrend asks:
“Did price cross the band?”
This indicator asks:
“Did price cross the band, and is volatility strong enough to trust the move?”
That additional filter dramatically changes behavior in sideways conditions.
ATR and volatility structure
The indicator uses two ATR measurements:
Fast ATR → current short-term volatility
Slow ATR → baseline long-term volatility
The core ratio:
Volatility Ratio = Fast ATR / Slow ATR
Interpretation:
Ratio above threshold → volatility expansion
Ratio below threshold → volatility compression
This becomes the gate logic.
Volatility Gate Logic
The gate opens only when:
Fast ATR / Slow ATR ≥ Gate Threshold
If volatility is too compressed:
The gate closes.
Trend flips are blocked.
Importantly:
The Supertrend bands still calculate normally.
Price can still cross them.
But the directional state will not update while the gate is closed.
This distinction matters because it means:
The market may technically trigger a reversal,
But the indicator intentionally ignores it if volatility conditions are weak.
Why this helps
Most trend-following systems fail in chop because:
Small meaningless moves trigger directional flips.
There is insufficient range expansion.
The market lacks trend persistence.
By requiring volatility confirmation:
Weak reversals are filtered out.
Trend state becomes more stable.
Noise is reduced.
This makes the indicator particularly useful during:
Low-volatility consolidations,
Mean-reverting conditions,
Slow drifting ranges.
Band construction
The indicator uses:
hl2 as the central source,
ATR for dynamic width,
A configurable multiplier for sensitivity.
Formulas:
Upper Band = hl2 + ATR × multiplier
Lower Band = hl2 − ATR × multiplier
The trailing logic prevents the bands from moving backward unnecessarily:
Bullish lower band only rises.
Bearish upper band only falls.
This creates the staircase-style trailing structure common in Supertrend systems.
Trend state
Trend direction is binary:
1 = bullish
-1 = bearish
A raw bullish flip occurs when:
Close > trailing upper band
A raw bearish flip occurs when:
Close < trailing lower band
However:
The trend only updates if the volatility gate is open.
This is the defining behavior of the script.
Blocked flips
One of the most important features is the visualization of blocked signals .
When:
Price crosses a band,
But volatility is insufficient,
The script:
Plots an X-cross marker,
Keeps the existing trend state,
Refuses the flip.
This gives traders visibility into:
Potential but unconfirmed reversals,
Areas of weak participation,
Fake breakouts or low-energy transitions.
Visual behavior
Trend band
The active trailing band changes color based on trend direction:
Bullish → bullish color
Bearish → bearish color
Gate closed → gated color (dimmed)
Trend fill
The script fills the space between price and the active band:
Bullish fill during bullish regimes
Bearish fill during bearish regimes
This creates a cleaner directional overlay.
Outer glow
An additional glow layer expands slightly beyond the trend band:
Adds directional emphasis,
Improves trend readability,
Visually reinforces active regime.
When the gate closes:
The band and candles dim.
This visually communicates:
“The trend engine is currently suppressing flips.”
Candle coloring
Candles can optionally inherit the trend state:
Bullish regime → bullish candles
Bearish regime → bearish candles
Gate closed → dimmed neutral appearance
This allows the indicator to function as a full-chart regime overlay.
Signal logic
Bullish signal
Occurs when:
Trend flips from bearish to bullish,
AND the gate is open.
Bearish signal
Occurs when:
Trend flips from bullish to bearish,
AND the gate is open.
Blocked signal
Occurs when:
A raw flip condition appears,
BUT volatility ratio is below threshold.
This distinction is important:
A blocked signal is not ignored information.
It is a rejected transition.
How to interpret the gate
Gate open
Volatility is active.
Market expansion is sufficient.
Trend flips are allowed.
Gate closed
Market is compressed.
Conditions are likely choppy.
Trend reversals are suppressed.
This effectively turns the indicator into a:
Trend-following system during expansion,
Trend-holding system during compression.
Why ATR ratio works well
ATR ratio is a powerful regime detector because it measures:
Current volatility relative to normal volatility.
Not just:
“Is volatility high?”
But:
“Is volatility high relative to its recent baseline?”
This adaptive behavior allows the gate to work across:
Different assets,
Different timeframes,
Different volatility environments.
Input guide
ATR Multiplier
Controls band width:
Higher = wider bands, fewer flips
Lower = tighter bands, more sensitivity
ATR Length
Controls volatility calculation for the Supertrend itself.
Fast ATR
Short-term volatility measure.
Slow ATR
Long-term baseline volatility measure.
Gate Threshold
Controls how strict the gate is:
Lower threshold = more permissive
Higher threshold = more restrictive
Example:
0.6 → allows more flips
1.0 → requires current volatility to match baseline
1.2 → requires expansion regime
Strengths
Reduces Supertrend whipsaws in chop.
Adds regime awareness.
Uses adaptive volatility filtering.
Clean trend visualization.
Blocked-signal logic provides extra context.
Limitations
Can delay reversals during early expansion.
Very high thresholds may suppress legitimate transitions.
Still fundamentally a trend-following system.
Not designed for low-volatility mean reversion trading.
Best use case
Volatility Gated Supertrend works best as:
A directional regime filter,
A swing trend overlay,
A volatility-aware trend confirmation tool,
A way to suppress noise during consolidations.
It is particularly useful for traders who:
Like Supertrend logic,
But dislike how often it flips in sideways markets.
Summary
Volatility Gated Supertrend extends the classic Supertrend framework by introducing a volatility-aware gating engine that blocks trend reversals during compressed market conditions. By comparing fast ATR against slow ATR, the script determines whether enough volatility expansion exists to justify a directional transition. The result is a cleaner, more stable trend system that retains the strengths of Supertrend logic while dramatically reducing whipsaws during low-energy market regimes. インジケーター

Relative ATR Volatility IndicatorThis relative volatility regime indicator measures whether current volatility is high, low, or "normal" compared to its own recent historical range.
It calculates ATR, then compares the current ATR reading against a rolling percentile window. By default, it looks back over the last 100 bars and marks:
The upper volatility threshold, based on the 80th percentile of recent ATR readings (red)
The lower volatility threshold, based on the 20th percentile of recent ATR readings (green)
With the default settings of a 100-bar Rolling Window Length, Top Percentile of 80, and Bottom Percentile of 20:
If the white ATR line is above the red line, current volatility is in the highest 20% of recent ATR readings.
If the white ATR line is below the green line, current volatility is in the lowest 20% of recent ATR readings.
In other words, the script ranks current ATR against its own recent history and highlights volatility extremes. This makes it easier to objectively identify whether a market is currently in a high-volatility, low-volatility, or normal-volatility regime.
The indicator is directionally agnostic. A high ATR reading does not mean price is bullish or bearish; it simply means the market is moving more than usual. High ATR can occur during bullish expansion, bearish selloffs, large gaps, or choppy high-range conditions.
The main values are:
White line = current ATR value
Red line = upper ATR percentile threshold
Green line = lower ATR percentile threshold
Grey line = middle 50th percentile (turned off in Style Settings by default)
ATR Ratio Upper = current ATR divided by the upper threshold
ATR Ratio Lower = current ATR divided by the lower threshold
The ATR Ratio values can be used as an input by other scripts or strategies:
ATR Ratio Upper above 1 means ATR is above the upper volatility threshold
ATR Ratio Lower below 1 means ATR is below the lower volatility threshold
This script uses Pine Script's ta.percentile_nearest_rank() function to calculate rolling ATR percentile thresholds.
This is a lagging indicator, like most indicators, but it provides a useful way to classify volatility regimes objectively. インジケーター

Volatility Radar - Muti-Timeframe [PUCHON]Volatility Radar — MTF
Reads ATR% , Historical Volatility (HV%) , and Bollinger Band Width (BBW%) across 5 timeframes simultaneously. Classifies each timeframe into a volatility regime — LOW / NORMAL / HIGH / EXTREME — using percentile rank computed independently per timeframe. A single consensus row summarises all 5 timeframes into one actionable signal.
Open-source script — full code visible in Pine Script editor.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WHAT MAKES IT DIFFERENT
Most volatility tools work on a single timeframe. This dashboard:
Runs three independent metrics per timeframe via bundled request.security() — one call per TF, no redundant data fetching
Classifies regime using ta.percentrank() computed inside each TF's own bar history — "HIGH" on 5m and "HIGH" on Daily are both statistically meaningful relative to that TF's own past
Renders a unicode sparkline row █░ to compare relative ATR across all timeframes at a glance
Neon Dark styling: regime label pinned to last candle, colored regime badges, candle coloring, background state tint
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HOW TO READ EACH ROW
Row 1 — ATR %
Average True Range as a percentage of price. Answers: "How large are the candles right now, relative to price?"
Higher ATR% = bigger candles, wider spreads, larger stop loss needed
Compare across TFs: if 5m ATR% suddenly equals the 60m ATR%, intraday volatility has spiked unexpectedly
Color reflects regime: Neon Green = Low Cyan = Normal Red = High Magenta = Extreme
Row 2 — HV %
Historical Volatility (annualized). Standard deviation of log returns × √252.
Answers: "At what annualized rate is this asset moving right now?"
Rising HV = market accelerating. Falling HV = compressing toward a squeeze
Cross-TF: if 5m HV is 3% but Daily HV is 37%, short-term is calm inside a long-term volatile environment — mean-reversion setup signal
Displayed in neutral Cyan — informational, not regime-colored
Row 3 — BBW %
Bollinger Band Width = (Upper BB − Lower BB) / Midline × 100.
Low BBW = bands squeezing → breakout risk rising
High BBW = bands expanded → trend or momentum is active
BBW spike after a Low regime = early breakout confirmation
Multiple TFs showing Low BBW simultaneously = convergent squeeze — watch closely
Row 4 — REGIME
Percentile rank of current ATR% against the last Regime Lookback bars of that same timeframe.
LOW — below 25th percentile → unusually quiet; possible accumulation or squeeze
NORMAL — 25th–75th percentile → average conditions; trend-following works well
HIGH — 75th–90th percentile → elevated; widen stops, reduce position size
EXTREME — above 90th percentile → rare spike; consider standing aside
Regime is relative to the instrument's own history. 0.5% ATR could be LOW on a volatile crypto but EXTREME on a blue-chip stock. The percentile rank adapts automatically.
Row 5 — ATR▐ (Sparkline)
Unicode bar █ (filled) / ░ (empty) — each TF's ATR% as a proportion of the highest ATR% across all columns.
Longest bar = most volatile timeframe right now
Normal: bars grow left (5m) to right (Daily) — higher TFs are naturally more volatile in absolute terms
Warning: a short-TF bar suddenly matching a long-TF bar → intraday volatility spike
Bar color matches the regime of that column
Row 6 — SIGNAL
Consensus across all 5 timeframes. Counts TFs in HIGH or EXTREME regime.
STABLE — NORMAL VOLATILITY → 0–1 TFs elevated. Trade normally.
ELEVATED ACROSS TIMEFRAMES → 2–3 TFs elevated. Widen stops, reduce size.
⚠ RISK OFF — EXTREME VOLATILITY → 4–5 TFs elevated. Consider standing aside.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CANDLE & BACKGROUND COLORING
Candles and background tint reflect the current chart timeframe's regime:
🟢 LOW — calm market, potential accumulation zone
🔵 NORMAL — standard conditions, trend strategies work well
🔴 HIGH — elevated, tighten stops and reduce size
🟣 EXTREME — dangerous conditions, reduce or close exposure
A glow label above the last candle shows the current regime at a glance.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PRACTICAL SCENARIOS
Scenario A — Safe to trade
All TFs: NORMAL or LOW → SIGNAL: STABLE
Action: Use momentum strategies. ATR% bars are short and roughly equal.
Scenario B — Reduce size
5m: NORMAL | 15m: HIGH | 60m: EXTREME | 240m: HIGH | D: NORMAL → SIGNAL: ELEVATED
Action: Widen stop to accommodate 60m ATR range. Reduce position by 30–50%.
The 60m sparkline bar will be the longest — confirming where volatility is concentrated.
Scenario C — Stand aside
ALL TFs: EXTREME → SIGNAL: ⚠ RISK OFF
Action: Wait for regime to cool to NORMAL before re-entering. Occurs during major news events, flash crashes, or market opens.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HOW TO USE
Add to any chart as an overlay — works on all instruments and timeframes
Set your 5 analysis timeframes in the Timeframes settings group
Check REGIME row — identify which timeframes are elevated
Check SIGNAL row — use as your position sizing guide
Read sparkline bar row — longest bar = where volatility is concentrated
Enable candle coloring and background tint for instant visual scanning
Set alert on Regime Escalation to be notified when volatility rises
Set alert on Regime Cooling to re-enter after a volatility spike
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SETTINGS GUIDE
TF 1–5 — Five analysis timeframes (default: 5 / 15 / 60 / 240 / Daily)
ATR Length (default: 14) — ATR period. 14 is standard; increase for smoother values on noisy instruments
HV Length (default: 20) — Log-return standard deviation lookback for HV%
BBW Length (default: 20) — Bollinger Band period for width calculation
Regime Lookback (default: 100) — Percentile rank window per TF. Higher = more stable labels, slower to react. Lower = faster but noisier
Color Candles by Regime — Toggle neon candle coloring on/off
Background Tint — Toggle near-invisible regime background tint
ATR% Sparkline Row — Toggle unicode bar chart row visibility
Table Position — Move dashboard to any of the four chart corners
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ALERTS
Five built-in alert conditions:
Extreme Volatility — current TF enters EXTREME regime
High+ Volatility — current TF enters HIGH or EXTREME regime
Low Volatility — current TF enters LOW regime (watch for squeeze)
Regime Escalation — volatility rises from Normal to High/Extreme
Regime Cooling — volatility falls back from High/Extreme to Normal
Set via: Right-click chart → Add alert → Condition: Volatility Dashboard — MTF
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
LIMITATIONS
Regime needs at least Regime Lookback confirmed bars on each TF. First bars on very high timeframes may show "—" until enough history is loaded
HV uses √252 annualization (trading days). Crypto 24/7 markets are slightly understated — actual annualized vol is ~17% higher than displayed
Does not predict direction. HIGH and EXTREME regimes occur in both strong trends and sharp crashes. Use with a directional indicator
Requesting a TF lower than the chart's own TF has no effect — Pine Script cannot look inside the current bar
Current (unconfirmed) bar values update in real time and may differ from the final bar-close value. This is normal behavior, not repainting
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OPEN SOURCE
Published under Mozilla Public License 2.0 .
Free to use, modify, and build upon.
If you publish a modified version, credit to the original script is appreciated.
⚠ Disclaimer: This script is for educational and informational purposes only. It does not constitute financial advice. Volatility analysis does not guarantee profitable trades. Past volatility patterns do not predict future price movements. Always conduct your own analysis and apply proper risk management before trading. インジケーター

ETHDVOL based Ethereum VolatilityThis indicator maps Ethereum's expected price range across three timeframes — daily, weekly, and monthly — using the Ethereum Deribit Volatility Index (ETHDVOL) as the implied volatility source and realized historical volatility (HV7, HV14, HV30) as the measured counterpart.
ETHDVOL is Ethereum's equivalent of the VIX. It represents the market's forward-looking expectation of annualized volatility, derived from Deribit options pricing. When ETHDVOL is high, the market expects large moves. When it is low, the market expects compression. By scaling ETHDVOL and realized vol into dollar-denominated price bands anchored to key opens, this indicator gives you a structural volatility map directly on the ETH price chart — no separate pane required.
The core concept is straightforward: options market participants price expected ranges. Those ranges become levels. Price respects them — not always, not perfectly, but consistently enough to be meaningful as reference and used in comparison to what is realized.
How to Read the Bands
The Anchoring System
Each set of bands is anchored to a specific open and held fixed for its entire period. They do not drift or repaint mid-period.
**Weekly bands** lock on Saturday's opening price and ETHDVOL reading at the start of each crypto week. They hold for the full 7-day period. This Saturday anchor matters: the crypto options and perpetuals market structurally resets around the Saturday UTC open. Weekly expiries settle on Fridays, and Saturday represents the cleanest "new week" anchor available on a 24/7 market.
**Monthly bands** lock on the 1st of each calendar month and hold for the entire month. They represent the options market's expectation of how far ETH could move over a 30-day window from that open.
**Daily bands** reset each day at 00:00 UTC and reflect that day's opening price and current live volatility readings. They are the tightest, most reactive bands on the chart.
The Band Pairs
Each timeframe shows two bands — one from implied volatility (IV) and one from realized historical volatility (HV):
**IV bands** (white weekly, white monthly) represent what the options market *expects* ETH to move. These are forward-looking. They define the market's priced range for the period.
**HV14 Weekly** (orange) represents the actual realized volatility over the past 14 days, scaled to a weekly move. When HV14 is inside the IV band, the market is pricing more risk than it has been delivering — a low-volatility regime. When HV14 approaches or exceeds the IV band, realized vol is catching up to or exceeding what was priced.
**HV30 Monthly** (orange-red) is the 30-day realized volatility scaled to a monthly move. This sits alongside the monthly IV band and gives context for whether the current month's implied range is historically generous or tight.
**HV7 Today** (light yellow) is a live daily band using the most recent 7 days of realized volatility anchored to today's open. It is the most sensitive reading — useful for intraday context and identifying when daily price movement is pushing into or through the short-term realized range.
**IV Today** (faded white) is the same daily scaling but using DVOL — today's implied daily range from the options market. It is intentionally faded to keep the chart readable.
The Info Table
The top-left badge shows three live readings updated on every bar:
- **IV %** — the current ETHDVOL weekly reading with a heat emoji (🔥 above 60%, ❄️ below 40%, ⚡ in between)
- **HV14 %** — the Saturday-latched realized vol for the week
- **HV14/IV ratio** — the percentage of realized vol relative to implied. ✅ below 95% means RV is running below IV (options are pricing more than has been delivered). ⚠️ at or above 95% means RV is catching up to or exceeding IV — a higher-energy regime.
- **Daily change** — BTC price change from today's open in both % and dollar terms
The Saturday Anchor Line
The ⚓ Sat Open line marks the weekly anchor price. It is the midpoint of the weekly IV and HV14 bands. Price reclaiming or failing at this line is significant — it is the reference price that all weekly band math is built from.
Trend Channels
Two sets of dynamic trendlines auto-draw based on pivot structure — a shorter-period dashed pair and a longer-period solid pair. They update continuously as new pivots form. Green slope = bullish structure on that channel. Red slope = bearish. They reset on the 1st of each calendar month, giving enough bars to build meaningful structure across a full monthly cycle rather than resetting too frequently on the weekly.
---
Settings Walkthrough
Display Toggles
✅ Show Weekly Open Line | The ⚓ Sat Open midline
✅ Show Weekly Bands (IV + HV14) | Both white IV weekly and orange HV14 bands together
✅ Show Monthly Bands (IV + HV30) | Both white IV monthly and orange-red HV30 bands together
✅ Show HV7 Today (daily rotating) | The light yellow daily realized vol band — resets each day
✅ Show IV Today (daily rotating) | The faded white daily implied vol band — resets each day
The weekly and monthly band pairs are intentionally linked — IV and HV are most useful when compared against each other, so they toggle as a unit.
Label Proximity Gate ($)
When multiple bands converge near the same price level, the chart can become cluttered with overlapping labels. The Proximity Gate controls how close a daily band label can be to a weekly or monthly level before it is suppressed. The **line still draws** — only the text label is hidden.
**Default: $50.** At this setting, a daily HV7 or IV Today label will be hidden if it sits within $50 of any weekly or monthly band. Increase this value if you want a cleaner chart with fewer labels. Decrease it if you want to see all labels even when levels are close together.
**Practical guidance:**
💡 On wider perspectives toggle HV7/IV (daily) off and widen 'proximity label gate' to reduce screen clutter
💡 On narrow perspectives keep the daily looks with a tighter 'proximity label gate'
Trend Line Settings
Short and long pivot periods are adjustable independently. The defaults (10 and 16) are calibrated for the 30-minute timeframe. On the 1-hour chart, consider reducing both slightly. On 15-minute, increasing them gives more stable pivots. Because the trendlines reset monthly rather than weekly, they have sufficient bars to establish meaningful channel structure — particularly useful for identifying multi-week compression patterns and directional bias across the full monthly vol cycle.
🚨 General — The indicator is most powerful when used to identify when price is testing a band confluence — for example, when the weekly IV lower and monthly HV30 lower are within close range of each other. Those areas represent options-market-defined support zones where two independent vol calculations agree.
---
*Indicator is designed for ETHUSD. Requires access to DERIBIT:ETHDVOL data on TradingView. Works on intraday timeframes only — weekly and monthly band projections display for the current period.* インジケーター

VolEdge: 0DTE Vol ContextHi everyone! Serge is here! Your feedback is highly appreciated.
Consider two mornings where VIX sits at 18. On the first, VIX1D reads 14 — the options market is pricing a quiet session, roughly ±0.9% on SPX. An iron butterfly-centered at the open makes sense. On the second morning, VIX1D reads 22 — today is expected to move nearly 40% more than the 30-day baseline implies. The same iron butterfly could blow through its short strikes before lunch.
This indicator surfaces that difference before you put on a trade.
What it does
Pulls CBOE's VIX1D index (1-day implied volatility), compares it against VIX (30-day baseline), and produces four outputs:
1. Day type classification
The VIX1D/VIX ratio is the core signal. When the ratio is at or above 1.0, the market is pricing today as more volatile than a typical day this month. When it sits at or below 0.75, today is expected to be quieter than normal. Four buckets:
EXPANSION DAY — ratio at or above 1.0. Above-average move priced in. Directional debit spreads and long straddles are better positioned than pure theta plays.
EVENT DAY — ratio at or above 1.30. Something significant is priced in — Fed minutes, CPI, or an intraday shock. This is not the environment for short premium without substantial width and reduced size.
COMPRESSION DAY — ratio at or below 0.75. Quieter than normal. Iron butterflies, short strangles, and narrow credit spreads work best when the market expects to grind.
NORMAL DAY — ratio between thresholds. Standard 0DTE setups apply; use VIX9D for the short-term weekly context.
2. Expected SPX move in points and percent
VIX1D is annualized. Dividing by the square root of 252 converts it to a single-day 1 standard deviation move. On a day where VIX1D is 16, the expected move is roughly plus or minus 1.0% — about 53 SPX points at current levels. Approximately 68% of sessions close within this range. The indicator displays both the point and percentage values, and optionally draws the bands on your chart anchored to today's open.
3. Historical context for the ratio
Today's VIX1D/VIX ratio is percentile-ranked against the past 90 days (adjustable). If the ratio is in the top 10% of recent history, the indicator flags it. A ratio that looks elevated in absolute terms may be ordinary for the current regime; percentile ranking removes that ambiguity.
4. VIX9D as a bridge
VIX1D covers today. VIX covers the next 30 days. VIX9D sits between them and captures the short-term weekly risk window — useful context when today reads Normal but a known event lands later in the week.
How to use it
Check the panel before sizing any 0DTE position. The day type and strategy tip give you the framework; the expected move and ratio percentile give you the calibration.
On an Expansion Day, widen your strikes or reduce size. The market has already priced in a larger move — selling a narrow butterfly into that environment means your tent is too small for the storm that's priced in.
On a Compression Day, tighten your structures. Theta burns fastest in quiet sessions, and the options market is telling you it expects quiet. This is where iron butterflies and short strangles earn their keep.
On an Event Day, the default answer is to sit out or cut size significantly. If you do trade, treat it as a directional bet, not a theta play — the implied move is large enough that short premium needs substantial wing width to survive.
On a Normal Day, use the expected move bands as your tent anchor and check VIX9D to make sure nothing is brewing later in the week.
Inputs
Show expected move lines on chart — draws the plus/minus 1 standard deviation bands anchored to today's SPX open
Show data table — toggle the panel on or off
Table position — top right, top left, bottom right, or bottom left
Expansion threshold — the VIX1D/VIX ratio at which the day is classified as Expansion (default 1.00)
Event threshold — the ratio at which the day escalates to Event (default 1.30)
Compression threshold — the ratio at or below which the day is classified as Compression (default 0.75)
Alert VIX1D level — fires when VIX1D crosses above this absolute level
Lookback for percentile — how many trading days to use when ranking today's ratio (default 90)
Alerts
Three alert conditions are available. Set them once and let them run pre-market.
VIX1D crosses above your chosen threshold — useful as an absolute spike warning
VIX1D/VIX ratio enters the top 10% of recent history — fires when today's relative vol is a genuine outlier, regardless of the absolute VIX level
Day type changes — fires when the classification shifts, for example from Normal to Expansion intraday
Data sources
CBOE:VIX1D, CBOE:VIX, CBOE:VIX9D, SP:SPX. All fetched on the daily timeframe. The indicator works correctly on intraday charts — all vol data is anchored to the daily close regardless of chart resolution. インジケーター

インジケーター

Supply & Demand: Cumulative Volume Delta Flow [ChartPrime]🔶 OVERVIEW
The Supply & Demand: CVD Flow indicator is a high-performance structural analysis tool that merges classic price-action Supply and Demand (S&D) zones with real-time order flow data.
Unlike traditional S&D indicators that only show price boxes, this tool embeds a Cumulative Volume Delta (CVD) Wave directly inside every active zone. This allows traders to see not just where the market turned, but the intensity of the volume delta that has accumulated within that zone since its creation.
🔶 CORE CONCEPT — VOLUME DELTA WITHIN STRUCTURE
Supply and Demand zones represent areas where a significant imbalance between buyers and sellers occurred.
Demand Zones: Created when a bearish "base" candle is followed by a high-momentum bullish breakout.
Supply Zones: Created when a bullish "base" candle is followed by a high-momentum bearish breakout.
By integrating CVD, the indicator tracks the net buying vs. selling volume (Delta) that occurs as price lives within or returns to these zones. This provides a "live" look at whether a zone is being defended by big players or if interest is fading.
🔶 THE CVD FLOW WAVE (POLYLINE ENGINE)
The standout feature of this indicator is the CVD Polyline Wave drawn inside the boxes:
Visualizing Order Flow: The wave oscillates within the zone's boundaries based on cumulative volume delta.
Demand CVD (Cyan): A rising wave suggests aggressive market buying is supporting the demand zone.
Supply CVD (Orange): A falling wave suggests aggressive market selling is reinforcing the supply zone.
Real-time Updates: The wave and the numerical CVD value in the label update dynamically with every bar, providing a clear view of the "Volume Flow" inside the structure.
🔶 SMART DETECTION & MITIGATION
To maintain technical accuracy and chart clarity, the script employs several advanced management logic:
ATR-Based Momentum: Breakouts are validated using a Momentum Multiplier . A zone is only formed if the breakout candle is significantly larger than the recent Average True Range (ATR), ensuring only high-conviction moves are captured.
Overlap Protection: The script automatically checks for redundant zones. If a new zone forms over an existing one, it filters the overlap to keep the chart clean.
Dynamic Mitigation: A Demand Zone is deleted instantly if price closes below its bottom (failed demand). A Supply Zone is deleted instantly if price closes above its top (failed supply).
🔶 INDICATOR INPUTS
ATR Length & Momentum Multiplier: Fine-tune the sensitivity of zone detection. Higher multipliers filter for "Power" breakouts.
Max Active Zones: Limits the number of zones displayed to prevent performance lag and visual clutter.
Custom Colors: Full control over zone fills, borders, and the internal CVD wave colors.
Show Signals: Toggle the "△" and "▽" markers that appear at the moment of breakout.
🔶 HOW TO USE
Zone Validation: When price returns to a Demand zone, look at the CVD label. If the CVD is strongly positive and the wave is rising, it indicates that buyers are actively defending the level.
Absorption Detection: If price is sitting in a Demand zone but the CVD wave is making lower lows, it may indicate "absorption"—where sellers are exhausting the available buy orders, potentially leading to a zone failure.
Targeting: Use Supply zones as logical take-profit areas for longs, and Demand zones for shorts, while using the internal CVD flow to judge if price is likely to bounce or break through.
🔶 CONCLUSION
Supply & Demand: CVD Flow represents a new evolution in structural trading. By moving beyond simple price boxes and incorporating a high-fidelity Cumulative Volume Delta engine, it gives traders an "X-ray" view of the order flow dynamics driving supply and demand.
It is an essential tool for traders who want to combine the reliability of market structure with the precision of volume-based order flow analysis. インジケーター

VolEdge: VRP GaugeVOLEDGE: VRP GAUGE — Is option premium rich or thin right now?
Before you sell a single option, you should know the answer to one question: are options overpriced relative to what the market is actually doing?
The Variance Risk Premium answers this. It is the single most important macro-level number for anyone who sells options for income.
Also note that reversal from rich to kind of poorer premiums tends to show market reversals.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WHAT IT DOES
Displays the Variance Risk Premium: the spread between implied volatility (VIX) and realized volatility (30-day historical vol on the S&P 500).
VRP = VIX minus HV30
When VRP is large and positive, options are expensive relative to actual market movement. Premium sellers have a statistical edge — they are being paid more than the risk they are taking on.
When VRP is near zero or negative, options are fairly priced or cheap. Selling offers little edge or no edge at all. Buying vol may be the better play.
The indicator shows the VRP value, its percentile rank over the last 90 days (configurable), a visual gauge, the underlying components (VIX and HV30), the 5-day trend, and a plain-language strategy interpretation.
It also plots a color-coded VRP histogram in its own chart pane so you can see how premium richness has evolved over time.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WHY VRP MATTERS
Most retail options traders check IV Rank on individual stocks — "is AAPL's IV high relative to its own history?" That is a useful question, but it misses the bigger picture.
VRP answers the macro question: "Is it a good day to sell options at all?"
When VIX is 20 and SPX has been realizing 20% annualized vol, there is no premium to harvest. VRP is near zero. You are selling options at fair value and taking on risk for no statistical edge.
When VIX is 20 and SPX has been realizing 12% annualized vol, VRP is +8. Options are significantly overpriced. Every strangle, iron condor, and short put you sell has a built-in statistical edge because the market is pricing in more movement than is actually occurring.
This is the fundamental asymmetry that drives institutional premium selling. Implied volatility exceeds realized volatility roughly 85% of the time — that is the variance risk premium. But the size of that premium varies enormously. Selling when VRP is rich compounds returns. Selling when VRP is thin or negative erodes them.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
VRP CLASSIFICATION — FIVE LEVELS
RICH (VRP above 5, percentile above 75th):
Premium is meaningfully overpriced relative to realized vol. This is the sweet spot for premium sellers. Options are expensive, and the market is not moving as much as options pricing implies. Strangles, iron condors, short puts, and credit spreads all have favorable expected value. This is when you can be most aggressive with premium selling — within your normal risk management rules.
ABOVE AVERAGE (VRP above 5, percentile 50th–75th):
Premium is above its recent average but not at extremes. Selling conditions are favorable. Standard position sizing applies. You have an edge, but it is not as large as during RICH periods.
FAIR (VRP between 0 and 5, percentile 25th–75th):
Premium is roughly in line with realized vol. There is a small edge to selling, but it is modest. Be selective — only sell on stocks with individually elevated IV rank. Avoid aggressive sizing. This is the "be patient" zone.
THIN (VRP between 0 and 5, percentile below 25th):
Premium is below its recent average. The edge from selling is minimal. This is a good time to reduce premium selling activity, tighten existing positions, or wait for better conditions. If you do sell, stick to the highest-conviction setups only.
NEGATIVE (VRP below 0):
Options are cheap relative to realized vol. The market is moving more than options pricing implies. This is rare and typically occurs during fast-moving selloffs where realized vol spikes faster than VIX. Selling premium here is unfavorable — you are being paid less than the risk. Consider buying vol instead: long straddles, debit spreads, or VIX calls.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HOW TO USE IT — PRACTICAL WORKFLOW
Daily pre-market check:
Before entering any premium selling trade, glance at the VRP Gauge. If it reads RICH or ABOVE AVG, you have a green light to sell premium at normal or slightly increased size. If it reads FAIR, be selective. If it reads THIN or NEGATIVE, reduce activity or pivot to directional or long-vol strategies.
Combining with individual stock IV Rank:
The VRP Gauge tells you about the macro premium environment. Individual stock IV rank tells you about that specific stock. The best setup is: VRP RICH (macro edge) plus stock IV rank above 50th percentile (stock-level edge). Selling premium when both macro and stock-level conditions are favorable stacks the odds meaningfully in your favor.
Combining with the Vol Weather Report:
VRP RICH during a Normal or Low vol regime is the highest-confidence premium selling environment. VRP RICH during an Elevated or Crisis regime means premiums are rich but so is risk — size down accordingly.
Using the percentile reading:
The raw VRP number is useful, but the percentile tells you context. A VRP of +6 might be average in one market environment and exceptional in another. The percentile rank over the last 90 days (configurable) tells you whether today's VRP is historically rich or normal for recent conditions.
Using the 5-day trend:
VRP rising means the edge for sellers is improving — implied vol is expanding faster than realized vol, or realized vol is declining while VIX holds steady. VRP falling means the edge is shrinking. A falling VRP during a low-vol regime is a caution signal: realized vol may be catching up to implied vol, often before a volatility expansion.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WHAT IS ON THE DASHBOARD
Row 1 — VRP classification badge: RICH / ABOVE AVG / FAIR / THIN / NEGATIVE with color-coded background
Row 2 — VRP value: the headline number (e.g. +7.24) in large text
Row 3 — Visual gauge bar: fills from left to right as VRP increases, colored by classification
Row 4 — Percentile rank: where today's VRP sits relative to the last 90 days (configurable)
Row 5 — Implied vol: current VIX level
Row 6 — Realized vol: HV30 (or configurable lookback) calculated on SPX
Row 7 — 5-day trend: Rising / Stable / Falling, with the value from 5 days ago
Row 8 — Strategy context: plain-language interpretation of current VRP conditions
Chart pane: VRP histogram showing the daily VRP value over time. Green bars = rich, yellow = fair, red = negative. Reference lines at 0 (breakeven), +5 (rich threshold), and -2 (deeply negative).
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
THE CALCULATION
Realized volatility (HV30):
Standard deviation of daily log returns on the S&P 500 over the last 30 trading days, annualized by multiplying by the square root of 252.
HV = stdev(ln(close / close_previous), 30) * sqrt(252) * 100
Variance Risk Premium:
VRP = VIX - HV30
Percentile rank:
Counts what percentage of VRP values over the lookback period (default 90 days) were lower than today's reading. A reading of 82 means today's VRP is higher than 82% of the last 90 days.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SETTINGS
Realized Vol Lookback: number of days for HV calculation (default 30, range 10–60)
VRP Percentile Lookback: number of days for percentile ranking (default 90, range 30–252)
Show VRP Histogram: toggle the chart-pane histogram on or off
Show Visual Gauge Bar: toggle the gauge bar in the table on or off
Table position: choose where the panel appears
Text size: Small / Normal / Large
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ALERTS
VRP Rich — fires when VRP crosses above 5 and is in the top quartile. Premium selling conditions are strong.
VRP Thin — fires when VRP drops below 2. Selling edge is diminishing.
VRP Negative — fires when VRP crosses below zero. Options are cheap vs realized vol.
VRP 90th+ Percentile — fires when VRP is in the top 10% of its recent range. Exceptionally rich premium.
VRP Bottom 10th Percentile — fires when VRP is in the bottom 10% of its recent range. Exceptionally thin premium.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WHAT MAKES THIS DIFFERENT
Several TradingView scripts calculate historical volatility. A few compare VIX to HV. None of them:
— Present VRP with a percentile rank for historical context
— Classify VRP into actionable categories (Rich / Fair / Thin / Negative)
— Show the 5-day trend in the premium environment
— Provide a strategy context sentence for each classification
— Include a visual gauge and color-coded histogram for quick pattern recognition
The Variance Risk Premium is an institutional-grade signal used by professional options market makers and vol funds as a core input to their selling decisions. This indicator makes it accessible to any options trader with a TradingView account.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ACADEMIC BACKGROUND
The variance risk premium — the tendency of implied volatility to exceed realized volatility — is one of the most documented phenomena in options markets. Key findings:
Implied vol exceeds realized vol approximately 85% of the time across major equity indices. The average VRP on the S&P 500 has been roughly 3–5 percentage points over multi-decade samples, but varies widely from negative to 15+ during stress periods.
The VRP is compensation for bearing volatility risk. When markets are calm, investors overpay for downside protection (puts), which inflates VIX relative to what actually happens. Premium sellers harvest this overpayment.
However, the VRP inverts during fast crashes when realized vol spikes above implied vol. This is exactly when premium sellers take their largest losses. Monitoring VRP in real time — not just knowing it exists on average — is critical for avoiding the trap of selling into a thin or negative VRP environment.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WHAT THIS INDICATOR IS NOT
It is not a timing signal for individual trades. VRP tells you the macro premium environment, not which stock to sell or when to enter.
It is not a guarantee of profitability. VRP being RICH means the odds favor sellers on average, but individual trades can still lose. Risk management still applies.
It uses VIX as the implied vol proxy and HV30 on SPX as the realized vol proxy. These are standard institutional measures, but they are not perfect representations of the vol surface for every product or expiration. For individual stock premium selling, combine this macro VRP reading with the stock's own IV rank.
It is not financial advice. It is an analytical tool for your own decision-making.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
DISCLAIMER
This indicator is for educational and informational purposes only. It is not financial advice and should not be used as the sole basis for any trading decision. The variance risk premium is a well-documented statistical phenomenon, but past patterns do not guarantee future results. Options trading involves substantial risk of loss. Always do your own research and consider consulting a licensed financial advisor. インジケーター

VolEdge: Regime ClockVOLEDGE: REGIME CLOCK — How long can vol regime last?
Every premium seller has the same question during calm markets: "How much longer can low vol last?" Every trader caught in a VIX spike asks: "When does this end?"
This indicator gives you data-driven answers to both questions.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WHAT IT DOES
Counts consecutive trading days in the current volatility regime and compares that duration against historical benchmarks from 35+ years of VIX data (1990–2025).
The output:
"Day 47 of Low Vol. AGING phase. 72% of periods this long resolve within 10 trading days."
The duration meter shifts from green to yellow to orange to red as the regime exceeds its historical median, 75th percentile, and 90th percentile duration.
Four duration phases:
GREEN — YOUNG: below median duration, regime is fresh, no urgency
YELLOW — AGING: at or above median, regime is maturing, start monitoring
ORANGE — EXTENDED: above 75th percentile, elevated probability of transition
RED — EXTREME: above 90th percentile, historically rare, prepare for regime change
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WHY DURATION MATTERS
Volatility clusters. Low vol begets low vol — until it doesn't. This has been one of the most robust findings in financial research since Mandelbrot's 1963 observation that "large changes follow large changes."
GARCH models confirm that volatility persistence parameters for equities typically hit 0.99, meaning regimes are highly persistent. But they also mean-revert. The longer a regime has persisted, the more statistical weight shifts toward a transition.
Published research on VIX mean reversion (Harbourfront Technologies, 1990–2017) found that after a 6% VIX spike in a high-vol regime, there is approximately a 73% probability of reversion within 20 days. In low-vol regimes, VIX spike reversion probability drops to about 61%. IG Markets research identified a composite vol cycle of roughly 100 days build-up, a spike, then 100 days of normalization — an asymmetric pattern that traders intuitively sense but have no tool to track.
This indicator turns that research into a live countdown on your chart.
Historical duration benchmarks hardcoded from CBOE VIX daily close data:
Low Vol regime (VIX below 15):
Median duration: approximately 35 trading days
75th percentile: approximately 65 days
90th percentile: approximately 110 days
Normal regime (VIX 15–20):
Median: approximately 25 trading days
75th percentile: approximately 50 days
90th percentile: approximately 80 days
Elevated regime (VIX 20–30):
Median: approximately 15 trading days
75th percentile: approximately 30 days
90th percentile: approximately 55 days
Crisis regime (VIX above 30):
Median: approximately 8 trading days
75th percentile: approximately 15 days
90th percentile: approximately 25 days
Key insight: Crisis regimes are short and violent. Low vol regimes can stretch for months but become increasingly fragile the longer they persist.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HOW TO USE IT — BY TRADER TYPE
Premium sellers:
When the clock is GREEN (young regime), your current strategy is fine. No adjustments needed.
When it turns YELLOW (aging), start paying closer attention to VVIX and term structure for early transition signals. Consider tightening new positions slightly.
When it turns ORANGE (extended), reduce size on new positions. An extended low-vol regime means you have been collecting thin premiums for a while and the probability of a spike is growing. This is not the time to add aggressive short vol positions.
When it turns RED (extreme), you should be at minimum position size. The statistical case for a transition is strong. If you are short vol, this is the time to take profits, tighten stops, or hedge.
Swing and directional traders:
Extended low-vol regimes often precede sharp moves in either direction. When the clock turns orange or red during low vol, consider reducing leveraged positions or adding protective options.
Extended crisis regimes (rare — above 90th percentile) are historically some of the best mean-reversion buying opportunities for equities. But timing the exact bottom requires more signals than duration alone.
Vol traders:
Regime extensions above the 90th percentile are high-probability mean reversion setups. If low vol has persisted for 100+ days, long vol positions (VIX calls, long straddles, UVXY) have favorable asymmetry. If crisis has persisted for 20+ days, short vol positions have favorable asymmetry — but size conservatively because the tail risk in crisis is enormous.
Risk managers:
Use the duration percentile as a direct input to position sizing. A simple rule: reduce maximum position size by 10% for each phase beyond YOUNG. Normal size in YOUNG, 90% in AGING, 80% in EXTENDED, 70% in EXTREME.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WHAT IS ON THE DASHBOARD
Row 1 — Regime badge: current regime with color-coded background (same classification as the VolEdge Vol Weather Report)
Row 2 — Duration: "Day 47" in large text. This is the headline number.
Row 3 — Duration meter: a visual progress bar that fills as the regime ages, colored by phase
Row 4 — Phase label: YOUNG / AGING / EXTENDED / EXTREME with the median, 75th, and 90th percentile benchmarks for the current regime
Row 5 — Resolution probability: estimated percentage of historical regimes at this duration that resolved within 10 trading days
Row 6 — Key data: VIX level and VIX/VIX3M ratio (compact reference)
Row 7 — Context sentence: plain-language interpretation that adapts to the current phase
Row 8 — Regime history strip: last 3 regime periods with their durations, showing the recent pattern
Chart background gets a subtle orange or red tint when the duration enters EXTENDED or EXTREME phase.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HOW THE REGIME IS CLASSIFIED
This indicator uses the same weighted composite scoring as the VolEdge Vol Weather Report:
VIX spot level: 40% weight
VVIX (volatility of VIX): 30% weight
VIX/VIX3M ratio (term structure proxy): 30% weight
Composite score 0–25 = Low, 25–50 = Normal, 50–75 = Elevated, 75–100 = Crisis
If you use both the Vol Weather Report and the Regime Clock, they will always agree on the current regime because they use identical classification logic.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
RESOLUTION PROBABILITY — A NOTE ON METHODOLOGY
The "X% resolve within 10 days" probability is calculated from a simplified interpolation of historical VIX regime durations. It is directionally accurate — longer durations do correlate with higher transition probabilities — but the exact percentages are approximations, not precise statistical outputs.
The numbers are derived from published VIX mean reversion research and approximate survival curves for each regime. They should be used as context, not as precise predictions.
If you are a quantitative trader and want exact numbers, download the CBOE VIX daily close CSV and calculate your own survival distributions. I may update these benchmarks with more precise values in future versions.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SETTINGS
Table position: choose where the panel appears on your chart
Text size: Small / Normal / Large
Show regime history strip: toggle the historical regime sequence on or off
Show resolution probability: toggle the probability callout on or off
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ALERTS
Regime Change — fires when the regime transitions in any direction
Duration Hit Median — fires when the current regime reaches its historical median duration
Extended Regime (75th percentile) — fires when duration exceeds the 75th percentile for the current regime type
Extreme Extension (90th percentile) — fires when duration exceeds the 90th percentile
Entered Crisis — fires specifically when the market enters Crisis regime
Exited Crisis — fires when the market leaves Crisis regime
To set up: click the Alerts button on your chart, select this indicator, and choose the condition.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WHAT MAKES THIS DIFFERENT
There are over a dozen volatility regime classifiers on TradingView. Every one of them classifies the current state — high vol, low vol, compression, expansion. None of them measure how long that state has persisted or what duration implies about what comes next.
This is the only indicator on TradingView that:
— Counts consecutive days in each regime
— Compares current duration against 35 years of historical VIX data
— Classifies duration into phases (young, aging, extended, extreme)
— Provides a resolution probability estimate
— Tracks regime history so you can see the recent pattern
The concept is academically grounded but has never been productized as a live trading tool. "Day X of Low Vol" is a framing that is instantly intuitive and answers the question every premium seller asks during calm markets.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WHAT THIS INDICATOR IS NOT
It is not a timing signal. "Extended regime" does not mean "the regime ends tomorrow." Regimes can persist well beyond the 90th percentile — they just rarely do.
It is not a substitute for analyzing the specific catalyst environment. A low-vol regime that is extended during a period of Fed tightening uncertainty is different from one during a goldilocks macro environment.
It is not financial advice. It is an analytical framework that adds a dimension — time — to your volatility analysis.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PART OF THE VOLEDGE SUITE
This is indicator 2 of 9 in the VolEdge volatility toolkit.
Free indicators:
Vol Weather Report — multi-factor regime classification with strategy context
Regime Clock (this one) — duration tracking with historical benchmarks
VRP Gauge — is option premium rich or thin right now? (coming soon)
0DTE Vol Context — is today an expansion day or a theta-burn day? (coming soon)
VVIX Ratio Percentile — the most underused signal in vol trading (coming soon)
Selling Bias Compass — should you sell puts or calls today? (coming soon)
Paid (VolEdge Pro Suite):
Naked Seller Risk Score — per-ticker 0–100 safety score (coming soon)
Options Timing Dashboard — strategy recommendation for any stock (coming soon)
Earnings Vol Analyzer — IV crush prediction with historical data (coming soon)
Follow VolEdge to get notified when new indicators launch.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
DISCLAIMER
This indicator is for educational and informational purposes only. It is not financial advice and should not be used as the sole basis for any trading decision. Historical duration benchmarks are approximations derived from published research and may not perfectly reflect future regime behavior. Past patterns in volatility regimes do not guarantee future results. Options trading involves substantial risk of loss. Always do your own research and consider consulting a licensed financial advisor. インジケーター
