Elder's Force Index Function (with source)TradingView has built in functions for RSI, Momentum, and many other oscillators. Why the source isn't available for Elder's Force Index is beyond me. To me it's one of the Holy Grail indicators. This is EFI indicator with a simple function inside the source code. You're can easily copy this function into any study(indicator) or strategy that uses built-in oscillators, as a replacement.
Example using EFI instead of RSI in built-in Divergence Indicator:
gyazo.com
//Discord: Sheldon#7775
//Server: discord.gg
Search in scripts for "oscillator"
SynthSAR ConfirmationThis indicator represents confirmation of a trend based on the PSAR indicator and includes signals from the MACD, stochastic oscillator, and awesome oscillator. It displays the points of the parabolic SAR on the chart, which help determine the direction of the trend. Additionally, the indicator allows for tracking signals based on the combined analysis of three other technical indicators: MACD, stochastic oscillator, and awesome oscillator. Furthermore, the indicator includes the ability to display buy/sell labels and signals for changing the trend direction. This is not an investment recommendation.Very effective in higher timeframes.If the MACD "macd line" crosses the "signal line" from above and the Stochastic %K line crosses the %D line from above, and the last column in the Avesome Oscillator is red, then the indicator gives a signal to sell. If the MACD "macd line" crosses the "signal line" from below and the Stochastic %K line crosses the %D line from below, and the last column in the Avesome Oscillator is green, then the indicator gives a signal to buy.
ADX + BB %B + AO + EMA [Luca Massuda]This trading strategy combines different indicators:
1) ADX, Average Directional Movement: to spot the trend
2) BB %B Bollinger Band %B: to spost relative price position to Bollinger Bands
3) AO Awesome Oscillator: to spot momentum
4) ema 5,ema21, ema50, ema200: to decide long or short position
You can configure:
Take profit % : at which % gains to take profit from the entry price
Stop loss % : at which % stop loss from the entry price
BB %B Overbought: At which level you consider Overbought respect to Bollinger Bands (values 0 to 100)
BB %B Oversold: At which level you consider Oversold respect to Bollinger Bands (values 0 to 100)
Awesome Oscillator: AO level to consider a long or short position +/- 2
ADX: ADX value to consider a long or short position
Start Date, Month, Year: Starting point for a backtesting strategy
Lenght , Source , Standard Deviation: Bollinger Bands values
ADX smoothing, DI Lenght: ADX values
Green and purple zones indicate when the strategy can go long or short.
Default Long conditions:
ema5>ema21 and ema50>ema200 and bb>75% and ao>2 and adx>15
Default Short conditions:
ema515
FluxPulse Momentum [JOAT]FluxPulse Momentum - Adaptive Multi-Component Oscillator
FluxPulse Momentum is a composite oscillator that blends three distinct momentum components into a single, smoothed signal line. Rather than relying on a single indicator, it synthesizes adaptive RSI, normalized rate of change, and a Kaufman-style efficiency ratio to provide a multi-dimensional view of momentum.
What This Indicator Does
Combines RSI, Rate of Change (ROC), and Efficiency Ratio into one weighted composite
Applies EMA smoothing to reduce noise while preserving responsiveness
Displays overbought/oversold zones with optional background highlighting
Generates buy/sell signals when the oscillator crosses its signal line in favorable zones
Provides a real-time dashboard showing current state, momentum direction, and efficiency
Core Components
Adaptive RSI (50% weight) — Standard RSI calculation normalized around the 50 level
Normalized ROC (30% weight) — Rate of change scaled relative to its recent maximum range
Efficiency Ratio (20% weight) — Measures directional movement efficiency, inspired by Kaufman's adaptive concepts
The final composite is smoothed twice using EMA to create both a fast line and a signal line.
Signal Logic
// Buy signal: crossover in lower half
buySignal = ta.crossover(qmo, qmoSmooth) and qmo < 50
// Sell signal: crossunder in upper half
sellSignal = ta.crossunder(qmo, qmoSmooth) and qmo > 50
Signals are generated only when the oscillator is positioned favorably—buy signals occur below the 50 midline, sell signals occur above it.
Dashboard Information
The on-chart table displays:
Current oscillator value with gradient coloring
Momentum state (Overbought, Oversold, Bullish, Bearish, Neutral)
Momentum direction and acceleration
Efficiency ratio percentage
Active signal status
Inputs Overview
RSI Length — Period for RSI calculation (default: 14)
ROC Length — Period for rate of change (default: 10)
Smoothing Length — EMA smoothing period (default: 3)
Overbought/Oversold Levels — Threshold levels for zone detection
Await Bar Confirmation — Wait for bar close before triggering alerts
How to Use It
Watch for crossovers between the main line and signal line
Use overbought/oversold zones to identify potential reversal areas
Monitor the histogram for momentum acceleration or deceleration
Combine with price action analysis for confirmation
Alerts
Buy Signal — Bullish crossover in the lower zone
Sell Signal — Bearish crossunder in the upper zone
Overbought/Oversold Crosses — Level threshold crossings
This indicator is provided for educational purposes. It does not constitute financial advice. Always conduct your own analysis before making trading decisions.
— Made with passion by officialjackofalltrades
Moving Average Shift [Quantora]Title: Moving Average Shift
Description:
The Moving Average Shift is a dynamic technical analysis tool designed to help traders better visualize trend strength and direction using a combination of customizable moving averages and a volatility-adjusted oscillator.
🔧 Features:
Multi-Type Moving Average Selection
Choose from SMA, EMA, SMMA (RMA), WMA, and VWMA for your main signal line.
ZLSMA Trio
Three Zero-Lag Smoothed Moving Averages (ZLSMA) with adjustable lengths and colors provide a smoother trend-following structure without the delay of traditional MAs.
EMA Ribbon (50/100/200)
Add clarity to long-term trend direction with layered Exponential Moving Averages in key institutional periods.
Volatility-Adjusted Oscillator
A color-changing oscillator calculated from the normalized deviation between price and the selected MA. This helps identify trend shifts and momentum buildups.
Custom MA Line Widths and Styling
Full control over the width and appearance of all MA lines for visual clarity.
Bar & Candle Coloring
Bars and candles dynamically change color based on the relationship between price and the selected MA — helping you quickly assess bullish/bearish conditions.
📈 How It Helps:
Spot early trend shifts through the oscillator.
Confirm trades using the alignment between ZLSMAs and EMAs.
Quickly assess current trend conditions using color-coded price bars.
Clustering Volatility (ATR-ADR-ChaikinVol) [Sam SDF-Solutions]The Clustering Volatility indicator is designed to evaluate market volatility by combining three widely used measures: Average True Range (ATR), Average Daily Range (ADR), and the Chaikin Oscillator.
Each indicator is normalized using one of the available methods (MinMax, Rank, or Z-score) to create a unified metric called the Score. This Score is further smoothed with an Exponential Moving Average (EMA) to reduce noise and provide a clearer view of market conditions.
Key Features:
Multi-Indicator Integration: Combines ATR, ADR, and the Chaikin Oscillator into a single Score that reflects overall market volatility.
Flexible Normalization: (Supports three normalization methods)
MinMax: Scales values between the observed minimum and maximum.
Rank: Normalizes based on the relative rank within a moving window.
Z-score: Standardizes values using mean and standard deviation.
Dynamic Window Selection: Offers an automatic window selection option based on a specified lookback period, or a fixed window size can be used.
Customizable Weights: Allows the user to assign individual weights to ATR, ADR, and the Chaikin Oscillator. Optionally, weights can be normalized to sum to 1.
Score Smoothing: Applies an EMA to the computed Score to smooth out short-term fluctuations and reduce market noise.
Cluster Visualization: Divides the smoothed Score into a number of clusters, each represented by a distinct color. These colors can be applied to the price bars (if enabled) for an immediate visual indication of the current volatility regime.
How It Works:
Input & Window Setup: Users set parameters for indicator periods, normalization methods, weights, and window size. The indicator can automatically determine the analysis window based on the number of lookback days.
Calculation of Metrics: The indicator computes the ATR, ADR (as the average of bar ranges), and the Chaikin Oscillator (based on the difference between short and long EMAs of the Accumulation/Distribution line).
Normalization & Scoring: Each indicator’s value is normalized and then weighted to form a raw Score. This raw Score is scaled to a range using statistics from the chosen window.
Smoothing & Clustering: The raw Score is smoothed using an EMA. The resulting smoothed Score is then multiplied by the number of clusters to assign a cluster index, which is used to choose a color for visual signals.
Visualization: The smoothed Score is plotted on the chart with a color that changes based on its value (e.g., lime for low, red for high, yellow for intermediate values). Optionally, the price bars are colored according to the assigned cluster.
_____________
This indicator is ideal for traders seeking a quick and clear assessment of market volatility. By integrating multiple volatility measures into one comprehensive Score, it simplifies analysis and aids in making more informed trading decisions.
For more detailed instructions, please refer to the guide here:
OBV 1min Volume SqueezeIn the vast realm of trading strategies, few terms evoke as much intrigue as the word "squeeze." It conjures images of pent-up energy, ready to burst forth in a sudden and decisive move. In this blog post, we'll delve into a new trading idea titled the "OBV 1-Minute Volume Squeeze" which aims to catch bigger market movements by fetching 1 minute OBV data on higher time charts.
The Essence of Squeeze
In trading parlance, a "squeeze" typically denotes a scenario where volatility contracts, and prices consolidate within a narrow range. Translating this concept to volume dynamics, a "volume squeeze" suggests a period of compressed volume activity. It is unclear if the Bulls or the Bears are at winning hand and price is thus consolidating. The script calculates buying and selling pressure by fetching 1 min data. The total volume presure is the sum of absolute values of the buying and selling pressure added up. By deviding the Buying volume by the total volume we know the Buying Pressure.
The trading theory suggest that when the buying pressure exceeds a certain value eg. 50% (default value in the script is 55%) it is likely the trend will continue to go up for a longer period of time. Vice Versa when selling pressure is higher, the trend is likely to continue down. In the script you can adjust the sensitivity in such way a higher "Volume Pressure %" result in less trading signals.
Fetching 1 min data
The OBV is a wonderful indicator to measure the buying and selling pressure. A disadvantage of the script is that the total volume pressure is presented as a positive (buying) or negative value (selling) value in the Oscillator. It does not offset the Bulls power against the Bears power at given time. The script aims to do measure the directional volume power by defining a volume pressure % (oulier value) by fetching 1 min OBV data on higher time frame charts comparing the Bulls power against the Bears Power. The code is included below:
// Fetch Lower Timeframe Data in an array
// nV = ZeroValue, sV = Selling Volume, bV = Buying Volume, tV = Total Volume
= request.security_lower_tf(syminfo.tickerid, '1', )
sum_bV_Lengthbars = array.sum(bV)
sum_sV_Lengthbars = array.sum(sV)
sum_tV_Lengthbars = sum_bV_Lengthbars + sum_sV_Lengthbars // Combine buying and selling volumes to get total volume
// Calculate buying and selling volume as percentage of the total volume, but ensure the denominator isn't zero.
buying_percentage = sum_tV_Lengthbars != 0 ? sum_bV_Lengthbars / sum_tV_Lengthbars * 100 : na
selling_percentage = sum_tV_Lengthbars != 0 ? -(sum_sV_Lengthbars / sum_tV_Lengthbars * 100) : na
OBV Oscillator Explanation
The On Balance Volume (OBV) indicator is a technical analysis tool used to measure buying and selling pressure in the market. It does this by keeping a running total of volume flows. OBV is typically calculated by adding the volume on a candle when the price closes higher than the previous candle's close and subtracting the volume on candles when the price closes lower than the previous candles close. If the price closes unchanged from the previous candle, the volume is not added to or subtracted from the OBV. The OBV can be presented as an oscillator. Positve value is the buying pressure and negative values is the selling pressure. In the settings the OBV is calculated based on 1 min data and comes with the following input options for visualization on the chart:
Higher Time Frame Settings (make sure the HTF is higher than the chart you have open)
Type of MA being: EMA, DEMA, TEMA, SMA, WMA, HMA, McGinley
Volume Pressure % (outlier value)
Length of number of bars (of the choosen HTF settings)
Smoothing of number candles of hte opened timechart. Note that higher number of bars to smoothen the indicator results in less signals, but lag of the indicator increases.
The Oscilator contains 3 main lines which are used to determin the entry signals:
Orange Line = the Outlier value in settings described as "Volume Pressure %"
Green Line = Total Buying Pressure OBV
Red Line = Total Selling Pressure OBV
If the Green or Red line is in between the zero line and the orange line the volume is squeezed and waiting for a directional break out.
If the Green line crosses over the orange line the buying pressure is > 55% and triggers a long entry position (green dot). If the Red line crosses under the orange line the selling pressure is > 55% and triggers an short entry (red dot). In the strategy settings this option is called: "Wait for total volume to increase?".
Alternative Strategy Options
In order to play around with different settings users can opt for two more strategy entry settings, called:
"Wait for total volume to deacrease?" --> Only gives a signal when total volume is declining, but buying or selling pressure maintains and crosses % threshold.
"Wait for Pull Back?" --> After a pullback occured and opposite buy/sell pressure gets lower than threshold (direction is shifting)
Turning on all options will logically result into more signals. Note these strategy ideas are experimental and can best be used in confirmation with other indicators.
Moving Average Filter (HTF)
The Oscillator has a horizontal line at the bottom. The line is green when the moving average is in a uptrend and red when the moving average is in a downtrend. The MA Filter comes with the following settings:
Higher Time Frame Setting
Type of MA being: EMA, DEMA, TEMA, SMA, WMA, HMA, McGinley
Length of number of bars (of the choosen HTF settings)
At last I hope you like this volume trading idea and if you have any comments let me know!
DVDIQQE [DW]This is an experimental study inspired by the Quantitative Qualitative Estimation indicator designed to identify trend and wave activity.
In this study, rather than using RSI for the calculation, the Dual Volume Divergence Index oscillator is utilized.
First, the DVDI oscillator is calculated by taking the difference between PVI and its EMA, and NVI and its EMA, then taking the difference between the two results.
Optional parameters for DVDI calculation are included within this script:
- An option to use tick volume rather than real volume for the volume source
- An option to use cumulative data, which sums the movements of the oscillator from the beginning to the end of TradingView's maximum window to give a more broad picture of market sentiment
Next, two trailing levels are calculated using the average true range of the oscillator. The levels are then used to determine wave direction.
Lastly, rather than using 0 as the center line, it is instead calculated by taking a cumulative average of the oscillator.
Custom bar colors are included.
Note: For charts that have no real volume component, use tick volume as the volume source.
cd_RSI_Divergence_CxGeneral:
The Relative Strength Index (RSI) is a momentum oscillator widely used by traders in price analysis. In addition to showing overbought/oversold zones, divergences between RSI and price are also tracked to identify trading opportunities.
The general consensus is that oscillators alone are not sufficient for entries and should be evaluated together with multiple confirmations.
This oscillator is designed as an additional confirmation/compatible tool for strategies that already use higher time frame (HTF) sweeps and lower time frame (LTF) confirmations such as Change in State Delivery (CISD) or Change of Character (CHOCH).
Features:
While RSI oscillators are commonly displayed in line format (classic), this indicator also offers candlestick-style visualization.
Depending on the selected source, period length, and EMA length, RSI can be displayed as lines and/or candlesticks.
Divergence detection & tracking:
Price and RSI values are monitored on the chosen higher time frame (from the menu) to determine highs and lows. For divergence display, the user can choose between two modes:
1- Alignment with HTF Sweep
2- All
1 - Alignment with HTF Sweep:
First, the price must sweep the previous high/low of the candle on the HTF (i.e., break it) but fail to continue in that direction and return inside (sweep).
If this condition is met, RSI values are checked:
If price makes a high sweep but RSI fails to make a new high → divergence is confirmed.
If price makes a low sweep but RSI fails to make a new low → divergence is confirmed.
Divergence is then displayed on the chart.
2 - All:
In this mode, sweep conditions are ignored. Divergence is confirmed if:
Price makes a new high on HTF but RSI does not.
RSI makes a new high on HTF but price does not.
Price makes a new low on HTF but RSI does not.
RSI makes a new low on HTF but price does not.
Menu & Settings:
RSI visualization (source + period length + EMA period length)
Option to choose classic/candlestick style display
Color customization
Higher time frame selection
Adjustable HTF boxes and table display
Final notes:
This oscillator is designed as an additional confirmation tool for strategies based on HTF sweep + LTF CISD/CHOCH confirmation logic. The chosen HTF in the oscillator should match the time frame where sweeps are expected.
Divergence signals from this oscillator alone will not make you profitable.
For spot trades, monitoring sweeps and divergences on higher time frames is more suitable (e.g., Daily–H1 / Weekly–H4).
My personal usage preferences:
Entry TF: 3m
HTF bias: Daily + H1
Sweep + CISD: 30m / 3m
Market Structure: 3m
RSI divergence: HTF = 30m
If all of them align bullish or bearish ( timeframe alignment ), I try to take the trade.
I’d be glad to hear your feedback and suggestions for improvement.
Happy trading!
Chaikin DivergenceOverview
The Chaikin Divergence is a powerful technical indicator designed to enhance the traditional Chaikin Oscillator by incorporating divergence detection between the oscillator and price action. This advanced tool not only plots the Chaikin Oscillator but also identifies and highlights bullish and bearish divergences, providing traders with valuable insights into potential trend reversals and momentum shifts.
Key Features
Chaikin Oscillator Plotting: Visual representation of the Chaikin Oscillator, aiding in the analysis of market momentum based on volume and price.
Divergence Detection:
Bullish Divergence: Indicates potential upward reversals when price forms lower lows while the oscillator forms higher lows.
Bearish Divergence: Signals possible downward reversals when price creates higher highs while the oscillator forms lower highs.
Customizable Settings:
Fast Length & Slow Length: Adjust the periods for the Exponential Moving Averages (EMA) used in the oscillator calculation.
Pivot Detection Parameters: Define the sensitivity of pivot high and pivot low detection with adjustable left and right bars.
Bars Lookback for Divergence: Set the number of bars to look back for identifying divergences.
Color Customization: Choose distinct colors for bullish and bearish divergence labels to match your trading preferences.
Visual Indicators:
Divergence Labels: Clear and distinct labels (arrows or dots) on the chart indicating the type and location of divergences.
Zero Line: A dashed zero line to reference the oscillator’s crossing points.
Chaikin Oscillator Calculation:
The indicator calculates the Chaikin Oscillator by subtracting the slow EMA of the Accumulation/Distribution Line (ta.accdist) from the fast EMA.
This oscillates around the zero line, indicating buying and selling pressure.
Pivot Detection:
Utilizes ta.pivothigh and ta.pivotlow functions to identify significant pivot points in price action. These pivot points serve as reference points for divergence analysis.
Divergence Identification:
Bullish Divergence: Detected when a recent pivot low in price is lower than the previous pivot low, while the corresponding oscillator value is higher than the previous oscillator pivot.
Bearish Divergence: Identified when a recent pivot high in price is higher than the previous pivot high, but the oscillator value is lower than the previous oscillator pivot.
Label Plotting:
When a divergence is detected, the indicator plots a label (arrow or dot) on the chart at the pivot point, signaling the type of divergence.
Adding the Indicator:
Open TradingView and navigate to the chart where you want to apply the indicator.
Open the Pine Editor, paste the Chaikin Oscillator with Divergences script, and add it to your chart.
Configuring Settings:
Fast Length & Slow Length: Adjust these to modify the sensitivity of the Chaikin Oscillator. Shorter periods make the oscillator more responsive to price changes.
Left Bars for Pivots & Right Bars for Pivots: Define how many bars to the left and right are considered when identifying pivot points. Increasing these values makes pivot detection less sensitive.
Bars Lookback for Divergence: Set how far back the indicator should search for previous pivot points when identifying divergences. A higher value allows detection over a longer timeframe.
Bullish/Bearish Divergence Colors: Choose colors that stand out against your chart background for easy identification of divergence signals.
Interpreting Signals:
Bullish Divergence Labels: Appear when there's a potential upward reversal, signaling a possible buying opportunity.
Bearish Divergence Labels: Show up when a downward reversal might be imminent, indicating a possible selling opportunity.
Oscillator Crosses Zero: Pay attention to when the oscillator crosses the zero line, as this can also signal changes in momentum.
Combining with Other Indicators:
For enhanced trading strategies, combine divergence signals with other technical indicators or chart patterns to confirm potential trade setups.
Crypto Volume/Strength ComparatorHello Traders,
Here is an attempt to perform comparative analysis between top cryptos based on strength (oscillator) and volume. Methodology used here is similar to Magic Number formula described in the post : Enhanced Magic Formula for fundamental analysis . But, instead of using fundamentals, we are making use of few technicals to derive similar outcome. Usage of the available stats will not be same as Magic number since we are using technicals.
⬜ Process
▶ Get crypto exchange based on prefix of instrument being used.
▶ For the given exchange, get data for all the tickers available in input fields.
▶ Calculate Oscillator, Momentum based on price for each tickers.
▶ Calculate Oscillator, Momentum based on volume for each tickers.
▶ Calculate Volatility for each tickers.
▶ Rank Price-Oscillator, Price-Momentum, Volume-Oscillator, Volume-Momentum, Volatility for each tickers.
▶ Calculate combined rank by adding up individual ranks.
▶ Calculate movement of rankings from bar to bar
▶ Sort tickers based on rank and populate them on table. Display direction of rankings.
⬜ Components
Display components are as follows:
⬜ Settings
Settings are pretty simple and straightforward
⬜ Calculations
▶ Oscillators : High values of oscillators are considered as ideal as the process is intended towards finding trend.
▶ Momentum : Momentum is calculated on the basis of Squeeze Momentum Indicator by @LazyBear.
▶ Volatility : Volatility is calculated on the basis of Williams Vix Fix by @ChrisMoody. Here too since we are in trend following mode, lower vix fix is considered ideal.
⬜ Few Notes
Tickers will show data only if selected exchange has them. Some tickers are not available in all exchanges. In that case, it will show NAN. This is kind of unavoidable as we need to have fixed size arrays for any calculations.
Indicator works only on crypto tickers which has valid exchange.
Tickers move through the rankings in real time. Background of all stats are based on gradient from green to red.
Tickers on top may not always have better long opportunity or tickers at bottom may not always be optimal for shorting. We need to consider how long the instrument may stay in the position or how fast it is moving in opposite direction. Hence, directions of the ranking movement are also shown on the table.
Velocity Pressure Index | AlphaNattVelocity Pressure Index (VPI) | AlphaNatt
A sophisticated momentum oscillator that combines price velocity analysis with volume pressure dynamics to identify high-probability trading opportunities.
📊 KEY FEATURES
Dual Analysis System: Merges price velocity measurement with volume pressure analysis for comprehensive market momentum assessment
Dynamic Normalization: Automatically scales values between -100 and +100 for consistent readings across all market conditions
Adaptive Zones: Self-adjusting overbought/oversold levels based on recent price history
Multi-Layer Confirmation: Combines momentum, acceleration, and crossover signals for robust trade identification
Volume-Weighted Pressure: Differentiates between bullish and bearish volume to gauge true market sentiment
📈 HOW IT WORKS
The VPI calculates price velocity using linear regression of price changes, then weights this velocity by the difference between bullish and bearish volume pressure. This creates a momentum reading that accounts for both price movement speed and the volume conviction behind it.
Signal Generation:
Price velocity is measured over the specified period
Volume is separated into bullish (close > open) and bearish (close < open) pressure
Velocity is amplified or dampened based on volume pressure differential
The resulting index is normalized to oscillate between -100 and +100
A signal line smooths the oscillator for crossover detection
🎯 TRADING SIGNALS
Long Signals (Cyan #00F1FF):
Strong Bull: VPI > Signal with positive momentum and acceleration
Crossover Bull: VPI crosses above signal while above oversold zone
Divergence: Price makes lower low while VPI makes higher low
Short Signals (Magenta #FF019A):
Strong Bear: VPI < Signal with negative momentum and deceleration
Crossover Bear: VPI crosses below signal while below overbought zone
Divergence: Price makes higher high while VPI makes lower high
⚙️ CUSTOMIZABLE PARAMETERS
Velocity Settings:
Velocity Period (14): Lookback for price velocity calculation
Pressure Period (21): Volume analysis window
Smoothing Factor (3): Final oscillator smoothing
Signal Configuration:
Signal Type: Choose between SMA, EMA, or DEMA
Signal Length (9): Signal line smoothing period
Normalization Period (50): Range calculation window
Dynamic Zones:
Zone Lookback (100): Period for adaptive overbought/oversold calculation
Percentiles: 80th/20th percentiles for dynamic zones
📐 VISUAL COMPONENTS
Main Oscillator: Color-coded line showing current momentum state
Signal Line: White line for crossover detection
Momentum Histogram: Shows velocity differential at 50% scale
Dynamic Zones: Self-adjusting overbought/oversold bands
Extreme Levels: ±50 dotted lines marking extreme conditions
Background Shading: Subtle highlighting of overbought/oversold regions
💡 USAGE TIPS
Trend Trading: Use strong bull/bear signals in trending markets for continuation entries
Range Trading: Focus on crossovers near extreme zones for reversal trades
Divergence Trading: Watch for price/oscillator divergences at market extremes
Multi-Timeframe: Combine with higher timeframe VPI for directional bias
Volume Confirmation: Stronger signals occur with aligned volume pressure
⚠️ BEST PRACTICES
The VPI works best in liquid markets with reliable volume data. For optimal results, combine with price action analysis and use appropriate risk management. The indicator is most effective during trending conditions but can identify reversals when divergences occur at extremes.
🔔 ALERTS AVAILABLE
VPI Long/Short Signals
Bullish/Bearish Crossovers
Extreme Overbought/Oversold Conditions
Version 6 | Pine Script™ | © AlphaNatt
Divergences + Alerts (ANY Indicator)📊 Divergences + Alerts (ANY Indicator)
This versatile indicator detects four types of divergences between price action and an oscillator:
Buyer Exhaustion
Buyer Absorption
Seller Exhaustion
Seller Absorption
Each divergence type is automatically identified and visually marked on the chart with colored lines. The indicator also includes built-in alert conditions for all four divergence types, allowing traders to receive real-time notifications when potential reversal signals occur.
By default, the oscillator is a candle-style visualization of the Money Flow Index (MFI), enhanced with volatility filtering via a VWMA-based ATR. However, users can replace the default MFI oscillator with any external source using the “Plug External Source” input, enabling full customization and compatibility with other indicators.
Key features:
🔍 Detects both exhaustion and absorption divergences
🔔 Alerts for each divergence type
🕯️ Candle-style oscillator visualization
🔌 Optional input for external indicator sources
⚙️ ATR-based filtering for precision
Ideal for traders seeking to spot early signs of trend reversals or momentum shifts with customizable flexibility.
ADX + DMI (HMA Version)📝 Description (What This Indicator Does)
🚀 ADX + DMI (HMA Version) is a trend strength oscillator that enhances the traditional ADX by using the Hull Moving Average (HMA) instead of EMA.
✅ This results in a much faster and more responsive trend detection while filtering out choppy price action.
🎯 What This Indicator Does:
1️⃣ Measures Trend Strength – ADX shows when a trend is strong or weak.
2️⃣ Identifies Trend Direction – DI+ (Green) shows bullish momentum, DI- (Red) shows bearish momentum.
3️⃣ Uses Hull Moving Average (HMA) for Faster Signals – Removes lag and reacts faster to trend changes.
4️⃣ Reduces False Signals – Traditional ADX lags behind, but this version reacts quickly to reversals.
5️⃣ Good for Scalping & Day Trading – Especially for BTC 5-min and lower timeframes.
⚙ Indicator Inputs (Customization)
Input Name Example Value Purpose
ADX Length 14 Defines the smoothing for the ADX value.
DI Length 14 Defines how DI+ and DI- are calculated.
HMA Length 24 Hull Moving Average smoothing for ADX & DI+.
Trend Threshold 25 The level above which ADX confirms a strong trend.
📌 You can adjust these settings to optimize for different assets and timeframes.
🎯 Trading Rules & How to Use It
✅ How to Identify a Strong Trend:
When ADX (Blue Line) is above 25→ A strong trend is in play.
When ADX is below 25 → The market is choppy or ranging.
✅ How to Use DI+ and DI- for Trend Direction:
If DI+ (Green) is above DI- (Red), the market is in an uptrend.
If DI- (Red) is above DI+ (Green), the market is in a downtrend.
✅ How to Confirm Entries & Exits:
1️⃣ Enter Long when DI+ crosses above DI- while ADX is rising above 25.
2️⃣ Enter Short when DI- crosses above DI+ while ADX is rising above 25.
3️⃣ Avoid trading when ADX is below 25 – the market is in a choppy range.
This should not be used as a stand alone oscillator. Trading takes skill and is risky. Use at your own risk.
This is not advise on how to trade, these are just examples of how I use the oscillator. Trade at your own risk.
You can put this on your chart versus the tradingview adx and you can adjust the settings to see the difference. This was optimized for btc on the 5 min chart. You can adjust for your trading strategy.
Heikin Ashi Processed Generalized Smooth StepDisclaimer : This is my attempt of smoothing and improving @tarasenko_ script. Find the originial author here :
Overview:
The Smooth Step Heikin Ashi Indicator is an enhanced version of the original script developed by tarasenko_. This advanced TradingView tool integrates Heikin Ashi candlestick calculations with a sophisticated smoothing oscillator, offering traders improved trend visualization and dynamic alert capabilities.
Key Enhancements:
Refined Heikin Ashi Calculations: The indicator computes smoothed Open, High, Low, and Close (OHLC) values with adjustable factors, allowing for more precise trend analysis. It also includes an optional second-level modified Heikin Ashi calculation for additional smoothing.
Advanced Smooth Step Oscillator: Utilizing Pascal’s triangle, this oscillator provides a visual representation of price momentum. Traders can configure the lookback period, equation order, and threshold to tailor the oscillator to specific trading strategies.
Enhanced Customization Options: Users can toggle between standard and Heikin Ashi candles, adjust smoothing parameters, and set display preferences to align with their analytical needs.
Noise Reduction: Smoothes out market fluctuations using customizable Heikin Ashi factors. Introduces a second-level smoothing option for even greater noise reduction, allowing traders to focus on the core trend.
Original Indicator :
Heikin Ashi processed version :
Visualization Features:
Heikin Ashi Candles: Displays candles with customizable colors and visibility settings, aiding in clearer trend identification.
Smooth Step Oscillator Line: Plots a line that reflects trend strength and momentum, assisting traders in making informed decisions.
Threshold Line: Provides a visual reference point to facilitate quick assessments of market conditions.
Conclusion:
Building upon tarasenko_'s original work, the Smooth Step Heikin Ashi Indicator delivers a robust tool for traders seeking refined market analysis. Its combination of advanced smoothing techniques and dynamic alert features makes it a valuable addition to any trader's toolkit.
Periodical Trend [BigBeluga]The Periodical Trend indicator is designed to provide a detailed analysis of market trends and volatility. It utilizes a combination of Moving Averages and volatility measures to plot trend line, highlight potential trend reversals, and indicate mean reversion opportunities. The indicator offers customizable display options, allowing traders to adjust for sensitivity, volatility bands, and price deviation visibility.
🔵 KEY FEATURES
● Periodical Trend Analysis
Uses (high + volatility) or (low - volatility) as the foundation for trend analysis with a set period.
// Condition to update the AVG array based on the selected mode
if mode == "Normal"
? bar_index == 122
: bar_index % period == 0
AVG.push(close) // Add the close price to the AVG array
// Update AVG array based on the period and price comparison
if bar_index % period == 0
if close > AVG.last() // If the current close is greater than the last stored value in AVG
AVG.push(low - vlt) // Add the low price minus volatility to the array
if close < AVG.last() // If the current close is lower than the last stored value in AVG
AVG.push(high + vlt) // Add the high price plus volatility to the array
Provides adjustable sensitivity modes ("Normal" and "Sensitive") for different market conditions.
Trend direction is visualized with dynamic color coding based on the relationship between the trend line and price.
● Volatility Bands
Displays upper and lower volatility bands derived from a moving average of price volatility (high-low).
The bands help identify potential breakout zones, overbought, or oversold conditions.
Users can toggle the visibility of the bands to suit their trading style.
● Mean Reversion Signals
Detects mean reversion opportunities when price deviates significantly from the trend line.
Includes both regular and strong mean reversion signals, marked directly on the chart.
Signals are based on oscillator crossovers, offering potential entry and exit points.
● Price Deviation Oscillator
Plots an oscillator that measures the deviation of price from the average trend line.
The oscillator is normalized using standard deviation, highlighting extreme price deviations.
Traders can choose to display the oscillator for in-depth analysis of price behavior relative to the trend.
● Dynamic Trend Coloring
The indicator colors the background on the direction of the trend.
Green indicates bullish trends, while blue indicates bearish trends.
The trend colors adapt dynamically to market conditions, providing clear visual cues for traders.
🔵 HOW TO USE
● Trend Analysis
The trend line represents the current market direction. A green trend line suggests a bullish trend, while a blue trend line indicates a bearish trend.
Use the trend line in conjunction with volatility bands to confirm potential breakouts or areas of consolidation.
● Volatility Bands
Volatility bands offer insight into potential overbought or oversold conditions.
Price exceeding these bands can signal a strong trend continuation or a possible reversal.
● Mean Reversion Strategies
Look for mean reversion signals (regular and strong) when price shows signs of reverting to the trend line after significant deviation.
Regular signals are represented by small dots, while strong signals are represented by larger circles.
These signals can be used as entry or exit points, depending on the market context.
● Price Deviation Analysis
The oscillator provides a detailed view of price deviations from the trend line.
A positive oscillator value indicates that the price is above the trend, while a negative value suggests it is below.
Use the oscillator to identify potential overbought or oversold conditions within the trend.
🔵 USER INPUTS
● Period
Defines the length of the period used for calculating the trend line. A higher period smooths out the trend, while a shorter period makes the trend line more sensitive to price changes.
● Mode
Choose between "Normal" and "Sensitive" modes for trend detection. The "Sensitive" mode responds more quickly to price changes, while the "Normal" mode offers smoother trend lines.
● Volatility Bands
Toggle the display of upper and lower volatility bands. These bands help identify potential areas of price exhaustion or continuation.
● Price Deviation
Toggle the display of the price deviation oscillator. This oscillator shows the deviation of the current price from the trend line and highlights extreme conditions.
● Mean Reversion Signals
Toggle the display of mean reversion signals. These signals highlight potential reversal points when the price deviates significantly from the trend.
● Strong Mean Reversion Signals
Toggle the display of stronger mean reversion signals, which occur at more extreme deviations from the trend.
● Width
Adjust the thickness of the trend line for better visibility on the chart.
🔵 CONCLUSION
The Periodical Trend indicator combines trend analysis, volatility bands, and mean reversion signals to provide traders with a comprehensive tool for market analysis. By offering customizable display options and dynamic trend coloring, this indicator can adapt to different trading styles and market conditions. Whether you are a trend follower or a mean reversion trader, the Periodical Trend indicator helps identify key market opportunities and potential reversals.
For optimal results, it is recommended to use this indicator alongside other technical analysis tools and within the context of a well-structured trading strategy.
Spider VisionSpider Vision is an indicator that I created for trading view, which consists of a spider chart with 7 indicators built into it. This chart provides a visual representation of how these indicators are behaving, allowing traders to quickly assess the current market conditions.
The chart displays the following indicators:
RSI (Relative Strength Index): This is a momentum indicator that measures the strength of a security's price action. When the RSI is above 70, it is considered overbought, and when it is below 30, it is considered oversold.
Stochastic: This is another momentum indicator that compares the closing price of a security to its price range over a given time period. When the stochastic is above 80, it is considered overbought, and when it is below 20, it is considered oversold.
Momentum: This is a simple indicator that measures the change in a security's price over a given time period. When the momentum is positive, it indicates that the price is increasing, and when it is negative, it indicates that the price is decreasing.
BBW (Bollinger Bands Width): This indicator measures the width of the Bollinger Bands, which are a popular technical analysis tool used to identify potential trends and reversals. When the BBW is high, it suggests that the market is volatile, and when it is low, it suggests that the market is quiet.
DTO (Detrended Price Oscillator): This indicator measures the difference between the price of a security and its moving average. When the DTO is positive, it indicates that the price is above its moving average, and when it is negative, it indicates that the price is below its moving average.
Chop Zone: This indicator measures the choppiness of the market by comparing the average true range (ATR) to the difference between the high and low prices over a given time period. When the chop zone is high, it suggests that the market is choppy, and when it is low, it suggests that the market is trending.
Chaikin Oscillator: This is an oscillator that measures the accumulation/distribution of a security. When the Chaikin Oscillator is positive, it indicates that there is buying pressure in the market, and when it is negative, it indicates that there is selling pressure.
To use this indicator, traders can simply add it to their TradingView chart and adjust the input parameters to suit their trading style. The scale parameter can be used to adjust the size of the spider chart, while the color parameters can be used to customize the appearance of the chart. Traders can also adjust the length of each indicator to suit their preference.
Overall, the Spider Vision indicator provides a convenient way for traders to quickly assess the current market conditions and make more informed trading decisions.
Combo Backtest 123 Reversal & D_Three Ten OscThis is combo strategies for get a cumulative signal.
First strategy
This System was created from the Book "How I Tripled My Money In The
Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
The strategy buys at market, if close price is higher than the previous close
during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
The strategy sells at market, if close price is lower than the previous close price
during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
Second strategy
TradeStation does not allow the user to make a Multi Data Chart with
a Tick Bar Chart and any other type a chart. This indicator allows the
user to plot a daily 3-10 Oscillator on a Tick Bar Chart or any intraday interval.
Walter Bressert's 3-10 Oscillator is a detrending oscillator derived
from subtracting a 10 day moving average from a 3 day moving average.
The second plot is an 16 day simple moving average of the 3-10 Oscillator.
The 16 period moving average is the slow line and the 3/10 oscillator is
the fast line.
For more information on the 3-10 Oscillator see Walter Bressert's book
"The Power of Oscillator/Cycle Combinations"
WARNING:
- For purpose educate only
- This script to change bars colors.
Combo Backtest 123 Reversal & D_Three Ten Osc This is combo strategies for get a cumulative signal.
First strategy
This System was created from the Book "How I Tripled My Money In The
Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
The strategy buys at market, if close price is higher than the previous close
during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
The strategy sells at market, if close price is lower than the previous close price
during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
Second strategy
TradeStation does not allow the user to make a Multi Data Chart with
a Tick Bar Chart and any other type a chart. This indicator allows the
user to plot a daily 3-10 Oscillator on a Tick Bar Chart or any intraday interval.
Walter Bressert's 3-10 Oscillator is a detrending oscillator derived
from subtracting a 10 day moving average from a 3 day moving average.
The second plot is an 16 day simple moving average of the 3-10 Oscillator.
The 16 period moving average is the slow line and the 3/10 oscillator is
the fast line.
For more information on the 3-10 Oscillator see Walter Bressert's book
"The Power of Oscillator/Cycle Combinations"
WARNING:
- For purpose educate only
- This script to change bars colors.
Stochastic Momentum multi. strategyThe Stochastic Momentum Index (Stoch MTM, SMI) is based on the Stochastic Oscillator. The difference is that the Stochastic Oscillator calculates where the close is relative to the high/low range, while the SMI calculates where the close is relative to the midpoint of the high/low range. The values of the SMI range from +100 to -100. When the close is greater than the midpoint, the SMI is above zero, when the close is less than than the midpoint, the SMI is below zero.
The SMI is interpreted the same way as the Stochastic Oscillator. Extreme high/low SMI values indicate overbought/oversold conditions. A buy signal is generated when the SMI rises above -50, or when it crosses above the signal line. A sell signal is generated when the SMI falls below +50, or when it crosses below the signal line. Also look for divergence with the price to signal the end of a trend or indicate a false trend.
The Stochastic Momentum Index was developed by William Blau and was introduced in his article in the January, 1993 issue of Technical Analysis of Stocks & Commodities magazine.
Stochastic Momentum Index (Stoch MTM, SMI)Stochastic Momentum Index (Stoch MTM, SMI)
The Stochastic Momentum Index (Stoch MTM, SMI) is based on the Stochastic Oscillator. The difference is that the Stochastic Oscillator calculates where the close is relative to the high/low range, while the SMI calculates where the close is relative to the midpoint of the high/low range. The values of the SMI range from +100 to -100. When the close is greater than the midpoint, the SMI is above zero, when the close is less than than the midpoint, the SMI is below zero.
The SMI is interpreted the same way as the Stochastic Oscillator. Extreme high/low SMI values indicate overbought/oversold conditions. A buy signal is generated when the SMI rises above -50, or when it crosses above the signal line. A sell signal is generated when the SMI falls below +50, or when it crosses below the signal line. Also look for divergence with the price to signal the end of a trend or indicate a false trend.
The Stochastic Momentum Index was developed by William Blau and was introduced in his article in the January, 1993 issue of Technical Analysis of Stocks & Commodities magazine.
Money Flow Matrix This comprehensive indicator is a multi-faceted momentum and volume oscillator designed to identify trend strength, potential reversals, and market confluence. It combines a volume-weighted RSI (Money Flow) with a double-smoothed momentum oscillator (Hyper Wave) to filter out noise and provide high-probability signals.
Core Components
1. Money Flow (The Columns) This is the backbone of the indicator. It calculates a normalized RSI and weights it by relative volume.
Green Columns: Positive money flow (Buying pressure).
Red Columns: Negative money flow (Selling pressure).
Neon Colors (Overflow): When the columns turn bright Neon Green or Neon Red, the Money Flow has breached the dynamic Bollinger Band thresholds. This indicates an extreme overbought or oversold condition, suggesting a potential climax in the current move.
2. Hyper Wave (The Line) This is a double-smoothed Exponential Moving Average (EMA) derived from price changes. It acts as the "signal line" for the system. It is smoother than standard RSI or MACD, reducing false signals during choppy markets.
Green Line: Momentum is increasing.
Red Line: Momentum is decreasing.
3. Confluence Zones (Background) The background color changes based on the agreement between Money Flow and Hyper Wave.
Green Background: Both Money Flow and Hyper Wave are bullish. This represents a high-probability long environment.
Red Background: Both Money Flow and Hyper Wave are bearish. This represents a high-probability short environment.
Signal Guide
The Matrix provides three tiers of signals, ranging from early warnings to confirmation entries.
1. Warning Dots (Circles) These appear when the Hyper Wave crosses specific internal levels (-30/30).
Green Dot: Early warning of a bullish rotation.
Red Dot: Early warning of a bearish rotation.
Usage: These are not immediate entry signals but warnings to tighten stop-losses or prepare for a reversal.
2. Major Crosses (Triangles) These occur when Money Flow crosses the zero line, confirmed by momentum direction.
Green Triangle Up: Major Buy Signal (Money Flow crosses above 0).
Red Triangle Down: Major Sell Signal (Money Flow crosses below 0).
Usage: These are the primary trend-following entry signals.
3. Divergences (Labels "R" and "H") The script automatically detects discrepancies between Price action and the Hyper Wave oscillator.
"R" (Regular Divergence): Indicates a potential Reversal.
Bullish R: Price makes a lower low, but Oscillator makes a higher low.
Bearish R: Price makes a higher high, but Oscillator makes a lower high.
"H" (Hidden Divergence): Indicates a potential Trend Continuation.
Bullish H: Price makes a higher low, but Oscillator makes a lower low.
Bearish H: Price makes a lower high, but Oscillator makes a higher high.
Dashboard (Confluence Meter)
Located in the bottom right of the chart, the dashboard provides a snapshot of the current candle's status. It calculates a score based on three factors:
Is Money Flow positive?
Is Hyper Wave positive?
Is Hyper Wave trending up?
Readings:
STRONG BUY: All metrics are bullish.
WEAK BUY: Mixed metrics, but leaning bullish.
NEUTRAL: Metrics are conflicting.
WEAK/STRONG SELL: Bearish equivalents of the buy signals.
Trading Strategies
Strategy A: The Trend Rider
Entry: Wait for a Green Triangle (Major Buy).
Confirmation: Ensure the Background is highlighted Green (Confluence).
Exit: Exit when the background turns off or a Red Warning Dot appears.
Strategy B: The Reversal Catch
Setup: Look for a Neon Red Column (Overflow/Oversold).
Trigger: Wait for a Green "R" Label (Regular Bullish Divergence) or a Green Warning Dot.
Confirmation: Wait for the Hyper Wave line to turn green.
Strategy C: The Pullback (Continuation)
Context: The market is in a strong trend (Green Background).
Trigger: Price pulls back, but a Green "H" Label (Hidden Bullish Divergence) appears.
Action: Enter in the direction of the original trend.
Settings Configuration
The code includes tooltips for all inputs to assist with configuration.
Money Flow Length: Adjusts the sensitivity of the volume calculation. Lower numbers are faster but noisier; higher numbers are smoother.
Threshold Multiplier: Controls the "Neon" overflow bars. Increasing this (e.g., to 2.5 or 3.0) will result in fewer, more extreme signals.
Divergence Lookback: Determines how many candles back the script looks to identify pivots. Increase this number to find larger, macro divergences.
Disclaimer
This source code and the accompanying documentation are for educational and informational purposes only. They do not constitute financial, investment, or trading advice.
Bifurcation Zone - CAEBifurcation Zone — Cognitive Adversarial Engine (BZ-CAE)
Bifurcation Zone — CAE (BZ-CAE) is a next-generation divergence detection system enhanced by a Cognitive Adversarial Engine that evaluates both sides of every potential trade before presenting signals. Unlike traditional divergence indicators that show every price-oscillator disagreement regardless of context, BZ-CAE applies comprehensive market-state intelligence to identify only the divergences that occur in favorable conditions with genuine probability edges.
The system identifies structural bifurcation points — critical junctures where price and momentum disagree, signaling potential reversals or continuations — then validates these opportunities through five interconnected intelligence layers: Trend Conviction Scoring , Directional Momentum Alignment , Multi-Factor Exhaustion Modeling , Adversarial Validation , and Confidence Scoring . The result is a selective, context-aware signal system that filters noise and highlights high-probability setups.
This is not a "buy the arrow" indicator. It's a decision support framework that teaches you how to read market state, evaluate divergence quality, and make informed trading decisions based on quantified intelligence rather than hope.
What Sets BZ-CAE Apart: Technical Architecture
The Problem With Traditional Divergence Indicators
Most divergence indicators operate on a simple rule: if price makes a higher high and RSI makes a lower high, show a bearish signal. If price makes a lower low and RSI makes a higher low, show a bullish signal. This creates several critical problems:
Context Blindness : They show counter-trend signals in powerful trends that rarely reverse, leading to repeated losses as you fade momentum.
Signal Spam : Every minor price-oscillator disagreement generates an alert, overwhelming you with low-quality setups and creating analysis paralysis.
No Quality Ranking : All signals are treated identically. A marginal divergence in choppy conditions receives the same visual treatment as a high-conviction setup at a major exhaustion point.
Single-Sided Evaluation : They ask "Is this a good long?" without checking if the short case is overwhelmingly stronger, leading you into obvious bad trades.
Static Configuration : You manually choose RSI 14 or Stochastic 14 and hope it works, with no systematic way to validate if that's optimal for your instrument.
BZ-CAE's Solution: Cognitive Adversarial Intelligence
BZ-CAE solves these problems through an integrated five-layer intelligence architecture:
1. Trend Conviction Score (TCS) — 0 to 1 Scale
Most indicators check if ADX is above 25 to determine "trending" conditions. This binary approach misses nuance. TCS is a weighted composite metric:
Formula : 0.35 × normalize(ADX, 10, 35) + 0.35 × structural_strength + 0.30 × htf_alignment
Structural Strength : 10-bar SMA of consecutive directional bars. Captures persistence — are bulls or bears consistently winning?
HTF Alignment : Multi-timeframe EMA stacking (20/50/100/200). When all EMAs align in the same direction, you're in institutional trend territory.
Purpose : Quantifies how "locked in" the trend is. When TCS exceeds your threshold (default 0.80), the system knows to avoid counter-trend trades unless other factors override.
Interpretation :
TCS > 0.85: Very strong trend — counter-trading is extremely high risk
TCS 0.70-0.85: Strong trend — favor continuation, require exhaustion for reversals
TCS 0.50-0.70: Moderate trend — context matters, both directions viable
TCS < 0.50: Weak/choppy — reversals more viable, range-bound conditions
2. Directional Momentum Alignment (DMA) — ATR-Normalized
Formula : (EMA21 - EMA55) / ATR14
This isn't just "price above EMA" — it's a regime-aware momentum gauge. The same $100 price movement reads completely differently in high-volatility crypto versus low-volatility forex. By normalizing with ATR, DMA adapts its interpretation to current market conditions.
Purpose : Quantifies the directional "force" behind current price action. Positive = bullish push, negative = bearish push. Magnitude = strength.
Interpretation :
DMA > 0.7: Strong bullish momentum — bearish divergences risky
DMA 0.3 to 0.7: Moderate bullish bias
DMA -0.3 to 0.3: Balanced/choppy conditions
DMA -0.7 to -0.3: Moderate bearish bias
DMA < -0.7: Strong bearish momentum — bullish divergences risky
3. Multi-Factor Exhaustion Modeling — 0 to 1 Probability
Single-metric exhaustion detection (like "RSI > 80") misses complex market states. BZ-CAE aggregates five independent exhaustion signals:
Volume Spikes : Current volume versus 50-bar average
2.5x average: 0.25 weight
2.0x average: 0.15 weight
1.5x average: 0.10 weight
Divergence Present : The fact that a divergence exists contributes 0.30 weight — structural momentum disagreement is itself an exhaustion signal.
RSI Extremes : Captures oscillator climax zones
RSI > 80 or < 20: 0.25 weight
RSI > 75 or < 25: 0.15 weight
Pin Bar Detection : Identifies rejection candles (2:1 wick-to-body ratio, indicating failed breakout attempts): 0.15 weight
Extended Runs : Consecutive bars above/below EMA20 without pullback
30+ bars: 0.15 weight (market hasn't paused to consolidate)
Total exhaustion score is the sum of all applicable weights, capped at 1.0.
Purpose : Detects when strong trends become vulnerable to reversal. High exhaustion can override trend filters, allowing counter-trend trades at genuine turning points that basic indicators would miss.
Interpretation :
Exhaustion > 0.75: High probability of climax — yellow background shading alerts you visually
Exhaustion 0.50-0.75: Moderate overextension — watch for confirmation
Exhaustion < 0.50: Fresh move — trend can continue, counter-trend trades higher risk
4. Adversarial Validation — Game Theory Applied to Trading
This is BZ-CAE's signature innovation. Before approving any signal, the engine quantifies BOTH sides of the trade simultaneously:
For Bullish Divergences , it calculates:
Bull Case Score (0-1+) :
Distance below EMA20 (pullback quality): up to 0.25
Bullish EMA alignment (close > EMA20 > EMA50): 0.25
Oversold RSI (< 40): 0.25
Volume confirmation (> 1.2x average): 0.25
Bear Case Score (0-1+) :
Price below EMA50 (structural weakness): 0.30
Very oversold RSI (< 30, indicating knife-catching): 0.20
Differential = Bull Case - Bear Case
If differential < -0.10 (default threshold), the bear case is dominating — signal is BLOCKED or ANNOTATED.
For Bearish Divergences , the logic inverts (Bear Case vs Bull Case).
Purpose : Prevents trades where you're fighting obvious strength in the opposite direction. This is institutional-grade risk management — don't just evaluate your trade, evaluate the counter-trade simultaneously.
Why This Matters : You might see a bullish divergence at a local low, but if price is deeply below major support EMAs with strong bearish momentum, you're catching a falling knife. The adversarial check catches this and blocks the signal.
5. Confidence Scoring — 0 to 1 Quality Assessment
Every signal that passes initial filters receives a comprehensive quality score:
Formula :
0.30 × normalize(TCS) // Trend context
+ 0.25 × normalize(|DMA|) // Momentum magnitude
+ 0.20 × pullback_quality // Entry distance from EMA20
+ 0.15 × state_quality // ADX + alignment + structure
+ 0.10 × divergence_strength // Slope separation magnitude
+ adversarial_bonus (0-0.30) // Your side's advantage
Purpose : Ranks setup quality for filtering and position sizing decisions. You can set a minimum confidence threshold (default 0.35) to ensure only quality setups reach your chart.
Interpretation :
Confidence > 0.70: Premium setup — consider increased position size
Confidence 0.50-0.70: Good quality — standard size
Confidence 0.35-0.50: Acceptable — reduced size or skip if conservative
Confidence < 0.35: Marginal — blocked in Filtering mode, annotated in Advisory mode
CAE Operating Modes: Learning vs Enforcement
Off : Disables all CAE logic. Raw divergence pipeline only. Use for baseline comparison.
Advisory : Shows ALL signals regardless of CAE evaluation, but annotates signals that WOULD be blocked with specific warnings (e.g., "Bull: strong downtrend (TCS=0.87)" or "Adversarial bearish"). This is your learning mode — see CAE's decision logic in action without missing educational opportunities.
Filtering : Actively blocks low-quality signals. Only setups that pass all enabled gates (Trend Filter, Adversarial Validation, Confidence Gating) reach your chart. This is your live trading mode — trust the system to enforce discipline.
CAE Filter Gates: Three-Layer Protection
When CAE is enabled, signals must pass through three independent gates (each can be toggled on/off):
Gate 1: Strong Trend Filter
If TCS ≥ tcs_threshold (default 0.80)
And signal is counter-trend (bullish in downtrend or bearish in uptrend)
And exhaustion < exhaustion_required (default 0.50)
Then: BLOCK signal
Logic: Don't fade strong trends unless the move is clearly overextended
Gate 2: Adversarial Validation
Calculate both bull case and bear case scores
If opposing case dominates by more than adv_threshold (default 0.10)
Then: BLOCK signal
Logic: Avoid trades where you're fighting obvious strength in the opposite direction
Gate 3: Confidence Gating
Calculate composite confidence score (0-1)
If confidence < min_confidence (default 0.35)
Then: In Filtering mode, BLOCK signal; in Advisory mode, ANNOTATE with warning
Logic: Only take setups with minimum quality threshold
All three gates work together. A signal must pass ALL enabled gates to fire.
Visual Intelligence System
Bifurcation Zones (Supply/Demand Blocks)
When a divergence signal fires, BZ-CAE draws a semi-transparent box extending 15 bars forward from the signal pivot:
Demand Zones (Bullish) : Theme-colored box (cyan in Cyberpunk, blue in Professional, etc.) labeled "Demand" — marks where smart money likely placed buy orders as price diverged at the low.
Supply Zones (Bearish) : Theme-colored box (magenta in Cyberpunk, orange in Professional) labeled "Supply" — marks where smart money likely placed sell orders as price diverged at the high.
Theory : Divergences represent institutional disagreement with the crowd. The crowd pushed price to an extreme (new high or low), but momentum (oscillator) is waning, indicating smart money is taking the opposite side. These zones mark order placement areas that become future support/resistance.
Use Cases :
Exit targets: Take profit when price returns to opposite-side zone
Re-entry levels: If price returns to your entry zone, consider adding
Stop placement: Place stops just beyond your zone (below demand, above supply)
Auto-Cleanup : System keeps the last 20 zones to prevent chart clutter.
Adversarial Bar Coloring — Real-Time Market Debate Heatmap
Each bar is colored based on the Bull Case vs Bear Case differential:
Strong Bull Advantage (diff > 0.3): Full theme bull color (e.g., cyan)
Moderate Bull Advantage (diff > 0.1): 50% transparency bull
Neutral (diff -0.1 to 0.1): Gray/neutral theme
Moderate Bear Advantage (diff < -0.1): 50% transparency bear
Strong Bear Advantage (diff < -0.3): Full theme bear color (e.g., magenta)
This creates a real-time visual heatmap showing which side is "winning" the market debate. When bars flip from cyan to magenta (or vice versa), you're witnessing a shift in adversarial advantage — a leading indicator of potential momentum changes.
Exhaustion Shading
When exhaustion score exceeds 0.75, the chart background displays a semi-transparent yellow highlight. This immediate visual warning alerts you that the current move is at high risk of reversal, even if trend indicators remain strong.
Visual Themes — Six Aesthetic Options
Cyberpunk : Cyan/Magenta/Yellow — High contrast, neon aesthetic, excellent for dark-themed trading environments
Professional : Blue/Orange/Green — Corporate color palette, suitable for presentations and professional documentation
Ocean : Teal/Red/Cyan — Aquatic palette, calming for extended monitoring sessions
Fire : Orange/Red/Coral — Warm aggressive colors, high energy
Matrix : Green/Red/Lime — Code aesthetic, homage to classic hacker visuals
Monochrome : White/Gray — Minimal distraction, maximum focus on price action
All visual elements (signal markers, zones, bar colors, dashboard) adapt to your selected theme.
Divergence Engine — Core Detection System
What Are Divergences?
Divergences occur when price action and momentum indicators disagree, creating structural tension that often resolves in a change of direction:
Regular Divergence (Reversal Signal) :
Bearish Regular : Price makes higher high, oscillator makes lower high → Potential trend reversal down
Bullish Regular : Price makes lower low, oscillator makes higher low → Potential trend reversal up
Hidden Divergence (Continuation Signal) :
Bearish Hidden : Price makes lower high, oscillator makes higher high → Downtrend continuation
Bullish Hidden : Price makes higher low, oscillator makes lower low → Uptrend continuation
Both types can be enabled/disabled independently in settings.
Pivot Detection Methods
BZ-CAE uses symmetric pivot detection with separate lookback and lookforward periods (default 5/5):
Pivot High : Bar where high > all highs within lookback range AND high > all highs within lookforward range
Pivot Low : Bar where low < all lows within lookback range AND low < all lows within lookforward range
This ensures structural validity — the pivot must be a clear local extreme, not just a minor wiggle.
Divergence Validation Requirements
For a divergence to be confirmed, it must satisfy:
Slope Disagreement : Price slope and oscillator slope must move in opposite directions (for regular divs) or same direction with inverted highs/lows (for hidden divs)
Minimum Slope Change : |osc_slope| > min_slope_change / 100 (default 1.0) — filters weak, marginal divergences
Maximum Lookback Range : Pivots must be within max_lookback bars (default 60) — prevents ancient, irrelevant divergences
ATR-Normalized Strength : Divergence strength = min(|price_slope| × |osc_slope| × 10, 1.0) — quantifies the magnitude of disagreement in volatility context
Regular divergences receive 1.0× weight; hidden divergences receive 0.8× weight (slightly less reliable historically).
Oscillator Options — Five Professional Indicators
RSI (Relative Strength Index) : Classic overbought/oversold momentum indicator. Best for: General purpose divergence detection across all instruments.
Stochastic : Range-bound %K momentum comparing close to high-low range. Best for: Mean reversion strategies and range-bound markets.
CCI (Commodity Channel Index) : Measures deviation from statistical mean, auto-normalized to 0-100 scale. Best for: Cyclical instruments and commodities.
MFI (Money Flow Index) : Volume-weighted RSI incorporating money flow. Best for: Volume-driven markets like stocks and crypto.
Williams %R : Inverse stochastic looking back over period, auto-adjusted to 0-100. Best for: Reversal detection at extremes.
Each oscillator has adjustable length (2-200, default 14) and smoothing (1-20, default 1). You also set overbought (50-100, default 70) and oversold (0-50, default 30) thresholds.
Signal Timing Modes — Understanding Repainting
BZ-CAE offers two timing policies with complete transparency about repainting behavior:
Realtime (1-bar, peak-anchored)
How It Works :
Detects peaks 1 bar ago using pattern: high > high AND high > high
Signal prints on the NEXT bar after peak detection (bar_index)
Visual marker anchors to the actual PEAK bar (bar_index - 1, offset -1)
Signal locks in when bar CONFIRMS (closes)
Repainting Behavior :
On the FORMING bar (before close), the peak condition may change as new prices arrive
Once bar CLOSES (barstate.isconfirmed), signal is locked permanently
This is preview/early warning behavior by design
Best For :
Active monitoring and immediate alerts
Learning the system (seeing signals develop in real-time)
Responsive entry if you're watching the chart live
Confirmed (lookforward)
How It Works :
Uses Pine Script's built-in ta.pivothigh() and ta.pivotlow() functions
Requires full pivot validation period (lookback + lookforward bars)
Signal prints pivot_lookforward bars after the actual peak (default 5-bar delay)
Visual marker anchors to the actual peak bar (offset -pivot_lookforward)
No Repainting Behavior
Best For :
Backtesting and historical analysis
Conservative entries requiring full confirmation
Automated trading systems
Swing trading with larger timeframes
Tradeoff :
Delayed entry by pivot_lookforward bars (typically 5 bars)
On a 5-minute chart, this is a 25-minute delay
On a 4-hour chart, this is a 20-hour delay
Recommendation : Use Confirmed for backtesting to verify system performance honestly. Use Realtime for live monitoring only if you're actively watching the chart and understand pre-confirmation repainting behavior.
Signal Spacing System — Anti-Spam Architecture
Even after CAE filtering, raw divergences can cluster. The spacing system enforces separation:
Three Independent Filters
1. Min Bars Between ANY Signals (default 12):
Prevents rapid-fire clustering across both directions
If last signal (bull or bear) was within N bars, block new signal
Ensures breathing room between all setups
2. Min Bars Between SAME-SIDE Signals (default 24, optional enforcement):
Prevents bull-bull or bear-bear spam
Separate tracking for bullish and bearish signal timelines
Toggle enforcement on/off
3. Min ATR Distance From Last Signal (default 0, optional):
Requires price to move N × ATR from last signal location
Ensures meaningful price movement between setups
0 = disabled, 0.5-2.0 = typical range for enabled
All three filters work independently. A signal must pass ALL enabled filters to proceed.
Practical Guidance :
Scalping (1-5m) : Any 6-10, Same-side 12-20, ATR 0-0.5
Day Trading (15m-1H) : Any 12, Same-side 24, ATR 0-1.0
Swing Trading (4H-D) : Any 20-30, Same-side 40-60, ATR 1.0-2.0
Dashboard — Real-Time Control Center
The dashboard (toggleable, four corner positions, three sizes) provides comprehensive system intelligence:
Oscillator Section
Current oscillator type and value
State: OVERBOUGHT / OVERSOLD / NEUTRAL (color-coded)
Length parameter
Cognitive Engine Section
TCS (Trend Conviction Score) :
Current value with emoji state indicator
🔥 = Strong trend (>0.75)
📊 = Moderate trend (0.50-0.75)
〰️ = Weak/choppy (<0.50)
Color: Red if above threshold (trend filter active), yellow if moderate, green if weak
DMA (Directional Momentum Alignment) :
Current value with emoji direction indicator
🐂 = Bullish momentum (>0.5)
⚖️ = Balanced (-0.5 to 0.5)
🐻 = Bearish momentum (<-0.5)
Color: Green if bullish, red if bearish
Exhaustion :
Current value with emoji warning indicator
⚠️ = High exhaustion (>0.75)
🟡 = Moderate (0.50-0.75)
✓ = Low (<0.50)
Color: Red if high, yellow if moderate, green if low
Pullback :
Quality of current distance from EMA20
Values >0.6 are ideal entry zones (not too close, not too far)
Bull Case / Bear Case (if Adversarial enabled):
Current scores for both sides of the market debate
Differential with emoji indicator:
📈 = Bull advantage (>0.2)
➡️ = Balanced (-0.2 to 0.2)
📉 = Bear advantage (<-0.2)
Last Signal Metrics Section (New Feature)
When a signal fires, this section captures and displays:
Signal type (BULL or BEAR)
Bars elapsed since signal
Confidence % at time of signal
TCS value at signal time
DMA value at signal time
Purpose : Provides a historical reference for learning. You can see what the market state looked like when the last signal fired, helping you correlate outcomes with conditions.
Statistics Section
Total Signals : Lifetime count across session
Blocked Signals : Count and percentage (filter effectiveness metric)
Bull Signals : Total bullish divergences
Bear Signals : Total bearish divergences
Purpose : System health monitoring. If blocked % is very high (>60%), filters may be too strict. If very low (<10%), filters may be too loose.
Advisory Annotations
When CAE Mode = Advisory, this section displays warnings for signals that would be blocked in Filtering mode:
Examples:
"Bull spacing: wait 8 bars"
"Bear: strong uptrend (TCS=0.87)"
"Adversarial bearish"
"Low confidence 32%"
Multiple warnings can stack, separated by " | ". This teaches you CAE's decision logic transparently.
How to Use BZ-CAE — Complete Workflow
Phase 1: Initial Setup (First Session)
Apply BZ-CAE to your chart
Select your preferred Visual Theme (Cyberpunk recommended for visibility)
Set Signal Timing to "Confirmed (lookforward)" for learning
Choose your Oscillator Type (RSI recommended for general use, length 14)
Set Overbought/Oversold to 70/30 (standard)
Enable both Regular Divergence and Hidden Divergence
Set Pivot Lookback/Lookforward to 5/5 (balanced structure)
Enable CAE Intelligence
Set CAE Mode to "Advisory" (learning mode)
Enable all three CAE filters: Strong Trend Filter , Adversarial Validation , Confidence Gating
Enable Show Dashboard , position Top Right, size Normal
Enable Draw Bifurcation Zones and Adversarial Bar Coloring
Phase 2: Learning Period (Weeks 1-2)
Goal : Understand how CAE evaluates market state and filters signals.
Activities :
Watch the dashboard during signals :
Note TCS values when counter-trend signals fail — this teaches you the trend strength threshold for your instrument
Observe exhaustion patterns at actual turning points — learn when overextension truly matters
Study adversarial differential at signal times — see when opposing cases dominate
Review blocked signals (orange X-crosses):
In Advisory mode, you see everything — signals that would pass AND signals that would be blocked
Check the advisory annotations to understand why CAE would block
Track outcomes: Were the blocks correct? Did those signals fail?
Use Last Signal Metrics :
After each signal, check the dashboard capture of confidence, TCS, and DMA
Journal these values alongside trade outcomes
Identify patterns: Do confidence >0.70 signals work better? Does your instrument respect TCS >0.85?
Understand your instrument's "personality" :
Trending instruments (indices, major forex) may need TCS threshold 0.85-0.90
Choppy instruments (low-cap stocks, exotic pairs) may work best with TCS 0.70-0.75
High-volatility instruments (crypto) may need wider spacing
Low-volatility instruments may need tighter spacing
Phase 3: Calibration (Weeks 3-4)
Goal : Optimize settings for your specific instrument, timeframe, and style.
Calibration Checklist :
Min Confidence Threshold :
Review confidence distribution in your signal journal
Identify the confidence level below which signals consistently fail
Set min_confidence slightly above that level
Day trading : 0.35-0.45
Swing trading : 0.40-0.55
Scalping : 0.30-0.40
TCS Threshold :
Find the TCS level where counter-trend signals consistently get stopped out
Set tcs_threshold at or slightly below that level
Trending instruments : 0.85-0.90
Mixed instruments : 0.80-0.85
Choppy instruments : 0.75-0.80
Exhaustion Override Level :
Identify exhaustion readings that marked genuine reversals
Set exhaustion_required just below the average
Typical range : 0.45-0.55
Adversarial Threshold :
Default 0.10 works for most instruments
If you find CAE is too conservative (blocking good trades), raise to 0.15-0.20
If signals are still getting caught in opposing momentum, lower to 0.07-0.09
Spacing Parameters :
Count bars between quality signals in your journal
Set min bars ANY to ~60% of that average
Set min bars SAME-SIDE to ~120% of that average
Scalping : Any 6-10, Same 12-20
Day trading : Any 12, Same 24
Swing : Any 20-30, Same 40-60
Oscillator Selection :
Try different oscillators for 1-2 weeks each
Track win rate and average winner/loser by oscillator type
RSI : Best for general use, clear OB/OS
Stochastic : Best for range-bound, mean reversion
MFI : Best for volume-driven markets
CCI : Best for cyclical instruments
Williams %R : Best for reversal detection
Phase 4: Live Deployment
Goal : Disciplined execution with proven, calibrated system.
Settings Changes :
Switch CAE Mode from Advisory to Filtering
System now actively blocks low-quality signals
Only setups passing all gates reach your chart
Keep Signal Timing on Confirmed for conservative entries
OR switch to Realtime if you're actively monitoring and want faster entries (accept pre-confirmation repaint risk)
Use your calibrated thresholds from Phase 3
Enable high-confidence alerts: "⭐ High Confidence Bullish/Bearish" (>0.70)
Trading Discipline Rules :
Respect Blocked Signals :
If CAE blocks a trade you wanted to take, TRUST THE SYSTEM
Don't manually override — if you consistently disagree, return to Phase 2/3 calibration
The block exists because market state failed intelligence checks
Confidence-Based Position Sizing :
Confidence >0.70: Standard or increased size (e.g., 1.5-2.0% risk)
Confidence 0.50-0.70: Standard size (e.g., 1.0% risk)
Confidence 0.35-0.50: Reduced size (e.g., 0.5% risk) or skip if conservative
TCS-Based Management :
High TCS + counter-trend signal: Use tight stops, quick exits (you're fading momentum)
Low TCS + reversal signal: Use wider stops, trail aggressively (genuine reversal potential)
Exhaustion Awareness :
Exhaustion >0.75 (yellow shading): Market is overextended, reversal risk is elevated — consider early exit or tighter trailing stops even on winning trades
Exhaustion <0.30: Continuation bias — hold for larger move, wide trailing stops
Adversarial Context :
Strong differential against you (e.g., bullish signal with bear diff <-0.2): Use very tight stops, consider skipping
Strong differential with you (e.g., bullish signal with bull diff >0.2): Trail aggressively, this is your tailwind
Practical Settings by Timeframe & Style
Scalping (1-5 Minute Charts)
Objective : High frequency, tight stops, quick reversals in fast-moving markets.
Oscillator :
Type: RSI or Stochastic (fast response to quick moves)
Length: 9-11 (more responsive than standard 14)
Smoothing: 1 (no lag)
OB/OS: 65/35 (looser thresholds ensure frequent crossings in fast conditions)
Divergence :
Pivot Lookback/Lookforward: 3/3 (tight structure, catch small swings)
Max Lookback: 40-50 bars (recent structure only)
Min Slope Change: 0.8-1.0 (don't be overly strict)
CAE :
Mode: Advisory first (learn), then Filtering
Min Confidence: 0.30-0.35 (lower bar for speed, accept more signals)
TCS Threshold: 0.70-0.75 (allow more counter-trend opportunities)
Exhaustion Required: 0.45-0.50 (moderate override)
Strong Trend Filter: ON (still respect major intraday trends)
Adversarial: ON (critical for scalping protection — catches bad entries quickly)
Spacing :
Min Bars ANY: 6-10 (fast pace, many setups)
Min Bars SAME-SIDE: 12-20 (prevent clustering)
Min ATR Distance: 0 or 0.5 (loose)
Timing : Realtime (speed over precision, but understand repaint risk)
Visuals :
Signal Size: Tiny (chart clarity in busy conditions)
Show Zones: Optional (can clutter on low timeframes)
Bar Coloring: ON (helps read momentum shifts quickly)
Dashboard: Small size (corner reference, not main focus)
Key Consideration : Scalping generates noise. Even with CAE, expect lower win rate (45-55%) but aim for favorable R:R (2:1 or better). Size conservatively.
Day Trading (15-Minute to 1-Hour Charts)
Objective : Balance quality and frequency. Standard divergence trading approach.
Oscillator :
Type: RSI or MFI (proven reliability, volume confirmation with MFI)
Length: 14 (industry standard, well-studied)
Smoothing: 1-2
OB/OS: 70/30 (classic levels)
Divergence :
Pivot Lookback/Lookforward: 5/5 (balanced structure)
Max Lookback: 60 bars
Min Slope Change: 1.0 (standard strictness)
CAE :
Mode: Filtering (enforce discipline from the start after brief Advisory learning)
Min Confidence: 0.35-0.45 (quality filter without being too restrictive)
TCS Threshold: 0.80-0.85 (respect strong trends)
Exhaustion Required: 0.50 (balanced override threshold)
Strong Trend Filter: ON
Adversarial: ON
Confidence Gating: ON (all three filters active)
Spacing :
Min Bars ANY: 12 (breathing room between all setups)
Min Bars SAME-SIDE: 24 (prevent bull/bear clusters)
Min ATR Distance: 0-1.0 (optional refinement, typically 0.5-1.0)
Timing : Confirmed (1-bar delay for reliability, no repainting)
Visuals :
Signal Size: Tiny or Small
Show Zones: ON (useful reference for exits/re-entries)
Bar Coloring: ON (context awareness)
Dashboard: Normal size (full visibility)
Key Consideration : This is the "sweet spot" timeframe for BZ-CAE. Market structure is clear, CAE has sufficient data, and signal frequency is manageable. Expect 55-65% win rate with proper execution.
Swing Trading (4-Hour to Daily Charts)
Objective : Quality over quantity. High conviction only. Larger stops and targets.
Oscillator :
Type: RSI or CCI (robust on higher timeframes, smooth longer waves)
Length: 14-21 (capture larger momentum swings)
Smoothing: 1-3
OB/OS: 70/30 or 75/25 (strict extremes)
Divergence :
Pivot Lookback/Lookforward: 5/5 or 7/7 (structural purity, major swings only)
Max Lookback: 80-100 bars (broader historical context)
Min Slope Change: 1.2-1.5 (require strong, undeniable divergence)
CAE :
Mode: Filtering (strict enforcement, premium setups only)
Min Confidence: 0.40-0.55 (high bar for entry)
TCS Threshold: 0.85-0.95 (very strong trend protection — don't fade established HTF trends)
Exhaustion Required: 0.50-0.60 (higher bar for override — only extreme exhaustion justifies counter-trend)
Strong Trend Filter: ON (critical on HTF)
Adversarial: ON (avoid obvious bad trades)
Confidence Gating: ON (quality gate essential)
Spacing :
Min Bars ANY: 20-30 (substantial separation)
Min Bars SAME-SIDE: 40-60 (significant breathing room)
Min ATR Distance: 1.0-2.0 (require meaningful price movement)
Timing : Confirmed (purity over speed, zero repaint for swing accuracy)
Visuals :
Signal Size: Small or Normal (clear markers on zoomed-out view)
Show Zones: ON (important HTF levels)
Bar Coloring: ON (long-term trend awareness)
Dashboard: Normal or Large (comprehensive analysis)
Key Consideration : Swing signals are rare but powerful. Expect 2-5 signals per month per instrument. Win rate should be 60-70%+ due to stringent filtering. Position size can be larger given confidence.
Dashboard Interpretation Reference
TCS (Trend Conviction Score) States
0.00-0.50: Weak/Choppy
Emoji: 〰️
Color: Green/cyan
Meaning: No established trend. Range-bound or consolidating. Both reversal and continuation signals viable.
Action: Reversals (regular divs) are safer. Use wider profit targets (market has room to move). Consider mean reversion strategies.
0.50-0.75: Moderate Trend
Emoji: 📊
Color: Yellow/neutral
Meaning: Developing trend but not locked in. Context matters significantly.
Action: Check DMA and exhaustion. If DMA confirms trend and exhaustion is low, favor continuation (hidden divs). If exhaustion is high, reversals are viable.
0.75-0.85: Strong Trend
Emoji: 🔥
Color: Orange/warning
Meaning: Well-established trend with persistence. Counter-trend is high risk.
Action: Require exhaustion >0.50 for counter-trend entries. Favor continuation signals. Use tight stops on counter-trend attempts.
0.85-1.00: Very Strong Trend
Emoji: 🔥🔥
Color: Red/danger (if counter-trading)
Meaning: Locked-in institutional trend. Extremely high risk to fade.
Action: Avoid counter-trend unless exhaustion >0.75 (yellow shading). Focus exclusively on continuation opportunities. Momentum is king here.
DMA (Directional Momentum Alignment) Zones
-2.0 to -1.0: Strong Bearish Momentum
Emoji: 🐻🐻
Color: Dark red
Meaning: Powerful downside force. Sellers are in control.
Action: Bullish divergences are counter-momentum (high risk). Bearish divergences are with-momentum (lower risk). Size down on longs.
-0.5 to 0.5: Neutral/Balanced
Emoji: ⚖️
Color: Gray/neutral
Meaning: No strong directional bias. Choppy or consolidating.
Action: Both directions have similar probability. Focus on confidence score and adversarial differential for edge.
1.0 to 2.0: Strong Bullish Momentum
Emoji: 🐂🐂
Color: Bright green/cyan
Meaning: Powerful upside force. Buyers are in control.
Action: Bearish divergences are counter-momentum (high risk). Bullish divergences are with-momentum (lower risk). Size down on shorts.
Exhaustion States
0.00-0.50: Fresh Move
Emoji: ✓
Color: Green
Meaning: Trend is healthy, not overextended. Room to run.
Action: Counter-trend trades are premature. Favor continuation. Hold winners for larger moves. Avoid early exits.
0.50-0.75: Mature Move
Emoji: 🟡
Color: Yellow
Meaning: Move is aging. Watch for signs of climax.
Action: Tighten trailing stops on winning trades. Be ready for reversals. Don't add to positions aggressively.
0.75-0.85: High Exhaustion
Emoji: ⚠️
Color: Orange
Background: Yellow shading appears
Meaning: Move is overextended. Reversal risk elevated significantly.
Action: Counter-trend reversals are higher probability. Consider early exits on with-trend positions. Size up on reversal divergences (if CAE allows).
0.85-1.00: Critical Exhaustion
Emoji: ⚠️⚠️
Color: Red
Background: Yellow shading intensifies
Meaning: Climax conditions. Reversal imminent or underway.
Action: Aggressive reversal trades justified. Exit all with-trend positions. This is where major turns occur.
Confidence Score Tiers
0.00-0.30: Low Quality
Color: Red
Status: Blocked in Filtering mode
Action: Skip entirely. Setup lacks fundamental quality across multiple factors.
0.30-0.50: Moderate Quality
Color: Yellow/orange
Status: Marginal — passes in Filtering only if >min_confidence
Action: Reduced position size (0.5-0.75% risk). Tight stops. Conservative profit targets. Skip if you're selective.
0.50-0.70: High Quality
Color: Green/cyan
Status: Good setup across most quality factors
Action: Standard position size (1.0-1.5% risk). Normal stops and targets. This is your bread-and-butter trade.
0.70-1.00: Premium Quality
Color: Bright green/gold
Status: Exceptional setup — all factors aligned
Visual: Double confidence ring appears
Action: Consider increased position size (1.5-2.0% risk, maximum). Wider stops. Larger targets. High probability of success. These are rare — capitalize when they appear.
Adversarial Differential Interpretation
Bull Differential > 0.3 :
Visual: Strong cyan/green bar colors
Meaning: Bull case strongly dominates. Buyers have clear advantage.
Action: Bullish divergences favored (with-advantage). Bearish divergences face headwind (reduce size or skip). Momentum is bullish.
Bull Differential 0.1 to 0.3 :
Visual: Moderate cyan/green transparency
Meaning: Moderate bull advantage. Buyers have edge but not overwhelming.
Action: Both directions viable. Slight bias toward longs.
Differential -0.1 to 0.1 :
Visual: Gray/neutral bars
Meaning: Balanced debate. No clear advantage either side.
Action: Rely on other factors (confidence, TCS, exhaustion) for direction. Adversarial is neutral.
Bear Differential -0.3 to -0.1 :
Visual: Moderate red/magenta transparency
Meaning: Moderate bear advantage. Sellers have edge but not overwhelming.
Action: Both directions viable. Slight bias toward shorts.
Bear Differential < -0.3 :
Visual: Strong red/magenta bar colors
Meaning: Bear case strongly dominates. Sellers have clear advantage.
Action: Bearish divergences favored (with-advantage). Bullish divergences face headwind (reduce size or skip). Momentum is bearish.
Last Signal Metrics — Post-Trade Analysis
After a signal fires, dashboard captures:
Type : BULL or BEAR
Bars Ago : How long since signal (updates every bar)
Confidence : What was the quality score at signal time
TCS : What was trend conviction at signal time
DMA : What was momentum alignment at signal time
Use Case : Post-trade journaling and learning.
Example: "BULL signal 12 bars ago. Confidence: 68%, TCS: 0.42, DMA: -0.85"
Analysis : This was a bullish reversal (regular div) with good confidence, weak trend (TCS), but strong bearish momentum (DMA). The bet was that momentum would reverse — a counter-momentum play requiring exhaustion confirmation. Check if exhaustion was high at that time to justify the entry.
Track patterns:
Do your best trades have confidence >0.65?
Do low-TCS signals (<0.50) work better for you?
Are you more successful with-momentum (DMA aligned with signal) or counter-momentum?
Troubleshooting Guide
Problem: No Signals Appearing
Symptoms : Chart loads, dashboard shows metrics, but no divergence signals fire.
Diagnosis Checklist :
Check dashboard oscillator value : Is it crossing OB/OS levels (70/30)? If oscillator stays in 40-60 range constantly, it can't reach extremes needed for divergence detection.
Are pivots forming? : Look for local swing highs/lows on your chart. If price is in tight consolidation, pivots may not meet lookback/lookforward requirements.
Is spacing too tight? : Check "Last Signal" metrics — how many bars since last signal? If <12 and your min_bars_ANY is 12, spacing filter is blocking.
Is CAE blocking everything? : Check dashboard Statistics section — what's the blocked signal count? High blocks indicate overly strict filters.
Solutions :
Loosen OB/OS Temporarily :
Try 65/35 to verify divergence detection works
If signals appear, the issue was threshold strictness
Gradually tighten back to 67/33, then 70/30 as appropriate
Lower Min Confidence :
Try 0.25-0.30 (diagnostic level)
If signals appear, filter was too strict
Raise gradually to find sweet spot (0.35-0.45 typical)
Disable Strong Trend Filter Temporarily :
Turn off in CAE settings
If signals appear, TCS threshold was blocking everything
Re-enable and lower TCS_threshold to 0.70-0.75
Reduce Min Slope Change :
Try 0.7-0.8 (from default 1.0)
Allows weaker divergences through
Helpful on low-volatility instruments
Widen Spacing :
Set min_bars_ANY to 6-8
Set min_bars_SAME_SIDE to 12-16
Reduces time between allowed signals
Check Timing Mode :
If using Confirmed, remember there's a pivot_lookforward delay (5+ bars)
Switch to Realtime temporarily to verify system is working
Realtime has no delay but repaints
Verify Oscillator Settings :
Length 14 is standard but might not fit all instruments
Try length 9-11 for faster response
Try length 18-21 for slower, smoother response
Problem: Too Many Signals (Signal Spam)
Symptoms : Dashboard shows 50+ signals in Statistics, confidence scores mostly <0.40, signals clustering close together.
Solutions :
Raise Min Confidence :
Try 0.40-0.50 (quality filter)
Blocks bottom-tier setups
Targets top 50-60% of divergences only
Tighten OB/OS :
Use 70/30 or 75/25
Requires more extreme oscillator readings
Reduces false divergences in mid-range
Increase Min Slope Change :
Try 1.2-1.5 (from default 1.0)
Requires stronger, more obvious divergences
Filters marginal slope disagreements
Raise TCS Threshold :
Try 0.85-0.90 (from default 0.80)
Stricter trend filter blocks more counter-trend attempts
Favors only strongest trend alignment
Enable ALL CAE Gates :
Turn on Trend Filter + Adversarial + Confidence
Triple-layer protection
Blocks aggressively — expect 20-40% reduction in signals
Widen Spacing :
min_bars_ANY: 15-20 (from 12)
min_bars_SAME_SIDE: 30-40 (from 24)
Creates substantial breathing room
Switch to Confirmed Timing :
Removes realtime preview noise
Ensures full pivot validation
5-bar delay filters many false starts
Problem: Signals in Strong Trends Get Stopped Out
Symptoms : You take a bullish divergence in a downtrend (or bearish in uptrend), and it immediately fails. Dashboard showed high TCS at the time.
Analysis : This is INTENDED behavior — CAE is protecting you from low-probability counter-trend trades.
Understanding :
Check Last Signal Metrics in dashboard — what was TCS when signal fired?
If TCS was >0.85 and signal was counter-trend, CAE correctly identified it as high risk
Strong trends rarely reverse cleanly without major exhaustion
Your losses here are the system working as designed (blocking bad odds)
If You Want to Override (Not Recommended) :
Lower TCS_threshold to 0.70-0.75 (allows more counter-trend)
Lower exhaustion_required to 0.40 (easier override)
Disable Strong Trend Filter entirely (very risky)
Better Approach :
TRUST THE FILTER — it's preventing costly mistakes
Wait for exhaustion >0.75 (yellow shading) before counter-trending strong TCS
Focus on continuation signals (hidden divs) in high-TCS environments
Use Advisory mode to see what CAE is blocking and learn from outcomes
Problem: Adversarial Blocking Seems Wrong
Symptoms : You see a divergence that "looks good" visually, but CAE blocks with "Adversarial bearish/bullish" warning.
Diagnosis :
Check dashboard Bull Case and Bear Case scores at that moment
Look at Differential value
Check adversarial bar colors — was there strong coloring against your intended direction?
Understanding :
Adversarial catches "obvious" opposing momentum that's easy to miss
Example: Bullish divergence at a local low, BUT price is deeply below EMA50, bearish momentum is strong, and RSI shows knife-catching conditions
Bull Case might be 0.20 while Bear Case is 0.55
Differential = -0.35, far beyond threshold
Block is CORRECT — you'd be fighting overwhelming opposing flow
If You Disagree Consistently
Review blocked signals on chart — scroll back and check outcomes
Did those blocked signals actually work, or did they fail as adversarial predicted?
Raise adv_threshold to 0.15-0.20 (more permissive, allows closer battles)
Disable Adversarial Validation temporarily (diagnostic) to isolate its effect
Use Advisory mode to learn adversarial patterns over 50-100 signals
Remember : Adversarial is conservative BY DESIGN. It prevents "obvious" bad trades where you're fighting strong strength the other way.
Problem: Dashboard Not Showing or Incomplete
Solutions :
Toggle "Show Dashboard" to ON in settings
Try different dashboard sizes (Small/Normal/Large)
Try different positions (Top Left/Right, Bottom Left/Right) — might be off-screen
Some sections require CAE Enable = ON (Cognitive Engine section won't appear if CAE is disabled)
Statistics section requires at least 1 lifetime signal to populate
Check that visual theme is set (dashboard colors adapt to theme)
Problem: Performance Lag, Chart Freezing
Symptoms : Chart loading is slow, indicator calculations cause delays, pinch-to-zoom lags.
Diagnosis : Visual features are computationally expensive, especially adversarial bar coloring (recalculates every bar).
Solutions (In Order of Impact) :
Disable Adversarial Bar Coloring (MOST EXPENSIVE):
Turn OFF "Adversarial Bar Coloring" in settings
This is the single biggest performance drain
Immediate improvement
Reduce Vertical Lines :
Lower "Keep last N vertical lines" to 20-30
Or set to 0 to disable entirely
Moderate improvement
Disable Bifurcation Zones :
Turn OFF "Draw Bifurcation Zones"
Reduces box drawing calculations
Moderate improvement
Set Dashboard Size to Small :
Smaller dashboard = fewer cells = less rendering
Minor improvement
Use Shorter Max Lookback :
Reduce max_lookback to 40-50 (from 60+)
Fewer bars to scan for divergences
Minor improvement
Disable Exhaustion Shading :
Turn OFF "Show Market State"
Removes background coloring calculations
Minor improvement
Extreme Performance Mode :
Disable ALL visual enhancements
Keep only triangle markers
Dashboard Small or OFF
Use Minimal theme if available
Problem: Realtime Signals Repainting
Symptoms : You see a signal appear, but on next bar it disappears or moves.
Explanation :
Realtime mode detects peaks 1 bar ago: high > high AND high > high
On the FORMING bar (before close), this condition can change as new prices arrive
Example: At 10:05, high (10:04 bar) was 100, current high is 99 → peak detected
At 10:05:30, new high of 101 arrives → peak condition breaks → signal disappears
At 10:06 (bar close), final high is 101 → no peak at 10:04 anymore → signal gone permanently
This is expected behavior for realtime responsiveness. You get preview/early warning, but it's not locked until bar confirms.
Solutions :
Use Confirmed Timing :
Switch to "Confirmed (lookforward)" mode
ZERO repainting — pivot must be fully validated
5-bar delay (pivot_lookforward)
What you see in history is exactly what would have appeared live
Accept Realtime Repaint as Tradeoff :
Keep Realtime mode for speed and alerts
Understand that pre-confirmation signals may vanish
Only trade signals that CONFIRM at bar close (check barstate.isconfirmed)
Use for live monitoring, NOT for backtesting
Trade Only After Confirmation :
In Realtime mode, wait 1 full bar after signal appears before entering
If signal survives that bar close, it's locked
This adds 1-bar delay but removes repaint risk
Recommendation : Use Confirmed for backtesting and conservative trading. Use Realtime only for active monitoring with full understanding of preview behavior.
Risk Management Integration
BZ-CAE is a signal generation system, not a complete trading strategy. You must integrate proper risk management:
Position Sizing by Confidence
Confidence 0.70-1.00 (Premium) :
Risk: 1.5-2.0% of account (MAXIMUM)
Reasoning: High-quality setup across all factors
Still cap at 2% — even premium setups can fail
Confidence 0.50-0.70 (High Quality) :
Risk: 1.0-1.5% of account
Reasoning: Standard good setup
Your bread-and-butter risk level
Confidence 0.35-0.50 (Moderate Quality) :
Risk: 0.5-1.0% of account
Reasoning: Marginal setup, passes minimum threshold
Reduce size or skip if you're selective
Confidence <0.35 (Low Quality) :
Risk: 0% (blocked in Filtering mode)
Reasoning: Insufficient quality factors
System protects you by not showing these
Stop Placement Strategies
For Reversal Signals (Regular Divergences) :
Place stop beyond the divergence pivot plus buffer
Bullish : Stop below the divergence low - 1.0-1.5 × ATR
Bearish : Stop above the divergence high + 1.0-1.5 × ATR
Reasoning: If price breaks the pivot, divergence structure is invalidated
For Continuation Signals (Hidden Divergences) :
Place stop beyond recent swing in opposite direction
Bullish continuation : Stop below recent swing low (not the divergence pivot itself)
Bearish continuation : Stop above recent swing high
Reasoning: You're trading with trend, allow more breathing room
ATR-Based Stops :
1.5-2.0 × ATR is standard
Scale by timeframe:
Scalping (1-5m): 1.0-1.5 × ATR (tight)
Day trading (15m-1H): 1.5-2.0 × ATR (balanced)
Swing (4H-D): 2.0-3.0 × ATR (wide)
Never Use Fixed Dollar/Pip Stops :
Markets have different volatility
50-pip stop on EUR/USD ≠ 50-pip stop on GBP/JPY
Always normalize by ATR or pivot structure
Profit Targets and Scaling
Primary Target :
2-3 × ATR from entry (minimum 2:1 reward-risk)
Example : Entry at 100, ATR = 2, stop at 97 (1.5 × ATR) → target at 106 (3 × ATR) = 2:1 R:R
Scaling Out Strategy :
Take 50% off at 1.5 × ATR (secure partial profit)
Move stop to breakeven
Trail remaining 50% with 1.0 × ATR trailing stop
Let winners run if trend persists
Targets by Confidence :
High Confidence (>0.70) : Aggressive targets (3-4 × ATR), trail wider (1.5 × ATR)
Standard Confidence (0.50-0.70) : Normal targets (2-3 × ATR), standard trail (1.0 × ATR)
Low Confidence (0.35-0.50) : Conservative targets (1.5-2 × ATR), tight trail (0.75 × ATR)
Use Bifurcation Zones :
If opposite-side zone is visible on chart (from previous signal), use it as target
Example : Bullish signal at 100, prior supply zone at 110 → use 110 as target
Zones mark institutional resistance/support
Exhaustion-Based Exits :
If you're in a trade and exhaustion >0.75 develops (yellow shading), consider early exit
Market is overextended — reversal risk is high
Take profit even if target not reached
Trade Management by TCS
High TCS + Counter-Trend Trade (Risky) :
Use very tight stops (1.0-1.5 × ATR)
Conservative targets (1.5-2 × ATR)
Quick exit if trade doesn't work immediately
You're fading momentum — respect it
Low TCS + Reversal Trade (Safer) :
Use wider stops (2.0-2.5 × ATR)
Aggressive targets (3-4 × ATR)
Trail with patience
Genuine reversal potential in weak trend
High TCS + Continuation Trade (Safest) :
Standard stops (1.5-2.0 × ATR)
Very aggressive targets (4-5 × ATR)
Trail wide (1.5-2.0 × ATR)
You're with institutional momentum — let it run
Educational Value — Learning Machine Intelligence
BZ-CAE is designed as a learning platform, not just a tool:
Advisory Mode as Teacher
Most indicators are binary: signal or no signal. You don't learn WHY certain setups are better.
BZ-CAE's Advisory mode shows you EVERY potential divergence, then annotates the ones that would be blocked in Filtering mode with specific reasons:
"Bull: strong downtrend (TCS=0.87)" teaches you that TCS >0.85 makes counter-trend very risky
"Adversarial bearish" teaches you that the opposing case was dominating
"Low confidence 32%" teaches you that the setup lacked quality across multiple factors
"Bull spacing: wait 8 bars" teaches you that signals need breathing room
After 50-100 signals in Advisory mode, you internalize the CAE's decision logic. You start seeing these factors yourself BEFORE the indicator does.
Dashboard Transparency
Most "intelligent" indicators are black boxes — you don't know how they make decisions.
BZ-CAE shows you ALL metrics in real-time:
TCS tells you trend strength
DMA tells you momentum alignment
Exhaustion tells you overextension
Adversarial shows both sides of the debate
Confidence shows composite quality
You learn to interpret market state holistically, a skill applicable to ANY trading system beyond this indicator.
Divergence Quality Education
Not all divergences are equal. BZ-CAE teaches you which conditions produce high-probability setups:
Quality divergence : Regular bullish div at a low, TCS <0.50 (weak trend), exhaustion >0.75 (overextended), positive adversarial differential, confidence >0.70
Low-quality divergence : Regular bearish div at a high, TCS >0.85 (strong uptrend), exhaustion <0.30 (not overextended), negative adversarial differential, confidence <0.40
After using the system, you can evaluate divergences manually with similar intelligence.
Risk Management Discipline
Confidence-based position sizing teaches you to adjust risk based on setup quality, not emotions:
Beginners often size all trades identically
Or worse, size UP on marginal setups to "make up" for losses
BZ-CAE forces systematic sizing: premium setups get larger size, marginal setups get smaller size
This creates a probabilistic approach where your edge compounds over time.
What This Indicator Is NOT
Complete transparency about limitations and positioning:
Not a Prediction System
BZ-CAE does not predict future prices. It identifies structural divergences (price-momentum disagreements) and assesses current market state (trend, exhaustion, adversarial conditions). It tells you WHEN conditions favor a potential reversal or continuation, not WHAT WILL HAPPEN.
Markets are probabilistic. Even premium-confidence setups fail ~30-40% of the time. The system improves your probability distribution over many trades — it doesn't eliminate risk.
Not Fully Automated
This is a decision support tool, not a trading robot. You must:
Execute trades manually based on signals
Manage positions (stops, targets, trailing)
Apply discretionary judgment (news events, liquidity, context)
Integrate with your broader strategy and risk rules
The confidence scores guide position sizing, but YOU determine final risk allocation based on your account size, risk tolerance, and portfolio context.
Not Beginner-Friendly
BZ-CAE requires understanding of:
Divergence trading concepts (regular vs hidden, reversal vs continuation)
Market state interpretation (trend vs range, momentum, exhaustion)
Basic technical analysis (pivots, support/resistance, EMAs)
Risk management fundamentals (position sizing, stops, R:R)
This is designed for intermediate to advanced traders willing to invest time learning the system. If you want "buy the arrow" simplicity, this isn't the tool.
Not a Holy Grail
There is no perfect indicator. BZ-CAE filters noise and improves signal quality significantly, but:
Losing trades are inevitable (even at 70% win rate, 30% still fail)
Market conditions change rapidly (yesterday's strong trend becomes today's chop)
Black swan events occur (fundamentals override technicals)
Execution matters (slippage, fees, emotional discipline)
The system provides an EDGE, not a guarantee. Your job is to execute that edge consistently with proper risk management over hundreds of trades.
Not Financial Advice
BZ-CAE is an educational and analytical tool. All trading decisions are your responsibility. Past performance (backtested or live) does not guarantee future results. Only risk capital you can afford to lose. Consult a licensed financial advisor for investment advice specific to your situation.
Ideal Market Conditions
Best Performance Characteristics
Liquid Instruments :
Major forex pairs (EUR/USD, GBP/USD, USD/JPY)
Large-cap stocks and index ETFs (SPY, QQQ, AAPL, MSFT)
High-volume crypto (BTC, ETH)
Major commodities (Gold, Oil, Natural Gas)
Reasoning: Clean price structure, clear pivots, meaningful oscillator behavior
Trending with Consolidations :
Markets that trend for 20-40 bars, then consolidate 10-20 bars, repeat
Creates divergences at consolidation boundaries (reversals) and within trends (continuations)
Both regular and hidden divs find opportunities
5-Minute to Daily Timeframes :
Below 5m: too much noise, false pivots, CAE metrics unstable
Above daily: too few signals, edge diminishes (fundamentals dominate)
Sweet spot: 15m to 4H for most traders
Consistent Volume and Participation :
Regular trading sessions (not holidays or thin markets)
Predictable volatility patterns
Avoid instruments with sudden gaps or circuit breakers
Challenging Conditions
Extremely Low Liquidity :
Penny stocks, exotic forex pairs, low-volume crypto
Erratic pivots, unreliable oscillator readings
CAE metrics can't assess market state properly
Very Low Timeframes (1-Minute or Below) :
Dominated by market microstructure noise
Divergences are everywhere but meaningless
CAE filtering helps but still unreliable
Extended Sideways Consolidation :
100+ bars of tight range with no clear pivots
Oscillator hugs midpoint (45-55 range)
No divergences to detect
Fundamentally-Driven Gap Markets :
Earnings releases, economic data, geopolitical events
Price gaps over stops and targets
Technical structure breaks down
Recommendation: Disable trading around known events
Calculation Methodology — Technical Depth
For users who want to understand the math:
Oscillator Computation
Each oscillator type calculates differently, but all normalize to 0-100:
RSI : ta.rsi(close, length) — Standard Relative Strength Index
Stochastic : ta.stoch(high, low, close, length) — %K calculation
CCI : (ta.cci(hlc3, length) + 100) / 2 — Normalized from -100/+100 to 0-100
MFI : ta.mfi(hlc3, length) — Volume-weighted RSI equivalent
Williams %R : ta.wpr(length) + 100 — Inverted stochastic adjusted to 0-100
Smoothing: If smoothing > 1, apply ta.sma(oscillator, smoothing)
Divergence Detection Algorithm
Identify Pivots :
Price high pivot: ta.pivothigh(high, lookback, lookforward)
Price low pivot: ta.pivotlow(low, lookback, lookforward)
Oscillator high pivot: ta.pivothigh(osc, lookback, lookforward)
Oscillator low pivot: ta.pivotlow(osc, lookback, lookforward)
Store Recent Pivots :
Maintain arrays of last 10 pivots with bar indices
When new pivot confirmed, unshift to array, pop oldest if >10
Scan for Slope Disagreements :
Loop through last 5 pivots
For each pair (current pivot, historical pivot):
Check if within max_lookback bars
Calculate slopes: (current - historical) / bars_between
Regular bearish: price_slope > 0, osc_slope < 0, |osc_slope| > min_threshold
Regular bullish: price_slope < 0, osc_slope > 0, |osc_slope| > min_threshold
Hidden bearish: price_slope < 0, osc_slope > 0, osc_slope > min_threshold
Hidden bullish: price_slope > 0, osc_slope < 0, |osc_slope| > min_threshold
Important Disclaimers and Terms
Performance Disclosure
Past performance, whether backtested or live-traded, does not guarantee future results. Markets change. What works today may not work tomorrow. Hypothetical or simulated performance results have inherent limitations and do not represent actual trading.
Risk of Loss
Trading involves substantial risk of loss. Only trade with risk capital you can afford to lose entirely. The high degree of leverage often available in trading can work against you as well as for you. Leveraged trading may result in losses exceeding your initial deposit.
Not Financial Advice
BZ-CAE is an educational and analytical tool for technical analysis. It is not financial advice, investment advice, or a recommendation to buy or sell any security or instrument. All trading decisions are your sole responsibility. Consult a licensed financial advisor for advice specific to your circumstances.
Technical Indicator Limitations
BZ-CAE is a technical analysis tool based on price and volume data. It does not account for:
Fundamental analysis (earnings, economic data, financial health)
Market sentiment and positioning
Geopolitical events and news
Liquidity conditions and market microstructure changes
Regulatory changes or exchange rules
Integrate with broader analysis and strategy. Do not rely solely on technical indicators for trading decisions.
Repainting Acknowledgment
As disclosed throughout this documentation:
Realtime mode may repaint on forming bars before confirmation (by design for preview functionality)
Confirmed mode has zero repainting (fully validated pivots only)
Choose timing mode appropriate for your use case. Understand the tradeoffs.
Testing Recommendation
ALWAYS test on demo/paper accounts before committing real capital. Validate the indicator's behavior on your specific instruments and timeframes. Learn the system thoroughly in Advisory mode before using Filtering mode.
Learning Resources :
In-indicator tooltips (hover over setting names for detailed explanations)
This comprehensive publishing statement (save for reference)
User guide in script comments (top of code)
Final Word — Philosophy of BZ-CAE
BZ-CAE is not designed to replace your judgment — it's designed to enhance it.
The indicator identifies structural inflection points (bifurcations) where price and momentum disagree. The Cognitive Engine evaluates market state to determine if this disagreement is meaningful or noise. The Adversarial model debates both sides of the trade to catch obvious bad setups. The Confidence system ranks quality so you can choose your risk appetite.
But YOU still execute. YOU still manage risk. YOU still learn from outcomes.
This is intelligence amplification, not intelligence replacement.
Use Advisory mode to learn how expert traders evaluate market state. Use Filtering mode to enforce discipline when emotions run high. Use the dashboard to develop a systematic approach to reading markets. Use confidence scores to size positions probabilistically.
The system provides an edge. Your job is to execute that edge with discipline, patience, and proper risk management over hundreds of trades.
Markets are probabilistic. No system wins every trade. But a systematic edge + disciplined execution + proper risk management compounds over time. That's the path to consistent profitability. BZ-CAE gives you the edge. The discipline and risk management are on you.
Taking you to school. — Dskyz, Trade with insight. Trade with anticipation.






















