Trend Alignment TableThe Trend Alignment Table is a clean, visual tool designed to quickly assess trend direction and alignment across multiple moving averages — without cluttering your chart.
Instead of plotting moving average lines, this indicator displays a compact on-chart table showing each selected MA and its corresponding trend status using color-coded circles.
🧩 How It Works
Each circle represents the relationship between price and its corresponding moving average (MA):
Price vs. MA MA Direction Circle Color Meaning
Above Rising 🟢 Green Bullish continuation
Above Falling 🟡 Yellow Weakening bullishness
Below Falling 🔴 Red Bearish continuation
Below Rising 🟡 Yellow Weakening bearishness
⚙️ Features
Up to 4 customizable moving averages
Type: SMA, EMA, SMMA (RMA), WMA, VWMA
Source: Any price source (close, open, etc.)
Length: Fully adjustable
Dynamic color-coded circles (green, yellow, red by default — fully customizable)
User-selectable table position (top-left, top-right, bottom-left, bottom-right)
Clean visual layout for quick multi-timeframe trend confirmation
📊 Use Cases
Instantly identify trend alignment across short-, medium-, and long-term averages
Confirm trend strength or weakening momentum
Combine with other indicators or strategies for confirmation signals
🧠 Default Settings
MA Type Length Color
MA #1 SMA 5 Green
MA #2 SMA 20 Gold
MA #3 SMA 50 Orange
MA #4 SMA 150 Red
🧰 Created for traders who value clarity.
Whether you trade trends, reversals, or momentum shifts, the Trend Alignment Table gives you a concise, at-a-glance view of the market’s directional structure.
Trendanalyse
ATM Strike Line with Call & Put Premiums (ARJO)This indicator is designed specifically for the Indian market (NSE) and helps traders visualize the At-The-Money (ATM) strike line along with real-time Call (CE) and Put (PE) option premiums.
Key Features
Automatic ATM Detection: The script automatically identifies the ATM strike based on the underlying price, with an option for manual input.
Dynamic Expiry Control: Select expiry date easily (Year, Month, Day) in YYMMDD format.
Flexible Timeframe Support: Choose between the chart’s current timeframe or custom intervals.
Smart Symbol & Strike Interval: Automatically adapts to the selected underlying symbol (e.g., NIFTY, BANKNIFTY, RELIANCE, etc.) or allows manual setup.
Visual Representation:
ATM line plotted clearly on the chart.
CE and PE premium labels are displayed on each side of the ATM line.
ATM strike price label shown at the center.
Call–Put Volume Ratio (CPVR): Displays the live CPVR value to quickly assess market sentiment.
CPVR Interpretation
Bullish Bias: CPVR ≥ 1.25
Bearish Bias: CPVR ≤ 0.75
Neutral Zone: Between 0.75 and 1.25
⚙️ Customization
Adjustable colors for ATM line, CE/PE labels, and CPVR.
Option to manually select strike, symbol, and interval for maximum flexibility.
This tool may help to track option sentiment directly on the price chart, making it ideal for option traders and intraday analysts focusing on NIFTY, BANKNIFTY, and other NSE stocks.
Happy Trading. ARJO
Senkou Span BUsing in conjunction with Senkou Span A to create effective kumo alert signals when kumo changes direction: bullish or bearish.
Senkou Span AUse it in conjunction with Senkou Span B to create effective kumo alert signals when kumo changes direction: bullish or bearish.
CHOCH + FVG Signals [30m Optimized]CHOCH + FVG Signals
🎯 What It Does:
This script automatically scans your chart for high-probability Smart Money Concepts (SMC) setups based on two key institutional trading principles:
Change of Character (CHOCH) – A shift in market structure signaling potential reversal
Fair Value Gap (FVG) – An imbalance zone where price moved too fast, often acting as support/resistance
When both conditions align, the script plots clear Buy (▲) and Sell (▼) signals directly on your chart — ideal for intraday trading on the 30-minute timeframe (but works on any timeframe).
✅ Key Features:
🔹 Visual Fair Value Gaps
Green shaded zones = Bullish FVGs (potential support)
Red shaded zones = Bearish FVGs (potential resistance)
Toggle on/off in settings
🔹 Smart CHOCH Detection
Detects breaks of recent swing highs/lows with proper context
Avoids false signals by confirming prior price structure
🔹 Clear Trade Signals
Green ▲ below bar = Buy signal (Bullish CHOCH + FVG confluence)
Red ▼ above bar = Sell signal (Bearish CHOCH + FVG confluence)
🔹 Customizable Filters
Option to require FVG for a signal (recommended for higher accuracy)
Adjust sensitivity via swing detection settings (default optimized for 30m)
🔹 Alert-Ready
Built-in alert conditions for instant notifications on TradingView mobile/desktop
⚙️ How to Use:
Apply to a 30-minute chart (e.g., EURUSD, Gold, NAS100, BTC)
Wait for at least 50–100 bars to load (so swing points appear)
Look for:
A green triangle (▲) → consider long entry near FVG support
A red triangle (▼) → consider short entry near FVG resistance
Confirm with price action: Wait for a strong candle close or rejection at the FVG zone
Use stop-loss below/above the FVG and target recent liquidity pools
💡 Pro Tip: Best used during high-volume sessions (e.g., London Open 7–10 AM UTC, NY Open 12:30–3:30 PM UTC).
🛠️ Settings (Inputs):
Show Fair Value Gaps
✅ Enabled
Visualize FVG zones
Max FVG History
100 bars
Prevent chart clutter
Require FVG for Signal?
✅ Enabled
Higher-quality setups (disable to test CHOCH-only)
⚠️ Important Notes:
This is a signal generator, not financial advice. Always manage risk.
Works best in trending or breaking markets — avoid during low-volatility ranges.
FVGs may get filled (tested) before price continues — patience improves results.
Backtest on historical data before live trading.
📣 Ideal For:
Retail traders learning Smart Money Concepts (SMC)
Price action traders seeking institutional-level confluence
Intraday scalpers & swing traders on 30m–1H timeframes
Traffic Light MA — Trend IndicatorThis script displays a simple “traffic light” circle that reflects the market trend based on two moving averages (MA).
-Green: Price > Fast MA > Slow MA → Uptrend confirmation
-Yellow: Mixed conditions (transition zone)
-Red: Slow MA > Fast MA > Price → Downtrend confirmation
You can customize:
-MA type (SMA or EMA)
-Lengths of both MAs
-Timeframe used for evaluation (e.g. Daily, 4H, Weekly)
This tool is designed for traders who prefer a minimalistic chart, showing only a clean color signal instead of multiple lines.
Recommendation:
For small MAs (8,15,21) use EMA, for big MAs (50,100,200) use SMA
IIR One-Pole Price Filter [BackQuant]IIR One-Pole Price Filter
A lightweight, mathematically grounded smoothing filter derived from signal processing theory, designed to denoise price data while maintaining minimal lag. It provides a refined alternative to the classic Exponential Moving Average (EMA) by directly controlling the filter’s responsiveness through three interchangeable alpha modes: EMA-Length , Half-Life , and Cutoff-Period .
Concept overview
An IIR (Infinite Impulse Response) filter is a type of recursive filter that blends current and past input values to produce a smooth, continuous output. The "one-pole" version is its simplest form, consisting of a single recursive feedback loop that exponentially decays older price information. This makes it both memory-efficient and responsive , ideal for traders seeking a precise balance between noise reduction and reaction speed.
Unlike standard moving averages, the IIR filter can be tuned in physically meaningful terms (such as half-life or cutoff frequency) rather than just arbitrary periods. This allows the trader to think about responsiveness in the same way an engineer or physicist would interpret signal smoothing.
Why use it
Filters out market noise without introducing heavy lag like higher-order smoothers.
Adapts to various trading speeds and time horizons by changing how alpha (responsiveness) is parameterized.
Provides consistent and mathematically interpretable control of smoothing, suitable for both discretionary and algorithmic systems.
Can serve as the core component in adaptive strategies, volatility normalization, or trend extraction pipelines.
Alpha Modes Explained
EMA-Length : Classic exponential decay with alpha = 2 / (L + 1). Equivalent to a standard EMA but exposed directly for fine control.
Half-Life : Defines the number of bars it takes for the influence of a price input to decay by half. More intuitive for time-domain analysis.
Cutoff-Period : Inspired by analog filter theory, defines the cutoff frequency (in bars) beyond which price oscillations are heavily attenuated. Lower periods = faster response.
Formula in plain terms
Each bar updates as:
yₜ = yₜ₋₁ + alpha × (priceₜ − yₜ₋₁)
Where alpha is the smoothing coefficient derived from your chosen mode.
Smaller alpha → smoother but slower response.
Larger alpha → faster but noisier response.
Practical application
Trend detection : When the filter line rises, momentum is positive; when it falls, momentum is negative.
Signal timing : Use the crossover of the filter vs its previous value (or price) as an entry/exit condition.
Noise suppression : Apply on volatile assets or lower timeframes to remove flicker from raw price data.
Foundation for advanced filters : The one-pole IIR serves as a building block for multi-pole cascades, adaptive smoothers, and spectral filters.
Customization options
Alpha Scale : Multiplies the final alpha to fine-tune aggressiveness without changing the mode’s core math.
Color Painting : Candles can be painted green/red by trend direction for visual clarity.
Line Width & Transparency : Adjust the visual intensity to integrate cleanly with your charting style.
Interpretation tips
A smooth yet reactive line implies optimal tuning — minimal delay with reduced false flips.
A sluggish line suggests alpha is too small (increase responsiveness).
A noisy, twitchy line means alpha is too large (increase smoothing).
Half-life tuning often feels more natural for aligning filter speed with price cycles or bar duration.
Summary
The IIR One-Pole Price Filter is a signal smoother that merges simplicity with mathematical rigor. Whether you’re filtering for entry signals, generating trend overlays, or constructing larger multi-stage systems, this filter delivers stability, clarity, and precision control over noise versus lag, an essential tool for any quantitative or systematic trading approach.
ahr999 Index BITSTAMP
Credits to discountry for making the original script.
reference:
Updates:
- Updated the historical data to use BITSTAMP:BTCUSD since BLX:BNC api is not working anymore
- Implemented a tooltip label displaying the latest AHR index value.
TOPIX Relative Strength vs Symbol + Volume Quality (JP)Overview
Relative Strength vs Symbol + Volume Quality (JP) visualizes the relative performance (%) of a stock versus a chosen benchmark (e.g., TOPIX, Nikkei 225, or ETFs) while incorporating volume quality and momentum analysis.
It calculates percentage-point differences between the target and benchmark, smooths them (EMA/SMA), and evaluates whether the strength is supported by quality volume flow.
All data uses confirmed bars only (request.security() with confirmed values) to minimize repainting, and labels are drawn only on confirmed bars.
What It Shows
Relative Performance (%pt): Difference in rate of change between the stock and its benchmark.
Above 0 → outperforming
Below 0 → underperforming
Trend Direction: Short-/mid-term trend from smoothed EMA/SMA.
Volume Quality: Ratio of up-volume to down-volume, scaled from -1 to +1.
Volume Momentum (Z-Score): Measures unusual surges in trading activity.
Strength Detection: Combines price-based strength (relative or z-score) with volume quality and momentum filters.
How to Use
Set your comparison symbol (e.g., TSE:1306, TVC:NI225).
Adjust lookback length and smoothing period/type to fit your analysis window.
Enable “Confirm strength by volume quality” and/or “Use volume Z-score” to filter signals with supportive volume.
Optionally, configure background thresholds to highlight extreme relative strength/weakness.
Use Screener Mode to suppress visual outputs (table/labels) for performance in Pine Screener.
Main Input Groups
Comparison Settings: Benchmark symbol, calculation timeframe.
Period & Smoothing: lookback, smoothLen, and MA type (EMA or SMA).
Price Strength Detection: Enable Z-score mode and adjust zLen / zThresh.
Volume Quality & Momentum: vqThresh (volume quality) and vZth (Z-score threshold).
Display: Toggle histogram tint, background highlight, mini-table, and signal labels.
Background Thresholds: Independent thresholds for histogram/MA lines and colors.
Screener Output: Suppress visuals for screening use.
Output & Coloring
Histogram: Relative performance in %pt. Red = outperforming, Green = underperforming (intensity by magnitude).
White Line (EMA/SMA):
Rising with good volume quality → Red
Rising but poor quality → Yellow
Falling → White
Background: Optional highlight when histogram/MA exceeds user thresholds.
Counters: Hidden plots track how many bars have consecutively exceeded thresholds (usable in screeners).
Alerts
Strength Detection (Price + Volume):
Triggered when price condition (MA > 0 or Z-score > threshold) and volume conditions are met.
Weakness / Loss of Strength:
Triggered on cross-under or when volume conditions fail.
Labels: Optional, shown only on confirmed bars.
Repaint Prevention
All calculations use confirmed bar data only.
Labels appear only when bars close.
On lower timeframes, benchmark update delays may cause minor lag.
Volume quality is derived from up/down bar classification, which can be distorted by gaps or illiquid markets.
Avoid overfitting thresholds — values differ by asset and timeframe.
Practical Applications
Identify outperformance with supportive volume across sectors or themes.
Use streak counters to find consistent relative winners or laggards.
Compare stocks vs sector indices or ETFs to track rotation and momentum shifts.
Disclaimer
This script and its description are provided for educational and informational purposes only.
They do not constitute financial advice or recommendations.
Use at your own discretion, considering market risk, liquidity, and data limitations.
This description follows TradingView’s House Rules (no promotion, plagiarism, or misleading claims).
Publication Guidelines
When publishing:
Do not include promotional links or invitations.
Do not copy text/code from other authors without permission.
Screenshots should illustrate the script’s function only, not serve as marketing material.
Maintain consistency of language (English only for this version).
概要
Relative Strength vs Symbol + Volume Quality (JP) は、対象銘柄と比較指標(例:TOPIX)との相対パフォーマンスを%ポイント差で算出し、平滑化線(EMA/SMA)とヒストグラムで可視化します。さらに、出来高を「質(上げ/下げボリュームのバランス)」と「勢い(Zスコア)」で評価し、価格×出来高の両面から“強さ/弱さ”を判定します。
リペイント抑制のため、request.security()は確定足を参照し、ラベル描画も確定時に限定しています。
何がわかるか
相対パフォーマンス(%pt):対象と比較指標の騰落率差。0より上=相対優位、下=相対劣位。
平滑化トレンド:相対の短中期的な傾き(EMA/SMA)。
出来高の質:上昇バー出来高と下降バー出来高の比から -1〜+1 で評価。
出来高の勢い(Zスコア):直近出来高の異常度。
強/弱シグナル:価格条件(基準越え・Z超え)に、出来高条件(質・勢い)を組み合わせて抽出。
使い方(基本手順)
比較対象を「比較シンボル」で指定(例:TSE:1306、TVC:NI225 等)。
「比較期間(バー数)」と「平滑化(期間/種類)」を調整し、相対の視点を合わせる。
出来高確認を使う場合は「出来高の質で“強さ”を確認」「出来高の勢い(Z)」をオンにし、閾値を調整。
背景ハイライトの**閾値(ヒスト/平均線別)**を設定すると、重要局面を一目で把握可能。
スクリーナー利用時は「スクリーナー用」をオンにして、テーブル/ラベルの描画を抑制。
主な入力項目
比較設定:比較シンボル、計算タイムフレーム。
期間・平滑化:比較期間lookback、平滑化長smoothLen、MA種別(EMA/SMA)。
強さ検出(価格):Zスコア方式のオン/オフ、zLen、zThresh。
出来高の質・勢い:質の閾値vqThresh、勢いZの長さvZlenと閾値vZth。
表示:テーブル、背景、ヒスト濃淡、直近ラベルのON/OFF。
背景(閾値):ヒスト/平均線の上下しきいと背景色。
スクリーナー出力:描画抑制トグル。
出力と色分け
ヒストグラム:相対パフォーマンス(%pt)。プラス域は赤系、マイナス域は緑系で濃淡表示。
白線(実体は平滑化相対):上向きかつ出来高質が閾値以上なら赤、上向きでも質不足なら黄、下降時は白。
背景色(任意):設定したヒスト/平均線の閾値を超過/割れで自動着色。
カウンタ:ヒスト/平均線が各閾値を連続超過/連続割れした本数を、スクリーナーが取得できるよう非表示プロットで出力。
シグナル・アラート
強さ検出(価格+出来高):
価格条件 … 平滑化線の0越え、またはZスコアがzThresh越え。
出来高条件 … 「質 ≥ vqThresh」「勢いZ ≥ vZth」(任意)。
条件一致で「強」アラート/喪失・未達で「弱」アラート。
ラベル(任意):確定足でのみ出力。
リペイントと制約
request.security()は確定足データを用い、確定時ラベルのみ描画する設計です。
比較シンボルの更新周期・分足集計差により、短期足ではタイムラグが生じる場合があります。
出来高の「質」は上昇/下降バーの単純仕分けに依存するため、ギャップや出来高の歪みが強い市場では解釈に注意。
閾値は銘柄・期間で最適値が異なります。**過度な最適化(カーブフィット)**は避けてください。
(公開ガイドライン上も、明確で誤解を生む表現の回避が推奨されます。
TradingView
)
活用アイデア(例)
相対優位×出来高質の改善が同時に起きた局面を抽出。
連続超過カウントで、相対の“粘り”や“伸び”をスクリーニング。
指数だけでなく、業種ETFやセクター指数を比較軸にしてローテーション把握。
免責
本スクリプトおよび説明は情報提供・教育目的です。投資助言・勧誘ではありません。市場リスク、流動性、スリッページ、データ仕様に起因する差異等は利用者の自己責任でご確認ください。TradingViewのハウスルール(広告禁止・独自性・言語一致・わかりやすさ)および公開ルールに準拠する形で記述しています。
Trend Following Reflectometry🧭 Trend Following Reflectometry (TFR)
Author: Stef Jonker
Version: Pine Script® v6
The Trend Following Reflectometry (TFR) indicator translates market behavior into the language of impedance and signal reflection theory, providing a unique way to measure trend strength, stability, and purity.
🧩 Summary
Trend Following Reflectometry acts as a trend-quality meter, helping traders identify when a trend is strong, efficient, and worth following — or when the market is too noisy to trust.
It blends physics-inspired logic with practical trading insight, offering both a directional oscillator and a trend stability filter in one tool.
⚙️ Concept
Inspired by electrical impedance matching, this tool compares the market’s characteristic impedance (Z₀) — its natural volatility-to-price behavior — with the load impedance (Zₗ), representing current trend momentum.
The interaction between these two produces a reflection coefficient (Gamma) and a VSWR ratio, which reveal how efficiently market trends are transmitting energy (moving smoothly) versus reflecting noise (becoming unstable).
📊 Core Components
Z₀ (Characteristic Impedance): Market baseline, derived from ATR and SMA.
Zₗ (Load Impedance): Trend momentum based on fast and slow EMAs.
Γ (Gamma – Reflection Coefficient): Measures the mismatch between Z₀ and Zₗ.
VSWR (Voltage Standing Wave Ratio): Quantifies trend purity — lower = cleaner trend.
Impedance Oscillator: Combines momentum and reflection to produce directional bias.
⚡ Gamma & VSWR Interpretation
Gamma (Γ) represents the reflection coefficient — how much of the market’s trend energy is being reflected instead of transmitted.
When Gamma is low, the market trend is smooth and efficient, moving with little resistance.
When Gamma is high, the market becomes unstable or overextended, signaling potential turbulence, exhaustion, or reversal pressure.
VSWR (Voltage Standing Wave Ratio) measures trend purity — how clean or distorted the current trend is.
A low VSWR indicates a well-aligned, steady trend that’s likely to continue smoothly.
A high VSWR suggests an unbalanced or noisy market, where trends may struggle to sustain or could soon reverse.
Together, Gamma and VSWR help identify how well the market’s current momentum aligns with its natural behavior — whether the trend is stable and efficient or reflecting instability beneath the surface.
Golden Cross & Death Cross DetectorThis script will:
Plot both moving averages on your chart
Show triangle markers when crossovers occur
Allow you to set up alerts
Let you choose between SMA and EMA
Customize the periods for both moving averages
MESA Adaptive Ehlers Flow | AlphaNattMESA Adaptive Ehlers Flow | AlphaNatt
An advanced adaptive indicator based on John Ehlers' MESA (Maximum Entropy Spectrum Analysis) algorithm that automatically adjusts to market cycles in real-time, providing superior trend identification with minimal lag across all market conditions.
🎯 What Makes This Indicator Revolutionary?
Unlike traditional moving averages with fixed parameters, this indicator uses Hilbert Transform mathematics to detect the dominant market cycle and adapts its responsiveness accordingly:
Automatically detects market cycles using advanced signal processing
MAMA (MESA Adaptive Moving Average) adapts from fast to slow based on cycle phase
FAMA (Following Adaptive Moving Average) provides confirmation signals
Dynamic volatility bands that expand and contract with cycle detection
Zero manual optimization required - the indicator tunes itself
📊 Core Components
1. MESA Adaptive Moving Average (MAMA)
The MAMA is the crown jewel of adaptive indicators. It uses the Hilbert Transform to measure the market's dominant cycle and adjusts its smoothing factor in real-time:
During trending phases: Responds quickly to capture moves
During choppy phases: Smooths heavily to filter noise
Transition is automatic and seamless based on price action
Parameters:
Fast Limit: Maximum responsiveness (default: 0.5) - how fast the indicator can adapt
Slow Limit: Minimum responsiveness (default: 0.05) - maximum smoothing during consolidation
2. Following Adaptive Moving Average (FAMA)
The FAMA is a slower version of MAMA that follows the primary signal. The relationship between MAMA and FAMA provides powerful trend confirmation:
MAMA > FAMA: Bullish trend in progress
MAMA < FAMA: Bearish trend in progress
Crossovers signal potential trend changes
3. Hilbert Transform Cycle Detection
The indicator employs sophisticated DSP (Digital Signal Processing) techniques:
Detects the dominant cycle period (1.5 to 50 bars)
Measures phase relationships in the price data
Calculates adaptive alpha values based on cycle dynamics
Continuously updates as market character changes
⚡ Key Features
Adaptive Alpha Calculation
The indicator's "intelligence" comes from its adaptive alpha:
Alpha dynamically adjusts between Fast Limit and Slow Limit based on the rate of phase change in the market cycle. Rapid phase changes trigger faster adaptation, while stable cycles maintain smoother response.
Dynamic Volatility Bands
Unlike static bands, these adapt to both ATR volatility AND the current cycle state:
Bands widen when the indicator detects fast adaptation (trending)
Bands narrow during slow adaptation (consolidation)
Band Multiplier controls overall width (default: 1.5)
Provides context-aware support and resistance
Intelligent Color Coding
Cyan: Bullish regime (MAMA > FAMA and price > MAMA)
Magenta: Bearish regime (MAMA < FAMA and price < MAMA)
Gray: Neutral/transitional state
📈 Trading Strategies
Trend Following Strategy
The MESA indicator excels at identifying and riding strong trends while automatically reducing sensitivity during choppy periods.
Entry Signals:
Long: MAMA crosses above FAMA with price closing above MAMA
Short: MAMA crosses below FAMA with price closing below MAMA
Exit/Management:
Exit longs when MAMA crosses below FAMA
Exit shorts when MAMA crosses above FAMA
Use dynamic bands as trailing stop references
Mean Reversion Strategy
When price extends beyond the dynamic bands during established trends, look for bounces back toward the MAMA line.
Setup Conditions:
Strong trend confirmed by MAMA/FAMA alignment
Price touches or exceeds outer band
Enter on first sign of reversal toward MAMA
Target: Return to MAMA line or opposite band
Cycle-Based Swing Trading
The indicator's cycle detection makes it ideal for swing trading:
Enter on MAMA/FAMA crossovers
Hold through the detected cycle period
Exit on counter-crossover or band extremes
Works exceptionally well on 4H to Daily timeframes
🔬 Technical Background
The Hilbert Transform
The Hilbert Transform is a mathematical operation used in signal processing to extract instantaneous phase and frequency information from a signal. In trading applications:
Separates trend from cycle components
Identifies the dominant market cycle without curve-fitting
Provides leading indicators of trend changes
MESA Algorithm Components
Smoothing: 4-bar weighted moving average for noise reduction
Detrending: Removes linear price trend to isolate cycles
InPhase & Quadrature: Orthogonal components for phase measurement
Homodyne Discriminator: Calculates instantaneous period
Adaptive Alpha: Converts period to smoothing factor
MAMA/FAMA: Final adaptive moving averages
⚙️ Optimization Guide
Fast Limit (0.1 - 0.9)
Higher values (0.5-0.9): More responsive, better for volatile markets and lower timeframes
Lower values (0.1-0.3): Smoother response, better for stable markets and higher timeframes
Default 0.5: Balanced for most applications
Slow Limit (0.01 - 0.1)
Higher values (0.05-0.1): Less smoothing during consolidation, more signals
Lower values (0.01-0.03): Heavy smoothing during chop, fewer but cleaner signals
Default 0.05: Good noise filtering while maintaining responsiveness
Band Multiplier (0.5 - 3.0)
Adjust based on instrument volatility
Backtest to find optimal value for your specific market
1.5 works well for most forex and equity indices
Consider higher values (2.0-2.5) for cryptocurrencies
🎨 Visual Interpretation
The gradient visualization shows probability zones around the MESA line:
MESA line: The adaptive trend center
Band expansion: Indicates strong cycle detection and trending
Band contraction: Indicates consolidation or ranging market
Color intensity: Shows confidence in trend direction
💡 Best Practices
Let it adapt: Give the indicator 50+ bars to properly calibrate to the market
Combine timeframes: Use higher timeframe MESA for trend bias, lower for entries
Respect the bands: Price rarely stays outside bands for extended periods
Watch for compression: Narrow bands often precede explosive moves
Volume confirmation: Combine with volume for higher probability setups
📊 Optimal Timeframes
15m - 1H: Day trading with Fast Limit 0.6-0.8
4H - Daily: Swing trading with Fast Limit 0.4-0.6 (recommended)
Weekly: Position trading with Fast Limit 0.2-0.4
⚠️ Important Considerations
The indicator needs time to "learn" the market - avoid trading the first 50 bars after applying
Extreme gap events can temporarily disrupt cycle calculations
Works best in markets with detectable cyclical behavior
Less effective during news events or extreme volatility spikes
Consider the detected cycle period for position holding times
🔍 What Makes MESA Superior?
Compared to traditional indicators:
vs. Fixed MAs: Automatically adjusts to market conditions instead of using one-size-fits-all parameters
vs. Other Adaptive MAs: Uses true DSP mathematics rather than simple volatility adjustments
vs. Manual Optimization: Continuously re-optimizes itself in real-time
vs. Lagging Indicators: Hilbert Transform provides earlier trend change detection
🎓 Understanding Adaptation
The magic of MESA is that it solves the eternal dilemma of technical analysis: be fast and get whipsawed in chop, or be smooth and miss the early move. MESA does both by detecting when to be fast and when to be smooth.
Adaptation in Action:
Strong trend starts → MESA quickly detects phase change → Fast Limit kicks in → Early entry
Trend continues → Phase stabilizes → MESA maintains moderate speed → Smooth ride
Consolidation begins → Phase changes slow → Slow Limit engages → Whipsaw avoidance
🚀 Advanced Applications
Multi-timeframe confluence: Use MESA on 3 timeframes for high-probability setups
Divergence detection: Watch for MAMA/price divergences at band extremes
Cycle period analysis: The internal period calculation can guide position duration
Band squeeze trading: Narrow bands + MAMA/FAMA cross = high-probability breakout
Created by AlphaNatt - Based on John Ehlers' MESA research. For educational purposes. Always practice proper risk management. Not financial advice. Always DYOR.
Arnaud Legoux Gaussian Flow | AlphaNattArnaud Legoux Gaussian Flow | AlphaNatt
A sophisticated trend-following and mean-reversion indicator that combines the power of the Arnaud Legoux Moving Average (ALMA) with advanced Gaussian distribution analysis to identify high-probability trading opportunities.
🎯 What Makes This Indicator Unique?
This indicator goes beyond traditional moving averages by incorporating Gaussian mathematics at multiple levels:
ALMA uses Gaussian distribution for superior price smoothing with minimal lag
Dynamic envelopes based on Gaussian probability zones
Multi-layer gradient visualization showing probability density
Adaptive envelope modes that respond to market conditions
📊 Core Components
1. Arnaud Legoux Moving Average (ALMA)
The ALMA is a highly responsive moving average that uses Gaussian distribution to weight price data. Unlike simple moving averages, ALMA can be fine-tuned to balance responsiveness and smoothness through three key parameters:
ALMA Period: Controls the lookback window (default: 21)
Gaussian Offset: Shifts the Gaussian curve to adjust lag vs. responsiveness (default: 0.85)
Gaussian Sigma: Controls the width of the Gaussian distribution (default: 6.0)
2. Gaussian Envelope System
The indicator features three envelope calculation modes:
Fixed Mode: Uses ATR-based fixed width for consistent envelope sizing
Adaptive Mode: Dynamically adjusts based on price acceleration and volatility
Hybrid Mode: Combines ATR and standard deviation for balanced adaptation
The envelopes represent statistical probability zones. Price moving beyond these zones suggests potential mean reversion opportunities.
3. Momentum-Adjusted Envelopes
The envelope width automatically expands during strong trends and contracts during consolidation, providing context-aware support and resistance levels.
⚡ Key Features
Multi-Layer Gradient Visualization
The indicator displays 10 gradient layers between the ALMA and envelope boundaries, creating a visual "heat map" of probability density. This helps traders quickly assess:
Distance from the mean
Potential support/resistance strength
Overbought/oversold conditions in context
Dynamic Color Coding
Cyan gradient: Price below ALMA (bullish zone)
Magenta gradient: Price above ALMA (bearish zone)
The ALMA line itself changes color based on price position
Trend Regime Detection
The indicator automatically identifies market regimes:
Strong Uptrend: Trend strength > 0.5% with price above ALMA
Strong Downtrend: Trend strength < -0.5% with price below ALMA
Weak trends and ranging conditions
📈 Trading Strategies
Mean Reversion Strategy
Look for price entering the extreme Gaussian zones (beyond 95% of envelope width) when trend strength is moderate. These represent statistical extremes where mean reversion is probable.
Signals:
Long: Price in lower Gaussian zone with trend strength > -0.5%
Short: Price in upper Gaussian zone with trend strength < 0.5%
Trend Continuation Strategy
Enter when price crosses the ALMA during confirmed strong trend conditions, riding momentum while using the envelope as a trailing stop reference.
Signals:
Long: Price crosses above ALMA during strong uptrend
Short: Price crosses below ALMA during strong downtrend
🎨 Visualization Guide
The gradient layers create a "probability cloud" around the ALMA:
Darker shades (near ALMA): High probability zone - price tends to stay here
Lighter shades (near envelope edges): Lower probability - potential reversal zones
Price at envelope extremes: Statistical outliers - strongest mean reversion setups
⚙️ Customization Options
ALMA Parameters
Adjust period for different timeframes (lower for day trading, higher for swing trading)
Modify offset to tune responsiveness vs. smoothness
Change sigma to control distribution width
Envelope Configuration
Choose envelope mode based on market characteristics
Adjust multiplier to match instrument volatility
Modify gradient depth for visual preference (5-15 layers)
Signal Enhancement
Momentum Length: Lookback for trend strength calculation
Signal Smoothing: Additional EMA smoothing to reduce noise
🔔 Built-in Alerts
The indicator includes six pre-configured alert conditions:
ALMA Trend Long - Price crosses above ALMA in strong uptrend
ALMA Trend Short - Price crosses below ALMA in strong downtrend
Mean Reversion Long - Price enters lower Gaussian zone
Mean Reversion Short - Price enters upper Gaussian zone
Strong Uptrend Detected - Momentum confirms strong bullish regime
Strong Downtrend Detected - Momentum confirms strong bearish regime
💡 Best Practices
Use on clean, liquid markets with consistent volatility
Combine with volume analysis for confirmation
Adjust envelope multiplier based on backtesting for your specific instrument
Higher timeframes (4H+) generally provide more reliable signals
Use adaptive mode for trending markets, hybrid for mixed conditions
⚠️ Important Notes
This indicator works best in markets with normal price distribution
Extreme news events can invalidate Gaussian assumptions temporarily
Always use proper risk management - no indicator is perfect
Backtest parameters on your specific instrument and timeframe
🔬 Technical Background
The Arnaud Legoux Moving Average was developed to solve the classic dilemma of moving averages: the trade-off between lag and noise. By applying Gaussian distribution weighting, ALMA achieves superior smoothing while maintaining responsiveness to price changes.
The envelope system extends this concept by creating probability zones based on volatility and momentum, effectively mapping where price is "likely" vs "unlikely" to be found based on statistical principles.
Created by AlphaNatt - For educational purposes. Always practice proper risk management. Not financial advice. Always DYOR.
Hello Crypto! Modern Combo Snapshot
Unified long/short analyzer blending EMA structure, SuperTrend, WaveTrend, QQE, and volume pressure.
Background shading flags “watch” and “ready” states; optional long/short modules let you focus on one side.
Alerts fire when every checklist item aligns, while the side-panel table summarizes trend, momentum, liquidity, and overall score in real time.
Indicator → Trend Analysis
Indicator → Momentum Oscillators
Indicator → Volume Indicators
Tags:
cryptocurrency, bitcoin, altcoins, trend-following, momentum, volume, ema, supertrend, intraday, swing-trading, alerts, checklist, trading-strategy, risk-management
Asia & London Session High/Low – EOD Segments (v4.5)What it does
Plots the Asia and London session high & low each day.
When a session ends, its high/low are locked (non-repainting) and drawn as horizontal segments that auto-extend to the end of that same day (no infinite rays).
Optional labels show the exact level at session close.
Toggle whether to keep prior days on the chart or auto-clear them on the first bar of a new day.
Why traders use it
Quickly see overnight liquidity levels that often act as magnets or barriers during the U.S. session.
Map session range extremes for breakout/reversal planning, partials, and invalidation.
Works great alongside VWAP, 8/20/200 MAs, or your NY session tools to build confluence.
How it works
You define the session windows (defaults: Asia 00:00–06:00, London 07:00–11:00).
While a session is active, the script tracks running high/low.
On the bar after the session ends, the level is finalized and drawn; the segment’s right edge updates each bar until EOD, then stops automatically.
Inputs
Session Timezone: “Exchange”, UTC, or a specific region (set this to match your venue).
Asia / London Session: editable HHMM-HHMM windows.
Show Asia / Show London: enable either/both sessions.
Keep history: keep or auto-delete previous days.
Show labels: price labels at session close.
Colors & width: customize high/low colors and line width.
Best practices
Use on intraday timeframes (1–60m).
For equities/futures, set timezone to your exchange (e.g., America/New_York). For FX/crypto, pick what matches your workflow.
Common tweak: London 08:00–12:00 local; Asia 00:00–05:00 or your broker’s definition.
Notes
Non-repainting: levels only print once the session is complete.
Designed to be light and reliable—no boxes, just clean lines and labels.
If you want NY session levels, midlines (50%), anchored stop-time, or alerts on touches, this script can be extended.
For educational use only. Not financial advice.
Modern Combo Crypto SuiteBlends long and short playbooks in one overlay with quick toggles.
Tracks EMA stacks, SuperTrend, WaveTrend, QQE, and volume to score bias.
Colors the chart background when watch/ready conditions align.
Fires alerts for imminent or fully aligned long/short setups.
Displays a live checklist table summarizing trend, momentum, and volume confidence.
Metallic Retracement ToolI made a version of the Metallic Retracement script where instead of using automatic zig-zag detection, you get to place the points manually. When you add it to the chart, it prompts you to click on two points. These two points become your swing range, and the indicator calculates all the metallic retracement levels from there and plots them on your chart. You can drag the points around afterwards to adjust the range, or just add the indicator to the chart again to place a completely new set of points.
The mathematical foundation is identical to the original Metallic Retracement indicator. You're still working with metallic means, which are the sequence of constants that generalize the golden ratio through the equation x² = kx + 1. When k equals 1, you get the golden ratio. When k equals 2, you get silver. Bronze is 3, and so on forever. Each metallic number generates its own set of retracement ratios by raising alpha to various negative powers, where alpha equals (k + sqrt(k² + 4)) / 2. The script algorithmically calculates these levels instead of hardcoding them, which means you can pick any metallic number you want and instantly get its complete retracement sequence.
What's different here is the control. Automatic zig-zag detection is useful when you want the indicator to find swings for you, but sometimes you have a specific price range in mind that doesn't line up with what the zig-zag algorithm considers significant. Maybe you're analyzing a move that's still developing and hasn't triggered the zig-zag's reversal thresholds yet. Maybe you want to measure retracements from an arbitrary high to an arbitrary low that happened weeks apart with tons of noise in between. Manual placement lets you define exactly which two points matter for your analysis without fighting with sensitivity settings or waiting for confirmation.
The interactive placement system uses TradingView's built-in drawing tools, so clicking the two points feels natural and works the same way as drawing a trendline or fibonacci retracement. First click sets your starting point, second click sets your ending point, and the indicator immediately calculates the range and draws all the metallic levels extending from whichever point you chose as the origin. If you picked a swing low and then a swing high, you get retracement levels projecting upward. If you went from high to low, they project downward.
Moving the points after placement is as simple as grabbing one of them and dragging it to a new location. The retracement levels recalculate in real-time as you move the anchor points, which makes it easy to experiment with different range definitions and see how the levels shift. This is particularly useful when you're trying to figure out which swing points produce retracement levels that line up with other technical features like previous support or resistance zones. You can slide the points around until you find a configuration that makes sense for your analysis.
Adding the indicator to the chart multiple times lets you compare different metallic means on the same price range, or analyze multiple ranges simultaneously with different metallic numbers. You could have golden ratio retracements on one major swing and silver ratio retracements on a smaller correction within that swing. Since each instance of the indicator is independent, you can mix and match metallic numbers and ranges however you want without one interfering with the other.
The settings work the same way as the original script. You select which metallic number to use, control how many power ratios to display above and below the 1.0 level, and adjust how many complete retracement cycles you want drawn. The levels extend from your manually placed swing points just like they would from automatically detected pivots, showing you where price might react based on whichever metallic mean you've selected.
What this version emphasizes is that retracement analysis is subjective in terms of which swing points you consider significant. Automatic detection algorithms make assumptions about what constitutes a meaningful reversal, but those assumptions don't always match your interpretation of the price action. By giving you manual control over point placement, this tool lets you apply metallic retracement concepts to exactly the price ranges you care about, without requiring those ranges to fit someone else's definition of a valid swing. You define the context, the indicator provides the mathematical framework.
Volume Surprise [LuxAlgo]The Volume Surprise tool displays the trading volume alongside the expected volume at that time, allowing users to spot unexpected trading activity on the chart easily.
The tool includes an extrapolation of the estimated volume for future periods, allowing forecasting future trading activity.
🔶 USAGE
We define Volume Surprise as a situation where the actual trading volume deviates significantly from its expected value at a given time.
Being able to determine if trading activity is higher or lower than expected allows us to precisely gauge the interest of market participants in specific trends.
A histogram constructed from the difference between the volume and expected volume is provided to easily highlight the difference between the two and may be used as a standalone.
The tool can also help quantify the impact of specific market events, such as news about an instrument. For example, an important announcement leading to volume below expectations might be a sign of market participants underestimating the impact of the announcement.
Like in the example above, it is possible to observe cases where the volume significantly differs from the expected one, which might be interpreted as an anomaly leading to a correction.
🔹 Detecting Rare Trading Activity
Expected volume is defined as the mean (or median if we want to limit the impact of outliers) of the volume grouped at a specific point in time. This value depends on grouping volume based on periods, which can be user-defined.
However, it is possible to adjust the indicator to overestimate/underestimate expected volume, allowing for highlighting excessively high or low volume at specific times.
In order to do this, select "Percentiles" as the summary method, and change the percentiles value to a value that is close to 100 (overestimate expected volume) or to 0 (underestimate expected volume).
In the example above, we are only interested in detecting volume that is excessively high, we use the 95th percentile to do so, effectively highlighting when volume is higher than 95% of the volumes recorded at that time.
🔶 DETAILS
🔹 Choosing the Right Periods
Our expected volume value depends on grouping volume based on periods, which can be user-defined.
For example, if only the hourly period is selected, volumes are grouped by their respective hours. As such, to get the expected volume for the hour 7 PM, we collect and group the historical volumes that occurred at 7 PM and average them to get our expected value at that time.
Users are not limited to selecting a single period, and can group volume using a combination of all the available periods.
Do note that when on lower timeframes, only having higher periods will lead to less precise expected values. Enabling periods that are too low might prevent grouping. Finally, enabling a lot of periods will, on the other hand, lead to a lot of groups, preventing the ability to get effective expected values.
In order to avoid changing periods by navigating across multiple timeframes, an "Auto Selection" setting is provided.
🔹 Group Length
The length setting allows controlling the maximum size of a volume group. Using higher lengths will provide an expected value on more historical data, further highlighting recurring patterns.
🔹 Recommended Assets
Obtaining the expected volume for a specific period (time of the day, day of the week, quarter, etc) is most effective when on assets showing higher signs of periodicity in their trading activity.
This is visible on stocks, futures, and forex pairs, which tend to have a defined, recognizable interval with usually higher trading activity.
Assets such as cryptocurrencies will usually not have a clearly defined periodic trading activity, which lowers the validity of forecasts produced by the tool, as well as any conclusions originating from the volume to expected volume comparisons.
🔶 SETTINGS
Length: Maximum number of records in a volume group for a specific period. Older values are discarded.
Smooth: Period of a SMA used to smooth volume. The smoothing affects the expected value.
🔹 Periods
Auto Selection: Automatically choose a practical combination of periods based on the chart timeframe.
Custom periods can be used if disabling "Auto Selection". Available periods include:
- Minutes
- Hours
- Days (can be: Day of Week, Day of Month, Day of Year)
- Months
- Quarters
🔹 Summary
Method: Method used to obtain the expected value. Options include Mean (default) or Percentile.
Percentile: Percentile number used if "Method" is set to "Percentile". A value of 50 will effectively use a median for the expected value.
🔹 Forecast
Forecast Window: Number of bars ahead for which the expected volume is predicted.
Style: Style settings of the forecast.
Pivot Regime Anchored VWAP [CHE] Pivot Regime Anchored VWAP — Detects body-based pivot regimes to classify swing highs and lows, anchoring volume-weighted average price lines directly at higher highs and lower lows for adaptive reference levels.
Summary
This indicator identifies shifts between top and bottom regimes through breakouts in candle body highs and lows, labeling swing points as higher highs, lower highs, lower lows, or higher lows. It then draws anchored volume-weighted average price lines starting from the most recent higher high and lower low, providing dynamic support and resistance that evolve with volume flow. These anchored lines differ from standard volume-weighted averages by resetting only at confirmed swing extremes, reducing noise in ranging markets while highlighting momentum shifts in trends.
Motivation: Why this design?
Traders often struggle with static reference lines that fail to adapt to changing market structures, leading to false breaks in volatile conditions or missed continuations in trends. By anchoring volume-weighted average price calculations to body pivot regimes—specifically at higher highs for resistance and lower lows for support—this design creates reference levels tied directly to price structure extremes. This approach addresses the problem of generic moving averages lagging behind swing confirmations, offering a more context-aware tool for intraday or swing trading.
What’s different vs. standard approaches?
- Baseline reference: Traditional volume-weighted average price indicators compute a running total from session start or fixed periods, often ignoring price structure.
- Architecture differences:
- Regime detection via body breakout logic switches between high and low focus dynamically.
- Anchoring limited to confirmed higher highs and lower lows, with historical recalculation for accurate line drawing.
- Polyline rendering rebuilds only on the last bar to manage performance.
- Practical effect: Charts show fewer, more meaningful lines that start at swing points, making it easier to spot confluences with structure breaks rather than cluttered overlays from continuous calculations.
How it works (technical)
The indicator first calculates the maximum and minimum of each candle's open and close to define body highs and lows. It then scans a lookback window for the highest body high and lowest body low. A top regime triggers when the body high from the lookback period exceeds the window's highest, and a bottom regime when the body low falls below the window's lowest. These regime shifts confirm pivots only when crossing from one state to the other.
For top pivots, it compares the new body high against the previous swing high: if greater, it marks a higher high and anchors a new line; otherwise, a lower high. The same logic applies inversely for bottom pivots. Anchored lines use cumulative price-volume products and volumes from the anchor bar onward, subtracting prior cumulatives to isolate the segment. On pivot confirmation, it loops backward from the current bar to the anchor, computing and storing points for the line. New points append as bars advance, ensuring the line reflects ongoing volume weighting.
Initialization uses persistent variables to track the last swing values and anchor bars, starting with neutral states. Data flows from regime detection to pivot classification, then to anchoring and point accumulation, with lines rendered globally on the final bar.
Parameter Guide
Pivot Length — Controls the lookback window for detecting body breakouts, influencing pivot frequency and sensitivity to recent action. Shorter values catch more pivots in choppy conditions; longer smooths for major swings. Default: 30 (bars). Trade-offs/Tips: Min 1; for intraday, try 10–20 to reduce lag but watch for noise; on daily, 50+ for stability.
Show Pivot Labels — Toggles display of text markers at swing points, aiding quick identification of higher highs, lower highs, lower lows, or higher lows. Default: true. Trade-offs/Tips: Disable in multi-indicator setups to declutter; useful for backtesting structure.
HH Color — Sets the line and label color for higher high anchored lines, distinguishing resistance levels. Default: Red (solid). Trade-offs/Tips: Choose contrasting hues for dark/light themes; pair with opacity for fills if added later.
LL Color — Sets the line and label color for lower low anchored lines, distinguishing support levels. Default: Lime (solid). Trade-offs/Tips: As above; green shades work well for bullish contexts without overpowering candles.
Reading & Interpretation
Higher high labels and red lines indicate potential resistance zones where volume weighting begins at a new swing top, suggesting sellers may defend prior highs. Lower low labels and lime lines mark support from a fresh swing bottom, with the line's slope reflecting buyer commitment via volume. Lower highs or higher lows appear as labels without new anchors, signaling possible range-bound action. Line proximity to price shows overextension; crosses may hint at regime shifts, but confirm with volume spikes.
Practical Workflows & Combinations
- Trend following: Enter longs above a rising lower low anchored line after higher low confirmation; filter with rising higher highs for uptrends. Use line breaks as trailing stops.
- Exits/Stops: In downtrends, exit shorts below a higher high line; set aggressive stops above it for scalps, conservative below for swings. Pair with momentum oscillators for divergence.
- Multi-asset/Multi-TF: Defaults suit forex/stocks on 1H–4H; on crypto 15M, shorten length to 15. Scale colors for dark themes; combine with higher timeframe anchors for confluence.
Behavior, Constraints & Performance
Closed-bar logic ensures pivots confirm after the lookback period, with no repainting on historical bars—live bars may adjust until regime shift. No higher timeframe calls, so minimal repaint risk beyond standard delays. Resources include a 2000-bar history limit, label/polyline caps at 200/50, and loops for historical point filling (up to current bar count from anchor, typically under 500 iterations). Known limits: In extreme gaps or low-volume periods, anchors may skew; lines absent until first pivots.
Sensible Defaults & Quick Tuning
Start with the 30-bar length for balanced pivot detection across most assets. For too-frequent pivots in ranges, increase to 50 for fewer signals. If lines lag in trends, reduce to 20 and enable labels for visual cues. In low-volatility assets, widen color contrasts; test on 100-bar history to verify stability.
What this indicator is—and isn’t
This is a structure-aware visualization layer for anchoring volume-weighted references at swing extremes, enhancing manual analysis of regimes and levels. It is not a standalone signal generator or predictive model—always integrate with broader context like order flow or news. Use alongside risk management and position sizing, not as isolated buy/sell triggers.
Many thanks to LuxAlgo for the original script "McDonald's Pattern ". The implementation for body pivots instead of wicks uses a = max(open, close), b = min(open, close) and then highest(a, length) / lowest(b, length). This filters noise from the wicks and detects breakouts over/under bodies. Unusual and targeted, super innovative.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.
Best regards and happy trading
Chervolino
Turtle soupHi all!
This indicator will show you turtle soups. The logic is that pivots detected from a higher timeframe, with the pivot lengths of left and right in the settings, will be up for 'grabs' by price that spents more than one candle above/below the pivot.
If only one candle is beyond the pivot it's a liquidity sweep or grab. Liquidity sweeps can be discovered through my script 'Market structure' (), but this script will discover turtle soup entries with false breakouts that takes liquidity.
The turtle soup can have a confirmation in the terms of a change of character (CHoCH). The turtle soup strategy usually comes with some sort of confirmation, in this case a CHoCH, but it can also be a market structure shift (MSS) or a change in state of delivery (CISD).
Turtle soups (pivots that have been 'taken') within a turtle soup will also be visible (but not have a turtle).
Alerts are available for when a turtle soup setup occurs and you can set the alert frequency of your liking (to get early signals with a script that might repaint or wait for a closed candle).
I hope that this description makes sense, tell me otherwise. Also tell me if you have any improvements or feature requests.
Best of trading luck!
The chart in the publication contains a 4 hour chart with a daily timeframe and confirmations with CHoCH.
Dynamic Market Structure (MTF) - Dow TheoryDynamic Market Structure (MTF)
OVERVIEW
This advanced indicator provides a comprehensive and fully customizable solution for analyzing market structure based on classic Dow Theory principles. It automates the identification of key structural points, including Higher Highs (HH), Higher Lows (HL), Lower Lows (LL), and Lower Highs (LH).
Going beyond simple pivot detection, this tool visualizes the flow of the trend by plotting dynamic Breaks of Structure (BOS) and potential reversals with Changes of Character (CHoCH). It is designed to be a flexible and powerful tool for traders who use price action and trend analysis as a core part of their strategy.
CORE CONCEPTS
The indicator is built on the foundational principles of Dow Theory:
Uptrend: A series of Higher Highs and Higher Lows.
Downtrend: A series of Lower Lows and Lower Highs.
Break of Structure (BOS): Occurs when price action continues the current trend by creating a new HH in an uptrend or a new LL in a downtrend.
Change of Character (CHoCH): Occurs when the established trend sequence is broken, signaling a potential reversal. For example, when a Lower Low forms after a series of Higher Highs.
CALCULATION METHODOLOGY
This section explains the indicator's underlying logic:
Pivot Detection: The indicator's core logic is based on TradingView's built-in ta.pivothigh() and ta.pivotlow() functions. The sensitivity of this detection is fully controlled by the user via the Pivot Lookback Left and Pivot Lookback Right settings.
Structure Calculation (BOS/CHoCH): The script identifies market structure by analyzing the sequence of these confirmed pivots.
A bullish BOS is plotted when a new ta.pivothigh is confirmed at a price higher than the previous confirmed ta.pivothigh.
A bearish CHoCH is plotted when a new ta.pivotlow is confirmed at a price lower than the previous confirmed ta.pivotlow , breaking the established sequence of higher lows.
The logic is mirrored for bearish BOS and bullish CHoCH.
Invalidation Levels: This feature identifies the last confirmed pivot before a structure break (e.g., the last ta.pivotlow before a bullish BOS) and plots a dotted line from it to the breakout bar. This level is considered the structural invalidation point for that move.
MTF Confirmation: This unique feature provides confluence by analyzing a second, lower timeframe. When a pivot (e.g., a Higher Low) is confirmed on the main chart, the script requests pivot data from the user-selected lower timeframe. If a corresponding trend reversal is detected on that lower timeframe (e.g., a break of its own minor downtrend), the pivot is labeled "Firm" (FHL); otherwise, it is labeled "Soft" (SHL).
KEY FEATURES
This indicator is packed with advanced features designed to provide a deeper level of market insight:
Dynamic Structure Lines: BOS and CHoCH levels are plotted with clean, dashed lines that dynamically start at the old pivot and terminate precisely at the breakout bar, keeping the chart clean and precise.
Invalidation Levels: For every structure break, the indicator can plot a dotted "Invalidation" line (INV). This marks the critical support or resistance pivot that, if broken, would negate the previous move, providing a clear reference for risk management.
Multi-Timeframe (MTF) Confirmation: Add a layer of confluence to your analysis by confirming pivots on a lower timeframe. The indicator can label Higher Lows and Lower Highs as either "Firm" (FHL/FLH) if confirmed by a reversal on a lower timeframe, or "Soft" (SHL/SLH) if not.
Flexible Pivot Detection: Fully adjustable Pivot Lookback settings for the left and right sides allow you to tune the indicator's sensitivity to match any timeframe or trading style, from long-term investing to short-term scalping.
Full Customization: Take complete control of the indicator's appearance. A dedicated style menu allows you to customize the colors for all bullish, bearish, and reversal elements, including the transparency of the trend-based candle coloring.
HOW TO USE
Trend Identification: Use the sequence of HH/HL and LL/LH, along with the trend-colored candles, to quickly assess the current market direction on any timeframe.
Entry Signals: A confirmed BOS can signal a potential entry in the direction of the trend. A CHoCH can signal a potential reversal, offering an opportunity to enter a new trend early.
Risk Management: Use the automatically plotted "Invalidation" (INV) lines as a logical reference point for placing stop losses. A break of this level indicates that the structure you were trading has failed.
Confluence: Use the "Firm" pivot signals from the MTF analysis to identify high-probability swing points that are supported by price action on multiple timeframes.
SETTINGS BREAKDOWN
Pivot Lookback Left/Right: Controls the sensitivity of pivot detection. Higher numbers find more significant (but fewer) pivots.
MTF Confirmation: Enable/disable the "Firm" vs. "Soft" pivot analysis and select your preferred lower timeframe for confirmation.
Style Settings: Customize all colors and the transparency of the candle coloring to match your chart's theme.
Show Invalidation Levels: Toggle the visibility of the dotted invalidation lines.
This indicator is a powerful tool for visualizing and trading with the trend. Experiment with the settings to find a configuration that best fits your personal trading strategy.
Realtime RenkoI've been working on real-time renko for a while as a coding challenge. The interesting problem here is building renko bricks that form based on incoming tick data rather than waiting for bar closes. Every tick that comes through gets processed immediately, and when price moves enough to complete a brick, that brick closes and a new one opens right then. It's just neat because you can run it and it updates as you'd expect with renko, forming bricks based purely on price movement happening in real time rather than waiting for arbitrary time intervals to pass.
The three brick sizing methods give you flexibility in how you define "enough movement" to form a new brick. Traditional renko uses a fixed price range, so if you set it to 10 ticks, every brick represents exactly 10 ticks of movement. This works well for instruments with stable tick sizes and predictable volatility. ATR-based sizing calculates the average true range once at startup using a weighted average across all historical bars, then divides that by your brick value input. If you want bricks that are one full ATR in size, you'd use a brick value of 1. If you want half-ATR bricks, use 2. This inverted relationship exists because the calculation is ATR divided by your input, which lets you work with multiples and fractions intuitively. Percentage-based sizing makes each brick a fixed percentage move from the previous brick's close, which automatically scales with price level and works well for instruments that move proportionally rather than in absolute tick increments.
The best part about this implementation is how it uses varip for state management. When you first load the indicator, there's no history at all. Everything starts fresh from the moment you add it to your chart because varip variables only exist in real-time. This means you're watching actual renko bricks form from real tick data as it arrives. The indicator builds its own internal history as it runs, storing up to 250 completed bricks in memory, but that history only exists for the current session. Refresh the page or reload the indicator and it starts over from scratch.
The visual implementation uses boxes for brick bodies and lines for wicks, drawn at offset bar indices to create the appearance of a continuous renko chart in the indicator pane. Each brick occupies two bar index positions horizontally, which spaces them out and makes the chart readable. The current brick updates in real time as new ticks arrive, with its high, low, and close values adjusting continuously until it reaches the threshold to close and become finalized. Once a brick closes, it gets pushed into the history array and a new brick opens at the closing level of the previous one.
What makes this especially useful for debugging and analysis are the hover tooltips on each brick. Clicking on any brick brings up information showing when it opened with millisecond precision, how long it took to form from open to close, its internal bar index within the renko sequence, and the brick size being used. That time delta measurement is particularly valuable because it reveals the pace of price movement. A brick that forms in five seconds indicates very different market conditions than one that takes three minutes, even though both bricks represent the same amount of price movement. You can spot acceleration and deceleration in trend development by watching how quickly consecutive bricks form.
The pine logs that generate when bricks close serve as breadcrumbs back to the main chart. Every time a brick finalizes, the indicator writes a log entry with the same information shown in the tooltip. You can click that log entry and TradingView jumps your main chart to the exact timestamp when that brick closed. This lets you correlate renko brick formation with what was happening on the time-based chart, which is critical for understanding context. A brick that closed during a major news announcement or at a key support level tells a different story than one that closed during quiet drift, and the logs make it trivial to investigate those situations.
The internal bar indexing system maintains a separate count from the chart's bar_index, giving each renko brick its own sequential number starting from when the indicator begins running. This makes it easy to reference specific bricks in your analysis or when discussing patterns with others. The internal index increments only when a brick closes, so it's a pure measure of how many bricks have formed regardless of how much chart time has passed. You can match these indices between the visual bricks and the log entries, which helps when you're trying to track down the details of a specific brick that caught your attention.
Brick overshoot handling ensures that when price blows through the threshold level instead of just barely touching it, the brick closes at the threshold and the excess movement carries over to the next brick. This prevents gaps in the renko sequence and maintains the integrity of the brick sizing. If price shoots up through your bullish threshold and keeps going, the current brick closes at exactly the threshold level and the new brick opens there with the overshoot already baked into its initial high. Without this logic, you'd get renko bricks with irregular sizes whenever price moved aggressively, which would undermine the whole point of using fixed-range bricks.
The timezone setting lets you adjust timestamps to your local time or whatever reference you prefer, which matters when you're analyzing logs or comparing brick formation times across different sessions. The time delta formatter converts raw milliseconds into human-readable strings showing days, hours, minutes, and seconds with fractional precision. This makes it immediately clear whether a brick took 12.3 seconds or 2 minutes and 15 seconds to form, without having to parse millisecond values mentally.
This is the script version that will eventually be integrated into my real-time candles library. The library version had an issue with tooltips not displaying correctly, which this implementation fixes by using a different approach to label creation and positioning. Running it as a standalone indicator also gives you more control over the visual settings and makes it easier to experiment with different brick sizing methods without affecting other tools that might be using the library version.
What this really demonstrates is that real-time indicators in Pine Script require thinking about state management and tick processing differently than historical indicators. Most indicator code assumes bars are immutable once closed, so you can reference `close ` and know that value will never change. Real-time renko throws that assumption out because the current brick is constantly mutating with every tick until it closes. Using varip for state variables and carefully tracking what belongs to finalized bricks versus the developing brick makes it possible to maintain consistency while still updating smoothly in real-time. The fact that there's no historical reconstruction and everything starts fresh when you load it is actually a feature, not a limitation, because you're seeing genuine real-time brick formation rather than some approximation of what might have happened in the past.
Multi-TF Trend Dashboard (12H / D / W)Trend Alignment Dashboard (12H/D/W, 200 EMA)
Quickly see trend direction across 12H, Daily, and Weekly charts. Includes 12H 200 EMA for major trend confirmation. Perfect for spotting strong multi-timeframe alignment at a glance.






















