SBP Market Levels NavigatorSBP Market Levels Navigator is a standalone market-level mapping tool designed to identify and display only the strongest qualified support and resistance references for the trading day positioned at the right edge of the visible chart.
The script is intended to reduce chart clutter. It does not display intermediate or minor levels. Only Major levels that satisfy the internal qualification threshold are selected for plotting.
The script does not place orders, calculate position size, provide profit targets, define stop-loss levels, or present performance statistics. It is an analytical aid for independent chart study and risk-managed decision-making.
Methodology
The script uses one integrated level-selection workflow. Confirmed swing pivots, previous-day high and low, and previous-week high and low create candidate price references. Nearby candidates are consolidated so that similar prices are treated as one area rather than as multiple unrelated lines.
Each retained level is evaluated using:
Confirmed occurrence count
Price interaction count
Confirmed rejection behaviour
Reference-source weighting
Level freshness
Confirmed support-resistance role change
Only candidates that meet the Major-level score requirement are eligible for display. The strongest qualified levels nearest to price are selected separately above and below the market.
Selected trading-day display
The displayed trading day is the exchange-calendar day containing the chart's rightmost visible candle. Moving another historical day to the right edge of the visible chart causes the indicator to rebuild its display for that day.
Lines begin at the first bar of the selected day and end at the configured label offset after that day. They do not extend indefinitely across unrelated trading days.
Pine Script cannot detect the candle under the mouse pointer, so the rightmost visible candle is used as the practical historical-day selector.
Major levels only
The indicator displays only Major levels.
Support and resistance levels use thick lines and plain-text labels.
Intermediate and Minor classifications are not displayed and are not available as user controls.
This design keeps the chart focused on the strongest internally ranked areas.
Level colours and role changes
Support is displayed in green.
Resistance is displayed in red.
A resistance level that changes into support remains green and is labelled Rev Sup.
A support level that changes into resistance becomes red and is labelled Rev Res.
Normal support and resistance lines are solid. Confirmed role-reversal lines are dashed so that the change in market function remains visually identifiable without adding extra colours.
A support changes into resistance only after the required number of confirmed closes below the level. A resistance changes into support only after the required number of confirmed closes above the level.
Round-number display
Displayed levels can use exact prices, automatic rounding, or a manual rounding step of 1, 5, 10, 25, 50, or 100.
Auto mode chooses a practical rounding interval according to the instrument type and price range. This is intended to produce readable levels for indices, stocks, futures, commodities, forex, and other supported symbols.
The internal scoring process retains the calculated candidate price. The displayed line and label use the selected rounded price.
Nearby-level control
The indicator suppresses duplicate rounded prices and closely spaced levels. The minimum spacing is measured as a user-defined multiple of ATR. When two selected candidates are too close, only the stronger qualified level is retained.
Previous-day-origin levels may contribute to the internal ranking and may be plotted when they qualify, but they do not receive text labels. This reduces repetitive labels around commonly watched daily reference prices.
Labels
Labels are plain text with no shaded background and no border.
The available texts are:
Support
Resistance
Rev Sup
Rev Res
Labels include the displayed rounded price and appear after the selected trading day. Text size and label offset remain user controlled.
Main settings
Maximum Stored Levels limits the number of candidates retained in memory.
Maximum Level Age removes stale candidates from active consideration.
Confirmed Closes for Role Change controls how many closes beyond a level are required before its role changes.
Levels Per Side controls the maximum number of Major supports and Major resistances displayed.
Round Level Prices selects exact, automatic, or manual price rounding.
Minimum Display Separation controls the minimum distance between displayed levels as an ATR multiple.
Label Text Size controls the plain-text label size.
Label Offset After Selected Day controls how many bars after the selected day the labels are positioned.
Alerts
Alert conditions are available for:
Support-level tests
Resistance-level tests
Confirmed bullish rejections
Confirmed bearish rejections
Confirmed resistance-to-support changes
Confirmed support-to-resistance changes
These alerts describe analytical events only. They are not trade instructions.
Suggested use
Place the script on a standard price chart.
Move the current or historical trading day you want to study to the right edge of the visible chart.
Use Auto rounding for general use or select a manual step suited to the instrument.
Adjust Levels Per Side to control how many Major supports and resistances are shown.
Increase Minimum Display Separation when displayed levels remain too close.
Treat the plotted levels as areas for further observation rather than guaranteed reversal or breakout points.
Limitations
The levels are derived from historical price structure and confirmed reference data. They do not predict whether price will hold, reverse, or break.
Confirmed pivots appear only after the required confirmation bars have completed.
The historical-day selector follows the rightmost visible candle, not the mouse pointer.
Calendar-day selection may not perfectly represent instruments whose trading sessions cross midnight.
Rounded displayed prices may differ from the exact internal candidate prices.
The script should not be used as the sole basis for a trading decision.
Educational notice
This script is an analytical charting tool. It does not provide investment advice, guarantee outcomes, or replace independent analysis and risk management. 指標

TEWMA Slope Oscillator - [JTCAPITAL]TEWMA Slope Oscillator - is a modified way to use a Triple Exponential Weighted Moving Average (TEWMA), normalized slope analysis, ATR volatility normalization, and exponential smoothing for Trend-Following and Momentum Analysis.
Unlike traditional oscillators that are derived directly from price, this indicator measures the rate of change (slope) of a custom TEWMA trend line. By normalizing this slope with the Average True Range (ATR), the oscillator becomes volatility-adjusted, allowing trend strength to be compared across different market conditions. This makes the indicator useful for identifying whether trends are merely moving, or accelerating with meaningful momentum.
The indicator works by calculating in the following steps:
Weighted Price Smoothing
The selected price source (Close by default, although any TradingView source can be selected) is first smoothed using a Weighted Moving Average (WMA). Unlike a Simple Moving Average, the WMA gives progressively greater importance to the most recent price bars while still considering historical data. This reduces market noise while allowing the moving average to react faster to recent changes.
Rather than relying on a single smoothing period, the script prepares two separate smoothing lengths:
The original TEWMA Length.
A second length calculated as the original length multiplied by the user-defined Length Multiplier.
This creates two trend measurements that represent both medium-term and slower market behavior.
Triple Exponential Processing (TEMA)
Each Weighted Moving Average is then processed using a Triple Exponential Moving Average (TEMA).
The Triple Exponential Moving Average is specifically designed to reduce lag while maintaining smoothness. Traditional moving averages often delay reactions because every layer of smoothing introduces additional latency. TEMA compensates for much of this lag mathematically by combining multiple exponential averages into a single result.
Applying TEMA on top of the Weighted Moving Average creates a very responsive yet smooth trend estimate that filters insignificant fluctuations while remaining sensitive to genuine trend changes.
Dual TEWMA Construction
Instead of relying on only one moving average, the indicator calculates two separate TEWMAs:
One using the original period.
One using the multiplied period.
The final TEWMA becomes the average of these two curves.
Averaging both trend estimates balances responsiveness with stability. The shorter TEWMA reacts more quickly to new market information, while the longer TEWMA filters larger amounts of noise. Combining both produces a smoother trend representation that avoids becoming overly reactive while still responding efficiently to changing market conditions.
Trend Direction Detection
The script continuously compares the current TEWMA with its previous value.
If today's TEWMA is higher than the previous value, the trend is considered bullish.
If today's TEWMA is lower than the previous value, the trend is considered bearish.
The indicator stores this direction internally and uses it for its visual coloring, making bullish periods immediately recognizable in blue while bearish periods appear in purple.
Slope Calculation
After constructing the final TEWMA, the script measures its slope.
Rather than measuring price itself, the oscillator calculates:
"The difference between today's TEWMA and yesterday's TEWMA."
This produces a measurement of how quickly the trend itself is changing.
Positive values indicate the trend is rising.
Negative values indicate the trend is falling.
Larger absolute values indicate stronger acceleration.
Smaller values near zero indicate slowing momentum or sideways conditions.
ATR Normalization
Instead of using the raw slope, the script divides the slope by the Average True Range (ATR).
This normalization is one of the defining characteristics of the indicator.
Without ATR normalization, identical price movements would appear much larger on low-priced assets than on expensive assets.
By dividing by ATR:
Large volatility environments become comparable with quiet markets.
Different assets become easier to compare.
Oscillator values represent trend strength relative to current market volatility rather than raw price movement.
The result is a dimensionless momentum measurement that remains much more consistent across instruments and timeframes.
EMA Signal Smoothing
Although the normalized slope already provides valuable information, short-term fluctuations may still produce rapid oscillations.
To improve readability, the script applies an Exponential Moving Average (EMA) directly to the slope values.
This smoothed line acts as a slower confirmation curve.
The raw slope reflects immediate momentum.
The EMA reflects sustained momentum.
Comparing these two allows traders to distinguish between temporary spikes and persistent trend acceleration.
Momentum Zone Detection
The indicator introduces user-defined upper and lower threshold levels.
When the normalized slope exceeds the upper threshold:
-The market is considered to have unusually strong bullish momentum.
When the normalized slope falls below the lower threshold:
-The market is considered to have unusually strong bearish momentum.
The same logic is independently applied to the smoothed EMA line.
Whenever either condition is satisfied, the background color changes to highlight periods of exceptional trend strength.
These zones do not generate trading signals by themselves, but instead emphasize moments where momentum has reached statistically significant levels relative to recent volatility.
Buy and Sell Conditions:
This indicator is intentionally designed as a momentum and trend-strength oscillator rather than a direct entry generator.
Typical bullish interpretation includes:
The TEWMA begins rising.
The normalized slope crosses above zero.
The smoothed EMA also moves above zero.
The oscillator continues accelerating toward or above the upper threshold.
Typical bearish interpretation includes:
The TEWMA begins falling.
The normalized slope crosses below zero.
The smoothed EMA confirms the move below zero.
The oscillator continues toward or below the lower threshold.
Because both the raw slope and its EMA are displayed simultaneously, traders can judge whether momentum is strengthening, weakening, or beginning to reverse before the underlying trend itself changes direction.
The threshold values can be adjusted depending on trading style:
Lower threshold values produce earlier but more frequent momentum alerts.
Higher threshold values require stronger momentum before highlighting extreme conditions, reducing market noise.
The smoothing period can also be increased or decreased depending on whether faster or more conservative confirmation is preferred.
Features and Parameters:
Source
Selects which price source is used for all calculations.
TEWMA Length
Controls the primary Weighted Moving Average and TEMA calculation period.
Length Multiplier
Creates the second TEWMA period by multiplying the original length, allowing the indicator to combine two different trend horizons.
Smoothed Length
Determines the EMA period applied to the normalized slope.
Upper Threshold
Defines the bullish momentum level where background highlighting begins.
Lower Threshold
Defines the bearish momentum level where background highlighting begins.
ATR Length
Controls the Average True Range period used to normalize slope values.
Dual Oscillator Display
Shows both the raw normalized slope and its EMA simultaneously.
Dynamic Coloring
Automatically colors bullish momentum blue and bearish momentum purple.
Background Momentum Zones
Highlights periods where either the raw slope or smoothed slope exceeds user-defined strength thresholds.
Specifications:
Weighted Moving Average (WMA)
The Weighted Moving Average assigns progressively larger weights to newer prices while assigning smaller weights to older observations. This allows the moving average to respond faster than a Simple Moving Average while still maintaining smoothness. Because recent market activity receives greater influence, the WMA provides an excellent foundation for responsive trend calculations.
Triple Exponential Moving Average (TEMA)
The Triple Exponential Moving Average is designed to significantly reduce lag compared to traditional moving averages. Instead of relying on a single exponential smoothing process, TEMA mathematically combines multiple exponential averages to compensate for the delay introduced by smoothing. This produces a trend line that reacts quickly while maintaining a clean appearance.
TEWMA (Triple Exponential Weighted Moving Average)
The TEWMA combines the advantages of a Weighted Moving Average with the lag-reduction properties of the Triple Exponential Moving Average. The result is a trend estimate that reacts rapidly to meaningful price movement while filtering much of the short-term market noise that can affect conventional moving averages.
Dual-Length Averaging
Instead of relying on one smoothing horizon, the indicator averages two independently calculated TEWMAs. Combining a faster and slower trend estimate helps reduce false directional changes while preserving responsiveness. This dual-length construction creates a more balanced representation of market structure than either length would provide individually.
Slope
Slope measures how quickly the TEWMA itself changes from one bar to the next. Rather than evaluating where price is located, the indicator evaluates how rapidly the trend line is moving. Increasing positive slope reflects accelerating bullish momentum, while increasingly negative slope reflects accelerating bearish momentum.
Average True Range (ATR)
Average True Range measures recent market volatility by considering both daily ranges and price gaps. ATR does not indicate trend direction but instead measures how much price typically moves. Dividing the slope by ATR converts raw movement into a volatility-adjusted measurement, making momentum readings far more consistent across different instruments and market environments.
ATR Normalization
Normalization removes much of the distortion caused by differing price scales and volatility regimes. A movement that appears large on one market may be insignificant on another. By scaling the slope using ATR, the oscillator expresses momentum relative to current market conditions rather than absolute price movement.
Exponential Moving Average (EMA)
The EMA applied to the slope acts as a momentum confirmation filter. Because exponential averages place greater emphasis on recent observations, the smoothed oscillator follows changes efficiently while filtering much of the short-term fluctuation present in the raw slope.
Momentum Oscillator
Unlike oscillators derived directly from price, this oscillator measures the strength and speed of the underlying trend itself. Positive readings indicate bullish trend acceleration, negative readings indicate bearish acceleration, and values near zero indicate weakening momentum or balanced market conditions.
Threshold Levels
The upper and lower thresholds define momentum zones where the normalized slope has become unusually strong relative to recent volatility. These levels are fully customizable, allowing traders to adapt the indicator to different markets, trading styles, and volatility environments.
Trend Momentum Confirmation
Displaying both the raw normalized slope and its smoothed EMA provides two perspectives on market momentum. The raw slope captures immediate changes, while the EMA reflects sustained movement. Together they help distinguish short-lived fluctuations from genuine trend acceleration, making it easier to evaluate the quality and persistence of directional momentum.
Enjoy! 指標

Colored ALMAALMA is the Arnaud Legoux Moving Average. Instead of weighting every bar in the lookback equally, it lays a bell curve over those bars and weights them by where they fall under that curve. The Offset decides where the peak of the curve sits. At 0.85 the peak sits near the newest bars, so the line hugs price with very little lag. Sigma controls how narrow the bell is, and a higher Sigma like 6 means fewer bars carry real weight, which smooths the line. So 14, 0.85, 6 gives you a fast line that still refuses to chase every tick.
How the color decides itself
In slope mode the script only asks one question each bar: is the ALMA higher or lower than it was on the previous bar. Rising paints green, falling paints red. The direction is stored in a variable that carries forward, so if the line goes perfectly flat for a bar it holds whatever color it had rather than blinking to something neutral. You only get a color change when the line genuinely turns.
That is why slope mode is quieter than price versus ALMA. Price can poke through a moving average a dozen times in a sideways hour, but the average itself has to actually roll over before slope changes.
The markers and the alerts
A small triangle prints under the bar when it turns green and above the bar when it turns red, so you can eyeball the history without hunting for the exact bar where the color switched.
For alerts you have four options in the dialog. Three of them are alertcondition entries: green only, red only, or any change. Those let you set your own trigger frequency in the alert window. The fourth is the built in alert call, which fires on bar close and sends a message with the direction and the price. Use the alertcondition ones if you want control over frequency, use the alert call if you want the message to carry the price with it.
To make slope the default
Change the first argument on the Color Rule input from "Price vs ALMA" to "ALMA Slope". Everything else stays as is.
One thing worth knowing before you lean on it: slope mode is calmer, but in tight chop a fast ALMA can still ripple up and down a few ticks and flip on you. If that shows up on your timeframe, raising Length or lowering Offset a little will kill most of it. This is a tool to give information about a price chart and is not financial advice. 指標

Echo Vector## Echo Vector
### Overview
Echo Vector is an open-source chart-analysis overlay that combines relative-volume candle classification, moving-average context, confirmed price structure, liquidity references, imbalance zones, trading sessions and higher-timeframe reference levels.
The purpose of the script is to organize several related areas of chart analysis within one configurable workflow:
- relative volume and candle behaviour;
- trend and volatility context;
- confirmed swing structure;
- liquidity references and mitigated zones;
- Fair Value Gaps and Balanced Price Ranges;
- daily, weekly and session-based reference levels;
- optional analytical condition markers;
- simplified historical condition-outcome statistics.
Echo Vector does not predict future price movement. Its colours, zones, lines and markers show when the configured analytical conditions have been detected. They should not be treated as automatic instructions to enter or exit a position.
### Open-source attribution
Echo Vector is an independent derivative that retains and adapts portions of the open-source Traders Reality MT4 Sessions framework and functionality associated with the Traders_Reality_Lib.
The original source credits:
- TradersReality;
- plasmapug;
- infernix;
- peshocore;
- xtech5192.
Retained or adapted areas include selected relative-volume vector-candle concepts, EMA references, market-session timing, daylight-saving handling, daily pivot calculations, M-level calculations, Psy-level concepts and selected daily and weekly reference levels.
This publication is not affiliated with, endorsed by or presented as an official TradersReality or Pattern Watchers publication.
The source is published under the Mozilla Public License 2.0.
This implementation expands the framework with additional liquidity-level management, volume-confirmed pivot zones, market-structure states, Fair Value Gap and Balanced Price Range processing, configurable condition markers, mitigation handling, Fibonacci references, timeframe presets and historical condition-outcome tables.
### What the script measures
Echo Vector examines how candle direction, candle range, candle body size and reported volume relate to their recent historical averages.
The script also examines:
- price position relative to several moving averages;
- confirmed pivot highs and lows;
- breaks of confirmed internal and external structure;
- price interaction with previously identified levels and zones;
- three-candle price imbalances;
- overlap between opposing imbalance zones;
- distance from statistical and moving-average references;
- session location and daily or weekly reference levels.
The individual modules measure different characteristics. A high-volume candle describes participation, while a structure break describes price progression. A liquidity level describes a previous pivot reference, while an FVG describes an imbalance between three candles.
No single component confirms the meaning of another component automatically.
### Relative-volume candle classification
The vector-candle engine compares current volume with a recent volume average.
It also calculates a volume-spread value by multiplying candle range by volume and comparing that value with recent bars.
The principal candle states are:
- Echo Pulse: volume exceeds the configured moderate relative-volume threshold.
- Echo Surge: volume exceeds the stronger threshold or the volume-spread value reaches the recent comparison extreme.
- Echo Peak: volume reaches the configured extreme relative-volume threshold.
- Blow-off condition: a bullish candle combines unusually high volume, an unusually large body and extension above an EMA-based deviation reference.
- Exhaustion condition: a bearish candle combines unusually high volume, an unusually large body and extension below the corresponding deviation reference.
These classifications describe unusual candle and volume relationships. They do not prove accumulation, distribution, institutional activity or an imminent reversal.
An Echo Cascade marker can appear when qualifying volume states occur for the selected number of consecutive bars.
### Moving averages and cloud
The script displays five configurable moving-average references representing fast, medium, baseline, long-term and very-long-term context.
The baseline average is also used as the centre of a volatility cloud. Cloud width is calculated from price standard deviation and can be adjusted with the multiplier and divisor settings.
When dynamic colouring is enabled, selected moving averages change colour according to price position relative to the baseline average.
Moving averages are delayed calculations based on historical prices. They do not identify exact support or resistance and can react slowly after abrupt market changes.
### Liquidity reference levels
The LQ module converts confirmed pivot highs and lows into horizontal reference levels.
- A level above a confirmed pivot high represents a possible high-side liquidity reference.
- A level below a confirmed pivot low represents a possible low-side liquidity reference.
The lines remain active until they are touched, hidden under the selected mitigation rule or removed because the maximum number of retained levels has been reached.
These levels are inferred from historical price structure. They do not display real resting orders or order-book liquidity.
### Volume-confirmed pivot zones
The zone module combines confirmed pivots with relative volume.
A zone is created when:
- a pivot high or pivot low has been confirmed;
- volume at the pivot meets the selected relative-volume threshold;
- the zone satisfies the configured display and storage rules.
Zone height can be based on a fixed tick value and may also be scaled by relative volume or ATR.
Mitigation can be evaluated using candle wicks or candle bodies. Mitigated zones may be removed or retained with a faded appearance.
The zones represent areas of prior price and volume interaction. They do not prove the presence of institutional orders.
### Market structure
Echo Vector maintains separate external and internal structure states.
External structure uses the major pivot lookback. Internal structure uses a shorter pivot lookback to detect smaller structural movements.
Depending on the previous stored direction, confirmed breaks may be labelled as:
- BOS;
- CHoCH;
- internal BOS;
- internal CHoCH;
- MSS.
The user can choose whether a break is evaluated using the candle close or the candle wick.
Structure labels are descriptive classifications based on confirmed pivots. Different pivot settings can produce different structure interpretations.
### Fair Value Gaps and Balanced Price Ranges
A bullish Fair Value Gap is detected when the current candle low remains above the high from two candles earlier.
A bearish Fair Value Gap is detected when the current candle high remains below the low from two candles earlier.
The gap must satisfy the configured minimum tick size.
When an active bullish and bearish FVG overlap, the overlapping section is displayed as a Balanced Price Range.
FVG and BPR zones are managed until their invalidation or fill condition is met.
These zones identify historical price imbalances. Price is not required to revisit, fill or react to them.
### Analytical condition markers
Echo Vector includes optional markers based on combinations of volume, candle body, wick structure, moving-average distance, RSI thresholds and recent price extremes.
Available modules include:
- swing-sweep conditions;
- stopping-volume-style conditions;
- high-volume displacement conditions;
- large-volume candle conditions;
- wick-rejection conditions;
- RSI extreme-threshold conditions;
- blow-off and exhaustion conditions.
These names describe the intended analytical category. The conditions are OHLCV-based heuristics and do not directly identify actual stop orders, passive absorption or order-book events.
Bullish and bearish markers indicate the directional interpretation assigned by the selected calculation. They are not buy or sell recommendations.
### Sessions and reference levels
The script can display selected market-session boxes and labels, including:
- London;
- New York;
- Tokyo;
- Hong Kong;
- Sydney;
- a combined Asia window;
- EU and US break windows.
Internal daylight-saving calculations adjust selected session times.
The script can also display:
- previous-day high and low;
- previous-week high and low;
- daily open;
- daily pivot levels;
- M0 through M5 midpoint levels;
- average-range references;
- Psy High and Psy Low references;
- dynamic Fibonacci retracement levels.
Session alignment can vary because of symbol trading hours, exchange calendars, chart timeframes, holidays and daylight-saving transitions.
### Fibonacci references
The Fibonacci module uses confirmed swing points maintained by the script.
When a new structural extreme is confirmed or the stored range is broken, the active swing range may be updated and the Fibonacci levels recalculated.
The user can control:
- pivot sensitivity;
- displayed ratios;
- line colours;
- line style;
- label visibility;
- standard or extended ratio sets.
Because the anchors depend on confirmed and changing swing structure, the displayed range can change as new information becomes available.
### Timeframe presets
Echo Vector provides Auto, Intraday, Daily, Weekly and Manual modes.
The presets adjust selected moving-average, RSI and volume parameters.
- Auto selects a parameter group according to the chart timeframe.
- Intraday, Daily and Weekly force a selected preset.
- Manual uses the user-defined values.
Preset values are starting configurations. They are not automatically optimized for the current symbol and do not guarantee suitable behaviour across all markets.
### How to use Echo Vector
Begin with the broader moving-average and market-structure context.
Next, examine where price is trading relative to:
- confirmed LQ levels;
- volume-confirmed pivot zones;
- FVG and BPR zones;
- session highs and lows;
- daily and weekly reference levels;
- the active Fibonacci range.
Then review the candle classification.
A Pulse, Surge or Peak candle shows that the selected volume criteria were met. It does not determine whether price will continue or reverse.
Finally, examine optional condition markers only after considering their location. A marker occurring near a relevant level or structural area may provide more context than the same marker appearing in the middle of an undefined range.
Users remain responsible for independently determining risk, position size, entry and exit rules.
### Minimal Mode
Minimal Mode reduces chart congestion by hiding selected condition markers and simplifying parts of the visual display.
It is intended for users who want to focus primarily on moving averages, the cloud, levels, sessions and broader structure.
Because individual modules also have separate visibility controls, users should confirm which elements remain active after enabling Minimal Mode.
### Historical condition-outcome table
The optional table applies fixed percentage target and stop distances to historical condition markers.
For each tracked condition, it counts whether the selected target or stop boundary was reached first.
The table is a simplified observational tool and is not equivalent to TradingView Strategy Tester.
It does not model:
- commission;
- spread;
- slippage;
- order type;
- execution delay;
- liquidity;
- position sizing;
- portfolio equity;
- all intrabar sequencing ambiguities.
Only one active observation is maintained for each tracked condition and direction. Historical results depend on the symbol, timeframe, available history, target distance, stop distance and selected settings.
Historical table values do not imply future performance.
### Settings
The main settings control:
- timeframe presets;
- moving-average periods and colours;
- volatility-cloud width;
- relative-volume thresholds;
- candle-state visibility;
- pivot sensitivity;
- liquidity-level retention;
- zone volume requirements;
- ATR and volume zone scaling;
- mitigation rules;
- internal and external structure sensitivity;
- close- or wick-based break evaluation;
- FVG minimum size;
- session visibility;
- daily and weekly reference levels;
- Fibonacci anchors and ratios;
- RSI thresholds;
- wick, volume and body filters;
- marker colours;
- alert conditions;
- table target and stop distances.
Lower thresholds and shorter lookbacks generally increase sensitivity and noise.
Higher thresholds and longer lookbacks generally produce fewer conditions and later confirmation.
### Alerts
Alerts are available for selected vector-candle states, FVG conditions, sweep-style conditions, stopping-volume-style conditions, wick conditions and Psy-level crosses.
Many conditions use values from the active candle. They can therefore appear, change or disappear before the candle closes.
For confirmed alerts, select Once Per Bar Close when creating the TradingView alert.
Pivot-based conditions are available only after the required right-side pivot bars have completed.
### Repainting and confirmation behaviour
FVG and BPR objects are created only after the relevant chart candle is confirmed.
Other current-bar conditions may change while the candle remains open.
Pivot highs and lows require bars on both sides of the pivot. A pivot is therefore confirmed only after the selected number of right-side bars has completed.
Once confirmed, a pivot marker, liquidity line, structure line, zone or Fibonacci anchor may be drawn at the earlier pivot location. The object was not available in real time on that earlier candle.
Current daily-open and session values can change as their active periods develop.
Users should evaluate signals according to the time at which they became confirmed rather than only by their final historical chart position.
### Limitations
- Volume quality differs between exchanges, brokers and symbols.
- Forex and CFD symbols may provide tick volume rather than centralized exchange volume.
- Relative-volume classifications do not show true bid-and-ask delta.
- Pivot confirmation introduces delay.
- Current-bar markers can change before candle close.
- High volume can accompany continuation, reversal or temporary volatility.
- Extreme conditions can persist.
- Liquidity levels do not show actual resting orders.
- Volume-confirmed zones do not prove institutional activity.
- FVG and BPR zones may remain unfilled or fail to produce a reaction.
- Structure classifications depend on the selected pivot settings.
- Moving averages lag price.
- Session timing can vary across exchanges and instruments.
- Lower timeframes generally generate more noise.
- Historical outcome tables do not reproduce realistic execution.
- Platform limits can restrict the number of retained boxes, labels and lines.
- The script should not be used as the sole basis for a trading decision.
------------
## HOW-TO: Use Echo Vector to Read Volume, Liquidity and Structure
Echo Vector combines relative-volume candles, moving-average context, confirmed market structure, liquidity references, imbalance zones, sessions and higher-timeframe levels.
This guide explains a structured way to read the indicator without treating any single marker as an automatic trade signal.
## Step 1: Choose the operating mode
Open the indicator settings and select an Optimization Mode.
- Auto applies a parameter group according to the chart timeframe.
- Intraday forces the intraday settings.
- Daily forces the daily settings.
- Weekly forces the weekly settings.
- Manual uses the values entered by the user.
The presets are starting configurations rather than symbol-specific optimizations.
When changing symbols or timeframes, review whether the pivot sensitivity, volume thresholds and moving-average lengths remain appropriate.
## Step 2: Establish the broader context
Begin with the moving averages and the baseline cloud.
Ask:
- Is price above or below the baseline average?
- Are the fast and medium averages moving in the same direction?
- Is price compressed inside the cloud or extended away from it?
- Is price above or below the long-term averages?
Moving averages provide context, not precise entries.
A strong move can remain extended for longer than expected, while sideways markets can cause repeated crossings.
## Step 3: Read the vector-candle states
Echo Vector classifies candles according to relative volume and candle behaviour.
- Echo Pulse marks moderately elevated volume.
- Echo Surge marks stronger relative volume or an elevated volume-spread relationship.
- Echo Peak marks an extreme relative-volume condition.
- Echo Cascade marks consecutive qualifying vector states.
- Blow-off and exhaustion conditions add body-size and statistical-extension requirements.
A coloured candle answers the question:
Did this candle meet the selected relative-volume criteria?
It does not answer:
Will the next candle move higher or lower?
Always compare a vector candle with its location and surrounding structure.
## Step 4: Identify confirmed liquidity references
LQ lines are created from confirmed pivot highs and lows.
A high-side line marks a previous confirmed high. A low-side line marks a previous confirmed low.
Use these lines to examine whether price is:
- approaching an earlier swing;
- trading through the level;
- closing back across it;
- accepting beyond it;
- reacting without reaching it.
The lines are historical price references. They do not show actual stop orders or order-book liquidity.
## Step 5: Examine volume-confirmed pivot zones
The shaded pivot zones require both a confirmed pivot and the selected relative-volume condition.
Zone height can be adjusted with:
- the base tick value;
- relative-volume scaling;
- ATR scaling.
A larger zone does not automatically mean stronger support or resistance. It means that the configured sizing calculation produced a wider reference area.
Watch how price interacts with the zone:
- wick interaction;
- body interaction;
- partial mitigation;
- complete mitigation;
- movement through the zone without reaction.
## Step 6: Read market structure
Echo Vector separates external and internal structure.
External structure describes larger confirmed pivots. Internal structure describes smaller movements inside the broader structure.
Labels can include BOS, CHoCH, internal BOS, internal CHoCH and MSS.
Use them in sequence rather than isolation.
For example:
- an internal bullish change inside an external bearish structure is not automatically a complete trend reversal;
- an external break can be more significant but will normally confirm later;
- wick-based confirmation reacts sooner but can produce more false breaks;
- close-based confirmation reacts later but requires the candle to finish beyond the level.
## Step 7: Use FVG and BPR zones
A bullish FVG appears when the current candle low remains above the high from two candles earlier.
A bearish FVG uses the inverse relationship.
A Balanced Price Range appears where active opposing FVG zones overlap.
Use these zones to study areas of historical imbalance.
Possible observations include:
- price returning into an FVG;
- partial filling;
- complete invalidation;
- reaction near a BPR;
- an imbalance aligning with a structural or liquidity reference.
Price is not required to fill every FVG.
## Step 8: Add session and higher-timeframe context
Enable only the sessions relevant to the market being studied.
Echo Vector can display London, New York, Tokyo, Hong Kong, Sydney, Asia and selected break windows.
The reference-level section can also display:
- previous-day high and low;
- previous-week high and low;
- daily open;
- pivot and M levels;
- average-range levels;
- Psy High and Psy Low;
- Fibonacci retracements.
These levels provide location context.
A condition occurring near a previous-day extreme may have a different context from the same condition occurring in the centre of the daily range.
## Step 9: Interpret condition markers carefully
The script contains optional markers based on combinations of:
- recent highs and lows;
- volume;
- candle bodies;
- wick ratios;
- moving-average distance;
- RSI thresholds;
- price extension.
Treat the markers as analytical filters.
Do not assume that names such as Stop Hunt, Stopping Volume or Liquidity Grab prove the presence of actual stop orders or institutional absorption.
They are OHLCV-based approximations.
Before using a marker, check:
- broader trend;
- external structure;
- internal structure;
- nearby LQ levels;
- active zones;
- session location;
- FVG or BPR location;
- candle-close confirmation.
## Step 10: Understand pivot delay
A confirmed pivot requires later candles.
When Pivot Strength is set to three, three bars to the right must complete before the earlier candle can be confirmed as a pivot.
The script may then place the marker or line on the original pivot candle.
This makes the historical chart easier to read, but the information was not available on the original pivot candle in real time.
The same principle applies to:
- liquidity lines;
- volume-confirmed pivot zones;
- structure pivots;
- dynamic Fibonacci anchors.
## Step 11: Use the outcome table as an observation tool
The table applies fixed target and stop distances to selected historical conditions.
It is useful for comparing how a condition behaved under one set of assumptions.
It is not a strategy backtest.
The table does not include commission, spread, slippage, realistic order fills, position sizing or portfolio equity.
Changing the symbol, timeframe, target, stop or signal filters can materially change the displayed results.
Do not interpret the historical percentage as a probability of future success.
## Step 12: Configure alerts
Select the condition in TradingView’s alert menu.
For conditions based on the active candle, use Once Per Bar Close when confirmed alerts are required.
Without bar-close confirmation, a condition may trigger while the candle is developing and disappear before the candle closes.
Pivot-based divergence or structure conditions naturally occur later because they require right-side confirmation bars.
## Example reading sequence
A structured analysis could follow this order:
- Determine whether price is above or below the baseline and long-term averages.
- Identify the latest external and internal structure direction.
- Mark nearby LQ levels and volume-confirmed pivot zones.
- Check whether price is inside or near an FVG or BPR.
- Identify the active trading session and daily or weekly location.
- Observe whether a Pulse, Surge, Peak or exhaustion condition appears.
- Review any optional marker only after checking its location.
- Wait for candle-close confirmation where required.
- Apply independent risk and execution rules.
The indicator is most useful as a context framework. It should not replace independent analysis or risk management.
## Open-source attribution
Echo Vector is an independent derivative of open-source work associated with TradersReality and the Traders_Reality_Lib.
The supplied original source credits TradersReality, plasmapug, infernix, peshocore and xtech5192.
This publication is not affiliated with or endorsed by TradersReality or Pattern Watchers and is published under the Mozilla Public License 2.0.
指標

Fan Principle Signals [MarkitTick]💡 Maps out market structure using a sequence of ascending swing lows (or descending swing highs) to construct a three-legged trendline fan, then triggers actionable trade signals the moment price breaks through the steepest line in that fan. Rather than relying on a single moving average or oscillator crossover, this script builds its bias from the actual geometry of recent price swings, giving traders a structural, visually intuitive way to time entries around the exhaustion of a trend.
✨ Originality and Utility
Most breakout tools react to a single reference line, such as a moving average, a fixed channel, or a static trendline drawn from only two points. This script instead applies the fan principle, a technique that connects a common origin point to three successive pivots in the same trend, producing three lines of increasing steepness. The logic behind this approach is that the third and steepest line in the fan typically represents the most aggressive rate of trend continuation, and a decisive close beyond it has historically signaled that the prevailing trend has lost its structural support.
What makes this implementation useful in practice is that it does not stop at drawing the fan. It automatically identifies valid pivot sequences from raw price action, filters out insignificant micro-swings using a minimum leg percentage threshold, validates the freshness of the structure with a lookback cap, and then converts the break event into a complete trade plan, including entry, stop-loss, and three take-profit levels, all derived mathematically from the fan's own geometry and the market's current volatility. The optional volume and higher-timeframe filters allow traders to demand additional confirmation before a signal is accepted, and the built-in dashboard keeps the entire state of the system visible at a glance. The combination of automated structural fan detection, ATR-adaptive risk placement, and live trade monitoring is what distinguishes this from a simple trendline break script.
🔬 Methodology and Concepts
• Pivot Detection
The script continuously scans for swing highs and swing lows using a symmetrical lookback and lookforward window defined by the Pivot Len input. A bar qualifies as a swing high only if it is strictly greater than every other bar within that window on both sides, and a swing low only if it is strictly lower than every bar in that window. Each time a new pivot is confirmed, its bar index and price are stored in a rolling array, keeping the most recent twenty pivots in memory for both highs and lows.
• Fan Construction
Once at least four pivot lows (for an uptrend fan) or four pivot highs (for a downtrend fan) are available, the script selects the four most recent ones. The oldest of the four becomes the fan's origin point. The remaining three form Leg 1, Leg 2, and Leg 3 respectively, each connected back to that same origin. A slope is then calculated for each leg using simple rise-over-run between the origin and that leg's pivot. For the fan to be accepted, the price move between the origin and the first leg must exceed the Min Leg % threshold, which filters out fans built from statistically insignificant noise, and the origin must fall within the Max Fan Lookback window, which prevents the script from anchoring to structure that is too old to remain relevant.
• The Break Condition
Leg 3, the line connecting the origin to the most recent and steepest pivot, is treated as the trigger line. Its price value is projected forward on every bar using the slope calculated at formation. A bullish break requires the fan to currently be in an uptrend orientation, the previous confirmed bar's close to be above the projected Leg 3 value, and the bar before that to have closed at or below it, meaning the break itself happens on a confirmed, completed bar rather than an in-progress one. The bearish break condition mirrors this logic in the opposite direction for downtrend fans. This confirmed-close approach means the script never fires or removes a signal based on an incomplete, still-forming bar, so historical signals will not disappear or move once printed.
• Optional Confirmation Filters
Two independent filters can be layered on top of the raw break condition. The volume filter requires the breaking bar's volume to exceed a multiple of its recent moving average, screening out breaks that occur on unusually thin participation. The higher-timeframe filter compares the breakout bar's close against the prior, fully closed bar on a higher timeframe of your choosing, requiring the breakout direction to align with that broader trend context before a signal is allowed to fire.
• Trade Level Calculation
When a break is confirmed, the script builds an entry, stop, and three take-profit levels automatically. Entry is anchored to the close of the breakout bar. The stop-loss is placed beyond the nearest of the two most recent fan legs, offset further by a small ATR buffer to avoid being clipped by minor wicks, but it is also capped by a maximum ATR distance so a single outlier swing cannot produce an oversized stop. The distance between entry and stop becomes the base risk unit, and the three take-profit levels are placed at user-defined multiples of that risk unit, giving a consistent, R-multiple-based framework for managing the position rather than arbitrary fixed-price targets.
🎨 Visual Guide
Dotted lines connecting the origin point to Leg 1 and Leg 2 show the earlier, less steep sections of the fan structure and provide visual context for how the trend developed.
The solid, extended line represents Leg 3, the active trigger line. It is colored using the Bull Fan color when the fan is in an uptrend orientation and the Bear Fan color when it is in a downtrend orientation, and it projects forward in real time as new bars form.
A blue dashed line marks the Entry level once a signal fires, extending to the right for as many bars as the trade remains active or until a new signal replaces it.
A red solid line marks the Stop-Loss level, with a light red shaded zone (the Risk Fill) drawn between the entry and stop lines to make the risk portion of the trade immediately visible.
Three dashed lines in progressively deeper shades of teal mark Take-Profit 1, 2, and 3, moving from lightest (TP1, closest to entry) to fully opaque (TP3, furthest away). A light teal shaded zone (the Reward Fill) spans from the entry line to the TP3 line, visually contrasting the reward portion of the trade against the risk portion.
Small labels are anchored to each of these lines on the left, displaying the exact price of the Stop, Entry, and each Take-Profit level, and updating their horizontal position as the trade progresses.
An upward-pointing "▲ BUY" label appears below the breakout bar on a bullish break, and a downward-pointing "▼ SELL" label appears above the breakout bar on a bearish break.
An optional on-chart dashboard table displays the ticker and timeframe, whether the Lock Signal feature is active, the current fan orientation, the origin price, the live value of the Leg 3 trigger line, the current entry, stop, a live risk-to-reward progress bar showing how far price has travelled toward TP3 relative to the initial risk, the volume filter status, and the number of bars elapsed since the last signal.
📖 How to Use
A signal is generated only when price decisively closes beyond the Leg 3 trigger line of an established fan, so treat the fan's orientation, shown both by the line color and by the Fan State readout on the dashboard, as the prevailing structural bias before a break occurs. When a bullish break prints, the suggested plan is to consider a long entry near the displayed Entry line, with the Stop-Loss line defining the invalidation point below and the three Take-Profit lines offering staged exit levels as the move develops. A bearish break mirrors this in the opposite direction for short setups.
The R:R Progress bar on the dashboard is useful for monitoring an active trade at a glance: it fills from 0% toward 100% as price advances from entry toward the TP3 target, and its color shifts from red through amber to teal as the trade's risk-to-reward ratio improves. If the Lock Signal option is enabled, the script freezes the most recently confirmed signal and its levels in place rather than allowing a new one to overwrite them, which can help when you want to manage an open position without the on-chart levels shifting. Because signals are confirmed only on closed bars, always wait for bar close before acting on a fresh line break rather than reacting to an in-progress wick.
Enabling the optional Volume and HTF filters will typically reduce signal frequency while raising the bar for confirmation, so consider testing both configurations to see which better matches the behavior of the instrument and timeframe you trade.
⚙️ Inputs and Settings
Pivot Len — Controls how many bars on each side must confirm a swing high or low. Smaller values detect pivots faster but produce noisier, more frequent fan structures; larger values produce fewer but more structurally significant pivots.
Max Fan Lookback — The maximum age, in bars, that a fan's origin point can have and still be considered valid. Lowering this keeps the script focused on recent structure only.
Min Leg % — The minimum percentage price move required between the origin and the first leg for a fan to be accepted, filtering out fans built on insignificant price movement.
Use Vol Filt / Vol Avg Len / Vol Mult — Enables a volume confirmation requirement, comparing current volume against its moving average over the specified length, multiplied by the chosen factor.
Use HTF Filt / HTF — Enables a higher-timeframe trend alignment requirement, comparing the breakout close against the prior confirmed close on the chosen higher timeframe.
SL ATR Buf — The ATR-based buffer added beyond the nearest fan leg when placing the stop-loss, giving the stop room to avoid minor wick noise.
SL Max ATR — A ceiling, expressed in ATR multiples, on how far the stop-loss can be placed from entry, preventing outsized stops on unusually wide fans.
ATR Len — The lookback length used for the ATR calculation that feeds both the stop buffer and the stop cap.
TP1 R / TP2 R / TP3 R — The risk-multiple distances used to place the three take-profit levels relative to the initial risk unit between entry and stop.
Lock Signal — Freezes the current signal and its associated levels in place, preventing a new signal from overwriting them until manually disabled.
Show Fan Lines / Show Trade Levels / Show Labels — Independently toggle the visibility of the fan structure lines, the entry/stop/TP levels, and their accompanying price labels.
Show Dash / Dash Pos — Toggle the on-chart dashboard and choose which corner of the chart it is anchored to.
A full set of color inputs is available to customize the fan lines, trade level lines, fill zones, signal labels, and dashboard appearance to match your own chart theme.
🔍 Deconstruction of the Underlying Scientific and Academic Framework
The fan principle applied here descends from classical technical analysis literature on trendline construction, most notably the Gann fan and Andrews' Pitchfork family of tools, which share the premise that connecting a structural origin point to successive swing extremes produces a family of trendlines whose slopes carry predictive meaning about the trend's rate of change. Where this script departs from those older, largely manual techniques is in how the origin and legs are selected: rather than relying on the analyst's subjective choice of anchor points, pivot selection here is fully algorithmic, using a symmetric local-extremum test to ensure each point used is objectively the highest or lowest price within its surrounding window.
The core statistical assumption underlying any trendline-break system is that price trends exhibit a degree of serial correlation, meaning that the rate of ascent or descent between swing points tends to persist for some period before mean-reverting or reversing, and that a violation of the most recent, steepest rate of change is informative about a shift in that underlying process. This is conceptually related to the broader family of change-point detection methods used in time-series analysis, where a structural break in a fitted trend line is used as a signal that the data-generating process has shifted regime. The ATR-based position sizing layered on top draws from the well-established use of Average True Range as a volatility-normalized unit of risk, a concept popularized in behavioral and quantitative trading literature as a way of scaling stop and target distances to the instrument's own recent volatility rather than using arbitrary fixed-point distances, which do not generalize across different assets or market conditions.
⚠️ Disclaimer
All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. We expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion. 指標

Trend Channel Navigator [MQLSoftware]Trend Channel Navigator maps price action as a chain of trend phases, each drawn as its own channel: phase boundaries come from an adaptive swing scanner whose window breathes with the volatility regime, each channel side sits at a quantile of its own deviations instead of a symmetric envelope, a recency-weighted regression tracks the momentum slice inside the active phase, and an original Navigator Entry Score condenses channel position, momentum quality and higher-timeframe agreement into a single 0-100 confluence read - shown live on the panel together with its full component breakdown.
This is a visual analytical tool for chart reading and market-structure context. It does not execute trades and does not provide financial advice.
Key Features
Adaptive phase detection: the swing window scales with the volatility regime, so phases are recognized sooner in a heating market and noise swings are ignored in quiet tape
Asymmetric quantile channels: each side's width is a percentile of that side's own deviations, so one spike no longer inflates the whole envelope and the top and bottom bands are independent
Recency-weighted Micro regression: the newest bars dominate the fit, so the momentum read turns earlier than a uniform regression; a weighted R-squared gate hides it when the fit is poor
Navigator Entry Score: a 0-100 confluence read built from four weighted components - macro/micro alignment, channel position, regression fit quality and dual-timeframe agreement
Live Score Breakdown on the panel: every component's points are shown next to its budget, so the number is never a black box
Scored markers: every structural event (BREAK, PULLBACK, CONTINUATION) prints the matching side of the live score and passes a configurable minimum, and the dedicated ENTRY marker fires when the score crosses your threshold
Pullback Zone and Quarter Grid: the favorable quarter of the active channel is shaded and faint quarter lines make Channel Position readable on the chart itself
Self-explanatory chart language: markers and labels are written in plain words, every marker and pivot carries an explanatory tooltip, and a Compact mode switches to short codes
Non-Repaint Mode on by default: markers fire only on confirmed bars and the active structure is built from closed-bar data
Core Concept
Most channel tools on TradingView take one of two approaches. They fit a single regression channel over the latest N bars, or they draw one channel from manually chosen anchors. Both force all recent history into one line fit, so the chart cannot show where one trend phase ended and the next began.
Trend Channel Navigator treats price as a sequence of structural phases. The phase idea started in our earlier open-source script Anchored Trend Channels; Navigator rebuilds the engine around five mechanisms of its own - the detection, the channel geometry, the momentum fit, the score and its on-chart language all differ from that script.
1. Adaptive phase detection. Swings are found by a strict-extremum scan whose window is re-derived on every bar from the volatility regime - the ratio of short-term ATR to its long baseline. When the market heats up the window contracts and new phases are recognized sooner; in quiet tape it dilates and noise swings never become phases. Builtin pivot functions take a fixed window, which is why the scanner is written by hand. A swing is confirmed a window's worth of bars after it forms, exactly like a classic pivot. When a later swing confirms beyond a phase's endpoint in the same direction - a higher high in an up-phase, a lower low in a down-phase - the phase extends to that new confirmed swing instead of leaving an orphan stretch, so the chain of channels stays continuous.
2. Asymmetric quantile channels. The channel basis is the straight line between the two anchoring swings, which keeps clean joints between phases. The width is not a symmetric envelope: highs above the basis set the top band and lows below it set the bottom band, each at a configurable percentile of its own deviations with an ATR floor. A single spike no longer inflates the whole channel, and a phase that leans on one side of its basis shows that lean honestly.
3. Recency-weighted Micro regression. The inner channel is a weighted least-squares fit in which each bar back weighs a fixed fraction of the previous one, so the newest bars dominate and the momentum read turns earlier than a uniform regression of the same length. The fit quality gate and the residual band use the same weights. Setting the decay to 1.00 reproduces the classic unweighted fit.
4. Navigator Entry Score with a live breakdown. The score is computed independently for the long side and the short side on every bar. Macro and micro direction agreement contributes 35 points, channel position contributes up to 20 and rewards proximity to the favorable edge rather than chasing the far edge, the micro fit quality contributes up to 20, and each of the two higher-timeframe rows contributes 12.5 when it agrees with the side being scored. The panel shows each component's points next to its budget on every bar, so the number is never a black box. An ENTRY marker fires once when the winning side crosses the threshold on a confirmed bar, with its own cooldown; an optional strict mode caps the score below the threshold unless both higher timeframes agree. The other marker families pass through the same score: BREAK, PULLBACK and CONTINUATION print the matching side's value and respect a configurable minimum, so every event on the chart is a scored event.
5. Pullback Zone and Quarter Grid. The score's channel-position component is made visible: the favorable quarter of the active channel is shaded - near the base in an up phase, near the top in a down phase - and faint quarter lines split the channel into the quarters the Channel Position row reads. The channel does not only show where price has been; it shows where the next trend-side read matters.
Anatomy of the Display
Macro channels are the large structures between confirmed swing points. Historical phases are dimmed and frozen; the active phase is bright, carries the shaded Pullback Zone, and extends forward with a dashed projection.
The Micro channel is the smaller regression channel inside the active phase, labelled "Momentum" with its current direction. It shows whether the current momentum slice agrees with the larger phase or is pulling back against it.
Markers name their event in plain words and print the matching side of the live score. BREAK marks a confirmed close beyond the active channel boundary, PULLBACK marks a touch of the favorable edge in trend direction, CONTINUATION marks a micro breakout aligned with the macro phase early in the segment, and ENTRY belongs to the score engine and fires on a threshold cross. Every marker carries a tooltip that explains the event.
The status badge shows the Trend Bias of the recent phases and the live Entry Score with its stronger side.
The panel is the main readout: Trend Bias, active segment angle, direction and age, the chain of recent phases, Channel Position, anchor pivot, channel width in ATR, the last fired event, micro regression metrics, the two higher-timeframe rows, and the live Entry Score against your threshold - followed by the Score Breakdown, where each of the four components shows its current points against its budget.
Multi-Timeframe Panel
The two higher-timeframe rows are selected automatically from a standard ladder based on the chart timeframe, for example 240 and 1D on a 1-hour chart. Higher-timeframe values are requested without lookahead and read with a one-bar offset, so only closed higher-timeframe bars are used. Their agreement is not only displayed - it feeds the Entry Score directly.
Notes on Repainting
Historical channels do not repaint intrabar. They are anchored to confirmed swings, and one honest exception is stated openly: when a same-direction swing confirms beyond a phase's endpoint, the completed channel extends to that new confirmed swing and its width is recomputed - on closed data only, at confirmation time. It never moves otherwise.
Swing detection carries an inherent delay equal to the current window: a swing becomes visible only after that many bars close past it. With the Adaptive default the window typically resolves to 11-26 bars, tighter in heating markets. This confirmation contract is the same as for all pivot-based tools.
Non-Repaint Mode is on by default: the active channel and the micro regression are computed from closed-bar data, so the visible structure does not wobble intrabar. Turning it off lets the active structure update on the live bar for responsiveness; this affects display only.
All markers are gated by confirmed bars. ENTRY, BREAK, PULLBACK and CONTINUATION can only appear on the close of their bar and cannot appear or vanish intrabar.
Higher-timeframe rows use the standard non-repainting pattern: no lookahead, one-bar offset, closed bars only.
The panel and the live score update within the bar. This is display only; no marker or alert is created from an unconfirmed bar.
Typical Analysis Workflow
A common analytical workflow may include:
Reading Trend Bias and the active phase direction first to understand the current structure
Checking Channel Position to see whether price is near the favorable edge or already stretched toward the far edge
Waiting for price to reach the shaded Pullback Zone in the direction of the active phase
Using the Momentum channel and its fit quality to judge whether the current slice is clean enough to trust
Checking the higher-timeframe rows for agreement
Treating the Entry Score as the final confluence read rather than a standalone trade command, and raising the threshold when you want fewer, higher-confluence marks
Configuration
Pivot Sensitivity - Adaptive (default) scales the swing window with the volatility regime; the fixed presets from Short to Very Long and Custom Lookback pin it instead.
Min Segment Size (x ATR) / Min Segment Length (bars) - quality filters that skip noise phases.
Channel Width Multiplier / Min Band Width (x ATR) - how tightly the channel wraps price and the floor under each side's width.
Channel Quantile (%) - the percentile each side's width sits at. 100 reproduces a full envelope; lower values ignore single spikes and hug price tighter.
Max Segments Stored - how many historical phases stay on the chart.
Regression Length / Std Dev Multiplier / Min R2 to Show - the Micro channel window, its band width and its fit gate.
Recency Weight (decay) - how strongly the newest bars dominate the Micro fit. 1.00 = classic unweighted regression.
Segment Break / Macro Pullback / Micro Continuation Signals - enable each marker family independently. Signal Cooldown - minimum bars between same-family markers.
Min Signal Score - structural markers only fire when the matching side of the live score is at least this value. 0 = raw structural events.
Entry Score Threshold - the confluence level an ENTRY marker requires. Require MTF Confluence - strict mode: both higher timeframes must agree for the score to reach the threshold. Entry Cooldown - minimum bars between ENTRY markers.
Non-Repaint Mode - closed-bar data for the active structure (default on).
Line Width / Neon Glow - core line width and the layered glow tier (Off, Subtle, Balanced, Bright).
Show Channel Fills / Show Basis / Show MTF Mini-Screener - display toggles.
Marker Style - Descriptive markers in plain words, or Compact short codes.
Highlight Pullback Zone / Show Quarter Grid - the shaded favorable quarter of the active channel and the faint quarter lines.
Bull / Bear Colors - recolor the whole structure. Defaults are a dark-theme identity; pick deeper tones for light charts.
Markets and Timeframes
The indicator can be applied across multiple markets and timeframes:
Forex
Stocks and Indices
Commodities
Cryptocurrencies
Channel widths and segment filters are scaled in ATR rather than in fixed price units, so behaviour stays consistent across instruments. Defaults are tuned for 1H-4H charts; Pivot Sensitivity is the lever for faster or slower timeframes.
Alerts
Segment Direction Changed - the active phase flipped direction
Segment Break - a confirmed close beyond the active channel boundary
Micro Continuation - a micro breakout aligned with the macro phase
Entry Score - the score crossed your threshold on a confirmed bar
All alerts evaluate on confirmed bars and respect the same cooldowns and score gates as the chart markers, so an alert fires only when the corresponding marker event fires.
指標

YURI Breadth Regime EngineAn index is capitalisation weighted. A handful of large members can hold the whole thing up while most of the list quietly breaks down underneath, and the price chart will not show you that, because the price chart is the weighted number. The count is a different number. This reads the count and tells you when the two have stopped agreeing.
THE TWO THINGS IT MEASURES
The level is how much of the list is participating right now. The default series is the percentage of S&P 500 members trading above their own 200 day moving average. Four bands: washout below 20, weak below 40, neutral below 60, strong above it. Below 20 has historically been forced selling rather than opinion, because most of the list is under its own annual average at the same time. Those readings cluster near the end of declines rather than the start. That is an observation about where they have occurred, not an instruction to buy them.
The participation read is a different question: is the index outrunning its own members. That is a question about speed rather than position, so each series measures how far it has moved over the same window and that move gets ranked against its own history. Percent for the index, because a 50 point move meant something different at 2000 than it does at 7000. Points for breadth, which is already bounded at 0 and 100. The gap between the two ranks is what gets read, and ranking is what makes a price and a percentage comparable at all.
Index in the top of its own distribution of moves while breadth is in the bottom of hers is thinning. Fewer names are carrying it. Breadth moving up harder than the index is broadening, and it is what the back end of a washout looks like.
Ranking positions instead of moves is the obvious way to build this and it does not work, which is worth saying because the failure is instructive. An index drifts upward, so its position rank pins at the top of its range for months at a time. That builds a permanent bias into the gap, and it quietly collapses the whole read into "breadth is low", which is something the level already tells you. A move measured over a fixed window is centred on its own history by construction, so it has neither problem.
WHY BOTH, AND NOT JUST THE LEVEL
The level tells you where participation is. It does not tell you which way it is going relative to price, so a level read is equally happy at 55 on the way up and 55 on the way down. The participation read tells you the direction of the disagreement but has no sense of absolute position, so it will call thinning at 75 and at 35 without distinguishing between them, and those are very different markets. Neither one is sufficient. Read together, the level says how much of the list is in, and the rank gap says whether that number is keeping up.
THE PART THAT ACTUALLY MATTERS
A new participation state has to hold for several bars before it replaces the current one.
Drop that and this becomes a threshold that flips every time the rank gap wobbles across the line, and within a month you have learned to ignore it. The hold period is the difference between a regime read and a flicker. It is exposed in the inputs. One bar makes it reactive and noisy, ten makes it stubborn and late, and there is no correct answer, only the one that matches how often you are willing to change your mind.
READING IT
The line is the breadth percentage, coloured by band. Red zone is washout, teal zone is strong.
Orange triangle near the top of the pane: participation just turned thinning.
Teal triangle near the bottom: participation just turned broadening.
The table carries the live reading, the current band, how many bars breadth has been sitting under the washout line, and the participation state with the raw rank gap in brackets. That bracketed number is worth watching on its own, because it moves before the label does. A gap climbing through the high twenties tells you the state is about to be named while the hold period is still counting.
SETTINGS THAT MATTER
The breadth series and the index have to be the same index or the comparison is noise. The default pairing is INDEX:S5TH against SP:SPX. If you switch to a Nasdaq or Russell breadth series, switch the index with it.
The move window sets what counts as "has moved". Shorter makes the participation read sensitive to swings inside a trend, longer makes it a read on the trend itself. The ranking window sets how much history each move is judged against, and nothing reads at all until both windows have filled.
The thinning and broadening gaps are separate inputs because there is no reason the two sides have to share a number. Left equal at 30 they fire about as often as each other, so if you want one side more sensitive, move that one and leave the other alone.
WHAT IT WILL NOT DO
It does not generate entries or exits, and it is not a forecast. It describes the state of participation as of the current bar, and what you do with that is your method, not mine.
The breadth series prints once a day and has no intraday history. On an intraday chart the daily value is pulled instead, so the line steps rather than curves and the current day's value keeps moving until the close. It settles when the day does. Daily or higher is where this is meant to run.
If the external series is unavailable on your plan or your symbol, the pane turns orange and the table reads NA rather than plotting a flat line that could be mistaken for a real value.
Breadth is a coincident measure of participation, not a leading one. Washouts are identifiable in hindsight far more cleanly than they are while you are standing in one, and a thinning read can persist for months in a market that keeps going up. This is context for a decision, not the decision.
指標

YURI Session Regime Engine# Publication description: YURI Session Regime Engine
Paste into the TradingView publish dialog, page 1. Keep the bold headers, drop the
markdown hashes if the editor does not render them.
Categories used: Trend Analysis, Volume, Chart Patterns
Suggested keywords: day type, regime, opening range, session, intraday, VWAP
---
Most intraday losses I have looked at come down to running the wrong playbook for
the day. Buying pullbacks on a session that never trends. Fading the edges on one
that never comes back. By the time the character of a session is obvious on the
chart, the move it was going to give you has usually already happened.
This labels the session while it is still forming.
**How it decides**
Five checks vote on direction, and each one covers a blind spot in the others.
1. Which side of session VWAP price is trading
2. Whether VWAP itself is rising or falling, measured across the last 75 minutes
3. Whether the opening range has broken
4. Where the higher timeframe trend points, hourly close against its 20 period SMA by default
5. Whether price has cleared the prior day's high or low
Four votes out of five makes it a trend day. A gap larger than 2 percent that
trades back through the session open gets labelled a gap fill. Price still sitting
inside the opening range well after the open, with a quarter of the range width
allowed either side, is a range day.
Each of those five is weak on its own. VWAP position whipsaws in chop, the
opening range fails on gap mornings, and a higher timeframe read is always late by
construction. Prior day levels tell you nothing at all about today. What makes the
combination worth more than its parts is that they fail in different places, so
requiring agreement across all five stops any single one of them from driving the
label.
**The part that actually matters**
A new label has to hold for 25 minutes before it replaces the current one.
Drop that layer and this becomes every other conditional colouring script. Price
wicks back through VWAP, the label flips, it flips back ten minutes later, and
within a week you have learned to ignore it. The hold period is what makes the
output stable enough to be worth reading. Set it to 10 minutes if you want it
reactive, an hour if you want it stubborn.
**Reading it**
TREND UP / TREND DOWN: four or more of the five checks agree on direction.
RANGE: price is still inside the opening range plus a quarter of its width either
side, well after the open.
GAP FILL UP / GAP FILL DOWN: the session gapped hard and has since traded back
through its own open.
MIXED: the opening range has formed but nothing has agreed strongly enough to name
the day. Days that stay here are the ones worth trading small.
OPENING: the opening range has not finished forming and there is not enough
information yet.
The table carries the live vote count on both sides. Three votes up and rising
tells you more than the label does, because it shows a regime change building
before the hold period lets it commit. What you do with any of this is your
method, not mine. The label is an input to that decision.
**What it will not do**
It describes what has already happened. It is a classification of the session so
far, and it will not tell you where to enter or where to get out.
The first 15 minutes are always OPENING, by construction. Once the session ends
the day keeps whatever label it closed with until the next one starts, because
judging a finished day against a frozen VWAP would be meaningless.
If you set the context timeframe below your chart timeframe, that vote gets
dropped instead of being computed on partial bars. The table tells you when this
happens.
It assumes an instrument with a defined regular session. On 24 hour markets the
session logic loses most of its meaning.
Time thresholds are set in minutes and converted to bars internally, so the same
defaults behave the same way on a 1, 5 or 15 minute chart. It was built for US
equity index sessions. Every threshold is exposed in the inputs, including the
vote count needed for a trend day, so you can tighten or loosen it for whatever
you trade.
指標

SBP Structural State DetectorSBP Structural State Detector is a rule-based analytical indicator designed to identify confirmed changes between bullish and bearish structural states. It does not attempt to predict exact market tops or bottoms. Instead, it evaluates whether current price behaviour provides sufficient evidence that the prevailing directional state has changed.
The script uses one integrated calculation process. It does not require another indicator, external script, higher-timeframe data source, or manual confirmation tool.
Core Method
The calculation begins by measuring price-path efficiency. This compares the net movement of price with the total distance travelled over the same period. A more direct price path receives a higher efficiency reading, while irregular movement produces a lower reading.
That efficiency value controls the response rate of an internal structural centre. The centre adapts more quickly when price movement is directional and more slowly when movement is noisy. The centre is used internally and is not drawn as a separate trendline.
A volatility-normalized structural band is then calculated around the internal centre. Its width expands when price behaviour is less efficient and contracts when movement becomes more orderly. This makes the visible band responsive to both volatility and market noise rather than relying on a fixed price distance.
Directional qualification uses five related observations:
1. Price location relative to the internal structural centre.
2. Normalized displacement from that centre.
3. Direction of the structural slope.
4. Volatility-normalized momentum.
5. Candle direction, body expansion, and closing location.
A bullish or bearish candidate must receive the required level of evidence and must exceed the evidence supporting the opposite direction. The condition must then persist before it can reach the final event process.
Signal Behaviour
All events are evaluated on confirmed bars.
The final event process enforces strict alternation. After a BUY event, another BUY cannot be accepted until a SALE event has occurred. After a SALE event, another SALE cannot be accepted until a BUY event has occurred.
The Minimum Signal Gap setting specifies the minimum number of confirmed bars required between accepted opposite-direction events. It is a spacing control and does not create same-direction re-entry signals.
Chart Display
The Structural State Band changes colour according to the last accepted directional state:
Green indicates that the last accepted event was bullish.
Red indicates that the last accepted event was bearish.
Gray indicates that no directional event has yet been accepted in the loaded chart history.
BUY and SALE triangles identify accepted state changes. They are placed outside the candle using an ATR-based visual distance so that the markers remain readable without changing their event bar.
Inputs
Minimum Signal Gap: Controls the minimum number of confirmed bars between accepted opposite-direction events.
Show Structural State Band: Shows or hides the volatility- and noise-adjusted state band.
Show BUY / SALE: Shows or hides accepted event markers.
State Band Transparency: Controls only the visual transparency of the band and does not affect calculations or events.
Alerts
Two alert conditions are available:
SBP Structural BUY Event
SBP Structural SALE Event
Alerts should be created through TradingView's Create Alert dialog. Alert behaviour follows confirmed BUY and SALE events generated by the script.
How to Use
Apply the indicator to a standard candlestick or bar chart. Observe the band colour together with accepted BUY and SALE events. The indicator is intended to provide a consistent structural-state reference that can be considered alongside the user's own entry, exit, position-sizing, and risk-management rules.
Limitations
This is an indicator, not a strategy. It does not place orders, calculate position size, provide stop-loss levels, provide profit targets, or report backtested performance.
Signals are based on historical and current confirmed price data. Confirmation introduces delay, especially when price changes direction rapidly. Sideways or volatile markets can produce alternating state changes. The Minimum Signal Gap can reduce closely spaced events but cannot eliminate false or late signals.
The indicator does not guarantee accuracy, profitability, or future market direction. Past chart behaviour does not ensure similar future behaviour. Use standard charts for signal interpretation and conduct independent analysis before making trading decisions. 指標

Untested Levels - PD Highs, Lows & GapsUntested Levels automatically maps the session prices futures traders commonly mark by hand: previous regular-session highs and lows, current and prior overnight highs and lows, previous closes and unfilled gap levels, plus the all-time high.
The purpose is simple: spend less time redrawing levels every morning and keep important price context visible as the market develops. Each line begins where its high, low, or close was established and is labeled with both its name and exact price.
The indicator is designed around the session structure of CME equity index futures, particularly Nasdaq futures (NQ/MNQ) and S&P 500 futures (ES/MES). Its session times are fully configurable, so the same framework can be used with other futures markets whose trading sessions are defined appropriately.
WHY IT IS DIFFERENT
Many session-level tools either show only the most recent day or remove a level as soon as price reaches it. This indicator maintains a structured history and treats a level's first breach separately from its display timing.
By default, a prior level that is breached during the current trading day remains visible until the day rolls over. This preserves the line for the rest of the session, allowing you to see whether a former high or low is subsequently respected, rejected, or used as support or resistance. If you prefer immediate removal, the "Hide breached levels immediately" setting is available.
Regular-session highs and lows, overnight highs and lows, and prior closes each have their own lookback setting. You can retain more history for one class of level without overcrowding the chart with every other class.
The calculations are session-defined rather than chart-defined. They are built from the symbol's extended-hours feed, so switching the chart between Regular Trading Hours and Electronic Trading Hours does not change the underlying levels. An RTH chart can therefore remain visually clean while still displaying the overnight high and low.
LEVEL NAMES
The numbering follows trading days, not calendar dates. The overnight session belongs to the same trading day as the regular session that follows it.
YD High / YD Low
Yesterday's regular-session high and low.
PD 2 High / PD 2 Low
The regular-session high and low from two trading days ago.
PD 3, PD 4, and later numbers continue in the same way.
YD is effectively the first prior trading day, so there is no separate
"PD 1 High" or "PD 1 Low" label.
ON High / ON Low
The current trading day's overnight-session high and low.
These update while the overnight session is forming.
ETH 1 High / ETH 1 Low
The overnight high and low associated with yesterday's regular session.
ETH 1 therefore pairs with YD.
ETH 2 High / ETH 2 Low
The overnight high and low from two trading days ago.
ETH 2 pairs with PD 2, ETH 3 pairs with PD 3, and so on.
YD Close
The most recent configured session close. This level always displays when
previous-close levels are enabled.
PD 2 Close, PD 3 Close, etc.
Older configured closes that remain unfilled by a later regular session.
These levels identify still-open historical gaps within the selected
gap lookback.
ATH
The all-time high. If a displayed high is also the all-time high, its
normal label receives an ATH prefix. If the all-time high is not one of
the displayed session levels, a separate ATH line is drawn.
SESSION CALCULATIONS
Each configured trading day is divided into three parts:
Overnight session:
Trading-day start to the regular-session open.
This produces ON and ETH highs and lows.
Regular session:
Regular-session open to regular-session close.
This produces YD and PD highs and lows.
Post-close tail:
Regular-session close to the next trading-day start.
This does not create a new session high or low, but its price action can
breach an existing level.
The default times are expressed in Pacific Time:
Trading day starts: 15:00
Regular session opens: 06:30
Regular session closes: 13:15
Close candle opens: 13:55
The time zone and all session boundaries can be changed in the settings. The "Close candle" input identifies the opening time of the candle whose closing price will be stored. If that exact candle is unavailable, the script uses the last available candle before the selected time.
WHAT COUNTS AS UNTESTED
A prior regular-session high remains unbreached until later price trades above it. A prior regular-session low remains unbreached until later price trades below it. The calculation considers price action after the level's own regular session, including that day's post-close tail, later overnight sessions, and later regular sessions.
An overnight high or low is evaluated only against price action after that overnight session ends. This prevents the price action that created the level from also invalidating it.
By default, an exact touch does not count as a breach; price must trade through the level. Enable "Exact touch counts as a breach" if you want a touch to invalidate it.
YD High, YD Low, ON High, ON Low, and YD Close remain available as current reference levels even when tested. Older PD and ETH levels are filtered according to their breach status and your selected display timing.
PREVIOUS CLOSES AND GAPS
YD Close always shows when enabled. Older closes appear as PD n Close only while their gap remains unfilled.
Gap status is based on later regular-session price action. Overnight and post-close-tail activity do not fill a close gap. This keeps the gap logic aligned with the cash-session context rather than allowing overnight movement alone to remove the level.
An alert condition is included for price touching or crossing YD Close during the regular session.
ALL-TIME HIGH
The ATH calculation combines available chart history, extended-hours intraday history, and extended daily history. If the ATH matches a displayed high, that label is prefixed with ATH and emphasized. Otherwise, the indicator creates a standalone ATH level so the price remains marked even when it falls outside the selected session lookbacks.
LOOKBACKS AND DISPLAY CONTROLS
The indicator provides independent controls for:
• Regular-session high/low lookback
• Overnight high/low lookback
• Prior-close and gap lookback
• YD, PD, ON, ETH, close, ATH, and label visibility
• Immediate or end-of-day removal of breached levels
• Exact-touch breach behavior
• Session times and time zone
• Colors, line style, line width, label size, and label offset
Separating the lookbacks makes it possible to retain a broad history of untested highs and lows while using a shorter window for overnight levels or gaps.
RTH AND ETH CHART BEHAVIOR
All session values are requested from extended-hours data, so the same calculated levels appear whether the chart is displaying RTH or ETH candles.
TradingView scripts only execute when the chart receives a bar. An RTH chart therefore cannot update live while its chart session is closed. To handle this, "Roll levels at the regular session close" is enabled by default. It advances the labels and removes levels breached during the completed day on the final regular-session bar, leaving a frozen RTH chart in the correct end-of-session state. The extended-hours feed completes the normal rollover when the next chart session begins.
For live overnight development of ON High and ON Low, use an ETH chart.
HOW TO USE THE LEVELS
These lines identify historically significant prices; they do not predict which level price will visit or how price will react when it gets there. Traders may use them as context for targets, breakouts, failed breakouts, support/resistance flips, gap fills, and confluence with their own trade setups.
The retained-line behavior is especially useful after a breach: instead of losing the reference immediately, you can observe whether price returns to the level and changes its behavior around it later in the same session.
LIMITATIONS
This indicator is intended for intraday charts. Its session calculations use an extended-hours intraday feed, set to five minutes by default. Available lookback depth depends on the amount of intraday history TradingView provides for the symbol and the user's plan.
Session defaults are designed for the stated CME equity index futures workflow. Confirm and adjust the time zone, trading-day start, regular-session boundaries, and close-candle time before using the indicator on another market.
Holiday schedules, shortened sessions, missing bars, exchange data differences, and delayed feeds can affect the levels. Use standard price charts and verify the settings for the instrument being traded.
Untested Levels is a charting and market-context tool, not a trading system. It does not provide entries, exits, profit targets, or guarantees of future support or resistance. 指標

Geometric Matrix Intelligence [GMI]Description:
Welcome to the Geometric Matrix Intelligence + Market Structure indicator. This script is a hybrid trading tool that merges advanced structural concepts (BOS/CHoCH) with geometric probability levels and volatility-based trend analysis.
Core Features:
Geometric Probability Levels (GMI):
When a shift in trend direction is detected based on our custom ATR volatility filter, the script automatically projects forward geometric expansion levels (Φ1 to Φ4). These levels are highly versatile:
Reversal Zones: Price often reacts directly at these mathematical levels, creating excellent pivot or bounce areas.
Take Profit (TP) Targets: Once you are in a trade, these expansion lines provide objective, dynamic targets to scale out or close your positions.
Market Structure (BOS / CHoCH):
Automatically identifies structural pivot highs and lows using a fractal length (defaulted to 12).
Plots pending "Candidate" structure lines (in blue by default).
Confirms Break of Structure (BOS) or Change of Character (CHoCH) when the price breaks these pivots, updating dynamically on your chart.
VWAP Integration:
Includes a built-in Volume Weighted Average Price (VWAP) as a primary institutional baseline to help gauge overall intraday or multi-day bias. (Enabled by default).
Interactive Trend Dashboard & Shading:
An on-chart dashboard tracks the immediate trend status, the initial trigger entry price, maximum projected targets (Φ4), and current ATR volatility.
Visual trend shading allows for immediate macro-trend recognition.
How to Use:
Watch for Market Structure shifts (BOS/CHoCH) aligning with the GMI generated levels.
Use the projected Φ levels as primary take profit targets when trading a newly confirmed structural break.
Monitor the VWAP to ensure your structural trades are on the correct side of the institutional volume average.
Disclaimer:
This script is provided for educational and informational purposes only. It is not intended to be a financial advice, investment recommendation, or a signal to buy/sell any asset. Trading in financial markets involves significant risk of loss. Always do your own research and test any indicator or strategy in a paper-trading environment before committing real capital. 指標

GProf - Break & RetestGProf - Break & Retest
═══════════════════════════════════════════
OVERVIEW
This indicator detects one complete sequence: consolidation against a key level, a breakout WITH momentum, and the retest of the broken level. It watches the levels for you, stays silent through weak drifts and fakeouts, and speaks at the two moments that matter — when a level breaks with force, and when price comes back to test it.
The core idea is polarity: a level that held for hours gets violated with conviction, and the trade is the market returning to confirm the flip — old support rejecting as new resistance, or old resistance holding as new support.
───────────────────────────────────────────
TWO CONSOLIDATION PATTERNS, ONE CONFIRMATION GATE
PATTERN 1 — TIGHT COIL: a short compressed window pressing directly against the level, with zero closes beyond it. Price knocking on a door.
PATTERN 2 — RANGE-SIT: price spends an extended window entirely on one side of the level, the whole range within a capped height of it, then breaks the boundary. This captures the classic premarket-range breakout or breakdown, where the premarket high or low is the boundary of the consolidation itself.
Either pattern must then be CONFIRMED. A break with no force is fully silent — no label, no alert:
• MOMENTUM CANDLE — the breakout (or a continuation candle within a few bars) has a body of at least a set percentage of the daily ATR; OR
• QUALIFIED FVG — a Fair Value Gap of a set minimum size prints within the confirmation window.
Whichever arrives first arms the setup, and the alert tells you which one it was.
───────────────────────────────────────────
LEVELS AND THE ONE-BREAK DOCTRINE
Tracked levels: PMH/PML, YH/YL, PDC, WH/WL — computed internally, non-repainting, with session boundaries read in exchange time so they hold up through daylight-saving changes and holiday-shortened weeks.
LIFETIME VIRGINITY: a level may signal ONE break per lifetime. The first close beyond it consumes the level; wicks never spend it — sweeps that close back are probes, not violations. A spent level renews when its value changes or at the session roll. This kills re-break noise: a level violated at midday cannot fire again in the evening.
LIVE-LEVEL MATURITY: running levels (WH/WL always; PMH/PML while the premarket window is open) must rest untouched for a set number of bars before they can arm — every new weekly high is technically a "break of WH," and this suppresses that churn while keeping the first quality break.
WHEN "YESTERDAY" ROLLS: Roll Mode is Auto by default — futures roll at the 18:00 ET session open, equities at the next regular-session open — so evening and overnight sessions trade against the levels of the session that just completed.
The full doctrine in one sentence: a level may signal one break per lifetime, provided it has aged while live and is broken with momentum.
───────────────────────────────────────────
THE RETEST — TWO SPECIES
IMMEDIATE KISS-BACK: while the breakout leg is still building, a return to within tolerance of the broken level fires the retest — the fast test-and-reject, often within a bar or two of the break.
SWING 50% RETEST: if price runs instead, the swing confirms, the leg's 50% level is drawn, and the deeper retracement to the 50% or the level — whichever price reaches first — fires the retest.
A+ FLAG: when the leg's 50% coincides with the broken level itself, the retest is tagged A+ — two independent trade logics agreeing on one price.
───────────────────────────────────────────
SIGNALS AND ALERTS
On the chart: the consolidation box, a "B&R " label on the confirmed break, a dotted 50% line once the swing confirms, and a "RETEST " label (with A+ when earned). Breaks that armed but failed are marked with a small x; unconfirmed breaks leave no trace.
Two independent alert stages, each toggleable:
• CONFIRMED BREAKOUT — the level, the direction, and which confirmation fired.
• RETEST ENTERED — the level and price, with the A+ tag when the 50% sits on the level. Off by default; many traders use the breakout alert to get to the chart and watch the retest form.
Alert setup: ONE alert per chart, condition "Any alert() function call", expiration Open-ended. The toggles in settings control what fires. Note: TradingView alerts snapshot settings at creation — after changing settings, recreate the alert.
───────────────────────────────────────────
HOW TO USE IT
Traders who study break-and-retest setups typically treat the breakout alert as the heads-up and the retest as the decision point — watching for a confirmation candle at the retest before acting. The consolidation box shows you what broke; the tags tell you how it was confirmed.
This indicator identifies structure and sequence. It does not generate buy/sell recommendations, does not place trades, and does not replace your own analysis and risk management.
───────────────────────────────────────────
TECHNICAL NOTES
• Non-repainting: every state transition confirms on bar close; ATR uses completed daily bars; no lookahead anywhere.
• Intraday timeframes only. Built for index and commodity futures but works on any liquid symbol; thresholds are a percentage of daily ATR with tick floors, so they travel across instruments and volatility regimes.
• Coil and range windows, momentum and FVG thresholds, maturity, timeouts, retest tolerance, and session times are fully configurable.
───────────────────────────────────────────
DISCLAIMER
This script is for informational and educational purposes only. It does not constitute financial, investment, or trading advice. A broken level retesting is a pattern, not a guarantee of future price behavior. All trading decisions made using this tool are solely the responsibility of the user. 指標

GProf - Kangaroo TailGProf - Kangaroo Tail
═══════════════════════════════════════════
OVERVIEW
This indicator detects a single, specific reversal event: a liquidity-sweep candle at a meaningful level — the Kangaroo Tail. Price runs an extreme, sweeps through a level where liquidity rests, and is rejected hard within one candle, closing back on the other side.
It is deliberately quiet. Most sessions it prints nothing. It speaks only when a candle sweeps a genuine multi-hour extreme, shows textbook rejection anatomy, and does so at a nameable level. The Kangaroo Tail is not a candle pattern that happens to be near a level — it is a level rejection whose evidence is a candle.
───────────────────────────────────────────
THE CANDLE (KT Short shown — KT Long is the mirror)
1. THE SWEEP — the candle's high prints a new high versus a long lookback (default 78 bars, about 6.5 hours on the 5m). Room to the left, measured in time: the extreme must be genuinely fresh, which excludes signals from inside congestion — you cannot sweep a multi-hour high from within chop.
2. REJECTION ANATOMY — the entire body sits in the bottom third of the range (body position is the filter; color is reported, not required). The opposite wick is capped tightly, and the sweep wick itself must be significant: at least a set percentage of the daily ATR, with a tick floor, so the threshold scales across instruments.
3. CONTEXT — the body sits inside the previous candle's range (toggleable), and a large prior same-direction candle raises a caution tag on the signal rather than suppressing it: the thrust into a level is often strong, and that thrust-sweep-reject sequence is the pattern at its best.
───────────────────────────────────────────
THE LEVEL — REQUIRED, AND MEASURED CORRECTLY
No level, no signal. The confluence set:
• Session levels: PMH/PML, YH/YL, PDC, WH/WL — computed internally, non-repainting.
• Camarilla pivots: R3/R4 for shorts, S3/S4 for longs, from yesterday's RTH high/low/close, DRAWN on the chart (S3/S4 green, R3/R4 red, central pivot marked).
• Up to three custom levels — enter your own higher-timeframe lines and they become part of the confluence set.
Two details most level tools get wrong:
LEVEL-IN-WICK GEOMETRY: the level must lie within the sweep wick's span. A deep sweep THROUGH the level is the pattern at its strongest, not a disqualification. When the wick spans more than one level, the nearest to the wick tip is named.
LIVE-LEVEL MATURITY: a running level (WH/WL always; PMH/PML while the premarket window is open) must rest untouched for a set number of bars before it counts — a sweep candle's own extreme IS the newborn premarket high, and a level seconds old is not structure.
WHEN "YESTERDAY" ROLLS: Roll Mode is Auto by default — futures roll at the 18:00 ET session open, equities at the next regular-session open — so evening and overnight signals test the session that just completed and the Camarilla levels derived from it. Session boundaries are read in exchange time, correct year-round through daylight-saving changes.
───────────────────────────────────────────
SIGNALS AND ALERTS
A qualifying candle prints one label — "KT ▼" or "KT ▲" — carrying its context: the level swept, whether the wick landed inside an unfilled qualified Fair Value Gap, and a caution tag when the prior candle was large.
The alert message includes everything needed to assess without opening the chart: sweep depth in points, the level, FVG confluence, body color, and reference trade geometry — trigger one tick beyond the KT extreme, stop one tick beyond the wick, and the 1:1 target.
Alert setup: add the indicator, create ONE alert with condition "Any alert() function call", expiration Open-ended. Direction is controlled in settings. Note: TradingView alerts snapshot settings at creation — after changing settings, recreate the alert.
A near-miss diagnostics mode (off by default) is available for investigation: candles at a level that fail exactly one anatomy check print a small marker naming it.
───────────────────────────────────────────
HOW TO USE IT
The Kangaroo Tail marks a completed liquidity event at structure. Traders who study these typically look for entry on a break of the candle's extreme in the rejection direction, with the stop beyond the sweep wick — the geometry the alert pre-computes. Keep your own higher-timeframe levels current in the custom slots: the level set is the heart of the tool.
This indicator identifies a candle pattern at a level. It does not generate buy/sell recommendations, does not place trades, and does not replace your own analysis and risk management.
───────────────────────────────────────────
TECHNICAL NOTES
• Non-repainting: all detection confirms on bar close; ATR uses completed daily bars; levels are built from session windows with no lookahead.
• Intraday timeframes only. Built for index and commodity futures but works on any liquid symbol; size thresholds are a percentage of daily ATR with tick floors, so they travel across instruments.
• Sweep lookback, anatomy thresholds, proximity band, maturity, and session times are fully configurable.
───────────────────────────────────────────
DISCLAIMER
This script is for informational and educational purposes only. It does not constitute financial, investment, or trading advice. A rejection candle at a level is a pattern, not a guarantee of future price behavior. All trading decisions made using this tool are solely the responsibility of the user. 指標

GProf - Levels, RVOL, ATRGProf - Levels, RVOL, ATR
═══════════════════════════════════════════
OVERVIEW
This indicator answers the three questions an intraday trader asks before and during every session, in one tool:
1. LOCATION — Where is price relative to the structure that matters?
2. PARTICIPATION — Who showed up today, compared to a normal day?
3. RANGE — How much movement is statistically normal, and how much has already been spent?
It combines key session levels, time-of-day Relative Volume (RVOL), and a 14-day ATR with a live Range/ATR reading, shown as clean level lines plus a compact on-chart dashboard. Built with index and commodity futures in mind (NQ, ES, YM, RTY, GC, CL and their micros), it works on any intraday symbol with volume data, and adapts its session logic automatically between futures and equities.
───────────────────────────────────────────
LAYER 1: LOCATION — SESSION LEVELS
• YH / YL — Yesterday's High and Low, RTH-only or full session day.
• PDC — Previous Day Close.
• PMH / PML — Premarket High and Low (4:00am–9:30am ET, or the full overnight session to capture the entire Globex range on futures). Live during the premarket, then frozen at the open.
• WH / WL — The current week's running High and Low, updating in real time.
Each level is a labeled horizontal line with a matching price-scale marker. Colors, width, and labels are configurable, and each group toggles independently.
WHEN "YESTERDAY" ROLLS: by default, Roll Mode is Auto — futures roll yesterday's levels at the 18:00 ET session open (the exchange's own trading-day boundary, so evening and overnight sessions reference the day that just completed), while equities and other symbols roll at the next regular-session open. A manual override is available. Session-day and week boundaries are read in exchange time, so they are correct year-round through daylight-saving changes and hold up across holiday-shortened weeks.
───────────────────────────────────────────
LAYER 2: PARTICIPATION — RVOL
Raw volume comparisons mislead: the first 30 minutes of a session always dwarf lunch hour. This RVOL is time-of-day aware. It records the cumulative session-volume profile for each of the last N sessions, then compares today's cumulative volume to the average at the same elapsed minute of the session.
A reading of 100% means participation is exactly normal for this time of day; 150% means today is running half again above normal. The dashboard colors the reading against a configurable threshold. RVOL is a regular-session metric and reads N/A outside those hours.
───────────────────────────────────────────
LAYER 3: RANGE — ATR(14) AND RANGE/ATR
The dashboard shows the daily ATR (default 14 days), calculated from completed daily bars only — stable all day, never repainting intraday.
More useful than the raw number is Range/ATR: today's range so far as a percentage of the ATR. Under 70% (green), a statistically normal amount of range remains. Between 70–100% (orange), the day is approaching its average. Over 100% (red), the day has already exceeded a normal range, so late continuation attempts are fighting a mostly-spent tape.
Optional ATR Projection Bands (off by default) draw Today's Low + ATR and Today's High − ATR as live exhaustion estimates; when they invert, the day has exceeded its average range — visible at a glance.
───────────────────────────────────────────
HOW TO USE IT
Before the open: note where price sits relative to PMH/PML, YH/YL, and PDC. Confluence between these marks the zones most likely to produce reactions.
At the open: watch RVOL. An opening drive on 130%+ participation behaves very differently from one on 60%.
During the session: use Range/ATR as context for continuation versus exhaustion. A breakout attempt at 95% of ATR deserves more skepticism than the same pattern at 40%.
This indicator draws context only. It does not generate signals, place trades, or replace your own analysis and risk management.
───────────────────────────────────────────
TECHNICAL NOTES
• Non-repainting by design: no lookahead requests, no lower-timeframe data. Levels are built from chart-bar session windows; ATR uses completed daily bars; RVOL uses only accumulated history.
• Best on standard intraday timeframes (1m, 3m, 5m, 15m, 30m). Not intended for daily or higher charts.
• RVOL needs its lookback period of visible chart history to build a full profile; readings in the first sessions after loading are based on fewer samples.
• Session times, timezone, and roll behavior are fully configurable; defaults follow US equities/futures conventions.
───────────────────────────────────────────
DISCLAIMER
This script is for informational and educational purposes only. It does not constitute financial, investment, or trading advice. Past behavior of price, volume, or volatility does not guarantee future results. All trading decisions made using this tool are solely the responsibility of the user. 指標

GProf - FVG AlertsGProf - FVG Alerts
═══════════════════════════════════════════
OVERVIEW
This indicator detects standard 3-candle Fair Value Gaps (FVGs), draws every gap as a live zone, and fires an alert only when a gap is both large enough to matter and sits in an area with room to the left. It is built to surface displacement worth trading and stay silent on the rest.
Everything confirms on the close of the third candle — nothing is drawn or alerted intrabar, so a gap that appears mid-candle and vanishes before the close never produces a false alert.
───────────────────────────────────────────
DETECTION
• Bullish FVG — the current candle's low is above the high from two bars ago. The zone spans from that prior high (bottom) to the current low (top).
• Bearish FVG — the current candle's high is below the low from two bars ago. The zone spans from the current high (bottom) to that prior low (top).
───────────────────────────────────────────
THE ALERT FILTER — SIZE AND ROOM
Every FVG is drawn. An alert fires only when BOTH conditions are met:
1. SIZE — the gap is at least a set percentage of the daily ATR (default 2%), with a tick floor. Measuring against ATR rather than a fixed point value makes the threshold portable: it means the same thing on a fast index future and a slow one, and it adapts as volatility changes. A fixed-points mode is also available.
2. ROOM TO THE LEFT — the origin of the impulse that created the gap must be in clean territory: the anchor level (the extreme of the move) has few prior candle bodies overlapping it across a lookback window (defaults: 3 bodies over 20 bars). A gap that forms in the middle of prior congestion is drawn but does not alert.
Gaps are shown in three tiers so the chart teaches you over time:
• Full color — qualified on size AND room: these alert.
• Muted gray — big enough, but the anchor lacked room to the left: drawn, silent.
• Faint — below the size threshold: drawn, silent.
Watching which large gaps had room and which did not, and how price treats each, tells you where your own thresholds belong.
───────────────────────────────────────────
ZONE MANAGEMENT
• Zones extend right until fully filled: a bullish gap is removed when price trades down through the bottom of the zone, a bearish gap when price trades up through the top.
• Partial fills leave the zone at its original size — the original boundaries remain the reference, not the shrinking remainder.
• A configurable cap limits how many zones stay on the chart; oldest are removed first.
───────────────────────────────────────────
ALERTS — HOW TO SET UP
1. Add the indicator to your chart.
2. Open the Alert dialog and set the Condition to this indicator.
3. Select "Any alert() function call".
4. Set Expiration to Open-ended and choose your notification methods.
One alert covers everything. The Alert Direction input controls what fires: Both, Bullish Only, Bearish Only, or Off. Alert messages include the symbol, timeframe, direction, gap size in points and as a percentage of ATR, whether room-to-the-left is clean, and the exact zone boundaries.
Note: TradingView alerts snapshot the indicator's settings when created. If you change the size threshold or other settings later, edit and re-save (or recreate) the alert for the new values to take effect.
───────────────────────────────────────────
HOW TO USE IT
FVGs mark displacement — areas price moved through so fast that an imbalance was left behind. Many traders study them as zones of interest for retracement entries, targets, or invalidation. This indicator identifies and sizes the gaps, flags the significant ones that also have room to the left, and otherwise stays out of the way. Combine it with your own market structure analysis, session context, and risk management.
This indicator identifies a chart pattern. It does not generate buy/sell recommendations, does not place trades, and does not replace your own analysis and risk management.
───────────────────────────────────────────
TECHNICAL NOTES
• Non-repainting: detection, drawing, and alerts occur on confirmed bar closes only.
• Works on any symbol and timeframe. Size thresholds are a percentage of daily ATR with tick floors, so they travel across instruments and volatility regimes; a fixed-points mode is available.
• Colors, transparency, borders, size threshold, and the room-to-the-left lookback are fully configurable.
───────────────────────────────────────────
DISCLAIMER
This script is for informational and educational purposes only. It does not constitute financial, investment, or trading advice. Fair Value Gaps are a chart pattern, not a guarantee of future price behavior. All trading decisions made using this tool are solely the responsibility of the user. 指標

Watchlist Curator Stock RankerPick a sector — it scores ten of that sector's biggest names and ranks the top five leaders. A fast, honest starting point for your watchlist.
You've spotted the strong sector. Now — which stocks? Watchlist Curator takes one sector, scores ten of its biggest, most-traded names against the same yardstick, and hands you the top five in ranked order. That's a working watchlist in one look, instead of an hour of chart-flipping.
It works on its own — nothing else required.
Why a composite rank instead of raw relative strength?
Sorting a basket by relative strength alone hands you whatever ran the hardest — which is often the name that's most stretched and least enterable. The Curator's score starts with RS but lets the other components confirm or veto it: the trend stack rewards names in clean uptrends, the RSI sweet-spot deliberately down-ranks anything already overbought, and volume confirms real participation. The point of combining them is to surface leaders you can still enter — a different question than "what went up the most."
What it ranks — clearly said
Each of the 11 sectors carries a fixed basket of ten household-name bellwethers (Technology = AAPL, MSFT, NVDA, AVGO, CRM, AMD, ADBE, ORCL, CSCO, ACN — and so on for the rest). The Curator ranks *within that basket*. It doesn't scan every stock in the sector — it tells you which of the sector's big liquid names lead, which is where most swing traders should be looking anyway.
The Leadership Score (hover the Score header for this on the chart)
Relative strength vs SPY — the stock's % move minus SPY's over the lookback (20 bars by default). The backbone of the score.
Trend stack — up to +6: above the fast EMA, fast EMA above slow, above the slow EMA (+2 each).
RSI sweet spot — +3 only when RSI sits between 50 and 70: trending, but not overbought. This is deliberate — a red-hot name that's already stretched ranks lower on purpose, so the list points you at leaders you can still enter, not chases.
Volume — +2 for trading above its average.
The score is relative-strength % plus points — not a 0–100 scale. The Rating column translates it: 15+ Strong · 5–15 Good · 0–5 Fair · below 0 Lagging the market. The #1 row is highlighted in gold; a name whose data can't load shows "n/a".
How to use it
1. Find the leading sector — use whatever sector-strength read you trust.
2. Pick that sector in the dropdown.
3. Read the top five. Gold row = the current leader.
4. Those names are the charts worth your study time.
Settings — defaults work out of the box
Sector (dropdown, 11 choices) and timeframe (Daily by default — the ranking uses this timeframe no matter what chart you're on).
RS/momentum lookback (20), fast/slow EMA (20/50), RSI length (14).
Stocks to show (up to 5), table position, text size, dark/light theme, colors.
⚠ Educational tool for building a focused watchlist. It ranks relative strength — it does not give buy/sell signals or predict price. Not financial advice. 指標

MAEM - Macro Barometer
A compact macro dashboard for traders who can't watch four charts at once. MAEM - Macro Barometer places a single table on your active chart showing the live bias (Bullish / Bearish / Flat) and an RSI extreme flag (OB/OS) for four classic macro references: DXY, VIX, US10Y and WTI Crude Oil — the barometers most traders check before pulling the trigger on Gold, indices, or FX, regardless of what you're actually trading.
HOW IT WORKS
- Bias per barometer = price vs EMA + EMA slope (filters out single-tick whipsaws): Bullish only when price is above a rising EMA, Bearish only when price is below a falling EMA, otherwise Flat.
- The RSI column flags OB (overbought) / OS (oversold) on each barometer, so you catch when a macro driver may be running out of steam before it reverses against your position.
- All four barometers are read on your chart's own timeframe via request.security(), non-repainting (lookahead_off).
CUSTOMIZATION
- Toggle each barometer on/off individually.
- Override any of the four symbols if your broker/feed doesn't carry TVC: data.
- Adjust EMA length, RSI length/thresholds, panel position and text size.
Built for traders who want the macro backdrop at a glance without tab-hopping between separate charts — part of the MAEM suite alongside Structure Suite and Volume Suite. 指標

Buy-Sell Signals using Multi-Logic Trading System
📈 Advanced Multi-Logic Trading System with Trend, Momentum, Breakout and Risk Management
The **Buy-Sell Signals using Multi-Logic Trend, Momentum & Breakout System** is a multi-condition trading indicator designed to help traders identify structured trading opportunities across different market environments.
Unlike a conventional indicator that depends on only one moving-average crossover or oscillator, Buy-sell with Multi-logic Trading Sytem combines:
✅ Market structure and EMA alignment
✅ Higher-timeframe trend confirmation
✅ Session VWAP positioning
✅ RSI and MACD momentum
✅ Bollinger Band positioning and volatility
✅ Volume expansion and OBV direction
✅ Range-breakout confirmation
✅ Sideways-market mean reversion
✅ Dynamic stop-loss and target calculations
✅ Signal management and cooldown controls
The objective is not to produce the maximum number of signals.
The objective is to filter market noise and highlight situations where multiple independent conditions support the same directional view.
━━━━━━━━━━━━━━━━━━━━
🧠 How the Indicator Reads the Market
Buy-sell with Multi-logic Trading Sytem continuously classifies the chart into one of four market conditions:
📈 BULLISH TREND
A bullish trend is identified when:
**Price > Fast EMA > Medium EMA > Slow EMA**
With the default settings, this represents:
**Price > EMA 20 > EMA 50 > EMA 200**
This structure indicates that short-term, medium-term and long-term price positioning is aligned in the bullish direction.
------------------------------------------------
📈 BEARISH TREND
A bearish trend is identified when:
**Price < Fast EMA < Medium EMA < Slow EMA**
With the default settings:
**Price < EMA 20 < EMA 50 < EMA 200**
This indicates complete bearish alignment across the three trend layers.
------------------------------------------------
📈 RANGE / SIDEWAYS
The system studies the previous trading range over the selected Range Lookback.
The current candle is excluded from this range calculation. This allows the indicator to identify a genuine close outside the previous range instead of comparing the breakout candle against a range that already includes it.
A market is treated as sideways when:
• The previous range width remains within the selected percentage threshold
• Complete bullish EMA alignment is absent
• Complete bearish EMA alignment is absent
------------------------------------------------
📈 Transition
The Transition condition appears when the market is neither properly trending nor qualifying as a defined range.
This commonly happens when:
• EMAs are crossing or compressing
• Price repeatedly moves around the EMA ribbon
• The previous trend is weakening
• A new trend has not yet become established
• Price is moving between range and trend conditions
Transition is usually the least reliable environment for mechanical signals.
━━━━━━━━━━━━━━━━━━━━
⚙️ The Four Entry Logic Engines
Buy-sell with Multi-logic Trading System contains four separate entry engines.
Each engine is designed for a different type of market behaviour.
📈 1. Trend-Following Logic
Trend-following logic is designed to participate in an already established directional move.
A bullish trend setup requires:
• Bullish EMA alignment
• Minimum bullish confluence score
• Higher-timeframe bullish permission
• Price above session VWAP
A bearish trend setup requires the opposite conditions.
🔷 Bullish confluence score
The bullish score contains six independent components:
1. Bullish EMA trend alignment
2. RSI positioned between 45 and 72
3. MACD above its signal line with a positive histogram
4. Price above the Bollinger Band basis
5. High volume with bullish OBV behaviour
6. A bullish candle closing above the previous structural swing high
🔷 Bearish confluence score
The bearish score also contains six components:
1. Bearish EMA trend alignment
2. RSI positioned between 28 and 55
3. MACD below its signal line with a negative histogram
4. Price below the Bollinger Band basis
5. High volume with bearish OBV behaviour
6. A bearish candle closing below the previous structural swing low
The **Minimum Trend Confluence** setting determines how many of these six conditions must agree.
🔷 When to use Trend-Following Logic
👉Use it when:
• The EMA ribbon is properly expanded
• Price is making higher highs and higher lows in an uptrend
• Price is making lower highs and lower lows in a downtrend
• Pullbacks are respecting the fast or medium EMA
• Price is consistently holding on the correct side of VWAP
• The higher-timeframe trend supports the trade direction
👉 When to avoid it
Avoid relying on trend logic when:
• EMAs are flat or repeatedly crossing
• Price is trapped inside a narrow range
• The market-condition card shows Transition
• A signal appears directly below major resistance
• A signal appears directly above major support
• Price has already completed a large impulsive move without a pullback
━━━━━━━━━━━━━━━━━━━━
📈 2. Momentum Logic
Momentum logic is designed to detect acceleration before complete trend confluence becomes necessary.
🔷For bullish momentum, the indicator looks for:
• Price above the fast EMA
• RSI above 52
• Positive MACD histogram
• MACD histogram increasing from the previous candle
• Bullish OBV positioning
• Volume confirmation when usable volume is available
• Bullish higher-timeframe permission
• Price above VWAP
🔷Bearish momentum uses the opposite conditions.
Momentum logic can respond earlier than full trend logic because it does not require the complete EMA 20–50–200 alignment or the minimum six-part trend score.
👉 When to use Momentum Logic
Momentum logic is most useful when:
• Price is emerging from consolidation
• A fresh intraday directional move is developing
• Volume is expanding with price
• MACD momentum is accelerating
• Price has reclaimed or rejected VWAP decisively
• A pullback is followed by renewed directional strength
• The higher timeframe already supports the intended direction
👉 When to avoid it
Avoid momentum entries when:
• The momentum candle is unusually extended
• Price is entering a major higher-timeframe supply or demand zone
• Volume expansion is caused by a news spike
• MACD is positive but price structure remains weak
• Price repeatedly crosses VWAP
• The chart has unreliable or unavailable volume data
Momentum logic is especially dependent on meaningful volume and OBV behaviour. It is therefore generally better suited to liquid stocks, indices, futures and other actively traded instruments.
━━━━━━━━━━━━━━━━━━━━
📈 3. Range-Breakout Logic
The breakout engine is designed to identify confirmed movement outside a previously established range.
It does not trigger merely because price trades a few ticks outside the range.
A bullish breakout requires:
• The previous market qualified as a range
• Price closes above the previous range high
• The close exceeds the range by the selected ATR buffer
• The previous candle had not already closed above the range
• The breakout candle closes strongly toward its high
• RSI is above 50
• MACD is bullish
• Volume confirms the move when available and required
• Price is above VWAP
The bearish breakout logic uses the opposite conditions.
🔷 Breakout Confirmation Buffer
The ATR buffer prevents the system from treating a marginal move above or below the boundary as a valid breakout.
A value of **0.15 ATR** means price must close beyond the range boundary by an additional 15% of the current ATR.
Increasing this value creates fewer but more selective breakout signals.
🔷 Breakout Candle Close Position
The candle must also close strongly in the breakout direction.
With a value of **0.60**:
• A bullish breakout candle must close in the upper 40% of its total range
• A bearish breakout candle must close in the lower 40% of its total range
This helps reject candles that break a level intrabar but leave a large rejection wick.
🔷 Important HTF behaviour
The higher-timeframe EMA filter directly controls the Trend and Momentum engines.
The Range-Breakout engine instead uses its own range, ATR, candle-strength, RSI, MACD, volume and VWAP confirmation.
Therefore, traders should still manually inspect the higher-timeframe structure before accepting a breakout signal.
👉 When to use Breakout Logic
Use breakout logic when:
• Price has formed a clean and visible range
• Range boundaries have been tested multiple times
• Bollinger Band width has contracted before expansion
• Volume increases during the breakout
• The breakout candle closes outside the level
• There is sufficient room before the next major structure
• VWAP supports the breakout direction
👉 When to avoid it
Avoid breakout entries when:
• The range is poorly defined
• Price is breaking directly into higher-timeframe resistance or support
• The breakout candle leaves a large rejection wick
• Volume is weak or declining
• Price has already moved far beyond the range before entry
• The breakout occurs during an irregular news candle
• The range threshold is set too loosely and ordinary price movement is being classified as consolidation
━━━━━━━━━━━━━━━━━━━━
📈 4. Sideways Mean-Reversion Logic
Mean reversion is disabled by default because it represents a different trading philosophy from trend-following.
Instead of expecting price to continue moving away from fair value, this engine looks for rejection near the outer areas of a sideways range.
The range is divided into zones:
• Lower reversion area near the bottom 20% of the range
• Upper reversion area near the top 20% of the range
A bullish mean-reversion setup requires:
• Mean-reversion logic enabled
• Market classified as sideways
• Range sufficiently wide relative to ATR
• Price testing the lower reversion zone
• Price closing back above that zone
• A bullish rejection candle
• A sufficiently large lower wick
• RSI below 38
• RSI turning upward when the RSI-turn filter is enabled
• Volume permission
A bearish mean-reversion setup requires the opposite conditions near the upper range zone, with RSI above 62 and turning downward.
🔷 Important Mean-Reversion Behaviour
Mean-reversion trades are intentionally based on sideways-market rejection.
They do not use the higher-timeframe trend or VWAP filter in the same way as the Trend and Momentum engines.
This is logical because a range-fading trade may temporarily move against the prevailing higher-timeframe direction.
However, it also means mean-reversion mode should be activated only when the trader has independently confirmed that the market is genuinely balanced and range-bound.
👉 When to use Mean Reversion
Use it when:
• The market has clear horizontal boundaries
• EMA alignment is absent
• Price repeatedly rejects both sides of the range
• The range is wide enough to offer practical reward
• RSI reaches an extreme and begins turning
• The rejection candle closes back inside the range
• No major breakout catalyst is expected
👉 When not to use it
Disable mean reversion when:
• The market is strongly trending
• The EMA ribbon is expanding
• Price is forming one-sided momentum candles
• Volume is increasing near the range boundary
• A breakout is supported by broader-market direction
• Price is repeatedly pressing one boundary without meaningful rejection
Repeated testing of one range boundary can represent pressure accumulation rather than a reversal opportunity.
━━━━━━━━━━━━━━━━━━━━
🔍 Higher-Timeframe Trend Filter
The higher-timeframe filter compares price with an EMA calculated on the selected higher timeframe.
👉When enabled:
• Long Trend and Momentum setups require bullish HTF positioning
• Short Trend and Momentum setups require bearish HTF positioning
The higher-timeframe calculation is designed to use confirmed information rather than future-looking data.
🔷 Suggested timeframe combinations
These are practical starting points and should be tested for each instrument:
• 3-minute chart → 15-minute or 30-minute HTF
• 5-minute chart → 30-minute or 60-minute HTF
• 15-minute chart → 60-minute or 4-hour HTF
• 30-minute chart → 4-hour HTF
• 1-hour chart → 4-hour or Daily HTF
• 4-hour chart → Daily or Weekly HTF
A closer HTF produces more opportunities.
A larger HTF produces fewer but more structurally selective opportunities.
━━━━━━━━━━━━━━━━━━━━
📍 Session VWAP Filter
VWAP acts as the indicator’s intraday fair-value reference.
👉When enabled:
• Long Trend, Momentum and Breakout setups require price above VWAP
• Short Trend, Momentum and Breakout setups require price below VWAP
This reduces situations where a bullish technical setup appears below intraday fair value or a bearish setup appears above it.
👉Keep VWAP enabled when:
• Trading intraday
• Trading indices or liquid stocks
• Trading momentum continuation
• Trading opening-range or consolidation breakouts
• Filtering counter-directional entries
👉 Consider disabling VWAP when:
• Trading higher timeframes where session VWAP has less relevance
• Trading instruments with irregular sessions
• Testing a pure swing-trading model
• Using another manually defined fair-value framework
Disabling VWAP increases flexibility but may also increase counter-directional signals.
━━━━━━━━━━━━━━━━━━━━
📊 Volume and OBV Confirmation
The indicator compares current volume with its moving average.
With the default multiplier of **1.5**, high volume means the current volume is at least 1.5 times the selected average volume.
OBV is then compared with its own moving average to determine whether cumulative volume behaviour supports buyers or sellers.
The system is designed so that missing volume does not automatically block every setup.
However, symbols with reliable exchange volume are preferred, particularly when using Momentum Logic.
🔷 Volume Multiplier Interpretation
• 1.20–1.40: More responsive, but more noise
• 1.50: Balanced default
• 1.70–2.00: Strong expansion required
• Above 2.00: Very selective and mainly suited to exceptional participation
━━━━━━━━━━━━━━━━━━━━
🛡️ Stop-Loss and Target Engine
Every confirmed signal creates an active entry, stop-loss and target.
The indicator provides three stop-loss methods.
🔷 Structure + ATR
👉For a long trade:
The stop is placed below the previous structural swing low with an additional ATR buffer.
👉For a short trade:
The stop is placed above the previous structural swing high with an ATR buffer.
This is generally the preferred method for price-action and structure-based trading.
🔷ATR Stop
The stop is calculated using a fixed ATR multiple from the entry.
This method adapts to current volatility without depending on the location of a previous swing.
It can be useful for:
• Momentum setups
• Instruments with irregular swing structures
• Fast-moving markets
• Systematic risk standardisation
🔷 Fixed Percentage Stop
The stop is placed at a fixed percentage from entry.
This is simple but does not adjust to changing volatility.
It should be used carefully because the same percentage may be too tight in a volatile market and unnecessarily wide in a quiet market.
━━━━━━━━━━━━━━━━━━━━
📈 Target Methods
🔷Risk-to-Reward Target
The target is calculated from the actual distance between entry and stop.
With a 1.5 risk-to-reward ratio, the target is 1.5 times the defined trade risk.
🔷 ATR Target
The target is positioned at a selected ATR multiple from entry.
This can be useful for momentum trades where price expansion is expected.
🔷 Fixed Percentage Target
The target is placed at a fixed percentage from entry.
This is straightforward but less adaptive than ATR or structure-based calculations.
━━━━━━━━━━━━━━━━━━━━
🎯 Preferred Risk Settings
🔷 Structure-Based Intraday Trading
• Stop Method: Structure + ATR
• Structure ATR Buffer: 0.15–0.25
• Target Method: Risk:Reward
• Risk:Reward: 1.5–2.0
🔷 Momentum Trading
• Stop Method: ATR
• Stop ATR Multiplier: 1.2–1.8
• Target Method: ATR or Risk:Reward
• Target ATR Multiplier: 2.0–3.0
🔷 Swing Trading
• Stop Method: Structure + ATR
• Swing Lookback: 10–20
• Structure ATR Buffer: 0.20–0.40
• Target Method: Risk:Reward
• Risk:Reward: 1.5–2.5
🔷 Mean-Reversion Trading
• Stop Method: Structure + ATR or ATR
• Use a stop beyond the rejected range boundary
• Avoid excessively wide targets
• Consider the opposite side or midpoint of the range as practical structure
These values are starting points, not universal settings. Different instruments have different volatility and structural characteristics.
━━━━━━━━━━━━━━━━━━━━
🚦 Signal-Control System
Buy-sell with Multi-logic Trading System includes several controls to prevent repeated or conflicting signals.
👉 Minimum Bars Between Signals
The cooldown prevents the indicator from producing another signal immediately after the previous one.
Default: **5 bars**
Lower values create more frequent signals.
Higher values reduce repeated entries during the same move.
👉 Fresh Setup Only
When enabled, a signal appears only when the complete setup changes from false to true.
It prevents the indicator from repeatedly signalling on every candle while the same condition remains active.
This should normally remain enabled.
👉 Wait for SL or Target Before Next Signal
When enabled, the indicator waits for the active stop or target to be touched before accepting another trade.
This creates a cleaner one-trade-at-a-time workflow.
It is the preferred setting for discretionary traders and alert-based execution.
👉 Allow Opposite Signal
This setting becomes relevant when “Wait for SL/Target” is disabled.
It determines whether an opposite signal can replace the current directional trade before the original levels are completed.
━━━━━━━━━━━━━━━━━━━━
✨ Visual Features
3D Gradient Trend Ribbon
Glow Buy and Sell Markers
Signals are generated after the chart candle is confirmed.
Entry Beam
3D Risk and Reward Zones
VWAP Glow Line
Gradient Candle Coloring
━━━━━━━━━━━━━━━━━━━━
📋 Dashboard Explained
The dashboard provides a summary of current chart conditions.
Market Condition
Bull Score and Bear Score
RSI
ATR Percentage
Volume Ratio
Bollinger Band Width
HTF Trend
VWAP
Active Trade
SL / TP
Win Rate
The dashboard win rate is an internal chart-touch statistic based on whether displayed targets or stops were reached.
For reliable validation, traders should independently review historical trades and conduct proper testing.
━━━━━━━━━━━━━━━━━━━━
🔔 Alert Features
Buy-sell with Multi-logic Trading System provides alert conditions for:
• Confirmed BUY signal
• Confirmed SELL signal
• Active stop-loss touched
• Active target touched
Dynamic BUY and SELL alerts can also include:
• Symbol
• Entry price
• Stop-loss
• Target price
Signals and dynamic alerts are generated once per confirmed candle close.
For TradingView alerts, select the indicator and choose the required alert condition.
━━━━━━━━━━━━━━━━━━━━
📌 Preferred Logic According to Market View
👉 Strong Bullish Market
Recommended:
• Trend Logic: ON
• Momentum Logic: ON
• Breakout Logic: Optional
• Mean Reversion: OFF
• HTF Filter: ON
• VWAP Filter: ON
• Minimum Confluence: 4 or 5
Focus mainly on long signals, pullbacks and bullish consolidation breakouts.
👉Strong Bearish Market
Recommended:
• Trend Logic: ON
• Momentum Logic: ON
• Breakout Logic: Optional
• Mean Reversion: OFF
• HTF Filter: ON
• VWAP Filter: ON
• Minimum Confluence: 4 or 5
Focus mainly on short signals, failed recoveries and bearish range breakdowns.
👉 Developing Trend
Recommended:
• Trend Logic: ON
• Momentum Logic: ON
• Breakout Logic: ON
• Mean Reversion: OFF
• Minimum Confluence: 4
• Breakout Buffer: 0.10–0.20 ATR
Momentum or breakout logic may identify the move before complete EMA alignment develops.
👉 Established Trend
Recommended:
• Trend Logic: ON
• Momentum Logic: Optional
• Breakout Logic: Optional
• Mean Reversion: OFF
• Minimum Confluence: 4–5
• Structure + ATR stop
Look for continuation after controlled pullbacks rather than chasing extended candles.
👉 Clean Sideways Range
Recommended:
• Trend Logic: OFF or used cautiously
• Momentum Logic: OFF
• Breakout Logic: ON
• Mean Reversion: ON only for confirmed range rejection
• RSI Turn Requirement: ON
• Reversion Wick Ratio: 0.35–0.50
Use either range fading or breakout trading according to price behaviour—but avoid treating both as equally valid at the same moment.
👉 Transition or Choppy Market
Recommended:
• Increase Minimum Confluence
• Increase cooldown bars
• Use HTF and VWAP filters
• Keep Mean Reversion OFF unless a clear range forms
• Wait for structure to become clearer
Sometimes the best setting in a Transition market is simply to avoid trading.
━━━━━━━━━━━━━━━━━━━━
🧩 Suggested Presets
🔶 Balanced Intraday — 5 or 15 Minutes
• EMA: 20 / 50 / 200
• HTF: 60 minutes
• HTF Filter: ON
• VWAP Filter: ON
• Trend Logic: ON
• Momentum Logic: ON
• Breakout Logic: ON
• Mean Reversion: OFF
• Minimum Confluence: 4
• Volume Multiplier: 1.5
• Breakout Buffer: 0.15 ATR
• Breakout Close Position: 0.60
• Stop: Structure + ATR
• Target: 1.5 Risk:Reward
• Cooldown: 5 bars
• Fresh Setup Only: ON
• Wait for Exit: ON
🔶 Precision Intraday
• HTF Filter: ON
• VWAP Filter: ON
• Minimum Confluence: 5
• Volume Multiplier: 1.7–2.0
• Breakout Buffer: 0.20–0.30 ATR
• Breakout Close Position: 0.70–0.80
• Fresh Setup Only: ON
• Wait for Exit: ON
This preset produces fewer signals but demands stronger confirmation.
🔶 Fast Momentum Trading
• Trend Logic: Optional
• Momentum Logic: ON
• Breakout Logic: ON
• Mean Reversion: OFF
• HTF Filter: ON
• VWAP Filter: ON
• Volume Multiplier: 1.3–1.5
• Cooldown: 2–4 bars
• Stop: ATR
• Target: ATR or Risk:Reward
Fast settings should only be used on liquid instruments because they are more sensitive to lower-timeframe noise.
🔶 Range-Breakout Trading
• Trend Logic: Optional
• Momentum Logic: Optional
• Breakout Logic: ON
• Mean Reversion: OFF
• Breakout Buffer: 0.15–0.30 ATR
• Close Position: 0.65–0.80
• Require Breakout Volume: ON
• Volume Multiplier: 1.5–2.0
• VWAP Filter: ON
Manually confirm that sufficient space exists beyond the range.
🔶 Sideways Mean Reversion
• Trend Logic: OFF
• Momentum Logic: OFF
• Breakout Logic: Optional
• Mean Reversion: ON
• Minimum Range Width: 1.0–1.5 ATR
• Rejection Wick Ratio: 0.35–0.50
• RSI Turn Requirement: ON
• Fresh Setup Only: ON
• Wait for Exit: ON
Do not use this preset when the range boundary is being attacked with expanding volume.
🔶 Swing Trading — 1 Hour or 4 Hours
• EMA: 20 / 50 / 200
• HTF: 4 Hour, Daily or Weekly
• HTF Filter: ON
• VWAP Filter: Optional
• Trend Logic: ON
• Momentum Logic: ON
• Breakout Logic: ON
• Mean Reversion: Usually OFF
• Minimum Confluence: 4–5
• Swing Lookback: 10–20
• Stop: Structure + ATR
• Target: Risk:Reward
• Risk:Reward: 1.5–2.5
• Cooldown: 3–5 bars
━━━━━━━━━━━━━━━━━━━━
⛔ When Not to Use the Indicator
Avoid taking signals mechanically when:
• The market-condition card shows an unstable Transition phase
• Price is moving inside a very narrow and noisy area
• A signal is directly facing major higher-timeframe structure
• Price is highly extended from the EMA ribbon or VWAP
• The signal candle is abnormally large
• A major economic event is creating unpredictable volatility
• The selected instrument is illiquid
• Volume data is unreliable
• Bid–ask spreads are unusually wide
• The chart timeframe is too low for the instrument
• There is insufficient reward before the next support or resistance
• The stop required by structure is larger than the trader’s permitted risk
A technically valid signal is not automatically a good trade.
Location, liquidity, market context and risk remain essential.
━━━━━━━━━━━━━━━━━━━━
✅ Recommended Trading Workflow
Step 1 : Identify the market condition
Determine whether the chart is trending, ranging or transitioning.
Step 2 : Check the higher timeframe
Confirm the broader directional structure before using Trend or Momentum signals.
Step 3 : Check VWAP location
For intraday trading, prefer longs above VWAP and shorts below VWAP.
Step 4 : Read the dashboard
Compare:
• Bull and Bear scores
• RSI
• ATR percentage
• Volume ratio
• Bollinger Band width
• Higher-timeframe trend
Step 5 : Identify which logic suits the market
Do not use mean reversion in a strong trend.
Do not depend only on trend logic in an unstructured range.
Step 6 : Check trade location
Identify nearby support, resistance, previous-day levels, liquidity zones and higher-timeframe structure.
Step 7 : Evaluate risk
Check whether the displayed stop is logically placed and whether sufficient reward is available.
Step 8 : Wait for candle confirmation
Avoid anticipating a signal before the candle closes.
━━━━━━━━━━━━━━━━━━━━
⚠️ Important Notes
Buy-sell with Multi-logic Trading System is a decision-support indicator, not an automatic guarantee of profitable trades.
The indicator does not know:
• Your account size
• Your maximum permitted risk
• Whether a market-moving announcement is approaching
• Whether a nearby level is personally significant to your analysis
• Whether an option contract has suitable liquidity, delta or implied volatility
• Whether the displayed trade fits your trading plan
When several logic engines are enabled together, a BUY or SELL signal can originate from Trend, Momentum, Breakout or Mean-Reversion conditions.
The current signal marker does not separately label which internal engine generated it. The market condition, dashboard and surrounding price action should therefore be used to interpret the setup.
Always test the indicator on the intended market and timeframe before using it in live trading.
━━━━━━━━━━━━━━━━━━━━
📈 Final Perspective
Buy-sell with Multi-logic Trading System is designed around one central idea:
**Trade according to the current market regime instead of forcing the same strategy into every market.**
Use Trend Logic when structure is aligned.
Use Momentum Logic when participation and acceleration are increasing.
Use Breakout Logic when price is escaping a well-defined range with confirmation.
Use Mean Reversion only when the market is genuinely balanced and rejecting its boundaries.
The indicator can organise information, filter conditions and define structured risk—but disciplined execution, position sizing and market awareness remain the trader’s responsibility.
------------------------------------------------
**Educational use only. This indicator does not provide financial advice or guarantee future results.**
指標

Percentage Price Oscillator Navigator [MarkitTick]💡 A highly multi-dimensional momentum and trend-tracking suite. Rather than relying on singular data points, this comprehensive ecosystem fuses normalized momentum oscillators, dynamic volatility filters, and automated risk-management frameworks into a single, cohesive interface. Designed for meticulous market analysts, it provides a strictly confirmed, non-repainting environment to identify structural shifts, validate trend strength, and project actionable risk-to-reward parameters.
● ✨ Originality and Utility
Standard momentum oscillators often suffer from noise in ranging environments and fail to contextualize signals with prevailing market conditions. This tool distinguishes itself by integrating a robust "Smart Filter" engine directly into the core momentum calculation. By dynamically cross-referencing directional movement strength, average true range expansions, and volume surges, it ensures that momentum shifts are only validated when supported by underlying market participation. Furthermore, the inclusion of a fully automated, dynamic risk-to-reward leveling system transforms a traditional oscillator into a complete trade management overlay, complete with a real-time heads-up display dashboard and fully formatted JSON alert payloads for external automation.
● 🔬 Methodology and Concepts
The foundational logic relies on the proportional divergence between a faster and slower moving average, calculating the percentage difference to create a normalized oscillator. This normalization is critical as it allows for consistent momentum evaluation across diverse asset classes regardless of their nominal price value.
To prevent the common pitfall of reverse-engineering and to protect the underlying intellectual architecture, the internal mathematical sequences remain fully abstracted. The methodology employs a cascading verification process:
First, the core normalized divergence is measured against its own smoothed signal line to identify baseline directional shifts.
Second, a Multi-Timeframe (MTF) confirmation engine evaluates the macro trend. This utilizes a strict, offset historical data request architecture, ensuring zero future-data leakage or repainting artifacts.
Third, the Smart Filter engine evaluates atmospheric market conditions. It demands that background volatility, average directional strength, and volume participation meet minimum threshold requirements before validating any structural momentum shift.
Finally, the system utilizes strict bar-close confirmation logic. Signals are exclusively generated when the evaluation bar has permanently closed, ensuring unalterable historical accuracy.
● 🎨 Visual Guide
The visual interface is engineered to maximize data delivery while maintaining chart clarity.
• Oscillator Elements
PPO Line (Solid Blue): Represents the primary normalized momentum metric.
Signal Line (Solid Orange): A smoothed derivative of the primary momentum, acting as the baseline for crossover events.
Histogram Columns: Visualizes the spread between the PPO and Signal lines. Rising positive momentum is colored in solid teal, while weakening positive momentum fades to a transparent teal. Conversely, expanding negative momentum is solid red, fading to transparent red as bearish momentum wanes.
Zero Line (Gray): The equilibrium point delineating macro bullish versus bearish environments.
• Chart Overlay Elements
Heatmap Candles: The main chart candles are dynamically colored (Teal for positive momentum, Red for negative momentum) based directly on the histogram's state, instantly aligning price action with underlying momentum.
Signal Markers: Small, precise triangles appear at the exact bar of a confirmed momentum crossover (Teal triangle pointing up for bullish, Red pointing down for bearish).
Risk Management Levels: Upon a confirmed signal, the tool draws horizontal projections. The Stop Loss is a thick solid red line. The Entry is a dashed blue line. Take Profit targets (TP1, TP2, TP3) are plotted as dashed teal lines of varying opacity. Colored background fills visually represent the geometric risk and reward zones.
• Heads-Up Dashboard
A fixed tabular dashboard provides a real-time diagnostic readout of all internal states, including current momentum values, moving average gap percentages (visualized as a progress bar), higher-timeframe alignment, and the active positional status with exact level coordinates.
● 📖 How to Use
This tool is designed to act as a primary navigational compass for market structure. Traders should observe the histogram for early signs of momentum deceleration (indicated by fading column colors). A validated setup occurs when the primary momentum line crosses the signal line, strictly accompanied by a visual marker on the chart.
Because the system employs strict bar-close confirmation, traders must wait for the bar to finalize before interpreting a signal as valid. Once a signal fires, the risk management levels automatically project onto the chart. The user can utilize the "Lock Signal" feature to freeze these specific entry and exit levels on the chart, preventing the system from calculating subsequent, potentially conflicting signals while a trade is actively being managed. The comprehensive JSON alerts can be mapped directly to external execution platforms, utilizing the dynamically generated Entry, Stop Loss, and Take Profit price coordinates embedded within the payload.
● ⚙️ Inputs and Settings
The configuration panel is highly modular, categorized logically for precise tuning:
• Core
Defines the lookback periods for the fast, slow, and signal moving averages, as well as the calculation type (SMA or EMA) and the source price data.
• Filters
The gatekeeper settings. Users can toggle and tune the Higher Timeframe confirmation, ADX strength threshold, ATR volatility multiplier, and Volume moving average requirements. A histogram slope confirmation can also be activated to ensure structural momentum is moving in the correct direction.
• Trade Tools
Controls the geometric risk overlay. Users define the Stop Loss distance via an ATR multiplier and set precise Risk:Reward ratios for all three Take Profit targets. The "Lock Signal" toggle is located here, allowing users to freeze the active projection.
• Visuals & Dashboard
Comprehensive toggles to enable or disable specific UI elements such as the histogram, heatmap candles, chart signals, and the diagnostic dashboard, allowing for a fully customized workspace.
• Alerts
Input fields to define custom JSON action tags for integration with third-party webhooks, ensuring seamless connectivity with external systems.
● 🔍 Deconstruction of the Underlying Scientific and Academic Framework
The theoretical foundation of this evaluation suite rests on the synthesis of structural momentum analysis and statistical variance gating. In traditional financial modeling, momentum is frequently quantified as the first derivative of price relative to time. However, absolute price changes suffer from scalar distortion; a ten-point move in a high-valuation asset is mathematically insignificant compared to a ten-point move in a low-valuation asset. By utilizing a normalized percentage differential between dual moving averages, the tool mathematically standardizes momentum, allowing for robust, scale-invariant analysis.
Furthermore, the integration of the Smart Filter engine elevates the framework from simple linear smoothing to a multidimensional evaluation model. The inclusion of the Average Directional Index (ADX) introduces a non-directional vector strength requirement, ensuring that momentum shifts are occurring within an established trend environment rather than a stochastic mean-reversion chop. The Volatility filter, utilizing the Average True Range (ATR), acts as a statistical variance gate. It postulates that significant structural shifts require an expansion in price distribution variance; if a momentum crossover occurs during a period of localized volatility contraction, it is statistically more likely to be a false positive generated by noise rather than a genuine shift in market consensus.
Finally, the dynamic risk leveling system applies principles of geometric expectancy. By anchoring the invalidation point (Stop Loss) to the ATR, the system ensures that risk parameters are continuously adjusted to the current statistical distribution of price movement, rather than relying on arbitrary, static percentages. This creates a mathematically sound, expectancy-positive projection model that adapts fluidly to expanding and contracting market environments, enforcing a rigorous, quantitative approach to trade management.
⚠️ Disclaimer
All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. We expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion. 指標

Order Block Engine [JOAT]═══ ORDER BLOCK ENGINE ═══
Most order-block tools paint a fresh box on every candle and bury the chart. This one does the opposite. It only marks the last opposing-close candle that appears just before a genuine displacement leg — a move that closes through a confirmed swing by more than a volatility-scaled threshold, backed by a volume expansion. The result: only a handful of clean, unmitigated, high-grade zones survive on screen at once.
▎ WHAT IT DOES
It maps institutional-style order blocks, grades each one from 0 to 10 by ★ quality, extends the surviving zones to the right until price mitigates them, and fires a single clean BUY / SELL pill on a valid retest + reaction — complete with an R-multiple TP/SL zone construct. A grey/white and blue-chrome dashboard keeps the running read of structure, bias and zone quality in one corner.
▎ HOW IT WORKS
— Confirmed swing structure. Pivot highs and lows are tracked with a configurable lookback. Each swing stays "unbroken" until price genuinely closes through it.
— Displacement break. A bullish break needs an up-close candle that closes above the last swing high by more than Displacement × ATR ; a bearish break mirrors it below the swing low. ATR scaling means the threshold self-adjusts to any asset or timeframe.
— Volume confirmation. The breaking candle's volume must exceed its own moving-average baseline by the chosen multiplier. On symbols with no volume feed, this filter auto-skips.
— Order-block selection. Once a break is confirmed, the engine walks back through recent bars to find the last opposing-close candle — the down-close before a bullish break, or the up-close before a bearish break. That candle's high/low becomes the zone.
— ★ Grade (0-10). Each block is scored on three factors: how far the break displaced (in ATR), how strong the volume expansion was, and the body-to-range ratio of the origin candle. The composite maps to a 0-10 grade and a tier (WEAK → FAIR → SOLID → STRONG → ELITE).
— Mitigation & signals. Live zones extend right on each bar. If price closes fully through a zone, it is mitigated — frozen and greyed (or deleted). If instead price wicks back into the zone and the bar reacts back out with a close in the right direction, and the block's grade clears your minimum, a BUY / SELL signal fires. One signal per bar, longs take priority.
— Trade construct. On a signal the engine builds an entry line at close, a stop a buffer beyond the zone edge (× ATR), and TP1 / TP2 at your chosen R multiples — drawn as green TARGET and red RISK zone boxes that extend, then freeze when SL or TP2 is touched.
▎ HOW TO USE IT
— Treat the surviving zones as decision areas , not guarantees. A blue zone is a bullish order block; a slate zone is bearish. The ★ tag shows its grade at a glance.
— Wait for price to return into a zone. The engine only signals on a retest + reaction , so you are not chasing the initial impulse.
— Use the BUY / SELL pill's grade (e.g. ★★★★ 7.8/10) as a confidence read — higher grades reflect stronger displacement, volume and candle body.
— The TARGET ZONE and RISK ZONE boxes frame reward against risk before you commit. Entry, SL, TP1 and TP2 are all labelled with their R multiples.
— Grey zones are spent — they have already been mitigated and are kept only as context for prior structure.
— Combine with your own higher-timeframe bias; order blocks aligned with trend tend to be the cleaner reactions.
▎ KEY SETTINGS
— Engine: ATR length, structure pivot width, displacement break multiple, OB candle search depth, and bull/bear toggles.
— Filters: volume expansion on/off with baseline length and multiplier, minimum grade required to signal, and confirm-on-close to avoid intrabar repaint.
— Zones: show zones, max zones kept (4-6 recommended), extension length, fill transparency, ★ grade labels, keep-mitigated-grey toggle, and bull/bear colours.
— Signals & Risk: show BUY/SELL pills, draw TP/SL zone, stop buffer (× ATR), TP1 and TP2 R multiples, projection length, and max trade sets kept.
— Extras: optional zone-reader candle tinting and an optional VWAP + σ band.
▎ DASHBOARD
A compact panel (five positions, three text sizes) reports: current Bias , count of live Bullish and Bearish OBs, the Nearest zone level and its distance in %, the Strongest zone's grade and tier, the Last Mitigated zone, the Active Signal state, and running Signal and Trade W/L tallies. The W/L count is an illustrative record of how the historical construct resolved — not a performance promise.
▎ ALERTS
— OB Bullish Signal — fires on a bullish order-block retest + reaction.
— OB Bearish Signal — fires on a bearish order-block retest + reaction.
Both include ticker and interval in the message.
▎ NOTES
— Works on all timeframes and all assets ; ATR and volume baselines adapt automatically.
— Confirm On Bar Close evaluates detection, mitigation and signals on closed bars only, so confirmed signals do not repaint.
— Everything is toggleable — zones, grades, pills, trade boxes, candles, VWAP and dashboard — for a chart as clean or as detailed as you like.
— The volume filter self-disables on feeds without volume, so nothing breaks on those symbols.
For research and education only. This is not financial advice. No indicator can predict the future, and past behaviour never guarantees future results. Always do your own analysis and manage your own risk.
Made with passion by JackOfAllTrades ⚡ 指標

Market Structure Shift [JOAT]═══ MARKET STRUCTURE SHIFT ═══
A complete Smart Money Concepts structure engine that reads the market the way institutional flow moves it — mapping every swing and internal shift, tagging each break as BOS (continuation) or CHoCH (reversal), then layering liquidity, premium/discount context, and a structure-anchored risk plan on top. It turns raw price action into a clean, labelled map of who is in control and where the shift happens.
▎ WHAT IT DOES
MSS tracks confirmed pivots and runs them through a two-layer structure state machine. When price closes (or wicks) beyond a protective swing, it draws the break line, labels it BOS or CHoCH, and updates the live trend state. Around that skeleton it adds equal-high/low liquidity marks, a premium/discount/equilibrium range map, an optional structure-anchored SL and Reward:Risk target zone, session VWAP with deviation bands, and a live dashboard summarising the whole picture.
▎ HOW IT WORKS
• Confirmed pivots — swing highs/lows are detected with a symmetric pivot length (bars each side), so a pivot only prints once fully confirmed. A separate, shorter internal pivot length tracks a faster inner structure layer.
• BOS vs CHoCH logic — each layer holds a trend state (bull / bear / range). A bullish break of the last swing high while the state is already bullish is a BOS (continuation); a bullish break while the state was bearish is a CHoCH (change of character / first reversal). The mirror logic applies to bearish breaks.
• Break confirmation — you choose whether a candle must close beyond the level (cleaner) or whether any wick penetration counts.
• Sequence read — every new pivot is classified HH / LH / HL / LL (or EQ) so you can see the higher-high / lower-low rhythm at a glance.
• Liquidity (EQH/EQL) — two consecutive pivots landing within an ATR-scaled tolerance are marked as Equal Highs or Equal Lows — resting liquidity pools where stops cluster.
• Premium / Discount — the active swing range is split into a Premium (upper) zone, a neutral Equilibrium band around the midpoint, and a Discount (lower) zone, so you always know which half of the range price is trading in.
• Structure-anchored risk — on a fresh signal the stop is placed just beyond the swing that would invalidate the shift (plus an ATR buffer), or by a fixed ATR distance. Risk is floored and capped by ATR, and the target is projected at your Reward:Risk multiple.
• VWAP magnet — session-anchored VWAP with inner and outer standard-deviation bands acts as the fair-value reference the structure tends to rotate around.
• ATR normalisation — label spacing, liquidity tolerance and stop distances all scale with ATR, so the tool behaves consistently across assets and timeframes.
▎ HOW TO USE IT
• Read the trend state first: a CHoCH warns the prevailing structure has broken; a following BOS confirms the new leg. Trade with the higher-conviction swing layer and use internal breaks for earlier, finer entries.
• BUY / SELL labels fire on the events you enable (CHoCH, BOS, or both) from your chosen layer — treat them as a structure trigger, not a blind entry.
• Favour longs from the Discount zone and shorts from the Premium zone; the Equilibrium band is neutral / no-man's-land.
• EQH/EQL marks show where liquidity rests — price often sweeps these before a genuine shift, so use them as targets and as traps to avoid.
• When a signal prints, the RISK ZONE (entry→stop, red) and TARGET ZONE (entry→TP, green) boxes project the plan; the SL and TP lines carry exact price and R labels. The zones extend live, then freeze once TP, SL, or the time-out is reached.
• Use VWAP and its bands as confluence — a shift back through VWAP into the opposite σ band is a common rotation target.
▎ KEY SETTINGS
• Structure Engine — swing pivot length, optional internal layer + its length, close/wick break confirmation, ATR length.
• Signals — signal source (Swing / Internal / both) and whether labels fire on CHoCH, BOS, or both.
• Liquidity & Zones — toggle EQH/EQL, equal-level tolerance, premium/discount zones, equilibrium band width, and the floating price-zone tag.
• Risk Model — stop basis (Structure+Buffer or ATR Multiple), buffer/ATR distance, Reward:Risk multiple, min/max risk floors and caps, projection length, max drawn setups.
• VWAP — show VWAP, inner/outer σ multiples, deviation lookback.
• Visuals — swing/internal break display, pivot markers, zone candle colouring, draw limits, and the blue/violet colour scheme.
▎ DASHBOARD
A compact blue/violet panel reports live: overall Trend , the Last Event (Bull/Bear BOS or CHoCH), the current Swing Sequence (e.g. HH · HL), the Internal structure state, the active Price Zone , running BOS and CHoCH counts, Liquidity (EQH/EQL) count, the current Signal , and the symbol/timeframe. Position and text size are adjustable.
▎ ALERTS
Six alertconditions are provided: Bullish BOS, Bearish BOS, Bullish CHoCH, Bearish CHoCH, BUY Signal, and SELL Signal — each with a ready message carrying ticker and interval.
▎ NOTES
• Works on all timeframes and all assets — everything scales with ATR.
• Pivots are confirmed (they need bars to close each side), so structure marks are non-repainting once printed; the price-zone label and dashboard update live on the last bar as expected.
• Every visual layer has a toggle — turn off what you don't need for a clean chart.
• Signals never fire both directions on the same bar; a conflicting wide-range bar is dropped.
For research and education only. This is not financial advice. No indicator can predict the future, and past behaviour does not guarantee future results. Any labels, zones, or counts describe historical price action only. Always do your own analysis and manage your own risk.
Made with passion by JackOfAllTrades ⚡ 指標

Volume Map Volume Map is a volume profile that shows the price levels where trading activity was concentrated within the selected market range.
The indicator distributes historical candle volume across horizontal price rows and identifies three key reference levels:
🔴 Resistance — the upper boundary of the calculated balance area.
🟡 Balance — the price row with the highest calculated volume.
🟢 Support — the lower boundary of the calculated balance area.
The profile, levels, and information dashboard are all generated from one unified volume-distribution model. They are not separate indicators mechanically combined to create additional signals.
The horizontal profile displays the full volume distribution, the levels identify its key boundaries, and the dashboard translates the same calculations into a clear and accessible market context.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚙️ ORIGINAL CALCULATION METHOD
The main feature of this implementation is the way each candle’s volume is distributed across price rows.
A single candle may cross several price levels. Instead of adding the entire candle volume to every crossed row, Volume Map measures the actual overlap between the candle’s range and each price row.
The volume allocated to a specific row is proportional to:
the row’s overlap with the candle / the candle’s full range
For example, if a price row covers 20% of the candle’s full high-to-low range, that row receives approximately 20% of the candle’s volume.
This approach:
• preserves the candle’s total volume within the profile;
• avoids repeatedly counting the full candle volume at multiple price levels;
• provides a more precise approximation of how available OHLCV volume is distributed within the candle’s range.
When a candle has no measurable difference between its high and low, its volume is assigned to the row containing the closing price.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🟡 HOW BALANCE IS DETERMINED
Balance represents the price row with the highest calculated concentration of volume.
When several rows have the same maximum volume, the indicator calculates the volume-weighted centroid of the entire profile and selects the maximum-volume row located closest to that centroid.
This rule connects Balance to the broader volume distribution and avoids automatically selecting the first maximum found in the profile.
Balance can be viewed as a statistical reference for the area of value within the selected range.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔵 HOW THE BALANCE AREA IS FORMED
The Balance Zone Size setting determines what percentage of the profile’s total volume must be contained between Support and Resistance.
The default value is 68%.
The script searches for the narrowest continuous group of price rows that:
• contains the Balance row;
• includes at least the selected percentage of total volume;
• remains continuous between its lower and upper boundaries.
When two possible ranges have the same width, the script selects the one whose center is located closest to Balance.
The balance area does not have to be symmetrical. When more volume is concentrated above or below the Balance row, one side of the area may extend noticeably farther than the other.
This reflects the actual calculated volume distribution instead of artificially centering the boundaries around Balance.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎨 PROFILE COLOR LOGIC
The horizontal profile uses three visual states:
🔵 Blue rows — volume included in the calculated balance area.
⚫ Gray rows — volume located outside the balance area.
🟡 Yellow row — the Balance level.
The width of each row represents its calculated volume relative to the highest-volume row in the profile.
The wider the row, the greater the volume concentration at that price level within the analyzed range.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📍 KEY REFERENCE LEVELS
🟡 BALANCE
Balance is the row with the highest calculated volume in the profile.
It can be used as a statistical reference for the area of value and as a central point for evaluating the current price location.
🔴 RESISTANCE
Resistance is the upper boundary of the balance area.
This level does not mean that price must reverse. It identifies the price where the selected concentration of volume ends on the upper side of the profile.
🟢 SUPPORT
Support is the lower boundary of the balance area.
It is a statistical boundary of the calculated area of value, not a guaranteed support level.
The names Support and Resistance are used to make the profile easier to understand. Both levels are calculated from volume distribution rather than from:
• local highs and lows;
• moving averages;
• traditional pivot levels;
• trend lines.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔗 WHY THESE COMPONENTS ARE COMBINED IN ONE INDICATOR
Volume Map contains three connected components:
1. Horizontal profile
Displays the full calculated volume distribution across price levels.
2. Support, Balance, and Resistance levels
Identify the highest concentration of volume and the boundaries of the balance area.
3. Beginner Dashboard
Explains the current price location relative to the same calculated levels.
The dashboard does not calculate a separate trend, momentum, or trading signal.
Every value displayed in the dashboard is derived directly from:
• the current price;
• Balance;
• Support;
• Resistance.
The purpose of combining these components is to make one volume-distribution calculation useful both for experienced volume-profile users and for traders who prefer a simpler and clearer summary.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🧭 BEGINNER DASHBOARD
Market
Shows whether the current price is above or below Balance.
🟢 Above — price is above Balance.
🔴 Below — price is below Balance.
This describes the location of price. It is not a prediction of future upward or downward movement.
Price
Shows the current price location relative to the entire balance area.
• Above map — price is above Resistance.
• Upper — price is between Balance and Resistance.
• Balance — price is at the Balance level.
• Lower — price is between Support and Balance.
• Below map — price is below Support.
Zone
Shows the nearest significant profile level while price remains inside the balance area:
🔴 Resistance
🟡 Balance
🟢 Support
When price is above Resistance or below Support, the dashboard displays Outside.
Tip
Provides a brief description of the current price location:
• Above resistance — price is above Resistance;
• Above balance — price is above Balance;
• At balance — price is at Balance;
• Below balance — price is below Balance;
• Below support — price is below Support.
The Tip row is descriptive only and does not represent a buy or sell signal.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🛠️ SETTINGS
Use Visible Range
When enabled, the script builds the profile from the chart range currently visible to the user.
Changing the chart scale or moving the visible range may change the calculated profile and levels.
When disabled, the script uses the fixed number of candles selected in Lookback Bars.
Lookback Bars
Defines the number of recent candles used in the calculation when Use Visible Range is disabled.
• A larger value includes more historical data.
• A smaller value makes the profile more responsive to recent price action.
Profile Detail
Controls the number of horizontal price rows.
• Higher values provide finer price resolution but require more calculations.
• Lower values produce a simpler and smoother profile.
Profile Bar Thickness
Controls the visual thickness of the horizontal rows.
This setting does not affect the calculations.
Profile Width
Controls the maximum horizontal width of the profile relative to the number of analyzed candles.
This setting affects presentation only.
Right Offset
Controls the distance between the latest candle and the profile.
Balance Zone Size
Defines the percentage of total profile volume that must be included between Support and Resistance.
• A higher value usually creates a wider balance area.
• A lower value creates a narrower balance area.
Volume Type
• Both — includes all qualifying candles.
• Bullish — includes candles whose closing price is greater than or equal to their opening price.
• Bearish — includes candles whose closing price is below their opening price.
Bullish and Bearish modes classify the entire volume of a candle according to the candle’s direction.
They do not represent actual buy and sell volume, bid/ask volume, order-flow delta, or the precise distribution of aggressive market orders.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📈 HOW TO USE THE INDICATOR
Start with the default settings and observe how price behaves around Balance, Support, and Resistance.
Price inside the balance area
When price is between Support and Resistance, the profile indicates that a significant share of the analyzed volume was concentrated within this range.
Balance can be used as a reference for analyzing:
• price rotation within the area of value;
• mean-reversion behavior;
• price reactions around the area of maximum volume concentration.
Price above Resistance or below Support
When price moves outside the balance area, traders can observe:
• whether price is being accepted outside the area;
• whether price remains outside the area of value;
• whether price returns toward Balance.
The profile may also help identify:
• high-volume areas that price may revisit repeatedly;
• low-volume transitions where less trading activity was previously concentrated;
• changes in the area of value when the profile is calculated over a different range;
• differences between short-term and long-term volume distributions.
Volume Map does not determine trend direction and does not generate predefined:
• entry points;
• exit points;
• stop-loss levels;
• profit targets.
The indicator can be used together with the trader’s own market-structure, trend-direction, and risk-management process.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔄 REAL-TIME BEHAVIOR
The profile is calculated in real time using the selected market range.
Its values may change when:
• the current candle’s high, low, or volume changes;
• a new candle enters the fixed calculation range;
• an older candle leaves the calculation range;
• the visible chart range changes;
• the timeframe, symbol, or settings are changed.
This recalculation is normal behavior for a volume profile based on a changing market range.
The script does not request future data and does not use lookahead calculations.
However, levels calculated using the active candle may continue to change until that candle closes.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚠️ LIMITATIONS
Volume Map uses the volume data supplied by TradingView’s chart data source.
Results may be less informative for instruments with:
• unavailable volume data;
• synthetic volume;
• incomplete volume data;
• decentralized volume.
The script estimates the distribution of volume within each candle using the candle’s high-to-low range.
Standard chart data does not contain the exact sequence of every transaction at each price level inside a historical candle.
The profile is therefore an approximation based on the available OHLCV data.
It is not an exchange-level profile calculated from every individual trade or tick.
Support, Balance, and Resistance describe the selected historical range. They do not guarantee a future price reaction and should not be treated as standalone trading instructions.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎓 IMPORTANT
Volume Map is designed for analytical and educational purposes.
The indicator does not constitute financial advice, does not promise a particular outcome, and does not replace independent analysis or risk management. 指標

指標
