Indikator

Pattern Atlas : Geometric [AxeAlgo]Pattern Atlas : Geometric Patterns
WHAT THIS LIBRARY IS
This is a Pine Script v6 library of 17 classical chart pattern detectors — Head and Shoulders, Double/Triple Tops and Bottoms, triangles, wedges, flags, and the rest of the standard technical-analysis catalog built from swing highs and lows rather than single-candle shape. Unlike candlestick patterns, which read one to a handful of fixed bars, chart patterns span a variable, often large number of bars, so this library carries one small piece of state — a rolling history of confirmed swing pivots — that every pattern function reads from. Beyond that, the same philosophy as Library #1 applies: no plotting, no alerts, and no inputs in this script by design, since a library's job is to hand other scripts a clean, reusable, well-documented API, not to draw on a chart itself (Pine doesn't allow a library to plot anything anyway). If you're looking for a ready-to-use indicator built on top of this library, see the companion "Pattern Atlas : Geometric Indicator " script, which imports every function here and turns it into on-chart signals, measured-move price targets, a live scanner table, and alerts.
Chart pattern analysis is one of the foundational tools of classical technical analysis, going back to Edwards and Magee's original work and refined since by researchers like Thomas Bulkowski, whose statistical studies of pattern behavior are the closest thing this field has to an industry-standard reference. The patterns in this library follow that standard catalog, so anyone who already knows what a Head and Shoulders top or an Ascending Triangle looks like will recognize exactly what each function is checking for.
WHY A LIBRARY INSTEAD OF ONE MONOLITHIC INDICATOR
Splitting detection logic out as an importable library means:
- Any Pine coder building their own strategy, indicator, or screener can pull in exactly the pattern checks they need without copy-pasting swing-pivot and trendline math into every new script.
- The detection logic is tested and maintained in one place. When a threshold gets refined, everything importing this library benefits from the update by bumping one version number.
- It keeps the math separate from presentation — how a pattern gets drawn, colored, or alerted on is a completely separate decision from whether the pattern is actually present, and different users want different presentations.
HOW TO IMPORT AND USE IT
Add this line near the top of your script (adjust the version number to whatever the current published version is):
import AxeAlgo/Pattern_Atlas_Geometric/1 as geo
Unlike Library #1, most of the functions here need a shared pivot history to work from. Call trackPivots() exactly once per bar, then pass its result into every detect*() function that needs it:
pivots = geo.trackPivots()
match = geo.detectDoubleTopBottom(pivots)
if match.found
label.new(bar_index, high, match.patternName)
Four functions — detectSpike(), detectFlag(), detectPennant(), and detectIslandReversal() — read directly off recent price action instead of the shared pivot history, so they're called without a pivots argument: geo.detectSpike().
trackPivots() takes three optional parameters: leftBars and rightBars (how many less-extreme bars must surround a candidate swing point before it confirms as a pivot — higher values mean fewer, more significant pivots, at the cost of a longer confirmation lag), and maxPivots (how much pivot history to retain). All three have sensible defaults.
Every detect*() function returns the same structure, called ChartPatternMatch, so the calling pattern is identical no matter which of the 17 you use. It has nine fields:
- found — true if the pattern matched at the evaluated bar, false otherwise.
- patternName — the specific name of what matched (e.g. "Ascending Triangle"), na when not found.
- direction — "bullish" or "bearish".
- pivotBars — bar_index of each pivot the match was built from, in chronological order.
- pivotPrices — price of each pivot, in the same order as pivotBars.
- breakoutLevel — the support, resistance, or neckline level price broke through to confirm the pattern.
- necklineSlope — slope (price per bar) of the breakout line, na when the pattern's breakout level isn't a sloped line.
- barIndex — the bar_index the pattern completes (breaks out) on.
- description — a full sentence naming the pattern and the actual measured price levels that triggered it — genuinely useful for a tooltip or an alert message, not just a repeat of the pattern name.
Two additional exported functions turn that raw match into something more actionable, and both work on any ChartPatternMatch regardless of which detect*() function produced it:
- patternStrength(match) — a 0-100 score for how decisively the confirmation close broke through breakoutLevel, relative to the pattern's own price range. A breakout that clears the level by a meaningful fraction of the pattern's own size scores higher than a one-tick poke through it.
- patternTarget(match) — a classical measured-move price target, projecting the pattern's own height from the breakout point. Returns na for patterns without a reliable height to project from (V-Top/V-Bottom Spike, Island Reversal, Bump-and-Run Reversal).
Every detect*() function also exposes its own set of tunable threshold parameters — how flat a "flat top" has to be, how much two shoulders can differ and still count as equal, and so on — all with sensible defaults so you don't have to touch them unless you want to tighten or loosen a specific pattern's sensitivity for a particular instrument or timeframe.
THE 17 PATTERNS
Reversal patterns (7) — signal a potential change in the prevailing trend:
- Head and Shoulders / Inverse Head and Shoulders — detectHeadAndShoulders(). Three swing extremes with the middle one more extreme than the two roughly-equal outer ones, confirmed when price breaks the neckline connecting the two points between them.
- Double Top / Double Bottom — detectDoubleTopBottom(). Two roughly equal peaks (or troughs) with a retracement between them, confirmed when price breaks back through that retracement level.
- Triple Top / Triple Bottom — detectTripleTopBottom(). The same idea as a Double Top/Bottom with a third roughly-equal touch, confirmed on the break of the support or resistance formed between the touches.
- Rounding Top / Rounding Bottom — detectRoundingTopBottom(). A gradual, curved advance-and-rollover (or decline-and-recovery) between two similar edge levels. Approximate: read from three swing pivots rather than fitting a true curve.
- Diamond Top / Diamond Bottom — detectDiamondTopBottom(). Swing range that widens and then narrows again, confirmed on a break of the resulting support or resistance. Rare and approximate: read from three pivot pairs rather than a clean diamond outline.
- Broadening Formation — detectBroadeningTopBottom(). Diverging highs and lows forming an increasingly volatile range, confirmed on a break of either edge. Approximate: read from two pivot pairs rather than a hand-fitted diverging channel.
- V-Top / V-Bottom (Spike) — detectSpike(). A single sharp extreme with no rounding — a large move into the pivot and an equally large move away from it, both measured against the recent average bar range, within a handful of bars. Self-contained, no pivots argument needed.
Continuation patterns (8) — typically resolve in the direction of the move that preceded them:
- Ascending Triangle — detectTriangleAscending(). Flat resistance with rising support, confirmed on a break above resistance.
- Descending Triangle — detectTriangleDescending(). Flat support with falling resistance, confirmed on a break below support.
- Symmetrical Triangle — detectTriangleSymmetrical(). Converging highs and rising lows, confirmed (bullish or bearish) whichever side the price actually breaks.
- Rising Wedge / Falling Wedge — detectWedge(). Both trendlines slope the same direction and converge; breaks the opposite way from the slope, since the shared-direction move was already losing momentum.
- Bull Flag / Bear Flag — detectFlag(). A strong directional move (the pole), followed by a tight, roughly parallel pullback, confirmed on a break back out in the pole's direction. Self-contained, no pivots argument needed.
- Bull Pennant / Bear Pennant — detectPennant(). The same pole-and-consolidation structure as a Flag, but the consolidation narrows and converges rather than staying parallel. Self-contained, no pivots argument needed.
- Rectangle — detectRectangle(). Price boxed between flat support and flat resistance, confirmed on a break of either edge.
- Cup and Handle / Inverted Cup and Handle — detectCupAndHandle(). A rounded recovery (or decline) back to its starting rim, then a shallow pullback (the handle), confirmed on a break through the rim.
Structural / gap-based patterns (2):
- Bullish / Bearish Island Reversal — detectIslandReversal(). A bar (or small cluster) isolated by a gap on both sides, then abandoned by a gap the other way — an abrupt reversal. Self-contained, pure gap logic, no pivots argument needed.
- Bump-and-Run Reversal — detectBumpAndRun(). A lead-in trendline, then a "bump" phase accelerating well beyond it, then a "run" breaking back through the lead-in line. Approximate: the lead-in line is read from just two pivots rather than a hand-drawn trendline.
WHAT THIS LIBRARY DELIBERATELY DOES NOT DO
No plotting, no drawing, no alertcondition() calls, and no inputs — Pine doesn't allow any of those inside a library in the first place, since a library can never be added to a chart on its own. If you want signals, price targets, a scanner table, or alerts, import this library into your own script (or use the companion "Pattern Atlas : Chart Pattern Scanner " indicator, which does exactly that) rather than expecting this script to render anything by itself.
This library also does not evaluate multi-timeframe data, volume, or broader market structure — it's swing-pivot and trendline geometry only, on purpose, so its behavior is easy to reason about and easy to reuse as one building block among several.
Four of the seventeen patterns are explicitly noted above as approximate: Rounding Top/Bottom, Diamond Top/Bottom, Broadening Formation, and Bump-and-Run Reversal are read from a small, fixed number of swing pivots rather than fitting a true curve or hand-drawn trendline to the data. They will not catch every textbook-perfect example of these shapes, and they may occasionally flag a looser approximation of one. Treat them as a starting point for further chart review, not a final word.
PART OF A LARGER SERIES
This is Library #2 in the AxeAlgo Pattern Atlas — a planned set of Pine libraries splitting pattern detection by the method actually used to find each kind of pattern: candlestick shape (Library #1, already published), classical chart/geometric patterns (this library), harmonic patterns (Fibonacci-ratio XABCD structures), and market-structure concepts (order blocks, liquidity, Wyckoff-style events). Each library is independent and useful on its own; together they're meant to cover technical pattern analysis without forcing unrelated detection methods into the same function.
A NOTE ON REPAINTING
trackPivots() only confirms a swing pivot once rightBars bars have passed since it happened — the same confirmation lag ta.pivothigh()/ta.pivotlow() use, just written out as plain comparisons so it works safely inside a library's exported functions. That means a pivot never moves or disappears once confirmed; it just takes rightBars bars to become known, which is a normal and unavoidable part of swing-pivot detection, not a defect in this library. On the currently-forming bar, a pattern's found status can still change tick to tick as that bar's own high, low, and close move — that's inherent to reading live price action. If you're building persisted signals, drawings, alerts, or price targets on top of these functions (rather than a live "what's happening right now" readout), gate your usage on barstate.isconfirmed so a signal only fires once the bar it describes has actually closed, exactly like the companion scanner indicator does.
DISCLAIMER
This library is a technical analysis tool for identifying classical chart pattern shapes in historical and live price data. It does not predict future price movement, and a detected pattern — including any projected price target — is a description of past price action, not a signal guaranteed to repeat. Nothing in this script constitutes financial advice. Always combine pattern recognition with your own risk management and broader analysis before making any trading decision.
Bibliothek

Moving Average CandleMoving Average Candle turns up to three moving averages into full OHLC candles instead of plain lines, so you can read a moving average's shape and momentum the way you'd read a price candle. It's built for anyone who wants to see a moving average's open, high, low and close at a glance — for example to judge a moving average's momentum and turning points the way you would judge price action, or to compare several of these MA candles against each other and against the underlying price on the same chart.
Each of the up to three MA candles can independently be calculated as SMA, EMA, WMA, VWMA, HMA, or RMA — standard formulas from TradingView's own library, with no custom modification.
MA Candle (present three times, MA Candle 1–3, each instance identically structured)
Length: number of bars the average is calculated over.
MA Type: calculation method: SMA, EMA, WMA, VWMA, HMA, or RMA.
Candle Style: Wick or Fill.
Bull / Bear: two colors: one for when the moving average's close is above its previous value, the other for the opposite case.
Each enabled MA candle is built from the moving averages of the bar's open, high, low and close, then colored by whether the moving average's close is rising or falling. The high and low are clamped so they never sit inside the body, which keeps the candle intact even for moving average types like HMA whose weighting can otherwise push a value outside a normal high/low range.
In Wick style, the high and low are drawn as a candle wick, just like a regular price candle. In Fill style, the wick is hidden and the high/low range is shown instead as a shaded band; the candle body stays visible in both styles.
This indicator is intended solely for market analysis and does not constitute investment advice or a guarantee of success. Use it at your own discretion and risk; past results are not indicative of future performance. Indikator

BBMA Trend & MomentumBBMA Trend & Momentum
The BBMA structure read as one running sequence rather than a handful of separate signals.
Most tools built on Bollinger Bands and moving averages draw the lines and leave the reading to
you. This one keeps a memory. It knows that momentum came first, that a reversal candle followed it, that the pullback target has already been reached, and it will not report the next step until the ones before it have happened. Each label on the chart is a position in that sequence, not an isolated condition that happened to be true.
Two of those steps are level touches rather than candle patterns, and they are treated
differently from the rest. That distinction is explained below and it matters.
THE LINES
Four families are drawn. Seven individual lines carry every rule in the script.
Bollinger Bands SMA 20 with deviation 2, giving Upper, Mid and Lower
LW MA on the HIGH weighted averages of the candle HIGH, drawn in the upper colour
LW MA on the LOW weighted averages of the candle LOW, drawn in the lower colour
EMA 50 on Close, drawn as a slower reference
The High averages sit above price and the Low averages below it, because of what they are
averaging. That is what forms the two bands the price runs between.
The seven lines every rule is written against are the three Bollinger Bands and the 5 and 10
period LW MAs on each side. Those four averages are drawn SOLID. Periods 6 to 9 are drawn DASHED, exist only to show the shape of the band, and sit on their own switch so you can take them off and see for yourself that nothing is calculated from them. Within each band the 5 sits nearer to price and the 10 further out.
The EMA 50 is drawn and nothing is measured from it either. It is there as background context for your own reading, and it can be switched off without changing a single label.
THE SEQUENCE
Upper and Lower name the band an event belongs to. Every rule below has an exact mirror on the other side, so only the Upper form is spelled out.
CSM - Candlestick Momentum
LW MA 5 High is above the Upper BB, and the candle CLOSES above LW MA 5 High.
The close is therefore beyond the outer band as well, without needing to be tested for it.
EX - Extreme
A CSM has already happened and its Extreme has not been taken yet. LW MA 5 High is still
outside the Upper BB, but a candle now CLOSES back below it. That candle must not reach down to LW MA 5 Low, LW MA 10 Low, or the Mid BB. Touching any one of the three disqualifies it. Exactly one Extreme belongs to one CSM. For another Extreme, a new CSM has to come first.
MTP - Mandatory Take Profit
After an Extreme, the first time price reaches LW MA 5 Low or LW MA 10 Low.
If a new CSM or a new MTM arrives before that touch, the MTP is cancelled and a fresh Extreme
has to form before it can be looked for again.
MLV - Market Volume Lost
After the MTP has been reached, a candle rises to the Upper BB but cannot CLOSE beyond it, and closes at or above the Mid BB. The band was tested and refused.
CSD - Candlestick Direction
A candle that opens on one side of the Mid BB and CLOSES through it, and in the same candle
closes beyond BOTH LW MA 5 and LW MA 10 on the side it broke into. An Upper CSD breaks upward through the Mid BB and both High averages; a Lower CSD breaks downward through the Mid BB and both Low averages. CSD is named by the direction it broke, not by which cycle it interrupted.
MTM - Momentum Push
After a CSM, price falls back below the Upper BB without ever CLOSING below the Mid BB, then
closes above the Upper BB again. That renewed push is the MTM candle. It is not itself a CSM,
which is what separates the two - and because it is not a CSM, it does not open the door to a
new Extreme either. It only clears whatever the previous CSM had left waiting.
RE - Re-Entry
The touch that follows CSM, MTM or CSD. An upper-band sequence looks for LW MA 5 Low or LW MA 10 Low; a lower-band sequence looks for LW MA 5 High or LW MA 10 High. Three kinds are marked separately, because they arrive from three different places:
CSM RE a pullback that was followed by a full CSM
MTM RE a pullback that was followed by an MTM push
CSD RE the pullback after a CSD
WHAT IS READ WHEN
This is the part worth being precise about.
CSM, EX, MLV, CSD and MTM are structure. They are decided on the CLOSE of a candle, and once
decided they never change.
MTP and RE are not patterns, they are level touches. A touch happens at the moment price reaches the level, not when the candle finishes, so both are read on the RUNNING candle. Waiting for the close would report the touch after the level had already been passed, which would describe something other than what happened.
When a running-candle label and a closing label land on the same bar, the running one is
removed and its text is folded into the closing label, so the two never sit on top of each other.
WHAT MAKES THIS DIFFERENT
1. It is a sequence, not a checklist.
An Extreme is not reported unless a CSM came first. An MTP is not looked for until an Extreme has been confirmed, and an MLV not until the MTP has been reached. The same candle shape means different things depending on what came before it, and the script keeps track of that.
2. A step can be cancelled, not only completed.
If momentum resumes with a new CSM or an MTM while an MTP is still waiting for its touch, that MTP is dropped. The market changed its mind, so the sequence restarts rather than reporting a target that no longer belongs to anything.
3. One Extreme per CSM.
An Extreme is the answer to a particular CSM, so it is reported once and then that CSM is spent.
Price can keep closing back inside the band for the next ten candles and none of them will be
called an Extreme. A new CSM has to arrive first. An MTM push does not substitute for one.
4. The Extreme test is deliberately narrow.
Closing back inside the band is not enough. The candle also has to stay clear of the opposite LW
MA 5 and 10 and of the Mid BB. A candle that reaches any of them has done more than fail at the edge, and it is not reported as an Extreme.
5. CSD is named by what it did.
A downward break through the Mid BB and both Low averages is a Lower CSD, wherever it happens to appear. Naming it after the cycle it interrupted would put the wrong word on the chart.
6. Touches are read as touches.
The two events that are levels rather than candle patterns are handled as levels, on the running candle, and the script says so plainly rather than pretending everything is close-based.
READING THE CHART
Each event prints a small label at the candle it belongs to. Upper-band events sit above the
candle, lower-band events below it, and where several land on the same candle they are stacked into one label instead of overlapping.
CSM momentum push beyond the outer band
MTM renewed push after a pullback
EX the reversal candle
MTP first touch of the opposite LW MA 5/10 after an Extreme
MLV the outer band tested and refused
CSD Mid BB and both same-side LW MAs broken together
CSM RE / MTM RE / CSD RE the re-entry touch, named after what preceded it
SETTINGS
Lines
- BB Period and BB Deviations for the Bollinger Bands.
- BB Shift: moves the drawn bands only. The values every rule is measured against are not
moved.
- LW MA 5 to 10 Low and LW MA 5 to 10 High: the twelve weighted average periods. Only 5 and 10 are used by any rule.
- EMA Period.
Pattern Types
- A switch for each of the seven: CSM, MTM, EX, MTP, MLV, CSD and RE.
Line Style
- Show LW MAs: the 5 and 10 period averages, the ones every rule is measured against.
- Show LW MA 6-9 Band: the four decorative periods on each side, on their own switch. Turning
them off is the quickest way to check the claim above - the chart gets simpler and not a single
label moves.
- Show or hide the Bollinger Bands and the EMA.
- Colours for the Bollinger Bands, the LW MA High band, the LW MA Low band and the EMA.
Labels
- Label Size.
ALERTS
Fourteen alert conditions, one for each event on each side:
CSM Upper / CSM Lower
MTM Upper / MTM Lower
EX Upper / EX Lower
MTP Upper / MTP Lower
MLV Upper / MLV Lower
CSD Upper / CSD Lower
Re-Entry Upper / Re-Entry Lower
The structural ones fire once per bar close. MTP and Re-Entry fire once per bar, because they are touches and are read on the running candle.
The same events are also sent through the alert function, so the "Any alert() function call"
alert type can deliver all of them through a single alert. Those messages name the exact
Re-Entry kind - CSM, MTM or CSD - which a fixed alert condition cannot.
REPAINTING
This script does not repaint.
CSM, MTM, EX, MLV and CSD are structure. They are evaluated only after a candle has fully closed and the state memory they drive is updated only on closes, so price moving inside an open candle cannot change the sequence.
MTP and Re-Entry are read on the running candle, and that deserves a straight answer rather than a disclaimer, because a label that can appear mid-candle usually can vanish mid-candle too. Here it cannot, and the reason is in the arithmetic of the level being watched.
A weighted average of the LOW gives the candle still forming a weight of one third at length 5,
and about one fifth at length 10. The running low of that candle falls three to five times faster
than the average it is being compared against. So the moment the low reaches the average, the gap between them can only keep closing. It can never reopen inside that candle. The high side is the exact mirror.
Which means:
- Once an MTP or Re-Entry label is drawn, it stays. It cannot un-touch before the candle closes.
- Reloading the chart gives the same result, because a closed candle is evaluated once using its
final low and high, and those are the most extreme values the candle ever had.
- The only thing that changes at the close is presentation: a running-candle label is folded into
the closing label for that bar so the two do not sit on top of each other. The event itself is
not re-decided.
When you create an alert, TradingView may show a caution banner saying the indicator can repaint.
That banner appears automatically for any script that uses the built in bar state variables, no
matter how they are used, because the platform cannot check the intent behind them. For the
structural alerts, choosing "Once Per Bar Close" is still recommended.
NOTES AND LIMITATIONS
- CSD is the strong form only: the Mid BB and BOTH same-side LW MAs have to be broken by the same candle. A Mid BB break on its own is not reported.
- An Extreme always needs a CSM before it. A reversal candle appearing without that history is
not an Extreme here, whatever it looks like.
- The 6, 7, 8 and 9 period LW MAs and the EMA 50 are drawn but never measured. Changing them, or hiding them, changes the picture and nothing else.
- BB Shift is visual only. Shifting the bands does not shift the rules.
- TradingView caps a script at 500 labels and the oldest are dropped once that cap is reached, so on a long history the earliest labels leave the chart.
- Detection is purely structural. It reports where each step of the sequence occurred and nothing more. It does not rank setups by quality, measure what happened next, or produce entries, targets or stops.
HOW TO USE IT
Read the labels in order rather than one at a time. A CSM on its own says momentum arrived. The same CSM followed by an Extreme says the move ran out of room. That Extreme followed by an MTP and then an MLV says the band was tested again and refused. Each label narrows what the previous one meant.
The two bands are the working area. Price spends most of its time between the LW MA High band and the LW MA Low band, and the Re-Entry marks are where it came back to one of them after a push.
A CSD is the point where the picture changes side. It is the only event in the set that breaks
the Mid BB and both same-side averages in one candle, and everything after it belongs to the new direction.
These are reference points, not entry signals on their own. Use them alongside your own analysis, your own entry method and proper risk management.
DISCLAIMER
This indicator is a pattern detection tool. It is not financial advice and it makes no claim
about profitability. Trading involves risk. Always apply your own analysis and risk management. Indikator

Stock StatsStock Stats — Single-Row Stat Dashboard
A compact, single-row table of key stock and crypto stats, displayed as button-style "chips" (label on top, value bold below) in the corner of your chart. Built to give a fast read on liquidity, extension, and volume without cluttering the chart.
Stats shown (each toggleable independently):
- Market cap — labeled by cap-size category (Nano / Micro / Small / Mid / Large / Mega), with the value shown below
- Float — shares float
- ADR% — average daily range %, a volatility measure over a configurable lookback
- ATR — average true range (daily, or weekly on weekly charts)
- LoDD — distance of the close from the low of day, in ATR-normalized %
- 52W High — 52-week high
- VolBuzz — today's volume vs. its 100-day average, as %
- RunRate — a time-of-day-adjusted projection of full-session volume. For regular US equity sessions it corrects for the typical open/close volume skew against the 100-day average; for 24/7 crypto tickers it uses the full UTC day and compares against the trailing average for the same day of week, so weekend volume is judged against past weekends rather than a blended average. Shows "–" whenever there's nothing live to project (market closed, or before/after the session).
All stats are computed on daily bars internally and stay correct regardless of your chart's timeframe — a 5-minute chart and a daily chart show the same numbers.
Customization: every stat can be shown/hidden, and its text color set independently. An optional empty spacer row keeps the pane's own icons from overlapping the table when hovered.
Credit: The original table layout is based on a concept by ArmerSchlucker; the ADR% formula is credited to Qullamaggie, MikeC, TheScrutiniser, and GlinckEastwoot.
Open-source, MPL 2.0 licensed. Indikator

Institutional Inducement Engine [algotim]Overview
Institutional Inducement Engine is a market-structure analysis tool built around a specific sequence: identify a major swing level, locate a smaller swing positioned between current price and that major level, require structural confirmation, and then monitor the confirmed level for a subsequent liquidity interaction.
The purpose of this workflow is to distinguish a potentially meaningful internal liquidity level from an ordinary minor swing. Instead of treating every internal pivot as an inducement, the script maintains a candidate state and only promotes that candidate after the required structural condition has occurred.
The resulting chart shows the relationship between external liquidity, confirmed internal inducement levels, subsequent sweeps, and the opposing external liquidity level.
Problem Statement
A conventional swing-point indicator treats major and minor pivots largely as the same type of information. This can make it difficult to distinguish a meaningful internal level from ordinary market noise.
This script uses two different structural scales:
* External swings represent the larger liquidity reference.
* Internal swings represent smaller candidate levels.
* The distance between them is optionally evaluated relative to ATR.
* A candidate can remain pending until a subsequent structure break confirms it.
This creates a sequential workflow rather than simply plotting every detected pivot.
Methodology
1. External Structure
The script detects major swing highs and lows using a configurable external pivot length.
A confirmed external high becomes the current bearish-side liquidity reference, while a confirmed external low becomes the current bullish-side liquidity reference.
Only the most recently detected external levels are maintained as the active structural references.
2. Internal Candidate Detection
A separate, shorter pivot length is used to detect internal highs and lows.
For a bullish inducement candidate, the internal low must be above the most recent external low.
For a bearish inducement candidate, the internal high must be below the most recent external high.
The separation between the internal candidate and its corresponding external level can also be filtered using ATR. With the ATR filter enabled, the minimum separation is:
Distance >= ATR x Minimum Distance Multiplier
This prevents very small differences between internal and external pivots from automatically qualifying as separate structural levels.
3. Pending Candidate State
A qualifying internal pivot is not immediately treated as a confirmed inducement.
Instead, the script stores its price and bar position as a pending candidate.
This distinction is important because the indicator is evaluating a sequence rather than a single candle or pivot:
Internal swing -> candidate -> structural confirmation -> confirmed inducement.
4. Break of Structure Confirmation
When BOS confirmation is enabled, the script looks for an internal structure point formed after the candidate.
For a bullish candidate, a subsequent internal high is tracked and a close crossing above that level confirms the bullish inducement.
For a bearish candidate, a subsequent internal low is tracked and a close crossing below that level confirms the bearish inducement.
Once confirmed, the pending candidate is transferred into the confirmed inducement state.
This prevents the initial internal pivot from being presented as a completed signal before the required structural sequence has occurred.
5. Inducement Zone
After confirmation, the inducement price is converted into a chart zone.
The zone height is derived from ATR rather than using a fixed number of ticks, allowing its visual size to scale with the instrument's current volatility.
The zone is then extended for the user-defined number of bars.
6. Liquidity Sweep Tracking
The script separately monitors the active external levels and confirmed inducement levels for price sweeps.
An external low is considered swept when price trades below that level and subsequently closes back above it.
An external high is considered swept when price trades above that level and subsequently closes back below it.
Confirmed inducement levels are also monitored. Once price trades through a confirmed inducement level, its sweep state is recorded so the same level is not repeatedly reported as a new sweep.
7. Liquidity Path Projection
After an inducement is confirmed, the script can draw a visual path from that inducement toward the opposing external liquidity reference.
For a confirmed bullish inducement, the path is drawn toward the current external high.
For a confirmed bearish inducement, the path is drawn toward the current external low.
This line is a structural visualization of the relationship between the two detected liquidity references. It is not a forecast or guarantee that price will reach the projected level.
Signal Workflow
The complete workflow is:
1. Detect a major external swing high or low.
2. Store that swing as the current external liquidity reference.
3. Detect smaller internal swings.
4. Test whether the internal swing is positioned between price structure and the corresponding external level.
5. Apply the optional ATR separation filter.
6. Store a qualifying internal swing as a pending candidate.
7. Identify a subsequent internal structure point.
8. Wait for the required break of that structure.
9. Promote the pending candidate to a confirmed inducement.
10. Draw the inducement zone.
11. Monitor the confirmed inducement and external liquidity for sweeps.
12. Optionally project the structural path toward the opposing external liquidity level.
This sequence is the central analytical framework of the indicator.
Why This Indicator Is Different
A standard pivot indicator answers a relatively simple question: "Where are the recent swing highs and lows?"
This script attempts to answer a different question: "Which smaller swing has a defined structural relationship with a larger liquidity reference, and has that relationship subsequently received structural confirmation?"
The distinction comes from the interaction of the components rather than from simply placing several indicators on the same chart.
The external and internal pivot systems operate at different structural scales. The ATR filter controls the minimum separation between those scales. The pending-state mechanism then prevents a candidate from becoming a confirmed inducement until the required structural event occurs.
After confirmation, the same state is carried forward into the sweep-tracking and opposing-liquidity visualization stages.
Consequently, the output represents a sequence of structural conditions rather than an independent collection of pivot, ATR and sweep markers.
Inputs
Structure
**External Swing Length**
Controls the pivot length used for major external swing detection.
**Internal Swing Length**
Controls the shorter pivot length used for internal candidate detection.
Filters
**Enable ATR Noise Filter**
Enables or disables volatility-adjusted separation between internal and external swings.
**ATR Length**
Controls the ATR calculation used by the distance filter and inducement-zone sizing.
**Min Distance (x ATR)**
Sets the minimum separation between the internal candidate and corresponding external level when the ATR filter is enabled.
**Require BOS Confirmation**
When enabled, an internal candidate must receive the specified structural break before becoming a confirmed inducement.
Visuals
The visual settings control whether external liquidity, inducement zones, sweep markers, path projections and liquidity targets are displayed.
**Path Projection Length** controls how far the projected structural path is drawn.
Style
Colors can be customized independently for bullish-side liquidity, bearish-side liquidity, bullish inducement zones, bearish inducement zones and projected paths.
Alerts
The script can generate alerts for:
* New bullish inducement
* New bearish inducement
* Bullish liquidity sweep
* Bearish liquidity sweep
* BOS confirmation events
These alerts correspond to state transitions in the detection workflow rather than simply alerting whenever an ordinary pivot appears.
Practical Usage
Use the external liquidity levels as the larger structural references and the inducement zones as secondary internal levels.
A typical workflow is to first identify the active external liquidity on the chart, then observe whether an appropriately separated internal swing forms. With BOS confirmation enabled, wait for the subsequent structural break before treating the candidate as confirmed.
After confirmation, monitor the inducement and external liquidity levels for subsequent sweeps.
The projected liquidity path should be interpreted as a visual representation of the detected structural relationship, not as a prediction of future price movement.
The indicator can therefore be used as a framework for studying how internal and external swing structures interact across different instruments and timeframes.
Limitations
The script uses confirmed pivot calculations. A pivot is only known after the required bars to the right have formed, so newly detected structure is inherently delayed by the selected pivot lengths.
Increasing the external or internal swing lengths will generally reduce the number of detected swings while making the structural definitions more selective. Smaller values can produce more candidates and more noise.
ATR filtering adapts the minimum separation to recent volatility, but it does not determine whether a particular market-structure interpretation is correct.
Liquidity sweeps are identified from the price relationship with detected levels. A sweep does not guarantee a reversal or continuation.
Projected liquidity paths are visual aids based on the currently detected opposing external level. They should not be interpreted as future-price forecasts.
The indicator is an analytical tool and should not be treated as a standalone trading system or a guarantee of market behavior.
Notes
The terms "liquidity", "inducement", "sweep" and "break of structure" describe the structural definitions implemented by this script. Different traders and methodologies may define these concepts differently.
For reproducibility, the most important settings are the external swing length, internal swing length, ATR separation threshold and BOS confirmation setting.
Signals and structural markings should be evaluated together with the underlying price action and the characteristics of the instrument and timeframe being analyzed. Indikator

AI Trend Strength Meter [algotim]Overview
EMA Cloud Trend Retest Signals is a trend-continuation indicator built around a state-based pullback and retest process.
The purpose of the script is to distinguish an ordinary moving-average touch from a structured retest. Instead of generating a signal simply because price crosses an EMA, the script first requires an established directional regime, then tracks a pullback into the EMA cloud and evaluates how deeply price retraces before attempting to resume the prevailing direction.
The result is a selective retest workflow rather than a standalone moving-average crossover signal.
Problem Statement
A basic EMA crossover can identify direction, but it does not describe what happens after the trend has started. Likewise, a simple moving-average touch can occur repeatedly during sideways markets and can produce many low-quality signals.
This script addresses that problem by separating trend identification from retest validation.
A trend must first establish itself for a configurable number of bars. Price must then interact with the EMA cloud. The script tracks the deepest part of that pullback and can require the depth to exceed a configurable fraction of ATR. Optional volume confirmation adds another condition at the retest candle.
This makes the signal dependent on the sequence of events rather than on one indicator crossing another.
Methodology
The trend engine uses a fast EMA and a slow EMA calculated from the selected price source.
When the fast EMA is above the slow EMA, the regime is bullish. When it is below the slow EMA, the regime is bearish.
The script also measures the percentage distance between the two EMAs:
Spread % = abs(Fast EMA - Slow EMA) / Close x 100
This value is normalized and used primarily to control the visual strength of the EMA cloud rather than to create an independent trading signal.
Trend age is tracked as the number of bars since the EMA regime last changed. A configurable minimum trend age prevents an immediate EMA flip from being treated as an established trend.
Retest Detection
Once a bullish regime is active, the script monitors for price interaction with the EMA cloud. For bearish regimes, the same process is applied in the opposite direction.
Depending on the selected setting, a retest can be recognized using either:
* A wick entering the EMA cloud.
* A candle close entering the EMA cloud.
Once the cloud is touched, a pullback state becomes active.
The script then tracks the most extreme price reached during that active pullback.
For bullish retests:
Pullback depth = Cloud top - Pullback low
For bearish retests:
Pullback depth = Pullback high - Cloud bottom
This allows the depth of the retracement to be compared with current volatility.
ATR Validation
The pullback-depth filter uses ATR as the volatility reference.
A bullish retest must satisfy:
Pullback depth >= ATR x Minimum Depth
A bearish retest uses the corresponding distance from the lower cloud boundary.
Because the threshold is expressed in ATR units, the filter adapts to the current volatility of the instrument instead of relying on a fixed price distance.
Volume Validation
When enabled, the retest candle is compared with a moving average of volume.
Volume confirmation requires:
Current volume >= Average volume x Volume multiplier
This filter is optional and can be disabled when volume data is unsuitable for the instrument.
Signal Workflow
1. Calculate the fast and slow EMAs.
2. Establish the bullish or bearish EMA regime.
3. Reset the signal lock when the EMA regime changes.
4. Count how many bars the current regime has remained active.
5. Ignore retests until the minimum trend-age requirement is satisfied.
6. Detect price interaction with the EMA cloud.
7. Activate a pullback state.
8. Track the deepest price reached during that pullback.
9. Compare pullback depth with the ATR-based minimum.
10. Optionally verify above-average volume.
11. Require price to close back through the appropriate cloud boundary.
12. Generate the retest signal.
13. Lock further signals until the EMA regime changes.
The one-signal-per-trend lock is an important part of the workflow. It prevents repeated cloud interactions during the same EMA regime from continuously producing identical signals.
Signal Strength
When enabled, the script classifies the retest using a simple three-point strength model.
One point is added when the trend has persisted for at least twice the minimum trend-age requirement.
One point is added when current volume reaches 1.5 times the average volume.
One point is added when the measured pullback depth reaches twice the configured minimum ATR depth.
A score of two or more is displayed as a stronger retest classification.
This score is a classification of the conditions present at the retest; it is not a probability or performance estimate.
Why This Indicator Is Different
A conventional EMA indicator normally answers one question: which EMA is above the other?
A basic pullback indicator may add a moving-average touch condition.
This script instead treats the retest as a sequence with persistent state:
EMA regime -> trend age -> cloud interaction -> pullback tracking -> ATR depth validation -> volume validation -> recovery through the cloud -> signal lock.
The distinction is therefore not the use of EMAs, ATR or volume individually. Those are standard analytical tools. The main contribution is the way they are used as sequential validation layers around a tracked pullback state.
The script also prevents multiple signals from the same trend regime by maintaining a signal-fired state until the EMA direction changes.
Inputs
EMA Cloud Settings
* Fast EMA Length
* Slow EMA Length
* Price Source
* EMA Line Width
* Candle coloring
* Cloud opacity and visual options
* ATR Length
Retest Settings
* Minimum Trend Age
* Wick-based or close-based cloud interaction
* Buy/Sell signal visibility
* Volume confirmation
* Volume moving-average length
* Volume multiplier
* Minimum pullback depth in ATR
* Signal-strength display
Risk and Target Settings
The script also provides configurable risk-reward reference levels where enabled, including target multipliers and a selectable stop-loss basis.
Alerts
The indicator provides alert functionality for the retest conditions according to the enabled alert settings.
Alerts should be interpreted as notifications that the defined sequence has completed, not as guarantees of future price movement.
Practical Usage
The indicator is intended primarily for trend-continuation analysis.
For bullish conditions, users can focus on periods where the fast EMA remains above the slow EMA, the trend has established for the required number of bars, and price pulls back into the EMA cloud before recovering above it.
For bearish conditions, the inverse process applies.
The ATR depth filter can be increased when shallow pullbacks generate excessive signals. The volume filter can be enabled when volume data provides useful participation information.
Signals should preferably be evaluated in the context of the broader market structure, timeframe and current volatility rather than treated as automatic entries.
Limitations
EMA-based regimes are lagging by construction and can change frequently during sideways markets.
A cloud interaction does not guarantee continuation. Ranging conditions can produce repeated pullbacks and failed retests.
ATR normalization adjusts the depth requirement to volatility but does not eliminate market noise.
Volume confirmation depends on the quality and meaning of the volume data available for the instrument.
The signal-strength score is a rule-based classification, not a statistical probability of success.
Trend age and pullback depth depend on historical bars and the selected settings, so results can vary substantially between instruments and timeframes.
Signals should be evaluated after bar close and should not be interpreted as guaranteed future price direction.
Notes
This indicator is an analytical framework for identifying structured EMA-cloud retests. It is not a trading strategy with guaranteed performance and should not be treated as financial advice.
The EMA, ATR and volume calculations used by the script are standard technical-analysis concepts. The intended distinction is the state-based workflow that combines them to qualify a single retest within an established trend regime.
Indikator

Engulfing Confirmation Signals [algotim]Overview
Engulfing Confirmation Signals is a two-stage price action indicator designed to distinguish basic engulfing candle formations from engulfing setups that receive additional confirmation from market context.
The script does not treat every bullish or bearish engulfing candle as a signal. First, an engulfing candle must satisfy structural requirements and pass a rule-based quality score using trend alignment, relative volume, and ATR expansion. A qualifying engulfing candle then creates a temporary confirmation zone based on its full high-low range.
The second stage waits for price to close beyond that range within a configurable number of bars. This separates the initial pattern from the subsequent breakout confirmation.
Problem Statement
A traditional engulfing detector can produce a large number of signals because the candlestick pattern itself only describes the relationship between the current candle and the previous candle.
This script adds a filtering and confirmation process around that pattern.
Instead of treating the engulfing candle as the final event, the indicator asks two separate questions:
1. Does the engulfing candle have sufficient structural and market-context quality?
2. After qualification, does price subsequently break the engulfing candle's range before the setup expires?
This creates a distinction between a qualified engulfing setup and a confirmed breakout.
Methodology
Stage 1: Engulfing Structure
A bullish engulfing candle must close above its open while the previous candle is bearish.
A bearish engulfing candle must close below its open while the previous candle is bullish.
When full-body engulfing is enabled, the current candle must also open and close beyond the previous candle's corresponding open and close.
The current candle body must be at least the configured multiple of the previous candle's body. The default minimum is 1.05 times the previous candle body.
The pattern is evaluated on the confirmed bar close.
### Stage 2: Quality Score
A qualifying engulfing candle receives a score from three rule-based components.
**Trend alignment - 40 points**
For bullish setups, the close is compared with the configured EMA. A close above the EMA receives the full 40 points. A close within the defined 0.2% proximity band receives 20 points.
For bearish setups, the corresponding relationship is reversed.
**Relative volume - 30 points**
Volume is compared with its simple moving average:
Volume ratio = Current volume / Average volume
The resulting value is converted into a score and capped at 30 points.
This allows the scoring engine to distinguish an engulfing candle occurring with relatively high participation from one occurring on comparatively weak volume.
**ATR expansion - 30 points**
Current ATR is compared with an average of ATR values.
ATR expansion contributes additional points when current volatility is above its ATR baseline, with the contribution capped at 30 points.
The three components are added together. An engulfing candle is accepted only when its total score reaches the user-defined minimum score.
The score is a rule-based filter and should not be interpreted as a probability or expected win rate.
Signal Workflow
Bullish workflow
1. Detect a bullish engulfing candle.
2. Verify the required body relationship with the previous candle.
3. Calculate trend, volume, and ATR components.
4. Add the components into the 0-100 quality score.
5. Ignore the setup if the score is below the minimum threshold.
6. If qualified, create a bullish confirmation zone using the engulfing candle's high and low.
7. Monitor subsequent bars for a close above the engulfing candle high.
8. Generate the confirmed bullish signal when that breakout occurs.
9. Expire the zone if the breakout does not occur within the configured waiting period.
Bearish workflow
1. Detect a bearish engulfing candle.
2. Verify the required body relationship with the previous candle.
3. Calculate trend, volume, and ATR components.
4. Add the components into the 0-100 quality score.
5. Ignore the setup if the score is below the minimum threshold.
6. If qualified, create a bearish confirmation zone using the engulfing candle's high and low.
7. Monitor subsequent bars for a close below the engulfing candle low.
8. Generate the confirmed bearish signal when that breakout occurs.
9. Expire the zone if the breakout does not occur within the configured waiting period.
Why This Indicator Is Different
A conventional engulfing indicator normally stops at identifying the candlestick pattern.
This script uses the engulfing candle as the beginning of a two-stage process.
The first stage evaluates whether the pattern has sufficient contextual support using three measurable conditions: its position relative to an EMA, current volume relative to average volume, and current ATR relative to its ATR baseline.
The second stage does not immediately convert a qualified engulfing candle into a confirmed breakout signal. Instead, the engulfing candle's range becomes a temporary state that is monitored for a subsequent closing breakout.
This distinction is the main purpose of the indicator: the initial engulfing event and the later range break are treated as separate analytical events.
Inputs
Engulfing Detection
**Min Body Size vs Prior Candle**
Controls how large the engulfing candle's body must be relative to the previous candle.
**Require Full Body Engulf**
When enabled, the current candle's open and close must fully engulf the previous candle's body.
Confirmation Engine
**Trend EMA Length**
Sets the EMA used for the trend-alignment component of the score.
**Volume Average Length**
Controls the moving-average baseline used to evaluate relative volume.
**ATR Length**
Controls the ATR calculation used by the volatility component.
**Minimum Quality Score**
Sets the minimum combined score required for an engulfing candle to create a confirmation zone.
Confirmation Zone
**Max Bars to Wait for Confirmation**
Defines how long an active engulfing zone remains valid while waiting for a breakout.
**Extend Zone Box While Active**
Controls whether the active zone visually extends as subsequent bars are processed.
Visual Style
The visual inputs control bullish and bearish colors, zone transparency, Stage 1 markers, and whether the numerical quality score is displayed.
Alerts
The script provides alerts for:
* Qualified bullish engulfing
* Qualified bearish engulfing
* Confirmed bullish breakout
* Confirmed bearish breakout
Qualified alerts identify the first stage of the process. Confirmed breakout alerts identify the second stage.
Practical Usage
The Stage 1 marker can be used to locate engulfing candles that have passed the configured contextual filters.
The Stage 2 confirmation marker can then be used to identify cases where price subsequently closes beyond the qualified engulfing candle's range.
Users can adjust the minimum score to control selectivity. Higher thresholds require stronger combined trend, volume, and volatility conditions and will generally produce fewer qualifying setups.
The confirmation window can also be adjusted depending on how long the user wants an engulfing setup to remain valid.
The indicator is intended for chart analysis and can be evaluated across different instruments and timeframes. Settings should be tested against the characteristics of the market being analyzed.
Limitations
The quality score is a rule-based classification and is not a statistical probability, accuracy percentage, or guarantee of future performance.
Engulfing patterns can fail, and a confirmed range breakout does not guarantee continued price movement.
Volume behavior varies between instruments, particularly where volume data is limited or represents different types of market activity.
EMA, volume, and ATR parameters can produce different results across instruments and timeframes.
Signals are generated from completed bar conditions, but the confirmation process can still produce false breakouts during volatile or ranging conditions.
The indicator does not provide trade management, position sizing, stop-loss, or take-profit recommendations.
Notes
The script is designed as a structured confirmation framework around engulfing price action.
Its output should be interpreted as analytical information rather than a standalone trading decision. Users should evaluate the indicator with their own market context, risk management, and trading methodology. Indikator

Optimal Trade Entry (OTE) Zone Plotter [algotim]Optimal Trade Entry (OTE) Zone Plotter locates the 62%-79% institutional retracement zone of a confirmed impulsive swing and keeps only the single most relevant zone per direction on the chart, fading it through disclosed mitigation states as price interacts with it.
Problem Statement
The Optimal Trade Entry concept, retracing into the 62%-79% region of an impulsive leg before continuation, is a well-known Fibonacci convention, but most public implementations simply plot every Fibonacci level on every swing they detect. This produces charts covered in overlapping retracement boxes, most of which come from insignificant swings that carry no real weight, and gives no visual indication of which zones are still fresh, already tested, or fully invalidated.
This indicator addresses that gap by filtering which swings are allowed to generate a zone in the first place, by showing only the current zone per direction at full strength, and by changing each zone's appearance as price actually interacts with it.
Methodology
Swing highs and lows are identified with ta.pivothigh/ta.pivotlow using a user-defined Pivot Length, so every swing referenced by the script is a confirmed pivot, evaluated only after barstate.isconfirmed is true.
Consecutive pivots of the same type extend a running swing extreme; a leg is only registered when the pivot type alternates (a low following a high, or a high following a low). Each candidate leg must then clear three disclosed checks before it is allowed to create a zone: the leg's price range must reach a minimum multiple of ATR, the swing candle's own body-to-range ratio must reach a minimum threshold, and, if the Break of Structure filter is enabled, the new swing must exceed the prior swing of the same type. Legs that fail any check produce no zone, no label, and no alert.
A qualifying leg generates one OTE zone: the shaded region between the 62% and 79% retracement of that leg, with the 70.5% level drawn as a two-layer glowing midline inside it. Only one bullish and one bearish zone are ever active at a time. When a new qualifying leg forms, the previous zone of that direction is frozen in place and, if enabled, kept as a single low-opacity historical reference rather than removed outright or left overlapping the new zone.
Each active zone tracks its own mitigation state on every confirmed bar: Fresh (untouched), Touched (price has wicked into the 62%-79% region), Mitigated (a confirmed close through the 79% boundary), or Invalidated (a confirmed close back through the leg's own origin point). State can only advance forward, and the zone's fill opacity and border color update automatically at each transition, so the chart communicates a zone's condition without any additional label or panel.
Signal Workflow
Step 1 — a confirmed swing pivot alternates direction, registering a candidate leg from the prior opposite pivot to the new one.
Step 2 — the leg is checked against the Minimum Swing Size, Body Ratio, and optional Break of Structure filters; legs that fail are discarded with no chart output.
Step 3 — a qualifying leg creates a new active OTE zone (62%-79%) with its 70.5% midline, and the previous zone of the same direction is frozen and faded.
Step 4 — the active zone's state advances from Fresh to Touched as price wicks into the zone on a confirmed bar.
Step 5 — the zone advances to Mitigated on a confirmed close through the 79% boundary, or to Invalidated on a confirmed close back through the leg's origin, at which point it is greyed out.
Step 6 — each transition and each zone entry/exit can trigger its own alert, gated by the corresponding toggle in the Alerts group.
Why This Indicator Is Different
Most public OTE/Fibonacci scripts draw a zone for every detected swing regardless of its significance, leaving multiple overlapping retracement boxes on the chart at once.
This script applies a disclosed three-part quality filter (ATR-relative swing size, swing candle body ratio, optional break-of-structure confirmation) before a swing is even allowed to generate a zone.
Only one zone per direction is ever shown at full strength; the prior zone automatically fades to a quiet historical reference the moment a new qualifying swing appears, keeping the chart focused on the current opportunity.
Zone fill opacity and border color are driven entirely by a four-state mitigation engine (Fresh/Touched/Mitigated/Invalidated) computed from confirmed price action against the zone's own boundaries, so the visual state of a zone is informative rather than purely decorative.
The 70.5% equilibrium level is rendered as a two-layer glow line rather than a plain dashed line, giving the zone's mid-point a distinct, non-generic appearance.
Inputs
Swing Detection
Pivot Length
ATR Length
OTE Quality Filter
Minimum Swing Size (x ATR)
Minimum Swing Candle Body Ratio
Require Break of Structure
OTE Zone
Show Bullish OTE Zones
Show Bearish OTE Zones
Zone Extension (bars)
Show Institutional Midline (70.5%)
Fade Previous Zone on New Swing
Visual Settings
Bullish/Bearish Zone Colour
Bullish/Bearish Midline Colour
Label Size
Alerts
Alert: New OTE Zone Created
Alert: Price Entered OTE Zone
Alert: Price Left OTE Zone
Alert: OTE Zone Mitigated
Alert: OTE Zone Invalidated
Alerts
Alerts are available for:
New Bullish/Bearish OTE Zone Created
Price Entered Bullish/Bearish OTE Zone
Price Left Bullish/Bearish OTE Zone
Bullish/Bearish OTE Zone Mitigated
Bullish/Bearish OTE Zone Invalidated
Practical Usage
Treat an active, Fresh OTE zone in the direction of the prevailing structure as a region to watch for a retracement entry, not a standalone entry signal by itself.
Use the Break of Structure filter on trending instruments to restrict zones to swings that genuinely extended structure, and disable it on ranging instruments where internal swings may still be meaningful.
Raise the Minimum Swing Size and Body Ratio filters on lower timeframes or noisy instruments to reduce the number of zones generated.
Watch the zone's fill opacity as a quick visual read of its condition: a bold zone has not been tested, a lighter fill has already been touched or mitigated, and a greyed zone has been invalidated and should generally be disregarded.
Combine the Entered/Exited alerts with your own confirmation criteria (candlestick behavior, lower-timeframe structure, etc.) rather than treating zone entry alone as a trigger.
Limitations
Swing pivots require bars to form on both sides before they confirm, so every zone is inherently placed a Pivot Length number of bars after the actual swing extreme occurred.
The quality filter reduces the number of zones shown but does not evaluate or predict the outcome of any individual retracement.
Only one active zone per direction is displayed at a time; if you want to review multiple historical zones simultaneously, enable "Fade Previous Zone on New Swing" and note that only the single most recent prior zone is retained, not a full history.
As with any retracement-based tool, results will vary across instruments, timeframes, and market regimes.
Notes
This indicator is a zone-location tool intended to highlight the current, quality-filtered Optimal Trade Entry region and its mitigation state through a disclosed, rule-based process.
All swing confirmations, zone creation, mitigation-state transitions, and invalidations are evaluated on confirmed bar closes only, so no element of the script repaints once drawn.
The output is intended to support retracement-based analysis and is not a standalone buy or sell recommendation. Indikator

Inducement Sweep Strategy [algotim]Inducement Sweep Strategy enters trades only after the classic ICT inducement sequence has fully played out: an external liquidity pool is identified, an internal swing (the inducement) forms in front of it, that inducement is swept with genuine displacement, and price then confirms a Market Structure Shift back in the real direction. Every qualifying setup is scored by the Inducement Quality Index (IQI), a 0-to-100 composite that ranks how convincing the engineered move actually was before an entry signal is ever shown.
Problem Statement
Most public inducement or "sweep and BOS" scripts fire a signal the instant any minor swing is tagged and broken. They do not distinguish between an inducement that formed in front of a meaningful liquidity pool with a violent, high-conviction reversal, and a shallow internal wiggle that happened to get tapped during normal noise. Traders end up manually filtering every alert, checking chart context by hand, which defeats the purpose of automating inducement detection in the first place. This script instead separates structure identification from signal display: the full pipeline runs on every bar, but only setups that pass the quality bar are shown as entries.
Methodology
Two pivot lengths run in parallel. A longer length confirms External Structure — the major swing highs and lows that represent the real liquidity pool the market is engineered toward. A shorter length confirms Internal Structure — the minor swings that sit closer to current price. When a confirmed internal low forms above the most recent confirmed external low (or, for shorts, an internal high forms below the most recent external high), that internal point is flagged as an Inducement Candidate: a level structurally positioned to attract retail stops in front of the real liquidity pool.
The candidate remains active until price wicks through it and closes back on the correct side with a reversal body at least a user-defined ATR multiple in size — this is the Sweep, and the ATR displacement requirement filters out shallow wicks that reflect noise rather than an engineered stop run. Once swept, the script watches for a Market Structure Shift: a close beyond the internal high or low that sat between the external level and the inducement. Only this break confirms the real directional move is underway, and only then does the entry logic activate.
Each confirmed setup is scored by the IQI engine across four factors — displacement strength, sweep freshness, liquidity depth, and rejection wick quality — combined into a single 0-to-100 score. An entry signal is only displayed on the chart when the score meets the user's configured minimum, so lower-quality setups are tracked internally but never clutter the chart or trigger alerts.
If price fails to sweep the inducement within a maximum bar window, breaks the external level before the sweep, fails to confirm the MSS within its own bar window, or fails an optional retest, the setup is invalidated and the pipeline resets automatically. All structure is derived from confirmed pivots only, so nothing in the detection logic repaints.
Signal Workflow
1. Confirm a major external swing high or low using the External Structure Length.
2. Confirm a minor internal swing forming on the inducing side of that external level — this becomes the active Inducement Candidate.
3. Wait for price to wick through the inducement level and close back on the correct side with a reversal body meeting the ATR displacement threshold — this is the Sweep.
4. Wait for a confirmed close beyond the internal high/low recorded between the external level and the inducement — this is the Market Structure Shift.
5. Calculate the Inducement Quality Index from displacement, freshness, depth, and rejection wick quality.
6. If Require Retest is enabled, wait for price to pull back and hold the broken MSS level before confirming.
7. Display the entry signal with its IQI score only if the score meets the configured minimum, and fire the corresponding alert.
Why This Indicator Is Different
Standard inducement or liquidity-sweep-plus-BOS scripts treat every sweep-and-break sequence identically, regardless of how convincing the move actually was.
The Inducement Quality Index is a composite score built specifically around the mechanics of an engineered inducement move rather than a generic volatility or volume filter — it weighs how fresh the sweep was relative to the inducement, how deep the underlying liquidity pool is in ATR terms, how strong the displacement candle was, and how decisively the sweep bar rejected its extreme.
Because setups below the quality threshold are still tracked internally and simply not displayed, the pipeline status label can show a user exactly where an unfolding setup stands without forcing premature signals onto the chart.
The optional retest requirement gives discretionary traders a way to demand confirmation of the broken structure as new support or resistance before treating the setup as valid, without changing the core detection logic.
Inputs
Structure Settings
External Structure Length — pivot length confirming the major swing that anchors the real liquidity pool
Internal Structure Length — pivot length confirming the minor swing used as the inducement candidate
Inducement Settings
Max Bars to Sweep — maximum age allowed for an inducement candidate before it is discarded as stale
Max Bars to Confirm MSS — maximum age allowed between the sweep and the structure shift confirmation
Displacement Filter
ATR Length — period for the ATR used in the displacement requirement
Min Displacement (x ATR) — minimum reversal candle body, as an ATR multiple, required to validate a sweep
Signal Quality
Minimum IQI to Show Signal — setups scoring below this 0-100 threshold are tracked but not displayed
Entry Options
Require Retest Before Entry — waits for a pullback that holds the broken MSS level before confirming the signal
Trade Levels
Show Entry / Stop / Target Lines — visual-only projected levels, not a managed strategy
Reward : Risk Ratio — target distance as a multiple of the stop distance
Level Projection Length — how far right the projected lines extend
Visual Settings
Show Inducement Level, Show Sweep Marker, Show MSS Break Line, Show Pipeline Status Label
Bullish / Bearish / Inducement / MSS / Sweep Marker colors
Alert Settings
Alert: Inducement Identified, Alert: Inducement Swept, Alert: Entry Signal, Alert: Setup Invalidated
Alerts
Alerts are available for:
Bullish Inducement Identified
Bearish Inducement Identified
Bullish Inducement Swept
Bearish Inducement Swept
Long Entry Signal (with IQI score, entry, and stop level)
Short Entry Signal (with IQI score, entry, and stop level)
Setup Invalidated (bullish and bearish, optional)
Practical Usage
Raise the Minimum IQI threshold on lower timeframes or noisy instruments to surface only the most convincing engineered moves.
Enable Require Retest for a more conservative entry style that waits for the broken structure to hold before committing.
Use the pipeline status label to monitor an unfolding setup in real time without needing a signal to already have fired.
The projected trade levels are a visual reference only — position sizing and trade management remain the trader's responsibility.
Combine with a higher timeframe bias tool to only act on Inducement Sweep signals that align with the broader directional context.
Limitations
Structure confirmation requires the full pivot look-right period to elapse before a swing is confirmed, so entries occur after price has already moved past the exact reversal point. This is standard confirmed-pivot behavior and is not repainting.
The IQI score is a relative ranking based on the four factors described above and does not guarantee trade outcomes. It should be used as a filtering aid, not a standalone trading signal.
The displacement filter is ATR-relative; on instruments with unusually low volatility, the ATR multiple may need to be reduced to detect qualifying sweeps.
The indicator does not manage open positions, calculate position size, or provide exits beyond the single visual target line. It identifies potential inducement-based entries only.
Notes
All structure levels and signals are drawn at the bar index of the actual pivot or event, not the confirmation bar, ensuring accurate visual placement.
The state machine for bullish and bearish setups runs independently and concurrently, so both directions can be tracked at the same time on ranging instruments.
For best results combine with Market Structure Break BOS/CHoCH Tracker to cross-check the higher timeframe structural context before acting on a signal. Indikator

Bibliothek

Converging Triangles [The_lurker]🔻 CONVERGING TRIANGLES — المثلثات المتقاربة 🔺
No repaint. Nothing that appears ever moves, shifts, or disappears.
Converging Triangles identifies contracting price structures built from confirmed swing pivots: a falling resistance line and a rising support line that coexist in time and close on each other. It runs three independent scales at once, freezes each structure the moment it is identified, and reports the two boundary prices and the exact bar they were crossed.
🔶 1 — THE STRUCTURE
A converging triangle here is not a shape matched against a template. It is a state: two independently valid trendlines, alive at the same time, closing on each other.
Upper boundary — anchored on the two most recent confirmed swing highs, sloping down.
Lower boundary — anchored on the two most recent confirmed swing lows, sloping up.
Because the constraint is on the sign of each slope, the detected family covers symmetric triangles and the near-flat ascending and descending variants. Wedges, where both boundaries slope the same way, are excluded by construction and never appear.
🔶 2 — HOW A STRUCTURE IS ADMITTED
Each boundary must pass every test below, and both boundaries must pass simultaneously before a structure is drawn. One failed test drops the whole structure.
🔸 PER BOUNDARY — five conditions
Pivot confirmation — both anchors are swing points confirmed by "length" bars on each side.
Span — at least 3 bars between anchors, at most length × Max span.
Slope direction — the upper boundary must fall, the lower must rise.
Interior containment — no bar between the two anchors violates the line.
Forward containment — no bar from the second anchor to the present violates the line.
🔸 PER STRUCTURE — three conditions
Both sides live — neither boundary has been broken.
Time overlap — the two boundaries share a common bar range, so no line is drawn across a region where it has no anchors.
Convergence horizon — the projected intersection falls inside Min bars to apex … Max bars to apex.
🔒 Once admitted, the geometry is frozen. Anchor points and slopes never change for the life of that structure.
🔶 3 — READING THE DRAWING
Each boundary is drawn in two segments, and the difference is deliberate.
Solid segment — spans the boundary's own two anchors. This is measured containment, confirmed by the market.
Dotted segment — from the last anchor to the present bar. This is pure extrapolation.
You can always see where the confirmed part ends and the projected part begins.
A single fill binds the two boundaries into one object rather than two unrelated strokes. Its corners are the two starting anchors and the two current endpoints, so the left edge is a slant, not a vertical cut, and the wedge tip is filled.
🔸 COLOUR STATES
⚪ Forming — neutral grey. No directional claim is made before resolution.
🟢 Broken up — green. Lines and fill together.
🔴 Broken down — red. Lines and fill together.
The structure stays neutral for its entire life. Direction is asserted only after a break is confirmed at bar close.
🔶 4 — BREAK DETECTION
On every confirmed bar, the break source is compared against both boundaries at that bar.
If one boundary is violated, the structure resolves in that direction.
If a single bar violates both boundaries, resolution goes to the side with the larger excursion beyond its line.
The shape is then redrawn in the break colour and frozen at the break bar. It does not extend forward afterward.
🏷️ A break label is placed at the bar, carrying its layer letter and any tags that fired.
🔶 5 — THREE INDEPENDENT SCALES
📏 Large (21) · Mid (14) · Small (5)
Contraction is not a single event. A large structure can be narrowing while a small one narrows inside it, and each can resolve in the opposite direction to the other. That is information worth seeing, not a conflict to hide.
Each layer detects, tracks, and resolves independently. Break labels carry L, M, or S, so the scale is always identifiable. Any layer can be switched off.
🔶 6 — HISTORICAL ARCHIVE
🗂️ Optional, off by default.
When enabled, a resolved structure is not deleted but redrawn at a faded shade. Over time this builds a map of where previous contractions broke on that symbol, under a count cap you control, with oldest-first eviction.
The fade is a separate control: set it to zero and archived structures render identically to live ones.
A structure that expires at the apex without resolving is not archived, since there is no event in it to keep.
Archived structures carry no label. Their colour and position already carry the direction.
🔶 7 — INFORMATION PANEL
📋 Reports the nearest live structure, or the nearest recently resolved one if none is live.
Layer — Large / Mid / Small. Coloured by resolution direction once broken.
Upper — the exact upper boundary price, ready to place an order against.
Lower — the same for the lower boundary.
Width (ATR) — current width in ATR units. After a break it becomes "Width at break", measured against the ATR recorded at that same bar, so the number stays fixed for a frozen structure and does not drift as volatility changes.
Projected apex — bars until the two boundaries intersect. After a break it becomes "Since break".
Status — Active · Break pending at close · Broken up · Broken down.
⚠️ The status row alone reads the live bar. It can move between pending and active within a single bar as price crosses back and forth. That is a live readout, labelled as such, not a repaint. The drawn geometry does not move.
🔶 8 — BREAK TAGS
Two optional descriptive measurements, shown on the break bar when they occur.
📊 V — break-bar volume exceeded its moving average by the configured multiplier.
📐 E — break-bar true range exceeded ATR by the configured multiplier.
These describe what happened on that bar. They are not quality scores or confidence grades, and they do not filter anything.
🔶 9 — ALERTS
🔔 Pattern formed — a new structure is admitted.
🔔 Break up — upper boundary broken.
🔔 Break down — lower boundary broken.
🔔 Any resolution — either break.
All alerts fire once per bar close, never before.
🔶 10 — SETTINGS REFERENCE
The icons below match the group headers you see inside the indicator's settings window.
🔸 ⚙️ SETUP
Language — default English. Switching to Arabic changes the entire interface.
Log scale — default Off. Must be matched to your chart's scale manually. See section 12.
ATR length — default 14. Feeds the E tag, the demote distance, and the panel width reading.
🔸 📏 LAYERS
Large L — default On, length 21.
Mid M — default On, length 14.
Small S — default On, length 5.
🔸 🔎 DETECTION
Close-only pivots — default Off. Off anchors on highs and lows; On anchors on closes.
Break source — default Close. One switch governing three things at once: interior containment, forward containment, and break detection.
Max span (× length) — default 5. Ceiling on bars between a boundary's two anchors.
Min side overlap — default 0. Required shared bar range between the two boundaries.
Min bars to apex — default 2.
Max bars to apex — default 200.
🔸 🎨 APPEARANCE
Fill triangle — default On, transparency 78.
Line width 2, line transparency 15.
Colours — grey while forming, green for an upward break, red for a downward break.
🔸 🗂️ HISTORY AND LIFETIME
Keep as current (bars) — default 30. After this the structure is demoted to the archive, or deleted if the archive is off.
Demote beyond (ATR) — default 8.0. Measured against current ATR by design: the question is how far price is now, in today's volatility.
Show historical patterns — default Off.
Historical kept — default 12, a cap across all three layers combined.
Historical fade — default 30, added on top of line and fill transparency.
🔸 🏷️ LABELS
Show labels — default On, 2 kept.
Volume tag V — default On. MA 20, multiplier 1.5.
Range expansion E — default On. Multiplier 1.4.
🔸 📋 PANEL
Show panel — default On, positioned top right.
🔶 11 — ON ACCURACY
Two different things get called accuracy. Only one of them is claimed here.
✅ Structural accuracy is exact and independently verifiable. Every anchor is a confirmed pivot, never a guess. Every line satisfies its containment test at the bar it is drawn. Geometry closes at formation and is never recalculated. A break is settled by a single unambiguous test on a closed bar. Nothing is repainted, backfilled, or silently adjusted. Replay any chart and trace any element yourself.
❌ Predictive accuracy is not claimed. You will find no win rate here, no signal grade, and no price target.
The indicator tells you precisely where the boundaries are and precisely when they were crossed. What that is worth in your strategy, on your instrument, at your timeframe, is yours to determine and yours to risk.
🔶 12 — BEHAVIOUR TO UNDERSTAND BEFORE TRUSTING THE CHART
⚠️ Why a structure appears late. A pivot is not a pivot until its full confirmation bars have passed. That delay is the price of the promise in the first line: nothing appears before its time, and nothing that appears is taken back afterward.
⚠️ A wick may cross a line. By default, anchors sit on highs and lows while containment and break detection are tested on the close. A wick can pierce a boundary while the structure remains valid. Set Break source = Wick for a shape no wick ever touches, and expect noticeably fewer structures from that considerably stricter test.
⚠️ Log scale is manual. Pine cannot read your chart's scale setting. If your chart is logarithmic, enable Log scale. When the two disagree, the computed break level diverges from the drawn line: negligible on narrow structures, material on wide ones. The tell is visible on the chart itself, as the left fill edge separates from the boundary at the second anchor.
⚠️ Where anchors come from. Each boundary is built from the two most recent pivots on its own side. A line that would skip an intermediate pivot is outside the detection scope.
⚠️ Density. Three layers with a full archive weighs the chart down. Disable the layers you do not need, and use the archive cap and the fade to control it.
═════════════════════════════════════════════════════════════
⚠️ DISCLAIMER
═════════════════════════════════════════════════════════════
This indicator is for educational and analytical purposes only. It does not constitute financial, investment, or trading advice. Use it alongside your own strategy and risk management. Neither TradingView nor the developer is responsible for any financial decisions or losses.
═════════════════════════════════════════════════════════════
🔻 المثلثات المتقاربة — Converging Triangles 🔺
ما يظهر على الشارت لا يتحرك ولا ينزاح ولا يُسحب لاحقاً. لا إعادة رسم.
يبحث المؤشر عن حالة واحدة لا عن شكل: أن يجتمع خط مقاومة هابط مع خط دعم صاعد في الوقت نفسه، وأن يضيق ما بينهما شمعةً بعد شمعة. فإذا اجتمعا واستوفى كلٌّ منهما شروطه، رُسم النطاق وتجمّدت هندسته في اللحظة نفسها، فلا تتغيّر بعدها مهما فعل السعر.
🔶 أول ما ينبغي أن تعرفه
لأنه لا يبحث عن شكل يطابقه بقالب جاهز، فهو لا يفرض عليك تسمية. هو يعطيك حدّين بسعرين محدّدين، ويخبرك متى عُبر أحدهما بالضبط. أما ما تفعله بذلك فأنت وحدك.
الحد العلوي — مرسي على آخر قمتين مؤكَّدتين، هابط.
الحد السفلي — مرسي على آخر قاعين مؤكَّدين، صاعد.
ولأن الشرط على إشارة كل ميل، فالعائلة المكتشَفة تشمل المثلث المتماثل والنسخ شبه المستوية من الصاعد والهابط. أما الوتدان، حيث يميل الحدّان في اتجاه واحد، فمستبعدان بالبناء ولا يظهران أبداً.
ويعمل على ثلاثة مقاييس في وقت واحد، لكل مقياس نموذجه المستقل.
🔶 متى يُرسم النطاق؟
لا يُرسم شيء ما لم يستوفِ كل حد شروطه الخمسة، ثم يجتمع الحدّان معاً على ثلاثة شروط أخرى. وأي شرط يسقط يُسقط النموذج كله.
🔸 الحد الواحد — خمسة شروط
أن يقوم على محورين مؤكَّدين. والمحور لا يُعدّ مؤكَّداً إلا بعد أن تمرّ عليه شموع التأكيد كاملة على الجانبين.
أن تكون المسافة بين المحورين ثلاث شموع فأكثر، ولا تتجاوز الطول مضروباً في «أقصى مسافة».
أن يكون العلوي هابطاً والسفلي صاعداً.
ألا تخرق أي شمعة الخط في الفترة الواقعة بين المحورين.
ألا تخرقه أي شمعة من المحور الثاني إلى اللحظة الحالية.
🔸 الحدّان معاً — ثلاثة شروط
أن يكون كلاهما سليماً لم يُكسر.
أن يتعايشا على فترة زمنية مشتركة. وهذا الشرط يمنع أن يُرسم خط في منطقة لا محاور له فيها أصلاً.
أن يقع تقاطعهما المتوقَّع ضمن المدى الذي تحدّده بين «أدنى مسافة للرأس» و«أقصاها».
🔒 وبعد القبول تُغلق الهندسة نهائياً: المحاور ثابتة والميلان ثابتان، ولا شيء يُعاد حسابه.
🔶 كيف تقرأ ما تراه
لكل حد مقطعان، والفرق بينهما مقصود لا زخرفي:
المقطع الصلب يمتد بين محوري ذلك الحد، وهو ما تحقّق فعلاً واحتواه السوق.
المقطع المنقّط يمتد من المحور الأخير إلى الشمعة الحالية، وهو استقراء لا أكثر.
فأنت ترى في كل لحظة أين ينتهي المؤكَّد ويبدأ المتوقَّع.
وتربط بين الحدّين تعبئة واحدة تجعلهما كياناً واحداً لا خطّين منفصلين. وقد أُخذت أركانها من محورَي البداية الفعليين، ولذلك جاءت الحافة اليسرى مائلة يمتلئ عندها رأس الشكل، لا مقطوعة عمودياً.
🔸 واللون يحمل الحالة وحدها
⚪ رمادي محايد ما دام النطاق حيّاً. فلا اتجاه يُدّعى قبل أن يُحسم.
🟢 أخضر إذا حُسم بالخروج من الأعلى. الخطوط والتعبئة معاً.
🔴 أحمر إذا حُسم بالخروج من الأسفل. الخطوط والتعبئة معاً.
فالنطاق يبقى محايداً طوال حياته، ولا يُعلن الاتجاه إلا بعد أن تُغلق الشمعة خارج أحد الحدّين.
🔶 متى يُعدّ النطاق مكسوراً
عند إغلاق كل شمعة يُقاس السعر على الحدّين معاً.
فإن خرج من أحدهما حُسم النطاق في اتجاهه.
وقد تأتي شمعة عنيفة تخرج من الحدّين كليهما، وعندها يُحسم للجهة التي ابتعد عنها السعر أكثر.
ثم يُعاد رسم الشكل بلون الخروج ويُثبَّت عند شمعته، فلا يمتد بعدها إلى الأمام.
🏷️ وتوضع عندها تسمية تحمل حرف المقياس (L أو M أو S) ووسوم الشمعة إن تحقّقت.
🔶 لماذا ثلاثة مقاييس
📏 كبير 21 · متوسط 14 · صغير 5
لأن الانضغاط ليس حدثاً واحداً. فقد يضيق نطاق كبير بينما يضيق داخله نطاق صغير، ويخرج كلٌّ منهما في اتجاه مضاد للآخر. وهذا في نفسه معلومة تستحق أن تُرى، لا تعارضاً يجب إخفاؤه.
ولذلك تعمل الطبقات الثلاث باستقلال تام، ويحمل كل خروج حرف مقياسه فلا يختلط عليك من أين جاء. وتستطيع إطفاء أي طبقة لا تحتاجها.
🔶 النماذج السابقة
🗂️ خيار مطفأ افتراضياً.
إن شغّلته، لم يُمحَ النموذج بعد حسمه، بل بقي مرسوماً بدرجة خافتة. وبمرور الوقت تتكوّن لديك خريطة لمواضع الخروج السابقة على الرمز نفسه، بسقف عددي تحدّده أنت، ويُخلى الأقدم فالأقدم.
ودرجة الخفوت مستقلة بيدك: إن أنزلتها إلى الصفر صارت النماذج القديمة كالحيّة تماماً.
والنموذج الذي انتهى عمره دون خروج لا يدخل الأرشيف، إذ لا حدث فيه يُحفظ.
والنماذج المؤرشفة بلا تسميات، فلونها وموضعها يكفيان.
🔶 لوحة المعلومات
📋 تعرض اللوحة أقرب نطاق حيّ إليك، فإن لم يوجد عرضت أقرب نطاق حُسم حديثاً.
الطبقة — كبير أو متوسط أو صغير، وتُلوَّن باتجاه الخروج بعد حسمه.
الحد العلوي — سعره بالضبط، جاهزاً لوضع أمر عليه.
الحد السفلي — كذلك.
العرض بوحدات ATR — وبعد الخروج يصير «العرض عند الكسر»، محسوباً بـ ATR المسجّل في تلك الشمعة نفسها. فالرقم يبقى ثابتاً لنموذج مجمّد ولا ينزاح بتغيّر التقلّب.
الرأس المتوقَّع — كم شمعة تفصل عن تقاطع الحدّين. وبعد الخروج يصير «منذ الكسر».
الحالة — نشط، أو كسر معلّق يثبت بالإغلاق، أو كُسر لأعلى، أو كُسر لأسفل.
⚠️ وسطر الحالة وحده يقرأ الشمعة الجارية، فقد ينتقل داخلها بين «معلّق» و«نشط» كلما دخل السعر وخرج. وهذه قراءة لحظية مكتوب فيها صراحة أنها تثبت بالإغلاق، وليست إعادة رسم: الشكل المرسوم لا يتحرك.
🔶 الوسمان V و E
يظهران على شمعة الخروج إن تحقّقا:
📊 V — تجاوز حجم الشمعة متوسطه بالمضاعف الذي ضبطته.
📐 E — تجاوز مداها الحقيقي مؤشر ATR بالمضاعف الذي ضبطته.
وهما وصفٌ لما جرى في تلك الشمعة، لا حكم على جودة الخروج ولا درجة ثقة فيه. ولا يمنعان ظهور أي نموذج.
🔶 التنبيهات
🔔 تكوّن نموذج
🔔 كسر لأعلى
🔔 كسر لأسفل
🔔 أي حل — يجمع الاثنين
وجميعها تشتعل مرة واحدة عند إغلاق الشمعة لا قبله.
🔶 الإعدادات
الرموز أدناه هي نفسها التي تراها على رؤوس المجموعات داخل نافذة إعدادات المؤشر.
🔸 ⚙️ الإعداد
اللغة — إنجليزي افتراضاً، وتبديلها إلى العربية يغيّر الواجهة كلها.
المقياس اللوغاريتمي — مطفأ افتراضاً. اضبطه ليطابق شارتك، وانظر آخر قسم.
طول ATR — 14. يخدم وسم E ومسافة إخلاء النماذج وقراءة العرض في اللوحة.
🔸 📏 الطبقات
كبير L — مفعّل، بطول 21.
متوسط M — مفعّل، بطول 14.
صغير S — مفعّل، بطول 5.
🔸 🔎 الكشف
محاور على الإغلاق فقط — مطفأ. فتُؤخذ المحاور من القمم والقيعان. وبتشغيله تُؤخذ من الإغلاقات وحدها.
مصدر الكسر — Close. وهو مفتاح واحد يحكم ثلاثة أشياء دفعة واحدة: الاحتواء بين المحورين، والاحتواء بعدهما، وكشف الخروج.
أقصى مسافة مضروبة في الطول — 5. سقف ما بين محورَي الحد الواحد.
أدنى تداخل بين الضلعين — 0. الفترة المشتركة المطلوبة بين الحدّين.
أدنى مسافة للرأس — 2.
أقصى مسافة للرأس — 200.
🔸 🎨 المظهر
تعبئة المثلث — مفعّلة، بشفافية 78.
عرض الخط 2، وشفافيته 15.
الألوان — رمادي للتكوّن، أخضر للخروج علواً، أحمر للخروج هبوطاً.
🔸 🗂️ التاريخ والعمر
إبقاؤه كالحالي — 30 شمعة، ثم يُنزَّل إلى الأرشيف أو يُحذف إن كان الأرشيف مطفأً.
التنزيل عند البُعد — 8 من ATR. ويُقاس بـ ATR الحالي عن قصد، لأن السؤال هنا عن بُعد السعر الآن بمقياس تقلّب اليوم لا تقلّب الأمس.
إظهار النماذج السابقة — مطفأ.
عدد النماذج المحفوظة — 12، وهو سقف على الطبقات الثلاث مجتمعة.
خفوت التاريخية — 30، تُضاف فوق شفافية الخط والتعبئة.
🔸 🏷️ التسميات
إظهار التسميات — مفعّل، ويُحفظ منها 2.
وسم الحجم V — مفعّل، بمتوسط 20 ومضاعف 1.5.
وسم التمدد E — مفعّل، بمضاعف 1.4.
🔸 📋 اللوحة
مفعّلة، وموضعها أعلى اليمين.
🔶 الدقة: أي دقة؟
تُطلق كلمة «الدقة» على معنيين مختلفين، ولا يُدّعى هنا إلا واحد منهما.
✅ فأما دقة البناء فمضبوطة، وتستطيع التحقق منها بنفسك دون أن تصدّقني: كل محور مؤكَّد لا مظنون، وكل خط يستوفي شرط احتوائه عند الشمعة التي رُسم فيها، والهندسة تُغلق عند التكوّن فلا يُعاد حسابها، والخروج يُحسم باختبار واحد على شمعة مغلقة. لا شيء يُعاد رسمه، ولا يُملأ بأثر رجعي، ولا يُعدَّل في الخفاء. أعد تشغيل أي شارت وتتبّع أي عنصر.
❌ وأما الدقة التنبؤية فغير مُدّعاة، ولن تجد هنا نسبة نجاح ولا درجة إشارة ولا هدفاً سعرياً.
المؤشر يخبرك أين الحدّان ومتى عُبرا، بدقة. أما قيمة ذلك في استراتيجيتك أنت، على أداتك أنت، وفي إطارك الزمني أنت، فتقديرك ومسؤوليتك.
🔶 أمور تعرفها قبل أن تعتمد عليه
⚠️ لماذا يظهر النموذج متأخراً. لأن المحور لا يُعدّ محوراً حتى تمرّ شموع تأكيده كاملة. وهذا التأخّر هو ثمن ما وعدناك به في السطر الأول: لا شيء يظهر قبل أوانه، ولا شيء ظهر يُسحب منك بعد ذلك.
⚠️ قد تجد ذيلاً عابراً للخط. فالمحاور افتراضياً على القمم والقيعان، بينما يُقاس الاحتواء والخروج على الإغلاق. فيجوز أن يخترق ذيلٌ حداً والنموذج ما زال سليماً. وإن أردت شكلاً لا يمسّه ذيل فاضبط مصدر الكسر على Wick، واعلم أنه اختبار أصرم بكثير وأن النماذج ستقلّ بوضوح.
⚠️ المقياس اللوغاريتمي يدوي. فـ Pine لا يستطيع قراءة إعداد شارتك. وإذا كان شارتك لوغاريتمياً فشغّل الخيار. وعند اختلاف الاثنين ينحرف مستوى الخروج المحسوب عن الخط الذي تراه: انحرافاً مهملاً على النماذج الضيّقة، ومادّياً على الواسعة. وعلامته أمام عينك مباشرة، إذ تنفصل حافة التعبئة اليسرى عن الحد عند المحور الثاني.
⚠️ من أين تُؤخذ المحاور. كل حد يُبنى من آخر محورين على جهته. فالخط الذي يتجاوز محوراً وسيطاً خارج عن نطاق الكشف.
⚠️ الكثافة. ثلاث طبقات مع أرشيف ممتلئ تُثقل الشارت. أطفئ ما لا تحتاجه، واستعن بسقف الأرشيف ودرجة الخفوت.
═════════════════════════════════════════════════════════════
⚠️ إخلاء المسؤولية
═════════════════════════════════════════════════════════════
هذا المؤشر لأغراض تعليمية وتحليلية فقط. لا يُمثل نصيحة مالية أو استثمارية أو تداولية. استخدمه بالتزامن مع استراتيجيتك الخاصة وإدارة المخاطر. لا يتحمل TradingView ولا المطور مسؤولية أي قرارات مالية أو خسائر.
═════════════════════════════════════════════════════════════ Indikator

Chaufer-Engine ProChaufer-Engine Pro — ORB/ARB · EMA · VWAP · Liquidity
Four independent intraday signal engines in one overlay, sharing a single confluence core (VWAP / Volume / RSI / ADX / ATR) so nothing is calculated twice. Every engine can be toggled on/off, and all signals confirm on closed bars (non-repainting).
The four engines
① ORB/ARB — Opening-Range and Afternoon-Range breakouts with 2-candle confirmation, graded A/B/C by confluence, plus rejection reversions back inside the range edges.
② EMA Pullback + Continuation — In an established 9/20/50 trend, waits for a pullback into the fast EMA then a break-of-structure to fire a continuation entry.
③ VWAP Reversal — Touch-and-reverse off VWAP with same-colour confirmation, an advancing reference candle, and a cooldown so you don't get back-to-back same-direction signals.
④ Liquidity Sweeps — Wick-through-then-close-back stop-runs of key levels (PDH/PDL, PDC, PMH/PML, OR, ARB, weekly, equal highs/lows). A single ⚡ label names the swept level; a sweep above = bearish hint, below = bullish hint.
Plus a Key Levels overlay (independent of the engines): PDH/PDL, PMH/PML, session Open, Weekly H/L (previous week on Monday) and OR/ARB — each drawn as a labelled line for the current session, or the previous active day on nights/weekends/holidays.
How to use
Add to an intraday chart — best on 1m–5m so the opening range has enough bars.
Confirm the Session and Timezone inputs match your market (default 0930–1600, America/New_York). Enable Extended Hours on the chart if you want premarket (PMH/PML) levels.
In Master Toggles, turn on only the engines you trade. ④ Liquidity is off by default.
Tune the Confluence Core (VWAP/Vol/RSI/ADX). Use "Require full confluence" and "Suppress grade-C" to keep only the highest-quality breakouts.
Read signals:
▲/▼ A/B/C = ORB/ARB breakout (letter = confluence grade; hover for the reason).
Rev ↑/↓ = range-edge rejection reversion.
Circles = EMA continuation. V triangles = VWAP reversal. ⚡ = liquidity sweep.
Watch the status table (top-right) for engine states and current bias.
Set alerts from any of the built-in alertconditions (one per signal type).
Notes
Signals are non-repainting (confirmed on bar close); the OR box only extends for the first 2 hours (configurable), then freezes.
This is an analysis tool, not financial advice — combine with your own risk management.
Indikator

DATEOFBIRTH Strategy)# Date of Birth Strategy — Annual High & Low Levels
## Overview
The **Date of Birth Strategy** is an experimental market-analysis tool based on the concept of identifying and tracking the High and Low of a market's historically significant "Date of Birth."
For example, if an index or instrument has a defined inception/date-of-birth date, this script identifies the High and Low formed on that particular calendar date and plots those levels across subsequent years.
The objective is to provide a **historical reference framework** that traders can use alongside conventional technical analysis, price action, market structure, and risk-management techniques.
## How It Works
The script:
* Uses a user-defined **Date of Birth**.
* Identifies the corresponding calendar day for each year.
* Captures the **High and Low** of that day's trading session.
* Plots the levels as horizontal reference lines.
* Extends the levels so traders can observe how price reacts around historically derived levels.
* Can be used for historical analysis as well as monitoring future occurrences of the selected calendar date.
### Example
If the selected Date of Birth is **3 November**, the script attempts to identify the High and Low of 3 November for each available year.
These historical levels can then be studied for:
* Support and resistance reactions
* Breakouts and breakdowns
* Price rejection
* Market structure
* Confluence with technical indicators
* Historical price behavior around the annual date
## Important Considerations
This indicator is intended as a **research and educational tool**. Historical price levels do not necessarily have predictive power, and the appearance of a reaction around a DOB level should not be interpreted as proof of a causal relationship.
The results may vary depending on:
* The selected symbol
* Exchange trading calendar
* Historical data availability
* Timeframe
* Session settings
* Corporate actions or contract changes
* Data-feed differences between brokers and exchanges
Users should independently verify important historical levels against reliable market data.
## Suggested Usage
For better analysis, consider combining the DOB levels with established methods such as:
* Price action
* Market structure
* Volume analysis
* Support and resistance
* Moving averages
* Volatility analysis
* Trend analysis
* Risk/reward assessment
Do not use the DOB levels as a standalone signal for entering or exiting a trade.
## Disclaimer
**Educational and informational purposes only.**
This script is provided for research, educational, and analytical purposes and does **not constitute investment advice, financial advice, trading advice, or a recommendation to buy or sell any security, derivative, cryptocurrency, commodity, index, or other financial instrument.
Past performance or historical market behavior does not guarantee or imply future results. No representation is made that the levels, signals, or observations generated by this script will accurately predict future market movements.
Trading and investing involve substantial risk, including the possible loss of capital. Users are solely responsible for their own trading and investment decisions.
Always conduct your own research and use appropriate risk-management practices. If required, consult a qualified financial professional before making investment decisions.
## Transparency
This script is based on a **calendar-date / historical-level methodology** and should not be interpreted as a guaranteed forecasting system.
The author makes no guarantee regarding the accuracy, completeness, reliability, or future performance of the levels or observations generated by the script.
**Use at your own risk.**
---
**Tags:** `Date of Birth` `DOB Strategy` `Annual Levels` `Support Resistance` `Technical Analysis` `Market Analysis` `Trading Strategy` `Price Action` `Historical Levels`
Indikator

Indikator

CISD Fractal HTF BY HDSXN This script is a highly specialized indicator designed around the **ICT (Inner Circle Trader)** concept of **CISD (Change in State of Delivery)**. Its main purpose is to identify and track structural shifts in market delivery across both your current timeframe and Higher Timeframes (HTF).
Here is a detailed breakdown of what this indicator does and its main features:
**1. Core Concept: CISD (Change in State of Delivery)**
In ICT theory, a "State of Delivery" refers to consecutive candles moving in the same direction (e.g., a series of down candles meaning the algorithm is delivering sell-side price). A **CISD** occurs when the market shifts this state:
* **Bullish CISD:** Occurs when price closes *above the opening price* of the last bearish delivery sequence. It signals that the market has shifted from selling to buying. The script plots a Blue line at this key level.
* **Bearish CISD:** Occurs when price closes *below the opening price* of the last bullish delivery sequence. It signals a shift from buying to selling. The script plots a Red line at this level.
These lines act as highly sensitive institutional support and resistance levels.
**2. Fractal Higher Timeframe (HTF) System**
Instead of just looking at the chart you have open, the indicator runs the CISD logic on multiple timeframes simultaneously:
* **Fractal Mode (Automatic):** It dynamically calculates the appropriate higher timeframes based on the chart you are viewing. For example, if you are on a 1-minute chart, it might look for 15m CISDs; if you are on a 5-minute chart, it looks for 1H and Daily CISDs.
* **Fixed Modes:** You can override the automatic system and force the indicator to *only* look for CISDs on the **1 Hour**, **4 Hour**, or **1H + 4H** timeframes, regardless of what chart you are looking at.
* **Current Timeframe:** It also tracks the CISDs of your current chart (Level 0) so you can align micro structure with macro structure.
**3. Invalidation and Chart Cleanliness (Mitigation)**
To keep your chart clean and relevant, the script uses strict invalidation rules:
* When a CISD is formed, the script remembers the absolute extreme of that move (the lowest low for a bullish CISD, or the highest high for a bearish CISD).
* **Automatic Deletion:** If price comes back and breaks that extreme (sweeps the low/high that created the CISD), the setup is considered **invalidated**. The indicator will instantly delete the line and label from your chart, leaving only the active, unviolated CISD levels.
**4. Visual Customization & Labels**
* **Labels:** The indicator automatically tags the lines with labels like `CISD ▲ 1H` or `CISD ▼ 4H` so you know exactly which timeframe caused the shift in delivery.
* **Styling:** You can fully customize the thickness of the lines, change them to Solid, Dashed, or Dotted, and adjust the Bullish/Bearish colors for up to 3 different levels (Current TF, HTF Level 1, and HTF Level 2).
**In summary:** This is an algorithmic structure tracker. It eliminates the need to constantly switch between timeframes to find where the market shifted its state of delivery. It plots macro CISD levels on your micro charts automatically, and removes them when they are no longer valid, keeping you aligned with the Higher Timeframe institutional order flow. Indikator

SB/ISB FVG/IFVGThis script is a specialized indicator designed for **ICT (Inner Circle Trader)** and **Smart Money Concepts (SMC)**. Its primary focus is on automatically identifying, drawing, and managing **Fair Value Gaps (FVG)** and **Suspension Blocks (SB)**, as well as their **Inverted** counterparts.
Here is a detailed breakdown of what this indicator does and its main features:
**1. FVG & IFVG (Fair Value Gaps & Inversions)**
* **FVG (Fair Value Gap):** The script scans for traditional 3-bar imbalances. If it finds a Bullish FVG (default teal) or a Bearish FVG (default red), it draws a box projecting the zone forward.
* **IFVG (Inverted Fair Value Gap):** In ICT theory, when a Fair Value Gap fails to hold the price and gets decisively broken (price closes through it), it changes polarity. This script automatically detects when an FVG is violated, deletes the old FVG box, and creates a new **IFVG** box (default orange). A violated support FVG becomes a resistance IFVG, and vice versa.
**2. SB & ISB (Suspension Blocks & Inversions)**
* **SB (Suspension Block):** This is a specific price action pattern where a candle's body is completely "suspended" or isolated by gaps from the preceding and succeeding candles. The script calculates the tolerance and draws a box around this suspended body, projecting it as a zone of support or resistance.
* **Mean Threshold (Middle Line):** For every Suspension Block, the indicator automatically draws a line directly through the middle (50% level) of the block, which is a highly sensitive algorithmic level in SMC.
* **ISB (Inverted Suspension Block):** Just like the FVGs, if a Suspension Block is violated (price closes completely through it), the indicator flips it into an **ISB** (default orange). The old label changes from "+ suspension" to "+ISB", indicating the zone has flipped its polarity.
**3. Dynamic Chart Management (Mitigation)**
To prevent your chart from looking like a messy coloring book, the script has strict dynamic management rules:
* **Zone Deletion:** Once a zone (FVG, IFVG, SB, or ISB) is fully mitigated or invalidated by price action according to the script's rules, it stops drawing the box.
* **History Limits:** You can define exactly how many active FVGs, IFVGs, SBs, and ISBs you want to keep on the screen at a time (e.g., maximum 5 FVGs and 3 ISBs). Older zones are automatically deleted as new ones form.
**4. Customization & Visuals**
* **Labels:** Automatically tags the blocks on your chart (e.g., "+ suspension" or "-ISB") so you know exactly what zone you are looking at.
* **Tolerances:** You can adjust the "Tolerance %" for how strict the script should be when identifying the gaps for Suspension Blocks.
* **Aesthetics:** Full control over colors, box transparencies, and the style of the middle line (Solid, Dashed, Dotted).
**In summary:** This is a dynamic supply/demand and imbalance tracker. Instead of manually drawing FVGs and Order Blocks and adjusting them when they break, this indicator automates the entire lifecycle of these zones—drawing them when they form, inverting them when they fail, and deleting them when they are no longer relevant to the current price action. Indikator

TRUE OPEN AND OPENING PRICE BY HDSXN This script is a comprehensive indicator designed for **ICT (Inner Circle Trader)** and **Smart Money Concepts (SMC)** traders. Its primary focus is on automatically identifying, drawing, and tracking **Opening Prices (OP)** and algorithmic **True Opens (TO)** across various timeframes and specific macro windows.
Here is a detailed breakdown of what this indicator does and its main features:
**1. Custom Opening Prices (Time Slots)**
The first module allows you to highlight specific intraday opening times.
* **Customizable Time Slots:** It features 4 independent slots where you can define a start and end time (e.g., 08:30 AM for the critical economic news open, or 09:30 AM for the NY Equities open).
* **Line Projection:** It grabs the exact opening price at that minute and projects a horizontal line across your chart until the designated end time, acting as a crucial intraday level (support/resistance or accumulation/manipulation reference).
**2. True Open (TO) Module**
Standard charts often plot the "Daily" or "Weekly" open at midnight based on the broker's timezone. This module recalculates the **"True Open"** based on real market mechanics (like the Sunday 6:00 PM EST futures open) and ICT algorithmic cycles:
* **Macro Timeframes:** Plots the True Year, True Quarter, True Month, True Week, and True Day opens using specific algorithmic rules (e.g., calculating the monthly open based on the 2nd Sunday of the month at 6:00 PM EST).
* **Session Opens (Killzones):** Automatically plots the opening prices for key trading sessions: Asia (19:30), London (01:30), NY AM (07:30), and NY PM (13:30).
* **90-Minute Cycles:** It tracks and plots the highly specific ICT 90-minute algorithmic cycles, triggering at precise macro minutes (e.g., xx:23 and xx:53).
**3. Advanced Chart Management (Visibility & History)**
To prevent the chart from becoming cluttered with dozens of lines, the script includes smart visibility rules:
* **Timeframe Boundaries:** You can set rules so that Yearly and Monthly opens only show on higher timeframes (like the 4H or Daily), while Session and 90-minute opens only appear on the 1m to 15m charts.
* **History Control:** You can choose exactly how many past "True Opens" to keep on the screen (e.g., keeping only the current active day's open, or saving the last 3 days for backtesting).
* **Auto-Styling:** Lines can automatically change from a dotted style (when the period is active) to a solid style (when the period has ended and becomes historical data).
**4. Real-Time Price Tracking Dashboard (Table)**
It features a built-in HUD (Heads-Up Display) table that sits in the corner of your screen.
* This table dynamically tracks the current price in relation to the True Opens.
* It tells you instantly if the current price is **"Above"** (highlighted in blue) or **"Below"** (highlighted in red) the Daily, Weekly, Monthly, Session, or 90-minute open. This is extremely useful for quickly determining if you are in a Premium (above the open) or Discount (below the open) condition for the day or week.
**In summary:** It is an all-in-one institutional time and price tracker. Instead of manually drawing horizontal lines at 8:30 AM or midnight EST every single day, this script automates the process and provides a dashboard to tell you exactly where the current price sits relative to these key algorithmic opening prices. Indikator

SMT by HDSXNThis script is an advanced indicator designed around **ICT (Inner Circle Trader)** and **Smart Money Concepts (SMC)**, specifically focusing on identifying **SMT (Smart Money Tool) Divergences**.
Here is a detailed breakdown of what this indicator does and its main features:
**1. Core Concept: SMT Divergence Detection**
SMT divergence occurs when correlated assets fail to move in sync. For example, if you are trading the S&P 500 (ES) and it makes a new Higher High, but the Nasdaq (NQ) or Dow Jones (YM) fails to make a Higher High (making a Lower High instead), that is an SMT Divergence. It signals an underlying weakness or strength in the market.
* The script allows you to compare the chart you are currently viewing with up to **three different comparison symbols** simultaneously (defaulting to ES1!, YM1!, and RTY1!).
**2. Methods of Identifying Divergences**
The indicator scans for these divergences using two different approaches:
* **Pivots (Structural Swings):** It uses pivot highs and lows to find major market structure points. It looks for divergences across three different time horizons/lengths: *Primary, Secondary, and Tertiary*. If it finds a structural divergence between the assets, it draws a solid line connecting the swing points.
* **Adjacent Wicks (Micro Divergence):** If enabled, it looks for immediate, candle-by-candle divergences. For instance, if the current candle takes out the high of the previous candle, but the comparison asset's current candle fails to do so.
**3. FVG SMT (Fair Value Gap Divergence)**
This is a unique and advanced feature of this script. It doesn't just look for high/low divergences; it also compares **Fair Value Gaps (FVGs)** across correlated assets.
* The script draws boxes to highlight unmitigated (unfilled) FVGs on your chart.
* If the current asset pulls back and mitigates (touches) its FVG, but the comparison asset fails to reach and mitigate its respective FVG within a certain number of candles, the script flags this as an **"FVG SMT"**.
* It then plots a dotted line and a label pointing out exactly where this FVG divergence occurred.
**4. Visuals and Customization**
* **Lines & Labels:** Automatically draws lines and labels indicating exactly which asset caused the SMT divergence (e.g., drawing a blue line labeled "YM1!" so you know the Dow Jones diverged from your current chart).
* **FVG Boxes:** Draws colored boxes (Teal for Bullish, Maroon for Bearish) to highlight active FVGs, which disappear once price mitigates them.
* **Highly Customizable:** You can toggle each comparison symbol on or off, change line colors, adjust the line width/style, change label sizes, and adjust the exact number of periods used to calculate the Pivots.
**In summary:** It is an automated tool for ICT traders that constantly scans correlated markets in the background to find subtle cracks in market correlation (SMT Divergences) using swing highs/lows and Fair Value Gaps, plotting them directly on your main screen so you don't have to look at multiple charts at once. Indikator

ATK/DEF LTF Regime Combo Power Hunter# ATK/DEF LTF Regime Combo — Power Hunter
ATK/DEF LTF Regime Combo — Power Hunter is a multi-dimensional decision analysis indicator built around LTF (Lower Time Frame) market-state analysis**.
Its core concept is not simply combining EMA, RSI, ATR, Bollinger Bands, Volume, DMI, and other conventional calculations. Instead, these market inputs are processed into multiple analytical dimensions and evaluated through a unified scoring framework.
The resulting information is organized into **market states, scores, grades, and chart-based memory**, providing a structured view of the conditions observed on the LTF chart.
## Core Concept
The indicator combines:
**LTF + Regime + ATK/DEF + Decision System**
LTF provides the underlying market data environment.
Regime describes the current market state.
ATK/DEF represents changes between different market-force conditions.
The Decision System combines multiple dimensions into structured scores and state classifications.
Therefore, this is not simply an LTF indicator. It is a **decision-oriented market-state framework built from LTF data and multi-dimensional calculations**.
## Three Decision Combinations
### C1 — Direction / Momentum / Velocity / Behavior
C1 describes the primary price-state environment through four dimensions:
* Direction
* Momentum
* Velocity
* Behavior
The calculation incorporates EMA relationships, RSI conditions, price velocity, volume relationships, candle-body structure, and shadow behavior.
These components are combined into an independent C1 score and state classification.
### C2 — Battle / Hunting / Squeeze / Destruction
C2 focuses on market interaction and key-area behavior within the LTF environment:
* Battle — Alternating and consecutive candle behavior
* Hunting — Price behavior around key highs and lows
* Squeeze — Volatility compression
* Destruction — Structural and key-area changes
This combination evaluates how price behaves around local conditions, key areas, and changing volatility states.
### C3 — Absorption / Expansion / Impact / Decay
C3 focuses on changes in market activity and intensity:
* Absorption — The relationship between price, range, and volume
* Expansion — Volatility expansion
* Impact — Price impact and movement intensity
* Decay — Changes and decline in activity intensity
The calculations use price range, volume ratios, price movement, and sequential changes in market activity to produce an independent C3 state.
## Integrated Decision System
C1, C2, and C3 each calculate four internal dimensions and produce their own combination scores.
The three combinations are then aggregated into an overall score.
This creates a structured hierarchy:
**Individual Factors → Combination Scores → Overall Score → State → Grade**
The purpose is to consolidate multiple market dimensions into one decision-oriented observation framework rather than relying on a single calculation.
## Chart Memory
One of the key concepts of this indicator is **Chart Memory**.
The indicator does not only present the current calculated state. It also uses chart labels, structured tables, Swing High / Swing Low information, and structural connections to retain relevant recent market information visually.
The table presents:
* C1 factor scores
* C2 factor scores
* C3 factor scores
* C1 / C2 / C3 combination scores
* State
* Grade
* Overall Score
Swing High / Swing Low points, local support and resistance areas, and structural connections are also displayed within the same chart environment.
This creates a visual relationship between **market state, calculated information, and price structure**.
## ATK / DEF Regime
ATK/DEF in this framework is used to describe changes between different market-force conditions rather than simply classifying price direction.
The system evaluates multiple dimensions, including direction, momentum, velocity, behavior, market interaction, key-area reactions, compression, structural changes, absorption, expansion, impact, and decay.
The final output therefore represents a **multi-dimensional Regime State** generated from combined calculations rather than a single condition.
## LTF Market-State Framework
The indicator focuses on the following LTF market dimensions:
* Price Direction
* Momentum
* Velocity
* Candle Behavior
* Market Battle
* Key-Level Reaction
* Volatility Compression
* Structural Change
* Absorption
* Expansion
* Impact
* Decay
* Swing High / Swing Low
These components are processed through a unified calculation framework and converted into structured market-state information.
The objective is to consolidate fragmented market information into a single framework that makes different dimensions easier to observe and compare on the LTF chart.
## Chart Components
The indicator includes:
* C1 / C2 / C3 multi-dimensional analysis
* Integrated scoring system
* State classification
* Grade classification
* Overall Score
* Chart status label
* LTF market-state analysis
* EMA12 / EMA26
* RSI
* ATR
* Bollinger Bands
* Volume Analysis
* DMI / ADX
* Swing High / Swing Low
* Local structural connections
* Support and resistance markers
* FIFO object management
* Adjustable parameter system
## Parameter Adaptation
The indicator provides adjustable parameters for EMA, RSI, ATR, Bollinger Bands, Volume MA, DMI, Velocity Lookback, Key Level Lookback, and Swing High / Swing Low sensitivity.
Different markets, instruments, volatility conditions, and chart settings can produce different calculated results.
Users should therefore **configure and adjust the parameters according to the market environment being observed**.
Parameter settings directly affect the calculations, Swing structure, and resulting state classifications.
## Indicator Positioning
**ATK/DEF LTF Regime Combo — Power Hunter** is centered around:
**LTF Market Observation
* Multi-Dimensional Calculation
* ATK/DEF Regime
* Decision Combinations
* Integrated Scoring
* State / Grade
* Chart Memory**
The concept is not to simply add more indicators to a chart.
Instead, multiple market dimensions are processed through a unified framework and converted into structured state information, allowing the user to organize market information and observe relationships between different LTF conditions more efficiently.
This indicator provides **market observation, state information, and calculated reference data**. The output should not be interpreted as a guaranteed conclusion.
Parameters should be configured and adjusted according to the market environment being observed.
Indikator

Random Candles**What if the patterns you see in the market aren't as meaningful as you think?**
This indicator generates a completely random price series, tick by tick, and displays it as candles.
There is no market data being used to determine the direction of the next tick. There is no trend-following logic, no support/resistance calculation, no order flow, no indicators, and no hidden trading strategy deciding where price should go.
**The price is random.**
And yet, look at the chart.
You will often see things that look surprisingly familiar:
* Trends
* Support and resistance
* Breakouts
* Pullbacks
* Consolidation
* Higher highs and higher lows
* Lower highs and lower lows
* Reversals
* Channels
* Double tops and bottoms
* Candle patterns
* "Strong" moves followed by retracements
You can even draw trendlines and horizontal levels on a completely random chart and find that price appears to respect them.
That is the point of this experiment.
---
## Why does this matter?
As traders, we are extremely good at finding patterns in noisy data.
Give us a chart and our brains will naturally try to explain what happened:
*"Price rejected resistance."*
*"The trend is clearly bullish."*
*"This was a liquidity sweep."*
*"The breakout failed."*
*"The market is accumulating."*
*"The reversal was confirmed by the structure."*
But if a visually convincing version of these events can emerge from a process that contains **no market information whatsoever**, we should at least question how much information our eyes are actually extracting from a chart.
This doesn't prove that markets are completely random.
It does, however, demonstrate something important:
> **A pattern looking meaningful does not necessarily mean that the pattern contains predictive information.**
---
## Try it yourself
Instead of taking my word for it, put the indicator on a chart and watch it.
Change the **Resolution** input to increase the number of simulated ticks.
Then start looking for setups.
Draw your support and resistance levels.
Find your favorite candlestick patterns.
Look for trends.
Pretend you don't know that the candles are random.
You may find yourself doing exactly what you normally do on a real market.
That's the experiment.
---
## What this indicator is — and isn't
This is **not** a realistic market simulator.
It does not attempt to reproduce volatility distributions, correlations, order-book dynamics, news reactions, market microstructure, or other properties of real financial markets.
It is intentionally much simpler:
**Start from the previous close → randomly move up or down by one tick → repeat.**
The purpose is not to recreate the market.
The purpose is to create a visually convincing random price path and see how much structure our brains can find inside it.
---
## The uncomfortable question
If a completely random process can produce charts that look remarkably similar to real markets, how much of what we call a "setup" is actually predictive information...
...and how much is simply our brain finding structure in noise?
Maybe your strategy works.
Maybe there is a genuine edge.
Or maybe you have discovered a beautiful explanation for something that was going to happen anyway.
**Don't take this indicator as proof that trading strategies are useless.**
Use it as a reason to demand stronger evidence.
Backtest.
Out-of-sample test.
Forward test.
Test across different markets and regimes.
And most importantly, ask yourself:
**Does my strategy actually predict the future, or does it simply explain the past?**
---
*This indicator is an experiment in randomness, pattern recognition, and the limits of visual interpretation. If it makes you question your own chart analysis, then it has done its job.*
Indikator

CapitalCompassCoreCapital Compass Core
Capital Compass Core is the shared Pine Script framework for the Capital Compass ecosystem. It centralizes reusable calculations, state definitions, visual standards, market-context logic, risk logic, portfolio helpers, strategy utilities, panel functions, formatting tools, and alert infrastructure used across Capital Compass scripts.
The library is designed to keep Market Navigator, Tactical Navigator, Strategy Lab, Portfolio Compass, and future Capital Compass tools operating from the same definitions instead of maintaining duplicate implementations across multiple scripts.
Purpose
Capital Compass Core is infrastructure rather than a standalone trading indicator.
The library calculates and standardizes reusable logic. Consuming indicators and strategies remain responsible for user inputs, plots, fills, chart markers, alert conditions, strategy orders, and script-specific interpretation.
Core calculates and standardizes. The consuming script orchestrates and renders.
Core systems
Reusable functionality includes:
• EMA, SMA, RMA, WMA, VWMA, HMA, DEMA, TEMA, and VWAP
• Moving-average structure, compression, expansion, zones, crosses, and standardized MA hierarchy
• 20-SMA / 21-EMA Fast Trend Zone
• Ichimoku calculations
• Bollinger Bands
• ATR, relative volume, drawdown, price-shock, and volatility calculations
• SuperTrend and multi-SuperTrend agreement
• RSI/MFI/MACD momentum components and consolidated momentum states
• Market regime, risk, opportunity, and market-permission scoring
• Tactical market phases and transition states
• Market Navigator state aggregation
• Price structure, pivots, and regular divergence
• Asset-profile presets
• Portfolio allocation and deployment calculations
• Account-context helpers
• Position sizing, ATR stops, targets, trailing logic, reward/risk, R multiples, expectancy, and strategy-quality helpers
• Confirmed higher-timeframe data helpers
• Relative-strength calculations
• Alert-event routing and transition helpers
• JSON and text formatting
• Theme-aware panels, table cells, text, borders, fills, and semantic state backgrounds
State and color standard
Capital Compass uses a consistent semantic visual language:
• Green = bullish / favorable
• Red = bearish / unfavorable
• Orange = caution / transition / sideways / neutral / mixed
• Gray = inactive / unavailable / insufficient data
• Blue = informational / fast-trend reference
• Magenta = major structural reference
Moving-average identity colors are separate from directional state colors. This allows a moving average to retain a recognizable identity while optional Trend mode communicates bullish, bearish, or transitional conditions.
The standardized moving-average hierarchy includes:
8, 13, 20, 21, 34, 50, 55, 89, 100, and 200 periods.
Primary structural references:
• 20 / 21 = fast trend
• 50 / 55 = intermediate trend / caution zone
• 200 = major long-term structural reference
Capital Compass Core also provides theme-aware helpers derived from the active TradingView chart colors so consuming scripts can remain readable across light and dark chart themes.
Capital Compass ecosystem
Market Navigator
Long-term market condition, regime, risk, opportunity, portfolio context, and review.
Tactical Navigator
Tactical trend, momentum, transition, Fast Trend Zone, volatility, and market-phase analysis.
Strategy Lab
Research, hypothesis testing, backtesting support, position sizing, risk planning, and strategy evaluation.
Portfolio Compass
Portfolio allocation, deployment, account context, and long-term capital-management support.
Shared calculations should be imported from Capital Compass Core rather than independently duplicated inside each script.
Library usage
Import the library with:
import DrGetDown/CapitalCompassCore/1 as CC
Examples of shared functionality include:
CC.ma(...)
CC.maColor(...)
CC.fastTrendZone(...)
CC.marketNavigatorState(...)
CC.tacticalPhase(...)
CC.momentumScore(...)
CC.stateColor(...)
CC.panelPos(...)
CC.strategyPlan(...)
Published library versions are intentionally explicit. Consuming scripts should migrate only after a newer Core release has been compiled, tested, and validated.
Design principles
• Maintain one definition for shared calculations and state meanings.
• Separate market-state colors from moving-average identity colors.
• Keep reusable calculations in Core whenever technically practical.
• Keep script-specific interpretation and rendering in the consuming script.
• Avoid unnecessary duplicate or correlated calculations.
• Use confirmed higher-timeframe data where explicitly specified.
• Keep risk and position-sizing mathematics separate from actual strategy order placement.
• Preserve consistent panel placement, formatting, abbreviations, state meanings, and visual behavior across the ecosystem.
• Test significant shared changes before promoting them across dependent Capital Compass scripts.
Limitations
Capital Compass Core does not predict future prices and does not guarantee profitable trades or prevent losses.
Market regimes, momentum states, tactical phases, opportunity scores, risk scores, divergences, moving-average structures, and strategy statistics are analytical classifications based on supplied market data and configured assumptions. They should not be interpreted as guarantees of future performance.
Backtest statistics describe historical results and do not guarantee similar future results.
Portfolio, allocation, deployment, and position-sizing helpers provide mathematical and analytical context only. Actual decisions remain dependent on objectives, portfolio circumstances, risk tolerance, time horizon, liquidity needs, taxes, diversification, and independent research.
Version
Internal Core version: 1.0.0
TradingView library release: /1
Capital Compass
OBSERVE • DISCERN • PREPARE • ACT WISELY
Tuned to the signal. Anchored to the mission. Bibliothek

LiqSweep+iFVG indicatorLiqSweep + iFVG is a multi-module liquidity and market-structure indicator built around a liquidity sweep → reversal confirmation model.
CORE SIGNAL ENGINE
• Session Liquidity
* Tracks NY, London, and Asia session highs/lows.
* Levels remain active until first touched.
* Configurable number of untouched levels can be kept.
• Liquidity Raids / Sweeps
* Distinguishes between a normal touch and a true raid.
* A raid must exceed the liquidity level by a configurable buffer.
* Valid raids arm a potential reversal.
* NY, London, and Asia raids can be independently enabled for signals.
• iFVG Reversal
* Uses Fair Value Gaps as the primary reversal confirmation.
* A bullish FVG can invert for a short setup after a high raid.
* A bearish FVG can invert for a long setup after a low raid.
* Inversion requires a candle body close through the far edge.
* FVG size and lookback are configurable.
• Alternative Trigger
* Instead of iFVG inversion, the indicator can use a close back through the raided liquidity level.
• Raid Expiration
* Each raid remains valid only for a configurable time window.
* If no trigger occurs, the setup expires.
CONFLUENCE & CONTEXT
• Higher-Timeframe FVG
* Optional 5m, 15m, 1H, 4H, or Daily FVG filter.
* Can require price to interact with a live HTF FVG before a signal is allowed.
• Premium / Discount
* Calculates a configurable dealing range.
* Displays Premium, Equilibrium (50%), and Discount zones.
* Used as market-location context rather than a mandatory entry filter.
• Equal Highs / Equal Lows
* Detects EQH, EQL, REH, and REL structures.
* Treats these areas as potential resting liquidity.
* EQH/EQL raids can optionally arm reversals, but this is disabled by default.
• Williams Fractals / Swing Points
* Marks confirmed swing highs and swing lows.
* Configurable lookback/period.
* Used primarily for market-structure context.
TIMING & VISUALIZATION
• Configurable NY-time entry window.
• Session range boxes.
• Session liquidity lines.
• RAID and HIT labels.
• FVG boxes and inverted FVG visualization.
• Optional HTF FVG boxes.
• EQH/EQL lines.
• Swing-point markers.
• Armed-state background.
• LONG/SHORT entry markers.
OVERALL MODEL
Liquidity → Raid/Sweep → Reversal Armed → iFVG Inversion → Signal
The main trading logic is the liquidity raid + reversal confirmation. Premium/Discount, Williams fractals, EQH/EQL, and session structure provide additional market context, while HTF FVG can act as an actual optional signal filter. Indikator
