MTF Alignment & Key Levelsso this one is specifically for the 1hr and 4hr time frame. but what it does is alert you once the monthly weekly and daily timeframes align with a trend in a certain direction wether its bearish or bullish but then it will mark out key levels on the 1hr and 4hr time frame to indicate when price breaks through that level to enter a trade in the direction of the higher timeframes alignment.
Educational
Fed Net Liquidity [Premium] [by Golman Armi]This indicator visualizes the USD Net Liquidity injected into the financial system by the Federal Reserve.
It is a fundamental macro-economic tool essential for understanding the underlying "fuel" driving risk assets such as the S&P 500 (SPX), Nasdaq (NDX), and Bitcoin (BTC).
Unlike many other liquidity scripts that incorrectly use Commercial Bank Assets (USCBBS), this script uses the Federal Reserve Total Assets (WALCL) to provide a mathematically accurate representation of Central Bank liquidity.
How It Works (The Formula)
Net Liquidity represents the actual cash available to the banking system for investment after government liabilities are subtracted. The formula used is:
NetLiquidity=WALCL−TGA−RRP
Where:
WALCL (Fed Balance Sheet): The total assets held by the Federal Reserve (The source of money printing).
TGA (Treasury General Account - WTREGEN): The checking account of the US Government. When the TGA goes up, money is removed from the economy; when it goes down, money is spent into the economy.
RRP (Reverse Repo - RRPONTTLD): Cash parked by banks and money market funds at the Fed overnight. A rise in RRP removes liquidity from the markets.
Features
Accurate Data Sourcing: Pulls daily data directly from FRED (Federal Reserve Economic Data).
Unit Correction: Automatically adjusts conflicting units (Millions vs Billions) from TradingView data feeds to output a correct value in Trillions of Dollars.
Trend Cloud: Features a smoothing EMA (Exponential Moving Average) with a color-coded cloud to easily identify the macro trend (Green for expansion, Red for contraction).
How to Use
Trend Correlation:
Rising Line (Green): Liquidity is expanding. Historically, this supports bullish trends in stocks and crypto.
Falling Line (Red): Liquidity is being drained (QT or TGA refill). This often leads to volatility or bearish trends in risk assets.
Divergences (The most powerful signal):
If the S&P 500 or Bitcoin makes a New High, but Net Liquidity makes a Lower High, it indicates a "hollow rally" lacking fundamental support, often preceding a correction.
Disclaimer
This tool is for educational purposes and macro-economic analysis only. It is not financial advice.
Credit Spread RegimeThe Credit Market as Economic Barometer
Credit spreads are among the most reliable leading indicators of economic stress. When corporations borrow money by issuing bonds, investors demand a premium above the risk-free Treasury rate to compensate for the possibility of default. This premium, known as the credit spread, fluctuates based on perceptions of economic health, corporate profitability, and systemic risk.
The relationship between credit spreads and economic activity has been studied extensively. Two papers form the foundation of this indicator. Pierre Collin-Dufresne, Robert Goldstein, and Spencer Martin published their influential 2001 paper in the Journal of Finance, documenting that credit spread changes are driven by factors beyond firm-specific credit quality. They found that a substantial portion of spread variation is explained by market-wide factors, suggesting credit spreads contain information about aggregate economic conditions.
Simon Gilchrist and Egon Zakrajsek extended this research in their 2012 American Economic Review paper, introducing the concept of the Excess Bond Premium. They demonstrated that the component of credit spreads not explained by default risk alone is a powerful predictor of future economic activity. Elevated excess spreads precede recessions with remarkable consistency.
What Credit Spreads Reveal
Credit spreads measure the difference in yield between corporate bonds and Treasury securities of similar maturity. High yield bonds, also called junk bonds, carry ratings below investment grade and offer higher yields to compensate for greater default risk. Investment grade bonds have lower yields because the probability of default is smaller.
The spread between high yield and investment grade bonds is particularly informative. When this spread widens, investors are demanding significantly more compensation for taking on credit risk. This typically indicates deteriorating economic expectations, tighter financial conditions, or increasing risk aversion. When the spread narrows, investors are comfortable accepting lower premiums, signaling confidence in corporate health.
The Gilchrist-Zakrajsek research showed that credit spreads contain two distinct components. The first is the expected default component, which reflects the probability-weighted cost of potential defaults based on corporate fundamentals. The second is the excess bond premium, which captures additional compensation demanded beyond expected defaults. This excess premium rises when investor risk appetite declines and financial conditions tighten.
The Implementation Approach
This indicator uses actual option-adjusted spread data from the Federal Reserve Economic Database (FRED), available directly in TradingView. The ICE BofA indices represent the industry standard for measuring corporate bond spreads.
The primary data sources are FRED:BAMLH0A0HYM2, the ICE BofA US High Yield Index Option-Adjusted Spread, and FRED:BAMLC0A0CM, the ICE BofA US Corporate Index Option-Adjusted Spread for investment grade bonds. These indices measure the spread of corporate bonds over Treasury securities of similar duration, expressed in basis points.
Option-adjusted spreads account for embedded options in corporate bonds, providing a cleaner measure of credit risk than simple yield spreads. The methodology developed by ICE BofA is widely used by institutional investors and central banks for monitoring credit conditions.
The indicator offers two modes. The HY-IG excess spread mode calculates the difference between high yield and investment grade spreads, isolating the pure compensation for below-investment-grade credit risk. This measure is less affected by broad interest rate movements. The HY-only mode tracks the absolute high yield spread, capturing both credit risk and the overall level of risk premiums in the market.
Interpreting the Regimes
Credit conditions are classified into four regimes based on Z-scores calculated from the spread proxy.
The Stress regime occurs when spreads reach extreme levels, typically above a Z-score of 2.0. At this point, credit markets are pricing in significant default risk and economic deterioration. Historically, stress regimes have coincided with recessions, financial crises, and major market dislocations. The 2008 financial crisis, the 2011 European debt crisis, the 2016 commodity collapse, and the 2020 pandemic all triggered credit stress regimes.
The Elevated regime, between Z-scores of 1.0 and 2.0, indicates above-normal risk premiums. Credit conditions are tightening. This often occurs in the build-up to stress events or during periods of uncertainty. Risk management should be heightened, and exposure to credit-sensitive assets may be reduced.
The Normal regime covers Z-scores between -1.0 and 1.0. This represents typical credit conditions where spreads fluctuate around historical averages. Standard investment approaches are appropriate.
The Low regime occurs when spreads are compressed below a Z-score of -1.0. Investors are accepting below-average compensation for credit risk. This can indicate complacency, strong economic confidence, or excessive risk-taking. While often associated with favorable conditions, extremely tight spreads sometimes precede sudden reversals.
Credit Cycle Dynamics
Beyond static regime classification, the indicator tracks the direction and acceleration of spread movements. This reveals where credit markets stand in the credit cycle.
The Deteriorating phase occurs when spreads are elevated and continuing to widen. Credit conditions are actively worsening. This phase often precedes or coincides with economic downturns.
The Recovering phase occurs when spreads are elevated but beginning to narrow. The worst may be over. Credit conditions are improving from stressed levels. This phase often accompanies the early stages of economic recovery.
The Tightening phase occurs when spreads are low and continuing to compress. Credit conditions are very favorable and improving further. This typically occurs during strong economic expansions but may signal building complacency.
The Loosening phase occurs when spreads are low but beginning to widen from compressed levels. The extremely favorable conditions may be normalizing. This can be an early warning of changing sentiment.
Relationship to Economic Activity
The predictive power of credit spreads for economic activity is well-documented. Gilchrist and Zakrajsek found that the excess bond premium predicts GDP growth, industrial production, and unemployment rates over horizons of one to four quarters.
When credit spreads spike, the cost of corporate borrowing increases. Companies may delay or cancel investment projects. Reduced investment leads to slower growth and eventually higher unemployment. The transmission mechanism runs from financial conditions to real economic activity.
Conversely, tight credit spreads lower borrowing costs and encourage investment. Easy credit conditions support economic expansion. However, excessively tight spreads may encourage over-leveraging, planting seeds for future stress.
Practical Application
For equity investors, credit spreads provide context for market risk. Equities and credit often move together because both reflect corporate health. Rising credit spreads typically accompany falling stock prices. Extremely wide spreads historically have coincided with equity market bottoms, though timing the reversal remains challenging.
For fixed income investors, spread regimes guide sector allocation decisions. During stress regimes, flight to quality favors Treasuries over corporates. During low regimes, spread compression may offer limited additional return for credit risk, suggesting caution on high yield.
For macro traders, credit spreads complement other indicators of financial conditions. Credit stress often leads equity volatility, providing an early warning signal. Cross-asset strategies may use credit regime as a filter for position sizing.
Limitations and Considerations
FRED data updates with a lag, typically one business day for the ICE BofA indices. For intraday trading decisions, more current proxies may be necessary. The data is most reliable on daily timeframes.
Credit spreads can remain at extreme levels for extended periods. Mean reversion signals indicate elevated probability of normalization but do not guarantee timing. The 2008 crisis saw spreads remain elevated for many months before normalizing.
The indicator is calibrated for US credit markets. Application to other regions would require different data sources such as European or Asian credit indices. The relationship between spreads and subsequent economic activity may vary across market cycles and structural regimes.
References
Collin-Dufresne, P., Goldstein, R.S., and Martin, J.S. (2001). The Determinants of Credit Spread Changes. Journal of Finance, 56(6), 2177-2207.
Gilchrist, S., and Zakrajsek, E. (2012). Credit Spreads and Business Cycle Fluctuations. American Economic Review, 102(4), 1692-1720.
Krishnamurthy, A., and Muir, T. (2017). How Credit Cycles across a Financial Crisis. Working Paper, Stanford University.
Absorption RatioThe Hidden Connections Between Markets
Financial markets are not isolated islands. When panic spreads, seemingly unrelated assets suddenly begin moving in lockstep. Stocks, bonds, commodities, and currencies that normally provide diversification benefits start falling together. This phenomenon, where correlations spike during crises, has devastated portfolios throughout history. The Absorption Ratio provides a quantitative measure of this hidden fragility.
The concept emerged from research at State Street Associates, where Mark Kritzman, Yuanzhen Li, Sebastien Page, and Roberto Rigobon developed a novel application of principal component analysis to measure systemic risk. Their 2011 paper in the Journal of Portfolio Management demonstrated that when markets become tightly coupled, the variance explained by the first few principal components increases dramatically. This concentration of variance signals elevated systemic risk.
What the Absorption Ratio Measures
Principal component analysis, or PCA, is a statistical technique that identifies the underlying factors driving a set of variables. When applied to asset returns, the first principal component typically captures broad market movements. The second might capture sector rotations or risk-on/risk-off dynamics. Additional components capture increasingly idiosyncratic patterns.
The Absorption Ratio measures the fraction of total variance absorbed or explained by a fixed number of principal components. In the original research, Kritzman and colleagues used the first fifth of the eigenvectors. When this fraction is high, it means a small number of factors are driving most of the market movements. Assets are moving together, and diversification provides less protection than usual.
Consider an analogy: imagine a room full of people having independent conversations. Each person speaks at different times about different topics. The total "variance" of sound in the room comes from many independent sources. Now imagine a fire alarm goes off. Suddenly everyone is talking about the same thing, moving in the same direction. The variance is now dominated by a single factor. The Absorption Ratio captures this transition from diverse, independent behavior to unified, correlated movement.
The Implementation Approach
TradingView does not support matrix algebra required for true principal component analysis. This implementation uses a closely related proxy: the average absolute correlation across a universe of major asset classes. This approach captures the same underlying phenomenon because when assets are highly correlated, the first principal component explains more variance by mathematical necessity.
The asset universe includes eight ETFs representing major investable categories: SPY and QQQ for large cap US equities, IWM for small caps, EFA for developed international markets, EEM for emerging markets, TLT for long-term treasuries, GLD for gold, and USO for oil. This selection provides exposure to equities across geographies and market caps, plus traditional diversifying assets.
From eight assets, there are twenty-eight unique pairwise correlations. The indicator calculates each using a rolling window, takes the absolute value to measure coupling strength regardless of direction, and averages across all pairs. This average correlation is then transformed to match the typical range of published Absorption Ratio values.
The transformation maps zero average correlation to an AR of 0.50 and perfect correlation to an AR of 1.00. This scaling aligns with empirical observations that the AR typically fluctuates between 0.60 and 0.95 in practice.
Interpreting the Regimes
The indicator classifies systemic risk into four regimes based on AR levels.
The Extreme regime occurs when the AR exceeds 0.90. At this level, nearly all asset classes are moving together. Diversification has largely failed. Historically, this regime has coincided with major market dislocations: the 2008 financial crisis, the 2020 COVID crash, and significant correction periods. Portfolios constructed under normal correlation assumptions will experience larger drawdowns than expected.
The High regime, between 0.80 and 0.90, indicates elevated systemic risk. Correlations across asset classes are above normal. This often occurs during the build-up to stress events or during volatile periods where fear is spreading but has not reached panic levels. Risk management should be more conservative.
The Normal regime covers AR values between 0.60 and 0.80. This represents typical market conditions where some correlation exists between assets but diversification still provides meaningful benefits. Standard portfolio construction assumptions are reasonable.
The Low regime, below 0.60, indicates that assets are behaving relatively independently. Diversification is working well. Idiosyncratic factors dominate returns rather than systematic risk. This environment is favorable for active management and security selection strategies.
The Relationship to Portfolio Construction
The implications for portfolio management are significant. Modern portfolio theory assumes correlations are stable and uses historical estimates to construct efficient portfolios. The Absorption Ratio reveals that this assumption is violated precisely when it matters most.
When AR is elevated, the effective number of independent bets in a diversified portfolio shrinks. A portfolio holding stocks, bonds, commodities, and real estate might behave as if it holds only one or two positions during high AR periods. Position sizing based on normal correlation estimates will underestimate portfolio risk.
Conversely, when AR is low, true diversification opportunities expand. The same nominal portfolio provides more independent return streams. Risk can be deployed more aggressively while maintaining the same effective exposure.
Component Analysis
The indicator separately tracks equity correlations and cross-asset correlations. These components tell different stories about market structure.
Equity correlations measure coupling within the stock market. High equity correlation indicates broad risk-on or risk-off behavior where all stocks move together. This is common during both rallies and selloffs driven by macroeconomic factors. Stock pickers face headwinds when equity correlations are elevated because individual company fundamentals matter less than market beta.
Cross-asset correlations measure coupling between different asset classes. When stocks, bonds, and commodities start moving together, traditional hedges fail. The classic 60/40 stock/bond portfolio, for example, assumes negative or low correlation between equities and treasuries. When cross-asset correlation spikes, this assumption breaks down.
During the 2022 market environment, for instance, both stocks and bonds fell significantly as inflation and rate hikes affected all assets simultaneously. High cross-asset correlation warned that the usual defensive allocations would not provide their expected protection.
Mean Reversion Characteristics
Like most risk metrics, the Absorption Ratio tends to mean-revert over time. Extremely high AR readings eventually normalize as panic subsides and assets return to more independent behavior. Extremely low readings tend to rise as some level of systematic risk always reasserts itself.
The indicator tracks AR in statistical terms by calculating its Z-score relative to the trailing distribution. When AR reaches extreme Z-scores, the probability of normalization increases. This creates potential opportunities for strategies that bet on mean reversion in systemic risk.
A buy signal triggers when AR recovers from extremely elevated levels, suggesting the worst of the correlation spike may be over. A sell signal triggers when AR rises from unusually low levels, warning that complacency about diversification benefits may be excessive.
Momentum and Trend
The rate of change in AR carries information beyond the absolute level. Rapidly rising AR suggests correlations are increasing and systemic risk is building. Even if AR has not yet reached the high regime, acceleration in coupling should prompt increased vigilance.
Falling AR momentum indicates normalizing conditions. Correlations are decreasing and assets are returning to more independent behavior. This often occurs in the recovery phase following stress events.
Practical Application
For asset allocators, the AR provides guidance on how much diversification benefit to expect from a given allocation. During high AR periods, reducing overall portfolio risk makes sense because the usual diversifiers provide less protection. During low AR periods, standard or even aggressive allocations are more appropriate.
For risk managers, the AR serves as an early warning indicator. Rising AR often precedes large market moves and volatility spikes. Tightening risk limits before correlations reach extreme levels can protect capital.
For systematic traders, the AR provides a regime filter. Mean reversion strategies may work better during high AR periods when panics create overshooting. Momentum strategies may work better during low AR periods when trends can develop independently across assets.
Limitations and Considerations
The proxy methodology introduces some approximation error relative to true PCA-based AR calculations. The asset universe, while representative, does not include all possible diversifiers. Correlation estimates are inherently backward-looking and can change rapidly.
The transformation from average correlation to AR scale is calibrated to match typical published ranges but is not mathematically equivalent to the eigenvalue ratio. Users should interpret levels directionally rather than as precise measurements.
Correlation regimes can persist longer than expected. Mean reversion signals indicate elevated probability of normalization but do not guarantee timing. High AR can remain elevated throughout extended crisis periods.
References
Kritzman, M., Li, Y., Page, S., and Rigobon, R. (2011). Principal Components as a Measure of Systemic Risk. Journal of Portfolio Management, 37(4), 112-126.
Kritzman, M., and Li, Y. (2010). Skulls, Financial Turbulence, and Risk Management. Financial Analysts Journal, 66(5), 30-41.
Billio, M., Getmansky, M., Lo, A., and Pelizzon, L. (2012). Econometric Measures of Connectedness and Systemic Risk in the Finance and Insurance Sectors. Journal of Financial Economics, 104(3), 535-559.
MTF OB & FVG detector w/ Alerts v2# MTF Order Blocks & Fair Value Gaps Detector with Alerts v2
## Overview
This indicator combines **Multi-Timeframe Order Blocks (OB)** and **Fair Value Gaps (FVG)** detection with integrated bounce alerts. It displays Order Blocks and Fair Value Gaps across multiple timeframes simultaneously and generates real-time alerts when price bounces from these critical zones.
## Key Features
### 🎯 Multi-Timeframe Order Blocks Detection
- **Volumetric Analysis**: Each Order Block displays total volume and dominant side percentage
- **Multiple Timeframes**: Supports 1min, 3min, 5min, 15min, and 60min timeframes
- **Smart Combining**: Automatically merges overlapping Order Blocks from different timeframes into powerful confluence zones
- **Dynamic Extension**: Order Blocks extend until broken, providing clear visual guidance
- **Volume Distribution**: Shows bullish vs bearish volume breakdown with percentage
### 📊 Fair Value Gaps (FVG) Detection
- **Lightweight Processing**: Works on current chart timeframe only for optimal performance
- **Volume Metrics**: Displays FVG volume and dominant side percentage
- **Mitigation Tracking**: Automatically tracks when FVGs are filled or broken
- **Customizable Mitigation Source**: Choose between close price or high/low wicks
### 🔔 Comprehensive Alert System
- **Bounce Alerts**: Get notified when price bounces from OB or FVG zones
- **New Formation Alerts**: Alerts when new Order Blocks or Fair Value Gaps form
- **Combined Zone Alerts**: Special alerts when multiple Order Blocks merge into strong confluence zones
- **Customizable Thresholds**: Set minimum number of combined OBs required for strong zone alerts
### 🎨 Visual Customization
- **Inverted Color Schemes**: Optional inverted colors for both OB and FVG
- OB: Choose between traditional (Bullish=Blue, Bearish=Red) or inverted (Bullish=Red, Bearish=Blue)
- FVG: Choose between Bullish=Orange/Bearish=Aqua or inverted
- **Clean Labels**: Shows timeframe, zone type, volume, and dominant percentage
- **Combined Tags**: Optional labels for merged zones
- **Adjustable Extension**: Control how far zones extend into the future
## How It Works
### Order Blocks
Order Blocks identify institutional trading zones where large players have placed significant orders. The indicator:
1. Detects swing highs/lows using configurable swing length
2. Identifies the last opposing candle before a strong move
3. Analyzes volume distribution (bullish vs bearish)
4. Tracks zone validity until price breaks through
5. Combines overlapping zones from multiple timeframes
### Fair Value Gaps
Fair Value Gaps represent price imbalances that often get filled. The indicator:
1. Identifies 3-candle patterns with gaps between candles
2. Filters gaps by size percentile to show only significant ones
3. Calculates volume distribution within the gap
4. Tracks mitigation when price returns to fill the gap
5. Extends gaps dynamically until filled
### Bounce Detection
The indicator detects bounces using a two-step process:
1. **Touch Phase**: Tracks when price enters a zone (touchedInside flag)
2. **Bounce Phase**: Confirms bounce when price exits the zone in the expected direction
- Bullish zones: Price closes above top after touching inside
- Bearish zones: Price closes below bottom after touching inside
## Settings Guide
### General Configuration
- **Show Historic Zones**: Display invalidated/broken zones
- **Zone Invalidation**: Choose between wick or close for break detection
- **Combine Overlapping Order Blocks**: Merge OBs from different timeframes
- **Swing Length**: Controls sensitivity (smaller = more OBs, larger = fewer OBs)
- **Zone Count**: Choose from High/Medium/Low/One per timeframe
- **Invert Colors OB**: Swap bullish/bearish color scheme
### Alert Settings
- **Enable Alerts**: Master switch for all alerts
- **Alert on Bullish/Bearish Bounce**: Choose which bounce directions to monitor
- **Alert on New OB Formation**: Get notified when new Order Blocks form
- **Alert on Combined OBs**: Alerts for strong confluence zones
- **Min OBs for Strong Zone Alert**: Threshold for combined zone alerts (default: 2)
### Fair Value Gaps
- **Show Fair Value Gaps**: Toggle FVG display
- **FVG Mitigation Source**: Choose close or high/low for mitigation detection
- **Bullish/Bearish FVG**: Enable/disable each type
- **Invert FVG Colors**: Swap FVG color scheme
### Multi-Timeframe
- **Show Lower Timeframes**: Display OBs from timeframes lower than chart
- **Individual Timeframe Toggles**: Enable/disable 1min, 3min, 5min, 15min, 60min
### Style
- **Text Color**: Customize label text color
- **Extend Zones**: Set extension length in bars (default: 40)
- **Show Tag**: Display combined indicator in merged zone labels
## Usage Tips
### For Day Trading
- Enable 1min, 3min, and 5min timeframes
- Use "High" zone count for more trading opportunities
- Watch for bounces from combined zones (highest probability)
### For Swing Trading
- Enable 15min, 60min, and higher timeframes
- Use "Medium" or "Low" zone count for major zones only
- Focus on combined zones with 3+ timeframes
### For Scalping
- Use current timeframe only (disable MTF)
- Enable both OB and FVG
- Set up alerts for quick bounce notifications
### Alert Setup
1. Click "Create Alert" in TradingView
2. Choose from available alert conditions:
- **Bullish Bounce (OB/FVG)**: Long entry opportunities
- **Bearish Bounce (OB/FVG)**: Short entry opportunities
- **New OB Formation**: Early zone identification
- **Strong Combined Zone**: High-probability confluence areas
3. Set alert frequency to "Once Per Bar Close" to avoid false signals
## Technical Details
### Performance Optimizations
- Maximum 100 boxes/labels for efficient rendering
- Lightweight FVG processing on current timeframe only
- Dynamic memory management with array size limits
- Selective rendering of active zones only
### Calculations
- **ATR Multiplier**: Zones exceeding 3.5x ATR are filtered out
- **Volume Percentage**: `max(bullVol, bearVol) / totalVolume × 100`
- **FVG Size Filter**: Uses 100th percentile of last 1000 gaps
- **Overlap Detection**: Uses intersection/union ratio for combining zones
## Credits & License
This indicator combines and enhances concepts from:
- "Volumized Order Blocks" methodology
- "Volumatic Fair Value Gaps" approach
**License**: Mozilla Public License 2.0 (MPL-2.0)
## Disclaimer
This indicator is provided for **educational and informational purposes only**. Trading involves substantial risk of loss and is not suitable for every investor. Past performance is not indicative of future results. Always do your own research and consult with a licensed financial advisor before making trading decisions.
## Version History
**v2 (Current)**
- Combined OB and FVG into single indicator
- Added comprehensive alert system
- Improved performance with lightweight FVG processing
- Enhanced bounce detection with touch-inside logic
- Added volume metrics to zone labels
- Implemented dynamic zone extension until broken
- Added combined zone detection with configurable thresholds
---
### Chart Examples
The indicator displays:
- **Red Zones** (Inverted): Bullish Order Blocks / Bearish FVGs
- **Blue Zones** (Inverted): Bearish Order Blocks / Bullish FVGs
- **Orange Zones** (Inverted): Bullish Fair Value Gaps
- **Aqua Zones** (Inverted): Bearish Fair Value Gaps
Each zone shows:
- Timeframe label (e.g., "5m", "15m", "1H")
- Zone type (OB or FVG)
- Total volume in millions (e.g., "12.5M")
- Dominant side percentage (e.g., "85%")
**Example Label**: ` 5m & 15m OB 45.2M (78%)`
- Combined zone from 5min and 15min timeframes
- Order Block type
- 45.2 million total volume
- 78% volume on dominant side
---
## Support & Updates
For issues, suggestions, or questions, please leave a comment on the indicator page.
**Author**: © rasukaru666
**Compatible with**: TradingView Pine Script v6
Market Analysis Pro [Trademy]OVERVIEW
Trademy Market Analysis Pro is a professional-grade trading system that combines advanced momentum analysis with institutional-level Supply/Demand zone mapping. This indicator is designed to provide crystal-clear market analysis with precise risk management tools, creating a complete trading framework within a single, streamlined interface.
Unlike complex indicators that overwhelm traders with information, Trademy focuses on what matters: high-probability setups with clear entry points, defined risk levels, and multiple profit targets. The system is built to eliminate guesswork and provide actionable signals that work across multiple timeframes and asset classes eg: ( INDEX:BTCUSD , NASDAQ:NVDA and more )
CORE CONCEPTS
Advanced Momentum Engine: The foundation of Trademy Market Analysis Pro is a proprietary momentum detection system that identifies true directional shifts in the market. The algorithm analyzes price behavior relative to volatility-adjusted dynamic levels, generating signals only when genuine momentum reversals occur. The "Signal Sensitivity" control allows you to adapt the system from conservative (fewer, higher-quality signals) to aggressive (more frequent opportunities) based on your trading style and market conditions.
Institutional Supply/Demand Zones: The system automatically identifies and plots key institutional levels where significant buying (Demand) or selling (Supply) pressure has occurred. These zones are calculated using advanced price structure analysis, filtered through intelligent overlap detection to ensure only the most relevant zones appear on your chart. When price approaches these levels, they often act as strong support or resistance, providing logical areas for entries and exits.
Intelligent Signal Classification: Not all signals are created equal. Trademy categorizes every signal as either "Normal" or "Strong" based on its alignment with the broader market structure and trend context. Strong signals represent higher-conviction setups where momentum and trend align perfectly, while normal signals indicate counter-trend or early reversal opportunities.
Non-Repainting Architecture: Every signal is locked in at bar close (when enabled), and all TP/SL levels are calculated using volatility measurements captured at the moment of signal generation.
KEY FEATURES
Precision Signal System
Dual Signal Modes: Choose between Normal signals (standard momentum reversals) or Strong signals (high-conviction trend-aligned setups), or view both simultaneously
Wait for Bar Close: Optional no-repaint mode ensures signals only appear after candle confirmation
Visual Signal Hierarchy: Normal signals shown with standard arrows (▲/▼), Strong signals marked with distinctive colors for instant recognition
Adjustable Arrow Sizes: Customize signal display from tiny to large based on your chart preferences
Professional Risk Management
Automated TP/SL Calculation: Three take-profit levels (TP1, TP2, TP3) and one stop-loss level automatically calculated using advanced volatility measurement
Fixed Risk Levels: TP/SL lines are locked at signal generation and never move—providing consistent, reliable risk parameters
Visual Risk Zones: Optional colored zones highlight your risk and reward areas for instant position assessment
Adjustable Risk Multiplier: Scale your targets up or down with a single parameter while maintaining proper risk-reward ratios
Clear On-Chart Labels: Every level displays exact price values in an easy-to-read format
Supply/Demand Zone Mapping
Automatic Zone Detection: System identifies high-probability supply and demand zones using advanced price structure analysis
Anti-Overlap Algorithm: Intelligent filtering prevents zone clutter by removing overlapping levels
Extended Zone Projection: Zones extend into the future, showing you key levels before price reaches them
Break-of-Structure Tracking: Monitors when zones are broken and removes invalidated levels
Fully Customizable: Adjust zone colors, swing length, history depth, and box width to match your analysis style
Visual Customization
Flexible Color Schemes: Customize colors for bull/bear signals, TP/SL levels, and supply/demand zones
Trend Background: Optional background coloring to instantly visualize the current market bias
Support/Resistance Lines: Toggle automatic S/R level plotting from key price pivots
Multiple Arrow Sizes: Choose from tiny, small, normal, or large signal arrows
WHAT MAKES TRADEMY MARKET ANALYSIS PRO DIFFERENT
✅ Simplicity Meets Power
✅ TP/SL Levels
✅ Institutional Zone Integration
✅ Universal Indicator for all markets
✅ Multi-Timeframe Flexibility
BEST PRACTICES
📌 Always Use Stop-Loss: Enable the TP/SL system and respect your stop-loss levels,risk management is key to long-term success
📌 Backtest First: Before live trading, replay historical charts to understand signal behavior on your specific asset and timeframe
📌 Combine Timeframes: Use higher timeframe signals as your bias, enter on lower timeframe signals in the same direction
📌 Watch the Zones: Highest probability setups occur when signals align with supply/demand zones (buy near demand, sell near supply)
📌 Don't Chase: If you miss a signal, wait for the next one,forcing trades leads to losses
📌 Partial Profits: Consider taking partial profits at TP1, moving stop to breakeven, and letting the rest run to TP2/TP3
📩 ACCESS & SUPPORT
This is an invite-only indicator. For access inquiries, please contact via TradingView private message.
Important Disclaimers:
This indicator is a tool for technical analysis and does not constitute financial advice
Past performance does not guarantee future results
Always practice proper risk management and never risk more than you can afford to lose
Trading carries substantial risk of loss and is not suitable for all investors
Critical_Poly_divergenceDetects various divergences and acts as Decision Making tool. Only for Educational purpose
Volume Flow IndicatorVolume flow analysis
This indicator measures volume-weighted money flow by comparing price changes against a volatility-based threshold, then smoothing the result - when VFI is above zero (green cloud) it suggests accumulation/buying pressure, while below zero (red cloud) indicates distribution/selling pressure.
EMA 20/50/200 - Warning Note Before Cross EMA 20/50/200 - Smart Cross Detection with Customizable Alerts
A clean and minimalistic indicator that tracks three key Exponential Moving Averages (20, 50, and 200) with intelligent near-cross detection and customizable warning system.
═══════════════════════════════════════════════════════════════════
📊 KEY FEATURES
✓ Triple EMA System
• EMA 20 (Red) - Fast/Short-term trend
• EMA 50 (Yellow) - Medium/Intermediate trend
• EMA 200 (Green) - Slow/Long-term trend & major support/resistance
✓ Smart Near-Cross Detection
• Get warned BEFORE crosses happen (not after)
• Adjustable threshold percentage (how close is "close")
• Automatic hiding after cross to prevent false signals
• Configurable lookback period
✓ Dual Warning System
• Price Label: Appears directly on chart near EMAs
• Info Table: Positioned anywhere on your chart
• Both show distance percentage and direction
• Dynamic positioning to avoid blocking candles
✓ Color-Coded Alerts
• GREEN warning = Bullish cross approaching (EMA 20 crossing UP through EMA 50)
• RED warning = Bearish cross approaching (EMA 20 crossing DOWN through EMA 50)
✓ Cross Signal Detection
• Golden Cross (EMA 50 crosses above EMA 200)
• Death Cross (EMA 50 crosses below EMA 200)
• Fast crosses (EMA 20 and EMA 50)
═══════════════════════════════════════════════════════════════════
⚙️ CUSTOMIZATION OPTIONS
Warning Settings:
• Custom warning text for bull/bear signals
• Adjustable opacity for better visibility
• Toggle distance and direction display
• Flexible table positioning (9 positions available)
• 5 text size options
Alert Settings:
• Golden/Death Cross alerts
• Fast cross alerts (20/50)
• Near-cross warnings (before it happens)
• All alerts are non-repainting
Display Options:
• Show/hide each EMA individually
• Toggle all signals on/off
• Adjustable threshold sensitivity
• Dynamic label positioning
═══════════════════════════════════════════════════════════════════
🎯 HOW TO USE
1. ADD TO CHART
Simply add the indicator to any chart and timeframe
2. ADJUST THRESHOLD
Default is 0.5% - increase for less frequent warnings, decrease for earlier warnings
3. SET UP ALERTS
Create alerts for:
• Near-cross warnings (get notified before the cross)
• Actual crosses (when EMA 20 crosses EMA 50)
• Golden/Death crosses (major trend changes)
4. CUSTOMIZE APPEARANCE
• Change warning text to your language
• Adjust opacity for your chart theme
• Position table where it's most convenient
• Choose label size for visibility
═══════════════════════════════════════════════════════════════════
💡 TRADING TIPS
- Use the near-cross warning to prepare entries/exits BEFORE the cross happens
- Green warning = Prepare for potential long position
- Red warning = Prepare for potential short position
- Combine with other indicators for confirmation
- Higher timeframes = more reliable signals
- Warning disappears after cross to avoid confusion
═══════════════════════════════════════════════════════════════════
🔧 TECHNICAL DETAILS
- Pine Script v6
- Non-repainting (all signals confirm on bar close)
- Works on all timeframes
- Works on all instruments (stocks, crypto, forex, futures)
- Lightweight and efficient
- No external data sources required
═══════════════════════════════════════════════════════════════════
📝 SETTINGS GUIDE
Near Cross Settings:
• Threshold %: How close EMAs must be to trigger warning (default 0.5%)
• Lookback Bars: Hide warning for X bars after a cross (default 3)
Warning Note Style:
• Text Size: Tiny to Huge
• Colors: Customize bull/bear warning colors
• Position: Place table anywhere on chart
• Opacity: 0 (solid) to 90 (very transparent)
Price Label:
• Size: Tiny to Large
• Opacity: Control transparency
• Auto-positioning: Moves to avoid blocking candles
Custom Text:
• Bull/Bear warning messages
• Toggle distance display
• Toggle direction display
═══════════════════════════════════════════════════════════════════
⚠️ IMPORTANT NOTES
- Warnings only appear BEFORE crosses, not after
- After a cross happens, warning is hidden for the lookback period
- Adjust threshold if you're getting too many/too few warnings
- This is a trend-following indicator - best used with confirmation
- Always use proper risk management
═══════════════════════════════════════════════════════════════════
Happy Trading! 📈📉
If you find this indicator useful, please give it a boost and leave a comment!
For questions or suggestions, feel free to reach out.
Grok Gold Master 2025Grok Gold Master 2025 – Full Indicator Description Always & Forever Free, only for self use only
(TradingView Pine Script v6 – specially built for XAUUSD / Gold)
This is a clean, professional, all-in-one Gold trading indicator designed for swing/day traders who want clear institutional-style levels, bias confirmation, and visual structure on the chart.
Core Purpose
Help you trade Gold (XAUUSD) with a high-probability bullish bias when price is above key levels, using a simple but powerful “3-zone” framework:
- Support (demand zone)
- Buy Zone (the sweet spot where you actually want to go long)
- Resistance (supply zone)
Main Visual Elements on the Chart
1. **Daily Range Box**
- A semi-transparent green box that covers the entire trading day from Support to Resistance
- Automatically refreshes every new day without any “future leak” errors
- Gives instant context of the current daily range
2. **Three Horizontal Levels (always visible)**
**
- Support → dashed lime line (default 4114)
- Buy Zone → thick solid yellow line (default 4180) ← your main long trigger level
- Resistance → dashed red line (default 4314)
3. **Zone Fills**
- Yellow fill between Support ↔ Buy Zone (caution/neutral area)
Green fill between Buy Zone ↔ Resistance (bullish control area)
4. **4-hour EMA 50 (thick dodger blue line)**
- Pulled from the 4H timeframe (multi-timeframe)
- Acts as dynamic trend filter
5. **Entry Signals**
- Big green “LONG” label + arrow appears only the first bar when:
close > Buy Zone AND close > 4H EMA 50
- Optional green triangles below bars when there is also high volume confirmation (volume > 1.5× 20-period average)
6. **Info Panel (top-right mini table + big label)**
Shows current values for:
- Support / Buy Zone / Resistance
- Current 4H EMA 50
- Live BIAS: “BULLISH – LONG ✅” (green) or “NEUTRAL – WAIT ⏸️” (gray)
Key Logic & Rules Built Into the Indicator
Bullish / Long condition (all must be true):
- Price closes above the Buy Zone level
- Price closes above the 4-hour EMA 50
When both are satisfied → entire info label turns green and says “BULLISH – LONG ✅”
If not → stays neutral/gray and tells you to wait.
Customization Options (Inputs)
- Show/hide the big info label
- Show/hide high-volume confirmation triangles
- Use Dynamic Levels → turn on to manually override the three levels with your own values (very useful when Gold breaks to new all-time highs or you spot new initiation levels)
Why This Indicator Feels “Institutional”
- Clean three-zone structure (exactly how smart money & banks draw their levels)
- Daily range box gives perfect context
- Multi-timeframe trend filter (4H EMA50)
- Volume spike confirmation option
- No repainting, no future leaks
- Instant visual bias at a glance
Best Used On
- XAUUSD (Gold) on 5m, 15m, 1H or 4H charts
- Works beautifully in both ranging and trending markets
In short: “Grok Gold Master 2025” is your 2025-2026 Gold trading dashboard — it tells you exactly where the important levels are, when the trend is truly bullish, and when to press the long button with confidence.
Just add it to your chart and you’ll immediately see why many Gold traders already using almost this exact setup. Now it’s packaged, automated, and looks gorgeous.
ZenMatrix AlgoZenMatrix Algo – Matrix Range Levels
ZenMatrix Algo automatically identifies the early market range for each trading day and plots clean horizontal support and resistance levels based on that range designed by Finovatech Solutions.
These levels often become important price reaction zones throughout the session.
✔ Features :--
Automatically detects the opening range each day
Plots dynamic support & resistance zones
Helps identify breakout areas and intraday structure
Works on any market: Crypto, Forex, Stocks & Indices
Multiple timeframe compatibility
🎯 Best For :--
Intraday scalping
Swing trading confirmations
index traders
anyone who uses early-session ranges as part of their market analysis
How to Use :--
Price breaking above the upper level may indicate bullish momentum
Price dropping below the lower level may indicate bearish continuation
Combine these levels with price action, volume, trend indicators, or your own strategy
Disclaimer :--
This script is for educational purposes only and is not financial advice.
HTF Candle Overlay
This custom indicator is designed to help traders see *Higher Timeframe (HTF)* price action without leaving their current (lower timeframe) chart. It overlays the body and wicks of a larger candle (e.g., 4-hour or Daily) directly onto your 5-minute or 15-minute chart.
Key Functions
1. *Multi-Timeframe Visualization:* It draws the Open, High, Low, and Close of a higher timeframe candle (like the 4-hour) on top of your current chart.
2. *Live Projection:* As the live market moves, the indicator projects the expected width of the current HTF candle, allowing you to see it forming in real-time.
3. *Custom Styling:* You can toggle the background fill on/off and customize colors for bullish/bearish borders and backgrounds separately.
Practical Trading Uses
* Trend Alignment: Traders often use this to ensure they are trading in the direction of the higher timeframe trend. For example, if the 4-hour candle is green (Bullish), you might only look for buy setups on the 5-minute chart.
* Support & Resistance: The High and Low of the previous HTF candle often act as strong support or resistance levels. This indicator makes those levels immediately visible.
* Engulfing Patterns: You can easily spot if the current price action is "engulfing" the previous HTF candle, which can be a powerful reversal signal.
* Context for Scalping: Scalpers use this to avoid shorting into a strong bullish HTF candle or buying into a bearish one. It keeps you aware of the "bigger picture."."
BTC vs Russell2000Description
The BTC vs Russell2000 – Weekly Cycle Map compares Bitcoin’s performance against the Russell 2000 (IWM) to identify long-term risk-on and risk-off market regimes.
The indicator calculates the BTC/RUT ratio on a weekly timeframe and applies a moving average filter to highlight macro momentum shifts.
White line: BTC/RUT ratio (Bitcoin relative strength vs small-cap equities)
Yellow line: Weekly SMA of the ratio (trend filter)
Green background: BTC outperforming → macro bull regime
Red background: Russell 2000 outperforming → macro bear regime
Halving markers: Visual reference points for Bitcoin market cycles
This tool is designed to help traders understand capital rotation between crypto and traditional markets, improve timing of macro entries, and visualize where Bitcoin stands within its broader cycle.
Trading Session IL7 Session-Based Intraday Momentum IndicatorOverview
This indicator is designed to support discretionary traders by highlighting intraday momentum phases based on price behavior and trading session context.
It is intended as a confirmation tool and not as a standalone trading system or automated strategy.
Core Concept
The script combines multiple market observations, including:
- Directional price behavior within the current timeframe
- Structural consistency in recent price movement
- Session-based filtering to focus on periods with higher activity and liquidity
Signals are only displayed when internal conditions align, helping traders avoid low-quality setups during sideways or low-momentum market phases.
How to Use
This indicator should be used to confirm existing trade ideas rather than generate trades on its own.
It can help traders:
- Identify periods where momentum is more likely to continue
- Filter out trades during unfavorable market conditions
- Align intraday execution with higher-timeframe bias
Best results are achieved when used alongside key price levels, higher-timeframe structure and proper risk management.
Limitations
This indicator does not predict future price movements.
Signals may change during active candles.
Market conditions may reduce effectiveness during extremely low volatility periods.
Language Notice
The indicator’s user interface labels are displayed in German.
This English description is provided first to comply with TradingView community script publishing rules.
n-Day Stock Return with MAs and SlopesThis indicator calculates the n-day percentage return of a stock and visualizes it either as a histogram or line, with optional moving averages (MA1 and MA2) of the return and their slopes. The script highlights trend changes in the slopes of these moving averages by drawing colored horizontal markers at each reversal point—green for upward slope shifts, red for downward shifts, and gray when the slope turns flat—allowing users to quickly identify strengthening, weakening, or neutral return trends over time. It also includes optional slope plots for additional trend context and a zero reference line for distinguishing positive and negative performance.
FAD Dashboard (Future vs Spot)Inspired by Wealthcon
This dashboard shows Real Time sentiment of Future Asset Difference with Future price of 3 Main Index & 10 Most significant Nifty 50 stocks . But the list is user customisable.
Fut Up + FAD Up (Deep Green)
Fut Down + FAD Up (Deep Blue)
Fut Up + FAD Down (Yellow)
Fut Down + FAD Down (Red)
Only for Educational purpose.
EMA Market Structure [BOSWaves]// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// Join our channel for more free tools: t.me
// This Pine Script® code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © BOSWaves
//@version=6
indicator("EMA Market Structure ", overlay=true, max_lines_count=500, max_labels_count=500, max_boxes_count=500)
// ============================================================================
// Inputs
// ============================================================================
// Ema settings
emaLength = input.int(50, "EMA Length", minval=1, tooltip="Period for the Exponential Moving Average calculation")
emaSource = input.source(close, "EMA Source", tooltip="Price source for EMA calculation (close, open, high, low, etc.)")
colorSmooth = input.int(3, "Color Smoothing", minval=1, group="EMA Style", tooltip="Smoothing period for the EMA color gradient transition")
showEmaGlow = input.bool(true, "EMA Glow Effect", group="EMA Style", tooltip="Display glowing halo effect around the EMA line for enhanced visibility")
// Structure settings
swingLength = input.int(5, "Swing Detection Length", minval=2, group="Structure", tooltip="Number of bars to the left and right to identify swing highs and lows")
swingCooloff = input.int(10, "Swing Marker Cooloff (Bars)", minval=1, group="Structure", tooltip="Minimum number of bars between consecutive swing point markers to reduce visual clutter")
showSwingLines = input.bool(true, "Show Structure Lines", group="Structure", tooltip="Display lines connecting swing highs and swing lows")
showSwingZones = input.bool(true, "Show Structure Zones", group="Structure", tooltip="Display shaded zones between consecutive swing points")
showBOS = input.bool(true, "Show Break of Structure", group="Structure", tooltip="Display BOS labels and stop loss levels when price breaks structure")
bosCooloff = input.int(15, "BOS Cooloff (Bars)", minval=5, maxval=50, group="Structure", tooltip="Minimum number of bars required between consecutive BOS signals to avoid signal spam")
slExtension = input.int(20, "SL Line Extension (Bars)", minval=5, maxval=100, group="Structure", tooltip="Number of bars to extend the stop loss line into the future for visibility")
slBuffer = input.float(0.1, "SL Buffer %", minval=0, maxval=2, step=0.05, group="Structure", tooltip="Additional buffer percentage to add to stop loss level for safety margin")
// Background settings
showBG = input.bool(true, "Show Trend Background", group="EMA Style", tooltip="Display background color based on EMA trend direction")
bgBullColor = input.color(color.new(#00ff88, 96), "Bullish BG", group="EMA Style", tooltip="Background color when EMA is in bullish trend")
bgBearColor = input.color(color.new(#ff3366, 96), "Bearish BG", group="EMA Style", tooltip="Background color when EMA is in bearish trend")
// ============================================================================
// Ema trend filter with gradient color
// ============================================================================
ema = ta.ema(emaSource, emaLength)
// Calculate EMA acceleration for gradient color
emaChange = ema - ema
emaAccel = ta.ema(emaChange, colorSmooth)
// Manual tanh function for normalization
tanh(x) =>
ex = math.exp(2 * x)
(ex - 1) / (ex + 1)
accelNorm = tanh(emaAccel / (ta.atr(14) * 0.01))
// Map normalized accel to hue (60 = green, 120 = yellow/red)
hueRaw = 60 + accelNorm * 60
hue = na(hueRaw ) ? hueRaw : (hueRaw + hueRaw ) / 2
sat = 1.0
val = 1.0
// HSV to RGB conversion
hsv_to_rgb(h, s, v) =>
c = v * s
x = c * (1 - math.abs((h / 60) % 2 - 1))
m = v - c
r = 0.0
g = 0.0
b = 0.0
if (h < 60)
r := c
g := x
b := 0
else if (h < 120)
r := x
g := c
b := 0
else if (h < 180)
r := 0
g := c
b := x
else if (h < 240)
r := 0
g := x
b := c
else if (h < 300)
r := x
g := 0
b := c
else
r := c
g := 0
b := x
color.rgb(int((r + m) * 255), int((g + m) * 255), int((b + m) * 255))
emaColor = hsv_to_rgb(hue, sat, val)
emaTrend = ema > ema ? 1 : ema < ema ? -1 : 0
// EMA with enhanced glow effect using fills
glowOffset = ta.atr(14) * 0.25
emaGlow8 = plot(showEmaGlow ? ema + glowOffset * 8 : na, "EMA Glow 8", color.new(emaColor, 100), 1, display=display.none)
emaGlow7 = plot(showEmaGlow ? ema + glowOffset * 7 : na, "EMA Glow 7", color.new(emaColor, 100), 1, display=display.none)
emaGlow6 = plot(showEmaGlow ? ema + glowOffset * 6 : na, "EMA Glow 6", color.new(emaColor, 100), 1, display=display.none)
emaGlow5 = plot(showEmaGlow ? ema + glowOffset * 5 : na, "EMA Glow 5", color.new(emaColor, 100), 1, display=display.none)
emaGlow4 = plot(showEmaGlow ? ema + glowOffset * 4 : na, "EMA Glow 4", color.new(emaColor, 100), 1, display=display.none)
emaGlow3 = plot(showEmaGlow ? ema + glowOffset * 3 : na, "EMA Glow 3", color.new(emaColor, 100), 1, display=display.none)
emaGlow2 = plot(showEmaGlow ? ema + glowOffset * 2 : na, "EMA Glow 2", color.new(emaColor, 100), 1, display=display.none)
emaGlow1 = plot(showEmaGlow ? ema + glowOffset * 1 : na, "EMA Glow 1", color.new(emaColor, 100), 1, display=display.none)
emaCore = plot(ema, "EMA Core", emaColor, 3)
emaGlow1b = plot(showEmaGlow ? ema - glowOffset * 1 : na, "EMA Glow 1b", color.new(emaColor, 100), 1, display=display.none)
emaGlow2b = plot(showEmaGlow ? ema - glowOffset * 2 : na, "EMA Glow 2b", color.new(emaColor, 100), 1, display=display.none)
emaGlow3b = plot(showEmaGlow ? ema - glowOffset * 3 : na, "EMA Glow 3b", color.new(emaColor, 100), 1, display=display.none)
emaGlow4b = plot(showEmaGlow ? ema - glowOffset * 4 : na, "EMA Glow 4b", color.new(emaColor, 100), 1, display=display.none)
emaGlow5b = plot(showEmaGlow ? ema - glowOffset * 5 : na, "EMA Glow 5b", color.new(emaColor, 100), 1, display=display.none)
emaGlow6b = plot(showEmaGlow ? ema - glowOffset * 6 : na, "EMA Glow 6b", color.new(emaColor, 100), 1, display=display.none)
emaGlow7b = plot(showEmaGlow ? ema - glowOffset * 7 : na, "EMA Glow 7b", color.new(emaColor, 100), 1, display=display.none)
emaGlow8b = plot(showEmaGlow ? ema - glowOffset * 8 : na, "EMA Glow 8b", color.new(emaColor, 100), 1, display=display.none)
// Create glow layers with fills (from outermost to innermost)
fill(emaGlow8, emaGlow7, showEmaGlow ? color.new(emaColor, 97) : na)
fill(emaGlow7, emaGlow6, showEmaGlow ? color.new(emaColor, 95) : na)
fill(emaGlow6, emaGlow5, showEmaGlow ? color.new(emaColor, 93) : na)
fill(emaGlow5, emaGlow4, showEmaGlow ? color.new(emaColor, 90) : na)
fill(emaGlow4, emaGlow3, showEmaGlow ? color.new(emaColor, 87) : na)
fill(emaGlow3, emaGlow2, showEmaGlow ? color.new(emaColor, 83) : na)
fill(emaGlow2, emaGlow1, showEmaGlow ? color.new(emaColor, 78) : na)
fill(emaGlow1, emaCore, showEmaGlow ? color.new(emaColor, 70) : na)
fill(emaCore, emaGlow1b, showEmaGlow ? color.new(emaColor, 70) : na)
fill(emaGlow1b, emaGlow2b, showEmaGlow ? color.new(emaColor, 78) : na)
fill(emaGlow2b, emaGlow3b, showEmaGlow ? color.new(emaColor, 83) : na)
fill(emaGlow3b, emaGlow4b, showEmaGlow ? color.new(emaColor, 87) : na)
fill(emaGlow4b, emaGlow5b, showEmaGlow ? color.new(emaColor, 90) : na)
fill(emaGlow5b, emaGlow6b, showEmaGlow ? color.new(emaColor, 93) : na)
fill(emaGlow6b, emaGlow7b, showEmaGlow ? color.new(emaColor, 95) : na)
fill(emaGlow7b, emaGlow8b, showEmaGlow ? color.new(emaColor, 97) : na)
// ============================================================================
// Swing high/low detection
// ============================================================================
// Swing High/Low Detection
swingHigh = ta.pivothigh(high, swingLength, swingLength)
swingLow = ta.pivotlow(low, swingLength, swingLength)
// Cooloff tracking
var int lastSwingHighPlot = na
var int lastSwingLowPlot = na
// Check if cooloff period has passed
canPlotHigh = na(lastSwingHighPlot) or (bar_index - lastSwingHighPlot) >= swingCooloff
canPlotLow = na(lastSwingLowPlot) or (bar_index - lastSwingLowPlot) >= swingCooloff
// Store swing points
var float lastSwingHigh = na
var int lastSwingHighBar = na
var float lastSwingLow = na
var int lastSwingLowBar = na
// Track previous swing for BOS detection
var float prevSwingHigh = na
var float prevSwingLow = na
// Update swing highs with cooloff
if not na(swingHigh) and canPlotHigh
prevSwingHigh := lastSwingHigh
lastSwingHigh := swingHigh
lastSwingHighBar := bar_index - swingLength
lastSwingHighPlot := bar_index
// Update swing lows with cooloff
if not na(swingLow) and canPlotLow
prevSwingLow := lastSwingLow
lastSwingLow := swingLow
lastSwingLowBar := bar_index - swingLength
lastSwingLowPlot := bar_index
// ============================================================================
// Structure lines & zones
// ============================================================================
var line swingHighLine = na
var line swingLowLine = na
var box swingHighZone = na
var box swingLowZone = na
if showSwingLines
// Draw line connecting swing highs with zones
if not na(swingHigh) and canPlotHigh and not na(prevSwingHigh)
if not na(lastSwingHighBar)
line.delete(swingHighLine)
swingHighLine := line.new(lastSwingHighBar, lastSwingHigh, bar_index - swingLength, swingHigh, color=color.new(#ff3366, 0), width=2, style=line.style_solid)
// Create resistance zone
if showSwingZones
box.delete(swingHighZone)
zoneTop = math.max(lastSwingHigh, swingHigh)
zoneBottom = math.min(lastSwingHigh, swingHigh)
swingHighZone := box.new(lastSwingHighBar, zoneTop, bar_index - swingLength, zoneBottom, border_color=color.new(#ff3366, 80), bgcolor=color.new(#ff3366, 92))
// Draw line connecting swing lows with zones
if not na(swingLow) and canPlotLow and not na(prevSwingLow)
if not na(lastSwingLowBar)
line.delete(swingLowLine)
swingLowLine := line.new(lastSwingLowBar, lastSwingLow, bar_index - swingLength, swingLow, color=color.new(#00ff88, 0), width=2, style=line.style_solid)
// Create support zone
if showSwingZones
box.delete(swingLowZone)
zoneTop = math.max(lastSwingLow, swingLow)
zoneBottom = math.min(lastSwingLow, swingLow)
swingLowZone := box.new(lastSwingLowBar, zoneTop, bar_index - swingLength, zoneBottom, border_color=color.new(#00ff88, 80), bgcolor=color.new(#00ff88, 92))
// ============================================================================
// Break of structure (bos)
// ============================================================================
// Track last BOS bar for cooloff
var int lastBullishBOS = na
var int lastBearishBOS = na
// Check if cooloff period has passed
canPlotBullishBOS = na(lastBullishBOS) or (bar_index - lastBullishBOS) >= bosCooloff
canPlotBearishBOS = na(lastBearishBOS) or (bar_index - lastBearishBOS) >= bosCooloff
// Bullish BOS: Price breaks above previous swing high while EMA is bullish
bullishBOS = showBOS and canPlotBullishBOS and emaTrend == 1 and not na(prevSwingHigh) and close > prevSwingHigh and close <= prevSwingHigh
// Bearish BOS: Price breaks below previous swing low while EMA is bearish
bearishBOS = showBOS and canPlotBearishBOS and emaTrend == -1 and not na(prevSwingLow) and close < prevSwingLow and close >= prevSwingLow
// Update last BOS bars
if bullishBOS
lastBullishBOS := bar_index
if bearishBOS
lastBearishBOS := bar_index
// Plot BOS with enhanced visuals and SL at the candle wick
if bullishBOS
// Calculate SL at the low of the current candle (bottom of wick) with buffer
slLevel = low * (1 - slBuffer/100)
// BOS Label with shadow effect
label.new(bar_index, low, "BOS", style=label.style_label_up, color=color.new(#00ff88, 0), textcolor=color.black, size=size.normal, tooltip="Bullish Break of Structure SL: " + str.tostring(slLevel))
// Main SL line at candle low
line.new(bar_index, slLevel, bar_index + slExtension, slLevel, color=color.new(#00ff88, 0), width=2, style=line.style_dashed, extend=extend.none)
// SL zone box for visual emphasis
box.new(bar_index, slLevel + (slLevel * 0.002), bar_index + slExtension, slLevel - (slLevel * 0.002), border_color=color.new(#00ff88, 60), bgcolor=color.new(#00ff88, 85))
// S/R label
label.new(bar_index + slExtension, slLevel, "S/R", style=label.style_label_left, color=color.new(#00ff88, 0), textcolor=color.black, size=size.tiny)
if bearishBOS
// Calculate SL at the high of the current candle (top of wick) with buffer
slLevel = high * (1 + slBuffer/100)
// BOS Label with shadow effect
label.new(bar_index, high, "BOS", style=label.style_label_down, color=color.new(#ff3366, 0), textcolor=color.white, size=size.normal, tooltip="Bearish Break of Structure SL: " + str.tostring(slLevel))
// Main SL line at candle high
line.new(bar_index, slLevel, bar_index + slExtension, slLevel, color=color.new(#ff3366, 0), width=2, style=line.style_dashed, extend=extend.none)
// SL zone box for visual emphasis
box.new(bar_index, slLevel + (slLevel * 0.002), bar_index + slExtension, slLevel - (slLevel * 0.002), border_color=color.new(#ff3366, 60), bgcolor=color.new(#ff3366, 85))
// S/R label
label.new(bar_index + slExtension, slLevel, "S/R", style=label.style_label_left, color=color.new(#ff3366, 0), textcolor=color.white, size=size.tiny)
// ============================================================================
// Dynamic background zones
// ============================================================================
bgcolor(showBG and emaTrend == 1 ? bgBullColor : showBG and emaTrend == -1 ? bgBearColor : na)
// ============================================================================
// Alerts
// ============================================================================
alertcondition(bullishBOS, "Bullish BOS", "Bullish Break of Structure detected!")
alertcondition(bearishBOS, "Bearish BOS", "Bearish Break of Structure detected!")
alertcondition(emaTrend == 1 and emaTrend != 1, "EMA Bullish", "EMA turned bullish")
alertcondition(emaTrend == -1 and emaTrend != -1, "EMA Bearish", "EMA turned bearish")
// ╔════════════════════════════════╗
// ║ Download at ║
// ╚════════════════════════════════╝
// ███████╗██╗███╗ ███╗██████╗ ██╗ ███████╗
// ██╔════╝██║████╗ ████║██╔══██╗██║ ██╔════╝
// ███████╗██║██╔████╔██║██████╔╝██║ █████╗
// ╚════██║██║██║╚██╔╝██║██╔═══╝ ██║ ██╔══╝
// ███████║██║██║ ╚═╝ ██║██║ ███████╗███████╗
// ╚══════╝╚═╝╚═╝ ╚═╝╚═╝ ╚══════╝╚══════╝
// ███████╗ ██████╗ ██████╗ ███████╗██╗ ██╗
// ██╔════╝██╔═══██╗██╔══██╗██╔════╝╚██╗██╔╝
// █████╗ ██║ ██║██████╔╝█████╗ ╚███╔╝
// ██╔══╝ ██║ ██║██╔══██╗██╔══╝ ██╔██╗
// ██║ ╚██████╔╝██║ ██║███████╗██╔╝ ██╗
// ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
// ████████╗ ██████╗ ██████╗ ██╗ ███████╗
// ╚══██╔══╝██╔═══██╗██╔═══██╗██║ ██╔════╝
// ██║ ██║ ██║██║ ██║██║ ███████╗
// ██║ ██║ ██║██║ ██║██║ ╚════██║
// ██║ ╚██████╔╝╚██████╔╝███████╗███████║
// ╚═╝ ╚═════╝ ╚═════╝ ╚══════╝╚══════╝
// ==========================================================================================
Breaker Blocks [TakingProphets]Breaker Blocks
Smart Money “breaker” zones automatically mapped on your chart.
This tool is designed for traders who use ICT / Smart Money concepts and want a clean, automated way to see breaker blocks form and evolve in real time.
-----------------------------------------------------------------------------------------------
🔍 What this indicator does
The script automatically detects potential bullish and bearish breaker blocks after a market structure shift, then draws and maintains those zones on your chart:
-Plots bullish breaker blocks as green shaded zones.
-Plots bearish breaker blocks as red shaded zones.
-Optionally shows the 50% (midline) of each breaker for refinement.
-Keeps a rolling list of the most recent breakers and removes older ones to keep your chart clean.
-Optionally hides breakers once price closes through them (invalidation), so only active zones remain.
It’s built to work on any symbol and any timeframe. Lower timeframes will naturally generate more breakers; higher timeframes will show fewer, more significant zones.
Important: This script does not open, manage, or close trades for you. It only visualizes price zones that may be relevant to your own strategy and analysis.
-----------------------------------------------------------------------------------------------
🧠 Core logic (high level)
Under the hood, the indicator:
Uses an internal zigzag swing structure to track major pivot highs and lows.
Watches for a market structure shift (MSS):
Bullish MSS: price closes above a prior swing high.
Bearish MSS: price closes below a prior swing low.
Once an MSS is confirmed, it:
Locates the relevant impulse candle(s) that price traded through.
Defines the breaker block using the high/low (or body vs. wick, based on internal settings).
Draws a breaker box from that origin forward in time.
Each breaker is stored as an internal object with:
Direction (bullish or bearish)
Top and bottom prices
Visual boxes and an optional midline
On every new candle, all active breakers are updated:
Extended forward as new bars print.
Optionally invalidated and deleted if price closes back through the breaker in the opposite direction.
This gives you a dynamic map of which breaker blocks are still “respected” by price and which have failed.
-----------------------------------------------------------------------------------------------
⚙️ Key Inputs & Settings
All user-facing options are grouped under “Breaker Blocks” for a clean UI.
-Display Breaker Block
Toggle the visualization on/off without removing detection logic.
-Bullish Color / Bearish Color
Choose the fill color for bullish and bearish breaker zones.
-Show 50% Line
Plots a dashed line at the mid-point of each breaker block.
Helpful if you use the 50% level as a refinement or entry anchor.
-Max Visible
Limits how many of the most recent breaker blocks stay on the chart.
Older breakers are deleted once this limit is exceeded (keeps things clean and lightweight).
-Hide When Invalidated
If enabled:
Bullish breaker is hidden once price closes below its low.
Bearish breaker is hidden once price closes above its high.
If disabled, breakers remain visible even after those closes (for study / backtesting purposes).
These options allow you to run the tool in either a minimal, current-context only mode, or a more historical, educational mode.
-----------------------------------------------------------------------------------------------
🧭 How traders might use it
Some common ways traders may incorporate breaker blocks into their own plans:
As context zones around which to look for entries using their personal triggers.
As potential support/resistance areas after a shift in structure.
To visually separate active vs. invalidated zones instead of manually redrawing them.
In confluence with other SMC tools (FVGs, liquidity pools, PD arrays, etc.) and higher-timeframe bias.
This indicator is intended as a visual aid and works best when combined with a complete trading plan, risk management rules, and your own discretion.
-----------------------------------------------------------------------------------------------
⚠️ Disclaimer
This indicator does not guarantee profits or specific outcomes.
It is provided for educational and informational purposes only.
Past price behavior around breaker blocks does not imply future results.
Always test any tool on a demo account or in a simulated environment before using it with real capital.
Trading involves risk, and you are solely responsible for your own decisions.
VectorCoresAI SMA + Bollinger Fusion v1VectorCoresAI — SMA + Bollinger Fusion (Free)
A clean, modern visual tool combining four key SMAs with an adaptive Bollinger structure.
This script merges two of the most widely used charting concepts into one simple, readable view:
Included
✔ SMA 21
✔ SMA 50
✔ SMA 100
✔ SMA 200
✔ Bollinger Bands with adjustable length + multiplier
✔ Adaptive “Fusion Squeeze” shading to highlight compression phases
✔ Optional visibility toggles for each SMA
✔ Lightweight, non-intrusive overlay
What this indicator is designed for
This tool helps traders quickly understand:
Trend alignment using the 21/50/100/200 SMAs
Volatility conditions around the Bollinger midline
Price compression and expansion
Early awareness of breakout environments
Clean visual structure without clutter
Everything is intentionally simple and transparent.
No predictions, no signals, no trading advice — just clean chart structure.
Why this version is unique
Instead of using standard Bollinger visuals, this Fusion edition uses subtle adaptive shading to show when the bands contract.
This makes compression zones instantly visible without overwhelming the chart.
The SMAs are fixed to widely-used trend levels, giving consistent readings across all markets and timeframes.
Who this is for
Newer traders who want a clear introduction to SMAs + Bollinger Bands
Experienced traders who want a lightweight visual tool
Anyone building structure-based strategies
Users of the VectorCoresAI suite who want a simple companion tool
Notes
This indicator is part of the VectorCoresAI Free Tools collection.
All logic is open-source and educational only.
More tools coming soon.
Alt Trading: Asia Fibonacci Strategy
The Alt Trading: Asia Fibonacci Strategy is a session-anchored liquidity and Fibonacci engine designed for traders who want to systematically exploit the overnight Asia range instead of just marking it and guessing. It automatically profiles the Asia session to build a precise high–low liquidity band, then waits for clean sweeps of that range before it will even consider a setup forcing every idea to start from an objective liquidity event. Behind the scenes, a swing-based structure model defines the dominant leg and projects a true, directionally-aligned Fibonacci map, extending down for long scenarios and up for shorts so the premium/discount zones are never “mirrored” or visually inverted. Key extension bands are converted into forward-projected price zones, with dedicated entry corridors that only activate once price has both raided the Asia high/low and traded back into the correct Fibonacci pocket. A lightweight FVG engine tracks the most recent opposing Fair Value Gap and uses its invalidation as a final confirmation step, so your long setups only trigger when a bearish imbalance has been meaningfully reclaimed and vice versa for shorts. The result is a minimal but strict playbook: sweep the Asia range, respect the leg, touch the fib zone, invalidate the opposing FVG, then and only then print a clean visual marker on the chart. Transparent fib blocks, trigger FVG highlights, and compact “double-circle” text markers keep the chart readable even on lower timeframes, while still giving you a clear sense of where the setup originated and which liquidity it’s built around. All colors and visual layers are customizable, making it easy to blend the tool into your existing layout while preserving the core logic. Rather than trying to predict the entire session, Asia Fibonacci Strategy turns one of the most consistent structures in the market overnight range and its sweep into a repeatable, rule-driven framework for high-quality intraday entries.
Tempo's Trades IFVG Mastery IndicatorThe indicator I use is called IFVG Mastery. Below you can find all of the features, Automatically maps 50% of the daily range level, Marks out all equal highs and equal lows, Marks out all session killzones, Plots all FVG and IFVGs.
We will constantly a
Multi-Symbol FVG Scanner - Fixed This is a Multi-Symbol Fair Value Gap (FVG) Scanner for TradingView that monitors multiple currency pairs simultaneously for FVG patterns.
Key Features
What it does:
Scans 5 currency pairs simultaneously for Fair Value Gaps (FVGs)
Detects both bullish and bearish FVG patterns
Tracks when FVGs get "mitigated" (price reverses back through them)
Displays results in a real-time table
Generates alerts when patterns are detected
Shows visual histogram of active signals
Volatility Risk PremiumTHE INSURANCE PREMIUM OF THE STOCK MARKET
Every day, millions of investors face a fundamental question that has puzzled economists for decades: how much should protection against market crashes cost? The answer lies in a phenomenon called the Volatility Risk Premium, and understanding it may fundamentally change how you interpret market conditions.
Think of the stock market like a neighborhood where homeowners buy insurance against fire. The insurance company charges premiums based on their estimates of fire risk. But here is the interesting part: insurance companies systematically charge more than the actual expected losses. This difference between what people pay and what actually happens is the insurance premium. The same principle operates in financial markets, but instead of fire insurance, investors buy protection against market volatility through options contracts.
The Volatility Risk Premium, or VRP, measures exactly this difference. It represents the gap between what the market expects volatility to be (implied volatility, as reflected in options prices) and what volatility actually turns out to be (realized volatility, calculated from actual price movements). This indicator quantifies that gap and transforms it into actionable intelligence.
THE FOUNDATION
The academic study of volatility risk premiums began gaining serious traction in the early 2000s, though the phenomenon itself had been observed by practitioners for much longer. Three research papers form the backbone of this indicator's methodology.
Peter Carr and Liuren Wu published their seminal work "Variance Risk Premiums" in the Review of Financial Studies in 2009. Their research established that variance risk premiums exist across virtually all asset classes and persist over time. They documented that on average, implied volatility exceeds realized volatility by approximately three to four percentage points annualized. This is not a small number. It means that sellers of volatility insurance have historically collected a substantial premium for bearing this risk.
Tim Bollerslev, George Tauchen, and Hao Zhou extended this research in their 2009 paper "Expected Stock Returns and Variance Risk Premia," also published in the Review of Financial Studies. Their critical contribution was demonstrating that the VRP is a statistically significant predictor of future equity returns. When the VRP is high, meaning investors are paying substantial premiums for protection, future stock returns tend to be positive. When the VRP collapses or turns negative, it often signals that realized volatility has spiked above expectations, typically during market stress periods.
Gurdip Bakshi and Nikunj Kapadia provided additional theoretical grounding in their 2003 paper "Delta-Hedged Gains and the Negative Market Volatility Risk Premium." They demonstrated through careful empirical analysis why volatility sellers are compensated: the risk is not diversifiable and tends to materialize precisely when investors can least afford losses.
HOW THE INDICATOR CALCULATES VOLATILITY
The calculation begins with two separate measurements that must be compared: implied volatility and realized volatility.
For implied volatility, the indicator uses the CBOE Volatility Index, commonly known as the VIX. The VIX represents the market's expectation of 30-day forward volatility on the S&P 500, calculated from a weighted average of out-of-the-money put and call options. It is often called the "fear gauge" because it rises when investors rush to buy protective options.
Realized volatility requires more careful consideration. The indicator offers three distinct calculation methods, each with specific advantages rooted in academic literature.
The Close-to-Close method is the most straightforward approach. It calculates the standard deviation of logarithmic daily returns over a specified lookback period, then annualizes this figure by multiplying by the square root of 252, the approximate number of trading days in a year. This method is intuitive and widely used, but it only captures information from closing prices and ignores intraday price movements.
The Parkinson estimator, developed by Michael Parkinson in 1980, improves efficiency by incorporating high and low prices. The mathematical formula calculates variance as the sum of squared log ratios of daily highs to lows, divided by four times the natural logarithm of two, times the number of observations. This estimator is theoretically about five times more efficient than the close-to-close method because high and low prices contain additional information about the volatility process.
The Garman-Klass estimator, published by Mark Garman and Michael Klass in 1980, goes further by incorporating opening, high, low, and closing prices. The formula combines half the squared log ratio of high to low prices minus a factor involving the log ratio of close to open. This method achieves the minimum variance among estimators using only these four price points, making it particularly valuable for markets where intraday information is meaningful.
THE CORE VRP CALCULATION
Once both volatility measures are obtained, the VRP calculation is straightforward: subtract realized volatility from implied volatility. A positive result means the market is paying a premium for volatility insurance. A negative result means realized volatility has exceeded expectations, typically indicating market stress.
The raw VRP signal receives slight smoothing through an exponential moving average to reduce noise while preserving responsiveness. The default smoothing period of five days balances signal clarity against lag.
INTERPRETING THE REGIMES
The indicator classifies market conditions into five distinct regimes based on VRP levels.
The EXTREME regime occurs when VRP exceeds ten percentage points. This represents an unusual situation where the gap between implied and realized volatility is historically wide. Markets are pricing in significantly more fear than is materializing. Research suggests this often precedes positive equity returns as the premium normalizes.
The HIGH regime, between five and ten percentage points, indicates elevated risk aversion. Investors are paying above-average premiums for protection. This often occurs after market corrections when fear remains elevated but realized volatility has begun subsiding.
The NORMAL regime covers VRP between zero and five percentage points. This represents the long-term average state of markets where implied volatility modestly exceeds realized volatility. The insurance premium is being collected at typical rates.
The LOW regime, between negative two and zero percentage points, suggests either unusual complacency or that realized volatility is catching up to implied volatility. The premium is shrinking, which can precede either calm continuation or increased stress.
The NEGATIVE regime occurs when realized volatility exceeds implied volatility. This is relatively rare and typically indicates active market stress. Options were priced for less volatility than actually occurred, meaning volatility sellers are experiencing losses. Historically, deeply negative VRP readings have often coincided with market bottoms, though timing the reversal remains challenging.
TERM STRUCTURE ANALYSIS
Beyond the basic VRP calculation, sophisticated market participants analyze how volatility behaves across different time horizons. The indicator calculates VRP using both short-term (default ten days) and long-term (default sixty days) realized volatility windows.
Under normal market conditions, short-term realized volatility tends to be lower than long-term realized volatility. This produces what traders call contango in the term structure, analogous to futures markets where later delivery dates trade at premiums. The RV Slope metric quantifies this relationship.
When markets enter stress periods, the term structure often inverts. Short-term realized volatility spikes above long-term realized volatility as markets experience immediate turmoil. This backwardation condition serves as an early warning signal that current volatility is elevated relative to historical norms.
The academic foundation for term structure analysis comes from Scott Mixon's 2007 paper "The Implied Volatility Term Structure" in the Journal of Derivatives, which documented the predictive power of term structure dynamics.
MEAN REVERSION CHARACTERISTICS
One of the most practically useful properties of the VRP is its tendency to mean-revert. Extreme readings, whether high or low, tend to normalize over time. This creates opportunities for systematic trading strategies.
The indicator tracks VRP in statistical terms by calculating its Z-score relative to the trailing one-year distribution. A Z-score above two indicates that current VRP is more than two standard deviations above its mean, a statistically unusual condition. Similarly, a Z-score below negative two indicates VRP is unusually low.
Mean reversion signals trigger when VRP reaches extreme Z-score levels and then shows initial signs of reversal. A buy signal occurs when VRP recovers from oversold conditions (Z-score below negative two and rising), suggesting that the period of elevated realized volatility may be ending. A sell signal occurs when VRP contracts from overbought conditions (Z-score above two and falling), suggesting the fear premium may be excessive and due for normalization.
These signals should not be interpreted as standalone trading recommendations. They indicate probabilistic conditions based on historical patterns. Market context and other factors always matter.
MOMENTUM ANALYSIS
The rate of change in VRP carries its own information content. Rapidly rising VRP suggests fear is building faster than volatility is materializing, often seen in the early stages of corrections before realized volatility catches up. Rapidly falling VRP indicates either calming conditions or rising realized volatility eating into the premium.
The indicator tracks VRP momentum as the difference between current VRP and VRP from a specified number of bars ago. Positive momentum with positive acceleration suggests strengthening risk aversion. Negative momentum with negative acceleration suggests intensifying stress or rapid normalization from elevated levels.
PRACTICAL APPLICATION
For equity investors, the VRP provides context for risk management decisions. High VRP environments historically favor equity exposure because the market is pricing in more pessimism than typically materializes. Low or negative VRP environments suggest either reducing exposure or hedging, as markets may be underpricing risk.
For options traders, understanding VRP is fundamental to strategy selection. Strategies that sell volatility, such as covered calls, cash-secured puts, or iron condors, tend to profit when VRP is elevated and compress toward its mean. Strategies that buy volatility tend to profit when VRP is low and risk materializes.
For systematic traders, VRP provides a regime filter for other strategies. Momentum strategies may benefit from different parameters in high versus low VRP environments. Mean reversion strategies in VRP itself can form the basis of a complete trading system.
LIMITATIONS AND CONSIDERATIONS
No indicator provides perfect foresight, and the VRP is no exception. Several limitations deserve attention.
The VRP measures a relationship between two estimates, each subject to measurement error. The VIX represents expectations that may prove incorrect. Realized volatility calculations depend on the chosen method and lookback period.
Mean reversion tendencies hold over longer time horizons but provide limited guidance for short-term timing. VRP can remain extreme for extended periods, and mean reversion signals can generate losses if the extremity persists or intensifies.
The indicator is calibrated for equity markets, specifically the S&P 500. Application to other asset classes requires recalibration of thresholds and potentially different data sources.
Historical relationships between VRP and subsequent returns, while statistically robust, do not guarantee future performance. Structural changes in markets, options pricing, or investor behavior could alter these dynamics.
STATISTICAL OUTPUTS
The indicator presents comprehensive statistics including current VRP level, implied volatility from VIX, realized volatility from the selected method, current regime classification, number of bars in the current regime, percentile ranking over the lookback period, Z-score relative to recent history, mean VRP over the lookback period, realized volatility term structure slope, VRP momentum, mean reversion signal status, and overall market bias interpretation.
Color coding throughout the indicator provides immediate visual interpretation. Green tones indicate elevated VRP associated with fear and potential opportunity. Red tones indicate compressed or negative VRP associated with complacency or active stress. Neutral tones indicate normal market conditions.
ALERT CONDITIONS
The indicator provides alerts for regime transitions, extreme statistical readings, term structure inversions, mean reversion signals, and momentum shifts. These can be configured through the TradingView alert system for real-time monitoring across multiple timeframes.
REFERENCES
Bakshi, G., and Kapadia, N. (2003). Delta-Hedged Gains and the Negative Market Volatility Risk Premium. Review of Financial Studies, 16(2), 527-566.
Bollerslev, T., Tauchen, G., and Zhou, H. (2009). Expected Stock Returns and Variance Risk Premia. Review of Financial Studies, 22(11), 4463-4492.
Carr, P., and Wu, L. (2009). Variance Risk Premiums. Review of Financial Studies, 22(3), 1311-1341.
Garman, M. B., and Klass, M. J. (1980). On the Estimation of Security Price Volatilities from Historical Data. Journal of Business, 53(1), 67-78.
Mixon, S. (2007). The Implied Volatility Term Structure of Stock Index Options. Journal of Empirical Finance, 14(3), 333-354.
Parkinson, M. (1980). The Extreme Value Method for Estimating the Variance of the Rate of Return. Journal of Business, 53(1), 61-65.






















