Wskaźnik

TJR US Open Macro Marker LinesTJR US Open Macro Marker Lines
Version 1.0.0
Marks the US-open macro time windows from TJR's methodology on the US500 and USTEC indices, so you can see at a glance where each window starts and ends as the New York open plays out. It draws vertical boundary lines and a small top-pinned label for each window, and nothing else, keeping the chart clean.
WHAT IT DRAWS
• Five vertical boundary lines, running the full height of the chart, at the four macro-window edges: 08:30, 09:30, 09:50, 10:10 and 10:30 New York time.
• Four top-pinned labels, one centred over each window: Pre., Man., Ent. and L.Ent.
• Nothing else. There is no background shading and no on-chart clutter.
THE FOUR WINDOWS (New York time)
• Pre: 08:30-09:30
• Manipulation: 09:30-09:50
• Entry: 09:50-10:10
• Late Entry: 10:10-10:30
HOW IT WORKS
• The 08:30 line sits on the candle that opens the Pre window. The 09:30, 09:50, 10:10 and 10:30 lines are pulled back one candle so the marked candle is the one that CLOSES at that boundary time, which is where each window actually ends.
• The windows are US-anchored via the "UK-US Time Difference" input. Leave it at 5 normally, and set it to 4 for the weeks each year when the UK and US daylight-saving changeovers are out of step, which keeps every line tracking the true New York clock.
• The correct clock time is used whatever timezone your chart is set to; only where the candles fall on the time axis changes.
• Show History draws prior days as well as today. History Range limits that to the last 5 trading days (weekends are not counted, which is lighter and faster on scroll) or the full loaded history.
WHAT IT RUNS ON
• US500 and USTEC only. On any other symbol it draws nothing.
• The 1m and 5m timeframes only. TJR's macros are read on those timeframes, and the one-candle pull-back lands cleanly only on those grids. Nothing draws on any other timeframe.
HOW TO USE
• Add it to a 1m or 5m US500 or USTEC chart. The lines and labels mark out the Pre, Manipulation, Entry and Late Entry windows across the New York open.
• Each boundary line has its own colour; line width, style and opacity are shared across all five. Each label has its own colour; label opacity is shared across all four. Set them to suit your chart.
• During the DST-mismatch weeks, switch the UK-US Time Difference input to 4 so the windows stay on the New York clock.
INITIAL RELEASE
Version 1.0.0. First public release. Marks the TJR US-open macro windows (Pre, Manipulation, Entry, Late Entry) on US500 and USTEC, 1m and 5m only, with per-line and per-label colours, shared line width/style/opacity and label opacity, a 5/4 US-anchoring input for the DST-mismatch weeks, and a Show History toggle with a 5-trading-day or full-history range.
FEEDBACK
Please let me know if you experience any issues, or have feedback for improvements or additions in the comments below. Thank you, Tom Wskaźnik

Smart Money Toolkit Pro [JPT]🔷 OVERVIEW
Smart Money Toolkit Pro is an original Pine Script® v6 indicator that combines multiple Smart Money Concepts (SMC) into one clean and powerful trading tool. It automatically detects market structure, Break of Structure (BOS), Change of Character (CHoCH), liquidity levels, liquidity sweeps, and dynamic support/resistance to help traders analyze price action with confidence.
Designed for Forex, Gold (XAUUSD), Crypto, Stocks, Indices, and Futures, the indicator provides a clear visual representation of institutional market behavior without requiring manual chart drawing.
🔷 HOW IT WORKS
The indicator continuously scans price using confirmed pivot highs and lows.
Market Structure
The script automatically identifies:
• Higher High (HH)
• Higher Low (HL)
• Lower High (LH)
• Lower Low (LL)
These labels help traders understand whether the market is trending, ranging, or reversing.
Break of Structure (BOS)
A BOS is generated when price closes beyond a previous confirmed swing in the direction of the current trend.
Bullish BOS
Price breaks above a previous Swing High.
Bearish BOS
Price breaks below a previous Swing Low.
Change of Character (CHoCH)
A CHoCH signals a potential shift in market direction.
Bullish CHoCH
Price breaks above the previous Lower High.
Bearish CHoCH
Price breaks below the previous Higher Low.
This helps traders recognize possible trend reversals early.
Liquidity Engine
The built-in liquidity engine automatically plots:
• Buy-Side Liquidity (BSL)
• Sell-Side Liquidity (SSL)
• Equal Highs (EQH)
• Equal Lows (EQL)
The indicator monitors these areas for liquidity grabs and sweep events commonly associated with institutional trading activity.
Liquidity Sweeps
The script detects:
• Buy-Side Liquidity Sweeps
• Sell-Side Liquidity Sweeps
When a sweep occurs, the indicator marks the event directly on the chart, allowing traders to identify potential reversal opportunities.
🔷 VISUAL FEATURES
• Automatic Market Structure Labels (HH, HL, LH, LL)
• Break of Structure (BOS)
• Change of Character (CHoCH)
• Buy-Side Liquidity (BSL)
• Sell-Side Liquidity (SSL)
• Equal High Detection
• Equal Low Detection
• Liquidity Sweep Detection
• Dynamic Swing High & Low Levels
• Trend Background Coloring
• Liquidity Dashboard
• Trend Dashboard
• Professional Chart Layout
• Customizable Colors
🔷 DASHBOARD
The built-in dashboard displays:
• Current Trend
• Last Confirmed High
• Last Confirmed Low
• Active Buy-Side Liquidity
• Active Sell-Side Liquidity
• Latest Liquidity Event
This provides a quick overview of current market conditions.
🔷 INPUTS
Available settings include:
• Pivot Strength
• Show Structure Labels
• Show Swing Levels
• Extend Swing Levels
• Show BOS
• Show CHoCH
• Show Liquidity
• Show Liquidity Sweeps
• Show Equal High / Low
• ATR Tolerance
• Maximum Historical Liquidity Levels
• Bullish Color
• Bearish Color
• Liquidity Colors
🔷 ALERTS
Built-in alerts are available for:
• Bullish BOS
• Bearish BOS
• Bullish CHoCH
• Bearish CHoCH
• Buy-Side Liquidity Sweep
• Sell-Side Liquidity Sweep
Alerts can be connected directly to TradingView's notification system.
🔷 COMMON WORKFLOW
A typical workflow is:
Wait for confirmed market structure (HH, HL, LH, LL).
Observe BOS or CHoCH confirmation.
Monitor Buy-Side and Sell-Side Liquidity levels.
Watch for liquidity sweeps around key swing points.
Combine confirmations with your preferred entry strategy and risk management.
🔷 MARKETS
Smart Money Toolkit Pro can be used on:
• Forex
• Gold (XAUUSD)
• Silver (XAGUSD)
• Cryptocurrency
• Stocks
• Indices
• Futures
• Commodities
Compatible with all TradingView-supported timeframes.
🔷 BEST PRACTICES
For additional confirmation, many traders combine this indicator with:
• Support & Resistance
• Supply & Demand Zones
• Order Blocks
• Fair Value Gaps (FVG)
• Fibonacci Retracement
• EMA 50 / EMA 200 Trend Filter
• Volume Analysis
• Higher Timeframe Confirmation
These concepts are optional but can enhance decision-making when used alongside market structure.
🔷 UPCOMING FEATURES
Future updates may include:
• Institutional Order Blocks
• Fair Value Gap (FVG) Detection
• Premium & Discount Zones
• Auto Fibonacci Retracement
• Multi-Timeframe Market Structure
• Entry & Exit Signals
• TP1, TP2, TP3 Auto Targets
• Stop Loss Calculation
• Risk/Reward Visualization
• Advanced Smart Money Dashboard
• Session Analysis
• Volume Confirmation
🔷 DISCLAIMER
This indicator is provided for educational and informational purposes only. It highlights market structure and liquidity concepts based on historical price action and does not predict future market movements or guarantee trading performance. Always conduct your own analysis, use proper risk management, and consider additional market factors before making trading decisions. Wskaźnik

Navyraid FVANavyraid FVA (Fair Value Area)
Description:
Overview
The Navyraid Fair Value Area (FVA) is a specialized analytical tool built upon the principles of Auction Market Theory (AMT). According to AMT, financial markets exist to facilitate trade, constantly moving between states of balance and imbalance. The market tends to travel from one established Value Area to another.
This indicator maps out these crucial areas by analyzing where the market spends the most time and how frequently specific price levels are visited throughout the trading day. By identifying these zones of high historical acceptance, the indicator projects key levels from previous sessions that act as strong magnets and significant support/resistance zones for current and future market action.
How It Works (Core Logic)
The indicator evaluates price action by breaking down the high-to-low range of each candle into specific discrete price bins (ticks). It then tallies how often the price trades through each bin over a defined period (daily basis).
Value Area Calculation: It accumulates these price interactions to find the area where a specified percentage of trading activity occurred (default is 68%, representing one standard deviation of the mean).
Key Level Extraction: It isolates the single price levels with the highest concentration of activity for both the Mayor and Minor FVA.
Main Features
Mayor FVA: This represents the Point of Control (POC) or the price level with the highest time accumulation strictly within the 68% Value Area. This zone acts as the primary focal point of market balance and a high-probability price magnet.
Minor FVA: This marks the most significant high-time node located strictly outside the established Value Area. These peripheral nodes frequently serve as crucial turning points, rejection zones, or targets when the market breaks out of its primary balance.
Smart Mitigation (Freeze Logic): To keep the chart clean and relevant, FVA zones are projected forward as boxes. By default, once the current price touches or "mitigates" an extended box, the box stops extending (freezes).
Force Extend: A toggle that overrides the mitigation logic, forcing the FVA boxes to continuously project forward regardless of price interaction, useful for long-term level tracking.
Auto Tick Size: The script automatically scales the bin sizes based on the asset's specific price range and minimum tick, making it universally applicable across Forex, Indices, Crypto, and Equities without manual adjustment.
How to Use in Trading
Traders can utilize the Navyraid FVA to understand the broader market context based on AMT.
Targets: If the price is moving directionally, previous Mayor FVAs serve as logical take-profit zones, as the market seeks historical balance.
Reactions: Minor FVAs can be observed for potential pullbacks or continuation setups when the market tests extreme areas outside of the previous day's accepted value.
Disclaimer: This indicator is designed for educational and analytical purposes to visualize Auction Market Theory concepts. It does not constitute financial advice. Wskaźnik

EMA/SMA Classics V1.0 by SRTEMA/SMA Classics V1.0 by SRT
The EMA/SMA Classics indicator was designed to answer one simple question:
"Which side of the market currently has the structural advantage?"
Instead of flooding the chart with buy and sell arrows, this indicator focuses on market structure, trend alignment, and high-quality price action, allowing traders to make their own execution decisions with greater confidence.
Whether you trade Forex, Indices, Commodities or Crypto, this indicator combines multiple market concepts into a clean workflow while remaining highly configurable through both EMA and SMA combinations.
What This Indicator Includes
• Flexible EMA / SMA Engine
Unlike traditional moving average indicators that are locked to one MA type, every moving average in this indicator can independently be configured as either:
EMA
SMA
Default settings:
MA 1 : 7
MA 2 : 40
MA 3 : 150
MA 4 : 200
You may use the default configuration or customise the periods to fit your own trading methodology.
• Dynamic Moving Average Stack Detection
The indicator continuously evaluates whether the visible moving averages are properly stacked.
Bullish Stack
Fast MA > Medium MA > Slow MA
Bearish Stack
Fast MA < Medium MA < Slow MA
When the moving averages lose their proper order, the market is treated as neutral instead of forcing a directional bias.
This helps reduce many false trend signals that occur during consolidations.
• ATR-Based MA Spacing Filter
One common problem with MA strategies is entering when all moving averages have already compressed together.
This indicator measures the spacing between moving averages using ATR.
When the moving averages become too compressed, trend quality deteriorates.
The spacing filter helps identify these lower-quality environments before momentum fully develops.
• Ladder Structure
One of the core concepts inside this indicator is the Ladder System.
Instead of only observing moving averages, the indicator also evaluates the market using multiple dynamic support and resistance structures.
Resistance
R9
R40
R70
R100
R150
Support
S9
S40
S70
S100
S150
These levels automatically update with market structure and are used to generate an additional Ladder Bias.
When both the moving averages and Ladder Bias agree, market structure is generally stronger than relying on moving averages alone.
• Flush Dot System
The indicator displays visual Flush Dots beneath or above candles whenever trend alignment exists.
Small Green Dot
Bullish MA alignment.
Small Red Dot
Bearish MA alignment.
Large Green Dot
Moving Average alignment + Bullish Ladder confirmation.
Large Red Dot
Moving Average alignment + Bearish Ladder confirmation.
The larger dots represent stronger structural agreement across multiple components.
• KeyBar Detection
The indicator automatically identifies two important price action patterns.
Engulfing Bars
Bullish Engulfing (EBull)
Bearish Engulfing (EBear)
These are filtered using ATR and minimum body size to avoid insignificant candles.
Long Tail Bars (LTB)
Bullish Long Tail Bars
Bearish Long Tail Bars
These identify strong rejection candles with defined tail proportions and body positioning.
An optional body-size filter is also available for traders wanting stricter candle selection.
Daily Pivot (DP)
Automatically plots the previous day's pivot.
Useful as:
Dynamic support
Dynamic resistance
Intraday reaction level
Weekly Pivot (WP)
Automatically plots the previous week's pivot.
Many swing traders use weekly pivots as major reaction zones throughout the trading week.
RSI Momentum Alerts
The indicator includes two independent RSI event types.
RSI Breakout
Signals when RSI breaks into extreme momentum territory.
Bullish breakout
Bearish breakout
RSI Retracement
Designed to identify momentum continuation after RSI exits an extreme condition while confirming with the RSI Moving Average.
These alerts can be useful for traders looking to participate after momentum has begun to recover instead of chasing extremes.
Information Panel
A compact table summarises the current market condition.
Displays:
Moving Average Bias
Ladder Bias
Long Tail Bar presence
This provides a quick snapshot without needing to inspect every component individually.
How To Use This Indicator
This indicator is not designed to generate automatic Buy or Sell signals.
Instead, it acts as a Market Context Indicator.
A typical workflow may look like this:
Step 1
Observe whether the moving averages are properly stacked.
A clean stack generally indicates directional order.
Step 2
Check whether the Ladder Bias agrees with the moving averages.
When both align, the market structure is generally stronger.
Step 3
Watch for KeyBars.
Examples include:
Bullish Engulfing
Bearish Engulfing
Bullish Long Tail Bar
Bearish Long Tail Bar
These often represent meaningful reactions within the prevailing structure.
Step 4
Use Daily Pivot and Weekly Pivot as areas where price may react.
These levels should be considered areas of interest rather than guaranteed reversal zones.
Step 5
Monitor RSI alerts for momentum shifts.
Momentum signals are generally more useful when they occur in the same direction as the prevailing market structure.
Suitable Timeframes
Although the indicator can be applied to multiple chart intervals, it generally performs best on:
M15
M30
H1
H4
Daily
The moving averages, Ladder System, and KeyBar detection adapt naturally across different timeframes.
Difference Between EMA/SMA Classics & H1 EMA/SMA + Higher Timeframe Analysis (Classic)
Although both indicators belong to the same ecosystem, they serve different purposes.
EMA/SMA Classics
Designed as a general-purpose structural trend indicator.
Features include:
Flexible EMA/SMA stacking
Ladder System
Flush Dots
Engulfing Bars
Long Tail Bars
Daily Pivot
Weekly Pivot
RSI Alerts
It can be used on virtually any timeframe and is ideal for traders who prefer to analyse the chart directly.
H1 EMA/SMA + Higher Timeframe Analysis (Classic)
The H1 version is a significantly more advanced market context engine.
In addition to everything above, it introduces:
Dedicated H1 Bias Engine
H4 Trend Analysis
Daily Trend Analysis
Higher Timeframe Bias Aggregation
H1TF Composite Bias
Overall Market Verdict Engine
Multi-layer Bias Table
Higher Timeframe Confirmation Workflow
Rather than focusing solely on the current chart, the H1 version continuously evaluates whether multiple timeframes are aligned before presenting an overall market verdict.
If the EMA/SMA Classics indicator answers:
"What is my current chart doing?"
Then the H1 version answers:
"What is the broader market structure telling me across multiple timeframes?"
The two indicators are complementary and can be used together depending on your preferred trading workflow.
Disclaimer
This indicator is designed to assist with market structure analysis and decision-making. It does not provide financial advice or guarantee profitable trades. Always combine indicator signals with sound risk management, personal analysis, and appropriate position sizing. Wskaźnik

Tyson Uppercut Compression Spring Breakout (Viprasol)Tyson Uppercut — Compression Spring Breakout 🥊
(The name is an affectionate combat-sports homage — this is an educational pattern tool, not affiliated with or endorsed by any athlete or organization.)
CONCEPT
A spring loaded by VOLATILITY, not by swings. The tool measures the recent bar-range and requires it to be compressed — noticeably tighter than the window before it (energy coiling). Then the uppercut: one wide-range bar that bursts up out of the compression on the close = the release. Distinct from swing-decay coils; this reads raw range contraction directly from the bars.
HOW IT DETECTS
- Compression is measured on CLOSED bars only: the highest high and lowest low over a window (default 10 bars, offset by one bar).
- That compression range must be tight versus the prior, wider window (default: <= 60% of the range over twice the lookback) AND not larger than a set ATR cap.
- Release: the current bar closes above the compression high, its full bar range is at least a set ATR multiple (default 1.3x ATR), and it closes up (close > open).
- All logic runs on bar close (barstate.isconfirmed). An optional dotted live box previews an active compression before any break.
ENTRY / STOP / TARGET
- Entry: on the confirmed release close (long only).
- Stop: below the compression low, minus an ATR buffer.
- Target: entry + R multiple of risk (default 2R, adjustable).
- Drawn as a solid compression box plus an entry line and filled TP/SL zones that extend right until price touches one; the hit side thickens.
NON-REPAINTING
Compression is read from already-closed bars (a one-bar offset is used), and the release is confirmed on the bar close. A printed signal does not move or disappear afterward. The live dotted preview is informational only and is not a signal.
KEY FEATURES
- Volatility-compression detection from raw range, with an ATR height cap to avoid oversized "boxes".
- Release requires a genuinely wide breakout bar, not just a marginal close.
- Optional live compression preview; option to hide new setups while a trade is active.
- Filled, extend-until-hit TP/SL zones and an on-chart status table (open trades). Alert condition included.
INPUTS OVERVIEW
- The spring: compression window (bars), tightness fraction vs prior window, max compression height (x ATR), release bar range (x ATR), ATR length.
- The knockout: TP as R multiple, SL buffer (x ATR), minimum bars between signals, one-trade-at-a-time, hide-setup-while-in-trade.
- Visuals: compression box / entry / TP / SL colors, label offset, zone transparency, show-live toggle.
HOW TO USE
1. Add to a liquid symbol and timeframe; it is fully overlay-based.
2. Set the compression window and tightness fraction to define how coiled the range must be.
3. Raise the release ATR multiple to demand a stronger breakout bar.
4. Watch the live dotted box to anticipate setups, and study the TP/SL zones on your instrument.
5. Optionally create an alert from the built-in condition.
LIMITATIONS (read this)
- This is a pattern/education tool, not a signal service and not financial advice. It does not predict the future.
- Compression breakouts frequently fail or reverse (false breakouts are common), especially in ranging markets.
- It is long-only by design; it does not trade downside releases.
- Range readings depend on the chosen windows; different settings can materially change what counts as "compressed".
- Results depend heavily on your inputs, instrument, and timeframe. Always use your own risk management and discretion.
CREDITS
ATR uses Wilder's Average True Range. Highest/lowest range measurement uses standard public functions (ta.highest / ta.lowest). The raw-range compression-and-release detection and the trade-zone visualization are original Viprasol design.
Original Viprasol work; no third-party Pine code reused.
Wskaźnik

H1 EMA/SMA + Higher Timeframe Analysis (Classic) V1.0 by SRT# H1 EMA/SMA + Higher Timeframe Analysis (Classic) V1.0 by SRT
## Overview
H1 EMA/SMA + Higher Timeframe Analysis (Classic) V1.0 by SRT is a complete market context indicator designed to help traders read trend, structure and execution quality from a single chart.
Instead of relying on one indicator alone, this script combines multiple layers of market information into one unified framework:
• H1 Moving Average Bias Engine
• Higher Timeframe (H4 & Daily) Trend Confirmation
• Ladder Market Structure Analysis
• Dynamic Daily & Weekly Pivot Levels
• VWAP Bias Filter
• Engulfing & Long Tail Bar (LTB) Detection
• RSI Breakout & Retracement Alerts
• Composite Bias Dashboard
• Smart Alert System
The objective is simple:
Reduce subjectivity by helping traders identify when multiple independent factors agree before looking for trade opportunities.
This indicator is designed for traders who prefer trading with trend and market structure rather than relying on a single crossover or oscillator.
---
## Main Features
### ① H1 Bias Engine
The H1 Bias Engine evaluates the alignment of up to four configurable EMA/SMA lines.
Unlike traditional MA crossover indicators, this engine considers:
• Moving average order
• Price position relative to the moving averages
• MA spacing quality
• Trend strength
Bias is classified into:
• Strong Bullish
• Bullish
• Neutral
• Bearish
• Strong Bearish
An ATR-based spacing filter automatically ignores signals when moving averages become compressed, helping reduce false trend readings during consolidation.
---
### ② Higher Timeframe Bias
The script automatically evaluates both:
• H4 Trend
• Daily Trend
using a dedicated EMA40 / EMA150 / SMA200 structure.
These two higher timeframes are combined into a Higher Timeframe (HTF) Bias.
This allows traders to quickly determine whether H1 signals are aligned with the broader market direction.
---
### ③ Ladder Market Structure
The Ladder System measures how support and resistance levels evolve over multiple lookback windows.
Support Levels
S9
S40
S70
S100
S150
Resistance Levels
R9
R40
R70
R100
R150
The relative positioning of these levels produces a Ladder Bias ranging from:
Strong Bullish
Bullish
Neutral
Bearish
Strong Bearish
This provides an additional market structure confirmation independent of moving averages.
---
### ④ Composite H1TF Bias
One of the core components of the indicator.
H1TF combines:
• H1 Moving Average Bias
• Ladder Bias
to generate a stronger consensus trend.
Rather than reacting to a single condition, H1TF requires agreement between trend and structure before producing stronger directional confidence.
---
### ⑤ Final Verdict Engine
The Final Verdict combines:
Higher Timeframe Bias
*
H1TF Composite Bias
Only when both higher timeframe trend and H1 composite trend strongly agree will the dashboard produce:
Strong Bullish
or
Strong Bearish
This helps traders focus on higher probability market conditions instead of reacting to every market fluctuation.
---
### ⑥ Key Bar Detection
The indicator automatically detects two important price action patterns.
Bullish / Bearish Engulfing Bars
Long Tail Bars (LTB)
Each signal includes:
ATR size validation
Minimum body filters
Tail quality checks
Momentum confirmation
These are designed to highlight significant candles instead of every basic engulfing or pin bar.
---
### ⑦ Daily & Weekly Pivot Levels
Built-in pivot calculations include:
Daily Pivot (DP)
Weekly Pivot (WP)
These levels provide additional context for potential support, resistance and reaction zones.
---
### ⑧ VWAP Bias
The indicator includes a built-in VWAP filter.
Price above VWAP
Bullish
Price below VWAP
Bearish
This offers another layer of institutional-style market context that complements the moving average analysis.
---
### ⑨ RSI Momentum Alerts
Four RSI-based alerts are included.
Bullish RSI Breakout
Bearish RSI Breakout
Bullish RSI Retracement
Bearish RSI Retracement
These alerts are designed to identify momentum expansion as well as potential continuation opportunities after retracements.
---
### ⑩ Smart Alert System
The alert engine supports multiple event types.
H1 Bias changes
Higher Timeframe Bias changes
H1TF Composite changes
Ladder Bias changes
Bullish Engulfing
Bearish Engulfing
Bullish Long Tail Bar
Bearish Long Tail Bar
Optional filters allow alerts to trigger only when aligned with:
H1TF
Higher Timeframe
Strong Bias only
This helps reduce unnecessary alert noise.
---
## Reading the Bias Dashboard
The dashboard summarizes the complete market picture.
Daily
Daily Trend
H4
H4 Trend
HTF
Combined Higher Timeframe Trend
H1
Current H1 Moving Average Bias
Ladder
Market Structure Bias
H1TF
Combined H1 Trend
VWAP
Current VWAP Position
Verdict
Final Consensus
The strongest trading environments generally occur when multiple components point in the same direction.
---
## Typical Workflow
A simple workflow may look like this:
1. Check the Final Verdict.
2. Confirm H1TF agrees with the Higher Timeframe.
3. Observe whether VWAP supports the direction.
4. Wait for a qualifying Engulfing Bar or Long Tail Bar.
5. Use Daily Pivot, Weekly Pivot and Ladder levels for trade management.
This approach encourages waiting for confluence rather than entering solely because one indicator changes direction.
---
## Notes
This indicator is intended as a market context and decision-support tool.
It does not predict future prices and should not be considered a standalone trading system.
Like any technical tool, it performs best when combined with sound risk management, proper trade planning and disciplined execution.
---
Thank you for using H1 EMA/SMA + Higher Timeframe Analysis (Classic) V1.0 by SRT
I hope this indicator helps simplify chart analysis and encourages traders to focus on market structure, trend alignment and disciplined decision making.
— SRT
Wskaźnik

Ronaldo Bicycle Kick Orbit Break Reversal [ Viprasol ]Ronaldo Bicycle Kick — Orbit Break Reversal (Viprasol)
WHAT IT DOES (the idea)
Most reversal tools watch a single line. This one watches a region. It treats recent price structure as a set of confirmed swing points that "orbit" a structural centre of mass, and it trades the moment price escapes that orbit to the upside. Like a ball coiling around a centre and then leaving orbit — that break is the signal. The name is a sporting homage to a spectacular finish; the tool itself is pure geometry.
HOW IT DETECTS
1. Swings: a lightweight zigzag keeps the last several confirmed pivots. A pivot is only accepted after the required number of bars close to its right, so swings do not move once printed.
2. Orbit geometry: from the last K swings (default 6) it computes the geometric centroid — the mean bar position and mean price. It then measures the average (root-mean-square) distance those swings sit from the centroid price. That distance, scaled by "Orbit radius," becomes the orbit ring. A minimum radius floor (in ATR) filters out flat, meaningless rings.
3. Escape: the setup arms only when the orbit is valid. The signal fires on the first bar that CLOSES above the top of the orbit ring (centroid price + radius) having closed at or below it on the prior bar.
ENTRY / STOP / TARGET
- Entry: the close of the escape bar (long only).
- Stop: the lowest swing price inside the orbit, minus an ATR buffer.
- Target: Entry + R multiple x risk (default 2R), where risk = Entry - Stop.
Each trade draws an entry line plus filled TP and SL zones that extend forward bar by bar until price touches one of them, then freeze.
NON-REPAINTING
Signals are built from confirmed pivots and only evaluated on a confirmed (closed) bar. Nothing is placed on the developing bar, so a printed signal does not disappear or shift on later ticks. The dotted "live orbit" preview is a forward-looking sketch of the current geometry and is not a signal.
KEY FEATURES
- A real orbit ellipse is drawn around the centroid so you can see the ring being broken.
- Extend-until-hit TP/SL zones with a one-trade-at-a-time option.
- Optional hide-new-setup-while-in-trade to reduce clutter.
- Adjustable pivot width, swing count, orbit radius, ATR floor, R multiple, stop buffer, and a minimum-bars-between-signals gap.
INPUTS OVERVIEW
Swing pivot left/right bars; swings used for the orbit; minimum swings for validity; orbit radius multiplier; minimum orbit radius in ATR; ATR length; TP R multiple; SL ATR buffer; signal gap; one-trade toggle; visual colours and label offset.
HOW TO USE
1. Add to any liquid symbol and timeframe; it works on all.
2. Watch for the dotted orbit ring to form around recent structure.
3. Take note when a bar closes above the ring and the GOAL label prints.
4. Use the drawn entry, TP, and SL zones as a visual trade map; adjust the R multiple and stop buffer to your own plan.
5. Raise the pivot width or ATR floor on noisy, low-timeframe charts to demand cleaner structure.
LIMITATIONS (honest)
- This is a pattern and education tool, not a signal service or an autotrading system. It highlights a geometric condition; it does not predict outcomes.
- Long-only by design. It will not flag downside setups.
- In strong one-way trends the orbit ring can be escaped repeatedly; in choppy ranges valid orbits may be sparse. Context and discretion still matter.
- Requiring confirmed pivots means the orbit is defined slightly after a swing forms, which is the cost of non-repainting behaviour.
- Past behaviour of any pattern does not guarantee future results.
CREDITS
Built on public, well-known concepts: Average True Range (J. Welles Wilder) for volatility scaling, and standard pivot/zigzag swing detection. The orbit-centroid geometry and the escape logic are original Viprasol work. The "Bicycle Kick" name is an affectionate sporting homage and does not imply any endorsement or affiliation.
This script is an educational tool and is not financial advice. Trade your own plan and manage risk.
Original Viprasol work; no third-party Pine code reused.
Wskaźnik

Auto Trendlines [AFD]Traders!
If this draws fewer lines than the last auto-trendline script you tried, that is not a bug.
Almost every free entrant in this category will connect any two points and call the result a trendline, including points price has already traded straight through. This one will not draw that line at all.
WHAT IT DOES
Two confirmed same-side pivots define a diagonal line - two swing highs for a descending line, two swing lows for an ascending one. Before it is drawn, the pair has to pass four checks, all required:
Same side. Never one high paired with one low.
Progressive. The second pivot has to be lower than the first on a descending line, higher on an ascending one.
No pierce. No bar between the two anchors may have traded through the line.
Still intact now. No bar since the second anchor may have violated it either.
The third check is the one almost everyone in this category skips, and the fourth closes the gap right behind it - a pivot needs time to confirm, so without the fourth check a line could pass the first three and still be dead on arrival, already traded through in the bars since its own anchor. Of every pair that clears all four, the one nearest current price is the one drawn.
It keeps three lines per side by default - one at your Swing Strength setting, and two more at longer multiples of it - so a short, a medium and a long trendline can all be live on the same side at once, each resting on a different swing rather than three readings of the same one.
HOW A LINE LIVES AND DIES
A live line is maintained, not redrawn - its right edge follows price, and its label counts how many bars have touched it within your tolerance. It is retired, dimmed and kept on the chart, never silently deleted, for exactly one of two reasons: price violated it, or its anchor aged past your Bars to Apply setting. A retired line's colour, width and style are yours to set - the defaults reproduce a plain grey dotted line, but a violated line and an aged-out line both use the same styling, because both are "no longer live" and neither claims anything about what happens next.
When a side has nothing to show, an optional note names the refusal directly instead of leaving a blank chart that reads as broken - something like "No valid ascending line - recent pivot pairs failed the validity rule." It disappears the moment a line forms on that side.
THE TWO ALERTS
One alert per side, on one event: a line was violated and retired, on the bar that just closed. That is the whole alert surface.
It does not fire on a developing bar - only once a bar closes.
It does not fire when a line is retired for age. An aged line was not violated, and an alert saying it was would be a false statement about your chart.
It does not tell you what to do next. It names the event and points at the settings that produced it.
There is no alert for a line forming, for a touch, or for price approaching a line.
SETTINGS WORTH KNOWING FIRST
Swing Strength sets how many bars either side of a pivot must confirm it - higher means steadier, later pivots; lower means more of them, sooner and noisier. Pivots Searched sets how many recent pivots each length keeps in its pool to test pairs from. Pierce Tolerance and Touch Tolerance are both a multiple of ATR: Pierce is how far price may travel through a line before it counts as pierced or violated, and Touch is the separate band used only for counting touches. Bars to Apply bounds how old a line's anchor may get before it ages out - 0 means no limit.
Minimum Touches is worth reading twice, because it does not do what it sounds like. Requiring touches before a line can be drawn does not find a better line - it defers the same line's appearance into a later, shorter-lived part of its own life, since touches accrue before the line is drawn, not after. What it actually buys is recency: the lines that survive it are the ones price is currently working on.
Label position offers "Right of line" (default, floats along the line's own slope) or "Below, centered" (sits directly under the line's tip). Either way the label is a plain box with no pointer.
WHAT IT WILL NOT DO
It is not a signal tool. It does not grade a line's strength, does not rank one line against another, and does not name a target, a breakout, or a bounce - each of those is a claim about the bar after the one that just closed, and this script has no view on that. A touch count is a count of what already happened, shown with the tolerance that produced it, nothing more.
WHAT IS DISCLOSED RATHER THAN HIDDEN
A line appears late by design - its anchors are confirmed pivots, so a line shows up Swing Strength bars after the bar that anchors it. That lag is the price of not drawing lines that vanish a bar later.
Whether this script repaints has not been observed on a replay and is not claimed here either way. Its behaviour on a logarithmic price scale is likewise unobserved and unclaimed.
Zero request.*() calls of any kind - every calculation reads the chart's own series.
Open source under the Mozilla Public License 2.0. Wskaźnik

Liquidity Sweep Tracker | Smart Money Stop HuntsThis strategy identifies where retail stop-losses and breakout orders cluster (swing highs/lows), waits for price to sweep through that liquidity, and enters only after a confirmed rejection back inside the range. No repainting on the wick, no chasing breakouts — just structured, confirmation-based reversal trading built around genuine Smart Money Concepts (SMC) mechanics.
Core Features
Sweep Detection Engine
Tracks swing highs/lows as live liquidity pools, scored by touch count
ATR-scaled sweep buffer filters out noise — only meaningful stop-runs qualify
Configurable confirmation window (N bars) for the rejection close back inside range
7-Factor Confidence Score (0–100)
Every signal is graded on sweep depth, touch count, market structure alignment, ATR volatility regime, post-sweep displacement, volume spike magnitude, and HTF zone proximity — giving you a single, transparent quality metric per trade instead of a black-box signal.
Structure-First Exits
Adaptive stop placement anchored to the actual sweep wick + volatility regime (not a flat ATR multiple)
Targets pull from real market structure: nearest Fair Value Gap (TP1) and opposing liquidity pool (TP2)
Automatic exit on opposing Break of Structure — if the thesis is invalidated, you're out
Optional time-based exit for setups that stall
Fully Modular Filters — Everything Toggleable
Volume spike confirmation
HTF liquidity zone alignment
Engulfing / displacement / break-of-sweep-candle confirmation triggers
Minimum reward-to-risk gate before any entry fires
All filters default OFF or loosely set — tune restrictiveness to your own edge
Clean, Purpose-Built Visuals
Thin liquidity lines at unswept swing levels — opacity/thickness scale with touch count, so "thicker" lines mark heavier resting liquidity
Simple BUY/SELL labels only on confirmed signals (confidence % included, no chart clutter)
Confidence-scaled glow on active stop/target lines
Win-rate table auto-bucketed by confidence tier (Low/Med/High) — see if your high-confidence signals actually outperform
Ideal Usage
Best markets: liquid index futures (ES/NQ), high-volume large-cap equities, major crypto pairs (BTC/ETH), and major FX pairs during session opens — anywhere real stop-hunting order flow exists
Best timeframes: 15m–1H for intraday/swing entries paired with a 4H–Daily HTF filter; scale the ratio proportionally for scalping or position trading
Best conditions: ranging-to-trending transitions around obvious structure (prior session highs/lows, equal highs/lows) — avoid dead, illiquid instruments where "sweeps" are just noise
Recommended workflow: start with filters off to see raw signal frequency, then layer in volume/HTF/R:R gates while watching the win-rate table to find your own confidence threshold sweet spot
Notes
Pivot-based swing/structure detection carries an inherent confirmation lag (no repainting, but structure is confirmed slightly after the fact). This is a strategy script — backtest thoroughly across your target instrument and timeframe before any live use, and treat the confidence score as a filter to calibrate, not a guarantee. Strategia

Gravity Bands [JOAT] Price orbits value. An anchored VWAP core with true volume-weighted deviation shells, on clean monochrome candles.
◆ WHAT IT IS
Gravity Bands treats fair value as a gravity core that price orbits and keeps returning to. The core is an anchored VWAP , and the bands around it are true volume-weighted standard deviations — not simple percentage or ATR envelopes. A signature "Lunar Mono" candle mode repaints the chart in clean white/grey so the gravity field is the only color on screen. It is a pure context tool with no buy/sell signals.
This is 100% original code, written from scratch. It is not a repackaged VWAP or bands script.
◆ HOW IT WORKS
1. The gravity core. A volume-weighted average price is accumulated from a chosen anchor — Session, Week or Month — resetting each new period. This is the center of value that price gravitates toward.
2. Volume-weighted shells. The bands are computed from the volume-weighted variance of price around the core, giving genuine ±1σ, ±2σ and ±3σ deviation shells. Because they are volume-weighted, the shells reflect where real activity occurred, not just where price ranged.
3. Stretch. The core distance is expressed in sigma — how many standard deviations price has escaped value. Small stretch means price is orbiting fair value; large stretch means it is extended and statistically stretched from the mean.
4. Lunar Mono candles. An optional mode repaints candles in white (up) and slate grey (down) so the colored gravity field reads instantly without competing with candle colors — the signature look of this tool.
◆ WHAT YOU SEE
• The gravity core (anchored VWAP) with a soft ±1σ / ±2σ / ±3σ gravity field
• Optional Lunar Mono monochrome candles
• An extreme-stretch background wash when price escapes the outer shell
• A resizable dashboard showing the core value, the stretch state and an orbit gauge, the upper and lower shell prices, the 1σ width in price and as a percent, the anchor mode, and a volume-feed check
◆ HOW TO USE IT
• Treat the core as the day's (or week's/month's) fair value — a magnet price often reverts to.
• Use the shells as objective stretch zones: reaching ±2σ or ±3σ marks a statistically extended condition where mean-reversion or exhaustion becomes more likely.
• Reclaiming or losing the core is a simple bias flip .
• Match the anchor to your horizon — Session for intraday, Week/Month for swing context.
• Requires a symbol with a real volume feed.
◆ NOTES & LIMITATIONS
Gravity Bands needs a genuine volume feed — without one the core approximates price and the shells lose meaning (the dashboard flags this). Deviation shells describe statistical stretch, not direction: price can stay extended in a strong trend. It is a context tool, not financial advice. Use it with your own method and risk management.
— made with passion by officialjackofalltrade
Wskaźnik

Single Timeframe Multi-EMA Trend Table### Overview
The **Single Timeframe Multi-EMA Trend Table** displays the directional bias of 7 customizable Exponential Moving Averages (EMAs) calculated from a single, higher timeframe of your choice.
This allows traders working on lower execution timeframes (e.g., 1-minute or 5-minute charts) to effortlessly monitor macro trend alignment and EMA support/resistance zones from higher timeframes (e.g., 15m, 1h, or 4h) without switching charts.
---
### Key Features
* **Selectable Target Timeframe:** Choose any timeframe (1m, 5m, 15m, 1h, 4h, 1D, etc.) to fetch EMA data from.
* **7 Customizable EMAs:** Define 7 individual EMA lengths (e.g., EMA 9, 20, 50, 100, 150, 200, 800) to monitor full trend structure.
* **Consolidation Detection:** Identifies when price is compressing or trading close to a specific EMA line, marking it as a **RANGE 🟡** state.
* **Clean UI:** Displays chosen timeframe in the table header alongside active EMA lengths and clear color-coded statuses.
---
### How to Use
1. **Set Target Timeframe:** In the settings, choose the macro timeframe you want to base your analysis on (e.g., 15m).
2. **Configure EMAs:** Input your preferred EMA lengths.
3. **Gauge Trend Strength:**
* **Full Bullish Alignment:** All or most EMAs show `BULLISH 🟢`.
* **Compression/Ranging:** Multiple EMAs show `RANGE 🟡`, warning of choppy price action. Wskaźnik

VWAP Reversal Probability Signals🟠 OVERVIEW
VWAP Reversal Probability Signals tracks price movements around an anchored VWAP and two volume-weighted standard deviation bands. It looks for price excursions outside these bands and waits for price to move back through the same band before marking a potential reversal.
Each reversal signal is paired with a fixed VWAP target. The script records whether price reaches that target within a user-defined number of bars and displays the historical success rate for each band independently. This allows traders to compare how different reversal distances have performed over time instead of treating every signal the same.
🟠 CONCEPTS
Anchored VWAP — A volume-weighted average price that resets at the selected session, week, month, quarter, or year and acts as the central reference level.
VWAP Deviation Bands — Upper and lower bands created from volume-weighted standard deviation multiples around the anchored VWAP to define progressively larger price extensions.
Reversal Signal — Generated when price first extends beyond a deviation band and then closes back through that same band, indicating that the extreme move has started to reverse.
VWAP Target — Every signal uses the current anchored VWAP as its fixed target, allowing completed signals to be measured using the same destination.
Reversal Probability — The historical percentage of completed signals from each individual band that reached the VWAP target before the expiry period.
🟠 FEATURES
Anchored VWAP and Reversal Bands — Displays the anchored VWAP together with two configurable upper and lower deviation bands.
Reversal Signal Markers — Shows bullish and bearish reversal signals after price returns back
through the selected deviation band.
Historical Probability Labels — Displays the historical VWAP target hit rate beside each new reversal signal for the corresponding band.
VWAP Target Lines — Draws a projected target from every signal to the current VWAP until the trade either succeeds or expires.
Target Confirmation Marks — Places a confirmation mark when a tracked signal reaches its VWAP target within the selected expiry window.
🟠 HOW TO USE
Choose the VWAP anchor period that matches your trading style, such as session, week, or month.
Watch for price to extend beyond a VWAP deviation band and then move back through that same band before considering a reversal signal.
Compare the probability label shown with the signal to understand how that band has performed historically.
Use the dashed VWAP target line as the expected mean reversion objective for the active signal.
Treat the displayed probability as historical context rather than a prediction of future performance.
🟠 CONCLUSION
VWAP Reversal Probability Signals combines an anchored VWAP, volume-weighted deviation bands, reversal signals, and historical outcome tracking. By measuring how often each type of reversal has returned to the VWAP, it provides both reversal locations and statistical context for those signals. Wskaźnik

Multi-Timeframe Trend & Consolidation Table### Overview
The **Multi-Timeframe Trend & Consolidation Table** is a lightweight dashboard indicator designed to give traders a quick, multi-timeframe overview of the market trend and consolidation status directly on their chart.
Instead of switching between multiple timeframes or cluttering your chart with dozens of moving averages, this tool consolidates trend data across 10 different timeframes into a clean, customizable table.
---
### Key Features
* **Multi-Timeframe Analysis:** Monitors **1m, 3m, 5m, 10m, 15m, 1h, 4h, 1D, 1W, and 1M** timeframes simultaneously.
* **Customizable EMA Periods:** Set unique Exponential Moving Average (EMA) lengths for every individual timeframe (e.g., EMA 10 for 1m, EMA 50 for 1h, EMA 200 for 1D).
* **Consolidation Detection:** Built-in threshold logic identifies when price is hovering extremely close to the EMA line, signaling potential range-bound/chop market conditions.
* **Dynamic Table UI:** Displays the specific EMA length assigned to each timeframe directly inside the table for clear tracking. Fully customizable position (Top Right, Bottom Left, etc.) and text sizes.
---
### How It Works
The indicator compares the price of each timeframe against its assigned EMA line:
1. **BULLISH 🟢:** Current close price is above the timeframe's EMA (outside the consolidation zone).
2. **BEARISH 🔴:** Current close price is below the timeframe's EMA (outside the consolidation zone).
3. **RANGE 🟡:** Price percentage difference from the EMA is smaller than the set threshold (e.g., within 0.15%), indicating market consolidation or flat movement.
---
### How to Use
1. **Trend Alignment:** Look for timeframes aligning in the same direction (e.g., 1h, 4h, and 1D all green) to trade with the macro trend.
2. **Avoiding Chop:** When lower timeframes show `RANGE 🟡`, it indicates low volatility or moving average compression, warning you to avoid breakout trades or wait for confirmation.
3. **Execution Timeframes:** Tune lower timeframes (1m, 3m, 5m) to fast EMAs for scalp setups, while keeping higher timeframes (1D, 1W) on key levels like the 200 EMA.
---
### Settings & Inputs
* **EMA Lengths per Timeframe:** Set custom EMA periods for all 10 available timeframes.
* **Enable Consolidation Detection:** Toggle range detection on or off based on your strategy preference.
* **Consolidation Threshold (%):** Adjust the distance percentage between close price and EMA to define a range zone (default is 0.15%).
* **Table Display:** Adjust table placement on your screen and text font size. Wskaźnik

MSNR Bias HTFAKFX Storyline Alignment Dashboard (Multi-Timeframe Analysis)
The AKFX Storyline Alignment Dashboard is a multi-timeframe analysis tool designed to help traders quickly determine market bias and alignment across higher and lower timeframes using the concept of Market Storylines.
Instead of trading off single-timeframe signals, this indicator evaluates structural price action on higher timeframes (HTF) and confirms directional continuation via line-chart breakouts on the lower timeframe (LTF).
🟢 How the Storyline Logic Works
A Storyline is defined as the price movement initiated when price interacts with a higher timeframe zone and receives confirmation from the timeframe directly below it.
Weekly Storyline (Macro Bias):
Checks if Current Market Price (CMP) is reacting at a Weekly Support or Resistance zone.
Confirmed when a Daily line-chart breakout occurs (a Daily candle body closes past the local Daily swing high/low).
Daily Storyline (Intermediate Bias):
Checks if CMP is reacting at a Daily Support or Resistance zone.
Confirmed when a 4-Hour (H4) line-chart breakout occurs (an H4 candle body closes past the local H4 swing high/low).
Bias Alignment Status:
ALIGNED (BULLISH 🟢): Both Weekly and Daily storylines are confirmed Bullish. High-probability environment to look for Buy setups.
ALIGNED (BEARISH 🔴): Both Weekly and Daily storylines are confirmed Bearish. High-probability environment to look for Sell setups.
CONFLICTED 🔴: Weekly and Daily storylines point in opposite directions. Exercise caution or wait for alignment.
WAITING FOR SETUP ⚪: One or both storylines are in a neutral/unconfirmed state.
🎨 Key Customization Features
Customizable Dashboard Colors: Configure background fill, text, border, and header colors via the indicator settings.
Default High-Contrast Theme: Pre-styled with a dark gray fill, crisp black text, and a solid black border for maximum readability on any chart background.
Optional Status Highlighting: Includes a toggle (Use Green/Red Status Colors instead of Solid Gray) to instantly highlight alignment with green/red status boxes.
💡 How to Use in Your Trading Strategy
Add the dashboard to your preferred asset (Forex, Crypto, Indices, Stocks).
Check the Bias Alignment Status row:
When ALIGNED: Look for pullback entries at fresh Support/Resistance zones on your execution timeframe (e.g., H1 or 15m) in the direction of the alignment.
When CONFLICTED or WAITING: Sit on your hands or restrict trades to quick scalps, as higher timeframe momentum is divided. Wskaźnik

Elliott Impulse Engine [WillyAlgoTrader]📊 Elliott Impulse Engine (EIE) is an overlay indicator that counts a full Elliott cycle — impulse 0-1-2-3-4-5 plus correction A-B-C — completely automatically, using a Change-of-Character (CHoCH) trigger to start each count, a strict state machine to accept every wave point, Fibonacci target boxes to show where the next point is expected, a dashed "ghost" projection of the entire remaining path, and a trailing red invalidation line that tells you the exact price where the current count dies.
The core insight: most Elliott Wave tools either repaint their labels endlessly or force you to draw everything by hand. EIE does neither. It treats every count as a hypothesis : a CHoCH break seeds it, each confirmed pivot advances it one wave at a time, and a single hard price level can kill it. When the hypothesis dies, the chart is wiped clean and the engine waits for the next CHoCH — no stale labels, no silent redrawing of history. You always know three things at a glance: what wave the market is in, where price should go next, and where the idea is wrong.
Works on any symbol and any timeframe. Free and open for everyone.
🧩 WHY THESE COMPONENTS WORK TOGETHER
A ZigZag alone gives you swings but no wave logic. A Fibonacci tool alone gives you levels but no structure. A CHoCH detector alone tells you the trend flipped but not what comes next. And a manual Elliott count gives you structure but demands hours of drawing and constant re-labeling.
EIE chains all of these into one pipeline:
Swing structure engine → CHoCH detection → count seeding (point 0 + point 1) → fib grid on leg 0-1 → target boxes for points 2/3/4 → pivot-based point acceptance with soft-marking → ghost projection of the remaining path → trailing invalidation level → reset with a stated reason
The swing engine finds structural highs and lows. A confirmed close through a swing level against the previous trend is a CHoCH — the only event allowed to start a new count, so counts always begin at genuine structure shifts, not random noise. The moment leg 0-1 is confirmed, the engine builds a Fibonacci grid on that leg and projects the whole expected structure forward as a dashed ghost path. Each subsequent wave point is accepted from a separate, faster pivot stream, checked against its expected fib range, and either labeled clean ("2") or soft-marked ("2~") if it landed outside the range. At every state the engine maintains exactly one critical price — the trailing invalidation level — and if price breaks it, the count is declared dead with an explicit reason (BELOW_0, BELOW_W2, W3_SHORTEST, and so on), the markup is wiped, and the engine returns to scanning.
No single public tool does this loop. The combination turns Elliott counting from a subjective drawing exercise into a rule-driven process you can watch unfold bar by bar.
🔍 WHAT MAKES IT ORIGINAL
1️⃣ CHoCH-seeded counting — every count starts at a real structure break.
The engine tracks swing highs and lows using symmetric pivots (default 10 bars left / 10 bars right). A break is registered only on a confirmed bar close through the swing level. If that break goes against the current internal trend, it is a CHoCH — and only then does the engine arm a new count: point 0 is set to the extreme of the run that preceded the break, and the engine waits for a with-trend pivot beyond the CHoCH level to lock point 1.
Anti-noise guards built into the seeding:
— a warm-up gate (no CHoCH before max(3 × swing length, 50) bars of history),
— an optional cooldown (N bars after any count ends before a new CHoCH may seed),
— a level lock: after an invalidation, the same CHoCH level cannot immediately re-seed a new count (compared with half-a-tick tolerance, so floating-point equality can never leak a duplicate seed).
Why this matters: counts started from random pivots produce random labels. Counts started from structure breaks start where trend logic actually changed.
2️⃣ Non-blocking Fibonacci ranges with soft-marking — geometry informs, price decides.
Each wave point has an expected fib range measured on the 0→1 grid (retracement for 2, negative extension beyond point 1 for 3, 5 and B; point 4 uses its own 2→3 grid; C uses 0→1 again):
— Point 2: 0.5 – 0.705 (retracement of 0→1)
— Point 3: −0.5 – −0.618 (extension beyond point 1)
— Point 4: 0.5 – 0.705 (retracement of leg 2→3)
— Point 5: −0.618 – −1.0
— Point B: −0.5 – −0.618
— Point C: 0.0 – 0.236
The fib level of any price p on the 0→1 grid is computed as L = (p1 − p) / (p1 − p0); on the 2→3 grid as F = (p3 − p) / (p3 − p2). A pivot inside its range is labeled clean ("3"); a pivot outside it is still accepted but soft-marked ("3~") — because in real markets a valid wave frequently overshoots textbook levels. Only the hard invalidation rules can reject a point. Every range is a user input (min/max per point), so you can tighten or widen the geometry to your market.
Why this matters: strict-range engines discard perfectly good structure; free-form engines accept garbage. Soft-marking keeps the count honest while telling you visually which points are textbook and which are stretched.
3️⃣ Ghost projection — the whole remaining path drawn before it happens.
As soon as leg 0-1 is confirmed, EIE draws a dashed projection of every remaining point: 2? 3? 4? 5? A? B? C?. Each ghost point is placed inside its fib range at a position you choose (Middle of the range, Near edge, or Far edge), and spaced horizontally at step = round((b1 − b0) × coefficient) bars — i.e., the time geometry of the projection scales with the actual duration of leg 0-1. Ghost point 5? sits at extension −1.0 plus a configurable offset.
The projection is re-anchored from every newly accepted real point : once point 2 locks, the ghost path redraws starting from the real 2; once point 3 locks, from the real 3, and so on. Point 4's ghost is computed on the 2→3 grid using the best available references (real points when confirmed, ghost estimates before that).
Why this matters: you see the expected shape of the entire move — including the A-B-C correction after the impulse — while the impulse is still in wave 2.
4️⃣ Trailing invalidation level — one red line that answers "where am I wrong?".
At every state the engine maintains exactly one critical level, drawn as a dashed red line with an "INVALID + price" label:
— waiting for 1 / wave 2 in progress: point 0
— wave 3 before point 1 is broken: point 0; after the break: point 2
— wave 4: point 2
— wave 5 before point 3 is broken: point 2; after the break: point 4
— correction A/B/C: point 2
A break of this level resets the hypothesis with a named reason. The check runs every bar, before pivot processing , so a violent bar cannot both break the invalidation level and sneak a new wave point into the count on the same bar. Wick-driven pivots that slip past a close-based check are caught by a second, pivot-level guard (a pivot beyond point 2 / point 4 in the protected phases also triggers the reset). Classic Elliott rules are enforced on top: wave 2 may never retrace below point 0, wave 4 may never enter below point 2, and if wave 3 turns out shortest among 1, 3 and 5 at the moment point 5 is proposed, the count is rejected with reason W3_SHORTEST.
Why this matters: an Elliott count without a falsification level is a story, not a hypothesis. EIE makes the falsification price explicit on every bar.
5️⃣ Two-speed pivot system — stable structure, fast confirmation.
Structure and CHoCH run on the main swing length (default 10/10). Wave points 1-5 and A-C are accepted from a separate, shorter pivot stream (default 5/5, always ≤ swing length — validated at load). This decouples two jobs that a single pivot length cannot do well simultaneously: the long pivots keep the structural skeleton stable, the short pivots confirm wave points with roughly half the lag.
A dedicated backfill scan (up to ~480 bars) closes the pivot-lag gap for point 2: when point 1 locks or repositions, the engine re-scans all bars since point 1 for the true retracement extreme, so the best low/high inside the confirmation window is never missed. If price breaks point 1 before any counter-trend pivot confirmed point 2, the tracked extreme itself is accepted as point 2 and wave 3 is activated immediately.
Why this matters: one pivot length forces a trade-off between stability and speed. Two lengths plus a backfill scan give you both.
6️⃣ Repositioning logic — labels refine forward, never silently rewrite history.
Until the next wave locks, the engine allows controlled repositioning: a higher high repositions point 1 (rebuilding the grid and the point-2 box on the new geometry), a deeper pullback repositions point 2 (only until point 1 is broken — after the break, a deeper pivot is an invalidation, not a reposition), point 3 extends while wave 4 forms, point 4 deepens until point 3 is broken, point 5 extends during the correction, A deepens until B appears, B rises until C appears. Every reposition deletes and redraws only the affected segment and label, and the associated target box and its center line are rebuilt on the fresh grid — no stale geometry is left behind.
Why this matters: this is the honest middle ground between "repaints everything" and "freezes wrong labels forever". The rules for what may move, and until when, are fixed and stated.
7️⃣ OTE target boxes for points 2, 3 and 4 — the next objective is always a zone, not a guess.
When point 1 locks, a yellow box covering the point-2 fib range appears with a dashed center line at the range midpoint. When point 2 locks, the point-3 target box (on the extension side) appears. When point 3 locks, the point-4 box appears on the 2→3 grid. Each box extends forward a configurable number of bars (default 20) and its right edge snaps to the bar where the point actually forms. Box fill transparency adapts to the theme (65 dark / 55 light); the border and center line stay fully opaque.
Why this matters: "wave 4 should come" is vague. "Wave 4 is expected inside this drawn box, centered here" is actionable.
8️⃣ Explicit reset reasons + persistent CHoCH history — the chart tells you why.
Every count ends with a machine reason: FALSE_CHOCH (price broke back through point 0 before point 1 formed), BELOW_0, BELOW_W2, BELOW_W4, W3_SHORTEST, DEEP_C (correction retraced beyond point 2), TIMEOUT (optional: state lasted longer than k × leg 0-1 duration), B_ABOVE_5 (the "correction" broke above point 5 — the impulse is closed as done), or DONE (point C accepted, full cycle complete). On invalidation a ✖ marker with the reason in its tooltip is placed on the bar, and the dashboard keeps showing the last reason.
The active markup is wiped on reset — but CHoCH lines and labels live on a separate persistent layer (FIFO history, up to 100, default 50). When price later closes back through a CHoCH level, that line is clipped to the mitigation bar and turns dotted. So your chart accumulates a clean structural map of every trend change while dead counts disappear.
A special same-bar case is handled explicitly: if a reset and a fresh opposite CHoCH land on the same bar (with cooldown off), the engine wipes first, then seeds the new count on that same bar — the new hypothesis is never lost to ordering.
Why this matters: most auto-counters just vanish or redraw without explanation. EIE always states its reason, and the CHoCH map survives as context.
9️⃣ Anti-repaint discipline — confirmed pivots, close-confirmed breaks, honest Wick mode.
Three independent mechanisms:
— All pivot values are consumed only on confirmed bars: a forming real-time bar can make a pivot flicker, so transient pivot values are masked out and can never trigger an irreversible state transition. Historical bars are unaffected (they are all confirmed).
— In the default Close confirmation mode, invalidation breaks and wave-top breaks are evaluated only on the confirmed bar close — an intrabar excursion of the close cannot fire a reset that "un-happens" seconds later.
— The optional Wick mode reacts to any intrabar touch — faster, and by design irreversible within the bar. This is stated openly so you can choose speed vs. strictness.
Zone-entry events (price entering the point-2 OTE zone, the point-4 box, or tagging the −1.0 target) intentionally use wick extremes — a touch is a touch — and are one-way flags.
🔟 Theme-adaptive visual system with auto-contrast labels.
Theme is Auto-detected from the chart background (or forced Dark/Light). By default, long counts use a theme-adaptive green (dark green on light charts, bright green on dark charts) and short counts use red. If you enable custom colors, label text color is derived from the luminance of your chosen background — luma = 0.299R + 0.587G + 0.114B, threshold 140 — so digits stay readable on any shade you pick. The fib grid uses role-based color inputs (red 0.236, teal 0.705 OTE, blue retracement levels, gray round levels), all editable. Label font size is selectable from Tiny to Huge.
⚡ HOW IT WORKS — CALCULATION FLOW
Step 1 — Structure scan: Symmetric pivots (default 10/10) maintain the latest swing high and swing low; the engine also tracks the running extreme since the last swing (the future point 0).
Step 2 — CHoCH: A confirmed close through a swing level against the internal trend flips the trend and — if the engine is idle, cooled down, and the level is not locked — seeds a count: direction, CHoCH level, point 0.
Step 3 — Point 1: The first fast pivot beyond the CHoCH level becomes point 1. The 0→1 fib grid, the point-2 target box, and the full ghost projection are drawn.
Step 4 — Impulse counting: Fast counter-trend pivots propose points 2 and 4; fast with-trend pivots propose 3 and 5. Each is checked against its fib range (clean or "~"), each unlocks the next state, target boxes appear for the next objective, and the ghost path re-anchors from every real point.
Step 5 — Hard rules per bar: Before any pivot is processed, the trailing invalidation level is checked (Close or Wick mode). Wave 2 below point 0, wave 4 below point 2, a broken point 4 in late wave 5, or a shortest wave 3 all kill the count with a named reason.
Step 6 — Impulse complete: Point 5 accepted → the impulse counter increments and the engine rolls into correction tracking.
Step 7 — Correction A-B-C: A forms on a counter-trend pivot, B on a with-trend pivot (a B at or beyond point 5 closes the whole structure as B_ABOVE_5 instead), C completes the cycle → DONE.
Step 8 — Reset: On any ending — invalidation or completion — the active markup is wiped, the cooldown starts, and the engine returns to scanning. CHoCH history stays.
📖 HOW TO USE
🎯 Quick start (works even if you have never counted a wave):
1. Add the indicator to a clean chart. Nothing to configure — defaults are ready to use.
2. Wait for a CHoCH label. That is the engine saying: "the trend character just changed, I am watching for a new impulse here."
3. When labels 0 and 1 appear, the count is live. The dashed gray path with 2? 3? 4? 5? A? B? C? is the expected roadmap of the entire move.
4. Watch the yellow box — that is where the next wave point is expected. The dashed line inside it is the center of the zone.
5. Keep one eye on the red dashed INVALID line at all times. If price breaks it, the count is over — a ✖ appears, the markup clears, and the engine starts hunting for the next CHoCH. Hover the ✖ to read the exact reason.
👁️ Reading the chart:
— 🟢 Green numbered labels (0, 1, 2, 3, 4, 5) = accepted impulse points of a long count; red labels = a short count. Letters A, B, C = the correction.
— A label with ~ (like "2~") = the point is accepted, but it landed outside its textbook fib range — the count continues, treat it with slightly more caution.
— Solid colored path = confirmed structure. Dashed gray path with "?" labels = the ghost projection of what is still expected.
— 🟡 Yellow boxes = target zones for points 2, 3 and 4, each with a dashed center line.
— Dotted horizontal grid = the Fibonacci grid of leg 0-1 (retracements 0.236…1.0 above, extensions −0.5 / −0.618 / −1.0 below), each level labeled with its ratio and price.
— 🔴 Red dashed line + "INVALID price" = the trailing invalidation level of the current count.
— Dashed horizontal CHoCH lines = historical structure breaks; a line that turns dotted has been mitigated (price closed back through it).
— ✖ = the count was invalidated on this bar (reason in the tooltip).
📊 Dashboard fields:
— State: current phase (Scanning / CHoCH · wait 1 / Wave 2…5 / Corr · A-B-C).
— Direction: Long, Short, or — when idle.
— Invalidation: the current critical price.
— Last Reset: why the previous count ended (reason, DONE, or B_ABOVE_5). Resets on chart reload.
— Impulses: completed 5-wave impulses on the loaded history. Resets on chart reload.
— TF: chart timeframe. Version: engine version.
🔧 Tuning guide:
— Counts appear too rarely: lower Swing Detection Length (structure forms faster, more CHoCH seeds) — or the market is simply ranging without character changes.
— Too many counts die instantly (FALSE_CHOCH / BELOW_0): raise Swing Detection Length, or add a Cooldown of 5-20 bars so the engine skips the chop right after a failed count.
— Points confirm too slowly: lower Point Confirmation (min 1); remember it must stay ≤ Swing Detection Length.
— Too many "~" soft marks: widen the fib ranges for those points — your market may simply run hotter than the defaults.
— Old counts hang around in dead phases: set Timeout k > 0 (e.g. 3.0) — any state lasting longer than k × the duration of leg 0-1 resets automatically.
— Chart feels crowded: toggle off the Fib Grid, OTE Boxes, or the Projection independently; reduce Historical CHoCH; shrink label font size.
⚙️ KEY SETTINGS
⚙️ Main Settings:
— Swing Detection Length (default 10): pivot length for structure and CHoCH. Higher = larger structure, fewer seeds.
— Point Confirmation, bars (default 5): the separate short pivot used to accept wave points. Must be ≤ swing length (validated).
— Breaks: Invalidation Mode (default Close): Close = confirmed bar close beyond the level (non-repainting); Wick = any intrabar touch (instant, irreversible within the bar).
📐 Point Ranges (fib): min/max expectation range per point — Point 2 (0.5–0.705), Point 3 (−0.5…−0.618), Point 4 (0.5–0.705 on the 2→3 grid), Point 5 (−0.618…−1.0), Point B (−0.5…−0.618), Point C (0–0.236). All validated at load (2 and 4 must be inside (0,1); 3, 5, B must be negative; C inside [0,1); no zero-width ranges).
👻 Ghost Projection:
— Show Projection (on), Point Inside Range (Middle / Near / Far), Time Step Coef (default 1.0 × leg 0-1 duration), 5?: Offset From −1.0 (default 0.05).
♻️ Reset:
— Cooldown After Reset, bars (default 0 = off) and Timeout, k × leg 0-1 (default 0 = off; in the wait-for-1 phase the timeout scales on swing length instead, since no leg exists yet).
🎨 Visual Settings: Theme (Auto / Dark / Light), Fib Grid toggle, OTE Boxes toggle, CHoCH layer toggle, Path Width (2), Box Length Forward (20), Historical CHoCH max (50), Label Font Size (Tiny…Huge), Watermark toggle.
📏 Grid Levels: individual on/off for 0.236, 0.382, 0.5, 0.618, 0.705, 0.786, 0.886, 1.0, −0.5, −0.618, −1.0.
🎨 Colors: Use Custom Colors switch (off = theme-adaptive defaults), long/short point label backgrounds (text auto-contrasts), target box color, path and ghost colors, bull/bear CHoCH colors, and role-based fib grid colors.
📊 Dashboard: on/off, position (5 anchors), font size (the version row renders one step smaller).
🔔 ALERTS
Ten alert conditions covering the full lifecycle:
— 🟢 1. CHoCH + projection — CHoCH confirmed, movement projection built
— 🟡 2. Price in W2 OTE — price entered the point-2 zone
— 🟢 3. Point 2 accepted
— 🟢 4. Break of point 1 — wave 3 active
— 🟡 5. Price in W4 box
— 🟢 6. Break of point 3 — wave 5 active
— 🎯 7. Target −1.0 reached
— 🟢 8. Impulse complete — point 5 locked
— 🎯 9. Target C — correction complete, full cycle done
— 🔴 10. Invalidation — hypothesis reset
In addition, the engine fires dynamic alert() messages on every reset and on B_ABOVE_5 completion, including the reason text. In Close mode these announce on confirmed bar close; in Wick mode once per bar.
⚠️ IMPORTANT NOTES
— 🚫 No repainting of confirmed structure. Pivots use equal left/right lookback and their values are consumed only on confirmed bars; CHoCH breaks require a confirmed close; in the default Close mode, invalidation and wave-top breaks are evaluated on confirmed closes only. A pivot is, by nature, confirmed N bars after the actual extreme — the indicator draws from the confirmed bar backward to the true swing point. This is delayed confirmation, not repainting of settled values.
— 📐 Controlled repositioning is part of the design. Until the next wave locks, the latest point may legitimately move to a more extreme pivot (e.g., point 1 to a higher high). The rules for what may move, and until when, are fixed and described above. Wick mode reacts intrabar by design and is irreversible within the bar.
— 📊 The Impulses counter and Last Reset field are computed on loaded chart history and reset when the chart reloads.
— ⚖️ EIE counts one impulse degree at a time from the latest CHoCH. It does not label nested sub-waves, diagonals, or complex W-X-Y corrections — it is a focused impulse + zigzag engine, and the fib ranges reflect one practical interpretation of Elliott guidelines, which you can re-tune.
— 🛠️ This is a wave-counting and projection tool, not an automated trading system. It identifies structure, projects expected zones, and shows the invalidation price — trade decisions remain yours.
— 🌐 Works on all markets (crypto, forex, stocks, indices, commodities) and all timeframes. Wskaźnik

Hyperliquid-Ready Webhook Strategy TemplateMost webhook templates get you 80% of the way there — then your bot double-fills an order at 3am and you learn about the missing 20%. This template IS the missing 20%.
What this is
An open-source strategy template whose real value is the alert payload: a production-grade JSON webhook message with the fields most templates skip. The included strategy (EMA 21/55 cross + RSI filter, ATR-based SL/TP) is a simple demo — swap in your own logic. It happens to test reasonably on BTC 4H, but the point of this script is the plumbing, not the entry logic. Bring your own edge.
The payload — and why each field exists
→ id — unique per event (ticker + timeframe + action + bar time). Your backend treats this as an idempotency key: TradingView sometimes retries the same alert when your server responds slowly. Dedupe by id (one Redis SET NX) and you'll never double-fill. The action is part of the id so an entry and its exit on the same bar can never collide — a bug I caught in live testing of this exact script.
→ ts — fire-time timestamp via {{timenow}}. Reject alerts older than N seconds so a delayed or replayed webhook can't trade a stale price.
→ secret — replace with a long random token and verify it server-side (or better, HMAC the body). Anyone who finds your webhook URL can POST to it. This field is your lock.
→ reduce_only — true on exits, so a close can never accidentally flip you into a new position if state desyncs.
Also included: leverage and qty fields for your backend (cap leverage server-side too — never trust the client alone), and an on-chart payload preview table so you can eyeball your exact JSON before wiring real money.
Setup (2 minutes)
Add to chart (crypto perps: BTC/ETH/SOL, 15m–4H)
Create alert → condition: this strategy → "Order fills events" → message box: {{strategy.order.alert_message}}
Point the alert's webhook URL at your execution backend or bridge
Works with any TradingView→exchange webhook bridge. Important: alerts snapshot the script when created — if you edit the code, delete and re-create your alerts.
Who I am
I build custom TradingView→Hyperliquid execution pipelines (Pine Script v6, non-custodial agent wallets). If you want this wired to live execution or adapted to your strategy, links are in my signature. Strategia

Prop Key Levels & Order Blocks - Buy Sell Signals with TP/SLA complete intraday trading suite built around one idea: the decision candle.
Instead of guessing where price might turn, the script marks the exact candles
where the market already made a decision, and then tells you what happened when
price came back to them.
Everything is evaluated on closed bars. Printed signals never move.
━━ WHAT IT DRAWS ━━
MAJOR KEY DETECTION
The origin candle of an impulsive displacement leg. Its body becomes a level
that extends to the right. Green for bullish decisions, red for bearish ones.
When price closes clean through a key, the level is greyed out — it failed, and
you can see that it failed. The detection level (1–100) sets how far price must
travel out of a candidate before it is accepted, so you can go from "every small
turn" to "only the moves that really expanded".
MAJOR ORDER BLOCKS
The last opposing candle before a structural break. Drawn as a box that survives
until price closes through it.
TREND DETECTION
A volatility-scaled trailing line under price, green while bullish and red while
bearish. It is the filter one of the two entry engines uses, and a weighted
component of the other.
ORDER POOL
Price levels that were rejected repeatedly and still hold unfilled resting
orders. Each pool is parked as an arrow at the right edge of the chart. You
decide what happens once price trades through one: remove it (the orders are
spent) or keep it dimmed, so you can still trade the reaction after the sweep.
SMART FVGS
Three-candle imbalances, filtered by a minimum size so the chart is not buried
under meaningless micro-gaps.
━━ THE ENTRY ENGINE ━━
Two independent algorithms, selectable in the settings.
PROP MODE — conservative. A signal needs the trend filter, a key level or order
block, and a confirmation candle to agree, and price must not already be
extended. Fewer trades, built for accounts where a handful of clean entries
beats constant activity.
AI-MODE — adaptive. Trend, momentum, key level, order block, pool sweep, fair
value gap and candle quality each contribute a weighted score. The engine fires
when the combined score clears a threshold you control, so it also takes the
reversals the conservative mode filters away.
Every entry comes with three take profits (Minor, Major, Highest) and a stop.
All four are expressed in volatility units — one unit is the ATR at the signal
bar — so the distances breathe with the market instead of being a fixed point
value that is wrong on half the days.
The reward box, the risk box and the projection line are drawn forward from the
entry, so one glance tells you whether the trade is worth taking. Hover any
signal badge to read why it fired and every price it produced.
━━ COOLDOWN ━━
After a signal, the engine mutes itself for a configurable number of bars. This
is what stops it from firing ten entries into the same move — the single
fastest way to run into a daily loss limit.
━━ DASHBOARDS ━━
A trade metrics table in the corner lists the live entry, all three targets, the
stop, the reward-to-risk and the cooldown state — the numbers you copy into your
order ticket.
A cockpit panel shows the live checklist (trend, key level, order block, pool
sweep, candle, cooldown), the running position, and a hit count across the whole
loaded history: how often each target was reached and how often the stop came
first.
━━ ALERTS ━━
Entry, take-profit hit and stop hit, as readable text or as a JSON object
carrying side, entry, all three targets, the stop and the reward-to-risk — the
format execution bridges expect.
━━ SETTINGS ━━
① Engine Control — strategy type, score threshold, cooldown, metrics table
② Trade Config — Minor / Major / Highest TP, SL, volatility unit
③ Insight Matrix — key detection and its level, order blocks, trend
④ Orderflow & Smart FVGs — order pool, touch count, tolerance, fill handling
⑤ Visuals — theme, candle colouring, boxes, price lines, panel, drawing budget
⑥ Alerts — what to fire and in which format
Every input carries a tooltip explaining what it does and what changes when you
move it.
━━ NOTES ━━
Designed for intraday work on index CFDs, gold and FX. The defaults were set up
on 1- to 15-minute charts; on higher timeframes raise the cooldown and the key
detection level.
This is an analysis tool, not financial advice. Past behaviour of any level or
signal says nothing about future results. Test any configuration on your own
instrument and timeframe before trading it. Wskaźnik

UPDATED: COMBO - EMA/LRI/SuperTrend/HMA StrategyOverview
The EMA / LRI / SuperTrend / HMA Execution Suite is a streamlined overlay designed for intraday momentum traders, scalpers, and trend followers. It combines dynamic trend baselines, statistical breakout evaluation, and multi-tier moving average filters into a single, highly performant script.
By focusing purely on high-probability trend structure and dynamic fair value, this indicator keeps your chart visually clean and clutter-free for quick execution.
Key Features & Components:
Core Purpose: An advanced multi-indicator technical suite specifically designed for futures and stock trading.
Moving Averages & Momentum: Integrates a customizable Exponential Moving Average (EMA), a versatile Hull Moving Average (HMA) with both single and 3-HMA crossover modes, and a directionally-colored Linear Regression Index (LRI) for momentum tracking.
Breakout Probability Engine: Features a SuperTrend overlay enhanced with a relative volume Gaussian Kernel Density Estimation (KDE) model to calculate breakout strength and display confidence percentage labels.
Visual Adjustments: Includes fully customizable vertical offsets and connecting lines for the probability bubbles to maintain clear chart readability.
Comprehensive Alerts: Built-in alert conditions for trend flips, high-confidence breakouts, and moving average or price crossovers against the LRI.
Wskaźnik

Supertrend Twincore [MachineSuiteAI]Supertrend Twincore
🟦 OVERVIEW
A fast Supertrend flips too often; a slow one flips too late. This script runs both at once and only signals when they agree — and then shows you, with win rates and sample sizes, how that agreement has actually performed on the chart you have loaded.
A signal only appears where the fast core (timing) and the slow core (structure) first align, and only if it passes a gate: clustered whipsaw flips always suppress, and every other filter blocks signals only where measurement shows it helps on this chart. Passed signals are graded A/B/C and draw an Entry / SL / TP1-3 ladder whose outcomes are tracked per grade. Suppressed candidates stay as grey ghost chips with the reason, and a five-row multi-timeframe strip shows the consensus state across timeframes from completed bars.
The idea throughout: the chart never claims more than the data supports, and anything the script believes is checkable in the panel.
🟦 WHAT IS A SUPERTREND?
Supertrend is a public-domain trailing-stop indicator: it offsets price by a multiple of the Average True Range and trails that stop behind the trend. Price above the stop means uptrend, below means downtrend; a close across it flips the state. This script computes its cores with the built-in ta.supertrend() — fast 2.0 × ATR(10) and slow 4.0 × ATR(20) by default.
Its known weakness is structural: in ranging markets the stop is repeatedly crossed and the indicator whipsaws. Filters are the usual answer; this script measures whether each one actually helps on the loaded symbol and timeframe, and the marks and the gate act only on that evidence.
🟦 WHY THIS SCRIPT IS ORIGINAL
The base calculation is a built-in, and the ingredients — win-rate panels, ADX gates, higher-timeframe confirmation, multi-timeframe dashboards, take-profit ladders, signal grades — are established ideas. What's different is the standard everything must meet: beyond one fixed whipsaw rule, nothing gets drawn, nothing blocks a signal, and nothing drives the engine unless the measurements on the loaded chart back it up.
- Graded ladder odds with the cost attached. Grades are fixed and published — A means structural confirmation plus volume, B one of the two, C neither; no opaque score. Every passed signal's ladder is tracked to resolution; the panel shows per grade: TP1-before-SL and SL-first rates, the median furthest level, the median heat (largest adverse move, in ATR units) and the median bars to TP1, each with its own sample size.
- An adaptive engine that has to beat the fixed one first. Both fast cores — fixed and adaptive — are measured as separate signal streams on the loaded chart, and the adaptive core only drives signals while it beats the fixed core by a set margin with enough samples. The A/B row shows the running comparison; on defaults it reports the adaptive layer as inert.
- Gates held to the same standard. The ✓ volume mark and ⚠ counter-trend warning only print where their split beats the base win rate by a configurable margin here. The ADX gate only blocks candidates where high-ADX candidates have beaten low-ADX candidates by that margin on this chart.
- Per-condition win-rate splits. The base candidate win rate, then the same measurement split by signal class, higher-timeframe agreement, volume confirmation, multi-timeframe alignment and volatility regime — six statistics, each with its own sample size, greyed below a minimum sample.
- Two kinds of signals, measured separately. A candidate exists only on the first bar the cores align and is classified as a structural confirmation (the slow core just flipped in) or a pullback rejoin (the fast core returned to a standing slow trend); a double flip on one bar is labeled same-bar. They are different trades, measured separately.
- Suppression you can audit. A gated-out candidate still prints — a hollow grey ghost chip with the specific reason — and still counts in every statistic, so the base rate is never inflated by counting only the survivors.
- Visual discipline. The band claims a direction only while both cores agree; its saturation drains as price nears the structural stop, so the exit warning arrives before the flip; NEUTRAL keeps a directional tint, so the last trend stays readable while standing aside. The price scale is held to the same rule — it carries the structural stop and the ladder's Entry, SL and TP1-3, each in its own colour, and nothing else; the band and the fast core draw on the chart but claim no axis label. Every visual property maps to something measured.
🟦 HOW IT WORKS
- Cores: two standard Supertrends — the fast core times entries, the slow core defines structure and is the ladder's trailing stop. Presets: Scalp 1.5×ATR(7)/3.0×ATR(14), Intraday 2.0×ATR(10)/4.0×ATR(20), Swing 3.0×ATR(14)/5.0×ATR(28), or Custom.
- Gate and state model: flip-cluster suppression (2+ fast flips in 10 bars, on by default), the measured ADX gate (default "Where it helps (measured)"), and an optional strict higher-timeframe gate (off by default). The band turns grey NEUTRAL on low ADX (default ADX(14) < 20) or flip clustering.
- Higher-timeframe filter: a third Supertrend one regime up (auto-mapped ≤15m→4H, ≤1H→1D, ≤4H→3D, ≤1D→1W, else 1M; or manual), read from the last completed HTF bar.
- Statistics: on confirmed bars, every candidate — passed and suppressed — resolves N bars later (default 10); a win means the close moved in its direction. Splits grey below the minimum sample (default 20). Chip marks need their split to beat the base rate by ≥3 points (configurable); the ADX gate needs the high-ADX split to beat the low-ADX split by the same margin; volume confirmation is volume above 1.5× its 20-bar average.
- Ladder: at a passed signal's close, Entry is the close, SL is the slow-core stop (or the fast core, or a fixed k×ATR cap), TP1/2/3 default to 1/2/3 × ATR. It trails, marks TP touches ✓, freezes ✕ on an SL break, dims when resolved or consensus is lost, and feeds the per-grade LADDER ODDS rows. A live ladder tracks the right edge of the chart; once its stop is hit it stops there, so it stays a bounded record of that trade — targets it never reached are not credited later just because price eventually passed them, and the frozen right edge makes clear the trade was already over. The stop's ray spans only the stretch where that level was actually in force, because a trailing stop is a staircase rather than one line: on a long it starts below the entry and can ratchet above it, locking in profit, and the amber slow core shows the whole path. Each level prints its exact price on the price scale, so the figure for an order ticket reads straight off the axis while the chart labels stay short. The colours carry the geometry: entry green, the targets in the trade's own direction and the stop in the opposite hue, so the level that ends a trade never reads like the levels that pay it — and the slow core keeps its amber, so the stop stays distinguishable from the line it trails.
- Adaptive engine: a per-volatility-regime fast core A/B-measured against the fixed one, as described above; default factors are inert.
- MTF strip: five rows of full consensus state (UP / DOWN / SPLIT / NEUTRAL, with bars-in-state), each read from that timeframe's last completed bar. Auto mode starts at the chart's own timeframe and climbs — 4H gives 4H/D/W/M/3M. Lower timeframes are omitted by default: their consensus flips many times during a single trade taken here, so it says little about an outcome measured over days. Manual mode accepts any five, defaulting to the classic 15m/1H/4H/D/W.
🟦 HOW TO USE IT
- Read the panel first: consensus state, cores, regime, HTF agreement, then the measured rows. An ↑ means that condition has earned its margin on this chart; its absence means it hasn't.
- Chips carry their evidence: grade letter, live per-grade TP1 odds at sufficient sample, ✓ where volume has helped, ⚠ where fighting the higher timeframe has hurt. Ghost chips mean the script stood aside — the reason is on the chip.
- NEUTRAL and SPLIT mean stand aside. The coach line says this in plain language, and notes that a retouch of the entry after TP1 does not invalidate a live ladder — only the SL does.
- Reversal-only signal mode reserves the headline presentation for slow-core reversals; Discipline display mode strips the chart to the band alone (note: TP/SL alerts only fire while the ladder is drawn).
- Defaults are tuned on liquid crypto from 15-minute to weekly charts; the multipliers and ADX threshold are worth reviewing on other asset classes.
🟦 SETTINGS
Grouped as in the inputs dialog: consensus core (presets or custom multipliers) · higher-timeframe filter · state model & signal gate (ADX, flip-cluster, optional HTF gate, ghost chips) · trade ladder (SL geometry, TP multiples) · grade engine (certified or dynamic wiring) · adaptive engine · MTF strip · visuals and display modes · volume multiple (default 1.5×) · signal stats engine (horizon, minimum sample, gating margin) · JSON webhook alerts.
🟦 ALERTS
Consensus long / short · confirmed reversal long / short · Grade A long / short · TP1 / TP2 / TP3 touched · SL break · NEUTRAL started / ended · volatility regime changed · adaptive engagement changed. Create the classic alert conditions with "Once Per Bar Close" — they evaluate on live bars, and an intrabar state can revert before it counts. Optional JSON alert() events via a single "Any alert() function call" alert: signal events carry grade, entry and levels; TP/SL events identify the touched level; all carry symbol, timeframe, regime and state. The JSON events are close-gated and fire for every passed candidate, including rejoins the Reversal-only display mode demotes.
🟦 REPAINT & DATA NOTES
- All bookkeeping runs on confirmed bars; chips, ladders and statistics commit at bar close. Inside a forming bar the panel's consensus, cores, agreement, volume and coach line update live and are therefore PROVISIONAL — they can revert before the bar shuts. Price can also sit beyond a ladder's stop for the rest of a bar without resolving it: in the core SL modes the stop breaks when that core flips, which needs a confirmed close. The coach line says so when it happens.
- Higher-timeframe and strip values come from each timeframe's last completed bar — no repaint; intrabar changes up there show after that bar closes. The design assumes the HTF sits above the chart's timeframe — with Manual selection, keep it there.
- Ladder TP touches — and the Fixed mode's hard-stop touches — are detected from confirmed bars' highs/lows, starting the bar after entry; a bar touching several levels credits TPs before the stop. In the core SL modes the stop is not touch-based: it resolves only when its core flips, which needs a confirmed close — so a wick through the stop does not end a ladder, and the touch-credited TP rates are structurally friendlier than a hard-stop backtest of the same levels. The Fixed k×ATR mode is the geometry closest to a real hard stop.
- Statistics cover the loaded history and reset when the chart reloads with different history; lower timeframes load fewer bars. Greyed rows just mean the sample is too small to trust.
- Only the most recent 250 chips and ghost chips stay on the chart, so a live ladder's own labels can never be pushed off by TradingView's drawing limit; deep history keeps its band and cores but not its markers. Ladder odds count each ladder when it resolves, and in the rare case that more than 30 are open at once the oldest is counted at its current state rather than discarded — the sample is never silently trimmed.
- On a live bar the volume ratio is partial; judge it near the close. Volume features require a feed that supplies volume.
🟦 CREDITS
The Supertrend concept is public domain (popularized by Olivier Seban); ATR, ADX and the DMI are J. Welles Wilder's. The fixed cores use TradingView's built-in ta.supertrend(); the adaptive core re-implements the same algorithm to accept a per-bar factor. The consensus model, candidate classes, statistics engine, gates, grades, measured ladder, ghost chips, strip and band rendering were written from scratch for this script.
🟦 LIMITATIONS
- Supertrend lags by construction, and requiring two cores to agree makes entries later still — fewer, later, more heavily filtered signals is the intended trade-off.
- The NEUTRAL state derives from lagging measures (ADX, flip counts), so the first signals of a new trend can still arrive grey or be suppressed.
- All statistics are direction-only measurements over a fixed horizon; ladder odds are level measurements (TPs credit on a wick touch, core-mode stops resolve only on a confirmed core flip) — no fees, slippage, sizing or equity math. They are not a strategy backtest, they differ per symbol and timeframe, and they do not predict future outcomes.
- Without volume data the volume filter and its split stay inactive, and certified Grade A (confirmation + volume) is out of reach — signals cap at Grade B on volume-less feeds. Sample sizes on higher timeframes are structurally small; expect greyed rows there.
- The same asset on two different venues can show opposite states. A Supertrend flip is a threshold event: when price sits within a fraction of a percent of the band, a normal inter-exchange spread of a few basis points decides whether it crosses, and once one venue flips its stop jumps to the other side of price, so two nearly identical charts diverge sharply. This is inherent to the calculation, not a data error — treat a signal as belonging to the feed it was measured on, and check the panel's sample sizes on the venue you actually trade.
🟦 DISCLAIMER
This is an educational analysis tool, not investment advice. Historical measurements, however carefully computed, do not predict future results. Trading involves substantial risk.
Wskaźnik

Liquidity Stress Exhaustion [MarkitTick]💡 A market-microstructure stress detector that flags moments of seller or buyer exhaustion by combining an Amihud-style illiquidity z-score with trend regime, a regression-based fair-value channel, and automated ATR trade levels. Rather than reacting to price alone, this script measures how much price is moving relative to the volume behind it, then cross-references that stress reading against trend direction and candle behavior to identify points where aggressive selling or buying is likely running out of steam.
✨ Originality and Utility
Most exhaustion-based tools on TradingView rely on oscillator extremes (RSI, Stochastic) or candlestick pattern recognition in isolation. This script takes a different route: it borrows a concept from academic market-microstructure literature — price impact per unit of volume, i.e., illiquidity — and turns it into a real-time, standardized stress signal. Instead of asking "is price overextended?", it asks "is price moving too much for the volume that's actually trading?" A large true-range on abnormally low volume is treated as a sign of thin, stressed liquidity, and it is this stress, combined with a counter-trend candle, that defines exhaustion here — not price level alone.
This is not a simple mashup of unrelated indicators bolted together for the sake of a new publication. The illiquidity stress engine, the trend filter, the regression channel, and the correlation/ADX filters are all working toward a single, coherent question: is the current directional move statistically and structurally likely to reverse or stall? The z-scored stress reading identifies unusual conditions, the EMA trend filter and candle-close direction confirm which side is under pressure, and the optional Pearson-R and ADX filters exist specifically to suppress signals when the broader price action lacks the statistical structure (trending correlation, directional strength) needed to make the exhaustion reading meaningful. Each component narrows the false-positive rate of the others; removing any one of them would meaningfully change what the tool measures.
The script goes further than a plain signal generator by translating each exhaustion event into a fully computed trade plan — an ATR-derived stop, a dynamically computed R (risk unit), and three R-multiple take-profit targets — visualized directly on the chart and exposed through a structured alert payload designed for automation.
🔬 Methodology and Concepts
• Illiquidity Stress Engine
The core of the script computes a proxy for market illiquidity on every bar: true range divided by volume (with a safe fallback when volume is zero or unavailable), then compressed with a natural-log transform to tame outliers. This raw illiquidity series is then standardized into a z-score using a rolling mean and standard deviation over the "Stats Lookback" period. A z-score above your chosen "Stress Threshold (σ)" marks the bar as being in a state of high stress — meaning price moved an unusually large amount for the volume that supported it, a hallmark of thin liquidity and potential exhaustion of the prevailing move.
• Trend Regime Filter
Direction is established by comparing price (optionally pre-smoothed by an adaptive filter, see below) against an EMA of configurable length. Price below the EMA defines a downtrend; price above defines an uptrend. Exhaustion signals are only valid when they occur against the backdrop of an established trend in the opposite direction — a seller exhaustion signal requires the prior bar to have closed in a downtrend on a red candle, while buyer exhaustion requires an uptrend and a green candle.
• Adaptive Price Filters (Optional)
Two optional smoothing methods can replace raw closing price throughout the trend calculation:
Kalman Filter: a lightweight recursive estimator that continuously balances trust between the incoming price and its own prior estimate, adapting its responsiveness based on a fixed process/measurement noise ratio derived from your chosen length.
LLAMA (Linear-Lag Adjusted Moving Average): a hybrid that takes a simple moving average and adjusts it by half the recent linear slope, aiming to reduce the lag inherent in plain moving averages.
These exist to give the trend filter a smoother, less noise-reactive input than raw closing price when desired.
• Regression Fair-Value Channel
On the most recent bar, the script performs a least-squares linear regression over a lookback window (either a fixed length, or a dynamic length measured from the most recent qualifying pivot, capped by "Max Lookback Cap") using hlc3 as the source. From this it derives the regression line itself, its standard deviation, and the Pearson correlation coefficient (R), which measures how well price actually fits a straight line over that window. Inner and outer channel bands are plotted at user-defined standard-deviation multiples above and below the regression line, giving a visual statistical envelope for the recent price trend.
• Correlation and ADX Filters
Two independent filters can suppress exhaustion signals when the broader trend lacks structural conviction:
Pearson R Filter: when the absolute value of the regression's correlation coefficient falls below your threshold, the trend is considered statistically weak/directionless, and the channel is recolored neutral to flag this — though note this filter affects only the visual channel coloring, not signal firing.
ADX Filter: when enabled, exhaustion signals are only permitted when ADX is at or above your threshold, filtering out exhaustion calls during periods of weak directional movement.
• Pivot Detection
Standard confirmed pivot highs and lows (requiring the specified number of bars on each side) are tracked internally to support the optional Dynamic Pivot Mode, which — when enabled — sizes the regression lookback to the distance since the most recent confirmed pivot rather than using a fixed length.
• ATR Trade Level Construction
When a qualifying exhaustion signal fires and is confirmed, the script computes a full trade plan: the entry is the closing price of the confirmed exhaustion bar, the stop-loss is placed one ATR-multiple away (your "ATR SL Multiplier" times ATR over "ATR Length"), and the resulting stop distance defines one Risk unit ("R"). Three take-profit levels are then placed at your chosen R-multiples (default 1R, 2R, 3R) from entry. This entire trade plan updates and redraws only when a new, unlocked exhaustion signal fires.
• Lock Signal
Enabling "Lock Signal" freezes the currently displayed trade plan on the chart, preventing new exhaustion events from overwriting the active levels — useful for manually tracking a single trade through to its conclusion without the visual being replaced mid-trade.
🎨 Visual Guide
● Exhaustion Labels
"SE" label below a bar (bullish color by default) marks a confirmed Seller Exhaustion event — sellers pushed price down under stress conditions, and the setup favors a potential upside reaction.
"BE" label above a bar (bearish color by default) marks a confirmed Buyer Exhaustion event — buyers pushed price up under stress conditions, and the setup favors a potential downside reaction.
● Regression Channel
The dashed center line is the linear regression fair-value line over the active lookback window.
The two dotted inner lines mark the "Inner Deviation" band (default 1.0σ).
The two solid outer lines mark the "Outer Deviation" band (default 2.0σ).
The shaded fill between the inner bands is colored by trend direction — bullish or bearish color when the trend is statistically valid, neutral gray when the Pearson R Filter flags the trend as too weak/uncorrelated to trust.
An optional floating "STATS" label above the current bar displays the regression length, Pearson R value, and current stress z-score (σ) numerically, when "Show Metrics Label" is enabled.
● Trade Level Lines
Plotted only after a qualifying exhaustion event, extending toward the current bar:
Red solid line and "✕ SL" label: the calculated stop-loss.
Blue dashed line and "▶ Entry" label: the entry price (signal bar's close).
Three teal dashed lines of increasing opacity/solidity, with "◆ TP1", "✦ TP2", "◆ TP3" labels: the three R-multiple take-profit targets.
A red-tinted fill between the stop and entry lines visualizes the risk zone.
A teal-tinted fill between the entry and TP3 lines visualizes the reward zone.
● Dashboard (Table)
A compact panel, positioned per your "Dashboard Position" setting, reporting in real time: Lock status, current Trend Regime (Bullish/Bearish), Seller Status and Buyer Status (Exhausted/Normal), a visual Channel Width bar-meter (color-graded green/amber/red by relative width), a visual Pearson R bar-meter (same color grading by correlation strength), and — when an exhaustion signal is currently active — the live Entry, Stop Loss, and TP1 price levels. ADX value and Adaptive Filter type are appended as additional rows only when those features are enabled in the inputs.
📖 How to Use
Watch for an "SE" (Seller Exhaustion) label — this suggests a downtrend that produced an unusually large price move for its volume, on a down candle, potentially signaling sellers are running out of conviction and a bounce could follow.
Watch for a "BE" (Buyer Exhaustion) label — the mirror case in an uptrend, potentially signaling an approaching pullback or reversal.
Use the dashboard's Pearson R and Channel Width meters as a quick sanity check on trend quality before acting on a signal — a low R reading (channel shown in neutral gray) suggests the recent price action lacks a clean directional structure.
If ADX filtering is enabled, only signals occurring during sufficiently strong directional movement (per your threshold) will fire, which can help avoid exhaustion calls inside choppy, low-ADX conditions.
Once a signal fires, the plotted SL/Entry/TP1-3 lines and the dashboard's live level readout offer a pre-built framework for position sizing and target-setting — always cross-check these levels against your own risk tolerance before acting on them.
Enable "Lock Signal" if you want to study a single active trade plan without it being replaced by a new signal appearing on a later bar.
All signals, dashboard values, and trade levels are calculated strictly on confirmed, closed bar data — nothing on this chart is repainted or recalculated retroactively into the past.
⚙️ Inputs and Settings
● Core Settings
Trend Length: EMA period used for the directional trend filter. Longer values smooth out the trend classification; shorter values make it more reactive.
Stats Lookback: rolling window for the illiquidity mean/standard deviation used to compute the stress z-score.
Stress Threshold (σ): the z-score level that must be exceeded for a bar to be classified as "high stress." Raising this makes exhaustion signals rarer but more extreme.
Dynamic Pivot Mode: when enabled, the regression channel's lookback length is derived from the distance to the most recent confirmed pivot instead of a fixed value.
Fixed Length: the regression lookback used when Dynamic Pivot Mode is off.
Pivot Left / Pivot Right: bars required on each side to confirm a swing high/low for Dynamic Pivot Mode.
Max Lookback Cap: hard ceiling on the regression window length, regardless of pivot distance, to control computation and keep the channel visually relevant.
Inner/Outer Deviation: standard-deviation multiples defining the two channel bands around the regression line.
● Filters
Filter Weak Correlations / Pearson R Threshold: controls the channel's neutral-color flagging when regression fit quality is below this threshold.
Use ADX Filter / ADX Threshold / ADX Length: optional directional-strength gate that must be satisfied for exhaustion signals to fire.
Adaptive Filter (None / Kalman Filter / LLAMA) and its Length: optional pre-smoothing applied to price before the trend/EMA calculation.
● Trade Tools
Lock Signal: freezes the current trade plan against being overwritten by new signals.
ATR SL Multiplier / ATR Length: controls stop-loss distance as a multiple of ATR.
TP1/TP2/TP3 (R Multiple): sets each take-profit target as a multiple of the initial risk (R).
● Visuals
Show Metrics Label: toggles the floating STATS label showing regression length, R, and z-score.
High/Low Volatility Width %: reference thresholds used to color-grade the dashboard's Channel Width meter.
Line Extension: controls whether regression channel lines extend left, right, both, or not at all.
● Dashboard
Dashboard Position: places the summary table in any of the four chart corners.
● Alerts
Six customizable action-tag fields (Seller/Buyer Exhaustion, TP1/TP2/TP3 Hit, SL Hit) let you rename the "action" field inside each alert's JSON payload to match your own automation or webhook naming scheme.
● Colors
Full palette control over bullish/bearish/neutral coloring, text and background colors, dashboard styling, and all trade-level line/fill colors.
🔍 Deconstruction of the Underlying Scientific and Academic Framework
● Illiquidity as a Price-Impact Proxy
The stress engine's core calculation — true range divided by volume — is a simplified, bar-by-bar adaptation of the price-impact style illiquidity measures used in market microstructure research, most notably the Amihud illiquidity ratio, which relates absolute returns to trading volume as a proxy for how much a given amount of volume "costs" in terms of price movement. The underlying academic intuition is that in illiquid or stressed conditions, smaller volumes produce disproportionately larger price swings; the log transform compresses the resulting distribution to reduce the influence of extreme outlier bars before standardization.
● Z-Score Standardization and Statistical Anomaly Detection
Converting the raw illiquidity reading into a z-score against its own rolling mean and standard deviation is a direct application of statistical process control / anomaly-detection theory: rather than using a fixed, market-agnostic threshold, the script defines "abnormal" relative to each instrument's and timeframe's own recent behavior. This adaptive standardization is a common approach in quantitative finance for regime and outlier detection, since raw price-impact values are not comparable across instruments, timeframes, or volatility regimes without normalization.
● Ordinary Least Squares Regression and Goodness-of-Fit
The fair-value channel is constructed using closed-form ordinary least-squares (OLS) regression formulas computed directly from the summary statistics of the price series (sums of x, y, x², xy, y²) rather than an iterative solver — a standard, numerically efficient approach for simple linear regression. The accompanying Pearson correlation coefficient is the classical goodness-of-fit statistic for this regression: it quantifies how well a straight line explains the price action over the lookback window, providing a principled, quantitative basis (rather than visual judgment) for deciding whether "trend" is a statistically meaningful description of recent price behavior.
● Recursive State Estimation (Kalman Filtering)
The optional Kalman Filter smoothing option is a simplified, single-dimension implementation of the classical Kalman filter from control theory and signal processing — a recursive Bayesian estimator that maintains a running estimate of a system's true state (here, price) and continuously updates it by weighting new observations against the model's own uncertainty. This provides a theoretically grounded alternative to fixed-window moving averages for noise reduction.
● Trend-Following Directional Strength (ADX/DMI)
The optional ADX filter draws on Welles Wilder's Directional Movement System, a long-established technical framework for separating trend strength from trend direction. Using it as a gate rather than a signal generator reflects its intended academic role: ADX does not indicate direction, only the strength of whatever directional move is present, making it a natural confluence filter for suppressing signals during structurally weak, low-conviction price action.
⚠️ Disclaimer
All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. We expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion. Wskaźnik

EMA 25/68 BIST30 Futures# EMA 25/68 BIST30 Futures
I developed this strategy to test a straightforward and easy-to-understand moving average system on the 15-minute chart of the BIST30 futures contract.
The system monitors crossovers between EMA 25 and EMA 68. A crossover alone is not sufficient to open a position. For a long setup, the highest price of the crossover candle is recorded. For a short setup, the lowest price of the crossover candle is recorded. The signal is confirmed only if price breaks this level within the following four bars. If confirmation does not occur within four bars, the setup is cancelled.
EMA 160 is used solely as a directional filter. Long positions are opened above EMA 160, while short positions are opened below EMA 160. The purpose of this filter is to avoid taking short- and medium-term moving average crossovers against the broader market trend.
If a position has not been stopped out before the end of the session, it is closed at the close of the 17:45 bar, which corresponds to the 18:00 session price. A new position, including one in the opposite direction, cannot be opened on the same bar in which an existing position is closed.
The strategy has been designed so that different parameter settings can be tested for educational and research purposes. Users can change the EMA lengths, the number of confirmation bars, the directional filter and the trailing stop percentage to examine how these variables affect the number of trades, win rate, profit factor and maximum drawdown.
When evaluating parameter changes, users should not focus solely on the highest net profit. It is also important to examine whether neighbouring parameter values produce similar results and whether performance remains consistent across different market periods.
The code avoids calculation methods that could introduce look-ahead bias. The entire entry bar is not treated as price movement that occurred after the position was opened. The trailing stop is calculated using data from a completed bar and becomes active no earlier than the following bar.
Commission and tax on commission are displayed as separate settings. By default, the strategy assumes a commission rate of 0.020% per order leg and a 5% tax applied to the commission. Together, these produce an effective cost of 0.021% per order leg.
If the commission or tax settings are changed, the effective cost per order leg displayed in the table at the top-right corner of the chart must also be entered under Strategy Settings → Properties → Commission.
The strategy was developed for the XU030D1! symbol on a 15-minute chart. Similar results should not be expected on different markets or timeframes. The data source, continuous contract settings, commission, slippage and Bar Magnifier preferences may all affect backtest results.
This strategy is shared for educational and research purposes only. Past performance does not guarantee similar results in the future and should not be used as the sole basis for making investment decisions.
EMA 25/68 BİST30 VADELİ
Bu stratejiyi BIST30 vadeli kontratın 15 dakikalık grafiğinde, mümkün olduğunca sade ve anlaşılır bir hareketli ortalama sistemi denemek için hazırladım.
Sistem EMA 25 ile EMA 68’in kesişmesini takip ediyor. Kesişim tek başına işlem açmak için yeterli değil. Long tarafta cross mumunun en yüksek, short tarafta ise en düşük fiyatı kaydediliyor. Fiyatın bu seviyeyi sonraki dört bar içinde geçmesi halinde sinyal teyit edilmiş sayılıyor. Dört bar içinde teyit gelmezse aday iptal ediliyor.
EMA 160 yalnızca yön filtresi olarak kullanılıyor. Long işlemler EMA 160’ın üzerinde, short işlemler EMA 160’ın altında açılıyor. Amaç, kısa ve orta vadeli ortalama kesişimlerini daha geniş trendin tersine kullanmamak.
Pozisyon seans sonuna kadar stop olmadıysa 17:45 barının kapanışında, yani 18:00 seans fiyatında kapatılır. Pozisyonun kapandığı bar içinde ters yönde yeni pozisyon açılmaz.
Strateji, eğitim ve araştırma amacıyla farklı parametrelerin sonuçlar üzerindeki etkisini incelemeye uygun olacak şekilde ayarlanabilir hazırlanmıştır. EMA uzunlukları, teyit barı sayısı, yön filtresi ve trailing stop oranı değiştirilerek işlem sayısı, kazanma oranı, kâr faktörü ve maksimum düşüş gibi ölçümlerin nasıl değiştiği karşılaştırılabilir. Parametreler değerlendirilirken yalnızca en yüksek net kâra odaklanmak yerine, komşu değerlerde de benzer sonuçların oluşup oluşmadığı ve farklı dönemlerde performansın korunup korunmadığı ayrıca incelenmelidir.
Kodda geleceği görmeye yol açabilecek hesaplama seçenekleri kullanılmadı. Giriş barının tamamı, pozisyon açıldıktan sonra oluşmuş bir fiyat hareketi gibi kabul edilmez. Trail seviyesi tamamlanan barın verileriyle hesaplanır ve en erken sonraki barda çalışır.
Komisyon ve komisyon vergisi ayarlarda ayrı ayrı gösterilir. Varsayılan olarak bacak başına yüzde 0,020 komisyon ve komisyon üzerinden yüzde 5 vergi kabul edilmiştir. Bu ikisinin efektif bacak maliyeti yüzde 0,021’dir. TradingView’in yerleşik komisyon alanı Pine kodunda dinamik bir inputa bağlanamadığı için bu değer değiştirildiğinde, Strateji Ayarları > Özellikler bölümündeki komisyon oranının da tabloda gösterilen efektif oranla aynı yapılması gerekir.
Strateji XU030D1! üzerinde 15 dakikalık grafik için hazırlanmıştır. Farklı piyasalarda veya zaman aralıklarında aynı sonucu vermesi beklenmemelidir. Bar Magnifier kullanımı, veri kaynağı, sürekli vade ayarları, komisyon ve kayma tercihleri backtest sonuçlarını değiştirebilir.
Bu çalışma eğitim ve araştırma amacıyla paylaşılmıştır. Geçmiş performans gelecekte aynı sonucun alınacağını göstermez ve tek başına yatırım kararı için kullanılmamalıdır.
Strategia

Volume Regression Channel [BOSWaves]Volume Regression Channel - Regression-Anchored Volume Flow Visualization with Inward Pressure Bars, Edge Flares, and Cumulative End Profile
Overview
Volume Regression Channel is a regression-anchored volume flow analysis system that fits a polynomial or linear curve to recent price history and maps buy and sell volume pressure inward from the channel boundaries toward the centerline on every bar, where bar height, coloring, edge flare intensity, and end profile distribution are all driven by actual volume participation and close-position-derived directional weighting rather than fixed histogram positions or arbitrary price levels.
Instead of displaying volume as a separate panel histogram detached from price context, this system integrates volume directly into the regression channel structure. Each bar's volume is split into buy and sell components based on where close sat within the bar's range, and those components are rendered as inward-pointing bars anchored to the upper and lower channel edges, with bar height proportional to normalized volume and coloring distinguishing above-average from below-average participation. The result is a channel where the volume activity on every bar is visible in spatial relationship to the channel boundaries that define the structural context.
This creates a complete price and volume framework within a single overlay. The regression curve defines the trend's expected path. The gradient channel fills communicate the statistical distance from the centerline. The inward volume bars reveal participation intensity and directional split at each bar. The flow-colored centerline segments expose directional pressure evolution across the window. Edge flares highlight exceptional volume events occurring near the channel boundaries. Bound diamond markers identify the first bar of each new boundary touch. And the cumulative end profile extending from the current bar provides a full buy-sell volume distribution summary across the channel's price range for the entire regression window.
Price is therefore evaluated not just for its position within the regression channel but for the volume participation and directional flow composition supporting its location at every bar across the full lookback window.
Conceptual Framework
Volume Regression Channel is founded on the principle that a regression channel becomes significantly more analytically powerful when volume participation is integrated directly into its structure rather than displayed separately, allowing the trader to simultaneously assess where price sits relative to the statistical trend expectation and how much and what type of volume supported each bar's position within that channel.
Standard regression channel tools provide structural price context through the curve and its standard deviation bounds but offer no volume intelligence, leaving traders to consult a separate panel to understand participation dynamics. This framework eliminates that separation by embedding volume directly into the channel geometry, with inward bars, edge flares, centerline flow coloring, and the end profile all deriving from the same volume and price data that defines the channel itself.
Three core principles guide the design:
Volume should be displayed in direct spatial relationship to the channel structure it relates to, with inward bars anchored to the boundaries and sized proportionally to participation intensity so that high-volume bars are immediately identifiable within their structural context.
Buy and sell volume should be separated using close position within the bar range, rendering the directional split of each bar's participation as distinct inward segments that reveal whether volume at each price location was predominantly absorbed by buyers or sellers.
A cumulative end profile should summarize the full window's volume distribution at the current channel position, providing a reference for where participation has been most concentrated across the regression window without requiring a separate profile indicator.
This shifts regression channel analysis from structural price context alone into an integrated price-volume framework where participation intensity, directional flow composition, and cumulative distribution are all visible within the channel geometry itself.
Theoretical Foundation
The indicator combines matrix ordinary least squares regression fitting to HL2 price data, standard deviation channel construction, close-position buy-sell volume splitting, volume SMA normalization for significance classification, three-layer gradient polyline fill construction, inward volume bar rendering with dynamic width scaling, flow-weighted centerline segment coloring, edge flare detection combining volume and boundary proximity conditions, and an overlap-weighted cumulative buy-sell profile with smoothing applied across the channel rows.
The regression is computed using the same OLS matrix approach as conventional polynomial regression, producing a prediction array covering all bars in the lookback window for both linear and quadratic modes. The channel width is scaled by the rolling standard deviation of HL2, ensuring channel boundaries adapt to the instrument's actual price variability. Volume splitting uses close position within the high-low range as the proxy for directional commitment, with bars closing near the high allocating more volume to buying and bars closing near the low allocating more to selling. The end profile smooths each row's accumulated buy and sell volume with a three-point weighted average before normalizing and rendering.
Four internal systems operate in tandem:
Regression Channel Engine : Computes OLS curve fitting in linear or polynomial mode, derives the standard deviation channel width, and constructs all polyline geometry for the gradient fills, glow boundary lines, and centerline using chart.point arrays that follow the regression curve.
Inward Volume Bar System : For each bar in the recent display window, normalizes volume against the window maximum, splits the normalized height into buy and sell components by close position, and renders inward lines from the channel edges with dynamic width scaling and above-average volume coloring.
Edge Flare and Bound Marker System : Monitors each recent bar for the combination of above-threshold volume and boundary zone proximity, rendering bright glowing line segments on the channel edge when qualifying conditions are met, and places diamond markers at the first bar of each new boundary touch.
Centerline Flow and End Profile Engine : Divides the centerline into sixty flow segments and computes volume-weighted directional bias for each, coloring segments by flow direction and strength. Simultaneously accumulates overlap-weighted buy and sell volume into channel rows across the full window, smooths the distribution, and renders horizontal profile bars extending from the current bar edge.
This design ensures volume participation is embedded into every layer of the channel visualization while the end profile provides a complete cumulative distribution summary that updates with each new bar.
How It Works
Volume Regression Channel evaluates price through a sequence of regression-aware and volume-integrated processes:
Regression Curve Fitting : On the last bar, the OLS matrix computation produces a prediction array covering all bars in the configured lookback window using either a linear or polynomial fit to HL2, providing the baseline curve that all channel geometry and volume positioning follows.
Channel Width Calculation : The standard deviation of HL2 over the regression window multiplied by the SD multiplier defines the channel half-width, establishing the upper and lower boundary distances from the curve at each bar position.
Gradient Fill Construction : Three polyline polygon regions are constructed for each of the upper and lower channel halves at proportional fractions of the standard deviation width, filled with progressively increasing opacity from inner to outer to produce a smooth visual gradient across the channel depth.
Boundary Glow Rendering : Triple polylines at the upper and lower channel boundaries create a glow effect using wide low-opacity outer lines and a narrow full-opacity core line, providing visually prominent boundary markers that follow the regression curve.
Volume Normalization and Splitting : For each bar in the volume display window, raw volume is normalized against the window maximum to produce a proportional height score. Close position within the high-low range splits this height into buy and sell components, with the buy portion anchored to the lower boundary and the sell portion anchored to the upper boundary pointing inward.
Inward Bar Rendering : Buy and sell component heights are rendered as inward-pointing lines from the respective channel edges with dynamic width scaling based on relative volume and opacity intensifying for above-average participation bars.
Edge Flare Detection : Each recent bar is tested for the combination of volume exceeding the flare multiplier threshold and price high or low reaching within the configured edge zone percentage of the channel boundary. Qualifying bars receive bright dual-layer line segments on the boundary edge with width scaling by relative volume strength.
Bound Diamond Placement : Each bar is tested for initial channel boundary contact, with a diamond marker placed at the first bar of each new upper or lower boundary touch to mark where price newly reached the statistical extremes.
Centerline Flow Coloring : The centerline is divided into sixty equal segments and each segment's volume-weighted close position bias is computed across its constituent bars. Segments are colored green, red, or neutral based on the directional flow value and intensity with line width scaling to strength.
End Profile Construction : All bars in the regression window contribute their volume to the profile rows based on price overlap between the bar range and each row boundary, with the contribution split into buy and sell portions by close position. The accumulated distribution is smoothed and normalized before rendering as horizontal buy and sell bars extending from the current bar.
Together, these elements form a continuously updating integrated price-volume framework where the regression structure, volume participation, flow direction, and cumulative distribution are all rendered within the same channel geometry on each bar update.
Interpretation
Volume Regression Channel should be interpreted as a regression-anchored structural framework with embedded volume participation intelligence at every level:
Regression Curve : The fitted centerline represents the trend's statistical best-fit path through the lookback window, with the flow-colored segments revealing whether volume-weighted directional bias above or below the curve was predominantly bullish or bearish across each portion of the window.
Channel Boundaries : The upper boundary with its red glow represents the upper standard deviation limit where price is statistically extended above the regression expectation. The lower boundary with its green glow represents the lower limit where price is statistically extended below.
Gradient Fill Depth : The three-layer gradient within each channel half provides visual depth cues, with the innermost near-transparent fill representing mild deviation and the outermost fully opaque fill representing maximum channel boundary proximity.
Inward Buy Bars (Green) : Lines extending upward from the lower channel boundary reflect the buy-attributed volume portion of each bar. Taller bars indicate greater buying participation. Brighter coloring indicates above-average total volume on that bar.
Inward Sell Bars (Red) : Lines extending downward from the upper channel boundary reflect the sell-attributed volume portion of each bar. Taller bars indicate greater selling participation. Brighter coloring indicates above-average total volume.
Neutral Volume Bars (Gray) : Below-average volume bars render in neutral gray regardless of direction, identifying periods of low participation where the directional split carries reduced analytical significance.
Edge Flares : Bright glowing line segments on the channel boundary mark bars where significant volume occurred close to the boundary edge, identifying high-participation boundary interaction events that frequently precede reversals or continuations from the statistical extremes.
Bound Diamonds : Small colored diamonds at boundary touch initiation bars mark where price first reached the channel edge after a period of interior activity, identifying the onset of boundary interaction sequences.
End Profile : The horizontal bar chart extending from the right edge shows the cumulative volume distribution across the channel's price range for the full regression window, with green segments showing buy-attributed volume and red segments showing sell-attributed volume at each price row. The longest bars identify the price levels with the greatest total participation concentration.
Colored Candles : Optional candle coloring reflects whether price is above or below the regression centerline, providing a continuous directional bias reference directly on the price chart.
Boundary proximity, inward bar height and direction, edge flare frequency, centerline flow coloring, and end profile distribution collectively provide more analytical depth than any element in isolation.
Signal Logic & Visual Cues
Volume Regression Channel does not generate discrete buy or sell signals but provides continuous structural and volume participation reference through several interaction cues:
Edge Flare Events : High-volume boundary proximity bars highlighted by bright edge flares identify exceptional participation at the statistical extremes, marking the bars most likely to precede structural reactions from channel boundaries.
Bound Diamond Initiation : Diamond markers at the first bar of new boundary touches identify where price has newly entered channel extreme territory, providing early warning of boundary interaction sequences before their outcome is determined.
Centerline flow segment coloring provides ongoing directional pressure context across the full window, with color and width encoding whether the volume-weighted bias at each point in the regression history was bullish, bearish, or neutral.
Strategy Integration
Volume Regression Channel fits within regression-informed structural and volume-participation-based analytical approaches:
Boundary Interaction Trading : Use channel boundary touches combined with edge flare presence as elevated-significance interaction events. High-volume flares at the boundary suggest meaningful participation at the statistical extreme that frequently precedes a reaction back toward the centerline or a volume-supported continuation beyond it.
End Profile Acceptance Reading : Use the end profile distribution to identify the price rows with the greatest cumulative participation concentration. Price returning to high-volume profile rows encounters levels where the greatest historical participation occurred within the regression window, making them structurally significant references for support, resistance, or reversion.
Inward Bar Volume Divergence : Monitor situations where price is approaching a boundary but inward bar height from the opposing direction is increasing, indicating growing participation against the directional move and potentially signaling that the boundary interaction will result in rejection rather than continuation.
Centerline Flow Direction : Use centerline flow coloring as a mid-channel directional bias indicator. Sustained green flow segments suggest dominant buying pressure within the regression window. Sustained red segments suggest dominant selling. Neutral gray segments indicate a contested equilibrium without clear directional participation weight.
Regression Mode Selection : Use Polynomial mode for markets with visible curvature in their trend structure where the quadratic bend produces a more accurate fit. Use Linear mode for markets trending in a straight consistent direction where the polynomial's additional degree of freedom would overfit noise.
Profile Distribution Skew Analysis : Compare the buy and sell distribution balance in the end profile to assess whether the window's participation was predominantly concentrated above or below the centerline, providing a volume-based directional bias reading that complements the price-based trend assessment.
Technical Implementation Details
Regression Engine : Matrix OLS with design matrix construction, normal equation formation, matrix inversion, and prediction array application for linear or polynomial curve fitting to HL2
Channel Construction : Standard deviation-scaled channel width with three-layer gradient polyline fills and triple-line glow boundaries following the regression curve
Inward Volume System : Window-maximum normalization with close-position buy-sell splitting, dynamic width scaling by relative volume, and above-average volume color intensification
Edge Flare System : Volume multiplier threshold combined with boundary zone percentage proximity testing with dual-layer glow line rendering and width scaling by relative volume
Centerline Flow : Sixty-segment volume-weighted close-position bias computation with directional color and width encoding
End Profile : Overlap-weighted row accumulation across the full regression window with three-point smoothing, normalization, and horizontal buy-sell bar rendering with curved outline polyline
Performance Profile : All rendering triggered on last bar with full object cleanup and rebuild each cycle, configurable regression length capped at 490 bars for object management
Optimal Application Parameters
Timeframe Guidance:
1 - 5 min : Intraday regression flow tracking with shorter length and tighter SD multiplier for fast-adapting channel that captures intraday trend structure with responsive volume distribution
15 - 60 min : Session-level structural volume analysis with balanced regression length and moderate SD multiplier for meaningful channel geometry across typical session directional moves
4H - Daily : Swing-level regression channel profiling with longer lookback and polynomial mode for a curve-following channel spanning multi-session trend structures
Suggested Baseline Configuration:
Regression Length : 236
SD Multiplier : 1.75
Mode : Polynomial
Volume SMA : 15
Bar Height (ATR×) : 2.1
Show Edge Flares : Enabled
Show Bound Diamonds : Enabled
Show Centerline : Enabled
Show End Profile : Enabled
Color Candles : Enabled (requires disabling original chart candles in chart settings)
These suggested parameters should be used as a baseline; their effectiveness depends on the instrument's volatility characteristics, volume behavior, and preferred channel sensitivity, so fine-tuning is expected for optimal performance.
Parameter Calibration Notes
Use the following adjustments to refine behavior without altering the core logic:
Channel too wide or narrow : Adjust SD Multiplier to expand or contract the channel width relative to the instrument's typical deviation from the regression curve, calibrating boundary distance to realistic price excursion ranges.
Curve fits too loosely to recent price : Decrease Regression Length to shorten the lookback window, producing a tighter curve that adapts more quickly to recent structural changes. Switch to Polynomial mode if visible trend curvature is present.
Inward bars too tall or short : Adjust Bar Height (ATR×) to scale the maximum inward bar height, making volume bars more prominent during high-participation sessions or more subtle on instruments with lower volume variance.
Too many or too few edge flares : Increase Flare Volume Multiplier to restrict flares to only exceptional volume events, or adjust Flare Edge Zone % to control how close to the boundary price must be before a flare qualifies.
End profile too wide or compact : Adjust Profile Width to control the maximum horizontal extent of the end profile bars, calibrating the profile size to the available chart space at the current zoom level.
Profile rows too coarse or granular : Adjust Profile Rows to increase or decrease vertical resolution, with higher values providing finer detail across the channel's price range and lower values producing broader, more readable rows.
Too many bound diamonds cluttering the chart : The diamond system marks only first-bar boundary touches. On instruments with frequent boundary contact the marker density may be high. Disable Show Bound Diamonds and rely on edge flares alone for boundary interaction identification.
Adjustments should be incremental and evaluated across multiple session types rather than isolated market conditions.
Performance Characteristics
High Effectiveness:
Trending markets where the regression curve provides an accurate fit to the directional price path and the channel boundaries represent meaningful statistical extremes with genuine participation significance
Liquid instruments with consistent volume where the buy-sell splitting produces reliable directional participation readings and the end profile accumulates a statistically meaningful distribution across the regression window
Boundary interaction strategies where edge flares and bound diamond markers identify high-participation channel extreme events that frequently precede structural reactions
Distribution analysis workflows where the end profile provides a regression-relative volume profile summary that replaces or complements standalone volume profile indicators
Reduced Effectiveness:
Choppy, directionless markets where the regression curve has no clear shape and channel boundaries are penetrated frequently without the sustained trend structure required for meaningful boundary interaction analysis
Low-liquidity instruments where thin volume produces unreliable buy-sell splits and end profile distributions that reflect random participation patterns rather than genuine directional flow
Markets with frequent gaps where the HL2 series used for regression produces curves distorted by discontinuous price events that shift the channel relative to actual price structure
Very short regression windows where insufficient bars per channel row produce end profiles dominated by noise rather than statistically meaningful participation concentration
Consolidation environments where price oscillates near the regression centerline without reaching channel boundaries, reducing the analytical value of edge flares and bound diamonds while producing uniformly short inward bars
Integration Guidelines
Confluence : Combine with BOSWaves momentum tools, order block analysis, or structural indicators to validate channel boundary interactions and edge flare events with broader analytical context
End Profile Reference : Use the end profile distribution as a volume-based reference layer for price levels visited by price within the regression window. High-volume rows in the profile identify price levels with the greatest historical participation concentration, making them structurally significant references for future interaction.
Inward Bar Divergence Monitoring : Monitor inward bar height on opposing sides as price approaches boundaries. Growing opposing-side bars during boundary approach suggest increasing counter-directional participation that may oppose the boundary continuation.
Regression Mode Consistency : Maintain a consistent regression mode when using the channel as an ongoing structural reference. Switching between Linear and Polynomial shifts the curve and redistributes the channel geometry, making successive comparisons of profile distribution and boundary levels unreliable.
Centerline Cross Awareness : Treat price crossing the regression centerline as a potential flow transition event. Combined with a centerline flow segment color change from one direction to the other, centerline crossings with above-average volume suggest genuine directional repositioning within the channel structure.
Disclaimer
Volume Regression Channel is a professional-grade regression-anchored volume flow analysis tool. It uses OLS curve fitting with close-position volume splitting and cumulative profile construction but does not predict future price movements. Results depend on market conditions, instrument volume characteristics, parameter selection, and disciplined execution. BOSWaves recommends deploying this indicator within a broader analytical framework that incorporates momentum context, order flow analysis, and comprehensive risk management. Wskaźnik
