Skip to main content
AuctionFoundry
Menu

INDICATOR MANUAL

Historical volatility percentile indicatorVolatility Regime Classifier [AFD] · full manual · published to TradingView

Classify the chart symbol’s realized volatility by historical percentile, relative expansion, and acceleration—without implying direction or a forecast.

39 documented settingsPublished on TradingView · Aug 2, 2026

Start here

What the indicator does, the questions it can help answer, and its fresh-install defaults.

The indicator measures the chart symbol’s own realized volatility in a separate pane. It does not request options, implied-volatility, or external-symbol data. Parkinson, close-to-close, Garman–Klass, and ATR estimators offer different definitions of how much the recent bars moved.

The active short-window reading is ranked against the latest 400 readings of the same estimator. The current value is included and ties count as at-or-below. The reported QUIET, NORMAL, ELEVATED, or EXTREME tier applies fixed 25, 75, and 85 percentile boundaries with a one-point hysteresis band.

A separate absolute-size rule can call a bar EXTREME when the short window reaches an estimator-specific multiple of the long window, even before the percentile sample fills. Expansion, short-versus-baseline state, and acceleration remain distinct measurements; none supplies price direction or a trading instruction.

Fresh-install defaults8 documented defaults

Swipe or scroll horizontally to see every column.

Volatility Regime Classifier fresh-install defaults
AreaDefaultResult
Estimator and sensitivityParkinson · FastUses high-low range over 5, 15, and 30 bars; the percentile ranks the 5-bar reading.
Absolute EXTREME routeOn · 1.35× for ParkinsonCan classify EXTREME from short-versus-long size even while the 400-reading rank is warming up.
Session-gap handlingExclude onDrops intraday session-gap observations only for close-to-close and ATR; it is inert for the default Parkinson basis.
DashboardOn · Compact · Top right · SmallShows the tier, plain-language reading, short-versus-long comparison, and acceleration while the hover glossary carries the folded setup details.
Percentile lineAuto gradient · Signal · Line · width 2Draws the 0–100 percentile as a continuous styled line.
Pane contextFill on · tier zones on · thresholds onAdds a faint line fill, tier bands, and boundary lines without replacing the numeric states.
Price-chart markersEXTREME only · Bar column · Entry barMarks entry into EXTREME; QUIET, NORMAL, ELEVATED, and RISING start off.
Market context boxMiddle right · SmallPins a size-only summary to the price chart and states that it says nothing about direction.

How it works

How the indicator turns chart data into the states and drawings you see.

Four realized-volatility estimators

Close-to-close is the population standard deviation of log returns. Parkinson and Garman–Klass take the root mean of per-bar range-based variance terms. ATR is a plain mean of true range divided by each bar’s own close—not Wilder’s smoothing and therefore not the same as ta.atr().

Matched sensitivity windows

Fast uses 5/15/30 bars, Normal 10/30/60, and Slow 20/60/120. The long window stays six times the short window, and acceleration compares the short reading with its value one short window earlier.

Full-window percentile

The short-window reading is ranked only after 400 valid readings exist. Percentile equals the share of that buffer less than or equal to the current reading, including the current bar. A partial buffer remains undefined and is reported as warming up.

Tier, band, and absolute override

Raw percentile tiers begin at 25, 75, and 85. A one-point band resists marginal boundary reversals and reports when it holds a different raw tier. The optional absolute-size route bypasses that band at estimator-specific short/long multiples: 1.35 Parkinson, 2.00 close-to-close, 1.30 Garman–Klass, or 1.40 ATR.

Expansion and acceleration

Short versus long reports a ratio and classifies it as ABOVE BASELINE, BELOW BASELINE, or IN LINE with a 0.10 tolerance. Acceleration compares current short-window volatility with its earlier value and calls a move RISING or FALLING beyond 5%, otherwise STEADY.

Session-gap exclusion

On intraday charts, the first observation spanning a session boundary is dropped—not replaced with zero—for close-to-close and ATR. Parkinson and Garman–Klass use within-bar quantities, so the same setting does not alter them.

Pane, dashboard, and price-chart context

The styled percentile line, tier zones, dashboard, hover glossary, optional bar columns, episode boxes, and market context box restate the measured states. Color is never the sole carrier, and price-chart context explicitly remains size-only.

Output and state reference10 documented states

Swipe or scroll horizontally to see every column.

Volatility Regime Classifier outputs and states
Output or stateWhen it appearsMeaning
VOL PERCENTILE400 valid short-window readings0–100 rank of the current reading against the configured trailing sample.
QUIET / NORMAL / ELEVATED / EXTREMEReported tier after band or size overrideHistorical-volatility classification, not a direction or probability.
EXTREME BY SIZEShort/long ratio reaches estimator thresholdAbsolute-size route that can operate before the percentile rank is ready.
SHORT VS LONGUsable short and long windowsExpansion ratio and percentage gap between the two realized-volatility estimates.
ABOVE / BELOW BASELINE / IN LINEShort/long comparisonTolerance-based classification of the same ratio.
RISING / FALLING / STEADYShort-window change versus one short window agoAcceleration state after the 5% deadband.
WARMING UPPercentile buffer below 400 or outputs incompleteShows the loaded sample instead of ranking a partial window.
NO MOVEMENTLong-window realized volatility equals zeroSuppresses the misleading all-zero percentile tier.
PRICE-CHART MARKEREnabled tier or RISING stateEntry column, continuing columns, episode box, or both using the tier palette.
SCREENER / DATA WINDOWPublished numeric plotsTen primary series plus band and override diagnostics remain available as numbers.

Settings

The 39 rows below match the published Pine input surface across Basis, Display, Tier colours, Percentile line, Pane shading, and Price-chart markers. The lookback, thresholds, hysteresis, comparison tolerance, and acceleration deadband are fixed source constants and disclosed by the dashboard rather than exposed as inputs.

Basis4 inputs

Swipe or scroll horizontally to see every column.

Basis settings and defaults
SettingControlDefaultChoices, limits & availability
Volatility estimatorestimatorInputChoice / textParkinson (high-low)Parkinson (high-low) · Close-to-close · Garman-Klass (OHLC) · ATR (average true range)
SensitivitysensitivityInputChoice / textFastFast · Normal · Slow
Also call EXTREME by absolute sizeextremeBySizeInputToggleOn—
Exclude the session gapexcludeSessionGapInputToggleOn—
Display6 inputs

Swipe or scroll horizontally to see every column.

Display settings and defaults
SettingControlDefaultChoices, limits & availability
Show dashboardshowDashboardInputToggleOn—
Compact dashboarddashCompactInputToggleOnConditional
Dashboard positiondashPositionInputChoice / textTop rightTop left · Top center · Top right · Bottom left · Bottom center · Bottom right | Conditional
Dashboard text sizedashTextSizeInputChoice / textSmallTiny · Small · Normal · Large | Conditional
Colour the dashboard by regimecolorDashboardInputToggleOnConditional
Show the hover glossary markershowInfoMarkerInputToggleOn—
Tier colours4 inputs

Swipe or scroll horizontally to see every column.

Tier colours settings and defaults
SettingControlDefaultChoices, limits & availability
QUIETtierQuietColorInputColor#26C6DA—
NORMALtierNormalColorInputColor#66BB6A—
ELEVATEDtierElevatedColorInputColor#FFA726—
EXTREMEtierExtremeColorInputColor#EF5350—
Line7 inputs

Swipe or scroll horizontally to see every column.

Line settings and defaults
SettingControlDefaultChoices, limits & availability
Line colour modelineColorModeInputChoice / textAuto gradientAuto gradient · Tier colour · Fixed colour
Gradient presetlineGradientInputChoice / textSignalSignal · Ocean · Ember · Mono · Custom
Custom gradient - low endgradientLowInputColor#00B0FF—
Custom gradient - high endgradientHighInputColor#FF1744—
Fixed line colourlineColorInputColor#2962FF—
Line stylelineStyleInputChoice / textLineLine · Stepline · Histogram · Circles
Line widthlineWidthInputWhole number2Min 1 · Max 5
Fill and zones5 inputs

Swipe or scroll horizontally to see every column.

Fill and zones settings and defaults
SettingControlDefaultChoices, limits & availability
Fill under the lineshowFillInputToggleOn—
Fill transparencyfillOpacityInputWhole number88Min 0 · Max 100 | Conditional
Shade the tier zonesshowZonesInputToggleOn—
Zone transparencyzoneOpacityInputWhole number92Min 0 · Max 100 | Conditional
Draw the threshold linesshowBoundsInputToggleOn—
Price-chart markers13 inputs

Swipe or scroll horizontally to see every column.

Price-chart markers settings and defaults
SettingControlDefaultChoices, limits & availability
Mark QUIETmarkQuietInputToggleOff—
Mark NORMALmarkNormalInputToggleOff—
Mark ELEVATEDmarkElevatedInputToggleOff—
Mark EXTREMEmarkExtremeInputToggleOn—
Mark RISINGmarkRisingInputToggleOff—
Marker stylemarkStyleInputChoice / textBar columnBar column · Price box · Both
Marker modemarkModeInputChoice / textEntry bar onlyEntry bar only · Every bar in the tier
Bar column transparencymarkOpacityInputWhole number82Min 0 · Max 100
Price box transparencyboxOpacityInputWhole number90Min 0 · Max 100
Outline the price boxboxBorderInputToggleOn—
Also mark in this panemarkPaneInputToggleOn—
Market context boxcontextBoxInputChoice / textMiddle rightOff · Top right · Middle right
Market context text sizecontextSizeInputChoice / textSmallTiny · Small · Normal · Large | Conditional

Alerts and limitations

What can notify you, what can change the output, and what the indicator cannot establish.

3 fixed alert conditions

Regime tier changed

The reported realized-volatility tier changed on a confirmed bar.

Short vs baseline changed

The short-window classification against the long-window baseline changed on a confirmed bar.

Entered the EXTREME tier

The reported tier entered EXTREME on a confirmed bar.

Limits to keep visible

  • The percentile is self-normalizing historical context. A high rank does not estimate direction, probability, future volatility, or trade performance.
  • The default Fast percentile needs roughly 404 chart bars before its 400-reading rank is complete. The absolute-size route may report EXTREME earlier and states that reason separately.
  • The active realtime bar can change until it closes. Confirmed-bar alert logic does not establish a blanket non-repainting claim for every visual output.
  • Parkinson and Garman–Klass ignore the cross-session gap by construction; Exclude the session gap affects only close-to-close and ATR on intraday charts.
  • ATR mode is a simple mean of true-range fractions, not Wilder’s ATR. Comparing it with ta.atr() at the same length will produce different values.
  • The four estimators measure different quantities and use different absolute EXTREME thresholds. Their raw values should not be compared as though they share one scale.
  • Changing symbol, timeframe, estimator, sensitivity, or available chart history changes the population being ranked and can change every downstream state.
  • Price-chart markers and the context box describe bars already measured. They are not entries, exits, stops, targets, or instructions.

Troubleshooting

Start with what you see on the chart. Each answer explains the likely cause and the first setting, timeframe, or data condition to check.

Why does the dashboard say WARMING UP?

The indicator does not yet have the 400 complete readings needed for its percentile rank, or one of the comparison windows is still incomplete. Load more chart history or wait for more bars; the script will not rank a partial sample.

Why is the tier EXTREME when the percentile is blank or only moderate?

The absolute-size override is active. The short-window volatility reached the estimator’s size threshold relative to the long window, so the script can call EXTREME without a high percentile. Turn off Also call EXTREME by absolute size if you want tiers based only on percentile.

Why did Exclude the session gap change nothing?

That setting only changes Close-to-close and ATR on intraday session boundaries. Parkinson and Garman–Klass use movement inside each bar, so session gaps are not part of those estimates. Switch estimators if you want to see the setting take effect.

Why does ATR mode disagree with another ATR indicator?

This mode averages true range as a fraction of each bar’s close using a simple N-bar mean. It is not Wilder’s ATR and is scaled differently, so the readings should not match a standard ta.atr() plot.

Why didn’t the tier change exactly at 75 or 85?

The reported tier uses a one-point buffer around each threshold to prevent rapid flipping. The raw tier can cross first while the reported tier holds its prior state. Check the dashboard’s raw-tier note when a boundary looks delayed.

Why can’t I see the estimator or windows in Compact mode?

Compact mode hides that setup detail from the main table. Keep the hover glossary visible for a quick reminder, or turn Compact dashboard off to see the estimator and both windows directly.

Why is an existing alert still using my old settings?

TradingView saved the symbol, timeframe, and indicator inputs when the alert was created. Delete the alert and create a new one after changing the chart context or settings.

Risk disclosure

Auction Foundry LLC provides educational charting tools and general market commentary only. This is not investment, financial, legal or tax advice, and nothing here is a recommendation, offer or solicitation to buy or sell any instrument. Auction Foundry is not registered with the SEC as an investment adviser, nor with the CFTC as a commodity trading advisor, and is not an NFA member.

Trading involves risk, including loss of principal. Losses can exceed a modeled stop and, for leveraged or margin products, can exceed the amount initially deposited or invested. Indicators can be wrong, delayed or unsuitable for your circumstances, and past or hypothetical results do not predict future results. Free access does not change any of this. Consider your objectives and consult a licensed professional before acting. Using these tools does not create an advisory or brokerage relationship.

Auction Foundry LLC is an independent publisher and is not affiliated with, endorsed by, or sponsored by TradingView, Inc. “TradingView” is a trademark of TradingView, Inc., used here only to identify the platform our scripts are published on. Scripts are published to TradingView as a community author on the same terms as any other author.

Read the full Risk Disclosure for the dated, versioned document this summarizes.