Fuzzy SMA Trend Analyzer (experimental)[FibonacciFlux]Fuzzy SMA Trend Analyzer (Normalized): Advanced Market Trend Detection Using Fuzzy Logic Theory
Elevate your technical analysis with institutional-grade fuzzy logic implementation
Research Genesis & Conceptual Framework
This indicator represents the culmination of extensive research into applying fuzzy logic theory to financial markets. While traditional technical indicators often produce binary outcomes, market conditions exist on a continuous spectrum. The Fuzzy SMA Trend Analyzer addresses this limitation by implementing a sophisticated fuzzy logic system that captures the nuanced, multi-dimensional nature of market trends.
Core Fuzzy Logic Principles
At the heart of this indicator lies fuzzy logic theory - a mathematical framework designed to handle imprecision and uncertainty:
// Improved fuzzy_triangle function with guard clauses for NA and invalid parameters.
fuzzy_triangle(val, left, center, right) =>
if na(val) or na(left) or na(center) or na(right) or left > center or center > right // Guard checks
0.0
else if left == center and center == right // Crisp set (single point)
val == center ? 1.0 : 0.0
else if left == center // Left-shoulder shape (ramp down from 1 at center to 0 at right)
val >= right ? 0.0 : val <= center ? 1.0 : (right - val) / (right - center)
else if center == right // Right-shoulder shape (ramp up from 0 at left to 1 at center)
val <= left ? 0.0 : val >= center ? 1.0 : (val - left) / (center - left)
else // Standard triangle
math.max(0.0, math.min((val - left) / (center - left), (right - val) / (right - center)))
This implementation of triangular membership functions enables the indicator to transform crisp numerical values into degrees of membership in linguistic variables like "Large Positive" or "Small Negative," creating a more nuanced representation of market conditions.
Dynamic Percentile Normalization
A critical innovation in this indicator is the implementation of percentile-based normalization for SMA deviation:
// ----- Deviation Scale Estimation using Percentile -----
// Calculate the percentile rank of the *absolute* deviation over the lookback period.
// This gives an estimate of the 'typical maximum' deviation magnitude recently.
diff_abs_percentile = ta.percentile_linear_interpolation(math.abs(raw_diff), normLookback, percRank) + 1e-10
// ----- Normalize the Raw Deviation -----
// Divide the raw deviation by the estimated 'typical max' magnitude.
normalized_diff = raw_diff / diff_abs_percentile
// ----- Clamp the Normalized Deviation -----
normalized_diff_clamped = math.max(-3.0, math.min(3.0, normalized_diff))
This percentile normalization approach creates a self-adapting system that automatically calibrates to different assets and market regimes. Rather than using fixed thresholds, the indicator dynamically adjusts based on recent volatility patterns, significantly enhancing signal quality across diverse market environments.
Multi-Factor Fuzzy Rule System
The indicator implements a comprehensive fuzzy rule system that evaluates multiple technical factors:
SMA Deviation (Normalized): Measures price displacement from the Simple Moving Average
Rate of Change (ROC): Captures price momentum over a specified period
Relative Strength Index (RSI): Assesses overbought/oversold conditions
These factors are processed through a sophisticated fuzzy inference system with linguistic variables:
// ----- 3.1 Fuzzy Sets for Normalized Deviation -----
diffN_LP := fuzzy_triangle(normalized_diff_clamped, 0.7, 1.5, 3.0) // Large Positive (around/above percentile)
diffN_SP := fuzzy_triangle(normalized_diff_clamped, 0.1, 0.5, 0.9) // Small Positive
diffN_NZ := fuzzy_triangle(normalized_diff_clamped, -0.2, 0.0, 0.2) // Near Zero
diffN_SN := fuzzy_triangle(normalized_diff_clamped, -0.9, -0.5, -0.1) // Small Negative
diffN_LN := fuzzy_triangle(normalized_diff_clamped, -3.0, -1.5, -0.7) // Large Negative (around/below percentile)
// ----- 3.2 Fuzzy Sets for ROC -----
roc_HN := fuzzy_triangle(roc_val, -8.0, -5.0, -2.0)
roc_WN := fuzzy_triangle(roc_val, -3.0, -1.0, -0.1)
roc_NZ := fuzzy_triangle(roc_val, -0.3, 0.0, 0.3)
roc_WP := fuzzy_triangle(roc_val, 0.1, 1.0, 3.0)
roc_HP := fuzzy_triangle(roc_val, 2.0, 5.0, 8.0)
// ----- 3.3 Fuzzy Sets for RSI -----
rsi_L := fuzzy_triangle(rsi_val, 0.0, 25.0, 40.0)
rsi_M := fuzzy_triangle(rsi_val, 35.0, 50.0, 65.0)
rsi_H := fuzzy_triangle(rsi_val, 60.0, 75.0, 100.0)
Advanced Fuzzy Inference Rules
The indicator employs a comprehensive set of fuzzy rules that encode expert knowledge about market behavior:
// --- Fuzzy Rules using Normalized Deviation (diffN_*) ---
cond1 = math.min(diffN_LP, roc_HP, math.max(rsi_M, rsi_H)) // Strong Bullish: Large pos dev, strong pos roc, rsi ok
strength_SB := math.max(strength_SB, cond1)
cond2 = math.min(diffN_SP, roc_WP, rsi_M) // Weak Bullish: Small pos dev, weak pos roc, rsi mid
strength_WB := math.max(strength_WB, cond2)
cond3 = math.min(diffN_SP, roc_NZ, rsi_H) // Weakening Bullish: Small pos dev, flat roc, rsi high
strength_N := math.max(strength_N, cond3 * 0.6) // More neutral
strength_WB := math.max(strength_WB, cond3 * 0.2) // Less weak bullish
This rule system evaluates multiple conditions simultaneously, weighting them by their degree of membership to produce a comprehensive trend assessment. The rules are designed to identify various market conditions including strong trends, weakening trends, potential reversals, and neutral consolidations.
Defuzzification Process
The final step transforms the fuzzy result back into a crisp numerical value representing the overall trend strength:
// --- Step 6: Defuzzification ---
denominator = strength_SB + strength_WB + strength_N + strength_WBe + strength_SBe
if denominator > 1e-10 // Use small epsilon instead of != 0.0 for float comparison
fuzzyTrendScore := (strength_SB * STRONG_BULL +
strength_WB * WEAK_BULL +
strength_N * NEUTRAL +
strength_WBe * WEAK_BEAR +
strength_SBe * STRONG_BEAR) / denominator
The resulting FuzzyTrendScore ranges from -1 (strong bearish) to +1 (strong bullish), providing a smooth, continuous evaluation of market conditions that avoids the abrupt signal changes common in traditional indicators.
Advanced Visualization with Rainbow Gradient
The indicator incorporates sophisticated visualization using a rainbow gradient coloring system:
// Normalize score to for gradient function
normalizedScore = na(fuzzyTrendScore) ? 0.5 : math.max(0.0, math.min(1.0, (fuzzyTrendScore + 1) / 2))
// Get the color based on gradient setting and normalized score
final_color = get_gradient(normalizedScore, gradient_type)
This color-coding system provides intuitive visual feedback, with color intensity reflecting trend strength and direction. The gradient can be customized between Red-to-Green or Red-to-Blue configurations based on user preference.
Practical Applications
The Fuzzy SMA Trend Analyzer excels in several key applications:
Trend Identification: Precisely identifies market trend direction and strength with nuanced gradation
Market Regime Detection: Distinguishes between trending markets and consolidation phases
Divergence Analysis: Highlights potential reversals when price action and fuzzy trend score diverge
Filter for Trading Systems: Provides high-quality trend filtering for other trading strategies
Risk Management: Offers early warning of potential trend weakening or reversal
Parameter Customization
The indicator offers extensive customization options:
SMA Length: Adjusts the baseline moving average period
ROC Length: Controls momentum sensitivity
RSI Length: Configures overbought/oversold sensitivity
Normalization Lookback: Determines the adaptive calculation window for percentile normalization
Percentile Rank: Sets the statistical threshold for deviation normalization
Gradient Type: Selects the preferred color scheme for visualization
These parameters enable fine-tuning to specific market conditions, trading styles, and timeframes.
Acknowledgments
The rainbow gradient visualization component draws inspiration from LuxAlgo's "Rainbow Adaptive RSI" (used under CC BY-NC-SA 4.0 license). This implementation of fuzzy logic in technical analysis builds upon Fermi estimation principles to overcome the inherent limitations of crisp binary indicators.
This indicator is shared under Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license.
Remember that past performance does not guarantee future results. Always conduct thorough testing before implementing any technical indicator in live trading.
Educational
Market Heat Z-ScoreThe "Market Heat Z-Score" indicator calculates the Z-score of a chosen price source over a specified lookback period, indicating how far the current price is from the mean in terms of standard deviations. It visually represents overbought and oversold conditions with a color gradient and customizable glow effect, with background shading indicating extreme Z-scores.
V Pattern TrendDESCRIPTION:
The V Pattern Trend Indicator is designed to identify and highlight V-shaped reversal patterns in price action. It detects both bullish and bearish V formations using a five-candle structure, helping traders recognize potential trend reversal points. The indicator filters out insignificant patterns by using customizable settings based on ATR, percentage, or points, ensuring that only meaningful V patterns are displayed.
CALCULATION METHOD
The user can choose how the minimum length of a V pattern is determined. The available options are:
- ATR (Average True Range) – Filters V patterns based on ATR, making the detection adaptive to market volatility.
- Percentage (%) – Considers V patterns where the absolute price difference between the V low and V high is greater than a user-defined percentage of the V high.
- Points – Uses a fixed number of points to filter valid V patterns, making it useful for assets with consistent price ranges.
ATR SETTINGS
- ATR Length – Defines the number of periods for ATR calculation.
- ATR Multiplier – Determines the minimum V length as a multiple of ATR.
PERCENTAGE THRESHOLD
- Sets a minimum percentage difference between the V high and V low for a pattern to be considered valid.
POINTS THRESHOLD
- Defines the minimum price movement (in points) required for a V pattern to be considered significant.
PATTERN VISUALIZATION
- A bullish V pattern is plotted using two upward-sloping lines, with a filled green region to highlight the formation.
- A bearish V pattern is plotted using two downward-sloping lines, with a filled red region to indicate the reversal.
- The indicator dynamically updates and marks only the most recent valid patterns.
UNDERSTANDING V PATTERNS
A V pattern is a sharp reversal formation where price moves strongly in one direction and then rapidly reverses in the opposite direction, forming a "V" shape on the chart.
BULLISH V PATTERN
- A bullish V pattern is formed when the price makes three consecutive lower lows, followed by two consecutive higher lows.
- The pattern is confirmed when the highest high of the formation is greater than the previous highs within the structure.
- This pattern suggests a potential trend reversal from bearish to bullish.
- The lowest point of the pattern represents the V low, which acts as a support level.
bull_five_candle_v = low > low and low > low and low > low and low > low
and high > math.max(high , high , high ) and high > math.max(high , high , high )
BEARISH V PATTERN
- A bearish V pattern is detected when the price makes three consecutive higher highs, followed by two consecutive lower highs.
- The pattern is confirmed when the lowest low of the formation is lower than the previous lows within the structure.
- This pattern signals a possible trend reversal from bullish to bearish.
- The highest point of the pattern represents the V high, which acts as a resistance level.
bear_five_candle_v = high < high and high < high and high < high and high < high
and low < math.min(low , low , low ) and low < math.min(low , low , low )
HOW THIS IS UNIQUE
- Advanced Filtering Mechanism – Unlike basic reversal indicators, this tool provides customizable filtering based on ATR, percentage, or points, ensuring that only significant V patterns are displayed.
- Enhanced Visual Clarity – The indicator uses color-coded fills and structured plotting to make reversal patterns easy to recognize.
- Works Across Market Conditions – Adaptable to different market environments, filtering out weak or insignificant price fluctuations.
- Multi-Timeframe Usability – Can be applied across different timeframes and asset classes, making it useful for both intraday and swing trading.
HOW TRADERS CAN USE THIS INDICATOR
- Identify potential trend reversals early based on structured price action.
- Filter out weak or insignificant reversals to focus only on strong V formations.
- Use the V pattern’s highs and lows as key support and resistance zones for trade entries and exits.
- Combine with other indicators like moving averages, trendlines, or momentum oscillators for confirmation.
VSA Vol Key VSA Signals
(1) No Demand – Bearish Signal
Low volume, narrow spread.
Price rises, but volume does not increase → Weak market, lack of buyers.
If this appears in an uptrend, it may indicate a potential reversal.
(2) No Supply – Bullish Signal
Low volume, narrow spread.
Price declines, but volume does not increase → Weak selling pressure.
If this appears in an uptrend, it may confirm the continuation of the uptrend.
(3) Stopping Volume – Bullish Reversal Signal
Strong price decline, but unusually high volume.
Candle shows a long lower wick, closing near the top.
Indicates Smart Money absorbing supply, signaling a potential reversal upwards.
(4) Climactic Volume – Possible Trend Reversal
Extremely high volume with a sharp price increase or decrease.
If this occurs after a long trend, it may indicate a trend reversal.
Smart Money may be taking profits after a prolonged price movement.
(5) Effort vs. Result
If volume is high but price movement is weak → Inefficient buying/selling, possible reversal.
If volume is high and price moves strongly in the same direction → Trend is likely to continue.
ICT Breakers (BOS / MSS - Market Structure) [ICTProTools]The Breakers (Market Structure) indicator is designed to help traders identify true breaker structures , a key concept in Inner Circle Trader (ICT) methodology. In market structure, Breakers represent powerful shifts where a key high or low is broken, leading to a reversal in market direction. Most tools misinterpret structure shifts, using internal structure , leading to fake breakouts. This tool solves that problem by filtering out false signals , providing clear & structured insights , all with multi-timeframe compatibility.
💎 Key Features
⚡️ Breakers in action
The indicator shows the structure following ICT instructions. A breaker is defined by two lines:
The first line confirms the previous trend (it could be interpreted as a BOS).
The second line highlights the moment price breaks structure (with candle body or wick based on your chosen settings), signaling a shift in trend direction (like an MSS).
Furthermore, it’s important to note that a breaker not only shows the structure, but also defines a potential Point of Interest (POI), an area where price may retrace before continuing its trend.
Here, we can observe two clear structure shifts.
On the far left, the market was in a bearish trend, illustrated by the first visible (dotted and red) line. Shortly after, the second (solid and green) line appears, showing a break that initiates a new bullish trend.
This upward movement continues, with the last confirmation marked by a top structure line. And finally, the structure is broken once again indicating a transition back into a bearish trend.
💪 Real Structure with True Highs / Lows
Unlike many indicators that detect internal breakouts , this tool follows ICT’s true market structure rules .
In a bearish trend , a bullish breaker is only confirmed when the high that created the low is broken , and conversely for a bullish scenario.
Fake breakouts are ignored, preventing misleading signals.
In the image above, the white breakout is correctly ignored by the indicator, as it doesn't align with ICT’s structural rules. That white high is simply part of the internal structure, not the true swing point. Instead, the green line highlights the key level that truly matters, the one whose rupture would have confirmed a real change in market structure.
🔔 Smart Alerts for Structure Updates
Stay one step ahead with customizable alerts designed to notify you instantly when market structure changes occur.
Get notified for BOS (Continuation) and / or MSS (Breaker) events.
Set alerts for bullish , bearish , or both directions.
Choose between once or repeated alerts , based on your strategy.
This feature allows traders to remain focused and reactive , even when monitoring multiple markets.
In the alert settings, select which structure shifts you want to be notified of. Whether you're a scalper or a swing trader, the alerts keep you connected to key moments without needing to constantly monitor the chart.
⏳ Multi-Timeframe Structure
All features of the indicator are fully compatible with higher timeframes .
Get a broader view of market structure without switching timeframes.
Monitor higher timeframe structures and receive alerts, all without leaving your analysis chart .
In this example, the market structure of the 30m timeframe is displayed while on a 5m chart, providing a clearer perspective.
✨ Customization & User Control
Make it yours! The indicator allows full customization:
Swing bars (to confirm high / low)
Select your mode for Breakers (MSS) , using the candle body only or body / wick
Line style (type, width, color)
Choice of displayed timeframe
Activate any alert , with the frequency you want
🎯 Conclusion
✅ Avoid false signals by focusing on true ICT Breakers
✅ Smart alerts to never miss a structural shift
✅ Multi-timeframe support for enhanced analysis
✅ Clean & professional design for an optimal trading experience
Quantum Motion Oscillator-QMO (TechnoBlooms)Quantum Motion Oscillator (QMO) is a momentum indicator designed for traders who demand precision. Combining multi-timeframe weighted linear regression with EMA crossovers, QMO offers a dynamic view of market momentum, helping traders anticipate trend shifts with greater accuracy.
This oscillator is inspired by quantum mechanics and wave theory, where market movement is seen as a series of probabilistic waves rather than rigid structures.
The histogram is plotted in proportion to the price movement of the candlesticks.
KEY FEATURES
1. Multi-Timeframe Histogram - Integrates 1 to 5 weighted linear regression averages, reducing lag while maintaining accuracy.
2. EMA Crossover Signal - Uses a Short and Long EMA to confirm trend shifts with minimal noise.
3. Adaptive Trend Analysis - Self-adjusting mechanics make QMO effective in both ranging and trending markets.
4. Scalable for Different Trading Styles - Works seamlessly for scalping, intraday, swing and position trading.
ADVANCED PROFESSIONAL INSIGHTS
1. Wave Dynamics and Market Flow - Inspired by wave mechanics, QMO reflects the energy accumulation and dissipation in price movements.
Expanding histogram waves = Strong momentum surge
Contracting waves = Momentum weakening, potential reversal zone.
2. Liquidity and Order Flow Applications - QMO works well alongside liquidity concepts and smart money techniques:
Combine with Fair Value Gaps & Order Blocks -> Enter when QMO signals align with liquidity zones.
Avoid False Moves - If price sweeps liquidity, but QMO momentum diverges, it is a sign of potential smart money manipulation.
HALO Oracle - CoffeeKillerHALO Oracle - CoffeeKiller Indicator Guide
Hello traders! Today I'm going to walk you through how to use the HALO Oracle indicator, which is a powerful tool for identifying market trends and potential reversal points.
Basic Overview
The HALO Oracle is a trend-following indicator that combines Heiken Ashi candles with golden ratio calculations to help you identify market direction and key price levels.
Main Features
1. Time Settings
- You have two modes for time analysis:
- Normal Mode: The indicator analyzes each individual candle on your chart
- Custom Resolution Mode: You can use a different timeframe for calculations than what's shown on your chart
* For example, you could view a 5-minute chart but have the indicator calculate based on 1-hour data
* Available timeframes include Monthly (M), Weekly (W), Daily (D), 4 Hours (240), 1 Hour (60), etc.
2. Visual Components
Bands and Fill
- Two main bands: green and red
- The space between these bands is filled with colors:
- Green fill indicates a bullish trend
- Red fill indicates a bearish trend
- You can adjust the thickness of the bands and the transparency of the fill colors
Marker Lines
- High Marker Line (magenta): Tracks the highest opening price during bullish trends
- Low Marker Line (cyan): Tracks the lowest opening price during bearish trends
- These lines create a "zone" that helps identify potential support and resistance levels
- Diamond markers appear when the trend resets
Background Fill
- Optional full-chart background coloring
- Green background for bullish trends
- Red background for bearish trends
How to Read the Indicator
1. **Trend Identification**
- Green fill/background indicates a bullish trend
- Red fill/background indicates a bearish trend
- Watch for color changes as they signal potential trend changes
2. **Support and Resistance Levels**
- The bands create dynamic support and resistance zones
- Price tends to respect these levels during strong trends
- Watch for price reactions when it touches either band
3. **Marker Lines**
- These act as historical support/resistance levels
- The space between marker lines creates a "zone" where price might find support or resistance
- Diamond shapes appear when these levels reset, indicating potential trend changes
Trading Tips
1. **Trend Trading**
- Trade in the direction of the background color
- Look for pullbacks to the support/resistance bands in the trend direction
- Use marker lines as potential entry/exit points
2. **Reversal Signals**
- Watch for diamond markers as they indicate trend resets
- Confirm reversals with price action and other indicators
- Pay attention to how price reacts around marker lines
3. **Timeframe Analysis**
- Use custom resolution for a broader market perspective
- Higher timeframes for overall trend
- Lower timeframes for entry/exit timing
Customization Options
1. **Display Settings**
- Toggle bands and fill visibility
- Adjust line thickness
- Customize colors for all components
2. **Background Options**
- Toggle full-chart background
- Adjust background transparency
3. **Marker Line Settings**
- Toggle visibility of marker lines
- Toggle reset diamonds
- Customize marker line colors
Best Practices
1. Start with the default settings to understand how the indicator behaves
2. Gradually customize colors and settings to match your trading style
3. Use multiple timeframes to confirm trends
4. Don't trade solely based on the indicator - combine it with price action and other tools
5. Pay special attention to areas where marker lines and bands converge
6. Watch for diamond markers as they often precede significant moves
Remember, this indicator works best when used as part of a complete trading strategy, not in isolation.
The information and signals provided by this indicator are intended solely for educational and informational purposes. They do not constitute financial, legal, or any other professional advice. Past performance is not indicative of future results. Trading and investing involve significant risk, and it is strongly recommended that you use this indicator in conjunction with other analysis tools and indicators. Always consult with a qualified financial advisor or professional before making any investment decisions. The creators and distributors of this indicator expressly disclaim any liability for any losses incurred through the use of the indicator or reliance on the information provided. Use at your own risk.
All Forex Sessions (SAST Accurate) + LabelsFor traders in South Africa
Uses timestamp("Africa/Johannesburg", ...) — this locks the session window to true SAST time
The session now perfectly aligns from 14:00 to 18:00 local time no matter what time zone your TradingView chart is in
Also shows start and end vertical lines only when the session opens and closes
StatPivot- Dynamic Range Analyzer - indicator [PresentTrading]Hello everyone! In the following few open scripts, I would like to share various statistical tools that benefit trading. For this time, it is a powerful indicator called StatPivot- Dynamic Range Analyzer that brings a whole new dimension to your technical analysis toolkit.
This tool goes beyond traditional pivot point analysis by providing comprehensive statistical insights about price movements, helping you identify high-probability trading opportunities based on historical data patterns rather than subjective interpretations. Whether you're a day trader, swing trader, or position trader, StatPivot's real-time percentile rankings give you a statistical edge in understanding exactly where current price action stands within historical contexts.
Welcome to share your opinions! Looking forward to sharing the next tool soon!
█ Introduction and How it is Different
StatPivot is an advanced technical analysis tool that revolutionizes retracement analysis. Unlike traditional pivot indicators that only show static support/resistance levels, StatPivot delivers dynamic statistical insights based on historical pivot patterns.
Its key innovation is real-time percentile calculation - while conventional tools require new pivot formations before updating (often too late for trading decisions), StatPivot continuously analyzes where current price stands within historical retracement distributions.
Furthermore, StatPivot provides comprehensive statistical metrics including mean, median, standard deviation, and percentile distributions of price movements, giving traders a probabilistic edge by revealing which price levels represent statistically significant zones for potential reversals or continuations. By transforming raw price data into statistical insights, StatPivot helps traders move beyond subjective price analysis to evidence-based decision making.
█ Strategy, How it Works: Detailed Explanation
🔶 Pivot Point Detection and Analysis
The core of StatPivot's functionality begins with identifying significant pivot points in the price structure. Using the parameters left and right, the indicator locates pivot highs and lows by examining a specified number of bars to the left and right of each potential pivot point:
Copyp_low = ta.pivotlow(low, left, right)
p_high = ta.pivothigh(high, left, right)
For a point to qualify as a pivot low, it must have left higher lows to its left and right higher lows to its right. Similarly, a pivot high must have left lower highs to its left and right lower highs to its right. This approach ensures that only significant turning points are recognized.
🔶 Percentage Change Calculation
Once pivot points are identified, StatPivot calculates the percentage changes between consecutive pivot points:
For drops (when a pivot low is lower than the previous pivot low):
CopydropPercent = (previous_pivot_low - current_pivot_low) / previous_pivot_low * 100
For rises (when a pivot high is higher than the previous pivot high):
CopyrisePercent = (current_pivot_high - previous_pivot_high) / previous_pivot_high * 100
These calculations quantify the magnitude of each market swing, allowing for statistical analysis of historical price movements.
🔶 Statistical Distribution Analysis
StatPivot computes comprehensive statistics on the historical distribution of drops and rises:
Average (Mean): The arithmetic mean of all recorded percentage changes
CopyavgDrop = array.avg(dropValues)
Median: The middle value when all percentage changes are arranged in order
CopymedianDrop = array.median(dropValues)
Standard Deviation: Measures the dispersion of percentage changes from the average
CopystdDevDrop = array.stdev(dropValues)
Percentiles (25th, 75th): Values below which 25% and 75% of observations fall
Copyq1 = array.get(sorted, math.floor(cnt * 0.25))
q3 = array.get(sorted, math.floor(cnt * 0.75))
VaR95: The maximum expected percentage drop with 95% confidence
Copyvar95D = array.get(sortedD, math.floor(nD * 0.95))
Coefficient of Variation (CV): Measures relative variability
CopycvD = stdDevDrop / avgDrop
These statistics provide a comprehensive view of market behavior, enabling traders to understand the typical ranges and extreme moves.
🔶 Real-time Percentile Ranking
StatPivot's most innovative feature is its real-time percentile calculation. For each current price, it calculates:
The percentage drop from the latest pivot high:
CopycurrentDropPct = (latestPivotHigh - close) / latestPivotHigh * 100
The percentage rise from the latest pivot low:
CopycurrentRisePct = (close - latestPivotLow) / latestPivotLow * 100
The percentile ranks of these values within the historical distribution:
CopyrealtimeDropRank = (count of historical drops <= currentDropPct) / total drops * 100
This calculation reveals exactly where the current price movement stands in relation to all historical movements, providing crucial context for decision-making.
🔶 Cluster Analysis
To identify the most common retracement zones, StatPivot performs a cluster analysis by dividing the range of historical drops into five equal intervals:
CopyrangeSize = maxVal - minVal
For each interval boundary:
Copyboundaries = minVal + rangeSize * i / 5
By counting the number of observations in each interval, the indicator identifies the most frequently occurring retracement zones, which often serve as significant support or resistance areas.
🔶 Expected Price Targets
Using the statistical data, StatPivot calculates expected price targets:
CopytargetBuyPrice = close * (1 - avgDrop / 100)
targetSellPrice = close * (1 + avgRise / 100)
These targets represent statistically probable price levels for potential entries and exits based on the average historical behavior of the market.
█ Trade Direction
StatPivot functions as an analytical tool rather than a direct trading signal generator, providing statistical insights that can be applied to various trading strategies. However, the data it generates can be interpreted for different trade directions:
For Long Trades:
Entry considerations: Look for price drops that reach the 70-80th percentile range in the historical distribution, suggesting a statistically significant retracement
Target setting: Use the Expected Sell price or consider the average rise percentage as a reasonable target
Risk management: Set stop losses below recent pivot lows or at a distance related to the statistical volatility (standard deviation)
For Short Trades:
Entry considerations: Look for price rises that reach the 70-80th percentile range, indicating an unusual extension
Target setting: Use the Expected Buy price or average drop percentage as a target
Risk management: Set stop losses above recent pivot highs or based on statistical measures of volatility
For Range Trading:
Use the most common drop and rise clusters to identify probable reversal zones
Trade bounces between these statistically significant levels
For Trend Following:
Confirm trend strength by analyzing consecutive higher pivot lows (uptrend) or lower pivot highs (downtrend)
Use lower percentile retracements (20-30th percentile) as entry opportunities in established trends
█ Usage
StatPivot offers multiple ways to integrate its statistical insights into your trading workflow:
Statistical Table Analysis: Review the comprehensive statistics displayed in the data table to understand the market's behavior. Pay particular attention to:
Average drop and rise percentages to set reasonable expectations
Standard deviation to gauge volatility
VaR95 for risk assessment
Real-time Percentile Monitoring: Watch the real-time percentile display to see where the current price movement stands within the historical distribution. This can help identify:
Extreme movements (90th+ percentile) that might indicate reversal opportunities
Typical retracements (40-60th percentile) that might continue further
Shallow pullbacks (10-30th percentile) that might represent continuation opportunities in trends
Support and Resistance Identification: Utilize the plotted pivot points as key support and resistance levels, especially when they align with statistically significant percentile ranges.
Target Price Setting: Use the expected buy and sell prices calculated from historical averages as initial targets for your trades.
Risk Management: Apply the statistical measurements like standard deviation and VaR95 to set appropriate stop loss levels that account for the market's historical volatility.
Pattern Recognition: Over time, learn to recognize when certain percentile levels consistently lead to reversals or continuations in your specific market, and develop personalized strategies based on these observations.
█ Default Settings
The default settings of StatPivot have been carefully calibrated to provide reliable statistical analysis across a variety of markets and timeframes, but understanding their effects allows for optimal customization:
Left Bars (30) and Right Bars (30): These parameters determine how pivot points are identified. With both set to 30 by default:
A pivot low must be the lowest point among 30 bars to its left and 30 bars to its right
A pivot high must be the highest point among 30 bars to its left and 30 bars to its right
Effect on performance: Larger values create fewer but more significant pivot points, reducing noise but potentially missing important market structures. Smaller values generate more pivot points, capturing more nuanced movements but potentially including noise.
Table Position (Top Right): Determines where the statistical data table appears on the chart.
Effect on performance: No impact on analytical performance, purely a visual preference.
Show Distribution Histogram (False): Controls whether the distribution histogram of drop percentages is displayed.
Effect on performance: Enabling this provides visual insight into the distribution of retracements but can clutter the chart.
Show Real-time Percentile (True): Toggles the display of real-time percentile rankings.
Effect on performance: A critical setting that enables the dynamic analysis of current price movements. Disabling this removes one of the key advantages of the indicator.
Real-time Percentile Display Mode (Label): Chooses between label display or indicator line for percentile rankings.
Effect on performance: Labels provide precise information at the current price point, while indicator lines show the evolution of percentile rankings over time.
Advanced Considerations for Settings Optimization:
Timeframe Adjustment: Higher timeframes generally benefit from larger Left/Right values to identify truly significant pivots, while lower timeframes may require smaller values to capture shorter-term swings.
Volatility-Based Tuning: In highly volatile markets, consider increasing the Left/Right values to filter out noise. In less volatile conditions, lower values can help identify more potential entry and exit points.
Market-Specific Optimization: Different markets (forex, stocks, commodities) display different retracement patterns. Monitor the statistics table to see if your market typically shows larger or smaller retracements than the current settings are optimized for.
Trading Style Alignment: Adjust the settings to match your trading timeframe. Day traders might prefer settings that identify shorter-term pivots (smaller Left/Right values), while swing traders benefit from more significant pivots (larger Left/Right values).
By understanding how these settings affect the analysis and customizing them to your specific market and trading style, you can maximize the effectiveness of StatPivot as a powerful statistical tool for identifying high-probability trading opportunities.
US Presidents (Alternating Fills by Order)📜 Indicator Description: US Presidents Background Fill
This indicator highlights the terms of U.S. Presidents on your chart with alternating red and blue background fills based on their political party:
• 🟥 Republicans = Red
• 🟦 Democrats = Blue
• 🎨 Dark/Light shading alternates with each new president to clearly distinguish consecutive terms, even within the same party.
The fill starts from President Ulysses S. Grant (18th President, 1873) through to the 47th president in 2025. It is designed to work with any asset and automatically adapts to the visible date range on your chart.
Ideal for visualizing macro trends, historical context, and how markets may have reacted under different political administrations.
Mark Hours/Minutes (Formula + Minutes)This Pine Script code is a TradingView indicator that analyzes the hour and minutes of each candle in a 1-minute timeframe and plots a red triangle above the candle if one of the following conditions is met:
Sum/Difference Condition: The sum or the absolute difference of the hours and minutes is equal to 29, 35, or 71, with a tolerance of +/- 1.
Minutes Condition: The minutes are equal to 00, 29, or 35.
This indicator is based on the Goldbach theory and the "algo path" concept popularized by Hopiplaka, which posits that algorithmic trading paths often initiate from minute values of 00, 29, and 35. Use this indicator according to your trading strategy.
Coinbase PremiumCoinbase Premium Indicator
This Pine Script indicator displays the premium on Coinbase relative to the current ticker, if the ticker is available on Coinbase. It calculates the premium as the percentage difference between the price of the current ticker and the price on Coinbase.
Features:
Fetches the current ticker price.
Checks if the current ticker is available on Coinbase.
Calculates the premium only if the ticker is available on Coinbase.
Plots the premium on the chart.
Displays a message if the current ticker is not available on Coinbase.
Use this indicator to monitor the price premium of assets on Coinbase compared to other exchanges.
Triple Witching HourThe "Triple Witching Hour" indicator highlights the days when the quarterly expiration of stock index futures, options on futures, and options on stocks occurs simultaneously. These events, known as "Triple Witching Days," typically happen on the third Friday of March, June, September, and December. The indicator marks these days on the chart with a red triangle below the price bars and displays a label with the text "Triple Witching Hour." Traders can use this tool to identify periods of potential market volatility and adjust their strategies accordingly.
Fair Value Gap (FVG) Detector Fair Value Gap (FVG) is an imbalance in price action that occurs when there is a strong displacement (big movement) in the market, leaving a gap between wicks. This gap represents an area where price moved too quickly, and liquidity was not fully filled.
Traders use FVGs as potential areas where price might retrace and react before continuing in the original direction.
Pixel Art CloudPixel Art Cloud ☁️ (Super Mario Bros. 2 NES Style)
This Pine Script (v6) script generates a Pixel Art Cloud, inspired by the classic clouds from Super Mario Bros. 2 (NES).
📌 Features:
Displays a pixelated cloud in 8-bit retro style.
Overlays the chart at user-defined intervals.
Uses a color combination to simulate the classic cloud:
⚫ Black for the outline (classic pixelated border).
🔵 Light blue (#3CBCFC) for internal details, matching the clouds in the game.
Automatic repetition on the chart based on the separation parameter.
Does not affect market data, purely a visual decorative element.
🎨 Main Use:
This script is perfect for adding a nostalgic and creative touch to TradingView charts, bringing back the Super Mario Bros. 2 (NES) vibe.
🔧 Optional:
You can modify the cloud's appearance frequency by adjusting the separation parameter.
💡 Note:
This script is not a technical indicator and does not influence market analysis.
🚀 Add a retro touch to your charts with this pixelated cloud! ☁️🎮
Pixel Art ChickenPixel Art Chicken 🐔
This Pine Script (v6) script generates a Pixel Art of a Chicken on the TradingView chart.
📌 Features:
Draws a pixelated chicken using vibrant colors:
🔴 Red (comb)
🟡 Yellow (beak and legs)
⚪ Light gray (body)
⚫ Black (eyes and outline)
Overlays the chart at user-defined intervals.
Functions as a visual design without affecting market data.
Customizable in terms of location and spacing between images.
🎨 Main Use:
This script is perfect for adding a fun and creative touch to your TradingView charts.
🔧 Optional:
If you want to modify the repetition frequency of the pixel art, adjust the separation parameter.
💡 Note:
This script is not a technical indicator and does not influence market analysis.
🚀 Enjoy this Pixel Art on your charts! 🎮🐔🔥
Session Start & Day BackgroundThis indicator visually enhances your TradingView charts by highlighting the start of each new trading day and coloring the background based on the day of the week.
The first candle of each new trading day is marked in gray for better session separation.
The background color changes based on the current day of the week, making it easier to recognize market patterns and trends at a glance.
Works across all markets including Forex, Stocks, and Crypto.
Designed to improve chart readability and market structure visualization.
Ideal for traders who want a clearer overview of daily sessions and better differentiation between trading days! 🚀
Premarket High/Low Breakout AlertsPremarket High/Low Breakout Alerts
Description: This custom TradingView indicator helps you track premarket breakouts and breakdowns for a list of selected stocks. The indicator monitors the premarket session and sends an alert every time the stock's price breaks above the premarket high or below the premarket low.
Key Features:
Track Multiple Stocks: Easily monitor multiple stocks (e.g., AAPL, TSLA, NVDA, etc.) and get alerts when they break premarket levels.
Premarket Session Monitoring: The indicator checks for price movements during the premarket session (4:00 AM to 9:30 AM EST).
Customizable Ticker List: Modify the list of tickers directly from the TradingView settings to suit your daily trading needs.
Breakout and Breakdown Alerts: Receive instant alerts for both breakout (above premarket high) and breakdown (below premarket low) conditions.
Plot Premarket Levels: The premarket high and low levels are plotted on the chart for easy reference.
How to Use:
Add this indicator to your chart.
Go to the indicator settings and input your desired stock tickers (e.g., AAPL, TSLA, MSFT).
The indicator will automatically track the premarket levels and send alerts when those levels are broken.
Customize the tickers daily if needed.
Ideal For:
Day Traders who want to track premarket movements.
Swing Traders looking for strong breakouts from premarket levels.
Scalpers who need quick alerts to catch price action early.
Big Candles FilterHow It Works
A candle is considered "big" only if its body (distance from open to close) exceeds the barHeight value.
** NOT calculated by Range !!!
Features :
Bullish candles (close > open) are marked with a green "Buy" triangle if the body is large enough.
Bearish candles (close < open) are marked with a red "Sell" triangle if the body is large enough.
The bars are colored for big candles, and optional labels show the open and close prices.
Money Flow Divergence IndicatorOverview
The Money Flow Divergence Indicator is designed to help traders and investors identify key macroeconomic turning points by analyzing the relationship between U.S. M2 money supply growth and the S&P 500 Index (SPX). By comparing these two crucial economic indicators, the script highlights periods where market liquidity is outpacing or lagging behind stock market growth, offering potential buy and sell signals based on macroeconomic trends.
How It Works
1. Data Sources
S&P 500 Index (SPX500USD): Tracks the stock market performance.
U.S. M2 Money Supply (M2SL - Federal Reserve Economic Data): Represents available liquidity in the economy.
2. Growth Rate Calculation
SPX Growth: Percentage change in the S&P 500 index over time.
M2 Growth: Percentage change in M2 money supply over time.
Growth Gap (Delta): The difference between M2 growth and SPX growth, showing whether liquidity is fueling or lagging behind market performance.
3. Visualization
A histogram displays the growth gap over time:
Green Bars: M2 growth exceeds SPX growth (potential bullish signal).
Red Bars: SPX growth exceeds M2 growth (potential bearish signal).
A zero line helps distinguish between positive and negative growth gaps.
How to Use It
✅ Bullish Signal: When green bars appear consistently, indicating that liquidity is outpacing stock market growth. This suggests a favorable environment for buying or holding positions.
❌ Bearish Signal: When red bars appear consistently, meaning stock market growth outpaces liquidity expansion, signaling potential overvaluation or a market correction.
Best Timeframes for Analysis
This indicator works best on monthly timeframes (M) since it is designed for long-term investors and macro traders who focus on broad economic cycles.
Who Should Use This Indicator?
📈 Long-term investors looking for macroeconomic trends.
📊 Swing traders who incorporate liquidity analysis in their strategies.
💰 Portfolio managers assessing market liquidity conditions.
🚀 Use this indicator to stay ahead of market trends and make informed investment decisions based on macroeconomic liquidity shifts! 🚀
Custom Time Alert with Vertical Line📌 Detailed Explanation of the Custom Time Alert with Vertical Line in Pine Script v5
This script is a time-based alert system designed for TradingView. It allows traders to set a specific hour and minute for alerts and provides visual indicators on the chart, including a marker when the alert triggers and a vertical line at the alert time.
🔹 Main Features
Custom Alert Time → Users can specify the exact hour and minute for an alert.
Time Zone Offset Support → Users can manually adjust their local UTC offset to ensure alerts trigger at the correct time.
Real-Time Alert Condition → When the market reaches the set time, an alert notification is triggered.
Chart Visualization → A red marker appears when the alert is activated, and a blue vertical line is drawn at the alert time.
Automated Calculation → The script adjusts the alert time based on the user’s time zone settings.
🛠️ How It Works
User Input for Alert Time
The script allows users to enter their desired alert hour (0-23) and minute (0-59).
This ensures the alert triggers at the exact specified time.
Time Zone Offset Handling
Users enter their UTC offset (e.g., New York is -5, Tokyo is +9).
This ensures alerts work correctly regardless of the user’s location.
Time Calculation
The script adjusts the TradingView time by adding the time zone offset in milliseconds.
This converts the UTC-based TradingView time into the user’s local time.
Checking for a Time Match
The script constantly checks if the current hour and minute match the user-defined alert time.
If they match, the script activates an alert.
Triggering Alerts
The script uses TradingView’s alertcondition() function to create an alert.
When the time matches, TradingView sends a notification (e.g., pop-up, sound, or mobile alert).
Chart Markers for Visual Alerts
A red marker is displayed on the chart when the alert triggers.
A blue vertical line is drawn at the exact alert time.
📌 Example Use Cases
📈 1. Forex Traders Monitoring Market Opens
A forex trader who trades the London session wants an alert when the market opens at 8:00 AM UTC.
The trader sets:
Alert Hour = 8
Alert Minute = 0
Time Zone Offset = 0 (for UTC)
When the market reaches 8:00 AM UTC, the script triggers an alert.
📈 2. Stock Market Open Alerts
A trader in New York (EST) wants an alert at 9:30 AM Eastern Time (New York Stock Exchange open).
New York’s UTC offset is -5.
The trader sets:
Alert Hour = 9
Alert Minute = 30
Time Zone Offset = -5
The script ensures the alert triggers at 9:30 AM EST.
📈 3. Crypto Trader Watching a Specific Time
A crypto trader wants an alert for a specific strategy at 3:00 PM in Tokyo (UTC+9).
Tokyo’s UTC offset is +9.
The trader sets:
Alert Hour = 15
Alert Minute = 0
Time Zone Offset = +9
The script ensures the alert triggers exactly at 3:00 PM Tokyo time.
Lot Size InfoLot Size Info – Quick Futures Lot Size Display
Overview:
The Lot Size Info indicator helps traders quickly determine the lot size of futures contracts for a given symbol.
How It Works:
- Automatically detects whether the current symbol is a futures contract.
- If a futures contract exists, it fetches and displays the lot size.
- If no futures contract is available, it doesn't display anything.
- The information is displayed in a non-intrusive table at the bottom-right of the chart.
Why Use This Indicator?
✅ Instant Futures Lot Size Visibility – No need to check manually.
✅ Prevents Confusion – Displays nothing when no futures contract exists.
✅ Minimal & Non-Distracting UI – Small floating table that updates in real-time.
🔹 Best for: Futures traders, scalpers, and positional traders who frequently switch between stock and futures charts.
🚀 Add this to your TradingView toolkit today!
Alpha Wave System @DaviddTechAlpha Wave DaviddTech System by DaviddTech is an advanced, meticulously engineered trading indicator adhering strictly to the DaviddTech methodology. Rather than simply combining popular indicators, Alpha Wave strategically integrates specially-selected technical components—each optimized to enhance their combined strengths while neutralizing individual weaknesses, providing traders with clear, consistent, and high-probability trading signals.
Valid Setup:
🎯 Why This Combination Matters:
Quantum Adaptive Moving Average (Baseline):
This advanced adaptive MA provides superior responsiveness to market shifts by dynamically adjusting its sensitivity, clearly indicating the primary market direction and reducing lag compared to standard moving averages.
WavePulse Indicator (CoralChannel-based Confirmation #1):
Precisely detects shifts in momentum and price acceleration, allowing traders to anticipate trend continuation or reversals effectively, significantly enhancing trade accuracy.
Quantum Channel (G-Channel-based Confirmation #2):
Dynamically captures price volatility ranges, offering reliable trend structure validation and clear support/resistance channels, further increasing signal reliability.
Momentum Density (Volatility Filter):
Ensures traders enter only during optimal volatility conditions by quantifying momentum intensity, effectively filtering out low-quality, low-momentum scenarios.
Dynamic ATR-based Trailing Stop (Exit System):
Automatically manages trade exits with optimized ATR-based stop levels, systematically securing profits while effectively managing risk.
These meticulously integrated components reinforce each other's strengths, providing traders with a robust, disciplined, and clearly structured approach aligned with the DaviddTech methodology.
🔥 Latest Update – Enhanced BUY & SELL Signals:
Alpha Wave now clearly displays automated BUY and SELL signals directly on your chart, coupled with a comprehensive dashboard table for immediate signal validation. Signals appear only when all components—including baseline, confirmations, and volatility—are in alignment, significantly improving trade accuracy and confidence.
📌 How Traders Benefit from the New Signals:
BUY Signal: Execute long trades when Quantum Adaptive MA signals bullish, confirmed by bullish WavePulse momentum, bullish Quantum Channel structure, and strong Momentum Density readings.
SELL Signal: Clearly marked for entering short positions under bearish market conditions verified through Quantum Adaptive MA, WavePulse bearish momentum, Quantum Channel confirmation, and sufficient Momentum Density.
Signal Validation: A dedicated dashboard provides immediate visual strength metrics, allowing traders to quickly validate signals before execution, significantly enhancing trading discipline and consistency.
📊 Recommended DaviddTech Trading Plan:
Baseline: Determine overall market direction using Quantum Adaptive MA. Only trade in the indicated baseline direction.
Confirmations: Validate potential entries with WavePulse and Quantum Channel alignment.
Volatility Filter: Confirm sufficient market volatility with Momentum Density before entry.
Trailing Stop Loss: Manage risk and secure profits using the dynamic ATR-based trailing stop system.
Entries & Exits: Only execute trades when signals and dashboard components unanimously align.
🖼️ Visual Examples:
Alpha Wave by DaviddTech clearly demonstrates how an intelligently integrated system provides significantly superior trading insights compared to standalone indicators, ensuring precise, disciplined, and profitable market entries and exits across all trading environments.
5-Min First Candle Breakout/BreakdownAwesome! Here's a basic Pine Script (v5) for a First 5-minute candle breakout/breakdown strategy with Buy/Sell signals and price labels. This script works by capturing the high and low of the first candle of the session and then showing signals when those levels are broken.
You can customize it further for Entry, Stop Loss, Target, etc., but this gives you the foundation with labels for buys/sells based on breakout/breakdown.