Indicateur

Fib Grid Bias & BreakoutBuilds a supply/demand grid from the overnight session rather than from swing structure. The idea is that the 18:00–00:00 ET window is where the market sets its reference range for the next day — the levels that matter are the ones institutions established overnight, not the ones a swing detector happens to pick up.
The three phases.
Building — from 18:00 ET, the indicator tracks the running high and low of every bar in the window. The range expands as the night goes.
Freeze — at midnight ET the range locks. Those two prices become the anchor for the whole next session.
Hold — through the following day, the frozen range is projected forward as a level grid.
Weekends. Friday 18:00 through Sunday 18:00 the grid stays blank. Carrying Friday's levels into a Sunday open is worse than having none — the gap invalidates them.
Thin-range padding. If the overnight range is too narrow to be useful (a quiet holiday session, say), the indicator pads it symmetrically to a minimum span around the midpoint. This keeps the grid from collapsing into a single line.
Reload robustness. If you load the chart mid-session — after the freeze has already happened — the indicator scans back through history to recover the overnight range instead of falling back to swing levels. Without this, a reload during the day would silently give you a different grid than the one you had open overnight.
Reading the row. The status line tells you which state you're in: Building, Frozen, or blank (weekend). If it says Frozen and the levels sit near the overnight range, it's working.
Example for students
Scenario. It's 18:00 ET on a Tuesday. ES is trading at some price P.
18:00–00:00 — Building. Price drifts between P − 8 and P + 11. The indicator's running high is P + 11, running low is P − 8. The row reads Building.
00:00 — Freeze. The range locks at P − 8 / P + 11. A 19-point range. The row flips to Frozen.
Wednesday session — Hold. The grid projects P − 8 and P + 11 forward. Price opens at P − 2, rallies to P + 9 — stalls just under the frozen high. That stall is the tradeable information: the overnight high is acting as resistance.
Why this beats a swing detector. A swing-based indicator would have drawn resistance at whatever the last local peak happened to be — maybe P + 6, maybe P + 14, depending on the lookback. The overnight anchor gives you one specific, non-arbitrary number that every participant watching the same session can see. That's what makes it a level rather than a line.
The teaching point. Levels aren't magic prices — they're places where a shared reference exists. The overnight range is shared because everyone watched the same window. That's the whole thesis. Indicateur

Colored TMA Trend Signals [josseliani]This is a very simple indicator for beginners in trading, based on the popular Triangular Moving Average.
I wanted to keep it simple: minimal settings, clear visuals, and easy-to-understand trade logic.
TMA color-change signals are popular, but there is one thing I wanted to improve. Sometimes, by the time TMA changes direction, price has already moved quite far away from the average. The turn is there, but entering is already uncomfortable: price is stretched, and the potential stop becomes too large.
So I added a simple candle-close confirmation engine instead of using every color change as an entry.
→ THE TMA
TMA is a Triangular Moving Average, calculated here using two consecutive simple moving averages of the same length.
Green → TMA is rising.
Red → TMA is falling.
A basic standard-deviation channel surrounds it. Optional EMA smoothing can be applied to the price source.
Small triangles mark confirmed changes between rising and falling TMA direction. They show the turn itself; BUY/SELL uses a separate confirmation.
→ BUY/SELL CONFIRMATION
For BUY, the indicator counts consecutive candle closes above the selected level. For SELL, it counts consecutive closes below it.
The default is three candles, with TMA as the confirmation level.
You can also select Bands:
• BUY → closes above the upper band.
• SELL → closes below the lower band.
Each close is compared with the level calculated on that candle.
The important detail is that the candle counters run independently of the TMA color change.
Confirmation is checked exactly on the selected Nth close — the third close by default. If the direction and signal-limit conditions do not allow a signal then, that confirmation is not reused on later candles.
The sequence must reset and form again.
For example, if price has already closed above TMA for more than three consecutive candles before TMA turns green, the earlier confirmation is not reused. Price must first close at or below TMA, then form three consecutive closes above it again.
If TMA turns green on the third close, BUY can appear together with the triangle. SELL follows the same logic in the opposite direction.
This was my simple way of skipping some entries where the move had already started before TMA turned. The script does not measure the distance from price to TMA, so a fresh confirmation can still appear far from the average.
→ ONE SIGNAL PER COLOR
With the default settings:
• A confirmed turn to green unlocks one BUY and blocks SELL.
• A confirmed turn to red unlocks one SELL and blocks BUY.
The first eligible confirmation produces the signal.
After BUY, another BUY is blocked until TMA turns red and then green again. After SELL, another SELL is blocked until it turns green and then red again.
A color section can also have no signal if the conditions are not met.
Disabling One Trade Per Color allows further signals after new confirmation sequences form. Its directional restrictions remain active while it is enabled, even if Only With TMA Trend is disabled.
→ HOW I USE IT
For me, the small triangle is simply information: TMA has changed direction.
BUY/SELL is a separate trade signal.
I made this mainly for people who are just starting to work with the market and do not want to immediately dive into complicated strategies and lots of settings.
It is basically ordinary trading with a moving average, just visualized a little more conveniently.
You can leave the default settings and watch the TMA direction and the confirmed BUY/SELL signals.
This is not a complete trading system. The trader still decides whether an entry makes sense at the current price and determines the stop, target, position size and risk management.
→ INPUTS
• Half Length → TMA smoothing length. Default: 12. The double-SMA calculation has an effective length of 2 × Half Length − 1, or 23 by default.
• Price Source → selects the calculation price. The default Weighted Price is (High + Low + 2 × Close) / 4.
• Band Deviation → standard-deviation multiplier controlling channel width. Default: 2.0. Standard deviation uses the selected source and the effective TMA length.
• Use Source Smoothing → optional EMA smoothing before calculating TMA and the channel. Disabled by default.
• Smoothing Period → optional EMA length. Default: 12.
• Show Bands → shows or hides the channel.
• Show TMA Color-Change Signals → shows or hides the triangles without disabling their alerts.
• TMA Line Width → adjusts line thickness.
• Show BUY/SELL Labels → shows or hides trade labels without disabling trade calculations or alerts.
• Break Level → selects TMA or Bands for confirmation.
• Confirm Bars → required consecutive closes, from 1 to 10. Default: 3. Confirmation is checked exactly on the selected Nth close.
• Only With TMA Trend → allows BUY only while TMA is rising and SELL only while it is falling. Enabled by default.
• One Trade Per Color → applies the directional signal limits explained above. Enabled by default.
Label spacing uses ATR and the candle range. It is only visual and does not change the signal candle or trading logic.
→ WHAT I ADDED AND WHY
TMA and standard-deviation bands are established calculations. My addition is the confirmation and signal-handling logic around them:
• Separate markers for TMA turns and BUY/SELL confirmations.
• Candle-close counters independent of color changes.
• Confirmation checked on the exact Nth close, without reusing a blocked confirmation later.
• One eligible signal per matching color turn.
• A choice of TMA or bands as confirmation levels.
• Separate alerts independent of marker visibility.
The purpose is to distinguish a moving-average turn from a confirmed price sequence while keeping the visual presentation and trading logic simple.
→ ALERTS
• TMA Bullish Color Change
• TMA Bearish Color Change
• Any TMA Color Change
• Trade Long
• Trade Short
• Any Trade Signal
All signal conditions require a closed candle. Select Once Per Bar Close when creating alerts.
→ CONFIRMATION AND LIMITATIONS
Triangles and BUY/SELL signals appear on the confirmation candle after it closes. They are not shifted into the past. The first established TMA direction does not produce a turn triangle, and unchanged TMA values preserve the last direction for turn detection.
The line, its color and the channel can change while the current candle is open. The calculation uses no future bars or higher-timeframe requests.
TMA and candle confirmation introduce delay. Signals can arrive late, sideways markets can produce unsuccessful signals, and a sequence reset does not guarantee an entry close to TMA.
Use standard time-based candles. This is an indicator, not a backtested strategy; it does not calculate trade results or a verified win rate.
Indicateur

QRB - Quarterly Break RangeQRB — Quarterly Break Range is a market-structure indicator designed to help traders visualize how price interacts with the previous quarter’s range.
At the beginning of each new calendar quarter, QRB automatically identifies the completed previous quarter’s:
High
Low
50% midpoint
Those three levels are then projected across the current quarter, creating a simple structural map for price.
The indicator automatically updates when a new quarter begins, so there is no need to manually redraw the levels.
The Idea Behind QRB
The concept behind QRB comes from a simple observation:
Markets often react to important historical ranges.
Intraday traders commonly use concepts such as the Opening Range, previous-day high and low, session ranges, and other reference levels to understand where price is accepting, rejecting, or breaking away from prior value.
QRB applies that same thought process to a much larger timeframe.
Instead of asking:
“Where is price relative to today's opening range?”
QRB asks:
“Where is price relative to the previous quarter?”
The previous quarter becomes the reference range, while the current quarter shows how the market responds to that range.
This allows traders to study quarterly price behavior using only three objective levels.
Understanding the Three Levels
Previous Quarter High
The previous-quarter high represents the upper boundary of the completed quarterly range.
When price approaches this level, traders may watch for:
Rejection
Consolidation
Breakout attempts
Acceptance above the range
Retests after a breakout
A sustained move above the previous-quarter high may indicate that the market is beginning to expand beyond the prior quarter's range.
Previous Quarter Midpoint
The midpoint is calculated as:
(Previous Quarter High + Previous Quarter Low) ÷ 2
This represents the 50% level of the previous quarter's range.
The midpoint can be useful as a simple measure of where price is trading relative to the prior quarter.
Price holding above the midpoint places it in the upper half of the previous quarter's range.
Price holding below the midpoint places it in the lower half.
The midpoint may also act as an important area of balance, support, resistance, or transition.
Previous Quarter Low
The previous-quarter low represents the lower boundary of the completed quarterly range.
When price approaches this area, traders may watch for:
Support
Rejection
Consolidation
Breakdown attempts
Acceptance below the range
Retests following a breakdown
A sustained move below the previous-quarter low may indicate that the market is expanding beneath the previous quarter's range.
How to Use QRB
QRB is primarily designed as a market-structure framework, not a standalone buy or sell signal.
The three quarterly levels can help answer a few simple questions:
Where is price?
Above the previous quarter
Inside the previous quarter
Below the previous quarter
Which half of the prior range is price occupying?
Above the midpoint
Below the midpoint
How is price reacting to the boundaries?
Breaking
Rejecting
Retesting
Consolidating
Accepting beyond the range
That information can then be combined with a trader's existing approach to trend, momentum, price action, support and resistance, volume, or other forms of confirmation.
Example Market Behaviors
One possible bullish sequence could look like:
Previous-quarter high is tested
→ Price breaks above it
→ Price remains above the level
→ The level is retested
→ Buyers continue pushing price higher
A possible bearish sequence could look like:
Previous-quarter midpoint fails
→ Price moves into the lower half of the range
→ Previous-quarter low breaks
→ Price remains below the range
→ Selling pressure continues
Another possible scenario is simple rejection:
Price reaches the previous-quarter high
→ Fails to gain acceptance above it
→ Moves back inside the range
→ Rotates toward the midpoint
QRB does not attempt to predict which scenario will occur.
It simply provides the structural levels needed to observe what price actually does.
Why Quarterly Ranges?
Calendar quarters are natural market periods.
Each quarter contains roughly three months of price discovery and can represent a significant amount of accumulated positioning and market activity.
Rather than treating each daily candle independently, QRB allows traders to step back and see price within a broader structural framework.
The previous quarter essentially becomes a large reference range.
The current quarter then answers the question:
Will price remain inside that range, reject its boundaries, or expand beyond it?
That is the central idea behind QRB.
Best Use
QRB was designed primarily for higher-timeframe analysis, especially the Daily chart.
It may be useful across different markets, including:
Stocks
Forex
Futures
Indices
Cryptocurrencies
Because different markets behave differently, traders should evaluate the concept independently on the instruments they trade.
Customization
QRB allows users to customize the appearance of each level, including:
Previous Quarter High color
Previous Quarter High thickness
Midpoint color
Midpoint thickness
Previous Quarter Low color
Previous Quarter Low thickness
This allows the quarterly structure to remain visible without overwhelming the chart.
The Philosophy Behind QRB
QRB is intentionally simple.
There are no complicated calculations, predictive algorithms, or large collections of indicators.
The purpose is to create a clean structural map and allow price action to provide the information.
The core idea is:
Previous quarter = reference range
Current quarter = reaction to that range
From there, the trader observes whether price accepts, rejects, breaks, retests, or rotates around those levels.
Sometimes three well-defined levels can tell you more about market structure than twenty indicators ever could. Indicateur

Gold M15 Signal Engine with H4 Trend FilterWHAT THIS SCRIPT DOES
This indicator detects intraday entry setups on the 15-minute chart and attaches a complete, pre-calculated trade frame to each one: an entry, a stop-loss, and three targets. It then tracks that setup bar by bar and reports what actually happened to it — which target was reached, whether the stop was hit, and when the setup has gone stale.
It was built and tuned for gold (XAU/USD) on the 15-minute timeframe. The script deliberately refuses to run on any other timeframe.
WHY IT IS DIFFERENT FROM A STANDARD SIGNAL SCRIPT
Most published signal scripts stop at the arrow. They mark an entry and leave the trader to guess the rest. Three design choices separate this one:
1. Every signal ships with its own risk frame.
The stop-loss is derived from the structural level that produced the signal, not from a fixed pip distance, and it is then capped by a percentage-of-price ceiling so a single wide candle cannot create an unreasonable stop. The first target is ATR-based. The second target prefers a real support or resistance level detected on the chart, and only falls back to an ATR multiple when no suitable level exists. This means targets sit where price is actually likely to react, not at arbitrary distances.
2. The higher timeframe has a veto.
A 4-hour EMA200 trend filter gates every signal. A long is only permitted when the 4-hour close is above its own EMA200, and a short only when it is below. This removes the most common failure mode of intraday signal scripts — firing counter-trend entries during a strong higher-timeframe move. The filter can be switched off in the settings.
3. Signals report their own outcome.
Once a signal is active the script follows it: it marks the bar where each target was reached, automatically moves the displayed stop to breakeven after the first target and to the first target after the second, and hides the setup once the stop is hit. Setups that neither complete nor fail within a configurable number of bars are marked as expired rather than being left on the chart indefinitely.
HOW THE SIGNAL ENGINE WORKS
Three independent detection paths can produce a signal. All of them must additionally pass the RSI gate, the higher-timeframe filter, and a cooldown period.
EMA pullback. In an aligned trend (EMA20 above EMA50 and price above EMA200 for longs, inverted for shorts), price wicks into the EMA20 and closes back on the trend side of it. The candle must close in the outer 55% of its own range, which filters out indecisive bars.
Support and resistance reaction. Price tests a detected level within a 0.15% tolerance and closes back on the correct side of it with the same candle-strength requirement.
N-bar breakout. Price closes beyond the highest high or lowest low of the previous N bars with a directional close.
Support and resistance levels are built from confirmed pivot highs and lows. A minimum-gap rule prevents clustered levels from stacking on top of each other, and the number of active levels on each side is capped.
RSI gate. The pullback path requires RSI between 35 and 65 — it avoids entries that are already stretched. The reaction and breakout paths use wider one-sided bounds appropriate to their context.
Cooldown. A minimum number of bars must pass between signals, and a new signal in the same direction is blocked while an earlier one is still running.
READING THE PANEL
The panel in the top-right corner shows the direction of the active signal, its entry, the current stop, all three targets, the bar the signal was created on, its live status, and the current 4-hour trend state.
The status line progresses through: active, then first target reached with the stop moved to entry, then second target reached with the stop moved to the first target, then complete. If the stop is hit the panel is removed and the bar is marked on the chart.
SETTINGS
Moving averages — lengths for the three EMAs.
Support / resistance — pivot lookback, how many levels to keep on each side, and the minimum percentage gap between them.
Signal engine — RSI length, cooldown bars, breakout lookback, and how many bars before a setup is marked expired.
Targets and stop — ATR length, the three ATR multipliers, and the maximum stop size as a percentage of price.
Higher-timeframe filter — enable or disable the 4-hour trend veto.
LIMITATIONS - PLEASE READ
It runs on the 15-minute timeframe only. On any other timeframe the script draws a warning and produces nothing. The thresholds were tuned for 15-minute gold behaviour and do not transfer.
It was tuned on gold. The tolerance values, ATR multipliers and RSI bounds reflect how XAU/USD moves. On other instruments the defaults will need adjustment and the results may differ substantially.
Signals are evaluated on confirmed bars only. Nothing is drawn or evaluated from an unclosed bar, so the script does not repaint — but this also means a signal appears at the close of its bar, not during it.
The 4-hour filter uses the last closed 4-hour bar. The higher-timeframe request uses lookahead_off, so no future data is used. The consequence is that within a forming 4-hour bar the filter reflects the previous one.
Target and stop levels are calculated at the moment the signal fires and are not recalculated afterwards. If volatility changes materially after entry, the levels do not adapt.
The stop and target tracking uses bar high and low values. When both the stop and a target fall inside the same bar's range, the script resolves the stop first. Real intrabar sequence may have differed.
It does not know about scheduled news. Economic releases routinely produce moves that invalidate technical setups. The script has no awareness of the economic calendar.
This is an analysis tool, not a trading system. It does not account for spread, commission, slippage or position sizing, and no historical behaviour implies future results.
ON PERFORMANCE CLAIMS
This publication makes no claim about win rate, accuracy or profitability, because no such claim can be substantiated for future market conditions. What the script does is make each setup's assumptions explicit and visible so you can evaluate them yourself.
ORIGINALITY
The three detection paths use well-known building blocks — EMAs, RSI, ATR, pivot-based levels. The original work is in how they are combined: a structural stop bounded by a percentage ceiling, a second target that prefers real chart levels over a fixed multiple, a higher-timeframe veto applied uniformly across all three detection paths, and a per-signal outcome tracker with automatic stop progression and expiry. The code is entirely original and is published open-source so every one of these mechanics can be inspected and modified. Indicateur

Reaction Path [BullByte]Reaction Path is a price-action, pressure, volatility, and trade-geometry indicator designed to organize two different market behaviours into one integrated framework:
1. Reaction: price has displaced away from its current Fair Price area and the recent candle behaviour shows conditions consistent with a possible response back toward the opposing side.
2. Continuation: price is positioned beyond the Fair Price area while pressure is migrating in the same direction, recent movement is efficient enough to qualify as directional, and the current bar shows sufficient expansion and participation.
The purpose of Reaction Path is not to predict the future or guarantee a reversal or continuation. It is designed to help traders distinguish between changing pressure, developing movement, established directional travel, exhaustion, and neutral conditions.
The indicator combines several complementary measurements rather than relying on a conventional overbought/oversold oscillator.
The main components are:
A wick-weighted Fair Price calculation.
An adaptive Reaction Band around Fair Price.
A Pressure Centre based on where price closes within its recent ranges.
Pressure Migration to measure how that pressure balance is changing.
Market-state classification including EXHAUSTION , SHIFT , BUILDING , TRAVEL , MOVING UP , MOVING DOWN , and NEUTRAL .
Reaction and Continuation signal qualification.
Trend Efficiency as a directional regime filter for continuation conditions.
Candle-character analysis using body efficiency, wick relationships, range speed, directional dominance, depth, and volume behaviour.
Spike and immediate post- spike filtering .
Adaptive Failure Memory that becomes more selective after setup invalidations.
ATR-based Path Level 1, Path Level 2, and invalidation geometry.
A Projected Path corridor for visualizing the current route from entry toward Path Level 2.
A compact dashboard showing market state, path direction, Fair Price location, and active setup levels.
Historical setup visualization for reviewing completed setups.
Bar-close alert events for new signals, target completion, and invalidation.
Reaction Path is intended as an analytical framework. The signals and plotted levels are references for decision-making and should be evaluated together with the actual market context, instrument behaviour, liquidity, execution conditions, and the trader's own risk process.
---
ORIGINALITY - WHY THIS IS NOT A MASHUP
Reaction Path is built as a single integrated behavioural engine rather than a collection of unrelated indicators placed together.
The individual measurements are not displayed as independent conventional indicators which are combined with arbitrary voting rules.
Instead, the engine builds a connected chain:
Fair Price
Price displacement from Fair Price
Pressure Centre
Pressure Migration
Market state
Candle character
Trend efficiency
Signal qualification
Trade geometry
Setup lifecycle
Failure Memory
Each stage contributes information to the stages that follow it.
Fair Price establishes the current reference area.
Pressure Centre measures where recent closes are occurring within their candle ranges.
Migration measures whether that pressure balance is moving.
Market-state logic classifies the behaviour of that migration.
Reaction and Continuation conditions then use several independent characteristics of price behaviour before a setup is created.
Failure Memory adds another layer by recording the characteristics surrounding an invalidated setup and making subsequent qualification more selective when sufficiently similar conditions reappear.
This structure is what makes the indicator an integrated system rather than a simple mashup of unrelated calculations.
---
PURPOSE OF THE INDICATOR
Markets do not move in only one way.
Sometimes price stretches away from its current area of accepted value and begins to show rejection.
Sometimes price moves away from that area and continues because pressure remains aligned with the direction of travel.
Sometimes a large candle creates apparent momentum but is primarily wick and produces little decisive progress.
Sometimes pressure begins changing before a visible directional move becomes established.
Reaction Path is designed to separate these situations.
The central question is not simply:
"Is price going up or down?"
Instead, the framework asks:
Where is price relative to its current Fair Price area?
Is recent closing pressure migrating?
Is that migration strengthening, weakening, shifting, or reaching an extreme?
Is the recent movement efficient or highly rotational?
Is the current bar expanding relative to recent activity?
Are wicks and candle bodies supporting the intended behaviour?
Is volume informative on the current symbol?
Has a similar setup recently failed?
Has the current setup reached Path Level 1, Path Level 2, or its invalidation reference?
---
WHY THESE SPECIFIC MECHANICS
FAIR PRICE
Fair Price is calculated from a custom typical-price measure:
(high + low + 2 x close) / 4
The calculation is weighted according to candle body efficiency.
Candles with a smaller body relative to their total range receive greater weight. This gives more influence to candles that spent more of their range away from their decisive body.
The result is a rolling reference value intended to represent the recent area around which price has been behaving.
An adaptive deviation value is calculated from the same weighted observations.
Together they create:
Fair Price
Fair Price Upper
Fair Price Lower
This gives the indicator a dynamic reference zone rather than relying on a fixed percentage distance.
REACTION BAND
The Reaction Band visualizes the Fair Price area as three nested bands.
The inner and outer areas represent progressively wider deviations around the current Fair Price.
The band therefore provides context for whether price is:
Inside the current fair area.
Moving toward an edge.
Beyond the upper region.
Beyond the lower region.
The band color also reflects the current pressure/state classification.
PRESSURE CENTRE
The Pressure Centre does not ask whether a candle is simply green or red.
Instead, it examines where the close occurred inside the candle's own high-low range.
A close near the high represents stronger upward closing pressure for that candle.
A close near the low represents stronger downward closing pressure.
The measurement is averaged over a rolling window and weighted using the same candle-character concept used by Fair Price.
This produces a smoother representation of recent closing-pressure behaviour.
PRESSURE MIGRATION
Pressure Migration measures how much the Pressure Centre has changed between two points in time.
A positive migration indicates that the recent closing-pressure balance has shifted upward.
A negative migration indicates that it has shifted downward.
The engine then evaluates the magnitude and context of this migration instead of treating every zero crossing as a signal.
This is important because very small changes around an inflection point can alternate direction without representing meaningful behavioural change.
---
MARKET STATES
REACTION PATH classifies the current market into several behavioural states.
EXHAUSTION
Pressure has reached an extreme zone.
This does not automatically mean that price must reverse.
It means the Pressure Centre has reached one of the defined extreme regions used by the engine.
SHIFT
A meaningful migration transition has occurred across the configured stall threshold.
The purpose is to identify a stronger change in pressure rather than reacting to a minor zero-line fluctuation.
BUILDING
Pressure is moving in the upward direction and is approaching or has reached the internal building region.
MOVING UP
Upward pressure migration has become sufficiently strong to qualify as upward movement outside the building state.
MOVING DOWN
Downward pressure migration has become sufficiently strong to qualify as downward movement.
TRAVEL
Directional continuation conditions are active while price is positioned on the corresponding side of Fair Price.
NEUTRAL
None of the above behavioural classifications currently has priority.
---
WHAT MAKES A REACTION SIGNAL
A Reaction signal is not generated simply because price is above or below Fair Price.
For a long Reaction setup, the engine looks for a combination of conditions including:
Price displacement sufficiently below Fair Price.
Recent directional efficiency supporting the intended reaction.
Sufficient directional dominance.
A stronger lower-wick response than the opposing wick.
Adequate recent range speed.
Sufficient volume participation when volume is informative.
Sufficient recent depth below Fair Price.
Absence of a qualifying spike or immediate post-spike retracement condition.
The short Reaction condition is the mirrored structure.
The important concept is that displacement alone is not enough.
The engine looks for displacement together with evidence that recent candle behaviour is producing a meaningful response.
---
WHAT MAKES A CONTINUATION SIGNAL
Continuation setups use a different logic.
A long Continuation setup requires price to be positioned above the Fair Price region together with:
A qualifying expansion bar.
Limited opposing wick behaviour.
Sufficient candle efficiency.
Adequate range speed.
Sufficient volume participation when volume is informative.
Positive trend direction.
Adequate trend efficiency.
A normal bar rather than a qualifying spike condition.
Short Continuation setups use the corresponding bearish structure.
Two consecutive closes outside the Fair Price band are recognized as acceptance by the state engine. A Continuation signal itself does not universally require two consecutive closes; the current bar can qualify when the other continuation conditions are satisfied.
---
EXPANSION LOGIC
A continuation setup requires more than simply producing the largest candle of a recent window.
The current range must satisfy both:
1. It must be at least as large as the previous recent maximum range.
2. It must also exceed an ATR-based expansion floor.
This prevents a relatively large candle inside a very quiet environment from being treated as meaningful expansion solely because it happens to be the largest recent candle.
ATR is therefore used as a volatility scale and also as part of the expansion qualification.ATR is not used as a standalone directional signal.
---
CANDLE CHARACTER AND QUALITY FILTERS
Reaction Path evaluates several aspects of recent candle behaviour.
BODY EFFICIENCY
Measures the body relative to the full candle range.
Higher efficiency means more of the candle's movement occurred through the body rather than through wicks.
WICK BALANCE
Compares upper and lower wick behaviour to determine whether the candle is showing rejection characteristics or cleaner directional movement.
RANGE SPEED
Compares the current range with recent average range behaviour.
VOLUME RATIO
Compares current volume with its recent baseline when the symbol provides meaningful volume information.
On symbols where volume is flat, missing, or otherwise uninformative, the engine avoids pretending that volume provides meaningful confirmation and uses a neutral treatment instead.
DEPTH
Measures how far recent price movement has extended beyond the Fair Price reference.
DIRECTIONAL DOMINANCE
Measures how much of the recent short window has been directionally aligned with the candidate setup.These dimensions are evaluated together rather than allowing one measurement to create a setup by itself.
---
SPIKE FILTER
Large candles are not automatically treated as strong momentum.
Reaction Path identifies oversized, low-efficiency bars where a substantial portion of the range is wick rather than decisive body movement.
Signal generation is withheld during such qualifying spike conditions.
The engine also checks the bar immediately following a qualifying spike. If that next bar is simply retracing inside the previous spike's range, it is also treated as a lower-quality setup environment.
The goal is to avoid treating every unusually large candle as meaningful directional expansion.
---
FAILURE MEMORY
Reaction Path includes an adaptive Failure Memory system.
When an active setup reaches its invalidation boundary before reaching Path Level 2, the engine records characteristics of the failed environment, including elements such as:
Direction.
Signal family.
Displacement.
Pressure Migration.
Directional efficiency.
Speed.
Depth.
Volume behaviour.
Pressure state.
Range relative to ATR.
The system then uses two related forms of adaptation.
GLOBAL FAILURE TIGHTENING
After consecutive invalidations, the qualification requirements become progressively more selective, with the escalation capped by the internal maximum failure count.
This means repeated failed conditions do not simply produce an unlimited stream of identical setups.
SIMILARITY-BASED MEMORY
The current environment can also be compared with the recorded failed environment.
A sufficiently similar setup can be blocked when it belongs to the same relevant signal family and direction.
A failed Reaction therefore weighs most strongly against a highly similar subsequent Reaction attempt, while the global failure tightening can still affect other qualifying setups.
Failure Memory uses two independent lifecycles. The direction and similarity block can clear when the market behaviour resets or the memory window expires, allowing a genuinely changed market environment to qualify again. The consecutive-failure count follows a separate lifecycle and is cleared when Path Level 2 is reached or when its own time-based expiry occurs. This allows the system to remember a losing sequence without permanently blocking a direction.
This is a behavioural filter, not a guarantee that future similar setups will fail.
---
SETUP SENSITIVITY
The Setup Sensitivity input provides a single control for the overall selectivity of the engine.
Adjusts the overall qualification balance. Lower values tighten distance and expansion requirements while relaxing several quality thresholds; higher values do the opposite. Use this control to adapt overall setup selectivity.
The thresholds are coupled rather than exposing every individual internal gate.
This is intentional.
Changing one isolated component independently could create an internal imbalance between distance, efficiency, speed, depth, volume, expansion, and trend requirements.The sensitivity control therefore moves these requirements together.
---
TRADE GEOMETRY
When a setup is created, Reaction Path establishes four primary reference levels:
ENTRY
The setup's entry reference is the signal-bar closing price.
PATH LEVEL 1
Path Level 1 is calculated from the setup entry using the configured ATR distance.
PATH LEVEL 2
Path Level 2 is the primary larger projected objective used by the setup geometry and is also calculated from the setup entry using ATR.
INVALIDATION
For Reaction setups, the invalidation boundary is derived beyond the relevant reaction extreme using the configured ATR distance.
For Continuation setups, the invalidation reference is the Fair Price value captured when the setup is created.
These are analytical reference levels.
They do not guarantee execution, fill price, stop execution, or trading outcomes.
---
PROJECTED PATH
The Projected Path is a visual corridor extending from the setup entry toward Path Level 2.
It is not a forecast.
It does not use future prices to calculate where the path should go.
Instead, the corridor is shaped using the confirmed setup and the current market-state information available after the setup has been created.
Its curvature responds to pressure migration and displacement.
Its width responds to the current state and field energy, allowing the visual route to become wider when the market environment is more uncertain and narrower when conditions are calmer.
Because the path can respond to subsequent confirmed market conditions, it should be read as a dynamic visual reference rather than a promised route taken by price.
---
PATH LEVEL EXTENSIONS
When a continuation setup remains active and another qualifying continuation condition appears in the same direction, Path Level 2 can be extended.
Extensions are limited by an internal maximum so that one continuously trending environment cannot expand the objective indefinitely.
The extension uses the configured Path Level 1 ATR distance as the incremental extension amount.
WHY THE REACTION FIELD EXISTS
The Reaction Field was created to solve a specific problem:
Price candles show what happened, but they do not always make the change in underlying closing pressure easy to read.
A market can move higher while its internal pressure is weakening.
A market can move lower while selling pressure is beginning to lose control.
A reversal can develop through several candles before the change becomes obvious from price alone.
Likewise, a strong-looking candle does not automatically mean that directional pressure is continuing. The candle may contain a large amount of wick, may occur inside a rotational market, or may simply be an isolated expansion.
Reaction Path therefore separates two ideas:
PRICE LOCATION : Where price is relative to the current Fair Price area.
PRESSURE MIGRATION : How the recent balance of closing pressure is changing.
The Reaction Field is the visual representation of that second component.
For every candle, the engine examines where the close occurred inside the candle's own high-low range.
A close near the high contributes stronger upward closing pressure.
A close near the low contributes stronger downward closing pressure.
Those observations are averaged over a rolling window using the same wick-weighting concept used by the Fair Price calculation.
The engine then compares the current Pressure Centre with an earlier Pressure Centre.
That difference is called Migration .
In simplified form:
Pressure Centre = weighted average of close location within recent candle ranges
Migration = Current Pressure Centre - Prior Pressure Centre
The Reaction Field plots this migration as a behavioural field.
This creates a visual layer that answers a different question from the price chart:
"Is control shifting, and in which direction?"
That is why the oscillator is not intended to behave like RSI, MACD, Stochastic, or a traditional overbought/oversold oscillator.
It is also not intended to be used as a standalone buy/sell trigger.
Its purpose is to provide continuous context around the discrete events identified by the main engine.
For example:
Price can be below Fair Price while pressure begins migrating upward.
Pressure can continue building before a full Reaction setup qualifies.
Migration can reverse direction across the configured stall threshold, creating a SHIFT condition.
Pressure can reach an extreme zone, producing an EXHAUSTION state.
Pressure can remain directionally aligned while price travels beyond Fair Price, supporting continuation context.
The oscillator therefore acts as the behavioural " state layer " between raw candles and the final setup qualification.
The candle chart shows the movement.
The Fair Price Band shows location.
The Reaction Field shows pressure migration.
The signal engine combines these and additional price, volume, speed, depth, efficiency, expansion, and trend conditions before creating a Reaction or Continuation setup.
This separation is intentional.
The Reaction Field is there to help the trader understand the condition that surrounds a signal, rather than simply displaying another indicator that generates an independent signal.
---
REACTION FIELD - HOW TO READ THE PANE
The lower Reaction Field is the indicator's dedicated analytical pane.
It is intentionally not designed as a conventional overbought/oversold oscillator.
The field visualizes the direction and magnitude of Pressure Migration.
REACTION SPINE
The main line represents the scaled migration value.
Positive territory indicates upward pressure migration.
Negative territory indicates downward pressure migration.
The distance from the centre gives additional visual context about migration magnitude.
REACTION FLOW
Reaction Flow is a scaled companion to the Reaction Spine.
It provides a secondary visual representation of the same migration field so smaller movements can be compared more easily.
REACTION CENTRE
The centre line provides the zero reference.
REACTION FIELD
The shaded field surrounds the Reaction Spine.
Its width responds to field energy, which reflects migration magnitude and range-speed behaviour.
REACTION TRANSITION
A small transition marker can appear when the engine identifies a SHIFT or EXHAUSTION condition.
The Reaction Field should therefore be interpreted as a pressure-behaviour visualization, not as an independent buy/sell oscillator.
---
DASHBOARD - WHAT EACH ROW MEANS
The on-chart dashboard summarizes the current state without requiring the trader to interpret every calculation separately.
MARKET STATE
Displays the current behavioural classification such as:
EXHAUSTION
SHIFT
BUILDING
TRAVEL
MOVING UP
MOVING DOWN
NEUTRAL
PATH
Shows whether the current pressure/path condition is:
UP OPEN
DOWN OPEN
WAIT
LOCATION
Shows where the current close sits relative to the Fair Price region:
ABOVE FAIR
BELOW FAIR
AT FAIR
ACTIVE SETUP
When a setup is active, the dashboard provides:
ENTRY
PATH LEVEL 1
PATH LEVEL 2
INVALIDATION
When no setup is active, the dashboard displays that no active setup is currently present.
The dashboard also displays the current symbol and chart timeframe.
---
VISUAL SETTINGS
SHOW HISTORICAL SETUPS
When enabled, completed setups remain visible so historical behaviour can be reviewed.
The number of retained completed setups is capped by the Maximum Historical Setups setting.
The current implementation allows up to 25 retained historical setups.
SHOW REACTION BAND
Displays the three nested Fair Price bands directly on the price chart.
SHOW PROJECTED PATH
Displays the dynamic corridor between the setup entry and Path Level 2.
This can be disabled when a cleaner chart is preferred.
SHOW DASHBOARD
Displays the current market-state and setup summary.
DASHBOARD SIZE
Available sizes:
Small
Medium
Large
DASHBOARD POSITION
Available positions:
Top Left
Top Right
Bottom Left
Bottom Right
---
INPUTS - GROUPED BY SETTINGS PANEL
ENGINE SENSITIVITY
Signal Mode
Reaction Only
Continuation Only
Both
This determines which signal family the engine is allowed to generate.
Setup Sensitivity
Controls overall selectivity.
Lower values allow more setups.
Higher values require stronger market behaviour.
TRADE GEOMETRY
Path Level 1
Defines the distance from the setup entry to Path Level 1 in ATR units.
Path Level 2
Defines the distance from the setup entry to Path Level 2 in ATR units.
Invalidation
Defines the invalidation distance used for Reaction setup geometry.
VISUAL SYSTEM
Show Historical Setups
Keeps completed setups visible for historical review.
Maximum Historical Setups
Controls the maximum number of completed setup drawings retained at once.
Show Reaction Band
Controls visibility of the Fair Price bands.
Show Projected Path
Controls visibility of the dynamic path corridor.
DASHBOARD
Show Dashboard
Controls dashboard visibility.
Dashboard Size
Controls dashboard text size.
Dashboard Position
Controls dashboard placement.
---
HOW TO USE REACTION PATH
A practical workflow is to begin with the market state rather than immediately reacting to an individual signal.
STEP 1 - CHECK LOCATION
Determine whether price is:
ABOVE FAIR
BELOW FAIR
AT FAIR
This establishes the current relationship between price and the Fair Price area.
STEP 2 - CHECK PRESSURE
Read the Reaction Field and Pressure Migration.
Look for whether pressure is:
Building.
Moving.
Shifting.
Reaching exhaustion.
Remaining neutral.
STEP 3 - IDENTIFY THE BEHAVIOUR
A Reaction condition and a Continuation condition represent different market behaviours.
Do not interpret every long condition as interchangeable with every other long condition.
Reaction setups are based on displacement and response characteristics.
Continuation setups are based on directional persistence, expansion, efficiency, and trend alignment.
STEP 4 - CHECK THE SETUP GEOMETRY
When a signal appears, review:
ENTRY
PATH LEVEL 1
PATH LEVEL 2
INVALIDATION
These levels provide the framework for evaluating the setup rather than requiring the trader to estimate distances visually.
STEP 5 - OBSERVE THE PROJECTED PATH
When enabled, use the Projected Path as a visual representation of the current route and uncertainty.
It is not a prediction.
STEP 6 - REVIEW FAILURE MEMORY
When the engine has recently experienced an invalidation, subsequent qualification may become more selective.
This can result in fewer signals during repeated similar conditions.
STEP 7 - APPLY YOUR OWN RISK PROCESS
The indicator provides analytical references.
Position size, leverage, execution, risk per trade, market selection, trading hours, and final trade decisions remain the responsibility of the trader.
---
RECOMMENDED TIMEFRAMES
Reaction Path can be applied to different chart timeframes, but it is particularly suited to intraday analysis where changes in candle behaviour, pressure migration, and directional expansion can be observed clearly.
As a practical starting point, traders may evaluate it on:
1 minute
3 minute
5 minute
15 minute
The appropriate timeframe depends on the instrument, liquidity, trading style, and desired holding period.
The same settings should not automatically be assumed to behave identically across every market or timeframe.
The indicator does not use multi-timeframe security requests, so its calculations are based on the selected chart's own data.
---
REAL-LIFE EXAMPLE - CONSOLIDATED
Consider a market trading below its current Fair Price area.
Price has recently displaced downward, but the recent candles begin showing stronger lower-wick response while upward closing pressure starts migrating.
The engine may classify the environment as BUILDING or SHIFT depending on the measured pressure transition.
If the remaining Reaction requirements are also satisfied, a REACTION LONG setup can be created.
The chart then provides:
ENTRY
PATH LEVEL 1
PATH LEVEL 2
INVALIDATION
The trader can now evaluate the situation using a defined reference structure rather than treating every tick as a new decision.
A different scenario can occur when price is already above Fair Price.
Suppose the market maintains positive pressure migration, the recent trend is efficient rather than highly rotational, the current range expands beyond its recent range window and the ATR expansion floor, opposing wick behaviour remains limited, and the other continuation requirements are satisfied.
The engine can then produce a CONTINUATION LONG setup.
If the market instead produces an oversized low-efficiency spike, the signal can be withheld.
If an existing setup becomes invalidated, Failure Memory records the characteristics of the environment and can make highly similar subsequent attempts more selective.
LIVE CHART EXAMPLE: REACTION LONG ON QQQ (15m)
Price spent an extended stretch below the lower edge of the wick-weighted Fair Price band, with the Reaction Field spine sitting in negative territory, a sign that recent candles had been closing nearer their lows than their highs, reflecting sustained downward closing pressure.
As price pushed further beneath Fair Price, the depth of that penetration cleared the engine's minimum requirement, and the bars driving it stayed clean of spike behaviour, sufficient range, volume, and body efficiency, without any oversized, low-quality wick bar in the mix.
On the signal candle itself, the lower wick grew clearly longer than the upper wick: a decisive rejection of the downside rather than an indecisive drift. At the same moment, the Pressure Centre had already begun migrating upward, flipping the Reaction Field spine from negative to positive on that identical bar.
It was this convergence, sufficient displacement and depth below Fair Price, a wick-confirmed rejection, and a same-bar pressure flip - that opened the gate for a Reaction Long setup, rather than any single condition acting alone.
LIVE CHART EXAMPLE - CONTINUATION LONG ON BTC/USDT (5m)
Price had already pushed above the fair-price band and, over the signal bar and the one immediately before it, closed above it both times- the engine's threshold for acceptance rather than a single overshoot. Over the same stretch, the broader move up from the earlier local low remained efficient enough to qualify as a genuine trend rather than rotational chop, and the Reaction Field spine was already migrating upward, meaning closing pressure was actively supporting the direction of the setup.
On the signal candle, range expanded beyond the recent local maximum and cleared the ATR-based expansion floor, while the upper wick stayed minimal and the body dominated the bar, a decisive, clean directional bar regardless of its color. It was these conditions holding together on that one bar- acceptance above fair, a qualifying expansion bar, clean wick geometry, and trend efficiency- that opened the gate for a Continuation Long setup, rather than any single measurement acting alone.
These examples describe how the engine behaves conceptually. They are not historical performance claims or guarantees of what price will do next.
---
ALERTS
Reaction Path provides alert events for the setup lifecycle.
NEW SIGNAL
Triggered when a new Reaction or Continuation setup is created.
TARGET REACHED
Triggered when the active setup reaches its Path Level 2 completion condition.
INVALIDATED
Triggered when the active setup reaches its invalidation condition.
Signal, target, and invalidation alerts are generated on confirmed bar events using once-per-bar-close alert frequency.
The alert message includes the chart symbol, timeframe, event type, signal type, and relevant price level.
Use TradingView's alert system to create the desired alert from the indicator.
---
CONFIRMATION, REPAINTING, AND DATA BEHAVIOUR
Current-bar signal decisions are restricted to confirmed bar data.
The indicator does not use request.security().
It does not use lookahead.
The signal lifecycle is therefore based on closed-bar confirmation rather than intrabar creation of a setup followed by later modification of that signal.
Some visual elements, such as live setup labels and dashboard presentation, may update while the current chart bar is forming.
Those visual updates do not create, close, or modify the confirmed signal decision.
The indicator is also intentionally disabled on non-standard chart types such as Heikin Ashi, Renko, Kagi, Point & Figure, and Range charts.
Use a standard chart type when evaluating the indicator.
---
LIMITATIONS
Reaction Path is an analytical indicator, not an automatic trading system.
No indicator can determine with certainty whether a market will reverse, continue, reach a target, or respect an invalidation level.
The calculations are sensitive to the characteristics of the selected instrument and timeframe.
Low-liquidity markets, unusual spreads, sudden news events, market gaps, abnormal volatility, and unreliable volume data can affect the behaviour of any price-based analytical model.
Volume-dependent qualification also depends on the quality of volume supplied by the symbol.
The Projected Path is a visual representation of the current confirmed setup and market state. It is not a future-price forecast.
Path Level 1, Path Level 2, and Invalidation are reference levels derived from the configured geometry and current market information. They do not represent guaranteed execution levels or guaranteed outcomes.
Historical setup drawings are provided for visual review and should not be interpreted as a verified backtest or performance record.
If Path Level 2 and Invalidation are both touched during the same bar, the script cannot determine the true intrabar sequence from OHLC data alone. It resolves this ambiguity conservatively by treating the setup as invalidated when both levels are touched on the same bar.
The indicator does not replace independent analysis, risk management, or execution planning.
---
IMPORTANT NOTES
For consistent interpretation:
Use standard chart types.
Evaluate signals on closed bars.
Understand the difference between Reaction and Continuation signals.
Treat the Fair Price area as a dynamic reference, not an absolute support or resistance level.
Read the Reaction Field as pressure migration rather than a traditional overbought/oversold oscillator.
Consider the dashboard as a summary of the engine state, not an independent signal source.
Treat Failure Memory as an adaptive qualification filter, not as a prediction of future failure.
Review Path Level 1, Path Level 2, and Invalidation together.
Do not assume identical behaviour across different symbols and timeframes.
Use your own risk and execution rules before acting on any setup.
---
DISCLAIMER
This indicator is provided for informational and educational purposes only and does not constitute financial, investment, trading, or other professional advice.
Trading financial markets involves substantial risk, including the possible loss of capital.
The signals, states, levels, visualizations, and alerts generated by Reaction Path are analytical references only. They do not guarantee market direction, execution, profitability, target achievement, or avoidance of losses.
Past market behaviour and historical setup visualization do not guarantee future results.
Users are responsible for their own trading decisions, risk management, position sizing, and execution. Indicateur

Delta Run ConfluenceDelta Run Confluence
Any bar can show net buying or net selling in its volume delta. This looks for the runs: several bars of the same flow that moved price the way flow should, with nothing pushing back.
That's what this indicator finds. It watches every bar for a run of one-sided delta, checks whether price responded to it, checks that the other side has gone quiet, and marks the bar where all three line up.
It's a confluence tool, not a standalone indicator. Here's the approach. Put it on your chart and keep trading your own setup. When a marked run shows up at a level you're already watching, you can start asking a real question: do reversals happen more often when a run lands there? Or do continuations? The chart shows you the runs and the table gives you the numbers, so you can work that out on your own symbol and timeframe.
🔸 Three checks, one bar
It runs three checks on estimated volume delta and only marks a bar when all three pass:
▪ 3-Bar Delta Run. Delta is estimated from lower-timeframe candles (1-second candles on a 1-minute chart, 1-minute candles up to 15 minutes), each one's volume signed by its direction. A run is three bars in a row with net delta on the same side, buying or selling. Three is the default and you can change it. It means one side kept pressing.
▪ Delta Efficiency. Take the run's price range and divide it by the delta behind it. Compare that with the last 100 bars. Above average, price moved more than it normally does for that much delta. Below average, price barely moved for it, which is what absorption looks like. You can look for either, or both.
▪ Isolation Test. No run the other way in the last 45 minutes. One-sided flow, not a tug-of-war.
Persistent, effective and uncontested, all on the same bar. When that happens the run is marked, green for buy-flow, red for sell-flow. That's the confluence.
Every threshold is a plain number you can turn up or down. Want only the cleanest runs? Widen the isolation window. Curious about absorption near session highs and lows? Set the efficiency filter to Absorbed.
🔶 WHAT YOU'LL SEE
▪ Marked runs take the flow colour. The rest of your chart stays as it is.
▪ A soft glow around the marked candles, so you spot them zoomed right out.
▪ A triangle under a buy-flow run, or over a sell-flow run, on the bar that completed it.
▪ Dots along the bottom count runs as they build. A faded stack is a run that didn't pass. A bright one-two-three staircase is one that did.
▪ Alerts for buy-flow and sell-flow runs.
🔶 THE TABLE
It tells you what marked runs did on the chart you have open right now:
▪ Marked runs ▲ / ▼ and how many per session.
▪ Avg run size · flow strength. How big the runs were in ticks, and how heavy their delta was compared with normal. Above one means heavier than usual.
▪ Next candle continued / reversed. What the very next candle did.
▪ Follow-through / pullback. Over the next five bars (adjustable), how far price ran with the flow and how far against it, in ticks.
▪ Delta source. Where the delta came from and how much of the chart had real lower-timeframe data.
▪ Last bar. So you know it's live.
Load it on the timeframe you actually trade. Look at the numbers. Then decide whether run confluence adds anything to your entries, long or short.
🔶 HOW IT'S BUILT
▪ Each lower-timeframe candle's volume takes the sign of that candle. If open equals close, the sign comes from the previous candle's close.
▪ Signed volumes are added up for each chart bar.
▪ 1-minute charts use 1-second data. Up to 15 minutes, 1-minute data. Above that, 5-minute data. Or pick a source manually.
▪ Bars with no lower-timeframe data fall back to candle direction times volume. The table tells you how much of the chart that applies to.
All three checks run on that one delta series. No second data source, no third-party code. Everything is evaluated on closed bars.
🔶 SETTINGS
▪ Run length. Default 3.
▪ Delta source timeframe. Auto, or fixed.
▪ Efficiency filter and baseline. Any, Efficient or Absorbed. Baseline default 100 bars.
▪ Require isolation and window. Default on, 45 minutes.
▪ Follow-through window. Default 5 bars.
▪ Palette. Green / Red by default. Already on green and red candles? Aurora (cyan and magenta) stands out more. Heat (yellow and orange) if you want something else.
▪ Dim all other candles. Off by default. Turn it on and the marked runs become the only colour on the chart.
▪ Glow and glow size. Sized in ATR multiples so it scales with volatility.
▪ Run dots. Marked runs only, completed runs, all run bars, or off.
▪ Table. On or off, corner, text size.
🔶 LIMITATIONS
▪ Delta comes from lower-timeframe candles, not bid and ask ticks. It won't match a footprint.
▪ Lower-timeframe history is limited. Older bars use the fallback, and that boundary moves
forward over time. Check the Delta source row before trusting long histories.
▪ Real-time intrabars can differ slightly from historical ones specifically after a refresh.
▪ No volume, no runs. Minute-based intraday charts only.
▪ The glow draws on recent runs only. Older runs keep their colours, markers and dots.
▪ The table is descriptive and in-sample. No costs, no backtest, and the numbers change with every symbol and timeframe.
🔶 SUMMARY
Three checks on estimated volume delta, marked on the chart at the bar where all three pass, with a live table showing what those runs did on your chart. Built as confluence for traders who want to know whether one-sided flow, buying or selling, is behind the setups they already take.
Indicateur

SATTAM | MarketMindSATTAM | MarketMind — a complete trading workspace in one overlay: a Heikin-Ashi trend engine, automatic targets and trailing stop, volume-weighted support and resistance, a multi-timeframe dashboard and a live economic calendar. Open source, with every key parameter exposed as an input.
HOW IT WORKS
MarketMind builds Heikin-Ashi candles internally and uses them to read the trend, then places every level on real price. The trend decision comes from a smoothed candle, so market noise flips it less often. Entries, targets and stops are measured on the price you actually trade.
Keep your chart on regular candles. The script calculates Heikin-Ashi itself, so switching the chart to Heikin-Ashi would smooth the data twice and distort the signals.
THE ENGINE
A SuperTrend calculated on Heikin-Ashi values with ATR(14), in three modes:
• MarketMind: uses the fast multiplier (default 3.0). The most responsive mode, with more signals and earlier flips.
• MarketMind + (default mode): uses the slow multiplier (default 4.0). Balanced, with one signal per trend leg.
• MarketMind + FILTER: the most selective mode. It signals only when price breaks the high or low of the last 120 bars in the trend direction, and never gives two signals in a row in the same direction.
Both multipliers and the breakout window can be changed in the settings.
FEATURES
① Signals : buy and sell triangles at trend flips, with optional price text.
② Confirmation signals ◆: continuation entries inside a running trend. They require a Heikin-Ashi candle with a strong body (at least 0.70 × ATR and 30% of its range) and a short tail against the move (no more than 25% of its range). The candle must be early in its colour run, and at least 6 bars must have passed since the previous confirmation.
③ Targets and stops : TP1, TP2 and TP3 default to 2, 4 and 6 × ATR, and the stop loss to 4 × ATR. A Golden Entry (GE) pullback level sits at 1 × ATR, and a trailing stop (TSL) follows the slow SuperTrend line. All multipliers are adjustable. Targets that get hit are marked ✓1, ✓2 and ✓3, and an optional box shows risk against reward.
④ Support and resistance with volume : pivot zones (10/10) with a height of 0.40 × ATR(50), up to 12 live zones at once. Each zone has a volume bar and a label. On resistance zones the label shows the selling share (for example "167.72K · 39% Sell"), and on support zones the buying share ("79.64K · 61% Buy"). The bar's length follows that share. Optional "$" markers show breaks.
⑤ Drawing tools : a MarketMind moving average (EMA 34), a linear-regression price channel (100 bars), Fibonacci levels (internal, external or both), and CHoCH and BoS structure breaks with internal (3) or external (15) pivots.
⑥ Trend candles : the whole candle (body, border and wick) is painted in your chosen trend colours.
⑦ Daily and weekly levels : previous day and previous week high and low, with optional daily and weekly dividers.
⑧ Next-candle probability : shows the expected range of the next candle.
⑨ Higher-timeframe candles : up to ten candles from any higher timeframe beside price, with an optional volume profile.
⑩ MarketMind dashboard : a table with the columns Frame, HTF, Gauge, Reading and Session. It shows trend direction on six timeframes (3m, 5m, 15m, 1h, 4h and D) plus short- and long-term averages, and FIB, VOL, RSI and $$$ readings. The four trading sessions (New York, London, Tokyo and Sydney) light up while they are open. An 8-point BULL / BEAR score with ▰▱ bars leads to a JUDGE verdict (SLIGHT, MODERATE or STRONG). There are two themes (Classic, and Dark for black backgrounds), five sizes and nine positions.
⑪ Live economic calendar : real Forex Factory events on the chart, for today or the whole week. It filters by impact (red and orange by default), supports a timezone offset, and can optionally show only the events for the symbol's currencies.
⑫ External data : blocks signals around high-impact news, adds a macro filter (DXY / US10Y), and can show a COT net-position row and a company fundamentals row (revenue, EPS, net income, debt/equity). All of these are off by default.
ALERTS
MarketMind Buy · MarketMind Sell · Confirm Buy · Confirm Sell. Each message includes the ticker and timeframe.
CREDITS
The economic calendar uses the open-source toodegrees Forex Factory libraries (MPL-2.0), with data from Pine Seeds.
This indicator is an analysis tool, not financial advice. Test any setting on your own market and timeframe before trading with it.
==============================================
SATTAM | MarketMind — أدوات تحليل كاملة في مؤشر واحد: محرّك اتجاه مبني على هايكن آشي، أهداف ووقف متحرّك يُحسبان تلقائياً، دعوم ومقاومات مع قراءة الفوليوم، لوحة لعدة أطر زمنية، وتقويم اقتصادي حيّ. مفتوح المصدر، وكل إعداداته الأساسية قابلة للتعديل.
كيف يعمل
يحسب ماركت مايند شموع هايكن آشي بنفسه ويقرأ منها الاتجاه، ثم يضع كل المستويات على السعر الحقيقي. قرار الاتجاه يأتي من شمعة مُنعَّمة، فلا يتقلّب مع كل حركة صغيرة في السوق. أما الدخول والأهداف والوقف فتُقاس على السعر الذي تتداول به فعلاً.
خلِّ الشارت على الشموع العادية. المؤشر يحسب هايكن آشي داخلياً، فلو غيّرت الشارت إلى هايكن آشي ستُنعَّم البيانات مرتين وتتشوّه الإشارات.
المحرّك
سوبرترند محسوب على قيم هايكن آشي مع ATR(14)، وله ثلاثة أوضاع:
• MarketMind: يستخدم المضاعف السريع (الافتراضي 3.0). أسرع الأوضاع، إشاراته أكثر وانقلاباته أبكر.
• MarketMind + (الوضع الافتراضي): يستخدم المضاعف البطيء (الافتراضي 4.0). متوازن، وفيه إشارة واحدة لكل موجة اتجاه.
• MarketMind + FILTER: أكثرها انتقائية. لا يعطي إشارة إلا إذا كسر السعر أعلى أو أدنى آخر 120 شمعة في اتجاه الترند، ولا يعطي إشارتين متتاليتين في نفس الاتجاه.
تقدر تغيّر المضاعفين وعدد شموع الكسر من الإعدادات.
المميّزات
① الإشارات: مثلثات شراء وبيع عند انقلاب الاتجاه، ويمكن إظهار السعر معها.
② إشارات التأكيد ◆: فرص دخول مع الاتجاه وهو مستمر. تحتاج شمعة هايكن آشي جسمها قوي (0.70 × ATR على الأقل، و30% من طولها على الأقل)، وذيلها عكس الحركة قصير (25% من طولها كحد أقصى). ولازم تكون الشمعة من أوائل سلسلة لونها، وأن تمرّ 6 شموع على الأقل منذ آخر تأكيد.
③ الأهداف والوقف: TP1 وTP2 وTP3 افتراضياً عند 2 و4 و6 × ATR، ووقف الخسارة عند 4 × ATR. مستوى الدخول الذهبي (GE) للارتداد عند 1 × ATR، والوقف المتحرّك (TSL) يلحق خط السوبرترند البطيء. كل هذه القيم قابلة للتعديل. الأهداف المتحقّقة تُعلَّم بـ ✓1 و✓2 و✓3، ويمكن إظهار صندوق يوضّح المخاطرة مقابل العائد.
④ الدعوم والمقاومات مع الفوليوم: مناطق من القمم والقيعان (10/10) ارتفاعها 0.40 × ATR(50)، وتظهر حتى 12 منطقة في نفس الوقت. لكل منطقة عمود فوليوم وليبل. في مناطق المقاومة يعرض الليبل نسبة البيع (مثل «167.72K · 39% Sell»)، وفي مناطق الدعم نسبة الشراء («79.64K · 61% Buy»). طول العمود يتبع هذه النسبة. ويمكن إظهار علامة «$» عند كسر المنطقة.
⑤ أدوات الرسم: متوسط ماركت مايند (EMA 34)، وقناة سعرية بالانحدار الخطي (100 شمعة)، ومستويات فيبوناتشي (داخلي أو خارجي أو كلاهما)، وكسر الهيكل CHoCH وBoS بقمم وقيعان داخلية (3) أو خارجية (15).
⑥ تلوين الشموع: الشمعة كاملة (الجسم والإطار والفتيل) تتلوّن بألوان الاتجاه اللي تختارها.
⑦ المستويات اليومية والأسبوعية: أعلى وأدنى سعر لليوم السابق والأسبوع السابق، مع فواصل يومية وأسبوعية اختيارية.
⑧ احتمالية الشمعة القادمة: يعرض النطاق المتوقّع للشمعة الجاية.
⑨ شموع الإطار الأعلى: حتى عشر شموع من أي إطار أكبر بجانب السعر، مع بروفايل فوليوم اختياري.
⑩ لوحة ماركت مايند: جدول بأعمدة Frame وHTF وGauge وReading وSession. يعرض اتجاه ستة أطر زمنية (3د، 5د، 15د، 1س، 4س، يومي) ومتوسطَي المدى القصير والطويل، مع قراءات FIB وVOL وRSI و$$$. الجلسات الأربع (نيويورك، لندن، طوكيو، سيدني) تضيء وقت فتحها. ومقياس BULL / BEAR من 8 نقاط بأشرطة ▰▱ يعطي حكم JUDGE (SLIGHT أو MODERATE أو STRONG). فيه ثيمان للألوان (كلاسيكي، وداكن للخلفيات السوداء)، وخمسة أحجام وتسعة مواضع.
⑪ التقويم الاقتصادي الحيّ: أحداث Forex Factory الحقيقية على الشارت، لليوم أو للأسبوع كله. تقدر تفلترها حسب الأهمية (الأحمر والبرتقالي افتراضياً)، وتضبط فرق التوقيت، وتختار عرض أخبار عملتَي الرمز فقط.
⑫ بيانات خارجية: إيقاف الإشارات وقت الأخبار القوية، وفلتر ماكرو (DXY وUS10Y)، وصف COT لصافي مراكز المضاربين، وصف لأساسيات الشركة (الإيرادات، ربحية السهم، صافي الدخل، الدين إلى حقوق الملكية). كلها مطفأة افتراضياً.
التنبيهات
MarketMind Buy · MarketMind Sell · Confirm Buy · Confirm Sell. كل تنبيه يذكر الرمز والإطار الزمني.
التقويم الاقتصادي يستخدم مكتبات toodegrees مفتوحة المصدر لأخبار Forex Factory (رخصة MPL-2.0)، وبياناتها من Pine Seeds.
هذا المؤشر أداة تحليل وليس نصيحة مالية. جرّب أي إعداد على سوقك وإطارك الزمني قبل ما تتداول به. Indicateur

Indicateur

EWMAC Trend Signals [QuantAlgo]🟢 Overview
The EWMAC Trend Signals is a trend-following indicator built on exponentially weighted moving average crossovers (EWMAC), a staple trend rule in systematic futures trading. In that setting, the rule typically runs across many markets at several speeds at once. Each reading is divided by volatility, so a trend's strength, not just its direction, sets how much exposure to take. That design is why it anchors this indicator: fast speeds respond to new trends sooner, slow speeds stay with longer ones, and volatility scaling keeps readings comparable from quiet stock indices to volatile crypto. Up to six EWMAC speeds blend into one trend score that drives bullish, bearish, and neutral signals through a hysteresis band, so traders can follow established trends through shallow pullbacks on any asset and any interval.
🟢 How It Works
Each EWMAC rule compares a fast EMA with a slow EMA spanning four times as many bars, so the gap between them widens as a trend develops and narrows as it fades. To give that gap the same meaning on any market, it is divided by a volatility unit built from the standard deviation of log returns, blended with a share of its long-run average. The result is rescaled to target an average absolute score of 10, either adaptively from the rule's own recent history or from a fixed factor based on its span. It is then capped to limit how far any single speed can pull the blend:
ewmacRule(float src, simple int fastLen, float riskUnit, simple int scaleLen, bool adaptive, float cap) =>
float fastMa = ta.ema(src, fastLen)
float slowMa = ta.ema(src, fastLen * 4)
float raw = (fastMa - slowMa) / math.max(riskUnit, 0.0000000001)
float avgAbs = ta.sma(math.abs(raw), scaleLen)
float fixedScale = 15.0 / math.sqrt(fastLen)
float scaleFactor = adaptive and not na(avgAbs) ? 10.0 / math.max(avgAbs, 0.0000000001) : fixedScale
float score = math.max(math.min(raw * scaleFactor, cap), -cap)
float midpoint = (fastMa + slowMa) / 2.0
Up to six rules run at geometrically spaced speeds, from 2/8 through 64/256 bars by default, and their scores are combined by weight into a single trend score. Averaging partially correlated rules shrinks the result, so a diversification multiplier restores the scale based on how many rules are active, or a manual value. The same weights average each rule's EMA midpoint into the trend line plotted on price:
float divMultiplier = multiplierIn > 0.0 ? multiplierIn : multiplierTable
float trendScoreRaw = weightSum > 0.0 ? scoreSum / weightSum * divMultiplier : 0.0
float trendScore = math.max(math.min(trendScoreRaw, scoreCap), -scoreCap)
float trendLine = weightSum > 0.0 ? lineSum / weightSum : srcSafe
The trend score then drives the signals. A bullish signal confirms when the score rises above the entry threshold, and a bearish signal confirms when it falls below the negative threshold. The exit level sits at a fraction of the entry threshold, forming a hysteresis band. With the neutral state enabled, a signal holds while trend strength eases and releases to neutral only once the score fades back through that level:
float exitTh = entryTh * exitFrac
var int signalState = 0
if barstate.isconfirmed
if trendScore > entryTh and signalState != 1
signalState := 1
else if trendScore < -entryTh and signalState != -1
signalState := -1
else if useNeutral and signalState == 1 and trendScore < exitTh
signalState := 0
else if useNeutral and signalState == -1 and trendScore > -exitTh
signalState := 0
🟢 Signal Interpretation
▶ Bullish Trend (Green/Bullish palette): When the trend score rises above the entry threshold on a confirmed bar, the indicator enters bullish mode. Bullish coloring applies across the trend line, neon glow, signal readout, price bars, and optional background. The signal holds while the score stays above the exit level, so pullbacks that only ease trend strength pass without releasing it. With the neutral state disabled, it holds until a bearish signal confirms. Trend traders can read the turn into bullish as a long bias or continuation cue, with the trend line as a dynamic reference for the prevailing trend.
▶ Bearish Trend (Red/Bearish palette): When the trend score falls below the negative entry threshold on a confirmed bar, the indicator enters bearish mode with bearish coloring across all visual elements. The signal holds while the score stays below the negative exit level. With the neutral state disabled, it holds until a bullish signal confirms. Trend traders can read the turn into bearish as a short bias or a cue to exit long exposure.
▶ Neutral (Gray/Neutral palette): With Use Neutral State enabled, a bullish or bearish signal releases to neutral once the trend score fades back through the exit level. This marks a trend that has lost strength without a confirmed reversal. Neutral also covers the warm-up period before the first signal confirms. Trend traders can use neutral phases to stand aside or manage open positions until the score commits to a direction again.
🟢 Features
▶ Preconfigured Presets: Three parameter sets cover different trading approaches. "Default" uses the manual settings, starting with Rules 2 to 5 active and a moderate entry threshold for swing trading on 4-hour and daily charts. "Fast Response" activates Rules 1 to 4, shortens the volatility and scaling windows, lowers the entry threshold, and narrows the hysteresis band. It suits intraday charts from 5-minute to 1-hour, where earlier signals matter more than fewer flips. "Smooth Trend" activates Rules 4 to 6, lengthens the volatility and scaling windows, raises the entry threshold, and widens the hysteresis band. It suits position trading on daily and weekly timeframes, where false signals are more costly than delayed ones. Selecting a preset overrides the active rules along with the corresponding volatility, scaling, and signal inputs.
▶ Built-in Alerts: Four alert conditions cover every signal change. "Bullish Trend Signal" fires on the confirmed bar where the signal turns bullish. "Bearish Trend Signal" fires on the confirmed bar where it turns bearish. "Neutral Trend Signal" fires when a bullish or bearish signal releases to neutral. "Trend Signal Changed" combines all three into a single condition for traders who want one notification for any change. Alerts continue to work even when the signal readout is hidden.
▶ Visual Customization: Six color presets (Classic, Aqua, Cosmic, Cyber, Neon, and Custom) apply coordinated bullish and bearish color schemes across the trend line, neon glow, signal readout, and bar and background coloring. Custom also lets you set the neutral color. The trend line offers an adjustable width and an optional neon glow effect. The signal readout labels the active signal as Bullish, Bearish, or Neutral at the end of the trend line in a selectable text size. Bar coloring tints price candles with the active signal color at a configurable transparency level, and background coloring extends that tint across the full chart pane.
Indicateur

Liquidity Sweep + CISD + FVG ReversalLiquidity Sweep + CISD + FVG Reversal
What this is — and is not. This is one sequence machine, not three ICT tools stacked on a chart. A liquidity-pool tracker, a change-in-state-of-delivery confirmation, a fair value gap entry zone and a quality-scoring engine are chained so that each stage only exists because the previous one fired. It is not a sweep indicator with gaps drawn next to it, and it is not an FVG tool with sweep markers bolted on. No stage is a signal on its own; only the completed sequence fires.
Why the parts are inseparable. The CISD is measured against the delivery run that produced the sweep — remove the sweep and there is no run whose state can change. The gap is hunted only inside the displacement that follows the CISD — remove the CISD and there is no displacement to scan. The entry is a retrace into that specific gap with a confirmed rejection — remove the gap and there is nothing to retrace into. And the quality engine scores properties of the completed sequence itself — how many highs or lows stack at the swept level, how much force the CISD candle carried, where the setup sits in the dealing range, how deep the sweep penetrated, and how efficiently price approached the pool. None of those measurements exist until the sequence exists. Take any stage away and the remaining logic has nothing to act on.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
THE SEQUENCE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1 — POOLS. Swing pivots are confirmed with a configurable length, and the most recent unswept swing high and swing low are tracked as the resting liquidity pools — buy-side above, sell-side below. Levels expire after a maximum age so a stale pivot from hundreds of bars ago cannot anchor a setup.
2 — SWEEP. A pool is swept when price wicks through it and closes back inside. Resting orders were taken, not genuinely broken. The sweep opens a candidate setup, marks the raid with a zone, and starts a strict countdown.
3 — CISD. Within a configurable window, price must close through the opening price of the delivery run that swept the pool — the change in state of delivery. No CISD inside the window and the setup dies quietly, because a sweep that produces no state change was absorption, not a raid. The CISD candle's body is also measured against ATR: a state change is supposed to arrive with force, so a doji drifting through the level is recorded but scores nothing for displacement.
4 — FAIR VALUE GAP. The displacement that delivered the CISD is scanned for a gap of at least a configurable ATR fraction. When one qualifies, the zone is drawn with its consequent-encroachment midline, the dashboard flips to FVG SET, and the machine waits.
5 — ENTRY. Price must retrace into the gap within a configurable window and reject on a confirmed bar. That rejection is the signal — not the sweep, not the CISD, not the gap forming. A retrace that never comes, or a close that blows through the gap, retires the setup without a trade.
6 — GRADE. Every completed setup is scored 0–100 across five independent measures and stamped A, B or C, printed on the entry label and in the dashboard. Pool quality counts how many equal highs or lows stack at the swept level — two or more touches is where stops actually accumulate, and a three-touch pool outranks a lone pivot. Displacement scores the CISD body against ATR. Array context scores position in the dealing range — shorts want premium, longs want discount. Sweep cleanliness caps penetration depth, because a spear far beyond the pool is a failed breakout, not a raid. And approach efficiency measures the path into the sweep with an efficiency ratio: price that drifted sideways and then wicked through a pool was raided, while a clean one-way leg into the level is a trend arriving — the engine can downgrade those setups, skip them, or take the other side, at your choice. By default everything is measured and nothing is filtered: raise the minimum grade when you want the engine to be selective, and watch what you would be filtering before you filter it.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
READING THE DASHBOARD
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
The bottom-center panel is the machine's cockpit, one cell per subsystem, updating on confirmed bars:
STAGE — where the sequence stands right now: SCANNING, SWEPT, CISD, or FVG SET. This cell alone tells you whether the machine is hunting or waiting.
HUNT — the direction being stalked once a sweep registers: SHORT HUNT after a buy-side raid, LONG HUNT after a sell-side raid.
BSL / SSL — the tracked buy-side and sell-side pool prices currently on watch.
GRADE — the live quality score with its letter, plus a compact readout of the raw measures behind it (pool touches, displacement, penetration, range position, approach efficiency), so you can see why a setup earned its grade, not just what it earned.
CISD — the delivery-run open being watched, a checkmark when the close-through confirms, and the countdown window.
FVG — the qualified gap's boundaries and the remaining retrace window.
POSITION / TP·SL — flat or in a trade, with the working exit levels and the configured exit percentages.
RECORD — a running tally of how past signals on the chart resolved, maintained as a study aid so you can review the machine's behavior on your instrument and settings.
STATUS — READY, in-trade, or cooldown with bars remaining.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
CHART WALKTHROUGH — MNQ 5-MINUTE, TWO MOMENTS OF ONE SETUP
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SCREENSHOT 1 — THE TRAP BUILDS. Price rallies through the morning and spears the buy-side pool near 29,480 — the purple zone with the SWEEP marker. The wick trades through the tracked high and the candle closes back inside: buy stops above the pool were collected, and the machine opens a candidate. Within its window, price then closes down through the opening price of the run that made the raid — the gold CISD line at 29,420.75, checkmarked in the dashboard. The displacement leg that delivered that close left an imbalance at 29,425.50–29,426.50, drawn as the FVG zone extending right. At this moment the dashboard reads the whole story in one row: STAGE — FVG SET, HUNT — SHORT ▼, the sell-side pool tracked at 29,398.50 below, GRADE — B with its measures broken out beside it, and POSITION — FLAT. Nothing has fired. The machine has identified the raid, confirmed the state change, framed the entry zone, and is now doing the one thing most tools cannot: waiting.
SCREENSHOT 2 — THE RESOLUTION. Price retraces upward into the gap and rejects on a confirmed bar — and only now does the entry print: SHORT at 29,386.50, grade stamped on the label, with the full trade frame drawn the moment it fires. The red zone above spans entry to the protective stop at 29,477.50 — placed beyond the swept pool itself, because if price reclaims the raided high the entire thesis is invalid. The teal zone below spans entry to the target at 29,319.00, this example running the fixed-percentage exit mode shown in the TP/SL cell. Price breaks away from the gap, cascades through the profit zone, and tags the target — the exit label printing the realized result on the bar where it happened. Behind it, the dashboard has already moved on: STAGE back to SCANNING, STATUS in cooldown, the completed setup's graphics faded in place as a permanent record of what fired and why. One raid, one state change, one gap, one rejection, one trade — start to finish on the chart with nothing repainted and nothing hidden.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SETTINGS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Structure — pivot length, level age, sweep-to-CISD window. CISD + FVG — minimum gap size (ATR fraction), retrace window, midline toggle. Quality engine — equal-level tolerance and lookback, displacement threshold, premium/discount requirement, penetration cap, approach-efficiency threshold and its response mode (downgrade, skip, or flip), minimum grade to signal, grade-on-label toggle. Trade management — structural or fixed-percent exits, risk multiple, stop buffer past the wick, cooldown, max bars in trade, optional end-of-day flatten window. Webhook — optional JSON payload on entry and exit with a strategy identifier.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
HOW TO USE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Apply to a liquid instrument on a timeframe you know, leave the grade filter open, and watch several sessions of the dashboard walking through SCANNING → SWEPT → CISD → FVG SET before judging anything. The grade cell teaches faster than any manual: you will see which measures your market keeps failing. Once the letter grades map to outcomes you have personally watched, raise the minimum grade to match. The defaults are a starting point, not an optimized or recommended configuration, and they are not intended to suggest any particular outcome — different instruments, timeframes and volatility conditions will call for different values.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
NON-REPAINTING
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
The entire state machine advances on confirmed bars only. Pivot detection uses right-side confirmation, so tracked levels are locked once drawn. The sweep, the CISD close, the gap qualification and the rejection entry all evaluate on closed bars, and a signal that prints does not move or disappear. No higher-timeframe requests are used anywhere in the script. What you see on historical bars is what the machine would have shown live.
Indicateur

Trade Prime - Fluid Trend IndicatorOverview
Welcome to the official Fluid Trend Indicator (FTI) by Trade Prime. Most retail trend indicators suffer from a fatal flaw: they are either incredibly noisy, resulting in dozens of false signals, or they lag so far behind the price action that the move is over before the signal fires.
The FTI solves this by combining a zero-lag mathematical core with a proprietary Prime Volatility Adjusted Moving Average (PVAMA) smoothing engine. The result is a buttery-smooth, highly accurate Fluid Line surrounded by dynamic volatility ribbons. Furthermore, the FTI features a dynamic visibility engine—it completely hides irrelevant but important calculations to give you an uncluttered, institutional-grade chart based on your use case.
Whether you are a 5-minute scalper or a daily swing trader, the FTI offers a "Two-in-One" architecture to adapt to your exact trading style.
Settings & Customisation
We have engineered the settings to be completely bulletproof. The complex math is hidden under the hood, leaving you with only the parameters that actually matter.
- Trading Mode: The core of the indicator.
- Signal Mode: Hyper-responsive. Designed to catch early pivots for day traders and scalpers.
- Trend Mode: Noise-filtering. Designed to ignore minor chop and ride massive macro trends for swing traders.
- Intensity Level (1, 2, 3): Controls the baseline sensitivity of the indicator. A lower number reacts faster to price changes, while a higher number requires a larger move to shift the trend.
- Smoothness Length (10 - 20): Controls the visual "flow" of the indicator. Locked between 10 and 20 to guarantee the zero-lag mathematical integrity of the aesthetic.
- Visual Toggles: Easily turn the signal arrows and trailing ribbons on or off.
How to Use the FTI
Trend Identification (Trend Mode)
The FTI makes identifying the major trend effortless. Simply look at the color of the central fluid line.
- Bullish: The line turns Pure Green and trades below the price. You should only be looking for long (buy) opportunities.
- Bearish: The line turns Pure Red and trades above the price. You should only be looking for short (sell) opportunities.
Pullback Identification (Trend Mode)
If you want to trade like an institution, you shouldn't buy the tops of breakouts—you should buy the pullbacks.
- The Reload Zone: The FTI will project a shaded volatility ribbon on the active side of the trend. This acts as a highly accurate, dynamic Support/Resistance zone.
- Uptrend Pullbacks: Wait for the price to drop into the Green Lower Ribbon. When price touches this zone and shows rejection (e.g., a bullish pin bar), enter your long entry.
- Downtrend Rallies: Wait for the price to rally into the Red Upper Ribbon. When price touches this zone and shows weakness, enter your short entry.
Trade Signals (Signal Mode)
If your goal is to catch rapid momentum shifts, set the indicator to Signal Mode.
- Entry: Wait for the FTI to flip colors and print a directional arrow.
- Execution: Enter the trade on the close of the candle that generates the arrow.
- Exit: Use the trailing central line as your dynamic stop-loss, exiting the position as soon as the line flips to the opposing color.
Risk Disclaimer: As with all technical analysis tools, the Fluid Trend Indicator is not a crystal ball. It is designed to provide high-probability confluence. Always pair this indicator with strict risk management, proper position sizing, and your own macro market analysis. Indicateur

Fade Setup OverlaysWHAT IT IS
Fade Setup Overlays is a chart readout for crypto perpetual futures. It tracks one specific pattern: a "fade" setup that can form after a strong momentum leg. It shows the current state of that pattern in a small table, plus three context flags, and can raise an alert when the state changes. It runs on either side of the market: fade highs (short-side setup) or fade lows (long-side setup).
It is an execution aid for reading the chart. It is not a signal service, not a strategy, and not an edge. Nothing here predicts price. "Short-side" and "long-side" name the direction of the setup being tracked; they are descriptions of chart state, not recommendations to trade.
HOW IT WORKS
The indicator runs a small state machine. The first condition that matches sets the mode:
- CHOP: ADX(14) on the last completed regime-timeframe bar is below the unlock threshold (default 25). The setup is not tracked.
- IMPULSE LEG: the regime ADX is unlocked and the swing extreme was set very recently, with no reversal bar.
- FADE ARMED: the swing extreme is fresh (default: within 4 reference hours), price is still within a set % of it (default 2.5%), and no reversal bar has printed.
- FADE WINDOW: a reversal bar printed while the extreme is fresh and price is within 3% of it.
- EXTENDED: price has already moved more than 2.5% away from the extreme.
- COOLING: none of the above.
The Side input picks the direction. Short (fade highs) tracks the highest high of the window and a reversal-down bar (a lower high that closes below the previous bar's low). Long (fade lows) mirrors everything: the lowest low of the window and a reversal-up bar (a higher low that closes above the previous bar's high). The three flags mirror too.
Each mode label comes with a short neutral description. On the chart, the script plots the swing-extreme watermark and a small triangle on reversal bars that print inside the fresh-extreme window.
TIMEFRAMES
The setup is defined in "reference hours" on a 15m chart: a 12h extreme, a 2h CVD window, a 24h premium z-score window, and a 1h ADX regime gate. With Auto-scale on (the default) every window is multiplied by chart-minutes / 15 and the regime timeframe moves one rung above the chart, so the readout keeps the same proportions on any chart from 1m to 1D:
- 15m chart: 12h extreme, 2h CVD, 24h z-score, 1h regime ADX, 1m intrabars
- 1h chart: 48h extreme, 8h CVD, 4d z-score, 4h regime ADX, 5m intrabars
- 4h chart: 8d extreme, 32h CVD, 16d z-score, 1D regime ADX, 15m intrabars
- 1D chart: 48d extreme, 8d CVD, 96d z-score, 1W regime ADX, 1h intrabars
Turn Auto-scale off to use the literal hour values on every chart. The table labels show the actual windows in use (for example "1D ADX" and "8d hi" on a 4h chart).
THE THREE OVERLAY FLAGS (ALL PROXIES)
Each flag is shown as ✓ (condition present), · (absent) or ? (data unavailable).
1. CVD-div (proxy): net signed volume over the CVD window leading into the extreme bar. The script pulls lower-timeframe bars with request.security_lower_tf and signs each bar's volume by its candle direction. Short side: ✓ when the net is flat or negative into the high. Long side: ✓ when the net is flat or positive into the low.
2. prem-z (proxy): the perp-vs-spot close spread, (perp - spot) / spot, z-scored against its trailing window. Short side: ✓ when the z-score went above +1.5 inside the CVD window. Long side: ✓ when it went below -1.5.
3. OI-stall (proxy): TradingView's open-interest symbol for the perp. ✓ when current open interest is below open interest at the extreme bar, on either side.
Honesty note: exchange-native CVD, perp premium and open-interest feeds are built from data TradingView cannot load. These proxies are directionally similar to those feeds but numerically different. Treat them as context, not ground truth.
The flags use a tri-state int (-1 unknown / 0 no / 1 yes) because a Pine v6 bool cannot hold na. That keeps missing data visible as "?" instead of turning it into a silent "no".
ALERTS
Alerts fire only when the state changes, not on every bar the state is true. They describe a chart state and nothing more.
Option A, one alert for everything: create a single alert on this indicator with the event "Any alert() function call" and the trigger "Once per bar close". The script formats the message itself. In "Readable text" mode the message carries the side, the state, the close, the extreme with its age and distance, the regime ADX, and the three flags. In "JSON (webhook)" mode each event is one JSON object ("action" = open on FADE WINDOW, close_all on INVALIDATED, and optionally info on FADE ARMED) with the same fields, for people who already run their own webhook receiver. The position_size_pct, leverage and secret fields in JSON mode are plain inputs passed through verbatim; the script never sizes, places, or sends anything itself. TradingView delivers whatever the alert is pointed at.
Option B, one alert per event: six alertcondition() events (Short/Long × FADE ARMED, FADE WINDOW opened, INVALIDATED) for anyone who prefers separate alerts.
INPUTS
Setup
- Side: Short (fade highs) or Long (fade lows).
- Regime ADX unlock threshold (25): below this, the mode is CHOP.
- Extreme freshness, hours at 15m (4): how recent the extreme must be for FADE ARMED / FADE WINDOW. Auto-scales.
- Max % from extreme to stay armed (2.5): the distance limit for FADE ARMED. Not auto-scaled; widen it by hand on 4h/1D if needed.
Scale
- Auto-scale windows to chart timeframe (on).
- Extreme lookback, CVD window, premium z window, all in hours at 15m (12 / 2 / 24).
- Regime ADX timeframe: leave on "Chart" for automatic (one rung above the chart), or set it by hand. It must be higher than the chart timeframe.
Overlays
- Spot symbol: leave blank to derive it from the chart (BINANCE:SOLUSDT.P becomes BINANCE:SOLUSDT), or type the spot pair by hand.
- Open-interest symbol: leave blank to derive it from the chart (BINANCE:SOLUSDT.P_OI), or type it by hand.
- CVD lower timeframe: leave on "Chart" for automatic (1m / 5m / 15m / 1h by chart timeframe), or set it by hand.
Alerts
- Combined alert() on/off, include INVALIDATED events, an optional personal note appended to text alerts, message format (Readable text / JSON), and the JSON pass-through fields.
Visuals
- Table position, text sizes, cell padding, compact labels, and a credit row toggle.
SETUP
1. Open a crypto perpetual chart on any timeframe from 1m to 1D. Example: BINANCE:SOLUSDT.P on 15m or 4h.
2. Add the indicator and pick the Side.
3. If a flag stays at "?", open the inputs and set the spot symbol and open-interest symbol by hand. Use Symbol Search: the spot pair from the same exchange as your perp, and " open interest" for OI.
4. Optional: create one alert on "Any alert() function call", trigger "Once per bar close".
LIMITATIONS
- Timeframes: 1m to 1D only. Multi-day, weekly and monthly charts stop with an error message, because the windows are computed from minutes per bar.
- Intrabar depth: TradingView keeps limited lower-timeframe history and caps intrabar requests at 100,000 bars, so CVD-div reads "?" on older bars. The automatic CVD timeframe is chosen to keep that history usable on each chart timeframe.
- OI availability: not every perp has a TradingView open-interest symbol. Where none loads, OI-stall reads "?".
- Proxies: all three flags approximate exchange-native data and will differ from it.
- Regime ADX: requested from the higher timeframe as an offset expression (value ) with lookahead on, which is the non-repainting form recommended by PineCoders. It returns only completed higher-timeframe bars and carries no lookahead bias.
- Repainting: the reversal bar, flags and mode are computed on the chart's bars, so on the live bar they can change until that bar closes. That is why alerts use "Once per bar close". Nothing beyond this is guaranteed.
- The percentage thresholds (2.5% and 3%) are not auto-scaled with the timeframe.
- The table shows the last bar only. It is not a backtest and makes no statement about outcomes.
DISCLAIMER
Educational use only. Not financial advice. Do your own research. This script is a chart readout and makes no performance claims. Crypto perpetual futures are high risk, and leverage can lose more than the initial margin. The author may hold positions in the assets discussed.
LICENSE
Open-source under the Mozilla Public License 2.0. Free to use, study and fork; attribution is appreciated. Indicateur

Indicateur

Range Detector [NJ]✧ OVERVIEW ✧
Range Detector identifies and highlights potential ranging market structures using pivot highs and lows combined with a two-stage confirmation process.
Confirmed ranges are displayed as boxes and remain active until price closes beyond the allowed tolerance.
✧ SETTINGS ✧
Range Tolerance %
Controls how far price may close beyond the range before it is invalidated.
Range First Confirmation %
Controls the first retracement required after both range boundaries have formed.
Range Second Confirmation %
Controls the second reversal required after the first confirmation.
Bars to Confirm the Range
Controls how long the current candidate structure may remain unconfirmed before it expires.
Pivot High/Low Lookback
Controls pivot sensitivity. Lower values detect smaller and more frequent swings, while higher values focus on larger market structures.
✧ HOW IT WORKS ✧
Range Formation
The indicator uses pivot highs and lows to define potential range boundaries. Newer same-side pivots may replace earlier ones until both boundaries are established.
Two-Stage Confirmation
A range is confirmed only after two rotations.
With the default 70% / 50% settings:
High → Low: price retraces 70% toward the high, then returns to 50%.
Low → High: price retraces 70% toward the low, then returns to 50%.
Range Invalidation
The range remains active until price closes beyond a boundary by more than the selected tolerance, measured as a percentage of the range height.
Candidate Timeout
Unconfirmed candidates must complete the confirmation sequence within the selected number of bars. Otherwise, they are discarded. The timer may restart if a newer same-side pivot replaces the current candidate.
✧ VISUALIZATION ✧
Once confirmed, the range is displayed as a box between its upper and lower boundaries.
The box is drawn retrospectively from the earliest pivot used to form the range and extends forward until the range is invalidated.
Because pivot highs and lows require future bars to be confirmed, the beginning of a range can appear several bars before the indicator could have known that the pivot was valid in real time.
✧ USAGE ✧
Range Detector can be used to identify areas of:
Sideways price action
Consolidation
Mean-reversion conditions
Support and resistance
Potential breakout structures
The detected zones can provide additional market structure context for range trading, breakout analysis, or filtering trend-following setups.
As with any technical indicator, it is best used alongside other forms of analysis rather than as a standalone entry or exit signal. Indicateur

Auto Parallel Channel (Ascending/Descending)What this does
Automatically detects and draws a parallel price channel — ascending, descending, or flat — based on real swing pivots, rather than requiring you to draw trendlines by hand.
Methodology
Detects alternating swing highs/lows (zigzag pivots), then looks for a same-type → opposite-type → same-type sequence (e.g. low-high-low) to anchor a channel: the base trendline runs through the two same-type pivots, and a parallel line is offset to touch the pivot in between.
Direction is color-coded from the base trendline's slope: green = ascending, orange = descending, aqua = flat/parallel.
Once formed, the channel locks in — it won't wobble or refit on every new minor pivot, only when it's actually broken by a decisive close beyond either boundary.
A built-in sanity check rejects channels whose width is unreasonably large relative to the instrument's recent ATR, so a single outlier wick can't distort the fit.
Works on any timeframe — tested particularly on 1H/2H/4H for spotting corrective structures, and on Daily/Weekly for larger trend channels.
Settings
Pivot Left/Right Bars — pivot sensitivity (lower = more, smaller pivots; higher = fewer, larger ones)
Min Move % Between Pivots — filters out insignificant zigzag noise
Min Bars Between Anchor Pivots — avoids forming a channel from two anchor points that are too close together
Max Channel Width (x ATR) — the outlier-rejection sanity check described above
Break Buffer % — how far price must close beyond the channel before it's considered broken
Alerts
Fires when price breaks the channel upward or downward.
Disclaimer
This tool identifies a geometric pattern in price history — it does not predict future price movement. Always confirm with your own analysis and risk management. Not financial advice. Indicateur

Indicateur

Time Clusters - Range Projection (Fixed Capture)Time Clusters – Range Projection (Selectable Capture TF)
Brief Description
This indicator identifies specific time-of-day slots (hourly + custom times) and captures the exact high/low range of the first bar of a user-selected timeframe (e.g. 1-minute, 5-minute, 15-minute) that occurs at the start of each slot. It then projects that range forward as a box for the rest of the session (or day).
You can run it on any chart timeframe (15s, 1m, 5m, etc.) while independently choosing which timeframe’s first bar range to capture.
Main Use Cases
Opening Range / Time-Based Range Trading: Capture the first 1-minute (or 5-minute) range of key sessions (London open, NY open, etc.) and trade breakouts or mean-reversion from that range.
Intraday Time Clusters: Track how price behaves relative to the opening range of specific hours (e.g. 09:00, 10:00, 13:30).
Multi-timeframe analysis on lower charts: Watch a 15-second or 1-minute chart while locking in the true 1-minute or 5-minute opening range of each slot.
Session profiling / statistical edge hunting: Quickly see which time slots produce reliable ranges that act as support/resistance for the rest of the day.
Ideal for traders who focus on time-of-day edges and want precise, non-repainting opening ranges without switching chart timeframes.
Indicateur

MACD + Impulse MACD - Normalized Momentum ScaleThis indicator brings two complementary momentum frameworks — standard Price MACD and Impulse MACD — into one shared, normalized momentum environment. The result is a view that goes beyond a single crossover or histogram reading: it lets you see how two different expressions of momentum are behaving together, where they agree, where they diverge, which one is leading, how strongly each is expanding or contracting, and whether that relationship is being reinforced by the developing higher timeframe.
At the center of the design is the Normalized Momentum Scale (NMS), which places both MACD families on the same fixed -100 to +100 coordinate. That common scale is what makes the comparison meaningful. Instead of looking at two separate indicators with unrelated native magnitudes, the script lets their lines, signals, histograms, crossover age, and higher-timeframe context coexist in one visual framework.
The standard Price MACD side captures the familiar relationship between fast and slow exponential averages of Close. The Impulse MACD side approaches momentum differently, using a smoothed High/Low envelope and a zero-lag EMA centerline to distinguish movement occurring inside that envelope from movement extending beyond it. This implementation was inspired by LazyBear's Impulse MACD concept:
Those differences are exactly what make the pairing useful. The goal is not to make standard MACD and Impulse MACD behave alike, but to give them a common language for magnitude and direction. When both expand together, when one begins to roll over before the other, when their histograms disagree, or when the developing higher timeframe confirms one side of the picture, those relationships become much easier to see and interpret.
➖The Normalized Momentum Scale➖
The core of the indicator is the Normalized Momentum Scale, or NMS. Each raw MACD-derived value is first divided by ATR14. This changes the question from:
“How many price units apart are these values?” to: “How large is this momentum displacement relative to the instrument's current volatility?”
That first normalization step makes the measurement substantially more portable across instruments and timeframes. But simply plotting ATR-normalized values on a linear scale creates another problem. Most ordinary momentum activity remains clustered relatively close to zero, while occasional large expansions can stretch the scale dramatically. NMS addresses that by applying a monotonic nonlinear transfer to the ATR-relative value and mapping it onto a fixed -100 to +100 coordinate. The scale deliberately provides more visual resolution through the region where momentum spends most of its time, while progressively compressing increasingly uncommon volatility-relative excursions toward the outer limits.
Its principal absolute-value calibration points are 0.70 ATR → 34, 1.25 ATR → 55, 2.50 ATR → 65, 4.00 ATR → 75, 7.00 ATR → 89, 12.0 ATR → 95, and 20.0 ATR → 100.
This is not a percentage scale, probability scale, RSI-style oscillator, or automatic overbought/oversold model. A reading of 75 does not mean “75% bullish.” It means that the underlying momentum displacement has reached a particular standardized magnitude relative to prevailing volatility. Because the transformation is monotonic, the ordering of MACD and its Signal is preserved. A bullish MACD crossover before normalization remains a bullish crossover after normalization.
➖Standard MACD➖
The standard MACD side defaults to the familiar 12 / 26 / 9 configuration, with all three lengths exposed in Settings. MACD and MACD Signal are independently normalized against ATR14 and then mapped through NMS. This preserves their crossover relationship while placing both lines on the common -100 to +100 momentum coordinate. The shaded region between them makes expansion and contraction easier to see. When MACD leads Signal, the pair assumes the bullish family color; when Signal leads MACD, it assumes the bearish family color.
The MACD Histogram is treated separately and importantly. The script first calculates the true raw histogram — MACD minus Signal — before normalization. That raw difference is then divided by ATR14 and independently mapped through NMS. This matters because subtracting two values after they have already passed through a nonlinear scale would distort the actual histogram magnitude.
➖Impulse MACD➖
Impulse MACD provides a second view of momentum. Its default architecture uses a 34-period smoothed High/Low envelope, a 34-period zero-lag EMA centerline, and a 9-period Signal. Both lengths are user-adjustable. The Impulse value remains at zero while its centerline is contained within the smoothed envelope and begins expressing signed momentum as that centerline moves beyond the envelope. This gives it a different character from standard MACD and can make the comparison between the two especially useful during transitions.
Impulse MACD and its Signal are normalized and mapped through the exact same NMS architecture as standard MACD. Its histogram is also calculated from the true raw difference first — Impulse MACD minus Impulse Signal — and only then normalized by ATR14 and mapped through NMS. That gives the indicator two genuinely different momentum models without sacrificing a common measurement framework.
➖Reading the two together➖
The indicator is not intended to answer only whether momentum is bullish or bearish. Its larger purpose is to show how two different momentum constructions are behaving relative to one another. When standard MACD and Impulse MACD are both expanding in the same direction, momentum is being expressed through both the conventional EMA relationship and the filtered Impulse framework. When one begins contracting, crossing, or changing direction before the other, that disagreement can reveal a transition that would be less obvious when either indicator is viewed alone.
The histograms add another layer. Their sign identifies current MACD-versus-Signal ownership, while their NMS magnitude shows how large that separation is relative to volatility. A small positive histogram just above zero and a positive histogram near 55 are therefore not visually treated as equivalent momentum conditions.
➖Developing higher-timeframe context➖
A Developing Auto-Next-HTF MACD Histogram is included as a higher-timeframe reference.
This is not the chart-timeframe histogram resampled onto a higher timeframe. The complete MACD calculation is performed natively inside the automatically selected next higher timeframe using the same user-selected Fast, Slow, and Signal lengths. That higher timeframe also calculates its own ATR14 before the histogram is mapped through NMS. The result gives a direct view of whether the local histogram is aligned with, diverging from, or potentially moving ahead of the developing momentum structure one timeframe above. Because this is intentionally a Developing HTF value, it can change while the current higher-timeframe candle remains open. It should be treated as live context rather than a confirmed higher-timeframe signal.
➖Focused NMS guide levels➖
The right side of the oscillator uses the semantic ladder 0, ±13, ±34, ±55, ±75, ±89 and ±100, but the indicator intentionally does not display every level all the time. Zero remains the permanent center reference. Other guide levels appear only when currently visible momentum geometry is actually approaching them. The guide engine considers standard MACD, MACD Signal, MACD Histogram, Developing HTF Histogram, Impulse MACD, Impulse Signal, and Impulse Histogram. A distant -75 level, for example, is not displayed merely because it is the next available rung below the current MACD value. This keeps the scale contextual and reduces unnecessary visual clutter while still making important momentum zones visible as they become relevant. Again, these levels should not automatically be interpreted as support/resistance or overbought/oversold thresholds. They are reference points on the standardized momentum scale.
➖Right-side labels➖
Current NMS values are displayed directly beside the oscillator through a compact right-label system. The MACD family and Impulse family each track the age of their most recent crossover using an inclusive bars-ago convention, where the crossover candle itself is 1ba. Crossover age also follows directional ownership. During a bullish MACD state, the age appears with MACD; during a bearish state, it appears with MACD Signal. The same convention is used for Impulse MACD and Impulse Signal. This makes it possible to see not only which component currently owns the pair, but also how long that relationship has been active.
➖Price-pane momentum context➖
The indicator can also project its histogram state onto the main price chart without moving the oscillator out of its pane. Optional force-overlay candles use the chart's actual Open, High, Low, and Close. Only their color is supplied by the momentum engine. Users can choose either MACD Histogram or Impulse Histogram as the candle-color source, with MACD Histogram selected by default. The candle body, wick, and border have independent transparency controls.
➖Customization➖
The default presentation is intentionally designed to show the relationship between the two systems while remaining readable. MACD / Signal and Impulse MACD / Signal default to line presentation, while both true histograms remain available as histogram plots. Historical display windows, widths, transparency, fills, labels, and plot styles can all be adjusted.
Color customization has been kept intentionally simple. The entire standard MACD family shares one Bull / Bear / Neutral palette, while the entire Impulse family shares a separate Bull / Bear / Neutral palette. This keeps the visual language consistent without requiring a separate color control for every individual plot.
➖How I use the scale➖
I generally begin with direction around zero, then look at which member owns each MACD/Signal pair, followed by the magnitude and direction of the histograms. From there, the NMS level provides context for how significant that momentum condition is relative to volatility.
A crossover occurring near the center of the scale may represent a very different market condition from a crossover occurring after one family has already expanded toward 55, 75, or beyond.
The Developing HTF Histogram then provides a final layer of context: is the next timeframe reinforcing the local move, opposing it, or beginning to turn?
The value of the indicator is therefore less about finding one “magic” level and more about seeing direction, magnitude, agreement, disagreement, expansion, contraction, crossover age, and higher-timeframe alignment in one standardized momentum framework.
➖Important note➖
The Normalized Momentum Scale changes the representation of momentum magnitude, not the underlying MACD relationships themselves.
Standard MACD remains standard MACD. Impulse MACD remains its own separate momentum construction. NMS simply gives both a common volatility-relative coordinate so their behavior can be compared more meaningfully.
The current chart bar and the Developing HTF series can both evolve while their respective candles are open. As with any technical indicator, this tool is intended to provide analytical context rather than predict future price movement with certainty.
➖A few chart examples➖
Indicateur

Multi Session ORBORB NQ — Asia / London / NY Break + Reject
Multi-session Opening Range indicator for NQ (and other futures). It builds a short opening-range box for Asia , London , and New York , then marks breakouts and rejections of those boxes.
Sessions (ET, adjustable)
- Asia: 18:00–03:00
- London: 03:00–09:30 (stops when NY starts so boxes do not stack)
- New York: 09:30–16:00
The first N minutes of each session (default 15) become that session’s OR zone. Color and opacity are in settings.
Signals
- SELL (▼ above the candle): price rejects the OR high and closes back inside, or closes out the OR low (breakdown).
- BUY (▲ below the candle): price rejects the OR low and closes back inside, or closes out the OR high (breakout).
Turn Show BUY / SELL text on if you want the words on the markers.
How to read it
1. Wait until the OR window finishes (shaded build column).
2. Rejection = tap the edge, close back inside → fade that side.
3. Breakout = close beyond the box by the minimum points setting → go with that side.
4. First signal per side per session is the default (can be turned off).
Use 1m or 5m . On 15m the “15-minute OR” is a single candle, so signals will not match the 1m chart.
Useful settings
- OR length, wide-OR warning, min breakout distance
- Zone colors / opacity / show-hide per session
- VWAP filter (off by default)
- Reject buffer and optional wick filter
- Session open/close hours
- Alerts: buy breakout, sell breakdown, sell reject high, buy reject low
Not included
This is an indicator, not a strategy. No auto size, stops, or day P&L. You place and manage trades yourself.
Note
signals can be wrong sometimes
LSE cash actually runs until 11:30 ET. London’s box is cut at 09:30 ET on purpose so it does not cover the NY zone. Set London close to 11:30 if you want the real cash overlap. Indicateur

Indicateur

Symbol vs NQ [BMT]Symbol vs NQ
Is the symbol on the chart adding something of its own, beyond how much more it moves than the Nasdaq does, and does it need megacap leadership to work? The name's move from a shared anchor, minus its beta to NQ times NQ's move from the same anchor, is the residual: above zero the name is beating the path its beta implies, below zero it is rising less than its beta alone would have delivered. The chart is tinted by that state.
What it draws
A background tint on the price chart: green while the name is beating its NQ-beta path by more than the threshold, red while it is missing it, nothing in between. A stronger green marks a confirmed lead, and a triangle under each confirmed bar (size is an input) carries a hover reading. A vertical line marks the anchor bar. A status table along one edge shows the name's move, its residual and sigma, its beta to NQ, NQ's own move and state, the regime profile, and the anchor in force.
The green takes the stairs up and the elevator down. It needs four consecutive bars above the threshold before it paints, and it drops the moment the residual is back at or under zero rather than waiting for minus the threshold. Red is immediate both ways. That is the asymmetry of the CARS state machine, and it is what keeps the tint from flickering on one-bar noise without smoothing away the turns.
While the name closes under its 50-day average, a positive residual is discounted to 70% before the threshold applies (an input, on by default). A discount, never a veto: a name can still read as leading under its 50-day, it just needs more to get there, and a lagging reading is never damped since that would slow the off-switch. The 50-day is read from the daily bars on every chart timeframe, the prior session's value, so it does not repaint.
The anchor
Measure picks the bar both series are measured from; the name and NQ always share it. The period anchors are the same bars Index Lead Lag uses, so with both on the chart they agree; the swing anchors are NQ's extremes where that script uses ES's.
Auto (default) chooses from the chart timeframe: session open under an hour, week open intraday above that, month open on a daily chart, quarter open above. The Ref cell shows what it resolved to.
Session open , Prior close , Week open , Month open , Quarter open . Each resets on its boundary. On CME index futures the daily bar opens at 18:00 ET, so Session open is the Globex open and the overnight sits inside the measure; Prior close is the 17:00 settlement.
RTH open : the open of the first bar of the cash session (09:30 to 16:00 New York by default, an input), with the overnight left out.
NQ swing low / NQ swing high : the lowest low or highest high NQ has printed in the range on screen, so it reads as "since the Nasdaq turned, has this name done more than its beta?". Pan or zoom and it re-resolves to the new view. NQ's turn rather than the name's own on purpose: a name measured from its own low is at its minimum there by construction, which flatters every residual.
Fixed date : a date from the date picker. Does not reset.
The period anchors are read as prices from a higher-timeframe request rather than counted back as bars, so there is no history-buffer limit on how far back an anchor can sit.
Beta and the residual
Beta is the ordinary least squares slope of the name's bar returns against NQ's, fitted on the bars before the one being scored so a bar cannot explain itself away, over a window of four anchor periods on the chart's own bars (four sessions for a session anchor, four months for a month anchor, four times the span for a swing or a date; floor 60 bars, cap 2000). Sizing the window from the anchor keeps beta fitted at the horizon it is subtracted over. The table shows the bars in use.
The residual is scored in standard deviations of where it could have drifted by chance by this point in the period: per-bar residual noise times the square root of bars since the anchor. Early in a period it takes less to clear the threshold and late in a period it takes more, rather than one yardstick set by the period's average size. The sigma is measured on the name's own per-bar residual, so 1.0 means the same thing for a stock as for an index even though the stock moves several times as far.
Until the beta window has filled there is no beta and no reading, and the table says so: a recent listing with fewer bars than the window shows n/a and the bar count against the window, because a name that cannot be measured is not a weak name.
Confirmed leads
Beating a beta while merely quiet is a read that inverts by regime: in a panic the names that have not yet fallen can be the best shorts, not the best buys. So a lead is confirmed only when the name is also at a period high NQ has not made, the upside leg, which is the half of the read that holds in both regimes. An unconfirmed lead is not nothing; it is a sign whose direction you cannot yet read. There is no mirror on the lag side.
Regime profile
NQ's own state against its beta to ES is tracked the same way, and the table shows what the name's residual has averaged while NQ was leading its beta and while NQ was lagging it, over about the last 50 qualifying bars of each. A wide gap says the name rides megacap leadership and NQ's state matters to it; two similar numbers say it trades on its own.
NQ source
Futures (NQ1!, with ES1! for the NQ regime) intraday, where the cash index has no overnight bars; the cash index (NDX, with SPX) on daily and above, where a long anchor would otherwise carry the futures' roll gaps. Auto chooses by timeframe; the Ref cell says which is in use. Indicateur

Indicateur
