Confluence Levels ProConfluence Levels Pro is a multi-timeframe market-structure indicator designed to identify meaningful Support and Resistance levels while adding higher-timeframe reference levels and Premium/Discount context in one compact framework.
The objective is not to predict where price must reverse. Instead, the indicator highlights areas where price has demonstrated structural significance so traders can focus their analysis, confirmation and risk management around technically relevant locations.
Adaptive Multi-Timeframe Support & Resistance
The S/R engine derives levels from confirmed swing structure and can operate across up to six independently configurable timeframe slots.
Each slot can be enabled or disabled and assigned its own timeframe. If all timeframe slots are disabled, the indicator automatically falls back to the current chart timeframe.
Swing sensitivity adapts to market volatility using ATR-based volatility regimes. This allows the engine to become more selective during high-volatility conditions and more responsive when volatility contracts.
Nearby structural levels can be clustered into a single confluence level rather than producing multiple nearly identical lines. Multi-timeframe agreement, structural reactions, higher-timeframe significance, volume behaviour, freshness and confirmed role reversals contribute to the internal strength ranking.
Intelligent Level Management
The indicator does not permanently discard a valid level simply because it is temporarily far from price.
A larger internal S/R pool is maintained while only the most relevant Support and Resistance levels are displayed. Hidden levels can automatically become visible again if price approaches them or their relative importance increases.
A configurable minimum separation filter also prevents multiple nearby S/R lines from overlapping on the chart.
Support and Resistance lines are displayed as clean 1-pixel horizontal levels to keep the chart compact.
S/R Strength Score
Displayed S/R strength is a relative quality score from 0–100, not a probability of reversal.
The score considers factors including:
Structural validation and repeated swing evidence
Independent price reactions
Multi-timeframe confluence
Higher-timeframe significance
Reaction quality
Volume confirmation
Level freshness and age
Confirmed Support/Resistance role reversal
A higher score means the level has stronger supporting evidence within the indicator's framework. It does not mean price has the same percentage probability of reversing there.
Breaks and Role Reversal
A level is not automatically converted from Support to Resistance, or vice versa, simply because price trades through it.
Breaks require close-based confirmation with an ATR-adjusted tolerance. When role reversal is enabled, a broken level must subsequently be retested from the opposite side before it is confirmed as a flipped S/R level.
This helps reduce premature Support-to-Resistance and Resistance-to-Support classifications.
Previous Highs and Lows
The indicator also provides important objective higher-timeframe reference levels:
PDH / PDL — Previous Day High / Low
PWH / PWL — Previous Week High / Low
PMH / PML — Previous Month High / Low
When levels overlap within the selected tolerance, their labels can be combined to highlight higher-timeframe confluence while each underlying price level remains anchored to its actual value.
Unsupported lower-timeframe reference levels are automatically hidden when the chart timeframe is too high to reconstruct them reliably.
Premium / Discount Context
The Premium/Discount module provides location context within a selected structural range:
Premium — upper portion of the range
Equilibrium — central balance area
Discount — lower portion of the range
The range can be calculated from either the current chart structure or a user-selected timeframe.
Two selected-timeframe modes are available:
Confirmed HTF uses the last completed higher-timeframe state for stable analysis.
Developing HTF follows the currently forming higher-timeframe structure and therefore may change until that higher-timeframe candle closes.
If the selected Premium/Discount timeframe is lower than the chart timeframe, the module is safely hidden rather than displaying incomplete lower-timeframe information. The main S/R engine and previous high/low levels remain operational.
Alerts
Optional alerts are available for:
New Support / Resistance formation
Confirmed S/R break
Confirmed Support / Resistance role reversal
Typical Workflow
A practical way to use the indicator is:
Location — identify nearby MTF Support/Resistance and previous D/W/M levels.
Context — evaluate whether price is trading in Premium, Discount or around Equilibrium.
Confluence — give additional attention to levels supported by multiple timeframes or overlapping higher-timeframe references.
Confirmation — use your preferred execution methodology such as rejection, liquidity sweep, displacement, structure shift, candlestick confirmation or volume behaviour.
Risk Management — use S/R as a decision location rather than assuming every touch must produce a reversal.
Repainting / Data Behaviour
The Adaptive MTF Support & Resistance engine uses confirmed higher-timeframe structural data for level creation.
Previous Daily, Weekly and Monthly levels are based on completed periods.
The default Confirmed HTF Premium/Discount mode uses completed higher-timeframe information.
The optional Developing HTF Premium/Discount mode updates during the active higher-timeframe candle and may change until that candle closes. This behaviour is intentional and is provided for traders who want developing context.
Why These Modules Are Combined
The three components address different parts of the same market-location problem:
Adaptive MTF S/R identifies structurally important reaction levels.
Previous D/W/M highs and lows provide objective liquidity and reference levels.
Premium/Discount provides positional context within the broader structural range.
Used together, they provide a structured view of where price is, which levels matter nearby, and where confluence exists without turning the indicator into an entry-signal system.
Important
This indicator is a technical-analysis tool and does not guarantee future price behaviour. Support and Resistance can fail, break or be traded through. The strength score represents relative structural quality within the indicator's model and should not be interpreted as a statistical win rate or reversal probability. Indicator

Indicator

SMC Swing Structure + Order Blocks + CHoCH VolumeOrderBlock Radar — SMC Swing & Volume CHoCH
A Smart Money Concepts (SMC) toolkit that maps market structure and order blocks the way institutional order flow is typically read — without drowning your chart in noise from minor pivots.
What it does:
📊 Swing Structure (BOS / CHoCH) — Tracks the market's real trend using major swing highs and lows, not every small wiggle. A break with the trend is marked BOS (Break of Structure); a break against the trend is marked CHoCH (Change of Character) — the earliest, most reliable signal that momentum may be shifting.
📦 Order Blocks — Automatically plots the last opposing candle before each structural break — the classic "footprint" of where smart money likely entered before the move. Boxes extend forward and auto-delete once price mitigates them, so your chart only shows blocks that are still relevant.
🔊 Volume-Confirmed CHoCH — Not all character changes are equal. This indicator checks volume against its recent average at the moment of a CHoCH — when a break comes with a volume spike, it's tagged separately ("CHoCH ⚡Vol") and fires its own dedicated alert, helping you filter high-conviction reversals from low-volume fakeouts.
🔔 Built-in Alerts — Six alert conditions ready to go: bullish/bearish CHoCH, bullish/bearish CHoCH with volume confirmation, and bullish/bearish BOS. Set them once and get pinged the moment structure shifts.
Customizable settings:
Swing pivot sensitivity (how "major" a swing needs to be to count)
Optional internal (minor) structure overlay for extra context
Order block count limits, lookback range, and mitigation method (wick vs. close)
Volume average length and spike threshold
Full color and label control
How to use it: Best used as a structural context tool — combine CHoCH signals with your own entry confirmation (order block retest, FVG fill, liquidity sweep, etc.) rather than trading the label in isolation. Works on any timeframe and asset class; higher timeframes and liquid instruments tend to give the cleanest structure.
This is a technical analysis tool, not financial advice — always manage risk and confirm signals with your own strategy. Indicator

Indicator

Price Action Compass [Artillery]Price Action Compass is a price-action checklist indicator that enforces five classic price-action entry rules as one system. It classifies the market as UPTREND, DOWNTREND or TRADING RANGE and only prints a signal when every rule for the current mode agrees, so the chart itself enforces a disciplined process instead of leaving each condition to memory.
WHAT IT DOES
1) Trend Rule - trend is defined by fast/slow EMA structure plus EMA slope over a lookback, so signals only ever point with the trend.
2) No Counter-Trend Rule - long setups are blocked in a downtrend and short setups are blocked in an uptrend.
3) Trading Range Rule - when the range height over the lookback stays under an ATR-based cap, the script switches to range mode and only looks for fades at the edges: buys in the lower edge zone, sells in the upper edge zone.
4) Second-Entry Rule - in trend mode the script counts pullback entries against the EMA and, by default, only signals the second entry (a pullback attempt that failed once and then resumed). First attempts are skipped as the statistically weakest.
5) Signal Bar Rule - the entry bar itself must qualify: a minimum body-to-range ratio, a close in the top portion of the bar for buys (bottom for sells), and a maximum bar size in ATR terms so entries are not taken on climactic bars.
WHY THESE FIVE TOGETHER
Each rule alone is a well-known discretionary filter. The point of combining them is that they form a single state machine: the mode decides which rules apply, the entry counter tracks setup quality within that mode, and the signal-bar test validates the exact bar you would enter on. Removing any one of them changes the behaviour of the whole, which is why they are published as one tool rather than separate scripts.
The five-rule framework is the classic price-action methodology taught by Al Brooks, in the summarized form popularised by Thomas Wade. The concept credit belongs to them; all code in this script is original, written from scratch using only Pine built-ins, with no third-party or reused open-source code.
WHAT YOU SEE ON THE CHART
- BUY / SELL labels on qualifying bars (tagged "2nd" when the second-entry rule produced them)
- Signal-bar highlighting on bars that pass Rule 5
- The fast/slow EMA pair with a shaded structure zone between them
- Projected stop and target zones for the most recent signal, based on the SL buffer and R:R inputs (drawn for reference, not as advice)
- A compact dashboard showing Mode, entry counts in each direction, current signal-bar quality, the active signal state, session signal count and the configured R:R
INPUTS
Direction (Both / Long Only / Short Only), Trend (fast EMA, slow EMA, slope lookback), Trading Range (lookback, max height as ATR multiple, edge zone percent), High-Probability Setup (require 2nd entries), Signal Bar (min body/range, close strength, max size in ATR), Risk (stop buffer in ticks, R:R target) and Visuals (label sizes, dashboard position, five colour themes). Defaults were chosen for liquid intraday futures on 1-15 minute charts, but every threshold is exposed so the tool can be tuned to any symbol or timeframe.
ALERTS
Three alert conditions are included: BUY signal, SELL signal, and Any signal.
BEHAVIOUR NOTES
Signals are evaluated on the live bar and confirmed at bar close, so a forming signal can appear and disappear until its bar closes. The script uses no higher-timeframe requests and no lookahead. It draws up to 500 labels/lines/boxes, so very dense charts recycle the oldest drawings first.
This is an educational and analytical tool for studying price action. It does not predict future results and it is not financial advice. Indicator

Equalhigh Trend Propulsion TunnelEQUALHIGH — TREND PROPULSION TUNNEL v2
OVERVIEW
Trend Propulsion Tunnel is a multi-horizon trend-following indicator designed to distinguish between:
• A trend beginning to accelerate
• A healthy established trend
• A powerful but advanced trend
• A rising price with deteriorating propulsion
• A confirmed bearish reversal
Instead of relying on moving-average crossovers, the indicator models a trend as a moving system with five components:
• Direction
• Propulsion
• Coherence
• Friction
• Trend Reserve
The results are displayed directly on the price chart through an adaptive colored tunnel, a luminous trend core, a regime ribbon and event markers.
HOW IT WORKS
The indicator applies linear regression to the logarithm of price over three horizons:
• Fast horizon: 13 bars
• Medium horizon: 26 bars
• Slow horizon: 52 bars
Each regression slope is normalized by realized return volatility. The three normalized slopes are then combined into a single Direction score.
The default weighting is:
• Fast horizon: 45%
• Medium horizon: 35%
• Slow horizon: 20%
This gives greater importance to recent information while preserving the influence of the longer-term trend.
THE PROPULSION TUNNEL
The tunnel is centered on the slow logarithmic regression trend.
Its width adapts to:
• Average True Range
• Trend friction
• Multi-horizon coherence
The tunnel expands when the price path becomes noisy or unstable. It contracts when the trend becomes cleaner and more coherent.
The tunnel is not intended to operate as conventional support or resistance. It visualizes the estimated trend path and its current structural uncertainty.
TREND CORE
The luminous central line represents the slow regression trend.
Its color changes according to the active propulsion regime.
Price above the core is not automatically bullish, and price below it is not automatically bearish. Direction, propulsion and coherence must be interpreted together.
REGIME RIBBON
The colored ribbon below the candles provides a compact historical view of the detected regimes.
• Violet: Ignition
• Blue: Launch
• Cyan: Cruise
• Gold: Overdrive
• Orange: Engine Failure
• Red: Reversal
The ribbon can be disabled independently from the tunnel.
COCKPIT METRICS
DIRECTION
Direction measures the combined orientation of the fast, medium and slow regression slopes.
• Positive values indicate an upward trend structure.
• Negative values indicate a downward trend structure.
• Larger absolute values indicate stronger directional alignment.
Direction is not the same as propulsion. A trend can remain positive while losing acceleration.
PROPULSION
Propulsion measures the smoothed change in the Direction score.
• Positive propulsion: the trend is strengthening.
• Near zero: the trend is moving at a relatively stable speed.
• Negative propulsion: the trend is losing strength.
A declining Propulsion score can therefore warn of deterioration before Direction becomes negative.
COHERENCE
Coherence measures how broadly the trend is supported.
It combines:
• Agreement between the three regression horizons
• Percentage of recent returns moving with the dominant direction
High coherence means the trend is broadly distributed across timeframes and bars.
Low coherence suggests that the movement may depend on only a small number of exceptional candles.
FRICTION
Friction measures the amount of noise opposing the useful movement.
It is derived from path efficiency:
Efficiency = Net displacement ÷ Total distance travelled
Friction = 1 − Efficiency
• Low friction: clean and directional movement
• High friction: unstable, erratic or range-bound movement
Higher friction causes the tunnel to widen.
TREND RESERVE
Trend Reserve is a composite score between 0% and 100%.
It combines:
• Coherence
• Path efficiency
• Propulsion support
• Price extension from the slow regression trend
A high Reserve score indicates that the current trend remains structurally supported.
A low Reserve score indicates that the trend may be vulnerable, even if price has not yet reversed.
Trend Reserve is not a forecast of how many bars the trend will continue.
REGIME DEFINITIONS
IGNITION — VIOLET
The first signs of positive direction and acceleration are appearing.
The structure is not yet sufficiently strong or coherent for confirmation.
Typical use:
• Add the asset to a watchlist
• Check fundamentals and valuation
• Wait for Launch or Cruise confirmation
LAUNCH — BLUE
A new accelerating bullish trend has been confirmed.
Default requirements include:
• Direction at or above the Launch threshold
• Propulsion at or above the minimum threshold
• Coherence at or above 70%
• Efficiency at or above 25%
• Price extension below the maximum permitted level
• Completed chart bar
A blue “L” marker identifies the first confirmed Launch bar.
Launch is the earliest fully confirmed bullish regime, but it is not an automatic buy signal.
CRUISE — CYAN
The trend is positive, coherent and structurally healthy, while acceleration has normalized.
Cruise often represents a more stable phase than Launch.
A cyan “C” marker appears when the indicator newly enters Cruise.
Potential interpretation:
• Existing position: trend-following hold
• New position: possible pullback or reinforcement phase
• Risk management: monitor Reserve and Propulsion
OVERDRIVE — GOLD
The trend has reached a very high Direction score with strong coherence and sufficient Reserve.
Overdrive represents exceptional trend strength, but the move may already be advanced.
It should not automatically be interpreted as the best entry point.
ENGINE FAILURE — ORANGE
Price direction remains positive, but the underlying trend engine is deteriorating.
Engine Failure can be triggered by:
• Strongly negative propulsion
• Trend Reserve below 30%
• Coherence below 50%
An orange “!” marker identifies the beginning of this condition.
This is the indicator’s principal early-warning signal. It may appear while price is still rising.
BEAR FADE — GREEN/TURQUOISE
A previously negative trend begins losing bearish propulsion.
This does not yet confirm a bullish reversal. It indicates that bearish pressure is weakening.
BEAR DRIVE — RED/PINK
The downward trend is accelerating with sufficient coherence and efficiency.
This is the bearish counterpart of Launch.
REVERSAL — RED
A confirmed negative multi-horizon trend structure is present.
A red “R” marker appears when Reversal becomes newly active on a completed bar.
Reversal should be treated as a risk-management signal rather than an automatic short entry.
EVENT MARKERS
L — LAUNCH
New accelerating bullish trend confirmed.
C — CRUISE
New stable and coherent bullish regime.
! — ENGINE FAILURE
Direction remains positive, but propulsion, coherence or Reserve has deteriorated.
R — REVERSAL
Bearish multi-horizon reversal confirmed.
RECOMMENDED SETTINGS
WEEKLY INVESTING PROFILE
• Fast horizon: 13
• Medium horizon: 26
• Slow horizon: 52
• Propulsion smoothing: 3
• Minimum Launch Direction: 28
• Minimum Launch Propulsion: 4
• Minimum Coherence: 70%
• Minimum Efficiency: 25%
• Maximum Extension: 2.50 Z
• Engine Failure Propulsion: −3
• Tunnel width: 1.80 ATR
This is the recommended starting configuration for medium- and long-term stock analysis.
DAILY SWING PROFILE
• Fast horizon: 10
• Medium horizon: 21
• Slow horizon: 50
• Propulsion smoothing: 3–5
• Minimum Coherence: 70%
• Minimum Efficiency: 25–30%
Shorter settings generate earlier but potentially noisier signals.
CONSERVATIVE PROFILE
For fewer and stronger signals:
• Increase Minimum Launch Direction
• Increase Minimum Launch Propulsion
• Increase Minimum Coherence to 75–80%
• Increase Minimum Efficiency to 30%
• Keep the maximum extension filter enabled
PRACTICAL WORKFLOW
A preferred bullish sequence is:
Ignition → Launch → Cruise → Overdrive
A typical deterioration sequence is:
Overdrive or Cruise → Engine Failure → Reversal
A complete investment process may use the indicator as follows:
1. Confirm that company fundamentals are stable or improving.
2. Estimate fair value and the available margin of safety.
3. Look for Ignition, Launch or a healthy Cruise regime.
4. Avoid chasing excessively extended prices.
5. Monitor Propulsion, Coherence and Reserve after entry.
6. Reassess the position when Engine Failure appears.
7. Review the thesis and risk exposure after a confirmed Reversal.
The indicator is designed to improve timing and trend monitoring. It does not replace fundamental analysis or valuation.
DISPLAY SETTINGS
SHOW PROPULSION TUNNEL
Displays the adaptive channel around the regression trend.
SHOW LUMINOUS TREND CORE
Displays the central trend line and its glow.
SHOW REGIME RIBBON
Displays the historical sequence of trend regimes below price.
SHOW EVENT MARKERS
Displays the L, C, ! and R markers.
SHOW COCKPIT
Displays the current Direction, Propulsion, Coherence, Friction and Reserve values.
COLOR CHART BARS
Applies the current regime color to the chart candles.
BASE TUNNEL WIDTH
Controls the tunnel’s initial width in ATR units.
A higher value produces a wider and less sensitive tunnel.
RIBBON DISTANCE
Controls the distance between the regime ribbon and the candle lows.
ALERTS
Four alert conditions are included:
• TPE — Launch Confirmed
• TPE — Cruise Entry
• TPE — Engine Failure
• TPE — Reversal Confirmed
For reliable notifications, configure PulseWire alerts using:
Once Per Bar Close
NON-REPAINTING BEHAVIOR
The indicator uses:
• No future pivots
• No negative plotting offsets
• No lookahead data
• No future-bar confirmation
• Event markers confirmed only at bar close
Values may naturally change while the current realtime candle is still open. Confirmed markers are only generated when that candle closes.
LIMITATIONS
Trend Propulsion Tunnel does not:
• Calculate fair value
• Analyse company fundamentals
• Predict earnings or news events
• Guarantee that a trend will continue
• Provide automatic investment recommendations
• Replace position sizing or risk management
Signals may be delayed after large price gaps. The indicator may also be less reliable on illiquid assets or during highly discontinuous market conditions.
DISCLAIMER
This indicator is provided for educational and analytical purposes only. It does not constitute financial, trading or investment advice. Past statistical relationships do not guarantee future results.
Indicator

Auto Trendlines (Multi-Timeframe Auto-Scaling)draws trendlines on all timeframes
//@version=6
indicator('Auto Trendlines (Multi-Timeframe Auto-Scaling)', overlay = true, max_lines_count = 20, max_labels_count = 20)
// ─────────────────────────────
// MODE SELECTION
// ─────────────────────────────
useAutoScale = input.bool(true, 'Auto-Scale Pivot Settings to Timeframe', tooltip = 'If ON, Pivot Left/Right below are ignored and auto-set based on chart timeframe. Turn OFF to use manual values.')
manualPivotLeft = input.int(10, 'Manual Pivot Left Bars', minval = 1, group = 'Manual Settings (used if Auto-Scale is OFF)')
manualPivotRight = input.int(10, 'Manual Pivot Right Bars', minval = 1, group = 'Manual Settings (used if Auto-Scale is OFF)')
// ─────────────────────────────
// AUTO-SCALE LOGIC
// ─────────────────────────────
tfMinutes = timeframe.in_seconds(timeframe.period) / 60
getAutoPivot(tfMin) =>
int result = 3
if tfMin <= 15
result := 6
result
else if tfMin <= 60
result := 12
result
else if tfMin <= 240
result := 9
result
else if tfMin <= 1440
result := 10
result
else if tfMin <= 10080
result := 5
result
result
autoPivot = getAutoPivot(tfMinutes)
pivotLeft = useAutoScale ? autoPivot : manualPivotLeft
pivotRight = useAutoScale ? autoPivot : manualPivotRight
// ─────────────────────────────
// DISPLAY INPUTS
// ─────────────────────────────
lookback = input.int(200, 'Max Bars to Look Back for Pivots', minval = 50, maxval = 500, group = 'Display')
lineWidth = input.int(2, 'Line Width', minval = 1, maxval = 4, group = 'Display')
extendRight = input.bool(true, 'Extend Lines to the Right', group = 'Display')
upColor = input.color(color.new(color.lime, 0), 'Uptrend Line Color', group = 'Display')
downColor = input.color(color.new(color.red, 0), 'Downtrend Line Color', group = 'Display')
showLabels = input.bool(true, 'Show Break Labels', group = 'Display')
showBreakAlerts = input.bool(true, 'Enable Trendline Break Alerts', group = 'Display')
showInfoBox = input.bool(true, 'Show Auto-Scale Info Box', group = 'Display')
// ─────────────────────────────
// PIVOT DETECTION
// ─────────────────────────────
pivotHigh = ta.pivothigh(high, pivotLeft, pivotRight)
pivotLow = ta.pivotlow(low, pivotLeft, pivotRight)
var int ph1Bar = na
var float ph1Val = na
var int ph2Bar = na
var float ph2Val = na
var int pl1Bar = na
var float pl1Val = na
var int pl2Bar = na
var float pl2Val = na
if not na(pivotHigh)
ph2Bar := ph1Bar
ph2Val := ph1Val
ph1Bar := bar_index - pivotRight
ph1Val := pivotHigh
ph1Val
if not na(pivotLow)
pl2Bar := pl1Bar
pl2Val := pl1Val
pl1Bar := bar_index - pivotRight
pl1Val := pivotLow
pl1Val
// ─────────────────────────────
// DRAW TRENDLINES
// ─────────────────────────────
var line downTrendLine = na
var line upTrendLine = na
var label infoBox = na
lineExtend = extendRight ? extend.right : extend.none
if not na(ph1Bar) and not na(ph2Bar) and bar_index - ph2Bar <= lookback
if ph1Val < ph2Val
if not na(downTrendLine)
line.delete(downTrendLine)
downTrendLine := line.new(ph2Bar, ph2Val, ph1Bar, ph1Val, extend = lineExtend, color = downColor, width = lineWidth, style = line.style_solid)
downTrendLine
if not na(pl1Bar) and not na(pl2Bar) and bar_index - pl2Bar <= lookback
if pl1Val > pl2Val
if not na(upTrendLine)
line.delete(upTrendLine)
upTrendLine := line.new(pl2Bar, pl2Val, pl1Bar, pl1Val, extend = lineExtend, color = upColor, width = lineWidth, style = line.style_solid)
upTrendLine
// ─────────────────────────────
// BREAK DETECTION
// ─────────────────────────────
getLineValueAtBar(ln, idx) =>
float result = na
if not na(ln)
x1 = line.get_x1(ln)
y1 = line.get_y1(ln)
x2 = line.get_x2(ln)
y2 = line.get_y2(ln)
if x2 != x1
slope = (y2 - y1) / (x2 - x1)
result := y1 + slope * (idx - x1)
result
result
downLineValNow = getLineValueAtBar(downTrendLine, bar_index)
upLineValNow = getLineValueAtBar(upTrendLine, bar_index)
downBreakUp = not na(downLineValNow) and close > downLineValNow and close <= getLineValueAtBar(downTrendLine, bar_index - 1)
upBreakDown = not na(upLineValNow) and close < upLineValNow and close >= getLineValueAtBar(upTrendLine, bar_index - 1)
if showLabels and downBreakUp
label.new(bar_index, low, 'Break Up', style = label.style_label_up, color = color.new(color.lime, 20), textcolor = color.white, size = size.small)
if showLabels and upBreakDown
label.new(bar_index, high, 'Break Down', style = label.style_label_down, color = color.new(color.red, 20), textcolor = color.white, size = size.small)
if barstate.islast and showInfoBox
if not na(infoBox)
label.delete(infoBox)
infoPrefix = useAutoScale ? 'Auto-Scale ON' : 'Manual Mode'
infoText = infoPrefix + ' TF: ' + timeframe.period + ' Pivot L/R: ' + str.tostring(pivotLeft) + '/' + str.tostring(pivotRight)
infoBox := label.new(bar_index, ta.highest(high, 50), infoText, style = label.style_label_down, color = color.new(color.gray, 70), textcolor = color.white, size = size.small)
infoBox
// ─────────────────────────────
// ALERTS
// ─────────────────────────────
alertcondition(showBreakAlerts and downBreakUp, title = 'Downtrend Line Broken (Bullish)', message = 'Price closed above the downtrend line')
alertcondition(showBreakAlerts and upBreakDown, title = 'Uptrend Line Broken (Bearish)', message = 'Price closed below the uptrend line')
// ─────────────────────────────
// PIVOT MARKERS
// ─────────────────────────────
plotshape(pivotHigh, title = 'Pivot High', style = shape.triangledown, location = location.abovebar, color = downColor, size = size.tiny, offset = -pivotRight)
plotshape(pivotLow, title = 'Pivot Low', style = shape.triangleup, location = location.belowbar, color = upColor, size = size.tiny, offset = -pivotRight)
Indicator

RTH Gap [TakingProphets]OVERVIEW
RTH Gap marks the Opening Range Gap: the gap between the prior regular-session close and the next regular-session open.
It measures from the prior RTH close at 4:14 PM New York time to the next RTH open at 9:30 AM New York time, draws that range as a box, and overlays quadrant levels at 0, 25, 50, 75, and 100 percent.
This indicator does not provide trading signals, entries, or forecasts. It is a visualization aid for studying the Opening Range Gap within an ICT-style analytical framework.
The Opening Range Gap (ORG) is the space between where the regular session closed and where it reopened the next day. Within ICT-style education, this gap and its internal quadrants, especially the 50 percent midpoint, are studied for how price reacts when it trades back into them. This tool marks the gap and its quadrants automatically so they can be reviewed objectively rather than drawn by hand.
PURPOSE AND SCOPE
-----------------------------------------------------------------------------------------------
The tool serves as a research and study aid to document and analyze the Opening Range Gap and its internal levels.
It is commonly used to:
Automate the marking of the daily RTH gap and its quadrants.
Study how price reacts at the 50 percent midpoint and the other quadrant levels.
Keep several prior gaps on the chart for multi-day review.
Journal how often a gap is filled, respected, or rejected.
Teach the Opening Range Gap concept in a mentorship or training context.
LOGIC STRUCTURE
-----------------------------------------------------------------------------------------------
RTH Gap detects the gap on the 1-minute series and displays it consistently on any chart timeframe.
Detection
The prior RTH close is captured at 4:14 PM New York time.
The next RTH open is captured at 9:30 AM New York time.
The gap between those two prices becomes the range for that session.
Detection runs on the 1-minute series and its values are latched, so the gap displays correctly whether the chart is on a low or high timeframe.
Quadrants
The gap is drawn as a box, with horizontal levels at 0, 25, 50, 75, and 100 percent of the range.
Each level can be toggled, colored, and styled independently, and optionally labeled with its percentage and formation date.
Selection and Retention
The number of gaps shown is user controlled.
Gaps can be selected either by how recently they formed or by proximity of their midpoint to current price.
An IPDA lookback setting controls how far back gaps are retained before being pruned.
COMPONENTS AND VISUALS
-----------------------------------------------------------------------------------------------
Gap Box — The range between the prior RTH close and the next RTH open.
Quadrant Levels — Horizontal lines at 0, 25, 50, 75, and 100 percent of the gap.
Quadrant Labels — Optional labels showing each level's percentage and, if enabled, the gap's formation date.
INPUT CATEGORIES
-----------------------------------------------------------------------------------------------
General — Enable toggle, IPDA lookback length, date-prefix and quadrant-label toggles, and the selection mode (Most recent or Proximity).
Opening Range Gaps — Master visibility and how many gaps to display.
Opening Range Gap Style — Box color, fill and border options, gradient toggle, label color and size, and independent visibility, color, style, and width for each of the five quadrant levels.
USAGE GUIDELINES
-----------------------------------------------------------------------------------------------
RTH Gap is suited for the review and documentation of Opening Range Gap behavior.
Recommended educational workflows:
Mark the daily RTH gap and review how price interacts with its 50 percent midpoint.
Keep two or three prior gaps on the chart to study multi-day reactions.
Compare gaps that fill quickly against those that hold as support or resistance.
Switch between Most recent and Proximity modes depending on the study.
Teach the Opening Range Gap concept in mentorship or training sessions.
The tool is oriented toward regular-session index futures, where the RTH gap is most applicable.
OPERATIONAL NOTES AND LIMITATIONS
-----------------------------------------------------------------------------------------------
Detection is based on the 4:14 PM and 9:30 AM New York session times and is oriented toward regular-session instruments.
Gap values are latched from the 1-minute series so they display on any chart timeframe.
The selection mode and display count control which gaps appear, not how many are detected.
The IPDA lookback setting controls how far back gaps are retained.
The box, quadrant lines, and labels are visual study aids only.
This tool does not include setups, entries, targets, or alerts.
ORIGINALITY AND ATTRIBUTION
-----------------------------------------------------------------------------------------------
The detection and rendering engine is written from scratch in Pine v6, using a latched 1-minute session-time detector so the gap displays on any timeframe, a quadrant gradient system with per-level styling, two selection modes, and a lookback-based retention system.
Core concepts such as the Opening Range Gap and its quadrant levels are publicly taught within ICT-style market education. This implementation was designed and engineered by TakingProphets.
TERMS AND DISCLAIMER
-----------------------------------------------------------------------------------------------
This indicator is for educational and informational use only. It does not provide financial advice or predictive output. Historical patterns do not guarantee future results. All users remain responsible for their own decisions. Use of this script implies agreement with PulseWire's Terms of Use. Indicator

Range MTF LinesRange MTF Lines shows the direction of the current price range across four timeframes at once, as a compact strip in its own pane at the bottom of the chart.
How the range is defined
The first candle sets the initial range — its high and its low. The range stays alive for as long as candles keep closing inside it. The first candle that closes outside the range ends it, and that same candle's high and low immediately become the new range. Then it repeats.
Because every range is created by a close outside the previous one, each range is born with a direction:
Up (green) — it was created by a close above the old range
Down (red) — it was created by a close below the old range
Neutral (grey) — the very first range on the chart, which has no parent to break
What you see
Four rows, one per timeframe slot, at fixed heights: slot 1 on top, slot 4 at the bottom (defaults 5 / 15 / 30 / 60 minutes). Each row is coloured bar by bar with that timeframe's current range direction and is labelled with its timeframe at the right-hand end.
Because the rows live in their own pane at a fixed height, they never drift with price — you can zoom or scroll anywhere and the strip stays put and readable. Drag the pane divider to set how tall it is.
Reading it top to bottom tells you at a glance whether the short and long timeframes agree: all four green is broad one-way pressure, alternating colours means the lower timeframes are chopping inside a higher-timeframe range.
Settings
Row thickness — how chunky the rows are drawn
Tag rows with their timeframe — the label at the right end of each row
Per slot — show/hide, the timeframe, and separate colours for up, down and first range
Alert on break — per slot, fires on bar close when that timeframe forms a new range, and reports the new high and low
Each slot runs on its own timeframe independently of the chart's. A slot set to the chart timeframe is evaluated natively with no lag; higher timeframes are pulled in and track the live higher-timeframe bar.
Notes
This is a structure-reading tool, not a signal generator — it describes where price is relative to the ranges it keeps building, and nothing about the strip is predictive on its own. Ranges are decided on closes, so a wick outside the range does not end it. Companion script: Range Break Levels (MTF), which draws these same ranges on the candles themselves. Indicator

Equalhigh - Lepage Dual-Regime DetectorEqualhigh — Lepage Dual-Regime Detector
User Manual
Overview
The Equalhigh Lepage Dual-Regime Detector is a non-parametric change-point indicator for PulseWire. It is designed to identify recent changes in either:
Location: the central level of the return distribution.
Scale: the dispersion of the return distribution.
Both simultaneously: a mixed structural break.
Unlike a conventional momentum oscillator, the indicator does not ask whether price is overbought or oversold. It asks whether recent return behavior is statistically different from earlier return behavior inside the active window.
This is a diagnostic regime detector, not an automatic buy-and-sell system.
Why use a location-scale test?
A market transition does not always begin with an obvious directional move. Sometimes the median return changes while volatility remains stable. In other cases, volatility expands or contracts before a clear directional shift becomes visible.
The Lepage framework combines two rank-based components:
The Wilcoxon rank-sum component measures a change in location.
The Ansari–Bradley component measures a change in scale.
The combined statistic can therefore detect more types of structural change than a location-only test.
Observation series
The test is applied to multi-bar logarithmic returns:
Observation = 100 × ln(Source / Source )
Using returns instead of raw prices reduces the tendency to classify the normal upward drift of an asset as a permanent structural break.
Logarithmic returns require positive source values. The indicator remains unavailable when the active window contains invalid or non-positive source observations.
Core calculation
For every active window, the script:
Stores the return observations chronologically.
Assigns average Wilcoxon ranks to equal observations.
Assigns average Ansari–Bradley center-weighted scores to equal observations.
Tests every split that leaves at least the selected Minimum segment size on both sides.
Standardizes the location and scale score sums at each split.
Calculates the Lepage statistic:
L = Z_location² + Z_scale²
Selects the split with the highest Lepage statistic.
Calculates the fixed-split asymptotic p-value:
p_fixed ≈ exp(−L / 2)
Applies a conservative Bonferroni correction for all admissible splits:
p_scan = min(1, Number of tested splits × p_fixed)
Uses medians and median absolute deviations to classify the type and practical size of the detected change.
The scan correction is important because selecting the strongest result from many candidate splits would otherwise make the displayed p-value too optimistic.
Understanding the components
Location Z
The location component is displayed with an intuitive directional sign:
Location Z > 0: the later segment shifted upward.
Location Z < 0: the later segment shifted downward.
A larger absolute value represents stronger rank-based location evidence.
Scale Z
The scale component describes the change in return dispersion:
Scale Z > 0: the later segment became more dispersed.
Scale Z < 0: the later segment became less dispersed.
A larger absolute value represents stronger rank-based scale evidence.
The combined statistic squares both components, so the p-value measures the strength of the overall break. The signs are used to interpret its direction.
Color system
Color or marker
Interpretation
Green — LEVEL +
Confirmed positive location shift without a qualifying scale shift
Red — LEVEL −
Confirmed negative location shift without a qualifying scale shift
Purple — VOL +
Confirmed scale expansion without a qualifying location shift
Blue — VOL −
Confirmed scale compression without a qualifying location shift
Orange — MIXED
Confirmed location and scale shift occurring together
Yellow — ?
Possible break with incomplete statistical confirmation
Gray
No currently actionable break
A volatility expansion is not automatically bearish, and a volatility compression is not automatically bullish. These states describe dispersion, not market direction.
The orange mixed state does not encode direction by itself. Use Median Shift and MAD Scale Shift in the dashboard to determine whether the mixed change combines an upward or downward level shift with expansion or compression.
Confidence line
The main line is calculated as:
Scan-adjusted confidence = 100 × (1 − p_scan)
The default boundaries are:
95: confirmed statistical zone when the confirmed p-value is 0.05.
85: possible statistical zone when the possible-break p-value is 0.15.
The line color reflects the currently classified regime.
Important: this confidence value is not the probability that price will rise, the probability that a trade will be profitable, a win rate, or a forecast-accuracy score.
Confirmation logic
A confirmed regime requires all of the following:
The scan-adjusted p-value is less than or equal to Confirmed scan p-value.
The estimated break is no older than Maximum actionable break age.
At least one component passes its practical-effect threshold.
The contributing component also passes Minimum component Z.
Positive or negative location shift
The robust location effect reaches Minimum location shift.
The absolute Location Z reaches Minimum component Z.
The scale component does not independently pass all its confirmation filters.
The sign of the median shift determines positive or negative classification.
Scale expansion or compression
The symmetric MAD scale-ratio change reaches Minimum scale-ratio change.
The absolute Scale Z reaches Minimum component Z.
The location component does not independently pass all its confirmation filters.
The MAD ratio determines expansion or compression.
Mixed break
Both the location and scale components pass their effect-size and component-Z filters.
Possible break
The scan-adjusted p-value is above the confirmed threshold but no higher than the possible-break threshold. At least one component must also reach half of its normal effect-size and component-Z requirements.
Dashboard
Dashboard field
Meaning
Lepage State
Current regime classification
Scan-Adj P
Bonferroni-adjusted approximate p-value for the split scan
Break Age
Estimated number of bars since the selected split
Location Z
Directional standardized Wilcoxon component
Scale Z
Directional standardized Ansari–Bradley component
Median Shift
Post-break median return minus pre-break median return, in percentage points
Location Effect
Median shift divided by a robust sigma estimate
MAD Scale Shift
Conventional percentage change from pre-break MAD to post-break MAD
Additional dashboard states include:
FILTERED BREAK: the combined statistic is significant and recent, but neither component passes all practical-effect and Z filters.
OLD BREAK: the combined statistic remains significant inside the window, but the estimated split is older than Maximum actionable break age.
STABLE REGIME: no currently actionable or possible break.
Input guide
1. Observations
Price sourceSeries used to calculate logarithmic returns. Close is the standard setting.
Log-return horizonNumber of bars covered by each return observation. Lower values react to short moves. Higher values emphasize slower market behavior but create more overlap between consecutive observations.
Lepage windowNumber of return observations in each rolling test. Short windows react faster but are noisier. Long windows are more stable but respond later.
Minimum segment sizeMinimum number of observations required before and after every candidate split. Increasing it reduces unstable edge detections but prevents the test from selecting extremely recent breaks.
2. Validation
Confirmed scan p-valueMaximum adjusted p-value for confirmation. The default is 0.05. Lower values produce fewer and more selective events.
Possible-break scan p-valueMaximum adjusted p-value for the yellow early-warning state. The default is 0.15.
Maximum actionable break ageMaximum number of bars allowed between the estimated split and the current bar.
Minimum location shiftMinimum median shift measured in robust sigma units. The robust sigma is 1.4826 × window MAD, with standard deviation used as a fallback when necessary.
Minimum scale-ratio change (%)Minimum symmetric difference between pre-break and post-break MAD. Symmetric measurement treats a doubling and a halving of scale as equally large changes for filtering purposes.
Minimum component ZPrevents a regime label from being attributed to a component that contributed too little to the combined Lepage statistic. The default is 1.00.
Confirm signals at bar closeWhen enabled, new markers and alert events are confirmed only when the current bar closes. This is the recommended setting.
3. Display
These settings independently control regime backgrounds, confirmed labels, possible-break markers, and the dashboard.
Suggested starting profiles
Use case
Return horizon
Window
Minimum segment
Maximum age
Location effect
Scale change
Component Z
General swing trading
5
60
10
10
0.25
25%
1.00
Faster monitoring
3
50
8
7
0.30
30%
1.25
Slower regime analysis
10
90
15
15
0.35
30%
1.00
These profiles are starting points, not optimized trading parameters. Test settings across different assets and unseen market periods.
Interpretation examples
Green location event
Suppose the dashboard shows:
Scan-adjusted p-value: 0.03
Break age: 6
Median shift: +0.80 pp
Location effect: +0.55 sigma
MAD scale shift: +10%
The evidence supports a recent upward change in the central return level, while the scale change remains below its filter.
Purple volatility-expansion event
Suppose the location effect is small, but post-break MAD is 60% higher, Scale Z is strongly positive, and the adjusted p-value is below 0.05. The indicator classifies a volatility expansion. Market direction must be determined separately.
Orange mixed event
If both median returns and dispersion change materially, the indicator displays MIXED. A positive Median Shift with a positive MAD Scale Shift represents improving returns accompanied by expanding volatility. A negative Median Shift with expanding volatility can represent a more hostile risk regime.
Practical workflow
Use ordinary candlesticks on a liquid instrument.
Keep Confirm signals at bar close enabled.
Treat yellow as an observation state rather than an entry instruction.
When a confirmed event appears, inspect Location Z, Scale Z, Median Shift, and MAD Scale Shift.
Confirm the interpretation with price structure, volume, liquidity, and higher-timeframe context.
Define entry, invalidation, position sizing, and exit rules independently.
The indicator is particularly useful as a regime filter. For example, a trend strategy may be treated differently during purple volatility expansion than during blue volatility compression.
Alerts
Six alert conditions are available:
Lepage — Possible break
Lepage — Positive level shift
Lepage — Negative level shift
Lepage — Volatility expansion
Lepage — Volatility compression
Lepage — Mixed regime break
A confirmed alert fires when a qualifying state first appears, when the confirmed regime type changes, or when the estimated split resets to a more recent point. A possible alert follows equivalent first-appearance and break-reset logic.
When bar-close confirmation is enabled, configure PulseWire alerts as Once Per Bar Close.
Repainting and event timing
The script does not use future data, lookahead, or a negative plot offset. It places a marker on the bar where the break is detected and never moves that marker backward to the estimated historical split.
However, the estimator is rolling. As a new bar enters the window and an old bar leaves it, the selected split, component scores, p-value, break age, and current state can change. Values can also fluctuate on an open real-time bar. Bar-close confirmation prevents provisional intrabar markers from being treated as confirmed events.
Historical events are calculated only from information available on their respective bars.
Statistical limitations
The fixed-split chi-square p-value is asymptotic rather than exact.
Bonferroni correction is conservative because the candidate splits are dependent.
The correction covers the splits inside one window, not repeated testing across every bar in the chart.
Consecutive multi-bar returns overlap and are not independent. The adjusted p-value should therefore be interpreted as comparative evidence rather than a perfectly calibrated probability.
The classical Lepage components are most naturally interpreted as location and scale tests under regular distributional conditions. Strong skew changes or complex distribution changes can affect both components.
The detector selects one dominant split per rolling window. Multiple rapid changes can interfere with one another.
A statistically significant regime change does not guarantee persistence, directional continuation, or trading profitability.
Median absolute deviation can be close to zero on discrete or insufficiently variable data. The script uses a small numerical floor, but scale percentages can still become unusually large.
Results on Heikin Ashi, Renko, Range, Kagi, Point & Figure, or other synthetic charts describe transformed data rather than ordinary traded prices.
Always evaluate the indicator on unseen data and combine it with independent risk controls.
Data Window outputs
The script exposes:
State code.
Scan-adjusted p-value.
Estimated break age.
Location Z component.
Scale Z component.
Median shift in percentage points.
Robust location effect.
MAD scale change percentage.
Lepage statistic.
State codes are:
Code
State
4
Mixed location-scale break
3
Scale expansion
2
Positive location shift
1
Possible break
0
Stable, filtered, or old break
−2
Negative location shift
−3
Scale compression
PulseWire publication metadata
Primary category: Oscillators
Secondary category: Trend Analysis
Suggested tags: Lepage Test, Change Point, Regime Detection, Statistics, Non-Parametric, Volatility, Structural Break
References
Y. Lepage, “A Combination of Wilcoxon's and Ansari-Bradley's Statistics,” Biometrika, 1971.
F. Rublík, “The Multisample Version of the Lepage Test,” Kybernetika, Vol. 41, No. 6, 2005, pp. 713–733: paper.
G. J. Ross, D. K. Tasoulis and N. M. Adams, “Nonparametric Monitoring of Data Streams for Changes in Location and Scale,” Technometrics, Vol. 53, No. 4, 2011, pp. 379–389: DOI.
H. Murakami, “A Nonparametric Location–Scale Statistic for Detecting a Change Point,” The International Journal of Advanced Manufacturing Technology, Vol. 61, 2012, pp. 449–455: DOI.
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

Indicator

Apsis Flux Velocity & Volume OscillatorMomentum normalised by volatility, then weighted by participation.
velocity = EMA of (close - close ) / ATR — momentum in ATR units, so it reads
the same on a quiet session as a violent one, and the same at NQ 10,000 as at
NQ 20,000.
flux = velocity x clamped relative volume — a move on thin participation is
discounted; one on heavy volume is not.
WHAT IT SHOWS
• Flux as gradient columns. The colour is a CONTINUOUS gradient rather than a
two-way sign test, so a weakening move visibly desaturates before it crosses
zero. A binary red/green histogram throws that away and only tells you
something once it is too late to be news.
• The unweighted velocity line over the top. Where the line and the columns
diverge, price is moving on thin volume — that gap is the read this pane
exists to give.
• Extreme bands. Inside one means a move is stretched. It does not mean it will
turn, and the script does not say it will.
• Regular and hidden divergence, confirmed with pivots.
• A state readout: flux value, whether it is quiet, running or stretched, and
current volume as a multiple of its baseline.
VERTICES, AND AN HONEST NOTE ABOUT THEM
A vertex is a zero-cross following an extreme — momentum ran hard, then handed
back. It describes what just finished happening. It is not a forecast.
These were tested as a standalone entry across roughly 22,000 trades, on both a
training window and a sealed holdout: slightly negative at every target tried.
They are published as a READ of participation-weighted momentum, which is what
they measure well, and not as an entry trigger, which is what they do badly.
Where the tool earns its place is as a FILTER. Keeping only trades whose
direction agreed with the SIGN of flux improved return-over-drawdown in both
windows, by removing the roughly one trade in ten taken against
participation-weighted momentum. Use the sign as a veto, not the vertex as a
signal.
DIVERGENCE TIMING
A divergence needs a confirmed pivot, so it prints exactly as many bars late as
the pivot-right setting. Every honest divergence does. Anything drawing one on
the pivot bar itself is repainting — it cannot yet know that bar was a pivot.
Same calculation as the flux column in Apsis Screener and the flux filter in
Apsis Pro, so the three never disagree. Indicator

HTF Candle & Key LevelsHTF Candle & Key Levels Overlay
A clean, clear PulseWire indicator for analyzing Higher Timeframe (HTF) market structure and price action. It projects key percentage levels and Fibonacci ratios from the higher timeframe candle directly across your chart background, while displaying the active HTF candle neatly on the right margin—keeping your main chart completely unobstructed.
Key Features:
Flexible HTF Selection: Track Daily, 4-Hour, 1-Hour, or other timeframe candles on your lower-timeframe execution charts (e.g., 1m, 5m, 15m) to maintain full context of the broader price range.
Selectable Key & Fibonacci Levels: Easily toggle crucial range points and Fibonacci retracements—such as 0% (Low), 40%, 50% (Midpoint), 60%, 61.8%, 78.6%, and 100% (High)—complete with optional real-time price and percentage labels.
Right Candle: Renders the body and wicks of the current HTF candle off to the right side of active price action, ensuring your execution chart remains clean.
Full Customization: Adjust line styles (Solid, Dashed, Dotted), line thickness, colors, and candle parameters to fit your visual preference. Indicator

Adaptive Pivot Zones MTF█ OVERVIEW
Adaptive Pivot Zones MTF is a multi-timeframe trend analysis indicator based on dynamic zones calculated using pivot highs and pivot lows.
Instead of representing the trend with a single line, the indicator creates three levels inside the range between the last confirmed pivot low and pivot high. These levels form a dynamic zone whose position and width adapt to the current market structure.
The core of the indicator is the relationship between price and this zone. Depending on the selected mode, a trend change occurs either after price breaks the middle line of the zone or only after price exits the entire zone. This allows the user to choose between earlier direction changes or stronger confirmation of the move.
The indicator is designed as an MTF system. In addition to the current timeframe, two higher timeframes are analyzed. These can be selected automatically in proportion to the current TF or set manually. This helps assess whether a trend change on the lower timeframe is aligned with the broader market direction.
The central element of the signal system is Multi-Timeframe Agreement. Each trend change can be evaluated based on the agreement of 1, 2, or all 3 monitored timeframes. The higher the agreement, the stronger the directional confirmation the user receives.
The indicator also integrates automatic Entry, Stop Loss, and three Take Profit levels based on ATR or a fixed risk percentage. This combines market direction analysis with a visual representation of the potential Risk/Reward setup.
The result is a complete trend analysis system that combines dynamic pivot zones, multi-timeframe analysis, trend agreement confirmation, and automatic position management levels.
█ CONCEPTS
Pivot Zone
Pivot Zone is the foundation of the entire indicator and is used to determine the current market state.
The indicator uses confirmed pivot highs and pivot lows to define the current price range. Then, three levels are calculated inside this range according to the set values of Pivot Level 1, Pivot Level 2, and Pivot Level 3.
These levels form a dynamic zone that can be treated as an equilibrium area between the most recent significant market extremes.
Pivot Zone answers the question:
Where is the current market decision zone located?
Pivot Length
Pivot Length determines how many bars are required on each side to confirm a pivot high or pivot low.
A lower value results in more frequent pivot detection and faster adaptation of the zones to price changes, but it also increases the number of less significant pivots.
A higher value requires a more developed structure to confirm a pivot, so zones appear less often but represent more meaningful market points.
Smoothing Length additionally allows the calculated pivot levels to be smoothed.
Pivot Levels
The three pivot levels define the exact position of the zone inside the range between pivot low and pivot high.
Pivot Level 1 defines the first level of the zone, Pivot Level 2 its middle line, and Pivot Level 3 the third level.
The default setting of 0.3 / 0.5 / 0.7 creates three levels placed symmetrically around the middle of the range, but the user can adjust them freely.
The middle line has a special role because it can be used as the primary level that determines a trend change.
Trend State
Trend State determines whether the market is currently in a bullish or bearish state.
In Full Band mode, price must break above the upper boundary of the entire zone to become bullish, or below the lower boundary to become bearish.
In Mid Line mode, the direction changes as soon as price crosses the middle line of the zone.
This allows the sensitivity of the indicator to be adjusted to the analysis style:
• Mid Line → earlier direction changes
• Full Band → stronger confirmation of a zone breakout
An optional Neutral mode also allows a neutral state to be displayed when price is exactly at the decision level.
Multi-Timeframe Analysis
Adaptive Pivot Zones MTF analyzes not only the current timeframe but also two higher timeframes.
TF1 and TF2 can be selected automatically based on the current timeframe. The system proportionally chooses higher intervals so that the MTF structure can be applied across different market scales without the need to manually set each TF.
Alternatively, the user can switch MTF Mode to Manual and define Higher TF 1 and Higher TF 2 independently.
Multi-Timeframe Analysis answers the question:
Is the direction on my timeframe aligned with the higher market context?
TF1 & TF2 Zones
In addition to the current zone, the indicator can also display pivot channels from TF1 and TF2.
Each higher timeframe has its own zone with an upper and lower boundary and an optional middle line. The channel color changes according to the current trend of that timeframe.
Higher timeframe zones can be used as additional context, showing where the current price is located relative to the broader structure.
MTF Agreement
MTF Agreement determines the number of timeframes that confirm the same trend direction.
The system analyzes three timeframes:
• Current TF → current timeframe
• TF1 → first higher timeframe
• TF2 → second higher timeframe
As a result, a trend change can receive confirmation from 1, 2, or 3 timeframes.
For example:
• 1 TF → change visible only on the current timeframe
• 2 TF → current timeframe + one of the higher timeframes confirms the same direction
• 3 TF → all three timeframes indicate the same direction
It is the number of agreeing timeframes that decides which signals can be displayed.
█ FEATURES
Current TF Settings
• Pivot Length – number of bars required on each side to confirm a pivot high / pivot low.
• Smoothing Length – length of the SMA that smooths the pivot lines. A value of 1 means no smoothing.
• Pivot Level 1 / 2 / 3 – coefficients (0.0–1.0) that determine the position of the three lines inside the pivot low – pivot high range.
• Paint Bars (Mid Pivot) – colors the candles according to the current trend state of the current timeframe.
Current TF Style
• Line Width – thickness of the current timeframe pivot lines.
• Line Transparency – transparency of the pivot lines.
• Gradient Transparency – transparency of the gradient fill between the lines.
Current TF Colors
• Bullish Color / Bearish Color – colors of the lines and fill in bullish / bearish state.
• Use Neutral Color – enables a third, neutral state.
• Neutral Color – color used in the neutral state.
MTF Settings
• MTF Mode – Automatic (automatic selection of TF1 and TF2) or Manual.
• Higher TF 1 / Higher TF 2 – manual selection of higher timeframes (active only in Manual mode).
TF1 Style & Colors
• Show TF1 (lines + channel) – displays the upper and lower TF1 channel lines together with the fill.
• Show TF1 Mid Line – additionally shows the middle line of the TF1 zone.
• TF1 Line Width / Transparency / Gradient Transparency – appearance settings for the TF1 channel.
• TF1 Bullish / Bearish Color – colors of the TF1 channel depending on the trend.
TF2 Style & Colors
• Show TF2 (lines + channel) – displays the upper and lower TF2 channel lines together with the fill.
• Show TF2 Mid Line – additionally shows the middle line of the TF2 zone.
• TF2 Line Width / Transparency / Gradient Transparency – appearance settings for the TF2 channel.
• TF2 Bullish / Bearish Color – colors of the TF2 channel depending on the trend.
Signals
• Trend Change Based On – Mid Line (earlier signals) or Full Band (stronger confirmation).
• Show Buy/Sell Labels – displays signal labels on the chart.
• Show Label When 1 / 2 / 3 TF Agree – controls at what number of agreeing timeframes the signal is shown.
• Buy / Sell Label Color and Label Size – appearance of the signal labels.
TP/SL
• Show TP/SL Levels – draws Entry, Stop Loss, and Take Profit levels on an active signal that meets the TF agreement criteria.
• SL = ATR – when enabled, the SL distance is calculated based on ATR. When disabled, a fixed percentage is used.
• ATR Period for TP/SL – ATR period used for calculations.
• ATR Multiplier for SL / SL % from Entry – parameters that define the Stop Loss distance.
• RR for TP1 / TP2 / TP3 – Risk:Reward ratios for the three Take Profit levels.
• Show SL / TP1 / TP2 / TP3 Level – individual enabling of each level.
MTF Table
• Show Multi-Timeframe Table – displays a table with the trend state on the selected timeframes.
• Table Position / Text Size – position and text size of the table.
• Bull / Bear / Background / Header Colors – table color scheme.
• Show + TF (for each row) – individual enabling and selection of timeframes displayed in the table (5m, 15m, 30m, 1h, 2h, 4h, 8h, 12h, 1D, 1W, 2W).
█ APPLICATIONS
Trend direction analysis with MTF context
The indicator allows you to assess whether a direction change on the current timeframe is supported by higher timeframes. Signals with 2 or 3 TF confirmation have significantly higher informational value than signals visible only on the current chart.
Filtering signals from other indicators
It can be used as a classic trend indicator to filter signals from other indicators.
Risk and potential reward management
Automatic Entry, SL, and three TP levels allow you to immediately see the Risk/Reward setup on every trend change that meets the agreement criteria. This makes it easier to quickly decide on position size and targets.
█ NOTES
• Full Band mode generates fewer signals but with stronger confirmation of a full zone breakout. Mid Line mode reacts faster.
• The Multi-Timeframe table shows the current trend state on the selected timeframes and serves as quick context, not as an independent signal system.
• The indicator works best when combined with market structure analysis, key support/resistance levels, and other indicators such as momentum or volume. Indicator

Sessions - New York, London & AsiaOVERVIEW
This indicator draws price range boxes for the main trading sessions (Asia, London/Europe, and New York) and an optional full-day box with daily high/low labels and open/close lines. It is a chart-context tool: it shows where price traded during each session window, not buy/sell signals.
PURPOSE / WHY THIS EXISTS
Many traders need a clear visual of:
1) which session produced the day’s high or low,
2) how large the session range was,
3) how sessions overlap (for example London–New York),
4) and where the daily open sits relative to those ranges.
This script combines three session range boxes with a daily structure layer (00:00–24:00 in a fixed timezone). The components are meant to work together so you can read session behavior against the same day’s overall range without stacking several separate scripts.
WHAT IT DOES
• Asia session box — tracks high/low while the Asia window is open; freezes the box when the session ends.
• London (Europe) session box — same logic for the London window.
• New York session box — same logic for the RTH-style New York window.
• Daily box — full calendar day high/low in the same timezone.
• Daily high/low labels — marks the bar time of the daily high and low.
• Optional daily open and close/last lines with labels.
Sessions are only drawn on intraday charts. On daily and higher timeframes, session boxes are disabled (the daily layer can still apply depending on your settings).
DEFAULT SESSION TIMES
All times use the America/New_York timezone (PulseWire handles daylight saving for that zone). Defaults can be edited in the inputs:
• Asia: 20:00–05:00
• London (Europe): 03:00–12:00
• New York: 09:30–16:00
Overlaps are intentional. For example, Asia and London can share a morning window, and London and New York share a large mid-day window. The boxes stack so you can see concurrency visually.
HOW IT WORKS (CONCEPT)
1) Session membership
For each session, the script checks whether the current bar’s time falls inside the configured session string, evaluated in America/New_York.
2) Session start / end
• Session start: first bar that is inside the session after being outside.
• Session end: first bar that is outside the session after being inside.
3) Range tracking
While inside a session, the script updates running high and low from bar high/low. The live box left edge is the session start bar; the right edge follows the current bar. When the session ends, the box is fixed for that day/session instance and kept in an optional history list.
4) Daily layer
The daily open is taken from the 1D open of the symbol. Daily high/low are tracked from bar values until the New York calendar day changes, then the previous day is finalized as a historical daily box (if enabled).
5) Object limits
History depth is capped by internal safety limits so the chart does not exceed PulseWire drawing object limits on low timeframes.
HOW TO USE IT
Typical workflow on a 1m–15m chart:
1) Load the symbol you trade (indices, FX, metals, etc.).
2) Keep default session times if your process is U.S.-anchored; otherwise edit the three session inputs.
3) Use GLOBAL visibility toggles if you only need one or two sessions on screen.
4) Compare the current New York (or London) box size to recent historical boxes of the same color — this is visual context for range expansion/contraction, not a trade rule by itself.
5) Use daily high/low labels to see whether extremes printed in Asia, London, or New York.
6) Use open/close lines if you track acceptance above/below the daily open as part of your own rules.
Suggested reading order on any day:
Daily structure first (open, D Hi, D Lo) → then session boxes → then your own entry method (structure, levels, etc.). This script does not define entries, stop-loss, or take-profit.
INPUTS (MAIN GROUPS)
• Session time strings and colors for Asia / London / New York.
• Per-session show historical vs current boxes; outline-only options.
• GLOBAL toggles for each session.
• Daily box: historical and current day display.
• Daily high/low labels and colors.
• Daily open/close lines and their labels.
COLORS (DEFAULT IDEA)
• Asia — yellow tones
• London — blue tones
• New York — red tones
• Daily — lime tones
Colors are customizable so you can match your chart theme.
WHAT THIS SCRIPT IS NOT
• Not a strategy and not a signal generator.
• Not a guarantee of profitable trades or future price direction.
• Not a replacement for risk management or a complete trading plan.
• Session times are conventions (liquidity-focused windows), not a claim that one session is inherently “better” to trade.
TIPS FOR A CLEAN CHART
• Publish/use with this script alone on the chart for clarity.
• Prefer outline-only if fills feel heavy.
• Reduce historical session display if the chart becomes crowded.
LIMITATIONS
• Session logic depends on the bar timeframe: on higher intraday TFs, box edges align to those bars, not tick-perfect open/close of the clock window.
• Some symbols have thin overnight liquidity; box size then reflects that microstructure, not “quality” of a setup.
• Past session ranges do not predict the next session’s range.
DISCLAIMER
This tool Sessions - New York, London & Asia is for educational charting and visual analysis only. Markets involve risk. Past behavior on a chart does not guarantee future results. Always validate any idea on your own charts and risk parameters. Indicator

Indicator

MAHQuant_IND_Divergence_v1.0MAHQuant Divergence for Many Indicators v1.0
A professional multi-indicator divergence detection system with advanced risk management features. This indicator combines powerful divergence scanning across 10+ technical indicators with automated Entry/SL/TP calculation and smart confluence filtering.
✨ Key Features:
1️⃣ Multi-Indicator Divergence Detection:
• Simultaneously scans for divergences across 10+ indicators:
MACD, MACD Histogram, RSI, Stochastic, CCI
Momentum, OBV, VW-MACD, CMF, MFI
Custom external indicator support
• Detects both Regular and Hidden divergences
• Bullish and Bearish divergence identification
• Visual divergence lines with customizable styles
2️⃣ Advanced Risk Management (NEW):
• Automatic SL/TP Calculation
Entry price based on signal candle close
Stop Loss using ATR-based dynamic calculation
Two Take Profit levels (TP1 = 1:1 RR, TP2 = 1:2 RR)
Visual horizontal lines for Entry, SL, TP1, TP2
• Max SL Distance Protection
Configurable maximum stop loss limit (default: 800 points)
Prevents excessive risk in high-volatility conditions
Automatically caps SL if ATR-based distance exceeds limit
3️⃣ Smart Confluence Filter (NEW):
• Option to show signals ONLY when both Regular AND Hidden divergences appear together
• Significantly reduces false signals
• Increases signal reliability and probability
4️⃣ Professional Visualization:
• Signal Label: Shows Entry, SL, TP1, TP2 prices directly on chart
• Auto-Clean Mode: Automatically removes old signal lines to keep chart clean
• Customizable line lengths, colors, and styles
• Pivot point markers (optional)
• Divergence count display
5️ Alert System:
• Built-in alerts for all divergence types
• Separate alerts for Regular Bullish/Bearish
• Separate alerts for Hidden Bullish/Bearish
• Combined positive/negative divergence alerts
⚙️ How to Use:
Basic Setup:
Add indicator to your chart
Select which indicators to scan (MACD, RSI, Stoch, etc.)
Choose divergence type: Regular, Hidden, or Both
Adjust Pivot Period (default: 5) based on your timeframe
Risk Management:
5. Set ATR Length (default: 14) for SL calculation
6. Adjust ATR Multiplier (default: 0.1-1.0) for SL distance
7. Configure Max SL Distance to limit maximum risk
8. Enable "Show SL/TP Lines" to visualize levels
Advanced Filtering:
9. Enable "Show Only Confluence" to filter for highest-probability signals
10. Use "Show Only Last Signal Lines" to keep chart clean
11. Adjust SL/TP Lines Length for visual preference
Trading Strategy:
• Entry: Enter on signal candle close or next candle open
• Stop Loss: Use the calculated SL level (below/above divergence pivot)
• Take Profit 1: Close 50% position at TP1 (1:1 RR)
• Take Profit 2: Close remaining 50% at TP2 (1:2 RR)
📊 Indicator Settings Explained:
• Pivot Period: Number of bars for pivot detection (higher = fewer but stronger signals)
• Source for Pivots: Use Close or High/Low for pivot calculation
• Divergence Type: Regular (reversal), Hidden (continuation), or Both
• Min Number of Divergence: Filter out weak signals (show only if X+ divergences detected)
• Max Pivot Points to Check: How far back to search for divergences
• ATR Multiplier: Higher = wider SL, lower = tighter SL
• Max SL Distance: Maximum allowed SL in points (prevents excessive risk)
🎯 Best Practices:
✅ Use on higher timeframes (1H, 4H, Daily) for more reliable signals
✅ Combine with trend analysis and support/resistance levels
✅ Enable Confluence filter for higher probability setups
✅ Always use proper position sizing and risk management
✅ Backtest on your preferred market before live trading
⚠️ Important Notes:
• This indicator provides signals based on divergence detection
• Not all signals will be profitable - always use stop loss
• Market conditions affect divergence reliability
• Past performance does not guarantee future results
• This is a tool to assist your analysis, not a standalone trading system
Credits & Acknowledgment:
• Original divergence detection logic inspired by LonesomeTheBlue's open-source "Divergence for Many Indicators v4" indicator
• Enhanced with professional risk management features, SL/TP automation, and confluence filtering by MAHQuant Trading System
• Thank you to the PulseWire community for open-source collaboration and continuous learning
⚠️ Disclaimer:
This script is for educational and informational purposes only. It does not constitute financial, investment, or trading advice. The author is not responsible for any losses incurred from using this indicator. Past performance is not indicative of future results. Always conduct your own research and manage your risk appropriately. Trade at your own risk. Indicator

Indicator

Kyokutan-Ashi◈ Description
The Kyokutan-Ashi is a unique indicator designed to visualize the exact price deviation (noise) that standard Heikin-Ashi (HA) calculations normally smooth out and hide. By completely stripping away the trend component, it isolates pure market volatility and overextension.
◈ The Math Behind It (Why this calculation & Expected Output)
The core logic subtracts the Heikin-Ashi values from standard Japanese candlestick values. The purpose of this calculation is to extract the pure "difference" (noise) between the actual price and the smoothed trend, and then reconstruct it based on a chosen anchor point.
【 Calculation Example 】
Current actual candle: open = 100, high = 105, low = 95, close = 102
Previous HA candle: haOpen = 98, haClose = 100
Settings: Anchor Point = "Open", Multiplier = 1.0
haClose = (100 + 105 + 95 + 102) / 4.0 = 100.5
haOpen = (98 + 100) / 2.0 = 99
Subtract HA from standard values to isolate the noise.
rawOpen = 100 - 99 = 1
rawClose = 102 - 100.5 = 1.5
Add the isolated noise to the baseline (Anchor = Open: 100).
antiOpen = 100 + 1 = 101
antiClose = 100 + 1.5 = 101.5
【 Actual Output 】
A small bullish candle from 101 to 101.5 is plotted on the chart. Although the actual price moved from 100 to 102, removing the trend component reveals that the "pure overextension" (deviation) is only 0.5.
◈ Key Features
Pure Deviation Visualization: Shows only how far the actual price is stretching away from the Heikin-Ashi smoothed price.
Anchor & Base Settings: Choose where to project the deviation (Open, Close, or HL2).
Deviation Multiplier: Scale the noise up or down to easily spot extreme market extensions.
Chart-Type Independent: Built with robust data handling. Even if you change your main chart view to Heikin-Ashi, Renko, or Kagi, Kyokutan-Ashi always forcefully retrieves standard raw price data in the background to guarantee accurate deviation calculations.
◈ Why Use It
Use it in combination with other charts or indicators to extract your own unique noise and trading edges. When Kyokutan-Ashi prints unusually large candles, it signals that the actual price is violently snapping away from the smoothed trend — often indicating exhaustion, potential mean-reversion, or hidden volatility.
◈ Author's Note
While Kyokutan-Ashi was developed independently to address the loss of actual price data in Heikin-Ashi, I later discovered "BERLIN Candles" by lejmer. He had already recognized this critical issue and beautifully engineered a hybrid solution long before I did. I want to express my deepest respect for his foresight and pioneering work in tackling this specific problem.
Indicator

Essence ModelEssence Model — Bias - 7H Profiles - Entries
A complete, open-source implementation of my understanding of the Essence Model — a session-based intraday framework built on rytrades' teachings, extended with the 7-hour daily-profile taxonomy taught by AM Trades. The script reads the day the way the model does: previous day sets the bias, the overnight sessions validate or break it, the 7h profile names the day, and entries only exist where all of it lines up.
Daily Bias
The previous day's candle sets the directional bias. A fib from its high→close (bearish) or low→close (bullish) marks the 25% and 50% — bias stays valid while completed 210-minute candles respect the 25%. A close through it doesn't kill the day: the reversal framework flips the working direction ( "yesterday's 25% was broken to the upside — expecting higher" ), re-points the projections, and un-flips only if the 25% is reclaimed while the 50% held.
7H Frameworks & Profiles
Every day is classified on the 18:00 / 01:00 / 08:00 ET session grid:
F1 — Asia manipulates a valid level, London expands
F2 — London manipulates the Asia extreme, NY delivers
F3 — London protracts into a level, NY reverses
F4 — NY sweeps a London extreme; the candle's own close decides reversal vs continuation
P1 / P1B — the continuation profiles (Asia trends; London expands or coils)
P4 / P4B — the aligned day NY reverses, with or without the sweep
Frameworks are verified, not just assigned : a disproven read (London closing against an F1, NY breaking an F2/F3's level) is cleared and the day re-classified, with the audit trail shown. Valid levels come from previous-day extremes, daily swings, daily FVGs, and untaken weekly/monthly levels.
Confirmation Layer
The 210m is the model's confirmation timeframe: NY-phase decisions resolve on completed 210m candles, a 210m sweep-and-reclaim confirms the extreme of day ( LOD Asia✓ ), and cross-asset SMT (auto-paired for index futures, metals, forex, energy, treasuries, crypto) is drawn on the 1H / 210m / 7H mini-panels and stamps +SMT on confirmed extremes. An ADR exhaustion guard stands entries down when the overnight already consumed the day's range.
Entries
Protected-swing entries in the working direction: a CISD or a reversal signature ( RC / EC / IRC ) at its close — but only when a qualifying event ( SMT · FVG · LQ · C2 ) fired first inside the reversed leg. Event first, trigger after. The diamond marks the protected swing: entry at close, stop at the swing, 1R/2R drawn, invalidated the moment the swing is closed through. Default window 09:00–10:30, fully configurable.
Chart Elements
Quarter levels with projections, session shading and dividers, 8–9 AM range, daily FVG zones, floating 1H/210m/7H candle panels with sweep lines and SMT, framework header, and a five-line status readout (pair · bias state · setup grade · framework · ADR fill).
Credits
Concepts by rytrades (Essence Model) and AM Trades (7h profiles), with session-profile reads popularized by Hudson Trades. CISD / protected-swing engine adapted from my own open-source "Universal Po3 Profiler × CIC " (MPL-2.0). Asset pairing via fstarcapital/AssetCorrelationUtils. Published open-source under MPL-2.0.
Educational tool — nothing here is financial advice. Indicator

Indicator

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
