Triad Macro Gauge__________________________________________________________________________________
Introduction
__________________________________________________________________________________
The Triad Macro Gauge (TMG) is designed to provide traders with a comprehensive view of the macroeconomic environment impacting financial markets. By synthesizing three critical market signals— VIX (volatility) , Credit Spreads (credit risk) , and the Stocks/Bonds Ratio (SPY/TLT) —this indicator offers a probabilistic assessment of market sentiment, helping traders identify bullish or bearish macro conditions.
Holistic Macro Analysis: Combines three distinct macroeconomic indicators for multi-dimensional insights.
Customization & Flexibility: Adjust weights, thresholds, lookback periods, and visualization styles.
Visual Clarity: Dynamic table, color-coded plots, and anomaly markers for quick interpretation.
Fully Consistent Scores: Identical values across all timeframes (4H, daily, weekly).
Actionable Signals: Clear bull/bear thresholds and volatility spike detection.
Optimized for timeframes ranging from 4 hour to 1 week , the TMG equips swing traders and long-term investors with a robust tool to navigate macroeconomic trends.
__________________________________________________________________________________
Key Indicators
__________________________________________________________________________________
VIX (CBOE:VIX): Measures market volatility (negatively weighted for bearish signals).
Credit Spreads (FRED:BAMLH0A0HYM2EY): Tracks high-yield bond spreads (negatively weighted).
Stocks/Bonds Ratio (SPY/TLT): Evaluates equity sentiment relative to treasuries (positively weighted).
__________________________________________________________________________________
Originality and Purpose
__________________________________________________________________________________
The TMG stands out by combining VIX, Credit Spreads, and SPY/TLT into a single, cohesive indicator. Its unique strength lies in its fully consistent scores across all timeframes, a critical feature for multi-timeframe analysis.
Purpose: To empower traders with a clear, actionable tool to:
Assess macro conditions
Spot market extremes
Anticipate reversals
__________________________________________________________________________________
How It Works
__________________________________________________________________________________
VIX Z-Score: Measures volatility deviations (inverted for bearish signals).
Credit Z-Score: Tracks credit spread deviations (inverted for bearish signals).
Ratio Z-Score: Assesses SPY/TLT strength (positively weighted for bullish signals).
TMG Score: Weighted composite of z-scores (bullish > +0.30, bearish < -0.30).
Anomaly Detection: Identifies extreme volatility spikes (z-score > 3.0).
All calculations are performed using daily data, ensuring that scores remain consistent across all chart timeframes.
__________________________________________________________________________________
Visualization & Interpretation
__________________________________________________________________________________
The script visualizes data through:
A dynamic table displaying TMG Score , VIX Z, Credit Z, Ratio Z, and Anomaly status, with color gradients (green for positive, red for negative, gray for neutral/N/A).
A plotted TMG Score in Area, Histogram, or Line mode , with adaptive opacity for clarity.
Bull/Bear thresholds as horizontal lines (+0.30/-0.30) to signal market conditions.
Anomaly markers (orange circles) for volatility spikes.
Crossover signals (triangles) for bull/bear threshold crossings.
The table provides an immediate snapshot of macro conditions, while the plot offers a visual trend analysis. All values are consistent across timeframes, simplifying multi-timeframe analysis.
__________________________________________________________________________________
Script Parameters
__________________________________________________________________________________
Extensive customization options:
Symbol Selection: Customize VIX, Credit Spreads, SPY, TLT symbols
Core Parameters: Adjust lookback periods, weights, smoothing
Anomaly Detection: Enable/disable with custom thresholds
Visual Style: Choose display modes and colors
__________________________________________________________________________________
Conclusion
__________________________________________________________________________________
The Triad Macro Gauge by Ox_kali is a cutting-edge tool for analyzing macroeconomic trends. By integrating VIX, Credit Spreads, and SPY/TLT, TMG provides traders with a clear, consistent, and actionable gauge of market sentiment.
Recommended for: Swing traders and long-term investors seeking to navigate macro-driven markets.
__________________________________________________________________________________
Credit & Inspiration
__________________________________________________________________________________
Special thanks to Caleb Franzen for his pioneering work on macroeconomic indicator blends – his research directly inspired the core framework of this tool.
__________________________________________________________________________________
Notes & Disclaimer
__________________________________________________________________________________
This is the initial public release (v2.5.9). Future updates may include additional features based on user feedback.
Please note that the Triad Macro Gauge is not a guarantee of future market performance and should be used with proper risk management. Past performance is not indicative of future results.
Komut dosyalarını "Cycle" için ara
for your comparison: Global M2 Money Supply // Days Offset =📈 Global M2 Money Supply Overlay – Offset Adjustable
This script plots an aggregated, FX-adjusted global M2 money supply index directly on your TradingView chart. It pulls M2 data from multiple global regions—including North America, Europe, Asia, Latin America, and more—and normalizes it for comparison in USD terms.
You can apply a custom time offset to the M2 line using the settings, allowing you to test potential leading or lagging correlations between global liquidity and market price action (e.g., Bitcoin, equities, commodities).
💡 Ideal for macro traders, long-term investors, and anyone interested in liquidity-driven market behavior.
Features:
Combines M2 data from 20+ countries and currency zones
FX-adjusted for consistency in USD terms
Offset slider to shift M2 data forward or backward in time
Scaled to trillions for readability
Plots directly on the main chart for visual comparison
The Hebrew CalendarThis indicator displays the current Hebrew (Jewish) calendar date based on the real-time Gregorian calendar. Features included:
Calculates and displays the current Hebrew day, month, and year.
Recognizes leap years and adjusts month counts accordingly.
Aligns with traditional Hebrew month names (Tishrei, Cheshvan, Kislev, etc.).
The calculations align with the Hebrew Calendar Converter from:
👉 www.chabad.org
The results are shown in a table overlay on your chart's top-right corner. This indicator is great for symbolic traders, astro enthusiasts, or anyone interested in ancient timekeeping systems woven into financial timeframes. Enjoy, time travelers! ⌛
Auto Step Horizontal LinesAuto Step Horizontal lines by custom range
Create automatic horizontal lines by specifying the price range for each line, with each line serving as an observation point for support and resistance levels.
SPY Trend-Based Buy Signals🔹 Overview
This indicator identifies potential buy signals on any asset by combining MACD and Stochastic Oscillator crossovers, while using the SPY’s trend (via exponential moving averages) as a broader market filter.
It helps traders stay aligned with macro momentum and avoid counter-trend entries.
🔍 How it works
SPY Trend Filter (Daily Timeframe):
Pulls SPY (S&P 500 ETF) data using EMAs (5, 20, 80)
Categorizes SPY market trend with color codes:
🟢 Green: Strong uptrend (EMA5 > EMA20 > EMA80)
🟡 Yellow: Potential uptrend / early momentum (EMA5 < EMA20 > EMA80)
🔴 Red: Downtrend (EMA5 < EMA20 < EMA80)
🔵 Blue: Possible trend reversal or mixed trend (EMA5 > EMA20 < EMA80)
Buy Signal Conditions (Combined Logic):
A signal is only triggered when:
- SPY trend is either yellow or blue (indicating a neutral-to-bullish or early recovery environment)
-The Stochastic Oscillator's %D line is below 50, showing possible upside
- A bullish MACD crossover occurs on the current symbol
🟢 Green signal: MACD crossover occurs below 0 (early reversal)
🟠 Orange signal: MACD crossover occurs above 0 (momentum continuation)
📈 Visual Output
🟢 Green label below the bar when an early reversal setup occurs
🟠 Orange label above the bar when a trend continuation signal appears
✅ Best Use Case
Ideal for:
Swing traders and position traders
LEAPS (long-term options) traders aligning entries with SPY trend
Anyone seeking clean, contextual entries filtered by market momentum
⚠️ Note: This indicator is most effective when used on fundamentally strong stocks that are sector leaders with solid earnings growth and market presence. Use technical signals as a complement to quality fundamentals.
ℹ️ Clarification: The moving averages displayed on the chart (e.g., on QQQ) are for visual reference only, to help users understand the color logic of the SPY trend filter. The actual logic and signals are based on SPY’s moving averages, regardless of the charted symbol.
SPDR Sectors TableThis script generates an interactive and customizable SPDR Sectors Table designed to monitor and analyze the performance of the 11 main sectors of the S&P 500 via sector-specific ETFs. It offers a dynamic overview of daily or periodic sector movements, making it a valuable tool for traders, analysts, and investors implementing sector rotation strategies.
█ DEFINITIONS
SPDR Sectors ETFs are exchange-traded funds managed by State Street Global Advisors, which divide the S&P 500 into the following 11 sectors:
- Communication Services (XLC)
- Consumer Discretionary (XLY)
- Consumer Staples (XLP)
- Energy (XLE)
- Financials (XLF)
- Health Care (XLV)
- Industrials (XLI)
- Materials (XLB)
- Real Estate (XLRE)
- Technology (XLK)
- Utilities (XLU)
These ETFs aim to replicate the performance of their respective sectors as defined by the Global Industry Classification Standard (GICS). The funds are periodically rebalanced to match changes in the S&P 500 composition, offering an accurate snapshot of sectoral trends.
█ INDICATOR
The table displays each sector's ticker and full name, following official GICS terminology and SPDR color coding. It also shows percentage performance, calculated daily on intraday charts or based on the selected time frame.
Users can sort the table by either percentage performance or the relative weight of each ETF in the S&P 500. The default weight values reflect data updated as of 17 April 2025, and can be manually adjusted based on the most recent sector weightings available on the official SPDR website.
Opening Price Levels (by Period)This indicator draws clean horizontal lines at the opening prices of key time periods: Year, Quarter, Month, Week, and Day.
Each line is plotted only within its own time range, so there's no visual clutter or vertical jumps between periods.
Perfect for traders who want to:
Identify and react to institutional levels.
Track price behavior relative to major opens.
Keep charts clean and easy to read.
Features:
✅ Toggle visibility for each period (Year, Quarter, Month, Week, Day).
🎯 Accurate open levels, aligned with your chart's timeframe and session settings.
✨ Clean segments — each line only spans its original period.
Buffett Indicator (Wilshire 5000 / GDP)The Buffett Indicator (Wilshire 5000 / GDP) is a macroeconomic metric used to assess whether the U.S. stock market is overvalued or undervalued. It is calculated by dividing the total market capitalization (represented by the Wilshire 5000 Index) by the U.S. Gross Domestic Product (GDP). A value above 1 (or 100%) may indicate an overvalued market, while a value below 1 suggests potential undervaluation. This indicator is best suited for long-term investment analysis.
90-Day Beta to BTCOverview:
The 90-Day Beta to BTC indicator measures the volatility of a specific token relative to Bitcoin (BTC) over the past 90 days. Beta is a widely used statistical measure in financial markets that indicates how much a token's price moves in relation to BTC. A higher beta means the token is more volatile compared to BTC, while a lower beta means it is less volatile or moves similarly to BTC.
How It Works:
This indicator calculates the daily logarithmic returns of both the token and Bitcoin, then computes the covariance between their returns and the variance of Bitcoin’s returns. The resulting Beta value reflects the degree to which the token’s price fluctuates relative to Bitcoin's price over the past 90 days.
Beta > 1: The token is more volatile than Bitcoin, showing higher price swings.
Beta = 1: The token moves in lockstep with Bitcoin, exhibiting similar volatility.
Beta < 1: The token is less volatile than Bitcoin, showing smaller price fluctuations.
Beta = 0: The token's price movement is uncorrelated with Bitcoin’s price.
Negative Beta: The token moves opposite to Bitcoin, indicating an inverse relationship.
Use Case:
This indicator is particularly useful for traders or investors looking to identify tokens with high speculative volatility. Tokens with Beta values above 1 are typically high-risk, high-reward assets, often driven by hype, social trends, or market speculation. Conversely, tokens with Beta values below 1 offer a more stable price relationship with Bitcoin, making them less volatile and potentially safer.
In the context of a Trash Token Tournament, tokens with a higher Beta (greater than 1) may be more attractive due to their heightened volatility and potential for larger price swings, making them the “wild cards” of the market.
Visual Representation:
The Beta value is plotted as a line chart beneath the main price chart, offering a visual representation of the token’s volatility relative to Bitcoin over the last 90 days. Spikes in Beta indicate periods of increased volatility, while drops suggest stability.
AI-123's BTC vs Gold (Lag Correlation)
DISCLAIMER
I made this indicator with the help of ChatGPT and using what I have learned so far from The Pine Script Mastery Course, LOTS of edits based on what I have learned so far had to be made as well as additions and modifications to my liking thanks to what I have learned so far. I am aware this already exists but I have done my best to make a first ever script/indicator while learning how to properly publish as well, so please bear that in mind.
Overview
This indicator analyzes the correlation between Bitcoin (BTC) and Gold (XAUUSD), with a customizable lag applied to the Gold price, providing insight into the macro relationship between these two assets.
It is designed for traders and investors who want to track how Bitcoin and Gold move in relation to each other, particularly when Gold is lagged by a specific number of days.
Key Features:
BTC and Gold (Lagged) Price Overlay: Display Bitcoin (BTC) and Gold (XAUUSD) prices on the chart, with an adjustable lag applied to the Gold price.
Rolling Correlation Calculation: Measures the correlation between Bitcoin and lagged Gold prices over a customizable lookback period.
Adjustable Lag: The number of days that Gold is lagged relative to Bitcoin is fully customizable (default: 20 days).
Customizable Correlation Length: Allows you to choose the lookback period for the correlation (default: 50 days), providing flexibility for short-term or long-term analysis.
Normalized Plotting: Prices of Bitcoin and Gold are normalized for better visual alignment with the correlation values. BTC is divided by 1000, and Gold by 100.
Correlation Scaling: The correlation value is amplified by 10 for better visual clarity and comparison with price data.
Zero Line: Horizontal line representing a correlation of 0, making it easier to identify positive or negative correlation shifts.
Maximum Correlation Lines: Horizontal lines at +10 and -10 values for extreme correlation scenarios.
Input Settings:
Gold Symbol: Customize the Gold ticker (default: OANDA:XAUUSD).
Bitcoin Symbol: Customize the Bitcoin ticker (default: BINANCE:BTCUSDT).
Lag (in trading days): Adjust the number of trading days to lag the Gold price relative to Bitcoin (default: 20).
Correlation Length (days): Set the number of days over which the rolling correlation is calculated (default: 50).
How to Use:
Price Comparison: The BTC (Spot) and Lagged Gold plots give you a side-by-side visual comparison of the two assets, normalized for clarity.
Correlation Line: The correlation line helps you gauge the strength and direction of the relationship between BTC and lagged Gold. Positive values indicate a strong positive correlation, while negative values indicate a negative correlation.
Visual Analysis: Watch how the correlation shifts with changes in lag and correlation length to identify potential market dynamics between Bitcoin and Gold.
Potential Applications:
Macro Trading: Track how Bitcoin and Gold behave in relation to each other during periods of economic uncertainty or inflation.
Sentiment Analysis: Use the correlation data to understand the sentiment between digital and traditional assets.
Strategic Timing: Identify potential opportunities where Bitcoin and Gold show a strong correlation or diverge based on the lag adjustment.
Understanding Macro Trends/Correlations.
Disclaimer:
This indicator is for informational purposes only. The correlation between Bitcoin and Gold does not guarantee future performance, and users should conduct their own research and use risk management strategies when making trading decisions.
Notes: This script uses historical data, so results may vary across different timeframes.
Customization options allow users to adjust the lag and correlation length to better fit their trading strategy.
Future Enhancements: Additional Correlation Line: A second correlation line for different lengths of lag or different assets.
Color-Coding of Correlation: Future updates may include color-coded correlation strength, visually indicating positive or negative correlation more effectively.
[itradesize] ICT Opening range
This indicator automatically annotates the opening ranges of the AM and PM sessions. It should be used on the 1-minute timeframe , although you can check and build a further models when using a 2-3-4 or even 5-minute timeframe. You can customize this under the settings tab.
Additionally, it includes features such as standard deviations and the initial fair value gap presented. Everything is based on what ICT said in his algorithmic timing video.
The algorithm will continue to adjust prices higher or lower until it reaches a predetermined target price. This process will occur within specific time frames: the last 10 minutes before the hour and the first 10 minutes after a new hour begins.
For the AM session opening range, this is from 9:30 to 10:00 , and for the PM session, it's from 13:30 to 14:00 . Defining these ranges allows us to identify the first presented fair value gaps there, as the algorithm is designed to leave these signatures for smart money. This process of time-based delivery precision repeats every day. You can build a whole New York model on this.
It's important to journal and backtest your results results. If the market breaks the opening range on either side and there is evident liquidity, it is highly likely that it will pursue that liquidity.
However, before doing so, the market should retrace back to the first fair value gap if it hasn’t already occurred or back to the 0.75 or 0.5 level of the range at maximum.
When does this happen? Typically, when a macro event occurs— for example, during the lunch macro from 11:30 to 12:00 . In most cases, you can expect a retracement during lunch macro. If the market retraces beyond these levels, there is a higher probability that the expected scenario will not play out.
The algorithm primarily refers to the 30-minute opening range each time. The standard deviation levels can be used to establish algorithmic delivery targets and anticipate another run after the PM session opening range has occurred. The AM session often helps determine the likely direction of movement after the PM session range concludes.
The PM macro runs from 15:15 to 15:45 . At this time, the market will typically operate within the narrative that is currently underway.
Global M2 Money+ Supply Input Lead (USD)Global M2 Money Supply + INR+CAD Input Lead (USD)
This indicator calculates the global M2 money supply in USD by aggregating M2 data from multiple economies, converted to USD using their respective exchange rates. It overlays the scaled M2 data on the chart with a user-defined time shift to analyze potential correlations with asset prices, such as Bitcoin. The indicator is designed to help traders assess global liquidity trends with a customizable lead or lag.
Countries Included:
Eurozone (EUM2)
North America: United States (USM2), Canada (CAM2)
Non-EU Europe: Switzerland (CHM2), United Kingdom (GBM2), Finland (FIM2), Russia (RUM2)
Pacific: New Zealand (NZM2)
Asia: China (CNM2), Taiwan (TWM2), Hong Kong (HKM2), India (INM2), Japan (JPM2), Philippines (PHM2), Singapore (SGM2)
Latin America: Brazil (BRM2), Colombia (COM2), Mexico (MXM2)
Middle East: United Arab Emirates (AEM2), Turkey (TRM2)
Africa: South Africa (ZAM2)
Input for Lead/Lag:
Time Shift (days): Adjust this input to shift the M2 data forward (positive values) or backward (negative values) on the chart. For example, setting a lead of 85 days shifts the M2 data 85 days into the future, helping traders analyze potential leading indicators for price movements.
Webby's Market OrderThis is visual representation of Webby's Market Order.
When three consecutive lows are above 21 EMA, Uptrend expectation is natural.
When three highs are below 21 EMA, Downtrend expectation is natural.
Alert Conditions can be set when uptrend and down trend are expected.
Use this indicator with IXIC or SPY or major indices.
This is set at three lows/Highs above 21 EMA as looked by Mike Webster.
BySq - Market PsychologyThe script I provided is a Market Psychology Index indicator for TradingView, which focuses on three key psychological market phases:
FOMO (Fear of Missing Out)
Panic Selling
Reversal
This indicator uses volume, price changes, and specific time periods to gauge market sentiment. Let me break it down:
1. Input Parameters:
FOMO Period: Defines how many bars (candles) the FOMO index will consider for its calculation.
Panic Period: Defines the period to evaluate Panic Selling.
Reversal Period: Defines the period to evaluate potential price reversals.
You can adjust these periods based on your analysis preferences. The default for each period is 14.
2. FOMO Index:
The FOMO Index aims to capture the "fear of missing out" behavior in the market.
It uses volume and price change:
Volume is compared to the Simple Moving Average (SMA) of volume over the specified period.
Price change is calculated as the percentage change in price compared to the previous bar.
If both volume and price change indicate strong upward movement, the FOMO index spikes.
3. Panic Selling Index:
The Panic Selling Index captures when traders are selling out of fear, often in a rapid or irrational way.
Similar to the FOMO Index, it considers volume and price change:
It uses volume and compares it to the SMA of volume for the panic period.
Price change is negative, meaning it considers only price drops.
When there is high volume coupled with significant price drops, it signals panic selling.
4. Reversal Index:
The Reversal Index aims to detect potential trend reversals in the market.
This index also considers volume and price change:
It focuses on upward price movement and compares volume to its SMA.
If there’s strong upward price movement along with increasing volume, it signals the possibility of a price reversal.
5. Graphical Output:
Histograms are drawn on the chart for each of the three indices:
FOMO is shown in green (indicating the presence of FOMO) and red (when the index is low).
Panic Selling is shown in orange.
Reversal is shown in purple.
The Zero Line (horizontal dotted line) helps identify when any of the indices is positive or negative.
6. Labels:
Labels for each index are shown on the chart at the relevant bar when the index spikes.
FOMO is labeled "FOMO" in green when it spikes.
Panic Selling is labeled "Panic Selling" in orange when it spikes.
Reversal is labeled "Reversal" in purple when it spikes.
Additionally, period labels show above the chart, indicating the specific periods (FOMO, Panic, and Reversal periods) currently being applied. This provides clarity on what time frame each index is analyzing.
7. How to Use:
FOMO: High values may indicate that traders are buying out of fear of missing out on a rally, suggesting a potentially overheated market.
Panic Selling: High values could suggest irrational selling behavior or capitulation, potentially marking the bottom of a downtrend.
Reversal: High values signal the potential for a market reversal, where the price could change direction due to increased volume and upward movement.
8. Visual Appearance:
The indicator’s histograms change colors based on the level of market sentiment detected. The color-coded approach provides an easy-to-read visual representation of different psychological phases in the market.
The horizontal zero line allows easy differentiation between positive and negative values.
Summary:
This script combines the psychology of the market (FOMO, Panic Selling, and Reversal) into a set of indicators that help traders identify potential turning points or emotional states in the market. By focusing on volume and price change, the script attempts to give a clear picture of market sentiment and possible future movements.
Day and Session Highlighter (UTC)Day and Session Highlighter (UTC Forced)", is designed to overlay your chart and display both session background colors and informative labels at the start of each trading session—all calculated in UTC. The script targets four distinct sessions: AU (Australia), Asia (Singapore/Hong Kong/JP), Europe, and New York. In addition to session highlighting, it displays labels that combine the UTC day-of‑week and the session’s starting time. All elements are configurable via on-screen toggles.
StonkGame Major Market Open/ClosePlots vertical lines for Tokyo, London, and New York session opens and closes — auto-adjusted to your chart's timezone.
Open lines = lighter, dashed style.
Close lines = solid, full-color style.
Helps identify key liquidity windows, session-driven volatility, and clean market structure — without chart clutter.
Fully customizable colors and line styles for a professional, minimal look.
Vwap Vision #WhiteRabbitVWAP Vision #WhiteRabbit
This Pine Script (version 5) script implements a comprehensive trading indicator called "VWAP Vision #WhiteRabbit," designed for analyzing price movements using the Volume-Weighted Average Price (VWAP) along with multiple customizable features, including adjustable color themes for better visual appeal.
Features:
Customizable Color Themes:
Choose from four distinct themes: Classic, Dark Mode, Fluo, and Phil, enhancing the visual layout to match user preferences.
VWAP Calculation:
Uses standard VWAP calculations based on selected anchor periods (Session, Week, Month, etc.) to help identify price trends.
Band Settings:
Multiple bands are calculated based on standard deviations or percentages, with customization options to configure buy/sell zones and liquidity levels.
Buy/Sell Signals:
Generates clear buy and sell signals based on price interactions with the calculated bands and the exponential moving average (EMA).
Real-time Data Display:
Displays real-time signals and VWAP values for selected trading instruments, including XAUUSD, NAS100, and BTCUSDT, along with related alerts for trading opportunities.
Volatility Analysis:
Incorporates volatility metrics using the Average True Range (ATR) to assess market conditions and inform trading decisions.
Enhanced Table Displays:
Provides tables for clear visualization of trading signals, real-time data, and performance metrics.
This script is perfect for traders looking to enhance their analysis and gain insights for making informed trading decisions across various market conditions.
Liquidity Stress Index SOFR - IORBLiquidity Stress Index (SOFR - IORB)
This indicator tracks the spread between the Secured Overnight Financing Rate (SOFR) and the Interest on Reserve Balances (IORB) set by the Federal Reserve.
A persistently positive spread may indicate funding stress or liquidity shortages in the repo market, as it suggests overnight lending rates exceed the risk-free rate banks earn at the Fed.
Useful for monitoring monetary policy transmission or market/liquidity stress.
Stoch_RSIStochastic RSI – Advanced Divergence Indicator
This custom indicator is an advanced version of the Stochastic RSI that not only smooths and refines the classic RSI input but also automatically detects both regular and hidden divergences using two powerful methods: fractal-based and pivot-based detection. Originally inspired by contributions from @fskrypt, @RicardoSantos, and later improved by developers like @NeoButane and @FYMD, this script has been fully refined for clarity and ease-of-use.
Key Features:
Dual Divergence Detection:
Fractal-Based Divergence: Uses a four-candle pattern to confirm top and bottom fractals for bullish and bearish divergences.
Pivot-Based Divergence: Employs TradingView’s built-in pivot functions for an alternate view of divergence conditions.
Customizable Settings:
The inputs are organized into logical groups (Stoch RSI settings, Divergence Options, Labels, and Market Open Settings) allowing you to adjust smoothing periods, RSI and Stochastic lengths, and divergence thresholds with a user-friendly interface.
Visual Enhancements:
Plots & Fills: The indicator plots both the K and D lines with corresponding fills and horizontal bands for quick visual reference.
Divergence Markers: Diamond shapes and labeled markers indicate regular and hidden divergences on the chart.
Market Open Highlighting: Optional histogram plots highlight the market open candle based on different timeframes for stocks versus non-forex symbols.
Rotation Phase TriggerHow to Use the Full Rotation Phase Trigger Tool (non-floating version)
This version is ideal for macro-level market context, helping you decide when to rotate between growth, income, and defensive positions using visual cues directly on the chart.
🧱 Components Recap (Non-Floating Version)
ROC Histograms:
SPY:TLT ROC (green bars): Measures equity strength vs. bonds
QQQ:XLU ROC (blue bars): Measures growth vs. defensive rotation
EMA Trend Filter:
Uses a fast/slow EMA crossover on both ratios to confirm the trend
When both are rising → confirms GROWTH phase
Phase Background Colors:
🟩 Green = GROWTH
🟧 Orange = INCOME
🟥 Red = DEFENSIVE
No color = NEUTRAL
Instruction Labels:
Show what sectors to add and what to sell (with ETF tickers)
Alert Conditions:
Can be linked to email, SMS, or app notifications
Triggered when phase changes
✅ Weekly Workflow
Every Monday (or Weekend Prep)
1. Open SPY on a Weekly Chart
This tool is designed around the U.S. equity vs bond regime
Always keep SPY as the main chart for best alignment
2. Check the Background Color
Instantly tells you what regime you're in:
Green → rotate into growth ETFs
Orange → stick to or buy income-generating ETFs
Red → get defensive, raise cash, or buy bond/hedge ETFs
3. Read the Labels
Top label = phase status (e.g., GROWTH)
Bottom label = action instructions:
What ETFs to accumulate (MTUM, VUN, HYLD, etc.)
What sectors or funds to rotate out of
4. Look at Momentum Histograms
Confirms whether the regime shift is gaining strength
Larger bars = stronger conviction
Diverging directions? Wait for confirmation
🔁 Tactical Rotation Plan
Phase Add Trim/Sell
GROWTH MTUM, VUN, XMTM, HXS, VTI HYLD, HHIS, HPYT
INCOME HYLD, HHIS, QQQY, DFN, DGS MTUM, VUN
DEFENSIVE HPYT, HPYT.U, ZGLD, GDE All equities
NEUTRAL Nothing new, rebalance if needed Excess risk positions
🔔 Alert Setup (Optional)
You can create alerts in TradingView using:
Right-click chart → "Add Alert"
Use condition: "Rotation Phase Trigger" → "GROWTH" / "INCOME" / "DEFENSIVE"
Choose notification method (popup, app, email, etc.)
💡 Pro Tips
Use this version on SPY weekly only — for best signal clarity
Stochastic Order Flow Momentum [ScorsoneEnterprises]This indicator implements a stochastic model of order flow using the Ornstein-Uhlenbeck (OU) process, combined with a Kalman filter to smooth momentum signals. It is designed to capture the dynamic momentum of volume delta, representing the net buying or selling pressure per bar, and highlight potential shifts in market direction. The volume delta data is sourced from TradingView’s built-in functionality:
www.tradingview.com
For a deeper dive into stochastic processes like the Ornstein-Uhlenbeck model in financial contexts, see these research articles: arxiv.org and arxiv.org
The SOFM tool aims to reveal the momentum and acceleration of order flow, modeled as a mean-reverting stochastic process. In markets, order flow often oscillates around a baseline, with bursts of buying or selling pressure that eventually fade—similar to how physical systems return to equilibrium. The OU process captures this behavior, while the Kalman filter refines the signal by filtering noise. Parameters theta (mean reversion rate), mu (mean level), and sigma (volatility) are estimated by minimizing a squared-error objective function using gradient descent, ensuring adaptability to real-time market conditions.
How It Works
The script combines a stochastic model with signal processing. Here’s a breakdown of the key components, including the OU equation and supporting functions.
// Ornstein-Uhlenbeck model for volume delta
ou_model(params, v_t, lkb) =>
theta = clamp(array.get(params, 0), 0.01, 1.0)
mu = clamp(array.get(params, 1), -100.0, 100.0)
sigma = clamp(array.get(params, 2), 0.01, 100.0)
error = 0.0
v_pred = array.new(lkb, 0.0)
array.set(v_pred, 0, array.get(v_t, 0))
for i = 1 to lkb - 1
v_prev = array.get(v_pred, i - 1)
v_curr = array.get(v_t, i)
// Discretized OU: v_t = v_{t-1} + theta * (mu - v_{t-1}) + sigma * noise
v_next = v_prev + theta * (mu - v_prev)
array.set(v_pred, i, v_next)
v_curr_clean = na(v_curr) ? 0 : v_curr
v_pred_clean = na(v_next) ? 0 : v_next
error := error + math.pow(v_curr_clean - v_pred_clean, 2)
error
The ou_model function implements a discretized Ornstein-Uhlenbeck process:
v_t = v_{t-1} + theta (mu - v_{t-1})
The model predicts volume delta (v_t) based on its previous value, adjusted by the mean-reverting term theta (mu - v_{t-1}), with sigma representing the volatility of random shocks (approximated in the Kalman filter).
Parameters Explained
The parameters theta, mu, and sigma represent distinct aspects of order flow dynamics:
Theta:
Definition: The mean reversion rate, controlling how quickly volume delta returns to its mean (mu). Constrained between 0.01 and 1.0 (e.g., clamp(array.get(params, 0), 0.01, 1.0)).
Interpretation: A higher theta indicates faster reversion (short-lived momentum), while a lower theta suggests persistent trends. Initial value is 0.1 in init_params.
In the Code: In ou_model, theta scales the pull toward \mu, influencing the predicted v_t.
Mu:
Definition: The long-term mean of volume delta, representing the equilibrium level of net buying/selling pressure. Constrained between -100.0 and 100.0 (e.g., clamp(array.get(params, 1), -100.0, 100.0)).
Interpretation: A positive mu suggests a bullish bias, while a negative mu indicates bearish pressure. Initial value is 0.0 in init_params.
In the Code: In ou_model, mu is the target level that v_t reverts to over time.
Sigma:
Definition: The volatility of volume delta, capturing the magnitude of random fluctuations. Constrained between 0.01 and 100.0 (e.g., clamp(array.get(params, 2), 0.01, 100.0)).
Interpretation: A higher sigma reflects choppier, noisier order flow, while a lower sigma indicates smoother behavior. Initial value is 0.1 in init_params.
In the Code: In the Kalman filter, sigma contributes to the error term, adjusting the smoothing process.
Summary:
theta: Speed of mean reversion (how fast momentum fades).
mu: Baseline order flow level (bullish or bearish bias).
sigma: Noise level (variability in order flow).
Other Parts of the Script
Clamp
A utility function to constrain parameters, preventing extreme values that could destabilize the model.
ObjectiveFunc
Defines the objective function (sum of squared errors) to minimize during parameter optimization. It compares the OU model’s predicted volume delta to observed data, returning a float to be minimized.
How It Works: Calls ou_model to generate predictions, computes the squared error for each timestep, and sums it. Used in optimization to assess parameter fit.
FiniteDifferenceGradient
Calculates the gradient of the objective function using finite differences. Think of it as finding the "slope" of the error surface for each parameter. It nudges each parameter (theta, mu, sigma) by a small amount (epsilon) and measures the change in error, returning an array of gradients.
Minimize
Performs gradient descent to optimize parameters. It iteratively adjusts theta, mu, and sigma by stepping down the "hill" of the error surface, using the gradients from FiniteDifferenceGradient. Stops when the gradient norm falls below a tolerance (0.001) or after 20 iterations.
Kalman Filter
Smooths the OU-modeled volume delta to extract momentum. It uses the optimized theta, mu, and sigma to predict the next state, then corrects it with observed data via the Kalman gain. The result is a cleaner momentum signal.
Applied
After initializing parameters (theta = 0.1, mu = 0.0, sigma = 0.1), the script optimizes them using volume delta data over the lookback period. The optimized parameters feed into the Kalman filter, producing a smoothed momentum array. The average momentum and its rate of change (acceleration) are calculated, though only momentum is plotted by default.
A rising momentum suggests increasing buying or selling pressure, while a flattening or reversing momentum indicates fading activity. Acceleration (not plotted here) could highlight rapid shifts.
Tool Examples
The SOFM indicator provides a dynamic view of order flow momentum, useful for spotting directional shifts or consolidation.
Low Time Frame Example: On a 5-minute chart of SEED_ALEXDRAYM_SHORTINTEREST2:NQ , a rising momentum above zero with a lookback of 5 might signal building buying pressure, while a drop below zero suggests selling dominance. Crossings of the zero line can mark transitions, though the focus is on trend strength rather than frequent crossovers.
High Time Frame Example: On a daily chart of NYSE:VST , a sustained positive momentum could confirm a bullish trend, while a sharp decline might warn of exhaustion. The mean-reverting nature of the OU process helps filter out noise on longer scales. It doesn’t make the most sense to use this on a high timeframe with what our data is.
Choppy Markets: When momentum oscillates near zero, it signals indecision or low conviction, helping traders avoid whipsaws. Larger deviations from zero suggest stronger directional moves to act on, this is on $STT.
Inputs
Lookback: Users can set the lookback period (default 5) to adjust the sensitivity of the OU model and Kalman filter. Shorter lookbacks react faster but may be noisier; longer lookbacks smooth more but lag slightly.
The user can also specify the timeframe they want the volume delta from. There is a default way to lower and expand the time frame based on the one we are looking at, but users have the flexibility.
No indicator is 100% accurate, and SOFM is no exception. It’s an estimation tool, blending stochastic modeling with signal processing to provide a leading view of order flow momentum. Use it alongside price action, support/resistance, and your own discretion for best results. I encourage comments and constructive criticism.
Half Causal EstimatorOverview
The Half Causal Estimator is a specialized filtering method that provides responsive averages of market variables (volume, true range, or price change) with significantly reduced time delay compared to traditional moving averages. It employs a hybrid approach that leverages both historical data and time-of-day patterns to create a timely representation of market activity while maintaining smooth output.
Core Concept
Traditional moving averages suffer from time lag, which can delay signals and reduce their effectiveness for real-time decision making. The Half Causal Estimator addresses this limitation by using a non-causal filtering method that incorporates recent historical data (the causal component) alongside expected future behavior based on time-of-day patterns (the non-causal component).
This dual approach allows the filter to respond more quickly to changing market conditions while maintaining smoothness. The name "Half Causal" refers to this hybrid methodology—half of the data window comes from actual historical observations, while the other half is derived from time-of-day patterns observed over multiple days. By incorporating these "future" values from past patterns, the estimator can reduce the inherent lag present in traditional moving averages.
How It Works
The indicator operates through several coordinated steps. First, it stores and organizes market data by specific times of day (minutes/hours). Then it builds a profile of typical behavior for each time period. For calculations, it creates a filtering window where half consists of recent actual data and half consists of expected future values based on historical time-of-day patterns. Finally, it applies a kernel-based smoothing function to weight the values in this composite window.
This approach is particularly effective because market variables like volume, true range, and price changes tend to follow recognizable intraday patterns (they are positive values without DC components). By leveraging these patterns, the indicator doesn't try to predict future values in the traditional sense, but rather incorporates the average historical behavior at those future times into the current estimate.
The benefit of using this "average future data" approach is that it counteracts the lag inherent in traditional moving averages. In a standard moving average, recent price action is underweighted because older data points hold equal influence. By incorporating time-of-day averages for future periods, the Half Causal Estimator essentially shifts the center of the filter window closer to the current bar, resulting in more timely outputs while maintaining smoothing benefits.
Understanding Kernel Smoothing
At the heart of the Half Causal Estimator is kernel smoothing, a statistical technique that creates weighted averages where points closer to the center receive higher weights. This approach offers several advantages over simple moving averages. Unlike simple moving averages that weight all points equally, kernel smoothing applies a mathematically defined weight distribution. The weighting function helps minimize the impact of outliers and random fluctuations. Additionally, by adjusting the kernel width parameter, users can fine-tune the balance between responsiveness and smoothness.
The indicator supports three kernel types. The Gaussian kernel uses a bell-shaped distribution that weights central points heavily while still considering distant points. The Epanechnikov kernel employs a parabolic function that provides efficient noise reduction with a finite support range. The Triangular kernel applies a linear weighting that decreases uniformly from center to edges. These kernel functions provide the mathematical foundation for how the filter processes the combined window of past and "future" data points.
Applicable Data Sources
The indicator can be applied to three different data sources: volume (the trading volume of the security), true range (expressed as a percentage, measuring volatility), and change (the absolute percentage change from one closing price to the next).
Each of these variables shares the characteristic of being consistently positive and exhibiting cyclical intraday patterns, making them ideal candidates for this filtering approach.
Practical Applications
The Half Causal Estimator excels in scenarios where timely information is crucial. It helps in identifying volume climaxes or diminishing volume trends earlier than conventional indicators. It can detect changes in volatility patterns with reduced lag. The indicator is also useful for recognizing shifts in price momentum before they become obvious in price action, and providing smoother data for algorithmic trading systems that require reduced noise without sacrificing timeliness.
When volatility or volume spikes occur, conventional moving averages typically lag behind, potentially causing missed opportunities or delayed responses. The Half Causal Estimator produces signals that align more closely with actual market turns.
Technical Implementation
The implementation of the Half Causal Estimator involves several technical components working together. Data collection and organization is the first step—the indicator maintains a data structure that organizes market data by specific times of day. This creates a historical record of how volume, true range, or price change typically behaves at each minute/hour of the trading day.
For each calculation, the indicator constructs a composite window consisting of recent actual data points from the current session (the causal half) and historical averages for upcoming time periods from previous sessions (the non-causal half). The selected kernel function is then applied to this composite window, creating a weighted average where points closer to the center receive higher weights according to the mathematical properties of the chosen kernel. Finally, the kernel weights are normalized to ensure the output maintains proper scaling regardless of the kernel type or width parameter.
This framework enables the indicator to leverage the predictable time-of-day components in market data without trying to predict specific future values. Instead, it uses average historical patterns to reduce lag while maintaining the statistical benefits of smoothing techniques.
Configuration Options
The indicator provides several customization options. The data period setting determines the number of days of observations to store (0 uses all available data). Filter length controls the number of historical data points for the filter (total window size is length × 2 - 1). Filter width adjusts the width of the kernel function. Users can also select between Gaussian, Epanechnikov, and Triangular kernel functions, and customize visual settings such as colors and line width.
These parameters allow for fine-tuning the balance between responsiveness and smoothness based on individual trading preferences and the specific characteristics of the traded instrument.
Limitations
The indicator requires minute-based intraday timeframes, securities with volume data (when using volume as the source), and sufficient historical data to establish time-of-day patterns.
Conclusion
The Half Causal Estimator represents an innovative approach to technical analysis that addresses one of the fundamental limitations of traditional indicators: time lag. By incorporating time-of-day patterns into its calculations, it provides a more timely representation of market variables while maintaining the noise-reduction benefits of smoothing. This makes it a valuable tool for traders who need to make decisions based on real-time information about volume, volatility, or price changes.
Gold Opening 15-Min ORB INDICATOR by AdéThis indicator is designed for trading Gold (XAUUSD) during the first 15 minutes of major market openings: Asian, European, and US sessions. It highlights these key time windows, plots the high and low ranges of each session, and generates breakout-based buy/sell signals. Ideal for traders focusing on volatility at market opens.
Features:Session Windows:
Asian: 1:00–1:15 AM Barcelona time (23:00–23:15 UTC, CEST-adjusted).
European: 9:00–9:15 AM Barcelona time (07:00–07:15 UTC).
US: 3:30–3:45 PM Barcelona time (13:30–13:45 UTC).
Marked with yellow (Asian), green (Europe), and blue (US) triangles below bars.
High/Low Ranges:Plots horizontal lines showing the highest high and lowest low of each session’s first 15 minutes.Lines appear after each session ends and persist until the next day, color-coded to match the sessions.Breakout Signals:Buy (Long): Triggers when the closing price breaks above the highest high of the previous 5 bars during a session window (lime triangle above bar).Sell (Short): Triggers when the closing price breaks below the lowest low of the previous 5 bars during a session window (red triangle below bar).
Signals are restricted to the 15-minute session periods for focused trading.Usage:Timeframe: Optimized for 1-minute XAUUSD charts.Timezone: Set your chart to UTC for accurate session timing (script uses UTC internally, based on Barcelona CEST, UTC+2 in April).Strategy:
Use buy/sell signals for breakout trades during volatile market opens, with session ranges as support/resistance levels.Customization: Adjust the lookback variable (default: 5) to tweak signal sensitivity.Notes:Tested for April 2025 (CEST, UTC+2).
Adjust timestamp values if using outside daylight saving time (CET, UTC+1) or for different broker timezones.Best for scalping or short-term trades during high-volatility periods. Combine with other indicators for confirmation if desired.How to Use:Apply to a 1-minute XAUUSD chart.Watch for session markers (triangles) and breakout signals during the 15-minute windows.Use the high/low lines to gauge potential breakout targets or reversals.