NEEW-5.rsi2 76% winrateby week 76% win
83 trades win
26 trades loss
Signal-open trade on 3 and 40 mins (my strategy)
trade by 3:00 to 8:30 UTC
and 18:00 to 21:00
$-we have 500$
when we trade week, we have: 83*50$*75% - 26*50$ = 1812.5$+500$=2312.5$
ค้นหาในสคริปต์สำหรับ "binary"
NEEW10.12NOW IT'S TESTED
70+% profitble.
50-60 treides on week.
not paint.
Signals: maroon arrow - sell/buy 5min
blue arrow - sell/buy 5 min trade
Tester: blue and green background trade was win
black and red background trade was loss
If price not turn then was a signal(arrow) then turn were later.
DataCorrelationLibrary "DataCorrelation"
Implementation of functions related to data correlation calculations. Formulas have been transformed in such a way that we avoid running loops and instead make use of time series to gradually build the data we need to perform calculation. This allows the calculations to run on unbound series, and/or higher number of samples
🎲 Simplifying Covariance
Original Formula
//For Sample
Covₓᵧ = ∑ ((xᵢ-x̄)(yᵢ-ȳ)) / (n-1)
//For Population
Covₓᵧ = ∑ ((xᵢ-x̄)(yᵢ-ȳ)) / n
Now, if we look at numerator, this can be simplified as follows
∑ ((xᵢ-x̄)(yᵢ-ȳ))
=> (x₁-x̄)(y₁-ȳ) + (x₂-x̄)(y₂-ȳ) + (x₃-x̄)(y₃-ȳ) ... + (xₙ-x̄)(yₙ-ȳ)
=> (x₁y₁ + x̄ȳ - x₁ȳ - y₁x̄) + (x₂y₂ + x̄ȳ - x₂ȳ - y₂x̄) + (x₃y₃ + x̄ȳ - x₃ȳ - y₃x̄) ... + (xₙyₙ + x̄ȳ - xₙȳ - yₙx̄)
=> (x₁y₁ + x₂y₂ + x₃y₃ ... + xₙyₙ) + (x̄ȳ + x̄ȳ + x̄ȳ ... + x̄ȳ) - (x₁ȳ + x₂ȳ + x₃ȳ ... xₙȳ) - (y₁x̄ + y₂x̄ + y₃x̄ + yₙx̄)
=> ∑xᵢyᵢ + n(x̄ȳ) - ȳ∑xᵢ - x̄∑yᵢ
So, overall formula can be simplified to be used in pine as
//For Sample
Covₓᵧ = (∑xᵢyᵢ + n(x̄ȳ) - ȳ∑xᵢ - x̄∑yᵢ) / (n-1)
//For Population
Covₓᵧ = (∑xᵢyᵢ + n(x̄ȳ) - ȳ∑xᵢ - x̄∑yᵢ) / n
🎲 Simplifying Standard Deviation
Original Formula
//For Sample
σ = √(∑(xᵢ-x̄)² / (n-1))
//For Population
σ = √(∑(xᵢ-x̄)² / n)
Now, if we look at numerator within square root
∑(xᵢ-x̄)²
=> (x₁² + x̄² - 2x₁x̄) + (x₂² + x̄² - 2x₂x̄) + (x₃² + x̄² - 2x₃x̄) ... + (xₙ² + x̄² - 2xₙx̄)
=> (x₁² + x₂² + x₃² ... + xₙ²) + (x̄² + x̄² + x̄² ... + x̄²) - (2x₁x̄ + 2x₂x̄ + 2x₃x̄ ... + 2xₙx̄)
=> ∑xᵢ² + nx̄² - 2x̄∑xᵢ
=> ∑xᵢ² + x̄(nx̄ - 2∑xᵢ)
So, overall formula can be simplified to be used in pine as
//For Sample
σ = √(∑xᵢ² + x̄(nx̄ - 2∑xᵢ) / (n-1))
//For Population
σ = √(∑xᵢ² + x̄(nx̄ - 2∑xᵢ) / n)
🎲 Using BinaryInsertionSort library
Chatterjee Correlation and Spearman Correlation functions make use of BinaryInsertionSort library to speed up sorting. The library in turn implements mechanism to insert values into sorted order so that load on sorting is reduced by higher extent allowing the functions to work on higher sample size.
🎲 Function Documentation
chatterjeeCorrelation(x, y, sampleSize, plotSize)
Calculates chatterjee correlation between two series. Formula is - ξnₓᵧ = 1 - (3 * ∑ |rᵢ₊₁ - rᵢ|)/ (n²-1)
Parameters:
x : First series for which correlation need to be calculated
y : Second series for which correlation need to be calculated
sampleSize : number of samples to be considered for calculattion of correlation. Default is 20000
plotSize : How many historical values need to be plotted on chart.
Returns: float correlation - Chatterjee correlation value if falls within plotSize, else returns na
spearmanCorrelation(x, y, sampleSize, plotSize)
Calculates spearman correlation between two series. Formula is - ρ = 1 - (6∑dᵢ²/n(n²-1))
Parameters:
x : First series for which correlation need to be calculated
y : Second series for which correlation need to be calculated
sampleSize : number of samples to be considered for calculattion of correlation. Default is 20000
plotSize : How many historical values need to be plotted on chart.
Returns: float correlation - Spearman correlation value if falls within plotSize, else returns na
covariance(x, y, include, biased)
Calculates covariance between two series of unbound length. Formula is Covₓᵧ = ∑ ((xᵢ-x̄)(yᵢ-ȳ)) / (n-1) for sample and Covₓᵧ = ∑ ((xᵢ-x̄)(yᵢ-ȳ)) / n for population
Parameters:
x : First series for which covariance need to be calculated
y : Second series for which covariance need to be calculated
include : boolean flag used for selectively including sample
biased : boolean flag representing population covariance instead of sample covariance
Returns: float covariance - covariance of selective samples of two series x, y
stddev(x, include, biased)
Calculates Standard Deviation of a series. Formula is σ = √( ∑(xᵢ-x̄)² / n ) for sample and σ = √( ∑(xᵢ-x̄)² / (n-1) ) for population
Parameters:
x : Series for which Standard Deviation need to be calculated
include : boolean flag used for selectively including sample
biased : boolean flag representing population covariance instead of sample covariance
Returns: float stddev - standard deviation of selective samples of series x
correlation(x, y, include)
Calculates pearson correlation between two series of unbound length. Formula is r = Covₓᵧ / σₓσᵧ
Parameters:
x : First series for which correlation need to be calculated
y : Second series for which correlation need to be calculated
include : boolean flag used for selectively including sample
Returns: float correlation - correlation between selective samples of two series x, y
Wick Detection (1 and 0) - AYNETDetailed Scientific Explanation
1. Wick Detection Logic
Definition of a Wick:
A wick, also known as a shadow, represents the price action outside the range of a candlestick's body (the region between open and close).
Upper Wick: Occurs when the high value exceeds the greater of open and close.
Lower Wick: Occurs when the low value is lower than the smaller of open and close.
Upper Wick Detection:
pinescript
Kodu kopyala
bool has_upper_wick = high > math.max(open, close)
This checks if the high price of the candle is greater than the maximum of the open and close prices. If true, an upper wick exists.
Lower Wick Detection:
pinescript
Kodu kopyala
bool has_lower_wick = low < math.min(open, close)
This checks if the low price of the candle is less than the minimum of the open and close prices. If true, a lower wick exists.
2. Binary Representation
The presence of a wick is encoded as a binary value for simplicity and computational analysis:
Upper Wick: Represented as 1 if present, otherwise 0.
pinescript
Kodu kopyala
float upper_wick_binary = has_upper_wick ? 1 : 0
Lower Wick: Represented as 1 if present, otherwise 0. This value is inverted (-1) for visualization purposes.
pinescript
Kodu kopyala
float lower_wick_binary = has_lower_wick ? 1 : 0
3. Visualization with Histograms
The plot function is used to create histograms for visualizing the binary wick data:
Upper Wicks: Plotted as positive values with green columns:
pinescript
Kodu kopyala
plot(upper_wick_binary, title="Upper Wick", color=color.new(color.green, 0), style=plot.style_columns, linewidth=2)
Lower Wicks: Plotted as negative values with red columns:
pinescript
Kodu kopyala
plot(lower_wick_binary * -1, title="Lower Wick", color=color.new(color.red, 0), style=plot.style_columns, linewidth=2)
Features and Applications
1. Wick Visualization:
Upper wicks are displayed as positive green columns.
Lower wicks are displayed as negative red columns.
This provides a clear visual representation of wick presence in historical data.
2. Technical Analysis:
Wick formations often indicate market sentiment:
Upper Wicks: Sellers pushed the price lower after buyers drove it higher, signaling rejection at the top.
Lower Wicks: Buyers pushed the price higher after sellers drove it lower, signaling rejection at the bottom.
3. Signal Generation:
Traders can use wick detection to build strategies, such as identifying key price levels or market reversals.
Enhancements and Future Improvements
1. Wick Length Measurement
Instead of binary detection, measure the actual length of the wick:
pinescript
Kodu kopyala
float upper_wick_length = high - math.max(open, close)
float lower_wick_length = math.min(open, close) - low
This approach allows for thresholds to identify significant wicks:
pinescript
Kodu kopyala
bool significant_upper_wick = upper_wick_length > 10 // For wicks longer than 10 units.
bool significant_lower_wick = lower_wick_length > 10
2. Alerts for Long Wicks
Trigger alerts when significant wicks are detected:
pinescript
Kodu kopyala
alertcondition(significant_upper_wick, title="Long Upper Wick", message="A significant upper wick has been detected.")
alertcondition(significant_lower_wick, title="Long Lower Wick", message="A significant lower wick has been detected.")
3. Combined Wick Analysis
Analyze both upper and lower wicks to assess volatility:
pinescript
Kodu kopyala
float total_wick_length = upper_wick_length + lower_wick_length
bool high_volatility = total_wick_length > 20 // Combined wick length exceeds 20 units.
Conclusion
This script provides a compact and computationally efficient way to detect candlestick wicks and represent them as binary data. By visualizing the data with histograms, traders can easily identify wick formations and use them for technical analysis, signal generation, and volatility assessment. The approach can be extended further to measure wick length, detect significant wicks, and integrate these insights into automated trading systems.
Zero-lag Volatility-Breakout EMA Trend StrategyThis is a simple volatility-breakout strategy which uses the difference in two different zero-lag* EMAs (explained below on what exactly I mean by this) to track the upwards or downwards strength of an instrument. When the difference breaks above a Bollinger Band of a configurable standard deviation multiple, the strategy enters based off the direction of the base EMA used (i.e. if the difference breaks above and the current EMA is rising, a long entry is produced. If the difference breaks above and the current EMA is falling, a short entry is produced).
The two EMA-type metrics used to calculate the volatility difference are calculated by the following formula:
top_ema = math.max(src, ta.ema(src, length))
bottom_ema = math.min(src, ta.ema(src, length))
ema_difference = (top_ema - bottom_ema) - 1
This produces a difference which responds immediately to large price movements, instead of lagging if it used strictly the EMA itself.
SETTINGS
Source : The source of the strategy - close, hlc3, another indicator plot, etc.
EMA Difference Length : The length of both the EMA difference statistics and the base EMA used to calculate the entry side.
Standard Deviation Multiple : The Bollinger Bands multiple used when the difference is breaking out.
Use Binary Strategy : The strategy has two configurations: Binary and Rapid-Exit. 'Binary' means that it will not close a long position until a short position is generated, and vice-versa. 'Rapid-Exit' will close a long or short position once the difference reaches the middle Bollinger Band MA. This means that turning on 'Binary' will expose you to more market risk, but potentially greater market return. Turning off 'Binary' will exit quickly and reduce drawdown.
The strategy results below use 10% equity and 0.1% fees per trade.
Qualitative Smoothed Strength Index***RSI CHART BELOW IS FOR COMPARSION TO SHOW HOE THEY MAKE SIMILIAR PATTERNS*** IT IS NOT PART OF THE INDICATOR***
The Qualitative Smoothed Strength Index (QSSI) is a simplified momentum oscillator whose values will oscillate between 0 and 1 . By converting price differences into binary values and smoothing them with a moving average, it identifies qualitative strength of price movements. This simplification allows traders to easily interpret trends and reversals. The QSSI offers advantages such as noise reduction, clear trend identification, and early signal detection, resulting in less lag compared to traditional oscillators. Traders can customize the indicator based on their preferences and use it across various markets.
QSSI Indicator uses the input function is used to define the input parameters of the indicator. In this case, there are two inputs:
length: The number of periods used for calculating the differences (a, b, c) and their assigned values. Default value is 5.
MAL: The length of the moving average used for smoothing the assigned values. Default value is 14.
The next few lines calculate 'a', 'b', and 'c', which represent the differences between the high, low, and close prices, respectively, and their corresponding previous simple moving averages (SMAs) of specified length. These differences are used to identify price movements.
The code assigns binary values (0 or 1) to a_assigned, b_assigned, and c_assigned, depending on whether the corresponding differences (a, b, c) are greater than 0. This step converts the differences into a binary representation, indicating upward or downward price movements.
Average_assigned calculates the average of the assigned binary values of a, b, and c. This average value represents the overall strength of the price movement.ma_assigned calculates the 14-day moving average of average_assigned, which smoothens the indicator and helps traders identify trends more easily.
The code plots the 14-day moving average (ma_assigned) on the chart as a blue line. It also plots the individual assigned values of a, b, and c as dots on the chart. a_assigned is shown in green, b_assigned in red, and c_assigned in black. These dots indicate the presence of upward or downward movements in the respective price components. By visualizing these dots on the chart, the trader can quickly identify the presence and direction of price movements for each of the price components. This information can be valuable for understanding how the different price elements (high, low, and close) are contributing to the overall trend and strength of the market. Traders can use this data to make more informed decisions, such as confirming the presence of trends, identifying potential reversals, or gauging the overall market sentiment based on the distribution of upward and downward movements across the price components.
Finally, the code draws horizontal dotted lines at levels 0.70 (0.8)and 0.30 (0.2). These levels are typically used to identify overbought (above 0.70 or 0.8) and oversold (below 0.30 or 0.2) conditions in the market.
The Qualitative Smoothed Strength Index (QSSI) provides traders with information about the strength and direction of price movements. By using assigned binary values, the indicator simplifies the interpretation of price data, making it easier to identify trends and potential reversals.
Tzotchev Trend Measure [EdgeTools]Are you still measuring trend strength with moving averages? Here is a better variant at scientific level:
Tzotchev Trend Measure: A Statistical Approach to Trend Following
The Tzotchev Trend Measure represents a sophisticated advancement in quantitative trend analysis, moving beyond traditional moving average-based indicators toward a statistically rigorous framework for measuring trend strength. This indicator implements the methodology developed by Tzotchev et al. (2015) in their seminal J.P. Morgan research paper "Designing robust trend-following system: Behind the scenes of trend-following," which introduced a probabilistic approach to trend measurement that has since become a cornerstone of institutional trading strategies.
Mathematical Foundation and Statistical Theory
The core innovation of the Tzotchev Trend Measure lies in its transformation of price momentum into a probability-based metric through the application of statistical hypothesis testing principles. The indicator employs the fundamental formula ST = 2 × Φ(√T × r̄T / σ̂T) - 1, where ST represents the trend strength score bounded between -1 and +1, Φ(x) denotes the normal cumulative distribution function, T represents the lookback period in trading days, r̄T is the average logarithmic return over the specified period, and σ̂T represents the estimated daily return volatility.
This formulation transforms what is essentially a t-statistic into a probabilistic trend measure, testing the null hypothesis that the mean return equals zero against the alternative hypothesis of non-zero mean return. The use of logarithmic returns rather than simple returns provides several statistical advantages, including symmetry properties where log(P₁/P₀) = -log(P₀/P₁), additivity characteristics that allow for proper compounding analysis, and improved validity of normal distribution assumptions that underpin the statistical framework.
The implementation utilizes the Abramowitz and Stegun (1964) approximation for the normal cumulative distribution function, achieving accuracy within ±1.5 × 10⁻⁷ for all input values. This approximation employs Horner's method for polynomial evaluation to ensure numerical stability, particularly important when processing large datasets or extreme market conditions.
Comparative Analysis with Traditional Trend Measurement Methods
The Tzotchev Trend Measure demonstrates significant theoretical and empirical advantages over conventional trend analysis techniques. Traditional moving average-based systems, including simple moving averages (SMA), exponential moving averages (EMA), and their derivatives such as MACD, suffer from several fundamental limitations that the Tzotchev methodology addresses systematically.
Moving average systems exhibit inherent lag bias, as documented by Kaufman (2013) in "Trading Systems and Methods," where he demonstrates that moving averages inevitably lag price movements by approximately half their period length. This lag creates delayed signal generation that reduces profitability in trending markets and increases false signal frequency during consolidation periods. In contrast, the Tzotchev measure eliminates lag bias by directly analyzing the statistical properties of return distributions rather than smoothing price levels.
The volatility normalization inherent in the Tzotchev formula addresses a critical weakness in traditional momentum indicators. As shown by Bollinger (2001) in "Bollinger on Bollinger Bands," momentum oscillators like RSI and Stochastic fail to account for changing volatility regimes, leading to inconsistent signal interpretation across different market conditions. The Tzotchev measure's incorporation of return volatility in the denominator ensures that trend strength assessments remain consistent regardless of the underlying volatility environment.
Empirical studies by Hurst, Ooi, and Pedersen (2013) in "Demystifying Managed Futures" demonstrate that traditional trend-following indicators suffer from significant drawdowns during whipsaw markets, with Sharpe ratios frequently below 0.5 during challenging periods. The authors attribute these poor performance characteristics to the binary nature of most trend signals and their inability to quantify signal confidence. The Tzotchev measure addresses this limitation by providing continuous probability-based outputs that allow for more sophisticated risk management and position sizing strategies.
The statistical foundation of the Tzotchev approach provides superior robustness compared to technical indicators that lack theoretical grounding. Fama and French (1988) in "Permanent and Temporary Components of Stock Prices" established that price movements contain both permanent and temporary components, with traditional moving averages unable to distinguish between these elements effectively. The Tzotchev methodology's hypothesis testing framework specifically tests for the presence of permanent trend components while filtering out temporary noise, providing a more theoretically sound approach to trend identification.
Research by Moskowitz, Ooi, and Pedersen (2012) in "Time Series Momentum in the Cross Section of Asset Returns" found that traditional momentum indicators exhibit significant variation in effectiveness across asset classes and time periods. Their study of multiple asset classes over decades revealed that simple price-based momentum measures often fail to capture persistent trends in fixed income and commodity markets. The Tzotchev measure's normalization by volatility and its probabilistic interpretation provide consistent performance across diverse asset classes, as demonstrated in the original J.P. Morgan research.
Comparative performance studies conducted by AQR Capital Management (Asness, Moskowitz, and Pedersen, 2013) in "Value and Momentum Everywhere" show that volatility-adjusted momentum measures significantly outperform traditional price momentum across international equity, bond, commodity, and currency markets. The study documents Sharpe ratio improvements of 0.2 to 0.4 when incorporating volatility normalization, consistent with the theoretical advantages of the Tzotchev approach.
The regime detection capabilities of the Tzotchev measure provide additional advantages over binary trend classification systems. Research by Ang and Bekaert (2002) in "Regime Switches in Interest Rates" demonstrates that financial markets exhibit distinct regime characteristics that traditional indicators fail to capture adequately. The Tzotchev measure's five-tier classification system (Strong Bull, Weak Bull, Neutral, Weak Bear, Strong Bear) provides more nuanced market state identification than simple trend/no-trend binary systems.
Statistical testing by Jegadeesh and Titman (2001) in "Profitability of Momentum Strategies" revealed that traditional momentum indicators suffer from significant parameter instability, with optimal lookback periods varying substantially across market conditions and asset classes. The Tzotchev measure's statistical framework provides more stable parameter selection through its grounding in hypothesis testing theory, reducing the need for frequent parameter optimization that can lead to overfitting.
Advanced Noise Filtering and Market Regime Detection
A significant enhancement over the original Tzotchev methodology is the incorporation of a multi-factor noise filtering system designed to reduce false signals during sideways market conditions. The filtering mechanism employs four distinct approaches: adaptive thresholding based on current market regime strength, volatility-based filtering utilizing ATR percentile analysis, trend strength confirmation through momentum alignment, and a comprehensive multi-factor approach that combines all methodologies.
The adaptive filtering system analyzes market microstructure through price change relative to average true range, calculates volatility percentiles over rolling windows, and assesses trend alignment across multiple timeframes using exponential moving averages of varying periods. This approach addresses one of the primary limitations identified in traditional trend-following systems, namely their tendency to generate excessive false signals during periods of low volatility or sideways price action.
The regime detection component classifies market conditions into five distinct categories: Strong Bull (ST > 0.3), Weak Bull (0.1 < ST ≤ 0.3), Neutral (-0.1 ≤ ST ≤ 0.1), Weak Bear (-0.3 ≤ ST < -0.1), and Strong Bear (ST < -0.3). This classification system provides traders with clear, quantitative definitions of market regimes that can inform position sizing, risk management, and strategy selection decisions.
Professional Implementation and Trading Applications
The indicator incorporates three distinct trading profiles designed to accommodate different investment approaches and risk tolerances. The Conservative profile employs longer lookback periods (63 days), higher signal thresholds (0.2), and reduced filter sensitivity (0.5) to minimize false signals and focus on major trend changes. The Balanced profile utilizes standard academic parameters with moderate settings across all dimensions. The Aggressive profile implements shorter lookback periods (14 days), lower signal thresholds (-0.1), and increased filter sensitivity (1.5) to capture shorter-term trend movements.
Signal generation occurs through threshold crossover analysis, where long signals are generated when the trend measure crosses above the specified threshold and short signals when it crosses below. The implementation includes sophisticated signal confirmation mechanisms that consider trend alignment across multiple timeframes and momentum strength percentiles to reduce the likelihood of false breakouts.
The alert system provides real-time notifications for trend threshold crossovers, strong regime changes, and signal generation events, with configurable frequency controls to prevent notification spam. Alert messages are standardized to ensure consistency across different market conditions and timeframes.
Performance Optimization and Computational Efficiency
The implementation incorporates several performance optimization features designed to handle large datasets efficiently. The maximum bars back parameter allows users to control historical calculation depth, with default settings optimized for most trading applications while providing flexibility for extended historical analysis. The system includes automatic performance monitoring that generates warnings when computational limits are approached.
Error handling mechanisms protect against division by zero conditions, infinite values, and other numerical instabilities that can occur during extreme market conditions. The finite value checking system ensures data integrity throughout the calculation process, with fallback mechanisms that maintain indicator functionality even when encountering corrupted or missing price data.
Timeframe validation provides warnings when the indicator is applied to unsuitable timeframes, as the Tzotchev methodology was specifically designed for daily and higher timeframe analysis. This validation helps prevent misapplication of the indicator in contexts where its statistical assumptions may not hold.
Visual Design and User Interface
The indicator features eight professional color schemes designed for different trading environments and user preferences. The EdgeTools theme provides an institutional blue and steel color palette suitable for professional trading environments. The Gold theme offers warm colors optimized for commodities trading. The Behavioral theme incorporates psychology-based color contrasts that align with behavioral finance principles. The Quant theme provides neutral colors suitable for analytical applications.
Additional specialized themes include Ocean, Fire, Matrix, and Arctic variations, each optimized for specific visual preferences and trading contexts. All color schemes include automatic dark and light mode optimization to ensure optimal readability across different chart backgrounds and trading platforms.
The information table provides real-time display of key metrics including current trend measure value, market regime classification, signal strength, Z-score, average returns, volatility measures, filter threshold levels, and filter effectiveness percentages. This comprehensive dashboard allows traders to monitor all relevant indicator components simultaneously.
Theoretical Implications and Research Context
The Tzotchev Trend Measure addresses several theoretical limitations inherent in traditional technical analysis approaches. Unlike moving average-based systems that rely on price level comparisons, this methodology grounds trend analysis in statistical hypothesis testing, providing a more robust theoretical foundation for trading decisions.
The probabilistic interpretation of trend strength offers significant advantages over binary trend classification systems. Rather than simply indicating whether a trend exists, the measure quantifies the statistical confidence level associated with the trend assessment, allowing for more nuanced risk management and position sizing decisions.
The incorporation of volatility normalization addresses the well-documented problem of volatility clustering in financial time series, ensuring that trend strength assessments remain consistent across different market volatility regimes. This normalization is particularly important for portfolio management applications where consistent risk metrics across different assets and time periods are essential.
Practical Applications and Trading Strategy Integration
The Tzotchev Trend Measure can be effectively integrated into various trading strategies and portfolio management frameworks. For trend-following strategies, the indicator provides clear entry and exit signals with quantified confidence levels. For mean reversion strategies, extreme readings can signal potential turning points. For portfolio allocation, the regime classification system can inform dynamic asset allocation decisions.
The indicator's statistical foundation makes it particularly suitable for quantitative trading strategies where systematic, rules-based approaches are preferred over discretionary decision-making. The standardized output range facilitates easy integration with position sizing algorithms and risk management systems.
Risk management applications benefit from the indicator's ability to quantify trend strength and provide early warning signals of potential trend changes. The multi-timeframe analysis capability allows for the construction of robust risk management frameworks that consider both short-term tactical and long-term strategic market conditions.
Implementation Guide and Parameter Configuration
The practical application of the Tzotchev Trend Measure requires careful parameter configuration to optimize performance for specific trading objectives and market conditions. This section provides comprehensive guidance for parameter selection and indicator customization.
Core Calculation Parameters
The Lookback Period parameter controls the statistical window used for trend calculation and represents the most critical setting for the indicator. Default values range from 14 to 63 trading days, with shorter periods (14-21 days) providing more sensitive trend detection suitable for short-term trading strategies, while longer periods (42-63 days) offer more stable trend identification appropriate for position trading and long-term investment strategies. The parameter directly influences the statistical significance of trend measurements, with longer periods requiring stronger underlying trends to generate significant signals but providing greater reliability in trend identification.
The Price Source parameter determines which price series is used for return calculations. The default close price provides standard trend analysis, while alternative selections such as high-low midpoint ((high + low) / 2) can reduce noise in volatile markets, and volume-weighted average price (VWAP) offers superior trend identification in institutional trading environments where volume concentration matters significantly.
The Signal Threshold parameter establishes the minimum trend strength required for signal generation, with values ranging from -0.5 to 0.5. Conservative threshold settings (0.2 to 0.3) reduce false signals but may miss early trend opportunities, while aggressive settings (-0.1 to 0.1) provide earlier signal generation at the cost of increased false positive rates. The optimal threshold depends on the trader's risk tolerance and the volatility characteristics of the traded instrument.
Trading Profile Configuration
The Trading Profile system provides pre-configured parameter sets optimized for different trading approaches. The Conservative profile employs a 63-day lookback period with a 0.2 signal threshold and 0.5 noise sensitivity, designed for long-term position traders seeking high-probability trend signals with minimal false positives. The Balanced profile uses a 21-day lookback with 0.05 signal threshold and 1.0 noise sensitivity, suitable for swing traders requiring moderate signal frequency with acceptable noise levels. The Aggressive profile implements a 14-day lookback with -0.1 signal threshold and 1.5 noise sensitivity, optimized for day traders and scalpers requiring frequent signal generation despite higher noise levels.
Advanced Noise Filtering System
The noise filtering mechanism addresses the challenge of false signals during sideways market conditions through four distinct methodologies. The Adaptive filter adjusts thresholds based on current trend strength, increasing sensitivity during strong trending periods while raising thresholds during consolidation phases. The Volatility-based filter utilizes Average True Range (ATR) percentile analysis to suppress signals during abnormally volatile conditions that typically generate false trend indications.
The Trend Strength filter requires alignment between multiple momentum indicators before confirming signals, reducing the probability of false breakouts from consolidation patterns. The Multi-factor approach combines all filtering methodologies using weighted scoring to provide the most robust noise reduction while maintaining signal responsiveness during genuine trend initiations.
The Noise Sensitivity parameter controls the aggressiveness of the filtering system, with lower values (0.5-1.0) providing conservative filtering suitable for volatile instruments, while higher values (1.5-2.0) allow more signals through but may increase false positive rates during choppy market conditions.
Visual Customization and Display Options
The Color Scheme parameter offers eight professional visualization options designed for different analytical preferences and market conditions. The EdgeTools scheme provides high contrast visualization optimized for trend strength differentiation, while the Gold scheme offers warm tones suitable for commodity analysis. The Behavioral scheme uses psychological color associations to enhance decision-making speed, and the Quant scheme provides neutral colors appropriate for quantitative analysis environments.
The Ocean, Fire, Matrix, and Arctic schemes offer additional aesthetic options while maintaining analytical functionality. Each scheme includes optimized colors for both light and dark chart backgrounds, ensuring visibility across different trading platform configurations.
The Show Glow Effects parameter enhances plot visibility through multiple layered lines with progressive transparency, particularly useful when analyzing multiple timeframes simultaneously or when working with dense price data that might obscure trend signals.
Performance Optimization Settings
The Maximum Bars Back parameter controls the historical data depth available for calculations, with values ranging from 5,000 to 50,000 bars. Higher values enable analysis of longer-term trend patterns but may impact indicator loading speed on slower systems or when applied to multiple instruments simultaneously. The optimal setting depends on the intended analysis timeframe and available computational resources.
The Calculate on Every Tick parameter determines whether the indicator updates with every price change or only at bar close. Real-time calculation provides immediate signal updates suitable for scalping and day trading strategies, while bar-close calculation reduces computational overhead and eliminates signal flickering during bar formation, preferred for swing trading and position management applications.
Alert System Configuration
The Alert Frequency parameter controls notification generation, with options for all signals, bar close only, or once per bar. High-frequency trading strategies benefit from all signals mode, while position traders typically prefer bar close alerts to avoid premature position entries based on intrabar fluctuations.
The alert system generates four distinct notification types: Long Signal alerts when the trend measure crosses above the positive signal threshold, Short Signal alerts for negative threshold crossings, Bull Regime alerts when entering strong bullish conditions, and Bear Regime alerts for strong bearish regime identification.
Table Display and Information Management
The information table provides real-time statistical metrics including current trend value, regime classification, signal status, and filter effectiveness measurements. The table position can be customized for optimal screen real estate utilization, and individual metrics can be toggled based on analytical requirements.
The Language parameter supports both English and German display options for international users, while maintaining consistent calculation methodology regardless of display language selection.
Risk Management Integration
Effective risk management integration requires coordination between the trend measure signals and position sizing algorithms. Strong trend readings (above 0.5 or below -0.5) support larger position sizes due to higher probability of trend continuation, while neutral readings (between -0.2 and 0.2) suggest reduced position sizes or range-trading strategies.
The regime classification system provides additional risk management context, with Strong Bull and Strong Bear regimes supporting trend-following strategies, while Neutral regimes indicate potential for mean reversion approaches. The filter effectiveness metric helps traders assess current market conditions and adjust strategy parameters accordingly.
Timeframe Considerations and Multi-Timeframe Analysis
The indicator's effectiveness varies across different timeframes, with higher timeframes (daily, weekly) providing more reliable trend identification but slower signal generation, while lower timeframes (hourly, 15-minute) offer faster signals with increased noise levels. Multi-timeframe analysis combining trend alignment across multiple periods significantly improves signal quality and reduces false positive rates.
For optimal results, traders should consider trend alignment between the primary trading timeframe and at least one higher timeframe before entering positions. Divergences between timeframes often signal potential trend reversals or consolidation periods requiring strategy adjustment.
Conclusion
The Tzotchev Trend Measure represents a significant advancement in technical analysis methodology, combining rigorous statistical foundations with practical trading applications. Its implementation of the J.P. Morgan research methodology provides institutional-quality trend analysis capabilities previously available only to sophisticated quantitative trading firms.
The comprehensive parameter configuration options enable customization for diverse trading styles and market conditions, while the advanced noise filtering and regime detection capabilities provide superior signal quality compared to traditional trend-following indicators. Proper parameter selection and understanding of the indicator's statistical foundation are essential for achieving optimal trading results and effective risk management.
References
Abramowitz, M. and Stegun, I.A. (1964). Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables. Washington: National Bureau of Standards.
Ang, A. and Bekaert, G. (2002). Regime Switches in Interest Rates. Journal of Business and Economic Statistics, 20(2), 163-182.
Asness, C.S., Moskowitz, T.J., and Pedersen, L.H. (2013). Value and Momentum Everywhere. Journal of Finance, 68(3), 929-985.
Bollinger, J. (2001). Bollinger on Bollinger Bands. New York: McGraw-Hill.
Fama, E.F. and French, K.R. (1988). Permanent and Temporary Components of Stock Prices. Journal of Political Economy, 96(2), 246-273.
Hurst, B., Ooi, Y.H., and Pedersen, L.H. (2013). Demystifying Managed Futures. Journal of Investment Management, 11(3), 42-58.
Jegadeesh, N. and Titman, S. (2001). Profitability of Momentum Strategies: An Evaluation of Alternative Explanations. Journal of Finance, 56(2), 699-720.
Kaufman, P.J. (2013). Trading Systems and Methods. 5th Edition. Hoboken: John Wiley & Sons.
Moskowitz, T.J., Ooi, Y.H., and Pedersen, L.H. (2012). Time Series Momentum. Journal of Financial Economics, 104(2), 228-250.
Tzotchev, D., Lo, A.W., and Hasanhodzic, J. (2015). Designing robust trend-following system: Behind the scenes of trend-following. J.P. Morgan Quantitative Research, Asset Management Division.
Recession Warning Model [BackQuant]Recession Warning Model
Overview
The Recession Warning Model (RWM) is a Pine Script® indicator designed to estimate the probability of an economic recession by integrating multiple macroeconomic, market sentiment, and labor market indicators. It combines over a dozen data series into a transparent, adaptive, and actionable tool for traders, portfolio managers, and researchers. The model provides customizable complexity levels, display modes, and data processing options to accommodate various analytical requirements while ensuring robustness through dynamic weighting and regime-aware adjustments.
Purpose
The RWM fulfills the need for a concise yet comprehensive tool to monitor recession risk. Unlike approaches relying on a single metric, such as yield-curve inversion, or extensive economic reports, it consolidates multiple data sources into a single probability output. The model identifies active indicators, their confidence levels, and the current economic regime, enabling users to anticipate downturns and adjust strategies accordingly.
Core Features
- Indicator Families : Incorporates 13 indicators across five categories: Yield, Labor, Sentiment, Production, and Financial Stress.
- Dynamic Weighting : Adjusts indicator weights based on recent predictive accuracy, constrained within user-defined boundaries.
- Leading and Coincident Split : Separates early-warning (leading) and confirmatory (coincident) signals, with adjustable weighting (default 60/40 mix).
- Economic Regime Sensitivity : Modulates output sensitivity based on market conditions (Expansion, Late-Cycle, Stress, Crisis), using a composite of VIX, yield-curve, financial conditions, and credit spreads.
- Display Options : Supports four modes—Probability (0-100%), Binary (four risk bins), Lead/Coincident, and Ensemble (blended probability).
- Confidence Intervals : Reflects model stability, widening during high volatility or conflicting signals.
- Alerts : Configurable thresholds (Watch, Caution, Warning, Alert) with persistence filters to minimize false signals.
- Data Export : Enables CSV output for probabilities, signals, and regimes, facilitating external analysis in Python or R.
Model Complexity Levels
Users can select from four tiers to balance simplicity and depth:
1. Essential : Focuses on three core indicators—yield-curve spread, jobless claims, and unemployment change—for minimalistic monitoring.
2. Standard : Expands to nine indicators, adding consumer confidence, PMI, VIX, S&P 500 trend, money supply vs. GDP, and the Sahm Rule.
3. Professional : Includes all 13 indicators, incorporating financial conditions, credit spreads, JOLTS vacancies, and wage growth.
4. Research : Unlocks all indicators plus experimental settings for advanced users.
Key Indicators
Below is a summary of the 13 indicators, their data sources, and economic significance:
- Yield-Curve Spread : Difference between 10-year and 3-month Treasury yields. Negative spreads signal banking sector stress.
- Jobless Claims : Four-week moving average of unemployment claims. Sustained increases indicate rising layoffs.
- Unemployment Change : Three-month change in unemployment rate. Sharp rises often precede recessions.
- Sahm Rule : Triggers when unemployment rises 0.5% above its 12-month low, a reliable recession indicator.
- Consumer Confidence : University of Michigan survey. Declines reflect household pessimism, impacting spending.
- PMI : Purchasing Managers’ Index. Values below 50 indicate manufacturing contraction.
- VIX : CBOE Volatility Index. Elevated levels suggest market anticipation of economic distress.
- S&P 500 Growth : Weekly moving average trend. Declines reduce wealth effects, curbing consumption.
- M2 + GDP Trend : Monitors money supply and real GDP. Simultaneous declines signal credit contraction.
- NFCI : Chicago Fed’s National Financial Conditions Index. Positive values indicate tighter conditions.
- Credit Spreads : Proxy for corporate bond spreads using 10-year vs. 2-year Treasury yields. Widening spreads reflect stress.
- JOLTS Vacancies : Job openings data. Significant drops precede hiring slowdowns.
- Wage Growth : Year-over-year change in average hourly earnings. Late-cycle spikes often signal economic overheating.
Data Processing
- Rate of Change (ROC) : Optionally applied to capture momentum in data series (default: 21-bar period).
- Z-Score Normalization : Standardizes indicators to a common scale (default: 252-bar lookback).
- Smoothing : Applies a short moving average to final signals (default: 5-bar period) to reduce noise.
- Binary Signals : Generated for each indicator (e.g., yield-curve inverted or PMI below 50) based on thresholds or Z-score deviations.
Probability Calculation
1. Each indicator’s binary signal is weighted according to user settings or dynamic performance.
2. Weights are normalized to sum to 100% across active indicators.
3. Leading and coincident signals are aggregated separately (if split mode is enabled) and combined using the specified mix.
4. The probability is adjusted by a regime multiplier, amplifying risk during Stress or Crisis regimes.
5. Optional smoothing ensures stable outputs.
Display and Visualization
- Probability Mode : Plots a continuous 0-100% recession probability with color gradients and confidence bands.
- Binary Mode : Categorizes risk into four levels (Minimal, Watch, Caution, Alert) for simplified dashboards.
- Lead/Coincident Mode : Displays leading and coincident probabilities separately to track signal divergence.
- Ensemble Mode : Averages traditional and split probabilities for a balanced view.
- Regime Background : Color-coded overlays (green for Expansion, orange for Late-Cycle, amber for Stress, red for Crisis).
- Analytics Table : Optional dashboard showing probability, confidence, regime, and top indicator statuses.
Practical Applications
- Asset Allocation : Adjust equity or bond exposures based on sustained probability increases.
- Risk Management : Hedge portfolios with VIX futures or options during regime shifts to Stress or Crisis.
- Sector Rotation : Shift toward defensive sectors when coincident signals rise above 50%.
- Trading Filters : Disable short-term strategies during high-risk regimes.
- Event Timing : Scale positions ahead of high-impact data releases when probability and VIX are elevated.
Configuration Guidelines
- Enable ROC and Z-score for consistent indicator comparison unless raw data is preferred.
- Use dynamic weighting with at least one economic cycle of data for optimal performance.
- Monitor stress composite scores above 80 alongside probabilities above 70 for critical risk signals.
- Adjust adaptation speed (default: 0.1) to 0.2 during Crisis regimes for faster indicator prioritization.
- Combine RWM with complementary tools (e.g., liquidity metrics) for intraday or short-term trading.
Limitations
- Macro indicators lag intraday market moves, making RWM better suited for strategic rather than tactical trading.
- Historical data availability may constrain dynamic weighting on shorter timeframes.
- Model accuracy depends on the quality and timeliness of economic data feeds.
Final Note
The Recession Warning Model provides a disciplined framework for monitoring economic downturn risks. By integrating diverse indicators with transparent weighting and regime-aware adjustments, it empowers users to make informed decisions in portfolio management, risk hedging, or macroeconomic research. Regular review of model outputs alongside market-specific tools ensures its effective application across varying market conditions.
Trend Gauge [BullByte]Trend Gauge
Summary
A multi-factor trend detection indicator that aggregates EMA alignment, VWMA momentum scaling, volume spikes, ATR breakout strength, higher-timeframe confirmation, ADX-based regime filtering, and RSI pivot-divergence penalty into one normalized trend score. It also provides a confidence meter, a Δ Score momentum histogram, divergence highlights, and a compact, scalable dashboard for at-a-glance status.
________________________________________
## 1. Purpose of the Indicator
Why this was built
Traders often monitor several indicators in parallel - EMAs, volume signals, volatility breakouts, higher-timeframe trends, ADX readings, divergence alerts, etc., which can be cumbersome and sometimes contradictory. The “Trend Gauge” indicator was created to consolidate these complementary checks into a single, normalized score that reflects the prevailing market bias (bullish, bearish, or neutral) and its strength. By combining multiple inputs with an adaptive regime filter, scaling contributions by magnitude, and penalizing weakening signals (divergence), this tool aims to reduce noise, highlight genuine trend opportunities, and warn when momentum fades.
Key Design Goals
Signal Aggregation
Merged trend-following signals (EMA crossover, ATR breakout, higher-timeframe confirmation) and momentum signals (VWMA thrust, volume spikes) into a unified score that reflects directional bias more holistically.
Market Regime Awareness
Implemented an ADX-style filter to distinguish between trending and ranging markets, reducing the influence of trend signals during sideways phases to avoid false breakouts.
Magnitude-Based Scaling
Replaced binary contributions with scaled inputs: VWMA thrust and ATR breakout are weighted relative to recent averages, allowing for more nuanced score adjustments based on signal strength.
Momentum Divergence Penalty
Integrated pivot-based RSI divergence detection to slightly reduce the overall score when early signs of momentum weakening are detected, improving risk-awareness in entries.
Confidence Transparency
Added a live confidence metric that shows what percentage of enabled sub-indicators currently agree with the overall bias, making the scoring system more interpretable.
Momentum Acceleration Visualization
Plotted the change in score (Δ Score) as a histogram bar-to-bar, highlighting whether momentum is increasing, flattening, or reversing, aiding in more timely decision-making.
Compact Informational Dashboard
Presented a clean, scalable dashboard that displays each component’s status, the final score, confidence %, detected regime (Trending/Ranging), and a labeled strength gauge for quick visual assessment.
________________________________________
## 2. Why a Trader Should Use It
Main benefits and use cases
1. Unified View: Rather than juggling multiple windows or panels, this indicator delivers a single score synthesizing diverse signals.
2. Regime Filtering: In ranging markets, trend signals often generate false entries. The ADX-based regime filter automatically down-weights trend-following components, helping you avoid chasing false breakouts.
3. Nuanced Momentum & Volatility: VWMA and ATR breakout contributions are normalized by recent averages, so strong moves register strongly while smaller fluctuations are de-emphasized.
4. Early Warning of Weakening: Pivot-based RSI divergence is detected and used to slightly reduce the score when price/momentum diverges, giving a cautionary signal before a full reversal.
5. Confidence Meter: See at a glance how many sub-indicators align with the aggregated bias (e.g., “80% confidence” means 4 out of 5 components agree ). This transparency avoids black-box decisions.
6. Trend Acceleration/Deceleration View: The Δ Score histogram visualizes whether the aggregated score is rising (accelerating trend) or falling (momentum fading), supplementing the main oscillator.
7. Compact Dashboard: A corner table lists each check’s status (“Bull”, “Bear”, “Flat” or “Disabled”), plus overall Score, Confidence %, Regime, Trend Strength label, and a gauge bar. Users can scale text size (Normal, Small, Tiny) without removing elements, so the full picture remains visible even in compact layouts.
8. Customizable & Transparent: All components can be enabled/disabled and parameterized (lengths, thresholds, weights). The full Pine code is open and well-commented, letting users inspect or adapt the logic.
9. Alert-ready: Built-in alert conditions fire when the score crosses weak thresholds to bullish/bearish or returns to neutral, enabling timely notifications.
________________________________________
## 3. Component Rationale (“Why These Specific Indicators?”)
Each sub-component was chosen because it adds complementary information about trend or momentum:
1. EMA Cross
o Basic trend measure: compares a faster EMA vs. a slower EMA. Quickly reflects trend shifts but by itself can whipsaw in sideways markets.
2. VWMA Momentum
o Volume-weighted moving average change indicates momentum with volume context. By normalizing (dividing by a recent average absolute change), we capture the strength of momentum relative to recent history. This scaling prevents tiny moves from dominating and highlights genuinely strong momentum.
3. Volume Spikes
o Sudden jumps in volume combined with price movement often accompany stronger moves or reversals. A binary detection (+1 for bullish spike, -1 for bearish spike) flags high-conviction bars.
4. ATR Breakout
o Detects price breaking beyond recent highs/lows by a multiple of ATR. Measures breakout strength by how far beyond the threshold price moves relative to ATR, capped to avoid extreme outliers. This gives a volatility-contextual trend signal.
5. Higher-Timeframe EMA Alignment
o Confirms whether the shorter-term trend aligns with a higher timeframe trend. Uses request.security with lookahead_off to avoid future data. When multiple timeframes agree, confidence in direction increases.
6. ADX Regime Filter (Manual Calculation)
o Computes directional movement (+DM/–DM), smoothes via RMA, computes DI+ and DI–, then a DX and ADX-like value. If ADX ≥ threshold, market is “Trending” and trend components carry full weight; if ADX < threshold, “Ranging” mode applies a configurable weight multiplier (e.g., 0.5) to trend-based contributions, reducing false signals in sideways conditions. Volume spikes remain binary (optional behavior; can be adjusted if desired).
7. RSI Pivot-Divergence Penalty
o Uses ta.pivothigh / ta.pivotlow with a lookback to detect pivot highs/lows on price and corresponding RSI values. When price makes a higher high but RSI makes a lower high (bearish divergence), or price makes a lower low but RSI makes a higher low (bullish divergence), a divergence signal is set. Rather than flipping the trend outright, the indicator subtracts (or adds) a small penalty (configurable) from the aggregated score if it would weaken the current bias. This subtle adjustment warns of weakening momentum without overreacting to noise.
8. Confidence Meter
o Counts how many enabled components currently agree in direction with the aggregated score (i.e., component sign × score sign > 0). Displays this as a percentage. A high percentage indicates strong corroboration; a low percentage warns of mixed signals.
9. Δ Score Momentum View
o Plots the bar-to-bar change in the aggregated score (delta_score = score - score ) as a histogram. When positive, bars are drawn in green above zero; when negative, bars are drawn in red below zero. This reveals acceleration (rising Δ) or deceleration (falling Δ), supplementing the main oscillator.
10. Dashboard
• A table in the indicator pane’s top-right with 11 rows:
1. EMA Cross status
2. VWMA Momentum status
3. Volume Spike status
4. ATR Breakout status
5. Higher-Timeframe Trend status
6. Score (numeric)
7. Confidence %
8. Regime (“Trending” or “Ranging”)
9. Trend Strength label (e.g., “Weak Bullish Trend”, “Strong Bearish Trend”)
10. Gauge bar visually representing score magnitude
• All rows always present; size_opt (Normal, Small, Tiny) only changes text size via text_size, not which elements appear. This ensures full transparency.
________________________________________
## 4. What Makes This Indicator Stand Out
• Regime-Weighted Multi-Factor Score: Trend and momentum signals are adaptively weighted by market regime (trending vs. ranging) , reducing false signals.
• Magnitude Scaling: VWMA and ATR breakout contributions are normalized by recent average momentum or ATR, giving finer gradation compared to simple ±1.
• Integrated Divergence Penalty: Divergence directly adjusts the aggregated score rather than appearing as a separate subplot; this influences alerts and trend labeling in real time.
• Confidence Meter: Shows the percentage of sub-signals in agreement, providing transparency and preventing blind trust in a single metric.
• Δ Score Histogram Momentum View: A histogram highlights acceleration or deceleration of the aggregated trend score, helping detect shifts early.
• Flexible Dashboard: Always-visible component statuses and summary metrics in one place; text size scaling keeps the full picture available in cramped layouts.
• Lookahead-Safe HTF Confirmation: Uses lookahead_off so no future data is accessed from higher timeframes, avoiding repaint bias.
• Repaint Transparency: Divergence detection uses pivot functions that inherently confirm only after lookback bars; description documents this lag so users understand how and when divergence labels appear.
• Open-Source & Educational: Full, well-commented Pine v6 code is provided; users can learn from its structure: manual ADX computation, conditional plotting with series = show ? value : na, efficient use of table.new in barstate.islast, and grouped inputs with tooltips.
• Compliance-Conscious: All plots have descriptive titles; inputs use clear names; no unnamed generic “Plot” entries; manual ADX uses RMA; all request.security calls use lookahead_off. Code comments mention repaint behavior and limitations.
________________________________________
## 5. Recommended Timeframes & Tuning
• Any Timeframe: The indicator works on small (e.g., 1m) to large (daily, weekly) timeframes. However:
o On very low timeframes (<1m or tick charts), noise may produce frequent whipsaws. Consider increasing smoothing lengths, disabling certain components (e.g., volume spike if volume data noisy), or using a larger pivot lookback for divergence.
o On higher timeframes (daily, weekly), consider longer lookbacks for ATR breakout or divergence, and set Higher-Timeframe trend appropriately (e.g., 4H HTF when on 5 Min chart).
• Defaults & Experimentation: Default input values are chosen to be balanced for many liquid markets. Users should test with replay or historical analysis on their symbol/timeframe and adjust:
o ADX threshold (e.g., 20–30) based on instrument volatility.
o VWMA and ATR scaling lengths to match average volatility cycles.
o Pivot lookback for divergence: shorter for faster markets, longer for slower ones.
• Combining with Other Analysis: Use in conjunction with price action, support/resistance, candlestick patterns, order flow, or other tools as desired. The aggregated score and alerts can guide attention but should not be the sole decision-factor.
________________________________________
## 6. How Scoring and Logic Works (Step-by-Step)
1. Compute Sub-Scores
o EMA Cross: Evaluate fast EMA > slow EMA ? +1 : fast EMA < slow EMA ? -1 : 0.
o VWMA Momentum: Calculate vwma = ta.vwma(close, length), then vwma_mom = vwma - vwma . Normalize: divide by recent average absolute momentum (e.g., ta.sma(abs(vwma_mom), lookback)), clip to .
o Volume Spike: Compute vol_SMA = ta.sma(volume, len). If volume > vol_SMA * multiplier AND price moved up ≥ threshold%, assign +1; if moved down ≥ threshold%, assign -1; else 0.
o ATR Breakout: Determine recent high/low over lookback. If close > high + ATR*mult, compute distance = close - (high + ATR*mult), normalize by ATR, cap at a configured maximum. Assign positive contribution. Similarly for bearish breakout below low.
o Higher-Timeframe Trend: Use request.security(..., lookahead=barmerge.lookahead_off) to fetch HTF EMAs; assign +1 or -1 based on alignment.
2. ADX Regime Weighting
o Compute manual ADX: directional movements (+DM, –DM), smoothed via RMA, DI+ and DI–, then DX and ADX via RMA. If ADX ≥ threshold, market is considered “Trending”; otherwise “Ranging.”
o If trending, trend-based contributions (EMA, VWMA, ATR, HTF) use full weight = 1.0. If ranging, use weight = ranging_weight (e.g., 0.5) to down-weight them. Volume spike stays binary ±1 (optional to change if desired).
3. Aggregate Raw Score
o Sum weighted contributions of all enabled components. Count the number of enabled components; if zero, default count = 1 to avoid division by zero.
4. Divergence Penalty
o Detect pivot highs/lows on price and corresponding RSI values, using a lookback. When price and RSI diverge (bearish or bullish divergence), check if current raw score is in the opposing direction:
If bearish divergence (price higher high, RSI lower high) and raw score currently positive, subtract a penalty (e.g., 0.5).
If bullish divergence (price lower low, RSI higher low) and raw score currently negative, add a penalty.
o This reduces score magnitude to reflect weakening momentum, without flipping the trend outright.
5. Normalize and Smooth
o Normalized score = (raw_score / number_of_enabled_components) * 100. This yields a roughly range.
o Optional EMA smoothing of this normalized score to reduce noise.
6. Interpretation
o Sign: >0 = net bullish bias; <0 = net bearish bias; near zero = neutral.
o Magnitude Zones: Compare |score| to thresholds (Weak, Medium, Strong) to label trend strength (e.g., “Weak Bullish Trend”, “Medium Bearish Trend”, “Strong Bullish Trend”).
o Δ Score Histogram: The histogram bars from zero show change from previous bar’s score; positive bars indicate acceleration, negative bars indicate deceleration.
o Confidence: Percentage of sub-indicators aligned with the score’s sign.
o Regime: Indicates whether trend-based signals are fully weighted or down-weighted.
________________________________________
## 7. Oscillator Plot & Visualization: How to Read It
Main Score Line & Area
The oscillator plots the aggregated score as a line, with colored fill: green above zero for bullish area, red below zero for bearish area. Horizontal reference lines at ±Weak, ±Medium, and ±Strong thresholds mark zones: crossing above +Weak suggests beginning of bullish bias, above +Medium for moderate strength, above +Strong for strong trend; similarly for bearish below negative thresholds.
Δ Score Histogram
If enabled, a histogram shows score - score . When positive, bars appear in green above zero, indicating accelerating bullish momentum; when negative, bars appear in red below zero, indicating decelerating or reversing momentum. The height of each bar reflects the magnitude of change in the aggregated score from the prior bar.
Divergence Highlight Fill
If enabled, when a pivot-based divergence is confirmed:
• Bullish Divergence : fill the area below zero down to –Weak threshold in green, signaling potential reversal from bearish to bullish.
• Bearish Divergence : fill the area above zero up to +Weak threshold in red, signaling potential reversal from bullish to bearish.
These fills appear with a lag equal to pivot lookback (the number of bars needed to confirm the pivot). They do not repaint after confirmation, but users must understand this lag.
Trend Direction Label
When score crosses above or below the Weak threshold, a small label appears near the score line reading “Bullish” or “Bearish.” If the score returns within ±Weak, the label “Neutral” appears. This helps quickly identify shifts at the moment they occur.
Dashboard Panel
In the indicator pane’s top-right, a table shows:
1. EMA Cross status: “Bull”, “Bear”, “Flat”, or “Disabled”
2. VWMA Momentum status: similarly
3. Volume Spike status: “Bull”, “Bear”, “No”, or “Disabled”
4. ATR Breakout status: “Bull”, “Bear”, “No”, or “Disabled”
5. Higher-Timeframe Trend status: “Bull”, “Bear”, “Flat”, or “Disabled”
6. Score: numeric value (rounded)
7. Confidence: e.g., “80%” (colored: green for high, amber for medium, red for low)
8. Regime: “Trending” or “Ranging” (colored accordingly)
9. Trend Strength: textual label based on magnitude (e.g., “Medium Bullish Trend”)
10. Gauge: a bar of blocks representing |score|/100
All rows remain visible at all times; changing Dashboard Size only scales text size (Normal, Small, Tiny).
________________________________________
## 8. Example Usage (Illustrative Scenario)
Example: BTCUSD 5 Min
1. Setup: Add “Trend Gauge ” to your BTCUSD 5 Min chart. Defaults: EMAs (8/21), VWMA 14 with lookback 3, volume spike settings, ATR breakout 14/5, HTF = 5m (or adjust to 4H if preferred), ADX threshold 25, ranging weight 0.5, divergence RSI length 14 pivot lookback 5, penalty 0.5, smoothing length 3, thresholds Weak=20, Medium=50, Strong=80. Dashboard Size = Small.
2. Trend Onset: At some point, price breaks above recent high by ATR multiple, volume spikes upward, faster EMA crosses above slower EMA, HTF EMA also bullish, and ADX (manual) ≥ threshold → aggregated score rises above +20 (Weak threshold) into +Medium zone. Dashboard shows “Bull” for EMA, VWMA, Vol Spike, ATR, HTF; Score ~+60–+70; Confidence ~100%; Regime “Trending”; Trend Strength “Medium Bullish Trend”; Gauge ~6–7 blocks. Δ Score histogram bars are green and rising, indicating accelerating bullish momentum. Trader notes the alignment.
3. Divergence Warning: Later, price makes a slightly higher high but RSI fails to confirm (lower RSI high). Pivot lookback completes; the indicator highlights a bearish divergence fill above zero and subtracts a small penalty from the score, causing score to stall or retrace slightly. Dashboard still bullish but score dips toward +Weak. This warns the trader to tighten stops or take partial profits.
4. Trend Weakens: Score eventually crosses below +Weak back into neutral; a “Neutral” label appears, and a “Neutral Trend” alert fires if enabled. Trader exits or avoids new long entries. If score subsequently crosses below –Weak, a “Bearish” label and alert occur.
5. Customization: If the trader finds VWMA noise too frequent on this instrument, they may disable VWMA or increase lookback. If ATR breakouts are too rare, adjust ATR length or multiplier. If ADX threshold seems off, tune threshold. All these adjustments are explained in Inputs section.
6. Visualization: The screenshot shows the main score oscillator with colored areas, reference lines at ±20/50/80, Δ Score histogram bars below/above zero, divergence fill highlighting potential reversal, and the dashboard table in the top-right.
________________________________________
## 9. Inputs Explanation
A concise yet clear summary of inputs helps users understand and adjust:
1. General Settings
• Theme (Dark/Light): Choose background-appropriate colors for the indicator pane.
• Dashboard Size (Normal/Small/Tiny): Scales text size only; all dashboard elements remain visible.
2. Indicator Settings
• Enable EMA Cross: Toggle on/off basic EMA alignment check.
o Fast EMA Length and Slow EMA Length: Periods for EMAs.
• Enable VWMA Momentum: Toggle VWMA momentum check.
o VWMA Length: Period for VWMA.
o VWMA Momentum Lookback: Bars to compare VWMA to measure momentum.
• Enable Volume Spike: Toggle volume spike detection.
o Volume SMA Length: Period to compute average volume.
o Volume Spike Multiplier: How many times above average volume qualifies as spike.
o Min Price Move (%): Minimum percent change in price during spike to qualify as bullish or bearish.
• Enable ATR Breakout: Toggle ATR breakout detection.
o ATR Length: Period for ATR.
o Breakout Lookback: Bars to look back for recent highs/lows.
o ATR Multiplier: Multiplier for breakout threshold.
• Enable Higher Timeframe Trend: Toggle HTF EMA alignment.
o Higher Timeframe: E.g., “5” for 5-minute when on 1-minute chart, or “60” for 5 Min when on 15m, etc. Uses lookahead_off.
• Enable ADX Regime Filter: Toggles regime-based weighting.
o ADX Length: Period for manual ADX calculation.
o ADX Threshold: Value above which market considered trending.
o Ranging Weight Multiplier: Weight applied to trend components when ADX < threshold (e.g., 0.5).
• Scale VWMA Momentum: Toggle normalization of VWMA momentum magnitude.
o VWMA Mom Scale Lookback: Period for average absolute VWMA momentum.
• Scale ATR Breakout Strength: Toggle normalization of breakout distance by ATR.
o ATR Scale Cap: Maximum multiple of ATR used for breakout strength.
• Enable Price-RSI Divergence: Toggle divergence detection.
o RSI Length for Divergence: Period for RSI.
o Pivot Lookback for Divergence: Bars on each side to identify pivot high/low.
o Divergence Penalty: Amount to subtract/add to score when divergence detected (e.g., 0.5).
3. Score Settings
• Smooth Score: Toggle EMA smoothing of normalized score.
• Score Smoothing Length: Period for smoothing EMA.
• Weak Threshold: Absolute score value under which trend is considered weak or neutral.
• Medium Threshold: Score above Weak but below Medium is moderate.
• Strong Threshold: Score above this indicates strong trend.
4. Visualization Settings
• Show Δ Score Histogram: Toggle display of the bar-to-bar change in score as a histogram. Default true.
• Show Divergence Fill: Toggle background fill highlighting confirmed divergences. Default true.
Each input has a tooltip in the code.
________________________________________
## 10. Limitations, Repaint Notes, and Disclaimers
10.1. Repaint & Lag Considerations
• Pivot-Based Divergence Lag: The divergence detection uses ta.pivothigh / ta.pivotlow with a specified lookback. By design, a pivot is only confirmed after the lookback number of bars. As a result:
o Divergence labels or fills appear with a delay equal to the pivot lookback.
o Once the pivot is confirmed and the divergence is detected, the fill/label does not repaint thereafter, but you must understand and accept this lag.
o Users should not treat divergence highlights as predictive signals without additional confirmation, because they appear after the pivot has fully formed.
• Higher-Timeframe EMA Alignment: Uses request.security(..., lookahead=barmerge.lookahead_off), so no future data from the higher timeframe is used. This avoids lookahead bias and ensures signals are based only on completed higher-timeframe bars.
• No Future Data: All calculations are designed to avoid using future information. For example, manual ADX uses RMA on past data; security calls use lookahead_off.
10.2. Market & Noise Considerations
• In very choppy or low-liquidity markets, some components (e.g., volume spikes or VWMA momentum) may be noisy. Users can disable or adjust those components’ parameters.
• On extremely low timeframes, noise may dominate; consider smoothing lengths or disabling certain features.
• On very high timeframes, pivots and breakouts occur less frequently; adjust lookbacks accordingly to avoid sparse signals.
10.3. Not a Standalone Trading System
• This is an indicator, not a complete trading strategy. It provides signals and context but does not manage entries, exits, position sizing, or risk management.
• Users must combine it with their own analysis, money management, and confirmations (e.g., price patterns, support/resistance, fundamental context).
• No guarantees: past behavior does not guarantee future performance.
10.4. Disclaimers
• Educational Purposes Only: The script is provided as-is for educational and informational purposes. It does not constitute financial, investment, or trading advice.
• Use at Your Own Risk: Trading involves risk of loss. Users should thoroughly test and use proper risk management.
• No Guarantees: The author is not responsible for trading outcomes based on this indicator.
• License: Published under Mozilla Public License 2.0; code is open for viewing and modification under MPL terms.
________________________________________
## 11. Alerts
• The indicator defines three alert conditions:
1. Bullish Trend: when the aggregated score crosses above the Weak threshold.
2. Bearish Trend: when the score crosses below the negative Weak threshold.
3. Neutral Trend: when the score returns within ±Weak after being outside.
Good luck
– BullByte
TUF_LOGICThe TUF_LOGIC library incorporates three-valued logic (also known as trilean logic) into Pine Script, enabling the representation of states beyond the binary True and False to include an 'Uncertain' state. This addition is particularly apt for financial market contexts where information may not always be black or white, accommodating scenarios of partial or ambiguous data.
Key Features:
Trilean Data Type: Defines a tri type, facilitating the representation of True (1), Uncertain (0), and False (-1) states, thus accommodating a more nuanced approach to logical evaluation.
Validation and Conversion: Includes methods like validate, to ensure trilean variables conform to expected states, and to_bool, for converting trilean to boolean values, enhancing interoperability with binary logic systems.
Core Logical Operations: Extends traditional logical operators (AND, OR, NOT, XOR, EQUALITY) to work within the trilean domain, enabling complex conditionals that reflect real-world uncertainties.
Specialized Logical Operations:
Implication Operators: Features IMP_K (Kleene's), IMP_L (Łukasiewicz's), and IMP_RM3, offering varied approaches to logical implication within the trilean framework.
Possibility, Necessity, and Contingency Operators: Implements MA ("it is possible that..."), LA ("it is necessary that..."), and IA ("it is unknown/contingent that..."), derived from Tarski-Łukasiewicz's modal logic attempts, enriching the library with modal logic capabilities.
Unanimity Functions: The UNANIMOUS operator assesses complete agreement among trilean values, useful for scenarios requiring consensus or uniformity across multiple indicators or conditions.
This library is developed to support scenarios in financial trading and analysis where decisions might hinge on more than binary outcomes. By incorporating modal logic aspects and providing a framework for handling uncertainty through the MA, LA, and IA operations, TUF_LOGIC bridges the gap between classical binary logic and the realities of uncertain information, making it a valuable tool for developing sophisticated trading strategies and analytical models.
Library "TUF_LOGIC"
3VL Implementation (TUF stands for True, Uncertain, False.)
method validate(self)
Ensures a valid trilean variable. This works by clamping the variable to the range associated with the trilean type.
Namespace types: tri
Parameters:
self (tri)
Returns: Validated trilean object.
method to_bool(self)
Converts a trilean object into a boolean object. True -> True, Uncertain -> na, False -> False.
Namespace types: tri
Parameters:
self (tri)
Returns: A boolean variable.
method NOT(self)
Negates the trilean object. True -> False, Uncertain -> Uncertain, False -> True
Namespace types: tri
Parameters:
self (tri)
Returns: Negated trilean object.
method AND(self, comparator)
Logical AND operation for trilean objects.
Namespace types: tri
Parameters:
self (tri) : The first trilean object.
comparator (tri) : The second trilean object to compare with.
Returns: `tri` Result of the AND operation as a trilean object.
method OR(self, comparator)
Logical OR operation for trilean objects.
Namespace types: tri
Parameters:
self (tri) : The first trilean object.
comparator (tri) : The second trilean object to compare with.
Returns: `tri` Result of the OR operation as a trilean object.
method EQUALITY(self, comparator)
Logical EQUALITY operation for trilean objects.
Namespace types: tri
Parameters:
self (tri) : The first trilean object.
comparator (tri) : The second trilean object to compare with.
Returns: `tri` Result of the EQUALITY operation as a trilean object, True if both are equal, False otherwise.
method XOR(self, comparator)
Logical XOR (Exclusive OR) operation for trilean objects.
Namespace types: tri
Parameters:
self (tri) : The first trilean object.
comparator (tri) : The second trilean object to compare with.
Returns: `tri` Result of the XOR operation as a trilean object.
method IMP_K(self, comparator)
Material implication using Kleene's logic for trilean objects.
Namespace types: tri
Parameters:
self (tri) : The antecedent trilean object.
comparator (tri) : The consequent trilean object.
Returns: `tri` Result of the implication operation as a trilean object.
method IMP_L(self, comparator)
Logical implication using Łukasiewicz's logic for trilean objects.
Namespace types: tri
Parameters:
self (tri) : The antecedent trilean object.
comparator (tri) : The consequent trilean object.
Returns: `tri` Result of the implication operation as a trilean object.
method IMP_RM3(self, comparator)
Logical implication using RM3 logic for trilean objects.
Namespace types: tri
Parameters:
self (tri) : The antecedent trilean object.
comparator (tri) : The consequent trilean object.
Returns: `tri` Result of the RM3 implication as a trilean object.
method MA(self)
Evaluates to True if the trilean object is either True or Uncertain, False otherwise.
Namespace types: tri
Parameters:
self (tri) : The trilean object to evaluate.
Returns: `tri` Result of the operation as a trilean object.
method LA(self)
Evaluates to True if the trilean object is True, False otherwise.
Namespace types: tri
Parameters:
self (tri) : The trilean object to evaluate.
Returns: `tri` Result of the operation as a trilean object.
method IA(self)
Evaluates to True if the trilean object is Uncertain, False otherwise.
Namespace types: tri
Parameters:
self (tri) : The trilean object to evaluate.
Returns: `tri` Result of the operation as a trilean object.
UNANIMOUS(self, comparator)
Evaluates the unanimity between two trilean values.
Parameters:
self (tri) : The first trilean value.
comparator (tri) : The second trilean value.
Returns: `tri` Returns True if both values are True, False if both are False, and Uncertain otherwise.
method UNANIMOUS(self)
Evaluates the unanimity among an array of trilean values.
Namespace types: array
Parameters:
self (array) : The array of trilean values.
Returns: `tri` Returns True if all values are True, False if all are False, and Uncertain otherwise.
tri
Three Value Logic (T.U.F.), or trilean. Can be True (1), Uncertain (0), or False (-1).
Fields:
v (series int) : Value of the trilean variable. Can be True (1), Uncertain (0), or False (-1).
SML SuiteIntroducing the "SML Suite" Indicator
The "SML Suite" is a powerful and easy-to-use trading indicator designed to help traders make informed decisions in the world of financial markets. Whether you're a seasoned trader or a novice, this indicator is your trusty sidekick for evaluating market trends.
Key Features:
Three Moving Averages: The indicator employs three different moving averages, each with a distinct length, allowing you to adapt to various market conditions.
Customizable Parameters: You can easily customize the moving average lengths and source data to tailor the indicator to your specific trading strategy.
Standard Deviation Multiplier: Adjust the standard deviation multiplier to fine-tune the indicator's sensitivity to market fluctuations.
Binary Results: The indicator provides clear binary signals (1 or -1) based on whether the current price is above or below certain bands. This simplifies your decision-making process.
SML Calculation: The SML (Short, Medium, Long) calculation is a smart combination of the binary results, offering you an overall sentiment about the market.
Color-Coded Visualization: Visualize market sentiment with color-coded bars, making it easy to spot trends at a glance.
Interactive Table: A table is displayed on your chart, giving you a quick overview of the binary results and the overall SML sentiment.
With the "SML Suite" indicator, you don't need to be a coding expert to harness the power of technical analysis. Stay ahead of the game and enhance your trading strategy with this user-friendly tool. Make your trading decisions with confidence and clarity, backed by the insights provided by the "SML Suite" indicator.
fuson DEMA-->it does not need to be played with any settings. so I did not add a period.
-->l shows bearish trends very well but not as good as bearish trends in bullish trends
-->vdub can be used with binary options v3 and increases the leakage rates very high
-->If used for forex, it can be used in periods of 1 hour and longer
-->vdub binary option v3can be used for 1 minute verification with binary option if it will be used in binary option
Options Oscillator [Lite] IVRank, IVx, Call/Put Volatility Skew The first TradingView indicator that provides REAL IVRank, IVx, and CALL/PUT skew data based on REAL option chain for 5 U.S. market symbols.
🔃 Auto-Updating Option Metrics without refresh!
🍒 Developed and maintained by option traders for option traders.
📈 Specifically designed for TradingView users who trade options.
🔶 Ticker Information:
This 'Lite' indicator is currently only available for 5 liquid U.S. market smbols : NASDAQ:TSLA AMEX:DIA NASDAQ:AAPL NASDAQ:AMZN and NYSE:ORCL
🔶 How does the indicator work and why is it unique?
This Pine Script indicator is a complex tool designed to provide various option metrics and visualization tools for options market traders. The indicator extracts raw options data from an external data provider (ORATS), processes and refines the delayed data package using pineseed, and sends it to TradingView, visualizing the data using specific formulas (see detailed below) or interpolated values (e.g., delta distances). This method of incorporating options data into a visualization framework is unique and entirely innovative on TradingView.
The indicator aims to offer a comprehensive view of the current state of options for the implemented instruments, including implied volatility (IV), IV rank (IVR), options skew, and expected market movements, which are objectively measured as detailed below.
The options metrics we display may be familiar to options traders from various major brokerage platforms such as TastyTrade, IBKR, TOS, Tradier, TD Ameritrade, Schwab, etc.
🟨 The following data is displayed in the oscillator 🟨
We use Tastytrade formulas, so our numbers mostly align with theirs!
🔶 𝗜𝗩𝗥𝗮𝗻𝗸
The Implied Volatility Rank (IVR) helps options traders assess the current level of implied volatility (IV) in comparison to the past 52 weeks. IVR is a useful metric to determine whether options are relatively cheap or expensive. This can guide traders on whether to buy or sell options.
IV Rank formula = (current IV - 52 week IV low) / (52 week IV high - 52 week IV low)
IVRank is default blue and you can adjust their settings:
🔶 𝗜𝗩𝘅 𝗮𝘃𝗴
The implied volatility (IVx) shown in the option chain is calculated like the VIX. The Cboe uses standard and weekly SPX options to measure expected S&P 500 volatility. A similar method is used for calculating IVx for each expiration cycle.
We aggregate the IVx values for the 35-70 day monthly expiration cycle, and use that value in the oscillator and info panel.
We always display which expiration the IVx values are averaged for when you hover over the IVx cell.
IVx main color is purple, but you can change the settings:
🔹IVx 5 days change %
We are also displaying the five-day change of the IV Index (IVx value). The IV Index 5-Day Change column provides quick insight into recent expansions or decreases in implied volatility over the last five trading days.
Traders who expect the value of options to decrease might view a decrease in IVX as a positive signal. Strategies such as Strangle and Ratio Spread can benefit from this decrease.
On the other hand, traders anticipating further increases in IVX will focus on the rising IVX values. Strategies like Calendar Spread or Diagonal Spread can take advantage of increasing implied volatility.
This indicator helps traders quickly assess changes in implied volatility, enabling them to make informed decisions based on their trading strategies and market expectations.
Important Note:
The IVx value alone does not provide sufficient context. There are stocks that inherently exhibit high IVx values. Therefore, it is crucial to consider IVx in conjunction with the Implied Volatility Rank (IVR), which measures the IVx relative to its own historical values. This combined view helps in accurately assessing the significance of the IVx in relation to the specific stock's typical volatility behavior.
This indicator offers traders a comprehensive view of implied volatility, assisting them in making informed decisions by highlighting both the absolute and relative volatility measures.
🔶 𝗖𝗔𝗟𝗟/𝗣𝗨𝗧 𝗣𝗿𝗶𝗰𝗶𝗻𝗴 𝗦𝗸𝗲𝘄 𝗵𝗶𝘀𝘁𝗼𝗴𝗿𝗮𝗺
At TanukiTrade, Vertical Pricing Skew refers to the difference in pricing between put and call options with the same expiration date at the same distance (at tastytrade binary expected move). We analyze this skew to understand market sentiment. This is the same formula used by TastyTrade for calculations.
We calculate the interpolated strike price based on the expected move, taking into account the neighboring option prices and their distances. This allows us to accurately determine whether the CALL or PUT options are more expensive.
🔹 What Causes Pricing Skew? The Theory Behind It
The asymmetric pricing of PUT and CALL options is driven by the natural dynamics of the market. The theory is that when CALL options are more expensive than PUT options at the same distance from the current spot price, market participants are buying CALLs and selling PUTs, expecting a faster upward movement compared to a downward one .
In the case of PUT skew, it's the opposite: participants are buying PUTs and selling CALLs , as they expect a potential downward move to happen more quickly than an upward one.
An options trader can take advantage of this phenomenon by leveraging PUT pricing skew. For example, if they have a bullish outlook and both IVR and IVx are high and IV started decreasing, they can capitalize on this PUT skew with strategies like a jade lizard, broken wing butterfly, or short put.
🔴 PUT Skew 🔴
Put options are more expensive than call options, indicating the market expects a faster downward move (▽). This alone doesn't indicate which way the market will move (because nobody knows that), but the options chain pricing suggests that if the market moves downward, it could do so faster in velocity compared to a potential upward movement.
🔹 SPY PUT SKEW example:
If AMEX:SPY PUT option prices are 46% higher than CALLs at the same distance for the optimal next monthly expiry (DTE). This alone doesn't indicate which way the market will move (because nobody knows that), but the options chain pricing suggests that if the market moves downward, it could do so 46% faster in velocity compared to a potential upward movement
🟢 CALL Skew 🟢
Call options are more expensive than put options, indicating the market expects a faster upward move (△). This alone doesn't indicate which way the market will move (because nobody knows that), but the options chain pricing suggests that if the market moves upward, it could do so faster in velocity compared to a potential downward movement.
🔹 INTC CALL SKEW example:
If NASDAQ:INTC CALL option prices are 49% higher than PUTs at the same distance for the optimal next monthly expiry (DTE). This alone doesn't indicate which way the market will move (because nobody knows that), but the options chain pricing suggests that if the market moves upward, it could do so 49% faster in velocity compared to a potential downward movement .
🔶 USAGE example:
The script is compatible with our other options indicators.
For example: Since the main metrics are already available in this Options Oscillator, you can hide the main IVR panel of our Options Overlay indicator, freeing up more space on the chart. The following image shows this:
🔶 ADDITIONAL IMPORTANT COMMENTS
🔹 Historical Data:
Yes, we only using historical internal metrics dating back to 2024-07-01, when the TanukiTrade options brand launched. For now, we're using these, but we may expand the historical data in the future.
🔹 What distance does the indicator use to measure the call/put pricing skew?:
It is important to highlight that this oscillator displays the call/put pricing skew changes for the next optimal monthly expiration on a histogram.
The Binary Expected Move distance is calculated using the TastyTrade method for the next optimal monthly expiration: Formula = (ATM straddle price x 0.6) + (1st OTM strangle price x 0.3) + (2nd OTM strangle price x 0.1)
We interpolate the exact difference based on the neighboring strikes at the binary expected move distance using the TastyTrade method, and compare the interpolated call and put prices at this specific point.
🔹 - Why is there a slight difference between the displayed data and my live brokerage data?
There are two reasons for this, and one is beyond our control.
◎ Option-data update frequency:
According to TradingView's regulations and guidelines, we can update external data a maximum of 5 times per day. We strive to use these updates in the most optimal way:
(1st update) 15 minutes after U.S. market open
(2nd, 3rd, 4th updates) 1.5–3 hours during U.S. market open hours
(5th update) 10 minutes before U.S. market close.
You don’t need to refresh your window, our last refreshed data-pack is always automatically applied to your indicator, and you can see the time elapsed since the last update at the bottom of the corner on daily TF.
◎ Brokerage Calculation Differences:
Every brokerage has slight differences in how they calculate metrics like IV and IVx. If you open three windows for TOS, TastyTrade, and IBKR side by side, you will notice that the values are minimally different. We had to choose a standard, so we use the formulas and mathematical models described by TastyTrade when analyzing the options chain and drawing conclusions.
🔹 - EOD data:
The indicator always displays end-of-day (EOD) data for IVR, IV, and CALL/PUT pricing skew. During trading hours, it shows the current values for the ongoing day with each update, and at market close, these values become final. From that point on, the data is considered EOD, provided the day confirms as a closed daily candle.
🔹 - U.S. market only:
Since we only deal with liquid option chains: this option indicator only works for the USA options market and do not include future contracts; we have implemented each selected symbol individually.
Disclaimer:
Our option indicator uses approximately 15min-3 hour delayed option market snapshot data to calculate the main option metrics. Exact realtime option contract prices are never displayed; only derived metrics and interpolated delta are shown to ensure accurate and consistent visualization. Due to the above, this indicator can only be used for decision support; exclusive decisions cannot be made based on this indicator. We reserve the right to make errors.This indicator is designed for options traders who understand what they are doing. It assumes that they are familiar with options and can make well-informed, independent decisions. We work with public data and are not a data provider; therefore, we do not bear any financial or other liability.
Options Oscillator [PRO] IVRank, IVx, Call/Put Volatility Skew𝗧𝗵𝗲 𝗳𝗶𝗿𝘀𝘁 𝗧𝗿𝗮𝗱𝗶𝗻𝗴𝗩𝗶𝗲𝘄 𝗶𝗻𝗱𝗶𝗰𝗮𝘁𝗼𝗿 𝘁𝗵𝗮𝘁 𝗽𝗿𝗼𝘃𝗶𝗱𝗲𝘀 𝗥𝗘𝗔𝗟 𝗜𝗩𝗥𝗮𝗻𝗸, 𝗜𝗩𝘅, 𝗮𝗻𝗱 𝗖𝗔𝗟𝗟/𝗣𝗨𝗧 𝘀𝗸𝗲𝘄 𝗱𝗮𝘁𝗮 𝗯𝗮𝘀𝗲𝗱 𝗼𝗻 𝗥𝗘𝗔𝗟 𝗼𝗽𝘁𝗶𝗼𝗻 𝗰𝗵𝗮𝗶𝗻 𝗳𝗼𝗿 𝗼𝘃𝗲𝗿 𝟭𝟲𝟱+ 𝗺𝗼𝘀𝘁 𝗹𝗶𝗾𝘂𝗶𝗱 𝗨.𝗦. 𝗺𝗮𝗿𝗸𝗲𝘁 𝘀𝘆𝗺𝗯𝗼𝗹𝘀
🔃 Auto-Updating Option Metrics without refresh!
🍒 Developed and maintained by option traders for option traders.
📈 Specifically designed for TradingView users who trade options.
🔶 Ticker Information:
This indicator is currently only available for over 165+ most liquid U.S. market symbols (eg. SP:SPX AMEX:SPY NASDAQ:QQQ NASDAQ:TLT NASDAQ:NVDA , etc.. ), and we are continuously expanding the compatible watchlist here: www.tradingview.com
🔶 How does the indicator work and why is it unique?
This Pine Script indicator is a complex tool designed to provide various option metrics and visualization tools for options market traders. The indicator extracts raw options data from an external data provider (ORATS), processes and refines the delayed data package using pineseed, and sends it to TradingView, visualizing the data using specific formulas (see detailed below) or interpolated values (e.g., delta distances). This method of incorporating options data into a visualization framework is unique and entirely innovative on TradingView.
The indicator aims to offer a comprehensive view of the current state of options for the implemented instruments, including implied volatility (IV), IV rank (IVR), options skew, and expected market movements, which are objectively measured as detailed below.
The options metrics we display may be familiar to options traders from various major brokerage platforms such as TastyTrade, IBKR, TOS, Tradier, TD Ameritrade, Schwab, etc.
🟨 The following data is displayed in the oscillator 🟨
We use Tastytrade formulas, so our numbers mostly align with theirs!
🔶 𝗜𝗩𝗥𝗮𝗻𝗸
The Implied Volatility Rank (IVR) helps options traders assess the current level of implied volatility (IV) in comparison to the past 52 weeks. IVR is a useful metric to determine whether options are relatively cheap or expensive. This can guide traders on whether to buy or sell options.
IV Rank formula = (current IV - 52 week IV low) / (52 week IV high - 52 week IV low)
IVRank is default blue and you can adjust their settings:
🔶 𝗜𝗩𝘅 𝗮𝘃𝗴
The implied volatility (IVx) shown in the option chain is calculated like the VIX. The Cboe uses standard and weekly SPX options to measure expected S&P 500 volatility. A similar method is used for calculating IVx for each expiration cycle.
We aggregate the IVx values for the 35-70 day monthly expiration cycle, and use that value in the oscillator and info panel.
We always display which expiration the IVx values are averaged for when you hover over the IVx cell.
IVx main color is purple, but you can change the settings:
🔹 IVx 5 days change %
We are also displaying the five-day change of the IV Index (IVx value). The IV Index 5-Day Change column provides quick insight into recent expansions or decreases in implied volatility over the last five trading days.
Traders who expect the value of options to decrease might view a decrease in IVX as a positive signal. Strategies such as Strangle and Ratio Spread can benefit from this decrease.
On the other hand, traders anticipating further increases in IVX will focus on the rising IVX values. Strategies like Calendar Spread or Diagonal Spread can take advantage of increasing implied volatility.
This indicator helps traders quickly assess changes in implied volatility, enabling them to make informed decisions based on their trading strategies and market expectations.
Important Note:
The IVx value alone does not provide sufficient context. There are stocks that inherently exhibit high IVx values. Therefore, it is crucial to consider IVx in conjunction with the Implied Volatility Rank (IVR), which measures the IVx relative to its own historical values. This combined view helps in accurately assessing the significance of the IVx in relation to the specific stock's typical volatility behavior.
This indicator offers traders a comprehensive view of implied volatility, assisting them in making informed decisions by highlighting both the absolute and relative volatility measures.
🔶 𝗖𝗔𝗟𝗟/𝗣𝗨𝗧 𝗣𝗿𝗶𝗰𝗶𝗻𝗴 𝗦𝗸𝗲𝘄 𝗵𝗶𝘀𝘁𝗼𝗴𝗿𝗮𝗺
At TanukiTrade, Vertical Pricing Skew refers to the difference in pricing between put and call options with the same expiration date at the same distance (at tastytrade binary expected move). We analyze this skew to understand market sentiment. This is the same formula used by TastyTrade for calculations.
We calculate the interpolated strike price based on the expected move, taking into account the neighboring option prices and their distances. This allows us to accurately determine whether the CALL or PUT options are more expensive.
🔹 What Causes Pricing Skew? The Theory Behind It
The asymmetric pricing of PUT and CALL options is driven by the natural dynamics of the market. The theory is that when CALL options are more expensive than PUT options at the same distance from the current spot price, market participants are buying CALLs and selling PUTs, expecting a faster upward movement compared to a downward one .
In the case of PUT skew, it's the opposite: participants are buying PUTs and selling CALLs , as they expect a potential downward move to happen more quickly than an upward one.
An options trader can take advantage of this phenomenon by leveraging PUT pricing skew. For example, if they have a bullish outlook and both IVR and IVx are high and IV started decreasing, they can capitalize on this PUT skew with strategies like a jade lizard, broken wing butterfly, or short put.
🔴 PUT Skew 🔴
Put options are more expensive than call options, indicating the market expects a faster downward move (▽). This alone doesn't indicate which way the market will move (because nobody knows that), but the options chain pricing suggests that if the market moves downward, it could do so faster in velocity compared to a potential upward movement.
🔹 SPY PUT SKEW example:
If AMEX:SPY PUT option prices are 46% higher than CALLs at the same distance for the optimal next monthly expiry (DTE). This alone doesn't indicate which way the market will move (because nobody knows that), but the options chain pricing suggests that if the market moves downward, it could do so 46% faster in velocity compared to a potential upward movement
🟢 CALL Skew 🟢
Call options are more expensive than put options, indicating the market expects a faster upward move (△). This alone doesn't indicate which way the market will move (because nobody knows that), but the options chain pricing suggests that if the market moves upward, it could do so faster in velocity compared to a potential downward movement.
🔹 INTC CALL SKEW example:
If NASDAQ:INTC CALL option prices are 49% higher than PUTs at the same distance for the optimal next monthly expiry (DTE). This alone doesn't indicate which way the market will move (because nobody knows that), but the options chain pricing suggests that if the market moves upward, it could do so 49% faster in velocity compared to a potential downward movement .
🔶 USAGE example:
The script is compatible with our other options indicators.
For example: Since the main metrics are already available in this Options Oscillator, you can hide the main IVR panel of our Options Overlay indicator, freeing up more space on the chart. The following image shows this:
🔶 ADDITIONAL IMPORTANT COMMENTS
🔹 Historical Data:
Yes, we only using historical internal metrics dating back to 2024-07-01, when the TanukiTrade options brand launched. For now, we're using these, but we may expand the historical data in the future.
🔹 What distance does the indicator use to measure the call/put pricing skew?:
It is important to highlight that this oscillator displays the call/put pricing skew changes for the next optimal monthly expiration on a histogram.
The Binary Expected Move distance is calculated using the TastyTrade method for the next optimal monthly expiration: Formula = (ATM straddle price x 0.6) + (1st OTM strangle price x 0.3) + (2nd OTM strangle price x 0.1)
We interpolate the exact difference based on the neighboring strikes at the binary expected move distance using the TastyTrade method, and compare the interpolated call and put prices at this specific point.
🔹 - Why is there a slight difference between the displayed data and my live brokerage data?
There are two reasons for this, and one is beyond our control.
◎ Option-data update frequency:
According to TradingView's regulations and guidelines, we can update external data a maximum of 5 times per day. We strive to use these updates in the most optimal way:
(1st update) 15 minutes after U.S. market open
(2nd, 3rd, 4th updates) 1.5–3 hours during U.S. market open hours
(5th update) 10 minutes before U.S. market close.
You don’t need to refresh your window, our last refreshed data-pack is always automatically applied to your indicator, and you can see the time elapsed since the last update at the bottom of the corner on daily TF.
◎ Brokerage Calculation Differences:
Every brokerage has slight differences in how they calculate metrics like IV and IVx. If you open three windows for TOS, TastyTrade, and IBKR side by side, you will notice that the values are minimally different. We had to choose a standard, so we use the formulas and mathematical models described by TastyTrade when analyzing the options chain and drawing conclusions.
🔹 - EOD data:
The indicator always displays end-of-day (EOD) data for IVR, IV, and CALL/PUT pricing skew. During trading hours, it shows the current values for the ongoing day with each update, and at market close, these values become final. From that point on, the data is considered EOD, provided the day confirms as a closed daily candle.
🔹 - U.S. market only:
Since we only deal with liquid option chains: this option indicator only works for the USA options market and do not include future contracts; we have implemented each selected symbol individually.
Disclaimer:
Our option indicator uses approximately 15min-3 hour delayed option market snapshot data to calculate the main option metrics. Exact realtime option contract prices are never displayed; only derived metrics and interpolated delta are shown to ensure accurate and consistent visualization. Due to the above, this indicator can only be used for decision support; exclusive decisions cannot be made based on this indicator. We reserve the right to make errors.This indicator is designed for options traders who understand what they are doing. It assumes that they are familiar with options and can make well-informed, independent decisions. We work with public data and are not a data provider; therefore, we do not bear any financial or other liability.
RSI Pulsar [QuantraSystems]RSI Pulsar
Introduction
The RSI Pulsar is an advanced and multifaceted tool designed to cater to the varying needs of traders, from long-term swing traders to higher-frequency day traders. This indicator takes the Relative Strength Index (RSI) to new heights by combining several unique methodologies to provide clear, actionable signals across different market conditions. With its ability to analyze impulsive trend strength, volatility, and binary market direction, the RSI Pulsar offers a holistic view of the market that assists traders in identifying robust signals and rotational opportunities within a volatile market.
The integration of dynamic color coding further aids in quick visual assessments, allowing traders to adapt swiftly to changing market conditions, making the RSI Pulsar an essential component in the arsenal of modern traders aiming for precision and adaptability in their trading endeavors.
Legend
The RSI Pulsar encapsulates various modes tailored to diverse trading strategies. The different modes are the:
Impulse Mode:
Focuses on strong outperformance, ideal for capturing movements in highly dynamic tokens.
Trend Following Mode:
A classical perpetual trend-following approach and provides binary long and short signal classifications ideal for medium term swing trading.
Ribbon Mode:
Offers quicker signals that are also binary in nature. Perfect for a confirmation signal when building higher frequency day trading systems.
Volatility Spectrum:
This feature projects a visual 'cloud' representing volatility, which helps traders spot emerging trends and potential breakouts or reversals.
Compressed Mode:
A condensed view that displays all signals in a clean and space-efficient manner. It provides a clear summary of market conditions, ideal for traders who prefer a simplified overview.
Methodology
The RSI Pulsar is built on a foundation of dynamic RSI analysis, where the traditional RSI is enhanced with advanced moving averages and standard deviation calculations. Each mode within the RSI Pulsar is designed to cater to specific aspects of the market's behavior, making it a versatile tool allowing traders to select different modes based on their trading style and market conditions.
Impulse Mode:
This mode identifies strong outperformance in assets, making it ideal for asset rotation systems. It uses a combination of RSI thresholds and dynamic moving averages to pinpoint when an asset is not just trending positively, but doing so with significant strength.
This is in contrast to typical usage of a base RSI, where elevated levels usually signal overbought and oversold periods. The RSI Pulsar flips this logic, where more extreme values are actually interpreted as a strong trend.
Trend Following Mode:
Here, the RSI is compared to the midline (the default is level 50, but a dynamic midline can also be set), to determine the prevailing trend. This mode simplifies the trend-following process, providing clear bullish or bearish signals based on whether the RSI is above or below the midline - whether a fixed or dynamic level.
Ribbon Mode:
This mode employs a series of calculated values derived from modified Heikin-Ashi smoothing to create a "ribbon" that smooths out price action and highlights underlying trends. The Ribbon Mode is particularly useful for traders who need quick confirmations of trend reversals or continuations.
Volatility Spectrum:
The Volatility Spectrum takes a unique approach to measuring market volatility by analyzing the size and direction of Heikin-Ashi candles. This data is used to create a volatility cloud that helps traders identify when volatility is rising, falling, or neutral - allowing them to adjust their strategies accordingly.
When the signal line breaks above the cloud, it signals increasing upwards volatility. When it breaks below it signifies increasing downwards volatility.
This can be used to help identify strengthening and weakening trends, as well as imminent volatile periods, allowing traders to position themselves and adapt their strategies accordingly. This mode also works as a great volatility filter for shorter term day trading strategies. It is incredibly sensitive to volatility divergences, and can give additional insights to larger market turning points.
Compressed Mode:
In Compressed Mode, all the signals from the various modes are displayed in a simplified format, making it easy for traders to quickly assess the market's overall condition without needing to delve into the details of each mode individually. Perfect for only viewing the exact data you need when live trading, or back testing.
Case Study I:
Utilizing ALMA Impulse Mode in High-Volatility Environments
Here, the RSI Pulsar is configured with an RSI length of 9 and an ALMA length of 2 in Impulse Mode. The chart example shows how this setup can identify significant price movements, allowing traders to enter positions early and capture substantial price moves. Despite the fast settings resulting in occasional false signals, the indicator's ability to catch and ride out major trends more than compensates, making it highly effective in volatile environments.
This configuration is suitable for traders seeking to trade quick, aggressive movements without enduring prolonged drawdowns. In Impulse Mode, the RSI Pulsar seeks strong trending zones, providing actionable signals that allow for timely entries and exits.
Case Study II:
SMMA Trend Following Mode for Ratio Analysis
The RSI Pulsar in Trend Following mode, configured with the SMMA with default length settings. This setup is ideal for analyzing longer-term trends, particularly useful in cryptocurrency pairs or ratio charts, where it’s crucial to identify robust directional moves. The chart showcases strong trends in the Solana/Ethereum pair. The RSI Pulsar’s ability to smooth out price action while remaining responsive to trend changes makes it an excellent tool for capturing extended price moves.
The image highlights how the RSI Pulsar efficiently tracks the strength of two tokens against each other, providing clear signals when one asset begins to outperform the other. Even in volatile markets, the SMMA ensures that the signals are reliable, filtering out noise and allowing traders to stay in the trend longer without being shaken out by minor corrections. This approach is particularly effective in ratio trading in order to inform a longer term swing trader of the strongest asset out of a customized pair.
Case Study III:
Monthly Analysis with RSI Pulsar in Ribbon Mode
This case study demonstrates the versatility and reliability of the RSI Pulsar in Ribbon mode, applied to a monthly chart of Bitcoin with an RSI length of 8 and a TEMA length of 14. This setup highlights the indicator’s robustness across multiple timeframes, extending even to long-term analysis. The RSI Pulsar effectively smooths out noise while capturing significant trends, as seen during Bitcoin bull markets. The Ribbon mode provides a clear visual representation of momentum shifts, making it easier for traders to identify trend continuations and reversals with confidence.
Case Study IV:
Divergences and Continuations with the Volatility Spectrum
Identifying harmony/divergences can be hit-or-miss at times, but this unique analysis method definitely has its merits at times. The RSI Pulsar, with its Volatility Spectrum feature, is used here to identify critical moments where price action either aligns with or diverges from the underlying volatility. As seen in the Bitcoin chart (using default settings), the indicator highlights areas where price trends either continue in harmony with volatility or diverge, signaling potential reversals. This method, while not always perfect, provides significant insight during key turning points in the market.
The Volatility Spectrum's visual representation of rising and falling volatility, combined with divergence and harmony analysis, enables traders to anticipate significant shifts in market dynamics. In this case, multiple divergences correctly identified early trend reversals, while periods of harmony indicated strong trend continuations. While this method requires careful interpretation, especially during complex market conditions, it offers valuable signals that can be pivotal in making informed trading decisions, especially if combined with other forms of analysis it can form a critical component of an investing system.
[GYTS-Pro] Flux Composer🧬 Flux Composer (Professional Edition)
🌸 Confluence indicator in GoemonYae Trading System (GYTS) 🌸
The Flux Composer is a powerful tool in the GYTS suite that is designed to aggregate signals from multiple Signal Providers, apply advanced decaying functions, and offer customisable and advanced confluence mechanisms. This allows making informed decisions by considering the strength and agreement ("when all stars align") of various input signals.
🌸 --------- TABLE OF CONTENTS --------- 🌸
1️⃣ Main Highlights
2️⃣ Flux Composer’s Features
Multi Signal Provider support
Advanced decaying functions
Customisable Flux confluence mechanisms
Actionable trading experience
Filtering options
User-friendly experience
Upgrades compared to Community Edition
3️⃣ User Guide
Selecting Signal Providers
Connecting Signal Providers to the Flux Composer
Understanding the Flux
Tuning the decaying functions
Choosing Flux confluence mechanism
Choosing sensitivity
Utilising the filtering options
Interpreting the Flux for trading signals
4️⃣ Limitations
🌸 ------ 1️⃣ --- MAIN HIGHLIGHTS --- 1️⃣ ------ 🌸
- Signal aggregation : Combines signals from multiple different 📡 Signal Providers, each of which can be tuned and adjusted independently.
- Decaying function : Utilises advanced decaying functions to model the diminishing effect of signals over time, ensuring that recent signals have more weight. In addition to the decaying effect, the "quality" of the original signals (e.g. a "strong" GDM from WaveTrend 4D ) are accounted for as well.
- Flux confluence mechanism : The aggregation of all decaying functions form the "Flux", which is the core signal measurement of the Flux Composer. Multiple mechanisms are available for creating the Flux and effectively using it for actionable trading signals.
- Visualisation : Provides detailed visualisation options to help users understand and tune the contributions of individual Signal Providers and their decaying functions.
- Backtesting : The 🧬 Flux Composer is a core component of the TradingView suite of the 🌸 GoemonYae Trading System (GYTS) 🌸. It connects multiple 📡 Signal Providers, such as the WaveTrend 4D, and processes their signals to produce a unified "Flux". This Flux can then be used by the GYTS "🎼 Order Orchestrator" for backtesting and trade automation.
🌸 ------ 2️⃣ --- FLUX COMPOSER'S FEATURES --- 2️⃣ ------ 🌸
Let's delve into more details...
💮 1. Multi Signal Provider support
Using the name of the GYTS "🎼 Order Orchestrator" as an analogy: Imagine a symphony where each instrument plays its own unique part, contributing to the overall harmony. The Flux Composer operates similarly, integrating multiple Signal Providers to create a comprehensive and robust trading signal -- the "Flux". Currently, it supports up to four streams from the WaveTrend 4D's ’s Gradient Divergence Measure (GDM) and another four streams from the Quantile Median Cross (QMC). These can be either four "Professional Edition" Signal Providers or eight "Community Editions".
Note that the GDM includes 2 different continuous signals and the QMC 3 different continuous signals (from different frequencies). This means that the Community Edition can handle 2*2 + 2*3 = 10 different continuous signals and the Professional Edition as much as 20.
As GYTS evolves, more Signal Providers will be added; at the moment of releasing the Flux Composer, only WaveTrend 4D is publicly available.
💮 2. Advanced decaying functions
A trading signal can be relevant today, less relevant tomorrow, and irrelevant in a week's time. In other words, its relevance diminishes, or decays , over time. The Flux Composer utilises decaying functions that ensure that recent signals carry more weight, while older signals fade away. This is crucial for accurate signal processing. The intensity and decay settings allow for precise control, allowing emphasising certain signals based on their strength and relevance over time. On top of that, unlike binary signals ("buy now"), the Flux Composer utilises the actual values from the Signal Providers, differentiating between the exact quality of signals, and thus offering a detailed representation of the trading landscape. We will illustrate this in a further section.
💮 3. Customisable Flux confluence mechanisms
Another core component of the Flux Composer is the ability of intelligently combining the decaying functions. It offers four sophisticated confluence mechanisms: Amplitude Compression, Accentuated Amplitude Compression, Trigonometric, and GYTSynthesis. Each mechanism has its unique way of processing the Flux, tailored to different trading needs. For instance, the Amplitude Compression method scales the Flux based on recent values, much like the Stochastic Oscillator, while the Trigonometric method uses smooth functions to reduce outliers’ impact. The GYTSynthesis is a proprietary method, striking a balance between signal strength and discriminative power.
We'll discuss this in more detail in the User Guide section.
💮 4. Actionable trading experience
While the mathematical abilities might seem overwhelming, the goal of the Flux Composer is to transform complex signal data into actionable trading signals. When the Flux reaches certain thresholds, it generates clear bullish or bearish signals, making it easy for traders to interpret. The inclusion of upper and lower thresholds (UT and LT) helps in identifying strong signals visually and should be a familiar behaviour similar to how many other indicators operate. Furthermore, the Flux Composer can plot trading signals directly on the oscillator, showing triangle shapes for buy or sell signals. This visual aid is complemented by the possibility to setup TradingView alerts.
💮 5. Filtering options
The Professional Edition also offers filtering options to possibly further improve the quality of Flux signals. Signal streams can be divided into “Signal Flux” and “Filter Flux.” The Filter Flux acts as a gatekeeper, ensuring that only signals meeting the Filter's criteria (which consist of similar UT/LT thresholds) are considered for trading. This dual-layer approach enhances the reliability of trading signals, reducing the chances of false positives.
💮 6. User-friendly experience
GYTS is all about sophisticated, robust methods but also "elegance". One of the interpretations of the latter, is that the users' experience is very important. Despite the Flux Composer's mathematical underpinnings, it offers intuitive settings that with omprehensive tooltips to help with a smooth setup process. For those looking to fine-tune their signals, the Flux Composer allows the visualisation of individual decaying functions. This feature helps users understand the impact of each setting and make informed adjustments. Additionally, the background of the chart can be coloured to indicate the trading direction suggested by the Filter Flux, providing an at-a-glance overview of market conditions.
💮 7. Upgrades compared to Community Edition
Number of signal streams -- At the moment of writing, the Professional Edition works with 4x GDM and 4x QMC signal streams from WaveTrend 4D Signal Provider , while Community Edition (CE) Flux Composer (FC) only works with 2x GDM and 2x QMC signal streams.
Flux confluence mechanism -- CE includes the Amplitude Compression and Trigonometric confluence mechanisms, while the Pro Edition also includes the Accentuated Amplitude Compression and the GYTSynthesis mechanisms.
Signal streams as filters -- The Pro Edition can use Signal Providers as filters.
🌸 ------ 3️⃣ --- USER GUIDE --- 3️⃣ ------ 🌸
💮 1. Selecting Signal Providers
The Flux Composer’s foundation lies in its Signal Providers. When starting with the Flux Composer, using a single Signal Provider can already provide significant value due to the nature of decaying functions. For instance, the WaveTrend 4D signal provider includes up to 5 signal types (GDM and QMC in different frequencies) in a single direction (long/short). Moreover, the various confluence mechanisms that enhance the resulting Flux result in improved discrimination between weak and strong signals. This approach is akin to ensemble learning in machine learning, where multiple models are combined to improve predictive performance.
While using a single Signal Provider is beneficial, the true power of the Flux Composer is realised with multiple Signal Providers. Here are two general approaches to selecting Signal Providers:
Diverse Behaviours
Use Signal Providers with different behaviours, such as WaveTrend 4D on various assets/timeframes or entirely different Signal Providers. This approach leverages diversification to achieve robustness, rooted in the principle that varied sources enhance the overall signal quality. To explain this with an analogy, this strategy aligns with the theory of diversification in portfolio management, where combining uncorrelated assets reduces overall risk. Similarly, combining uncorrelated signals can mitigate the risk of signal failure. A practical example can be integrating a mean-reversion signal with a trend-following signal -- these can balance each other out, providing more stable outputs over different market conditions.
Enhancing a Single Provider
If you consider a particular Signal Provider highly effective, you could improve its robustness by using multiple instances with slight variations. These variations could include different sources (e.g., close, HL2, HLC3), data providers (same asset across different brokers/exchanges), or parameter adjustments. This method mirrors Monte Carlo simulations, often used in risk management and derivative pricing, which involve running many simulations with varied inputs to estimate the probability of different outcomes. By applying similar principles, the strategy becomes less susceptible to overfitting, ensuring the signals are not overly dependent on specific data conditions.
💮 2. Connecting Signal Providers to the Flux Composer
Moving on to practicalities: how do you connect Signal Providers with the Flux Composer? You may have noticed that when you open the drawdown of a data source in a TradingView indicator (with "open", "high", "low", etc.), you also see names from other indicators on your chart. We call these "streams", and the Signal Providers are designed such that they output this stream in a way that the Flux Composer can interpret it. Thus, to connect a Signal Provider with the Flux Composer, you should first have that Signal Provider on your chart. Obviously you should set it up an a way that it seems to provide good signals. After that, in the Data Stream dropdown in the Flux Composer, you can select the stream that is outputted by your Signal Provider. This will always be with a prefix of "🔗 STREAM" (after the Signal Provider's indicator name). See the chart below.
There is one important nuance: when you have multiple (similar) Signal Providers on your chart, it may be hard to select the correct data stream in the Flux Composer as the names of the streams keep repeating when you use identical indicators. So be sure to be attentive as you might end up using the same signals multiple times.
Also, the Signal Providers have an "Indicator name" parameter (and another parameter to repeat this name) that is handy to use when you have multiple Signal Providers on your screen. It is handy to give names that describe the unique settings of that Signal Provider so you can better differentiate what you are looking at on your screen.
💮 3. Understanding the Flux
Let's understand how the Signal Provider's signals are processed. In the chart below, you see we have one Signal Provider (WaveTrend 4D) connected to the Flux Composer and that it gives a bearish QMC signal. The Flux Composer converts this into a decaying function. You can show these functions per Signal Provider when the option "Show decaying function of Signal Provider" is enabled (as it is in the chart).
In our opinion, of crucial importance is the ability to process the quality of signals, rather than just any signal. In mathematical terms, we are interested in continuous signals as these provide a spectrum of values. These signals can reflect varying degrees of market sentiment or trend strength, offering richer information than binary signals, which offer only two states (e.g., buy/sell). Especially in the context of the Flux Composer, where you aggregate multiple signals, it makes a big difference whether you combine 10 weak signals or 10 strong signals. To illustrate this principle, look at the chart below where there are 4 signals of different strengths. As you can see, each of the signals affects the Flux with different intensities.
💮 4. Tuning the decaying functions
As previously mentioned, the decaying functions are a way to give more importance to recent signals while allowing older ones to fade away gradually. This mimics the natural way we assess information, giving more weight to recent events. The decaying functions in the Flux Composer are highly customisable while remaining easy to use. You can adjust the initial intensity , which sets the starting strength of a signal, and the decay rate, which determines how quickly this signal diminishes over time. Let's look at specific examples.
If we add 3 Flux Composers on the chart, connect the same Signal Provider, keep all settings the same with one exception, we get the chart below. Here we have changed the "intensity" parameter of the specific signal. As you can see, the decaying functions are different. The intensity determines the initial strength of the decayed function. Adjusting the intensity allows you to emphasise certain signal types based on their perceived reliability or importance.
Let's now keep the intensity the same ("normal"), but change the "decay" parameter. As you can see in the image below, the decay controls how quickly the signal’s strength diminishes over time. By adjusting the decay, you can model the longevity of the signal’s impact. A faster decay means the signal loses its influence quickly, while a slower decay means it remains relevant for a longer period.
So how do multiple signals interact? You can see this as a simple "stacking of decaying functions" (although there is more to it, see next section). In the chart below we different strenghts of signals and different decay rates to illustrate how the Flux is constructed.
Hopefully this helps with developing some intuition how signals are converted to decaying functions, how you can control them, and how the Flux is constructed. When tuning these parameters, use the visualisation options to see how individual decaying functions contribute to the overall Flux. This helps in understanding and refining the parameters to achieve the desired trading signal behaviour.
💮 5. Choosing Flux confluence mechanism
While we mentioned that the Flux is a "stacking of individual decaying functions", in the back-end, that is not exactly that simple. Like previously mentioned, for GYTS, "elegance" is very important. One of the interpretations is "user friendliness" and the Flux confluence mechanism is one of the essential developments for this characteristic. The Flux confluence mechanism is critical in synthesising the aggregated signals into the Flux. The choice of mechanism affects how the signals are combined and the resulting trading signals. The Professional Edition offers four distinct mechanisms, each with its strengths.
The Amplitude Compression mechanism is intuitive, scaling the Flux based on recent values, intuitively not unlike the method of the well-known Stochastic Oscillator. The Accentuated Amplitude Compression method takes this a step further, giving more weight to strong Flux values. The Trigonometric mechanism smooths the Flux and reduces the impact of outliers, providing a balanced approach. Finally, the GYTSynthesis mechanism, a proprietary approach, balances signal strength and discriminative power, making it easier to tune and generalise.
It's difficult to convey the workings of the Flux confluence mechanism in a chart, but let's take the opportunity to show how the Flux would look like when connecting both one WaveTrend 4D Signal Provider signals to four Flux Composers with default settings, except the Flux confluence mechanism:
You may notice subtle differences between the four methods. They react differently to different values and their overall shape is slightly be different. The Amplitude Compression is more "pointy" and GYTSynthesis doesn't react to low values. There are many nuances, especially in combination with tuning the sensitivity and upper/lower threshold (UT/LT) parameters.
💮 6. Choosing sensitivity
Speaking of the sensitivity , this parameters fine-tunes how responsive the Flux is to the input signals. Higher sensitivity results in more pronounced responses, leading to more frequent trading signals. Lower sensitivity makes the Flux less responsive, resulting in fewer but potentially more reliable signals.
You might think that changing the upper/lower threshold (UT/LT) parameters would be equivalent, but that's not the case. The sensitivity In case of the Amplitude Compression mechanisms, changing the sensitivity would change the relative Flux shape over time, and with the Trigonometric and GYTSynthesis mechanisms, the Flux shape itself (independent of time) would change. In other words, these are all good parameters for tuning.
💮 7. Utilising the filtering options
When choosing the signal stream of a Signal Provider, you can also change the default "Signal" category of that Signal Provider to a "Filter". In the example below, two Signal Providers are connected; the second is set as a filter. You can see that a second row of a Flux is shown in the Flux Composer (this visualisation can be disabled), corresponding with the signals of the second Signal Provider.
Logically, only when the Filter Flux gives a signal in a certain direction, signals from the regular Signal Flux are registered. Generally speaking, for this use case it is handy to set the thresholds for the Filter Flux low and possibly to decrease the decay rate so that the filtering is active for a long enough time.
💮 8. Interpreting the Flux for trading signals
Lastly, the Signal Flux gives buy and sell signals when it crosses the upper/lower thresholds (UT/LT), when the filter allows it (if enabled). This can be visualised with the triangles as you may have seen in the charts in the previous sections. For people using TradingView's alerts -- these would work too out of the box. And finally, for backtesting and possibly trade automation, we will have the GYTS "🎼 Order Orchestrator" that connects with the Flux Composer.
🌸 ------ 4️⃣ --- LIMITATIONS --- 4️⃣ ------ 🌸
Only 🌸 GYTS 📡 Signal Providers are supported, as there is a specific method to pass continuous (non-binary) data in the data stream
At the moment of release, only the WaveTrend 4D Signal Provider is available. Other Signal Providers will be gradually released.
[GYTS-CE] Flux Composer🧬 Flux Composer (Community Edition)
🌸 Confluence indicator in GoemonYae Trading System (GYTS) 🌸
The Flux Composer is a powerful tool in the GYTS suite that is designed to aggregate signals from multiple Signal Providers, apply customisable decaying functions, and offer customisable and advanced confluence mechanisms. This allows making informed decisions by considering the strength and agreement ("when all stars align") of various input signals.
🌸 --------- TABLE OF CONTENTS --------- 🌸
1️⃣ Main Highlights
2️⃣ Flux Composer’s Features
Multi Signal Provider support
Advanced decaying functions
Customisable Flux confluence mechanisms
Actionable trading experience
User-friendly experience
3️⃣ User Guide
Selecting Signal Providers
Connecting Signal Providers to the Flux Composer
Understanding the Flux
Tuning the decaying functions
Choosing Flux confluence mechanism
Choosing sensitivity
Interpreting the Flux for trading signals
4️⃣ Limitations
🌸 ------ 1️⃣ --- MAIN HIGHLIGHTS --- 1️⃣ ------ 🌸
- Signal aggregation : Combines signals from multiple different 📡 Signal Providers, each of which can be tuned and adjusted independently.
- Decaying function : Utilises advanced decaying functions to model the diminishing effect of signals over time, ensuring that recent signals have more weight. In addition to the decaying effect, the "quality" of the original signals (e.g. a "strong" GDM from WaveTrend 4D with GDM ) are accounted for as well.
- Flux confluence mechanism : The aggregation of all decaying functions form the "Flux", which is the core signal measurement of the Flux Composer. Multiple mechanisms are available for creating the Flux and effectively using it for actionable trading signals.
- Visualisation : Provides detailed visualisation options to help users understand and tune the contributions of individual Signal Providers and their decaying functions.
- Backtesting : The 🧬 Flux Composer is a core component of the TradingView suite of the 🌸 GoemonYae Trading System (GYTS) 🌸. It connects multiple 📡 Signal Providers, such as the WaveTrend 4D, and processes their signals to produce a unified "Flux". This Flux can then be used by the GYTS "🎼 Order Orchestrator" for backtesting and trade automation.
🌸 ------ 2️⃣ --- FLUX COMPOSER'S FEATURES --- 2️⃣ ------ 🌸
Let's delve into more details...
💮 1. Multi Signal Provider support
Using the name of the GYTS "🎼 Order Orchestrator" as an analogy: Imagine a symphony where each instrument plays its own unique part, contributing to the overall harmony. The Flux Composer operates similarly, integrating multiple Signal Providers to create a comprehensive and robust trading signal -- the "Flux". Currently, it supports up to two streams from the WaveTrend 4D’s Gradient Divergence Measure (GDM) and another two streams from the WaveTrend 4D's Quantile Median Cross (QMC) .
Note that the GDM includes 2 different continuous signals and the QMC 3 different continuous signals (from different frequencies). This means that the Community Edition can handle 2*2 + 2*3 = 10 different continuous signals.
As GYTS evolves, more Signal Providers will be added; at the moment of releasing the Flux Composer, only WaveTrend 4D with GDM and with QMC are publicly available.
💮 2. Advanced decaying functions
A trading signal can be relevant today, less relevant tomorrow, and irrelevant in a week's time. In other words, its relevance diminishes, or decays , over time. The Flux Composer utilises decaying functions that ensure that recent signals carry more weight, while older signals fade away. This is crucial for accurate signal processing. The intensity and decay settings allow for precise control, allowing emphasising certain signals based on their strength and relevance over time. On top of that, unlike binary signals ("buy now"), the Flux Composer utilises the actual values from the Signal Providers, differentiating between the exact quality of signals, and thus offering a detailed representation of the trading landscape. We will illustrate this in a further section.
💮 3. Customisable Flux confluence mechanisms
Another core component of the Flux Composer is the ability of intelligently combining the decaying functions. It offers two sophisticated confluence mechanisms: Amplitude Compression and Trigonometric. Each mechanism has its unique way of processing the Flux, tailored to different trading needs. The Amplitude Compression method scales the Flux based on recent values, much like the Stochastic Oscillator, while the Trigonometric method uses smooth functions to reduce outliers’ impact We'll discuss this in more detail in the User Guide section.
💮 4. Actionable trading experience
While the mathematical abilities might seem overwhelming, the goal of the Flux Composer is to transform complex signal data into actionable trading signals. When the Flux reaches certain thresholds, it generates clear bullish or bearish signals, making it easy for traders to interpret. The inclusion of upper and lower thresholds (UT and LT) helps in identifying strong signals visually and should be a familiar behaviour similar to how many other indicators operate. Furthermore, the Flux Composer can plot trading signals directly on the oscillator, showing triangle shapes for buy or sell signals. This visual aid is complemented by the possibility to setup TradingView alerts.
💮 5. User-friendly experience
GYTS is all about sophisticated, robust methods but also "elegance". One of the interpretations of the latter, is that the users' experience is very important. Despite the Flux Composer's mathematical underpinnings, it offers intuitive settings that with omprehensive tooltips to help with a smooth setup process. For those looking to fine-tune their signals, the Flux Composer allows the visualisation of individual decaying functions. This feature helps users understand the impact of each setting and make informed adjustments.
🌸 ------ 3️⃣ --- USER GUIDE --- 3️⃣ ------ 🌸
💮 1. Selecting Signal Providers
The Flux Composer’s foundation lies in its Signal Providers. When starting with the Flux Composer, using a single Signal Provider can already provide significant value due to the nature of decaying functions. For instance, the WaveTrend 4D signal provider includes up to two GDM and three QMC signals in a single direction (long/short). Moreover, the various confluence mechanisms that enhance the resulting Flux result in improved discrimination between weak and strong signals. This approach is akin to ensemble learning in machine learning, where multiple models are combined to improve predictive performance.
While using a single Signal Provider is beneficial, the true power of the Flux Composer is realised with multiple Signal Providers. Here are two general approaches to selecting Signal Providers:
Diverse Behaviours
Use Signal Providers with different behaviours, such as WaveTrend 4D on various assets/timeframes or entirely different Signal Providers. This approach leverages diversification to achieve robustness, rooted in the principle that varied sources enhance the overall signal quality. To explain this with an analogy, this strategy aligns with the theory of diversification in portfolio management, where combining uncorrelated assets reduces overall risk. Similarly, combining uncorrelated signals can mitigate the risk of signal failure. A practical example can be integrating a mean-reversion signal with a trend-following signal -- these can balance each other out, providing more stable outputs over different market conditions.
Enhancing a Single Provider
If you consider a particular Signal Provider highly effective, you could improve its robustness by using multiple instances with slight variations. These variations could include different sources (e.g., close, HL2, HLC3), data providers (same asset across different brokers/exchanges), or parameter adjustments. This method mirrors Monte Carlo simulations, often used in risk management and derivative pricing, which involve running many simulations with varied inputs to estimate the probability of different outcomes. By applying similar principles, the strategy becomes less susceptible to overfitting, ensuring the signals are not overly dependent on specific data conditions.
💮 2. Connecting Signal Providers to the Flux Composer
Moving on to practicalities: how do you connect Signal Providers with the Flux Composer? You may have noticed that when you open the drawdown of a data source in a TradingView indicator (with "open", "high", "low", etc.), you also see names from other indicators on your chart. We call these "streams", and the Signal Providers are designed such that they output this stream in a way that the Flux Composer can interpret it. Thus, to connect a Signal Provider with the Flux Composer, you should first have that Signal Provider on your chart. Obviously you should set it up an a way that it seems to provide good signals. After that, in the Data Stream dropdown in the Flux Composer, you can select the stream that is outputted by your Signal Provider. This will always be with a prefix of "🔗 STREAM" (after the Signal Provider's indicator name). See the chart below.
There is one important nuance: when you have multiple (similar) Signal Providers on your chart, it may be hard to select the correct data stream in the Flux Composer as the names of the streams keep repeating when you use identical indicators. So be sure to be attentive as you might end up using the same signals multiple times.
Also, the Signal Providers have an "Indicator name" parameter (and another parameter to repeat this name) that is handy to use when you have multiple Signal Providers on your screen. It is handy to give names that describe the unique settings of that Signal Provider so you can better differentiate what you are looking at on your screen.
💮 3. Understanding the Flux
Let's understand how the Signal Provider's signals are processed. In the chart below, you see we have one Signal Provider (WaveTrend 4D) connected to the Flux Composer and that it gives a bearish QMC signal. The Flux Composer converts this into a decaying function. You can show these functions per Signal Provider when the option "Show decaying function of Signal Provider" is enabled (as it is in the chart).
In our opinion, of crucial importance is the ability to process the quality of signals, rather than just any signal. In mathematical terms, we are interested in continuous signals as these provide a spectrum of values. These signals can reflect varying degrees of market sentiment or trend strength, offering richer information than binary signals, which offer only two states (e.g., buy/sell). Especially in the context of the Flux Composer, where you aggregate multiple signals, it makes a big difference whether you combine 10 weak signals or 10 strong signals. To illustrate this principle, look at the chart below where there are 4 signals of different strengths. As you can see, each of the signals affects the Flux with different intensities.
💮 4. Tuning the decaying functions
As previously mentioned, the decaying functions are a way to give more importance to recent signals while allowing older ones to fade away gradually. This mimics the natural way we assess information, giving more weight to recent events. The decaying functions in the Flux Composer are highly customisable while remaining easy to use. You can adjust the initial intensity , which sets the starting strength of a signal, and the decay rate, which determines how quickly this signal diminishes over time. Let's look at specific examples.
If we add 3 Flux Composers on the chart, connect the same Signal Provider, keep all settings the same with one exception, we get the chart below. Here we have changed the "intensity" parameter of the specific signal. As you can see, the decaying functions are different. The intensity determines the initial strength of the decayed function. Adjusting the intensity allows you to emphasise certain signal types based on their perceived reliability or importance.
Let's now keep the intensity the same ("normal"), but change the "decay" parameter. As you can see in the image below, the decay controls how quickly the signal’s strength diminishes over time. By adjusting the decay, you can model the longevity of the signal’s impact. A faster decay means the signal loses its influence quickly, while a slower decay means it remains relevant for a longer period.
So how do multiple signals interact? You can see this as a simple "stacking of decaying functions" (although there is more to it, see next section). In the chart below we use different "intensity" and "decay" parameters to discuss how the Flux is created.
Hopefully this helps with developing some intuition how signals are converted to decaying functions, how you can control them, and how the Flux is constructed. When tuning these parameters, use the visualisation options to see how individual decaying functions contribute to the overall Flux. This helps in understanding and refining the parameters to achieve the desired trading signal behaviour.
💮 5. Choosing Flux confluence mechanism
While we mentioned that the Flux is a "stacking of individual decaying functions", in the back-end, that is not exactly that simple. Like previously mentioned, for GYTS, "elegance" is very important. One of the interpretations is "user friendliness" and the Flux confluence mechanism is one of the essential developments for this characteristic. The Flux confluence mechanism is critical in synthesising the aggregated signals into the Flux. The choice of mechanism affects how the signals are combined and the resulting trading signals. The Community Edition offers two distinct mechanisms, each with its strengths.
The Amplitude Compression mechanism is intuitive, scaling the Flux based on recent values, intuitively not unlike the method of the well-known Stochastic Oscillator. On the other hand, the Trigonometric mechanism smooths the Flux and reduces the impact of outliers, providing a balanced approach. It's difficult to convey the workings of the Flux confluence mechanism in a chart, but let's take the opportunity to show how the Flux would look like when connecting both GDM and QMC signals to two Flux Composers with default settings, except the Flux confluence mechanism:
You can notice that the upper Flux Converter (FC) triggered two signals while the other FC triggered only one. There are more nuances, especially in combination with tuning the sensitivity and upper/lower threshold (UT/LT) parameters.
💮 6. Choosing sensitivity
Speaking of the sensitivity , this parameters fine-tunes how responsive the Flux is to the input signals. Higher sensitivity results in more pronounced responses, leading to more frequent trading signals. Lower sensitivity makes the Flux less responsive, resulting in fewer but potentially more reliable signals.
You might think that changing the upper/lower threshold (UT/LT) parameters would be equivalent, but that's not the case. The sensitivity In case of the Amplitude Compression mechanism, changing the sensitivity would change the relative Flux shape over time, and with the Trigonometric mechanism, the Flux shape itself (independent of time) would change. In other words, these are all good parameters for tuning.
💮 8. Interpreting the Flux for trading signals
Lastly, the Signal Flux gives buy and sell signals when it crosses the upper/lower thresholds (UT/LT) This can be visualised with the triangles as you may have seen in the charts in the previous sections. For people using TradingView's alerts -- these would work out of the box. And finally, for backtesting and possibly trade automation, we will have the GYTS "🎼 Order Orchestrator" that connects with the Flux Composer.
🌸 ------ 4️⃣ --- LIMITATIONS --- 4️⃣ ------ 🌸
Only 🌸 GYTS 📡 Signal Providers are supported, as there is a specific method to pass continuous (non-binary) data in the data stream
At the moment of release, only WaveTrend 4D with GDM and with QMC are available. Other Signal Providers will be gradually released.
Continuation Index [DCAUT]█ Continuation Index
📊 OVERVIEW
Continuation Index (CI) is an advanced trend analysis indicator developed by John F. Ehlers. This indicator provides early warning signals for trend onset, continuation, and exhaustion, with values oscillating between -1 and +1 to offer clear trend state identification for traders.
Based on the article TASC 2025.09 "Trend Onset And Trend Exhaustion - The Continuation Index" by John F. Ehlers.
💡 CORE VALUE
Unlike traditional trend indicators, the Continuation Index provides:
- Advanced dual-filter architecture (Ultimate Smoother + Laguerre Filter)
- Inverse Fisher Transform for enhanced signal-to-noise ratio
- Adaptive gamma parameter allowing market-specific tuning
- Binary state output (+1/-1) eliminating interpretation ambiguity
🎯 CONCEPTS
Signal Interpretation
CI > 0.5 : Strong bullish trend continuation - consider holding/adding long positions
CI = +1 : Maximum bullish signal - strong uptrend in progress
CI < -0.5 : Strong bearish trend continuation - consider holding/adding short positions
CI = -1 : Maximum bearish signal - strong downtrend in progress
CI near 0 : Neutral zone - trend uncertain, wait for clear signals
Brief pullbacks from extreme states : Potential reentry opportunities in trend direction
Primary Applications
Trend Onset Detection : Early warning signals for trend initiation
Trend Exhaustion Signals : Identify potential trend reversals
Position Management : Clear binary states for entry/exit decisions
Market Timing : Adaptive filtering reduces false signals
📋 PARAMETER SETUP
Source : Data source for calculation (default: close)
Length : The calculation length for the filters (default: 40, min: 1)
Gamma : Controls the phase response of the Laguerre filter. Smaller values increase responsiveness (default: 0.8, range: 0.0-1.0)
Laguerre Order : The order of the Laguerre filter, which directly affects its lag (default: 8, range: 1-10)
📊 COLOR CODING
Green : CI > 0.5 - Bullish trend continuation
Red : CI < -0.5 - Bearish trend continuation
Gray : Neutral zone - Trend unclear
[DEM] Multiple Linear Regression Score Multiple Linear Regression Score is a composite momentum indicator that evaluates market conditions by analyzing a reference symbol (defaulting to NDX) across multiple technical dimensions and combining them into a single predictive score. The indicator processes ten different technical variables including RSI, MACD components (line, signal, and histogram), price relationships to various moving averages (10, 50, 100, 200), and short-term price changes (1-day and 5-day), converting most into binary signals (1 or 0) based on whether they're above or below zero. These binary and continuous inputs are then weighted using regression-derived coefficients and combined into a final percentage score that oscillates around zero, with the indicator also calculating a 20-period standard deviation of the score to measure volatility. This approach creates a data-driven sentiment gauge that quantifies the overall technical health of the reference market by mathematically weighting the importance of each technical factor based on historical relationships.
Options Trading Max Success_V1DISCLAIMER:
The information provided is NOT financial advice. I am not a financial adviser, accountant or the like. This information is purely from my own due diligence and an expression of my thoughts, my opinions based on my personal experiences, and the way I transact.
Utilize this indicator at your own risk..! The indicator creator is not liable for your loss due to untimely action / adverse consequences / server lags from Tradingview (if any).
======================================================
Welcome!
This is a 95-100% Success rate High Frequency Indicator exclusively for Binary Options Traders. It works on any time frames and pairs but is EXCLUSIVELY built for 1-minute candles for EUR/USD currency on "OANDA" forex chart. So, use it for same to get this indicator working at its best.
Use Martingale strategy (5 attempts max) for making profits / recover loss with some profits.
======================
Martingale Strategy For your knowledge with an example:
1) Lets say you are trading on binary options platform that gives 80% profit upon successful trade.
2) UP signal seen. You do the below from next candle:
a) 1st attempt = Rs.100.
- If Success, then profit = Rs.80. Cycle close and exit.
- If Loss, then do 2nd attempt.
b) 2nd attempt =Rs.200.
- If Success, then profit = Rs.160. (Rs. 100 recovery + Rs.60 Profit). Cycle close and exit.
- If Loss, then do 3rd attempt.
c) 3rd attempt = Rs. 400.
- If Success, then profit = Rs.320. (Rs. 300 recovery + Rs.20 Profit). Cycle close and exit.
- If Loss, then do 4th attempt.. and so on.
=======================
If you see any body less/Doji candle in between your attempts. Then do not continue further.
Hold this cycle for next similar stage. For example:
Select chart which promises: Success = 80% profit.
Then attempt the below on the next candle AFTER you see an UP signal.
Cycle 1: UP signal seen. 5 attempts from next candle:
Let's say:
1st attempt = Rs.100. Result = loss
2nd attempt =Rs.200. Result = loss
3rd attempt = Rs.400. Result = No profit/loss (due to Doji candle/candle without body).
Recommendation: Do not proceed further in current cycle. Hold on for next cycle/UP signal.
Park Rs.400 rupees attempt aside for a while.
Cycle 2: UP signal seen. 5 attempts from next candle:
Let's say:
1st attempt = Rs.100. Result = loss
2nd attempt =Rs.200. Result = Success
Cycle Completed. Wait for next cycle/Up signal
Cycle 3: UP signal seen. 5 attempts from next candle:
Let's say:
1st attempt = Rs.100. Result = loss
2nd attempt =Rs.200. Result = loss
3rd attempt = Now you can attempt with Rs. 800.
.
=====================
Recommendations:
- Keep a good discipline and make smart moves.
- You may add other supporting indicators of your choice along with this.
- You can keep your trading attempts low i.e. After you see an UP signal, let go the 1st one/two/three candles. If they turn out to be Red candles back to back, then good for you, as you can start entry of attempts from the 2nd/3rd/4th candle. Thereby evading one/two/three few failed attempts. If any candle gets green After Up signal and before your entry, then do not enter this cycle. Wait for next cycle.
Good luck.
================
Dip Hunter [BackQuant]Dip Hunter
What this tool does in plain language
Dip Hunter is a pullback detector designed to find high quality buy-the-dip opportunities inside healthy trends and to avoid random knife catches. It watches for a quick drop from a recent high, checks that the drop happened with meaningful participation and volatility, verifies short-term weakness inside a larger uptrend, then scores the setup and paints the chart so you can act with confidence. It also draws clean entry lines, provides a meter that shows dip strength at a glance, and ships with alerts that match common execution workflows.
How Dip Hunter thinks
It defines a recent swing reference, measures how far price has dipped off that high, and only looks at candidates that meet your minimum percentage drop.
It confirms the dip with real activity by requiring a volume spike and a volatility spike.
It checks structure with two EMAs. Price should be weak in the short term while the larger context remains constructive.
It optionally requires a higher-timeframe trend to be up so you focus on pullbacks in trending markets.
It bundles those checks into a score and shows you the score on the candles and on a gradient meter.
When everything lines up it paints a green triangle below the bar, shades the background, and (if you wish) draws a horizontal entry line at your chosen level.
Inputs and what they mean
Dip Hunter Settings
• Vol Lookback and Vol Spike : The script computes an average volume over the lookback window and flags a spike when current volume is a multiple of that average. A multiplier of 2.0 means today’s volume must be at least double the average. This helps filter noise and focuses on dips that other traders actually traded.
• Fast EMA and Slow EMA : Short-term and medium-term structure references. A dip is more credible if price closes below the fast EMA while the fast EMA is still below the slow EMA during the pullback. That is classic corrective behavior inside a larger trend.
• Price Smooth : Optional smoothing length for price-derived series. Use this if you trade very noisy assets or low timeframes.
• Volatility Len and Vol Spike (volatility) : The script checks both standard deviation and true range against their own averages. If either expands beyond your multiplier the market confirms the move with range.
• Dip % and Lookback Bars : The engine finds the highest high over the lookback window, then computes the percentage drawdown from that high to the current close. Only dips larger than your threshold qualify.
Trend Filter
• Enable Trend Filter : When on, Dip Hunter will only trigger if the market is in an uptrend.
• Trend EMA Period : The longer EMA that defines the session’s backbone trend.
• Minimum Trend Strength : A small positive slope requirement. In practice this means the trend EMA should be rising, and price should be above it. You can raise the value to be more selective.
Entries
• Show Entry Lines : Draws a horizontal guide from the signal bar for a fixed number of bars. Great for limit orders, scaling, or re-tests.
• Line Length (bars) : How far the entry guide extends.
• Min Gap (bars) : Suppresses new entry lines if another dip fired recently. Prevents clutter during choppy sequences.
• Entry Price : Choose the line level. “Low” anchors at the signal candle’s low. “Close” anchors at the signal close. “Dip % Level” anchors at the theoretical level defined by recent_high × (1 − dip%). This lets you work resting orders at a consistent discount.
Heat / Meter
• Color Bars by Score : Colors each candle using a red→white→green gradient. Red is overheated, green is prime dip territory, white is neutral.
• Show Meter Table : Adds a compact gradient strip with a pointer that tracks the current score.
• Meter Cells and Meter Position : Resolution and placement of the meter.
UI Settings
• Show Dip Signals : Plots green triangles under qualifying bars and tints the background very lightly.
• Show EMAs : Plots fast, slow, and the trend EMA (if the trend filter is enabled).
• Bullish, Bearish, Neutral colors : Theme controls for shapes, fills, and bar painting.
Core calculations explained simply
Recent high and dip percent
The script finds the highest high over Lookback Bars , calls it “recent high,” then calculates:
dip% = (recent_high − close) ÷ recent_high × 100.
If dip% is larger than Dip % , condition one passes.
Volume confirmation
It computes a simple moving average of volume over Vol Lookback . If current volume ÷ average volume > Vol Spike , we have a participation spike. It also checks 5-bar ROC of volume. If ROC > 50 the spike is forceful. This gets an extra score point.
Volatility confirmation
Two independent checks:
• Standard deviation of closes vs its own average.
• True range vs ATR.
If either expands beyond Vol Spike (volatility) the move has range. This prevents false triggers from quiet drifts.
Short-term structure
Price should close below the Fast EMA and the fast EMA should be below the Slow EMA at the moment of the dip. That is the anatomy of a pullback rather than a full breakdown.
Macro trend context (optional)
When Enable Trend Filter is on, the Trend EMA must be rising and price must be above it. The logic prefers “micro weakness inside macro strength” which is the highest probability pattern for buying dips.
Signal formation
A valid dip requires:
• dip% > threshold
• volume spike true
• volatility spike true
• close below fast EMA
• fast EMA below slow EMA
If the trend filter is enabled, a rising trend EMA with price above it is also required. When all true, the triangle prints, the background tints, and optional entry lines are drawn.
Scoring and visuals
Binary checks into a continuous score
Each component contributes to a score between 0 and 1. The script then rescales to a centered range (−50 to +50).
• Low or negative scores imply “overheated” conditions and are shaded toward red.
• High positive scores imply “ripe for a dip buy” conditions and are shaded toward green.
• The gradient meter repeats the same logic, with a pointer so you can read the state quickly.
Bar coloring
If you enable “Color Bars by Score,” each candle inherits the gradient. This makes sequences obvious. Red clusters warn you not to buy. White means neutral. Increasing green suggests the pullback is maturing.
EMAs and the trend EMA
• Fast EMA turns down relative to the slow EMA inside the pullback.
• Trend EMA stays rising and above price once the dip exhausts, which is your cue to focus on long setups rather than bottom fishing in downtrends.
Entry lines
When a fresh signal fires and no other signal happened within Min Gap (bars) , the indicator draws a horizontal level for Line Length bars. Use these lines for limit entries at the low, at the close, or at the defined dip-percent level. This keeps your plan consistent across instruments.
Alerts and what they mean
• Market Overheated : Score is deeply negative. Do not chase. Wait for green.
• Close To A Dip : Score has reached a healthy level but the full signal did not trigger yet. Prepare orders.
• Dip Confirmed : First bar of a fresh validated dip. This is the most direct entry alert.
• Dip Active : The dip condition remains valid. You can scale in on re-tests.
• Dip Fading : Score crosses below 0.5 from above. Momentum of the setup is fading. Tighten stops or take partials.
• Trend Blocked Signal : All dip conditions passed but the trend filter is offside. Either reduce risk or skip, depending on your plan.
How to trade with Dip Hunter
Classic pullback in uptrend
Turn on the trend filter.
Watch for a Dip Confirmed alert with green triangle.
Use the entry line at “Dip % Level” to stage a limit order. This keeps your entries consistent across assets and timeframes.
Initial stop under the signal bar’s low or under the next lower EMA band.
First target at prior swing high, second target at a multiple of risk.
If you use partials, trail the remainder under the fast EMA once price reclaims it.
Aggressive intraday scalps
Lower Dip % and Lookback Bars so you catch shallow flags.
Keep Vol Spike meaningful so you only trade when participation appears.
Take quick partials when price reclaims the fast EMA, then exit on Dip Fading if momentum stalls.
Counter-trend probes
Disable the trend filter if you intentionally hunt reflex bounces in downtrends.
Require strong volume and volatility confirmation.
Use smaller size and faster targets. The meter should move quickly from red toward white and then green. If it does not, step aside.
Risk management templates
Stops
• Conservative: below the entry line minus a small buffer or below the signal bar’s low.
• Structural: below the slow EMA if you aim for swing continuation.
• Time stop: if price does not reclaim the fast EMA within N bars, exit.
Position sizing
Use the distance between the entry line and your structural stop to size consistently. The script’s entry lines make this distance obvious.
Scaling
• Scale at the entry line first touch.
• Add only if the meter stays green and price reclaims the fast EMA.
• Stop adding on a Dip Fading alert.
Tuning guide by market and timeframe
Equities daily
• Dip %: 1.5 to 3.0
• Lookback Bars: 5 to 10
• Vol Spike: 1.5 to 2.5
• Volatility Len: 14 to 20
• Trend EMA: 100 or 200
• Keep trend filter on for a cleaner list.
Futures and FX intraday
• Dip %: 0.4 to 1.2
• Lookback Bars: 3 to 7
• Vol Spike: 1.8 to 3.0
• Volatility Len: 10 to 14
• Use Min Gap to avoid clusters during news.
Crypto
• Dip %: 3.0 to 6.0 for majors on higher timeframes, lower on 15m to 1h
• Lookback Bars: 5 to 12
• Vol Spike: 1.8 to 3.0
• ATR and stdev checks help in erratic sessions.
Reading the chart at a glance
• Green triangle below the bar: a validated dip.
• Light green background: the current bar meets the full condition.
• Bar gradient: red is overheated, white is neutral, green is dip-friendly.
• EMAs: fast below slow during the pullback, then reclaim fast EMA on the bounce for quality continuation.
• Trend EMA: a rising spine when the filter is on.
• Entry line: a fixed level to anchor orders and risk.
• Meter pointer: right side toward “Dip” means conditions are maturing.
Why this combination reduces false positives
Any single criterion will trigger too often. Dip Hunter demands a dip off a recent high plus a volume surge plus a volatility expansion plus corrective EMA structure. Optional trend alignment pushes odds further in your favor. The score and meter visualize how many of these boxes you are actually ticking, which is more reliable than a binary dot.
Limitations and practical tips
• Thin or illiquid symbols can spoof volume spikes. Use larger Vol Lookback or raise Vol Spike .
• Sideways markets will show frequent small dips. Increase Dip % or keep the trend filter on.
• News candles can blow through entry lines. Widen stops or skip around known events.
• If you see many back-to-back triangles, raise Min Gap to keep only the best setups.
Quick setup recipes
• Clean swing trader: Trend filter on, Dip % 2.0 to 3.0, Vol Spike 2.0, Volatility Len 14, Fast 20 EMA, Slow 50 EMA, Trend 100 EMA.
• Fast intraday scalper: Trend filter off, Dip % 0.7 to 1.0, Vol Spike 2.5, Volatility Len 10, Fast 9 EMA, Slow 21 EMA, Min Gap 10 bars.
• Crypto swing: Trend filter on, Dip % 4.0, Vol Spike 2.0, Volatility Len 14, Fast 20 EMA, Slow 50 EMA, Trend 200 EMA.
Summary
Dip Hunter is a focused pullback engine. It quantifies a real dip off a recent high, validates it with volume and volatility expansion, enforces corrective structure with EMAs, and optionally restricts signals to an uptrend. The score, bar gradient, and meter make reading conditions instant. Entry lines and alerts turn that read into an executable plan. Tune the thresholds to your market and timeframe, then let the tool keep you patient in red, selective in white, and decisive in green.