MTF 200 SMAMulti-Timeframe (MTF) 200 SMA: Your Universal Trend Guide
Tired of switching timeframes just to check the major moving averages?
The MTF 200 SMA indicator is a powerful, customizable tool designed to give you a clear, comprehensive view of the trend across multiple timeframes, all on a single chart. It's built on Pine Script v6 for stability and performance.
Key Features:
9 MTF Lines: Simultaneously plot the 200 Simple Moving Average (SMA) for 30m, 1h, 2h, 3h, 4h, 6h, 8h, Daily, and Weekly charts. Understand the overall market structure at a glance.
Single-Click Toggle: Use the 'Current Chart TF Only' checkbox to instantly switch from the crowded MTF view to showing only the standard 200 SMA for your current chart resolution. Perfect for focusing on immediate price action.
Dynamic Highlighting: The 'Highlight Current Chart TF' option (default ON) emphasizes the SMA corresponding to your current chart, making it stand out with a bright Aqua color and a thicker line when in MTF mode.
Full Customization: Easily adjust the SMA Length and the MTF SMA Line Color directly in the indicator settings.
How to Use It:
Trend Confirmation: When all MTF lines (especially the Daily and Weekly) are aligned and moving in the same direction, it provides high-confidence trend confirmation.
Dynamic S/R: The MTF SMAs often act as strong dynamic Support and Resistance levels, even when viewing a lower timeframe like the 5-minute chart.
Clean Analysis: Use the 'Current Chart TF Only' option when you need to declutter your chart and focus on the primary trend of your active trading session.
Elevate your trend analysis today with the MTF 200 SMA!
อินดิเคเตอร์และกลยุทธ์
Major Trading Sessions IndicatorsThis indicator displays vertical lines on your chart to mark the opening times of the major global trading sessions (Tokyo, Shanghai/HK, London, and New York). As a crypto trader I want to find price action patterns after sessions open.
It's fully customizable and extendable (you could add closing time for sessions as well)
Works best on short timeframes.
Features:
6 configurable vertical lines (4 preset for major sessions + 2 custom)
Each line shows a customizable label (e.g., "Tokyo", "London")
Individual time and color settings for each line
UTC offset for each line to handle Daylight Saving Time
Option to fix all labels at a specific price level for cleaner appearance (need to set and save it for each chart, it becomes a mess if you don't). Default behavior and limit of Pine Script is that it will be attached to the price wick.
Default Sessions:
Tokyo: 00:00 UTC (midnight)
Shanghai/HK: 01:30 UTC
London: 08:00 UTC (winter) - adjust offset to +1 for summer
New York: 13:00 UTC (winter) - adjust offset to -4 for summer
DST Adjustments:
Simply change the UTC offset when daylight saving time begins/ends:
London: 0 (winter) or +1 (summer)
New York: -5 (winter) or -4 (summer)
Lines extend from top to bottom of the chart and appear precisely when each session opens.
My preferred configuration: shorten names and reduce opacity of colors to 20-30%.
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
RSI Colored by Relative StrengthThis indicator enhances the traditional RSI by combining it with Relative Strength (RS) — the ratio of an asset’s price to a chosen benchmark (e.g., SPY, QQQ, BTCUSD) — to create a more accurate, powerful, and dynamic momentum confirmation tool.
Instead of relying solely on RSI’s internal momentum, this version color-codes RSI values and backgrounds based on whether the asset is outperforming, underperforming, or neutral relative to the benchmark, not only identifying the RSI value, but color codes it in relation to the overall market to give more accurate confirmations.
• RS > 1 → The asset is outperforming the benchmark (relative strength).
• RS < 1 → The asset is underperforming.
• RS ≈ 1 → Neutral or moving in sync with the benchmark.
Gradient background zones:
• Green tones = outperformance (RS > 1).
• Red tones = underperformance (RS < 1).
• Gray neutral band = parity (RS ≈ 1).
Intensity adjusts dynamically based on how far RS deviates from 1, giving an at-a-glance view of market leadership strength.
• Color-coded RSI line: Green when RS > 1, red when RS < 1.
• Optional markers and labels show confirmed RS+RSI crossovers with smart spacing to prevent clutter.
• Alerts included for bullish and bearish RS+RSI alignment events.
How to Use
1. Add your preferred benchmark symbol (default: SPY).
2. Move this indicator into the same pane as your RSI (No need to overlay, does so automatically) and can also be used standalone.
3. Watch for:
• Green RSI & background: Significant momentum strength (asset trending upward and outpacing the market).
• Red RSI & background: False or insignificant momentum (asset lagging).
• Gray zone: neutral phase — consolidation or rotation period.
Use this as a trend-confirmation filter rather than a signal generator.
For example:
• Confirm and refine breakout entries when RS > 1 (RSI support = stronger conviction).
• Take profits when RSI weakens and RS slips below 1.
Custom Net ATR Mapping - NateThis indicator measures how much an asset actually moves — both on average and across full periods — so traders can compare short-term volatility with longer-term net momentum.
It displays four key metrics in a simple color-coded table:
Standard ATR – the average daily (or per-bar) range, showing typical volatility.
Net ATR – the average open-to-close move, revealing how much price tends to travel directionally within each bar.
Total Net Move – the total distance price has moved from the start to the end of the most recent measurement window.
Average Net Move – the typical size of that full-period move, averaged across multiple recent windows.
Together these readings help you see whether recent price action is choppy but contained (high ATR, low net move) or sustained and directional (high net move relative to ATR) — useful for spotting trend strength, breakout potential, or range-bound conditions.
TST Rahmat RamadhanThis indicator was created to simplify (Time Session Trading) in regions with GMT +7 time zones, using the London Session, Asia Session, and New York Session time systems.
The purpose of dividing trading sessions is to make it easier to see price movements during trading hours based on the trading session.
This indicator was created for personal use, but can be used by anyone in the same time zone.
Please note that this indicator does not display buy or sell signals, so technical analysis skills are required to use it.
Good luck!
Session Lines Clean (Asia/London/NY)Session Lines Clean (Asia/London/NY) — v6” automatically plots the high and low levels of the Asia and London forex sessions, and marks the opening times of Asia, London, and New York sessions with vertical dashed lines. The indicator helps traders quickly identify key session ranges, potential liquidity areas, and time-based structure levels. Optional labels and visibility toggles make it easy to customize the display without cluttering the chart.
Custom Session highlighter - Dual Sessions + TimezoneCustom Session highlighter - Dual Sessions + Timezone
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.
USD Session 8FX - LDN & NY (TF-invariant, Live + Table)What it is
A USD strength/weakness meter for the London (08:00–08:45) or New York (15:30–16:00/16:15) session. It blends the movement of 8 markets—EURUSD, GBPUSD, AUDUSD, NZDUSD, USDCHF, USDCAD, USDJPY, XAUUSD—into one Score that is timeframe-invariant (it uses a 1-minute “boundary TF” under the hood so changing chart TF doesn’t change the math).
Core logic (simple)
During the chosen session window, it records each symbol’s start and live end prices, computes returns, optionally normalizes by ATR (volatility), applies your weights, and averages anti-USD (EUR/GBP/AUD/NZD/XAU) vs USD-base (CHF/CAD/JPY) groups.
The final Score is the normalized sum of weighted contributions:
Score > 0 → “USD Strong”
Score < 0 → “USD Weak”
At the session close it freezes (“Locked”) the results so you can review them later.
What you see
Main plot: the USD Score line (with a 0 baseline).
Optional lines: Anti-USD average vs USD-base average (post-normalization, pre-weights).
Session background shading (London silver, New York aqua).
Live table with:
Each symbol’s % change, its weight, and its contribution to the Score.
TOP badges for the two biggest drivers (by absolute contribution).
A Side column (only for the two TOPs) showing BUY/SELL aligned with the USD verdict (e.g., if USD Strong → SELL anti-USD pairs like EURUSD, BUY USD-base like USDCHF).
Verdict row with USD Strong/Weak, the Score value, the window text, and whether you’re LIVE / CLOSED / FROZEN.
Trade Gate panel:
Shows Verdict (USD Strong/Weak), Bias OK/weak (|Score| vs your threshold), Top-1/Top-2 VWAP checks, an overall GATE: OK/NO, and an Entry hint string (e.g., “SELL EURUSD, BUY USDCHF”) when conditions align.
VWAP “Trade Gate”
It confirms alignment between the USD bias and price vs VWAP for the top movers:
If USD Strong: anti-USD symbols should be below VWAP (short bias), USD-base symbols above VWAP (long bias).
If USD Weak: the opposite.
Gate = OK only if |Score| ≥ minAbsScore and at least one of the two TOP symbols is on the correct side of VWAP.
Tip: set vwapTF to an intraday value (“1”, “5”, “15”) for reliable VWAP on higher-TF charts.
Alerts
At session close: “USD Strong/Weak – session close”.
Live threshold: alerts when |Score| crosses your intraday threshold up/down.
Entry hint (Gate OK): triggers when the Gate flips from NO → OK inside the window.
If you create an alert of type “Any alert() function call”, you also get a dynamic message like:
ENTRY HINT • Hint: SELL EURUSD, BUY USDCHF
Key inputs you can tweak
Session: London vs New York; NY end time 16:00 or 16:15.
Timezone: default Europe/Tirane.
Boundary TF: default “1” (keeps the indicator TF-invariant).
minAbsScore: sensitivity threshold for “Bias OK”.
ATR normalization (len): stabilizes comparisons across different volatility regimes.
VWAP settings: toggle panel and set vwapTF.
How to use (playbook)
Choose the session (e.g., New York 15:30–16:15), keep Boundary TF = 1.
If you’re on a higher-TF chart, set vwapTF = "1" or "5".
Watch Score and Verdict; when |Score| ≥ minAbsScore, bias is meaningful.
Check Top-1/Top-2 and the Trade Gate:
If Gate = OK, use the Entry hint (e.g., “SELL EURUSD, BUY USDCHF”) as the aligned idea.
Use your own execution rules (e.g., structure, risk, stops) on the suggested symbols.
After close, review the Frozen table to validate behavior and refine thresholds/weights.
Notes & edge cases
If some markets are illiquid/holiday, a few returns may be na; the script handles that gracefully.
If ta.vwap is na on high TFs, the Gate will simply not confirm—set vwapTF intraday.
You can customize weights (e.g., reduce XAUUSD to -0.3 or similar) to suit your basket philosophy.
If you want, I can add toggles to show Side for all 8 symbols, or print a one-line summary (e.g., “USD Strong • Score 0.23 • Gate OK • SELL EURUSD, BUY USDCHF”) in the top-left of the pane.
Previous TPOIndicator Summary
This Pine Script indicator, "Previous TPO," is designed to calculate and display five key price levels from the previous trading day's market activity. It uses a 30-minute TPO (Time Price Opportunity) profile, which is a method of organizing price by time to find areas of high and low activity.
The five levels it plots on the current day are:
1. Previous Value Area High (VAH)
2. Previous Value Area Low (VAL)
3. Previous Point of Control (POC)
4. Previous Initial Balance High (IBH)
5. Previous Initial Balance Low (IBL)
The script is built to be efficient, running its main calculation only once at the beginning of each new day. It also includes an automatic line management system to delete old lines, preventing the "Too many lines" error and keeping the chart clean.
How the Code Works
1. Data Collection: At the start of a new day (00:00), the script looks back at the chart's history. It uses request.security to access 30-minute bar data.
2. Collector Loop: It then loops backward, bar by bar, to find and store 48 unique 30-minute High/Low data points, which represents the full 24-hour range of the previous day.
3. TPO Profile: With this 30-minute data, it builds a TPO profile. It divides the previous day's price range into small bins (price levels) and counts how many 30-minute periods "touched" each price bin.
4. Level Calculation:
o POC: It finds the price bin with the highest TPO count (the most traded price) and sets it as the Point of Control.
o VAH/VAL: It starts at the POC and expands outward, adding the next-most-traded price bins until 70% (or the user-defined percentage) of the day's TPOs are included. The highest and lowest prices of this range are the Value Area High and Value Area Low.
o IBH/IBL: It identifies the high and low of the first hour (the first two 30-minute bars) of the previous day to set the Initial Balance High and Initial Balance Low.
5. Drawing: The script draws these five levels as horizontal lines across the current trading day, providing a constant reference.
6. Line Management: It keeps track of all lines in an array. When the total number of lines exceeds the user's limit (e.g., 50 days * 5 lines = 250), it automatically deletes the oldest lines from the chart.
Usefulness for Trading
This indicator provides a powerful framework for intraday traders by contextualizing the current day's price action against the previous day's "auction."
• Key Support/Resistance: The VAH, VAL, and POC act as significant support and resistance lev-els. Price reacting at these levels can signal mean reversion, while acceptance beyond them can signal a trend or expansion day.
• Value Area as Context: Trading inside the previous day's value area (between VAH and VAL) is often seen as "balanced" or "range-bound" trading. Trading outside of it is "unbalanced" or "trending."
• POC as a "Magnet": The POC, being the area of highest volume/time, often acts as a "magnet" or "center of gravity" for price.
• Opening Range: The Initial Balance (IB) levels show the opening range. A breakout from this range is often a key signal for the day's initial direction.
• 80% Rule: The script contains (currently commented-out) setup logic for the "80% Rule." This is a specific Market Profile strategy where:
1. The market opens inside the previous day's Value Area.
2. The Initial Balance fails to extend outside the VA (e.g., in a short setup, the IB high stays below the VAH).
3. This setup suggests an 80% probability that the price will rotate and test the other side of the Value Area (e.g., test the VAL).
Publication and restrictions
This script is published under the Mozilla Public Licence 2.0 (MPL 2.0) and is therefore suitable for publi-cation as an open source indicator on TradingView.
Timeframe limitation: The indicator is designed for intraday timeframes. Timeframes below 10 minutes do not work and lead to an error. Recommended time frame 30 minutes.
It will not work correctly on:
Time frame under 10 minutes: The data collection loop (max_bars_to_check = 3000) is not large enough to collect the bars required for a full day on a 5-minute chart or smaller.
High time frames (e.g. 1H, 4H, Daily): The script's logic is based on a chart timeframe 30-minute data that it requests. If higher time frames are selected, the script works but the zones are no longer correct or become irrelevant.
LegendaryGoldTraderLegendaryGoldTrader Signals – TradingView Indicator
This script is a comprehensive multi-indicator signal tool for XAUUSD (Gold), optimized for short timeframes from 1 to 15 minutes. It combines trend, momentum, and entry indicators to help identify potential Long and Short trading opportunities.
Features:
EMA (Trend Filter): Two EMAs determine the short-term trend direction.
RSI: Highlights overbought and oversold conditions.
MACD: Detects momentum shifts and trend changes.
Stochastic: Provides precise entry timing.
ADX: Confirms trend strength and filters signals during weak trends.
3-Candle Pattern (optional): Identifies short-term reversal patterns for Long or Short entries.
BUY/SELL Labels: Clear signals displayed above or below the chart.
Info Window: Displays all indicator signals and trend strength at a glance.
Highlights:
Fully configurable indicators and signals.
3-Candle Pattern can be enabled or disabled.
Suitable for fast intraday trading on minute charts, but flexible for other timeframes.
Supports trend confirmation and false-signal filtering for controlled entries.
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.
Match on Selectable Percentage Change + RangeIndicator Overview:
Match on Selectable Percentage Change + Range is a powerful analytical tool designed for traders and analysts who want to identify historical price bars that match a specific percentage variation, and then evaluate how price evolved in the following days. It combines precision filtering with visual tabular feedback, making it ideal for pattern recognition, backtesting, and scenario analysis.
What It Does
This indicator scans historical bars to find instances where the percentage change between two consecutive closes matches a user-defined target (± a customizable tolerance). Once matches are found, it displays:
The date of each match (most recent first)
The actual variation searched
The percentage change after 2, 10, 20, and 30 bars
The min-max range (in %) over those same periods
All results are shown in a dynamic table directly on the chart.
Inputs & Controls
Input Description
Which variation do you want to analyze? (%)
Set the target percentage change to look for (e.g. 2.5%)
% deviation from the variation to be considered (%) Define the tolerance range around the target (e.g. ±0.5%)
Bars to analyze (max 9999) Set how many past bars to scan
Show match table Toggle to enable/disable the entire table
Show percentage variations (2d, 10d, 20d, 30d) Toggle to show/hide post-match percentage changes
Show min-max ranges (2d, 10d, 20d, 30d) Toggle to show/hide post-match high/low ranges
Table Structure
Each row in the table represents a historical match. Columns include:
Date: When the match occurred
Variation in: The actual % change that triggered the match
2d / 10d / 20d / 30d: % change after those days
Min-Max 2d / 10d / 20d / 30d: Range of price movement after those days
Color coding helps quickly identify bullish (green) vs bearish (red) outcomes.
Use Cases
Backtesting: See how similar past moves evolved over time
Scenario modeling: Estimate potential outcomes after a known variation
Pattern recognition: Spot recurring setups or volatility clusters
Risk analysis: Understand post-variation drawdowns and upside potential
Tips for Use
Use tighter deviation (e.g. 0.3%) for precision, or wider (e.g. 1%) for broader pattern capture.
Combine with other indicators to validate setups (e.g. volume, RSI, trend filters).
Toggle off variation or range columns to focus only on the metrics you need.
Limite de compensation des fraisPermet de tracer la limite des frais à compenser avant d'atteindre le seuil de rentabilité
Trend Telescope v4 Basic Configuration
pine
// Enable only the components you need
Order Flow: ON
Delta Volume: ON
Volume Profile: ON
Cumulative Delta: ON
Volatility Indicator: ON
Momentum Direction: ON
Volatility Compression: ON
📊 Component Breakdown
1. Order Flow Analysis
Purpose: Identifies buying vs selling pressure
Visual: Histogram (Green=Buying, Red=Selling)
Calculation: Volume weighted by price position
Usage: Spot institutional order blocks
2. Delta Volume Values
Purpose: Shows volume imbalance
Bull Volume (Green): Volume on up bars
Bear Volume (Red): Volume on down bars
Usage: Identify volume divergences
3. Anchored Volume Profile
Purpose: Finds high-volume price levels
POC (Point of Control): Price with highest volume
Profile Length: Adjustable (default: 50 bars)
Usage: Identify support/resistance zones
4. Cumulative Volume Delta
Purpose: Tracks net buying/selling pressure over time
Trend Analysis: Rising=Buying pressure, Falling=Selling pressure
Divergence Detection: Price vs Delta divergences
Usage: Confirm trend strength
5. Volatility Indicator
Purpose: Measures market volatility with cycle detection
Volatility Ratio: ATR as percentage of price
Volatility Cycle: SMA of volatility (identifies periods)
Histogram: Difference between current and average volatility
Usage: Adjust position sizing, identify breakout setups
6. Real-time Momentum Direction
Purpose: Multi-factor momentum assessment
Components: Price momentum (50%), RSI momentum (30%), Volume momentum (20%)
Visual: Line plot with color coding
Labels: Clear BULLISH/BEARISH/NEUTRAL signals
Usage: Trend confirmation, reversal detection
7. Volatility Compression Analysis
Purpose: Identifies low-volatility consolidation periods
Compression Detection: True Range below threshold
Strength Meter: How compressed the market is
Histogram: Red when compressed, Gray when normal
Usage: Predict explosive moves, prepare for breakouts
⚙️ Advanced Configuration
Optimal Settings for Different Timeframes
pine
// Scalping (1-15 min)
Profile Length: 20
ATR Period: 10
Momentum Length: 8
Compression Threshold: 0.3
// Day Trading (1H-4H)
Profile Length: 50
ATR Period: 14
Momentum Length: 14
Compression Threshold: 0.5
// Swing Trading (Daily)
Profile Length: 100
ATR Period: 20
Momentum Length: 21
Compression Threshold: 0.7
Alert Setup Guide
Enable "Enable Alerts" in settings
Choose alert types:
Momentum Alerts: When momentum changes direction
Compression Alerts: When volatility compression begins
Set alert frequency to "Once Per Bar"
Configure notification preferences
🎯 Trading Strategies
Strategy 1: Compression Breakout
pine
Entry Conditions:
1. Volatility Compression shows RED histogram
2. Cumulative Delta trending upward
3. Momentum turns BULLISH
4. Price breaks above POC level
Exit: When Momentum turns BEARISH or Compression ends
Strategy 2: Momentum Reversal
pine
Entry Conditions:
1. Strong Order Flow in opposite direction
2. Momentum divergence (price makes new high/low but momentum doesn't)
3. Volume confirms the reversal
Exit: When Order Flow returns to trend direction
Strategy 3: Institutional Accumulation
pine
Identification:
1. High Cumulative Delta but flat/sideways price
2. Consistent Order Flow in one direction
3. Volume Profile shows accumulation at specific levels
Trade: Enter in direction of Order Flow when price breaks level
📈 Interpretation Guide
Bullish Signals
✅ Order Flow consistently green
✅ Cumulative Delta making higher highs
✅ Momentum above zero and rising
✅ Bull Volume > Bear Volume
✅ Price above POC level
Bearish Signals
✅ Order Flow consistently red
✅ Cumulative Delta making lower lows
✅ Momentum below zero and falling
✅ Bear Volume > Bull Volume
✅ Price below POC level
Caution Signals
⚠️ Momentum divergence (price vs indicator)
⚠️ Volatility compression (potential big move coming)
⚠️ Mixed signals across components
🔧 Troubleshooting
Common Issues & Solutions
Problem: Indicators not showing
Solution: Check "Show on Chart" is enabled
Problem: Alerts not triggering
Solution: Verify alert is enabled in both script and TradingView alert panel
Problem: Performance issues
Solution: Reduce number of enabled components or increase timeframe
Problem: Volume Profile not updating
Solution: Adjust Profile Length setting, ensure sufficient historical data
Performance Optimization
Disable unused components
Increase chart timeframe
Reduce historical bar count
Use on lower timeframes with fewer indicators enabled
💡 Pro Tips
Risk Management
Use Volatility Indicator for position sizing
Monitor Cumulative Delta for trend confirmation
Use POC levels for stop-loss placement
Multi-Timeframe Analysis
Use higher timeframe for trend direction
Use current timeframe for entry timing
Correlate signals across timeframes
Market Condition Adaptation
Trending Markets: Focus on Momentum + Order Flow
Ranging Markets: Focus on Volume Profile + Compression
High Volatility: Use smaller position sizes
Low Volatility: Prepare for compression breakouts
📚 Educational Resources
Key Concepts to Master
Volume-price relationships
Market microstructure
Institutional order flow
Volatility regimes
Momentum vs mean reversion
Recommended Learning Path
Start with Order Flow + Momentum only
Add Volume Profile once comfortable
Incorporate Volatility analysis
Master multi-component correlation
🆘 Support
Getting Help
Check component toggles are enabled
Verify sufficient historical data is loaded
Test on major pairs/indices first
Adjust settings for your trading style
Continuous Improvement
Backtest strategies thoroughly
Keep a trading journal
Adjust parameters based on market conditions
Combine with price action analysis
Remember: No indicator is perfect. Use this tool as part of a comprehensive trading plan with proper risk management. Always test strategies in demo accounts before live trading.
Happy Trading! 📈
Levels[cz]Description
Levels is a proportional price grid indicator that draws adaptive horizontal levels based on higher timeframe (HTF) closes.
Instead of relying on swing highs/lows or pivots, it builds structured support and resistance zones using fixed percentage increments from a Daily, Weekly, or Monthly reference close.
This creates a consistent geometric framework that helps traders visualize price zones where reactions or consolidations often occur.
How It Works
The script retrieves the last HTF close (Daily/Weekly/Monthly).
It then calculates percentage-based increments (e.g., 0.5%, 1%, 2%, 4%) above and below that reference.
Each percentage forms a distinct “level group,” creating layered grids of potential reaction zones.
Levels are automatically filtered to avoid overlap between different groups, keeping the chart clean.
Visibility is dynamically controlled by timeframe:
Level 1 → up to 15m
Level 2 → up to 1h
Level 3 → up to 4h
Level 4 → up to 1D
This ensures the right amount of structural detail at every zoom level.
How to Use
Identify confluence zones where multiple levels cluster — often areas of strong liquidity or reversals.
Use the grid as a support/resistance map for entries, targets, and stop placement.
Combine with trend or momentum indicators to validate reactions at key price bands.
Adjust the percentage increments and reference timeframe to match the volatility of your instrument (e.g., smaller steps for crypto, larger for indices).
Concept
The indicator is based on the idea that markets move in proportional price steps, not random fluctuations.
By anchoring levels to a higher-timeframe close and expanding outward geometrically, Levels highlights recurring equilibrium and expansion zones — areas where traders can anticipate probable turning points or consolidations.
Features
4 customizable percentage-based level sets
Dynamic visibility by timeframe
Non-overlapping level hierarchy
Lightweight on performance
Fully customizable colors, styles, and widths
Supersonic Volatility & Momentum IndicatorChange/update the setting as per your trading requirements!
Puell Multiple Variants [OperationHeadLessChicken]Overview
This script contains three different, but related indicators to visualise Bitcoin miner revenue.
The classical Puell Multiple : historically, it has been good at signaling Bitcoin cycle tops and bottoms, but due to the diminishing rewards miners get after each halving, it is not clear how you determine overvalued and undervalued territories on it. Here is how the other two modified versions come into play:
Halving-Corrected Puell Multiple : The idea is to multiply the miner revenue after each halving with a correction factor, so overvalued levels are made comparable by a horizontal line across cycles. After experimentation, this correction factor turned out to be around 1.63. This brings cycle tops close to each other, but we lose the ability to see undervalued territories as a horizontal region. The third variant aims to fix this:
Miner Revenue Relative Strength Index (Miner Revenue RSI) : It uses RSI to map miner revenue into the 0-100 range, making it easy to visualise over/undervalued territories. With correct parameter settings, it eliminates the diminishing nature of the original Puell Multiple, and shows both over- and undervalued revenues correctly.
Example usage
The goal is to determine cycle tops and bottoms. I recommend using it on high timeframes, like monthly or weekly . Lower than that, you will see a lot of noise, but it could still be used. Here I use monthly as the example.
The classical Puell Multiple is included for reference. It is calculated as Miner Revenue divided by the 365-day Moving Average of the Miner Revenue . As you can see in the picture below, it has been good at signaling tops at 1,3,5,7.
The problems:
- I have to switch the Puell Multiple to a logarithmic scale
- Still, I cannot use a horizontal oversold territory
- 5 didn't touch the trendline, despite being a cycle top
- 9 touched the trendline despite not being a cycle top
Halving-Corrected Puell Multiple (yellow): Multiplies the Puell Multiple by 1.63 (a number determined via experimentation) after each halving. In the picture below, you can see how the Classical (white) and Corrected (yellow) Puell Multiples compare:
Advantages:
- Now you can set a constant overvalued level (12.49 in my case)
- 1,3,7 are signaled correctly as cycle tops
- 9 is correctly not signaled as a cycle top
Caveats:
- Now you don't have bottom signals anymore
- 5 is still not signaled as cycle top
Let's see if we can further improve this:
Miner Revenue RSI (blue):
On the monthly, you can see that an RSI period of 6, an overvalued threshold of 90, and an undervalued threshold of 35 have given historically pretty good signals.
Advantages:
- Uses two simple and clear horizontal levels for undervalued and overvalued levels
- Signaling 1,3,5,7 correctly as cycle tops
- Correctly does not signal 9 as a cycle top
- Signaling 4,6,8 correctly as cycle bottoms
Caveats:
- Misses two as a cycle bottom, although it was a long time ago when the Bitcoin market was much less mature
- In the past, gave some early overvalued signals
Usage
Using the example above, you can apply these indicators to any timeframe you like and tweak their parameters to obtain signals for overvalued/undervalued BTC prices
You can show or hide any of the three indicators individually
Set overvalued/undervalued thresholds for each => the background will highlight in green (undervalued) or red (overvalued)
Set special parameters for the given indicators: correction factor for the Corrected Puell and RSI period for Revenue RSI
Show or hide halving events on the indicator panel
All parameters and colours are adjustable
Open Interest FaraGroup Editionopen interest for a closed group :)
An open interest chart is used, as well as additional functionality.
The ability to specify any data as a source, not just public interest.
Gold–Bitcoin Correlation (Offset Model) by KManus88This indicator analyzes the correlation between Gold (XAU/USD) and Bitcoin (BTC/USD) using a time-offset model adjustable by the user.
The goal is to detect cyclical leads or lags between both assets, highlighting how capital flows into Gold may precede or follow movements in the crypto market.
Key Features:
Dynamic correlation calculation between Gold and Bitcoin.
Adjustable offset in days (default: 107) to fine-tune the temporal shift.
Automatic labels and on-chart visualization.
Compatible with multiple timeframes and logarithmic scales.
Interpretation:
Positive correlation suggests synchronized trends between both assets.
Negative correlation signals divergence or rotation of liquidity.
The time-offset parameter helps estimate when a shift in Gold could later reflect in Bitcoin.
Recommended use:
For macro-financial and global liquidity cycle analysis.
As a complementary tool in cross-asset momentum strategies.
© 2025 – Developed by KManus88 | Inspired by monetary correlation studies and global liquidity cycles.
This script is for educational purposes only and does not constitute financial advice.
Adaptive Pulse Frequency & Amplitude TrendAdaptive Pulse Frequency & Amplitude Trend Indicator
This Pine Script indicator is designed to identify strong bullish or bearish trends by analyzing volume dynamics on a lower timeframe than the one currently displayed on the chart. It operates on the principle of detecting significant spikes in buying or selling pressure, referred to as "pulses," and then evaluating their frequency, strength, and dominance over the opposing market forces.
Core Concepts
Lower Timeframe Volume Analysis: The script requests up-volume and down-volume data from a more granular, lower timeframe (e.g., 1-minute data when on a 15-minute chart). This provides a higher-resolution view of the flow of buy and sell orders.
Adaptive Pulse Detection: A "pulse" is defined as a bar with an unusually high net volume (up volume minus down volume). Instead of using a fixed value, the indicator calculates an adaptive threshold based on the 90th percentile of net volume over a 100-bar lookback period. Any bar with a net volume exceeding this dynamic threshold is flagged as a pulse, categorized as either bullish (positive net volume) or bearish (negative net volume).
Frequency and Amplitude: The indicator measures two key aspects of these pulses over user-defined lookback periods:
Net Frequency: The number of bullish pulses minus the number of bearish pulses. A positive value indicates more buying pulses, while a negative value indicates more selling pulses.
Net Amplitude : The cumulative volume of bullish pulses minus the cumulative volume of bearish pulses. This measures the overall strength and conviction behind the pulses.
Primary Trend Signal
The indicator's primary signal comes from a strict dominance condition. It doesn't just look for more buying or selling pulses; it checks if these pulses are powerful enough to overwhelm the total opposite pressure in the market.
Bullish Dominance (Green Background): A strong bullish signal is generated when the total volume of all bullish pulses within a lookback period is greater than the total down-volume from all bars (not just pulses) in that same period.
Bearish Dominance (Red Background): A strong bearish signal is generated when the total volume of all bearish pulses is greater than the total up-volume from all bars in that period.
The chart background is colored green for bullish dominance and red for bearish dominance, providing a clear visual cue for when one side has taken decisive control.
Plotted Data
In addition to the background coloring, the indicator plots several lines in its own pane for more detailed analysis:
Net Frequency: Shows the trend in the number of bull vs. bear pulses.
Net Amplitude: Shows the trend in the strength of bull vs. bear pulses.
Bullish/Bearish Amplitude: The individual cumulative volumes for bull and bear pulses.
Dynamic Threshold: The adaptive value used to identify pulses.
By combining an adaptive detection method with a strict dominance condition, this tool aims to filter out market noise and highlight periods of genuinely strong, volume-backed trends.






















