Solar Cycle (SOLAR)SOLAR: SOLAR CYCLE
🔍 OVERVIEW AND PURPOSE
The Solar Cycle indicator is an astronomical calculator that provides precise values representing the seasonal position of the Sun throughout the year. This indicator maps the Sun's position in the ecliptic to a normalized value ranging from -1.0 (winter solstice) through 0.0 (equinoxes) to +1.0 (summer solstice), creating a continuous cycle that represents the seasonal progression throughout the year.
The implementation uses high-precision astronomical formulas that include orbital elements and perturbation terms to accurately calculate the Sun's position. By converting chart timestamps to Julian dates and applying standard astronomical algorithms, this indicator achieves significantly greater accuracy than simplified seasonal approximations. This makes it valuable for traders exploring seasonal patterns, agricultural commodities trading, and natural cycle-based trading strategies.
🧩 CORE CONCEPTS
Seasonal cycle integration: Maps the annual solar cycle (365.242 days) to a continuous wave
Continuous phase representation: Provides a normalized -1.0 to +1.0 value
Astronomical precision: Uses perturbation terms and high-precision constants for accurate solar position
Key points detection: Identifies solstices (±1.0) and equinoxes (0.0) automatically
The Solar Cycle indicator differs from traditional seasonal analysis tools by incorporating precise astronomical calculations rather than using simple calendar-based approximations. This approach allows traders to identify exact seasonal turning points and transitions with high accuracy.
⚙️ COMMON SETTINGS AND PARAMETERS
Pro Tip: While the indicator itself doesn't have adjustable parameters, it's most effective when used on higher timeframes (daily or weekly charts) to visualize seasonal patterns. Consider combining it with commodity price data to analyze seasonal correlations.
🧮 CALCULATION AND MATHEMATICAL FOUNDATION
Simplified explanation:
The Solar Cycle indicator calculates the Sun's ecliptic longitude and transforms it into a sine wave that peaks at the summer solstice and troughs at the winter solstice, with equinoxes at the zero crossings.
Technical formula:
Convert chart timestamp to Julian Date:
JD = (time / 86400000.0) + 2440587.5
Calculate Time T in Julian centuries since J2000.0:
T = (JD - 2451545.0) / 36525.0
Calculate the Sun's mean longitude (L0) and mean anomaly (M), including perturbation terms:
L0 = (280.46646 + 36000.76983T + 0.0003032T²) % 360
M = (357.52911 + 35999.05029T - 0.0001537T² - 0.00000025T³) % 360
Calculate the equation of center (C):
C = (1.914602 - 0.004817T - 0.000014*T²)sin(M) +
(0.019993 - 0.000101T)sin(2M) +
0.000289sin(3M)
Calculate the Sun's true longitude and convert to seasonal value:
λ = L0 + C
seasonal = sin(λ)
🔍 Technical Note: The implementation includes terms for the equation of center to account for the Earth's elliptical orbit. This provides more accurate timing of solstices and equinoxes compared to simple harmonic approximations.
📈 INTERPRETATION DETAILS
The Solar Cycle indicator provides several analytical perspectives:
Summer Solstice (+1.0): Maximum solar elevation, longest day
Winter Solstice (-1.0): Minimum solar elevation, shortest day
Vernal Equinox (0.0 crossing up): Day and night equal length, spring begins
Autumnal Equinox (0.0 crossing down): Day and night equal length, autumn begins
Transition rates: Steepest near equinoxes, flattest near solstices
Cycle alignment: Market cycles that align with seasonal patterns may show stronger trends
Confirmation points: Solstices and equinoxes often mark important seasonal turning points
⚠️ LIMITATIONS AND CONSIDERATIONS
Geographic relevance: Solar cycle timing is most relevant for temperate latitudes
Market specificity: Seasonal effects vary significantly across different markets
Timeframe compatibility: Most effective for longer-term analysis (weekly/monthly)
Complementary tool: Should be used alongside price action and other indicators
Lead/lag effects: Market reactions to seasonal changes may precede or follow astronomical events
Statistical significance: Seasonal patterns should be verified across multiple years
Global markets: Consider opposite seasonality in Southern Hemisphere markets
📚 REFERENCES
Meeus, J. (1998). Astronomical Algorithms (2nd ed.). Willmann-Bell.
Hirshleifer, D., & Shumway, T. (2003). Good day sunshine: Stock returns and the weather. Journal of Finance, 58(3), 1009-1032.
Hong, H., & Yu, J. (2009). Gone fishin': Seasonality in trading activity and asset prices. Journal of Financial Markets, 12(4), 672-702.
Bouman, S., & Jacobsen, B. (2002). The Halloween indicator, 'Sell in May and go away': Another puzzle. American Economic Review, 92(5), 1618-1635.
Cari dalam skrip untuk "港股央企红利etf"
Simple Volatility ConeThe Simple Volatility Cone indicator projects the potential future price range of a stock based on recent volatility. It calculates rolling standard deviation from log returns over a defined window, then uses a confidence interval to estimate the upper and lower bounds the price could reach over a future time horizon. These bounds are plotted directly on the chart, offset into the future, allowing traders to visualize expected price dispersion under a geometric Brownian motion assumption. This tool is useful for risk management, trade planning, and visualizing the potential impact of volatility.
Ehlers Ultimate Bands (UBANDS)UBANDS: ULTIMATE BANDS
🔍 OVERVIEW AND PURPOSE
Ultimate Bands, developed by John F. Ehlers, are a volatility-based channel indicator designed to provide a responsive and smooth representation of price boundaries with significantly reduced lag compared to traditional Bollinger Bands. Bollinger Bands typically use a Simple Moving Average for the centerline and standard deviations from it to establish the bands, both of which can increase lag. Ultimate Bands address this by employing Ehlers' Ultrasmooth Filter for the central moving average. The bands are then plotted based on the volatility of price around this ultrasmooth centerline.
The primary purpose of Ultimate Bands is to offer traders a clearer view of potential support and resistance levels that react quickly to price changes while filtering out excessive noise, aiming for nearly zero lag in the indicator band.
🧩 CORE CONCEPTS
Ultrasmooth Centerline: Employs the Ehlers Ultrasmooth Filter as the basis (centerline) for the bands, aiming for minimal lag and enhanced smoothing.
Volatility-Adaptive Width: The distance between the upper and lower bands is determined by a measure of price deviation from the ultrasmooth centerline. This causes the bands to widen during volatile periods and contract during calm periods.
Dynamic Support/Resistance: The bands serve as dynamic levels of potential support (lower band) and resistance (upper band).
🧮 CALCULATION AND MATHEMATICAL FOUNDATION
Ehlers' Original Concept for Deviation:
John Ehlers describes the deviation calculation as: "The deviation at each data sample is the difference between Smooth and the Close at that data point. The Standard Deviation (SD) is computed as the square root of the average of the squares of the individual deviations."
This describes calculating the Root Mean Square (RMS) of the residuals:
Smooth = UltrasmoothFilter(Source, Length)
Residuals = Source - Smooth
SumOfSquaredResiduals = Sum(Residuals ^2) for i over Length
MeanOfSquaredResiduals = SumOfSquaredResiduals / Length
SD_Ehlers = SquareRoot(MeanOfSquaredResiduals) (This is the RMS of residuals)
Pine Script Implementation's Deviation:
The provided Pine Script implementation calculates the statistical standard deviation of the residuals:
Smooth = UltrasmoothFilter(Source, Length) (referred to as _ehusf in the script)
Residuals = Source - Smooth
Mean_Residuals = Average(Residuals, Length)
Variance_Residuals = Average((Residuals - Mean_Residuals)^2, Length)
SD_Pine = SquareRoot(Variance_Residuals) (This is the statistical standard deviation of residuals)
Band Calculation (Common to both approaches, using their respective SD):
UpperBand = Smooth + (NumSDs × SD)
LowerBand = Smooth - (NumSDs × SD)
🔍 Technical Note: The Pine Script implementation uses a statistical standard deviation of the residuals (differences between price and the smooth average). Ehlers' original text implies an RMS of these residuals. While both measure dispersion, they will yield slightly different values. The Ultrasmooth Filter itself is a key component, designed for responsiveness.
📈 INTERPRETATION DETAILS
Reduced Lag: The primary advantage is the significant reduction in lag compared to standard Bollinger Bands, allowing for quicker reaction to price changes.
Volatility Indication: Widening bands indicate increasing market volatility, while narrowing bands suggest decreasing volatility.
Overbought/Oversold Conditions (Use with caution):
• Price touching or exceeding the Upper Band may suggest overbought conditions.
• Price touching or falling below the Lower Band may suggest oversold conditions.
Trend Identification:
• Price consistently "walking the band" (moving along the upper or lower band) can indicate a strong trend.
• The Middle Band (Ultrasmooth Filter) acts as a dynamic support/resistance level and indicates the short-term trend direction.
Comparison to Ultimate Channel: Ehlers notes that the Ultimate Band indicator does not differ from the Ultimate Channel indicator in any major fashion.
🛠️ USE AND APPLICATION
Ultimate Bands can be used similarly to how Keltner Channels or Bollinger Bands are used for interpreting price action, with the main difference being the reduced lag.
Example Trading Strategy (from John F. Ehlers):
Hold a position in the direction of the Ultimate Smoother (the centerline).
Exit that position when the price "pops" outside the channel or band in the opposite direction of the trade.
This is described as a trend-following strategy with an automatic following stop.
⚠️ LIMITATIONS AND CONSIDERATIONS
Lag (Minimized but Present): While significantly reduced, some minimal lag inherent to averaging processes will still exist. Increasing the Length parameter for smoother bands will moderately increase this lag.
Parameter Sensitivity: The Length and StdDev Multiplier settings are key to tuning the indicator for different assets and timeframes.
False Signals: As with any band indicator, false signals can occur, particularly in choppy or non-trending markets.
Not a Standalone System: Best used in conjunction with other forms of analysis for confirmation.
Deviation Calculation Nuance: Be aware of the difference in deviation calculation (statistical standard deviation vs. RMS of residuals) if comparing directly to Ehlers' original concept as described.
📚 REFERENCES
Ehlers, J. F. (2024). Article/Publication where "Code Listing 2" for Ultimate Bands is featured. (Specific source to be identified if known, e.g., "Stocks & Commodities Magazine, Vol. XX, No. YY").
Ehlers, J. F. (General). Various publications on advanced filtering and cycle analysis. (e.g., "Rocket Science for Traders", "Cycle Analytics for Traders").
Prev Day High/Low - RTH OnlyThis indicator displays the previous day’s Regular Trading Hours (RTH) high and low levels on your chart, but only during the next day’s RTH session — keeping your charts clean while highlighting the most relevant price zones.
🔧 Features:
RTH Timing: 09:30 to 16:00 (New York time)
Auto-Detection: Automatically tracks the high and low of each RTH session
Next-Day Visibility: Lines are only shown during the following day’s RTH session
Minimal Chart Clutter: Levels disappear after the session ends, keeping focus on what's relevant
Clear Labels: Optional “Prev High” and “Prev Low” markers at market open
📊 Use Case:
Perfect for intraday and 0DTE options traders who rely on prior session key levels for:
Breakout trades
Reversal setups
Support/resistance confluence
These levels are often respected by institutions and algo flows, making them highly actionable when approached in the next RTH session.
🧠 Why This Matters:
Many traders overpopulate their charts with persistent support/resistance lines. This script keeps only what’s essential — the previous day’s RTH range — and only when it matters most: the following day’s active market hours.
Intraday Fibs RetracementFibonacci (Fibs) levels are often used by traders as a way to find support and resistance, based on the Fibonacci sequence. These levels are widely used in technical analysis to identify potential reversal points in the price of an asset.
Fibs retracement draws lines at these Fibs level between a significant high and low point on a price chart.
What it shows:
This indicator will automatically draw Fibs Retracement Levels on your chart without any manual work.
It is designed to be used for day trading, especially in scenarios where a ticker gaps up/down large compared to the prior day close. (i.e. scenario where the difference of day's open and prior day close is large)
The drawing will happen on each trading day the moment trading hours open, and will NOT draw during pre-market and post-market.
User can see the line of each Fibs level, labelled with the Fib percentage and price value for the corresponding levels.
User will specify a start and end point of Fibs and based on the choice the indicator will automatically compute the other user defined Fibs levels and display on the chart.
How to use it:
The Fib levels drawn can be a potential support and resistance zone. Therefore in scenario where you already have a position and are approaching one of these levels it could be a point to close out some or all the position as you are approaching a resistance. On the other hand when price do approach these levels you could enter a position for a reversal trade. These are few ways to use the indicator but there are other ways that can be used, which can be found out by researching "Fibonacci (Fibs) Retracement".
In the example on the chart you can see a price bounce from the 0.7886 Fibs level on this particular day, where the price gapped up and was coming down after market hours opened.
Key settings:
1. Fibs Retracement Start and end Point: User selects where the Fibs levels should be drawn.
Available Options are:
Start Points:
Market Open
Market Open High (Dependent on the time frame you are on)
Pre-market High
Day's High
End Points:
Previous Day Close
Previous Day Low
Previous Day High
Pre-market Low (Current Day)
Day's Low
2. Custom Fib Levels: User can manually enter the Fib levels they want to see. (Max 9)
Default values are: 0,0.236,0.382,0.5,0.618,0.786,1,1.618,2.618.
3. Display settings: User can specify the line colour, thickness and style.
4. Label Setting: User can choose to turn on/off the labels for the each Fibs Level. Label will show the fib percentage and the corresponding price. User can also choose the location of the labels, defined by an offset from the current candle.
----------------------------------------------------------------------
If anything is not clear please let me know!
Position Size Calculator (Fixed % or ATR-based Stop Support)Position Size Calculator (Fixed % or ATR-based Stop Support)
Purpose and Background
This indicator allows traders to calculate appropriate position sizes directly on the chart, based on a key rule:
“What percentage of your capital are you willing to risk per trade?”
While many traders focus on entries and indicators, position sizing and risk allocation are often overlooked.
This tool visualizes and simplifies the “1% risk rule” promoted by IBD (Investor’s Business Daily) and William J. O’Neil, helping both beginners and experienced traders maintain disciplined capital management.
Key Features
Automatically calculates and displays:
・ Position Size
The number of units (shares, contracts, coins) you can hold based on your stop-loss range and risk allowance.
・ Stop Price
The price level at which your stop-loss would be triggered.
・ Risk Amount
The maximum loss per trade based on your portfolio size and risk percentage.
Two stop-loss modes available:
・ Fixed % Mode
O’Neil suggests using up to 8% stop-loss in uptrends and keeping it tighter (around 4%) in corrections. This mode allows flexible manual settings.
・ ATR-Based Mode
Uses the asset’s average volatility to dynamically calculate stop-loss width using the Average True Range (ATR).
ATR Usage and Recommended Settings
ATR helps you avoid noise-based stop-outs and align your risk with market volatility.
There are two parameters you can adjust:
・ ATR Length
Defines how many bars are used to calculate the average range.
・Shorter values (5–10) respond faster for day trades
・Longer values (14–21) offer smoother ranges for swing/position trades(Default is 14)
・ATR Multiplier
Sets how wide the stop-loss is by multiplying the ATR value:
・Day trading: 1.0–1.5×
・Swing trading: 1.5–2.5×
・Position trading: 2.0–3.0×
Practical Examples: Risk % × Stop-Loss % → Max Positions
This tool helps estimate how many positions you can hold in a portfolio based on your risk per trade and stop width.
Examples:
・Risk 0.5%, Stop 8% → Max 16 positions
・Risk 0.5%, Stop 4% → Max 8 positions
・Risk 1.0%, Stop 8% → Max 8 positions
・Risk 1.0%, Stop 4% → Max 4 positions
・Risk 2.0%, Stop 8% → Max 4 positions
・Risk 2.0%, Stop 4% → Max 2 positions
These assume worst-case scenarios where all positions are stopped out simultaneously within your overall portfolio risk limit.
Display & Customization Options
・ Currency Display: USD or JPY
No currency conversion is applied. Select based on your trading region (e.g., USD for U.S. stocks, JPY for Japanese stocks).
Support for additional currencies can be added upon request.
・ Show/Hide Decimal Places
Toggle decimals for better visibility. Ideal for fractional assets like crypto and CFDs.
・ Position of Output
Choose from top-right, middle-right, or bottom-right on the chart.
・ Text Display Size: Large / Normal / Small
Choose the table size that best suits your viewing preferences.
・ Explanation of Displayed Labels
・ Position Size : Units to buy/sell based on risk
・ Stop Price : Price where stop-loss is triggered
・ Risk Amount : Max loss allowed for the trade
How to Use
1、Set your Portfolio Size
2、Choose your Currency (USD or JPY)
3、Input Risk per Trade (%) (e.g., 1%)
4、Select Stop Loss Method
・ Fixed % : Enter a manual stop-loss percent (e.g., 8%)
・ ATR : Then also enter:
・ ATR Length : Number of bars used to calculate ATR (e.g., 14)
・ ATR Multiplier : Factor applied to ATR to determine stop-loss (e.g., 2.0)
5、Adjust decimals, label position, or text size as needed
6、The result is displayed in a table directly on your chart
Notes
・ Uses the current close price (close) as the basis
Real-time bid/ask data isn't available in Pine Script, so the close price is used for consistent results.
・ No buy/sell signals are generated
This tool is for position sizing and risk calculation only, not trade entries.
Recommended For
・Traders who want precise, rule-based position sizing
・Users following IBD or O’Neil’s 1% risk principle
・Those incorporating ATR for stop-loss strategies
・Multi-asset traders (stocks, crypto, CFDs, etc.)
・ Anyone who wants to calculate position size and risk without using a calculator or external tool—fully inside TradingView
The Traders Support & Resistance LevelsThis script automatically detects pivot-based support and resistance levels and draws dynamic trendlines based on recent price action.
🔹 Support & Resistance Levels
Pivot points are calculated using customizable left/right bar logic. A pivot high (or low) is confirmed when leftBars candles to the left and rightBars candles to the right are lower (or higher).
Triangles are plotted when a level is confirmed:
🔻 🟡 Yellow Down Triangle = Confirmed Resistance
🔺 🟣 Purple Up Triangle = Confirmed Support
Lines are drawn at confirmed levels.
If enough lines are confirmed, the oldest one is converted into a zone using a thick, semi-transparent line.
🔹 Trendline Logic
Trendlines are drawn between the last two support points (for uptrend) and last two resistance points (for downtrend).
The slope and price relationship determine trend strength, visualized by color:
Condition Color Meaning
Uptrend + Price Above + Steep 🟨 Yellow Strong Uptrend
Uptrend + Price Above 🔷 Blue Weak Uptrend
Downtrend + Price Below + Steep 💗 Fuchsia Strong Downtrend
Downtrend + Price Below 🟣 Purple Weak Downtrend
Otherwise ⚪️ Gray Neutral / No Trend
⚙️ Customizable Inputs
leftBars, rightBars: Adjust sensitivity of pivot detection
previewBars: Show early "draft" lines before confirmation
volumeThresh: Reserved for future enhancements
VWAP Predictive Breakout + RSI + OB + Trend/Chop📈 VWAP Predictive Breakout + RSI + Order Blocks + Trend/Chop Filter
This multi-layered day trading and scalping tool is designed to predict price direction after a VWAP breakout, rather than react to it. It combines volume, RSI, candlestick structure, order blocks, and trend/chop analysis to improve the accuracy of intraday signals.
🔍 Core Features
VWAP Predictive Breakout
Signals are generated when price breaks above/below VWAP with strength (volume spike + strong candle body), supported by trend confirmation.
RSI Momentum Filter
Uses RSI divergence behavior to validate breakouts, filtering out weak or exhausted moves.
Order Block Detection
Marks bullish and bearish engulfing patterns and checks for proximity to these zones as confirmation for breakouts.
Trend vs Chop Detection
Uses ADX, ATR, EMA distance, Bollinger Band width, and candlestick cleanliness to dynamically identify whether the market is trending or choppy.
Clean Candle Behavior
Filters out noisy or indecisive candles by analyzing wick-to-body ratio and ATR-based body size.
📌 Visual Markers
🟢 Buy Signal: Green triangle below bar
🔴 Sell Signal: Red triangle above bar
🟢⚪ Bullish Order Block: Green circle
🔴⚪ Bearish Order Block: Red circle
🟩 Trending Background: Light green
🟥 Choppy Background: Light red
🛎 Alerts Included
Long signal: VWAP breakout + RSI + Order Block + Clean Candle
Short signal: VWAP breakdown + RSI + Order Block + Clean Candle
🧠 Best Use Cases
Scalping high-probability VWAP reversals or continuations
Day trading in markets where trend clarity is critical
Filtering noise in sideways conditions using real-time chop detection
Context MTF [Th16rry]Context MTF
A multi-timeframe trend context indicator that overlays an Exponential Moving Average (EMA) and a Weighted Moving Average (WMA) whose look-back periods adapt automatically to your chart’s timeframe. Inspired by Mike Bellafore and Brian Shannon (Multi timeframe analysis)
🔍 Overview
Context MTF helps you quickly gauge the prevailing trend and its strength by plotting two complementary moving averages in a single view:
* EMA (solid line) for smooth, responsive trend direction
* WMA (dotted line) for emphasis on recent price action
By automatically selecting period lengths that reflect meaningful market cycles, Context MTF provides intuitive context at a glance:
| Timeframe | Period | Market Cycle Represented |
| :--------: | :----: | :----------------------: |
| Daily (D) | 63 | Quarterly trend |
| Weekly (W) | 52 | Yearly trend |
| 1H (60) | 126 | Monthly trend |
| 15m (15) | 130 | Weekly trend |
| 5m (5) | 78 | Last 24 hours |
⚙️ How It Works
1. Automatic Period Selection
The script detects your chart’s timeframe and applies the appropriate look-back for both EMA and WMA.
2. Solid vs. Dotted
* EMA is drawn as a continuous solid line.
* WMA is rendered as a dotted line of the same color, highlighting short-term momentum within the broader trend.
3. Visual Trend Context
* Widening Gap : Indicates strengthening trend momentum.
* Convergence/Overlap : Suggests a market in consolidation or range.
🎯 Benefits
* Multi-Timeframe Context in a single pane—no need to switch charts.
* Instant trend strength assessment by comparing EMA vs. WMA divergence.
* Clear identification of range conditions when averages align.
* Fully automated period adjustment —set and forget.
⚙️ Settings
* Color : Shared color for both lines (default blue).
* Line Width : Adjustable via script inputs (default 2).
* Dotted WMA : Simulated using built-in dotted line styling for precise rendering.
Use Context MTF to enhance trend-based strategies, confirm breakout momentum, or filter ranging markets. Ideal for swing traders, day traders, and anyone who values clear, time-aligned trend information on every timeframe.
Daily Average 5m Candle SizeThis indicator measures the average size of each 5 min candle then works out the end of day average for you. Very important for profit targets and stops
5-Min Candle Ranges (Last 1000)Average candle size for 1000 candles. This indicators looks at the volatility of candles and averages the size of the candles.
Market Sentiment Index US Top 40 [Pt]▮Overview
Market Sentiment Index US Top 40 [Pt} shows how the largest US stocks behave together. You pick one simple measure—High Low breakouts, Above Below moving average, or RSI overbought/oversold—and see how many of your chosen top 10/20/30/40 NYSE or NASDAQ names are bullish, neutral, or bearish.
This tool gives you a quick view of broad-market strength or weakness so you can time trades, confirm trends, and spot hidden shifts in market sentiment.
▮Key Features
► Three Simple Modes
High Low Index: counts stocks making new highs or lows over your lookback period
Above Below MA: flags stocks trading above or below their moving average
RSI Sentiment: marks overbought or oversold stocks and plots a small histogram
► Universe Selection
Top 10, 20, 30, or 40 symbols from NYSE or NASDAQ
Option to weight by market cap or treat all symbols equally
► Timeframe Choice
Use your chart’s timeframe or any intraday, daily, weekly, or monthly resolution
► Histogram Smoothing
Two optional moving averages on the sentiment bars
Markers show when the faster average crosses above or below the slower one
► Ticker Table
Optional on-chart table showing each ticker’s state in color
Grid or single-row layout with adjustable text size and color settings
▮Inputs
► Mode and Lookback
Pick High Low, Above Below MA, or RSI Sentiment
Set lookback length (for example 10 bars)
If using Above Below MA, choose the moving average type (EMA, SMA, etc.)
► Universe Setup
Market: NYSE or NASDAQ
Number of symbols: 10, 20, 30, or 40
Weights: on or off
Timeframe: blank to match chart or pick any other
► Moving Averages on Histogram
Enable fast and slow averages
Set their lengths and types
Choose colors for averages and markers
► Table Options
Show or hide the symbol table
Select text size: tiny, small, or normal
Choose layout: grid or one-row
Pick colors for bullish, neutral, and bearish cells
Show or hide exchange prefixes
▮How to Read It
► Sentiment Bars
Green means bullish
Red means bearish
Near zero means neutral
► Zero Line
Separates bullish from bearish readings
► High Low Line (High Low mode only)
Smooth ratio of highs versus lows over your lookback
► MA Crosses
Fast MA above slow MA hints rising breadth
Fast MA below slow MA hints falling breadth
► Ticker Table
Each cell colored green, gray, or red for bull, neutral, or bear
▮Use Cases
► Confirm Market Trends
Early warning when price makes highs but breadth is weak
Catch rallies when breadth turns strong while price is flat
► Spot Sector Rotation
Switch between NYSE and NASDAQ to see which group leads
Watch tech versus industrial breadth to track money flow
► Filter Trade Signals
Enter longs only when breadth is bullish
Consider shorts when breadth turns negative
► Combine with Other Indicators
Use RSI Sentiment with trend tools to spot overextended moves
Add volume indicators in High Low mode for breakout confirmation
► Timeframe Analysis
Daily for big-picture bias
Intraday (15-min) for precise entries and exits
ADR & ATR OverlayADR & ATR Overlay
This indicator will display the following as an overlay on your chart:
ADR
% of ADR
ADR % of Price
ATR
% of ATR
ATR % of Price
Description:
ADR : Average Day Range
% of ADR : Percentage that the current price move has covered its average.
ADR % of Price : The percentage move implied by the average range.
ATR : Average True Range
% of ATR : Percentage that the current price move has covered its average.
ATR % of Price : The percentage move implied by the average true range.
Options:
Time Frame
Length
Smoothing
Enable or Disable each value
Text Color
Background Color
How to use this indicator:
The ADR and ATR can be used to provide information about average price moves to help set targets, stop losses, entries and exits based on the potential average moves.
Example: If the "% of ADR" is reading 100%, then 100% of the asset's average price range has been covered, suggesting that an additional move beyond the range has a lower probability.
Example: "ADR % of Price" provides potential price movement in percentage which can be used to asses R/R for asset.
Example: ADR (D) reading is 100% at market close but ATR (D) is at 70% at close. This suggests that there is a potential move of 30% in Pre/Post market as suggested by averages.
Notes:
These indicators are available as oscillators to place under your chart through trading view but this indicator will place them on the chart in numerical only format.
Please feel free to modify this script if you like but please acknowledge me, I am only a hobby coder so this takes some time & effort.
Relative Directional Volume Indicator# Relative Directional Volume Indicator (RelDirVol)
## Overview
The Relative Directional Volume Indicator (RelDirVol) is a powerful volume analysis tool that measures current trading volume relative to historical volume while differentiating between bullish and bearish volume flows. This indicator helps traders identify unusual volume activity and determine whether it's coming from buyers or sellers, providing deeper insights into market participation and potential trend strength.
## Features
- **Relative Volume Calculation**: Compares current volume to historical averages
- **Directional Volume Analysis**: Separates and visualizes bullish vs bearish volume
- **Multiple Moving Average Options**: Customize smoothing with various MA types (SMA, EMA, WMA, HMA, VWMA)
- **Split Moving Averages**: View distinct moving averages for bullish and bearish volume flows
- **Reference Lines**: Visual guides for normal volume (1.0x) and key deviation levels (0.5x, 2.0x, 3.0x)
- **Customizable Colors**: Adjust visual appearance for improved chart readability
## How It Works
The indicator calculates the relative volume by dividing the current bar's volume by the average volume over a specified lookback period. It then categorizes this volume as either bullish (when price closes above the open) or bearish (when price closes below or equal to the open).
1. **Relative Volume**: Current volume ÷ Average volume from previous N bars
2. **Directional Classification**: Assigns volume to bullish or bearish categories based on price action
3. **Moving Averages**: Applies user-selected moving average to smooth the data
The result is displayed as color-coded histogram bars showing the relative volume magnitude, with optional moving average lines for both overall and direction-specific volume trends.
## Interpretation
### Volume Magnitude
- **Above 1.0**: Higher than average volume (more participation than normal)
- **Below 1.0**: Lower than average volume (less participation than normal)
- **2.0+**: Volume twice the normal level (significant participation)
- **3.0+**: Volume three times normal (exceptional participation, often at key events)
### Directional Analysis
- **Strong Green Bars**: Heavy bullish participation driving prices up
- **Strong Red Bars**: Heavy bearish participation driving prices down
- **Bullish MA > Bearish MA**: Overall buying pressure dominating
- **Bearish MA > Bullish MA**: Overall selling pressure dominating
### Key Signals
- **Volume Spikes with Price Breakouts**: Confirms strength of the move
- **Divergence Between MAs**: Early warning of potential shift in market control
- **Sustained Above-Average Volume**: Strong trend continuation likely
- **Volume Decline After Spike**: Potential exhaustion of trend
## Settings
- **Relative Volume Lookback**: Comparison period for average volume (default: 20)
- **Moving Average Type**: Method used for smoothing (default: SMA)
- **Moving Average Length**: Smoothing period (default: 5)
- **Show Moving Average**: Toggle overall volume MA visibility
- **Show Baseline**: Toggle 1.0 reference line visibility
- **Show Bullish/Bearish MAs**: Toggle direction-specific MA visibility
## Best Practices
This indicator performs best when combined with price action analysis and other indicators. Look for:
1. Volume confirmation of breakouts and trend changes
2. Divergence between price movement and volume direction
3. Shifts in the relationship between bullish and bearish MAs
4. Unusual volume patterns during consolidation phases
Particularly effective for swing trading, day trading, and identifying institutional participation in market moves across multiple timeframes.
Volumetric Pivot Echo🔮 Volumetric Pivot Echo (VPE)
Future Price Projection Zones with Confidence Scoring
📘 Overview
The Volumetric Pivot Echo (VPE) is a next-generation leading indicator that identifies high-volume reversal points and echoes their price + time behavior into the future — giving you a visual forecast box that includes a confidence score, price range, and duration estimate.
It’s designed for swing and options traders who want forward guidance based on real structure, not just reactive signals.
⚙️ How It Works
Pivot Detection – Finds pivot highs/lows based on configurable bar structure.
Volume Confirmation – Only confirms pivots backed by strong volume (e.g., 1.5× average).
Echo Logic – Measures the price move and time it took to reach the pivot.
ATR Scaling – Adjusts projections based on current market volatility.
Confidence Score – Rates each projection (0–100%) based on structure match, volatility, and direction alignment.
📦 What Appears on Chart
Projection Box:
A forward-drawn rectangle from the current bar to the estimated future zone. The box's size and duration mirror the last valid momentum leg.
Box Label Text:
🔹 Range (projected move size)
⏱️ Duration (bars expected)
✅ Confidence %
VPH/VPL Markers:
Pivot highs and lows confirmed by volume, marked with “VPH” or “VPL”.
🎯 How to Trade with It
Use the box as a target zone for directional trades.
If price enters a box with >85% confidence, consider it a high-quality path projection.
Use with support/resistance confluence or entry systems.
Works especially well for swing trading, breakout setups, or options targeting.
🛠️ Recommended Settings
Box Transparency: Set Projection Up/Down Color to 90 (10% visible).
Text Color: Set to white for readability.
Volume Multiplier: Default 1.5x, increase in choppy markets.
Projection Duration: Start with 1.0x echo multiplier and fine-tune.
⏳ Timeframes & Accuracy
Timeframe Confidence Zones Most Reliable
15m – 1h Use 70–85% confidence scores
1h – 4h Sweet spot for balanced signals
1D – 1W Strongest historical echo tracking (>85% ideal)
✅ Key Features
Forward-looking, non-repainting logic
Clear visual projections — no guesswork
Confidence scoring built-in
ATR-adjusted — adapts to volatility
Works on any asset (stocks, crypto, FX)
🧠 Why It’s Unique
This is not a lagging oscillator or classic trend-following tool.
It’s a leading structure projection model — combining pivot behavior, volume intensity, and market volatility to sketch forward “echo zones” based on the past.
ETI IndicatorThe Ensemble Technical Indicator (ETI) is a script that combines multiple established indicators into one single powerful indicator. Specifically, it takes a number of technical indicators and then converts them into +1 to represent a bullish trend, or a -1 to represent a bearish trend. It then adds these values together and takes the running sum over the past 20 days.
The ETI is composed of the following indicators and converted to +1 or -1 using the following criteria:
Simple Moving Average (10 days) : When the price is above the 10-day simple moving averaging, +1, when below -1
Weighted Moving Average (10 days) : Similar to the SMA 10, when the the price is above the 10-day weighted moving average, +1, when below -1
Stochastic K% : If the current Stochastic K% is greater than the previous value, then +1, else -1.
Stochastic D% : Similar to the Stochastic K%, when the current Stochastic D% is greater than the previous value, +1, else -1.
MACD Difference : First subtract the MACD signal (i.e. the moving average) from the MACD value and if the current value is higher than the previous value, then +1, else -1.
William's R% : If the current William's R% is greater than the previous one, then +1, else -1.
William's Accumulation/Distribution : If the current William's AD value is greater than the previous value, then +1, else -1.
Commodity Channel Index : If the Commodity Channel Index is greater than 200 (overbought), then -1, if it is less than -200 (oversold) then +1. When it is between those values, if the current value is greater than the previous value then +1, else -1.
Relative Strength Index : If the Relative Strength Index is over 70 (overbought) then -1 and if under 30 (oversold) then +1. If the Relative Strength Indicator is between those values then if the current value is higher than the previous value +1, else -1.
Momentum (9 days) : If the momentum value is greater than 0, then +1, else -1.
Again, once these values have been calculated and converted, they are added up to produce a single value. This single value is then summed across the previous 20 candles to produce a running sum.
By coalescing multiple technical indicators into a single value across time, traders can better understand how multiple inter-related indicators are behaving at once; high scores indicate that numerous indicators are showing bullish signals indicating a potential or ongoing uptrend (and vice-versa with low scores).
Additional Features
Numerous smoothing transformations have also been added (e.g. gaussian smoothing) to remove some of the noise might exist.
Suggested Use
It is recommended that stocks are shorted when the cross below 0, and are bought when the ETI crosses above -40. Arrows can be shown on the indicator to show these points. However feel free to use levels that work best for you.
Traditionally, I have treated values above +50 as overbought and below -40 as undersold (with -80 indicating extremely oversold); however these levels could also indicate either upwards and downwards momentum so taking a position based on where the ETI is (rather than crossing levels) should be done with caution.
Gamma + Fibonacci EMA Bands# Gamma + Fibonacci EMA Bands
## Overview
The Gamma + Fibonacci EMA Bands indicator combines two powerful analytical approaches: Gamma-weighted Exponential Moving Averages and Fibonacci sequence-based standard EMAs. This dual system creates a comprehensive "band" structure that helps identify trend direction, strength, and potential reversal zones with greater precision than single moving average systems.
## Features
- **Gamma-weighted EMAs**: Three customizable Gamma EMAs (fast-responding) with adjustable gamma parameters
- **Fibonacci Sequence EMAs**: Six standard EMAs based on the Fibonacci sequence (34, 55, 89, 144, 233, 377)
- **Visual Band Structure**: Color-coded for instant visual analysis
- **Trend Confirmation**: Multiple timeframe validation through varied moving average periods
- **Support/Resistance Identification**: Natural price reaction zones highlighted by EMA confluences
## How It Works
The indicator uses two complementary EMA systems:
1. **Gamma EMAs** (γ-EMAs) - These responsive moving averages use a direct gamma weighting factor (between 0-1) rather than a period length. Lower gamma values create smoother lines, while higher values create more responsive ones. These react quickly to price changes and serve as short-term trend indicators.
2. **Fibonacci EMAs** - These traditional EMAs use period lengths based on the Fibonacci sequence (34, 55, 89, 144, 233, 377). They provide longer-term trend context and naturally identify key support/resistance levels that align with market psychology.
## Interpretation
### Trend Direction
- When price is above all bands: Strong bullish trend
- When price is below all bands: Strong bearish trend
- When price is between bands: Consolidation or trend transition
### Support/Resistance
- Gamma EMAs (purple shades): Short-term dynamic support/resistance
- Fibonacci EMAs (orange/red shades): Stronger, longer-term support/resistance
### Trend Strength
- Wider band separation: Stronger trend momentum
- Compressed bands: Consolidation or trend weakness
### Reversal Signals
- Price breaking through multiple bands: Potential trend reversal
- Gamma EMAs crossing Fibonacci EMAs: Changing momentum
## Settings
- **Source**: Price data source (default: close)
- **Gamma 1**: Fast γ-EMA value (default: 0.2)
- **Gamma 2**: Medium γ-EMA value (default: 0.5)
- **Gamma 3**: Slow γ-EMA value (default: 0.8)
## Notes
This indicator works best on higher timeframes (1H+) and liquid markets. The Gamma-weighted EMAs provide faster signals while the Fibonacci sequence EMAs provide reliable support/resistance levels that often align with key market turning points.
For optimal use, watch for price interaction with these bands and how the bands interact with each other to confirm trend changes before they become obvious to the majority of market participants.
Darvas Box Breakout Signals v6 (Manus)Purpose:
This script is designed for TradingView to automatically identify potential "Darvas Boxes" on your price chart and signal when the price breaks out of these boxes.
How it Works:
Finds Highs: It looks back over a set number of bars (default is 20, but you can change this) to find the highest price point.
Confirms Box Top: It waits until the price stays below that high point for a specific number of bars (default is 3) to confirm the top of the box.
Confirms Box Bottom: After the top is confirmed, it looks for the lowest price reached and waits until the price stays above that low point for the same number of bars (3) to confirm the bottom of the box.
Draws Box (Optional): If enabled in the settings, it draws lines on the chart representing the top and bottom of the confirmed box.
What Signals It Shows:
Breakout Signal: When the price closes above the top line of a confirmed box, it plots a green upward-pointing triangle above that price bar. This suggests the stock might be starting a move higher.
Breakdown Signal: When the price closes below the bottom line of a confirmed box, it plots a red downward-pointing triangle below that price bar. This suggests the stock might be starting a move lower.
Key Features:
Uses the Darvas Box theory logic.
Provides clear visual signals for potential entries based on breakouts or breakdowns.
Allows customization of the lookback period and confirmation bars via the indicator settings.
Written in Pine Script version 6.
Remember, this script just provides signals based on price patterns; it doesn't predict the future or guarantee profits. It should be used as one tool within the larger trading plan we discussed, especially considering risk management.
Directional Movement Index (DMI) + AlertsThis is a Study with associated visual indicators and Bullish/Bearish Alerts for Directional Movement (DMI). It consists of an Average Directional Index (ADX), Plus Directional Indicator (+DI) and Minus Directional Indicator (-DI).
Published by J. Welles Wilder in 1978 for use with currencies and commodities which are typically more volatile than stocks and have stronger trends.
Development Notes
---------------------------
This indicator, and most of the descriptions below, were derived largely from the TradingView reference manual. Feedback and suggestions for improvement are more than welcome, as well are recommended Input settings and best practices for use.
tradingview.com/chart/?solution=43000502250
Strategy Description
---------------------------
ADX defines whether or not there is a trend present; +DI and -DI compliment the ADX by taking direction into account. An ADX above 25 indicates a strong trend, and a Bullish alert is subsequently triggered when +DI is above -DI and a Bearish alert when -DI is above +DI.
Note that the Bullish or Bearish crossover alert will only trigger if ADX is simultaneously above 25 during the crossover event. If ADX later rises to 25 and +DI is still greater than -DI, or -DI greater than +DI, then a delayed alert will not trigger by design.
Basic Use
---------------------------
Acceptable DMI values are up to the trader's interpretation and may change depending on the financial instrument being examined. Recommend not changing any default values without being first familiar with their purpose and impact on the indicator at large.
Confidence in price action and trend is higher when two or more indicators are in agreement -- therefore we recommend not using this indicator by itself to determine entry or exit trade opportunities.
Recommend also choosing 'Once Per Bar Close' when creating alerts.
Inputs
---------------------------
ADX Smoothing - the time period to be used in calculating the ADX which has a smoothing component (14 is the Default).
DI Length - the time period to be used in calculating the DI (14 is the Default).
Key Level - any trade with the ADX above the key level is a strong indicator that it is trending (23 to 25 is the suggested setting).
Sensitivity - an incremental variable to test whether the past n candles are in the same bullish or bearish state before triggering a delayed crossover alert (3 is the Default). Filter out some noise and reduces active alerts.
Show ADX Option - two visual styles are provided for user preference, a visible ADX line or a background overlay (green or red when ADX is above the key level, for bullish or bearish, and gray when below).
Color Candles - an option to transpose the bullish and bearish crossovers to the main candle bars. Can be turned off in the Style Tab by deselecting 'Bar Colors'. Dark blue is bullish, dark purple is bearish, and the black inner color is neutral. Note that the outer red and green border will still be distinguished by whether each individual candle is bearish or bullish during the specified timeframe.
Indicator Visuals
---------------------------
Bullish or Bearish plot based on DMI strategy (ADX and +/-DI values).
Visual cues are intended to improve analysis and decrease interpretation time during trading, as well as to aid in understanding the purpose of this study and how its inclusion can benefit a comprehensive trading strategy.
Trend Strength
---------------------------
To analyze trend strength, the focus should be on the ADX line and not the +DI or -DI lines. An ADX reading above 25 indicates a strong trend, while a reading below 20 indicates a weak or non-existent trend. A reading between those two values would be considered indeterminable. Though what is truly a strong trend or a weak trend depends on the financial instrument being examined; historical analysis can assist in determining appropriate values.
Bullish DI Cross
---------------------------
1. ADX must be over 25 (strong trend) (value is determined by the trader)
2. +DI cross above -DI
3. Set Stop Loss at the current day's low (any +DI cross-backs below -DI should be ignored)
4. Set trailing stop if ADX strengthens (i.e., signal rises)
Bearish DI Cross
---------------------------
1. ADX must be over 25 (strong trend) (value is determined by the trader)
2. -DI cross above +DI
3. Set Stop Loss at the current day's high (any -DI cross-backs below +DI should be ignored)
4. Set trailing stop if ADX strengthens (i.e., signal rises)
Disclaimer
---------------------------
This post and the script are not intended to provide any financial advice. Trade at your own risk.
No known repainting.
Version 1.1
-------------------------
- Added multi-timeframe resolution using PineCoders secure security function to eliminate repainting.
- Cleaned up option for selecting ADX view; and added a colored line as a choice, based on same bullish, bearish, or neutral colors as the background.
- Added exit crossover indicator to aid in an overall strategy development. This ability pairs better with my CHOP Zone Entry Strategy which relies on DMI Exits. Note that exit conditions don't employ the sensitivity variable. Green labels are for Bullish exits and red are for Bearish.
-- Exit condition is triggered if in an active Bullish or Bearish position and ADX drops below 25, Or if either the -DI crosses above +DI (for previously Bullish) or +DI crosses above -DI (for previously Bearish).
- Added reverse position determination. Triggers when a Bullish entry occurs on the same candle as a Bearish exit, or vice versa. Green labels are for Bullish reverses and red are for Bearish.
- Added selectable option to choose visible labels -- Bearish, Bullish, Both, Exits, Reverses, or All.
-- Note that a reverse label will only show if the opposing entry and exit labels are set to show, otherwise the reverse will revert to the appropriate entry or exit on the chart.
- Added alerts to account for new conditions.
-- Note that alerts for crossovers, exits, and reverses will only be triggered if the associated labels are selected to be shown (i.e., what you choose to see on the chart is what you will be alerted to).
Version 1.2
-------------------------
- Changed exit condition to be decided on by whether ADX is below 25 and on a +/-DI crossover. Versus being either or. The previous version had too many false triggers. This variety can now show multiple Bullish or Bearish alerts before an Exit condition too. I'm tempted to simply make this condition based on ADX, and not DI … thoughts? See lines 138 and 139.
- Updated the Background view to have deeper shades of colors dependent upon the ADX trend strength.
- Added an Oscillator view for the ADX and momentum computations to color the histogram by trend. DI lines are hidden.
-- If ADX is Bullish, then the oscillator is colored light green in an uptrend and dark green in a downtrend; if Bearish, then its light red in an uptrend and dark redin a downtrend; if adx is below key level, then it is light gray in a downtrend and dark grey in the uptrend.
- Added option to Hide ADX in case only the Directional lines are desired. This could be useful if you would like to have the ADX oscillator in one panel and +/-DI crossovers in another.
- Added a Columnar view for the ADX. DI lines are hidden. This view is really simple and compact, with the trend strength still easily understood. Colors are the same as for the oscillator -- the deeper the shade of green or red, then the higher the ADX trend strength level.
- Added a Trend Strength label.
ADX Trend Strength Trade (Y/N) Setup Types
0 to 10 = Barely Breathing N N/A
10 to 20 = Weak Trend Y Range/Pre-Breakout
20 to 30 = Potentially Starting to Trend Y Early Stage Trend
30 to 50 = Strong Trend Y Ride the Wave
50 to 75 = Very Strong Trend N Exhaustion
75 to 100 = Extremely Strong Trend N N/A
Version 1.3
-------------------------
Updated to Pine Script v5 to resolve errors from the deprecated v4 version.
This is a reissue of a previously published script that was hidden due to a v4 compatibility issue.
'https://www.tradingview.com/script/9OoEHrv5-Directional-Movement-Index-DMI-Alerts/'
Time-Based Fair Value Gaps (FVG) with Inversions (iFVG)Overview
The Time-Based Fair Value Gaps (FVG) with Inversions (iFVG) (ICT/SMT) indicator is a specialized tool designed for traders using Inner Circle Trader (ICT) methodologies. Inspired by LuxAlgo's Fair Value Gap indicator, this script introduces significant enhancements by integrating ICT principles, focusing on precise time-based FVG detection, inversion tracking, and retest signals tailored for institutional trading strategies. Unlike LuxAlgo’s general FVG approach, this indicator filters FVGs within customizable 10-minute windows aligned with ICT’s macro timeframes and incorporates ICT-specific concepts like mitigation, liquidity grabs, and session-based gap prioritization.
This tool is optimized for 1–5 minute charts, though probably best for 1 minute charts, identifying bullish and bearish FVGs, tracking their mitigation into inverted FVGs (iFVGs) as key support/resistance zones, and generating retest signals with customizable “Close” or “Wick” confirmation. Features like ATR-based filtering, optional FVG labels, mitigation removal, and session-specific FVG detection (e.g., first FVG in AM/PM sessions) make it a powerful tool for ICT traders.
Originality and Improvements
While inspired by LuxAlgo’s FVG indicator (credit to LuxAlgo for their foundational work), this script significantly extends the original concept by:
1. Time-Based FVG Detection: Unlike LuxAlgo’s continuous FVG identification, this script filters FVGs within user-defined 10-minute windows each hour (:00–:10, :10–:20, etc.), aligning with ICT’s emphasis on specific periods of institutional activity, such as hourly opens/closes or kill zones (e.g., New York 7:00–11:00 AM EST). This ensures FVGs are relevant to high-probability ICT setups.
2. Session-Specific First FVG Option: A unique feature allows traders to display only the first FVG in ICT-defined AM (9:30–10:00 AM EST) or PM (1:30–2:00 PM EST) sessions, reflecting ICT’s focus on initial market imbalances during key liquidity events.
3. ICT-Driven Mitigation and Inversion Logic: The script tracks FVG mitigation (when price closes through a gap) and converts mitigated FVGs into iFVGs, which serve as ICT-style support/resistance zones. This aligns with ICT’s view that mitigated gaps become critical reversal points, unlike LuxAlgo’s simpler gap display.
4. Customizable Retest Signals: Retest signals for iFVGs are configurable for “Close” (conservative, requiring candle body confirmation) or “Wick” (faster, using highs/lows), catering to ICT traders’ need for precise entry timing during liquidity grabs or Judas swings.
5. ATR Filtering and Mitigation Removal: An optional ATR filter ensures only significant FVGs are displayed, reducing noise, while mitigation removal declutters the chart by removing filled gaps, aligning with ICT’s principle that mitigated gaps lose relevance unless inverted.
6. Timezone and Timeframe Safeguards: A timezone offset setting aligns FVG detection with EST for ICT’s New York-centric strategies, and a timeframe warning alerts users to avoid ≥1-hour charts, ensuring accuracy in time-based filtering.
These enhancements make the script a distinct tool that builds on LuxAlgo’s foundation while offering ICT traders a tailored, high-precision solution.
How It Works
FVG Detection
FVGs are identified when a candle’s low is higher than the high of two candles prior (bullish FVG) or a candle’s high is lower than the low of two candles prior (bearish FVG). Detection is restricted to:
• User-selected 10-minute windows (e.g., :00–:10, :50–:60) to capture ICT-relevant periods like hourly transitions.
• AM/PM session first FVGs (if enabled), focusing on 9:30–10:00 AM or 1:30–2:00 PM EST for key market opens.
An optional ATR filter (default: 0.25× ATR) ensures only gaps larger than the threshold are displayed, prioritizing significant imbalances.
Mitigation and Inversion
When price closes through an FVG (e.g., below a bullish FVG’s bottom), the FVG is mitigated and becomes an iFVG, plotted as a support/resistance zone. iFVGs are critical in ICT for identifying reversal points where institutional orders accumulate.
Retest Signals
The script generates signals when price retests an iFVG:
• Close: Triggers when the candle body confirms the retest (conservative, lower noise).
• Wick: Triggers when the candle’s high/low touches the iFVG (faster, higher sensitivity). Signals are visualized with triangular markers (▲ for bullish, ▼ for bearish) and can trigger alerts.
Visualization
• FVGs: Displayed as colored boxes (green for bullish, red for bearish) with optional “Bull FVG”/“Bear FVG” labels.
• iFVGs: Shown as extended boxes with dashed midlines, limited to the user-defined number of recent zones (default: 5).
• Mitigation Removal: Mitigated FVGs/iFVGs are removed (if enabled) to keep the chart clean.
How to Use
Recommended Settings
• Timeframe: Use 1–5 minute charts for precision, avoiding ≥1-hour timeframes (a warning label appears if misconfigured).
• Time Windows: Enable :00–:10 and :50–:60 for hourly open/close FVGs, or use the “Show only 1st presented FVG” option for AM/PM session focus.
• ATR Filter: Keep enabled (multiplier 0.25–0.5) for significant gaps; disable on 1-minute charts for more FVGs during volatility.
• Signal Preference: Use “Close” for conservative entries, “Wick” for aggressive setups.
• Timezone Offset: Set to -5 for EST (or -4 for EDT) to align with ICT’s New York session.
Trading Strategy
1. Macro Timeframes: Focus on New York (7:00–11:00 AM EST) or London (2:00–5:00 AM EST) kill zones for high institutional activity.
2. FVG Entries: Trade bullish FVGs as support in uptrends or bearish FVGs as resistance in downtrends, especially in :00–:10 or :50–:60 windows.
3. iFVG Retests: Enter on retest signals (▲/▼) during liquidity grabs or Judas swings, using “Close” for confirmation or “Wick” for speed.
4. Session FVGs: Use the “Show only 1st presented FVG” option to target the first gap in AM/PM sessions, often tied to ICT’s market maker algorithms.
5. Risk Management: Combine with ICT concepts like order blocks or breaker blocks for confluence, and set stops beyond FVG/iFVG boundaries.
Alerts
Set alerts for:
• “Bullish FVG Detected”/“Bearish FVG Detected”: New FVGs in selected windows.
• “Bullish Signal”/“Bearish Signal”: iFVG retest confirmations.
Settings Description
• Show Last (1–100, default: 5): Number of recent iFVGs to display. Lower values reduce clutter.
• Show only 1st presented FVG : Limits FVGs to the first in 9:30–10:00 AM or 1:30–2:00 PM EST sessions (overrides time window checkboxes).
• Time Window Checkboxes: Enable/disable FVG detection in 10-minute windows (:00–:10, :10–:20, etc.). All enabled by default.
• Signal Preference: “Close” (default) or “Wick” for iFVG retest signals.
• Use ATR Filter: Enables ATR-based size filtering (default: true).
• ATR Multiplier (0–∞, default: 0.25): Sets FVG size threshold (higher values = larger gaps).
• Remove Mitigated FVGs: Removes filled FVGs/iFVGs (default: true).
• Show FVG Labels: Displays “Bull FVG”/“Bear FVG” labels (default: true).
• Timezone Offset (-12 to 12, default: -5): Aligns time windows with EST.
• Colors: Customize bullish (green), bearish (red), and midline (gray) colors.
Why Use This Indicator?
This indicator empowers ICT traders with a tool that goes beyond generic FVG detection, offering precise, time-filtered gaps and inversion tracking aligned with institutional trading principles. By focusing on ICT’s macro timeframes, session-specific imbalances, and customizable signal logic, it provides a clear edge for scalping, swing trading, or reversal setups in high-liquidity markets.
Best SMA FinderThis script, Best SMA Finder, is a tool designed to identify the most robust simple moving average (SMA) length for a given chart, based on historical backtest performance. It evaluates hundreds of SMA values (from 10 to 1000) and selects the one that provides the best balance between profitability, consistency, and trade frequency.
What it does:
The script performs individual backtests for each SMA length using either "Long Only" or "Buy & Sell" logic, as selected by the user. For each tested SMA, it computes:
- Total number of trades
- Profit Factor (total profits / total losses)
- Win Rate
- A composite Robustness Score, which integrates Profit Factor, number of trades (log-scaled), and win rate.
Only SMA configurations that meet the user-defined minimum trade count are considered valid. Among all valid candidates, the script selects the SMA length with the highest robustness score and plots it on the chart.
How to use it:
- Choose the strategy type: "Long Only" or "Buy & Sell"
- Set the minimum trade count to filter out statistically irrelevant results
- Enable or disable the summary stats table (default: enabled)
The selected optimal SMA is plotted on the chart in blue. The optional table in the top-right corner shows the corresponding SMA length, trade count, Profit Factor, Win Rate, and Robustness Score for transparency.
Key Features:
- Exhaustive SMA optimization across 991 values
- Customizable trade direction and minimum trade filters
- In-chart visualization of results via table and plotted optimal SMA
- Uses a custom robustness formula to rank SMA lengths
Use cases:
Ideal for traders who want to backtest and auto-select a historically effective SMA without manual trial-and-error. Useful for swing and trend-following strategies across different timeframes.
📌 Limitations:
- Not a full trading strategy with position sizing or stop-loss logic
- Only one entry per direction at a time is allowed
- Designed for exploration and optimization, not as a ready-to-trade system
This script is open-source and built entirely from original code and logic. It does not replicate any closed-source script or reuse significant external open-source components.
Triangle Breakout Strategy with TP/SL, EMA Filter📌 Triangle Breakout Strategy with TP/SL, EMA Filters, and Backtest – Explained.
✅ 1. Pattern Detection – Triangle Breakout
The script scans for triangle patterns by detecting local pivot highs and pivot lows.
It uses two recent highs and two recent lows to draw converging trendlines (upper and lower boundaries of the triangle).
If the price breaks above the upper trendline, a bullish breakout signal is generated.
🎯 2. TP (Take Profit) & SL (Stop Loss)
When a bullish breakout is detected:
A buy order is placed using strategy.entry.
TP and SL levels are calculated relative to the current close price:
TP = 3% above the entry price
SL = 1.5% below the entry price
These are defined using strategy.exit.
📊 3. EMA Filter
An optional filter checks if:
Price is above both EMA 20 and EMA 50
Only if this condition is met, the strategy allows a long entry.
You can toggle the filter on or off with useEMAFilter.
📈 4. Backtesting with Strategy Tester
This script uses strategy() instead of indicator() to enable TradingView’s built-in backtest engine.
Every buy entry and exit (based on TP or SL) is recorded.
📌 5. Visuals
EMA 20 and EMA 50 lines are plotted on the chart.
A label is shown when a breakout is detected: "Breakout Up"
Results (profit, win rate, drawdown, etc.) can be viewed in the Strategy Tester panel.
Price-Confirmed Hull Moving AverageThis is a modified HULL moving average that adds some enhancements providing visual clues as to a change in trend direction. The user can add slight modifications to the abruptness of trend change indications, which are clearly seen by the color change of the hull line itself. The user can also choose to have the background color change for easier visual indication that the hull line has changed slope direction. In addition, the user can either have both the line and the background visuals on, or turn one or the other (or both) off.
The purpose of this HULL moving average is to provide easy identification of trend direction within the scope of the moving average values provided in settings.