Rolling VWAP with SignalsRolling VWAP with Signals
Overview
Rolling VWAP with Signals plots a time-window ("rolling") VWAP with standard deviation bands, and generates filtered buy/sell signals on band breakouts. Unlike a session VWAP, which resets at a fixed anchor such as the start of day or week, this VWAP recalculates continuously over a trailing window that you define, for example the last 10 hours or the last 2 minutes of 3-minute bars. This keeps it adapting on any chart, in any session, in any market, including markets that trade around the clock.
This script is an original extension built on the rolling VWAP concept from Rolling VWAP . It adds standard deviation bands, trend-state coloring, crossover based buy/sell signals, an ATR rising filter, and a VWAP trend-alignment filter, none of which are present in the original.
How It Works
The rolling VWAP is computed by summing price times volume and volume over a trailing time window, then dividing, the standard VWAP formula applied to a moving window instead of a fixed session. The calculation runs on an independent timeframe set by the RVWAP Timeframe input, evaluated with request.security().
Standard deviation bands sit above and below the VWAP at a configurable multiple of the rolling standard deviation, computed with the direct weighted squared deviation method rather than the E minus E ^2 shortcut, which avoids precision loss on high-priced instruments.
smoothedATR = ta.swma(ta.atr(atrLength))
atrRising = not useATRFilter or smoothedATR > smoothedATR
Trend state is bullish when the VWAP is higher than it was one higher-timeframe bar ago and price is above the upper band, and bearish under the mirrored condition. The VWAP line is colored accordingly.
Buy and sell signals fire once, on the bar where price crosses a band, not on every bar price remains outside it:
Buy — close crosses over the upper band
Sell — close crosses under the lower band
Two optional filters narrow signals to higher-conviction setups:
Rising ATR — requires an SWMA-smoothed ATR to be higher than the prior bar, filtering out breakouts occurring while volatility is contracting
RVWAP trend alignment — requires the bullish or bearish trend state described above, so buy only fires in an established uptrend and sell only in an established downtrend
Four alert conditions are available: price above the upper band, price below the lower band, a buy signal, and a sell signal.
Inputs
RVWAP Timeframe — Timeframe the rolling VWAP and standard deviation calculation runs on, independent of the chart timeframe. Default: 1 minute.
RVWAP Time Period (Hours / Minutes) — Length of the trailing window used for the rolling calculation. Shorter windows track faster; longer windows behave more like a session VWAP. Default: 0 hours, 1 minute.
Standard Deviation Multiplier — Distance of the bands from the VWAP, in standard deviations. Lower values give tighter bands and more signals; higher values give wider bands and fewer, stronger signals. Default: 1.618.
Show Standard Deviation Bands — Toggles the band plots and disables buy/sell signals when off, since signals require a band cross. Default: on.
Show Fill Between Bands — Toggles the shaded fill between the upper and lower bands. Default: on.
Smooth VWAP/StdDev — Applies additional smoothing to the VWAP and standard deviation lines for a less-lagged appearance when off, or a smoother, laggier line when on. Default: off.
Require Rising ATR for Signals — Gates buy and sell signals on a rising smoothed ATR. Default: on.
Length — ATR length used by the rising-ATR filter. Default: 14.
Require RVWAP Trend Alignment for Signals — Gates buy signals on a bullish RVWAP trend and sell signals on a bearish RVWAP trend. Default: on.
Upper Band, Lower Band, Fill — Colors for the band lines and the fill between them.
Usage Notes
Requires a data feed that provides volume; the script raises a runtime error if none is available.
The rolling calculation needs a minimum of 10 bars within the window to produce a value; very short windows on sparse data may show gaps.
Rising ATR means the current SWMA-smoothed ATR value is strictly greater than the previous bar's value, a one-bar comparison rather than a multi-bar slope.
Values inside the current, still-forming RVWAP Timeframe bar can update intrabar, as with any request.security() call without a fixed historical offset. Confirmed bars do not repaint.
Disable both signal filters to see every raw band-crossing signal, or enable them independently to trade off signal frequency against signal quality.
Credits
Rolling VWAP methodology adapted from the original Rolling VWAP .
Uses the open-source PineCoders ConditionalAverages library for the windowed total calculations.
Disclaimer
This script is provided for educational and informational purposes only and does not constitute financial advice. Past performance is not indicative of future results. Always do your own research and apply proper risk management before trading.
Indicator

Indicator

Rolling VWAPs Proximity & Alerts [HYPR-run]DESCRIPTION:
Rolling VWAPs across six time horizons on one chart. See where
volume-weighted fair value sits at chart TF, 7D, 30D, 60D, 90D and 365D
without switching timeframes. Unlike session VWAP that resets daily, rolling
VWAP uses a fixed window that slides forward continuously, giving you
dynamic support/resistance levels that institutional traders watch.
The PROXIMITY filter is the key feature. Turn on all six periods, set a
threshold, and only RVWAPs near current price appear on chart. Far lines
hide automatically; when price approaches, they show up. This keeps charts
clean while making sure you never miss a level that matters.
DISCOVERING EDGE
We have found that the first bounce/reject of a RVWAP is the most reliable and when there is a XO/XU it is a clear sign the boundary is broken. Hence, this indicator has a contextual positioning table of where price is relative to the other lookback periods while highlighting bounces and rejects with XO/XU alert signals.
ROLLING VWAP vs SESSION/ANCHORED VWAP
Session VWAP resets daily and loses all context beyond today.
Anchored VWAP requires picking the "right" date. Rolling VWAP slides
forward continuously across 7D to 365D, showing dynamic fair value
at every institutional time horizon without manual anchoring.
- Proximity filter surfaces only the RVWAPs near current price; far
lines hide automatically and appear as price approaches.
- Events row catches bounces and rejections ranked by period
significance (365D highest); when a key MA and RVWAP sit at the
same price and both bounce, that's institutional-grade confluence.
- Webhook alerts on configurable RVWAP cross with full bar filter;
30D for frequent signals, 90D for swing-level changes, 365D for
the macro signal.
FEATURES
- Six rolling VWAP periods: Chart TF, 7D, 30D, 60D, 90D, 365D
- Proximity filter: only relevant lines appear near price
- Bounce/reject detection at each RVWAP level
- Webhook alerts on selected RVWAP cross (long/short)
- Dashboard: row 1 positioning context (above/below each RVWAP), row 2 live events (bouncing, rejecting, XO, XU)
- Polyline labels with proximity % from price
- Toggle each period independently
- Dashboard dark/light theme toggle for any chart background
HOW IT WORKS
Rolling VWAP calculates cumulative (price x volume) / cumulative volume
over a fixed lookback window. The 30D RVWAP always reflects the last 30
calendar days of volume-weighted price. When price crosses above it, the
market is trading above recent fair value; crossing below means price has
fallen below where volume concentrated. Bounces confirm support holding;
rejects confirm resistance holding.
DASHBOARD
Two-row dynamic dashboard that updates every bar.
- Row 1 (positioning): which RVWAPs price is above or below, grouped with
"&" separators. The 365D RVWAP is separated as the anchor by a pipe.
7-tier color gradient based on how many of the four key RVWAPs
(30d, 60d, 90d, 365d) price is above, with heavyweight distinction
(90d and 365d carry more weight than 30d/60d): bright green (all
four), green (3/4 with both heavyweights), dark green (3/4 missing a
heavyweight), yellow (2/4), dark red (1/4 with a heavyweight), red
(1/4 only lightweight), bright red (none)
- Row 2 (events): up to 3 simultaneous events, most significant period
first (365D → 90D → 60D → 30D → 7D). Bouncing (support holding),
rejecting (resistance holding), XO (crossover), XU (crossunder). Color
intensity maps to event significance. Dark gray when idle
- Runs independently of display toggles; events fire for all periods even
if the line is hidden by the proximity filter
ALERTS
Two alert systems. XO/XU fires when price crosses the selected RVWAP
(default: 30D). Bounce/Reject fires when price wicks into the selected
RVWAP from the correct side and closes confirming support (bounce) or
resistance (reject). Both fire JSON payloads; works with any webhook
receiver.
POSITIONING TABLE (row 1, all 16 configurations)
BADGE COLOR (header, positioning x event combination)
TIMEFRAME RECOMMENDATIONS
- 7D: best on 8hr and below
- 30D: the default, works on most timeframes
- 60D: best on 3-Day and below
- 90D: best on Weekly and below
- 365D: works on Monthly and below
CREDITS
Rolling VWAP calculation: PineCoders/ConditionalAverages library Indicator

Indicator

Indicator

MTF MA Ribbon and Bands + BB, Gaussian F. and R. VWAP with StDev█ Multi Timeframe Moving Average Ribbon and Bands + Bollinger Bands, Gaussian Filter and Rolling Volume Weighted Average Price with Standard Deviation Bands
Up to 9 moving averages can be independently applied.
The length , type and timeframe of each moving average are configurable .
The lines, colors and background fill are customizable too.
This script can also display:
Moving Average Bands
Bollinger Bands
Gaussian Filter
Rolling VWAP and Standard Deviation Bands
Types of Moving Averages:
Simple Moving Average (SMA)
Exponential Moving Average (EMA)
Smoothed Moving Average (SMMA)
Weighted Moving Average (WMA)
Volume Weighted Moving Average (VWMA)
Least Squares Moving Average (LSMA)
Hull Moving Average (HMA)
Arnaud Legoux Moving Average (ALMA)
█ Moving Average
Moving Averages are price based, lagging (or reactive) indicators that display the average price of a security over a set period of time.
A Moving Average is a good way to gauge momentum as well as to confirm trends, and define areas of support and resistance.
█ Bollinger Bands
Bollinger Bands consist of a band of three lines which are plotted in relation to security prices.
The line in the middle is usually a Simple Moving Average (SMA) set to a period of 20 days (the type of trend line and period can be changed by the trader, a 20 day moving average is by far the most popular).
The SMA then serves as a base for the Upper and Lower Bands which are used as a way to measure volatility by observing the relationship between the Bands and price.
█ Gaussian Filter
Gaussian filter can be used for smoothing.
It rejects high frequencies (fast movements) better than an EMA and has lower lag.
A Gaussian filter is one whose transfer response is described by the familiar Gaussian bell-shaped curve.
In the case of low-pass filters, only the upper half of the curve describes the filter.
The use of gaussian filters is a move toward achieving the dual goal of reducing lag and reducing the lag of high-frequency components relative to the lag of lower-frequency components.
█ Rolling VWAP
The typical VWAP is designed to be used on intraday charts, as it resets at the beginning of the day.
Such VWAPs cannot be used on daily, weekly or monthly charts. Instead, this rolling VWAP uses a time period that automatically adjusts to the chart's timeframe.
You can thus use the rolling VWAP on any chart that includes volume information in its data feed.
Because the rolling VWAP uses a moving window, it does not exhibit the jumpiness of VWAP plots that reset.
Made with the help from scripts of: adam24x, VishvaP, loxx and pmk07. Indicator

Indicator
