Alerts v6The strategy includes:
✅ EMA-based trend direction (fast vs slow)
✅ RSI filtering for overbought/oversold control
✅ ADX confirmation for strong trend validation
✅ Pullback & BOS detection for precision entries
✅ Per-bar change logic for adaptive entry timing
✅ Session/day gating to control trading hours
✅ JSON alert integration for AI trading bots or webhooks
This script is Pine Script v6 compatible and optimized for automated alert-based trading setups such as AI trading bots, webhook systems, and VPS-linked executions.
Recommended Timeframes: 5m, 15m, 30m
Markets: XAUUSD, FX pairs, indices, and metals
Educational
Enhanced OB Retest Strategy v7.0The OB Retest Strategy is a full Order Block retest trading system that detects, plots, and trades OB zones across multiple timeframes. It uses structure breaks, retrace depth, and ATR filters to identify strong reversal or continuation setups.
⸻
⚙️ Core Features
• Multi-timeframe OB detection using break-of-structure (BOS) logic
• Automatic zone creation for bullish and bearish order blocks
• Smart merging of overlapping OB zones
• Dynamic flip-zone logic that turns invalidated OBs into new zones
• Wick zone detection for high-precision entries
• ATR-based trailing stop and optional breakeven
• Adjustable retrace depth, breakout %, and ATR filters
• Built-in performance table showing PnL, win rate, and total trades
• Fully backtestable with date range and commission control
⸻
🧠 Logic Summary
1. Detects a BOS on the higher timeframe.
2. Identifies the last opposing candle as the valid OB.
3. Validates the OB based on ATR size and breakout strength.
4. Waits for price to retest the zone to a set depth.
5. Executes trades and manages exits using trailing stop or breakeven.
6. Flips invalidated zones automatically.
⸻
💡 Usage Tips
• Best used on 1H to 4H charts for swing setups.
• Tune ATR and breakout thresholds for your market’s volatility.
• Combine with higher-timeframe bias or liquidity levels for better accuracy.
⸻
⚠️ Notes
• For educational and testing purposes only.
• Backtested results do not predict future performance.
• Always test before live use.
RVI Divergence Detector with Custom SMA Filter (v6)This script enhances the classic Relative Vigor Index (RVI) by integrating divergence detection with a user-configurable SMA filter applied directly to the RVI oscillator. The goal is to help traders identify high-probability reversal and continuation signals by combining momentum analysis with dynamic baseline filtering.
How it works:
- The RVI measures the conviction behind price moves by comparing closing vs. opening prices relative to the high-low range over a 10-period window.
- Divergences are detected when price makes a new high/low but the RVI does not:
- Regular Bullish: Price makes a lower low, RVI makes a higher low → potential reversal up.
- Hidden Bullish: Price makes a higher low, RVI makes a lower low → trend continuation.
- Inverse logic applies for bearish cases.
- A customizable SMA (default: 14 periods) is plotted on the RVI line. This acts as a dynamic reference to assess whether divergences occur in strong momentum zones (far from SMA) or neutral zones (near SMA), helping filter out weaker signals.
- Users can adjust:
- Pivot lookback range (min/max bars)
- SMA period (1–200)
- Visibility of bullish/bearish and hidden/regular divergences
Why this version adds value:
Unlike basic RVI scripts, this adaptation introduces a configurable trend filter (SMA) and clear visual labeling ("D" for regular, "H" for hidden) with colored lines (green/red) connecting oscillator and price pivots—making divergences instantly recognizable. The logic is optimized for both scalping (short SMA) and swing trading (longer SMA).
Credits:
Based on the original RVI divergence concept by madoqa. This is an open-source adaptation under the Mozilla Public License 2.0. No financial advice. Use at your own risk.
ICT Liquidity Sweep Asia/London 1 Trade per High & Low🧠 ICT Liquidity Sweep Asia/London — 1 Trade per High & Low
This strategy is inspired by the ICT (Inner Circle Trader) concepts of liquidity sweeps and market structure, focusing on the Asia and London sessions.
It automatically identifies liquidity grabs (sweeps) above or below key session highs/lows and enters trades with a fixed risk/reward ratio (RR).
----------------------------------------------------------------------------------
----------------------------------------------------------------------------------
⚙️ Core Logic
-Asia Session: 8:00 PM – 11:59 PM (New York time)
-London Session: 2:00 AM – 5:00 AM (New York time)
-The script marks the Asia High/Low and London High/Low ranges for each day.
-When the market sweeps above a session high → potential Short setup
-When the market sweeps below a session low → potential Long setup
-A trade is triggered when the confirmation candle closes in the opposite direction of the sweep (bearish after a high sweep, bullish after a low sweep).
-Only one trade per sweep type (1 per High, 1 per Low) is allowed per session.
----------------------------------------------------------------------------------
----------------------------------------------------------------------------------
📈 Risk Management
-Configurable Risk/Reward Target (default = 2:1)
-Configurable Position Size (number of contracts)
-Each trade uses a fixed Stop Loss (beyond the wick of the sweep) and a Take Profit calculated from the RR setting.
-All trades are automatically logged in the Strategy Tester with performance metrics.
----------------------------------------------------------------------------------
----------------------------------------------------------------------------------
💡 Features
✅ Visual session highlighting (Asia = Aqua, London = Orange)
✅ Automatic liquidity line plotting (session highs/lows)
✅ Entry & exit labels (optional visual display)
✅ Customizable RR and contract size
✅ Works on any instrument (ideal for indices, futures, or forex)
✅ Compatible with all timeframes (optimized for 1M–15M)
----------------------------------------------------------------------------------
----------------------------------------------------------------------------------
⚠️ Notes
-Best used on New York time-based charts.
-Designed for educational and backtesting purposes — not financial advice.
-Use as a foundation for further optimization (e.g., SMT confirmation, FVG filter, or time-based restrictions).
----------------------------------------------------------------------------------
----------------------------------------------------------------------------------
🧩 Recommended Use
Pair this with:
-ICT’s concepts like CISD (Change in State of Delivery) and FVGs (Fair Value Gaps)
-Higher timeframe liquidity maps
-Session bias or daily narrative filters
----------------------------------------------------------------------------------
----------------------------------------------------------------------------------
Author: jygirouard
Strategy Version: 1.3
Type: ICT Liquidity Sweep Automation
Timezone: America/New_York
4-Hour Range Scalping [v6.3]User Guide: 4-Hour Range Scalping Strategy
Hello! Here is the guide for the Pine Script strategy. Please read it carefully to get the best results.
📈 This script automates the "4-Hour Range Scalping Strategy" from the video.
The main idea is that the first four hours of a major trading day (like New York) set up a "trap zone." The strategy waits for the price to break out of this zone and then fail, giving us a signal that the breakout was false and the price is likely to reverse.
Here’s the simple logic:
Define the Range: It precisely calculates the highest high and lowest low during the first four hours of the selected trading session (e.g., 00:00 to 04:00 New York Time).
Wait for a Breakout: It then monitors the 5-minute chart for a price breakout where a candle fully closes outside of this established range.
Identify the Reversal: The trade trigger occurs when the price fails to continue its breakout and a subsequent 5-minute candle closes back inside the range. This signals a potential reversal or "failed breakout."
Execute the Trade:
]A Short (Sell) trade is triggered after a failed breakout above the range high.
A Long (Buy) trade is triggered after a failed breakout below the range low.
Manage the Risk: The Stop Loss is automatically placed at the peak (for shorts) or trough (for longs) of the breakout move, and the Take Profit is set to a default 2:1 Risk/Reward Ratio.
How to Use the Script (Step-by-Step) ⚙️
Follow these instructions to get it running perfectly.
1. Set Your Chart Timeframe This is the most important step. The strategy is designed to run on a 5-minute (5m) chart. Open your TradingView chart and make sure the timeframe is set to "5m".
2. Add the Script to Your Chart Open the Pine Editor tab at the bottom of TradingView, paste the entire script, and click the "Add to chart" button.
3. Configure the Settings On your chart, find the strategy's name (e.g., "4-Hour Range Scalping ") and click the gear icon ⚙️ to open its settings.
Trading Session: Choose the session for the range. New York is the default and the one from the video.
Risk/Reward Ratio: The default is 2.0, meaning your potential profit is twice your potential loss. You can adjust this to test other targets.
Backtesting Period: To see how the strategy performed on all historical data, go to the "Strategy Tester" panel, click its own gear icon ⚙️, and uncheck the boxes for "Start Date" and "End Date."
4. Understand the Visuals on Your Chart
Blue Background Area: This is the 4-hour calculation window. The script is identifying the day's high and low during this time. No trades will ever happen here.
Red Line (Range High): The highest price of the 4-hour window. This is the upper boundary of the "trap zone."
Green Line (Range Low): The lowest price of the 4-hour window. This is the lower boundary.
Green Triangle (▲): Shows where a Long (Buy) trade was entered.
Red Triangle (▼): Shows where a Short (Sell) trade was entered.
A Very Important Note on Timezones 🕒
This is critical for you in the Philippines (PHT).
The script is based on the New York session, which is 12 hours behind you. Your TradingView chart will still show your local time, but the script works on NY time in the background.
The New York "day" begins at 12:00 PM (Noon) your time.
The script's blue calculation window will be from 12:00 PM to 4:00 PM your local time.
The red and green range lines will appear on your chart only after 4:00 PM your time.
So, if you look at your chart in the morning or early afternoon, you will not see today's range yet. This is normal! The script is just waiting for the New York session to start.
How to Set Up Trade Alerts 🔔
You can have TradingView send you a notification whenever the script enters a trade.
Click the "Alert" button (looks like a clock) in the right-hand toolbar of TradingView.
In the "Condition" dropdown, select the name of the script (e.g., "4-Hour Range Scalping...").
You will then see two options: "Long Signal" and "Short Signal".
Select one (e.g., "Long Signal") and configure how you want to be notified (e.g., "Notify on app").
Click "Create". Repeat the process to create an alert for the other signal.
⚠️ Important Disclosure
For Educational and Research Purposes Only.
This script and all accompanying information are provided for educational and research purposes only. The strategy demonstrated is a technical concept and should not be misconstrued as financial, investment, legal, or tax advice.
Trading financial markets involves substantial risk and is not suitable for every investor. There is a possibility that you could sustain a loss of some or all of your initial investment. Therefore, you should not invest money that you cannot afford to lose.
Past performance is not indicative of future results. The backtesting results shown by this script are historical and do not guarantee future performance. Market conditions are constantly changing.
By using this script, you acknowledge that you are solely responsible for any and all trading decisions you make. You should conduct your own thorough research and, if necessary, seek advice from an independent financial advisor before making any investment decisions. The creators of this script assume no liability for any of your trading results.
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.
Relative Performance Tracker [QuantAlgo]🟢 Overview
The Relative Performance Tracker is a multi-asset comparison tool designed to monitor and rank up to 30 different tickers simultaneously based on their relative price performance. This indicator enables traders and investors to quickly identify market leaders and laggards across their watchlist, facilitating rotation strategies, strength-based trading decisions, and cross-asset momentum analysis.
🟢 Key Features
1. Multi-Asset Monitoring
Track up to 30 tickers across any market (stocks, crypto, forex, commodities, indices)
Individual enable/disable toggles for each ticker to customize your watchlist
Universal compatibility with any TradingView symbol format (EXCHANGE:TICKER)
2. Ranking Tables (Up to 3 Tables)
Each ticker's percentage change over your chosen lookback period, calculated as:
(Current Price - Past Price) / Past Price × 100
Automatic sorting from strongest to weakest performers
Rank: Position from 1-30 (1 = strongest performer)
Ticker: Symbol name with color-coded background (green for gains, red for losses)
% Change: Exact percentage with color intensity matching magnitude
For example, Rank #1 has the highest gain among all enabled tickers, Rank #30 has the lowest (or most negative) return.
3. Histogram Visualization
Adjustable bar count: Display anywhere from 1 to 30 top-ranked tickers (user customizable)
Bar height = magnitude of percentage change.
Bars extend upward for gains, downward for losses. Taller bars = larger moves.
Green bars for positive returns, red for negative returns.
4. Customizable Color Schemes
Classic: Traditional green/red for intuitive interpretation
Aqua: Blue/orange combination for reduced eye strain
Cosmic: Vibrant aqua/purple optimized for dark mode
Custom: Full personalization of positive and negative colors
5. Built-In Ranking Alerts
Six alert conditions detect when rankings change:
Top 1 Changed: New #1 leader emerges
Top 3/5/10/15/20 Changed: Shifts within those tiers
🟢 Practical Applications
→ Momentum Trading: Focus on top-ranked assets (Rank 1-10) that show strongest relative strength for trend-following strategies
→ Market Breadth Analysis: Monitor how many tickers are above vs. below zero on the histogram to gauge overall market health
→ Divergence Spotting: Identify when previously leading assets lose momentum (drop out of top ranks) as potential trend reversal signals
→ Multi-Timeframe Analysis: Use different lookback periods on different charts to align short-term and long-term relative strength
→ Customized Focus: Adjust histogram bars to show only top 5-10 strongest movers for concentrated analysis, or expand to 20-30 for comprehensive overview
N Order EMAThe exponential moving average is one of the most fundamental tools in technical analysis, but its implementation is almost always locked to a single mathematical approach. I've always wanted to extend the EMA into an n-order filter, and after some time working through the digital signal processing mathematics, I finally managed to do it. This indicator takes the familiar EMA concept and opens it up to four different discretization methods, each representing a valid way to transform a continuous-time exponential smoother into a discrete-time recursive filter. On top of that, it includes adjustable filter order, which fundamentally changes the frequency response characteristics in ways that simply changing the period length cannot achieve.
The four discretization styles are impulse-matched, all-pole, matched z-transform, and bilinear (Tustin). The all-pole version is exactly like stacking multiple EMAs together but implemented in a single function with proper coefficient calculation. It uses a canonical form where you get one gain coefficient and the rest are zeros, with the feedback coefficients derived from the binomial expansion of the pole polynomial. The other three methods are attempts at making generalizations of the EMA in different ways. Impulse-matched creates the filter by matching the discrete-time impulse response to what the continuous EMA would produce. Matched z-transform directly maps the continuous poles to the z-domain using the exponential relationship. Bilinear uses the Tustin transformation with frequency prewarping to ensure the cutoff frequency is preserved despite the inherent warping of the mapping.
Honestly, they're all mostly the same in practice, which is exactly what you'd expect since they're all valid discretizations of the same underlying filter. The differences show up in subtle ways during volatile market conditions or in the exact phase characteristics, but for most trading applications the outputs will track each other closely. That said, the bilinear version works particularly well at low periods like 2, where other methods can sometimes produce numerical artifacts. I personally like the z-match for its clean frequency-domain properties, but the real point here is demonstrating that you can tackle the same problem from multiple mathematical angles and end up with slightly different but equally valid implementations.
The order parameter is where things get interesting. A first-order EMA is the standard single-pole recursive filter everyone knows. When you move to second-order, you're essentially cascading two filter sections, which steepens the roll-off in the frequency domain and changes how the filter responds to sudden price movements. Higher orders continue this progression. The all-pole style makes this particularly clear since it's literally stacking EMA operations, but all four discretization methods support arbitrary order. This gives you control over the aggressiveness of the smoothing that goes beyond just adjusting the period length.
On top of the core EMA calculation, I've included all the standard variants that people use for reducing lag. DEMA applies the EMA twice and combines the results to get faster response. TEMA takes it further with three applications. HEMA uses a Hull-style calculation with fractional periods, applying the EMA to the difference between a half-period EMA and a full-period EMA, then smoothing that result with the square root of the period. These are all implemented using whichever discretization method you select, so you're not mixing different mathematical approaches. Everything stays consistent within the chosen framework.
The practical upside of this indicator is flexibility for people building trading systems. If you need a moving average with specific frequency response characteristics, you can tune the order parameter instead of hunting for the right period length. If you want to test whether different discretization methods affect your strategy's performance, you can swap between them without changing any other code. For most users, the impulse-matched style at order 1 will behave almost identically to a standard EMA, which gives you a familiar baseline to work from. From there you can experiment with higher orders or different styles to see if they provide any edge in your particular market or timeframe.
What this really highlights is that even something as seemingly simple as an exponential moving average involves mathematical choices that usually stay hidden. The standard EMA formula you see in textbooks is already a discretized version of a continuous exponential decay, and there are multiple valid ways to perform that discretization. By exposing these options, this indicator lets you explore a parameter space that most traders never even know exists. Whether that exploration leads to better trading results is an empirical question that depends on your strategy and market, but at minimum it's a useful reminder that the tools we take for granted are built on arbitrary but reasonable mathematical decisions.
Directional Momentum VisualizerDescription
This script provides a color-coded column visualization of a classic momentum oscillator that measures relative strength and weakness. Instead of a single line, it uses conditional coloring to make directional changes easier to identify at a glance.
The tool is designed for clarity and adaptability, offering both column and line displays, with optional overbought, oversold, and midpoint guides.
How It Works
The script evaluates the oscillator’s value relative to a midpoint and its previous reading.
Depending on whether it’s above or below the midpoint — and whether it’s rising or falling — each column changes color:
Strong upward momentum (above midpoint and rising) → bright green
Fading upward momentum (above midpoint but falling) → pale green
Strong downward momentum (below midpoint and falling) → bright red
Fading downward momentum (below midpoint but rising) → pale red
Unchanged from the previous value → gray
This structure makes momentum shifts instantly visible without relying on line crossings or alerts.
Key Features
Color-coded momentum columns for instant visual interpretation
Adjustable midpoint, overbought, and oversold levels
Optional line overlay for smoother reference
Dynamic background highlighting in extreme zones
Works on any symbol or timeframe
Inputs Overview
Length: Controls the sensitivity of the oscillator calculation.
Source: Selects the price source (Close, HL2, etc.).
Midpoint Level: Defines the central reference level separating bullish and bearish momentum.
Show Line: Toggles visibility of the traditional line overlay.
Overbought / Oversold Levels: Define upper and lower boundaries for potential exhaustion zones.
How to Use
Add the script to your chart from the Indicators tab.
Adjust the midpoint and level settings to fit your preferred configuration.
Observe how column colors shift to reflect strength or weakness in momentum.
Use these transitions as visual context, not as trade signals.
How it Helps
This visual approach offers a clearer perspective on momentum dynamics by replacing the traditional single-line display with color-coded columns. The conditional coloring instantly reveals whether momentum is strengthening or weakening around a chosen midpoint, making trend shifts and fading pressure easier to interpret at a glance. It helps reduce visual noise and allows for quicker, more intuitive analysis of market behavior.
This tool is intended purely as a visual aid to help identify changing momentum conditions at a glance. It is not a buy or sell signal generator and should be used in combination with other forms of analysis and sound risk management.
⚠️ Disclaimer:
This script is provided for educational and informational purposes only. It is not financial advice and should not be considered a recommendation to buy, sell, or hold any financial instrument. Trading involves significant risk of loss and is not suitable for every investor. Users should perform their own due diligence and consult with a licensed financial advisor before making any trading decisions. The author does not guarantee any profits or results from using this script, and assumes no liability for any losses incurred. Use this script at your own risk.
Mythical EMAs + Dynamic VWAP BandThis indicator titled "Mythical EMAs + Dynamic VWAP Band." It overlays several volatility-adjusted Exponential Moving Averages (EMAs) on the chart, along with a Volume Weighted Average Price (VWAP) line and a dynamic band around it.
Additionally, it uses background coloring (clouds) to visualize bullish or bearish trends, with intensity modulated by the price's position relative to the VWAP.
The EMAs are themed with mythical names (e.g., Hermes for the 9-period EMA), but this is just stylistic flavoring and doesn't affect functionality.
I'll break it down section by section, explaining what each part does, how it works, and its purpose in the context of technical analysis. This indicator is designed for traders to identify trends, momentum, and price fairness relative to volume-weighted averages, with volatility adjustments to make the EMAs more responsive in volatile markets.
### 1. **Volatility Calculation (ATR)**
```pine
atrLength = 14
volatility = ta.atr(atrLength)
```
- **What it does**: Calculates the Average True Range (ATR) over 14 periods (a common default). ATR measures market volatility by averaging the true range (the greatest of: high-low, |high-previous close|, |low-previous close|).
- **Purpose**: This volatility value is used later to dynamically adjust the EMAs, making them more sensitive in high-volatility conditions (e.g., during market swings) and smoother in low-volatility periods. It helps the indicator adapt to changing market environments rather than using static EMAs.
### 2. **Custom Mythical EMA Function**
```pine
mythical_ema(src, length, base_alpha, vol_factor) =>
alpha = (2 / (length + 1)) * base_alpha * (1 + vol_factor * (volatility / src))
ema = 0.0
ema := na(ema ) ? src : alpha * src + (1 - alpha) * ema
ema
```
- **What it does**: Defines a custom function to compute a modified EMA.
- It starts with the standard EMA smoothing factor formula: `2 / (length + 1)`.
- Multiplies it by a `base_alpha` (a user-defined multiplier to tweak responsiveness).
- Adjusts further for volatility: Adds a term `(1 + vol_factor * (volatility / src))`, where `vol_factor` scales the impact, and `volatility / src` normalizes ATR relative to the source price (making it scale-invariant).
- The EMA is then calculated recursively: If the previous EMA is NA (e.g., at the start), it uses the current source value; otherwise, it weights the current source by `alpha` and the prior EMA by `(1 - alpha)`.
- **Purpose**: This creates "adaptive" EMAs that react faster in volatile markets (higher alpha when volatility is high relative to price) without overreacting in calm periods. It's an enhancement over standard EMAs, which use fixed alphas and can lag in choppy conditions. The mythical theme is just naming—functionally, it's a volatility-weighted EMA.
### 3. **Calculating the EMAs**
```pine
ema9 = mythical_ema(close, 9, 1.2, 0.5) // Hermes - quick & nimble
ema20 = mythical_ema(close, 20, 1.0, 0.3) // Apollo - short-term foresight
ema50 = mythical_ema(close, 50, 0.9, 0.2) // Athena - wise strategist
ema100 = mythical_ema(close, 100, 0.8, 0.1) // Zeus - powerful oversight
ema200 = mythical_ema(close, 200, 0.7, 0.05) // Kronos - long-term patience
```
- **What it does**: Applies the custom EMA function to the close price with varying lengths (9, 20, 50, 100, 200 periods), base alphas (decreasing from 1.2 to 0.7 for longer periods to make shorter ones more responsive), and volatility factors (decreasing from 0.5 to 0.05 to reduce volatility influence on longer-term EMAs).
- **Purpose**: These form a multi-timeframe EMA ribbon:
- Shorter EMAs (e.g., 9 and 20) capture short-term momentum.
- Longer ones (e.g., 200) show long-term trends.
- Crossovers (e.g., short EMA crossing above long EMA) can signal buy/sell opportunities. The volatility adjustment makes them "mythical" by adding dynamism, potentially improving signal quality in real markets.
### 4. **VWAP Calculation**
```pine
vwap_val = ta.vwap(close) // VWAP based on close price
```
- **What it does**: Computes the Volume Weighted Average Price (VWAP) using the built-in `ta.vwap` function, anchored to the close price. VWAP is the average price weighted by volume over the session (resets daily by default in Pine Script).
- **Purpose**: VWAP acts as a benchmark for "fair value." Prices above VWAP suggest bullishness (buyers in control), below indicate bearishness (sellers dominant). It's commonly used by institutional traders to assess entry/exit points.
### 5. **Plotting EMAs and VWAP**
```pine
plot(ema9, color=color.fuchsia, title='EMA 9 (Hermes)')
plot(ema20, color=color.red, title='EMA 20 (Apollo)')
plot(ema50, color=color.orange, title='EMA 50 (Athena)')
plot(ema100, color=color.aqua, title='EMA 100 (Zeus)')
plot(ema200, color=color.blue, title='EMA 200 (Kronos)')
plot(vwap_val, color=color.yellow, linewidth=2, title='VWAP')
```
- **What it does**: Overlays the EMAs and VWAP on the chart with distinct colors and titles for easy identification in TradingView's legend.
- **Purpose**: Visualizes the EMA ribbon and VWAP line. Traders can watch for EMA alignments (e.g., all sloping up for uptrend) or price interactions with VWAP.
### 6. **Dynamic VWAP Band**
```pine
band_pct = 0.005
vwap_upper = vwap_val * (1 + band_pct)
vwap_lower = vwap_val * (1 - band_pct)
p1 = plot(vwap_upper, color=color.new(color.yellow, 0), title="VWAP Upper Band")
p2 = plot(vwap_lower, color=color.new(color.yellow, 0), title="VWAP Lower Band")
fill_color = close >= vwap_val ? color.new(color.green, 80) : color.new(color.red, 80)
fill(p1, p2, color=fill_color, title="Dynamic VWAP Band")
```
- **What it does**: Creates a band ±0.5% around the VWAP.
- Plots the upper/lower bands with full transparency (color opacity 0, so lines are invisible).
- Fills the area between them dynamically: Semi-transparent green (opacity 80) if close ≥ VWAP (bullish bias), red if below (bearish bias).
- **Purpose**: Highlights deviations from VWAP visually. The color change provides an at-a-glance sentiment indicator—green for "above fair value" (potential strength), red for "below" (potential weakness). The narrow band (0.5%) focuses on short-term fairness, and the fill makes it easier to spot than just the line.
### 7. **Trend Clouds with VWAP Interaction**
```pine
bullish = ema9 > ema20 and ema20 > ema50
bearish = ema9 < ema20 and ema20 < ema50
bullish_above_vwap = bullish and close > vwap_val
bullish_below_vwap = bullish and close <= vwap_val
bearish_below_vwap = bearish and close < vwap_val
bearish_above_vwap = bearish and close >= vwap_val
bgcolor(bullish_above_vwap ? color.new(color.green, 50) : na, title="Bullish Above VWAP")
bgcolor(bullish_below_vwap ? color.new(color.green, 80) : na, title="Bullish Below VWAP")
bgcolor(bearish_below_vwap ? color.new(color.red, 50) : na, title="Bearish Below VWAP")
bgcolor(bearish_above_vwap ? color.new(color.red, 80) : na, title="Bearish Above VWAP")
```
- **What it does**: Defines trend conditions based on EMA alignments:
- Bullish: Shorter EMAs stacked above longer ones (9 > 20 > 50, indicating upward momentum).
- Bearish: The opposite (downward momentum).
- Sub-conditions combine with VWAP: E.g., bullish_above_vwap is true only if bullish and price > VWAP.
- Applies background colors (bgcolor) to the entire chart pane:
- Strong bullish (above VWAP): Green with opacity 50 (less transparent, more intense).
- Weak bullish (below VWAP): Green with opacity 80 (more transparent, less intense).
- Strong bearish (below VWAP): Red with opacity 50.
- Weak bearish (above VWAP): Red with opacity 80.
- If no condition matches, no color (na).
- **Purpose**: Creates "clouds" for trend visualization, enhanced by VWAP context. This helps traders confirm trends—e.g., a strong bullish cloud (darker green) suggests a high-conviction uptrend when price is above VWAP. The varying opacity differentiates signal strength: Darker for aligned conditions (trend + VWAP agreement), lighter for misaligned (potential weakening or reversal).
### Overall Indicator Usage and Limitations
- **How to use it**: Add this to a TradingView chart (e.g., stocks, crypto, forex). Look for EMA crossovers, price bouncing off EMAs/VWAP, or cloud color changes as signals. Bullish clouds with price above VWAP might signal buys; bearish below for sells.
- **Strengths**: Combines momentum (EMAs), volume (VWAP), and volatility adaptation for a multi-layered view. Dynamic colors make it intuitive.
- **Limitations**:
- EMAs lag in ranging markets; volatility adjustment helps but doesn't eliminate whipsaws.
- VWAP resets daily (standard behavior), so it's best for intraday/session trading.
- No alerts or inputs for customization (e.g., changeable lengths)—it's hardcoded.
- Performance depends on the asset/timeframe; backtest before using.
- **License**: Mozilla Public License 2.0, so it's open-source and modifiable.
G Position Size Calculator (Crypto)G Position Size Calculator (Crypto)
This tool helps traders quickly visualize and calculate risk, position size, leverage, and R:R ratio directly on the chart for crypto trading.
It works similarly to TradingView’s Long/Short Position tool but automatically computes all metrics based on your clicks.
⚙️ How to Use
Add to Chart
Click Indicators → My Scripts → G Position Size Calculator (Crypto)
Set Entry, Stop-Loss, and Take-Profit
Open the script’s ⚙️ Settings.
Click the crosshair icon next to Entry, then click on the chart.
Do the same for Stop-Loss and Take-Profit.
Adjust Account & Risk Settings
Enter your Account Size (USD).
Set your Risk % per trade (default: 1%).
Visual Feedback
A green box shows your profit zone (Entry → TP).
A red box shows your loss zone (Entry → SL).
The label on the right displays:
Risk (% and $)
R:R ratio
Position size (units)
Leverage required
Fine-Tune Without Re-clicking
Use the nudge inputs (Entry, Stop, TP) to move levels up/down by 1 tick at a time.
Positive = up, negative = down.
Re-pick Levels Anytime
Re-open settings and click the crosshair again to redefine a level.
📈 Features
Automatic calculation of risk, position size, leverage, and R:R ratio.
Visual green/red box representing profit and loss areas.
Adjustable risk %, account balance, and label offset.
“Nudge” controls to emulate quick drag adjustments.
Clean layout designed for crypto price charts (works on any symbol).
Leverage & Liquidations (Margins) Plotter - [SANIXLAB]Leverage & Liquidations (Margins) Plotter —
This indicator visualises liquidation zones across multiple leverage tiers and helps traders manage margin exposure .
It dynamically plots the liquidation ranges for 5x → 100x positions, highlighting where leveraged traders could get wiped out.
Add manual long / short markers , choose leverage and margin size, and the script calculates your exact liquidation prices — buffered for realism.
A clean control panel shows entries, liquidation levels, and percentage distance to liquidation.
Features
Visual leverage zones (5x → 100x)
Manual Long / Short marker system
Margin-based liquidation math with buffer
Toggleable entry & liq lines
Compact top-right control panel
Floating mid-zone leverage labels
Fully customizable colors
Use Case
Quickly see:
Where 10x / 20x traders get squeezed
How far your own trade can move before margin burn
Where cascading liquidations might begin
Perfect for futures & leverage traders who want to keep one eye on price … and the other on survival.
— MR.L ☕
Brewed with caffeine, coded with care.
Swing Points LiquiditySwing Points Liquidity
Unlock advanced swing detection and liquidity zone marking for smarter trading decisions.
Overview:
Swing Points Liquidity automatically identifies key swing highs and swing lows using a five-candle “palm” structure, marking each significant price turn with precise labels: “BSL swing high” for potential bearish liquidity and “SSL swing low” for potential bullish liquidity. This transparent swing logic provides a robust way to highlight areas where price is most likely to react—making it an invaluable tool for traders applying Smart Money Concepts, supply and demand, or liquidity-based strategies.
How It Works:
The indicator scans every candle on your chart to detect and label swing highs and lows.
A swing high (“BSL swing high”) is identified when a central candle’s high is greater than the highs of the previous two and next two candles.
A swing low (“SSL swing low”) is identified when a central candle’s low is lower than the lows of the previous two and next two candles.
Labels are plotted for every detected swing point, providing clear visualization of important market liquidity levels on any symbol and timeframe.
How to Use:
Liquidity levels marked by the indicator are potential price reversal zones. To optimize your entries, combine these levels with confirmation signals such as reversal candlestick patterns, order blocks, or fair value gaps (FVGs).
When you see a “BSL swing high” or “SSL swing low” label, observe the price action at that area—if a reliable reversal pattern or order block/FVG forms, it can signal a high-probability trade opportunity.
These marked liquidity swings are also excellent for locating confluence zones, setting stop losses, and identifying where institutional activity or smart money may trigger significant moves. Always use market structure and price action in conjunction with these levels for greater consistency and confidence in your trading.
Features:
Customizable label display for swing highs (BSL) and swing lows (SSL)
Automatic detection using robust 5-candle palm logic
Works with all symbols and chart timeframes
Lightweight, clear visual style—easy for manual and algorithmic traders
Notes:
The indicator requires at least two candles both before and after each swing point, so labels will start appearing after enough historical data is loaded.
For deeper historical analysis, simply scroll left or zoom out on your chart to load more candles—the indicator will automatically process and display swing points on all available data.
Matt Market EfficiencyThis is a custom Pine Script v5 indicator for TradingView that creates a Market Efficiency Heatmap as a background overlay on your chart. It visualizes how "efficient" the market's price movement is over a specified period—essentially measuring how much of the total price volatility (wiggle room) resulted in net directional progress, weighted with volume activity.
High efficiency (stronger, less transparent color) indicates a clean trend with minimal wasted movement (e.g., a strong uptrend or downtrend).
Low efficiency (fainter color) suggests choppy, inefficient price action (e.g., ranging or noisy market).
Color coding: Teal for bullish (net price up), Purple for bearish (net price down).
The heatmap intensity scales from 1% opacity (very low efficiency) to 25% opacity (high efficiency), making it subtle yet informative without overwhelming the chart.
SMA 10/20 Here are two simple moving averages that can help you see the underlying trend. These are the moving averages used by the famous trader Qullamagie
HTF Fibonacci on intraday ChartThis indicator plots Higher Timeframe (HTF) Fibonacci retracement levels directly on your intraday chart, allowing you to visualize how the current price action reacts to key retracement zones derived from the higher timeframe trend.
Concept
Fibonacci retracement levels are powerful tools used to identify potential support and resistance zones within a price trend.
However, these levels are often calculated on a higher timeframe (like Daily or Weekly), while most traders execute entries on lower timeframes (like 15m, 30m, or 1H).
This indicator bridges that gap — it projects the higher timeframe’s Fibonacci levels onto your current intraday chart, helping you see where institutional reactions or swing pivots might occur in real time.
How It Works
Select the Higher Timeframe (HTF)
You can choose which higher timeframe the Fibonacci structure is derived from — default is Daily.
Define the Lookback Period
The script looks back over the chosen number of bars on the higher timeframe to find the highest high and lowest low — the base for Fibonacci calculations.
Plots Key Fibonacci Levels Automatically:
0% (Low)
23.6%
38.2%
50.0%
61.8%
78.6%
100% (High)
Dynamic Labels
Each Fibonacci level is labelled on the latest bar, updating in real time as new data forms on the higher timeframe.
Best Used For
Intraday traders who want to align lower-timeframe entries with higher-timeframe structure.
Swing traders confirming price reactions around major Fibonacci retracement zones.
Contextual analysis for pullback entries, breakout confirmations, or retests of key levels.
Recommended Settings
Higher Timeframe: Daily (for intraday analysis)
Lookback: 50 bars (adjust based on volatility)
Combine with MACD, RSI, CPR, or Pivots for confluence.
License & Credits
Created and published for educational and analytical purposes.
Inspired by standard Fibonacci analysis practices.
Previous Day & Week High/Low LevelsPrevious Day & Week High/Low Levels is a precision tool designed to help traders easily identify the most relevant price levels that often act as strong support or resistance areas in the market. It automatically plots the previous day’s and week’s highs and lows, as well as the current day’s developing internal high and low. These levels are crucial reference points for intraday, swing, and even position traders who rely on price action and liquidity behavior.
Key Features
Previous Day High/Low:
The indicator automatically draws horizontal lines marking the highest and lowest prices from the previous trading day.
These levels are widely recognized as potential zones where the market may react again — either rejecting or breaking through them.
Previous Week High/Low:
The script also tracks and displays the high and low from the last completed trading week.
Weekly levels tend to represent stronger liquidity pools and broader institutional zones, which makes them especially important when aligning higher timeframe context with lower timeframe entries.
Internal Daily High/Low (Real-Time Tracking):
While the day progresses, the indicator dynamically updates the current day’s internal high and low.
This allows traders to visualize developing market structure, identify intraday ranges, and anticipate potential breakouts or liquidity sweeps.
Multi-Timeframe Consistency:
All levels — daily and weekly — remain visible across any chart timeframe, from 1 minute to 1 day or higher.
This ensures traders can maintain perspective and avoid losing track of key zones when switching views.
Customizable Visuals:
The colors, line thickness, and label visibility can be easily adjusted to match personal charting preferences.
This makes the indicator adaptable to any trading style or layout, whether minimalistic or detailed.
How to Use
Identify Key Reaction Zones:
Observe how price interacts with the previous day and week levels. Rejections, consolidations, or clean breakouts around these lines often signal strong liquidity areas or potential directional moves.
Combine with Market Structure or Liquidity Concepts:
The indicator works perfectly with supply and demand analysis, liquidity sweeps, order block strategies, or simply classic support/resistance techniques.
Scalping and Intraday Trading:
On lower timeframes (1m–15m), the daily levels help identify intraday turning points.
On higher timeframes (1h–4h or daily), the weekly levels provide broader context and directional bias.
Risk Management and Planning:
Using these levels as reference points allows for more precise stop placement, target setting, and overall trade management.
Why This Indicator Helps
Markets often react strongly around previous highs and lows because these zones contain trapped liquidity, pending orders, or institutional decision points.
By having these areas automatically mapped out, traders gain a clear and objective view of where price is likely to respond — without needing to manually draw lines every day or week.
Whether you’re a beginner still learning about price structure, or an advanced trader refining entries within liquidity zones, this tool simplifies the process and keeps your charts clean, consistent, and data-driven.
TASC 2025.11 The Points and Line Chart█ OVERVIEW
This script implements the Points and Line Chart described by Mohamed Ashraf Mahfouz and Mohamed Meregy in the November 2025 edition of the TASC Traders' Tips , "Efficient Display of Irregular Time Series”. This novel chart type interprets regular time series chart data to create an irregular time series chart.
█ CONCEPTS
When formatting data for display on a price chart, there are two main categorizations of chart types: regular time series (RTS) and irregular time series (ITS).
RTS charts, such as a typical candlestick chart, collect data over a specified amount of time and display it at one point. A one-minute candle, for example, represents the entirety of price movements within the minute that it represents.
ITS charts display data only after certain conditions are met. Since they do not plot at a consistent time period, they are called “irregular”.
Typically, ITS charts, such as Point and Figure (P&F) and Renko charts, focus on price change, plotting only when a certain threshold of change occurs.
The Points and Line (P&L) chart operates similarly to a P&F chart, using price change to determine when to plot points. However, instead of plotting the price in points, the P&L chart (by default) plots the closing price from RTS data. In other words, the P&L chart plots its points at the actual RTS close, as opposed to (price) intervals based on point size. This approach creates an ITS while still maintaining a reference to the RTS data, allowing us to gain a better understanding of time while consolidating the chart into an ITS format.
█ USAGE
Because the P&L chart forms bars based on price action instead of time, it displays displays significantly more history than a typical RTS chart. With this view, we are able to more easily spot support and resistance levels, which we could use when looking to place trades.
In the chart below, we can see over 13 years of data consolidated into one single view.
To view specific chart details, hover over each point of the chart to see a list of information.
In addition to providing a compact view of price movement over larger periods, this new chart type helps make classic chart patterns easier to interpret. When considering breakouts, the closing price provides a clearer representation of the actual breakout, as opposed to point size plots which are limited.
Because P&L is a new charting type, this script still requires a standard RTS chart for proper calculations. However, the main price chart is not intended for interpretation alongside the P&L chart; users can hide the main price series to keep the chart clean.
█ DISPLAYS
This indicator creates two displays: the "Price Display" and the "Data Display".
With the "Price display" setting, users can choose between showing a line or OHLC candles for the P&L drawing. The line display shows the close price of the P&L chart. In the candle display, the close price remains the same, while the open, high, and low values depend on the price action between points.
With the "Data display" setting, users can enable the display of a histogram that shows either the total volume or days/bars between the points in the P&L chart. For example, a reading of 12 days would indicate that the time since the last point was 12 days.
Note: The "Days" setting actually shows the number of chart bars elapsed between P&L points. The displayed value represents days only if the chart uses the "1D" timeframe.
The "Overlay P&L on chart" input controls whether the P&L line or candles appear on the main chart pane or in a separate pane.
Users can deactivate either display by selecting "None" from the corresponding input.
Technical Note: Due to drawing limitations, this indicator has the following display limits:
The line display can show data to 10,000 P&L points.
The candle display and tooltips show data for up to 500 points.
The histograms show data for up to 3,333 points.
█ INPUTS
Reversal Amount: The number of points/steps required to determine a reversal.
Scale size Method: The method used to filter price movements. By default, the P&L chart uses the same scaling method as the P&F chart. Optionally, this scaling method can be changed to use ATR or Percent.
P&L Method: The prices to plot and use for filtering:
“Close” plots the closing price and uses it to determine movements.
“High/Low” uses the high price on upside moves and low price on downside moves.
"Point Size" uses the closing price for filtration, but locks the price to plot at point size intervals.
Jensen Alpha RS🧠 Jensen Alpha RS (J-Alpha RS)
Jensen Alpha RS is a quantitative performance evaluation tool designed to compare multiple assets against a benchmark using Jensen’s Alpha — a classic risk-adjusted return metric from modern portfolio theory.
It helps identify which assets have outperformed their benchmark on a risk-adjusted basis and ranks them in real time, with optional gating and visual tools. 📊
✨ Key Features
• 🧩 Multi-Asset Comparison: Evaluate up to four assets simultaneously.
• 🔀 Adaptive Benchmarking: TOTALES mode uses CRYPTOCAP:TOTALES (total crypto market cap ex-stablecoins). Dynamic mode automatically selects the strongest benchmark among BTC, ETH, and TOTALES based on rolling momentum.
• 📐 Jensen’s Alpha Calculation: Uses rolling covariance, variance, and beta to estimate α, showing how much each asset outperformed its benchmark.
• 📈 Z-Score & Consistency Metrics: Z-Score highlights statistical deviations in alpha; Consistency % shows how often α has been positive over a chosen window.
• 🚦 Trend & Zero Gates: Optional filters that require assets to be above EMA (trend) and/or have α > 0 for confirmation.
• 🏆 Leaders Board Table: Displays α, Z, Rank, Consistency %, and Gate ✓/✗ for all assets in a clear visual layout.
• 🔔 Dynamic Alerts: Get notified whenever the top alpha leader changes on confirmed (non-repainting) data.
• 🎨 Visual Enhancements: Smooth α with an SMA or color bars by the current top-performing asset.
🧭 Typical Use Cases
• 🔄 Portfolio Rotation & Relative Strength: Identify which assets consistently outperform their benchmark to optimize capital allocation.
• 🧮 Alpha Persistence Analysis: Gauge whether a trend’s performance advantage is statistically sustainable.
• 🌐 Market Regime Insight: Observe how asset leadership rotates as benchmarks shift across market cycles.
⚙️ Inputs Overview
• 📝 Assets (1–4): Select up to four tickers for evaluation.
• 🧭 Benchmark Mode: Choose between static TOTALES or Dynamic auto-selection.
• 📏 Alpha Settings: Adjustable lookback, smoothing, and consistency windows.
• 🚦 Gates: Optional trend and alpha filters to refine results.
• 🖥️ Display: Enable/disable table and customize colors.
• 🔔 Alerts: Toggle notifications on leadership changes.
🔎 Formula Basis
Jensen’s Alpha (α) is estimated as:
α = E − β × E
where β = Cov(Ra, Rb) / Var(Rb), and Ra/Rb represent asset and benchmark returns, respectively.
A positive α indicates outperformance relative to the risk-adjusted benchmark expectation. ✅
⚠️ Disclaimer
This script is for educational and analytical purposes only.
It is NOT a signal. 🚫📉
It does not constitute financial advice, trading signals, or investment recommendations. 💬
The author is not responsible for any financial losses or trading decisions made based on this indicator. 🙏
Always perform your own analysis and use proper risk management. 🛡️
Logit RSI [AdaptiveRSI]The traditional 0–100 RSI scale makes statistical overlays, such as Bollinger Bands or even moving averages, technically invalid. This script solves this issue by placing RSI on an unbounded, continuous scale, enabling these tools to work as intended.
The Logit function takes bounded data, such as RSI values ranging from 0 to 100, and maps them onto an unbounded scale ranging from negative infinity (−∞) to positive infinity (+∞).
An RSI reading of 50 becomes 0 on the Logit scale, indicating a balanced market. Readings above 50 map to positive Logit values (price above Wilder’s EMA / RSI above 50), while readings below 50 map to negative values (price below Wilder’s EMA / RSI below 50).
For the detailed formula, which calculates RSI as a scaled distance from Wilder’s EMA, check the RSI
: alternative derivation script.
The main issue with the 0–100 RSI scale is that different lookback periods produce very different distributions of RSI values. The histograms below illustrate how often RSIs of various lengths spend time within each 5-point range.
On RSI(2), the tallest bars appear at the edges (0–5 and 95–100), meaning short-term RSI spends most of its time at the extremes. For longer lookbacks, the bars cluster around the center and rarely reach 70 or 30.
This behavior makes it difficult to generalize the two most common RSI techniques:
Fixed 70/30 thresholds: These overbought and oversold levels only make sense for short- or mid-range lookbacks (around the low teens). For very short periods, RSI spends most of its time above or below these levels, while for long-term lookbacks, RSI rarely reaches them.
Bollinger Bands (±2 standard deviations): When applied directly to RSI, the bands often extend beyond the 0–100 limits (especially for short-term lookbacks) making them mathematically invalid. While the issue is less visible on longer settings, it remains conceptually incorrect.
To address this, we apply the Logit Transform :
Logit RSI = LN(RSI / (100 − RSI))
The transformed data fits a smooth bell-shaped curve, allowing statistical tools like Bollinger Bands to function properly for the first time.
Why Logit RSI Matters:
Makes RSI statistically consistent across all lookback periods.
Greatly improves the visual clarity of short-term RSIs
Allows proper use of volatility tools (like Bollinger Bands) on RSI.
Replaces arbitrary 70/30 levels with data-driven thresholds.
Simplifies RSI interpretation for both short- and long-term analysis.
INPUTS:
RSI Length — set the RSI lookback period used in calculations.
RSI Type — choose between Regular RSI or Logit RSI .
Plot Bollinger Bands — ON/OFF toggle to overlay statistical envelopes around RSI or Logit RSI.
SMA and Standard Deviation Length — defines the lookback period for both the SMA (Bollinger Bands midline) and Standard Deviation calculations.
Standard Deviation Multiplier — controls the width of the Bollinger Bands (e.g., 2.0 for ±2σ).
While simple, the Logit transformation represents an unexplored yet powerful mathematically grounded improvement to the classic RSI.
It offers traders a structured, intuitive, and statistically consistent way to use RSI across all timeframes.
I welcome your feedback, suggestions, and code improvements—especially regarding performance and efficiency. Your insights are greatly appreciated.
CMF, RSI, CCI, MACD, OBV, Fisher, Stoch RSI, ADX (+DI/-DI)
Stoch RSINine indicators in one, CMF, RSI, CCI, MACD, OBV, Fisher, Stoch RSI, ADX (+DI/-DI) You can use whichever of the nine indicators you want. I use CFM, CCI, MACD, Stoch RSI.






















