OHLC4 Structure Ribbon [RMA] OHLC4 Structure Ribbon is a multi-horizon market-structure indicator built from a fixed stack of Wilder Running Moving Averages applied to OHLC4. Rather than treating the ribbon as a collection of independent moving averages, the indicator analyzes the shape, ordering, compression, expansion, and directional geometry of the entire stack as one structural system.
The primary ribbon uses six RMA horizons: 5, 8, 13, 20, 34, and 50. A separate 75 / 110 pair provides a slower structural reference without influencing the primary ribbon's regime engine.
The objective is not simply to show whether a fast average is above or below a slow average. The ribbon is designed to answer a broader question: how organized is price structure across multiple horizons, how strong is that structure relative to current volatility, and is that structure being maintained, disrupted, or transferred to the opposite side?
Why OHLC4 and RMA?
Each average is calculated from OHLC4, giving equal representation to the open, high, low, and close of each candle rather than using the closing price alone. The smoothing method is Wilder's RMA, which reacts differently from a conventional EMA. RMA places more persistence into the series, allowing the ribbon to develop a slower, more structural character while still preserving enough responsiveness for shorter-timeframe use.
Because the six averages span several horizons, the resulting ribbon provides a continuous view from the fast edge of the market through the deeper intermediate structure.
➖REG BODY➖
At the center of the indicator is a measurement called REG BODY. Instead of measuring only the distance between two selected averages, REG BODY examines all six RMA levels together. Each RMA is assigned its theoretical Wilder lag, and a linear regression is calculated across those lag coordinates. That regression estimates the directional slope of the entire stack. The slope is then projected across the complete lag range to produce one signed structural spread.
A positive REG BODY means the faster horizons are structurally positioned above the slower horizons. A negative REG BODY means the opposite. The larger the absolute value, the more strongly the full ribbon is separating in that direction. This is important because two ribbons can have the same fast-to-slow distance while having very different internal structure. One may be cleanly ordered from front to back, while another may be folded, crossed, or compressed internally. REG BODY is intended to evaluate the complete structure rather than relying on a single moving-average spread.
➖Volatility normalization➖
Raw ribbon separation naturally varies by instrument, price level, and timeframe. To make the structural measurement more comparable, REG BODY is normalized by ATR14. This expresses ribbon expansion in volatility-relative terms rather than raw points. For example, a ten-point separation means something very different on an instrument whose ATR is 3 than on one whose ATR is 100. ATR normalization gives the engine a common structural language across those environments.
➖Peak-Persistence ATR-Drag Guard➖
Strong trends can occasionally create an unusual problem: volatility expands so rapidly that ATR rises faster than the ribbon itself. When that happens, a simple REG BODY / ATR calculation can make a structurally healthy trend appear to weaken even while the ribbon remains strongly ordered and continues expanding. The indicator addresses this with a Soft Peak-Persistence ATR-Drag Guard. The guard evaluates ribbon ordering, REG BODY persistence, directional continuity, and ATR expansion together. When the underlying structure remains intact, it can temporarily preserve part of the previously established normalized strength rather than allowing an abrupt ATR expansion to collapse the reading prematurely. The effect is intentionally limited. It decays automatically and releases when structure deteriorates, the ribbon body cools, directional ownership changes, or the qualifying conditions are no longer present. Its purpose is not to manufacture momentum. It is simply to reduce false structural decay caused by volatility expanding faster than an otherwise intact ribbon.
➖Wide Semantic and the CORE scale➖
After volatility normalization and the persistence guard, structural strength is translated through a non-linear mapping called Wide Semantic. Wide Semantic converts the normalized ribbon measurement into a bounded -100 to +100 CORE scale. The center of the scale provides greater resolution for ordinary market structure, while increasingly large structural expansions require progressively greater ATR-normalized separation to approach the extremes.
The principal absolute-value anchors are:
0.70 ATR → 34
1.25 ATR → 55
2.50 ATR → 65
4.00 ATR → 75
7.00 ATR → 89
12.0 ATR → 95
20.0 ATR → 100
Positive CORE values represent bullish structural direction, while negative values represent bearish direction. A CORE reading is not a probability, price target, or percentage. It is a volatility-normalized measurement of multi-horizon structural strength. This distinction becomes especially useful near the outer portions of the scale. A move from 89 to 95 represents a much larger increase in underlying structural expansion than a move from 34 to 55.
➖Global Regime architecture➖
The ribbon uses CORE together with the physical ordering of the RMA stack to maintain a persistent Global Regime. A fully ordered bullish stack can establish Bull Rise, while a fully reversed stack can establish Bear Fall. When an established bullish structure begins to lose internal ordering, the system can transition into Bull Resistance rather than immediately declaring the market bearish. Likewise, disrupted bearish structure can remain in Bear Support while the prior bearish lineage is still structurally relevant. This distinction allows the indicator to separate trend continuation, compression, transition, and actual directional transfer. Directional ownership uses fixed structural rails. Same-side full-stack re-entry occurs around ±34, while initial or opposite-side directional transfer requires approximately ±55. Larger structural expansions can progress into Extreme and Exceptional regimes around ±89 and ±95, with separate release thresholds to reduce unnecessary state flipping. The result is deliberately different from coloring a ribbon solely according to whether one moving average crossed another.
➖Contiguous ribbon transitions➖
The visible ribbon contains five adjacent bands:
5/8 → 8/13 → 13/20 → 20/34 → 34/50
Transition ownership begins at the fast 5/8 edge and progresses outward. A deeper portion of the ribbon is not allowed to visually transfer direction until the faster pairs in front of it have aligned first. This creates a contiguous transition rather than allowing isolated sections of the ribbon to change color independently. During a bullish rollover, for example, the fast edge can begin transferring into resistance while slower portions of the ribbon still retain bullish ownership. The reverse occurs during recovery from bearish structure. This makes the ribbon itself a visual representation of how far a structural transition has propagated through the stack.
➖Ribbon ORDER➖
The context table also displays Ribbon ORDER %. ORDER measures how efficiently the six averages form one monotonic path from OHLC5 through OHLC50. A perfectly ordered ribbon approaches 100%, while internal folding and crossover geometry progressively reduce the reading. The accompanying Bull/Bear x/5 value shows how many adjacent pairs have aligned contiguously from the fast edge. For example, Bull 3/5 means the first three adjacent relationships have transferred bullishly while the deeper structure has not yet completed the transition. ORDER describes the ribbon's current geometry. It does not override Global Regime ownership.
➖Developing higher-timeframe CORE➖
The table includes both the current chart-timeframe CORE and a Developing HTF CORE calculated on the automatically selected next higher timeframe. The higher-timeframe value is not created by resampling the chart-timeframe result. The complete six-RMA structural engine is calculated natively in the higher-timeframe context using the same REG BODY, ATR normalization, persistence guard, and Wide Semantic mapping. Because this is a developing higher-timeframe reading, it updates while the higher-timeframe candle is still forming. It can therefore change until that candle closes. This provides a direct comparison between current-timeframe structure and the developing structural condition immediately above it.
➖75 / 110 long structure➖
OHLC75 and OHLC110 form a separate slower structural pair. They do not participate in REG BODY, CORE, or Global Regime calculations. Their purpose is to provide a longer structural reference alongside the primary six-average ribbon. When 75 > 110, the long structure is displayed in orange. When 110 > 75, it is displayed in gray. The table also reports the current relationship directly—for example, 75 > 110—along with the number of bars since the most recent 75/110 crossover.
➖Price-relative OHLC labels➖
Each RMA level can be displayed in a right-side label containing the current level and its distance from price. The labels also maintain a persistent price-relative marker:
$⤴ means price most recently moved above that OHLC level.
$⤵ means price most recently moved below that OHLC level.
The marker persists until the opposite side takes ownership. This makes it possible to scan the right-side stack and quickly see where current price is positioned relative to multiple structural horizons. The short-horizon labels visually inherit the active ribbon gradient, while the 75/110 labels use their separate long-structure color owner.
➖Crossover events➖
Five crossover families are available. The 5/8 event represents the fast ribbon edge. 8/20 provides an optional early-intermediate structural crossover, while 13/34 represents a deeper middle-structure transition. 20/50 tracks slower primary-ribbon equilibrium, and 75/110 represents the separate long structural pair. Bullish crossover labels appear below the candle and bearish labels appear above it. Historical events preserve the exact Global Regime color that was active when the crossover occurred, allowing older events to retain their original structural context rather than being recolored by the current regime.
➖PlotCandles➖
Optional PlotCandles can color price directly from the active Global Regime while maintaining independent body, wick, and border transparency.
➖How I use the ribbon➖
The indicator is most useful when the components are read together rather than treating any one color or crossover as a standalone signal.
A clean, high-ORDER ribbon with expanding CORE reflects a very different structural environment from a similarly colored ribbon whose ORDER is deteriorating and whose fast-edge transition has already begun. When CORE is higher than its HTF value, tha'ts also a bullish sign (and vice versa). Likewise, disagreement between chart CORE and Developing HTF CORE can provide useful context. Strong local structure may be developing inside a weaker higher-timeframe environment, or a lower-timeframe transition may be occurring while the next timeframe remains firmly established.
The 75/110 pair provides another layer of context without contaminating the primary regime calculation. For that reason, I view the indicator primarily as a market-structure and context tool, rather than a mechanical entry/exit system.
➖Final note➖
Moving averages are inherently derived from historical price, and no ribbon can predict future market direction. CORE, ORDER, Global Regime states, crossover events, and Developing HTF readings should be interpreted as descriptions of current and developing structure—not guarantees of continuation or reversal.
The value of the indicator is in combining multi-horizon OHLC4 structure, volatility-normalized strength, persistent regime ownership, and visually progressive ribbon transitions into one coherent framework.
➖A few chart examples➖
Indicador

RSI Extreme Value Labels [DotGain]RSI Extreme Value Labels
A standard RSI that writes the actual number on the chart whenever the indicator turns at an extreme. Instead of eyeballing how deep a spike went, you see it: 82, 74, 19.
How it works
The script looks for confirmed pivot highs and lows in the RSI line. A pivot high only gets a label if it sits at or above the overbought level; a pivot low only gets one if it sits at or below the oversold level. Everything in between stays clean.
Because pivots need bars on both sides to be confirmed, labels appear a few bars after the actual turn. That is the trade-off for not repainting — a label, once printed, stays where it is.
Settings
RSI length, source and line color
Overbought / oversold thresholds, plus an optional shaded zone
Pivot bars left and right — larger values mean fewer but more significant labels
Decimal places, vertical offset, text color and size
Notes
Useful for comparing the strength of successive extremes, spotting divergences at a glance, and reviewing past reactions without hovering over the line. Works on any symbol and timeframe.
Have fun :)
Disclaimer
This RSI Extreme Value Labels indicator is provided for informational and educational purposes only. It does not, and should not be construed as, financial, investment, or trading advice.
This indicator is an independent implementation of a standard Relative Strength Index combined with a pivot-based labeling routine, and is not affiliated with, or endorsed by, any third-party trading systems, strategies, protocols, or trademarked methodologies. The labels, overbought and oversold zones, and RSI values displayed by this indicator are generated by a predefined set of algorithmic rules based on historical price data and user-defined input settings. They do not constitute a direct recommendation to buy, sell, or hold any financial instrument or digital asset.
All trading and investing in financial markets involves a substantial risk of loss. You may lose part or all of your invested capital. Past performance does not guarantee future results. This indicator marks momentum extremes only after the required confirmation bars have closed, and may therefore produce lagging, incomplete, or misleading signals. An extreme RSI reading can persist for a long time in a strong trend and does not by itself indicate a reversal. Market behavior is influenced by many external factors and can deviate significantly from historical patterns or expectations.
The creator DotGain assumes no responsibility or liability for any financial losses, damages, or decisions made based on the use of this indicator or the information it provides. You are solely responsible for your own trading and investment decisions. Always conduct your own research (DYOR), use proper risk management, validate insights with additional tools or analysis, and consider your personal financial situation and risk tolerance before making any financial decision. Indicador

All-In-One Trader Toolkit# All-In-One Trader Toolkit (AIO Toolkit)
A comprehensive overlay indicator that combines the key tools intraday futures traders need into a single script. Designed for ES, NQ, and other futures instruments with all sessions anchored to New York (Eastern) time.
## Features
**Supply & Demand Zones**
Auto-detected zones scored 1–10 based on impulse strength vs. basing range. Zones auto-extend until price closes through them (or use a fixed bar width). Filter by minimum score to show only the strongest levels. Fully customizable colors.
**Previous Day High/Low (PDH/PDL)**
Automatically plots the prior trading day's high and low as dashed reference lines. Configurable number of days to keep on chart.
**Pre-Market High/Low (PMH/PML)**
Captures the high and low of the overnight/globex session. Default session is 6:00 PM – 9:30 AM ET (full globex), adjustable to any window (e.g. 4:00 AM – 9:30 AM for London open only).
**15-Minute Opening Range Breakout (ORB)**
Plots the 9:30–9:45 AM ET opening range high/low. Generates BUY/SELL signals on breakout retests. Includes three configurable take-profit levels with optional symbol-specific points for NQ and ES.
**Daily VWAP + ±1 Standard Deviation Bands**
Manually calculated VWAP with upper and lower bands, resetting each trading day.
**NY-Open Anchored VWAP + ±1 Standard Deviation Bands**
Session-only VWAP anchored to the 9:30 AM NY open. Plots only during the 9:30–4:00 PM session with no carryover lines between sessions.
**Initial Balance (IB) + Extensions**
Captures the first 60 minutes of the NY session (9:30–10:30 AM ET). Plots IB High/Low with 50% and 100% extensions in both directions.
**News / Event Markers**
Up to 3 configurable event markers with custom labels and timestamps. Draws vertical dashed lines at the specified times.
**Dual EMA**
Two independent EMAs with adjustable length, color, and line width. Defaults: 8 EMA and 200 EMA.
## Display
- All labels are pinned to the right edge of the chart for easy identification
- Global label size control (tiny / small / normal / large / huge) applies to all elements
- Every feature can be toggled on/off independently
- All colors are fully customizable through the settings panel
## Alerts
Built-in alert conditions for ORB breakouts (up/down) and retest buy/sell signals.
## Best Used On
Intraday futures charts (1-min, 2-min, 5-min) for instruments like NQ, ES, YM, RTY. Works on any symbol but session times are optimized for US equity futures. Indicador

DivergenceLineLabelOutput_UtilitiesDivergenceLineLabelOutput_Utilities is a shared Pine v6 output library for scripts that already have their own oscillator, pivot, structure, or divergence logic but want a reusable divergence-rendering layer.
It centralizes the parts of the workflow that tend to get rewritten across oscillator scripts:
• HH / LH / HL / LL / EQ structure resolution
• regular / hidden divergence state checks
• same-structure context state checks
• divergence and context color routing
• standardized divergence/context label text
• price-pane and oscillator-pane line helpers
• price-pane and oscillator-pane label helpers
• confirmed-object slot visibility helpers
• live-preview line and label helpers
• native-pane and price-pane pivot context box helpers
On the example chart, the confirmed divergence lines, live preview lines, divergence labels, context labels, and pivot context boxes are all materially driven by this library.
This library is intentionally focused on output and object management. It does not calculate RSI, MACD, VFI, volume flow, pressure, or any other oscillator. It does not confirm pivots or decide which pivots are valid. Calling scripts remain responsible for their own oscillator engine, pivot engine, comparison logic, colors, visibility modes, and signal interpretation.
How to use
Import the library near the top of your script in global scope, alongside any other imports, before you start calling its helpers.
Typical placement:
//@version=6
indicator(...) or strategy(...)
import MYNAMEISBRANDON/DivergenceLineOutput_Utilities/1 as DivUtils
Replace /1 with the latest published version if a newer version is available.
This library expects the calling script to already know the price pivot, oscillator pivot, prior pivot reference, structure state, and output settings it wants to use. The library then handles the reusable line, label, live-preview, slot-budget, and box output layer.
➖Structure + Divergence State Helpers➖
These helpers convert pivot comparisons into structure tags and divergence/context states.
divStructure(curr, prev, isHigh)
Resolves HH, LH, HL, LL, or EQ from a current pivot and previous pivot.
Parameters:
curr (float): Current pivot value
prev (float): Previous pivot value
isHigh (bool): True for high-side comparison, false for low-side comparison
Returns:
Structure string
divState(priceStruct, oscStruct)
Resolves regular and hidden divergence states from price and oscillator structure tags.
Returns:
regularBear, regularBull, hiddenBear, hiddenBull, anyDivergence
divContextState(priceStruct, oscStruct)
Resolves same-structure context states from price and oscillator structure tags.
Returns:
highContinuation, highFade, lowContinuation, lowLift, anyContext
divColor(priceStruct, oscStruct, regularBearColor, regularBullColor, hiddenBearColor, hiddenBullColor, highContinuationColor, lowContinuationColor, highFadeColor, lowLiftColor, fallbackColor)
Routes a divergence or context pair to the matching caller-supplied color.
Returns:
Resolved color
➖Style + Label Helpers➖
These helpers keep divergence output styling consistent across scripts.
divLineStyle(styleIn)
Converts user-facing line-style text into Pine line-style enums.
Parameters:
styleIn (simple string): Solid, Dashed, or Dotted
Returns:
Pine line style
divLabelSize(sizeIn)
Converts user-facing label-size text into Pine label-size enums.
Parameters:
sizeIn (simple string): Tiny, Small, Normal, Large, or Huge
Returns:
Pine label size
divContrastText(bg)
Chooses black or white text based on background brightness.
Parameters:
bg (color): Background color
Returns:
Readable contrast text color
divLabelText(divType, divSide, priceStruct, oscStruct, formatMode)
Builds standardized divergence label text.
Parameters:
divType (simple string): Usually Reg or Hid
divSide (simple string): Usually Bull or Bear
priceStruct (string): Price structure tag
oscStruct (string): Oscillator structure tag
formatMode (simple string): Full, No Prefix, or Type Only
Returns:
Formatted label text
➖Confirmed Line Helpers➖
These helpers create and manage confirmed divergence or context lines.
clearLines(lines, colors)
Deletes all lines in an array and clears the matching color array.
pushOscLine(lines, colors, show, active, x1, y1, x2, y2, lineColor, lineTransp, lineWidth, lineStyle, maxLines)
Pushes a confirmed oscillator-pane line into line/color arrays.
pushPriceLine(lines, colors, show, active, x1, y1, x2, y2, lineColor, lineTransp, lineWidth, lineStyle, maxLines)
Pushes a confirmed price-pane line into line/color arrays using force_overlay=true.
Note:
Price helpers draw on the main chart from overlay=false oscillator scripts. Oscillator helpers draw in the script’s native pane.
➖Confirmed Label Helpers➖
These helpers create and manage confirmed divergence or context labels.
clearLabels(labels, colors)
Deletes all labels in an array and clears the matching color array.
pushOscLabel(labels, colors, show, active, xIndex, y, labelText, styleText, lineColor, labelTextOnly, labelBgTransp, labelSize, maxLabels)
Pushes a confirmed oscillator-pane label into label/color arrays.
pushPriceLabel(labels, colors, show, active, xTime, labelText, ylocText, styleText, lineColor, labelTextOnly, labelBgTransp, labelSize, maxLabels)
Pushes a confirmed price-pane label into label/color arrays using force_overlay=true.
Note:
For price-pane labels, xTime uses bar time and ylocText controls whether the label appears above or below the price bar.
➖Confirmed Slot Visibility Helpers➖
These helpers allow scripts to keep confirmed lines and labels stored while only showing the most recent visible slots.
applyLineSlots(lines, colors, visibleSlots)
Applies a visible slot budget to confirmed line arrays without deleting older objects.
applyLabelSlots(labels, colors, visibleSlots, labelTextOnly, labelBgTransp)
Applies a visible slot budget to confirmed label arrays without deleting older objects.
Example:
• Max Regular Lines = 1
- Live regular active = live regular only
- No live regular = latest confirmed regular only
• Max Regular Lines = 2
- Live regular active = live regular + latest confirmed regular
- No live regular = latest two confirmed regular lines
➖Live Preview Line Helpers➖
These helpers create, update, or delete live divergence preview lines.
syncLiveOscLine(ln, show, x1, y1, x2, y2, lineColor, lineWidth, lineStyle)
Creates, updates, or deletes a live oscillator-pane line.
syncLivePriceLine(ln, show, x1, y1, x2, y2, lineColor, lineWidth, lineStyle)
Creates, updates, or deletes a live price-pane line using force_overlay=true.
➖Live Preview Label Helpers➖
These helpers create, update, or delete live divergence preview labels.
syncLiveOscLabel(lbl, show, xIndex, y, labelText, styleText, lineColor, labelTextOnly, labelBgTransp, labelSize)
Creates, updates, or deletes a live oscillator-pane label.
syncLivePriceLabel(lbl, show, xTime, labelText, ylocText, styleText, lineColor, labelTextOnly, labelBgTransp, labelSize)
Creates, updates, or deletes a live price-pane label using force_overlay=true.
➖Pivot Context Box Helpers➖
These helpers provide lightweight box utilities for scripts that want to frame confirmed pivot zones.
divPivotBoxBounds(pivotValue, innerPct)
Resolves a thin box around a pivot value using an inner percentage.
Returns:
top, bottom, ok
syncNativeBox(bx, show, left, right, top, bottom, fillColor, borderColor, borderStyle, borderWidth)
Creates, updates, or deletes a native-pane pivot context box.
syncPriceBox(bx, show, left, right, top, bottom, fillColor, borderColor, borderStyle, borderWidth)
Creates, updates, or deletes a price-pane pivot context box using force_overlay=true.
➖Divergence Model➖
Regular Bearish Divergence:
Price makes HH while oscillator makes LH.
Regular Bullish Divergence:
Price makes LL while oscillator makes HL.
Hidden Bearish Divergence:
Price makes LH while oscillator makes HH.
Hidden Bullish Divergence:
Price makes HL while oscillator makes LL.
➖Structure Context Model➖
High-side continuation:
Price makes HH while oscillator also makes HH.
High-side fading:
Price makes LH while oscillator also makes LH.
Low-side continuation:
Price makes LL while oscillator also makes LL.
Low-side lifting:
Price makes HL while oscillator also makes HL.
Structure context is not divergence. It shows same-structure agreement between price and oscillator.
➖Important Notes➖
This library is an output utility layer only.
It does not:
• calculate an oscillator
• confirm pivots
• choose pivot anchors
• decide whether a divergence is valid
• decide trade direction
• decide final signal logic
Calling scripts remain responsible for:
• oscillator calculation
• pivot confirmation
• price/oscillator comparison logic
• visibility settings
• color choices
• max-line and max-label budgets
• final visual interpretation
For overlay=false oscillator scripts, Price + Oscillator / Price Only / Oscillator Only / Hide output modes work well.
For overlay=true price-pane scripts, Price Only / Hide output modes usually make the most sense. Biblioteca

ATR & Fibonacci Expansion ZonesATR & Fibonacci Expansion Zones is a multi-mode ATR framework designed to help traders read price location, volatility expansion, session structure, and active high/low range context. The script is built around a simple but powerful idea: ATR levels can provide a volatility-adjusted map of how far price has moved from a meaningful close reference. From there, the workflow adds flexible mode selection, organized ATR labels, optional historical ATR periods, mode-aware AVWAPs, active high/low zones, and fibonacci labels that correspond to a respective level within the enabled mode.
────────────────────────────
Core Idea
────────────────────────────
ATR (actual true range) is powerful because it gives price movement a volatility-adjusted frame of reference.
This script helps traders evaluate:
• How far price has expanded from the selected close anchor
• Whether price is still near the first ATR expansion zone or already extended
• Whether price is approaching a major +1, +2, +3, or +4 ATR area
• Whether price is reacting around an active session high/low zone
• Where price is trading inside the active session fibonacci range
• Which ATR mode best frames the current move: Daily, Multiday, Swing, Position, or Long-Term
That makes the script useful for intraday context, multiday moves, swing structure, position-style tracking, and longer-term range mapping.
────────────────────────────
ATR Modes
────────────────────────────
The script renders one selected ATR engine at a time. This keeps the chart cleaner than stacking multiple ATR families together.
Included modes:
Daily
Uses the daily ATR framework. Best for day/session-level context on intraday charts.
Multiday
Uses the weekly ATR framework. Best for trades developing across multiple sessions.
Swing
Uses the monthly ATR framework. Best for larger swing-style movement.
Position
Uses a 3-month ATR framework. Best for broader position-style context.
Long-Term
Uses a 12-month ATR framework. Best for major range structure and larger macro-style moves.
All modes can render the full 23.6% through 400% ATR expansion range, with separate line and label controls for each major range block.
────────────────────────────
ATR Expansion Grid
────────────────────────────
The main ATR grid plots upper and lower ATR expansion levels from the selected close anchor.
The grid includes:
• 23.6% to 100%
• 123.6% to 200%
• 223.6% to 300%
• 323.6% to 400%
Each range has its own parent Show / Hide controls for lines and labels, plus child controls for upper and lower sides. This makes it easier to keep the chart simple when only the closer ATR levels matter, or expand the full map when price is making a larger move.
The labels can show:
• ATR ratio
• ATR level price
• selected mode tag
• percent distance from current price
That percent-from-price read helps make the grid more practical because you can quickly see how close price is to the next ATR level instead of visually estimating it or using the info line tool.
────────────────────────────
Previous / Current Close Reference
────────────────────────────
The PCL / CC line and label show the active close reference used by the selected ATR grid. Depending on the selected mode and settings, this can represent:
• Previous Close
• Current Close
• Daily close reference
• Weekly close reference
• Monthly close reference
• 3-month close reference
• 12-month close reference
The label can also show close-to-close percent change and RSI(14) from the selected ATR timeframe. This is important because the close anchor is the foundation of the ATR grid. The script keeps that reference visible so the user can see exactly where the ATR expansion map begins.
────────────────────────────
ATR Session AVWAPs
────────────────────────────
The script includes mode-aware ATR Session AVWAPs. These are not static VWAPs. They follow the currently selected ATR mode. Depending on the mode, the AVWAP set can reset from:
• the active day/session
• the active week
• the active month
• the active 3-month period
• the active 12-month period
Included AVWAP paths:
• Session VWAP
• High AVWAP
• Low AVWAP
The Session VWAP starts from the active ATR period/session start. The High AVWAP anchors from the candle that creates the active period high. The Low AVWAP anchors from the candle that creates the active period low. When a new active high or low forms, the matching AVWAP re-anchors.
In practical terms:
• ATR levels show volatility expansion from the selected close anchor
• AVWAPs show volume-weighted behavior from the active period structure
• High/Low AVWAPs help track how price behaves after major active-period extremes form
This adds a useful volume-weighted layer around the ATR map.
────────────────────────────
ATR Session High / Low Boxes
────────────────────────────
The script can also draw active high and low boxes for the selected ATR session or period.
The High Box starts from the candle that creates the active high.
The Low Box starts from the candle that creates the active low.
These boxes are wick-based, which makes them useful for highlighting rejection zones, liquidity wicks, exhaustion candles, or important high/low reference areas inside the active ATR period.
────────────────────────────
ATR Session Fibonacci Labels (levels)
────────────────────────────
ATR Session Fibonacci Labels add another layer of context beside the ATR grid.
The ATR grid answers:
“How far has price expanded from the selected close anchor?”
The session fib labels answer:
“Where is price trading inside the active high-to-low range?”
The fib labels use the same active high and low tracked by the AVWAP and high/low box engines.
Direction is inferred automatically:
• If the low formed before the high, the script treats it as a bullish session leg
• If the high formed before the low, the script treats it as a bearish session leg
The fib labels can show:
• fib ratio
• price
• percent distance from current price
This creates a clean second layer of structure: ATR levels for expansion, fib labels for internal active-range location.
────────────────────────────
Historical ATR Periods
────────────────────────────
The script includes an optional Historical ATR Periods mode. When enabled, prior ATR grid segments can remain visible for a user-defined number of completed ATR periods.
This is useful for reviewing:
• how price respected previous ATR levels
• where prior extensions acted as support or resistance
• whether price repeatedly reacted around certain volatility zones
• how current ATR behavior compares to prior periods
Historical labels are intentionally excluded to keep the chart cleaner. The historical mode focuses on line segments only.
────────────────────────────
Asset-Aware Behavior
────────────────────────────
The script includes separate behavior for stocks, crypto, and futures.
For stocks and funds:
• ATR calculations can use regular or extended-session source data
• Daily lines can start from regular open or extended open
• Daily AVWAPs, boxes, and fib labels can reset from the extended-session / premarket day start when available
• Higher-timeframe stock modes wait for the first regular-hours bar of the new period for cleaner visual alignment
For crypto:
• the chart ticker is used
• Daily mode resets once per calendar day
For futures:
• the chart ticker is used
• Daily mode uses a Globex-style 5:00 PM Central session boundary
• higher-timeframe modes reset from the selected W / M / 3M / 12M ATR period boundary
This makes the script more flexible across different asset classes instead of treating every market like a regular-hours stock chart.
────────────────────────────
How I Use It
────────────────────────────
I use this script as a volatility and structure map.
A few practical ways to read it:
• Daily mode helps frame intraday price movement around the active daily ATR grid
• Multiday mode helps show where price is trading inside the weekly ATR structure
• Swing mode is useful when the daily chart is too narrow and the monthly range matters more
• Position and Long-Term modes help zoom out and understand broader extension zones
• PCL (previous close) / CC (current close) keeps the close anchor visible
• The Auto close-anchor setting is especially useful for Daily stock mode because it automatically adapts between Current Close during New York premarket / after-hours and Previous Close during regular market hours
• This means the ATR grid can stay aligned with the session environment without forcing the user to manually decide when to use PCL or CC
• During premarket and after-hours, Current Close helps the levels respond to the active extended-hours move
• During regular hours, Previous Close keeps the main daily ATR map anchored to the completed prior session
• The price guide dash makes it easier to line up current price with the ATR label column
• High/Low Boxes help mark active wick-based extremes
• Session AVWAPs add a volume-weighted path from the active period and its extremes
• Session Fib Labels show internal retracement context inside the active high/low range
• Historical ATR Periods help review how price behaved around prior ATR grids
The Auto close-anchor behavior is one of the most practical parts of the workflow. Premarket and after-hours trading can make a static previous-close grid feel disconnected from the live move, while regular-hours trading often benefits from keeping the prior close as the main reference. Auto handles that transition in the background so the ATR levels remain tied to the most relevant close reference for the active session. In other words, you don't have to decide when to use "Use Current Close" depending on if your'e in pre-market or regular trading hours.
The value of this script is organization. It brings ATR expansion, close-reference context, session extremes, AVWAP structure, and active-range fib location into one chart-side workflow.
ATR levels by themselves can already be useful but this script expands that idea into a fuller range map so traders can better judge whether price is early in a move, pressing into extension, reacting from an active extreme, or moving through a broader volatility structure.
────────────────────────────
Attribution
────────────────────────────
This script is a modern rebuild inspired by Saty’s ATR Levels concept and my original ATR Levels publication.
Special thanks to SimpleCryptoLife for past help and inspiration around improving the original ATR Levels workflow and for the Significant Figures library used for cleaner number formatting.
As always, this is a visual context tool. It is not meant to replace risk management, market structure, support/resistance, volume analysis, or a complete trading plan.
────────────────────────────
A Few Chart Examples
────────────────────────────
Indicador

Indicador

Indicador

Indicador

Pivot_Labels_Output_UtilitiesThis library contains reusable pivot label output helpers for Pine scripts that already have their own pivot, structure, or signal logic but want a shared label-rendering layer.
It centralizes the parts of the workflow that tend to get rewritten across label-heavy scripts: label-size resolution, compact percent and price formatting, one-shot pivot label plotting, live directional label management, confirmed/local/current-RSI text builders, early-label emoji output, and live-stack text / object helpers.
On the example chart, the visible label workflows are materially driven by the library, whether through the confirmed pivot label text, the local pivot label text, the current RSI + SMA above-bar label, the early directional labels, or the live stack text and label-object lifecycle helpers used to keep those outputs updated cleanly on the chart.
How to use
Import the library near the top of your script in global scope, alongside any other imports, before you start calling its helpers.
Typical placement:
// @version=6
indicator(...) or strategy(...)
import MYNAMEISBRANDON/PivotLabelsOutput_Utilities/1 as PLutils
This library does not confirm pivots, resolve structure tags, or choose label colors for you. Instead, it expects your script to already know the values it wants to display, then uses those resolved inputs to build the output layer.
For more information on libraries and incorporating them into your scripts, see the Libraries section of the Pine Script User Manual.
➖Label Size Helpers➖
These helpers convert simple UI-facing size strings into Pine label-size enums so scripts can keep one consistent size resolver across confirmed pivot labels, local pivot labels, current RSI labels, early labels, and live stack labels.
labelSizeFromString(sizeIn)
Resolves a Pine label size from a string input.
Parameters:
sizeIn (simple string): Size string. Expected values: "Tiny", "Small", "Normal", "Large", or "Huge"
Returns:
Pine label size enum
➖Numeric Formatting Helpers➖
These helpers handle compact numeric formatting for label-driven scripts. They let a script calculate percent change safely, format that change in a label-friendly way, and convert larger price values into compact significant-figure style text.
labelPercentChange(curr, prev)
Returns percent change from prev to curr.
Parameters:
curr (float): Current value
prev (float): Previous reference value
Returns:
Percent change or na when invalid
labelFormatPercent(p)
Formats a percent value for compact label output.
Parameters:
p (float): Percent value
Returns:
Formatted percent string
labelFormatCompactNumber(x, sig)
Formats a number using significant-figure style suffix output.
Parameters:
x (float): Value to format
sig (simple int): Significant figures to preserve
Returns:
Compact number string
➖Static Label Plot Helpers➖
These helpers create one-shot label outputs for scripts that want to place confirmed or local pivot labels on historical pivot bars, or simple above-bar informational labels, without managing a live label object afterward.
plotPivotLabel(x, y, txt, textColor, isHigh, sizeIn)
Creates a pivot label on a specific bar.
Parameters:
x (int): Label x position
y (float): Label y position
txt (string): Label text
textColor (color): Label text color
isHigh (bool): True for a high-side label, false for a low-side label
sizeIn (simple string): Label size string
Returns:
Created label reference
plotAboveBarLabel(x, y, txt, textColor, sizeIn)
Creates an above-bar informational label.
Parameters:
x (int): Label x position
y (float): Label y position
txt (string): Label text
textColor (color): Label text color
sizeIn (simple string): Label size string
Returns:
Created label reference
➖Directional Label Object Helpers➖
These helpers manage the lifecycle of live high-side and low-side label objects so scripts can create, update, or delete directional labels without repeating the same object-management logic each time.
manageDirectionalLabel(lbl, show, x, y, txt, textColor, isHigh, sizeIn)
Creates, updates, or deletes a directional label object.
Parameters:
lbl (label): Existing label reference
show (bool): Whether the label should exist
x (int): Label x position
y (float): Label y position
txt (string): Label text
textColor (color): Label text color
isHigh (bool): True for a high-side label, false for a low-side label
sizeIn (simple string): Label size string
Returns:
Updated label reference
➖Pivot Text Helpers➖
These helpers build the final text used by confirmed pivot labels, local pivot labels, confirmed pivot alerts, and the current RSI / SMA above-bar label. In other words, this region keeps the script’s visible wording consistent while leaving structure resolution and color decisions to the calling script.
buildMajorPivotLabelText(mode, priceText, priceStruct, rsiText, oscStruct, percentText, pivotLen, showLen)
Builds confirmed pivot label text.
Parameters:
mode (simple string): Label mode. Expected values: "Full" or "RSI Only"
priceText (string): Formatted pivot price
priceStruct (string): Price-side structure tag
rsiText (string): Formatted pivot RSI
oscStruct (string): RSI-side structure tag
percentText (string): Formatted percent-change text
pivotLen (int): Pivot length value
showLen (bool): Whether pivot length should be shown
Returns:
Confirmed pivot label text
buildLocalPivotLabelText(priceText, priceStruct, rsiText, rsiStruct, pivotLen, showPrice, showLen)
Builds local pivot label text.
Parameters:
priceText (string): Formatted local pivot price
priceStruct (string): Price-side structure tag
rsiText (string): Formatted local pivot RSI
rsiStruct (string): RSI-side structure tag
pivotLen (int): Pivot length value
showPrice (bool): Whether the price line should be shown
showLen (bool): Whether pivot length should be shown
Returns:
Local pivot label text
buildPivotAlertText(isHigh, priceText, pctText, rsiText, structTag, rsiValue, rsiOB, rsiOS)
Builds confirmed pivot alert text.
Parameters:
isHigh (bool): True for a high pivot, false for a low pivot
priceText (string): Formatted pivot price
pctText (string): Formatted percent-change text
rsiText (string): Formatted pivot RSI
structTag (string): RSI-side structure tag
rsiValue (float): Raw RSI value at the pivot
rsiOB (int): Overbought level
rsiOS (int): Oversold level
Returns:
Alert message text
buildCurrentRsiAboveBarText(currRsiText, structTag, smaText)
Builds current RSI / SMA above-bar label text.
Parameters:
currRsiText (string): Formatted current RSI text
structTag (string): Current live structure tag
smaText (string): Formatted SMA text
Returns:
Current RSI above-bar label text
➖Early Pivot Label Helpers➖
These helpers provide the reusable output primitive used by early pivot labels. This region intentionally stops at emoji selection so scripts with different structure-tag models and color logic can still reuse the same active-vs-carried-forward label cue.
earlyPivotEmoji(isHigh, isCurrentCandidateBar)
Returns the early-pivot emoji for the active side and candidate state.
Parameters:
isHigh (bool): True for a high-side early label, false for a low-side early label
isCurrentCandidateBar (bool): True when the candidate bar is the current bar
Returns:
Early-pivot emoji
➖Live Stack Text Helpers➖
These helpers build the reusable text layer behind live stack labels. They handle padded line construction, signed delta wording, movement glyphs, and the multi-line center block used to display price, anchor tag, RSI, RSI delta, SMA, and SMA delta.
stackSignedRoundText(x)
Returns a rounded signed text value for live-stack display.
Parameters:
x (float): Value to round
Returns:
Signed rounded text
stackMoveGlyph(delta)
Returns the move glyph used by live-stack delta text.
Parameters:
delta (float): Delta value
Returns:
Move glyph
stackDeltaText(change, structTag, isPercent, pad)
Builds padded delta text for the live stack.
Parameters:
change (float): Delta value
structTag (string): Structure tag to append
isPercent (bool): Whether the delta should be formatted as a percent
pad (int): EM-space padding count
Returns:
Padded delta text
stackRsiDiffText(delta, structTag, pad)
Builds padded RSI-delta text for the live stack.
Parameters:
delta (float): RSI delta value
structTag (string): Structure tag to append
pad (int): EM-space padding count
Returns:
Padded RSI-delta text
stackCenterText(price, rsiVal, rsiDelta, rsiSma, rsiSmaDelta, anchorTag, pad, sigFigs)
Builds the live-stack center block text.
Parameters:
price (float): Current price
rsiVal (float): Current RSI value
rsiDelta (float): Current bar-to-bar RSI delta
rsiSma (float): Current RSI SMA value
rsiSmaDelta (float): Current bar-to-bar RSI SMA delta
anchorTag (string): Active anchor tag such as "➜H" or "➜L"
pad (int): EM-space padding count
sigFigs (simple int): Significant figures used for price formatting
Returns:
Center live-stack text block
➖Live Stack Label Object Helpers➖
These helpers manage the lifecycle of live center-style stack labels so scripts can create, update, or delete the visible stack objects without repeatedly rewriting that object-management logic.
manageCenterLabel(lblPrev, show, yVal, txt, textColor, xPos, linesBefore, linesAfter, sizeIn)
Creates, updates, or deletes a center-style live-stack label.
Parameters:
lblPrev (label): Existing label reference
show (bool): Whether the label should exist
yVal (float): Label y position
txt (string): Label text
textColor (color): Label text color
xPos (int): Label x position
linesBefore (int): Blank lines inserted before the text block
linesAfter (int): Blank lines inserted after the text block
sizeIn (simple string): Label size string
Returns:
Updated label reference
Local Pivot label demo (with pin emoji)— shows the library’s smaller same-side pivot label format on its own for a cleaner view of the local-label workflow.
Biblioteca

AG Pro Structure Labels [AGPro Series]AG Pro HH HL LH LL Structure Labels
Overview / What it does
AG Pro HH HL LH LL Structure Labels is a clean market-structure reader built to simplify price action without turning the chart into a wall of signals. Its core purpose is straightforward: identify confirmed swing highs and swing lows, classify them as HH, HL, LH, or LL, and connect those points in a visually readable structure path so traders can understand the current sequence of price development at a glance.
Many market structure tools try to do too much at once. They mix structure, signals, zones, pattern scoring, and trade suggestions into a single publication, which can make the chart heavier and the analytical purpose less clear. This script takes the opposite route. It focuses on one job only: making confirmed swing structure easier to read, follow, and interpret in real time as the chart evolves.
That design choice is what gives this script its value. Instead of asking the user to interpret disconnected highs and lows manually, the script builds a visible structure chain from confirmed pivots and labels each important step. The result is a chart that remains visually disciplined while still communicating trend continuation, structural weakening, and flow transitions in a simple and repeatable format.
This script is especially useful for traders who want structure clarity before they bring in any other layer of analysis. It can be used as a standalone structure map, or as a first-pass chart-cleaning tool before applying other concepts such as support and resistance, trend continuation logic, pullback analysis, breakout validation, or discretionary execution rules.
Unique Edge
The unique edge of this script is not that it attempts to predict where price will go next. Its strength is that it organizes confirmed structure in a way that is visually clean, logically consistent, and immediately usable on live charts.
Unlike many AG Pro scripts that are built around event detection, confluence scoring, price-zone visualization, setup quality filtering, or breakout logic, this publication is intentionally narrower and more focused. It is not a BOS/CHoCH event detector. It is not a liquidity-sweep model. It is not an order-block or fair-value-gap engine. It is not a breakout-quality, retest-quality, or pattern-quality scorer. It is also not a fixed reference-level tool such as a prior-day or prior-week high/low mapper. This script is a structure readability tool first and foremost.
That distinction matters.
Previous AG Pro releases often revolve around a specific trading event: a sweep, a break, a retest, a zone reaction, a continuation pattern, or a multi-factor confluence state. This script does not begin from an event. It begins from the swing chain itself. It asks a simpler question: what is the current sequence of confirmed highs and lows, and what does that sequence imply about market flow right now?
Because of that, the script fills a different role in the broader AG Pro library. It is closer to a structural map than a setup engine. It helps answer whether the chart is still printing constructive highs and lows, whether the sequence has started to weaken, or whether the structure is now leaning in the opposite direction. That makes it useful both on its own and as a foundation layer beneath other tools.
Another important differentiator is presentation discipline. The structure path provides continuity between pivots, while the label set communicates classification without unnecessary chart clutter. The compact floating HUD reinforces the current flow state without dominating screen space. Together, these choices make the script visually premium while keeping the chart readable.
Methodology
The script uses a confirmed pivot framework. Swing highs and swing lows are identified using left and right lookback parameters selected by the user. Because pivots require confirmation, labels appear only after the structure point is confirmed by the specified number of bars. This helps reduce noise and keeps the structure map grounded in confirmed rather than speculative swing points.
Once a new pivot high is confirmed, it is compared with the prior confirmed pivot high. If it exceeds the previous confirmed high, it is classified as HH. If it does not, it is classified as LH. The same logic applies on the low side: if a confirmed pivot low is above or equal to the previous confirmed pivot low, it is classified as HL; if it is lower, it is classified as LL.
The script also includes an ATR-based structure filter. This filter is designed to suppress micro-swings that are too small relative to current volatility, which helps maintain visual cleanliness on choppier charts. Instead of drawing every minor fluctuation, the script attempts to keep attention on swings that are more structurally meaningful for the selected sensitivity.
A structure path, shown as a clean zigzag line, connects the confirmed pivots that pass the filter. This gives the user an immediate visual map of the sequence rather than a collection of isolated labels. In practice, this is one of the most useful parts of the script because it turns the market’s swing progression into a readable path.
The floating HUD summarizes the current market-flow bias in a minimalist format. It is not intended to act as a trade signal. Its job is to provide a quick structural read so the user can see whether the recent chain is leaning bullish, bearish, or transitional according to the internal swing logic.
Signals & Alerts
This script is not designed as a one-click entry engine. Its alerts are structural, not predictive.
The publication includes alerts for newly confirmed HH, HL, LH, and LL prints, which can help users monitor structure development without staring at the chart continuously. It also includes alerts for structure-flow transitions when the internal trend state turns bullish or bearish.
These alerts are best understood as workflow alerts. They tell the user that structure has progressed into a new confirmed condition. They do not guarantee continuation, reversal, breakout success, or trade profitability. Their purpose is to improve awareness of structural change, not to replace independent analysis.
Key Inputs
Pivot sensitivity is controlled through left and right lookback values. Higher values usually produce fewer but more mature structure points, while lower values usually produce a faster and denser structure map.
The ATR filter can be enabled to reduce insignificant swings. This can be particularly helpful on lower timeframes or during periods of uneven, noisy price movement.
Users can also control whether the structure path is drawn and can adjust the visual typography for labels and HUD elements. These inputs allow the script to stay visually flexible across different chart styles and screen densities.
How this script differs from other AG Pro scripts
This distinction is central to the publication.
Many AG Pro scripts are built to evaluate the quality of a setup. They may score breakouts, retests, continuation patterns, reversal candles, pressure conditions, or confluence states. Others are built around zones and reactions, such as supply-demand mapping, premium-discount logic, fair value gaps, order blocks, or support-resistance behavior. Others focus on structural events such as BOS/CHoCH changes, liquidity sweeps, inducement traps, or session-specific reactions.
This script does none of those things.
It does not measure the quality of a signal.
It does not score a setup.
It does not project targets.
It does not identify fixed daily or weekly reference levels.
It does not try to map every institutional concept on the chart.
It does not attempt to be an all-in-one decision engine.
Instead, it provides a cleaner foundation: confirmed HH, HL, LH, and LL sequencing with a filtered structural path and a compact market-flow summary.
That is precisely why it is different from the previous AG Pro script as well. If the previous release was anchored to fixed price levels, event detection, or context-specific reactions, this script is anchored to swing continuity. If another AG Pro script answers where price reacted, where a sweep occurred, whether a breakout was strong, or whether a setup deserves a quality score, this one answers a more basic but highly important question: what is the confirmed structure chain doing right now?
In that sense, this script is less about trading events and more about structural readability.
Limitations & Transparency
This script uses confirmed pivots, which means it is not attempting to label unconfirmed structure in advance. As a result, there is an intentional delay equal to the confirmation logic chosen by the user. That delay is not a flaw; it is part of the design tradeoff required to avoid premature structure labels.
Like any pivot-based structure tool, output will vary depending on sensitivity settings, timeframe, market volatility, and symbol behavior. A lower sensitivity may reveal more swing detail but can also make the map denser. A higher sensitivity may create a cleaner structure path but may respond more slowly to local shifts.
The ATR filter is a visual-cleanliness tool, not a universal truth engine. It can help reduce noise, but different traders may prefer different levels of structural compression depending on how aggressively or conservatively they define meaningful swings.
This script should also not be interpreted as a complete trading plan. It does not include position sizing, stop placement, target selection, execution logic, or market-specific risk rules. Users should combine it with their own framework, testing process, and judgment.
Risk Disclosure
This script is for analytical and educational use. It is not financial advice, investment advice, or a recommendation to buy or sell any instrument.
Market structure is an interpretive framework, not a guarantee of future price behavior. A bullish sequence can fail, a bearish sequence can reverse, and a clean structural print can still occur inside a broader context that changes the meaning of the move.
Always use independent judgment, apply appropriate risk management, and evaluate the script in the context of your own market, timeframe, and process.
Summary
AG Pro HH HL LH LL Structure Labels is built for traders who value structural clarity over indicator overload. Its role in the AG Pro catalog is distinct: it is not an event hunter, not a zone engine, and not a quality scorer. It is a clean structure reader designed to make confirmed swing progression easier to see, easier to follow, and easier to integrate into a disciplined chart workflow.
If your goal is to understand whether price is still producing constructive highs and lows, whether that chain is weakening, or whether the flow has shifted into a different structural condition, this script is designed for exactly that task.
Indicador

Indicador

Key Level SuiteKey Level Suite is a comprehensive label indicator that displays the most important price levels directly on your chart — always anchored to the right edge so they stay out of your price action and are easy to read at a glance.
Instead of drawing horizontal lines across the entire chart, Key Levels renders clean, minimal text labels at each price level. When multiple levels converge within a configurable threshold, they are automatically merged into a single label showing all contributing names (e.g. wVWAP | mH | pdVAH), making confluences immediately visible without any manual work.
📌 Levels Included
🔹 VWAP & Value Area (VAH / VAL)
Session VWAP with one standard-deviation bands for Daily, Weekly, Monthly, Quarterly, and Yearly periods.
🔹 Previous VWAP & Value Area
The final VWAP, VAH, and VAL from the completed prior session — Daily through Yearly.
🔹 Rolling VWAP & Value Area
Volume-weighted average price over rolling windows of 1, 7, 30, 90, and 365 days, each with its own VAH/VAL band.
🔹 Highs & Lows
Current and previous session high/low for all five periods.
🔹 Opens
Session open price for Daily, Weekly, Monthly, Quarterly, and Yearly.
🔹 EMA (10 slots)
Up to 10 exponential moving averages with independently configurable length and timeframe per slot. Leave the timeframe blank to use the chart timeframe.
⚙️ Settings
Style
Choose label text size: Tiny, Small, Normal, or Large.
Colors
Individual color pickers for each timeframe group — Daily, Weekly, Monthly, Quarterly, Yearly — plus separate colors for High/Low, Open, and EMA labels. All current, previous, and rolling levels of the same timeframe share one color, making it immediately clear which timeframe a level belongs to.
Merge
Enable or disable automatic label merging and set the proximity threshold as a percentage. Levels within this distance of each other are combined into a single label listing all contributing names — no more overlapping text at confluence zones.
VWAP / Previous VWAP / Rolling VWAP / Statics / EMA
Every individual level and group can be toggled on or off independently, so you only see what is relevant to your trading style. Indicador

Indicador

Indicador

Indicador

Indicador

Indicador

Indicador

Indicador

CVD Flow Labels for Sessions Ranges [AMT Edition]CVD Flow Labels for Session Ranges
Description:
This script provides a session-aware Cumulative Volume Delta (CVD) analysis designed to enhance the “Session Ranges ” framework by combining price extremes with detailed volume flow dynamics. Unlike generic trend or scalping indicators, this tool focuses on identifying aggressive buying and selling pressure, distinguishing between absorption (failed auctions where aggressive flows are rejected) and acceptance (confirmed continuation of flows).
How it works:
CVD Calculation: The script calculates delta for each bar using a choice of Total, Periodic, or EMA-based cumulative methods. Delta represents the net difference between estimated buying and selling volume per bar.
Normalization: By normalizing delta relative to recent volatility, it highlights extreme flows that are statistically significant, making large shifts in market sentiment easier to spot.
Session-Specific Analysis: The indicator separates Asia, London, and New York sessions to allow context-sensitive interpretation of price and volume interactions. Each session’s extremes are monitored, and flow labels are plotted relative to these extremes.
Flow Labels: Bullish and bearish absorption (“ABS”) and acceptance (“ACC WEAK/STRONG”) labels provide immediate visual cues about whether aggressive flows are being absorbed or accepted at key price levels.
Alerts: Configurable alerts trigger when absorption or acceptance occurs, supporting active trading or strategy automation.
Originality & Usefulness:
This script is original because it integrates volume-based auction theory with session-specific market structure, rather than simply showing trend or scalping signals. By combining CVD dynamics with session extreme levels from the “Session Ranges ” script, traders can:
Identify where price is likely to be accepted or rejected.
Confirm aggressive buying or selling flows before entering trades.
Time entries near session extremes with higher probability setups.
How to use:
Apply the “Session Ranges ” to see session highs, lows, and interaction lines.
Use this CVD Flow Labels script to visualize absorption and acceptance at these session levels.
Enter trades based on alignment of session extremes and flow signals:
Absorption at a session extreme may indicate a potential reversal.
Acceptance suggests continuation in the direction of the flow.
Alerts can help manage trades without constant screen monitoring.
This tool is designed to give traders a structured, session-based view of market auctions, providing actionable insights that go beyond typical trend-following or scalping methods. It emphasizes flow analysis and statistical extremes, enabling traders to make more informed decisions grounded in market microstructure. Indicador

EMA/SMA Ribbon Pro (AUTO HTF + Labels)This indicator is a multi-timeframe (MTF) moving average ribbon that dynamically adjusts to the next highest timeframe. It provides a visual representation of market trends by stacking multiple EMAs and SMAs with customizable color fills and labels.
Features
✅ Multi-Timeframe (MTF) Support: Automatically detects the next highest time frame or allows for manual selection
✅ Customizable Moving Averages: Supports EMA and SMA with different lengths for flexible configuration
✅ Ribbon Visualization: Smooth color transitions between different moving averages for better trend identification
✅ Crossover Labels: Detects bullish and bearish EMA/SMA crossovers and marks them on the chart
✅ Price Labels & Timeframe Display: Displays moving average values to the right of the price axis with customizable label padding and colors
How It Works
Select the HTF mode: Manual or automatic
Choose EMA/SMA lengths to create different ribbons
Enable/disable price labels for each moving average
Customize colors and transparency for ribbons and labels
Crossover labels appear when faster moving averages cross slower ones and vice versa
Use Cases
📌 Trend Identification: Identify bullish and bearish trends using multiple EMAs and SMAs
📌 Support & Resistance Zones: MAs can act as dynamic support and resistance levels
📌 Reversal & Confirmation Signals: Watch for MTF crossovers to confirm trend changes
Customization
🔹 Standard EMA Lengths: 6, 8, 13, 21, 34, 48, 100, 200, 300, 400
🔹 SMA Lengths: 48, 100, 200
🔹 Color Adjustments: Set custom colors for bullish/bearish ribbons
🔹 Crossovers: Enable/disable custom crossover pairs (e.g., 100/200 EMA, 200 EMA/SMA).
This indicator is perfect for traders who rely on multi-timeframe confluence while seeking to enhance their market analysis and decision-making process.
As always, by combining EMA/SMA Ribbon with other tools, traders ensure that they are not relying on a single indicator. This layered approach can reduce the likelihood of false signals and improve overall trading accuracy.
As always, be sure to use any indicator with price action and volume indicators for better trade confirmation! Indicador

Dominant Smoothed Volume Pro Smoothed Volume Pro provides a useful tool designed to provide traders with a deeper understanding of market dynamics by analyzing buy and sell volume across multiple timeframes. Unlike traditional volume indicators, this script normalizes volume data from lower timeframes to align with the current chart's timeframe, providing an apples-to-apples comparison. The result is a visual histogram representation of the dominant buy or sell activity, smoothed over 5 different periods to reflect momentum shifts and enhance clarity.
Core Methodology
1. Multi-Timeframe Volume Analysis
This indicator leverages data from five different lower timeframes, each chosen dynamically based on the current chart's timeframe. By aggregating and normalizing these granular data points, the indicator captures subtle shifts in buy and sell volume that might otherwise go unnoticed. This multi-timeframe approach allows for a more detailed and accurate representation of market activity.
2. Data Normalization
Normalization is a critical component of this indicator. It ensures that volume data from lower timeframes is scaled appropriately to match the total volume of the current chart's timeframe. This step eliminates discrepancies caused by varying time intervals, providing a more meaningful comparison of volume trends across different periods.
3. Smoothing for Momentum Representation
The indicator employs five customizable smoothing factors to smooth out noisy volume data.
Each smoothing factor is distinctly color-coded in the histogram and table for intuitive analysis, helping traders quickly identify prevailing trends.
Features and Benefits
➖Customizable Smoothing Factors: Choose from five different smoothing factors, each with its unique settings for line styles, colors, and extensions.
➖Normalized Buy and Sell Volume: Displays normalized buy and sell volumes as a percentage of total activity, aiding in quick decision-making.
➖Visual Cues: Color-coded columns and labels help identify dominant trends at a glance, with high-opacity fills for visual clarity.
➖Dynamic Table: A built-in table summarizes smoothed volume data for each smoothing factor, offering a quick overview of bullish and bearish percentages.
➖Momentum Signals: Detect significant shifts in volume momentum with visually distinct alerts for high relative volumes, including special symbols like "⚡" and "🔥."
Practical Applications
➖Identifying Market Sentiment: Quickly determine whether the market is dominated by buyers or sellers at any given moment.
➖Spotting Reversals: Use momentum shifts in smoothed volume to anticipate potential trend reversals.
➖Enhancing Entry and Exit Points: Combine this indicator with other technical tools to refine entry and exit points in your trading strategy.
Why This Indicator Stands Out
Many existing volume indicators focus solely on raw or single-timeframe data, which can be misleading or incomplete. This indicator sets itself apart by:
Utilizing multi-timeframe data to provide a holistic view of market activity.
Applying robust normalization techniques to ensure data consistency.
Offering advanced smoothing options to emphasize actionable momentum signals.
This unique combination of features makes it an indispensable tool for traders seeking to enhance their market analysis and decision-making process.
As always, by combining the Smoothed Volume Pro with other tools, traders ensure that they are not relying on a single indicator. This layered approach can reduce the likelihood of false signals and improve overall trading accuracy.
Here's an additional visual representation using the plot fills:
Indicador

Indicador
