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.
Pesquisar nos scripts por "binary"
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.
Tradebot Trend PowerSummary: Multi-indicator trend dashboard showing weighted Buy/Sell strength as percentage bars with a clean gradient panel.
What it does
Tradebot Trend Power aggregates multiple technical indicators into a Buy/Sell trend-power score and visualizes it as a compact on-chart panel with two bar columns (Buy / Sell).
You can enable/disable each component (RSI, StochRSI, MACD, ADX, CCI, Aroon, MFI, OBV, MA) and assign a weight (1 or 2 points).
The script converts the active signals into percentages of the total possible score and fills the bars with a gradient: green for Buy strength, red for Sell strength.
When a column reaches its maximum (normalized to 10 bars), a small “Strong” label appears for that side.
How it works (scoring logic)
Each selected component contributes to the Buy or Sell tally based on a simple binary condition:
RSI: Buy if RSI is rising (ΔRSI > 0); Sell if falling (ΔRSI < 0).
StochRSI: Buy if %K > %D; Sell if %K < %D.
MACD: Buy if MACD line > Signal; Sell if MACD line < Signal.
ADX (+DI/−DI): Active only when ADX > 20; Buy if +DI > −DI; Sell if −DI > +DI.
CCI: Buy if CCI > 0; Sell if CCI < 0.
Aroon: Buy if Aroon Up > Aroon Down; Sell if Down > Up.
MFI: Buy if MFI > 50; Sell if MFI < 50.
OBV: Buy if OBV is rising; Sell if OBV is falling.
Moving Average (EMA/SMA/WMA/HMA): Buy if close > MA; Sell if close < MA.
Each “true” condition adds its weight to the corresponding Buy or Sell score. Scores are divided by the sum of selected weights to produce Buy/Sell percentages (0–100%). The panel normalizes these into 10 bars per side for quick visual ranking.
Panel / display
Toggle the panel on/off and choose position (top/middle/bottom, left/center/right).
Header shows Buy % and Sell %; the footer shows how many components are currently signaling on each side (e.g., Buy (5/7) | Sell (2/7)).
Colors use a smooth gradient from the panel base color to green/red based on the percentage.
How to use
Enable the indicators you want to include and set their weights (1 = light impact, 2 = stronger impact).
Optionally adjust lookback lengths (e.g., RSI 14, MACD 12/26/9, MA 20).
Place the panel where you prefer.
Use the Buy/Sell percentages for context (trend bias, momentum alignment, confirmation layer) alongside your own entries, risk and management rules.
Defaults / conduct notes
No request.security(); calculations are done on the current chart only.
This is an indicator (not a strategy); it shows no backtests or orders.
The panel updates on the last bar; no forward-looking tricks are used.
Signals are simplified, binary forms of the underlying indicators and are intended for decision support, not standalone predictions.
Limits & disclaimers
Not intended for non-standard chart types (Heikin Ashi, Renko, Range, Kagi, Point & Figure).
Past results do not guarantee future performance.
Example view:
The chart shows the gradient Buy/Sell bars and the “Strong” label at full power.
UI wording (EN equivalents of panel labels)
“📉 Tradebot Strategies Trend Power” → Trend Power Panel
“Trend Power” → Panel On/Off
“Top/Bottom/Middle Left/Center/Right” → Panel position
“Panel Color / Buy gradient / Sell gradient / Text Color” → Style settings
“Text Size” → Panel text size
“RSI / StochRSI / MACD / ADX (+DI/−DI) / CCI / Aroon / MFI / OBV / Moving Average” → Component toggles & weights
“Length / Fast / Slow / Signal / %K / %D / DI Length / ADX Smoothing / MA Type” → Inputs
Quantum Flux Universal Strategy Summary in one paragraph
Quantum Flux Universal is a regime switching strategy for stocks, ETFs, index futures, major FX pairs, and liquid crypto on intraday and swing timeframes. It helps you act only when the normalized core signal and its guide agree on direction. It is original because the engine fuses three adaptive drivers into the smoothing gains itself. Directional intensity is measured with binary entropy, path efficiency shapes trend quality, and a volatility squash preserves contrast. Add it to a clean chart, watch the polarity lane and background, and trade from positive or negative alignment. For conservative workflows use on bar close in the alert settings when you add alerts in a later version.
Scope and intent
• Markets. Large cap equities and ETFs. Index futures. Major FX pairs. Liquid crypto
• Timeframes. One minute to daily
• Default demo used in the publication. QQQ on one hour
• Purpose. Provide a robust and portable way to detect when momentum and confirmation align, while dampening chop and preserving turns
• Limits. This is a strategy. Orders are simulated on standard candles only
Originality and usefulness
• Unique concept or fusion. The novelty sits in the gain map. Instead of gating separate indicators, the model mixes three drivers into the adaptive gains that power two one pole filters. Directional entropy measures how one sided recent movement has been. Kaufman style path efficiency scores how direct the path has been. A volatility squash stabilizes step size. The drivers are blended into the gains with visible inputs for strength, windows, and clamps.
• What failure mode it addresses. False starts in chop and whipsaw after fast spikes. Efficiency and the squash reduce over reaction in noise.
• Testability. Every component has an input. You can lengthen or shorten each window and change the normalization mode. The polarity plot and background provide a direct readout of state.
• Portable yardstick. The core is normalized with three options. Z score, percent rank mapped to a symmetric range, and MAD based Z score. Clamp bounds define the effective unit so context transfers across symbols.
Method overview in plain language
The strategy computes two smoothed tracks from the chart price source. The fast track and the slow track use gains that are not fixed. Each gain is modulated by three drivers. A driver for directional intensity, a driver for path efficiency, and a driver for volatility. The difference between the fast and the slow tracks forms the raw flux. A small phase assist reduces lag by subtracting a portion of the delayed value. The flux is then normalized. A guide line is an EMA of a small lead on the flux. When the flux and its guide are both above zero, the polarity is positive. When both are below zero, the polarity is negative. Polarity changes create the trade direction.
Base measures
• Return basis. The step is the change in the chosen price source. Its absolute value feeds the volatility estimate. Mean absolute step over the window gives a stable scale.
• Efficiency basis. The ratio of net move to the sum of absolute step over the window gives a value between zero and one. High values mean trend quality. Low values mean chop.
• Intensity basis. The fraction of up moves over the window plugs into binary entropy. Intensity is one minus entropy, which maps to zero in uncertainty and one in very one sided moves.
Components
• Directional Intensity. Measures how one sided recent bars have been. Smoothed with RMA. More intensity increases the gain and makes the fast and slow tracks react sooner.
• Path Efficiency. Measures the straightness of the price path. A gamma input shapes the curve so you can make trend quality count more or less. Higher efficiency lifts the gain in clean trends.
• Volatility Squash. Normalizes the absolute step with Z score then pushes it through an arctangent squash. This caps the effect of spikes so they do not dominate the response.
• Normalizer. Three modes. Z score for familiar units, percent rank for a robust monotone map to a symmetric range, and MAD based Z for outlier resistance.
• Guide Line. EMA of the flux with a small lead term that counteracts lag without heavy overshoot.
Fusion rule
• Weighted sum of the three drivers with fixed weights visible in the code comments. Intensity has fifty percent weight. Efficiency thirty percent. Volatility twenty percent.
• The blend power input scales the driver mix. Zero means fixed spans. One means full driver control.
• Minimum and maximum gain clamps bound the adaptive gain. This protects stability in quiet or violent regimes.
Signal rule
• Long suggestion appears when flux and guide are both above zero. That sets polarity to plus one.
• Short suggestion appears when flux and guide are both below zero. That sets polarity to minus one.
• When polarity flips from plus to minus, the strategy closes any long and enters a short.
• When flux crosses above the guide, the strategy closes any short.
What you will see on the chart
• White polarity plot around the zero line
• A dotted reference line at zero named Zen
• Green background tint for positive polarity and red background tint for negative polarity
• Strategy long and short markers placed by the TradingView engine at entry and at close conditions
• No table in this version to keep the visual clean and portable
Inputs with guidance
Setup
• Price source. Default ohlc4. Stable for noisy symbols.
• Fast span. Typical range 6 to 24. Raising it slows the fast track and can reduce churn. Lowering it makes entries more reactive.
• Slow span. Typical range 20 to 60. Raising it lengthens the baseline horizon. Lowering it brings the slow track closer to price.
Logic
• Guide span. Typical range 4 to 12. A small guide smooths without eating turns.
• Blend power. Typical range 0.25 to 0.85. Raising it lets the drivers modulate gains more. Lowering it pushes behavior toward fixed EMA style smoothing.
• Vol window. Typical range 20 to 80. Larger values calm the volatility driver. Smaller values adapt faster in intraday work.
• Efficiency window. Typical range 10 to 60. Larger values focus on smoother trends. Smaller values react faster but accept more noise.
• Efficiency gamma. Typical range 0.8 to 2.0. Above one increases contrast between clean trends and chop. Below one flattens the curve.
• Min alpha multiplier. Typical range 0.30 to 0.80. Lower values increase smoothing when the mix is weak.
• Max alpha multiplier. Typical range 1.2 to 3.0. Higher values shorten smoothing when the mix is strong.
• Normalization window. Typical range 100 to 300. Larger values reduce drift in the baseline.
• Normalization mode. Z score, percent rank, or MAD Z. Use MAD Z for outlier heavy symbols.
• Clamp level. Typical range 2.0 to 4.0. Lower clamps reduce the influence of extreme runs.
Filters
• Efficiency filter is implicit in the gain map. Raising efficiency gamma and the efficiency window increases the preference for clean trends.
• Micro versus macro relation is handled by the fast and slow spans. Increase separation for swing, reduce for scalping.
• Location filter is not included in v1.0. If you need distance gates from a reference such as VWAP or a moving mean, add them before publication of a new version.
Alerts
• This version does not include alertcondition lines to keep the core minimal. If you prefer alerts, add names Long Polarity Up, Short Polarity Down, Exit Short on Flux Cross Up in a later version and select on bar close for conservative workflows.
Strategy has been currently adapted for the QQQ asset with 30/60min timeframe.
For other assets may require new optimization
Properties visible in this publication
• Initial capital 25000
• Base currency Default
• Default order size method percent of equity with value 5
• Pyramiding 1
• Commission 0.05 percent
• Slippage 10 ticks
• Process orders on close ON
• Bar magnifier ON
• Recalculate after order is filled OFF
• Calc on every tick OFF
Honest limitations and failure modes
• Past results do not guarantee future outcomes
• Economic releases, circuit breakers, and thin books can break the assumptions behind intensity and efficiency
• Gap heavy symbols may benefit from the MAD Z normalization
• Very quiet regimes can reduce signal contrast. Use longer windows or higher guide span to stabilize context
• Session time is the exchange time of the chart
• If both stop and target can be hit in one bar, tie handling would matter. This strategy has no fixed stops or targets. It uses polarity flips for exits. If you add stops later, declare the preference
Open source reuse and credits
• None beyond public domain building blocks and Pine built ins such as EMA, SMA, standard deviation, RMA, and percent rank
• Method and fusion are original in construction and disclosure
Legal
Education and research only. Not investment advice. You are responsible for your decisions. Test on historical data and in simulation before any live use. Use realistic costs.
Strategy add on block
Strategy notice
Orders are simulated by the TradingView engine on standard candles. No request.security() calls are used.
Entries and exits
• Entry logic. Enter long when both the normalized flux and its guide line are above zero. Enter short when both are below zero
• Exit logic. When polarity flips from plus to minus, close any long and open a short. When the flux crosses above the guide line, close any short
• Risk model. No initial stop or target in v1.0. The model is a regime flipper. You can add a stop or trail in later versions if needed
• Tie handling. Not applicable in this version because there are no fixed stops or targets
Position sizing
• Percent of equity in the Properties panel. Five percent is the default for examples. Risk per trade should not exceed five to ten percent of equity. One to two percent is a common choice
Properties used on the published chart
• Initial capital 25000
• Base currency Default
• Default order size percent of equity with value 5
• Pyramiding 1
• Commission 0.05 percent
• Slippage 10 ticks
• Process orders on close ON
• Bar magnifier ON
• Recalculate after order is filled OFF
• Calc on every tick OFF
Dataset and sample size
• Test window Jan 2, 2014 to Oct 16, 2025 on QQQ one hour
• Trade count in sample 324 on the example chart
Release notes template for future updates
Version 1.1.
• Add alertcondition lines for long, short, and exit short
• Add optional table with component readouts
• Add optional stop model with a distance unit expressed as ATR or a percent of price
Notes. Backward compatibility Yes. Inputs migrated Yes.
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.
Entropy (Fiedor/Kontoyiannis) - Part 2 of Fiedor's TheoryThis indicator estimates the Shannon entropy of a price series using a Markov chain model of binary returns, following the approach of Fiedor (2014) and Kontoyiannis (1997).
% of Max shows current entropy as a percentage of its theoretical maximum (1 bit for binary up/down moves).
Percentile ranks the current entropy against historical values in the chosen lookback window.
High entropy suggests price movement is less predictable by frequentist models; low entropy implies more structure and predictability.
Use this as an informational oscillator, not a trading signal.
This is a visualization of Part 1 of Fiedor's Theory. The same entropy logic is already embedded in Part 1 however the second pane is a nice reminder of why it works.
Information Theory Market AnalysisINFORMATION THEORY MARKET ANALYSIS
OVERVIEW
This indicator applies mathematical concepts from information theory to analyze market behavior, measuring the randomness and predictability of price and volume movements through entropy calculations. Unlike traditional technical indicators, it provides insight into market structure and regime changes.
KEY COMPONENTS
Four Main Signals:
• Price Entropy (Deep Blue): Measures randomness in price movements
• Volume Entropy (Bright Blue): Analyzes volume pattern predictability
• Entropy MACD (Purple): Shows relationship between price and volume entropy
• SEMM (Royal Blue): Stochastic Entropy Market Monitor - overall market randomness gauge
Market State Detection:
The indicator identifies seven distinct market states:
• Strong Trending (SEMM < 0.1)
• Weak Trending (0.1-0.2)
• Neutral (0.2-0.3)
• Moderate Random (0.3-0.5)
• High Randomness (0.5-0.8)
• Very Random (0.8-1.0)
• Chaotic (>1.0)
KEY FEATURES
Advanced Analytics:
• Signal Strength Confluence: 0-5 scale measuring alignment of multiple factors
• Entropy Crossovers: Detects shifts between accumulation and distribution phases
• Extreme Readings: Identifies statistical outliers for potential reversals
• Trend Bias Analysis: Directional momentum assessment
Information Dashboard:
• Real-time entropy values and market state
• Signal strength indicator with visual highlighting
• Trend bias with directional arrows
• Color-coded alerts for extreme conditions
Customizable Display:
• Adjustable SEMM scaling (5x to 100x) for optimal visibility
• Multiple line styles: Smooth, Stepped, Dotted
• 9 table positions with 3 size options
• Professional blue color scheme with transparency controls
Comprehensive Alert System - 15 Alert Types Including:
• Extreme entropy readings (price/volume)
• Crossover signals (dominance shifts)
• Market state changes (trending ↔ random)
• High confluence signals (3+ factors aligned)
HOW TO USE
Reading the Signals:
• Entropy Values > ±25: Strong structural signals
• Entropy Values > ±40: Extreme readings, potential reversals
• SEMM < 0.2: Trending market favors directional strategies
• SEMM > 0.5: Random market favors range/scalping strategies
Signal Confluence:
Look for multiple factors aligning:
• Signal Strength ≥ 3.0 for higher probability setups
• Background highlighting indicates confluence
• Table shows real-time strength assessment
Timeframe Optimization:
• Short-term (1m-15m): Entropy Length 14-22, Sensitivity 3-5
• Swing Trading (1H-4H): Default settings optimal
• Position Trading (Daily+): Entropy Length 34-55, Sensitivity 8-12
EDUCATIONAL APPLICATIONS
Market Structure Analysis:
• Understand when markets are trending vs. ranging
• Identify accumulation and distribution phases
• Recognize extreme market conditions
• Measure information content in price movements
Information Theory Concepts:
• Binary entropy calculations applied to financial data
• Probability distribution analysis of returns
• Statistical ranking and percentile analysis
• Momentum-adjusted randomness measurement
TECHNICAL DETAILS
Calculations:
• Uses binary entropy formula: -
• Percentile ranking across multiple timeframes
• Volume-weighted probability distributions
• RSI-adjusted momentum entropy (SEMM)
Customization Options:
• Entropy Length: 5-100 bars (default: 22)
• Average Length: 10-200 bars (default: 88)
• Sensitivity: 1.0-20.0 (default: 5.0, lower = more sensitive)
• SEMM Scaling: 5.0-100.0x (default: 30.0)
IMPORTANT NOTES
Risk Considerations:
• Indicator measures probabilities, not certainties
• High SEMM values (>0.5) suggest increased market randomness
• Extreme readings may persist longer than expected
• Always combine with proper risk management
Educational Purpose:
This indicator is designed for:
• Market structure analysis and education
• Understanding information theory applications in finance
• Developing probabilistic thinking about markets
• Research and analytical purposes
Performance Tips:
• Allow 200+ bars for proper initialization
• Adjust scaling and transparency for optimal visibility
• Use confluence signals for higher probability analysis
• Consider multiple timeframes for comprehensive analysis
DISCLAIMER
This indicator is for educational and analytical purposes. It does not constitute financial advice. Past performance does not guarantee future results. Always conduct your own research and consider your risk tolerance before making trading decisions.
Version: 5.0
Category: Oscillators, Volume, Market Structure
Best For: All timeframes, trending and ranging markets
Complexity: Intermediate to Advanced
Intradayscanner - RvolThis indicator delivers a session-precise Relative Volume (RVol) metric using an advanced, performance-optimized method that goes beyond standard volume-vs-average calculations:
Session-Aligned Cumulative Volume
Tracks intraday volume from each session’s true open using a rolling array of session start bar indices.
Prunes old sessions to maintain high performance even on long history (max_bars_back=5000).
Binary-Search History Lookup
Employs a binary-search algorithm to find the exact bar corresponding to each prior session’s close, accounting for weekends/holidays.
Ensures the N-day average is built from perfectly aligned session volumes rather than simple bar-counts.
Configurable Threshold & Coloring
Computes RVol = (today’s cumulative volume) ÷ (N-day average cumulative volume).
Highlights high-volume conditions when RVol exceeds a user-defined threshold (High Volume Threshold).
Optional line-coloring by price direction (up/down) for immediate visual context.
Background Shading for Volume Spikes
Applies semi-transparent colored backgrounds when RVol > 1 (and above the threshold), making significant volume surges unmissable.
Customizable Lookback & Precision
User inputs for N-day average length, threshold multiplier, and color-by-previous-close toggle.
Designed for up to 5000 bars of history without performance degradation.
TTM Squeeze Value OscillatorThis indicator is specifically designed for use with TradingView's Stock Screener, not for chart analysis. It provides numerical values and binary signals that allow traders to efficiently scan stocks for specific TTM Squeeze conditions, momentum patterns, and EMA alignments.
What It Does
The TTM Squeeze Value Oscillator converts the popular TTM Squeeze indicator into a screenable format by outputting specific numerical values and binary signals (1 or 0) that can be filtered in TradingView's screener tool.
Key Features
1. TTM Squeeze Compression Levels
Value 0: Low Compression (Black) - Bollinger Bands inside outer Keltner Channels
Value 1: Mid Compression (Red) - Bollinger Bands inside middle Keltner Channels
Value 2: High Compression (Orange) - Bollinger Bands inside inner Keltner Channels
Value 3: Squeeze Fired (Green) - Bollinger Bands outside Keltner Channels
2. Momentum Analysis
Four distinct momentum conditions based on TTM Squeeze methodology:
Buy Momentum Increasing - Positive momentum growing stronger
Buy Momentum Decreasing - Positive momentum weakening
Sell Momentum Increasing - Negative momentum growing stronger
Sell Momentum Decreasing - Negative momentum weakening
3. EMA Stacking Analysis
Three EMA alignment patterns using 8, 21, and 48 period EMAs:
EMA Stacked Bullish - 8 EMA > 21 EMA > 48 EMA (uptrend alignment)
EMA Stacked Bearish - 8 EMA < 21 EMA < 48 EMA (downtrend alignment)
EMA Mixed - EMAs not in clear bullish or bearish alignment
4. Consecutive Day Counters
Tracks how many consecutive days each squeeze condition has persisted:
Low Compression Days
Mid Compression Days
High Compression Days
Squeeze Fired Days
5. Combined Signal Analysis
Pre-calculated combinations of squeeze conditions with momentum:
All squeeze levels combined with all four momentum conditions
16 total combined signals for advanced screening
[Kpt-Ahab] Poor Mans Orderflow SimulatorScript Description – Poor Mans Orderflow Simulator
Purpose of the Script
This script simulates a simplified order flow approach ("Poor Man's Orderflow") without access to actual Bid/Ask data. The goal is to detect, quantify, and visualize patterns such as absorption, impulsive moves, and structured re-entry behaviors.
Calculation Logic
Absorption Candles
A candle is classified as "absorption" if:
The ratio of body size to full candle range is below a defined threshold,
Volume is significantly higher than the average of the last N periods,
The candle direction is negative (for long absorption) or positive (for short absorption).
These conditions define a candle with high activity but minimal price movement in the respective direction.
Impulse Candles
A candle is classified as "impulse" if:
The body-to-range ratio is high (indicating a strong directional move),
Volume exceeds the average significantly,
The price closes in the direction of the candle body (bullish or bearish).
Additionally, the average range of previous candles serves as a minimum benchmark for the impulse.
Cluster Detection
A cluster is detected when:
A minimum number of absorption candles is counted within a defined lookback period,
Either the long or short version of the absorption logic is used,
The result is a binary condition: cluster active or inactive.
Entry Signals (Re-entry)
An entry signal is generated when:
One or more absorption candles occurred in the last two bars,
A pullback against the direction of absorption occurs,
The current candle shows a directional move confirmed by a close in the expected direction.
These re-entry signals are evaluated separately for long and short scenarios.
Cluster-Confirmed Signals
A separate signal is generated when a valid re-entry setup occurs while a cluster is active. This represents a combined logic condition.
Alert Logic
The script provides a multi-layer alert framework:
Signal selection (Alertmode):
The user defines which signal type should trigger an alert (e.g. re-entry only, cluster only, combination, or impulse).
Optional filter (Filtermode):
A secondary filter limits alerts to cases where an additional condition (e.g. absorption cluster) is active.
Signal output:
As a simple binary value (+1 / –1) for classic alerts,
Or via an encoded Multibit signal, compatible with other modules in the djmad ecosystem.
These alerts are intended for integration with external systems or for use within platform-native visual or automation features.
TUF_LOGICTUF_LOGIC: Three-Value Logic for Pine Script v6
The TUF_LOGIC library implements a robust three-valued logic system (trilean logic) for Pine Script v6, providing a formal framework for reasoning about uncertain or incomplete information in financial markets. By extending beyond binary True/False states to include an explicit "Uncertain" state, this library enables more nuanced algorithmic decision-making, particularly valuable in environments characterized by imperfect information.
Core Architecture
TUF_LOGIC offers two complementary interfaces for working with trilean values:
Enum-Based API (Recommended): Leverages Pine Script v6's enum capabilities with Trilean.True , Trilean.Uncertain , and Trilean.False for improved type safety and performance.
Integer-Based API (Legacy Support): Maintains compatibility with existing code using integer values 1 (True), 0 (Uncertain), and -1 (False).
Fundamental Operations
The library provides type conversion methods for seamless interaction between integer representation and enum types ( to_trilean() , to_int() ), along with validation functions to maintain trilean invariants.
Logical Operators
TUF_LOGIC extends traditional boolean operators to the trilean domain with NOT , AND , OR , XOR , and EQUALITY functions that properly handle the Uncertain state according to the principles of three-valued logic.
The library implements three different implication operators providing flexibility for different logical requirements: IMP_K (Kleene's approach), IMP_L (Łukasiewicz's approach), and IMP_RM3 (Relevant implication under RM3 logic).
Inspired by Tarski-Łukasiewicz's modal logic formulations, TUF_LOGIC includes modal operators: MA (Modal Assertion) evaluates whether a state is possibly true; LA (Logical Assertion) determines if a state is necessarily true; and IA (Indeterminacy Assertion) identifies explicitly uncertain states.
The UNANIMOUS operator evaluates trilean values for complete agreement, returning the consensus value if one exists or Uncertain otherwise. This function is available for both pairs of values and arrays of trilean values.
Practical Applications
TUF_LOGIC excels in financial market scenarios where decision-making must account for uncertainty. It enables technical indicator consensus by combining signals with different confidence levels, supports multi-timeframe analysis by reconciling potentially contradictory signals, enhances risk management by explicitly modeling uncertainty, and handles partial information systems where some data sources may be unreliable.
By providing a mathematically sound framework for reasoning about uncertainty, TUF_LOGIC elevates trading system design beyond simplistic binary logic, allowing for more sophisticated decision-making that better reflects real-world market complexity.
Library "TUF_LOGIC"
Three-Value Logic (TUF: True, Uncertain, False) implementation for Pine Script.
This library provides a comprehensive set of logical operations supporting trilean logic systems,
including Kleene, Łukasiewicz, and RM3 implications. Compatible with Pine v6 enums.
method validate(self)
Ensures a valid trilean integer value by clamping to the appropriate range .
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer value to validate.
Returns: An integer value guaranteed to be within the valid trilean range.
method to_trilean(self)
Converts an integer value to a Trilean enum value.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer to convert (typically -1, 0, or 1).
Returns: A Trilean enum value: True (1), Uncertain (0), or False (-1).
method to_int(self)
Converts a Trilean enum value to its corresponding integer representation.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The Trilean enum value to convert.
Returns: Integer value: 1 (True), 0 (Uncertain), or -1 (False).
method NOT(self)
Negates a trilean integer value (NOT operation).
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer value to negate.
Returns: Negated integer value: 1 -> -1, 0 -> 0, -1 -> 1.
method NOT(self)
Negates a Trilean enum value (NOT operation).
Namespace types: series Trilean
Parameters:
self (series Trilean) : The Trilean enum value to negate.
Returns: Negated Trilean: True -> False, Uncertain -> Uncertain, False -> True.
method AND(self, comparator)
Logical AND operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The first integer value.
comparator (int) : The second integer value to compare with.
Returns: Integer result of the AND operation (minimum value).
method AND(self, comparator)
Logical AND operation for Trilean enum values following three-valued logic.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The first Trilean enum value.
comparator (series Trilean) : The second Trilean enum value to compare with.
Returns: Trilean result of the AND operation.
method OR(self, comparator)
Logical OR operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The first integer value.
comparator (int) : The second integer value to compare with.
Returns: Integer result of the OR operation (maximum value).
method OR(self, comparator)
Logical OR operation for Trilean enum values following three-valued logic.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The first Trilean enum value.
comparator (series Trilean) : The second Trilean enum value to compare with.
Returns: Trilean result of the OR operation.
method EQUALITY(self, comparator)
Logical EQUALITY operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The first integer value.
comparator (int) : The second integer value to compare with.
Returns: Integer representation (1/-1) indicating if values are equal.
method EQUALITY(self, comparator)
Logical EQUALITY operation for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The first Trilean enum value.
comparator (series Trilean) : The second Trilean enum value to compare with.
Returns: Trilean.True if both values are equal, Trilean.False otherwise.
method XOR(self, comparator)
Logical XOR (Exclusive OR) operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The first integer value.
comparator (int) : The second integer value to compare with.
Returns: Integer result of the XOR operation.
method XOR(self, comparator)
Logical XOR (Exclusive OR) operation for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The first Trilean enum value.
comparator (series Trilean) : The second Trilean enum value to compare with.
Returns: Trilean result of the XOR operation.
method IMP_K(self, comparator)
Material implication using Kleene's logic for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The antecedent integer value.
comparator (int) : The consequent integer value.
Returns: Integer result of Kleene's implication operation.
method IMP_K(self, comparator)
Material implication using Kleene's logic for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The antecedent Trilean enum value.
comparator (series Trilean) : The consequent Trilean enum value.
Returns: Trilean result of Kleene's implication operation.
method IMP_L(self, comparator)
Logical implication using Łukasiewicz's logic for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The antecedent integer value.
comparator (int) : The consequent integer value.
Returns: Integer result of Łukasiewicz's implication operation.
method IMP_L(self, comparator)
Logical implication using Łukasiewicz's logic for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The antecedent Trilean enum value.
comparator (series Trilean) : The consequent Trilean enum value.
Returns: Trilean result of Łukasiewicz's implication operation.
method IMP_RM3(self, comparator)
Logical implication using RM3 logic for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The antecedent integer value.
comparator (int) : The consequent integer value.
Returns: Integer result of the RM3 implication operation.
method IMP_RM3(self, comparator)
Logical implication using RM3 logic for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The antecedent Trilean enum value.
comparator (series Trilean) : The consequent Trilean enum value.
Returns: Trilean result of the RM3 implication operation.
method MA(self)
Modal Assertion (MA) operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer value to evaluate.
Returns: 1 if the value is 1 or 0, -1 if the value is -1.
method MA(self)
Modal Assertion (MA) operation for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The Trilean enum value to evaluate.
Returns: Trilean.True if value is True or Uncertain, Trilean.False if value is False.
method LA(self)
Logical Assertion (LA) operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer value to evaluate.
Returns: 1 if the value is 1, -1 otherwise.
method LA(self)
Logical Assertion (LA) operation for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The Trilean enum value to evaluate.
Returns: Trilean.True if value is True, Trilean.False otherwise.
method IA(self)
Indeterminacy Assertion (IA) operation for trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The integer value to evaluate.
Returns: 1 if the value is 0, -1 otherwise.
method IA(self)
Indeterminacy Assertion (IA) operation for Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The Trilean enum value to evaluate.
Returns: Trilean.True if value is Uncertain, Trilean.False otherwise.
method UNANIMOUS(self, comparator)
Evaluates the unanimity between two trilean integer values.
Namespace types: series int, simple int, input int, const int
Parameters:
self (int) : The first integer value.
comparator (int) : The second integer value.
Returns: Integer value of self if both values are equal, 0 (Uncertain) otherwise.
method UNANIMOUS(self, comparator)
Evaluates the unanimity between two Trilean enum values.
Namespace types: series Trilean
Parameters:
self (series Trilean) : The first Trilean enum value.
comparator (series Trilean) : The second Trilean enum value.
Returns: Value of self if both values are equal, Trilean.Uncertain otherwise.
method UNANIMOUS(self)
Evaluates the unanimity among an array of trilean integer values.
Namespace types: array
Parameters:
self (array) : The array of integer values.
Returns: First value if all values are identical, 0 (Uncertain) otherwise.
method UNANIMOUS(self)
Evaluates the unanimity among an array of Trilean enum values.
Namespace types: array
Parameters:
self (array) : The array of Trilean enum values.
Returns: First value if all values are identical, Trilean.Uncertain otherwise.
Fuzzy SMA Trend Analyzer (experimental)[FibonacciFlux]Fuzzy SMA Trend Analyzer (Normalized): Advanced Market Trend Detection Using Fuzzy Logic Theory
Elevate your technical analysis with institutional-grade fuzzy logic implementation
Research Genesis & Conceptual Framework
This indicator represents the culmination of extensive research into applying fuzzy logic theory to financial markets. While traditional technical indicators often produce binary outcomes, market conditions exist on a continuous spectrum. The Fuzzy SMA Trend Analyzer addresses this limitation by implementing a sophisticated fuzzy logic system that captures the nuanced, multi-dimensional nature of market trends.
Core Fuzzy Logic Principles
At the heart of this indicator lies fuzzy logic theory - a mathematical framework designed to handle imprecision and uncertainty:
// Improved fuzzy_triangle function with guard clauses for NA and invalid parameters.
fuzzy_triangle(val, left, center, right) =>
if na(val) or na(left) or na(center) or na(right) or left > center or center > right // Guard checks
0.0
else if left == center and center == right // Crisp set (single point)
val == center ? 1.0 : 0.0
else if left == center // Left-shoulder shape (ramp down from 1 at center to 0 at right)
val >= right ? 0.0 : val <= center ? 1.0 : (right - val) / (right - center)
else if center == right // Right-shoulder shape (ramp up from 0 at left to 1 at center)
val <= left ? 0.0 : val >= center ? 1.0 : (val - left) / (center - left)
else // Standard triangle
math.max(0.0, math.min((val - left) / (center - left), (right - val) / (right - center)))
This implementation of triangular membership functions enables the indicator to transform crisp numerical values into degrees of membership in linguistic variables like "Large Positive" or "Small Negative," creating a more nuanced representation of market conditions.
Dynamic Percentile Normalization
A critical innovation in this indicator is the implementation of percentile-based normalization for SMA deviation:
// ----- Deviation Scale Estimation using Percentile -----
// Calculate the percentile rank of the *absolute* deviation over the lookback period.
// This gives an estimate of the 'typical maximum' deviation magnitude recently.
diff_abs_percentile = ta.percentile_linear_interpolation(math.abs(raw_diff), normLookback, percRank) + 1e-10
// ----- Normalize the Raw Deviation -----
// Divide the raw deviation by the estimated 'typical max' magnitude.
normalized_diff = raw_diff / diff_abs_percentile
// ----- Clamp the Normalized Deviation -----
normalized_diff_clamped = math.max(-3.0, math.min(3.0, normalized_diff))
This percentile normalization approach creates a self-adapting system that automatically calibrates to different assets and market regimes. Rather than using fixed thresholds, the indicator dynamically adjusts based on recent volatility patterns, significantly enhancing signal quality across diverse market environments.
Multi-Factor Fuzzy Rule System
The indicator implements a comprehensive fuzzy rule system that evaluates multiple technical factors:
SMA Deviation (Normalized): Measures price displacement from the Simple Moving Average
Rate of Change (ROC): Captures price momentum over a specified period
Relative Strength Index (RSI): Assesses overbought/oversold conditions
These factors are processed through a sophisticated fuzzy inference system with linguistic variables:
// ----- 3.1 Fuzzy Sets for Normalized Deviation -----
diffN_LP := fuzzy_triangle(normalized_diff_clamped, 0.7, 1.5, 3.0) // Large Positive (around/above percentile)
diffN_SP := fuzzy_triangle(normalized_diff_clamped, 0.1, 0.5, 0.9) // Small Positive
diffN_NZ := fuzzy_triangle(normalized_diff_clamped, -0.2, 0.0, 0.2) // Near Zero
diffN_SN := fuzzy_triangle(normalized_diff_clamped, -0.9, -0.5, -0.1) // Small Negative
diffN_LN := fuzzy_triangle(normalized_diff_clamped, -3.0, -1.5, -0.7) // Large Negative (around/below percentile)
// ----- 3.2 Fuzzy Sets for ROC -----
roc_HN := fuzzy_triangle(roc_val, -8.0, -5.0, -2.0)
roc_WN := fuzzy_triangle(roc_val, -3.0, -1.0, -0.1)
roc_NZ := fuzzy_triangle(roc_val, -0.3, 0.0, 0.3)
roc_WP := fuzzy_triangle(roc_val, 0.1, 1.0, 3.0)
roc_HP := fuzzy_triangle(roc_val, 2.0, 5.0, 8.0)
// ----- 3.3 Fuzzy Sets for RSI -----
rsi_L := fuzzy_triangle(rsi_val, 0.0, 25.0, 40.0)
rsi_M := fuzzy_triangle(rsi_val, 35.0, 50.0, 65.0)
rsi_H := fuzzy_triangle(rsi_val, 60.0, 75.0, 100.0)
Advanced Fuzzy Inference Rules
The indicator employs a comprehensive set of fuzzy rules that encode expert knowledge about market behavior:
// --- Fuzzy Rules using Normalized Deviation (diffN_*) ---
cond1 = math.min(diffN_LP, roc_HP, math.max(rsi_M, rsi_H)) // Strong Bullish: Large pos dev, strong pos roc, rsi ok
strength_SB := math.max(strength_SB, cond1)
cond2 = math.min(diffN_SP, roc_WP, rsi_M) // Weak Bullish: Small pos dev, weak pos roc, rsi mid
strength_WB := math.max(strength_WB, cond2)
cond3 = math.min(diffN_SP, roc_NZ, rsi_H) // Weakening Bullish: Small pos dev, flat roc, rsi high
strength_N := math.max(strength_N, cond3 * 0.6) // More neutral
strength_WB := math.max(strength_WB, cond3 * 0.2) // Less weak bullish
This rule system evaluates multiple conditions simultaneously, weighting them by their degree of membership to produce a comprehensive trend assessment. The rules are designed to identify various market conditions including strong trends, weakening trends, potential reversals, and neutral consolidations.
Defuzzification Process
The final step transforms the fuzzy result back into a crisp numerical value representing the overall trend strength:
// --- Step 6: Defuzzification ---
denominator = strength_SB + strength_WB + strength_N + strength_WBe + strength_SBe
if denominator > 1e-10 // Use small epsilon instead of != 0.0 for float comparison
fuzzyTrendScore := (strength_SB * STRONG_BULL +
strength_WB * WEAK_BULL +
strength_N * NEUTRAL +
strength_WBe * WEAK_BEAR +
strength_SBe * STRONG_BEAR) / denominator
The resulting FuzzyTrendScore ranges from -1 (strong bearish) to +1 (strong bullish), providing a smooth, continuous evaluation of market conditions that avoids the abrupt signal changes common in traditional indicators.
Advanced Visualization with Rainbow Gradient
The indicator incorporates sophisticated visualization using a rainbow gradient coloring system:
// Normalize score to for gradient function
normalizedScore = na(fuzzyTrendScore) ? 0.5 : math.max(0.0, math.min(1.0, (fuzzyTrendScore + 1) / 2))
// Get the color based on gradient setting and normalized score
final_color = get_gradient(normalizedScore, gradient_type)
This color-coding system provides intuitive visual feedback, with color intensity reflecting trend strength and direction. The gradient can be customized between Red-to-Green or Red-to-Blue configurations based on user preference.
Practical Applications
The Fuzzy SMA Trend Analyzer excels in several key applications:
Trend Identification: Precisely identifies market trend direction and strength with nuanced gradation
Market Regime Detection: Distinguishes between trending markets and consolidation phases
Divergence Analysis: Highlights potential reversals when price action and fuzzy trend score diverge
Filter for Trading Systems: Provides high-quality trend filtering for other trading strategies
Risk Management: Offers early warning of potential trend weakening or reversal
Parameter Customization
The indicator offers extensive customization options:
SMA Length: Adjusts the baseline moving average period
ROC Length: Controls momentum sensitivity
RSI Length: Configures overbought/oversold sensitivity
Normalization Lookback: Determines the adaptive calculation window for percentile normalization
Percentile Rank: Sets the statistical threshold for deviation normalization
Gradient Type: Selects the preferred color scheme for visualization
These parameters enable fine-tuning to specific market conditions, trading styles, and timeframes.
Acknowledgments
The rainbow gradient visualization component draws inspiration from LuxAlgo's "Rainbow Adaptive RSI" (used under CC BY-NC-SA 4.0 license). This implementation of fuzzy logic in technical analysis builds upon Fermi estimation principles to overcome the inherent limitations of crisp binary indicators.
This indicator is shared under Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license.
Remember that past performance does not guarantee future results. Always conduct thorough testing before implementing any technical indicator in live trading.
Neural Pulse System [Alpha Extract]Neural Pulse System (NPS)
The Neural Pulse System (NPS) is a custom technical indicator that analyzes price action through a probabilistic lens, offering a dynamic view of bullish and bearish tendencies.
Unlike traditional binary classification models, NPS employs Ordinary Least Squares (OLS) regression with dynamically computed coefficients to produce a smooth probability output ranging from -1 to 1.
Paired with ATR-based bands, this indicator provides an intuitive and volatility-aware approach to trend analysis.
🔶 CALCULATION
The Neural Pulse System utilizes OLS regression to compute probabilities of bullish or bearish price action while incorporating ATR-based bands for volatility context:
Dynamic Coefficients: Coefficients are recalculated in real-time and scaled up to ensure the regression adapts to evolving market conditions.
Ordinary Least Squares (OLS): Uses OLS regression instead of gradient descent for more precise and efficient coefficient estimation.
ATR Bands: Smoothed Average True Range (ATR) bands serve as dynamic boundaries, framing the regression within market volatility.
Probability Output: Instead of a binary result, the output is a continuous probability curve (-1 to 1), helping traders gauge the strength of bullish or bearish momentum.
Formula:
OLS Regression = Line of best fit minimizing squared errors
Probability Signal = Transformed regression output scaled to -1 (bearish) to 1 (bullish)
ATR Bands = Smoothed Average True Range (ATR) to frame price movements within market volatility
🔶 DETAILS
📊 Visual Features:
Probability Curve: Smooth probability signal ranging from -1 (bearish) to 1 (bullish)
ATR Bands: Price action is constrained within volatility bands, preventing extreme deviations
Color-Coded Signals:
Blue to Green: Increasing probability of bullish momentum
Orange to Red: Increasing probability of bearish momentum
Interpretation:
Bullish Bias: Probability output consistently above 0 suggests a bullish trend.
Bearish Bias: Probability output consistently below 0 indicates bearish pressure.
Reversals: Extreme values near -1 or 1, followed by a move toward 0, may signal potential trend reversals.
🔶 EXAMPLES
📌 Trend Identification: Use the probability output to gauge trend direction.
📌Example: On a 1-hour chart, NPS moves from -0.5 to 0.8 as price breaks resistance, signaling a bullish trend.
Reversal Signals: Watch for probability extremes near -1 or 1 followed by a reversal toward 0.
Example: NPS hits 0.9, price touches the upper ATR band, then both retreat—indicating a potential pullback.
📌 Example snapshots:
Volatility Context: ATR bands help assess whether price action aligns with typical market conditions.
Example: During low volatility, the probability signal hovers near 0, and ATR bands tighten, suggesting a potential breakout.
🔶 SETTINGS
Customization Options:
ATR Period – Defines lookback length for ATR calculation (shorter = more responsive, longer = smoother).
ATR Multiplier – Adjusts band width for better volatility capture.
Regression Length – Controls how many bars feed into the coefficient calculation (longer = smoother, shorter = more reactive).
Scaling Factor – Adjusts the strength of regression coefficients.
Output Smoothing – Option to apply a moving average for a cleaner probability curve
MTF Signal XpertMTF Signal Xpert – Detailed Description
Overview:
MTF Signal Xpert is a proprietary, open‑source trading signal indicator that fuses multiple technical analysis methods into one cohesive strategy. Developed after rigorous backtesting and extensive research, this advanced tool is designed to deliver clear BUY and SELL signals by analyzing trend, momentum, and volatility across various timeframes. Its integrated approach not only enhances signal reliability but also incorporates dynamic risk management, helping traders protect their capital while navigating complex market conditions.
Detailed Explanation of How It Works:
Trend Detection via Moving Averages
Dual Moving Averages:
MTF Signal Xpert computes two moving averages—a fast MA and a slow MA—with the flexibility to choose from Simple (SMA), Exponential (EMA), or Hull (HMA) methods. This dual-MA system helps identify the prevailing market trend by contrasting short-term momentum with longer-term trends.
Crossover Logic:
A BUY signal is initiated when the fast MA crosses above the slow MA, coupled with the condition that the current price is above the lower Bollinger Band. This suggests that the market may be emerging from a lower price region. Conversely, a SELL signal is generated when the fast MA crosses below the slow MA and the price is below the upper Bollinger Band, indicating potential bearish pressure.
Recent Crossover Confirmation:
To ensure that signals reflect current market dynamics, the script tracks the number of bars since the moving average crossover event. Only crossovers that occur within a user-defined “candle confirmation” period are considered, which helps filter out outdated signals and improves overall signal accuracy.
Volatility and Price Extremes with Bollinger Bands
Calculation of Bands:
Bollinger Bands are calculated using a 20‑period simple moving average as the central basis, with the upper and lower bands derived from a standard deviation multiplier. This creates dynamic boundaries that adjust according to recent market volatility.
Signal Reinforcement:
For BUY signals, the condition that the price is above the lower Bollinger Band suggests an undervalued market condition, while for SELL signals, the price falling below the upper Bollinger Band reinforces the bearish bias. This volatility context adds depth to the moving average crossover signals.
Momentum Confirmation Using Multiple Oscillators
RSI (Relative Strength Index):
The RSI is computed over 14 periods to determine if the market is in an overbought or oversold state. Only readings within an optimal range (defined by user inputs) validate the signal, ensuring that entries are made during balanced conditions.
MACD (Moving Average Convergence Divergence):
The MACD line is compared with its signal line to assess momentum. A bullish scenario is confirmed when the MACD line is above the signal line, while a bearish scenario is indicated when it is below, thus adding another layer of confirmation.
Awesome Oscillator (AO):
The AO measures the difference between short-term and long-term simple moving averages of the median price. Positive AO values support BUY signals, while negative values back SELL signals, offering additional momentum insight.
ADX (Average Directional Index):
The ADX quantifies trend strength. MTF Signal Xpert only considers signals when the ADX value exceeds a specified threshold, ensuring that trades are taken in strongly trending markets.
Optional Stochastic Oscillator:
An optional stochastic oscillator filter can be enabled to further refine signals. It checks for overbought conditions (supporting SELL signals) or oversold conditions (supporting BUY signals), thus reducing ambiguity.
Multi-Timeframe Verification
Higher Timeframe Filter:
To align short-term signals with broader market trends, the script calculates an EMA on a higher timeframe as specified by the user. This multi-timeframe approach helps ensure that signals on the primary chart are consistent with the overall trend, thereby reducing false signals.
Dynamic Risk Management with ATR
ATR-Based Calculations:
The Average True Range (ATR) is used to measure current market volatility. This value is multiplied by a user-defined factor to dynamically determine stop loss (SL) and take profit (TP) levels, adapting to changing market conditions.
Visual SL/TP Markers:
The calculated SL and TP levels are plotted on the chart as distinct colored dots, enabling traders to quickly identify recommended exit points.
Optional Trailing Stop:
An optional trailing stop feature is available, which adjusts the stop loss as the trade moves favorably, helping to lock in profits while protecting against sudden reversals.
Risk/Reward Ratio Calculation:
MTF Signal Xpert computes a risk/reward ratio based on the dynamic SL and TP levels. This quantitative measure allows traders to assess whether the potential reward justifies the risk associated with a trade.
Condition Weighting and Signal Scoring
Binary Condition Checks:
Each technical condition—ranging from moving average crossovers, Bollinger Band positioning, and RSI range to MACD, AO, ADX, and volume filters—is assigned a binary score (1 if met, 0 if not).
Cumulative Scoring:
These individual scores are summed to generate cumulative bullish and bearish scores, quantifying the overall strength of the signal and providing traders with an objective measure of its viability.
Detailed Signal Explanation:
A comprehensive explanation string is generated, outlining which conditions contributed to the current BUY or SELL signal. This explanation is displayed on an on‑chart dashboard, offering transparency and clarity into the signal generation process.
On-Chart Visualizations and Debug Information
Chart Elements:
The indicator plots all key components—moving averages, Bollinger Bands, SL and TP markers—directly on the chart, providing a clear visual framework for understanding market conditions.
Combined Dashboard:
A dedicated dashboard displays key metrics such as RSI, ADX, and the bullish/bearish scores, alongside a detailed explanation of the current signal. This consolidated view allows traders to quickly grasp the underlying logic.
Debug Table (Optional):
For advanced users, an optional debug table is available. This table breaks down each individual condition, indicating which criteria were met or not met, thus aiding in further analysis and strategy refinement.
Mashup Justification and Originality
MTF Signal Xpert is more than just an aggregation of existing indicators—it is an original synthesis designed to address real-world trading complexities. Here’s how its components work together:
Integrated Trend, Volatility, and Momentum Analysis:
By combining moving averages, Bollinger Bands, and multiple oscillators (RSI, MACD, AO, ADX, and an optional stochastic), the indicator captures diverse market dynamics. Each component reinforces the others, reducing noise and filtering out false signals.
Multi-Timeframe Analysis:
The inclusion of a higher timeframe filter aligns short-term signals with longer-term trends, enhancing overall reliability and reducing the potential for contradictory signals.
Adaptive Risk Management:
Dynamic stop loss and take profit levels, determined using ATR, ensure that the risk management strategy adapts to current market conditions. The optional trailing stop further refines this approach, protecting profits as the market evolves.
Quantitative Signal Scoring:
The condition weighting system provides an objective measure of signal strength, giving traders clear insight into how each technical component contributes to the final decision.
How to Use MTF Signal Xpert:
Input Customization:
Adjust the moving average type and period settings, ATR multipliers, and oscillator thresholds to align with your trading style and the specific market conditions.
Enable or disable the optional stochastic oscillator and trailing stop based on your preference.
Interpreting the Signals:
When a BUY or SELL signal appears, refer to the on‑chart dashboard, which displays key metrics (e.g., RSI, ADX, bullish/bearish scores) along with a detailed breakdown of the conditions that triggered the signal.
Review the SL and TP markers on the chart to understand the associated risk/reward setup.
Risk Management:
Use the dynamically calculated stop loss and take profit levels as guidelines for setting your exit points.
Evaluate the provided risk/reward ratio to ensure that the potential reward justifies the risk before entering a trade.
Debugging and Verification:
Advanced users can enable the debug table to see a condition-by-condition breakdown of the signal generation process, helping refine the strategy and deepen understanding of market dynamics.
Disclaimer:
MTF Signal Xpert is intended for educational and analytical purposes only. Although it is based on robust technical analysis methods and has undergone extensive backtesting, past performance is not indicative of future results. Traders should employ proper risk management and adjust the settings to suit their financial circumstances and risk tolerance.
MTF Signal Xpert represents a comprehensive, original approach to trading signal generation. By blending trend detection, volatility assessment, momentum analysis, multi-timeframe alignment, and adaptive risk management into one integrated system, it provides traders with actionable signals and the transparency needed to understand the logic behind them.
Risk Matrix [QuantraSystems]Risk Matrix
The Risk Matrix is a sophisticated tool that aggregates a variety of fundamental inputs, primarily external (non-crypto) market data is used to assess investor risk appetite. By combining external macroeconomic factors and proxies for liquidity data with specific signals from the cryptomarket - the Risk Matrix provides a holistic view of market risk conditions. These insights are designed to help traders and investors make informed decisions on when to adopt a risk-on or risk-off approach.
Core Concept
The Risk Matrix functions as a dynamic risk assessment tool that integrates both fundamental and technical market indicators to generate an aggregated Z-score. This score helps traders to identify where the market is in a risk-off or risk-on state, The system provides both binary risk signals and a more nuanced “risk seasonality” mode for deeper analysis.
Key Features
Global Liquidity Aggregate - The Liquidity score is a custom measure of global liquidity, built by combining a variety of traditional financial metrics. These include data from central bank balance sheets, reverse repo operations and credit availability. This data is sourced from organizations such as the U.S. Federal Reserve, the European Central Bank, and the People’s Bank of China. The purpose of this aggregate is to gauge how much liquidity is available in the global financial system - which often correlates with risk sentiment. Rising liquidity tends to boost risk-on appetite, while liquidity contractions signal increased caution (risk-off) in the markets. The data sources used in this global liquidity aggregate include:
- U.S. Commercial Bank Credit data
- Federal Reserve balance sheet and reverse repo operations
- Liquidity from major central banks including the Fed, Bank of Japan, ECB, and PBoC
- Asset performance from major global financial indices such as the S&P 500, TLT, DXY (U.S. Dollar Index), MOVE (bond market volatility), and commodities like gold and oil.
Other key Z-scores (measured individually) - The Risk Matrix also incorporates other major Z-scores that represent different facets of the financial markets:
- Collateral Risk - A measure of US bond volatility, where higher values indicate higher interest rate risk - leading to potential market instability and cautious market behaviors.
- Stablecoin Dominance - The dominance of stablecoins in the crypto markets - which can signal risk aversion the total capital allocated to stables increases relative to other cryptocurrencies.
- US Currency Strength - The U.S. Dollar Index Z-score reflects currency market strength, with higher values typically indicating risk aversion as investors sell more volatile assets and flock to the dollar.
- Trans-pacific Monetary Bias - Signals capital flow and monetary trends that link between the East and West, heavily influencing global risk sentiment.
- Total - A measure of the total cryptocurrency market cap, signaling broader risk sentiment with the crypto market.
Neural Network Synthesis - The NNSYNTH component adds a machine learning inspired layer to the Risk Matrix. This custom indicator synthesizes inputs from various technical indicators (such as RSI, MACD, Bollinger Bands, and others) to generate a composite signal that reflects the health of the cryptomarket. While highly complex in its design, the NNSYNTH ultimately helps detect market shifts early by synthesizing multiple signals into one cohesive output. This score is particularly useful for gauging momentum and identifying potential turning points in market trends. Because the NNSYNTH is a closed source indicator, and it is included here, the Risk Matrix by extension is a closed source indicator.
How it Works
Z-score Aggregation - The Risk Matrix computes a final risk score by aggregating several Z-scores from different asset classes and data sources, all of which contribute proportionally to the overall market risk assessment. Each input is equally weighted - normalization allows for direct comparisons across global liquidity trends, currency fluctuations, bond market volatility and crypto market conditions. Furthermore, this system employs multi-calibration aggregation - where each individual matrix is itself an aggregate of multiple Z-scores derived from various timeframes. This ensures that each matrix captures a distinct average across different time horizons before being combined into the overall Risk Matrix. This layered, multi timeframe approach enhances the precision and robustness of the final Z-score.
Risk-On / Risk-Off Mode - The system’s binary mode provides a clear Risk On and Off signal. This nature of this signal is determined by the behavior of the Z-score relative to the midline, or Standard Deviation Bands, depending on specific conditions:
Risk-On is signaled when the aggregated final Z-score crosses above 0. However, in extreme oversold conditions, Risk-On can trigger early if the upper standard deviation band falls below the zero line. In such cases, the Risk-On signal is triggered when the z-score crosses the upper standard deviation band - without waiting to cross the midline.
Risk-Off is signaled when the final Z-score moves below 0. Similarly, Risk-Off can also be triggered early if the lower standard deviation band rises above the midline. In this instance, Risk-Off is triggered when the Z-score crosses below the lower band.
Risk Seasonality Mode - This mode offers a more gradual transition between risk states, measuring the change in the Z-score to visualize the shifts in risk appetite over time. It's useful for traders seeking to understand broader market cycles and risk phases. The seasonality view breaks down the market into the following phases:
Risk-On - High risk appetite where risk/cyclical markets are generally bullish.
Weakening - Markets showing signs of cooling off, here the higher beta assets tend to sell off first.
Risk-Off - Investors pull back, and bearish sentiment prevails.
Recovery - Signs of bottoming out, potential for market re-entry.
Component Matrices - Each individual Z-score is visualized as part of the component matrices - scaled to a 3 Sigma range. These component matrices allow traders to view how each data source is contributing to the overall risk assessment in real time - offering transparency and granularity.
Visuals and UI
Main Risk Matrix - The aggregated Z-Score is displayed saliently in the main risk matrix. Traders and investors can quickly see what season the Risk Matrix is signaling and adjust their strategies accordingly.
Overview Table - A detailed overview table shows the current confirmed Z-scores for each component, along with values from 2, and 3 bars back. This helps traders spot trends and the rate of change (RoC) between signals, offering additional insights for shorter-term risk management.
Customizability - Users can customize the visual elements of the matrix, including color palettes, table sizes, and positions. This allows for optimal integration into any trader’s existing workspace.
Usage Summary
The Risk Matrix is an incredibly versatile tool. It is especially valuable as a means of achieving a cross-market view of risk, incorporating both crypto-specific and macroeconomic factors. Some key use cases include:
Adjusting Capital Allocation Based on Risk Seasons - Traders can use the Risk Matrix to adjust their capital allocation dynamically. During Risk-On periods, they might increase exposure to long positions, capitalizing on stronger market conditions. Conversely, during Risk-Off periods, traders could reduce or hedge long positions and potentially scale up short positions or move into safer assets.
Complementing Other Trading Systems - The Risk Matrix can work alongside other technical systems to provide context to market moves. For instance, a trend-following strategy might suggest an entry, but the Risk Matrix could be used to verify whether the broader market conditions support this trade. If the Matrix is in a Risk-Off period, a trader might opt for more conservative trade sizes or avoid the trade entirely.
This flexibility allows traders to adjust their strategies and portfolio risk dynamically, enhancing decision making based on broader market conditions - as indicated by external macroeconomic factors, liquidity, and risk sentiment.
Important Note
The Risk Matrix always uses the most up-to-date data available, ensuring analysis reflects the latest market conditions and macroeconomic inputs. In rare cases, governments or financial institutions revise past data - and the Risk Matrix will adjust accordingly. This behavior can only be seen in the Liquidity Matrix. and can affect the final score. While this is uncommon, it highlights the benefit of using a system that adapts in real-time, incorporating the most accurate and current information to enhance decision making processes.
[GYTS-CE] Signal Provider | WaveTrend 4D with GDMWaveTrend 4D with Gradient Divergence Measure (Community Edition)
🌸 " 📡 Signal Provider" in GoemonYae Trading System (GYTS) 🌸
WaveTrend 4D (WT4D) is an extension of the incredible WaveTrend 3D (2022, Justin Dehorty) . This oscillator elevates the classic WaveTrend by integrating advanced mathematical models for a multi-dimensional view of market momentum, capturing subtle shifts and trends that traditional indicators might miss. Each oscillator layer uses a combination of normalised derivatives, hyperbolic tangent transformations, and dual-pole filtering (John Ehlers' SuperSmoother), providing normalised and smooth signals with minimised lag.
The name "WaveTrend 4D" is derived from the usage of 4 dimensions, representing different frequencies or timeframes. Next to the "fast", "normal" and "slow" frequency, the fourth frequency is called "lethargic" (very slow). This gives the opportunity utilise more dimensions without having abundant signals, since we quantify and filter the quality of signals.
WT4D strives to help discriminating high-quality signals from the indicator by introducing the Gradient Divergence Measure (GDM) and Quantile Median Crosses (QMC). For simplicity, speed and focus, this particular indicator includes only the GDM part. Check the other 🤲Community Edition of this indicator that focuses on the QMC. For GDM, see below for more information.
🌸 --- GRADIENT DIVERGENCE MEASURE (GDM) --- 🌸
💮 Introduction
--
The GDM dynamically calculates a composite measure based on multiple factors. Unlike traditional binary divergence indicators, GDM employs a continuous value system to capture the nuanced dynamics of market behaviour. This methodology allows traders and analysts to assess the potency of divergence signals with greater precision, facilitating more informed decision-making processes.
💮 Methodology
--
The GDM is calculated using a composite formula that integrates various market dynamics. At its core, it consists of six components listed below, each weighted to optimize the indicator's responsiveness to market conditions:
The magnitude of relative change between waves -- A larger difference between the waves, i.e. lower high or higher low could signify a stronger divergence.
The absolute value of the latest wave -- The strength of the latest wave provides insight into the extremity of the market conditions.
Slope of the divergence -- The slope between the two points of divergence essentially measures the rate of change in the frequency\'s value over time. It captures both the direction and the steepness of the indicator’s move between two waves.
The magnitude of relative change of the price -- A divergence means that the oscillator shows an opposite pattern than price action. Thus, if the price makes a significantly higher high or lower low, but the indicator does not, this discrepancy can be used to measure the divergence strength. This components measures the price's extrema during the crosses of the indicator's waves.
Higher timeframe's frequency trend -- Similarly, instead of looking at the price directly, this component measures the more general trend of the price by using the higher timeframe frequency (i.e. the slow frequency when looking at divergences of the normal frequency).
Time duration -- Lastly, the time duration between the two points of a divergence can also be an important factor. A divergence that spans over a longer period might indicate a more significant market sentiment shift.
💮 Tuning the GDM
--
The 6 components discussed above are not independent, e.g. the slope is actually the result of the magnitude between waves, the absolute value and time duration. However, the default GDM is carefully tuned to include all these features without being too sensitive to outliers.
This makes this indicator very user-friendly. The only core parameter is the the "sensitivity". This controls the extent of normalisation between signals, and essentially affects how often strong GDMs appear. At the conservative end (higher sensitivity), the strong GDMs are less frequent but are relatively significant, while with a lower sensitivity the strong GDMs appear more frequent.
💮 GDM on the Oscillator
--
The GDMs are represented by triangles and their value represents the strength. A value close to `1` signifies a strong bearish divergence and thus a possible reversal of continuation of a downtrend. Similarly, a value close to `-1` signifies a strong bullish divergence.
Note that there are two colour sets which can be enabled and disabled. One uses crosses between the fast and normal frequencies (with the slow frequency acting as the price trend with which there should be an opposite interaction -- hence a "divergence"). Similarly, crosses between the normal and slow frequencies (with the lethargic (the most slow) frequency acting as the price trend) are used to find divergences on a higher timeframe.
Another handy feature is a threshold to more strikingly visualise "strong" GDMs.
🌸 --- GOEMONYAE TRADING SYSTEM --- 🌸
As previously mentioned, this indicator is a 📡 Signal Provider, part of the suite of the GoemonYae Trading System (🤲 Community Edition). The greatest value comes from connecting multiple 📡 Signal Providers to the 🧬 Flux Composer to find confluence between signals. Contrary to most other indicators that connect with each other, the signals that are passed are not just binary signals ("buy" or "sell") but pass the actual GDM and QMC values. This gives the opportunity in the 🧬 Flux Composer to more accurately use multiple signals with different strengths to finally give an overall signal. On its turn, the Flux Composer can be connected to the GYTS "🎼 Order Orchestrator" for backtesting and trade automation.
[GYTS-Pro] Signal Provider | WaveTrend 4D with GDM + QMCWaveTrend 4D with GDM + QMC (Professional Edition)
🌸 " 📡 Signal Provider" in GoemonYae Trading System (GYTS) 🌸
WaveTrend 4D (WT4D) is an extension of the incredible WaveTrend 3D (2022, Justin Dehorty) . This oscillator elevates the classic WaveTrend by integrating advanced mathematical models for a multi-dimensional view of market momentum, capturing subtle shifts and trends that traditional indicators might miss. Each oscillator layer uses a combination of normalised derivatives, hyperbolic tangent transformations, and dual-pole filtering (John Ehlers' SuperSmoother), providing a normalised and smooth signals.
WT4D strives to help discriminating high-quality signals from the indicator by introducing the Gradient Divergence Measure (GDM) and Quantile Median Crosses (QMC) -- see below for more information.
WaveTrend 4D is a "📡 Signal Provider" in the 🌸 GoemonYae Trading System (GYTS) 🌸. Multiple 📡 Signal Providers connect to a GYTS "🧬 Flux Composer" to find confluence. On its turn, the Flux Composer can be connected to the GYTS "🎼 Order Orchestrator" for backtesting and trade automation. However, WaveTrend 4D is a wonderful indicator on its own as well.
🌸 --- MAIN FEATURES --- 🌸
- The focus is on two type of signals: divergences between the overall trend and the waves (GDM) and the weakening of strong trends (QMC)
- The name "WaveTrend 4D" is derived from the usage of 4 dimensions, representing different frequencies or timeframes. This gives the opportunity to use 2 sets of 3 frequencies to find divergences. Next to the "fast", "normal" and "slow" frequency, the fourth frequency is called "lethargic" (very slow).
- High probability trading involves diligently determining the significance of signals. For this purpose, a novel "Gradient Divergence Measure" (GDM) is developed to signify the strength of divergence signals and are drawn as triangles next to the divergence circles.
- Another and powerful approach is to use the frequencies' crossing of the median (zero) line. We seek to only signal reversals after a significant trend, and call this the "Quantile Median Crosses" (QMC).
More information the GDM and QMC and details of all features are described below.
🌸 --- GRADIENT DIVERGENCE MEASURE (GDM) --- 🌸
💮 Introduction
--
The GDM dynamically calculates a composite measure based on multiple factors. Unlike traditional binary divergence indicators, GDM employs a continuous value system to capture the nuanced dynamics of market behaviour. This methodology allows traders and analysts to assess the potency of divergence signals with greater precision, facilitating more informed decision-making processes.
💮 Methodology
--
The GDM is calculated using a composite formula that integrates various market dynamics. At its core, it consists of six components listed below, each weighted to optimize the indicator's responsiveness to market conditions:
The magnitude of relative change between waves -- A larger difference between the waves, i.e. lower high or higher low could signify a stronger divergence.
The absolute value of the latest wave -- The strength of the latest wave provides insight into the extremity of the market conditions.
Slope of the divergence -- The slope between the two points of divergence essentially measures the rate of change in the frequency\'s value over time. It captures both the direction and the steepness of the indicator’s move between two waves.
The magnitude of relative change of the price -- A divergence means that the oscillator shows an opposite pattern than price action. Thus, if the price makes a significantly higher high or lower low, but the indicator does not, this discrepancy can be used to measure the divergence strength. This components measures the price's extrema during the crosses of the indicator's waves.
Higher timeframe's frequency trend -- Similarly, instead of looking at the price directly, this component measures the more general trend of the price by using the higher timeframe frequency (i.e. the slow frequency when looking at divergences of the normal frequency).
Time duration -- Lastly, the time duration between the two points of a divergence can also be a factor. A divergence that spans over a longer period might indicate a more significant market sentiment shift.
Note that these 6 components are not independent, e.g. the slope is actually the result of the magnitude between waves, the absolute value and time duration. However, the default GDM is carefully tuned to include all these features without being too sensitive to outliers.
💮 Tuning the GDM
--
At the same time, different people have different ideas of what factors are important to denote a "strong" divergence. For this reason, in the 🧰 Professional Edition of this indicator, as opposed to the 🤲 Community Edition, the user can select between different "GDM profiles" that resemble a certain approach:
Upon initiating the GDM indicator, users are prompted to select one of six distinct profiles. Each profile adjusts the indicator’s parameters to optimize performance under different market scenarios:
balanced : Offers a general approach, with a balanced assessment of market conditions without specific focus on any one aspect.
regular divergence : Emphasises price action, ideal for identifying classical divergence patterns where price and momentum diverge.
wavetrend focus : Minimises the influence of price action, concentrating on the WaveTrend oscillator’s behaviour for trend analysis.
short-term waves : Prioritises the slope of the waves, targeting traders interested in short-term market movements and potential inflection points.
long-term waves : Extends the analysis period, focusing on longer-term market trends and wave duration for strategic positioning.
overbought/oversold : Highlights extreme conditions in market valuation, useful for identifying potential reversal points from overbought or oversold levels.
The 🎩 Ultimate Edition takes it a step further and gives full freedom to dial in weights for each of the 6 components. The GDM formula is set up in such way to accommodate ease of use and react logically to these parameters. Having said that, the default GDM calculation should be more than sufficient for most cases.
Another way of tuning the GDM is to dial in the "sensitivity". This controls the extent of normalisation between signals, and essentially affects how often strong GDMs appear. At the conservative end (higher sensitivity), the strong GDMs are less frequent but are relatively significant, while with a lower sensitivity the strong GDMs appear more frequent.
💮 GDM on the Oscillator
--
Coming back to the indicator, the GDMs are represented by triangles and their value represents the strength. A value close to `1` signifies a strong bearish divergence and thus a possible reversal of continuation of a downtrend. Similarly, a value close to `-1` signifies a strong bullish divergence.
Note that there are two colour sets which can be enabled and disabled. One uses crosses between the fast and normal frequencies (with the slow frequency acting as the price trend with which there should be an opposite interaction -- "divergence"). Similarly, crosses between the normal and slow frequencies (with the lethargic (the most slow) frequency acting as the price trend) are used to find divergences on a higher timeframe.
🌸 --- QUANTILE MEDIAN CROSSES (QMC) --- 🌸
💮 Introduction
--
A different and powerful approach is to use the frequencies' crossing of the median (zero) line. This would signify a continuation of the reversal. However, also here, not all of those crossings would be trades with a high probability of success. For this reason, we seek to only consider reversals after the most strong trends start to show weakness. We call these reversals the "Quantile Median Crosses" (QMC), derived from the methodology.
💮 Methodology
--
To find this "most strong trends", we calculate the integral ("the area") of a frequency between all historical median crosses, and take an upper quantile of those integrals. This means that when the series is crossing the median in often (consolidation), the ares between those crosses would be small. But if there was a strong momentum, and the series would separate itself significantly from the median and would do so for a long time, its area would be large.
So after considering all the past integrals, we take the upper quantile of those (i.e. sort all integral and for example take the top 5%) and if the latest trend's integral was in this upper quantile, it is considered "significant". Hence, the name "quantile" in the name "Quantile Median Cross"
💮 Tuning the QMC
--
The QMC is easily tuned by its "sensitivity". This basically represents a set of quantile bounds for the normal, slow and lethargic series. We have set these 3 parameters for each sensitivity profile after careful testing. The 🎩 Ultimate Edition gives full control for each quantile bound.
💮 QMC on the Oscillator
--
The QMC is shown as a label "🔴" above the median or with "🟢" below the median. In the 🎩 Ultimate Edition, the user instead sees the exact quantile and the number of samples. The normal frequency has a "bronze" colour, the slow frequency "silver" and the lethargic is "gold". In addition to the labels, there are also diamond shapes in the same colour drawn on the median in the oscillator. This represents the previous median crossing, and helps the user to see between which two points the integral is calculated.
🌸 --- DETAILED FEATURES --- 🌸
As discussed, at its core, the main signals are the Gradient Divergence Signals (GDM) and Quantile Median Crosses (QMC). However, there are more very powerful features that this 📡 Signal Provider can include. Below is a list of all features and we differentiate the availability of a feature per 📡 Signal Provider version by using these icons: 🤲 Community Edition; 🧰 Professional Edition; 🎩 Ultimate Edition.
Before going into the features, there are two important aspects to note: As this is a 📡 Signal Provider, it can be connected to the GYTS 🧬 Flux Composer and this is possible for each edition (i.e. the 🤲 Community Edition 📡 Signal Composer works with the 🤲 Community Edition 🧬 Flux Composer, and the same holds for the 🧰 Professional and 🎩 Ultimate Editions). Contrary to most other indicators that connect with each other, the signals that are passed are not just binary signals ("buy" or "sell") but pass the actual GDM and QMC values. This gives the opportunity in the 🧬 Flux Composer to more accurately use multiple signals with different strengths to finally give an overall signal.
The second important aspect is that for the 🤲 Community Edition, there are two versions of this 📡 Signal Provider: one that has the GDM feature and another the QMC feature. Besides that, the list below depicts a fairly complete overview of all the features across different versions:
( 🤲 🧰 🎩 ) Four Dimensions -- All four dimensions are available for each edition. The input data can also be transformed with an EMA or CoG as in the original WaveTrend 3D.
( -- 🧰 🎩 ) Both GDM and QMC -- Only the Pro and Ult versions include both the GDM and QMC in one indicator
( 🤲 🧰 🎩 ) Custom indicator name -- There's an option to give a name to the indicator which will be displayed on the chart. On its own, it might not be helpful, but in the GoemonYae Trading System (GYTS) suite, it helps to identify the different Signal Providers.
( 🤲 🧰 🎩 ) Visual improvements -- As in the original WaveTrend 3D, there are various ways the indicator can be displayed, including emphasising a certain frequency, a "mirror mode" and separating each frequency. We have expanded on some of these options. For example, the divergences, GDMs and QMCs are also displayed when the frequencies are separated, the mirror mode works with the emphasised frequency, there are more options to control the width of the emphasised frequency and each frequency can be enabled or disabled.
( 🤲 🧰 🎩 ) Support for HTF -- The indicator works on higher timeframes than the current chart and all parameters and calculations are scaled accordingly.
( __ 🧰 🎩 ) Support for other tickers -- There is also an option to select another ticker than the current chart. This especially makes sense in the 🌸 GYTS suite 🌸, where multiple Signal Providers are combined to find confluence. For example, a common approach is to use a certain ETF (or BTC in crypto) on a higher timeframe as filter to determine overall market direction.
( __ __ 🎩 ) Disable "only true divergences" -- In the Ultimate Edition, less signals can be filtered out when disabling looking at the third frequency. In general, this is not the best idea but it can be helpful when filtering signals with other means.
( __ 🧰 __ ) GDM profiles -- As mentioned, the GDM is carefully tuned and we consider it an excellent method to signify the strength of a divergence. Therefore, the standard calculation in the Community Edition is sufficient. Nevertheless, the Pro Edition has profiles (as previously described) so the user can select how (s)he feels a "strong divergence" should be.
( __ __ 🎩 ) GDM weights -- Full control over the weights of the 6 components of the GDM instead of using the profiles. The GDM algorithm is set up in such way that this is possible in an intuitive way.
( __ __ 🎩 ) Disable asymmetric GDM calculation -- Calculate the bullish and bearish GDMs independently (asymmetric calculation) or normalise them altogether (symmetric calculation). This can sometimes be helpful to filter out weaker GDMs depending on market conditions.
( 🤲 🧰 🎩 ) QMC calculation -- Using the QMC is possible in all versions, and each of the Normal, Slow and Lethargic frequencies can be toggled on and off.
( __ 🧰 __ ) QMC sensitivity -- Similar to the GDM profiles, in the Pro version there are presets to make the sensitivity higher (and thus get more signals) or lower.
( __ __ 🎩 ) QMC quantile threshold -- Instead of the sensitivity presets, in the Ult Edition the quantile threshold for each frequency is set. The user also sees the actual quantile and number of samples in the label
( 🤲 🧰 🎩 ) WaveTrend 4D settings -- Possibility to adjust the core WaveTrend settings
( 🤲 🧰 🎩 ) Alerts -- When alerts are enabled, TradingView will notify when there is a bullish/bearish strong GDM (i.e. within the zone) and a bullish/bearish QMC.






















