COIN-Clean Market Structure & Trend Confirmation TP(Updated)COIN-Clean Market Structure & Trend Confirmation TP(Updated) — COIN (Simple Trend + Buy/Sell Confirmation + Take-Profit Targets)
This indicator is designed to help you trade COIN by clearly showing trend direction, confirmation signals, and predefined take-profit levels. It removes guesswork and helps you stay on the right side of the move.
HOW TO LOAD
Add the indicator to a COIN chart. Turn on Extended Hours for best results. The default settings are already optimized and do not need to be changed.
THE RIBBON (WHAT TO TRADE)
The ribbon shows the overall trend.
Teal ribbon = price is trending up (look for BUY setups).
Red ribbon = price is trending down (look for SELL setups).
Gray ribbon = no clear trend (do not trade).
If the ribbon is gray, the indicator will block signals to protect you from choppy markets.
BULL AND BEAR DOTS (TREND CHANGE ALERTS)
Bull dot appears when the trend turns bullish.
Bear dot appears when the trend turns bearish.
These dots are early warnings, not entries. Always wait for a BUY or SELL arrow before taking a trade.
BUY AND SELL ARROWS (WHEN TO ENTER)
BUY arrows appear only when conditions strongly favor upward movement.
SELL arrows appear only when conditions strongly favor downward movement.
These arrows are confirmation signals. Enter only after the arrow appears.
Not every move will get a signal. Fewer, higher-quality signals are intentional.
OPENING BIAS (FIRST MINUTES PROTECTION)
Right after the market opens, the indicator sets a directional bias.
During this time, it will only allow trades in the safer direction.
This helps avoid getting chopped up during the opening volatility.
TAKE-PROFIT TARGETS AND STOP
When a BUY or SELL arrow appears, take-profit levels automatically show on the chart:
TP1, TP2, and TP3 are profit targets.
STOP is where the trade is considered wrong.
You can scale out at each target or exit fully at any level.
Only the most recent targets are shown to keep the chart clean.
SIMPLE WAY TO USE IT
Check the ribbon color (teal or red).
Ignore the chart if the ribbon is gray.
Wait for a BUY or SELL arrow.
Use the take-profit targets and stop provided.
Do not chase moves without arrows.
IMPORTANT NOTES
This indicator does not repaint confirmed signals.
It is meant to keep trading simple and disciplined.
It works best during strong trend days, not sideways markets.
Canal Paralelo
Clean Market Structure & Trend Confirmation ( Updated ) CLEAN MARKET STRUCTURE & TREND CONFIRMATION — 24H CONTINUATION EDITION
This indicator is designed to help traders identify clear market direction, confirm trend strength, and manage trades with structured take-profit and stop levels. It works by aligning trend, momentum, and structure before showing any BUY or SELL signal. Signals are selective by design to reduce noise and false entries.
This version includes an optional continuation mode, allowing additional high-quality signals when trends persist, while still maintaining discipline and structure.
HOW TO LOAD AND USE (IMPORTANT)
Add the indicator to your chart.
Recommended symbols: SPY, QQQ, ES1!, NQ1! (works on stocks and futures).
Recommended timeframes:
• 5-minute (default and most balanced)
• 1-minute (faster, more active, optional)
No refresh is required each day. The script resets automatically.
RECOMMENDED DEFAULT SETTINGS
• 9:25 Bias Filter: ON
• Continuation Signals: ON
• TP Ladder: ON
• Keep Only Most Recent TP Ladder: ON
• Execute on Candle Close: optional (ON = safer, OFF = faster)
These defaults provide the best balance between discipline and opportunity.
HOW THE RIBBON WORKS (CORE TREND FILTER)
The ribbon is the foundation of the system.
• Teal ribbon = bullish trend
• Red ribbon = bearish trend
• Gray ribbon = no-trade zone
The system avoids signals in gray conditions to reduce chop. Only trade in the direction of the ribbon.
BULL AND BEAR DOTS
Bull and Bear dots mark confirmed trend flips.
• Bull dot = trend has flipped bullish
• Bear dot = trend has flipped bearish
These are not trades by themselves. They are early awareness signals that help you prepare for potential entries.
BUY AND SELL ARROWS (TRADE SIGNALS)
BUY and SELL arrows appear only when:
• Ribbon direction is aligned
• Trend structure confirms
• Momentum and volume agree
• Market conditions are favorable
These arrows represent high-probability trade opportunities, not constant signals.
TAKE PROFIT & STOP LEVELS
When a BUY or SELL arrow prints:
• TP1, TP2, TP3 levels appear automatically
• A STOP level is plotted automatically
• Levels are based on volatility and adjust to market conditions
Only the most recent trade plan is shown to keep the chart clean.
CONTINUATION MODE (WHAT’S DIFFERENT)
Compared to the original version:
• This version can take more than one trade per day
• It allows new trades when trends reset and realign
• It does NOT chase every candle
• It still requires full confirmation before each signal
Think of this as adaptive trend participation, not aggressive scalping.
1-MINUTE VS 5-MINUTE USE
• 5-minute: fewer signals, higher confidence, best for most users
• 1-minute: earlier entries, more activity, requires discipline
You do NOT need to switch back and forth constantly. Pick one timeframe and stay consistent.
IMPORTANT NOTES FOR NEW USERS
• Fewer signals is a feature, not a flaw
• Missing a move is better than forcing a bad trade
• Always manage risk and position size
• This indicator assists decision-making — it does not predict the future
DISCLAIMER
This indicator is for educational purposes only. It is not financial advice. Trading involves risk, and you are responsible for all trading decisions. Use proper risk management and only trade with capital you can afford to lose.
Clean Market Structure & Trend Confirmation ( UPDATED )
CLEAN MARKET STRUCTURE & TREND CONFIRMATION — 24H CONTINUATION EDITION
This indicator is designed to help traders identify clear market direction, confirm trend strength, and manage trades with structured take-profit and stop levels. It works by aligning trend, momentum, and structure before showing any BUY or SELL signal. Signals are selective by design to reduce noise and false entries.
This version includes an optional continuation mode, allowing additional high-quality signals when trends persist, while still maintaining discipline and structure.
HOW TO LOAD AND USE (IMPORTANT)
Add the indicator to your chart.
Recommended symbols: SPY, QQQ, ES1!, NQ1! (works on stocks and futures).
Recommended timeframes:
• 5-minute (default and most balanced)
• 1-minute (faster, more active, optional)
No refresh is required each day. The script resets automatically.
RECOMMENDED DEFAULT SETTINGS
• 9:25 Bias Filter: ON
• Continuation Signals: ON
• TP Ladder: ON
• Keep Only Most Recent TP Ladder: ON
• Execute on Candle Close: optional (ON = safer, OFF = faster)
These defaults provide the best balance between discipline and opportunity.
HOW THE RIBBON WORKS (CORE TREND FILTER)
The ribbon is the foundation of the system.
• Teal ribbon = bullish trend
• Red ribbon = bearish trend
• Gray ribbon = no-trade zone
The system avoids signals in gray conditions to reduce chop. Only trade in the direction of the ribbon.
BULL AND BEAR DOTS
Bull and Bear dots mark confirmed trend flips.
• Bull dot = trend has flipped bullish
• Bear dot = trend has flipped bearish
These are not trades by themselves. They are early awareness signals that help you prepare for potential entries.
BUY AND SELL ARROWS (TRADE SIGNALS)
BUY and SELL arrows appear only when:
• Ribbon direction is aligned
• Trend structure confirms
• Momentum and volume agree
• Market conditions are favorable
These arrows represent high-probability trade opportunities, not constant signals.
TAKE PROFIT & STOP LEVELS
When a BUY or SELL arrow prints:
• TP1, TP2, TP3 levels appear automatically
• A STOP level is plotted automatically
• Levels are based on volatility and adjust to market conditions
Only the most recent trade plan is shown to keep the chart clean.
CONTINUATION MODE (WHAT’S DIFFERENT)
Compared to the original version:
• This version can take more than one trade per day
• It allows new trades when trends reset and realign
• It does NOT chase every candle
• It still requires full confirmation before each signal
Think of this as adaptive trend participation, not aggressive scalping.
1-MINUTE VS 5-MINUTE USE
• 5-minute: fewer signals, higher confidence, best for most users
• 1-minute: earlier entries, more activity, requires discipline
You do NOT need to switch back and forth constantly. Pick one timeframe and stay consistent.
IMPORTANT NOTES FOR NEW USERS
• Fewer signals is a feature, not a flaw
• Missing a move is better than forcing a bad trade
• Always manage risk and position size
• This indicator assists decision-making — it does not predict the future
DISCLAIMER
This indicator is for educational purposes only. It is not financial advice. Trading involves risk, and you are responsible for all trading decisions. Use proper risk management and only trade with capital you can afford to lose.
Clean Market Structure & Trend Confirmation(Continuation 24H)CLEAN MARKET STRUCTURE & TREND CONFIRMATION — 24H CONTINUATION EDITION
This indicator is designed to help traders identify clear market direction, confirm trend strength, and manage trades with structured take-profit and stop levels. It works by aligning trend, momentum, and structure before showing any BUY or SELL signal. Signals are selective by design to reduce noise and false entries.
This version includes an optional continuation mode, allowing additional high-quality signals when trends persist, while still maintaining discipline and structure.
HOW TO LOAD AND USE (IMPORTANT)
Add the indicator to your chart.
Recommended symbols: SPY, QQQ, ES1!, NQ1! (works on stocks and futures).
Recommended timeframes:
• 5-minute (default and most balanced)
• 1-minute (faster, more active, optional)
No refresh is required each day. The script resets automatically.
RECOMMENDED DEFAULT SETTINGS
• 9:25 Bias Filter: ON
• Continuation Signals: ON
• TP Ladder: ON
• Keep Only Most Recent TP Ladder: ON
• Execute on Candle Close: optional (ON = safer, OFF = faster)
These defaults provide the best balance between discipline and opportunity.
HOW THE RIBBON WORKS (CORE TREND FILTER)
The ribbon is the foundation of the system.
• Teal ribbon = bullish trend
• Red ribbon = bearish trend
• Gray ribbon = no-trade zone
The system avoids signals in gray conditions to reduce chop. Only trade in the direction of the ribbon.
BULL AND BEAR DOTS
Bull and Bear dots mark confirmed trend flips.
• Bull dot = trend has flipped bullish
• Bear dot = trend has flipped bearish
These are not trades by themselves. They are early awareness signals that help you prepare for potential entries.
BUY AND SELL ARROWS (TRADE SIGNALS)
BUY and SELL arrows appear only when:
• Ribbon direction is aligned
• Trend structure confirms
• Momentum and volume agree
• Market conditions are favorable
These arrows represent high-probability trade opportunities, not constant signals.
TAKE PROFIT & STOP LEVELS
When a BUY or SELL arrow prints:
• TP1, TP2, TP3 levels appear automatically
• A STOP level is plotted automatically
• Levels are based on volatility and adjust to market conditions
Only the most recent trade plan is shown to keep the chart clean.
CONTINUATION MODE (WHAT’S DIFFERENT)
Compared to the original version:
• This version can take more than one trade per day
• It allows new trades when trends reset and realign
• It does NOT chase every candle
• It still requires full confirmation before each signal
Think of this as adaptive trend participation, not aggressive scalping.
1-MINUTE VS 5-MINUTE USE
• 5-minute: fewer signals, higher confidence, best for most users
• 1-minute: earlier entries, more activity, requires discipline
You do NOT need to switch back and forth constantly. Pick one timeframe and stay consistent.
IMPORTANT NOTES FOR NEW USERS
• Fewer signals is a feature, not a flaw
• Missing a move is better than forcing a bad trade
• Always manage risk and position size
• This indicator assists decision-making — it does not predict the future
DISCLAIMER
This indicator is for educational purposes only. It is not financial advice. Trading involves risk, and you are responsible for all trading decisions. Use proper risk management and only trade with capital you can afford to lose.
Sen Channel LiteSen Channel Lite
Sen Channel Lite calculates a robust, median-based regression channel using the Theil–Sen slope method. This visual tool helps traders identify trend direction and potential breakout zones in real time.
Key Features
Dynamic Trend Line: The median-based regression line adapts to price movement, providing a central reference for trend direction.
Upper and Lower Bands: Automatically updated bands highlight potential breakout or reversal areas.
Breakout Markers: Optional triangles indicate when price crosses above the upper band or below the lower band.
Midline (EMA/SMA): Toggleable trend line for additional context on price direction.
VWAP Anchor: Optional VWAP plot to visualize volume-weighted average price levels.
Customizable Inputs:
Lookback Period for slope calculation
Band Multiplier to adjust sensitivity
Option to use Standard Deviation or ATR for band width
Midline type, length, and color
VWAP visibility and color
Channel cloud transparency
How to Read Signals (Educational Use Only):
Trend Context: The midline provides a reference for general trend direction. Price above the midline suggests bullish bias; below indicates bearish bias.
Breakouts:
Triangle up → price crossed above the upper band; potential strong move upward.
Triangle down → price crossed below the lower band; potential strong move downward.
Channel Interpretation:
Price near the upper band → market may be overextended.
Price near the lower band → market may be oversold.
Price moving within the channel → trend is balanced; use additional analysis for direction.
VWAP Context: Compare price to VWAP for intraday support/resistance insights.
Usage Notes:
Fully visual tool; no trading or financial advice.
All calculations are protected to preserve intellectual property.
Results reflect real-time calculations; no repainting.
Suitable for intraday to daily timeframes.
Important: This script is published as protected/closed-source to safeguard GammaBulldog intellectual property.
HMA 34 Dual-Fractal Projections - VdubusVdubus MacD Divergence Trend Break Signal Generator :Here:-
HMA 18 Dual-Fractal Projections
Overview
The HMA 18 Dual-Fractal Projections is a technical analysis tool designed to identify market structure and potential breakout patterns by analyzing the pivots of a Hull Moving Average (HMA).
Unlike standard trendline indicators that struggle to balance "big picture" trends with immediate price action, this indicator utilizes a Dual-Fractal approach. It simultaneously calculates two separate timelines—Macro and Micro—to visualize both the dominant channel and the developing chart patterns (such as wedges or triangles) in real-time.
Visual Guide
The indicator plots three key elements on the main chart:
The HMA Line (Blue): A smooth, fast-acting moving average (default length 34) that serves as the baseline for all calculations.
Macro Structure (Solid, Thick Lines):
Red (Solid): Major Resistance.
Green (Solid): Major Support.
Purpose: Identifies the long-term trend channel. These lines react slowly and filter out noise.
Micro Structure (Dashed, Thin Lines):
Red (Dashed): Immediate Resistance.
Green (Dashed): Immediate Support.
Purpose: Identifies the short-term market structure. These lines react quickly to show forming wedges, triangles, or flags.
How It Works
The indicator applies a "Pivot High/Low" algorithm directly to the HMA data rather than raw price data. This filters out candle wicks and volatility, ensuring lines are drawn based on established momentum shifts.
Layer 1 (Macro): Uses a large "Lookback" period (default 44 bars) to find significant peaks and valleys. It connects the most recent major pivot to the previous one, projecting a line forward to show where the major trend channel lies.
Layer 2 (Micro): Uses a small "Lookback" period (default 10 bars) to find local peaks and valleys. This allows you to see how price is behaving within the larger channel.
Settings & Configuration
HMA Settings
HMA Length: The length of the Hull Moving Average.
Default: 34 (Matches the "visually pleasing" setting from recent testing).
Note: Set to 18 for a faster, more reactive baseline (scalping).
Layer 1: Macro (Big Channel)
Macro Lookback: Determines how many bars must pass before a peak is confirmed.
Default: 44. High values find broad, established channels.
Max Macro Lines: How many historical lines to keep on the chart.
Default: 1 (Keeps the chart clean, showing only the current structure).
Extend Macro Lines: Projects the lines infinitely to the right to predict future support/resistance zones.
Layer 2: Micro (Current Pattern)
Micro Lookback: A lower sensitivity setting to catch immediate structure.
Default: 10. Low values will pinpoint the exact boundaries of small wedges or flags forming right now.
Trading Strategy & Interpretation
1. The "Squeeze" (Wedge Identification) This is the primary use case.
Look for scenarios where the Macro Lines (Solid) are wide/parallel, but the Micro Lines (Dashed) are rapidly converging (pointing towards each other).
This indicates that while the main trend is intact, momentum is compressing. A breakout is imminent where the dashed lines intersect.
2. Trend Channels
When both Solid and Dashed lines are roughly parallel and sloping in the same direction, the trend is healthy and strong. Price is respecting both the short-term and long-term momentum.
3. Divergence / Early Reversal Warning
If the Macro Line is sloping UP, but the Micro Line starts sloping DOWN (crossing inside), it indicates a loss of momentum and a potential reversal before the price actually breaks the major trendline.
===========================================================================
2. Micro/Macro Cross Alert
A new input, Enable Micro/Macro Cross Alert, has been added under the "Alerts & Features" section.
This alert condition is triggered when the momentum of the Micro Structure exceeds the momentum of the Macro Structure, which is a high-probability signal for a breakout:
Bullish Alert: The Micro High (dashed red line) crosses above the Macro High (solid red line).
Bearish Alert: The Micro Low (dashed green line) crosses below the Macro Low (solid green line).
To set up the actual alert on your chart:
Right-click on the chart.
Select "Add alert on HMA 34 Dual-Fractal Projections".
In the Condition dropdown, select the indicator's name.
For the main alert criteria, choose "Any alert()".
Select your preferred alert actions (e.g., notification, email).
Ben D"s IndicatorIt Auto Draws and Detects, Channels draws buy and sell signals based on over bought, oversold and a few other indicators. It works on all time frames! Enjoy! Leave a comment if you like it.
Simple Price ChannelSimple Price Channel
This indicator plots a basic volatility-based channel around a moving average.
Features:
Midline using Simple Moving Average (SMA)
Upper & lower bands using ATR or true range
Channel fill for easy trend visualisation
This script is designed for educational and analytical purposes only.
It does not provide signals, alerts, or financial advice.
AG Pro Dynamic Channels PremiumAG Pro Dynamic Channels Premium
The Gold Standard in Automated Market Structure.
AG Pro Dynamic Channels Premium is the culmination of advanced algorithmic development, designed specifically for professional traders who refuse to compromise on chart clarity.
While standard indicators flood your screen with noise, this Premium edition employs a proprietary "Smart Filtering Engine" to identify, validate, and project only the most statistically significant support and resistance channels. It transforms chaos into a clear, actionable roadmap.
🏆 Why Go Premium?
This is not just an update; it is a complete overhaul of the trend detection logic.
1. 🧠 Smart Quality Control (Exclusive) The core difference in the Premium version is its ability to "think" before it draws.
Volatility Filtering: The script analyzes the slope of every potential trend. It automatically rejects unsustainable "pump/dump" moves and flat ranges, keeping only tradeable structures.
Wick Exclusion Logic: An advanced algorithm that ignores extreme volatility spikes (wicks), drawing channels based on candle body consolidation for higher precision.
2. 🏷️ Intelligent Labeling System Instant situational awareness. Every channel is auto-labeled (e.g., Mj Ext Up), so you know exactly which market phase (Major or Minor, Internal or External) you are trading in without guessing.
3. ⚡ Zero-Lag Optimization The code has been refactored for maximum efficiency, ensuring faster load times and smoother performance even on lower timeframes.
💎 Key Features
Dual-Layer Architecture: Simultaneously tracks Major Trends (for bias) and Minor Trends (for entries).
Dynamic Support & Resistance: The dotted midline acts as a high-probability reversal zone.
Institutional Grade Alerts: Fully customizable alerts for Breakouts and Reactions, complete with metadata for automated trading systems.
Auto-Tuning: Default settings are optimized for a balance of sensitivity and reliability, but fully customizable for specific assets (Crypto, Forex, Indices).
⚙️ Methodology (How It Works)
To comply with TradingView House Rules, here is the technical logic behind the script:
Pivot Detection: The script scans price action using a highly sensitive lookback period to find raw Pivot Highs and Lows.
Structure Mapping: It processes these points to define the Market Structure (HH, LL, LH, HL).
Validation Layer: Before rendering, the Smart Filter calculates the channel's duration and slope coefficient. If the channel is too short or too steep (violating the user-defined Max Slope threshold), it is discarded as "Market Noise."
Projection: Validated channels are drawn with dynamic extensions and fill zones.
🔒 How to Get Access
This is an Invite-Only script. Access is restricted to authorized users.
To Request Access: Please send me a private message on TradingView or check the links in my profile signature for more information.
Existing Members: If you have active access, the script will load automatically.
Disclaimer: Technical analysis tools are for educational purposes. Past performance does not guarantee future results.
Developed by Ali Gurtuna (AG Pro Series).
Kernel Channel [BackQuant]Kernel Channel
A non-parametric, kernel-weighted trend channel that adapts to local structure, smooths noise without lagging like moving averages, and highlights volatility compressions, expansions, and directional bias through a flexible choice of kernels, band types, and squeeze logic.
What this is
This indicator builds a full trend channel using kernel regression rather than classical averaging. Instead of a simple moving average or exponential weighting, the midline is computed as a kernel-weighted expectation of past values. This allows it to adapt to local shape, give more weight to nearby bars, and reduce distortion from outliers.
You can think of it as a sliding local smoother where you define both the “window” of influence (Window Length) and the “locality strength” (Bandwidth). The result is a flexible midline with optional upper and lower bands derived from kernel-weighted ATR or kernel-weighted standard deviation, letting you visualize volatility in a structurally consistent way.
Three plotting modes help demonstrate this difference:
When the midline is shown alone, you get a smooth, adaptive baseline that behaves almost like a regression moving average, as shown in this view:
When full channels are enabled, you see how standard deviation reacts to local structure with dynamically widening and tightening bands, a mode illustrated here:
When ATR mode is chosen instead of StdDev, band width reflects breadth of movement rather than variance, creating a volatility-aware envelope like the example here:
Why kernels
Classical moving averages allocate fixed weights. Kernels let the user define weighting shape:
Epanechnikov — emphasizes bars near the current bar, fades fast, stable and smooth.
Triangular — linear decay, simple and responsive.
Laplacian — exponential decay from the current point, sharper reactivity.
Cosine — gentle periodic decay, balanced smoothness for trend filters.
Using these in combination with a bandwidth parameter gives fine control over smoothness vs responsiveness. Smaller bandwidths give sharper local sensitivity, larger bandwidths give smoother curvature.
How it works (core logic)
The indicator computes three building blocks:
1) Kernel-weighted midline
For every bar, a sliding window looks back Window Length bars. Each bar in this window receives a kernel weight depending on:
its index distance from the present
the chosen kernel shape
the bandwidth parameter (locality)
Weights form the denominator, weighted values form the numerator, and the resulting ratio is the kernel regression mean. This midline is the central trend.
2) Kernel-based width
You choose one of two band types:
Kernel ATR — ATR values are kernel-averaged, producing a smooth, volatility-based width that is not dependent on variance. Ideal for directional trend channels and regime separation.
Kernel StdDev — local variance around the midline is computed through kernel weighting. This produces a true statistical envelope that narrows in quiet periods and widens in noisy areas.
Width is scaled using Band Multiplier , controlling how far the envelope extends.
3) Upper and lower channels
Provided midline and width exist, the channel edges are:
Upper = midline + bandMult × width
Lower = midline − bandMult × width
These create smooth structures around price that adapt continuously.
Plotting modes
The indicator supports multiple visual styles depending on what you want to emphasize.
When only the midline is displayed, you get a pure kernel trend: a smooth regression-like curve that reacts to local structure while filtering noise, demonstrated here: This provides a clean read on direction and slope.
With full channels enabled, the behavior of the bands becomes visible. Standard deviation mode creates elastic boundaries that tighten during compressions and widen during turbulence, which you can see in the band-focused demonstration: This helps identify expansion events, volatility clusters, and breakouts.
ATR mode shifts interpretation from statistical variance to raw movement amplitude. This makes channels less sensitive to outliers and more consistent across trend phases, as shown in this ATR variation example: This mode is particularly useful for breakout systems and bar-range regimes.
Regime detection and bar coloring
The slope of the midline defines directional bias:
Up-slope → green
Down-slope → red
Flat → gray
A secondary regime filter compares close to the channel:
Trend Up Strong — close above upper band and midline rising.
Trend Down Strong — close below lower band and midline falling.
Trend Up Weak — close between midline and upper band with rising slope.
Trend Down Weak — close between lower band and midline with falling slope.
Compression mode — squeeze conditions.
Bar coloring is optional and can be toggled for cleaner charts.
Squeeze logic
The indicator includes non-standard squeeze detection based on relative width , defined as:
width / |midline|
This gives a dimensionless measure of how “tight” or “loose” the channel is, normalized for trend level.
A rolling window evaluates the percentile rank of current width relative to past behavior. If the width is in the lowest X% of its last N observations, the script flags a squeeze environment. This highlights compression regions that may precede breakouts or regime shifts.
Deviation highlighting
When using Kernel StdDev mode, you may enable deviation flags that highlight bars where price moves outside the channel:
Above upper band → bullish momentum overextension
Below lower band → bearish momentum overextension
This is turned off in ATR mode because ATR widths do not represent distributional variance.
Alerts included
Kernel Channel Long — midline turns up.
Kernel Channel Short — midline turns down.
Price Crossed Midline — crossover or crossunder of the midline.
Price Above Upper — early momentum expansion.
Price Below Lower — downward volatility expansion.
These help automate regime changes and breakout detection.
How to use it
Trend identification
The midline acts as a bias filter. Rising midline means trend strength upward, falling midline means downward behavior. The channel width contextualizes confidence.
Breakout anticipation
Kernel StdDev compressions highlight areas where price is coiling. Breakouts often follow narrow relative width. ATR mode provides structural expansion cues that are smooth and robust.
Mean reversion
StdDev mode is suitable for fade setups. Moves to outer bands during low volatility often revert to the midline.
Continuation logic
If price breaks above the upper band while midline is rising, the indicator flags strong directional expansion. Same logic for breakdowns on the lower band.
Volatility characterization
Kernel ATR maps raw bar movements and is excellent for identifying regime shifts in markets where variance is unstable.
Tuning guidance
For smoother long-term trend tracking
Larger window (150–300).
Moderate bandwidth (1.0–2.0).
Epanechnikov or Cosine kernel.
ATR mode for stable envelopes.
For swing trading / short-term structure
Window length around 50–100.
Bandwidth 0.6–1.2.
Triangular for speed, Laplacian for sharper reactions.
StdDev bands for precise volatility compression.
For breakout systems
Smaller bandwidth for sharp local detection.
ATR mode for stable envelopes.
Enable squeeze highlighting for identifying setups early.
For mean-reversion systems
Use StdDev bands.
Moderate window length.
Highlight deviations to locate overextended bars.
Settings overview
Kernel Settings
Source
Window Length
Bandwidth
Kernel Type (Epanechnikov, Triangular, Laplacian, Cosine)
Channel Width
Band Type (Kernel ATR or Kernel StdDev)
Band Multiplier
Visuals
Show Bands
Color Bars By Regime
Highlight Squeeze Periods
Highlight Deviation
Lookback and Percentile settings
Colors for uptrend, downtrend, squeeze, flat
Trading applications
Trend filtering — trade only in direction of the midline slope.
Breakout confirmation — expansion outside the bands while slope agrees.
Squeeze timing — compression periods often precede the next directional leg.
Volatility-aware stops — ATR mode makes channel edges suitable for adaptive stop placement.
Structural swing mapping — StdDev bands help locate midline pullbacks vs distributional extremes.
Bias rotation — bar coloring highlights when regime shifts occur.
Notes
The Kernel Channel is not a signal generator by itself, but a structural map. It helps classify trend direction, volatility environment, distribution shape, and compression cycles. Combine it with your entry and exit framework, risk parameters, and higher-timeframe confirmation.
It is designed to behave consistently across markets, to avoid the bluntness of classical averages, and to reveal subtle curvature in price that traditional channels miss. Adjust kernel type, bandwidth, and band source to match the noise profile of your instrument, then use squeeze logic and deviation highlighting to guide timing.
MC3 Pro Ultra e10Al-Brooks style MC3/Thrust signals with smart gating: EMA, Wilder ADX/DI, Consolidation, BO+FT, Z-score, Volume, RSI div, HTF EMA, Structure, OR/Blackout, Smart Cooldown. Non-repainting.
Full Description (for the main page)
MC3 Pro Ultra — Invite-Only (Al Brooks–inspired)
A high-discipline entry tool for 3-bar micro-channels (MC3) and optional 1-bar thrusts (MC1). Signals are filtered by a layered “gate” system: EMA side/slope/distance, Wilder ADX/DI, Consolidation (Box, BB<KC, Efficiency Ratio), Breakout+Follow-Through (BO+FT), TR Z-score expansion, Volume (mild/strict), true RSI divergence, HTF EMA (side/slope/strict), Market Structure (HH/HL vs LH/LL with optional BOS), Liquidity sweep guard, Open Range gate, Blackout windows (news) and Smart Cooldown v2.
Everything is non-repainting (evaluated on bar close or using closed higher-TF values).
What it does
MC3 (3-bar micro-channel) & Thrust (MC1) entries in both directions.
Auto regime: dynamically tightens thresholds in chop and relaxes them in trend.
BO+FT confirm: bar-3 must close beyond prior H/L by X points and near the extreme; optional follow-through (no immediate pullback).
Z-Score (TR): requires statistical range expansion (any bar inside the MC3).
EMA filter: side rule (All 3 / Any 2 / Last), slope, and max ATR distance.
Wilder ADX/DI: strength/rend bias; optional DI dominance.
Consolidation filter: Box+ATR (with break confirmation), Squeeze (BB<KC), or ER (Efficiency Ratio).
Volume gate: mild (above SMA×mult) or strict (3-bar rising).
True RSI divergence: pivot-based; blocks when divergence contradicts direction.
HTF EMA (non-repainting): side/slope/strict from a higher timeframe using closed bars.
Market Structure: longs only in HH/HL, shorts only in LH/LL; optional fresh BOS.
Liquidity Sweep guard: block-against or require-with sweep.
Open Range gate: require OR breakout before entries (optional).
Blackout windows: disable signals during macro/news windows.
Smart Cooldown v2: EMA-stretch + clustering penalty to avoid over-trading.
Retest mode (visual): after a signal, watch for a pullback to prev H/L or an EMA±ATR band.
Panel & Debug: status panel (regime, ADX, HTF, CONS, Z/TR, score, gates) + debug reasons for blocked signals.
R overlay: draws entry/stop/targets and an approximate position size.
Non-repainting: uses barstate.isconfirmed and closed HTF values. Signals print on bar close.
Presets
NQ A+ (2m/5m) – fast trend bias. BO+FT & Z-score on, Volume mild, DI dominance on, HTF strict.
NQ Pullback-safe (5m) – more conservative, higher min score & BO/Z thresholds.
ES 5m – balanced default.
(You can also use Custom and tweak only 2–3 knobs at a time.)
Suggested markets/timeframes: CME index futures (NQ/ES), 2m/5m/15m. Works on FX/indices/crypto with sensible retuning.
How to read signals
Green/Red arrows mark confirmed MC3 or Thrust entries (printed after bar closes).
Label shows S=Score and THR if the thrust override triggered.
Panel (top-right) shows: Regime (TREND/CHOP), ADX (prev closed bar optional), HTF (side/slope), Consolidation mode, OR status, current Z/TR vs threshold, Score≥, and quick Gates (✓/✗) for long/short.
Debug (optional, last bar): concatenated reasons why a signal did not pass (e.g., ).
Retest mode places “RT” markers when price pulls back to the chosen retest source.
Key inputs (high-level)
Definition: MC3 (color / close-to-close / micro-channel HL / combo), optional Thrust override.
EMA: side rule, slope, max ATR distance (with soft scoring).
ADX/DI: Wilder ADX len/threshold, optional DI dominance.
Consolidation: Box+ATR (with min breaks & confirm), Squeeze (BB<KC), ER.
BO+FT: min points beyond prior H/L, close% near extreme, “no-pullback” option.
Z-Score: TR Z-score length & min threshold.
Volume: mild (SMA×mult) or strict (3-bar rising).
RSI divergence: pivot L/R, max lookback age.
HTF: timeframe/length, rule (Side only / Slope only / Strict).
Structure gate: pivot L/R, optional BOS with max age.
Sweep guard: Off / BlockAgainst / RequireWith.
Open Range: session window + “require breakout” toggle.
Blackout: one or two session windows (e.g., FOMC/CPI).
Smart Cooldown v2: base cooldown, EMA-stretch bonus, cluster penalty.
Alerts
Comes with alertconditions for Bull/Bear signals.
Optional JSON payload (direction, score, preset, regime, price, est. R, symbol, timeframe) for webhook-based managers (auto-filtering or auto-sizing).
How to set: Add alert on this indicator → choose condition “Bull MC3/Thrust” or “Bear MC3/Thrust” → Once-per-bar-close → webhook (optional).
Best practices
In trend: keep Auto regime ON; you can slightly lower min score / Z / BO.
In chop: raise min score (+1~2), use Volume strict + DI dominance, increase Z and close% thresholds, optionally require OR breakout.
Retest entries: enable “Retest mode” to get better fills (prev H/L or EMA band).
HTF Strict + Structure gate will materially improve selectivity (fewer trades, higher quality).
Avoid trading during Blackout windows (macro releases, roll).
Respect Smart Cooldown to prevent clustering and revenge trades.
Disclaimers
This is not financial advice. Backtest/forward-test before risking capital.
No indicator guarantees win rate or profits; use stops and position sizing.
Invite-Only access at the author’s discretion. Redistribution is prohibited.
Credits
Inspired by Al Brooks methodology (micro-channels, breakouts, trend vs chop context) and classic Wilder ADX/DI.
Auto Channel [SciQua]Auto Channel
Purpose
Auto Channel finds the single best parallel price channel from recent price action and keeps it updated in real time. It uses ZigZag pivots to build candidate channels, scores each candidate for quality, then plots the winner. When price closes outside the channel, the script flags a breakout and can fire alerts.
How it works
1. ZigZag pivots
The script uses TradingView’s TradingView/ZigZag/7 library to generate a stream of swing highs and lows based on a percentage reversal threshold and a leg depth. These pivots are the only points the channel logic evaluates, which keeps the search fast and focused on structure rather than noise.
2. Channel candidates
From the most recent pivots, the script forms all combinations of two swing highs and two swing lows.
It computes a slope for the high line and a slope for the low line and requires that they be nearly parallel within a user-defined tolerance.
3. Quality scoring and selection
For every valid candidate, the script checks the recent pivot segments against the trial channel and computes:
Inside ratio: fraction of tested pivots that sit fully inside the channel after applying the tolerance buffer.
Violation sum: total magnitude of the breaches for any pivots outside the channel.
Current width: distance between upper and lower lines at the current bar.
The “best” channel is chosen by:
1. highest inside ratio
2. then widest current width
3. then smallest violation sum
4. Plot and projection
The upper and lower lines are anchored to the chosen pivot pairs and extend to the left. The script also projects each line to the current bar to compute the live upper and lower channel prices. Those levels drive the breakout checks and alerts.
5. Breakouts and alerts
A breakout is detected when the bar closes above the projected upper line or closes below the projected lower line, after applying the tolerance buffer. Triangle markers highlight fresh breakouts, and you can enable alert conditions to automate notification or strategy handoff.
Inputs:
ZigZag
Price deviation for reversals (%)
Default 0.2. Larger values produce fewer, larger swings. Smaller values produce more, smaller swings.
Pivot legs
Default 2. Controls the lookback depth ZigZag uses to confirm pivots.
ZigZag Color
Visual only.
Tip: If you are not seeing a stable channel, increase the ZigZag percentage to reduce minor swings.
Channel search
Number of recent pivots to consider
Default 12. Higher values search more history and try more channel combinations. Lower values make the search faster and more reactive.
Max slope difference for parallel
Default 0.0005. Maximum allowed difference between the upper and lower line slopes. Smaller values enforce stricter parallelism.
Max price tolerance outside channel
Default 0.0. A buffer added to the channel boundaries during validation and breakout checks. Use this to ignore tiny wicks that poke the lines.
Minimum inside to outside pivots ratio for valid channel (0.00–1.00)
Default 1.00. Require that at least this fraction of checked pivots lie inside the channel. For a more permissive fit, try 0.60 to 0.85.
Styling
Upper Line Color
Lower Line Color
Breakout Above Color
Breakout Below Color
Plots and visuals
Upper channel line
Lower channel line
Triangle markers on the bar that first confirms a close outside the channel, above or below.
Lines extend left from their pivot anchors. Projection to the current bar is used internally to test for breakouts and to set alerts.
Alerts
The script defines two alert conditions:
Close Above Channel
Triggers when the bar closes above the projected upper line plus tolerance.
Close Below Channel
Triggers when the bar closes below the projected lower line minus tolerance.
Practical usage
Trend channels
In a steady trend, a high inside ratio with a moderate width often highlights the dominant channel. Consider trend entries near the lower line in an uptrend or near the upper line in a downtrend, with exits or stops beyond the opposite boundary.
Breakout trades
Combine the channel breakout alert with volume or a separate momentum filter. The tolerance input helps avoid false triggers from small wicks.
Tuning for timeframe and symbol
• Faster markets or lower timeframes usually benefit from a larger ZigZag percentage and a smaller pivot count.
• Slower markets or higher timeframes can use more pivots and a tighter slope difference to enforce cleaner geometry.
Notes and limitations
Channels are derived from ZigZag pivots. If your ZigZag settings change, the detected channel will also change.
The script plots only the single best channel at any time to keep the chart clean.
Breakout markers appear on confirmed bars. For historical bars, markers appear only where a breakout would have been confirmed at that time.
Lines extend left from their anchors. The script projects the lines internally to the current bar for checks and alerts.
License and attribution
License
Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0).
Open source for educational and personal use only. Commercial use requires written permission.
Attribution
© 2025 SciQua — Joshua Danford
Libraries
Uses TradingView/ZigZag/7.
Changelog
v1.0
Initial release. Automatic parallel channel detection from ZigZag pivots, quality scoring, live plotting, and close-based breakout alerts.
FAQ
Why do I not see any channel sometimes?
There may not be a valid pair of highs and lows that pass the slope, inside ratio, and tolerance checks. Loosen the constraints by increasing Max slope difference, lowering Minimum inside ratio, or increasing the ZigZag percentage.
The channel looks too narrow or too wide?
Adjust Number of recent pivots and Minimum inside ratio. A higher inside ratio tends to favor cleaner, sometimes wider channels. A lower ratio may admit narrower, more reactive channels.
How can I reduce false breakout alerts?
Increase Max price tolerance outside channel to ignore small wicks. Add a volume or momentum confirmation in your personal alert workflow.
Thank you for using Auto Channel . Feedback and improvements are welcome.
Step Channel Momentum Trend [ChartPrime]OVERVIEW
Step Channel Momentum Trend is a momentum-based price filtering system that adapts to market structure using pivot levels and ATR volatility. It builds a dynamic channel around a stepwise midline derived from swing highs and lows. The system colors price candles based on whether price remains inside this channel (low momentum) or breaks out (strong directional flow). This allows traders to clearly distinguish ranging conditions from trending ones and take action accordingly.
⯁ STRUCTURAL MIDLNE (STEP CHANNEL CORE)
The midline acts as the backbone of the trend system and is based on structure rather than smoothing.
Calculated as the average of the most recent confirmed Pivot High and Pivot Low.
The result is a step-like horizontal line that only updates when new pivot points are confirmed.
This design avoids lag and makes the line "snap" to recent structural shifts.
It reflects the equilibrium level between recent bullish and bearish control.
This unique step logic creates clear regime shifts and prevents noise from distorting trend interpretation.
⯁ DYNAMIC VOLATILITY BANDS (ATR FILTERING)
To detect momentum strength, the script constructs upper and lower bands using the ATR (Average True Range):
The distance from the midline is determined by ATR × multiplier (default: 200-period ATR × 0.6).
These bands adjust dynamically to volatility, expanding in high-ATR environments and contracting in calm markets.
The area between upper and lower bands represents a neutral or ranging market state.
Breakouts outside the bands are treated as significant momentum shifts.
This filtering approach ensures that only meaningful breakouts are visually emphasized — not every candle fluctuation.
⯁ MOMENTUM-BASED CANDLE COLORING
The system visually transforms price candles into momentum indicators:
When price (hl2) is above the upper band, candles are green → bullish momentum.
When price is below the lower band, candles are red → bearish momentum.
When price is between the bands, candles are orange → low or no momentum (range).
The candle body, wick, and border are all colored uniformly for visual clarity.
This gives traders instant feedback on when momentum is expanding or fading — ideal for breakout, pullback, or trend-following strategies.
⯁ PIVOT-BASED SWING ANCHORS
Each confirmed pivot is plotted as a label ⬥ directly on the chart:
They also serve as potential manual entry zones, SL/TP anchors, or confirmation points.
⯁ MOMENTUM STATE LABEL
To reinforce the current market mode, a live label is displayed at the most recent candle:
Displays either:
“ Momentum Up ” when price breaks above the upper band.
“ Momentum Down ” when price breaks below the lower band.
“ Range ” when price remains between the bands.
Label color matches the candle color for quick identification.
Automatically updates on each bar close.
This helps discretionary traders filter trades based on market phase.
USAGE
Use the green/red zones to enter with momentum and ride trending moves.
Use the orange zone to stay out or fade ranges.
The step midline can act as a breakout base, pullback anchor, or bias reference.
Combine with other indicators (e.g., order blocks, divergences, or volume) to build high-confluence systems.
CONCLUSION
Step Channel Momentum Trend gives traders a clean, adaptive framework for identifying trend direction, volatility-based breakouts, and ranging environments — all from structural logic and ATR responsiveness. Its stepwise midline provides clarity, while its dynamic color-coded candles make momentum shifts impossible to miss. Whether you’re scalping intraday momentum or managing swing entries, this tool helps you trade with the market’s rhythm — not against it.
Rolling VWAP Channel [LuxAlgo]The Rolling VWAP Channel indicator creates a channel by analyzing a large number of Volume Weighted Average Prices (VWAPs) and determining a Channel based on percentile linear interpolation throughout the VWAPs.
🔶 USAGE
In this indicator, we have formed a Channel by first calculating multiple VWAPs, each with their respective anchor, then locating prices using "Percentile Linear Interpolation".
Note: Percentile Linear Interpolation locates the price point at which a specified percentage of VWAPs fall below it.
For example, a percentile of 50% would mean that 50% of the VWAP values fall below this price.
This method of analysis is important since the VWAPs are not often evenly distributed; therefore, we are able to draw importance to different levels by analyzing in percentiles.
When visualized, there is typically clustering of the VWAP values, which occurs at any given time, as seen below.
The channel can be tailored to each individual, with full control of each percentile represented in the channel. That being said, a general concept is that these clustered areas are clear results of sideways price action, which would lead us to believe that after interactions at these levels, we should expect to see a directional decision made by the market closely after.
🔶 DETAILS
The Rolling VWAP calculation calculates a user-specified number of VWAPs (up to 500), each anchored to a unique starting point in the chart based on the start of a new timeframe.
Each new timeframe that occurs causes a new VWAP to initialize. When the total number of desired VWAPs is reached, the oldest VWAP is removed and re-initialized, anchored to the current bar. Hence, the name " Rolling " VWAPs
This method allows us to automatically generate and manage large amounts of VWAPs without the need for user interaction.
After we have generated these VWAPs, we are able to run analyses on their returned values, such as the "Percentile Linear Interpolation" mentioned in the section above.
🔶 SETTINGS
Anchor Period: Choose which time period to use as the anchor point to initialize new VWAPs from.
VWAP Source: Choose the source for your VWAPs to calculate.
VWAP Amount: Sets the number of VWAPs to use. After this amount is on the chart, the oldest will be rolled.
🔹 Channel Lines
Toggle: Enable the associated VWAP Channel percentile line.
Percentile: Adjust each line's percentile independently for your needs.
Width: Adjust the width of the associated percentile line.
🔹 Calculation
Calculated Bars: Tells the indicator how many bars to calculate on, for faster calculations with less history, use a lower value. Setting this to 0 will remove the bar constraint.
TCT - Envelope MatrixTCT - Envelope Matrix
A powerful multi-envelope indicator that creates a comprehensive price channel system with 4 customizable envelopes and multiple intermediate levels for precise price action analysis.
Key Features:
• 4 customizable envelopes with adjustable percentages (0.2%, 0.4%, 0.6%, 0.8% by default)
• Optional EMA or SMA basis calculation
• Color-coded bands for easy visual identification
• Automatic horizontal lines showing current band values
• Midpoint lines between adjacent bands
• Additional 25%, 50%, and 75% levels between each band pair
The indicator provides:
- Clear visual representation of price channels
- Multiple support and resistance levels
- Dynamic price boundaries that adapt to market conditions
- Enhanced precision with intermediate levels between bands
Perfect for:
• Identifying potential support and resistance zones
• Spotting overbought/oversold conditions
• Finding potential reversal points
• Analyzing price volatility and channel width
• Making informed trading decisions based on price position relative to multiple bands
Customization Options:
• Adjustable length for the basis calculation
• Choice between EMA and SMA
• Customizable colors for each envelope
• Flexible percentage settings for each band
• Optional basis line color adjustment
This indicator is particularly useful for traders who want to analyze price action within multiple dynamic channels and identify potential trading opportunities based on price interactions with various support and resistance levels.
Support and Resistance Power Channel [ChartPrime]The Support and Resistance Power Channel indicator helps traders visualize key support and resistance zones, along with buy and sell power within those zones. By identifying the highest and lowest prices within a defined range, this indicator provides insight into potential price reversals and market strength. It calculates the strength of buy and sell pressure within the zones and includes additional features like midline values and delayed signals to reduce false breakouts.
⯁ KEY FEATURES AND HOW TO USE
⯌ Support and Resistance Zones :
This indicator identifies dynamic support (lower zone) and resistance (upper zone) levels, allowing traders to easily visualize key price levels. These zones are customizable with settings for the length of the channel and how far the zones extend into the future. The zones can be used to predict areas of potential price reversal or consolidation.
⯌ Buy and Sell Power :
Within the upper resistance zone, the indicator calculates Sell Power based on the number of bearish candles, while the lower support zone calculates Buy Power based on bullish candles. This feature helps traders understand the strength of buying or selling activity within each zone.
Example of buy and sell power tracking:
⯌ Highest, Lowest, and Mid Price Levels :
The indicator marks the highest and lowest price levels within the channel with an "X," and displays these values at the end of the channel. Additionally, the midline (average of the high and low) is plotted with a dotted line, showing a key area that the price often retests during trends.
⯌ Delayed Signal Markers :
To prevent false breakouts, the indicator includes a 2-bar delay for signals. These signals are plotted when the price crosses above or below the resistance or support zones, confirming potential reversals or breakouts. Arrows or diamonds are used to mark these signals on the chart.
Example of delayed breakout signals on the chart:
⯌ Extend Zones into the Future :
In the settings, traders can extend the support and resistance zones further into the future, allowing for ongoing analysis even after the initial levels have been identified. This feature can help with forward-looking trade planning.
⯁ USER INPUTS
Length : Defines the number of bars used to calculate the support and resistance zones.
Extend : Sets how far the support and resistance zones should be extended into the future.
Top and Bottom Colors : Allows customization of the colors for the support and resistance zones.
⯁ CONCLUSION
The Support and Resistance Power Channel indicator provides a powerful and visually intuitive way to track key market levels, buy and sell pressure, and potential reversals. With its real-time zone plotting and the calculation of power within each zone, it offers traders essential insights for making more informed trading decisions.
NR4 & NR7 with Breakouts [LuxAlgo]NR4 & NR7 with Breakouts is a simple indicator that utilizes the NR4 and NR7 candle patterns to display candle ranges and signals from range breakouts.
🔶 USAGE
The Narrow Range Patterns are candle formations determined by the last candle having a narrower (high-low) range than the previous number. This indicator showcases the 2 most recognized Narrow Range Patterns, which are the 4 and 7 bar variants (NR4 and NR7).
These patterns, introduced by Toby Crabel, are thought to provide insight for potential market breakouts by identifying periods of low volatility indicated by a candle with a small range. This is due to the idea that markets often move from periods of low volatility (contraction) to high volatility (expansion), and the NR4 and NR7 patterns help spot these transitions.
By utilizing these patterns, traders are better able to anticipate and respond to market shifts for better decision-making and risk management.
NOTE: These patterns have traditionally been studied on the Daily Timeframe Chart. This indicator allows the user to select a timeframe to generate these patterns from. It is suggested to be mindful of this when considering these patterns.
In this indicator, on the bar after the pattern is detected, the Narrow Range Bar will be highlighted with a zone, and lines displaying the range will extend from it. These ranges are helpful for providing levels to set limit orders and for managing risk.
Users are able to adjust which pattern they want visualized on their chart, please note;
All NR7s are NR4s but not all NR4s are NR7s.
Because of this, you will notice that when selecting "NR4" to display, the colors will change, but the detected ranges will not change.
🔹 Signals
When a Narrow Range Bar is detected, the script will wait for the price to close outside of the Range, then a signal will fire indicating the direction of exit. The signals are produced from the last NR4 or NR7 and will have the potential to fire from that range until a new NR4 or NR7 is detected.
After a signal fires, the logic goes into a "reset" period where it will wait for the price to reach the Range Mean before firing another signal.
These signals can be anticipated by considering the underlying logic and watching price approach the range extremities, and can be improved by utilizing other market information for confluence.
🔶 SETTINGS
Timeframe: Choose which timeframe to identify the NR4 and NR7 Pattern on. This must be Higher than the chart timeframe.
Pattern Type: Choose which (or all) patterns to display.
LinearRegressionLibrary "LinearRegression"
Calculates a variety of linear regression and deviation types, with optional emphasis weighting. Additionally, multiple of slope and Pearson’s R calculations.
calcSlope(_src, _len, _condition)
Calculates the slope of a linear regression over the specified length.
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The length of the lookback period for the linear regression.
_condition (bool) : (bool) Flag to enable calculation. Set to true to calculate on every bar; otherwise, set to barstate.islast for efficiency.
Returns: (float) The slope of the linear regression.
calcReg(_src, _len, _condition)
Calculates a basic linear regression, returning y1, y2, slope, and average.
Parameters:
_src (float) : (float) The source data series.
_len (int) : (int) The length of the lookback period.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: (float ) An array of 4 values: .
calcRegStandard(_src, _len, _emphasis, _condition)
Calculates an Standard linear regression with optional emphasis.
Parameters:
_src (float) : (series float) The source data series.
_len (int) : (int) The length of the lookback period.
_emphasis (float) : (float) The emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: (float ) .
calcRegRidge(_src, _len, lambda, _emphasis, _condition)
Calculates a ridge regression with optional emphasis.
Parameters:
_src (float) : (float) The source data series.
_len (int) : (int) The length of the lookback period.
lambda (float) : (float) The ridge regularization parameter.
_emphasis (float) : (float) The emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: (float ) .
calcRegLasso(_src, _len, lambda, _emphasis, _condition)
Calculates a Lasso regression with optional emphasis.
Parameters:
_src (float) : (float) The source data series.
_len (int) : (int) The length of the lookback period.
lambda (float) : (float) The Lasso regularization parameter.
_emphasis (float) : (float) The emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: (float ) .
calcElasticNetLinReg(_src, _len, lambda1, lambda2, _emphasis, _condition)
Calculates an Elastic Net regression with optional emphasis.
Parameters:
_src (float) : (float) The source data series.
_len (int) : (int) The length of the lookback period.
lambda1 (float) : (float) L1 regularization parameter (Lasso).
lambda2 (float) : (float) L2 regularization parameter (Ridge).
_emphasis (float) : (float) Emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: (float ) .
calcRegHuber(_src, _len, delta, iterations, _emphasis, _condition)
Calculates a Huber regression using Iteratively Reweighted Least Squares (IRLS).
Parameters:
_src (float) : (float) The source data series.
_len (int) : (int) The length of the lookback period.
delta (float) : (float) Huber threshold parameter.
iterations (int) : (int) Number of IRLS iterations.
_emphasis (float) : (float) Emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: (float ) .
calcRegLAD(_src, _len, iterations, _emphasis, _condition)
Calculates a Least Absolute Deviations (LAD) regression via IRLS.
Parameters:
_src (float) : (float) The source data series.
_len (int) : (int) The length of the lookback period.
iterations (int) : (int) Number of IRLS iterations for LAD.
_emphasis (float) : (float) Emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: (float ) .
calcRegBayesian(_src, _len, priorMean, priorSpan, sigma, _emphasis, _condition)
Calculates a Bayesian linear regression with optional emphasis.
Parameters:
_src (float) : (float) The source data series.
_len (int) : (int) The length of the lookback period.
priorMean (float) : (float) The prior mean for the slope.
priorSpan (float) : (float) The prior variance (or span) for the slope.
sigma (float) : (float) The assumed standard deviation of residuals.
_emphasis (float) : (float) Emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: (float ) .
calcRFromLinReg(_src, _len, _slope, _average, _y1, _condition)
Calculates the Pearson correlation coefficient (R) based on linear regression parameters.
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The length of the lookback period.
_slope (float) : (float) The slope of the linear regression.
_average (float) : (float) The average value of the source data series.
_y1 (float) : (float) The starting point (y-intercept of the oldest bar) for the linear regression.
_condition (bool) : (bool) Flag to enable calculation. Set to true to calculate on every bar; otherwise, set to barstate.islast for efficiency.
Returns: (float) The Pearson correlation coefficient (R) adjusted for the direction of the slope.
calcRFromSource(_src, _len, _condition)
Calculates the correlation coefficient (R) using a specified length and source data.
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The length of the lookback period.
_condition (bool) : (bool) Flag to enable calculation. Set to true to calculate on every bar; otherwise, set to barstate.islast for efficiency.
Returns: (float) The correlation coefficient (R).
calcSlopeLengthZero(_src, _len, _minLen, _step, _condition)
Identifies the length at which the slope is flattest (closest to zero).
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The maximum lookback length to consider (minimum of 2).
_minLen (int) : (int) The minimum length to start from (cannot exceed the max length).
_step (int) : (int) The increment step for lengths.
_condition (bool) : (bool) Flag to enable calculation. Set to true to calculate on every bar; otherwise, set to barstate.islast.
Returns: (int) The length at which the slope is flattest.
calcSlopeLengthHighest(_src, _len, _minLen, _step, _condition)
Identifies the length at which the slope is highest.
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The maximum lookback length (minimum of 2).
_minLen (int) : (int) The minimum length to start from.
_step (int) : (int) The step for incrementing lengths.
_condition (bool) : (bool) Flag to enable calculation. Set to true to calculate on every bar; otherwise, set to barstate.islast.
Returns: (int) The length at which the slope is highest.
calcSlopeLengthLowest(_src, _len, _minLen, _step, _condition)
Identifies the length at which the slope is lowest.
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The maximum lookback length (minimum of 2).
_minLen (int) : (int) The minimum length to start from.
_step (int) : (int) The step for incrementing lengths.
_condition (bool) : (bool) Flag to enable calculation. Set to true to calculate on every bar; otherwise, set to barstate.islast.
Returns: (int) The length at which the slope is lowest.
calcSlopeLengthAbsolute(_src, _len, _minLen, _step, _condition)
Identifies the length at which the absolute slope value is highest.
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The maximum lookback length (minimum of 2).
_minLen (int) : (int) The minimum length to start from.
_step (int) : (int) The step for incrementing lengths.
_condition (bool) : (bool) Flag to enable calculation. Set to true to calculate on every bar; otherwise, set to barstate.islast.
Returns: (int) The length at which the absolute slope value is highest.
calcRLengthZero(_src, _len, _minLen, _step, _condition)
Identifies the length with the lowest absolute R value.
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The maximum lookback length (minimum of 2).
_minLen (int) : (int) The minimum length to start from.
_step (int) : (int) The step for incrementing lengths.
_condition (bool) : (bool) Flag to enable calculation. Set to true to calculate on every bar; otherwise, set to barstate.islast.
Returns: (int) The length with the lowest absolute R value.
calcRLengthHighest(_src, _len, _minLen, _step, _condition)
Identifies the length with the highest R value.
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The maximum lookback length (minimum of 2).
_minLen (int) : (int) The minimum length to start from.
_step (int) : (int) The step for incrementing lengths.
_condition (bool) : (bool) Flag to enable calculation. Set to true to calculate on every bar; otherwise, set to barstate.islast.
Returns: (int) The length with the highest R value.
calcRLengthLowest(_src, _len, _minLen, _step, _condition)
Identifies the length with the lowest R value.
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The maximum lookback length (minimum of 2).
_minLen (int) : (int) The minimum length to start from.
_step (int) : (int) The step for incrementing lengths.
_condition (bool) : (bool) Flag to enable calculation. Set to true to calculate on every bar; otherwise, set to barstate.islast.
Returns: (int) The length with the lowest R value.
calcRLengthAbsolute(_src, _len, _minLen, _step, _condition)
Identifies the length with the highest absolute R value.
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The maximum lookback length (minimum of 2).
_minLen (int) : (int) The minimum length to start from.
_step (int) : (int) The step for incrementing lengths.
_condition (bool) : (bool) Flag to enable calculation. Set to true to calculate on every bar; otherwise, set to barstate.islast.
Returns: (int) The length with the highest absolute R value.
calcDevReverse(_src, _len, _slope, _y1, _inputDev, _emphasis, _condition)
Calculates the regressive linear deviation in reverse order, with optional emphasis on recent data.
Parameters:
_src (float) : (float) The source data.
_len (int) : (int) The length of the lookback period.
_slope (float) : (float) The slope of the linear regression.
_y1 (float) : (float) The y-intercept (oldest bar) of the linear regression.
_inputDev (float) : (float) The input deviation multiplier.
_emphasis (float) : (float) Emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: A 2-element tuple: .
calcDevForward(_src, _len, _slope, _y1, _inputDev, _emphasis, _condition)
Calculates the progressive linear deviation in forward order (oldest to most recent bar), with optional emphasis.
Parameters:
_src (float) : (float) The source data array, where _src is oldest and _src is most recent.
_len (int) : (int) The length of the lookback period.
_slope (float) : (float) The slope of the linear regression.
_y1 (float) : (float) The y-intercept of the linear regression (value at the most recent bar, adjusted by slope).
_inputDev (float) : (float) The input deviation multiplier.
_emphasis (float) : (float) Emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: A 2-element tuple: .
calcDevBalanced(_src, _len, _slope, _y1, _inputDev, _emphasis, _condition)
Calculates the balanced linear deviation with optional emphasis on recent or older data.
Parameters:
_src (float) : (float) Source data array, where _src is the most recent and _src is the oldest.
_len (int) : (int) The length of the lookback period.
_slope (float) : (float) The slope of the linear regression.
_y1 (float) : (float) The y-intercept of the linear regression (value at the oldest bar).
_inputDev (float) : (float) The input deviation multiplier.
_emphasis (float) : (float) Emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: A 2-element tuple: .
calcDevMean(_src, _len, _slope, _y1, _inputDev, _emphasis, _condition)
Calculates the mean absolute deviation from a forward-applied linear trend (oldest to most recent), with optional emphasis.
Parameters:
_src (float) : (float) The source data array, where _src is the most recent and _src is the oldest.
_len (int) : (int) The length of the lookback period.
_slope (float) : (float) The slope of the linear regression.
_y1 (float) : (float) The y-intercept (oldest bar) of the linear regression.
_inputDev (float) : (float) The input deviation multiplier.
_emphasis (float) : (float) Emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: A 2-element tuple: .
calcDevMedian(_src, _len, _slope, _y1, _inputDev, _emphasis, _condition)
Calculates the median absolute deviation with optional emphasis on recent data.
Parameters:
_src (float) : (float) The source data array (index 0 = oldest, index _len - 1 = most recent).
_len (int) : (int) The length of the lookback period.
_slope (float) : (float) The slope of the linear regression.
_y1 (float) : (float) The y-intercept (oldest bar) of the linear regression.
_inputDev (float) : (float) The deviation multiplier.
_emphasis (float) : (float) Emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns:
calcDevPercent(_y1, _inputDev, _condition)
Calculates the percent deviation from a given value and a specified percentage.
Parameters:
_y1 (float) : (float) The base value from which to calculate deviation.
_inputDev (float) : (float) The deviation percentage.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: A 2-element tuple: .
calcDevFitted(_len, _slope, _y1, _emphasis, _condition)
Calculates the weighted fitted deviation based on high and low series data, showing max deviation, with optional emphasis.
Parameters:
_len (int) : (int) The length of the lookback period.
_slope (float) : (float) The slope of the linear regression.
_y1 (float) : (float) The Y-intercept (oldest bar) of the linear regression.
_emphasis (float) : (float) Emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: A 2-element tuple: .
calcDevATR(_src, _len, _slope, _y1, _inputDev, _emphasis, _condition)
Calculates an ATR-style deviation with optional emphasis on recent data.
Parameters:
_src (float) : (float) The source data (typically close).
_len (int) : (int) The length of the lookback period.
_slope (float) : (float) The slope of the linear regression.
_y1 (float) : (float) The Y-intercept (oldest bar) of the linear regression.
_inputDev (float) : (float) The input deviation multiplier.
_emphasis (float) : (float) Emphasis factor: 0 for equal weight; >0 emphasizes recent bars; <0 emphasizes older bars.
_condition (bool) : (bool) Flag to enable calculation (true = calculate).
Returns: A 2-element tuple: .
calcPricePositionPercent(_top, _bot, _src)
Calculates the percent position of a price within a linear regression channel. Top=100%, Bottom=0%.
Parameters:
_top (float) : (float) The top (positive) deviation, corresponding to 100%.
_bot (float) : (float) The bottom (negative) deviation, corresponding to 0%.
_src (float) : (float) The source price.
Returns: (float) The percent position within the channel.
plotLinReg(_len, _y1, _y2, _slope, _devTop, _devBot, _scaleTypeLog, _lineWidth, _extendLines, _channelStyle, _colorFill, _colUpLine, _colDnLine, _colUpFill, _colDnFill)
Plots the linear regression line and its deviations, with configurable styles and fill.
Parameters:
_len (int) : (int) The lookback period for the linear regression.
_y1 (float) : (float) The starting y-value of the regression line.
_y2 (float) : (float) The ending y-value of the regression line.
_slope (float) : (float) The slope of the regression line (used to determine line color).
_devTop (float) : (float) The top deviation to add to the line.
_devBot (float) : (float) The bottom deviation to subtract from the line.
_scaleTypeLog (bool) : (bool) Use a log scale if true; otherwise, linear scale.
_lineWidth (int) : (int) The width of the plotted lines.
_extendLines (string) : (string) How lines should extend (none, left, right, both).
_channelStyle (string) : (string) The style of the channel lines (solid, dashed, dotted).
_colorFill (bool) : (bool) Whether to fill the space between the top and bottom deviation lines.
_colUpLine (color) : (color) Line color when slope is positive.
_colDnLine (color) : (color) Line color when slope is negative.
_colUpFill (color) : (color) Fill color when slope is positive.
_colDnFill (color) : (color) Fill color when slope is negative.
Prime Bands [ChartPrime]The Prime Standard Deviation Bands indicator uses custom-calculated bands based on highest and lowest price values over specific period to analyze price volatility and trend direction. Traders can set the bands to 1, 2, or 3 standard deviations from a central base, providing a dynamic view of price behavior in relation to volatility. The indicator also includes color-coded trend signals, standard deviation labels, and mean reversion signals, offering insights into trend strength and potential reversal points.
⯁ KEY FEATURES AND HOW TO USE
⯌ Standard Deviation Bands :
The indicator plots upper and lower bands based on standard deviation settings (1, 2, or 3 SDs) from a central base, allowing traders to visualize volatility and price extremes. These bands can be used to identify overbought and oversold conditions, as well as potential trend reversals.
Example of 3-standard-deviation bands around price:
⯌ Dynamic Trend Indicator :
The midline of the bands changes color based on trend direction. If the midline is rising, it turns green, indicating an uptrend. When the midline is falling, it turns orange, suggesting a downtrend. This color coding provides a quick visual reference to the current trend.
Trend color examples for rising and falling midlines:
⯌ Standard Deviation Labels :
At the end of the bands, the indicator displays labels with price levels for each standard deviation level (+3, 0, -3, etc.), helping traders quickly reference where price is relative to its statistical boundaries.
Price labels at each standard deviation level on the chart:
⯌ Mean Reversion Signals :
When price moves beyond the upper or lower bands and then reverts back inside, the indicator plots mean reversion signals with diamond icons. These signals indicate potential reversal points where the price may return to the mean after extreme moves.
Example of mean reversion signals near bands:
⯌ Standard Deviation Scale on Chart :
A visual scale on the right side of the chart shows the current price position in relation to the bands, expressed in standard deviations. This scale provides an at-a-glance view of how far price has deviated from the mean, helping traders assess risk and volatility.
⯁ USER INPUTS
Length : Sets the number of bars used in the calculation of the bands.
Standard Deviation Level : Allows selection of 1, 2, or 3 standard deviations for upper and lower bands.
Colors : Customize colors for the uptrend and downtrend midline indicators.
⯁ CONCLUSION
The Prime Standard Deviation Bands indicator provides a comprehensive view of price volatility and trend direction. Its customizable bands, trend coloring, and mean reversion signals allow traders to effectively gauge price behavior, identify extreme conditions, and make informed trading decisions based on statistical boundaries.
Improved G-Trend DetectionIt is the Improved version of G trend channel detection.
The Umair Trend Detection Indicator is a powerful tool designed to help traders identify potential buy and sell opportunities by combining dynamic price channels with RSI-based confirmation. This indicator is suitable for all types of financial markets, including stocks, forex, and cryptocurrencies.
Key Features:
Dynamic G-Channels
Calculates upper, lower, and average price channels based on the "G-Channel" methodology.
Helps identify market extremes and potential reversal points.
RSI Confirmation
Integrates RSI (Relative Strength Index) to filter buy and sell signals.
Avoids false signals by ensuring market momentum aligns with trend direction.
Buy/Sell Signals
Generates "Buy" signals when bullish conditions align with oversold RSI levels.
Generates "Sell" signals when bearish conditions align with overbought RSI levels.
Exit Signals
Provides optional exit points for both long and short positions using a buffer for confirmation.
Visual Clarity
Displays clearly plotted channels and average lines to help visualize price trends.
Buy and sell signals are marked with arrows for easy identification on the chart.
Custom Alerts
Offers customizable alerts for buy, sell, and exit conditions, ensuring traders never miss an opportunity.
Input Parameters:
Channel Length: Controls the sensitivity of the G-Channels.
Multiplier: Adjusts the width of the channels to suit different market conditions.
RSI Settings: Customize RSI length and thresholds for overbought/oversold conditions.
Exit Signal Buffer: Adds flexibility to the exit strategy by delaying signals for confirmation.
How It Helps:
The Umair Trend Detection Indicator is perfect for traders looking for an easy-to-use trend-following system with strong confirmation. By combining dynamic channels with RSI, it provides accurate and reliable signals to enter and exit trades, minimizing risks associated with false breakouts or trend reversals.
Use Cases:
Trend Trading: Identify and follow long-term trends with confidence.
Swing Trading: Spot reversals and capitalize on medium-term price movements.
Risk Management: Use exit signals to lock in profits or limit losses effectively.
This indicator is a versatile tool for both novice and experienced traders. Fine-tune its settings to align with your trading style and improve your decision-making in any market.
True Amplitude Envelopes (TAE)The True Envelopes indicator is an adaptation of the True Amplitude Envelope (TAE) method, based on the research paper " Improved Estimation of the Amplitude Envelope of Time Domain Signals Using True Envelope Cepstral Smoothing " by Caetano and Rodet. This indicator aims to create an asymmetric price envelope with strong predictive power, closely following the methodology outlined in the paper.
Due to the inherent limitations of Pine Script, the indicator utilizes a Kernel Density Estimator (KDE) in place of the original Cepstral Smoothing technique described in the paper. While this approach was chosen out of necessity rather than superiority, the resulting method is designed to be as effective as possible within the constraints of the Pine environment.
This indicator is ideal for traders seeking an advanced tool to analyze price dynamics, offering insights into potential price movements while working within the practical constraints of Pine Script. Whether used in dynamic mode or with a static setting, the True Envelopes indicator helps in identifying key support and resistance levels, making it a valuable asset in any trading strategy.
Key Features:
Dynamic Mode: The indicator dynamically estimates the fundamental frequency of the price, optimizing the envelope generation process in real-time to capture critical price movements.
High-Pass Filtering: Uses a high-pass filtered signal to identify and smoothly interpolate price peaks, ensuring that the envelope accurately reflects significant price changes.
Kernel Density Estimation: Although implemented as a workaround, the KDE technique allows for flexible and adaptive smoothing of the envelope, aimed at achieving results comparable to the more sophisticated methods described in the original research.
Symmetric and Asymmetric Envelopes: Provides options to select between symmetric and asymmetric envelopes, accommodating various trading strategies and market conditions.
Smoothness Control: Features adjustable smoothness settings, enabling users to balance between responsiveness and the overall smoothness of the envelopes.
The True Envelopes indicator comes with a variety of input settings that allow traders to customize the behavior of the envelopes to match their specific trading needs and market conditions. Understanding each of these settings is crucial for optimizing the indicator's performance.
Main Settings
Source: This is the data series on which the indicator is applied, typically the closing price (close). You can select other price data like open, high, low, or a custom series to base the envelope calculations.
History: This setting determines how much historical data the indicator should consider when calculating the envelopes. A value of 0 will make the indicator process all available data, while a higher value restricts it to the most recent n bars. This can be useful for reducing the computational load or focusing the analysis on recent market behavior.
Iterations: This parameter controls the number of iterations used in the envelope generation algorithm. More iterations will typically result in a smoother envelope, but can also increase computation time. The optimal number of iterations depends on the desired balance between smoothness and responsiveness.
Kernel Style: The smoothing kernel used in the Kernel Density Estimator (KDE). Available options include Sinc, Gaussian, Epanechnikov, Logistic, and Triangular. Each kernel has different properties, affecting how the smoothing is applied. For example, Gaussian provides a smooth, bell-shaped curve, while Epanechnikov is more efficient computationally with a parabolic shape.
Envelope Style: This setting determines whether the envelope should be Static or Dynamic. The Static mode applies a fixed period for the envelope, while the Dynamic mode automatically adjusts the period based on the fundamental frequency of the price data. Dynamic mode is typically more responsive to changing market conditions.
High Q: This option controls the quality factor (Q) of the high-pass filter. Enabling this will increase the Q factor, leading to a sharper cutoff and more precise isolation of high-frequency components, which can help in better identifying significant price peaks.
Symmetric: This setting allows you to choose between symmetric and asymmetric envelopes. Symmetric envelopes maintain an equal distance from the central price line on both sides, while asymmetric envelopes can adjust differently above and below the price line, which might better capture market conditions where upside and downside volatility are not equal.
Smooth Envelopes: When enabled, this setting applies additional smoothing to the envelopes. While this can reduce noise and make the envelopes more visually appealing, it may also decrease their responsiveness to sudden market changes.
Dynamic Settings
Extra Detrend: This setting toggles an additional high-pass filter that can be applied when using a long filter period. The purpose is to further detrend the data, ensuring that the envelope focuses solely on the most recent price oscillations.
Filter Period Multiplier: This multiplier adjusts the period of the high-pass filter dynamically based on the detected fundamental frequency. Increasing this multiplier will lengthen the period, making the filter less sensitive to short-term price fluctuations.
Filter Period (Min) and Filter Period (Max): These settings define the minimum and maximum bounds for the high-pass filter period. They ensure that the filter period stays within a reasonable range, preventing it from becoming too short (and overly sensitive) or too long (and too sluggish).
Envelope Period Multiplier: Similar to the filter period multiplier, this adjusts the period for the envelope generation. It scales the period dynamically to match the detected price cycles, allowing for more precise envelope adjustments.
Envelope Period (Min) and Envelope Period (Max): These settings establish the minimum and maximum bounds for the envelope period, ensuring the envelopes remain adaptive without becoming too reactive or too slow.
Static Settings
Filter Period: In static mode, this setting determines the fixed period for the high-pass filter. A shorter period will make the filter more responsive to price changes, while a longer period will smooth out more of the price data.
Envelope Period: This setting specifies the fixed period used for generating the envelopes in static mode. It directly influences how tightly or loosely the envelopes follow the price action.
TAE Smoothing: This controls the degree of smoothing applied during the TAE process in static mode. Higher smoothing values result in more gradual envelope curves, which can be useful in reducing noise but may also delay the envelope’s response to rapid price movements.
Visual Settings
Top Band Color: This setting allows you to choose the color for the upper band of the envelope. This band represents the resistance level in the price action.
Bottom Band Color: Similar to the top band color, this setting controls the color of the lower band, which represents the support level.
Center Line Color: This is the color of the central price line, often referred to as the carrier. It represents the detrended price around which the envelopes are constructed.
Line Width: This determines the thickness of the plotted lines for the top band, bottom band, and center line. Thicker lines can make the envelopes more visible, especially when overlaid on price data.
Fill Alpha: This controls the transparency level of the shaded area between the top and bottom bands. A lower alpha value will make the fill more transparent, while a higher value will make it more opaque, helping to highlight the envelope more clearly.
The envelopes generated by the True Envelopes indicator are designed to provide a more precise and responsive representation of price action compared to traditional methods like Bollinger Bands or Keltner Channels. The core idea behind this indicator is to create a price envelope that smoothly interpolates the significant peaks in price action, offering a more accurate depiction of support and resistance levels.
One of the critical aspects of this approach is the use of a high-pass filtered signal to identify these peaks. The high-pass filter serves as an effective method of detrending the price data, isolating the rapid fluctuations in price that are often lost in standard trend-following indicators. By filtering out the lower frequency components (i.e., the trend), the high-pass filter reveals the underlying oscillations in the price, which correspond to significant peaks and troughs. These oscillations are crucial for accurately constructing the envelope, as they represent the most responsive elements of the price movement.
The algorithm works by first applying the high-pass filter to the source price data, effectively detrending the series and isolating the high-frequency price changes. This filtered signal is then used to estimate the fundamental frequency of the price movement, which is essential for dynamically adjusting the envelope to current market conditions. By focusing on the peaks identified in the high-pass filtered signal, the algorithm generates an envelope that is both smooth and adaptive, closely following the most significant price changes without overfitting to transient noise.
Compared to traditional envelopes and bands, such as Bollinger Bands and Keltner Channels, the True Envelopes indicator offers several advantages. Bollinger Bands, which are based on standard deviations, and Keltner Channels, which use the average true range (ATR), both tend to react to price volatility but do not necessarily follow the peaks and troughs of the price with precision. As a result, these traditional methods can sometimes lag behind or fail to capture sudden shifts in price momentum, leading to either false signals or missed opportunities.
In contrast, the True Envelopes indicator, by using a high-pass filtered signal and a dynamic period estimation, adapts more quickly to changes in price behavior. The envelopes generated by this method are less prone to the lag that often affects standard deviation or ATR-based bands, and they provide a more accurate representation of the price's immediate oscillations. This can result in better predictive power and more reliable identification of support and resistance levels, making the True Envelopes indicator a valuable tool for traders looking for a more responsive and precise approach to market analysis.
In conclusion, the True Envelopes indicator is a powerful tool that blends advanced theoretical concepts with practical implementation, offering traders a precise and responsive way to analyze price dynamics. By adapting the True Amplitude Envelope (TAE) method through the use of a Kernel Density Estimator (KDE) and high-pass filtering, this indicator effectively captures the most significant price movements, providing a more accurate depiction of support and resistance levels compared to traditional methods like Bollinger Bands and Keltner Channels. The flexible settings allow for extensive customization, ensuring the indicator can be tailored to suit various trading strategies and market conditions.
FVG Channel [LuxAlgo]The FVG Channel indicator displays a channel constructed from the averages of unmitigated historical fair value gaps (FVG), allowing to identify trends and potential reversals in the market.
Users can control the amount of FVGs to consider for the calculation of the channels, as well as their degree of smoothness through user settings.
🔶 USAGE
The FVG Channel is constructed by averaging together recent unmitigated Bullish FVGs (contributing to the creation of the upper bands), and Bearish unmitigated FVGs (contributing to the creation of the lower bands) within a lookback determined by the user. A higher lookback will return longer-term indications from the indicator.
The channel includes 5 bands, with one upper and one lower outer extremities, as well as an inner series of values determined using the Fibonacci ratios (respectively 0.786, 0.5, 0.236) from the channel's outer extremities.
An uptrend can be identified by price holding above the inner upper band (obtained from the 0.786 ratio), this band can also provide occasional support when the price retraces to it while in an uptrend.
Breaking below the inner upper band with an unwillingness to reach above again is a clear sign of hesitation in the market and can be indicative of an upcoming consolidation or reversal.
This can directly be applied to downtrends as well, below are examples displaying both scenarios.
Uptrend Example:
Downtrend Example:
🔹 Breakout Levels
When the price mitigates all FVGs in a single direction except for 1, the indicator will display a "Breakout Level". This is the level that price will need to cross in order for all FVGs in that direction to be mitigated, because of this they can also be aptly called "Last Stand Levels".
These levels can be considered as potential support and resistance levels, however, should always be monitored for breakouts since a substantial push above or below these points would indicate strong momentum.
🔹 Signals
The indicator includes Bullish and Bearish Signals, these signals fire when all FVGs for a single direction have been mitigated and an engulfing candle occurs in the opposite direction. These are reversal signals and should be used alongside other indicators to appropriately manage risk.
Note: When all FVGs in a single direction have been mitigated, the candles will change colors accordingly.
🔶 DETAILS
The script uses a typical identification method for FVGs. Once identified, the script collects and stores the mitigation levels of the respective bullish and bearish FVGs:
For Bullish FVGs this is the bottom of the FVG.
For Bearish FVGs this is the top of the FVG.
The data is managed to only consider a specific amount of FVG mitigation levels, determined by the set "Unmitigated FVG Lookback". If an FVG is mitigated, it frees up a spot in the memory for a new FVG, however, if the memory is full, the oldest will be deleted.
The averages displayed (Channel Upper and Lower) are created from 2 calculation steps, the first step involves taking the raw average of the FVG mitigation levels, and the second step applies a simple moving average (SMA) smoothing of the precedent obtained averages.
Note: To view the mitigation levels average obtained in the first step, the "Smoothing Length" can be set to 1.
🔶 SETTINGS
Unmitigated FVG Lookback: Sets the maximum number of Unmitigated FVG mitigation levels that the script will use to calculate the channel.
Smoothing Length: Sets the smoothing length for the channel to reduce noise from the raw data.
Periodic Linear Regressions [LuxAlgo]The Periodic Linear Regressions (PLR) indicator calculates linear regressions periodically (similar to the VWAP indicator) based on a user-set period (anchor).
This allows for estimating underlying trends in the price, as well as providing potential supports/resistances.
🔶 USAGE
The Periodic Linear Regressions indicator calculates a linear regression over a user-selected interval determined from the selected "Anchor Period".
The PLR can be visualized as a regular linear regression (Static), with a fit readjusting for new data points until the end of the selected period, or as a moving average (Rolling), with new values obtained from the last point of a linear regression fitted over the calculation interval. While the static method line is prone to repainting, it has value since it can further emphasize the linearity of an underlying trend, as well as suggest future trend directions by extrapolating the fit.
Extremities are included in the indicator, these are obtained from the root mean squared error (RMSE) between the price and calculated linear regression. The Multiple setting allows the users to control how far each extremity is from the other.
Periodic Linear Regressions can be helpful in finding support/resistance areas or even opportunities when ranging in a channel.
The anchor - where a new period starts - can be shown (in this case in the top right corner).
The shown bands can be visualized by enabling Show Extremities in settings ( Rolling or Static method).
The script includes a background gradient color option for the bands, which only applies when using the Rolling method.
The indicator colors can be suggestive of the detected trend and are determined as follows:
Method Rolling: a gradient color between red and green indicates the trend; more green if the output is rising, suggesting an uptrend, and more red if it is decreasing, suggesting a downtrend.
Method Static: green if the slope of the line is positive, suggesting an uptrend, red if negative, suggesting a downtrend.
🔶 DETAILS
🔹 Anchor Type
When the Anchor Type is set to Periodic , the indicator will be reset when the "Anchor Period" changes, after which calculations will start again.
An anchored rolling line set at First Bar won't reset at a new session; it will continue calculating the linear regression from the first bar to the last; in other words, every bar is included in the calculation. This can be useful to detect potential long-term tops/bottoms.
Note that a linear regression needs at least two values for its calculation, which explains why you won't see a static line at the first bar of the session. The rolling linear regression will only show from the 3rd bar of the session since it also needs a previous value.
🔹 Rolling/Static
When Anchor Type is set at Periodic , a linear regression is calculated between the first bar of the chosen session and the current bar, aiming to find the line that best fits the dataset.
The example above shows the lines drawn during the session. The offered script, though, shows the last calculated point connected to the previous point when the Rolling method is chosen, while the Static method shows the latest line.
Note that linear regression needs at least two values, which explains why you won't see a static line at the first bar of the session. The rolling line will only show from the 3rd bar of the session since it also needs a previous value.
🔶 SETTINGS
Method: Indicator method used, with options: "Static" (straight line) / "Rolling" (rolling linear regression).
Anchor Type: "Periodic / First Bar" (the latter works only when "Method" is set to "Rolling").
Anchor Period: Only applicable when "Anchor Type" is set at "Periodic".
Source: open, high, low, close, ...
Multiple: Alters the width of the bands when "Show Extremities" is enabled.
Show Extremities: Display one upper and one lower extremity.
🔹 Color Settings
Mono Color: color when "Bicolor" is disabled
Bicolor: Toggle on/off + Colors
Gradient: Background color when "Show extremities" is enabled + level of gradient
🔹 Dashboard
Show Dashboard
Location of dashboard
Text size






















