Indicator

Market Euphoria Index v2 - MEI - Predict Market Tops & BottomsThe Market Euphoria Index v2 (MEI) is a 0–100 macro composite designed for the MONTHLY chart of SPX or the Nasdaq Composite (weekly also supported). It measures the cumulative buildup of the conditions that have historically surrounded major cycle tops and bottoms — not price alone, but the collision of euphoria (extension, sustained complacency) with late-cycle stress (profit stagnation, claims turning, curve dynamics, tight policy).
HOW TO READ IT
Above 80 — Extreme euphoria: the historical top zone
Above 65 — Euphoria warning: late-cycle, tighten risk
35–65 — Neutral
Below 35 — Fear: opportunity zone
Below 20 — Extreme fear: the historical bottom zone
Confirmation markers add a timing layer on top of the regime reading: a red triangle prints when MEI is in the euphoria zone AND monthly RSI shows a bearish divergence (higher price, lower momentum). A green triangle prints when MEI is in the fear zone AND either monthly RSI is washed out or initial jobless claims roll over from cycle highs — historically one of the tightest bottom signals available (claims peaked within weeks of the March 2009 and March 2020 lows).
THE 8 COMPONENTS (weights adjustable)
Price extension vs 5-year MA (22%) — blended with a 15-year percentile rank so each era is judged against its own norms
Yield curve un-inversion clock (18%) — tops historically cluster 0–12 months after un-inversion; includes a resolve gate so the clock disarms once the cycle has clearly broken (heavy Fed cuts, price under its 5-year MA, or claims spiking)
Corporate profits, ECONOMICS:USCPR (15%) — profits stagnated or declined ahead of the recession-driven bears (1997→2000, 2006→2007); deep decline with an improving second derivative scores as bottom conditions
Jobless claims cycle, ECONOMICS:USIJC (15%) — trough-and-turn off cycle lows = pre-top; spike-and-rollover = bottom
VIX 12-month average (10%) — sustained complacency, not spot readings
Inflation re-acceleration (8%)
Real rate stress (6%) — deflation-guarded so 2009-style CPI collapses read as fear, not stress
Fed cycle position (6%)
All rolling windows are computed at native monthly/quarterly/weekly resolution, so the math is correct on any chart timeframe. Missing history (VIX pre-1990, claims pre-1967, curve pre-1976 falls back to 10Y minus Fed Funds) is handled by dynamic weight renormalization — the composite extends back decades using whatever components exist, and the table shows how much weight is live at any point.
LIMITATIONS — READ BEFORE USING
Economic data publishes with a lag and gets revised, so real-time signals arrive later than a historical replay suggests. This framework targets recession-driven cycles: it structurally cannot anticipate exogenous shocks (2020) and only partially captures rate-shock bears (2022). The 2022–24 curve inversion that resolved without a recession is a live example of a component false positive — which is why no single component, including the curve, should be read in isolation. This is a regime gauge, not a precision timer, and nothing here is financial advice. Always combine with your own risk management.
Alerts are included for all threshold crossings and both confirmation signals. Feedback welcome — especially observations from earlier cycles. Indicator

Market Euphoria Index - MEI - Predict Market Tops & BottomsA composite macro indicator designed to peak BEFORE major equity market tops — not during the crash.
Most "fear & greed" gauges are coincident: they spike with the panic, not before it. The MEI flips that. It measures how much euphoria and late-cycle stress have built up over months of bull market, so it tends to peak in the run-up to a top rather than at the bottom.
What it captured historically (visual backtest on monthly SPX):
— Climbed into the red zone ahead of the August 1987 top
— Peaked ahead of the March 2000 dot-com top
— Peaked ahead of the October 2007 GFC top
— Peaked ahead of the January 2022 top
— Dropped to the extreme-fear zone near every major bear-market bottom that followed
The six components (default weights):
— Price extension vs 5-year SMA (30%) — the primary leading signal. SPX has been 25-55% above its 5-year average at every major top since 1980.
— Yield curve un-inversion clock (25%) — tracks months since the 10Y-2Y spread last went negative. Peak warning is 0-12 months after the curve un-inverts (this is the actual recession trigger, historically).
— VIX 12-month average (15%) — captures sustained complacency, not single panic spikes. Low for a year = top buildup.
— Inflation re-acceleration (10%) — 6-month change in CPI YoY. Late-cycle inflation shocks (2000, 2007, 2022) are the classic top catalyst.
— Real rate stress (10%) — 10Y nominal yield minus CPI YoY. High and rising = tightening financial conditions.
— Fed cycle position (10%) — high and plateauing = peak late cycle; aggressive cuts = bottom signal.
How to read the line:
— Above 80 (red) = EXTREME EUPHORIA, historical top zone, reduce risk
— 65 to 80 (orange) = Euphoria warning, late cycle, tighten stops
— 35 to 65 (gray) = Neutral
— 20 to 35 (green) = Fear, opportunity zone
— Below 20 (lime) = EXTREME FEAR, historical bottom zone
Best timeframe: monthly (M) or weekly (W) on SPX, NDX, QQQ, or SPY. All economic data is fetched at monthly resolution regardless of your chart's timeframe, so the indicator reads the same whether you're on D, W, or M.
Customizable: every component weight and threshold is exposed in the settings. Bump up "Price extension" if you want more sensitivity to bubbles, or "Yield curve" if you trust macro recession signals more than price action.
Built-in alerts: Euphoria warning, Extreme euphoria, Fear, Extreme fear — all four crossovers are configurable from the alert menu.
To overlay on SPX: right-click the indicator name, then "Move pane to" then "Above", then "Pin to scale" to give it its own axis on the price chart.
Data sources (all free, built into PulseWire):
SP:SPX, FRED:T10Y2Y, CBOE:VIX, ECONOMICS:USIRYY, FRED:FEDFUNDS, TVC:US10Y
Honest limitations:
— This is a macro/cyclical tool, useless for intraday or short-term timing.
— Designed to call major bull/bear turning points, not 10-20% corrections.
— The 2020 COVID crash was an exogenous shock no macro model could predict; the MEI would not have warned you.
— Past patterns are not guarantees. Current dynamics (AI capex, geopolitics, structural inflation) may break historical relationships.
— Not financial advice. Use alongside your own analysis. Indicator

Top-Down Candle Panel
Top-Down Candle Panel
The Top-Down Candle Panel is a premium multi-timeframe candle visualization system built for traders who rely on top-down analysis, market structure, and higher-timeframe confirmation.
Instead of constantly switching between charts and timeframes, this indicator projects multiple higher-timeframe candles directly onto your active chart, allowing you to instantly read market pressure, candle behavior, and higher-timeframe sentiment in real time.
Designed for precision traders, scalpers, intraday traders, and swing traders alike, the panel helps simplify market context while reducing chart clutter and decision fatigue.
━━━━━━━━━━━━━━━━━━
KEY FEATURES
━━━━━━━━━━━━━━━━━━
Displays up to 4 fully customizable timeframes simultaneously
Default structure includes 5M, 15M, 1H, and 4H analysis
Hybrid, Price Accurate, and Aligned Dashboard display modes
Smart candle projection system
Built-in candle behavior recognition
Premium minimalist dashboard styling
Adjustable candle scaling and spacing controls
Light and dark mode compatibility
Optional real-price hybrid markers
Multi-timeframe alignment visualization
Clean top-down workflow integration
━━━━━━━━━━━━━━━━━━
ADVANCED CANDLE ANALYSIS
━━━━━━━━━━━━━━━━━━
The panel automatically classifies candle behavior to help traders quickly interpret higher-timeframe intent and momentum.
Included candle reads:
Bullish Expansion
Bearish Expansion
Upper Rejection
Lower Rejection
Doji
Bullish / Bearish pressure candles
This allows traders to instantly identify:
Expansion strength
Rejection zones
Momentum continuation
Possible exhaustion
Higher-timeframe buying or selling pressure
━━━━━━━━━━━━━━━━━━
WHY THIS TOOL EXISTS
━━━━━━━━━━━━━━━━━━
Most traders perform top-down analysis by manually flipping through multiple charts and timeframes. This process is slow, distracting, and often causes traders to lose focus on current price action.
The Top-Down Candle Panel was built to solve that problem.
By placing multiple timeframe candles directly beside live price action, traders can maintain situational awareness without leaving the active chart.
This creates a faster and cleaner workflow for:
Multi-timeframe confirmation
Trend continuation analysis
Rejection candle recognition
Trade filtering
Directional bias
Context-based execution
Avoiding trades against higher-timeframe pressure
━━━━━━━━━━━━━━━━━━
IMPORTANT
━━━━━━━━━━━━━━━━━━
This indicator is not designed to generate automatic buy or sell signals.
Its purpose is to improve decision quality through clearer market context, cleaner visualization, and stronger higher-timeframe awareness.
The goal is simple:
Help traders see what the higher timeframes are doing before entering the trade.
Indicator

Parabolic Move Detector [AGPro Series]🚀 Parabolic Move Detector
A dedicated framework for identifying, measuring, and classifying parabolic price acceleration across any asset and any timeframe. Built on a single transparent metric — Parabolic Pace — the tool objectively detects the start bar of a parabolic move, tracks its age, scores its intensity on a 0-100 scale, classifies its lifecycle phase, and contextualizes each move against the asset's own historical parabolic events.
🔹 OVERVIEW
Parabolic moves are notoriously difficult to recognize in real time. By the time they look obvious, the move is already late-stage. Conventional momentum tools (RSI, MACD, standard ROC) measure speed, not the underlying structural character of a parabolic move. They fire constantly on ordinary trends and miss what makes a parabolic move structurally different: the rate at which price is covering ATR-sized distance per bar.
Parabolic Move Detector closes that gap with a single, transparent metric. It measures how many ATRs price has moved per bar over a configurable lookback window. That is the literal mathematical definition of a parabolic move: sustained directional travel at an unusual speed relative to recent volatility. The framework auto-calibrates per timeframe and per asset, so a 15m memecoin pump and a 1D large-cap rally are measured with the same structural definition.
🔹 UNIQUE EDGE
Most acceleration or momentum indicators in the public space fall into two buckets: oscillators with hardcoded thresholds that need retuning per symbol, or composite "trend strength" meters that blur acceleration into raw trend direction. This tool is different in four concrete ways:
1. Single-metric detection engine. The entire detection pipeline is driven by one transparent number: Parabolic Pace = cumulative price move divided by cumulative ATR over the lookback. No percentiles, no hidden regressions, no black-box composite. This makes the tool easy to audit, fast to calibrate, and consistent across assets.
2. ATR-normalized by design. Because pace is expressed in ATRs per bar, it is inherently timeframe-adaptive and asset-adaptive. No need to retune for BTC vs a thin-volume altcoin, or for 15m vs 1W.
3. Four-phase state machine. Each move is classified through a deterministic lifecycle — Accelerating → Peaking → Decelerating → Exhaustion — with explicit transition conditions rather than heuristic labels. This turns a vague concept ("it looks parabolic") into a reproducible state with measurable transitions.
4. Per-asset historical statistics. The tool logs every completed parabolic cycle on the current chart, filters out micro-events, and reports the average duration and average drawdown from peak. That gives structural context no oscillator provides: what has this specific asset actually done the last N times it went parabolic.
🔹 METHODOLOGY
Core detection pipeline:
• Pace is computed as (close − close ) divided by (ATR14 × N), where N is the lookback window. The result is the number of ATRs traveled per bar.
• Pace is lightly smoothed with a short SMA to reduce single-bar noise.
• Detection triggers when smoothed pace exceeds the Pace Threshold and the move is directionally up.
• A minimum-duration filter requires the pace condition to persist for N consecutive bars before confirming the start, eliminating single-bar spikes.
• A post-move cooldown prevents the same move being re-detected as multiple events.
State machine transitions:
• Idle → Accelerating : pace sustained above threshold for the minimum duration.
• Accelerating → Peaking : Acceleration Score drops >20% from its cycle peak while still elevated.
• Any phase → Decelerating : score drops below 40% of cycle peak.
• Decelerating → Exhaustion : pace rolls over below half-threshold, and the move has lived at least 6 bars.
• Exhaustion → Idle : cooldown bars elapsed and score collapsed.
Acceleration Score (0-100) is a direct function of pace: score rises linearly with pace and receives a small persistence bonus for sustained upward momentum, capped at 100.
Historical statistics:
Each time a full cycle closes on the chart, the tool checks whether the move traveled at least the minimum ATRs from start to peak. If it qualifies, duration (start bar to peak bar) and drawdown from move high to subsequent low are averaged into rolling per-asset statistics.
🔹 STATES AND VISUALS
• Parabolic Zone : gradient background across the active move. Color reflects phase (brand blue in Accelerating, indigo in Peaking, amber in Decelerating). Intensity scales with Acceleration Score.
• Parabolic Start label : marks the confirmed start bar of a new move.
• Peaking / Decelerating labels : mark phase transitions. Labels are automatically suppressed within a confluence window to prevent stacking.
• Exhaustion label : marks the bar where the move has structurally collapsed.
• Duration Projection : dotted forward line sized to the asset's historical average parabolic duration, shown only while a move is active.
🔹 KEY INPUTS
Detection group:
• Pace Lookback — window over which parabolic pace is measured.
• Pace Threshold — minimum ATRs-per-bar required to qualify as parabolic.
• Minimum Move Duration — bars of sustained pace required before confirming a start.
• Minimum Event Size — minimum ATR-normalized move size required to log an event in historical statistics.
• Post-Move Cooldown — minimum bars after a completed move before a new one can start.
Historical Stats group:
• Show Duration Projection — toggle the forward projection line.
• Projection Length — forward projection cap in bars.
Visuals group:
• Parabolic Zone Background, Ambient Score Tint, Parabolic Start Label, Exhaustion Warning Label, Phase Transition Labels — all independently toggleable.
Style group:
• Label Size, Panel Size, Help Text Size — default Normal.
• Panel Location — six anchor positions.
• Panel Theme — Dark or Light.
Alerts group:
• Parabolic Start, Peaking Phase Reached, Exhaustion Detected — individually toggleable alerts.
🔹 HOW TO USE
• On any asset and any timeframe, wait for a confirmed Accelerating phase. The Parabolic Start label marks the reference bar.
• Track the Acceleration Score as the move develops. A score climbing toward 60-100 indicates a textbook parabolic.
• Compare Move Age against the panel's Avg Duration statistic. Moves significantly older than the asset's historical average are in late-cycle territory.
• Compare Move Change % against the Avg Reversal statistic for post-move drawdown context.
• Watch for the Peaking transition — this is the first structural deceleration, not a reversal call.
• The Exhaustion state marks where pace has decisively collapsed and the move is structurally over.
• Combine with your existing trend, structure, or volume framework. This tool is designed to complement directional analysis, not replace it.
🔹 LIMITATIONS AND TRANSPARENCY
• The tool detects and classifies acceleration structure. It does not predict reversals, tops, or bottoms. Avg Reversal is a post-cycle statistic computed from completed events on the current chart, not a forward-looking forecast.
• Historical statistics require completed cycles on the chart. Newly loaded symbols with few prior parabolic events will show low sample sizes until more cycles complete.
• The tool confirms a move only after pace has been sustained for the minimum duration. The start label is therefore plotted retroactively on its true start bar, which is the correct academic behavior for a sustained-condition detector.
• All computations are on confirmed bar close logic. No repainting of historical signals once a bar closes.
• The Pace metric requires a valid ATR reading, so at least 14+ bars of history are needed before the tool becomes active on a fresh chart.
🔹 RISK DISCLOSURE
This script is an analytical tool provided for educational and research purposes only. It is not a trading strategy, not financial advice, and does not generate buy or sell recommendations. Trading any market involves substantial risk of loss. All decisions and their consequences are the sole responsibility of the user. Past behavior of parabolic cycles on any asset does not guarantee future behavior.
Indicator

Indicator

VIX Range Levels (Rule of 16)VIX Range Levels — Rule of 16
What this indicator does-
This indicator uses India VIX (or any VIX-class index) to plot statistically derived expected move levels for the current trading day directly on your price chart. It draws six price levels — at 1×, 1.5×, and 2× standard deviations above and below the prior session's close — with colour-coded fills between each band.
The Rule of 16 — explained:
VIX is quoted as an annualized implied volatility, expressed as a percentage. To translate that annual figure into a single day's expected price range, we divide by the square root of the number of trading days in a year:
Daily Expected Move (%) = VIX ÷ √252 ≈ VIX ÷ 16
√252 ≈ 15.87, which practitioners conventionally round to 16 — hence the name.
Worked example:
If INDIAVIX closes at 14.40:
Daily Move = 14.40 ÷ 16 = 0.90%
On a Nifty level of 22,000, that is ±198 points for the 1σ (sigma) band.
Statistical interpretation of the bands-
The Rule of 16 assumes log-normal returns and uses a one standard deviation (1σ) framework:
Band Multiplier Probability price stays inside Inner (solid lines)1×~68%Middle (dashed)1.5×~87%Outer (dashed)2×~95%
In plain English: on any given day, price should stay within the solid lines roughly 7 out of 10 sessions, within the dashed 1.5× lines about 9 out of 10 sessions, and within the outer 2× lines about 19 out of 20 sessions — assuming markets are pricing volatility fairly.
Important caveat: These are probabilistic ranges derived from implied volatility, not guarantees. VIX measures the market's expectation of future volatility, not its certainty. On high-VIX days, ranges will be wide; on low-VIX days, they will be narrow.
How to identify potential Tops and Bottoms:
The bands are not just risk levels — they are mean-reversion anchors. Here is how experienced traders use them:
🔴 Potential Top signals-
Price tags or exceeds the 1× upper level (solid red line) on the first push of the day — especially in the opening hour. A clean touch with a rejection candle (spinning top, doji, shooting star) at this level is a high-probability fade setup.
Price reaches the 1.5× upper level intraday. Statistically, this is an outlier move. Look for volume exhaustion, a lower-high on a smaller timeframe, or a bearish divergence on RSI/MACD to confirm a reversal.
Price closes above the 2× upper level. This is a rare ~5% event. It signals either a genuine breakout (news-driven) or an extreme overextension due for a sharp snapback the following session.
🟢 Potential Bottom signals-
Price dips to the 1× lower level (solid green line) and holds — particularly if the broader market trend is up. A bullish engulfing or hammer candle at this level, especially on above-average volume, is a classic intraday reversal signal.
Price hits the 1.5× lower level with declining sell-side momentum. Watch for positive divergence on shorter timeframes or a sudden spike in buying volume as confirmation.
Price closes below the 2× lower level. Similar to the upper equivalent — either a true breakdown or an exhaustion move. Gap-up opens the following session from this zone are historically common.
Mid-line (dotted yellow — prior close)-
The prior session's close acts as the neutral axis. Price hovering above it indicates relative strength; price gravitating below it indicates weakness. Failed attempts to reclaim the mid-line after a breakdown are bearish; decisive reclaims are bullish.
Band fill colour guide-
Fill Meaning Grey (inner, 1× band) Normal expected range — most activity happens here Orange (middle, 1.5× band) Extended move — caution zone, watch for reversals Red (outer, 2× band) Extreme move — high-probability mean-reversion area
Settings:
Parameter Description Volatility Multiplier Scale all bands up or down (0.5–2.0). Use < 1.0 for low-volatility markets; > 1.0 to account for persistent trending conditions Upper / Lower Colour for resistance and support lines
Notes on data-
Levels are calculated using yesterday's closing VIX to avoid look-ahead bias (lookahead_off).
The anchor price is yesterday's close of the charted instrument. Lines start from the first bar of the current trading day so zones correctly represent today's session range.
Works on any intraday timeframe (1m, 5m, 15m, hourly).
Not meaningful on daily charts.
Best used with-
Price Action — candlestick patterns at band extremes
Volume Profile — confluence of VIX levels with high-volume nodes
RSI / MACD — divergences at band touches to confirm reversal intent
Order Flow — absorption or exhaustion at the outer bands
This indicator does not repaint. All calculations are based on confirmed prior-session data.
These are popular market calculations & are in no way meant to act as a standalone trading system, always research before investing. If you found it useful, please boost the script.Happy trading !! Indicator

Natural Visibility Graph [UAlgo]Natural Visibility Graph (NVG) is a structure detection indicator that treats price as a time series network. Each bar is interpreted as a node, and nodes are connected if they can “see” each other without intermediate bars blocking the line of sight. This is based on the Natural Visibility Graph concept introduced in complex network theory, where geometric visibility rules convert a time series into a graph.
In practical trading terms, NVG measures how structurally important a bar is by counting how many past bars remain visible from it. Bars with high visibility act like pivots that dominate their local environment because they are not easily obstructed by surrounding price action. The script computes this visibility for highs and lows separately, then flags exceptional nodes as hubs using a dynamic, volatility aware thresholding process.
The output is a chart overlay that highlights structural peaks and valleys with neon hub markers, draws a horizon style connection to the furthest visible bar, and optionally provides alerts when new hubs appear. It also colors bars according to hub status so structural events stand out instantly.
🔹 Features
1) Natural Visibility Graph Degree for Highs and Lows
The indicator calculates an in degree style connectivity score for each bar. Degree represents how many past bars are visible from the current bar under the NVG rule. Highs and lows are handled independently:
High graph measures visibility between swing peaks
Low graph measures visibility between swing valleys using an inverted obstruction rule
This separation helps detect both resistance like peaks and support like valleys without blending them into a single metric.
2) Lookback Controlled Structural Sensitivity
Visibility is computed only within a user selected lookback window. Larger values build stronger structural context and produce more selective hubs, but increase computation. Smaller values react faster but focus on local structure.
Visibility Lookback directly controls how far the algorithm searches for visible connections.
3) Dynamic Hub Detection with Adaptive Max Degree
Instead of using a fixed degree threshold, the script maintains a rolling maximum degree for highs and lows and applies a percentile style threshold. A slow decay mechanism reduces the max gradually over time so the reference level adapts when market structure changes.
This keeps hub detection stable across different regimes and helps avoid permanently locking into an old maximum degree that may no longer be reachable.
4) Hub Threshold Percentile Control
Hub Threshold defines how strict hub detection is. It is applied as a fraction of the current rolling maximum degree:
High hub when degreeH is greater than or equal to maxDegH times threshold
Low hub when degreeL is greater than or equal to maxDegL times threshold
Higher threshold values mark only the most dominant nodes. Lower values mark more frequent hubs.
5) Neon Web Visual Design
The script uses a neon palette to make structural events highly visible:
High hubs are marked with a cyan diamond above price
Low hubs are marked with a pink diamond below price
A dotted horizon beam connects the hub to its furthest visible past node, helping you interpret how far the hub’s influence extends in the visibility sense.
6) Bar Coloring for Instant Structural Context
Bars are colored by hub status:
Cyan for high hubs
Pink for low hubs
Muted gray for non hub bars
This provides a fast scan view of where the market is producing dominant structural events.
7) Alerts for Structural Peaks and Valleys
Alert conditions are provided for both hub types:
High Visibility Structural Peak Detected
High Visibility Structural Valley Detected
These can be used for structural monitoring, swing validation, or confluence with other tools.
🔹 Calculations
1) Natural Visibility Rule for Highs
For each past bar i within the lookback, the script checks if the straight line from the current high to the past high is unobstructed by intermediate highs. If no intermediate high reaches or exceeds the projected height on that line, the past bar is visible and the degree increases.
Core idea:
Current bar at index 0
Past bar at index i
Intermediate bars at index k where 1 is the nearest past bar and i minus 1 is just before the past bar
Slope and projection:
float slope = (high - high ) / float(i)
for k = 1 to i - 1
float y_projected = high - (slope * k)
if high >= y_projected
isVisible := false
break
If isVisible remains true, degreeH increments and furthestVisIdxH is updated to i, so the script remembers the furthest visible connection for drawing.
2) Natural Visibility Rule for Lows
Lows use the inverted valley logic. A past low is visible from the current low if intermediate lows do not fall at or below the projected line, because deeper lows block visibility in a valley sense.
float slope = (low - low ) / float(i)
for k = 1 to i - 1
float y_projected = low - (slope * k)
if low <= y_projected
isVisible := false
break
If visible, degreeL increments and furthestVisIdxL records the furthest visible low node.
3) Rolling Maximum Degree with Slow Decay
The indicator maintains rolling maximum degree values for highs and lows. Periodically it applies a slow decay so that the maximum can adapt downwards over time if structural connectivity decreases:
var int maxDegH = 5
var int maxDegL = 5
if bar_index % int(lookback/2) == 0
maxDegH := int(math.max(5, maxDegH * 0.95))
maxDegL := int(math.max(5, maxDegL * 0.95))
maxDegH := math.max(maxDegH, degreeH)
maxDegL := math.max(maxDegL, degreeL)
Interpretation:
The max degree never falls below 5
Decay runs every lookback divided by two bars
New degrees update the max immediately if a stronger hub appears
4) Hub Classification
A bar becomes a hub if its degree reaches a fraction of the current max degree:
bool isHubH = degreeH >= maxDegH * threshold
bool isHubL = degreeL >= maxDegL * threshold
threshold behaves like a percentile control over the observed maximum connectivity.
5) Hub Markers and Horizon Beam
When a hub is detected, the script plots a diamond label and draws a dotted line to the furthest visible bar for that hub type:
High hub:
label.new(bar_index, high, "◈", textcolor=colNeonCyan, style=label.style_label_down)
line.new(bar_index, high, bar_index - furthestVisIdxH, high , style=line.style_dotted)
Low hub:
label.new(bar_index, low, "◈", textcolor=colNeonPink, style=label.style_label_up)
line.new(bar_index, low, bar_index - furthestVisIdxL, low , style=line.style_dotted)
Interpretation:
The beam represents the furthest confirmed visibility connection and gives a visual sense of the hub’s visibility range.
6) Alert Conditions
The script exposes alert conditions tied to the hub booleans:
alertcondition(isHubH, "NVG High Hub", "High Visibility Structural Peak Detected")
alertcondition(isHubL, "NVG Low Hub", "High Visibility Structural Valley Detected")
Indicator

Parkinson Range Oscillator [BackQuant]Parkinson Range Oscillator
Overview
Parkinson Range Oscillator is a volatility regime indicator built around the Parkinson volatility estimator , a high-low based variance model originally proposed as a more statistically efficient alternative to close-to-close volatility. Instead of measuring volatility from closing returns, this script measures volatility from the intrabar price range using ln(H/L), then converts it into a normalized oscillator (z-score) so you can identify volatility expansion vs compression relative to the asset’s own history.
The indicator is designed to answer questions like:
Is volatility currently elevated or suppressed relative to its baseline?
Is volatility expanding (risk rising) or compressing (coiling)?
How extreme is the current vol state in percentile terms?
How does range-based vol compare to a more common ATR-based vol read?
It plots:
A Parkinson-based volatility z-score oscillator with gradient fills.
A signal line (EMA) for expansion/compression transitions.
An ATR-based z-score for context comparison.
A dashboard with current vol %, z-score, percentile rank, regime label, and ATR z-score.
Where Parkinson volatility comes from (origin and intuition)
The Parkinson estimator comes from academic finance and the study of volatility estimation. The key insight is simple:
The daily high and low contain more information about variability than the close alone.
Close-to-close volatility only uses one price per bar (the close), throwing away intrabar information. The high-low range captures the realized dispersion inside the bar, so under ideal assumptions it can estimate variance more efficiently.
The Parkinson model is derived assuming:
Price follows a continuous-time diffusion process (often framed like geometric Brownian motion).
No drift matters for the variance estimate over the interval.
No jumps and no microstructure distortions (idealized).
Even though real markets violate these assumptions (gaps, jumps, wicks from order flow), the estimator remains useful because:
Range is still a strong proxy for realized volatility.
It reacts to intrabar expansion earlier than close-based methods.
It is less dependent on where the bar closes.
Core Parkinson formula (what the script implements)
Parkinson variance for a window of n bars is:
Var = (1 / (4 * n * ln(2))) * Σ
This script computes it in the common rolling form:
logHL2 = (ln(high/low))²
parkVar = SMA(logHL2, n) / (4 * ln(2))
parkVol = sqrt(parkVar) * 100
Key details:
ln(H/L) makes the range scale-invariant (percent-like), so it behaves more consistently across price levels.
Squaring gives variance contribution.
The 1/(4 ln 2) constant comes from the expected distribution of high-low range under a Brownian diffusion.
sqrt converts variance to standard deviation (volatility).
*100 expresses it as a percentage for readability.
So parkVol is a “range-based realized volatility proxy” in percent terms.
Why range-based volatility behaves differently than ATR
ATR measures average true range, which is a linear range magnitude measure (high-low plus gaps). Parkinson uses ln(H/L) which is:
Log-scaled (closer to a return-based measure).
More directly tied to variance estimation theory.
In practice:
ATR can be driven by gaps and absolute range.
Parkinson is driven by proportional range and tends to emphasize how wide the bar is relative to its price level.
Parkinson often reacts sharply when wicks expand even if closes are stable.
Normalization into an oscillator (making it comparable through time)
Raw volatility values are hard to interpret across regimes because every market has different “normal.” This script normalizes Parkinson volatility against its own rolling baseline using a z-score:
parkMA = SMA(parkVol, baselineLen)
parkSD = stdev(parkVol, baselineLen)
osc = (parkVol - parkMA) / parkSD
Interpretation:
osc = 0 means current vol is at its baseline average.
osc = +1 means 1 standard deviation above normal (high vol).
osc = -1 means 1 standard deviation below normal (compressed).
osc > +2 flags extreme expansion states.
This is the core output. It turns “volatility” into “volatility regime” in standardized units.
Signal line and expansion/compression transitions
The oscillator is smoothed with an EMA to create a signal line:
signal = EMA(osc, signalLen)
Then transitions are defined as:
Expansion cross: crossover(osc, signal) and osc > 0
Compression cross: crossunder(osc, signal) and osc < 0
Why the extra osc > 0 and osc < 0 conditions:
It prevents treating small oscillations around zero as meaningful.
It forces expansion signals to occur in above-average volatility territory.
It forces compression signals to occur in below-average volatility territory.
So signals are regime-confirming, not constant cross spam.
Percentile rank (how extreme is vol relative to the past)
In addition to the z-score, the script computes the percentile rank of the raw Parkinson volatility:
pctRank = percentrank(parkVol, pctRankLookback)
Interpretation:
pctRank near 90–100 means current vol is among the highest levels seen in that lookback.
pctRank near 0–10 means it is among the lowest (compression).
Z-score tells you “how many SDs from mean.” Percentile tells you “how rare is this state historically.” Those are different but complementary.
ATR comparison line (context, not the main engine)
The indicator also computes an ATR-based volatility proxy and normalizes it in the same way:
atrVol = ATR(n) / close * 100
atrOsc = zscore(atrVol, baselineLen)
This gives you a direct visual comparison:
If Parkinson oscillator is high but ATR oscillator isn’t, range expansion may be happening in a way ATR is not emphasizing (or vice versa).
If both agree, you have stronger confirmation of a true volatility regime shift.
ATR is included as a “common benchmark,” not as the primary signal.
Regime classification (human-readable state mapping)
The script labels regimes from osc:
osc > 2.0 → EXTREME
osc > 1.0 → HIGH
osc > 0.0 → ABOVE AVG
osc > -1.0 → BELOW AVG
else → COMPRESSED
This is a practical mapping for dashboards and quick reads. It is not pretending that 2.0 is a universal constant, it is just a standardized “rare expansion” threshold.
Coloring follows the same logic:
More positive = more “expansion” coloring (bearCol).
More negative = more “compression” coloring (bullCol).
Note: the color naming is semantic here:
“Low Vol / Compression” is bullCol because compression often precedes trend expansion opportunities.
“High Vol / Expansion” is bearCol because high vol often implies risk, disorder, liquidation, or unstable conditions.
You can interpret those however you prefer, the tool is measuring volatility regime, not directional bias.
Plot design (why the oscillator is split into positive/negative)
The oscillator is split into two series:
oscPos = osc if osc > 0 else na
oscNeg = osc if osc < 0 else na
This is purely for visuals:
Positive region is drawn with expansion color and expansion gradient fill to zero.
Negative region is drawn with compression color and compression gradient fill to zero.
This makes it obvious at a glance which side of “normal volatility” you’re on.
How to interpret the indicator correctly
1) The oscillator is volatility regime, not price direction
High osc does not mean price will go down. It means the market is moving violently relative to its baseline. That can occur in:
Selloffs, liquidations, panic.
Breakouts and momentum expansions.
News-driven repricing.
Low osc does not mean price will go up. It means the market is quiet relative to baseline:
Ranges, coils, low realized movement.
Slow grind trends with suppressed pullbacks.
Pre-breakout compressions.
2) Compression regimes are often “setup states”
When osc is deeply negative (compressed), it often indicates that realized movement has collapsed. In many markets this precedes:
Breakouts (vol expansion from compression).
Trend acceleration.
Mean reversion bursts.
But compression can also persist. This is why the script includes signal crosses and percentile rank to judge when compression is shifting.
3) Expansion regimes are often “risk states”
When osc is positive and rising, the environment is more chaotic:
Stops are more likely to be hit.
Mean reversion can get violent.
Trend continuation can be strong but timing becomes harder.
In those regimes, the tool can be used to:
Reduce leverage.
Widen stops (if your system supports it).
Switch to volatility-aware sizing.
Wait for stabilization if you trade mean reversion.
4) Use percentile rank to identify “rare” volatility
Two markets can both show osc = +1, but one might be at the 95th percentile and the other at the 70th depending on distribution shape. Percentile tells you whether the current vol is truly rare in that lookback.
Cross dots (how to treat them)
ExpansionCross and CompressionCross are not buy/sell signals. They are “volatility phase change” markers:
ExpansionCross: vol regime moving up, above baseline, acceleration risk increases.
CompressionCross: vol regime moving down, below baseline, quieting environment.
These are useful for:
Strategy toggles (trend mode vs chop mode).
Sizing changes.
Timing filters (avoid entries during extreme expansion if your edge hates noise).
Dashboard (what it gives you at a glance)
The table summarizes everything that matters without you needing to interpret plots manually:
Parkinson Vol %: current raw range-based volatility level.
Z-Score: current standardized regime reading.
Percentile: rarity of current vol in the lookback.
Regime: discrete label based on z-score thresholds.
ATR Z-Score: comparison metric in standardized units.
The dashboard is positioned and sized via inputs so it can fit different chart layouts.
Parameter tuning guidance
Parkinson Length
Controls how quickly the raw Parkinson vol responds:
Shorter = more reactive to immediate range changes.
Longer = smoother volatility estimate, less noisy.
Baseline Length
Controls what “normal” means:
Long baseline (like 100) creates stable regime definitions.
Short baseline makes z-scores jump around and can overreact.
Signal Length
Controls how quickly you detect regime turning points:
Short signal = more crosses, earlier detection, more noise.
Long signal = fewer crosses, later detection, cleaner regime shifts.
Percentile Lookback
Controls rarity context:
252 approximates one trading year on daily charts.
On intraday, it becomes “252 bars,” so adjust to match your horizon.
Limitations and what to watch for
Parkinson assumes continuous diffusion. Jumps and gaps can distort it.
Wicks caused by illiquidity can inflate ln(H/L) and produce false “expansion.”
Z-score assumes the baseline distribution is reasonably stable. If volatility distribution shifts structurally, your z-scores can be biased until baseline catches up.
Percentile rank is lookback-dependent. Different lookbacks can change “rarity” classification materially.
Summary
Parkinson Range Oscillator converts a statistically grounded high-low volatility estimator into a regime oscillator by z-scoring Parkinson volatility against its own rolling baseline. It highlights expansion vs compression states with clear gradients, flags volatility phase changes via oscillator-signal crosses, ranks current volatility by percentile for rarity context, and overlays an ATR-based z-score for comparison. This makes it a practical tool for volatility-aware trading, regime filtering, sizing adjustments, and identifying compression-to-expansion transitions. Indicator

Top Finder & Dip Hunter [BackQuant]Top Finder & Dip Hunter
A practical tool to map where price is statistically most likely to exhaust or mean-revert. It builds objective support for dips and resistance for tops from multiple methodologies, then filters raw touches with volume, momentum, trend, and price-action context to surface higher-quality reversal opportunities.
What this does
Draws a Dip Support line and a Top Resistance line using the method you select, or a blended hybrid.
Evaluates each touch/penetration against Quality Filters and assigns a 0–100 composite score.
Prints clean DIP and TOP signals only when depth/extension and quality pass your thresholds.
Optionally annotates the chart with the computed quality score at signal time.
Why it’s useful
Objectivity: Converts vague “looks extended” into rules, reduces discretion creep.
Signal hygiene: Filters raw touches using trend, volume, momentum, and candle structure to avoid obvious traps.
Adaptable regimes: Switch methods, sensitivity, and lookbacks to match choppy vs trending conditions.
How support and resistance are built
Pick one per side, or use “Hybrid.”
Dynamic: Anchors to the extreme of a lookback window, padded by recent ATR, so buffers expand in volatile periods and contract when calm.
Fibonacci: Uses the 0.618/0.786 retracement pair inside the current swing window to target common reaction zones.
Volatility: Uses a moving-average basis with standard-deviation bands to capture statistically stretched moves.
Volume-Weighted: Centers off VWAP and penalizes deviations using dispersion of price around VWAP, helpful on intraday instruments.
Hybrid: A weighted average of the above to smooth out single-method biases.
When a touch becomes a signal
Depth/extension test:
Dips must penetrate their support by at least Min Dip Depth % .
Tops must extend above resistance by at least Min Top Rise % .
Quality Score gate: The composite must clear Min Quality Score . Components:
Trend alignment: Favor dips in bullish regimes and tops in bearish regimes using EMAs and RSI.
Volume confirmation: Reward expansion or spikes versus a 20-period baseline.
RSI context: Prefer oversold for dips, overbought for tops.
Momentum shift: Look for short-term momentum turning in the expected direction.
Candle structure: Reward hammer/shooting-star style responses at the level.
How to use it
Pick your regime:
Range/chop, small caps, mean-revert intraday → Volatility or Volume Weighted .
Cleaner swings/trends → Dynamic or Fibonacci .
Unsure or mixed conditions → Hybrid .
Set windows: Start with Lookback = 50 for both sides. Increase in higher timeframes or slow assets, decrease for fast scalps.
Tune sensitivity: Raise Dip/Top Sensitivity to widen buffers and reduce noise. Lower to be more aggressive.
Gate with quality: Begin with Min Quality Score = 60 . Push to 70–80 for cleaner swing entries, relax to 50–60 for scalps.
Act on first prints: The script only fires on new qualified events. Use the score label to prioritize A-setups.
Typical workflows
Intraday futures/crypto: Volume-Weighted or Volatility methods for both sides, higher Sensitivity , require Volume Filter and Momentum Filter on. Look for DIP during opening drive exhaustion and TOP near late-session fatigue.
Swing equities/FX: Dynamic or Fibonacci with moderate sensitivity. Keep Trend Filter on to only take dips above the 200-EMA and tops below it.
Countertrend scouts: Lower Min Dip Depth % / Min Top Rise % slightly, but raise Min Quality Score to compensate.
Reading the chart
Lines: “Dip Support” and “Top Resistance” are the current actionable rails, lightly smoothed to reduce flicker.
Signals: “DIP” prints below bars when a qualified dip appears, “TOP” prints above for qualified tops.
Scores: Optional labels show the composite at signal time. Favor higher numbers, especially when aligned with higher-timeframe trend.
Background hints: Light highlights mark raw touches meeting depth/extension, even if they fail quality. Treat these as early warnings.
Tuning tips
If you get too many false DIP signals in downtrends, raise Min Dip Depth % and keep Trend Filter on.
If tops appear late in squeezes, lower Top Sensitivity slightly or switch top side to Fibonacci .
On assets with erratic volume, prefer Volatility or Dynamic methods and down-weight the Volume Filter .
For strict systems, increase Min Quality Score and require both Volume and Momentum filters.
What this is not
It is not a blind reversal signal. It’s a structured context tool. Combine with your risk plan and higher-timeframe map.
It is not a guarantee of mean reversion. In strong trends, expect fewer, higher-score opportunities and respect invalidation quickly.
Suggested presets
Scalp preset: Lookback 30–40, Sensitivity 1.2–1.5, Quality ≥ 55, Volume & Momentum filters ON.
Swing preset: Lookback 75–100, Sensitivity 1.0–1.2, Quality ≥ 70, Trend & Volume filters ON.
Chop preset: Volatility/Volume-Weighted methods, Quality ≥ 60, Momentum filter ON, RSI emphasis.
Input quick reference
Dip/Top Method: Choose the model for each side or “Hybrid” to blend.
Lookback: Swing window the levels are built from.
Sensitivity: Scales volatility padding around levels.
Min Dip Depth % / Min Top Rise %: Minimum breach/extension to qualify.
Quality Filters: Trend, Volume, Momentum toggles, plus Min Quality Score gate.
Visuals: Colors and whether to print score labels.
Best practices
Map higher-timeframe trend first, then act on lower-timeframe DIP/TOP in the trend’s favor.
Use the score as triage. Skip mediocre prints into news or at session open unless score is exceptional.
Pre-define stop placement relative to the level you used. If a DIP fails, exit on loss of structure rather than waiting for the next print.
Bottom line: Top Finder & Dip Hunter codifies where reversals are most defensible and only flags the ones with supportive context. Tune the method and filters to your market, then let the score keep your playbook disciplined.
Indicator

Adaptive Valuation [BackQuant]Adaptive Valuation
What this is
A composite, zero-centered oscillator that standardizes several classic indicators and blends them into one “valuation” line. It computes RSI, CCI, Demarker, and the Price Zone Oscillator, converts each to a rolling z-score, then forms a weighted average. Optional smoothing, dynamic overbought and oversold bands, and an on-chart table make the inputs and the final score easy to inspect.
How it works
Components
• RSI with its own lookback.
• CCI with its own lookback.
• DM (Demarker) with its own lookback.
• PZO (Price Zone Oscillator) with its own lookback.
Standardization via z-score
Each component is transformed using a rolling z-score over lookback bars:
z = (value − mean) ÷ stdev , where the mean is an EMA and the stdev is rolling.
This puts all inputs on a comparable scale measured in standard deviations.
Weighted blend
The z-scores are combined with user weights w_rsi, w_cci, w_dm, w_pzo to produce a single valuation series. If desired, it is then smoothed with a selected moving average (SMA, EMA, WMA, HMA, RMA, DEMA, TEMA, LINREG, ALMA, T3). ALMA’s sigma input shapes its curve.
Dynamic thresholds (optional)
Two ways to set overbought and oversold:
• Static : fixed levels at ob_thres and os_thres .
• Dynamic : ±k·σ bands, where σ is the rolling standard deviation of the valuation over dynLen .
Bands can be centered at zero or around the valuation’s rolling mean ( centerZero ).
Visualization and UI
• Zero line at 0 with gradient fill that darkens as the valuation moves away from 0.
• Optional plotting of band lines and background highlights when OB or OS is active.
• Optional candle and background coloring driven by the valuation.
• Summary table showing each component’s current z-score, the final score, and a compact status.
How it can be used
• Bias filter : treat crosses above 0 as bullish bias and below 0 as bearish bias.
• Mean-reversion context : look for exhaustion when the valuation enters the OB or OS region, then watch for exits from those regions or a return toward 0.
• Signal confirmation : use the final score to confirm setups from structure or price action.
• Adaptive banding : with dynamic thresholds, OB and OS adjust to prevailing variability rather than relying on fixed lines.
• Component tuning : change weights to emphasize trend (raise DM, reduce RSI/CCI) or range behavior (raise RSI/CCI, reduce DM). PZO can help in swing environments.
Why z-score blending helps
Indicators often live on different scales. Z-scoring places them on a common, unitless axis, so a one-sigma move in RSI has comparable influence to a one-sigma move in CCI. This reduces scale bias and allows transparent weighting. It also facilitates regime-aware thresholds because the dynamic bands scale with recent dispersion.
Inputs to know
• Component lookbacks : rsilb, ccilb, dmlb, pzolb control each raw signal.
• Standardization window : lookback sets the z-score memory. Longer smooths, shorter reacts.
• Weights : w_rsi, w_cci, w_dm, w_pzo determine each component’s influence.
• Smoothing : maType, smoothP, sig govern optional post-blend smoothing.
• Dynamic bands : dyn_thres, dynLen, thres_k, centerZero configure the adaptive OB/OS logic.
• UI : toggle the plot, table, candle coloring, and threshold lines.
Reading the plot
• Above 0 : composite pressure is positive.
• Below 0 : composite pressure is negative.
• OB region : valuation above the chosen OB line. Risk of mean reversion rises and momentum continuation needs evidence.
• OS region : mirror logic on the downside.
• Band exits : leaving OB or OS can serve as a normalization cue.
Strengths
• Normalizes heterogeneous signals into one interpretable series.
• Adjustable component weights to match instrument behavior.
• Dynamic thresholds adapt to changing volatility and drift.
• Transparent diagnostics from the on-chart table.
• Flexible smoothing choices, including ALMA and T3.
Limitations and cautions
• Z-scores assume a reasonably stationary window. Sharp regime shifts can make recent bands unrepresentative.
• Highly correlated components can overweight the same effect. Consider adjusting weights to avoid double counting.
• More smoothing adds lag. Less smoothing adds noise.
• Dynamic bands recalibrate with dynLen ; if set too short, bands may swing excessively. If too long, bands can be slow to adapt.
Practical tuning tips
• Trending symbols: increase w_dm , use a modest smoother like EMA or T3, and use centerZero dynamic bands.
• Choppy symbols: increase w_rsi and w_cci , consider ALMA with a higher sigma , and widen bands with a larger thres_k .
• Multiday swing charts: lengthen lookback and dynLen to stabilize the scale.
• Lower timeframes: shorten component lookbacks slightly and reduce smoothing to keep signals timely.
Alerts
• Enter and exit of Overbought and Oversold, based on the active band choice.
• Bullish and bearish zero crosses.
Use alerts as prompts to review context rather than as stand-alone trade commands.
Final Remarks
We created this to show people a different way of making indicators & trading.
You can process normal indicators in multiple ways to enhance or change the signal, especially with this you can utilise machine learning to optimise the weights, then trade accordingly.
All of the different components were selected to give some sort of signal, its made out of simple components yet is effective. As long as the user calibrates it to their Trading/ investing style you can find good results. Do not use anything standalone, ensure you are backtesting and creating a proper system. Indicator

Indicator

Support Resistance Major/Minor [TradingFinder] Market Structure🔵 Introduction
Support and resistance levels are key concepts in technical analysis, serving as critical points where prices pause or reverse due to the interaction of supply and demand. These foundational elements in price action and classical technical analysis assist traders in understanding market behavior and making better trading decisions.
Support levels are zones where demand is strong enough to prevent further price declines, while resistance levels act as barriers that hinder price increases.
Support and resistance levels are divided into two main types: static and dynamic. Static levels are fixed horizontal lines on charts, formed based on historical price points, and are crucial due to repeated price reactions in these areas.
Dynamic levels, on the other hand, move with market trends and are often identified using tools like moving averages and trendlines. These levels are particularly useful for analyzing dynamic trends and identifying potential reversal points in financial markets.
The importance of support and resistance in technical analysis lies in their ability to pinpoint price reversal or continuation points. Professional traders use these levels to determine optimal entry and exit points and combine them with tools such as Fibonacci retracements or moving averages for precise strategies.
Detailed analysis of price behavior at these levels provides insights into trend strength and the likelihood of price breaks or reversals. By understanding these concepts, technical analysts can forecast future price movements and optimize their trading decisions using tools such as indicators and price action. Support and resistance levels, as a cornerstone of technical analysis, form the foundation for many trading strategies.
🔵 How to Use
The Static Support and Resistance Indicator is a vital tool for identifying significant price zones in financial markets. It automatically detects major and minor support and resistance levels in both short-term and long-term intervals, enabling traders to analyze price behavior accurately and develop optimal entry and exit strategies.
🟣 Major Long-Term Support and Resistance
Major Long-Term Support : The lowest price points recorded over long-term intervals that prevent further declines.
Major Long-Term Resistance : The highest price points in long-term intervals that limit further price increases.
🟣 Minor Long-Term Support and Resistance
Minor Long-Term Support : Temporary halts in price decline within a downtrend over long-term intervals.
Minor Long-Term Resistance : Short-term zones within long-term intervals where prices react negatively in an uptrend.
🟣 Major Short-Term Support and Resistance
Major Short-Term Support : The lowest price points in short-term intervals that act as barriers against sharp price drops.
Major Short-Term Resistance : The highest points in short-term intervals that prevent further price surges.
🟣 Minor Short-Term Support and Resistance
Minor Short-Term Support : Temporary halts in price decline within short-term downtrends.
Minor Short-Term Resistance : Zones where price reacts quickly and reverses in short-term uptrends.
🔵 Settings
Long Term S&R Pivot Period : Defines the interval for identifying long-term support and resistance levels (default: 21).
Short Term S&R Pivot Period : Defines the interval for identifying short-term support and resistance levels (default: 5).
🟣 Long-Term Lines
Major Line Display : Enable/disable major long-term lines.
Minor Line Display : Enable/disable minor long-term lines.
Major Line Colors : Green for support, red for resistance (long-term major levels).
Minor Line Colors : Light green for support, light red for resistance (long-term minor levels).
Major Line Style : Choose between solid, dotted, or dashed lines for major long-term levels.
Minor Line Style : Choose between solid, dotted, or dashed lines for minor long-term levels.
Major Line Width : Adjust the thickness of major long-term lines.
Minor Line Width : Adjust the thickness of minor long-term lines.
🟣 Short-Term Lines
Major Line Display : Enable/disable major short-term lines.
Minor Line Display : Enable/disable minor short-term lines.
Major Line Colors : Gray-green for support, gray-red for resistance (short-term major levels).
Minor Line Colors : Dark green for support, dark red for resistance (short-term minor levels).
Major Line Style : Choose between solid, dotted, or dashed lines for major short-term levels.
Minor Line Style : Choose between solid, dotted, or dashed lines for minor short-term levels.
Major Line Width : Adjust the thickness of major short-term lines.
Minor Line Width : Adjust the thickness of minor short-term lines.
🔵 Conclusion
Static support and resistance levels are among the most critical tools in technical analysis, helping traders identify key reversal or continuation points.
This indicator simplifies and enhances the analysis process by automatically detecting major and minor levels in both short-term and long-term intervals. It allows traders to customize settings to suit their trading strategies and analyze different market levels effectively.
Using this indicator improves price action analysis, enhances market understanding, and identifies trading opportunities. Applicable to all trading styles, from day trading to long-term investing, it is an essential tool for technical analysis.
Combining this indicator with other tools like trendlines, Fibonacci retracements, and moving averages enables comprehensive analysis and allows traders to navigate financial markets with greater confidence.
Indicator

2-Year MA Multiplier [UAlgo]The 2-Year MA Multiplier is a technical analysis tool designed to assist traders and investors in identifying potential overbought and oversold conditions in the market. By plotting the 2-year moving average (MA) of an asset's closing price alongside an upper band set at five times this moving average, the indicator provides visual cues to assess long-term price trends and significant market movements.
🔶 Key Features
2-Year Moving Average (MA): Calculates the simple moving average of the asset's closing price over a 730-day period, representing approximately two years.
Visual Indicators: Plots the 2-year MA in forest green and the upper band in firebrick red for clear differentiation.
Fills the area between the 2-year MA and the upper band to highlight the normal trading range.
Uses color-coded fills to indicate overbought (tomato red) and oversold (cornflower blue) conditions based on the asset's closing price relative to the bands.
🔶 Idea
The concept behind the 2-Year MA Multiplier is rooted in the cyclical nature of markets, particularly in assets like Bitcoin. By analyzing long-term price movements, the indicator aims to identify periods of significant deviation from the norm, which may signal potential buying or selling opportunities.
2-year MA smooths out short-term volatility, providing a clearer view of the asset's long-term trend. This timeframe is substantial enough to capture major market cycles, making it a reliable baseline for analysis.
Multiplying the 2-year MA by five establishes an upper boundary that has historically correlated with market tops. When the asset's price exceeds this upper band, it may indicate overbought conditions, suggesting a potential for price correction. Conversely, when the price falls below the 2-year MA, it may signal oversold conditions, presenting potential buying opportunities.
🔶 Disclaimer
Use with Caution: This indicator is provided for educational and informational purposes only and should not be considered as financial advice. Users should exercise caution and perform their own analysis before making trading decisions based on the indicator's signals.
Not Financial Advice: The information provided by this indicator does not constitute financial advice, and the creator (UAlgo) shall not be held responsible for any trading losses incurred as a result of using this indicator.
Backtesting Recommended: Traders are encouraged to backtest the indicator thoroughly on historical data before using it in live trading to assess its performance and suitability for their trading strategies.
Risk Management: Trading involves inherent risks, and users should implement proper risk management strategies, including but not limited to stop-loss orders and position sizing, to mitigate potential losses.
No Guarantees: The accuracy and reliability of the indicator's signals cannot be guaranteed, as they are based on historical price data and past performance may not be indicative of future results. Indicator

Tops & Bottoms - Day of Week Report█ OVERVIEW
The indicator tracks when the weekly tops and bottoms occur and reports the statistics by the days of the week.
█ CONCEPTS
Not all the days of the week are equal, and the market dynamic can follow through or shift over the trading week. Tops and bottoms are vital when entering a trade, as they will decide if you are catching the train or being straight offside. They are equally crucial when exiting a position, as they will determine if you are closing at the optimal price or seeing your unrealized profits vanish.
This indicator is before all for educational purposes. It aims to make the knowledge available to all traders, facilitate understanding of the various markets, and ultimately get to know your trading pairs by heart (and saving a lot of your time backtesting!).
USDJPY tops and bottoms percentages on any given week.
USDJPY tops and bottoms percentages on up weeks versus down weeks.
█ FEATURES
Custom interval
By default, the indicator uses the weekly interval defined by the symbol (e.g., Monday to Sunday). This option allows you to specify your custom interval.
Weekly interval type filter
Analyze the weekly interval on any weeks, up weeks, or down weeks.
Configurable time range filter
Select the period to report from.
█ NOTES
Trading session
The indicator analyzes the days of the week from the daily chart. The daily trading sessions are defined by the symbol (e.g., 17:00 - 17:00 on EURUSD).
Extended/electronic trading session
The indicator can include the extended hours when activated on the chart, using the 24-hour or 1440-minute timeframe.
█ HOW TO USE
Plot the indicator and navigate on the 1-day or 24-hour timeframe. Indicator

Indicator

Indicator

Indicator

Swing BoxesHey, folks!
Sorry for not posting anything for such a long time. Don't have enough ideas and resources to get inspiration, so trying to brainstorm good stuff in my free time from university studies.
But despite my absence more I now have 300+ people subscribed to me! Thanks, guys, for keeping interest for my work, as I still do value each boost on my script, for real :)
So here is new script , enjoy!
Swing Boxes is pretty simple indicator, which plots signals with "boxes", that help you determine price targets.
What is the idea behind?
I wanted to make indicator, that could help me make swing trades with nice accuracy (as all we want, lol), and for signal criteria I decided to use highs and lows of the price . Then I started coding some ideas to see which of them could be worthy. And, actually, Swing Boxes appeared to be good. But the thing is, that I didn't intend to build them, they appeared as an anomaly from my code :)
I started to explore this anomaly (it looked super cool, but was repainting hard) to fix it and I succeeded, now Swng Boxes don't repaint.
The main idea is that when price goes above it's highest value of p-bars back or below it's lowest value p-bars back, then there is a some god probability, that price will continue to follow current direction.
And the things about Swing Boxes is that when there is a good trend movement, the boxes become super small to track price movement and when price breaks out in the counter-trend direction, then you will be able to almost perfectly catch a top or a bottom! But most of the signals won't be so high-quality, so don't think that is this some holy grail to trade swing-trading, because it is not.
Signal logic
Quick hint:
- epsilon(variable e ) = ATR * ATR_Factor . It is used to determine box's sensitivity to price changes.
If previous close is higher than variable, which contains previous HIGHEST value (variable h in the code), then update the this variable by taking up-to-date highest value and add epsilon( e ) to it;
If previous close is lower than variable, which contains previous LOWEST value (variable l in the code), then update the this variable by taking up-to-date lowest value and substract epsilon( e ) from it.
Variables decribed above ( h and l ) are box's top and bottom respectively, so if price cross them, it is logical to update it is value.
Settings and what is what
Swing Box Period - numbers fo bars in the past to find highest and lowest price from. The bigger the input, the bigger the boxes will be;
ATR Period;
ATR Factor - multiplier for ATR, determines sensitivity for price changes. The bigger this input, the more accurate signals will be, but less the probability that the signal will be on the top or a bottom.
Show Boxes? - when chosen, plots box's top and bottom. Used to determine price targets.
Show Baseline? - when chosen, plot's baseline, which midline between box's top and bottom.
How to use?
This indicator plots green and red triangles by default.
- Green triangle --> Buy ;
- Red triangle --> Sell ;
As I've said before, many signals from indicator will probably be garbage, so you need to tune settings for youself, so it could satisfy you .
You can enable showing boxes to see box's top and bottom. Box's bottom --> your entry, top --> your profit target.
If you find a way to sort bad signals, you will be able to trade with super cool RR, because the signal from Swing Boxes appear to be a good one, there is almost 95% probability, that price will not even come close to your stop loss, so you can trade with super small stop-losses! Smaller stop-loss --> smaller risk --> smaller loss --> bigger profit, it is that easy.
Also you can enable baseline to use at as your 1st TP, and box's top/bottom as 2nd TP, closing 25% on TP1 and the rest on TP2 (but that is just mine recommendation, you can use different RM (risk-management), if you want).
Also you can use baseline as your S/R (Support/Resistance) line, test it out on your charts.
And please, hear me out: as all other indicators out here on the PulseWire, Swing Boxes ARE NOT meant to be traded in solo! Many bad signal can go in a row, so PLEASE find your way to filter out bad signals with other indicators.
You can see here the example of a garabge-class signal in a row, so be don't be deluded!
I do hope that somebody will suggest and idea to improve this thing, as I personally don't have enough time to think about it because of my university studies, but I will probably try it make this thing better throughout the time.
And that's it for now, folks! If you have any ideas for scripts, strategies or anything else, feel free to DM me or leave a comment, I will check it.
Hope you will find this script useful.
Take your profits!
- Tarasenko Fyodor Indicator

Indicator

Indicator

Indicator

Indicator
