Nonparametric Relative Momentum [BackQuant]Nonparametric Relative Momentum
Overview
Nonparametric Relative Momentum is a percentile-rank oscillator that measures where the current price or momentum observation sits relative to its own recent empirical history.
Unlike conventional momentum oscillators that transform price using fixed arithmetic relationships, this indicator uses rank statistics . The current observation is compared directly against the previous values in a rolling window and converted into a percentile score from 0 to 100.
The result answers a simple question:
How extreme is the current observation relative to what this market has actually done recently?
Two calculation modes are available:
Price ranks the selected price source directly.
Momentum first measures price change across a configurable horizon, then ranks that momentum against its own recent history.
The oscillator also includes:
Mid-rank handling for tied observations.
Optional output smoothing.
An EMA signal line.
Configurable overbought and oversold zones.
Stepped intensity colouring as the rank becomes more extreme.
Main-chart candle colouring from the 50 midline regime.
Alerts for midline, extreme-zone and signal-line crossings.
Why “nonparametric”?
In statistics, a parametric method generally assumes that data can be described by a particular distribution or by parameters associated with that distribution.
A nonparametric method does not require the same distributional assumption.
Percentile ranks are a classic example.
The oscillator does not need to assume that recent price changes are:
Normally distributed.
Symmetric.
Constant in volatility.
Characterised by a stable mean and standard deviation.
Instead, it works directly from the ordering of the observed data.
If the current momentum observation is greater than almost every momentum observation in the recent window, it receives a high rank.
If it is lower than almost everything observed recently, it receives a low rank.
This makes the oscillator fundamentally relative to the market’s own recent empirical distribution.
Core calculation
The calculation occurs in three stages:
Select the series to rank.
Calculate its empirical percentile rank.
Optionally smooth that rank and calculate a signal average.
The selected ranking target depends on the Rank Target input.
Price Mode
In Price mode:
Target = Selected Price Source
The current source value is compared with the previous values in the Rank Window.
This answers:
Where is current price positioned within its recent price distribution?
A value near 100 means current price is above almost every observation in the comparison window.
A value near 0 means it is below almost every observation.
A value near 50 means it sits near the middle of its recent distribution.
Because Price mode ranks the price level itself, it behaves somewhat like a stochastic or price-position oscillator, although the calculation is based on empirical ranking rather than highest-lowest range normalisation.
Momentum Mode
Momentum mode first calculates:
Momentum = Source - Source
This measures the absolute price change across the selected Momentum Length.
The resulting momentum series is then percentile-ranked over the Rank Window.
The oscillator therefore answers:
How strong is the current momentum observation compared with recent momentum observations?
This is different from asking whether price itself is historically high or low.
For example, price can be near a recent high while momentum has weakened considerably. In that situation:
Price mode may remain highly ranked.
Momentum mode may fall toward the centre or lower half of the distribution.
Conversely, price does not need to be at a long-term extreme for momentum to rank very highly if the current change is unusually strong relative to recent movements.
Why Momentum mode is different from traditional RSI
The standard Relative Strength Index developed by J. Welles Wilder compares smoothed positive and negative price changes.
Its calculation depends on the relative magnitude of average gains and average losses.
Nonparametric Relative Momentum does not use that formula.
Instead:
A momentum observation is calculated.
That observation is ranked against its own historical sample.
For this reason, Momentum mode can be thought of as a rank-based relative momentum oscillator .
Both traditional RSI and this oscillator are bounded between 0 and 100, but the meaning of those values is different.
For example:
RSI = 90
means the balance of smoothed gains versus losses has produced an RSI reading of 90.
Nonparametric Relative Momentum = 90
means the current momentum observation ranks around the upper end of its recent empirical momentum distribution.
That distinction is important.
Percentile rank calculation
For each bar, the indicator compares the current target with every observation in the preceding Rank Window.
It counts:
How many previous values are below the current value.
How many previous values are exactly equal to it.
The percentile rank is then:
Rank = 100 × (Values Below + 0.5 × Equal Values) / Window Length
This produces an oscillator between 0 and 100.
Why use rank instead of magnitude?
Consider two markets.
Market A may normally move only 0.5% over the selected momentum horizon.
Market B may routinely move 5%.
A raw momentum threshold cannot be interpreted the same way for both.
Ranking changes the question.
Instead of asking:
How many points or percent did this market move?
the oscillator asks:
How unusual is this move relative to this market’s own recent behaviour?
This allows the same 0–100 framework to adapt naturally to different price scales and volatility regimes.
Mid-rank treatment of ties
A simple percentile implementation might count only observations strictly below the current value.
That can distort the result when repeated values occur.
This indicator uses mid-rank treatment .
If historical observations equal the current value, each tie contributes one half rather than being classified entirely above or below.
For example, suppose:
40% of observations are below the current value.
20% are exactly equal.
40% are above.
The mid-rank result is:
40 + 0.5 × 20 = 50
This places the tied observation at the centre of its equal-value group.
Mid-ranks are commonly used in rank-based statistics because they provide a more balanced treatment of ties.
Rank Window
The Rank Window determines how much historical data defines the current empirical distribution.
A shorter Rank Window:
Adapts quickly.
Responds strongly to recent regime changes.
Produces more rapid movement between percentiles.
Can create noisier extreme readings.
A longer Rank Window:
Builds the ranking from a larger sample.
Produces a more stable percentile estimate.
Makes extremes harder to reach.
Responds more slowly when market behaviour changes.
The window therefore controls the memory of the oscillator.
It does not smooth the underlying target directly. It changes the reference distribution against which the target is ranked.
Momentum Length
Momentum Length is used only when Rank Target is set to Momentum.
It controls the horizon over which price change is measured:
Momentum = Current Source - Source from Momentum Length bars ago
Shorter values:
Measure faster momentum.
React to shorter impulses.
Change direction more frequently.
Longer values:
Measure broader displacement.
Focus on more persistent movement.
Ignore more short-term fluctuation.
The Momentum Length and Rank Window perform separate roles.
Momentum Length determines what movement is measured.
Rank Window determines the historical sample against which that movement is judged.
Output Smoothing
The raw percentile rank can optionally be passed through an EMA.
A value of 1 leaves the rank effectively unsmoothed.
Higher values:
Reduce rapid rank fluctuations.
Create a smoother oscillator.
Reduce short-lived extreme readings.
Introduce additional lag.
The smoothing occurs after the percentile calculation.
It does not change how observations are ranked.
The 50 midline
The oscillator is centred around 50.
A value above 50 means the current observation ranks above the midpoint of its recent distribution.
A value below 50 means it ranks below the midpoint.
The interpretation depends on the selected mode.
Price mode above 50
Current price is positioned in the upper half of its recent price distribution.
Price mode below 50
Current price is positioned in the lower half.
Momentum mode above 50
Current momentum is stronger than roughly the middle of its recent momentum observations.
Momentum mode below 50
Current momentum is weaker relative to its recent distribution.
The indicator also uses this midline to colour main-chart candles:
Above or equal to 50 = bullish colour.
Below 50 = bearish colour.
This provides a simple relative-regime view on the price chart.
Percentile extremes
Because the oscillator represents rank rather than an unbounded magnitude, readings near 0 and 100 carry a straightforward interpretation.
Near 100
The current observation is greater than almost every value in the recent comparison window.
Near 0
The current observation is lower than almost every value.
These are empirical extremes.
They do not mean price or momentum cannot become more extreme.
A value near 100 can persist while a strong trend continues because new observations may repeatedly remain near the top of the evolving distribution.
Likewise, readings near 0 can persist during sustained downside momentum.
Overbought and Oversold zones
The default static zones are:
Overbought: 90–100
Oversold: 0–10
These are configurable.
The labels “overbought” and “oversold” describe statistical location, not guaranteed reversal conditions.
An overbought reading means:
The ranked observation is near the top of its recent empirical distribution.
An oversold reading means:
It is near the bottom.
During a range, these areas may help identify local extremes.
During a persistent trend, the oscillator can remain in an extreme zone for extended periods.
The zones should therefore be interpreted together with:
Trend context.
Price structure.
Oscillator direction.
Signal-line behaviour.
Why 90/10 instead of 70/30?
Traditional RSI commonly uses 70 and 30.
That convention does not need to apply to a percentile-rank oscillator.
A rank above 90 means the current observation is in approximately the upper tail of the recent empirical sample, while a reading below 10 represents the lower tail.
Using more extreme default zones makes them intentionally selective.
Users who want broader zones can move the boundaries toward values such as 80 and 20.
Signal line
The white Moving Average line is an EMA of the final oscillator:
Signal = EMA(Percentile Rank Oscillator, Signal Length)
This provides a slower reference against which short-term rank movement can be compared.
Oscillator above signal
The percentile rank is strengthening relative to its own recent smoothed level.
Oscillator below signal
The rank is weakening.
Crossovers can be used to identify changes in short-term momentum within the broader percentile regime.
For example:
A bullish crossover below the oversold zone can indicate rank beginning to recover from an extreme.
A bearish crossover above the overbought zone can indicate deterioration from an upper-tail reading.
A crossover near 50 may represent a more neutral momentum transition.
Signal crosses should not be interpreted independently from oscillator location.
Stepped oscillator colouring
The oscillator uses stepped colour intensity based on its position relative to the 50 midline.
Above 50, colours progressively strengthen as the percentile reaches higher levels.
Below 50, bearish intensity progressively strengthens as the percentile falls.
The main regions are approximately:
50–62.5: modest positive rank.
62.5–75: strengthening positive rank.
75–90: strong positive rank.
90–99: upper-tail extreme.
99–100: exceptional upper-tail rank.
The lower half mirrors this concept:
37.5–50: modest negative rank.
25–37.5: weakening relative state.
10–25: strong negative rank.
1–10: lower-tail extreme.
0–1: exceptional lower-tail rank.
These colours do not introduce additional calculations or signals.
They visually communicate how far the oscillator has moved into its empirical distribution.
Column presentation
The percentile oscillator is plotted as columns around a histogram base of 50.
This means:
Values above 50 extend upward.
Values below 50 extend downward from the midline.
Although the numerical scale remains 0–100, this presentation visually emphasises deviation from the centre of the distribution.
The 50 level therefore functions as the oscillator’s equilibrium reference.
Price mode versus Momentum mode
The two modes answer different questions and should not be treated interchangeably.
Price Mode
Asks:
Where is price relative to its recent distribution?
This makes it useful for:
Range position.
Breakout context.
Relative price extremes.
Stochastic-like analysis.
Momentum Mode
Asks:
Where is current price change relative to the recent distribution of price changes?
This makes it useful for:
Momentum expansion.
Momentum exhaustion.
Relative impulse analysis.
Trend-strength transitions.
Momentum mode can identify weakening momentum before price itself leaves the upper part of its distribution.
Price mode can remain elevated simply because the market is still trading near recent highs.
Example: strong uptrend
Suppose price has been rising steadily.
Price Mode may remain above 90 because current price continually sits near the upper edge of its recent range.
Momentum Mode may behave differently:
It can rise toward 100 during acceleration.
Fall back toward 50 when the trend continues at a more ordinary pace.
Drop below 50 if momentum deteriorates significantly even while price remains relatively high.
This distinction can help separate price location from momentum condition .
Example: volatility regime change
Suppose a market normally changes by only small amounts, then suddenly produces a large directional move.
Raw momentum alone shows a large number.
The percentile rank provides additional context by showing whether that movement is unusual relative to the recent distribution.
If the current momentum is greater than nearly every recent observation, the oscillator moves toward 100.
If the market has already experienced many similarly large moves, the same absolute momentum may receive a much less extreme rank.
The indicator therefore adapts automatically to changing empirical behaviour without requiring fixed momentum thresholds.
Midline crossings
A crossover above 50 indicates the ranked series has moved into the upper half of its recent distribution.
A cross below 50 indicates movement into the lower half.
In Momentum mode, these crossings can be used as a simple relative momentum regime:
Above 50 = comparatively stronger momentum state.
Below 50 = comparatively weaker momentum state.
In Price mode, they indicate whether price is above or below the central portion of its recent rank distribution.
These crossings also control the optional main-chart candle colours.
Extreme-zone crossings
The indicator provides alerts when:
The oscillator crosses upward into the overbought zone.
The oscillator crosses downward into the oversold zone.
These alerts identify entry into an extreme percentile area.
They do not indicate that the extreme has ended.
For reversal-oriented analysis, a trader may instead monitor:
A subsequent exit from the zone.
A signal-line crossover.
Divergence with price.
A break in market structure.
Divergence interpretation
Because Momentum mode ranks momentum rather than price, it can also be useful for examining momentum divergence.
For example:
Price may make a higher high while the oscillator produces a lower percentile peak.
This indicates that the latest momentum observation is less exceptional relative to its recent history than it was during the previous price high.
The reverse can occur at lows.
As with conventional divergence, this is evidence of changing momentum characteristics, not confirmation that price must reverse.
How to use the indicator
1. Relative momentum regime
In Momentum mode, use the 50 midline as a simple regime reference:
Above 50 = positive relative momentum state.
Below 50 = negative relative momentum state.
2. Momentum extremes
Use the configurable zones to identify unusually high or low momentum ranks.
Rather than automatically fading these conditions, determine whether the market is:
Trending.
Exhausting.
Breaking out.
Returning toward equilibrium.
3. Signal-line transitions
Oscillator and signal-line crosses can help identify shorter-term changes in rank direction.
The location of the crossover matters.
A bullish crossover at 5 carries different context from one at 95.
4. Price-distribution analysis
Switch to Price mode when the objective is to measure where the current market sits within its recent price distribution.
This can be useful for:
Breakout analysis.
Range positioning.
Relative high/low detection.
5. Trend confirmation
Momentum remaining consistently above 50 can support an existing bullish trend.
Momentum remaining below 50 can support a bearish trend.
Repeated oscillation around 50 indicates that relative momentum is changing sides frequently.
6. Candle regime colouring
The optional overlay candles make the oscillator’s midline state visible directly on the main price chart.
This can be useful when the oscillator pane is being used primarily for extremes and signal-line analysis.
Input guide
Rank Target
Selects what is percentile-ranked.
Price ranks the source itself.
Momentum ranks its change over the selected Momentum Length.
Rank Window
Controls the empirical comparison sample.
Longer values are smoother and statistically broader. Shorter values adapt more quickly.
Momentum Length
Controls the displacement horizon in Momentum mode.
It has no effect in Price mode.
Output Smoothing
Applies optional EMA smoothing to the percentile rank.
1 produces the raw rank.
Signal Length
Controls the EMA signal line.
Shorter values follow the oscillator more closely. Longer values produce slower crossover signals.
Overbought Zone
Sets the lower boundary of the upper extreme area.
Oversold Zone
Sets the upper boundary of the lower extreme area.
How this differs from RSI
Traditional RSI:
Separates gains and losses.
Smooths their magnitude.
Calculates a relative-strength ratio.
Transforms that ratio onto a 0–100 scale.
Nonparametric Relative Momentum:
Calculates price or momentum directly.
Ranks the current observation against historical observations.
Uses no gain/loss ratio.
Uses no assumed distribution.
The identical 0–100 scale therefore represents a different statistical concept.
How this differs from Stochastic
A conventional stochastic oscillator measures where current price lies between the highest high and lowest low of a window.
Its basic concept is:
(Current - Lowest) / (Highest - Lowest)
Nonparametric Price mode instead asks how many historical observations are below the current price.
This distinction matters because the rank considers the entire empirical ordering of the sample, not only its two extreme endpoints.
Two windows can have identical highs, lows and current price but different internal distributions.
A stochastic calculation can return the same value in both cases, while percentile rank can differ because the number of observations above and below the current price is different.
How this differs from a Z-score
A Z-score measures deviation from a mean in standard-deviation units:
Z = (Current Value - Mean) / Standard Deviation
That calculation depends directly on the sample mean and dispersion.
Percentile rank depends only on ordering.
As a result, an extreme outlier can heavily alter a mean and standard deviation but has much less influence on the ordering of the remaining observations.
This is one of the reasons rank statistics can be useful when financial data contains skew, fat tails or isolated extreme moves.
Strengths
Uses a nonparametric empirical ranking process.
Requires no assumption of normality.
Produces an intuitive bounded 0–100 scale.
Adapts naturally to the recent behaviour of each market.
Supports both price-location and momentum-ranking modes.
Uses mid-ranks for tied observations.
Normalises momentum extremes without relying on fixed point or percentage thresholds.
Includes configurable smoothing and signal analysis.
Provides direct midline regime colouring on the main chart.
Limitations
A percentile rank measures relative position, not absolute magnitude.
A reading of 100 does not indicate how much larger the current observation is than the rest of the sample.
Persistent trends can remain at extreme ranks for extended periods.
Short Rank Windows can generate rapid percentile changes.
Long Rank Windows adapt more slowly to regime shifts.
Momentum mode uses absolute source change rather than percentage return, although ranking substantially reduces scale dependence within a single instrument.
Extreme readings are not automatic reversal signals.
Signal-line crosses can whipsaw in noisy conditions.
The oscillator is reactive and does not forecast future price.
Alerts
The indicator provides alerts for:
Cross Up 50: oscillator enters the upper half of its distribution.
Cross Down 50: oscillator enters the lower half.
Overbought: oscillator crosses upward through the selected upper-zone boundary.
Oversold: oscillator crosses downward through the selected lower-zone boundary.
Bull: oscillator crosses above its signal EMA.
Bear: oscillator crosses below its signal EMA.
Summary
Nonparametric Relative Momentum converts either price or momentum into an empirical percentile rank.
Instead of asking how far an observation is from a moving average, how many standard deviations it sits from a mean, or what ratio of gains to losses produced it, the indicator asks where that observation ranks relative to its own recent history.
In Price mode, it measures the relative location of price within its historical distribution.
In Momentum mode, it first calculates price displacement across a chosen horizon and then measures how exceptional that momentum is relative to recent momentum observations.
A mid-rank procedure handles tied values, optional EMA smoothing controls visual responsiveness, and a separate signal average provides crossover analysis. The 50 midline separates the upper and lower halves of the empirical distribution, while configurable overbought and oversold zones highlight the tails.
The result is a distribution-free relative momentum framework that adapts to the observed behaviour of the market rather than relying on fixed magnitude thresholds or an assumed statistical distribution.
Indicator

Positioning Flow Index by DGTPositioning Flow Index (PFI) - Price & Open Interest Positioning Analysis
Positioning Flow Index (PFI) is a positioning-analysis framework designed to evaluate how price movement and Open Interest interact to reveal changes in market participation and positioning.
Rather than interpreting price direction alone, PFI combines normalized Price and Open Interest changes to identify four distinct positioning regimes:
Long Buildup - Short Buildup - Short Covering - Long Unwinding
The indicator evaluates the magnitude and direction of both Price and Open Interest through Z-score normalization , allowing unusually strong changes to be distinguished from ordinary market fluctuations.
In addition to the Positioning Flow Index itself, PFI provides a Flow State , Signal Strength , Price Sentiment , and an optional State Ribbon to help traders interpret the underlying positioning environment.
The objective is not to produce a simple Buy or Sell signal, but to provide a structured view of whether price movement is being accompanied by increasing or decreasing market participation and how strongly those two dimensions are aligned.
The Positioning Flow Model
Price + Open Interest
Price and Open Interest provide two different perspectives on market behavior.
Price describes the direction and relative strength of the current price movement.
Open Interest describes the change in outstanding derivative positions and provides an additional dimension for evaluating whether market participation is expanding or contracting.
PFI normalizes both dimensions using Z-scores , measuring how unusual the current Price and Open Interest changes are relative to their recent history.
A positive Z-score indicates a move above its recent average, while a negative Z-score indicates a move below its recent average.
This allows the indicator to distinguish between ordinary price/OI fluctuations and more statistically unusual changes in positioning.
Flow State
The Flow State classifies the relationship between Price and Open Interest into four positioning regimes.
LONG BUILDUP (LB)
Price is rising while Open Interest is increasing.
This combination indicates upward price pressure accompanied by expanding participation, a condition commonly associated with new long positioning.
SHORT BUILDUP (SB)
Price is falling while Open Interest is increasing.
This indicates downward price pressure accompanied by expanding participation, commonly associated with new short positioning.
SHORT COVERING (SC)
Price is rising while Open Interest is decreasing.
Price is moving upward while outstanding positions contract, a condition commonly associated with short positions being closed.
LONG UNWINDING (LU)
Price is falling while Open Interest is decreasing.
Price is moving downward while outstanding positions contract, a condition commonly associated with long positions being closed.
When Price and Open Interest do not both exceed the required activity threshold, the market is classified as NEUTRAL .
Neutral does not mean that the market is inactive. It means there is insufficient synchronized Price + Open Interest evidence to assign one of the four directional positioning states.
Positioning Flow Index
The Positioning Flow Index provides a bounded -100 to +100 representation of positioning flow.
Its calculation combines the normalized Open Interest and Price changes through a selectable Flow Model.
Model A — OI × sign(Price)
Open Interest determines the magnitude of the flow while Price determines its direction.
This model emphasizes participation strength and can produce a strong reading even when the price movement itself is relatively small.
Model B — OI × Price
The Open Interest and Price Z-scores are multiplied directly.
This captures the interaction between both dimensions, but unusually large Price Z-scores can have a greater influence on the resulting flow.
Model C — Price Direction × OI Magnitude × Price Confirmation
Price determines directional pressure, Open Interest determines participation magnitude, and the absolute Price Z-score contribution is capped to reduce the influence of extreme price moves.
This model separates the directional role of Price from the participation role of Open Interest and is the default model.
The three models are intentionally provided as different ways of interpreting the same underlying Price/OI relationship rather than as competing signals.
Signal Strength
Not every Flow State carries the same level of evidence.
PFI therefore calculates a Signal Strength based on two independent components:
Participation — derived from the magnitude of the Open Interest Z-score.
Confirmation — derived from the magnitude of the Price Z-score.
Both components are capped at 2σ and combined using their geometric mean:
Signal Strength = √(Participation × Confirmation)
The result is expressed as a percentage and provides a measure of how strongly Price and Open Interest are moving together.
Higher values indicate stronger synchronized evidence.
Importantly, Signal Strength is not a probability that the current move will continue. It measures the strength of the evidence supporting the current Flow State.
Early Flow Warning & Confirmed Signals
PFI separates early developing conditions from confirmed state transitions .
Early Flow Warning uses the live, still-forming candle to identify a potential transition before the candle closes. These warnings are intentionally provisional and may change or disappear as Price or Open Interest changes during the candle.
Confirmed Flow Signals are evaluated only when the candle closes.
Once confirmed, the LB / SB / SC / LU marker is based on the completed candle and does not change afterward.
This distinction allows traders to see developing positioning changes early while maintaining a clearly defined, non-repainting confirmation layer.
The indicator therefore does not attempt to hide the natural evolution of live Price and Open Interest data. Instead, it explicitly separates early information from confirmed information .
Price Sentiment
The optional Price Sentiment component provides an independent view of price behavior.
Price movement is smoothed and normalized over its recent range, then expressed on the same -100 to +100 scale as the Positioning Flow Index.
This allows Price Sentiment and PFI to be compared directly:
Price Sentiment describes the current character of price movement.
PFI incorporates both Price direction and Open Interest positioning.
The two therefore answer different questions and can provide additional context when interpreted together.
Flow State Ribbon
The optional State Ribbon provides a continuous visual representation of the current Flow State directly on the main price chart.
Teal represents Long Buildup.
Red represents Short Buildup.
Yellow represents Short Covering.
Orange represents Long Unwinding.
Gray represents Neutral conditions.
The intensity of the ribbon is influenced by Signal Strength, allowing stronger positioning conditions to stand out visually without requiring additional labels on every bar.
Flow Dashboard
The optional Flow Dashboard summarizes the current positioning environment through five key readings:
• Flow State — the current Price/OI positioning regime.
• Signal Strength — the strength of synchronized Price + OI evidence.
• PFI — the bounded Positioning Flow Index.
• Price Z-Score — how unusual the current price movement is relative to its recent history.
• OI Z-Score — how unusual the current Open Interest change is relative to its recent history.
Together, these readings provide both the classification and the underlying measurements used to interpret it.
How to Read PFI
PFI is best used as a contextual positioning tool rather than a standalone entry system.
A strong Long Buildup suggests rising price accompanied by expanding Open Interest.
A strong Short Buildup suggests falling price accompanied by expanding Open Interest.
A strong Short Covering condition suggests rising price while Open Interest contracts.
A strong Long Unwinding condition suggests falling price while Open Interest contracts.
The Signal Strength helps distinguish stronger synchronized conditions from weaker ones, while the PFI provides a continuous measure of directional positioning flow.
As with all market-structure and positioning analysis, these states describe the current relationship between Price and Open Interest—they do not guarantee future price direction.
Important Notes
PFI is designed for markets where Open Interest data is available.
The Flow State is based on the relationship between Price and Open Interest and should not be interpreted as a direct measure of individual trader intent.
Early Flow Warnings are intentionally repaintable during the active candle because they use live, developing Price and Open Interest data.
Confirmed Flow markers are non-repainting because they are generated only after the candle has closed.
The selected Flow Model affects the PFI calculation, while the Flow State and Signal Strength provide separate measurements of the underlying Price/OI relationship.
Summary
Positioning Flow Index brings Price and Open Interest together into a structured framework for analyzing market positioning.
Rather than asking only "Is price going up or down?" , PFI asks a broader question:
"What is happening to market positioning as price moves?"
By combining Flow State , Signal Strength , Positioning Flow Index , Price Sentiment , and confirmed versus early signals , PFI provides a multi-dimensional view of positioning that can be incorporated into discretionary market analysis and existing trading frameworks.
DISCLAIMER
This script is intended for informational and educational purposes only. It does not constitute financial, investment, or trading advice. All trading decisions made based on its output are solely the responsibility of the user.
Indicator

VWAP-MACD with Volume ConfirmationVWAP-MACD with Volume Confirmation
VWAP-MACD+ replaces the price series inside a classic MACD calculation with an anchored VWAP series, then adds a volume-strength filter so that crossover signals are only flagged as "confirmed" when they occur on above-average volume. The result is a momentum oscillator that reflects shifts in the volume-weighted average price rather than raw closing price, with a built-in sanity check against low-conviction crosses.
How it works
Anchored VWAP — VWAP is calculated from hlc3 * volume, accumulated and reset at the start of each new period based on the selected anchor (Session, Week, or Month). This is the same anchoring logic as PulseWire's native VWAP, just computed manually so it can feed into the MACD below.
VWAP-based MACD — instead of EMA-ing close like a standard MACD, this script EMAs the VWAP series itself (fast length default 12, slow length default 26). The difference between the fast and slow EMAs of VWAP is the MACD line; a further EMA of that (default 9) is the signal line; their difference is the histogram. Because VWAP is smoother and volume-weighted, the resulting MACD reacts to shifts in the "fair value" price rather than every tick of noise in the close.
Volume Momentum Filter — each bar's volume is compared to its moving average (default 20-period SMA) to get a relative volume ratio. Bars are classified as strong (≥1.5x average), weak (<0.75x average), or normal, and the histogram's color intensity reflects this — brighter columns mean the current move is backed by stronger volume, faded columns mean it's on thin volume.
Volume-Confirmed Crossovers — a standard MACD/signal-line crossover only becomes a plotted "confirmed" signal when relative volume is at or above average (≥1.0x). This is meant to filter out crossovers that happen on quiet, low-conviction bars.
Reading the indicator
Blue line — VWAP-based MACD line.
Orange line — signal line (EMA of the MACD line).
Histogram columns — MACD minus signal, colored green above zero / red below zero, with intensity scaled by relative volume (bright = strong volume, faded = weak volume, mid = normal).
Green up-triangle — bullish crossover confirmed by volume.
Red down-triangle — bearish crossover confirmed by volume.
Zero line — dashed gray reference; crosses of the MACD line through zero can also be used as a secondary trend-context read, though this script's plotted signals are specifically the signal-line crossovers.
Suggested use
This is a trend/momentum tool built around volume-weighted price rather than raw close, intended for:
Traders who already use VWAP as an intraday or swing fair-value reference and want a momentum oscillator derived from that same series instead of close price
Filtering out MACD crossovers that occur on low-volume, low-conviction bars by relying on the "confirmed" triangle markers rather than every raw crossover
Combining with the anchor period that matches your trading horizon — Session for intraday, Week or Month for swing/position context
As with any momentum oscillator, it works best alongside broader trend or structure context (e.g., higher-timeframe trend, support/resistance) rather than as a standalone signal — volume confirmation reduces noise but doesn't guarantee follow-through.
Inputs
Fast Length / Slow Length / Signal Smoothing — EMA lengths for the VWAP-MACD calculation
VWAP Anchor Period — Session, Week, or Month
Volume MA Lookback — averaging period for the relative volume filter
Enable Volume Confirmation Shading — toggles both the histogram's volume-based color intensity and the volume requirement on confirmed crossover signals
Alerts
Two alert conditions are built in:
VWAP-MACD Bullish Cross (Vol Confirmed)
VWAP-MACD Bearish Cross (Vol Confirmed) Indicator

TEWMA Trend Strength - [JTCAPITAL]TEWMA Trend Strength - is a modified way to use Triple Exponentially Weighted Moving Averages (TEMA), Weighted Moving Averages (WMA), Average True Range (ATR), and EMA smoothing to measure the strength and direction of a trend.
Instead of simply determining whether price is above or below a single moving average, the indicator measures how far the current closing price is positioned from a composite trend baseline and normalizes that distance by market volatility using ATR. This produces a dimensionless trend-strength value that can be compared across different volatility environments.
The indicator combines two independently calculated TEWMA structures using different lengths. The first TEWMA is built from the selected source using the primary length, while the second uses a longer dynamically calculated length. These two TEWMA values are then averaged into one composite baseline.
The resulting distance between price and this composite baseline is divided by ATR. This normalization is important because a fixed price distance does not have the same meaning in every market or volatility regime. A move of 500 points can be extremely significant during a quiet market while being relatively insignificant during a highly volatile market. By measuring the distance relative to ATR, the indicator expresses the displacement in terms of the market's recent typical movement range.
A second, EMA-smoothed version of this strength measurement is also calculated. This provides a slower representation of the underlying trend-strength state while the raw strength value remains more responsive to current price movement.
The result is an oscillator designed to show both trend direction and relative trend strength in a single framework.
The indicator works by calculating in the following steps:
Selecting the Price Source
The script begins with a user-selectable source, which defaults to the closing price.
This source is used as the foundation for the entire trend calculation. Because the source is configurable, the underlying calculation does not have to be restricted to the close. The selected source can be changed to other available price series depending on how the user wants the trend baseline to respond to market data.
Using a configurable source makes the underlying TEWMA calculation adaptable without changing the mathematical structure of the indicator.
Defining the Primary TEWMA Length
The user specifies the primary moving-average length through the Length parameter.
This length controls the first trend component of the indicator. A shorter length makes the underlying moving averages react more quickly to price changes, while a longer length produces a slower and more stable representation of the underlying trend.
The default value is 50.
Creating the Second TEWMA Length
The script then creates a second length by multiplying the primary length by the Multiplier parameter.
The calculation is:
Second Length = Primary Length × Multiplier
The resulting value is rounded to the nearest whole number because the moving-average functions require an integer length.
With the default settings:
50 × 2 = 100
Therefore, the first TEWMA uses a length of 50 while the second TEWMA uses a length of 100.
This creates two different trend perspectives: one more responsive and one slower.
Calculating the First Weighted Moving Average
The selected source is first processed through a Weighted Moving Average using the primary length.
A WMA assigns progressively different weights to the observations within its calculation window, giving more importance to more recent observations than older ones.
This means the WMA can react to recent price changes more quickly than a traditional SMA while still providing a smoother representation of price than using raw closing prices.
The first WMA therefore acts as the input into the first TEMA calculation.
Calculating the Second Weighted Moving Average
The same process is repeated using the dynamically calculated second length.
Because this length is normally larger than the primary length, the second WMA represents a slower-moving version of the underlying price structure.
With the default settings, the first WMA uses 50 periods while the second uses 100 periods.
This creates two different smoothing horizons before the data reaches the TEMA calculations.
Applying Triple Exponential Moving Average to the First WMA
The first WMA is passed through a Triple Exponential Moving Average (TEMA).
TEMA uses multiple stages of exponential smoothing to reduce the lag associated with conventional moving averages.
Conceptually, TEMA can be represented as:
TEMA = 3 × EMA1 - 3 × EMA2 + EMA3
Where:
EMA1 is the first EMA of the input.
EMA2 is an EMA of EMA1.
EMA3 is an EMA of EMA2.
The combination of these three stages is designed to reduce lag while retaining smoothing characteristics.
In this indicator, however, TEMA is not applied directly to raw price. It is applied to the already weighted price series produced by the WMA.
This creates a two-stage structure:
Price Source → WMA → TEMA
The resulting value is the first TEWMA component.
Applying Triple Exponential Moving Average to the Second WMA
The second WMA is independently passed through another TEMA calculation using the longer second length.
This produces the second TEWMA component.
The second component reacts more slowly because its underlying WMA uses a longer period. Consequently, it provides a broader representation of the market's trend structure.
The two components therefore serve different purposes within the same baseline:
* The shorter TEWMA provides a more responsive representation of the current trend.
* The longer TEWMA provides a slower representation of the broader trend structure.
Combining the Two TEWMA Components
The two TEWMA values are then averaged together.
The calculation is:
TEWMA = (TEWMA1 + TEWMA2) / 2
This creates a composite trend baseline rather than relying on only one moving-average length.
The benefit of averaging two different smoothing horizons is that the resulting baseline incorporates both a faster and a slower view of price structure.
The shorter component helps keep the baseline responsive, while the longer component provides additional stability.
This combination can reduce the dependence on a single arbitrary moving-average period and creates a more balanced representation of the underlying trend.
Calculating Average True Range
The script independently calculates Average True Range (ATR) using the user-defined ATR Length .
The default ATR length is 40.
ATR measures the recent trading range of the market while accounting for gaps between consecutive bars through the concept of True Range.
True Range is based on the greatest of:
* Current High minus Current Low
* Absolute value of Current High minus Previous Close
* Absolute value of Current Low minus Previous Close
ATR then smooths these True Range values over the selected period.
In this indicator, ATR is not being used as a traditional stop-loss or entry mechanism. Instead, it is used as a volatility normalization factor.
Calculating the Raw Trend Strength
The script measures the distance between the current closing price and the composite TEWMA.
The calculation is:
Strength = (Close - TEWMA) / ATR
This is one of the most important calculations in the indicator.
First, the script calculates:
Close - TEWMA
This determines whether price is above or below the composite trend baseline and by how much.
If the result is positive, the closing price is above the TEWMA.
If the result is negative, the closing price is below the TEWMA.
The difference is then divided by ATR.
This converts the raw price distance into a volatility-adjusted measurement.
For example, a distance of 100 price units does not have the same significance in a market with an ATR of 20 as it does in a market with an ATR of 200.
When ATR is 20:
100 / 20 = 5
When ATR is 200:
100 / 200 = 0.5
The same absolute price distance therefore produces very different strength readings depending on the market's volatility.
This is the primary reason for incorporating ATR into the strength calculation.
Interpreting the Zero Line
Because the strength calculation is based on Close - TEWMA , the zero line has a direct mathematical meaning.
When:
Strength > 0
the closing price is above the composite TEWMA.
When:
Strength < 0
the closing price is below the composite TEWMA.
Therefore, the zero line represents the point where price and the composite TEWMA are equal.
This makes the zero line the central directional reference of the oscillator.
Smoothing the Strength Measurement
The raw strength value is then passed through an Exponential Moving Average.
The smoothing period is controlled by Smoothing Length , which defaults to 50.
The calculation can therefore be represented as:
Smoothed Strength = EMA(Strength, Smoothing Length)
Unlike the raw strength measurement, which reacts directly to changes in the current price-to-TEWMA relationship, the smoothed line incorporates previous strength values.
Because EMA gives greater weight to more recent observations, it remains responsive while filtering out some of the shorter-term fluctuations in the raw oscillator.
This creates two complementary views:
* Raw Strength shows the more immediate price displacement from the TEWMA.
* Smoothed Strength shows a slower representation of the underlying strength condition.
Assigning the Raw Strength Trend Color
The raw strength line changes color according to whether its value is above or below zero.
When strength is positive, the line uses the bullish color.
When strength is negative, the line uses the bearish color.
The color therefore directly corresponds to the mathematical relationship between price and the composite TEWMA.
It does not represent a separate calculation or additional signal filter.
Assigning the Smoothed Strength Trend Color
The same directional concept is applied to the smoothed strength line.
When the smoothed strength is above zero, it receives the bullish color.
When the smoothed strength is below zero, it receives the bearish color.
This makes it possible to visually distinguish the current normalized strength state from the slower smoothed state.
Plotting the Raw Strength
The raw strength value is plotted as the primary oscillator.
Because the indicator is declared with overlay = false , the oscillator is displayed in its own pane rather than directly over the price chart.
The raw strength plot uses a thicker line to emphasize the more responsive component of the calculation.
Filling Between Raw Strength and Zero
The script also creates an invisible zero reference plot and fills the area between the raw strength line and zero.
The fill follows the same bullish or bearish color assignment as the raw strength line.
This makes positive and negative deviations visually easier to identify.
When the oscillator is above zero, the area between the strength line and zero represents positive displacement from the TEWMA.
When it is below zero, the corresponding area represents negative displacement.
Plotting the Smoothed Strength
The smoothed strength is plotted separately using a thinner line.
Because this line is an EMA of the raw strength, it reacts more gradually to changes.
This makes it useful for visually separating short-term fluctuations in normalized trend strength from the broader strength condition represented by the smoothed value.
Filling Between Smoothed Strength and Zero
The indicator also fills the area between the smoothed strength line and zero.
The fill color follows whether the smoothed strength is positive or negative.
Consequently, the oscillator visually contains two layers of information:
* The raw strength component.
* The smoothed strength component.
Defining the Upper Strength Threshold
The Upper parameter defines a positive threshold for the background strength condition.
Its default value is 1.
The script checks whether the raw strength exceeds this threshold:
Strength > Upper
When that condition is true, the chart background receives a bullish background highlight.
The same upper threshold is also applied to the smoothed strength:
Smoothed Strength > Upper
This means the background can identify situations where normalized strength has moved beyond the selected positive threshold.
Defining the Lower Strength Threshold
The Lower parameter defines the negative threshold.
Its default value is -1.
The raw strength is checked against:
Strength < Lower
and the smoothed strength is checked against:
Smoothed Strength < Lower
When either respective condition is met, the corresponding bearish background condition is applied.
The default range therefore places the main strength thresholds at approximately +1 and -1 ATR of normalized displacement from the composite TEWMA.
Background Regime Visualization
The script uses the threshold calculations to create background highlights on the chart.
The raw strength produces a bullish background condition when it exceeds the upper threshold and a bearish background condition when it falls below the lower threshold.
The smoothed strength uses the same threshold framework.
Values between the upper and lower thresholds do not receive the bullish or bearish threshold highlight.
This creates a visual distinction between ordinary positive/negative displacement and stronger normalized displacement.
Buy and Sell Conditions:
This indicator does not contain explicit buy or sell conditions, entries, exits, alerts, or trade execution logic.
Instead, it is designed as a trend-strength oscillator .
The primary directional interpretation comes from the zero line:
* When the raw strength is above 0, price is above the composite TEWMA.
* When the raw strength is below 0, price is below the composite TEWMA.
* When the smoothed strength is above 0, the smoothed trend-strength state is positive.
* When the smoothed strength is below 0, the smoothed trend-strength state is negative.
The upper and lower thresholds provide an additional measurement of the magnitude of the normalized displacement:
* Strength above the upper threshold indicates that price is positioned more than the selected positive ATR multiple above the composite TEWMA.
* Strength below the lower threshold indicates that price is positioned more than the selected negative ATR multiple below the composite TEWMA.
The smoothed line can be used to observe whether the broader strength condition agrees with the raw strength measurement.
For example, a user may choose to interpret a positive raw strength together with positive smoothed strength as stronger directional alignment than a positive raw strength value occurring while the smoothed measurement remains negative.
However, these are interpretations of the indicator's measurements rather than coded buy or sell rules. The script itself does not automatically define a trade entry simply because one of these conditions occurs.
This distinction is important because the indicator measures market structure and normalized trend strength rather than providing a complete trading strategy.
Features and Parameters:
* Source - Selects the price series used as the input for the WMA calculations. The default source is Close.
* Length - Defines the primary length used for the first WMA and TEMA calculation. The default value is 50.
* Multiplier - Multiplies the primary length to determine the second TEWMA length. The default value is 2. With a Length of 50, this produces a second length of 100.
* ATR Length - Determines the period used to calculate ATR for volatility normalization. The default value is 40.
* Smoothing Length - Determines the EMA period used to smooth the raw strength measurement. The default value is 50.
* Upper - Defines the positive normalized-strength threshold used for the bullish background condition. The default value is 1.
* Lower - Defines the negative normalized-strength threshold used for the bearish background condition. The default value is -1.
* Raw Strength - Displays the current ATR-normalized distance between closing price and the composite TEWMA.
* Smoothed Strength - Displays an EMA-smoothed version of the raw strength measurement.
* Zero Line - Represents the point where closing price is equal to the composite TEWMA.
* Threshold Backgrounds - Visually highlights situations where raw or smoothed strength exceeds the configured upper or lower thresholds.
Specifications:
Weighted Moving Average (WMA)
The Weighted Moving Average is a moving average that assigns different weights to the observations within its calculation period.
More recent values receive greater influence than older values.
Compared with a Simple Moving Average, which gives every observation the same weight, WMA emphasizes the more recent portion of the selected price history.
In this indicator, WMA is used as the first smoothing stage before the data enters the TEMA calculation.
This creates a smoother input for TEMA while retaining greater responsiveness to recent price changes than an equally weighted average.
Triple Exponential Moving Average (TEMA)
Triple Exponential Moving Average is a multi-stage exponential smoothing method designed to reduce the lag that can occur with conventional moving averages.
The underlying calculation uses three consecutive EMA stages:
EMA1 = EMA(Input)
EMA2 = EMA(EMA1)
EMA3 = EMA(EMA2)
These are combined approximately as:
TEMA = 3 × EMA1 - 3 × EMA2 + EMA3
The mathematical combination attempts to compensate for some of the lag introduced by repeated exponential smoothing.
In this indicator, TEMA is applied after WMA rather than directly to price.
This creates the specific structure:
Selected Source → WMA → TEMA
That combination is the basis of the indicator's TEWMA concept.
TEWMA
TEWMA in this script refers to the combination of a Weighted Moving Average and a Triple Exponential Moving Average.
Each TEWMA component is therefore produced through a WMA followed by TEMA.
The script creates two separate TEWMA values using different lengths.
The first uses the primary length.
The second uses the primary length multiplied by the user-defined multiplier.
The two resulting values are then averaged.
This gives the final baseline a combination of a faster and slower trend perspective.
Dual-Length TEWMA Structure
The indicator does not rely on a single TEWMA.
Instead, it calculates:
TEWMA1 = TEMA(WMA(Source, Length), Length)
and:
TEWMA2 = TEMA(WMA(Source, Length2), Length2)
where:
Length2 = round(Length × Multiplier)
The two values are then averaged.
This is important because a single moving-average length represents only one smoothing horizon.
The dual-length structure allows the composite baseline to incorporate both a more responsive trend component and a slower trend component.
The averaging process creates a single reference value from those two perspectives.
Composite TEWMA
The final TEWMA is calculated as:
TEWMA = average(TEWMA1, TEWMA2)
or mathematically:
TEWMA = (TEWMA1 + TEWMA2) / 2
This composite value acts as the central trend baseline of the entire indicator.
Every raw strength value is calculated relative to this baseline.
Therefore, the TEWMA is not simply plotted as a moving average for visual reference; it directly determines the numerator of the strength calculation.
Average True Range (ATR)
Average True Range is a volatility measurement that estimates the typical trading range of the market over a selected period.
It is based on True Range, which accounts for both the current candle's high-low range and gaps relative to the previous closing price.
The ATR is used here as a normalization factor .
This is a critical part of the indicator because the raw distance between price and TEWMA is not directly comparable across different volatility conditions.
Dividing the price displacement by ATR expresses the distance in volatility-adjusted terms.
The resulting value can therefore be interpreted as the approximate number of ATR units that price is positioned above or below the composite TEWMA.
ATR Normalization
The core normalization is:
(Close - TEWMA) / ATR
The numerator determines direction and absolute displacement.
The denominator determines the scale of the market's recent volatility.
This combination allows the indicator to transform a raw price difference into a normalized strength measurement.
A positive result means price is above the TEWMA.
A negative result means price is below the TEWMA.
The magnitude indicates how large that displacement is relative to ATR.
Strength
Strength is the primary oscillator produced by the script.
Its exact calculation is:
Strength = (Close - TEWMA) / ATR
This value combines three important concepts:
* Price direction relative to the trend baseline.
* Distance from the trend baseline.
* Current market volatility.
The result is a normalized oscillator rather than a value expressed directly in price units.
Zero Line
The zero line is mathematically significant because it represents the point where:
Close = TEWMA
If the closing price moves above the TEWMA, strength becomes positive.
If the closing price moves below the TEWMA, strength becomes negative.
The zero line therefore separates positive and negative trend displacement.
EMA
The Exponential Moving Average assigns more weight to recent observations while retaining information from previous values.
In this script, EMA is used to smooth the calculated strength rather than the original price.
This distinction is important.
The indicator first calculates the complete ATR-normalized strength measurement and only then applies EMA smoothing.
The structure is therefore:
Price → TEWMA → ATR Normalized Strength → EMA
This allows the smoothing process to operate directly on the final trend-strength measurement.
Smoothed Strength
Smoothed strength is calculated as:
EMA(Strength, Smooth Length)
Because the input to the EMA is already normalized by ATR, the smoothed line represents the smoothed evolution of volatility-adjusted distance from the composite TEWMA.
This can help distinguish persistent strength from shorter-lived fluctuations in the raw oscillator.
The smoothing length determines how quickly the line responds.
A shorter smoothing length causes the smoothed measurement to react more quickly, while a longer smoothing length makes it more gradual.
Upper Threshold
The upper threshold determines when the strength measurement is considered sufficiently positive to trigger the bullish background condition.
With the default value of 1, the condition is:
Strength > 1
Because strength is normalized by ATR, this means the closing price is more than approximately one ATR above the composite TEWMA according to the current ATR calculation.
The same threshold is applied independently to the smoothed strength.
The threshold itself does not create a buy signal.
Lower Threshold
The lower threshold determines when the strength measurement enters the corresponding negative threshold region.
With the default value of -1, the condition is:
Strength < -1
This means the closing price is positioned more than approximately one ATR below the composite TEWMA.
The same concept is applied to the smoothed strength.
The lower threshold therefore acts as a normalized downside-strength boundary rather than a coded sell signal.
Volatility Normalization
Volatility normalization is one of the key concepts behind the indicator.
Without ATR normalization, the calculation would simply measure:
Close - TEWMA
That value is expressed in absolute price units.
By dividing it by ATR, the script asks a different question:
"How large is the price displacement relative to the market's recent typical range?"
This makes the strength value dependent on both price displacement and volatility.
That combination is particularly relevant when comparing periods in which the market's volatility changes substantially.
Trend Direction
The directional component of the indicator comes directly from the sign of the normalized strength.
Positive values indicate that price is above the composite TEWMA.
Negative values indicate that price is below the composite TEWMA.
The indicator therefore does not require a separate bullish/bearish calculation. Direction is inherently contained within the numerator of the strength formula.
Trend Strength
Trend strength is represented by the magnitude of the normalized value.
A value close to zero indicates that price is relatively close to the composite TEWMA when measured against ATR.
A larger positive value indicates greater positive displacement relative to ATR.
A larger negative value indicates greater negative displacement relative to ATR.
It is therefore important to distinguish direction from magnitude :
* The sign indicates which side of the TEWMA price is on.
* The magnitude indicates how far price is displaced relative to ATR.
Raw Strength vs. Smoothed Strength
The two oscillator components provide different information.
The raw strength responds directly to the latest relationship between closing price, TEWMA, and ATR.
The smoothed strength incorporates previous strength values through EMA smoothing.
This creates a useful distinction between immediate and persistent conditions.
A rapidly changing raw strength can reveal a developing change in the price-to-trend relationship, while the smoothed value can provide a slower representation of whether that change is becoming established.
The script therefore combines responsiveness and stability without requiring a second independent indicator.
Why Combine WMA and TEMA?
WMA and TEMA perform different roles in the calculation.
WMA provides weighted smoothing that places greater emphasis on recent observations.
TEMA then applies a multi-stage exponential smoothing structure intended to reduce lag compared with conventional moving averages.
Using them sequentially creates a trend baseline that is smoothed while still designed to remain responsive to changes in price.
The purpose is not simply to combine two moving-average names, but to create a specific transformation of the selected source before it is used in the strength calculation.
Why Use Two TEWMA Lengths?
A single moving-average length forces the indicator to represent trend using one specific time horizon.
The dual-length structure provides two different perspectives.
The shorter TEWMA can respond more quickly to changes in price structure.
The longer TEWMA changes more gradually and represents a broader trend component.
Averaging them produces the composite TEWMA used by the strength calculation.
This makes the baseline less dependent on a single smoothing horizon and combines faster and slower trend information into one reference value.
Why Combine TEWMA With ATR?
The TEWMA establishes the trend reference.
ATR establishes the volatility scale.
These measurements answer different questions.
The TEWMA asks:
"Where is the smoothed trend baseline?"
ATR asks:
"How large are the market's typical recent price movements?"
The strength calculation combines those two concepts by measuring the distance between price and trend baseline in ATR units.
This is what transforms the indicator from a simple moving-average distance oscillator into a volatility-adjusted trend-strength measurement.
Why Add EMA Smoothing to the Strength Measurement?
The raw strength calculation can fluctuate as price moves around the composite TEWMA.
Applying an EMA after normalization provides a second representation of that strength.
Importantly, the EMA is not smoothing the original price before the TEWMA calculation. It is smoothing the completed strength measurement.
This means the smoothed line represents the recent history of the normalized trend-strength state itself.
The combination therefore creates two layers:
Raw Strength = current normalized displacement
Smoothed Strength = smoothed normalized displacement
How the Components Work Together
The complete calculation can be simplified into the following chain:
Selected Source
↓
WMA using Primary Length
↓
TEMA using Primary Length
↓
TEWMA 1
And simultaneously:
Selected Source
↓
WMA using Primary Length × Multiplier
↓
TEMA using the Longer Length
↓
TEWMA 2
The two are then combined:
TEWMA 1 + TEWMA 2
↓
Average
↓
Composite TEWMA
At the same time:
High, Low and Close
↓
True Range
↓
ATR
The final strength calculation then becomes:
(Close - Composite TEWMA) / ATR
The resulting strength value is finally passed through:
EMA(Strength, Smoothing Length)
to create the smoothed strength measurement.
The entire indicator can therefore be summarized as:
Weighted price smoothing → TEMA lag reduction → dual-length trend baseline → ATR volatility normalization → strength oscillator → EMA strength smoothing
Visual Interpretation
The indicator uses several visual elements to make the calculations easier to interpret.
The raw strength line changes color according to whether it is above or below zero.
The smoothed strength line independently changes color according to its own relationship with zero.
The areas between each oscillator and the zero line are filled using the corresponding directional color.
The background highlights are reserved for conditions where the selected upper or lower threshold is exceeded.
This creates a visual hierarchy:
* Zero line = directional reference.
* Raw strength = immediate normalized displacement.
* Smoothed strength = slower strength state.
* Upper/lower thresholds = stronger normalized displacement regions.
* Background highlights = visual identification of threshold conditions.
Using the Indicator
The indicator can be used as a contextual trend-strength tool rather than as a standalone automated trading system.
The zero line can be used to identify whether price is currently above or below the composite TEWMA.
The raw strength can be observed when a trader wants a more responsive measurement of changes in the price-to-trend relationship.
The smoothed strength can be observed when a trader wants a slower representation of that same relationship.
The upper and lower thresholds can be adjusted to change how extreme a normalized displacement must become before the background highlights the condition.
Increasing the absolute threshold values makes the highlighted conditions more selective because a larger normalized displacement is required.
Reducing the absolute threshold values makes the threshold conditions easier to reach.
Similarly, changing the TEWMA lengths changes the responsiveness of the underlying trend baseline, while changing the ATR length changes the volatility reference used for normalization.
The smoothing length controls how quickly the smoothed strength responds to changes in the raw strength.
These parameters therefore influence different parts of the calculation rather than simply changing the same signal in different ways.
Important Considerations
This indicator measures the relationship between price, a composite TEWMA trend baseline, and ATR-based volatility.
It does not predict future prices and does not guarantee that a trend will continue after a strength condition appears.
A strong positive strength value means that price is currently positioned substantially above the composite TEWMA relative to the calculated ATR. It does not mathematically guarantee that price will continue higher.
Likewise, a strong negative value means that price is substantially below the composite TEWMA relative to ATR, but it does not guarantee continued downside movement.
The indicator also does not contain position sizing, stop-loss, take-profit, trade execution, or backtesting logic.
It should therefore be understood as a trend-strength and market-context tool , rather than a complete trading strategy.
Default Calculation Structure
With the default parameters, the indicator uses:
* Source: Close
* Primary Length: 50
* Multiplier: 2
* Secondary Length: 100
* ATR Length: 40
* Smoothing Length: 50
* Upper Threshold: 1
* Lower Threshold: -1
This results in a composite trend baseline constructed from 50-period and 100-period WMA-to-TEMA structures, followed by ATR normalization using a 40-period ATR and EMA smoothing of the resulting strength value using a 50-period EMA.
The default +1 and -1 thresholds represent positive and negative normalized displacement levels around the composite TEWMA.
Summary
TEWMA Trend Strength combines multiple calculations into one normalized trend-strength framework.
Rather than using a single moving average and simply checking whether price is above or below it, the script first constructs two TEWMA components using different lengths, averages them into a composite trend baseline, measures the distance between closing price and that baseline, and then normalizes that distance by ATR.
The result is a strength value where both direction and magnitude are meaningful.
The zero line identifies the side of the composite TEWMA on which price is currently positioned.
The magnitude of the value expresses that displacement relative to recent volatility.
The additional EMA smoothing provides a slower view of the strength condition, while the configurable upper and lower thresholds provide a visual way to identify larger normalized deviations.
The combination of WMA + TEMA creates the underlying trend representation, the dual-length structure combines faster and slower trend information, ATR converts the price displacement into a volatility-adjusted measurement, and EMA smoothing provides a second, slower representation of the resulting strength.
Together, these components form a single oscillator designed to help visualize trend direction, normalized trend strength, and the persistence of that strength within one calculation framework.
Enjoy!
Indicator

Equalhigh JAPANESE TRIPLE RCIEQUALHIGH — JAPANESE TRIPLE RCI 9/26/52
OVERVIEW
This indicator implements the triple Rank Correlation Index configuration commonly used in Japanese technical analysis.
It combines three RCI horizons:
• RCI 9 — short-term momentum
• RCI 26 — swing direction
• RCI 52 — underlying trend
Unlike RSI, RCI does not primarily measure the magnitude of price changes. It measures how closely the chronological order of the bars corresponds to the ranked order of their prices.
The indicator is designed to identify:
• Progressive market reversals
• Momentum recoveries after pullbacks
• Bullish or bearish multi-horizon alignment
• Trend deterioration
• Choppy and conflicting market conditions
CALCULATION
RCI is based on Spearman’s rank correlation between:
1. The chronological rank of each bar
2. The price rank of each bar
The result is scaled from −100 to +100.
• +100 indicates a perfectly ordered upward movement.
• −100 indicates a perfectly ordered downward movement.
• Values near zero indicate weak directional organization or conflicting price action.
This implementation calculates the full Spearman rank correlation and assigns an average rank to tied prices.
INDICATOR LINES
CYAN — RCI 9: SHORT-TERM IMPULSE
RCI 9 reacts quickly to changes in momentum. It is useful for detecting early rebounds, short-term exhaustion and the first phase of a possible reversal.
ORANGE — RCI 26: SWING DIRECTION
RCI 26 confirms whether the short-term movement is developing into a more meaningful swing.
PURPLE — RCI 52: UNDERLYING TREND
RCI 52 is the slowest component. It represents the broader directional structure and acts as the main trend filter.
KEY LEVELS
+80: Upper extreme zone
+50: Strong positive momentum
0: Directional equilibrium
−50: Strong negative momentum
−80: Lower extreme zone
An extreme RCI reading does not automatically mean that price must reverse. A strong trend can keep the RCI near +80 or −80 for an extended period.
SIGNALS
R+ — EARLY BULLISH REVERSAL
An R+ signal appears when:
• RCI 9 crosses upward out of the lower extreme zone
• RCI 26 is already rising
This identifies an early improvement in price organization. It is not a complete trend confirmation and should ideally be supported by price action, volume or a support level.
R− — EARLY BEARISH REVERSAL
An R− signal appears when:
• RCI 9 crosses downward out of the upper extreme zone
• RCI 26 is already falling
This indicates early deterioration in short-term momentum.
A+ — NEW BULLISH ALIGNMENT
An A+ signal appears when RCI 9, RCI 26 and RCI 52 become positive simultaneously.
This confirms that short-term momentum, the swing structure and the underlying trend are all on the bullish side of equilibrium.
A− — NEW BEARISH ALIGNMENT
An A− signal appears when all three RCI horizons become negative simultaneously.
This confirms bearish alignment across the three observed time horizons.
PRACTICAL INTERPRETATION
STRONG BULLISH REGIME
• RCI 52 is above zero
• RCI 26 is above zero or recovering
• RCI 9 moves out of a temporary pullback
• An R+ or A+ signal is supported by bullish price action
STRONG BEARISH REGIME
• RCI 52 is below zero
• RCI 26 is below zero or deteriorating
• RCI 9 turns down after a temporary recovery
• An R− or A− signal is supported by bearish price action
POSSIBLE PROGRESSIVE REVERSAL
A bullish reversal often develops in stages:
1. RCI 9 turns upward
2. RCI 26 begins to recover
3. RCI 52 stabilizes or turns upward
4. All three RCIs eventually move above zero
The bearish sequence is the opposite.
CHOPPY OR LOW-CONVICTION MARKET
When the three lines repeatedly cross each other around zero, the market lacks a stable directional structure. Trend-following signals are generally less reliable in this environment.
SUGGESTED WORKFLOW FOR SWING TRADING
For a potential long setup:
1. Confirm that price is near support or breaking above resistance.
2. Look for an R+ early reversal signal.
3. Check that RCI 26 is rising.
4. Prefer situations where RCI 52 is positive, stabilizing or improving.
5. Use A+ as stronger multi-horizon confirmation.
6. Define risk with price structure or an ATR-based stop.
For a potential short setup, apply the opposite conditions.
DEFAULT SETTINGS
• Short RCI: 9
• Medium RCI: 26
• Long RCI: 52
• Source: Close
• Extreme level: 80
• Reversal trigger: 80
• Signal confirmation: Bar close
The default 9/26/52 configuration is suitable for swing analysis on daily and four-hour charts. Because the periods represent bars, their actual duration changes with the selected timeframe.
USER SETTINGS
RCI Short
Controls the sensitivity of short-term momentum. A lower value reacts faster but produces more noise.
RCI Medium
Represents the intermediate swing structure.
RCI Long
Acts as the broader trend filter. Higher values provide a slower and more stable reading.
Extreme Level
Defines the upper and lower visual zones. The default setting is +80 and −80.
Reversal Trigger
Determines the level used to generate early R+ and R− reversal signals.
Confirm Only at Bar Close
When enabled, signals are validated only after the current candle closes. This helps prevent temporary intrabar signals.
Show Early Reversals
Displays the R+ and R− markers.
Show 9/26/52 Alignments
Displays the A+ and A− markers.
Shade Extreme Zones
Highlights the upper and lower RCI extreme areas.
Shade Background by Alignment
Optionally colors the indicator background according to bullish or bearish triple alignment.
ALERTS
Four PulseWire alert conditions are included:
• RCI — Early Bullish Reversal
• RCI — Early Bearish Reversal
• RCI — New Bullish Alignment
• RCI — New Bearish Alignment
For more stable signals, alerts should normally be configured “Once Per Bar Close.”
REPAINTING BEHAVIOR
The indicator uses only current and historical price data. It does not use future bars.
RCI values can naturally change while the current candle is still forming. When “Confirm Only at Bar Close” is enabled, signal markers and alerts are confirmed at the candle close and do not subsequently repaint on completed bars.
LIMITATIONS
RCI is a market-structure and momentum indicator, not a standalone trading system.
It does not account for:
• Fundamental valuation
• Earnings announcements
• Liquidity conditions
• Volatility regime changes
• Support and resistance
• Position sizing
• Transaction costs
Extreme readings should not automatically be interpreted as buy or sell signals. The indicator is most effective when combined with price structure, volume, volatility and disciplined risk management.
DISCLAIMER
This indicator is provided for educational and analytical purposes only. It does not constitute financial advice or a recommendation to buy or sell any financial instrument. Past performance does not guarantee future results.
Indicator

Indicator

MACD Momentum Phase & Acceleration ObservatoryMACD Momentum Phase & Acceleration Observatory is a current-chart momentum research indicator that extends the familiar MACD line, Signal line, and Histogram into a structured view of separation, expansion, contraction, equilibrium, relative magnitude, and crossover-cycle behavior.
The script is designed for users who want to study how MACD momentum changes rather than rely only on a line crossover. It is a descriptive context tool. It does not generate Buy or Sell instructions, predict future price movement, estimate win rate, or manage risk.
WHAT IT SHOWS
- A configurable MACD line, Signal line, and state-colored Histogram.
- Five descriptive momentum phases.
- A noise-aware expansion and contraction model.
- An adaptive Near Equilibrium state with separate entry and exit boundaries.
- Three display scales: Raw MACD, Percent of Slow Average, and ATR Units.
- A robust rolling Histogram magnitude score.
- A subdued-to-reactivated magnitude sequence.
- Cross-cycle peak retention.
- MACD path efficiency.
- A compact or detailed context readout.
- Optional factual event markers and alert conditions.
WHY THIS IS MORE THAN A STANDARD MACD
A standard MACD primarily shows the relationship between a fast moving average, a slow moving average, and a smoothed Signal line. This script keeps that familiar structure, but its main contribution is a coordinated lifecycle model built around the MACD Histogram.
The distinguishing design consists of:
- separating the raw analytical engine from display normalization;
- classifying the Histogram into five momentum phases;
- filtering small expansion/contraction changes with an adaptive noise deadband;
- reducing equilibrium-boundary flapping with entry/exit hysteresis;
- measuring relative Histogram magnitude with rank-based methods;
- tracking reactivation after a sustained subdued sequence;
- measuring how much Histogram separation remains inside the active crossover cycle; and
- measuring whether the MACD path has been direct or rotational over a selected lookback.
These components are designed to describe different parts of one MACD separation lifecycle. They are not independent indicators combined without a shared purpose.
CORE MACD ENGINE
The raw calculations are:
Raw MACD = Fast Moving Average - Slow Moving Average
Raw Signal = Moving Average of Raw MACD
Raw Histogram = Raw MACD - Raw Signal
The Fast, Slow, and Signal calculations can each use one of the following moving-average methods:
- EMA
- SMA
- RMA
- WMA
- HMA
The source and all lengths are configurable. Fast Length must remain lower than Slow Length. If the configuration is invalid or the selected scale is unavailable, the context readout reports the condition instead of presenting a normal Ready state.
RAW ANALYTICAL CORE AND DISPLAY SCALE
The analytical state is calculated from the raw MACD structure. Display normalization is handled separately.
Available display modes are:
Raw MACD
Shows the MACD components in their native chart-price units.
Percent of Slow Average
Divides MACD, Signal, and Histogram by one percent of the absolute Slow Average value.
ATR Units
Divides MACD, Signal, and Histogram by the current ATR value using the selected ATR length.
The same positive divisor is applied to all three displayed components on each bar. More importantly, crossover events, zero crossings, phase classification, magnitude scoring, path efficiency, and cycle retention are calculated from the raw series. Changing the display mode therefore changes the visual unit, but it does not rewrite the underlying analytical event history.
FIVE-STATE MOMENTUM PHASE MODEL
The Histogram is classified into five descriptive states:
Positive Expansion
The raw Histogram is above zero and its absolute magnitude is expanding beyond the adaptive noise deadband.
Positive Contraction
The raw Histogram is above zero and its absolute magnitude is contracting.
Negative Expansion
The raw Histogram is below zero and its absolute magnitude is expanding.
Negative Contraction
The raw Histogram is below zero and its absolute magnitude is contracting.
Near Equilibrium
The absolute raw Histogram is inside the adaptive equilibrium boundary.
Expansion and contraction are based on the smoothed one-bar change in absolute Histogram magnitude. The script also estimates ordinary recent one-bar magnitude movement. That estimate creates an adaptive deadband. When the current magnitude change is too small to distinguish clearly from recent noise, the prior motion state is retained instead of forcing another Expansion/Contraction switch.
ADAPTIVE EQUILIBRIUM WITH HYSTERESIS
The equilibrium entry boundary is calculated from an EMA of the absolute raw Histogram multiplied by the Equilibrium Band Multiplier.
Once Near Equilibrium is active, the exit boundary is wider than the entry boundary:
Exit Boundary = Entry Boundary x Equilibrium Exit Hysteresis
Using separate entry and exit boundaries reduces rapid state changes when the Histogram repeatedly moves just above and below one threshold.
HISTOGRAM ACCELERATION
Histogram Acceleration is the smoothed one-bar change of the Histogram. The detailed readout can display the current value and direction. Optional acceleration-turn markers and alerts identify factual zero crossings in the raw acceleration measure.
The acceleration value shown in the readout follows the selected display unit. The five-state phase model remains based on the raw Histogram structure.
ROBUST HISTOGRAM MAGNITUDE SCORE
The Magnitude field measures the current absolute raw Histogram relative to its own recent history. It is bounded from 0 to 100 and offers three methods:
Percent Rank
Ranks the current absolute Histogram among observations in the selected lookback. This method is less dominated by one isolated extreme value.
Range Rank
Locates the current absolute Histogram between the rolling minimum and rolling maximum.
Hybrid Rank
Combines 65 percent Percent Rank with 35 percent Range Rank. This is the default method.
The score is classified as:
- Subdued
- Typical
- Extended
These labels describe relative recent magnitude only. They are not probabilities, confidence levels, overbought/oversold signals, or forecasts.
MAGNITUDE REACTIVATION
Magnitude Reactivation is a stateful sequence, not a directional trade signal.
The sequence works as follows:
1. The Magnitude score remains at or below the Subdued threshold for at least the selected Minimum Subdued Bars.
2. The reactivation condition becomes armed.
3. A reactivation event is recorded when the score reaches the Magnitude Reactivation threshold.
The default visual marker is a small yellow dot at the top of the pane. It indicates that relative Histogram magnitude has re-emerged after a sustained subdued sequence. It does not specify bullish or bearish direction.
CROSS-CYCLE PEAK RETENTION
A cross cycle begins whenever the raw MACD line crosses the raw Signal line.
During the active cycle, the script records the largest absolute raw Histogram magnitude. Cross-Cycle Peak Retention is calculated as:
Current Absolute Histogram / Active-Cycle Peak Absolute Histogram x 100
A value near 100 means the current separation is near the largest separation recorded in that crossover cycle. A lower value means more of that cycle's peak separation has contracted. This measurement is descriptive and does not determine whether price will continue or reverse.
MACD PATH EFFICIENCY
MACD Path Efficiency compares the net displacement of the raw MACD line with the total distance traveled by the raw MACD line over the selected lookback:
Absolute Net MACD Displacement / Sum of Absolute One-Bar MACD Changes x 100
A higher value describes a more direct MACD path. A lower value describes a more rotational or back-and-forth path. It is not a measure of profitability, trend quality, or future reliability.
CONTEXT READOUT
The Context Readout can be disabled or shown in Compact or Detailed mode.
Compact mode shows:
- Phase
- Location relative to zero
- Histogram value
- Magnitude score and state
- Configuration status
Detailed mode additionally shows:
- Histogram Acceleration
- Phase Age
- Bars in the active cross cycle and Peak Retention
- MACD Path Efficiency
- Confirmed or Live bar status
The table position, text size, header size, background, border, and row presentation are configurable.
VISUAL DESIGN
The default palette separates the line family from the Histogram family:
- MACD line: ice white
- Signal line: electric blue
- Positive Expansion: bright green
- Positive Contraction: teal
- Negative Expansion: magenta
- Negative Contraction: orange
- Near Equilibrium: vivid purple
- Magnitude Reactivation: yellow
The Histogram uses a depth layer and a narrower core layer. The MACD and Signal lines can use optional glow and separation fill. The adaptive equilibrium band, zero guide, phase rail, and background tint can be enabled or disabled independently.
EVENT MARKERS AND ALERTS
Default factual markers are:
- a small upward arrow at the pane bottom when MACD crosses above Signal;
- a small downward arrow at the pane top when MACD crosses below Signal; and
- a small yellow dot at the pane top when Magnitude Reactivation occurs.
Optional markers are available for:
- Histogram Acceleration turning positive or negative; and
- MACD crossing above or below zero.
Alert conditions are available for the same events and for each phase transition. These events describe calculated state changes. They are not trade-entry or trade-exit recommendations.
REALTIME AND CONFIRMED-BAR BEHAVIOR
Confirmed Bars Only is enabled by default.
With the default setting:
- markers and alert conditions trigger after the chart bar closes;
- stateful Magnitude Reactivation updates are committed on confirmed realtime bars; and
- the committed cross-cycle peak is updated on confirmed realtime bars.
The MACD lines, Histogram, phase display, and context readout can still change while the current bar is forming because their inputs change with live price. This is normal realtime behavior. Users who disable Confirmed Bars Only intentionally allow intrabar events, which can change before the bar closes.
The script uses the current chart timeframe only. It does not request another symbol or timeframe, use lookahead, access future data, or apply a future plot offset.
HOW TO USE THE INDICATOR
1. Start with Location and Phase.
Location shows whether raw MACD is above or below zero. Phase shows whether Histogram magnitude is expanding, contracting, or near equilibrium.
2. Add Magnitude context.
Use Subdued, Typical, and Extended as rolling relative-magnitude descriptions. Do not interpret them as probabilities.
3. Observe reactivation after subdued conditions.
A yellow dot identifies a transition from a sustained subdued sequence to a higher relative magnitude. Read its direction from the Histogram sign and phase, not from the dot itself.
4. Use Detailed mode for lifecycle context.
Phase Age shows duration. Cross-Cycle Peak Retention shows how much separation remains relative to the active cycle peak. Path Efficiency shows whether the MACD path has been direct or rotational.
5. Select a suitable display unit.
Raw MACD preserves native units. Percent of Slow Average and ATR Units can make the pane easier to read on symbols with different price or volatility scales. Analytical states remain based on raw MACD.
DEFAULT CONFIGURATION
The default core uses 12-period EMA, 26-period EMA, and a 9-period EMA Signal line with Close as the source.
The default research settings use:
- Raw MACD display
- 3-bar acceleration smoothing
- 8-bar phase-noise estimation
- 0.25 phase-noise multiplier
- 34-bar adaptive equilibrium basis
- 0.28 equilibrium entry multiplier
- 1.25 equilibrium exit hysteresis
- 120-bar Hybrid Magnitude Rank
- 20 / 35 / 80 Subdued, Reactivation, and Extended thresholds
- 3 Minimum Subdued Bars
- 20-bar MACD Path Efficiency
- Compact Context Readout
- Confirmed Bars Only enabled
The defaults are general starting points, not optimized settings for a specific symbol or timeframe.
LIMITATIONS
- MACD is derived from moving averages and therefore contains lag.
- Expansion, contraction, equilibrium, magnitude, retention, and efficiency describe the current and historical calculation state; they do not forecast price.
- Results depend on the selected source, moving-average methods, lengths, smoothing, lookbacks, and thresholds.
- Rank-based measurements are relative to a rolling window and can change as old observations leave that window.
- Frequent MACD/Signal crossings create shorter cross cycles and can make Peak Retention change quickly.
- Low-liquidity symbols, gaps, abrupt price changes, and very short timeframes can produce rapid state transitions.
- The open bar remains fluid until it closes.
- The script does not include position sizing, stop placement, targets, backtesting, or risk management.
Use the indicator as one transparent source of momentum context alongside independent price analysis and risk controls. Indicator

Equalhigh - Pettitt Structural Break DetectorEqualhigh — Pettitt Structural Break Detector
User Manual
Overview
The Equalhigh Pettitt Structural Break Detector is a statistical regime-change indicator for PulseWire. It is designed to identify a recent change in the distribution of price returns rather than a conventional overbought, oversold, or moving-average condition.
The indicator applies a rolling version of Pettitt's non-parametric change-point test to logarithmic price returns. It estimates the most likely break location inside the active window, evaluates its statistical significance, measures the direction and size of the median shift, and filters out changes that are too old or too small to be considered actionable.
This is a diagnostic indicator, not an automatic trading system. Its purpose is to answer:
Has the recent return regime changed materially, in which direction, and with what level of statistical evidence?
Core calculation
The observation tested on each bar is the multi-bar logarithmic return:
100 × ln(Source / Source )
Inside the selected Pettitt window, the indicator:
Orders the observations chronologically.
Assigns non-parametric ranks, using average ranks for equal values.
Tests every admissible split while preserving the minimum segment size on both sides.
Selects the split with the largest absolute Pettitt statistic.
Calculates the approximate two-sided p-value:
p ≈ min(1, 2 × exp(-6K² / (n³ + n²)))
Compares the median return before and after the estimated break.
Standardizes the median shift by the rolling standard deviation.
Rejects breaks that are too old or have an insufficient effect size.
The test is non-parametric: it relies on ranks and does not require returns to follow a normal distribution.
Reading the indicator
The main line is a signed statistical-confidence display ranging from approximately -100 to +100.
Display
Meaning
Green
Recent, statistically confirmed upward shift in the return distribution
Red
Recent, statistically confirmed downward shift in the return distribution
Orange
Possible break; evidence is developing but does not yet meet the confirmed threshold
Gray
No currently actionable structural break
BULL label
A new confirmed upward structural-break event
BEAR label
A new confirmed downward structural-break event
Orange ?
A new possible upward or downward break
A positive reading means that the post-break median return is higher than the pre-break median. A negative reading means it is lower.
Important: a bullish break does not necessarily mean that returns are already positive. A change from strongly negative returns to mildly negative returns is an upward structural shift and can therefore be classified as bullish. Price structure should still be checked separately.
The displayed confidence is calculated as 100 × (1 − p-value). It is not the probability that a trade will be profitable, the probability that price will rise, or a forecast accuracy score.
Confirmation rules
A confirmed break requires all of the following:
The approximate p-value is less than or equal to the Confirmed p-value setting.
The estimated break age does not exceed the Maximum actionable break age.
The absolute median-shift effect reaches the Minimum median-shift effect.
The post-break median is different from the pre-break median.
A possible break requires:
A p-value above the confirmed threshold but no higher than the Possible-break p-value.
A recent estimated break.
At least half of the selected minimum effect size.
Dashboard
The statistical dashboard provides five fields:
Field
Interpretation
Pettitt State
Current classification: stable, possible break, confirmed break, or old break
P Value Approx
Approximate probability of observing a Pettitt statistic at least this extreme under the no-change hypothesis
Break Age
Estimated number of bars since the detected split
Median Shift
Post-break median return minus pre-break median return, in percentage points
Effect Size
Median shift divided by the rolling standard deviation of the tested returns
An OLD BREAK state means that statistically significant evidence remains inside the window, but the estimated change point is older than the selected actionable-age limit.
Inputs
1. Observations
Price sourceSelects the series used in the logarithmic-return calculation. Close is the standard choice.
Log-return horizonDefines the number of bars used for each return observation. A higher value focuses on slower moves but creates more overlap between consecutive observations.
Pettitt windowDefines the number of observations included in each rolling test. Short windows react faster but are noisier. Long windows are more stable but detect changes later.
Minimum segment sizePrevents the estimated split from being placed too close to either edge of the window. Larger values reduce unstable edge detections but also delay recognition of very recent changes.
2. Validation
Confirmed p-valueMaximum approximate p-value for a confirmed break. 0.05 is the default. Lower values are more selective.
Possible-break p-valueMaximum p-value for the orange early-warning state. 0.15 is the default.
Maximum actionable break ageMaximum number of bars allowed between the estimated break and the current bar. This prevents an old statistical event from being treated as a fresh signal.
Minimum median-shift effectMinimum absolute standardized median shift required for confirmation. 0.25 means that the shift must represent at least one quarter of the rolling return standard deviation.
Confirm signals at bar closeWhen enabled, new labels and alert events are confirmed only after the current bar closes. This is the recommended setting.
3. Display
These controls independently enable the regime background, confirmed labels, possible-break markers, and statistical dashboard.
Suggested starting profiles
Use case
Return horizon
Window
Minimum segment
Maximum age
Minimum effect
General swing trading
5
60
10
10
0.25
Faster market monitoring
3
50
8
7
0.30
Slower regime analysis
10
90
15
15
0.35
These are starting points, not optimized trading parameters. Settings should be tested across different symbols and market regimes without selecting them solely from the best historical result.
Practical workflow
Use a liquid instrument and ordinary candlestick data.
Keep bar-close confirmation enabled.
Treat orange as an observation state, not an entry instruction.
When a confirmed label appears, check whether price structure, volume, volatility, and the higher-timeframe context support the same interpretation.
Use the p-value, effect size, and break age together. A small p-value alone does not guarantee a useful trade.
Define entry, invalidation, position size, and exit rules independently.
For example, a green event with p = 0.02, a break age of 6 bars, and an effect size of +0.60 sigma represents a recent and statistically meaningful upward shift. It becomes more useful if price has also reclaimed an important level or broken a declining structure.
Alerts
Four alert conditions are available:
Pettitt — Possible bullish break
Pettitt — Possible bearish break
Pettitt — Bullish structural break
Pettitt — Bearish structural break
Alerts fire when a qualifying state first appears or when the estimated break resets to a more recent point while the same directional condition remains active. With bar-close confirmation enabled, alerts should be configured Once Per Bar Close.
Repainting and timing
The script does not use future data, lookahead, or a negative plot offset. A signal is displayed on the bar where the break is detected; it is not placed retrospectively on the estimated historical change point.
However, this is a rolling estimator. As new bars enter the window, the most likely split, p-value, break age, and state can change. On a live unclosed bar, values can also move with price. Enabling Confirm signals at bar close prevents provisional intrabar labels from being treated as confirmed events.
Limitations
Pettitt's test identifies the dominant single change point inside the active window. Multiple rapid regime changes can interfere with one another.
The p-value is an approximation, not an exact posterior probability.
Consecutive multi-bar returns overlap and are therefore not independent. This makes the p-value best treated as comparative statistical evidence rather than a perfectly calibrated probability.
A statistically significant distribution shift does not guarantee trend continuation or trading profitability.
Outliers are less influential than in many mean-based tests, but they can still affect the detected split and the rolling volatility denominator.
Very short windows are noisy; very long windows can react too slowly.
Logarithmic returns require positive source values. The test remains unavailable when the selected source contains invalid or non-positive observations inside the active window.
Results on Heikin Ashi, Renko, Range, Kagi, or other synthetic chart types describe the transformed data rather than standard traded prices.
Always evaluate the indicator on unseen data and combine it with independent risk controls.
Data Window outputs
The script exposes the following values for inspection and alert integration:
State code: +2 confirmed bullish, +1 possible bullish, 0 stable, −1 possible bearish, −2 confirmed bearish.
Approximate p-value.
Estimated break age.
Median shift in percentage points.
Median-shift effect size.
Pettitt K statistic.
Reference
A. N. Pettitt, “A Non-Parametric Approach to the Change-Point Problem,” Journal of the Royal Statistical Society: Series C (Applied Statistics), Vol. 28, No. 2, 1979, pp. 126–135. DOI: 10.2307/2346729.
Disclaimer
This indicator is provided for research and educational purposes. It does not constitute investment advice, a recommendation, or a guarantee of future performance. Trading involves risk, including the possible loss of capital. Indicator

BB Squeeze Histogram
BB Squeeze Histogram (BBSH) — User Manual
Companion indicator to Bollinger-Bands.Multi_Choice (BBMC). Plots the width of the Bollinger envelope as a MACD-style histogram, signed by which side of the basis MA price is on.
1. What It Shows
Two things are encoded into one histogram:
Above / below the neutral line — whether price is currently above or below the basis moving average. The neutral line is 0 in raw mode, 50 in normalized mode.
Bar length from the neutral line — how wide the Bollinger envelope currently is (the distance between the upper and lower band, at your chosen standard-deviation multiple). Long bars = wide bands = high volatility. Short bars hugging the neutral line = tight bands = low volatility / squeeze.
Put together, a bar answers two questions at once: which side of trend is price on, and how stretched or compressed is the market right now.
2. Reading the Colors
Bars use a 4-color scheme, same idea as a standard MACD histogram:
Color
Meaning
Bright teal
Above neutral, band width expanding vs. the prior bar
Pale teal
Above neutral, band width contracting vs. the prior bar
Bright red
Below neutral, band width expanding vs. the prior bar
Pale red/pink
Below neutral, band width contracting vs. the prior bar
Bright bars mean volatility is actively growing on that side of the trend. Pale bars mean the move is losing steam or the range is tightening — often the first sign a squeeze is building.
3. Extra Plots on the Panel
Neutral line — gray line at 0 (raw mode) or 50 (normalized mode). Crossings mark price crossing the basis MA.
Red line (Avg Positive Column) — the running average width of only the positive (above-neutral) bars, over the "Column average lookback" period. Shows what a "normal" bullish-side expansion looks like recently. Bars poking well above this line are expanding harder than usual.
Green line (Avg Negative Column) — same idea, mirrored for the negative (below-neutral) bars.
Yellow dots on the neutral line — squeeze markers. Appear when the current band width is the tightest reading over the "Squeeze lookback" period — i.e., the bands are as compressed as they've been in a while. These tend to precede expansion moves.
4. Inputs
Input
Default
What it does
Source
ohlc4
Price series used for the basis MA and standard deviation calc
Length
20
Lookback for both the basis MA and the standard deviation
Band SD (± this value)
3.0
The standard-deviation multiple defining the band edges (matches your BBMC R3/S3 by default)
ALMA offset
0.89
Only used if MA Type = ALMA
ALMA sigma
5
Only used if MA Type = ALMA
Normalize to 0-100 scale
off
See Section 5
Normalize rank lookback
200
Bars of width history the 0-100 rank is measured against (normalized mode only)
Squeeze lookback
100
Bars used to detect the "tightest width" for the yellow squeeze dots
Column average lookback
100
Bars used to compute the red/green average-column lines
MA Type
VWMA
Basis moving average type — SMA, EMA, RMA, WMA, VWMA, VWAP, HMA, SWMA, or ALMA
5. Normalize Toggle — Important
Off (default): the histogram plots raw dollar-width — literally (upper band − lower band). Values are in the same units as price, so a reading of "8,000" on BTC/USD means the envelope is $8,000 wide. The neutral line sits at 0.
On: the histogram is rescaled to a bounded 0–100 oscillator with 50 as the neutral level. The current band width is percentile-ranked against its own history over the "Normalize rank lookback" period (default 200 bars), producing a 0–100 rank. That rank is halved to a 0–50 magnitude and then measured out from 50 — upward when price is above the basis MA, downward when below.
Reading the normalized scale:
Reading
Meaning
Near 100
Price above the basis MA, band width at the widest end of its recent history
~75
Price above basis, width around the middle of its historical range
Near 50
Squeeze — width at the tightest end of its history, regardless of side
~25
Price below basis, width around the middle of its historical range
Near 0
Price below the basis MA, band width at the widest end of its recent history
Note that the distance from 50 is the volatility read and the side of 50 is the trend read — they are independent. A reading of 52 and a reading of 48 both describe a tightly squeezed market; they just differ on which side of the MA price closed.
Because the value is a percentile rank, it is self-scaling: readings are directly comparable across assets, timeframes, and price regimes without retuning. The trade-off is that it tells you where width sits relative to its own recent history, not its absolute size — a 95 reading in a quiet chop regime may be a smaller dollar-width than a 60 reading during a volatile stretch. Shortening the rank lookback makes the oscillator more reactive to recent regime; lengthening it gives a more stable long-run reference.
Match your basis MA type/length here to your BBMC settings if you want the neutral-line crossings on this panel to line up exactly with the white basis line's color flips on your main BBMC chart.
6. Suggested Ways to Use It
Trend confirmation: treat neutral-line position the same way you'd treat price vs. the BBMC basis line — histogram above neutral supports a long bias, below neutral supports a short bias.
Squeeze setups: watch for yellow dots (tight width) followed by a color shift from pale to bright — that transition often marks the start of a breakout move out of consolidation.
Exhaustion reads: when bars run well past the red or green average line, the current expansion is unusually large relative to its own recent history — often a point where trend continuation odds start to fade and mean-reversion becomes more likely.
Divergence: if price makes a new high/low but the histogram's peak height is smaller than the prior swing's, the expansion behind the move is weaker than last time — a classic momentum-divergence tell, same logic as reading MACD histogram divergence against price.
7. Notes / Limitations
This is a volatility/width indicator, not a standalone directional signal — it's meant to be read alongside price structure or your BBMC chart, not in isolation.
The squeeze marker and average-column lines both depend on their lookback inputs; shortening them makes the indicator more reactive to recent bars, lengthening them smooths it out but reacts slower to regime changes.
Normalize should generally stay consistent once you've picked it — the raw and normalized histograms are not on comparable scales, and the red/green average lines are computed from whichever mode is active. The squeeze dots are always derived from raw band width, so they mark the same bars in either mode. Indicator

Equalhigh - GAPO Easy ModeEQUALHIGH - GAPO EASY MODE
OVERVIEW
GAPO Easy Mode is a volatility-regime indicator based on the Gopalakrishnan Range Index developed by Jayanthi Gopalakrishnan.
Its purpose is not to predict market direction. It identifies:
• Volatility compression
• Volatility expansion
• Possible bullish or bearish releases
• Donchian breakouts occurring shortly after compression
The original GAPO value is converted into a rolling percentile from 0 to 100. This makes the indicator easier to interpret across different market periods.
CALCULATION
The original Gopalakrishnan Range Index is:
GAPO = ln(Highest High − Lowest Low) / ln(Period)
The highest high and lowest low are calculated over the selected GAPO period.
Because the original GAPO depends on the asset’s price scale, this script calculates its percentile rank over a user-defined historical window.
• A low percentile indicates an unusually narrow price range.
• A rising percentile indicates that the range is expanding.
• A high percentile indicates unusually elevated variability.
DEFAULT SETTINGS
• GAPO period: 14 bars
• Percentile lookback: 252 bars
• Compression threshold: 20
• High variability threshold: 80
• Expansion confirmation: 2 rising bars
• Donchian breakout period: 20 bars
• Activation window: 15 bars
• Direction filter: EMA 50
• Signal confirmation: Bar close
COLOR INTERPRETATION
BLUE — COMPRESSION
The GAPO percentile is at or below the compression threshold.
The market’s recent price range is unusually narrow compared with its own history. This does not provide a directional signal. It indicates that traders should prepare for a possible volatility release.
GRAY — NEUTRAL
No meaningful compression or confirmed expansion is currently detected.
GREEN — BULLISH RELEASE
The following conditions are present:
• A compression occurred recently
• The GAPO percentile is rising
• The percentile is above the compression threshold
• Price is above the direction-filter EMA
This indicates expanding volatility with a bullish directional bias. It is not necessarily a confirmed breakout.
RED — BEARISH RELEASE
The following conditions are present:
• A compression occurred recently
• The GAPO percentile is rising
• The percentile is above the compression threshold
• Price is below the direction-filter EMA
This indicates expanding volatility with a bearish directional bias.
ORANGE — HIGH VARIABILITY
The GAPO percentile is at or above the high-variability threshold.
The current range is unusually wide compared with the historical reference period. This can occur during a strong trend or an erratic market.
A high percentile is not automatically a reversal signal.
DASHBOARD
The dashboard displays three items.
GAPO STATE
Possible states include:
• COMPRESSION
• NEUTRAL
• BULLISH RELEASE
• BEARISH RELEASE
• BULL BREAKOUT
• BEAR BREAKOUT
• HIGH VARIABILITY
PERCENTILE
Shows the current GAPO percentile between 0 and 100.
BREAKOUT ARMED
• YES: A compression occurred within the activation window.
• NO: No sufficiently recent compression is available to validate a breakout signal.
BREAKOUT SIGNALS
BUY SIGNAL
A BUY label appears when:
1. A GAPO compression occurred within the activation window.
2. The GAPO percentile has moved above the compression threshold.
3. The percentile has risen for the required number of bars.
4. Price closes above the previous Donchian high.
The current bar is excluded from the Donchian boundary calculation. This ensures that the current close genuinely breaks the previous price range.
SELL SIGNAL
A SELL label appears when:
1. A recent GAPO compression is available.
2. The GAPO percentile is expanding.
3. Price closes below the previous Donchian low.
The EMA determines the directional color of a volatility release. It is not required for the BUY or SELL breakout calculation itself.
PRACTICAL WORKFLOW
1. WAIT FOR BLUE
A blue GAPO line identifies volatility compression. Do not assume the next move will be bullish.
2. CHECK “BREAKOUT ARMED”
The dashboard should display YES. This confirms that a qualifying compression occurred recently.
3. WATCH FOR VOLATILITY RELEASE
The GAPO percentile should leave the compression zone and begin rising.
• Green indicates bullish expansion.
• Red indicates bearish expansion.
4. REQUIRE PRICE CONFIRMATION
For stronger confirmation, wait for a BUY or SELL label generated by the Donchian breakout.
5. CONTROL RISK
Use price structure, ATR or another risk-management method to determine the stop.
The indicator does not calculate position size or guarantee that a breakout will continue.
EXAMPLE OF A BULLISH SETUP
• GAPO percentile falls below 20
• Dashboard displays COMPRESSION
• Breakout Armed displays YES
• GAPO begins rising above 20
• Price remains above EMA 50
• The line becomes green
• Price closes above the previous 20-bar high
• A BUY label appears
EXAMPLE OF A BEARISH SETUP
• GAPO enters compression
• The percentile subsequently begins rising
• Price is below EMA 50
• The line becomes red
• Price closes below the previous 20-bar low
• A SELL label appears
ALERTS
Five PulseWire alert conditions are included:
• GAPO - New compression
• GAPO - Bullish release
• GAPO - Bearish release
• GAPO - Bullish breakout
• GAPO - Bearish breakout
For more stable signals, configure PulseWire alerts as “Once Per Bar Close.”
SETTINGS
GAPO PERIOD
Controls the number of bars used to calculate the highest high and lowest low.
A shorter period reacts faster but produces more noise. The default value is 14.
PERCENTILE LOOKBACK
Defines the historical window used to determine whether the current GAPO is relatively low or high.
The default value of 252 corresponds approximately to one trading year on a daily chart.
COMPRESSION THRESHOLD
Determines when the market is classified as compressed.
The default value is the 20th percentile.
HIGH VARIABILITY THRESHOLD
Determines when the market’s range is considered historically elevated.
The default value is the 80th percentile.
RISING BARS REQUIRED
Defines how many consecutive rising percentile readings are required to confirm volatility expansion.
A higher value reduces noise but delays detection.
DONCHIAN BREAKOUT PERIOD
Defines the price range that must be broken to generate a BUY or SELL signal.
The default setting is 20 bars.
MAXIMUM BARS AFTER COMPRESSION
Defines how long a compression can remain valid for a subsequent breakout.
After this window expires, Breakout Armed returns to NO.
DIRECTION FILTER EMA
Determines whether an expansion is classified as bullish or bearish.
• Price above the EMA: bullish bias
• Price below the EMA: bearish bias
CONFIRM SIGNALS AT BAR CLOSE
When enabled, signals are confirmed only after the current candle closes. This reduces temporary intrabar signals.
SUGGESTED TIMEFRAMES
For swing trading:
• Daily chart: use the default settings
• Four-hour chart: defaults can be used as a starting point
• Weekly chart: consider increasing the activation window
The periods always represent chart bars, not calendar days.
DATA REQUIREMENTS
The percentile requires sufficient historical data.
With a 14-bar GAPO and a 252-bar percentile lookback, approximately 265 chart bars may be required before the normalized indicator becomes available.
Newly listed securities may therefore show no value until enough history exists. Reducing the percentile lookback can produce earlier readings, but the statistical reference will be less robust.
NON-REPAINTING BEHAVIOR
The indicator uses only current and historical price data. It does not use future bars.
The GAPO line and dashboard can change while the current candle is forming. When bar-close confirmation is enabled, completed BUY and SELL signals remain fixed after the candle closes.
LIMITATIONS
GAPO measures range variability, not market direction.
It does not directly account for:
• Trading volume
• Fundamental information
• Earnings announcements
• Market liquidity
• Transaction costs
• Position sizing
• Broader market conditions
Corporate actions, large gaps and exceptional price events can temporarily distort the rolling range.
Compression does not guarantee a breakout, and a breakout can still fail. GAPO Easy Mode should be combined with price structure and disciplined risk management.
DISCLAIMER
This indicator is provided for educational and analytical purposes only. It does not constitute financial advice or a recommendation to buy or sell any financial instrument. Past performance does not guarantee future results.
Indicator

Equalhigh Stochastic Dominance AuroraEQUALHIGH — STOCHASTIC DOMINANCE AURORA
OVERVIEW
Stochastic Dominance Aurora is a relative-strength regime indicator designed to identify when an asset begins to outperform a benchmark in a broad, persistent and progressively ordered manner.
Instead of relying on moving-average crossovers or overbought/oversold levels, Aurora compares the distributions of benchmark-relative returns across four consecutive time blocks.
Its purpose is to answer one practical question:
Is the asset developing genuine relative leadership, or is its recent outperformance driven by only a few exceptional bars?
The indicator is primarily designed for weekly stock analysis, although it can be used on other timeframes with appropriate settings.
HOW IT WORKS
Aurora first calculates the logarithmic return of the asset and subtracts the logarithmic return of the selected benchmark:
Relative Return = Asset Return − Benchmark Return
The observation window is then divided into four consecutive blocks:
• Block 1: oldest period
• Block 2: second period
• Block 3: third period
• Block 4: most recent period
The indicator uses a rank-based Jonckheere–Terpstra approach to determine whether the distribution of relative returns is progressively improving from the oldest block to the newest one.
Every observation in a newer block is compared with every observation in the preceding blocks. The resulting statistic is standardized into a Z-score and transformed into the Aurora Dominance line.
This rank-based method reduces the influence of isolated gaps and extreme price movements.
AURORA DOMINANCE LINE
The main line is normalized approximately between −100 and +100.
• Positive values indicate an improving relative-return structure.
• Negative values indicate a deteriorating relative-return structure.
• Values near zero indicate that no clear ordered regime has been detected.
• Values above +50 generally represent strong positive dominance.
• Values below −50 generally represent strong negative dominance.
The line measures relative structure, not absolute price direction. A stock may rise while Aurora deteriorates if the benchmark rises faster.
AURORA STATES
DORMANT — Violet
No statistically meaningful relative-return structure is present.
This is a neutral condition and does not automatically indicate weakness.
WATCH — Turquoise
The first signs of ordered relative improvement are appearing, but the evidence remains insufficient for confirmation.
This state can be used to add the asset to a watchlist.
ARMED — Cyan
The relative-return distributions are becoming meaningfully ordered and the asset is outperforming its benchmark.
The setup is developing, but one or more confirmation conditions may still be missing.
CONFIRMED — Blue
A statistically significant positive relative regime has been detected.
Confirmation requires:
• Z-score at or above the Confirmed threshold
• Positive relative momentum
• Sufficient path efficiency
• Rising Dominance score when acceleration is required
• A completed chart bar
This is the primary bullish confirmation state.
MATURE — Gold
The positive ordering has reached an exceptionally high statistical level.
Mature indicates strong relative leadership, but it may also mean that the move is already advanced. It is not automatically a new-entry signal.
FADING — Orange
The relative-return structure is deteriorating, although a complete bearish breakdown has not yet been confirmed.
This state suggests that relative leadership is weakening.
BREAKDOWN — Red
A statistically significant negative relative regime has been detected.
This condition requires negative relative momentum, sufficient path efficiency and a sufficiently negative Z-score.
SIGNAL MARKERS
BLUE “A” MARKER
A blue “A” marker appears when bullish confirmation becomes newly active on a confirmed bar.
The signal requires:
• Z-score at or above the Confirmed threshold
• Positive relative strength
• Efficiency at or above the selected minimum
• Score acceleration when enabled
• Bar-close confirmation
The marker is intended to identify the beginning of a confirmed relative-leadership regime. It is not an automatic buy signal.
RED “A” MARKER
A red “A” marker appears when bearish confirmation becomes newly active on a confirmed bar.
It identifies a new statistically ordered period of benchmark-relative deterioration.
DASHBOARD
DOMINANCE
The normalized Aurora reading displayed approximately between −100 and +100.
Z-SCORE
The standardized statistical strength of the ordered relative-return structure.
Default interpretation:
• Below 0.35: no meaningful positive structure
• 0.35 to 1.15: Watch
• 1.15 to 1.65: Armed
• 1.65 or higher: potential bullish confirmation
• 2.50 or higher: Mature positive structure
• −1.65 or lower: potential bearish breakdown
The Z-score alone does not generate confirmation. Relative momentum, efficiency and acceleration filters must also be satisfied.
RELATIVE STRENGTH
The asset’s percentage performance relative to the selected benchmark over the chosen lookback period.
• Positive: the asset outperformed the benchmark.
• Negative: the asset underperformed the benchmark.
EFFICIENCY
Efficiency measures how directly the relative-price curve travelled from its starting point to its current point.
Efficiency = Net Relative Movement ÷ Total Relative Path
A high value indicates a clean and directional relative move. A low value indicates a noisy or erratic path.
DEFAULT SETTINGS
The default configuration is designed for weekly charts:
• Block Length: 13
• Total statistical window: approximately 52 weeks
• Armed Z-score: 1.15
• Confirmed Z-score: 1.65
• Mature Z-score: 2.50
• Relative-Strength Lookback: 13
• Efficiency Lookback: 13
• Minimum Efficiency: 0.20
• Require Score Acceleration: Enabled
Four blocks of 13 weekly bars represent approximately one year of market history.
BENCHMARK SELECTION
Benchmark selection has a major influence on the results.
Suggested examples:
• Broad US equities: AMEX:SPY
• Nasdaq and growth stocks: NASDAQ:QQQ
• US small-cap stocks: AMEX:IWM
• Sector analysis: relevant sector ETF
• European equities: a broad European index or ETF supported by the data provider
The benchmark should represent the asset’s realistic opportunity set. Avoid comparing securities from unrelated markets or investment styles unless that comparison is intentional.
SENSITIVITY PROFILES
EARLY PROFILE
• Block Length: 10
• Confirmed Z-score: 1.45
• Minimum Efficiency: 0.15
This configuration produces earlier signals but increases the risk of false positives.
BALANCED PROFILE
• Block Length: 13
• Confirmed Z-score: 1.65
• Minimum Efficiency: 0.20
This is the recommended starting configuration.
SELECTIVE PROFILE
• Block Length: 13
• Confirmed Z-score: 1.96
• Minimum Efficiency: 0.25
This configuration produces fewer and generally stronger signals.
LONG-TERM PROFILE
• Block Length: 20
• Confirmed Z-score: 1.96
• Minimum Efficiency: 0.25
This configuration is slower and better suited to long-term trend confirmation.
PRACTICAL WORKFLOW
Aurora is best used as part of a complete investment process:
1. Confirm that company fundamentals are stable or improving.
2. Verify that valuation still provides an acceptable risk/reward profile.
3. Look for a Watch → Armed → Confirmed progression.
4. Check the price structure and nearby resistance levels.
5. Define the condition that would invalidate the investment thesis.
The strongest setup generally combines:
Improving fundamentals + acceptable valuation + positive relative strength + first blue Aurora confirmation
Aurora is designed to help determine when market recognition may be beginning. It does not determine whether the company is fundamentally undervalued.
ALERTS
Three alert conditions are included:
• Aurora — First Bullish Confirmation
• Aurora — First Bearish Confirmation
• Aurora — Mature Trend
For reliable notifications, configure PulseWire alerts using:
Once Per Bar Close
NON-REPAINTING DESIGN
The script uses:
• No future pivots
• No negative plotting offsets
• No lookahead benchmark data
• No future-bar confirmation
• Signal markers confirmed only at bar close
Values may naturally evolve while the current realtime bar is still open. The blue and red markers are validated only after the bar closes.
LIMITATIONS
Aurora does not:
• Calculate fair value
• Analyse financial statements
• Predict earnings surprises
• Guarantee future outperformance
• Replace risk management
• Provide automatic buy or sell recommendations
The indicator may react late after a sudden price gap and may be less reliable on illiquid securities. Results also depend on the selected benchmark, timeframe and parameter configuration.
Aurora should therefore be used as a relative-regime confirmation tool rather than as a standalone trading system.
DISCLAIMER
This indicator is provided for educational and analytical purposes only. It does not constitute financial advice, investment advice or a recommendation to buy or sell any financial instrument. Past statistical relationships do not guarantee future results.
Indicator

Median Deviation Anchor | TR🎯 Overview
Median Deviation Anchor | TR is a trend‑detection oscillator that uses a percentile‑based median of a chosen moving average as its central anchor. It measures price deviation relative to this median, scaled by ATR bands and standard deviation zones, to generate bullish/bearish signals. The oscillator is smoothed, normalized, and presented with rich visual feedback including gradient candles, dynamic fills, reversal markers, and a persistent trend table. It’s designed to capture trend strength and reversals with a robust statistical foundation.
⚙️ Core Calculations
1. Moving Average Baseline
The indicator first computes a moving average of the Source (default close) using one of 13 moving average types (EMA, SMA, RMA, WMA, VWMA, HMA, DEMA, TEMA, TRIMA, FRAMA, SWMA, ALMA, T3).
User‑adjustable: Length (default 8), Factor/Sigma for ALMA/T3.
2. Median Anchor
Median_Val = ta.percentile_nearest_rank(MA, Median_Length, Median_per)
– This returns the value at the given percentile (default 50ᵗʰ percentile, i.e., the median) of the MA over Median_Length (default 61) bars.
→ This median acts as the dynamic “center” of the trend.
3. Deviation Bands (Upper/Lower Anchors)
ATR Band (based on ta.atr(ATR_Length)):
Upper_ATR = Median_Val + ATR_Mult * ATR
Lower_ATR = Median_Val - ATR_Mult * ATR
Standard Deviation Band (based on ta.stdev(Median_Val, Length_SD)):
SD_L = Median_Val + ST_Dev (upper +1σ)
SD_S = Median_Val - ST_Dev (lower -1σ)
4. Raw Oscillator (rawOsc)
Two conditions decide the raw value:
Bullish condition (L_Bull_MDA): (Source > Lower_ATR) and (Source >= SD_L)
Then bullForce = (Source - Median_Val) / (Median_Val - Lower_ATR) * 100
→ positive values (0 to +∞)
Bearish condition (S_Bear_MDA): (Source < Upper_ATR) and (Source <= SD_S)
Then bearForce = (Source - Median_Val) / (Upper_ATR - Median_Val) * 100
→ negative values (0 to –∞)
Otherwise rawOsc = 0.
5. Smoothing & Clamping
oscValue = ta.ema(rawOsc, smoothOsc) (user‑defined smoothOsc length, default 5).
osc = math.min(math.max(oscValue, -2000), 2000) – clamps extreme values.
📊 Normalisation & Dynamic Styling
Momentum for Fill Transparency:
absOsc = math.abs(osc) → maxAbsOsc = ta.highest(absOsc, 50) → normalised normAbsOsc → Fill_Transp_OSC = int(math.max(0, math.min(100, 35 - (normAbsOsc * 25))))
→ higher oscillator magnitude ⇒ less transparency (more vivid fills).
Gradient Coloring for Candles:
oscNorm is re‑scaled over the last 50 bars to → candle color interpolates between DnC (bearish) and UpC (bullish) using color.from_gradient.
Color Themes: 9 predefined schemes (Classic, Modern, Heat, Robust, Accented, Monochrome, Moderate, Aqua, Cosmic) with custom bullish/bearish colours.
📈 Signal System
1. Trend Determination (Trend_MDA)
Bullish when osc > Upper_Band (user‑defined Long Threshold, default 50). Sets Trend_MDA = 1.
Bearish when osc < Lower_Band (user‑defined Short Threshold, default -50). Sets Trend_MDA = -1.
Otherwise holds previous value.
2. Reversal Signals (plot as triangles)
Bullish Reversal (reversalBull): Trend_MDA == 1 and Trend_MDA == -1 → green triangle below bar.
Bearish Reversal (reversalBear): Trend_MDA == -1 and Trend_MDA == 1 → red triangle above bar.
3. Alerts (4 conditions)
Bullish MDA – triggered when isBull_MDA (osc > Upper_Band)
Bearish MDA – triggered when isBear_MDA (osc < Lower_Band)
Bullish Cross – ta.crossover(osc, 0)
Bearish Cross – ta.crossunder(osc, 0)
🎨 Visual Features
Trend Table Displays “⬆️ Bullish” or “⬇️ Bearish” (or “➖ Neutral”)
📖 Interpretation Guide
Positive values (osc > 0) indicate price is above the median anchor (bullish bias).
Negative values (osc < 0) indicate price below the median (bearish bias).
Crossing ±50 (default thresholds) signals a confirmed trend change (bullish >50, bearish < -50).
Crossing zero may be used as an early warning of trend shift (alerts available).
Reversal triangles appear when the oscillator crosses a threshold in the opposite direction after being in the other regime – these are potential entry/exit signals.
The dynamic fill transparency highlights momentum: intense colour = strong price deviation.
🚨 Alert Summary
Four alert conditions are ready for automation:
Bullish MDA – enters long zone (osc > Upper_Band)
Bearish MDA – enters short zone (osc < Lower_Band)
Bullish Cross – oscillator crosses above zero
Bearish Cross – oscillator crosses below zero
All alerts can be enabled via the PulseWire alerts panel. Indicator

Momentum Run & Fall Radar PRO════════════════════════════════════════════
MOMENTUM RUN & FALL RADAR PRO
Version 2.1 – Responsive Dashboard
Beschreibung, Handhabung und Interpretation
DE-DE / EN-US
════════════════════════════════════════════
============================================================
DE-DE
============================================================
INHALTSVERZEICHNIS
01. Überblick
02. Neuerungen in Version 2.1
03. Verwendete Faktoren
04. EMA-Farben und Trendstruktur
05. Bull Score und Bear Score
06. Bullische Signalstufen
07. Bärische Signalstufen
08. „Fehlt Bull“ und „Fehlt Bear“
09. RSI
10. MACD
11. DMI / ADX
12. Relatives Volumen
13. Relative Stärke
14. Multi-Timeframe-Analyse
15. Widerstand und Support
16. ATR
17. RSI-Divergenzen
18. Retest
19. Dashboard-Modi: Desktop, Mobile und Minimal
20. Dashboard-Einstellungen
21. Empfohlene Verwendung und Zeitrahmen
22. Typischer bullischer Ablauf
23. Confirmed Mode und laufende Kerzen
24. Alarme
25. Statuszeile und kompakte Darstellung
26. Wichtiger Hinweis
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
01. ÜBERBLICK
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Der Momentum Run & Fall Radar PRO ist ein kombinierter technischer
Analyseindikator zur frühzeitigen Erkennung von Momentum-Aufbau,
Trendwechseln, Breakouts, Breakdowns und zunehmender Trendstärke.
Anstatt einzelne Indikatoren getrennt voneinander zu betrachten,
führt der Radar mehrere technische Faktoren zu einem Bull Score und
Bear Score von jeweils 0 bis 100 Punkten zusammen.
Damit lässt sich schneller erkennen, ob sich ein Aufwärts- oder
Abwärtstrend vorbereitet, ob ein Breakout oder Breakdown näher rückt,
ob eine Bewegung bereits bestätigt wurde oder ob bestehendes Momentum
an Stärke verliert.
Der Indikator eignet sich besonders für volatile Aktien und
Momentum-Titel, kann aber grundsätzlich auch für andere liquide
Aktien, ETFs und Märkte eingesetzt werden.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
02. NEUERUNGEN IN VERSION 2.1
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Version 2.1 verbessert vor allem die Darstellung auf unterschiedlichen
Geräten.
Neu hinzugekommen sind:
• Desktop-Dashboard für große Bildschirme
• Mobile-Dashboard für Smartphone und Tablet
• Minimal-Dashboard für möglichst viel freien Chartbereich
• frei wählbare Dashboard-Position
• einstellbare Dashboard-Textgröße
• Dashboard-Sprache DE oder EN
• kompakter Indikatorname „Radar PRO“ in der Statuszeile
• Input-Werte werden nicht mehr in der Statuszeile angezeigt
• EMA-, Support-, Widerstands- und BB-Werte werden aus der
Statuszeile ausgeblendet
• vollständige Erklärung der Relative-Stärke-Auswertung
Die grundlegende Analyse- und Scorelogik bleibt erhalten. Die
Hauptänderungen betreffen Bedienbarkeit und Darstellung.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
03. VERWENDETE FAKTOREN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Der Radar berücksichtigt unter anderem:
• EMA 9
• EMA 21
• EMA 50
• EMA 200
• EMA-Trend und EMA-Steigung
• frische EMA-Crossovers
• RSI 14 und RSI-Richtung
• MACD 12/26/9 und Histogramm-Entwicklung
• DMI / ADX
• relatives Handelsvolumen
• ATR
• 20-Kerzen-Breakouts und Breakdowns
• Support- und Widerstandsbereiche
• Bollinger-Band-Squeeze
• RSI-Divergenzen
• Breakout-Retests
• Relative Stärke gegenüber einer Benchmark
• Multi-Timeframe-Analyse über 4H, 1D und 1W
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
04. EMA-FARBEN UND TRENDSTRUKTUR
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Türkis = EMA 9
Gelb = EMA 21
Orange = EMA 50
Lila = EMA 200
Eine vollständig bullische Trendstruktur sieht beispielsweise so aus:
Kurs > EMA 9 > EMA 21 > EMA 50 > EMA 200
Eine vollständig bärische Struktur entsprechend umgekehrt.
Für die Früherkennung ist besonders interessant, wenn EMA 9 und EMA 21
nach oben drehen und EMA 9 die EMA 21 von unten kreuzt.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
05. BULL SCORE UND BEAR SCORE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Bull Score = technische Stärke einer möglichen Aufwärtsbewegung.
Bear Score = technischer Abwärtsdruck.
Orientierung:
• 0–44 = kein klares Signal
• 45–54 = WATCH / Beobachtungsphase
• 55–64 = EARLY BULL bzw. EARLY BEAR
• 65–74 = BULL SETUP bzw. BEAR WARNING
• 75–84 = starke Bewegung / RUN- oder FALL-Bereich
• 85–100 = sehr starke technische Bestätigung
Wichtiger als ein einzelner Wert ist häufig die Entwicklung.
Beispiel:
45 → 54 → 61 → 69 → 77
Das zeigt, dass immer mehr technische Faktoren gleichzeitig bullisch
werden.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
06. BULLISCHE SIGNALSTUFEN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WATCH
Erste positive Faktoren sind vorhanden.
EARLY BULL
Frühes bullisches Signal. Mehrere Faktoren beginnen sich positiv
auszurichten.
BULL SETUP
Der bullische Aufbau ist weiter fortgeschritten.
BREAKOUT
Ein relevanter Widerstand wurde überschritten.
RUN
Bestätigter bullischer Ausbruch mit ausreichend hohem Score,
Breakout und erhöhtem Handelsvolumen.
STRONG RUN
Sehr starke technische Bestätigung mit hohem Score, starkem Volumen
und ausgeprägter Trendstärke.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
07. BÄRISCHE SIGNALSTUFEN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CAUTION / WATCH
Erste Verschlechterungen werden sichtbar.
EARLY BEAR
Frühe Anzeichen zunehmenden Abwärtsmomentums.
BEAR WARNING
Mehrere negative Faktoren bestätigen sich gleichzeitig.
BREAKDOWN
Eine wichtige Unterstützung wurde gebrochen.
FALL
Bestätigte Abwärtsbewegung.
STRONG FALL
Sehr starke technische Abwärtsbewegung.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
08. „FEHLT BULL“ UND „FEHLT BEAR“
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
„Fehlt Bull“ zeigt, welche Kernbedingungen für eine vollständigere
bullische Bestätigung noch fehlen.
Abkürzungen:
• EMA = bullische EMA-Struktur fehlt
• RSI = RSI-Bestätigung fehlt
• MACD = MACD-Bestätigung fehlt
• ADX = DMI / Trendstärke fehlt
• VOL = ausreichendes bullisches Volumen fehlt
• BO = bestätigter Breakout fehlt
• MTF = Multi-Timeframe-Bestätigung fehlt
• RS = Relative Stärke fehlt
Beispiel:
Fehlt Bull: VOL BO
Dann sind viele Bedingungen bereits erfüllt; hauptsächlich fehlen
Volumen und Breakout.
„Fehlt Bear“ funktioniert entsprechend.
BD = bestätigter Breakdown fehlt.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
09. RSI
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
• unter 45 = eher bärisch
• 45–55 = neutral
• über 55 = bullisch
• 60–70 = starkes Momentum
• über 70 = starkes bzw. überkauftes Momentum
↑ = RSI verbessert sich
↓ = RSI schwächt sich ab
Ein RSI über 70 bedeutet nicht automatisch, dass der Kurs fallen muss.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
10. MACD
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
BULLISH / BULL
Der MACD unterstützt die Aufwärtsbewegung.
BEARISH / BEAR
Negative Momentumstruktur.
Besonders interessant sind Übergänge zwischen BEAR und BULL.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
11. DMI / ADX
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
+DI vorne = bullische Richtung
-DI vorne = bärische Richtung
ADX:
• unter 15 = schwacher Trend
• 15–20 = Trend beginnt
• 20–25 = zunehmend relevant
• über 25 = starker Trend
• über 30 = sehr starker Trend
Besonders interessant für einen frühen Aufwärtstrend:
+DI vorne + steigender ADX durch 20–25.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
12. RELATIVES VOLUMEN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1,00x = durchschnittliches Volumen
1,20x = erhöhtes Interesse
1,50x = starkes Volumen
2,00x+ = sehr starke Aktivität
Ein Breakout mit hohem Volumen ist normalerweise stärker bestätigt
als ein Breakout bei schwachem Volumen.
Bei einer noch laufenden Kerze kann der Wert zunächst niedrig sein.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
13. RELATIVE STÄRKE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Die Relative Stärke vergleicht die Kursentwicklung mit einer
Benchmark.
Standardmäßig:
NASDAQ:QQQ
Mögliche Anzeigen:
STARK BULL / STRONG BULL
Die Aktie entwickelt sich stärker als die Benchmark und die relative
Stärke nimmt weiter zu.
BULL
Die Aktie entwickelt sich besser als die Benchmark.
BEAR
Die Aktie entwickelt sich schwächer.
STARK BEAR / STRONG BEAR
Die relative Schwäche nimmt weiter zu.
AUS / N/A
Die Auswertung ist deaktiviert oder nicht verfügbar.
Beispiel:
Aktie +3 %, Benchmark +5 %
→ relative Schwäche
Aktie +3 %, Benchmark 0 % oder negativ
→ relative Stärke
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
14. MULTI-TIMEFRAME-ANALYSE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Standard:
240 = 4 Stunden
D = Tageschart
W = Wochenchart
Desktop:
240 BULL | D BULL | W NEUTRAL
Mobile:
4H↑ D↑ W–
↑ = bullisch
↓ = bärisch
– = neutral
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
15. WIDERSTAND UND SUPPORT
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Widerstand = technisch relevanter Bereich oberhalb des Kurses.
Support = technisch relevanter Bereich unterhalb des Kurses.
Ein Kurs direkt unter dem Widerstand ist noch kein Breakout.
Stärkere Bestätigung entsteht durch:
• Überschreiten des Widerstands
• Kerzenschluss möglichst darüber
• zunehmendes Volumen
• bullische Momentumfaktoren
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
16. ATR
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ATR misst die aktuelle Schwankungsbreite.
Der Radar verwendet ATR zusätzlich als Breakout-Puffer, damit ein
minimales Überschreiten eines Widerstands nicht sofort als bestätigter
Breakout gewertet wird.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
17. RSI-DIVERGENZEN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
BULLISH
Kurs bildet ein schwächeres Tief, während RSI relative Stärke zeigt.
BEARISH
Kurs bildet ein höheres Hoch, während RSI dieses Hoch nicht bestätigt.
Divergenzen sind Frühwarnsignale.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
18. RETEST
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Typischer Ablauf:
Widerstand
→ Breakout
→ Rücklauf
→ alter Widerstand hält als Support
→ RETEST
Ein erfolgreicher Retest kann einen vorherigen Breakout zusätzlich
bestätigen.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
19. DASHBOARD-MODI: DESKTOP, MOBILE UND MINIMAL
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
DESKTOP
Vollständige Anzeige mit:
• Status
• Bull / Bear Score
• EMA 9 / 21 / 50 / 200
• RSI
• MACD
• DMI / ADX
• Volumen
• BB Squeeze
• MTF
• Relative Stärke
• Widerstand / Support
• ATR
• Divergenz
• Fehlt Bull / Bear
Empfohlen für PC und Notebook.
MOBILE
Kompakte Anzeige mit:
• Gesamtstatus
• Bull / Bear Score
• EMA-Trend
• RSI
• MACD
• DMI / ADX
• Volumen
• kompaktes MTF
• Relative Stärke
• Widerstand / Support
• Fehlt Bull / Bear
Empfohlen für Smartphone und kleinere Tablets.
MINIMAL
Zeigt nur:
• Gesamtstatus
• Bull / Bear
• RSI / ADX
• MACD / Volumen
• MTF / Relative Stärke
• wichtigste fehlende Bedingungen
Empfohlen bei sehr wenig Bildschirmfläche.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
20. DASHBOARD-EINSTELLUNGEN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Unter „13. Dashboard“:
Dashboard anzeigen
Ein / Aus
Dashboard-Modus
• Desktop
• Mobile
• Minimal
Dashboard-Sprache
• DE
• EN
Dashboard-Position
• Top Right
• Middle Right
• Bottom Right
• Top Left
• Middle Left
• Bottom Left
Dashboard-Textgröße
• Auto
• Tiny
• Small
• Normal
Empfehlung:
Desktop:
Desktop + Auto/Small
Smartphone:
Mobile + Auto
Sehr kleines Display:
Minimal + Auto/Tiny
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
21. EMPFOHLENE VERWENDUNG UND ZEITRAHMEN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1H
Hauptanzeige für frühe Momentum-Signale.
4H
Trendbestätigung.
1D
Mittelfristige Bestätigung.
1W
Langfristige Einordnung.
15 Minuten
Kann für genaueres Timing genutzt werden, nachdem 1H/4H bereits ein
brauchbares Setup zeigen.
1 und 5 Minuten
Enthalten deutlich mehr Marktrauschen.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
22. TYPISCHER BULLISCHER ABLAUF
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WATCH
↓
EARLY BULL
↓
Bull Score steigt
↓
EMA 9 / EMA 21 drehen nach oben
↓
RSI steigt über 55
↓
MACD wird bullisch
↓
+DI übernimmt
↓
ADX steigt
↓
BULL SETUP
↓
Fehlt Bull wird kürzer
↓
z. B. nur noch VOL BO
↓
Widerstand wird gebrochen
↓
Volumen steigt
↓
BREAKOUT
↓
RUN
↓
STRONG RUN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
23. CONFIRMED MODE UND LAUFENDE KERZEN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Standardmäßig werden neue Signal-Labels erst bei Kerzenschluss
bestätigt.
Dashboardwerte können sich während der laufenden Kerze trotzdem
verändern.
Für wichtige Entscheidungen sollte deshalb der Kerzenschluss
berücksichtigt werden.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
24. ALARME
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Verfügbare Alarmbedingungen:
• Early Bull
• Bull Setup
• RUN
• STRONG RUN
• Early Bear
• Bear Warning
• FALL
• STRONG FALL
• Bull Retest
• Bear Retest
• Bullische RSI-Divergenz
• Bärische RSI-Divergenz
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
25. STATUSZEILE UND KOMPAKTE DARSTELLUNG
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Version 2.1 blendet die langen Input- und Plotwerte aus der
PulseWire-Statuszeile aus.
Statt:
9 21 50 200 3 5 14 55 ...
wird primär der kurze Name angezeigt:
Radar PRO
Die Einstellungen bleiben im Indikator-Menü vollständig verfügbar.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
26. WICHTIGER HINWEIS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Der Momentum Run & Fall Radar PRO ist ein Werkzeug zur technischen
Marktanalyse und kann zukünftige Kursbewegungen nicht sicher
vorhersagen.
Der Indikator stellt keine Anlageberatung und keine automatische
Kauf- oder Verkaufsempfehlung dar.
Zusätzlich berücksichtigt werden sollten unter anderem:
• persönliches Risikoprofil
• Positionsgröße
• fundamentale Unternehmensdaten
• Nachrichten und Ereignisse
• Quartalszahlen
• Liquidität
• allgemeine Marktsituation
============================================================
EN-US
============================================================
TABLE OF CONTENTS
01. Overview
02. What’s New in Version 2.1
03. Included Factors
04. EMA Colors and Trend Structure
05. Bull Score and Bear Score
06. Bullish Signal Stages
07. Bearish Signal Stages
08. Missing Bull and Missing Bear
09. RSI
10. MACD
11. DMI / ADX
12. Relative Volume
13. Relative Strength
14. Multi-Timeframe Analysis
15. Resistance and Support
16. ATR
17. RSI Divergence
18. Retest
19. Dashboard Modes: Desktop, Mobile and Minimal
20. Dashboard Settings
21. Recommended Use and Timeframes
22. Typical Bullish Development
23. Confirmed Mode and Open Candles
24. Alerts
25. Status Line and Compact Display
26. Important Notice
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
01. OVERVIEW
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Momentum Run & Fall Radar PRO is a multi-factor technical analysis
indicator designed to identify early momentum development, trend
changes, breakouts, breakdowns and increasing trend strength.
It combines multiple technical factors into a Bull Score and Bear
Score ranging from 0 to 100.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
02. WHAT’S NEW IN VERSION 2.1
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
New features:
• Desktop dashboard
• Mobile dashboard
• Minimal dashboard
• selectable dashboard position
• adjustable text size
• DE / EN dashboard language
• compact “Radar PRO” status-line title
• input values hidden from the status line
• EMA, support, resistance and Bollinger values hidden from the
status line
• expanded Relative Strength documentation
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
03. INCLUDED FACTORS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
• EMA 9 / 21 / 50 / 200
• EMA trend and slope
• recent EMA crossovers
• RSI 14
• MACD 12/26/9
• DMI / ADX
• relative volume
• ATR
• 20-bar breakouts and breakdowns
• support and resistance
• Bollinger Band squeeze
• RSI divergences
• breakout retests
• Relative Strength versus a benchmark
• 4H / 1D / 1W Multi-Timeframe analysis
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
04. EMA COLORS AND TREND STRUCTURE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Cyan = EMA 9
Yellow = EMA 21
Orange = EMA 50
Purple = EMA 200
Bullish structure:
Price > EMA 9 > EMA 21 > EMA 50 > EMA 200
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
05. BULL SCORE AND BEAR SCORE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
• 0–44 = no clear signal
• 45–54 = WATCH
• 55–64 = EARLY BULL / EARLY BEAR
• 65–74 = BULL SETUP / BEAR WARNING
• 75–84 = RUN / FALL territory
• 85–100 = very strong confirmation
The direction of the score is often more important than one isolated
reading.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
06. BULLISH SIGNAL STAGES
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WATCH
Early positive conditions.
EARLY BULL
Early bullish momentum is developing.
BULL SETUP
The bullish structure is becoming more established.
BREAKOUT
Price moves above relevant resistance.
RUN
Confirmed bullish move with score, breakout and volume confirmation.
STRONG RUN
Very strong bullish confirmation.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
07. BEARISH SIGNAL STAGES
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CAUTION / WATCH
Early deterioration.
EARLY BEAR
Early downside momentum.
BEAR WARNING
Several bearish factors align.
BREAKDOWN
Support is broken.
FALL
Confirmed bearish move.
STRONG FALL
Very strong bearish trend.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
08. MISSING BULL AND MISSING BEAR
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
EMA = EMA structure missing
RSI = RSI confirmation missing
MACD = MACD confirmation missing
ADX = DMI / trend strength missing
VOL = sufficient volume missing
BO = breakout missing
MTF = multi-timeframe confirmation missing
RS = Relative Strength missing
Example:
Missing Bull: VOL BO
Most bullish core conditions are already in place; volume and a
confirmed breakout remain missing.
BD = breakdown missing.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
09. RSI
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
• below 45 = bearish
• 45–55 = neutral
• above 55 = bullish
• 60–70 = strong momentum
• above 70 = strong / overbought momentum
↑ = strengthening
↓ = weakening
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
10. MACD
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
BULL / BULLISH = positive momentum structure.
BEAR / BEARISH = negative momentum structure.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
11. DMI / ADX
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
+DI leading = bullish direction
-DI leading = bearish direction
ADX:
• below 15 = weak trend
• 15–20 = trend beginning
• 20–25 = increasingly relevant
• above 25 = strong trend
• above 30 = very strong trend
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
12. RELATIVE VOLUME
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1.00x = average volume
1.20x = increased activity
1.50x = strong volume
2.00x+ = very strong participation
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
13. RELATIVE STRENGTH
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Default benchmark:
NASDAQ:QQQ
STRONG BULL
The instrument is outperforming the benchmark and relative strength
is improving.
BULL
Outperforming the benchmark.
BEAR
Underperforming the benchmark.
STRONG BEAR
Relative weakness is increasing.
OFF / N/A
Relative Strength analysis is disabled or unavailable.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
14. MULTI-TIMEFRAME ANALYSIS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Default:
240 = 4-hour
D = Daily
W = Weekly
Desktop:
240 BULL | D BULL | W NEUTRAL
Mobile:
4H↑ D↑ W–
↑ = bullish
↓ = bearish
– = neutral
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
15. RESISTANCE AND SUPPORT
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Resistance is a technically relevant level above price.
Support is a technically relevant level below price.
A stronger breakout is usually supported by a candle close above
resistance and increasing volume.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
16. ATR
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ATR measures current trading range and volatility.
The radar uses ATR as an additional breakout buffer to reduce minor
false breakouts.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
17. RSI DIVERGENCE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
BULLISH
Price forms a weaker low while RSI improves.
BEARISH
Price forms a higher high while RSI fails to confirm it.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
18. RETEST
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Resistance
→ Breakout
→ Pullback
→ Previous resistance holds as support
→ RETEST
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
19. DASHBOARD MODES
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
DESKTOP
Full analysis for PCs and notebooks.
MOBILE
Compact analysis for smartphones and smaller tablets.
MINIMAL
Core information only for maximum chart space.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
20. DASHBOARD SETTINGS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Dashboard Mode:
• Desktop
• Mobile
• Minimal
Language:
• DE
• EN
Position:
• Top Right
• Middle Right
• Bottom Right
• Top Left
• Middle Left
• Bottom Left
Text Size:
• Auto
• Tiny
• Small
• Normal
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
21. RECOMMENDED USE AND TIMEFRAMES
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1H
Main timeframe for early momentum detection.
4H
Trend confirmation.
1D
Medium-term confirmation.
1W
Long-term context.
15 minutes
More precise timing after a valid higher-timeframe setup.
1-minute and 5-minute charts
Contain significantly more market noise.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
22. TYPICAL BULLISH DEVELOPMENT
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
WATCH
↓
EARLY BULL
↓
Bull Score rises
↓
EMA 9 / EMA 21 turn higher
↓
RSI > 55
↓
MACD turns bullish
↓
+DI takes control
↓
ADX rises
↓
BULL SETUP
↓
Missing Bull list becomes shorter
↓
Breakout
↓
RUN
↓
STRONG RUN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
23. CONFIRMED MODE AND OPEN CANDLES
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Signal labels are confirmed at candle close by default.
Dashboard values may still change while the current candle is open.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
24. ALERTS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Available alert conditions include:
• Early Bull
• Bull Setup
• RUN
• STRONG RUN
• Early Bear
• Bear Warning
• FALL
• STRONG FALL
• Bull Retest
• Bear Retest
• Bullish RSI Divergence
• Bearish RSI Divergence
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
25. STATUS LINE AND COMPACT DISPLAY
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Version 2.1 removes long input and plot values from the PulseWire
status line.
The compact title is:
Radar PRO
All inputs remain available in the indicator settings.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
26. IMPORTANT NOTICE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Momentum Run & Fall Radar PRO is a technical market analysis tool and
cannot reliably predict future price movements.
It does not constitute investment advice or an automatic buy or sell
recommendation.
Indicator

Indicator

Indicator

Indicator

Indicator

UT Bot PRO Multi Filter FIXED# UT Bot PRO Multi Filter
**UT Bot PRO Multi Filter** is an advanced trend-following and signal-filtering indicator built around the classic UT Bot trailing-stop concept.
The goal of this indicator is to reduce low-quality UT Bot signals by combining trend direction, momentum, volatility, volume, session, and higher-timeframe filters into one customizable system.
Every filter can be enabled or disabled individually, allowing traders to adapt the indicator to different markets, timeframes, and trading styles.
## Core Signal Logic
The indicator uses an ATR-based trailing stop to detect potential bullish and bearish trend changes.
A **Long Signal** is generated when price crosses above the UT trailing stop and all enabled long filters are confirmed.
A **Short Signal** is generated when price crosses below the UT trailing stop and all enabled short filters are confirmed.
Signals are confirmed at candle close to reduce intrabar signal changes.
## Available Filters
### VWAP Direction
Long trades can be restricted to price trading above VWAP, while short trades can be restricted to price trading below VWAP.
### VWAP Slope
The indicator measures the slope of VWAP and can block trades when VWAP is too flat.
This can help reduce signals during sideways or low-directional market conditions.
### EMA Trend Filter
Uses a fast and slow EMA to confirm trend direction.
For example:
* Long: Fast EMA above Slow EMA
* Short: Fast EMA below Slow EMA
### ADX + DI Filter
ADX is used to measure trend strength, while +DI and -DI are used to confirm directional momentum.
This helps avoid UT Bot signals when the market has insufficient trend strength.
### RSI Filter
RSI can be used as an additional momentum confirmation for long and short trades.
### ATR Volatility Filter
Compares current ATR with its average value.
This can help avoid extremely low-volatility conditions.
### Volume Filter
Requires current volume to meet a configurable minimum relative to average volume.
### Higher Timeframe Trend Filter
Allows entries to be filtered using the direction of a higher-timeframe EMA.
This can be useful for lower-timeframe trading where entries should follow the broader market trend.
### Session Filter
Signals can be restricted to a selected trading session.
### Candle Direction Filter
Long signals can require a bullish signal candle, while short signals can require a bearish candle.
### Candle Strength Filter
Measures the body size of the signal candle relative to ATR and can filter weak candles.
### Maximum VWAP Distance
Prevents entries when price has already moved too far away from VWAP.
This can help reduce late entries after an extended move.
## Risk Management
The indicator includes multiple configurable stop-loss methods.
### Signal Candle Stop
The stop loss is placed below the signal candle for long trades or above the signal candle for short trades.
An optional ATR buffer can be added.
### Swing Stop
Uses the lowest or highest price within a selected lookback period.
### ATR Stop
Places the stop loss at a configurable ATR distance from the entry.
### Fixed Percentage Stop
Uses a fixed percentage distance from the entry price.
## Risk-to-Reward Ratio
The take-profit target is automatically calculated from the selected stop loss.
The Risk-to-Reward Ratio can be configured from:
**1:1 up to 1:4**
For example, with a 1:3 risk-to-reward ratio:
* Maximum planned loss = 1R
* Profit target = 3R
## Fixed Entry, Stop Loss and Take Profit Levels
When a valid trade signal occurs, the indicator stores the entry price, stop-loss price, and take-profit price.
These levels are then displayed as fixed horizontal lines on the price chart.
The levels do not continuously recalculate after the trade has been opened.
Finished trade levels can optionally remain visible on the chart for review.
## Dashboard
The built-in dashboard displays important information such as:
* Current UT Bot trend
* VWAP slope direction
* Current ADX value
* Long filter status
* Short filter status
* Number of enabled filters
* Selected Risk-to-Reward Ratio
* Stop-loss method
* Total trades
* Winning trades
* Losing trades
* Win rate
* Net R performance
* Current simulated position
## Backtest Statistics
The dashboard includes a simple internal bar-based trade simulation.
A trade is opened when a confirmed filtered UT Bot signal occurs.
The trade remains active until either the stop loss or take profit is reached.
If both the stop loss and take profit are touched within the same historical candle, the indicator uses a conservative assumption and counts the stop loss first.
Because historical OHLC candles do not always reveal the exact intrabar sequence, these statistics should be treated as an analytical approximation rather than exact execution results.
## Suggested Starting Setup
A simple trend-following configuration could use:
* UT Bot Sensitivity: 1.0
* UT ATR Length: 10
* VWAP Direction: Enabled
* VWAP Slope: Enabled
* EMA Trend: Enabled
* Fast EMA: 20
* Slow EMA: 50
* ADX + DI: Enabled
* Minimum ADX: 20–25
* RSI: Disabled initially
* Volume Filter: Disabled initially
* ATR Filter: Disabled initially
* Risk-to-Reward Ratio: 1:3
* Stop Loss: Signal Candle
Additional filters should ideally be tested individually instead of enabling every filter at the same time.
## Important
This indicator is designed as a **trading analysis and confirmation tool**.
It does not guarantee profitable trades and should not be considered financial advice.
Results can vary significantly depending on the market, timeframe, session, settings, spread, commissions, and execution conditions.
Always perform your own backtesting and forward testing before using any trading system with real capital.
Indicator

OBV MACD Indicator + ADX Filter [v6]# OBV MACD + ADX Trend Indicator
The **OBV MACD + ADX Trend Indicator** combines volume-based momentum, MACD-style trend analysis, and ADX trend-strength filtering into one tool.
The indicator is designed to help identify potential bullish and bearish momentum shifts while filtering out weaker market conditions.
## How It Works
The indicator uses a modified **On-Balance Volume (OBV)** calculation to combine price movement and volume information.
This volume-adjusted data is then processed with a selectable moving average and compared against a slower EMA to create a MACD-style momentum value.
A slope calculation is applied to the MACD output, and the resulting trend channel changes direction when momentum shifts.
The indicator also includes an **ADX filter**. Signals are only considered valid when ADX is above the selected minimum level, helping reduce signals during weak or sideways market conditions.
## Signal Logic
**Blue / Bullish Signal**
A bullish signal appears when the internal trend channel changes from bearish to bullish while the ADX value is above the selected minimum threshold.
This can be used as a potential long-entry confirmation.
**Red / Bearish Signal**
A bearish signal appears when the internal trend channel changes from bullish to bearish while the ADX value is above the selected minimum threshold.
This can be used as a potential short-entry confirmation.
## Main Features
* Volume-based OBV momentum calculation
* MACD-style momentum analysis
* Multiple selectable moving-average types
* DEMA, TEMA, TDEMA, TTEMA, HMA-based and zero-lag options
* Adjustable OBV smoothing
* Adjustable MACD slow length
* Adjustable slope sensitivity
* ADX trend-strength filter
* Custom minimum ADX threshold
* Bullish and bearish trend-change signals
* Optional pivot detection
* Alert conditions for long and short signals
## Suggested Usage
This indicator works best when combined with an additional market-direction filter.
For example:
**Long Setup**
1. Price is above VWAP.
2. VWAP slope is bullish.
3. ADX is above the selected threshold.
4. The OBV MACD indicator generates a bullish signal.
5. Enter according to your own risk-management rules.
**Short Setup**
1. Price is below VWAP.
2. VWAP slope is bearish.
3. ADX is above the selected threshold.
4. The OBV MACD indicator generates a bearish signal.
5. Enter according to your own risk-management rules.
The indicator can also be combined with market structure, support/resistance, volume profile, or higher-timeframe trend analysis.
## Important
This indicator is intended as a **confirmation and momentum tool**, not as a complete standalone trading strategy.
Signals should always be combined with proper risk management, stop-loss placement, and independent backtesting.
Performance may vary depending on the market, timeframe, trading session, and selected settings.
Indicator

Strategy

Indicator

Ichimoku Volatility & Momentum IndexOverview
The Ichimoku Volatility & Momentum Index (Kumo VMI) translates the structural breadth and internal dynamics of the classic Ichimoku Kinko Hyo system into a focused oscillator.
While traditional Ichimoku charts function as all-in-one indicators for trend, momentum, support, and resistance—where market volatility is typically gauged visually by the physical thickness (width) of the Kumo cloud—this indicator isolates and quantifies that exact relationship into an oscillator layout.
Core Mechanics
1. Cloud Width Index (Volatility)
On a standard chart, the thickness between Senkou Span A and Senkou Span B reveals how volatile or consolidated a market is. The Kumo VMI calculates this absolute distance between Span A and Span B as the Cloud Width Index (CWI):
Thin Cloud Width: Points to low volatility, tight consolidation, or market compression.
Expanding Cloud Width: Highlights building volatility, structural expansion, and potential breakout environments.
Smoothing MA: Includes a customizable moving average overlay (SMA, EMA, WMA, or RMA) to track the baseline trajectory of volatility changes over time.
2. TK Distance (Momentum Confluence)
To help confirm whether an expanding cloud width is backed by underlying directional strength, the indicator incorporates a TK Distance line measuring the separation between the Tenkan-sen and Kijun-sen. When cloud volatility increases alongside a rising TK momentum line, it provides powerful confluence that a significant directional move or breakout is underway.
3. Supplementary ATR Line
An optional Average True Range (ATR) line can be toggled on or off. This serves as a helpful secondary tool for assessing general market volatility context or assisting with practical stop-loss planning, without interfering with the primary Ichimoku volatility focus.
Key Features
Dedicated Volatility Oscillator: Converts visual cloud expansion and contraction into objective line data.
Momentum Integration: Combines cloud width with Tenkan/Kijun separation to spot high-confluence expansion phases.
Flexible Customization: Offers adjustable moving average types/lengths for smoothing, alongside an optional ATR reference line for risk management Indicator

Normalized Ichimoku OscillatorOverview
The Normalized Ichimoku Oscillator (NIO) transforms the comprehensive insight of the classic Ichimoku Kinko Hyo system into a dedicated momentum oscillator.
While a standard Ichimoku chart is an all-in-one indicator for momentum, trend direction, and support/resistance levels, it can sometimes be difficult to gauge how far price has stretched relative to historical limits. The NIO solves this by measuring the distance between price and the core Ichimoku lines, normalizing them using Average True Range (ATR) to create a clear, bounded perspective.
The Core Concept: Kijun-sen as the Primary Anchor
While price distance from key levels can be visualized on a standard chart, this oscillator quantifies those deviations against historical volatility:
The Primary Line (Kijun-sen): The oscillator centers heavily on the Kijun-sen (Base Line). The Kijun-sen distance serves as your main gauge for medium-term trend stretch and mean reversion.
Supplementary Lines: The Tenkan-sen, Span A, and Span B lines are also included as optional overlays. They allow you to track short-term momentum or cloud-edge distances alongside your primary Kijun-sen analysis, but can be toggled off to keep the chart clean.
Key Features
ATR Normalization: Converts raw price distances into volatility-adjusted units, making overbought and oversold thresholds reliable across different market conditions and asset volatilitites.
Dedicated Kijun MA: Includes a customizable smoothing Moving Average (EMA, SMA, or HMA) applied to the Kijun deviation line to help spot momentum shifts and trigger crosses.
Overbought / Oversold Thresholds: Features distinct warning and extreme zones (e.g., +/- 2.0 and +/- 3.0 ATR) to help identify potential market exhaustion or trend reversal points.
Visual Shading & Alerts: Dynamic zero-line fill highlights whether price is stretched above or below equilibrium, backed by automated alerts for extreme deviations. Indicator
