Ultimate Major Contextual Dashboard (Multi-Asset)Overview : The Ultimate Major Dashboard is a performance-optimized market overview tool designed to provide a consolidated snapshot of the 7 major Forex pairs and Gold. It aggregates correlation, trend, momentum, and volatility data into a single, clean table, allowing users to view broader market context without switching charts.
Technical Logic & Components : This indicator utilizes a modular function to analyze EURUSD, GBPUSD, USDJPY, USDCHF, AUDUSD, USDCAD, NZDUSD, and XAUUSD across four key dimensions:
Intermarket Correlation (Pearson Coefficient): Uses ta.correlation() to compare each asset against the symbol currently on your main chart.
Logic: Values above 0.7 (Dark Green) suggest a strong positive relationship, while values below -0.7 (Dark Red) suggest inverse behavior. This is calculated over a rolling 50-period window to balance stability with current market sensitivity.
Trend Bias (EMA-200): Evaluates the long-term trend by checking price position relative to the 200-period Exponential Moving Average.
Visuals: An upward arrow (⬆) indicates price is above the EMA; a downward arrow (⬇) indicates it is below.
Momentum (RSI-14): Calculates the Relative Strength Index. The dashboard automatically highlights readings above 70 (OB) or below 30 (OS) to help identify potential momentum extremes.
Volatility (ATR-14): Displays the Average True Range as a reference for the current active range of each market, helping users compare volatility levels across the majors.
How to Interpret the Dashboard
Asset Alignment: Correlation values help identify when pairs are moving in "unison" versus when a specific currency is diverging from the group.
Directional Context: Combining the Trend (EMA) and Momentum (RSI) columns provides a quick view of whether a market is trending strongly or reaching an exhaustion point.
Volatility Benchmarking: The ATR values offer perspective on which pairs are currently the most active, assisting in market comparison based on volatility preference.
Data Handling & Customization
Multi-Symbol Sync: Data is fetched using request.security(). The calculations are synchronized with the chart's current bar state for real-time accuracy.
Dynamic TF: Users can select the analysis timeframe (60, 240, D, W) via the settings menu.
Flexibility: The dashboard position can be toggled between all four corners of the chart to avoid overlapping with price action.
Disclaimer
This tool is provided for analytical and educational purposes only. It does not generate trading signals and should not be considered financial advice.
外汇
FOREXSOM EMA Crossover Buy & Sell IndicatorFOREXSOM EMA Crossover Buy & Sell Indicator
The FOREXSOM EMA Crossover Buy & Sell Indicator is a lightweight technical analysis tool designed to help traders visualize trend direction and momentum shifts using a dual Exponential Moving Average (EMA) framework.
This script plots a fast EMA and a slow EMA on the price chart and highlights potential BUY and SELL points when a crossover occurs. While EMA crossovers are a well-known concept, this indicator focuses on clarity, simplicity, and practical usability, making it suitable for traders who want a clean visual representation of trend changes without additional complexity.
How the indicator works
A BUY signal is displayed when the fast EMA crosses above the slow EMA, indicating a potential bullish momentum shift.
A SELL signal is displayed when the fast EMA crosses below the slow EMA, indicating a potential bearish momentum shift.
Both EMA lengths are fully adjustable, allowing users to adapt the indicator to different markets, timeframes, and personal trading preferences.
What makes this script useful
Clear visual signals directly on the chart
Adjustable EMA parameters for flexibility
Minimal design that does not clutter the chart
Works across Forex, stocks, indices, and cryptocurrencies
Can be combined with market structure, support and resistance, or higher-timeframe analysis
Usage notes and limitations
EMA crossover signals are most effective in trending market conditions and may generate false signals during sideways or low-volatility periods. This indicator does not attempt to predict price movement or filter market conditions on its own.
This script is intended for educational and technical analysis purposes only. It does not provide financial advice and does not guarantee trading outcomes. Users should apply proper risk management and use additional confirmation methods when making trading decisions.
STRX - Monitor Multi-Asset
The STRX - Monitor Multi-Asset is an advanced Intermarket Analysis tool designed to visualize real-time correlations between a specific "Main Base Asset" and up to 5 other financial instruments.
Understanding how your traded asset moves in relation to the broader market (e.g., Gold vs. US Dollar, or Bitcoin vs. Nasdaq) is crucial for risk management and trend confirmation. This script provides a clean, dynamic dashboard to track these relationships instantly.
🎯 How it Works (The Math) The indicator utilizes the Pearson Correlation Coefficient to measure the statistical relationship between two price arrays over a user-defined period (default is 20 periods).
The logic follows a "Hub and Spoke" model:
You select one Main Base Asset (The Hub).
All other enabled assets are calculated strictly against this Base Asset.
The correlation values range from -1.0 to 1.0 :
⬆️ > 0.7 (Green): Strong Positive Correlation (Assets move together).
↗️ 0.4 to 0.7 (Lime): Moderate Positive Correlation.
↔️ -0.4 to 0.4 (Yellow): Neutral / No significant correlation.
↙️ -0.7 to -0.4 (Orange): Moderate Negative Correlation.
⬇️ < -0.7 (Red): Strong Negative Correlation (Assets move in opposite directions).
🚀 Key Features
Dynamic Table Display: The dashboard automatically adjusts its size. If you disable an asset in the settings, it is removed from the table to keep your chart clean.
Toggleable Inputs:
- Assets 2 & 3: Enabled by default for quick comparisons.
- Assets 4, 5 & 6: Disabled by default (Optional) for deeper analysis.
Multi-Timeframe Capable: You can view the chart on a 1-minute timeframe but calculate correlations based on higher timeframes (e.g., 5-minute or Daily data) to filter out market noise.
Visual Cues: The table uses intuitive background colors and arrows, allowing you to assess market relationships at a glance.
🛠 Settings Guide
1. Base Asset: The primary instrument you are analyzing (e.g., FX:XAUUSD).
2. Standard Comparisons: Enable/Disable and select symbols for the first two comparisons.
3. Extra Comparisons: Check the "Enable" box to add up to 3 more assets to the table.
4. Settings:
Calculation Timeframe: Default is 5 minutes.
Correlation Period: Number of candles for the lookback window (default 20).
💡 Practical Use Case
Forex: Set Base Asset to EURUSD and compare against DXY (Dollar Index) to confirm weakness/strength.
Crypto: Set Base Asset to BTCUSD and compare against SP:SPX (S&P 500) to gauge risk-on/risk-off sentiment.
Disclaimer: This tool is for educational purposes only and does not constitute financial advice. Past performance is not indicative of future results.
DT Volume Profile OB [Doclad Team]DT Volume Profile OB is an advanced trading indicator designed to deliver deeper insight into market structure and price behavior. It enhances the traditional order block concept by embedding a detailed volume profile directly inside each order block, calculated using lower timeframe data.
Unlike conventional order block indicators, this tool distributes volume from lower timeframe candles across multiple segments within the order block zone. This reveals the internal volume structure of each block, allowing traders to identify where the most significant trading activity actually occurred rather than treating the zone as a single flat area.
A core feature of the indicator is its flexible order block detection logic, controlled by a single parameter called Tuning. This setting allows you to adjust the sensitivity of the algorithm:
Higher values generate fewer but more significant order blocks
Lower values produce more frequent order blocks with reduced significance
This makes the indicator adaptable to different trading styles, from short-term intraday trading to higher‑timeframe analysis.
Key Settings
Number of Segments
Defines how many segments the order block is divided into, allowing you to control the level of volume profile detail.
Tuning
Adjusts the sensitivity and frequency of order block detection to match your trading approach.
Color Settings
Fully customizable color options for all visual elements, ensuring seamless integration with any chart layout.
The example illustrates how price can react precisely to the highest-volume segment within an order block, highlighting the indicator’s ability to identify high‑impact price levels with greater accuracy.
While DT Volume Profile OB offers enhanced analytical depth, it is best used alongside other technical tools and market analysis methods. This indicator does not guarantee profitable trades; instead, it provides additional context to support more informed trading decisions.
Gain a clearer perspective on market activity with DT Volume Profile OB — a tool that goes beyond surface-level zones and reveals the volume dynamics driving price movement.
Saisonaler Forex ScannerScannt alle großen Forex Paare auf die besten saisonalen Muster eines Monats
Nexus Momentum Flow [JOAT]
Nexus Momentum Flow - ADX-Based Trend Strength Analysis
Introduction and Purpose
Nexus Momentum Flow is an open-source oscillator indicator that combines the ADX (Average Directional Index) with directional movement indicators (+DI/-DI) to create a comprehensive trend strength and direction analysis tool. The core problem this indicator solves is that ADX alone tells you trend strength but not direction, while +DI/-DI alone tells you direction but not strength. Traders need both pieces of information together.
This indicator addresses that by combining ADX strength classification with directional bias into a single confluence score, making it easy to identify when strong trends exist and which direction they favor.
Why These Components Work Together
1. ADX (Average Directional Index) - Measures trend strength regardless of direction. Values above 25 indicate trending; below 20 indicate ranging.
2. +DI (Positive Directional Indicator) - Measures upward price movement strength.
3. -DI (Negative Directional Indicator) - Measures downward price movement strength.
4. Confluence Score - Combines ADX strength with DI bias to create a single actionable metric.
The combination works because:
ADX filters out ranging markets where DI crossovers produce whipsaws
DI relationship provides direction when ADX confirms trend
Confluence score simplifies the analysis into one number
How the Calculation Works
float directionBias = diPlus - diMinus
float confluenceScore = (adx / 100) * directionBias
The confluence score is positive when +DI > -DI (bullish) and negative when -DI > +DI (bearish), with magnitude scaled by ADX strength.
Trend State Classification
EXTREME - ADX > 50 (very strong trend)
STRONG - ADX 35-50 (strong trend)
TRENDING - ADX 25-35 (moderate trend)
RANGING - ADX < 25 (no clear trend)
Dashboard Information
Status - Current trend state (EXTREME/STRONG/TRENDING/RANGING)
Direction - BULLISH or BEARISH based on DI relationship
ADX - Current ADX value
DI Bias - Difference between +DI and -DI
Confluence - Combined score with directional context
How to Use This Indicator
For Trend Following:
1. Wait for ADX to show TRENDING or higher
2. Check direction matches your trade bias
3. Enter on pullbacks when confluence remains positive/negative
4. Exit when ADX drops to RANGING
For Avoiding Whipsaws:
1. Do not trade DI crossovers when ADX shows RANGING
2. Only trust directional signals when ADX confirms trend
3. Use RANGING periods for mean-reversion strategies instead
For Trend Exhaustion:
1. Watch for EXTREME ADX readings
2. Extreme trends often precede reversals
3. Consider taking profits when ADX reaches extreme levels
Input Parameters
ADX Length (14) - Period for ADX calculation
DI Length (14) - Period for directional indicators
ADX Smoothing (14) - Smoothing period for ADX
Trend Threshold (25) - ADX level for trend confirmation
Strong Threshold (35) - ADX level for strong trend
Extreme Threshold (50) - ADX level for extreme trend
Timeframe Recommendations
Daily/4H: Best for swing trading trend analysis
1H: Good for intraday trend following
15m: More signals but requires faster reaction
Limitations
ADX is a lagging indicator - trends are confirmed after they start
DI crossovers can whipsaw even with ADX filter
Works best in markets that trend clearly
May miss early trend entries due to confirmation requirement
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes.
This indicator does not constitute financial advice. Trend analysis does not guarantee profitable trades. Always use proper risk management.
- Made with passion by officialjackofalltrades
Anchored VWAP PercentageINDICATOR: ANCHORED VWAP PERCENTAGE (AVWAP)
1. Overview
The Anchored VWAP Percentage (AVWAP) is a quantitative momentum and mean-reversion tool. It measures the percentage distance between the current price and a Volume Weighted Average Price (VWAP) that resets automatically based on specific time cycles. It allows traders to identify overextended market conditions relative to institutional value.
---
2. Core Logic & Calculation
The script tracks the relationship between price and volume starting from a specific Anchor Point .
* Volume-Weighted Foundation: Unlike simple moving averages, this indicator uses the VWAP formula: sum(Volume * Price) / sum(Volume) .
* Automatic Anchoring: The starting point (Anchor) resets automatically depending on the chart timeframe (e.g., resets weekly on a 15m chart, or yearly on a Daily chart).
* Percentage Deviation: It calculates the precise gap between the price and the VWAP, plotted as an oscillator: ((Price - VWAP) / VWAP) * 100 .
---
3. Adaptive Intelligence (Multi-Asset & Multi-TF)
The AVWAP is built with an internal database of 85th Percentile (P85) volatility thresholds. It recognizes that different assets have different "stretching" limits:
1. Asset-Specific Calibration: It includes optimized data for Bitcoin, Ethereum, Altcoins, Forex, and Indices .
2. Dynamic Timeframe Mapping: The anchor period and the exhaustion thresholds adjust automatically. For example:
* Intraday (1m-5m): Anchors to an 8-hour (480 min) cycle.
* Mid-Term (15m-60m): Anchors to a Weekly (W) cycle.
* Swing (Daily): Anchors to a Yearly (12M) cycle.
---
4. Visual Anatomy
The indicator is designed for high-speed decision-making:
* The Histogram:
* Green: Price is trading above the VWAP (Bullish premium).
* Red: Price is trading below the VWAP (Bearish discount).
* P85 Threshold Lines:
* These lines represent the 85th percentile of historical deviations . Historically, the price stays within these boundaries 85% of the time.
* Background Highlighting: When the histogram crosses the P85 line, the background glows, signaling a Statistical Exhaustion Zone where a retracement to the mean is highly probable.
---
5. How to Trade with AVWAP
* Mean Reversion: When the histogram reaches the P85 Zone , the price is "statistically overextended." This is a prime area to look for reversals or to take profits on existing trends.
* Trend Strength: If the histogram stays near the Zero Line while the price moves, the trend is supported by healthy volume.
* Value Area: The Zero Line represents the Fair Value . Buying near the Zero Line during a bullish histogram (Green) offers a high-probability entry with low risk.
---
6. Technical Parameters
* Asset Selection: A dropdown to switch between Crypto, Forex, and Indices.
* Color Customization: User-defined colors for bullish and bearish sentiment.
* Precision Control: 4-decimal precision for accurate tracking of thin-margin assets like Forex.
Fractal Wave Hunter [JOAT]
Fractal Wave Hunter - Multi-Method Fractal Detection System
Introduction and Purpose
Fractal Wave Hunter is an open-source overlay indicator that identifies key reversal patterns using multiple fractal detection methods. The core problem this indicator solves is that different fractal methods catch different types of reversals. Williams' classic 5-bar fractal is reliable but slow; Hougaard's 4-bar method is faster but noisier. Using only one method means missing valid signals that the other would catch.
This indicator addresses that by combining both methods plus HOLP/LOHP detection, giving traders a comprehensive view of potential reversal points.
Why These Methods Work Together
Each fractal method has different characteristics:
1. 4-Bar Fractal (Hougaard Method) - Faster detection, identifies momentum shifts when close exceeds recent highs/lows. Best for catching early reversals.
2. Classic 5-Bar Fractal (Williams) - Traditional pivot detection requiring the middle bar to be the highest/lowest of 5 bars. Best for identifying significant swing points.
3. HOLP/LOHP - High of Low Period and Low of High Period signals identify when price makes a new extreme within a defined lookback. Best for trend exhaustion detection.
By combining these methods, traders can:
Use 4-bar fractals for early entry signals
Use 5-bar fractals for confirmation and stop placement
Use HOLP/LOHP for trend exhaustion warnings
How the Detection Works
4-Bar Fractal (Hougaard):
bool fractal4BuyBase = close > high and close > high
bool fractal4SellBase = close < low and close < low
Classic 5-Bar Fractal:
bool fractalHigh = high > high and high > high and high > high and high > high
bool fractalLow = low < low and low < low and low < low and low < low
Signal Types
4B (4-Bar Buy) - Close exceeds high and high - early bullish signal
4S (4-Bar Sell) - Close below low and low - early bearish signal
FH (Fractal High) - Classic 5-bar swing high - confirmed resistance
FL (Fractal Low) - Classic 5-bar swing low - confirmed support
HOLP - High of low period - potential bullish exhaustion
LOHP - Low of high period - potential bearish exhaustion
Dashboard Information
4-Bar Fractal - Count of bullish/bearish 4-bar fractals
Classic Fractal - Count of 5-bar fractal highs/lows
HOLP/LOHP - Reversal signal counts
Total Signals - Combined pattern count
How to Use This Indicator
For Counter-Trend Entries:
1. Wait for 4-bar fractal signal at key support/resistance
2. Confirm with 5-bar fractal forming nearby
3. Enter with stop beyond the fractal point
For Stop Placement:
1. Use 5-bar fractal highs/lows as stop-loss references
2. These represent confirmed swing points that should hold if trend continues
For Trend Analysis:
1. Track swing structure using fractal highs and lows
2. Higher fractal lows = uptrend structure
3. Lower fractal highs = downtrend structure
Input Parameters
Show 4-Bar Fractals (true) - Toggle Hougaard method signals
Show Classic Fractals (true) - Toggle Williams method signals
Show HOLP/LOHP (true) - Toggle exhaustion signals
ATR Filter (false) - Only show signals during volatile conditions
Swing Lines (true) - Connect significant swing points
Timeframe Recommendations
1H-Daily: Best for reliable fractal detection
15m-30m: More signals but higher noise
Weekly: Fewer but more significant fractals
Limitations
5-bar fractals have inherent 2-bar lag (need confirmation)
4-bar fractals can produce false signals in choppy markets
HOLP/LOHP signals work best at trend extremes
Not all fractals lead to significant reversals
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes.
This indicator does not constitute financial advice. Fractal detection does not guarantee reversals. Always use proper risk management.
- Made with passion by officialjackofalltrades
Aurora Volatility Bands [JOAT]Aurora Volatility Bands - Dynamic ATR-Based Envelope System
Introduction and Purpose
Aurora Volatility Bands is an open-source overlay indicator that creates multi-layered volatility envelopes around price using ATR (Average True Range) calculations. The core problem this indicator solves is that static bands (like fixed percentage envelopes) fail to adapt to changing market conditions. During high volatility, static bands are too tight; during low volatility, they're too wide.
This indicator addresses that by using ATR-based dynamic bands that automatically expand during volatile periods and contract during quiet periods, providing contextually appropriate support/resistance levels at all times.
Why These Components Work Together
The indicator combines three analytical approaches:
1. Triple-Layer Band System - Inner (1x ATR), Outer (2x ATR), and Extreme (3x ATR) bands provide graduated levels of significance
2. Volatility State Detection - Compares current ATR to historical average to classify market regime
3. Multiple MA Types - Allows customization of the center line calculation method
These components complement each other:
The triple-layer system gives traders multiple reference points - inner bands for normal moves, outer for significant moves, extreme for rare events
Volatility state detection tells you WHEN bands are expanding or contracting, helping anticipate breakouts or mean-reversion
MA type selection lets you match the indicator to your trading style (faster EMA vs smoother SMA)
How the Calculation Works
The bands are calculated using ATR multiplied by configurable factors:
float atr = ta.atr(atrPeriod)
float innerUpper = centerMA + (atr * innerMult)
float outerUpper = centerMA + (atr * outerMult)
float extremeUpper = centerMA + (atr * extremeMult)
Volatility state is determined by comparing current ATR percentage to its historical average:
float atrPercent = (atr / close) * 100
float avgAtrPercent = ta.sma(atrPercent, volatilityLookback)
float volatilityRatio = atrPercent / avgAtrPercent
bool isExpanding = volatilityRatio > 1.2 // 20%+ above average
bool isContracting = volatilityRatio < 0.8 // 20%+ below average
Signal Types
Band Touch - Price reaches inner, outer, or extreme bands
Mean Reversion - Price returns to center after touching outer/extreme bands
Breakout - Sustained move beyond outer bands during volatility expansion
Dashboard Information
Volatility - Current state (EXPANDING/CONTRACTING/NORMAL)
Vol Ratio - Current volatility vs average (e.g., 1.5x = 50% above average)
ATR - Current ATR value
ATR % - ATR as percentage of price
Zone - Current price position (EXTREME HIGH/UPPER ZONE/CENTER ZONE/etc.)
Position - Price position as percentage within band structure
Width - Total band width as percentage of price
Using SMA in settings:
How to Use This Indicator
For Mean-Reversion Trading:
1. Wait for price to touch outer or extreme bands
2. Check that volatility state is NORMAL or CONTRACTING (not expanding)
3. Look for reversal candlestick patterns at the band
4. Enter toward center MA with stop beyond the band
For Breakout Trading:
1. Wait for volatility state to show EXPANDING
2. Look for price closing beyond outer bands
3. Enter in direction of breakout
4. Use the band as trailing stop reference
For Volatility Analysis:
1. Monitor volatility ratio for regime changes
2. CONTRACTING often precedes large moves (squeeze)
3. EXPANDING confirms trend strength
Using VWMA and Mean Reversion Signal/MR:
Input Parameters
ATR Period (14) - Period for ATR calculation
Inner/Outer/Extreme Multipliers (1.0/2.0/3.0) - Band distance from center
MA Type (EMA) - Center line calculation method
MA Period (20) - Period for center line
Volatility Comparison Period (20) - Lookback for volatility state
Timeframe Recommendations
15m-1H: Good for intraday mean-reversion
4H-Daily: Best for swing trading and breakout identification
Weekly: Useful for position trading and major level identification
Limitations
ATR-based bands lag during sudden volatility spikes
Mean-reversion signals can fail in strong trends
Breakout signals may whipsaw in ranging markets
Works best on liquid instruments with consistent volatility patterns
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes. The source code is fully visible and can be studied to understand how each component works.
This indicator does not constitute financial advice. Band touches do not guarantee reversals. Past performance does not guarantee future results. Always use proper risk management, position sizing, and stop-losses.
- Made with passion by officialjackofalltrades
Quantum Reversal Detector [JOAT]
Quantum Reversal Detector - Multi-Factor Reversal Probability Analysis
Introduction and Purpose
Quantum Reversal Detector is an open-source overlay indicator that combines multiple reversal detection methods into a unified probability-based framework. The core problem this indicator addresses is the unreliability of single-factor reversal signals. A price touching support means nothing without momentum confirmation; an RSI oversold reading means nothing without price structure context.
This indicator solves that by requiring multiple independent factors to align before generating reversal signals, then expressing the result as a probability score rather than a binary signal.
Why These Components Work Together
The indicator combines five analytical approaches, each addressing a different aspect of reversal detection:
1. RSI Extremes - Identifies momentum exhaustion (overbought/oversold)
2. MACD Crossovers - Confirms momentum direction change
3. Support/Resistance Proximity - Ensures price is at a significant level
4. Multi-Depth Momentum - Analyzes momentum across multiple timeframes
5. Statistical Probability - Quantifies reversal likelihood using Bayesian updating
These components are not randomly combined. Each filter catches reversals that others miss:
RSI catches momentum exhaustion but misses structural reversals
MACD catches momentum shifts but lags price action
S/R proximity catches structural levels but ignores momentum
Multi-depth momentum catches divergences across timeframes
Probability scoring combines all factors into actionable confidence levels
How the Detection System Works
Step 1: Pattern Detection
The indicator first identifies potential reversal conditions:
// Check if price is at support/resistance
float lowestLow = ta.lowest(low, period)
float highestHigh = ta.highest(high, period)
bool atSupport = low <= lowestLow * 1.002
bool atResistance = high >= highestHigh * 0.998
// Check RSI conditions
float rsi = ta.rsi(close, 14)
bool oversold = rsi < 30
bool overbought = rsi > 70
// Check MACD crossover
float macd = ta.ema(close, 12) - ta.ema(close, 26)
float signal = ta.ema(macd, 9)
bool macdBullish = ta.crossover(macd, signal)
bool macdBearish = ta.crossunder(macd, signal)
// Combine for reversal detection
if atSupport and oversold and macdBullish
bullishReversal := true
Step 2: Multi-Depth Momentum Analysis
The indicator calculates momentum across multiple periods to detect divergences:
calculateQuantumMomentum(series float price, simple int period, simple int depth) =>
float totalMomentum = 0.0
for i = 0 to depth - 1
int currentPeriod = period * (i + 1)
float momentum = ta.roc(price, currentPeriod)
totalMomentum += momentum
totalMomentum / depth
This creates a composite momentum reading that smooths out noise while preserving genuine momentum shifts.
Step 3: Bayesian Probability Calculation
The indicator uses Bayesian updating to calculate reversal probability:
bayesianProbability(series float priorProb, series float likelihood, series float evidence) =>
float posterior = evidence > 0 ? (likelihood * priorProb) / evidence : priorProb
math.min(math.max(posterior, 0.0), 1.0)
The prior probability starts at 50% and updates based on:
RSI extreme readings increase likelihood
MACD crossovers increase likelihood
S/R proximity increases likelihood
Momentum divergence increases likelihood
Step 4: Confidence Intervals
Using Monte Carlo simulation concepts, the indicator estimates price distribution:
monteCarloSimulation(series float price, series float volatility, simple int iterations) =>
float sumPrice = 0.0
float sumSqDiff = 0.0
for i = 0 to iterations - 1
float randomFactor = (i % 10 - 5) / 10.0
float simulatedPrice = price + volatility * randomFactor
sumPrice += simulatedPrice
float avgPrice = sumPrice / iterations
// Calculate standard deviation for confidence intervals
This provides 95% and 99% confidence bands around the current price.
Signal Classification
Signals are classified by confirmation level:
Confirmed Reversal : Pattern detected for N consecutive bars (default 3)
High Probability : Confirmed + Bayesian probability > 70%
Ultra High Probability : High probability + PDF above average
Dashboard Information
The dashboard displays:
Bayesian Probability - Updated reversal probability (0-100%)
Quantum Momentum - Multi-depth momentum average
RSI - Current RSI value with overbought/oversold status
Volatility - Current ATR as percentage of price
Reversal Signal - BULLISH, BEARISH, or NONE
Divergence - Momentum divergence detection
MACD - Current MACD histogram value
S/R Zone - AT SUPPORT, AT RESISTANCE, or NEUTRAL
95% Confidence - Price range with 95% probability
Bull/Bear Targets - ATR-based reversal targets
Visual Elements
Quantum Bands - ATR-based upper and lower channels
Probability Field - Circle layers showing probability distribution
Confidence Bands - 95% and 99% confidence interval circles
Reversal Labels - REV markers at confirmed reversals
High Probability Markers - Star diamonds at high probability setups
Reversal Zones - Boxes around confirmed reversal areas
Divergence Markers - Triangles at momentum divergences
How to Use This Indicator
For Reversal Trading:
1. Wait for Bayesian Probability to exceed 70%
2. Confirm price is at S/R zone (dashboard shows AT SUPPORT or AT RESISTANCE)
3. Check that RSI is in extreme territory (oversold for longs, overbought for shorts)
4. Enter when REV label appears with high probability marker
For Risk Management:
1. Use the 95% confidence band as a stop-loss reference
2. Use Bull/Bear Targets for take-profit levels
3. Higher probability readings warrant larger position sizes
For Filtering False Signals:
1. Increase Confirmation Bars to require more consecutive signals
2. Only trade when probability exceeds 70%
3. Require divergence confirmation for highest conviction
Input Parameters
Reversal Period (21) - Lookback for S/R and momentum calculations
Quantum Depth (5) - Number of momentum layers for multi-depth analysis
Confirmation Bars (3) - Consecutive bars required for confirmation
Detection Sensitivity (1.2) - Band width and target multiplier
Bayesian Probability (true) - Enable probability calculation
Monte Carlo Simulation (true) - Enable confidence interval calculation
Normal Distribution (true) - Enable PDF calculation
Confidence Intervals (true) - Enable confidence bands
Timeframe Recommendations
1H-4H: Best for swing trading reversals
Daily: Fewer but more significant reversal signals
15m-30m: More signals, requires higher probability threshold
Limitations
Statistical concepts are simplified implementations for Pine Script
Monte Carlo uses deterministic pseudo-random factors, not true randomness
Bayesian probability uses simplified prior/likelihood model
Reversal detection does not guarantee actual reversals will occur
Confirmation bars add lag to signal generation
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes. The source code is fully visible and can be studied to understand how each component works.
This indicator does not constitute financial advice. Reversal detection is probabilistic, not predictive. The probability scores represent statistical likelihood based on historical patterns, not guaranteed outcomes. Past performance does not guarantee future results. Always use proper risk management, position sizing, and stop-losses.
- Made with passion by officialjackofalltrades
Photon Price Action Scanner [JOAT]Photon Price Action Scanner - Multi-Pattern Recognition with Adaptive Filtering
Introduction and Purpose
Photon Price Action Scanner is an open-source overlay indicator that automates the detection of 15+ candlestick patterns while filtering them through multiple confirmation layers. The core problem this indicator solves is pattern noise: raw candlestick pattern detection produces too many signals, most of which fail because they lack context. This indicator addresses that by combining pattern recognition with trend alignment, volume-weighted strength scoring, velocity confirmation, and an adaptive neural bias filter.
The combination of these components is not arbitrary. Each filter addresses a specific weakness in standalone pattern detection:
Trend alignment ensures patterns appear in favorable market structure
Volume-weighted strength filters out weak patterns with low conviction
Velocity confirmation identifies momentum behind the pattern
Neural bias filter adapts to recent price behavior to avoid counter-trend signals
What Makes This Indicator Original
While candlestick pattern scanners exist, this indicator's originality comes from:
1. Multi-Layer Filtering System - Patterns must pass through trend, strength, velocity, and neural bias filters before generating signals. This dramatically reduces false positives compared to simple pattern detection.
2. Adaptive Neural Bias Filter - A custom momentum-adjusted EMA that learns from recent price action using a configurable learning rate. This is not a standard moving average but an adaptive filter that accelerates during trends and smooths during consolidation.
3. Pattern Strength Scoring - Each pattern receives a strength score based on volume ratio and body size, allowing traders to focus on high-conviction setups rather than every pattern occurrence.
4. Smart Cooldown System - Prevents signal overlap by enforcing minimum bar spacing between pattern labels, keeping charts clean even when "Show All Patterns" is enabled.
How the Components Work Together
Step 1: Pattern Detection
The indicator scans for 15 candlestick patterns using precise mathematical definitions:
// Example: Bullish Engulfing requires the current bullish candle to completely
// engulf the previous bearish candle with a larger body
isBullishEngulfing() =>
bool pattern = close < open and close > open and
open <= close and close >= open and
close - open > open - close
pattern
// Example: Three White Soldiers requires three consecutive bullish candles
// with each opening within the previous body and closing higher
isThreeWhiteSoldiers() =>
bool pattern = close > open and close > open and close > open and
close < close and close < close and
open > open and open < close and
open > open and open < close
pattern
Step 2: Strength Calculation
Each detected pattern receives a strength score combining volume and body size:
float volRatio = avgVolume > 0 ? volume / avgVolume : 1.0
float bodySize = math.abs(close - open) / close
float baseStrength = (volRatio + bodySize * 100) / 2
This ensures patterns with above-average volume and large bodies score higher than weak patterns on low volume.
Step 3: Trend Alignment
Patterns are checked against the trend direction using an EMA:
float trendEMA = ta.ema(close, i_trendPeriod)
int trendDir = close > trendEMA ? 1 : close < trendEMA ? -1 : 0
Bullish patterns in uptrends and bearish patterns in downtrends receive priority.
Step 4: Neural Bias Filter
The adaptive filter uses a momentum-adjusted EMA that responds to price changes:
neuralEMA(series float src, simple int period, simple float lr) =>
var float neuralValue = na
var float momentum = 0.0
if na(neuralValue)
neuralValue := src
float error = src - neuralValue
float adjustment = error * lr
momentum := momentum * 0.9 + adjustment * 0.1
neuralValue := neuralValue + adjustment + momentum
neuralValue
The learning rate (lr) controls how quickly the filter adapts. Higher values make it more responsive; lower values make it smoother.
Step 5: Velocity Confirmation
Price velocity (rate of change) must exceed the average velocity for strong signals:
float velocity = ta.roc(close, i_trendPeriod)
float avgVelocity = ta.sma(velocity, i_trendPeriod)
bool velocityBull = velocity > avgVelocity * 1.5
Step 6: Signal Classification
Signals are classified based on how many filters they pass:
Strong Pattern : Pattern + strength threshold + trend alignment + neural bias + velocity
Ultra Pattern : Strong pattern + gap in same direction + velocity confirmation
Watch Pattern : Pattern detected but not all filters passed
Detected Patterns
Classic Reversal Patterns:
Bullish/Bearish Engulfing - Complete body engulfment with larger body
Hammer - Long lower wick (2x body), small upper wick, bullish context
Shooting Star - Long upper wick (2x body), small lower wick, bearish context
Morning Star - Three-bar bullish reversal with small middle body
Evening Star - Three-bar bearish reversal with small middle body
Piercing Line - Bullish candle closing above midpoint of previous bearish candle
Dark Cloud Cover - Bearish candle closing below midpoint of previous bullish candle
Bullish/Bearish Harami - Small body contained within previous larger body
Doji - Body less than 10% of total range (indecision)
Advanced Patterns (Optional):
Three White Soldiers - Three consecutive bullish candles with rising closes
Three Black Crows - Three consecutive bearish candles with falling closes
Tweezer Top - Equal highs with reversal candle structure
Tweezer Bottom - Equal lows with reversal candle structure
Island Reversal - Gap isolation creating reversal structure
Dashboard Information
The dashboard displays real-time analysis:
Pattern - Current detected pattern name or "SCANNING..."
Bull/Bear Strength - Volume-weighted strength scores
Trend - UPTREND, DOWNTREND, or SIDEWAYS based on EMA
RSI - 14-period RSI for momentum context
Momentum - 10-period momentum reading
Volatility - ATR as percentage of price
Neural Bias - BULLISH, BEARISH, or NEUTRAL from adaptive filter
Action - ULTRA BUY/SELL, BUY/SELL, WATCH BUY/SELL, or WAIT
Visual Elements
Pattern Labels - Abbreviated codes (BE=Engulfing, H=Hammer, MS=Morning Star, etc.)
Neural Bias Line - Adaptive trend line showing filter direction
Gap Boxes - Cyan boxes highlighting price gaps
Action Zones - Dashed boxes around strong pattern areas
Velocity Markers - Small circles when velocity confirms direction
Ultra Signals - Large labels for highest conviction setups
How to Use This Indicator
For Reversal Trading:
1. Wait for a pattern to appear at a key support/resistance level
2. Check that the Action shows "BUY" or "SELL" (not just "WATCH")
3. Confirm the Neural Bias aligns with your trade direction
4. Use the strength score to gauge conviction (higher is better)
For Trend Continuation:
1. Identify the trend using the Trend row in the dashboard
2. Look for patterns that align with the trend (bullish patterns in uptrends)
3. Ultra signals indicate the strongest continuation setups
For Filtering Noise:
1. Keep "Show All Patterns" disabled to see only filtered signals
2. Increase "Pattern Strength Filter" to see fewer, higher-quality patterns
3. Enable "Velocity Confirmation" to require momentum behind patterns
Input Parameters
Scan Sensitivity (1.0) - Overall detection sensitivity multiplier
Pattern Strength Filter (3) - Minimum strength score for strong signals
Trend Period (20) - EMA period for trend determination
Show All Patterns (false) - Display all patterns regardless of filters
Advanced Patterns (true) - Enable soldiers/crows/tweezer detection
Gap Analysis (true) - Enable gap detection and boxes
Velocity Confirmation (true) - Require velocity for strong signals
Neural Bias Filter (true) - Enable adaptive trend filter
Neural Period (50) - Lookback for neural bias calculation
Neural Learning Rate (0.12) - Adaptation speed (0.01-0.5)
Timeframe Recommendations
1H-4H: Best balance of signal frequency and reliability
Daily: Fewer but more significant patterns
15m-30m: More signals, requires tighter filtering (increase strength threshold)
Limitations
Pattern detection is mechanical and does not consider fundamental context
Neural bias filter may lag during rapid trend reversals
Gap detection requires clean price data without after-hours gaps
Strength scoring favors high-volume patterns, which may miss valid low-volume setups
- Made with passion by officialjackofalltrades
Key Time Window & Kill Zones
📌 Key Time Window & Kill Zones
This indicator highlights important global trading sessions and high-probability execution windows using fixed UTC (GMT+0) timings, which align correctly with IST and all other time zones through TradingView’s internal time conversion.
It is designed to help traders focus on institutional activity periods, avoid low-probability hours, and execute trades only during statistically active market windows for Crypto, Forex And US markets.
________________________________________
⏱️ Session Timings (All in UTC / GMT+0)
Asia Range — 22:00 – 05:00 (Red) ( NO TRADING ZONE)
• Marks the Asian session consolidation range
• Useful for identifying liquidity highs and lows
• Acts as reference for London and New York liquidity sweeps
________________________________________
Frankfurt Trap Time — 07:00 – 08:00 (Grey) ( NO TRADING ZONE)
• Commonly produces false breakouts and stop-hunts
• No-trade zone
• Used only to observe potential liquidity traps before London open
________________________________________
London Kill Zone — 08:00 – 09:00 (Blue) (TRADING ZONE)
• High-volatility window at London open
• Trades are valid only after Frankfurt liquidity is swept
• Suitable for smart-money entries following manipulation
________________________________________
New York Range — 13:00 – 17:00 (Purple)
• Defines the broader New York session range
• Tradeable only when market structure is trending
• Provides context for NY session price development
________________________________________
New York Kill Zone (Key Time Window) — 14:00 – 15:00 (Deep Purple) ( KEY TIME WINDOW- TRADING WINDOW)
• Primary execution window
• Best setups form after London or NY open inducement
• Suitable for both reversals and continuations
________________________________________
NYSE Cash Open — 14:30 – 14:45 (Dark Purple) ( AVOID NEW ENTRIES IN THIS ZONE)
• Exact US cash market opening window
• Increased volatility and decisive price moves
• One of the most important intraday execution periods
________________________________________
🧠 How to Use
• Use session zones as time-based confirmation, not standalone signals
• Combine with:
o Market structure
o Liquidity sweeps
o Inducement
o Order blocks / supply & demand
• Avoid trading outside the highlighted sessions
• Best suited for intraday and scalping strategies
________________________________________
⚠️ Important Notes
• All sessions are plotted in UTC (GMT+0)
• Automatically adjust to the user’s chart time zone (including IST)
• This indicator does not generate buy or sell signals
• Intended for educational and analytical purposes only
________________________________________
BONUS
Two Extra Options To mark your Special Time Zones If you Want.
Entropy Balance Oscillator [JOAT]
Entropy Balance Oscillator - Chaos Theory Edition
Overview
Entropy Balance Oscillator is an open-source oscillator indicator that applies chaos theory concepts to market analysis. It calculates market entropy (disorder/randomness), balance (price position within range), and various chaos metrics to identify whether the market is in an ordered, chaotic, or balanced state. This helps traders understand market regime and adjust their strategies accordingly.
What This Indicator Does
The indicator calculates and displays:
Entropy - Measures market disorder using return distribution analysis
Balance - Price position within the high-low range, normalized to -1 to +1
Lyapunov Exponent - Estimates sensitivity to initial conditions (chaos indicator)
Hurst Exponent - Measures long-term memory in price series (trend persistence)
Strange Attractor - Simulated attractor points for visualization
Bifurcation Detection - Identifies potential regime change points
Chaos Index - Combined entropy and volatility score
Market Phase - Classification as CHAOS, ORDER, or BALANCED
How It Works
Entropy is calculated using return distribution:
calculateEntropy(series float price, simple int period) =>
// Calculate returns and their absolute values
// Sum absolute returns for normalization
// Apply Shannon entropy formula: -sum(p * log(p))
float entropy = 0.0
for i = 0 to array.size(returns) - 1
float prob = math.abs(array.get(returns, i)) / sumAbs
if prob > 0
entropy -= prob * math.log(prob)
entropy
Balance measures price position within range:
calculateBalance(series float high, series float low, series float close, simple int period) =>
float range = high - low
float position = (close - low) / (range > 0 ? range : 1)
float balance = ta.ema(position, period)
(balance - 0.5) * 2 // Normalize to -1 to +1
Lyapunov Exponent estimates chaos sensitivity:
lyapunovExponent(series float price, simple int period) =>
float sumLog = 0.0
for i = 1 to period
float ratio = price > 0 ? math.abs(price / price ) : 1.0
if ratio > 0
sumLog += math.log(ratio)
lyapunov := sumLog / period
Hurst Exponent measures trend persistence:
H > 0.5: Trending/persistent behavior
H = 0.5: Random walk
H < 0.5: Mean-reverting behavior
Signal Generation
Phase changes and extreme conditions generate signals:
Chaos Phase: Normalized entropy exceeds chaos threshold (default 0.7)
Order Phase: Normalized entropy falls below order threshold (default 0.3)
Extreme Chaos: Entropy exceeds 1.5x chaos threshold
Extreme Order: Entropy falls below 0.5x order threshold
Bifurcation: Variance exceeds 2x average variance
Dashboard Panel (Top-Right)
Market Phase - Current phase (CHAOS/ORDER/BALANCED)
Entropy Level - Normalized entropy value
Balance - Current balance reading (-1 to +1)
Chaos Index - Combined chaos score percentage
Volatility - Current price volatility
Lyapunov Exp - Lyapunov exponent value
Hurst Exponent - Hurst exponent value
Chaos Score - Overall chaos assessment
Status - Current market status
Visual Elements
Entropy Line - Main oscillator showing normalized entropy
Entropy EMA - Smoothed entropy for trend reference
Balance Area - Filled area showing balance direction
Chaos/Order Thresholds - Horizontal dashed lines
Lyapunov Line - Step line showing Lyapunov exponent
Strange Attractor - Circle plots showing attractor points
Phase Space - Line showing phase space reconstruction
Phase Background - Background color based on current phase
Extreme Markers - X-cross for extreme chaos, diamond for extreme order
Bifurcation Markers - Circles at potential regime changes
Input Parameters
Entropy Period (default: 20) - Period for entropy calculation
Balance Period (default: 14) - Period for balance calculation
Chaos Threshold (default: 0.7) - Threshold for chaos phase
Order Threshold (default: 0.3) - Threshold for order phase
Lyapunov Exponent (default: true) - Enable Lyapunov calculation
Hurst Exponent (default: true) - Enable Hurst calculation
Strange Attractor (default: true) - Enable attractor visualization
Bifurcation Detection (default: true) - Enable bifurcation detection
Suggested Use Cases
Identify market regime for strategy selection (trend-following vs mean-reversion)
Watch for phase changes as potential trading environment shifts
Use Hurst exponent to assess trend persistence
Monitor chaos index for volatility regime awareness
Avoid trading during extreme chaos phases
Timeframe Recommendations
Best on 1H to Daily charts. Chaos metrics require sufficient data for meaningful calculations.
Limitations
Chaos theory concepts are applied as analogies, not rigorous mathematical implementations
Lyapunov and Hurst calculations are simplified approximations
Strange attractor visualization is conceptual
Bifurcation detection uses variance as proxy
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes. It does not constitute financial advice. Past performance does not guarantee future results. Always use proper risk management.
- Made with passion by officialjackofalltrades
Velocity Divergence Radar [JOAT]
Velocity Divergence Radar - Momentum Physics Edition
Overview
Velocity Divergence Radar is an open-source oscillator indicator that applies physics concepts to market analysis. It calculates price velocity (rate of change), acceleration (rate of velocity change), and jerk (rate of acceleration change) to provide a multi-dimensional view of momentum. The indicator also includes divergence detection and force vector analysis.
What This Indicator Does
The indicator calculates and displays:
Velocity - Rate of price change over a configurable period, smoothed with EMA
Acceleration - Rate of velocity change, showing momentum shifts
Jerk (3rd Derivative) - Rate of acceleration change, indicating momentum stability
Force Vectors - Volume-weighted acceleration representing market force
Kinetic Energy - Calculated as 0.5 * mass (volume ratio) * velocity squared
Momentum Conservation - Tracks momentum relative to historical average
Divergence Detection - Identifies when price and velocity diverge at pivots
How It Works
Velocity is calculated as smoothed rate of change:
calculateVelocity(series float price, simple int period) =>
float roc = ta.roc(price, period)
float velocity = ta.ema(roc, period / 2)
velocity
Acceleration is the change in velocity:
calculateAcceleration(series float velocity, simple int period) =>
float accel = ta.change(velocity, period)
float smoothAccel = ta.ema(accel, period / 2)
smoothAccel
Jerk is the change in acceleration:
calculateJerk(series float acceleration, simple int period) =>
float jerk = ta.change(acceleration, period)
float smoothJerk = ta.ema(jerk, period / 2)
smoothJerk
Force is calculated using F = m * a (mass approximated by volume ratio):
calculateForceVector(series float mass, series float acceleration) =>
float force = mass * acceleration
float forceDirection = math.sign(force)
float forceMagnitude = math.abs(force)
Signal Generation
Signals are generated based on velocity behavior:
Bullish Divergence: Price makes lower low while velocity makes higher low
Bearish Divergence: Price makes higher high while velocity makes lower high
Velocity Cross: Velocity crosses above/below zero line
Extreme Velocity: Velocity exceeds 1.5x the upper/lower zone threshold
Jerk Extreme: Jerk exceeds 2x standard deviation
Force Extreme: Force magnitude exceeds 2x average
Dashboard Panel (Top-Right)
Velocity - Current velocity value
Acceleration - Current acceleration value
Momentum Strength - Combined velocity and acceleration strength
Radar Score - Composite score based on velocity and acceleration
Direction - STRONG UP/SLOWING UP/STRONG DOWN/SLOWING DOWN/FLAT
Jerk - Current jerk value
Force Vector - Current force magnitude
Kinetic Energy - Current kinetic energy value
Physics Score - Overall physics-based momentum score
Signal - Current actionable status
Visual Elements
Velocity Line - Main oscillator line with color based on direction
Velocity EMA - Smoothed velocity for trend reference
Acceleration Histogram - Bar chart showing acceleration direction
Jerk Area - Filled area showing jerk magnitude
Vector Magnitude - Line showing combined vector strength
Radar Scan - Oscillating pattern for visual effect
Zone Lines - Upper and lower threshold lines
Divergence Labels - BULL DIV / BEAR DIV markers
Extreme Markers - Triangles at velocity extremes
Input Parameters
Velocity Period (default: 14) - Period for velocity calculation
Acceleration Period (default: 7) - Period for acceleration calculation
Divergence Lookback (default: 10) - Bars to scan for divergence
Radar Sensitivity (default: 1.0) - Zone threshold multiplier
Jerk Analysis (default: true) - Enable 3rd derivative calculation
Force Vectors (default: true) - Enable force analysis
Kinetic Energy (default: true) - Enable energy calculation
Momentum Conservation (default: true) - Enable momentum tracking
Suggested Use Cases
Identify momentum direction using velocity sign and magnitude
Watch for divergences as potential reversal warnings
Use acceleration to detect momentum shifts before price confirms
Monitor jerk for momentum stability assessment
Combine force and kinetic energy for conviction analysis
Timeframe Recommendations
Works on all timeframes. Higher timeframes provide smoother readings; lower timeframes show more granular momentum changes.
Limitations
Physics analogies are conceptual and not literal market physics
Divergence detection uses pivot-based lookback and may lag
Force calculation uses volume ratio as mass proxy
Kinetic energy is a derived metric, not actual energy
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes. It does not constitute financial advice. Past performance does not guarantee future results. Always use proper risk management.
- Made with passion by officialjackofalltrades
Fractal Market Geometry [JOAT]
Fractal Market Geometry
Overview
Fractal Market Geometry is an open-source overlay indicator that combines fractal analysis with harmonic pattern detection, Fibonacci retracements and extensions, Elliott Wave concepts, and Wyckoff phase identification. It provides traders with a geometric framework for understanding market structure and identifying potential reversal patterns with multi-factor signal confirmation.
What This Indicator Does
The indicator calculates and displays:
Fractal Detection - Identifies fractal highs and lows using Williams-style pivot analysis with configurable period
Fractal Dimension - Calculates market complexity using range-based dimension estimation
Harmonic Patterns - Detects Gartley, Butterfly, Bat, Crab, Shark, Cypher, and ABCD patterns using Fibonacci ratios
Fibonacci Retracements - Key levels at 38.2%, 50%, and 61.8%
Fibonacci Extensions - Projection level at 161.8%
Elliott Wave Count - Simplified wave counting based on pivot detection (1-5)
Wyckoff Phase - Volume-based phase identification (Accumulation, Markup, Distribution, Neutral)
Golden Spiral Levels - ATR-based support and resistance levels using phi (1.618) ratio
Trend Detection - EMA crossover trend identification (20/50 EMA)
How It Works
Fractal detection uses a configurable period to identify swing points:
detectFractalHigh(simple int period) =>
bool result = true
float centerVal = high
for i = 0 to period - 1
if high >= centerVal or high >= centerVal
result := false
break
Harmonic pattern detection uses Fibonacci ratio analysis between swing points. Each pattern has specific ratio requirements:
Gartley: AB 0.382-0.618, BC 0.382-0.886, CD 1.27-1.618
Butterfly: AB 0.382-0.5, BC 0.382-0.886, CD 1.618-2.24
Bat: AB 0.5-0.618, BC 1.13-1.618, CD 1.618-2.24
Crab: AB 0.382-0.618, BC 0.382-0.886, CD 2.24-3.618
Shark: AB 0.382-0.618, BC 1.13-1.618, CD 1.618-2.24
Cypher: AB 0.382-0.618, BC 1.13-1.414, CD 0.786-0.886
Wyckoff phase detection analyzes volume relative to price movement:
wyckoffPhase(simple int period) =>
float avgVol = ta.sma(volume, period)
float priceChg = ta.change(close, period)
string phase = "NEUTRAL"
if volume > avgVol * 1.5 and math.abs(priceChg) < close * 0.02
phase := "ACCUMULATION"
else if volume > avgVol * 1.5 and math.abs(priceChg) > close * 0.05
phase := "MARKUP"
else if volume < avgVol * 0.7
phase := "DISTRIBUTION"
phase
Signal Generation
Signals use multi-factor confirmation for accuracy:
BUY Signal: Fractal low + Uptrend (EMA20 > EMA50) + RSI 30-55 + Bullish candle + Volume confirmation
SELL Signal: Fractal high + Downtrend (EMA20 < EMA50) + RSI 45-70 + Bearish candle + Volume confirmation
Pattern Detection: Label appears when harmonic pattern completes at current bar
Dashboard Panel (Top-Right)
Dimension - Fractal dimension value (market complexity measure)
Last High - Most recent fractal high price
Last Low - Most recent fractal low price
Pattern - Current harmonic pattern name or NONE
Elliott Wave - Current wave count (Wave 1-5) or OFF
Wyckoff - Current market phase or OFF
Trend - BULLISH, BEARISH, or NEUTRAL based on EMA crossover
Signal - BUY, SELL, or WAIT status
Visual Elements
Fractal Markers - Small triangles at fractal highs (down arrow) and lows (up arrow)
Geometry Lines - Dashed lines connecting the most recent fractal high and low
Fibonacci Levels - Clean horizontal lines at 38.2%, 50%, and 61.8% retracement levels
Fibonacci Extension - Horizontal line at 161.8% extension level
Golden Spiral Levels - Support and resistance lines based on ATR x 1.618
3D Fractal Field - Optional depth layers around swing levels (OFF by default)
Harmonic Pattern Markers - Small diamond shapes when Crab, Shark, or Cypher patterns detected
Pattern Labels - Text label showing pattern name when detected
Signal Labels - BUY/SELL labels on confirmed multi-factor signals
Input Parameters
Fractal Period (default: 5) - Bars on each side for fractal detection
Geometry Depth (default: 3) - Complexity of geometric calculations
Pattern Sensitivity (default: 0.8) - Tolerance for pattern ratio matching
Show Fibonacci Levels (default: true) - Display retracement levels
Show Fibonacci Extensions (default: true) - Display extension level
Elliott Wave Detection (default: true) - Enable wave counting
Wyckoff Analysis (default: true) - Enable phase detection
Golden Spiral Levels (default: true) - Display spiral support/resistance
Show Fractal Points (default: true) - Display fractal markers
Show Geometry Lines (default: true) - Display connecting lines
Show Pattern Labels (default: true) - Display pattern name labels
Show 3D Fractal Field (default: false) - Display depth layers
Show Harmonic Patterns (default: true) - Display pattern markers
Show Buy/Sell Signals (default: true) - Display signal labels
Suggested Use Cases
Identify potential reversal zones using harmonic pattern completion
Use Fibonacci levels for entry, stop-loss, and target planning
Monitor Wyckoff phases for accumulation/distribution awareness
Track Elliott Wave counts for trend structure analysis
Use fractal dimension to gauge market complexity
Wait for multi-factor signal confirmation before entering trades
Timeframe Recommendations
Best on 1H to Daily charts. Lower timeframes produce more fractals but with less significance. Higher timeframes provide stronger levels and more reliable signals.
Limitations
Harmonic pattern detection uses simplified ratio ranges and may not match all textbook definitions
Elliott Wave counting is basic and does not include all wave rules
Wyckoff phase detection is volume-based approximation
Fractal dimension calculation is simplified
Signals require fractal confirmation which has inherent lag equal to the fractal period
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes. It does not constitute financial advice. Past performance does not guarantee future results. Always use proper risk management.
- Made with passion by officialjackofalltrades
Dimensional Support ResistanceDimensional Support Resistance
Overview
Dimensional Support Resistance is an open-source overlay indicator that automatically detects and displays clean, non-overlapping support and resistance levels using pivot-based analysis with intelligent filtering. It identifies significant swing highs and lows, filters them by minimum distance to prevent visual clutter, and provides volume-confirmed bounce signals.
What This Indicator Does
The indicator calculates and displays:
Dynamic Pivot Levels - Automatically detected swing highs and lows based on configurable pivot strength
Distance Filtering - Ensures levels are spaced apart by a minimum percentage to prevent overlap
S/R Zones - Visual zones around each level showing the price area of significance
Bounce Detection - Identifies when price reverses at support or resistance levels
Volume Confirmation - Strong signals require above-average volume for confirmation
How It Works
Pivot detection scans for swing highs and lows using a configurable strength parameter. A pivot low requires the low to be lower than all surrounding bars within the strength period.
Signal Generation
The indicator generates bounce signals using TradingView's built-in pivot detection combined with candle reversal confirmation:
Support Bounce: Pivot low forms with bullish close (close > open)
Resistance Bounce: Pivot high forms with bearish close (close < open)
Strong Bounce: Bounce occurs with volume 1.5x above 20-period average
A cooldown period of 15 bars prevents signal spam.
Dashboard Panel
A compact dashboard displays:
Support - Count of active support levels
Resistance - Count of active resistance levels
Dashboard position is configurable (Top Left, Top Right, Bottom Left, Bottom Right).
Visual Elements
Support Lines - Green horizontal lines at support levels
Resistance Lines - Red horizontal lines at resistance levels
S/R Zones - Semi-transparent boxes around levels showing zone width
Price Labels - S: and R: labels showing exact price of nearest levels
BOUNCE Markers - Triangle shapes with text when price bounces at a level
STRONG Markers - Label shapes when bounce occurs with high volume
Input Parameters
Lookback Period (default: 100) - Historical bars to scan for pivots
Pivot Strength (default: 8) - Bars on each side required for valid pivot (higher = fewer but stronger levels)
Max Levels Each Side (default: 2) - Maximum support and resistance levels displayed
Zone Width % (default: 0.15) - Width of zones around each level as percentage of price
Min Distance Between Levels % (default: 1.0) - Minimum spacing between levels to prevent overlap
Show S/R Zones (default: true) - Toggle zone visualization
Show Bounce Signals (default: true) - Toggle signal markers
Support Color (default: #00ff88) - Color for support elements
Resistance Color (default: #ff3366) - Color for resistance elements
Suggested Use Cases
Identify key support and resistance levels for entry and exit planning
Use bounce signals as potential reversal confirmation
Combine with other indicators for confluence-based trading decisions
Monitor strong signals for high-probability setups with volume confirmation
Timeframe Recommendations
Works on all timeframes. Higher timeframes (4H, Daily) provide more significant levels with fewer signals. Lower timeframes show more granular structure but may produce more noise.
Limitations
Pivot detection requires lookback bars, so very recent pivots may not be immediately visible
Bounce signals are based on pivot formation and may lag by the pivot strength period
Levels are recalculated on each bar, so they may shift as new pivots form
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes. It does not constitute financial advice. Past performance does not guarantee future results. Always use proper risk management and conduct your own analysis before trading.
- Made with passion by officialjackofalltrades
G Trade SessionsWe built this indicator because we was tired of guessing when major markets open and close. It draws simple boxes around each trading session so you can instantly see where the action is.
What it does:
Shows you the four key sessions — Asia, Frankfurt, London, and New York — as transparent boxes right on your chart. Each box marks the high and low of that session, which is super useful for spotting support/resistance levels.
Why I like it:
No clutter — boxes are subtle and don't get in the way
Labels switch from black to white automatically depending on your chart theme (dark or light)
Sessions don't overlap, so the chart stays clean
You can turn off any session you don't care about
Hope you find it useful!
Quantum Flow [JOAT]Quantum Flow Nexus - Advanced Multi-Dimensional Flow Analysis
Overview
Quantum Flow Nexus is an open-source overlay indicator that combines custom EMA-based flow calculations with order flow analysis, multi-timeframe correlation, and liquidity zone detection. It provides traders with a structured framework for analyzing market momentum and identifying potential entry points based on multiple confirming factors.
What This Indicator Does
The indicator calculates several analytical components:
Quantum Flow Oscillator - A custom oscillator built from multiple EMA layers at different depths
Flow Momentum - Rate of change of the flow oscillator
Order Flow Delta - Buy vs sell volume pressure estimation
Smart Money Index - Volume-weighted directional bias metric
Multi-Timeframe Entanglement - Price correlation across 15m and 60m timeframes
Liquidity Zones - Historical swing high/low levels with volume significance
Wave Function State - Momentum-based decisiveness detection
How It Works
The core quantum oscillator uses a custom EMA calculation with depth layering:
quantumOscillator(series float src, simple int len, simple int depth) =>
float osc = 0.0
for i = 1 to depth
int fastLen = len / i
int slowLen = len * i
float emaFast = quantumEMA(src, fastLen)
float emaSlow = quantumEMA(src, slowLen)
osc += (emaFast - emaSlow) / depth
osc
This creates a multi-layered view of momentum by comparing EMAs at progressively different speeds.
Signal Generation
Basic signals occur when:
Bullish: Flow crosses above lower band + positive momentum + positive order flow delta
Bearish: Flow crosses below upper band + negative momentum + negative order flow delta
Strong signals require additional confirmation:
Smart Money Index above/below threshold (50/-50)
Entanglement score above 50%
Wave function in collapsed state (decisive momentum)
Confluence Score Calculation
The indicator combines multiple factors into a single confluence percentage:
float confluenceScore = (flowStrength * 20 + entanglementScore * 0.3 + math.abs(orderFlowDelta) * 0.5) / 3
Dashboard Panel (Top-Right)
Flow Strength - Distance from center line normalized by standard deviation
Momentum - Current rate of change of flow
Trend - BULLISH/BEARISH/NEUTRAL based on flow vs EMA
Confluence Score - Combined factor percentage
Order Flow Delta - Buy/sell pressure percentage
Entanglement - Multi-timeframe correlation score
Wave State - COLLAPSED or SUPERPOSITION
Signal - Current actionable status
Visual Elements
Flow Lines - Center flow line with upper/lower bands
Quantum Zones - Filled areas between bands showing bullish/bearish zones
3D Quantum Field - Five oscillating layers creating depth visualization
Order Flow Blocks - Boxes highlighting significant order flow imbalances
Liquidity Heatmap - Dashed lines at significant historical levels
Signal Markers - Triangles for basic signals, labels for strong signals
Input Parameters
Flow Period (default: 21) - Base period for flow calculations
Quantum Depth (default: 3) - Number of EMA layers
Sensitivity (default: 1.5) - Band width multiplier
Liquidity Max Levels (default: 8) - Maximum liquidity zones displayed
Liquidity Min Strength Ratio (default: 0.10) - Minimum volume significance
Suggested Use Cases
Identify momentum direction using flow oscillator position
Confirm entries with order flow and smart money readings
Use liquidity zones as potential support/resistance areas
Wait for strong signals with multiple factor confirmation
Timeframe Recommendations
Effective on 15m to Daily charts. Lower timeframes may produce more signals with higher noise levels.
Limitations
Order flow is estimated from candle structure, not actual order book data
Multi-timeframe requests add processing time
Liquidity zones are based on historical pivots and may not reflect current market structure
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes. It does not constitute financial advice. Past performance does not guarantee future results. Always use proper risk management.
- Made with passion by officialjackofalltrades
Ocean Master [JOAT]Ocean Master QE - Advanced Oceanic Market Analysis with Quantum Flow Dynamics
Overview
Ocean Master QE is an open-source overlay indicator that combines multiple analytical techniques into a unified market analysis framework. It uses ATR-based dynamic channels, volume-weighted order flow analysis, multi-timeframe correlation (quantum entanglement concept), and harmonic oscillator calculations to provide traders with a comprehensive view of market conditions.
What This Indicator Does
The indicator calculates and displays several key components:
Dynamic Price Channels - ATR-adjusted upper, middle, and lower channels that adapt to current volatility conditions
Order Flow Analysis - Separates buying and selling volume pressure to calculate a directional delta
Smart Money Index - Volume-weighted order flow metric that highlights potential institutional activity
Harmonic Oscillator - Weighted combination of 10 Fibonacci-period EMAs (5, 8, 13, 21, 34, 55, 89, 144, 233, 377) to identify trend direction
Multi-Timeframe Correlation - Measures price correlation across 1H, 4H, and Daily timeframes
Wave Function Analysis - Momentum-based state detection that identifies when price action becomes decisive
How It Works
The core channel calculation uses ATR with a configurable quantum sensitivity factor:
float atr = ta.atr(i_atrLength)
float quantumFactor = 1.0 + (i_quantumSensitivity * 0.1)
float quantumATR = atr * quantumFactor
upperChannel := ta.highest(high, i_length) - (quantumATR * 0.5)
lowerChannel := ta.lowest(low, i_length) + (quantumATR * 0.5)
midChannel := (upperChannel + lowerChannel) * 0.5
Order flow is calculated by separating volume into buy and sell components based on candle direction:
The harmonic oscillator weights shorter EMAs more heavily using inverse weighting (1/1, 1/2, 1/3... 1/10), creating a responsive yet smooth trend indicator.
Signal Generation
Confluence signals require multiple conditions to align:
Bullish: Harmonic oscillator crosses above zero + positive Smart Money Index + positive Order Flow Delta
Bearish: Harmonic oscillator crosses below zero + negative Smart Money Index + negative Order Flow Delta
Dashboard Panel (Top-Right)
Bias - Current market direction based on price vs mid-channel
Entanglement - Multi-timeframe correlation score (0-100%)
Wave State - COLLAPSED (decisive) or SUPERPOSITION (uncertain)
Volume - Current volume relative to 20-period average
Volatility - ATR as percentage of price
Smart Money - Volume-weighted order flow reading
Visual Elements
Ocean Depth Layers - Gradient fills between channel levels representing different price zones
Channel Lines - Upper (surface), middle, and lower (seabed) dynamic levels
Divergence Markers - Triangle shapes when harmonic oscillator crosses zero
Confluence Labels - BULL/BEAR labels when multiple factors align
Suggested Use Cases
Identify trend direction using the harmonic oscillator and channel position
Monitor order flow for potential institutional activity
Use multi-timeframe correlation to confirm trade direction across timeframes
Watch for confluence signals where multiple factors align
Input Parameters
Length (default: 14) - Base period for channel and indicator calculations
ATR Length (default: 14) - Period for ATR calculation
Quantum Depth (default: 3) - Complexity factor for calculations
Quantum Sensitivity (default: 1.5) - Channel width multiplier
Timeframe Recommendations
Works on all timeframes. Higher timeframes (4H, Daily) provide smoother signals; lower timeframes require faster reaction times and may produce more noise.
Limitations
Multi-timeframe requests add processing overhead
Order flow estimation is based on candle direction, not actual order book data
Correlation calculations require sufficient historical data
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes. It does not constitute financial advice. Past performance does not guarantee future results. Always use proper risk management and conduct your own analysis before trading.
- Made with passion by officialjackofalltrades
SterlCore FX [JOATSterlCore FX Matrix is a multi-timeframe forex indicator that integrates market structure analysis, central bank policy proxies, currency strength correlation, session-based liquidity tracking, and volatility diagnostics into a single overlay system.
Note: This script is published as an invite-only INDICATOR. It does not generate backtesting results or automated trade execution. Access requires authorization through the script's access control settings.
## Why This Script Merits Invite-Only Protection
This indicator combines multiple analytical dimensions that individually exist as separate tools across the trading community. The value proposition lies in the specific integration methodology and composite scoring system that synthesizes:
Multi-timeframe EMA lattice with adaptive ATR channels for structure analysis
Central bank policy pressure assessment using normalized currency index calculations
Real-time currency strength matrix across eight major currencies with correlation intelligence
Session-specific VWAP calculations with drift metrics and range analysis
Composite macro confluence scoring that weights and combines all analytical modules
The proprietary elements include the mathematical weighting system for the macro confluence score, the specific normalization methods for currency strength calculations, and the integration logic that prevents conflicting signals across modules. While individual components like EMAs and RSI are standard, their specific combination, the composite scoring methodology, and the multi-module integration represent original development work that justifies source code protection.
---
## How Components Work Together
The indicator's value comes from how its modules interact, not from any single component:
Data Flow:
1. Multi-timeframe EMAs establish directional bias across strategic, tactical, and execution timeframes
2. Currency strength matrix identifies which currencies are strengthening/weakening across the broader market
3. Policy proxies assess central bank pressure differentials between base and quote currencies
4. Session VWAPs track intraday institutional positioning and drift
5. Correlation grid monitors whether related pairs confirm or contradict the current pair's signals
6. Momentum and volatility filters ensure signals only fire during favorable market conditions
Integration Logic:
Each module produces a normalized score (-1 to +1). These scores are weighted and combined into the macroConfluence composite:
Structure score receives highest weight (50%) as the primary trend filter
Carry composite (30%) captures policy-driven flows
Currency strength spread (20%) validates pair-specific momentum
Momentum, liquidity, session drift, and correlation act as modifiers that can dampen or amplify signals
Why This Integration Matters:
A standard EMA crossover might signal "buy" while currency strength shows the base currency weakening, session VWAP shows price below fair value, and correlation pairs are diverging. The composite scoring system catches these conflicts and reduces signal confidence accordingly. This multi-dimensional validation is what separates this indicator from simple mashups that display multiple indicators without integration.
---
## Core Functionality
This indicator addresses the challenge of synthesizing multiple analytical dimensions in forex trading. Currency markets operate across multiple timeframes simultaneously, with central bank policy shifts, cross-pair correlations, and session-specific liquidity patterns all influencing price action. Most indicators focus on a single dimension; this script attempts to integrate several.
What This Script Does:
Multi-timeframe structure analysis using synchronized EMAs across strategic (daily), tactical (4-hour), and execution (hourly) timeframes
Central bank policy pressure assessment through normalized currency index proxies
Real-time currency strength matrix tracking eight major currencies (USD, EUR, GBP, JPY, AUD, CAD, CHF, NZD)
Cross-pair correlation monitoring using configurable reference pairs
Session-based VWAP calculations with drift and range metrics for Asia, Europe, and US trading windows
Market structure detection including break-of-structure (BOS) confirmation, liquidity sweep identification, and RSI-based divergence alerts
Composite macro confluence score combining all modules with configurable weights
---
## Technical Architecture
### Multi-Timeframe Structure Lattice
The indicator calculates exponential moving averages (EMAs) across three timeframes:
Strategic EMA (default: Daily timeframe, 96-period EMA) — Anchors to longer-term monetary drift and macro flows
Tactical EMA (default: 4-hour timeframe, 55-period EMA) — Captures rotational pressure during positioning for economic data or policy events
Execution EMA (default: 1-hour timeframe, 21-period EMA) — Tracks microstructure in real time
An adaptive ATR-based channel surrounds the execution EMA to define a "value corridor" for entry consideration. Break-of-structure (BOS) logic requires price to close beyond prior swing highs/lows by a configurable ATR percentage threshold to reduce false breakouts.
### Policy Gradient & Carry Intelligence
The script uses currency index proxies (defaults: FX_IDC:EURUSD and FX_IDC:USDJPY ) to approximate central bank policy pressure. These proxies are smoothed via EMA and normalized over a lookback period.
The carryComposite calculation blends:
Normalized policy spread between base and quote currency proxies
Policy drift (difference between tactical and macro timeframe policy spreads)
Carry acceleration (rate of change in policy spread)
Carry opportunity signals appear when the composite exceeds a threshold and aligns with structure bias and currency strength dispersion.
### Currency Strength Matrix
Eight currency baskets are tracked using configurable symbol inputs (defaults use $FX_IDC pairs). Each currency's strength is normalized to a -1 to +1 scale relative to its lookback range. The heatmap table displays which currencies are dominating, allowing quick assessment of broad market moves before they appear in individual pair price action.
### Correlation Intelligence Grid
Three reference pairs (defaults: FX_IDC:EURUSD , FX_IDC:GBPUSD , FX_IDC:USDJPY ) are monitored on a higher timeframe. The script calculates correlation coefficients and assigns qualitative descriptors: "Lockstep +", "Aligned +", "Loose", "Aligned -", or "Lockstep -". A correlation consensus value feeds into the macro confluence calculation, dampening signals when reference pairs show conflicting behavior.
### Momentum, Volatility & Liquidity Stack
Dual ROC momentum — Fast and slow rate-of-change calculations prevent whipsaw from single-length oscillators
Volatility pulse — Compares current ATR to a slower baseline; signals require volatility above a floor threshold
Volatility forecast slope — Uses linear regression to project ATR 21 bars ahead, warning of imminent expansion or contraction
Liquidity pulse — Compares current volume to smoothed average; low participation is visually indicated via background tinting
### Session Awareness & Performance Console
Asia, Europe, and US trading sessions are tracked with configurable UTC windows. Each session maintains:
Live VWAP that resets at session open
Drift score quantifying price deviation from VWAP in ATR terms
Range percentage showing session expansion relative to VWAP
Session bias composite feeds into macro confluence to reduce signal aggression when all sessions are mean-reverting.
### Liquidity & Market Structure Suite
Liquidity sweeps — Detects stop hunts above prior highs or below prior lows within a configurable lookback
RSI divergence — Identifies momentum divergences using confirmed pivot points only
Supply/demand zones — Automatically generated from pivot highs/lows and projected forward for a set number of bars
### Macro Alignment Engine
The macroConfluence score combines:
Structure score (weighted average of strategic/tactical/execution EMAs)
Carry composite
Currency strength spread (base minus quote)
Momentum score
Liquidity modifier
Session bias composite
Correlation consensus
Long/short alignment signals require:
Macro confluence exceeding configurable threshold (default: 0.55)
Volatility pulse above floor threshold
Optional: Price above/below tactical EMA (execution filter toggle)
---
## Visual Elements
Candle Coloring: Candles are recolored based on macro confluence: teal for bullish alignment, magenta for bearish alignment, neutral gray for distribution phases.
Background Tint: Volatility intensity modulates chart background; bold colors indicate elevated ATR, washed-out tones suggest choppy conditions.
Labels:
Macro Align Long/Short — Primary entry signals when confluence exceeds threshold
BOS↑/↓ — Break-of-structure confirmation
Sweep↑/↓ — Liquidity sweep detection
RSI Bull/Bear Div — Momentum divergence alerts
Carry Bias± — Policy-strength alignment flags
Session Overlays: Transparent background shading indicates active trading sessions (Asia, Europe, US) with configurable opacity.
Session VWAPs: Each region's VWAP is plotted in a distinct color (teal for Asia, blue for Europe, purple for US).
---
## Dashboard Tables
The indicator includes several configurable information tables:
Intelligence Dashboard (top-right, default) — Displays strategic/tactical/execution bias, policy pressure, currency spread, volatility pulse, policy impulse, session drift, correlation, and macro state
Currency Heatmap (bottom-right, default) — Shows normalized strength values for all tracked currencies
Correlation Grid (bottom-left, default) — Lists reference pairs with correlation coefficients and qualitative states
Session Performance Panel (bottom-center, default) — Displays drift scores and range percentages for each session
Diagnostics Table (top-left, optional) — Additional session range metrics and liquidity pulse values
All table positions are configurable via input settings to avoid overlap with TradingView UI elements.
---
## Configuration Parameters
Multi-Timeframe Structure: All EMA timeframes and lengths are adjustable. Default strategic timeframe is Daily; tactical is 4-hour; execution is 1-hour.
Policy Proxies: Base and quote currency policy proxy symbols are user-configurable. Defaults use $FX_IDC pairs for broad compatibility.
Currency Strength: Each currency's tracking can be toggled on/off. Symbol inputs allow substitution of alternative data sources if default indices are unavailable.
Correlation References: Three reference pair symbols, timeframe, and lookback period are all configurable.
Signal Thresholds: Macro alignment trigger, volatility pulse floor, and carry opportunity threshold are adjustable to match different trading styles.
Visual Controls: Label visibility, zone display, session overlays, VWAP plotting, and all dashboard tables can be toggled independently.
---
## Technical Implementation Notes
Pine Script v6 compliant
All request.security calls use lookahead_off to prevent historical repainting
BOS, divergence, and sweep detection rely on confirmed pivot points only
Session VWAP calculations reset strictly on session boundaries
Zone objects are automatically capped and managed to respect TradingView resource limits
All calculations include division-by-zero guards and NA handling for real-time stability
---
## Usage Considerations
Timeframe Selection: The indicator is designed for forex pairs. Default timeframes (D/4H/1H) are optimized for swing and intraday trading. Scalpers may prefer shorter execution timeframes; position traders may extend strategic to weekly.
Pair Compatibility: Tested on major pairs ( FX:EURUSD , FX:GBPUSD , FX:USDJPY , OANDA:USDCHF , OANDA:AUDUSD , OANDA:USDCAD , OANDA:NZDUSD ), cross-pairs, and FX-derived CFDs. Policy proxy symbols should be adjusted to match your data feed availability.
Session Windows: Default UTC windows (Asia: 22:00-06:00, Europe: 06:00-13:00, US: 13:00-21:00) can be customized. Adjust for daylight saving time transitions as needed.
Signal Interpretation: Macro alignment signals indicate confluence across multiple dimensions but do not guarantee profitable outcomes. Use in conjunction with risk management and market context. The indicator is a tool for analysis, not a standalone trading system.
Resource Usage: With all features enabled, the script operates within TradingView's resource budgets. Disable unused modules (currency tracking, correlation grid, diagnostics) if running multiple instances on a single layout.
---
## Limitations & Compromises
Policy proxies are approximations using currency indices; actual central bank policy requires external economic analysis
Correlation calculations use price-based correlation, which may lag during regime shifts
Session VWAPs reset at session boundaries; overlapping sessions (e.g., London/NY) may show conflicting signals
Supply/demand zones are generated from pivots; false zones may appear during ranging markets
Macro confluence is a composite score; individual components may conflict, requiring discretionary interpretation
The indicator is optimized for trending and rotational markets. Performance may degrade during extended consolidation or during major economic event volatility when multiple central banks act simultaneously.
---
## Alert System
The script includes four alert conditions:
SterlCore FX Bullish Alignment — Fires when macro confluence exceeds threshold with volatility and EMA filters satisfied
SterlCore FX Bearish Alignment — Mirror of bullish logic
SterlCore FX Carry Long — Fires when carry composite, currency spread, and structure align for long bias
SterlCore FX Carry Short — Mirror of carry long logic
All alerts fire once per bar at bar close.
-Made with passion by officialjackofalltrades
Trend Strength Matrix [JOAT]Trend Strength Matrix — Multi-Timeframe Confluence Analysis System
This indicator addresses a specific analytical challenge: how to efficiently compare multiple technical measurements across different timeframes while accounting for their varying scales and interpretations. Rather than managing separate indicator windows with different scales, this tool normalizes four distinct analytical approaches to a common -1 to +1 scale and presents them in a unified matrix format.
Why This Combination Adds Value
The core problem this indicator solves is analytical fragmentation. Traders often use multiple indicators but struggle with:
1. **Scale Inconsistency**: RSI ranges 0-100, MACD has no fixed range, ADX ranges 0-100 but measures strength not direction
2. **Timeframe Coordination**: Checking multiple timeframes requires switching between charts or cramming multiple indicators
3. **Cognitive Load**: Processing different indicator types simultaneously creates mental overhead
4. **Confluence Assessment**: Determining when multiple approaches agree requires manual comparison
This indicator specifically addresses these issues by creating a standardized analytical framework where different measurement approaches can be directly compared both within and across timeframes.
Originality and Technical Innovation
While the individual components (RSI, MACD, ADX, Moving Average) are standard, the originality lies in:
1. **Unified Normalization System**: Each component is mathematically transformed to a -1 to +1 scale using component-specific normalization that preserves the indicator's core characteristics
2. **Multi-Timeframe Weighting Algorithm**: Higher timeframes receive proportionally more weight (40% current, 25% next, 20% third, 15% fourth) based on the principle that longer timeframes provide more significant context
3. **Real-Time Confluence Scoring**: The composite calculation provides an instant assessment of how much the different analytical approaches agree
4. **Adaptive Visual Encoding**: The heatmap format allows immediate pattern recognition of agreement/disagreement across both indicators and timeframes
How the Components Work Together
Each component measures a different aspect of market behavior, and their combination provides a more complete analytical picture:
**Momentum Component (RSI-based)**: Measures the velocity of price changes by comparing average gains to losses
**Trend Component (MACD-based)**: Measures the relationship between fast and slow moving averages, indicating trend acceleration/deceleration
**Strength Component (ADX-based)**: Measures trend strength regardless of direction, then applies directional bias
**Position Component (MA-based)**: Measures price position relative to a reference average
The mathematical relationship between these components creates a comprehensive view:
- When all four agree (similar colors), it suggests multiple analytical approaches are aligned
- When they disagree (mixed colors), it highlights analytical uncertainty or transition periods
- The composite score quantifies the degree of agreement numerically
Detailed Component Analysis
**1. Momentum Oscillator Component**
This component transforms RSI into a centered oscillator by subtracting 50 and dividing by 50, creating a -1 to +1 range where 0 represents equilibrium between buying and selling pressure.
// Momentum calculation normalized to -1 to +1 scale
float rsi = ta.rsi(close, rsiLength)
float rsiScore = (rsi - 50) / 50
// Result: 0 at equilibrium, +1 at extreme overbought, -1 at extreme oversold
**2. Moving Average Convergence Component**
MACD is normalized by its own volatility (standard deviation) to create a bounded oscillator. This prevents the unbounded nature of MACD from dominating the composite calculation.
// MACD normalized by its historical volatility
= ta.macd(close, macdFast, macdSlow, macdSignal)
float macdStdev = ta.stdev(macdLine, 100)
float macdScore = macdStdev != 0 ? math.max(-1, math.min(1, macdLine / (macdStdev * 2))) : 0
**3. Directional Movement Component**
This combines ADX (strength) with directional movement (+DI vs -DI) to create a directional strength measurement. ADX alone shows strength but not direction; this component adds directional context.
// ADX-based directional strength
= calcADX(adxLength)
float adxStrength = math.min(adx / 50, 1) // Normalize ADX to 0-1
float adxDirection = plusDI > minusDI ? 1 : -1 // Direction bias
float adxScore = adxStrength * adxDirection // Combine strength and direction
**4. Price Position Component**
This measures price deviation from a moving average, weighted by the magnitude of deviation to distinguish between minor and significant displacements.
// Price position relative to moving average
float ma = ta.sma(close, maLength)
float maDirection = close > ma ? 1 : -1
float maDeviation = math.abs(close - ma) / ma * 10 // Percentage deviation scaled
float maScore = math.max(-1, math.min(1, maDirection * math.min(maDeviation, 1)))
Multi-Timeframe Integration Logic
The multi-timeframe system uses a weighted average that gives more influence to higher timeframes:
// Timeframe weighting system
float currentTF = composite * 0.40 // Current timeframe: 40%
float higherTF1 = composite_tf2 * 0.25 // Next higher: 25%
float higherTF2 = composite_tf3 * 0.20 // Third higher: 20%
float higherTF3 = composite_tf4 * 0.15 // Fourth higher: 15%
float multiTFComposite = currentTF + higherTF1 + higherTF2 + higherTF3
This weighting reflects the principle that higher timeframes provide more significant context for market direction, while lower timeframes provide timing precision.
What the Dashboard Shows
The heatmap displays a grid where:
Each row represents a timeframe
Each column shows one component's normalized reading
Colors indicate the value: green shades for positive, red shades for negative, gray for neutral
The rightmost column shows the composite average for that timeframe
Visual Elements
Moving Average Line — A simple moving average plotted on the price chart
Background Tint — Subtle coloring based on the composite score
Shift Labels — Markers when the composite crosses threshold values
Dashboard Table — The main heatmap display
Inputs
Calculation Parameters:
Momentum Length (default: 14)
MACD Fast/Slow/Signal (default: 12/26/9)
Directional Movement Length (default: 14)
Moving Average Length (default: 50)
Timeframe Settings:
Enable/disable multi-timeframe analysis
Select additional timeframes to display
How to Read the Display
Similar colors across a row indicate the components are showing similar readings
Mixed colors indicate the components are showing different readings
The composite percentage shows the average of all four components
Alerts
Composite crossed above/below threshold values
Strong readings (above 50% or below -50%)
Important Limitations and Realistic Expectations
This indicator displays current analytical conditions—it does not predict future price movements
Agreement between components indicates current analytical alignment, not future price direction
All four components are based on historical price data and inherently lag price action
Market conditions can change rapidly, making current readings irrelevant
Different parameter settings will produce different readings and interpretations
No combination of technical indicators can reliably predict future market behavior
Strong readings in one direction do not guarantee continued movement in that direction
The composite score reflects mathematical relationships, not market fundamentals or sentiment
This tool should be used as one input among many in a comprehensive analytical approach
Appropriate Use Cases
This indicator is designed for:
- Analytical organization and efficiency
- Multi-timeframe confluence assessment
- Pattern recognition in indicator relationships
- Educational study of how different analytical approaches relate
- Supplementary analysis alongside other methods
This indicator is NOT designed for:
- Standalone trading signals
- Guaranteed profit generation
- Market timing precision
- Replacement of fundamental analysis
- Automated trading systems
— Made with passion by officialjackofalltrades
Session Volume Analyzer [JOAT]
Session Volume Analyzer — Global Trading Session and Volume Intelligence System
This indicator addresses the analytical challenge of understanding market participation patterns across global trading sessions. It combines precise session detection with comprehensive volume analysis to provide insights into when and how different market participants are active. The tool recognizes that different trading sessions exhibit distinct characteristics in terms of participation, volatility, and volume patterns.
Why This Combination Provides Unique Analytical Value
Traditional session indicators typically only show time boundaries, while volume indicators show raw volume data without session context. This creates analytical gaps:
1. **Session Context Missing**: Volume spikes without session context provide incomplete information
2. **Participation Patterns Hidden**: Different sessions have different participant types (retail, institutional, algorithmic)
3. **Comparative Analysis Lacking**: No easy way to compare volume patterns across sessions
4. **Timing Intelligence Absent**: Understanding WHEN volume occurs is as important as HOW MUCH volume occurs
This indicator's originality lies in creating an integrated session-volume analysis system that:
**Provides Session-Aware Volume Analysis**: Volume data is contextualized within specific trading sessions
**Enables Cross-Session Comparison**: Compare volume patterns between Asian, London, and New York sessions
**Delivers Participation Intelligence**: Understand which sessions are showing above-normal participation
**Offers Real-Time Session Tracking**: Know exactly which session is active and how current volume compares
Technical Innovation and Originality
While session detection and volume analysis exist separately, the innovation lies in:
1. **Integrated Session-Volume Architecture**: Simultaneous tracking of session boundaries and volume statistics creates comprehensive market participation analysis
2. **Multi-Session Volume Comparison System**: Real-time calculation and comparison of volume statistics across different global sessions
3. **Adaptive Volume Threshold Detection**: Automatic identification of above-average volume periods within session context
4. **Comprehensive Visual Integration**: Session backgrounds, volume highlights, and statistical dashboards provide complete market participation picture
How Session Detection and Volume Analysis Work Together
The integration creates a sophisticated market participation analysis system:
**Session Detection Logic**: Uses Pine Script's time functions to identify active sessions
// Session detection based on exchange time
bool inAsian = not na(time(timeframe.period, asianSession))
bool inLondon = not na(time(timeframe.period, londonSession))
bool inNY = not na(time(timeframe.period, nySession))
// Session transition detection
bool asianStart = inAsian and not inAsian
bool londonStart = inLondon and not inLondon
bool nyStart = inNY and not inNY
**Volume Analysis Integration**: Volume statistics are calculated within session context
// Session-specific volume accumulation
if asianStart
asianVol := 0.0
asianBars := 0
if inAsian
asianVol += volume
asianBars += 1
// Real-time session volume analysis
float asianAvgVol = asianBars > 0 ? asianVol / asianBars : 0
**Relative Volume Assessment**: Current volume compared to session-specific averages
float volMA = ta.sma(volume, volLength)
float volRatio = volMA > 0 ? volume / volMA : 1
// Volume classification within session context
bool isHighVol = volRatio >= 1.5 and volRatio < 2.5
bool isVeryHighVol = volRatio >= 2.5
This creates a system where volume analysis is always contextualized within the appropriate trading session, providing more meaningful insights than raw volume data alone.
Comprehensive Session Analysis Framework
**Default Session Definitions** (customizable based on broker timezone):
- **Asian Session**: 1800-0300 (exchange time) - Represents Asian market participation including Tokyo, Hong Kong, Singapore
- **London Session**: 0300-1200 (exchange time) - Represents European market participation
- **New York Session**: 0800-1700 (exchange time) - Represents North American market participation
**Session Overlap Analysis**: The system recognizes and highlights overlap periods:
- **London/New York Overlap**: 0800-1200 - Typically the highest volume period
- **Asian/London Overlap**: 0300-0300 (brief) - Transition period
- **New York/Asian Overlap**: 1700-1800 (brief) - End of NY, start of Asian
**Volume Intelligence Features**:
1. **Session-Specific Volume Accumulation**: Tracks total volume within each session
2. **Cross-Session Volume Comparison**: Compare current session volume to other sessions
3. **Relative Volume Detection**: Identify when current volume exceeds historical averages
4. **Participation Pattern Analysis**: Understand which sessions show consistent high/low participation
Advanced Volume Analysis Methods
**Relative Volume Calculation**:
float volMA = ta.sma(volume, volLength) // Volume moving average
float volRatio = volMA > 0 ? volume / volMA : 1 // Current vs average ratio
// Multi-tier volume classification
bool isNormalVol = volRatio < 1.5
bool isHighVol = volRatio >= 1.5 and volRatio < 2.5
bool isVeryHighVol = volRatio >= 2.5
bool isExtremeVol = volRatio >= 4.0
**Session Volume Tracking**:
// Cumulative session volume with bar counting
if londonStart
londonVol := 0.0
londonBars := 0
if inLondon
londonVol += volume
londonBars += 1
// Average volume per bar calculation
float londonAvgVol = londonBars > 0 ? londonVol / londonBars : 0
**Cross-Session Volume Comparison**:
The system maintains running totals for each session, enabling real-time comparison of participation levels across different global markets.
What the Display Shows
Session Backgrounds — Colored backgrounds indicating which session is active
- Pink: Asian session
- Blue: London session
- Green: New York session
Session Open Lines — Horizontal lines at each session's opening price
Session Markers — Labels (AS, LN, NY) when sessions begin
Volume Highlights — Bar coloring when volume exceeds thresholds
- Orange: High volume (1.5x+ average)
- Red: Very high volume (2.5x+ average)
Dashboard — Current session, cumulative volume, and averages
Color Scheme
Asian — #E91E63 (pink)
London — #2196F3 (blue)
New York — #4CAF50 (green)
High Volume — #FF9800 (orange)
Very High Volume — #F44336 (red)
Inputs
Session Times:
Asian Session window (default: 1800-0300)
London Session window (default: 0300-1200)
New York Session window (default: 0800-1700)
Volume Settings:
Volume MA Length (default: 20)
High Volume threshold (default: 1.5x)
Very High Volume threshold (default: 2.5x)
Visual Settings:
Session colors (customizable)
Show/hide backgrounds, lines, markers
Background transparency
How to Read the Display
Background color shows which session is currently active
Session open lines show where each session started
Orange/red bars indicate above-average volume
Dashboard shows cumulative volume for each session today
Alerts
Session opened (Asian, London, New York)
High volume bar detected
Very high volume bar detected
Important Limitations and Realistic Expectations
Session times are approximate and depend on your broker's server timezone—manual adjustment may be required for accuracy
Volume data quality varies significantly by broker, instrument, and market type
Cryptocurrency and some forex markets trade continuously, making traditional session boundaries less meaningful
High volume indicates participation level only—it does not predict price direction or market outcomes
Session participation patterns can change over time due to market structure evolution, holidays, and economic conditions
This tool displays historical and current market participation data—it cannot predict future volume or price movements
Volume spikes can occur for numerous reasons unrelated to directional price movement (news, algorithmic trading, etc.)
Different instruments exhibit different session sensitivity and volume patterns
Market holidays and special events can significantly alter normal session patterns
Appropriate Use Cases
This indicator is designed for:
- Market participation pattern analysis
- Session-based trading schedule planning
- Volume context and comparison across sessions
- Educational study of global market structure
- Supplementary analysis for session-based strategies
This indicator is NOT designed for:
- Standalone trading signal generation
- Volume-based price direction prediction
- Automated trading system triggers
- Guaranteed session pattern repetition
- Replacement of fundamental or sentiment analysis
Understanding Session Analysis Limitations
Session analysis provides valuable context but has inherent limitations:
- Session patterns can change due to economic conditions, holidays, and market structure evolution
- Volume patterns may not repeat consistently across different market conditions
- Global events can override normal session characteristics
- Different asset classes respond differently to session boundaries
- Technology and algorithmic trading continue to blur traditional session distinctions
— Made with passion by officialjackofalltrades






















