Smart Choppy Index v1 [JopAlgo]Smart Choppy Index v1 — decide trend vs. chop in seconds
What it does (one line):
Measures the percent range of price over a lookback and tells you if the market is choppy (do less, fade edges) or trending (go with breaks/pullbacks).
Range% = (Highest High − Lowest Low) / Close × 100 over length
Below Choppy Threshold → likely range (red tint / X marker)
Above Trending Threshold → likely trend (green tint / ● marker)
Between them = mixed/transition (no background)
Read the pane fast
Orange line: the live Range%.
Red dashed line: Choppy Threshold.
Green dashed line: Trending Threshold.
Background: soft red during chop, soft green during trend.
Markers: X at the top when chop is detected, ● at the bottom when trend is detected.
TL;DR: Red = play defense / mean-revert. Green = play offense / trend-follow.
Simple playbook (copy this into your process)
Identify regime
Choppy (Range% < red line): prefer mean-reversion at VP edges / AVWAP; smaller targets, quicker exits.
Trending (Range% > green line): prefer breakouts + pullbacks; hold to POC/HVNs or structure.
Only execute at real locations
Volume Profile v3.2 : VAH/VAL/POC/LVNs for entries/targets.
Anchored VWAP : reclaims/rejections for timing.
Quality check (optional, recommended)
CVDv1 : execute with flow (Alignment OK, strong Imbalance, no Absorption against your side).
Risk
Stops go beyond structure/level, not on indicator flips.
If regime flips right after entry (green → red or red → green), consider tightening or exiting early.
Timeframe guidance
1–5m (scalps): length 14–20. You’ll see more flips—use thresholds a touch wider and execute only at edges.
15m–1H (intraday): length 14–34. Sweet spot for day trading bias.
2H–4H (swing): length 20–50. Fewer, cleaner signals; great for planning.
1D+ (position): length 50–100. Use as backdrop; trigger on lower TFs.
Settings that actually matter (and how to tune)
Lookback Period (length)
Shorter = faster regime changes; longer = smoother, fewer flips.
Choppy Threshold (%) / Trending Threshold (%)
Calibrate by history: scroll back and mark typical Range% during range days vs trend days for your market/TF.
If you get too many trend flags, raise the green threshold.
If everything looks “choppy,” lower the red threshold slightly.
Background color
Turn off if your chart feels busy; markers remain.
How to trade it with other tools
In Chop (red):
Fade VAH/VAL/AVWAP touches toward POC with tight stops. Confirm with CVDv1 (avoid longs if Absorption is red, etc.).
In Trend (green):
Break + retest at VP levels/AVWAP. Add on pullbacks that hold while Range% stays above the green line.
Patterns to recognize
Squeeze → Expansion: Range% ramps from below red toward/through green → expect a trend phase.
Exhaustion → Balance: After a long green phase, Range% falls back toward the middle → take profits into HVNs, expect more two-way trade.
False break tell: Level poke while Range% sits near red → low odds of follow-through; prefer reclaims.
Practical defaults to start
length = 14
Choppy Threshold = 1.5%
Trending Threshold = 2.5%
Process: Regime → Location → Flow → Execute with structure-based risk
Serious Disclaimer & Licensing
This script and description are provided for educational purposes only and do not constitute financial, investment, or trading advice. Markets are risky; you can lose some or all of your capital. Past performance does not guarantee future results. You are solely responsible for your trading decisions, including evaluating the suitability of this tool in your process, testing it on historical and simulated data, and managing risk.
This indicator relies on exchange data that may vary across venues; differences in volume, liquidity, and price feeds can impact results. No warranty is made—express or implied—regarding accuracy, completeness, or fitness for a particular purpose. assumes no liability for any direct or consequential losses arising from the use of this script or description.
License: This Pine Script® code is released under the Mozilla Public License 2.0 (MPL 2.0), © JopAlgo. You may use, modify, and distribute the code in accordance with MPL 2.0 terms.
ค้นหาในสคริปต์สำหรับ "liquidity"
Mitigation Blocks — Lite (ICT) + Arrows + Stats📌 Mitigation Blocks — Lite (ICT-Based) + Arrows
This indicator detects mitigation blocks based on price structure shifts, inspired by ICT (Inner Circle Trader) concepts. It works by identifying strong impulses and highlighting the last opposite candle, forming a mitigation block zone for potential reversal or continuation trades.
🔍 Features:
✅ Automatic detection of bullish and bearish mitigation blocks
🟩 Box visualization with border color change on mitigation (first touch)
📉 ATR-based impulse filtering
📌 Entry arrows on first mitigation (touch)
📊 Autoscale anchors for better chart readability
📈 Real-time HUD info panel
📉 Backtest-friendly design (stable, deterministic logic)
🛠️ How it works:
Detects swing highs/lows using pivot points.
Confirms impulse candles breaking recent structure.
Locates the last opposite candle as the mitigation block.
Displays a block box until price revisits the zone.
On the first touch (mitigation), the block is marked and arrows are drawn.
💡 Ideal Use Case:
Apply this on higher timeframes (e.g., 4H) to identify potential limit order zones.
Use the blocks as entry zones and combine with confluence: FVGs, imbalance, S&D, or liquidity levels.
🧠 Extra Tip:
You can extend this script to include:
Win-rate tracking
Auto TP/SL levels based on ATR
Confluence detection (e.g., FVG, order blocks)
DTM 444 BANDS 🚀DTM 444 BANDS 🚀:
The DTM 444 BANDS 🚀 is a powerful, multi-purpose trading indicator combining Supertrend, Dynamic Band Levels, Breakout Signals, and Volume Confirmation to help traders identify high-probability trade setups across different timeframes.
🔧 Key Features
✅ Multi-Timeframe Support
Analyze price action across any timeframe using the Timeframe input.
All band calculations (High, Low, Midline, and Supertrend) are pulled from a higher timeframe for clearer context.
✅ Dynamic Bands Based on Supertrend
High Band: Rolling highest of Supertrend over hiLen period.
Low Band: Rolling lowest of Supertrend over loLen period.
Midline: Midpoint of the above.
Acts like dynamic support/resistance, ideal for trend-following and breakout strategies.
✅ Dual Signal System
Breakout Signals (Buy and Sell): Triggered when price breaks the bands with volume confirmation.
Supertrend Crossover Signals (Buy1 and Sell1): Classic momentum entries with a confirmation twist.
Exit Signals: Optional take-profit/neutral indicators when price reverses.
✅ Volume Confirmation Filter (Optional)
Only triggers signals if the volume exceeds its 20-period SMA.
Helps filter out false breakouts and weak trends in low-liquidity periods.
✅ Visual Enhancements
Color-coded candles based on band positioning (e.g., red = weak, green = strong, etc.)
On-chart labels for each signal for quick reference.
Real-time Signal Dashboard using Pine Script tables showing:
Current signal
Volume filter status
Live volume vs volume SMA
🧪 Practical Use Cases
Trend Traders: Use the Supertrend cross and band breakouts to ride trends early.
Breakout Traders: Catch high-probability moves outside established ranges.
Swing Traders: Time entries and exits using color-coded bars and exit labels.
Volume-Sensitive Traders: Focus on trades with strong volume backing.
📊 Backtest Snapshot
Based on the example chart for Reliance Industries (RELIANCE.NS) on the weekly timeframe:
Several profitable buy and breakout signals during uptrends.
Timely exits and breakdown alerts before reversals.
Volume filter keeps trades clean and avoids noise.
⚙️ Customizable Parameters
High Length and Low Length (default: 19)
Supertrend Multiplier and ATR Length
Volume Filter: Toggle ON/OFF
Volume SMA Length: Default 20
Custom Timeframe: Choose any higher timeframe for multi-timeframe analysis
📢 Alerts Ready
Fully integrated with TradingView alerts:
Breakout & Breakdown
Supertrend crossovers
All alerts respect the volume filter setting
🏁 Final Thoughts
DTM 444 BANDS 🚀 is a versatile and adaptive trading system that blends trend analysis, volatility bands, and volume validation. Whether you're a trend trader, breakout hunter, or swing trader — this tool gives you a structured edge with clear visual cues and real-time alerts.
Dynamic Equity Allocation Model"Cash is Trash"? Not Always. Here's Why Science Beats Guesswork.
Every retail trader knows the frustration: you draw support and resistance lines, you spot patterns, you follow market gurus on social media—and still, when the next bear market hits, your portfolio bleeds red. Meanwhile, institutional investors seem to navigate market turbulence with ease, preserving capital when markets crash and participating when they rally. What's their secret?
The answer isn't insider information or access to exotic derivatives. It's systematic, scientifically validated decision-making. While most retail traders rely on subjective chart analysis and emotional reactions, professional portfolio managers use quantitative models that remove emotion from the equation and process multiple streams of market information simultaneously.
This document presents exactly such a system—not a proprietary black box available only to hedge funds, but a fully transparent, academically grounded framework that any serious investor can understand and apply. The Dynamic Equity Allocation Model (DEAM) synthesizes decades of financial research from Nobel laureates and leading academics into a practical tool for tactical asset allocation.
Stop drawing colorful lines on your chart and start thinking like a quant. This isn't about predicting where the market goes next week—it's about systematically adjusting your risk exposure based on what the data actually tells you. When valuations scream danger, when volatility spikes, when credit markets freeze, when multiple warning signals align—that's when cash isn't trash. That's when cash saves your portfolio.
The irony of "cash is trash" rhetoric is that it ignores timing. Yes, being 100% cash for decades would be disastrous. But being 100% equities through every crisis is equally foolish. The sophisticated approach is dynamic: aggressive when conditions favor risk-taking, defensive when they don't. This model shows you how to make that decision systematically, not emotionally.
Whether you're managing your own retirement portfolio or seeking to understand how institutional allocation strategies work, this comprehensive analysis provides the theoretical foundation, mathematical implementation, and practical guidance to elevate your investment approach from amateur to professional.
The choice is yours: keep hoping your chart patterns work out, or start using the same quantitative methods that professionals rely on. The tools are here. The research is cited. The methodology is explained. All you need to do is read, understand, and apply.
The Dynamic Equity Allocation Model (DEAM) is a quantitative framework for systematic allocation between equities and cash, grounded in modern portfolio theory and empirical market research. The model integrates five scientifically validated dimensions of market analysis—market regime, risk metrics, valuation, sentiment, and macroeconomic conditions—to generate dynamic allocation recommendations ranging from 0% to 100% equity exposure. This work documents the theoretical foundations, mathematical implementation, and practical application of this multi-factor approach.
1. Introduction and Theoretical Background
1.1 The Limitations of Static Portfolio Allocation
Traditional portfolio theory, as formulated by Markowitz (1952) in his seminal work "Portfolio Selection," assumes an optimal static allocation where investors distribute their wealth across asset classes according to their risk aversion. This approach rests on the assumption that returns and risks remain constant over time. However, empirical research demonstrates that this assumption does not hold in reality. Fama and French (1989) showed that expected returns vary over time and correlate with macroeconomic variables such as the spread between long-term and short-term interest rates. Campbell and Shiller (1988) demonstrated that the price-earnings ratio possesses predictive power for future stock returns, providing a foundation for dynamic allocation strategies.
The academic literature on tactical asset allocation has evolved considerably over recent decades. Ilmanen (2011) argues in "Expected Returns" that investors can improve their risk-adjusted returns by considering valuation levels, business cycles, and market sentiment. The Dynamic Equity Allocation Model presented here builds on this research tradition and operationalizes these insights into a practically applicable allocation framework.
1.2 Multi-Factor Approaches in Asset Allocation
Modern financial research has shown that different factors capture distinct aspects of market dynamics and together provide a more robust picture of market conditions than individual indicators. Ross (1976) developed the Arbitrage Pricing Theory, a model that employs multiple factors to explain security returns. Following this multi-factor philosophy, DEAM integrates five complementary analytical dimensions, each tapping different information sources and collectively enabling comprehensive market understanding.
2. Data Foundation and Data Quality
2.1 Data Sources Used
The model draws its data exclusively from publicly available market data via the TradingView platform. This transparency and accessibility is a significant advantage over proprietary models that rely on non-public data. The data foundation encompasses several categories of market information, each capturing specific aspects of market dynamics.
First, price data for the S&P 500 Index is obtained through the SPDR S&P 500 ETF (ticker: SPY). The use of a highly liquid ETF instead of the index itself has practical reasons, as ETF data is available in real-time and reflects actual tradability. In addition to closing prices, high, low, and volume data are captured, which are required for calculating advanced volatility measures.
Fundamental corporate metrics are retrieved via TradingView's Financial Data API. These include earnings per share, price-to-earnings ratio, return on equity, debt-to-equity ratio, dividend yield, and share buyback yield. Cochrane (2011) emphasizes in "Presidential Address: Discount Rates" the central importance of valuation metrics for forecasting future returns, making these fundamental data a cornerstone of the model.
Volatility indicators are represented by the CBOE Volatility Index (VIX) and related metrics. The VIX, often referred to as the market's "fear gauge," measures the implied volatility of S&P 500 index options and serves as a proxy for market participants' risk perception. Whaley (2000) describes in "The Investor Fear Gauge" the construction and interpretation of the VIX and its use as a sentiment indicator.
Macroeconomic data includes yield curve information through US Treasury bonds of various maturities and credit risk premiums through the spread between high-yield bonds and risk-free government bonds. These variables capture the macroeconomic conditions and financing conditions relevant for equity valuation. Estrella and Hardouvelis (1991) showed that the shape of the yield curve has predictive power for future economic activity, justifying the inclusion of these data.
2.2 Handling Missing Data
A practical problem when working with financial data is dealing with missing or unavailable values. The model implements a fallback system where a plausible historical average value is stored for each fundamental metric. When current data is unavailable for a specific point in time, this fallback value is used. This approach ensures that the model remains functional even during temporary data outages and avoids systematic biases from missing data. The use of average values as fallback is conservative, as it generates neither overly optimistic nor pessimistic signals.
3. Component 1: Market Regime Detection
3.1 The Concept of Market Regimes
The idea that financial markets exist in different "regimes" or states that differ in their statistical properties has a long tradition in financial science. Hamilton (1989) developed regime-switching models that allow distinguishing between different market states with different return and volatility characteristics. The practical application of this theory consists of identifying the current market state and adjusting portfolio allocation accordingly.
DEAM classifies market regimes using a scoring system that considers three main dimensions: trend strength, volatility level, and drawdown depth. This multidimensional view is more robust than focusing on individual indicators, as it captures various facets of market dynamics. Classification occurs into six distinct regimes: Strong Bull, Bull Market, Neutral, Correction, Bear Market, and Crisis.
3.2 Trend Analysis Through Moving Averages
Moving averages are among the oldest and most widely used technical indicators and have also received attention in academic literature. Brock, Lakonishok, and LeBaron (1992) examined in "Simple Technical Trading Rules and the Stochastic Properties of Stock Returns" the profitability of trading rules based on moving averages and found evidence for their predictive power, although later studies questioned the robustness of these results when considering transaction costs.
The model calculates three moving averages with different time windows: a 20-day average (approximately one trading month), a 50-day average (approximately one quarter), and a 200-day average (approximately one trading year). The relationship of the current price to these averages and the relationship of the averages to each other provide information about trend strength and direction. When the price trades above all three averages and the short-term average is above the long-term, this indicates an established uptrend. The model assigns points based on these constellations, with longer-term trends weighted more heavily as they are considered more persistent.
3.3 Volatility Regimes
Volatility, understood as the standard deviation of returns, is a central concept of financial theory and serves as the primary risk measure. However, research has shown that volatility is not constant but changes over time and occurs in clusters—a phenomenon first documented by Mandelbrot (1963) and later formalized through ARCH and GARCH models (Engle, 1982; Bollerslev, 1986).
DEAM calculates volatility not only through the classic method of return standard deviation but also uses more advanced estimators such as the Parkinson estimator and the Garman-Klass estimator. These methods utilize intraday information (high and low prices) and are more efficient than simple close-to-close volatility estimators. The Parkinson estimator (Parkinson, 1980) uses the range between high and low of a trading day and is based on the recognition that this information reveals more about true volatility than just the closing price difference. The Garman-Klass estimator (Garman and Klass, 1980) extends this approach by additionally considering opening and closing prices.
The calculated volatility is annualized by multiplying it by the square root of 252 (the average number of trading days per year), enabling standardized comparability. The model compares current volatility with the VIX, the implied volatility from option prices. A low VIX (below 15) signals market comfort and increases the regime score, while a high VIX (above 35) indicates market stress and reduces the score. This interpretation follows the empirical observation that elevated volatility is typically associated with falling markets (Schwert, 1989).
3.4 Drawdown Analysis
A drawdown refers to the percentage decline from the highest point (peak) to the lowest point (trough) during a specific period. This metric is psychologically significant for investors as it represents the maximum loss experienced. Calmar (1991) developed the Calmar Ratio, which relates return to maximum drawdown, underscoring the practical relevance of this metric.
The model calculates current drawdown as the percentage distance from the highest price of the last 252 trading days (one year). A drawdown below 3% is considered negligible and maximally increases the regime score. As drawdown increases, the score decreases progressively, with drawdowns above 20% classified as severe and indicating a crisis or bear market regime. These thresholds are empirically motivated by historical market cycles, in which corrections typically encompassed 5-10% drawdowns, bear markets 20-30%, and crises over 30%.
3.5 Regime Classification
Final regime classification occurs through aggregation of scores from trend (40% weight), volatility (30%), and drawdown (30%). The higher weighting of trend reflects the empirical observation that trend-following strategies have historically delivered robust results (Moskowitz, Ooi, and Pedersen, 2012). A total score above 80 signals a strong bull market with established uptrend, low volatility, and minimal losses. At a score below 10, a crisis situation exists requiring defensive positioning. The six regime categories enable a differentiated allocation strategy that not only distinguishes binarily between bullish and bearish but allows gradual gradations.
4. Component 2: Risk-Based Allocation
4.1 Volatility Targeting as Risk Management Approach
The concept of volatility targeting is based on the idea that investors should maximize not returns but risk-adjusted returns. Sharpe (1966, 1994) defined with the Sharpe Ratio the fundamental concept of return per unit of risk, measured as volatility. Volatility targeting goes a step further and adjusts portfolio allocation to achieve constant target volatility. This means that in times of low market volatility, equity allocation is increased, and in times of high volatility, it is reduced.
Moreira and Muir (2017) showed in "Volatility-Managed Portfolios" that strategies that adjust their exposure based on volatility forecasts achieve higher Sharpe Ratios than passive buy-and-hold strategies. DEAM implements this principle by defining a target portfolio volatility (default 12% annualized) and adjusting equity allocation to achieve it. The mathematical foundation is simple: if market volatility is 20% and target volatility is 12%, equity allocation should be 60% (12/20 = 0.6), with the remaining 40% held in cash with zero volatility.
4.2 Market Volatility Calculation
Estimating current market volatility is central to the risk-based allocation approach. The model uses several volatility estimators in parallel and selects the higher value between traditional close-to-close volatility and the Parkinson estimator. This conservative choice ensures the model does not underestimate true volatility, which could lead to excessive risk exposure.
Traditional volatility calculation uses logarithmic returns, as these have mathematically advantageous properties (additive linkage over multiple periods). The logarithmic return is calculated as ln(P_t / P_{t-1}), where P_t is the price at time t. The standard deviation of these returns over a rolling 20-trading-day window is then multiplied by √252 to obtain annualized volatility. This annualization is based on the assumption of independently identically distributed returns, which is an idealization but widely accepted in practice.
The Parkinson estimator uses additional information from the trading range (High minus Low) of each day. The formula is: σ_P = (1/√(4ln2)) × √(1/n × Σln²(H_i/L_i)) × √252, where H_i and L_i are high and low prices. Under ideal conditions, this estimator is approximately five times more efficient than the close-to-close estimator (Parkinson, 1980), as it uses more information per observation.
4.3 Drawdown-Based Position Size Adjustment
In addition to volatility targeting, the model implements drawdown-based risk control. The logic is that deep market declines often signal further losses and therefore justify exposure reduction. This behavior corresponds with the concept of path-dependent risk tolerance: investors who have already suffered losses are typically less willing to take additional risk (Kahneman and Tversky, 1979).
The model defines a maximum portfolio drawdown as a target parameter (default 15%). Since portfolio volatility and portfolio drawdown are proportional to equity allocation (assuming cash has neither volatility nor drawdown), allocation-based control is possible. For example, if the market exhibits a 25% drawdown and target portfolio drawdown is 15%, equity allocation should be at most 60% (15/25).
4.4 Dynamic Risk Adjustment
An advanced feature of DEAM is dynamic adjustment of risk-based allocation through a feedback mechanism. The model continuously estimates what actual portfolio volatility and portfolio drawdown would result at the current allocation. If risk utilization (ratio of actual to target risk) exceeds 1.0, allocation is reduced by an adjustment factor that grows exponentially with overutilization. This implements a form of dynamic feedback that avoids overexposure.
Mathematically, a risk adjustment factor r_adjust is calculated: if risk utilization u > 1, then r_adjust = exp(-0.5 × (u - 1)). This exponential function ensures that moderate overutilization is gently corrected, while strong overutilization triggers drastic reductions. The factor 0.5 in the exponent was empirically calibrated to achieve a balanced ratio between sensitivity and stability.
5. Component 3: Valuation Analysis
5.1 Theoretical Foundations of Fundamental Valuation
DEAM's valuation component is based on the fundamental premise that the intrinsic value of a security is determined by its future cash flows and that deviations between market price and intrinsic value are eventually corrected. Graham and Dodd (1934) established in "Security Analysis" the basic principles of fundamental analysis that remain relevant today. Translated into modern portfolio context, this means that markets with high valuation metrics (high price-earnings ratios) should have lower expected returns than cheaply valued markets.
Campbell and Shiller (1988) developed the Cyclically Adjusted P/E Ratio (CAPE), which smooths earnings over a full business cycle. Their empirical analysis showed that this ratio has significant predictive power for 10-year returns. Asness, Moskowitz, and Pedersen (2013) demonstrated in "Value and Momentum Everywhere" that value effects exist not only in individual stocks but also in asset classes and markets.
5.2 Equity Risk Premium as Central Valuation Metric
The Equity Risk Premium (ERP) is defined as the expected excess return of stocks over risk-free government bonds. It is the theoretical heart of valuation analysis, as it represents the compensation investors demand for bearing equity risk. Damodaran (2012) discusses in "Equity Risk Premiums: Determinants, Estimation and Implications" various methods for ERP estimation.
DEAM calculates ERP not through a single method but combines four complementary approaches with different weights. This multi-method strategy increases estimation robustness and avoids dependence on single, potentially erroneous inputs.
The first method (35% weight) uses earnings yield, calculated as 1/P/E or directly from operating earnings data, and subtracts the 10-year Treasury yield. This method follows Fed Model logic (Yardeni, 2003), although this model has theoretical weaknesses as it does not consistently treat inflation (Asness, 2003).
The second method (30% weight) extends earnings yield by share buyback yield. Share buybacks are a form of capital return to shareholders and increase value per share. Boudoukh et al. (2007) showed in "The Total Shareholder Yield" that the sum of dividend yield and buyback yield is a better predictor of future returns than dividend yield alone.
The third method (20% weight) implements the Gordon Growth Model (Gordon, 1962), which models stock value as the sum of discounted future dividends. Under constant growth g assumption: Expected Return = Dividend Yield + g. The model estimates sustainable growth as g = ROE × (1 - Payout Ratio), where ROE is return on equity and payout ratio is the ratio of dividends to earnings. This formula follows from equity theory: unretained earnings are reinvested at ROE and generate additional earnings growth.
The fourth method (15% weight) combines total shareholder yield (Dividend + Buybacks) with implied growth derived from revenue growth. This method considers that companies with strong revenue growth should generate higher future earnings, even if current valuations do not yet fully reflect this.
The final ERP is the weighted average of these four methods. A high ERP (above 4%) signals attractive valuations and increases the valuation score to 95 out of 100 possible points. A negative ERP, where stocks have lower expected returns than bonds, results in a minimal score of 10.
5.3 Quality Adjustments to Valuation
Valuation metrics alone can be misleading if not interpreted in the context of company quality. A company with a low P/E may be cheap or fundamentally problematic. The model therefore implements quality adjustments based on growth, profitability, and capital structure.
Revenue growth above 10% annually adds 10 points to the valuation score, moderate growth above 5% adds 5 points. This adjustment reflects that growth has independent value (Modigliani and Miller, 1961, extended by later growth theory). Net margin above 15% signals pricing power and operational efficiency and increases the score by 5 points, while low margins below 8% indicate competitive pressure and subtract 5 points.
Return on equity (ROE) above 20% characterizes outstanding capital efficiency and increases the score by 5 points. Piotroski (2000) showed in "Value Investing: The Use of Historical Financial Statement Information" that fundamental quality signals such as high ROE can improve the performance of value strategies.
Capital structure is evaluated through the debt-to-equity ratio. A conservative ratio below 1.0 multiplies the valuation score by 1.2, while high leverage above 2.0 applies a multiplier of 0.8. This adjustment reflects that high debt constrains financial flexibility and can become problematic in crisis times (Korteweg, 2010).
6. Component 4: Sentiment Analysis
6.1 The Role of Sentiment in Financial Markets
Investor sentiment, defined as the collective psychological attitude of market participants, influences asset prices independently of fundamental data. Baker and Wurgler (2006, 2007) developed a sentiment index and showed that periods of high sentiment are followed by overvaluations that later correct. This insight justifies integrating a sentiment component into allocation decisions.
Sentiment is difficult to measure directly but can be proxied through market indicators. The VIX is the most widely used sentiment indicator, as it aggregates implied volatility from option prices. High VIX values reflect elevated uncertainty and risk aversion, while low values signal market comfort. Whaley (2009) refers to the VIX as the "Investor Fear Gauge" and documents its role as a contrarian indicator: extremely high values typically occur at market bottoms, while low values occur at tops.
6.2 VIX-Based Sentiment Assessment
DEAM uses statistical normalization of the VIX by calculating the Z-score: z = (VIX_current - VIX_average) / VIX_standard_deviation. The Z-score indicates how many standard deviations the current VIX is from the historical average. This approach is more robust than absolute thresholds, as it adapts to the average volatility level, which can vary over longer periods.
A Z-score below -1.5 (VIX is 1.5 standard deviations below average) signals exceptionally low risk perception and adds 40 points to the sentiment score. This may seem counterintuitive—shouldn't low fear be bullish? However, the logic follows the contrarian principle: when no one is afraid, everyone is already invested, and there is limited further upside potential (Zweig, 1973). Conversely, a Z-score above 1.5 (extreme fear) adds -40 points, reflecting market panic but simultaneously suggesting potential buying opportunities.
6.3 VIX Term Structure as Sentiment Signal
The VIX term structure provides additional sentiment information. Normally, the VIX trades in contango, meaning longer-term VIX futures have higher prices than short-term. This reflects that short-term volatility is currently known, while long-term volatility is more uncertain and carries a risk premium. The model compares the VIX with VIX9D (9-day volatility) and identifies backwardation (VIX > 1.05 × VIX9D) and steep backwardation (VIX > 1.15 × VIX9D).
Backwardation occurs when short-term implied volatility is higher than longer-term, which typically happens during market stress. Investors anticipate immediate turbulence but expect calming. Psychologically, this reflects acute fear. The model subtracts 15 points for backwardation and 30 for steep backwardation, as these constellations signal elevated risk. Simon and Wiggins (2001) analyzed the VIX futures curve and showed that backwardation is associated with market declines.
6.4 Safe-Haven Flows
During crisis times, investors flee from risky assets into safe havens: gold, US dollar, and Japanese yen. This "flight to quality" is a sentiment signal. The model calculates the performance of these assets relative to stocks over the last 20 trading days. When gold or the dollar strongly rise while stocks fall, this indicates elevated risk aversion.
The safe-haven component is calculated as the difference between safe-haven performance and stock performance. Positive values (safe havens outperform) subtract up to 20 points from the sentiment score, negative values (stocks outperform) add up to 10 points. The asymmetric treatment (larger deduction for risk-off than bonus for risk-on) reflects that risk-off movements are typically sharper and more informative than risk-on phases.
Baur and Lucey (2010) examined safe-haven properties of gold and showed that gold indeed exhibits negative correlation with stocks during extreme market movements, confirming its role as crisis protection.
7. Component 5: Macroeconomic Analysis
7.1 The Yield Curve as Economic Indicator
The yield curve, represented as yields of government bonds of various maturities, contains aggregated expectations about future interest rates, inflation, and economic growth. The slope of the yield curve has remarkable predictive power for recessions. Estrella and Mishkin (1998) showed that an inverted yield curve (short-term rates higher than long-term) predicts recessions with high reliability. This is because inverted curves reflect restrictive monetary policy: the central bank raises short-term rates to combat inflation, dampening economic activity.
DEAM calculates two spread measures: the 2-year-minus-10-year spread and the 3-month-minus-10-year spread. A steep, positive curve (spreads above 1.5% and 2% respectively) signals healthy growth expectations and generates the maximum yield curve score of 40 points. A flat curve (spreads near zero) reduces the score to 20 points. An inverted curve (negative spreads) is particularly alarming and results in only 10 points.
The choice of two different spreads increases analysis robustness. The 2-10 spread is most established in academic literature, while the 3M-10Y spread is often considered more sensitive, as the 3-month rate directly reflects current monetary policy (Ang, Piazzesi, and Wei, 2006).
7.2 Credit Conditions and Spreads
Credit spreads—the yield difference between risky corporate bonds and safe government bonds—reflect risk perception in the credit market. Gilchrist and Zakrajšek (2012) constructed an "Excess Bond Premium" that measures the component of credit spreads not explained by fundamentals and showed this is a predictor of future economic activity and stock returns.
The model approximates credit spread by comparing the yield of high-yield bond ETFs (HYG) with investment-grade bond ETFs (LQD). A narrow spread below 200 basis points signals healthy credit conditions and risk appetite, contributing 30 points to the macro score. Very wide spreads above 1000 basis points (as during the 2008 financial crisis) signal credit crunch and generate zero points.
Additionally, the model evaluates whether "flight to quality" is occurring, identified through strong performance of Treasury bonds (TLT) with simultaneous weakness in high-yield bonds. This constellation indicates elevated risk aversion and reduces the credit conditions score.
7.3 Financial Stability at Corporate Level
While the yield curve and credit spreads reflect macroeconomic conditions, financial stability evaluates the health of companies themselves. The model uses the aggregated debt-to-equity ratio and return on equity of the S&P 500 as proxies for corporate health.
A low leverage level below 0.5 combined with high ROE above 15% signals robust corporate balance sheets and generates 20 points. This combination is particularly valuable as it represents both defensive strength (low debt means crisis resistance) and offensive strength (high ROE means earnings power). High leverage above 1.5 generates only 5 points, as it implies vulnerability to interest rate increases and recessions.
Korteweg (2010) showed in "The Net Benefits to Leverage" that optimal debt maximizes firm value, but excessive debt increases distress costs. At the aggregated market level, high debt indicates fragilities that can become problematic during stress phases.
8. Component 6: Crisis Detection
8.1 The Need for Systematic Crisis Detection
Financial crises are rare but extremely impactful events that suspend normal statistical relationships. During normal market volatility, diversified portfolios and traditional risk management approaches function, but during systemic crises, seemingly independent assets suddenly correlate strongly, and losses exceed historical expectations (Longin and Solnik, 2001). This justifies a separate crisis detection mechanism that operates independently of regular allocation components.
Reinhart and Rogoff (2009) documented in "This Time Is Different: Eight Centuries of Financial Folly" recurring patterns in financial crises: extreme volatility, massive drawdowns, credit market dysfunction, and asset price collapse. DEAM operationalizes these patterns into quantifiable crisis indicators.
8.2 Multi-Signal Crisis Identification
The model uses a counter-based approach where various stress signals are identified and aggregated. This methodology is more robust than relying on a single indicator, as true crises typically occur simultaneously across multiple dimensions. A single signal may be a false alarm, but the simultaneous presence of multiple signals increases confidence.
The first indicator is a VIX above the crisis threshold (default 40), adding one point. A VIX above 60 (as in 2008 and March 2020) adds two additional points, as such extreme values are historically very rare. This tiered approach captures the intensity of volatility.
The second indicator is market drawdown. A drawdown above 15% adds one point, as corrections of this magnitude can be potential harbingers of larger crises. A drawdown above 25% adds another point, as historical bear markets typically encompass 25-40% drawdowns.
The third indicator is credit market spreads above 500 basis points, adding one point. Such wide spreads occur only during significant credit market disruptions, as in 2008 during the Lehman crisis.
The fourth indicator identifies simultaneous losses in stocks and bonds. Normally, Treasury bonds act as a hedge against equity risk (negative correlation), but when both fall simultaneously, this indicates systemic liquidity problems or inflation/stagflation fears. The model checks whether both SPY and TLT have fallen more than 10% and 5% respectively over 5 trading days, adding two points.
The fifth indicator is a volume spike combined with negative returns. Extreme trading volumes (above twice the 20-day average) with falling prices signal panic selling. This adds one point.
A crisis situation is diagnosed when at least 3 indicators trigger, a severe crisis at 5 or more indicators. These thresholds were calibrated through historical backtesting to identify true crises (2008, 2020) without generating excessive false alarms.
8.3 Crisis-Based Allocation Override
When a crisis is detected, the system overrides the normal allocation recommendation and caps equity allocation at maximum 25%. In a severe crisis, the cap is set at 10%. This drastic defensive posture follows the empirical observation that crises typically require time to develop and that early reduction can avoid substantial losses (Faber, 2007).
This override logic implements a "safety first" principle: in situations of existential danger to the portfolio, capital preservation becomes the top priority. Roy (1952) formalized this approach in "Safety First and the Holding of Assets," arguing that investors should primarily minimize ruin probability.
9. Integration and Final Allocation Calculation
9.1 Component Weighting
The final allocation recommendation emerges through weighted aggregation of the five components. The standard weighting is: Market Regime 35%, Risk Management 25%, Valuation 20%, Sentiment 15%, Macro 5%. These weights reflect both theoretical considerations and empirical backtesting results.
The highest weighting of market regime is based on evidence that trend-following and momentum strategies have delivered robust results across various asset classes and time periods (Moskowitz, Ooi, and Pedersen, 2012). Current market momentum is highly informative for the near future, although it provides no information about long-term expectations.
The substantial weighting of risk management (25%) follows from the central importance of risk control. Wealth preservation is the foundation of long-term wealth creation, and systematic risk management is demonstrably value-creating (Moreira and Muir, 2017).
The valuation component receives 20% weight, based on the long-term mean reversion of valuation metrics. While valuation has limited short-term predictive power (bull and bear markets can begin at any valuation), the long-term relationship between valuation and returns is robustly documented (Campbell and Shiller, 1988).
Sentiment (15%) and Macro (5%) receive lower weights, as these factors are subtler and harder to measure. Sentiment is valuable as a contrarian indicator at extremes but less informative in normal ranges. Macro variables such as the yield curve have strong predictive power for recessions, but the transmission from recessions to stock market performance is complex and temporally variable.
9.2 Model Type Adjustments
DEAM allows users to choose between four model types: Conservative, Balanced, Aggressive, and Adaptive. This choice modifies the final allocation through additive adjustments.
Conservative mode subtracts 10 percentage points from allocation, resulting in consistently more cautious positioning. This is suitable for risk-averse investors or those with limited investment horizons. Aggressive mode adds 10 percentage points, suitable for risk-tolerant investors with long horizons.
Adaptive mode implements procyclical adjustment based on short-term momentum: if the market has risen more than 5% in the last 20 days, 5 percentage points are added; if it has declined more than 5%, 5 points are subtracted. This logic follows the observation that short-term momentum persists (Jegadeesh and Titman, 1993), but the moderate size of adjustment avoids excessive timing bets.
Balanced mode makes no adjustment and uses raw model output. This neutral setting is suitable for investors who wish to trust model recommendations unchanged.
9.3 Smoothing and Stability
The allocation resulting from aggregation undergoes final smoothing through a simple moving average over 3 periods. This smoothing is crucial for model practicality, as it reduces frequent trading and thus transaction costs. Without smoothing, the model could fluctuate between adjacent allocations with every small input change.
The choice of 3 periods as smoothing window is a compromise between responsiveness and stability. Longer smoothing would excessively delay signals and impede response to true regime changes. Shorter or no smoothing would allow too much noise. Empirical tests showed that 3-period smoothing offers an optimal ratio between these goals.
10. Visualization and Interpretation
10.1 Main Output: Equity Allocation
DEAM's primary output is a time series from 0 to 100 representing the recommended percentage allocation to equities. This representation is intuitive: 100% means full investment in stocks (specifically: an S&P 500 ETF), 0% means complete cash position, and intermediate values correspond to mixed portfolios. A value of 60% means, for example: invest 60% of wealth in SPY, hold 40% in money market instruments or cash.
The time series is color-coded to enable quick visual interpretation. Green shades represent high allocations (above 80%, bullish), red shades low allocations (below 20%, bearish), and neutral colors middle allocations. The chart background is dynamically colored based on the signal, enhancing readability in different market phases.
10.2 Dashboard Metrics
A tabular dashboard presents key metrics compactly. This includes current allocation, cash allocation (complement), an aggregated signal (BULLISH/NEUTRAL/BEARISH), current market regime, VIX level, market drawdown, and crisis status.
Additionally, fundamental metrics are displayed: P/E Ratio, Equity Risk Premium, Return on Equity, Debt-to-Equity Ratio, and Total Shareholder Yield. This transparency allows users to understand model decisions and form their own assessments.
Component scores (Regime, Risk, Valuation, Sentiment, Macro) are also displayed, each normalized on a 0-100 scale. This shows which factors primarily drive the current recommendation. If, for example, the Risk score is very low (20) while other scores are moderate (50-60), this indicates that risk management considerations are pulling allocation down.
10.3 Component Breakdown (Optional)
Advanced users can display individual components as separate lines in the chart. This enables analysis of component dynamics: do all components move synchronously, or are there divergences? Divergences can be particularly informative. If, for example, the market regime is bullish (high score) but the valuation component is very negative, this signals an overbought market not fundamentally supported—a classic "bubble warning."
This feature is disabled by default to keep the chart clean but can be activated for deeper analysis.
10.4 Confidence Bands
The model optionally displays uncertainty bands around the main allocation line. These are calculated as ±1 standard deviation of allocation over a rolling 20-period window. Wide bands indicate high volatility of model recommendations, suggesting uncertain market conditions. Narrow bands indicate stable recommendations.
This visualization implements a concept of epistemic uncertainty—uncertainty about the model estimate itself, not just market volatility. In phases where various indicators send conflicting signals, the allocation recommendation becomes more volatile, manifesting in wider bands. Users can understand this as a warning to act more cautiously or consult alternative information sources.
11. Alert System
11.1 Allocation Alerts
DEAM implements an alert system that notifies users of significant events. Allocation alerts trigger when smoothed allocation crosses certain thresholds. An alert is generated when allocation reaches 80% (from below), signaling strong bullish conditions. Another alert triggers when allocation falls to 20%, indicating defensive positioning.
These thresholds are not arbitrary but correspond with boundaries between model regimes. An allocation of 80% roughly corresponds to a clear bull market regime, while 20% corresponds to a bear market regime. Alerts at these points are therefore informative about fundamental regime shifts.
11.2 Crisis Alerts
Separate alerts trigger upon detection of crisis and severe crisis. These alerts have highest priority as they signal large risks. A crisis alert should prompt investors to review their portfolio and potentially take defensive measures beyond the automatic model recommendation (e.g., hedging through put options, rebalancing to more defensive sectors).
11.3 Regime Change Alerts
An alert triggers upon change of market regime (e.g., from Neutral to Correction, or from Bull Market to Strong Bull). Regime changes are highly informative events that typically entail substantial allocation changes. These alerts enable investors to proactively respond to changes in market dynamics.
11.4 Risk Breach Alerts
A specialized alert triggers when actual portfolio risk utilization exceeds target parameters by 20%. This is a warning signal that the risk management system is reaching its limits, possibly because market volatility is rising faster than allocation can be reduced. In such situations, investors should consider manual interventions.
12. Practical Application and Limitations
12.1 Portfolio Implementation
DEAM generates a recommendation for allocation between equities (S&P 500) and cash. Implementation by an investor can take various forms. The most direct method is using an S&P 500 ETF (e.g., SPY, VOO) for equity allocation and a money market fund or savings account for cash allocation.
A rebalancing strategy is required to synchronize actual allocation with model recommendation. Two approaches are possible: (1) rule-based rebalancing at every 10% deviation between actual and target, or (2) time-based monthly rebalancing. Both have trade-offs between responsiveness and transaction costs. Empirical evidence (Jaconetti, Kinniry, and Zilbering, 2010) suggests rebalancing frequency has moderate impact on performance, and investors should optimize based on their transaction costs.
12.2 Adaptation to Individual Preferences
The model offers numerous adjustment parameters. Component weights can be modified if investors place more or less belief in certain factors. A fundamentally-oriented investor might increase valuation weight, while a technical trader might increase regime weight.
Risk target parameters (target volatility, max drawdown) should be adapted to individual risk tolerance. Younger investors with long investment horizons can choose higher target volatility (15-18%), while retirees may prefer lower volatility (8-10%). This adjustment systematically shifts average equity allocation.
Crisis thresholds can be adjusted based on preference for sensitivity versus specificity of crisis detection. Lower thresholds (e.g., VIX > 35 instead of 40) increase sensitivity (more crises are detected) but reduce specificity (more false alarms). Higher thresholds have the reverse effect.
12.3 Limitations and Disclaimers
DEAM is based on historical relationships between indicators and market performance. There is no guarantee these relationships will persist in the future. Structural changes in markets (e.g., through regulation, technology, or central bank policy) can break established patterns. This is the fundamental problem of induction in financial science (Taleb, 2007).
The model is optimized for US equities (S&P 500). Application to other markets (international stocks, bonds, commodities) would require recalibration. The indicators and thresholds are specific to the statistical properties of the US equity market.
The model cannot eliminate losses. Even with perfect crisis prediction, an investor following the model would lose money in bear markets—just less than a buy-and-hold investor. The goal is risk-adjusted performance improvement, not risk elimination.
Transaction costs are not modeled. In practice, spreads, commissions, and taxes reduce net returns. Frequent trading can cause substantial costs. Model smoothing helps minimize this, but users should consider their specific cost situation.
The model reacts to information; it does not anticipate it. During sudden shocks (e.g., 9/11, COVID-19 lockdowns), the model can only react after price movements, not before. This limitation is inherent to all reactive systems.
12.4 Relationship to Other Strategies
DEAM is a tactical asset allocation approach and should be viewed as a complement, not replacement, for strategic asset allocation. Brinson, Hood, and Beebower (1986) showed in their influential study "Determinants of Portfolio Performance" that strategic asset allocation (long-term policy allocation) explains the majority of portfolio performance, but this leaves room for tactical adjustments based on market timing.
The model can be combined with value and momentum strategies at the individual stock level. While DEAM controls overall market exposure, within-equity decisions can be optimized through stock-picking models. This separation between strategic (market exposure) and tactical (stock selection) levels follows classical portfolio theory.
The model does not replace diversification across asset classes. A complete portfolio should also include bonds, international stocks, real estate, and alternative investments. DEAM addresses only the US equity allocation decision within a broader portfolio.
13. Scientific Foundation and Evaluation
13.1 Theoretical Consistency
DEAM's components are based on established financial theory and empirical evidence. The market regime component follows from regime-switching models (Hamilton, 1989) and trend-following literature. The risk management component implements volatility targeting (Moreira and Muir, 2017) and modern portfolio theory (Markowitz, 1952). The valuation component is based on discounted cash flow theory and empirical value research (Campbell and Shiller, 1988; Fama and French, 1992). The sentiment component integrates behavioral finance (Baker and Wurgler, 2006). The macro component uses established business cycle indicators (Estrella and Mishkin, 1998).
This theoretical grounding distinguishes DEAM from purely data-mining-based approaches that identify patterns without causal theory. Theory-guided models have greater probability of functioning out-of-sample, as they are based on fundamental mechanisms, not random correlations (Lo and MacKinlay, 1990).
13.2 Empirical Validation
While this document does not present detailed backtest analysis, it should be noted that rigorous validation of a tactical asset allocation model should include several elements:
In-sample testing establishes whether the model functions at all in the data on which it was calibrated. Out-of-sample testing is crucial: the model should be tested in time periods not used for development. Walk-forward analysis, where the model is successively trained on rolling windows and tested in the next window, approximates real implementation.
Performance metrics should be risk-adjusted. Pure return consideration is misleading, as higher returns often only compensate for higher risk. Sharpe Ratio, Sortino Ratio, Calmar Ratio, and Maximum Drawdown are relevant metrics. Comparison with benchmarks (Buy-and-Hold S&P 500, 60/40 Stock/Bond portfolio) contextualizes performance.
Robustness checks test sensitivity to parameter variation. If the model only functions at specific parameter settings, this indicates overfitting. Robust models show consistent performance over a range of plausible parameters.
13.3 Comparison with Existing Literature
DEAM fits into the broader literature on tactical asset allocation. Faber (2007) presented a simple momentum-based timing system that goes long when the market is above its 10-month average, otherwise cash. This simple system avoided large drawdowns in bear markets. DEAM can be understood as a sophistication of this approach that integrates multiple information sources.
Ilmanen (2011) discusses various timing factors in "Expected Returns" and argues for multi-factor approaches. DEAM operationalizes this philosophy. Asness, Moskowitz, and Pedersen (2013) showed that value and momentum effects work across asset classes, justifying cross-asset application of regime and valuation signals.
Ang (2014) emphasizes in "Asset Management: A Systematic Approach to Factor Investing" the importance of systematic, rule-based approaches over discretionary decisions. DEAM is fully systematic and eliminates emotional biases that plague individual investors (overconfidence, hindsight bias, loss aversion).
References
Ang, A. (2014) *Asset Management: A Systematic Approach to Factor Investing*. Oxford: Oxford University Press.
Ang, A., Piazzesi, M. and Wei, M. (2006) 'What does the yield curve tell us about GDP growth?', *Journal of Econometrics*, 131(1-2), pp. 359-403.
Asness, C.S. (2003) 'Fight the Fed Model', *The Journal of Portfolio Management*, 30(1), pp. 11-24.
Asness, C.S., Moskowitz, T.J. and Pedersen, L.H. (2013) 'Value and Momentum Everywhere', *The Journal of Finance*, 68(3), pp. 929-985.
Baker, M. and Wurgler, J. (2006) 'Investor Sentiment and the Cross-Section of Stock Returns', *The Journal of Finance*, 61(4), pp. 1645-1680.
Baker, M. and Wurgler, J. (2007) 'Investor Sentiment in the Stock Market', *Journal of Economic Perspectives*, 21(2), pp. 129-152.
Baur, D.G. and Lucey, B.M. (2010) 'Is Gold a Hedge or a Safe Haven? An Analysis of Stocks, Bonds and Gold', *Financial Review*, 45(2), pp. 217-229.
Bollerslev, T. (1986) 'Generalized Autoregressive Conditional Heteroskedasticity', *Journal of Econometrics*, 31(3), pp. 307-327.
Boudoukh, J., Michaely, R., Richardson, M. and Roberts, M.R. (2007) 'On the Importance of Measuring Payout Yield: Implications for Empirical Asset Pricing', *The Journal of Finance*, 62(2), pp. 877-915.
Brinson, G.P., Hood, L.R. and Beebower, G.L. (1986) 'Determinants of Portfolio Performance', *Financial Analysts Journal*, 42(4), pp. 39-44.
Brock, W., Lakonishok, J. and LeBaron, B. (1992) 'Simple Technical Trading Rules and the Stochastic Properties of Stock Returns', *The Journal of Finance*, 47(5), pp. 1731-1764.
Calmar, T.W. (1991) 'The Calmar Ratio', *Futures*, October issue.
Campbell, J.Y. and Shiller, R.J. (1988) 'The Dividend-Price Ratio and Expectations of Future Dividends and Discount Factors', *Review of Financial Studies*, 1(3), pp. 195-228.
Cochrane, J.H. (2011) 'Presidential Address: Discount Rates', *The Journal of Finance*, 66(4), pp. 1047-1108.
Damodaran, A. (2012) *Equity Risk Premiums: Determinants, Estimation and Implications*. Working Paper, Stern School of Business.
Engle, R.F. (1982) 'Autoregressive Conditional Heteroskedasticity with Estimates of the Variance of United Kingdom Inflation', *Econometrica*, 50(4), pp. 987-1007.
Estrella, A. and Hardouvelis, G.A. (1991) 'The Term Structure as a Predictor of Real Economic Activity', *The Journal of Finance*, 46(2), pp. 555-576.
Estrella, A. and Mishkin, F.S. (1998) 'Predicting U.S. Recessions: Financial Variables as Leading Indicators', *Review of Economics and Statistics*, 80(1), pp. 45-61.
Faber, M.T. (2007) 'A Quantitative Approach to Tactical Asset Allocation', *The Journal of Wealth Management*, 9(4), pp. 69-79.
Fama, E.F. and French, K.R. (1989) 'Business Conditions and Expected Returns on Stocks and Bonds', *Journal of Financial Economics*, 25(1), pp. 23-49.
Fama, E.F. and French, K.R. (1992) 'The Cross-Section of Expected Stock Returns', *The Journal of Finance*, 47(2), pp. 427-465.
Garman, M.B. and Klass, M.J. (1980) 'On the Estimation of Security Price Volatilities from Historical Data', *Journal of Business*, 53(1), pp. 67-78.
Gilchrist, S. and Zakrajšek, E. (2012) 'Credit Spreads and Business Cycle Fluctuations', *American Economic Review*, 102(4), pp. 1692-1720.
Gordon, M.J. (1962) *The Investment, Financing, and Valuation of the Corporation*. Homewood: Irwin.
Graham, B. and Dodd, D.L. (1934) *Security Analysis*. New York: McGraw-Hill.
Hamilton, J.D. (1989) 'A New Approach to the Economic Analysis of Nonstationary Time Series and the Business Cycle', *Econometrica*, 57(2), pp. 357-384.
Ilmanen, A. (2011) *Expected Returns: An Investor's Guide to Harvesting Market Rewards*. Chichester: Wiley.
Jaconetti, C.M., Kinniry, F.M. and Zilbering, Y. (2010) 'Best Practices for Portfolio Rebalancing', *Vanguard Research Paper*.
Jegadeesh, N. and Titman, S. (1993) 'Returns to Buying Winners and Selling Losers: Implications for Stock Market Efficiency', *The Journal of Finance*, 48(1), pp. 65-91.
Kahneman, D. and Tversky, A. (1979) 'Prospect Theory: An Analysis of Decision under Risk', *Econometrica*, 47(2), pp. 263-292.
Korteweg, A. (2010) 'The Net Benefits to Leverage', *The Journal of Finance*, 65(6), pp. 2137-2170.
Lo, A.W. and MacKinlay, A.C. (1990) 'Data-Snooping Biases in Tests of Financial Asset Pricing Models', *Review of Financial Studies*, 3(3), pp. 431-467.
Longin, F. and Solnik, B. (2001) 'Extreme Correlation of International Equity Markets', *The Journal of Finance*, 56(2), pp. 649-676.
Mandelbrot, B. (1963) 'The Variation of Certain Speculative Prices', *The Journal of Business*, 36(4), pp. 394-419.
Markowitz, H. (1952) 'Portfolio Selection', *The Journal of Finance*, 7(1), pp. 77-91.
Modigliani, F. and Miller, M.H. (1961) 'Dividend Policy, Growth, and the Valuation of Shares', *The Journal of Business*, 34(4), pp. 411-433.
Moreira, A. and Muir, T. (2017) 'Volatility-Managed Portfolios', *The Journal of Finance*, 72(4), pp. 1611-1644.
Moskowitz, T.J., Ooi, Y.H. and Pedersen, L.H. (2012) 'Time Series Momentum', *Journal of Financial Economics*, 104(2), pp. 228-250.
Parkinson, M. (1980) 'The Extreme Value Method for Estimating the Variance of the Rate of Return', *Journal of Business*, 53(1), pp. 61-65.
Piotroski, J.D. (2000) 'Value Investing: The Use of Historical Financial Statement Information to Separate Winners from Losers', *Journal of Accounting Research*, 38, pp. 1-41.
Reinhart, C.M. and Rogoff, K.S. (2009) *This Time Is Different: Eight Centuries of Financial Folly*. Princeton: Princeton University Press.
Ross, S.A. (1976) 'The Arbitrage Theory of Capital Asset Pricing', *Journal of Economic Theory*, 13(3), pp. 341-360.
Roy, A.D. (1952) 'Safety First and the Holding of Assets', *Econometrica*, 20(3), pp. 431-449.
Schwert, G.W. (1989) 'Why Does Stock Market Volatility Change Over Time?', *The Journal of Finance*, 44(5), pp. 1115-1153.
Sharpe, W.F. (1966) 'Mutual Fund Performance', *The Journal of Business*, 39(1), pp. 119-138.
Sharpe, W.F. (1994) 'The Sharpe Ratio', *The Journal of Portfolio Management*, 21(1), pp. 49-58.
Simon, D.P. and Wiggins, R.A. (2001) 'S&P Futures Returns and Contrary Sentiment Indicators', *Journal of Futures Markets*, 21(5), pp. 447-462.
Taleb, N.N. (2007) *The Black Swan: The Impact of the Highly Improbable*. New York: Random House.
Whaley, R.E. (2000) 'The Investor Fear Gauge', *The Journal of Portfolio Management*, 26(3), pp. 12-17.
Whaley, R.E. (2009) 'Understanding the VIX', *The Journal of Portfolio Management*, 35(3), pp. 98-105.
Yardeni, E. (2003) 'Stock Valuation Models', *Topical Study*, 51, Yardeni Research.
Zweig, M.E. (1973) 'An Investor Expectations Stock Price Predictive Model Using Closed-End Fund Premiums', *The Journal of Finance*, 28(1), pp. 67-78.
LW Outside Day Flip[SpeculationLab]Applicable Timeframe
⚠️ Note: This indicator is primarily designed for the Daily timeframe.
Larry Williams’ original discussion and statistics were based on daily data. While it can technically be applied to other timeframes, results may vary. It is strongly recommended to use it on daily charts.
Overview
This indicator marks a classic “Outside Day + Extreme Close” price action pattern. The idea comes from Larry Williams’ Long-Term Secrets to Short-Term Trading (2nd edition, Chapter 7).
The indicator does not execute trades or generate alerts — it simply plots visual markers on the chart when the pattern conditions are met, to assist research and review.
Logic
Outside Bar Condition
Current high > previous high
Current low < previous low
Extreme Close Filter
Long signal: Close < previous low
Short signal: Close > previous high
Confirmation
Signals are only confirmed at bar close (barstate.isconfirmed), to avoid repainting during intrabar movement.
Chart Display
When a long signal is triggered, a green downward triangle is plotted above the bar.
When a short signal is triggered, a red upward triangle is plotted below the bar.
Signals are overlaid directly on the price chart (overlay=true) and serve only as visual cues.
Usage Notes
Best used as a filter or secondary confirmation tool, not as a standalone entry trigger.
Consider combining with higher timeframe trend, key support/resistance, or volume analysis.
Entries, stop losses, and profit targets should be defined and tested independently by the trader.
Limitations and Risks
In strong trending markets, these signals may fail.
In low-liquidity or gapping conditions, accuracy may be reduced.
A single candlestick pattern cannot ensure consistent profitability.
Disclaimer
This script is for educational and research purposes only. It is not financial advice. Trading carries risk, and users are solely responsible for their own decisions and results.
===================
指标适用范围
⚠️ 特别提示:本指标主要适用于日线图(Daily Timeframe)。
Larry Williams 的原始讨论与统计均基于日线数据。虽然技术上可以在其它周期应用,但效果可能会不同,建议严格以日线作为主要参考周期。
功能概述
本指标用于在图表上标记一种经典的“外包线 + 极端收盘”的价格行为形态。思路参考 Larry Williams 在《Long-Term Secrets to Short-Term Trading》(第二版,第七章)中对日线“Outside Day”与反向收盘的讨论。指标不包含交易执行或提醒功能,仅在满足条件时绘制信号标记,用于辅助研究。
计算逻辑
外包线(Outside Bar)判定
最高价高于前一根K线的最高价;
最低价低于前一根K线的最低价。
极端收盘过滤
做多信号(Long):收盘价低于前一根K线的最低价;
做空信号(Short):收盘价高于前一根K线的最高价。
确认方式
仅在K线收盘后确认(避免盘中信号反复出现/消失)。
绘图说明
触发做多条件时,在K线 上方 绘制 绿色 向下三角形标记。
触发做空条件时,在K线 下方 绘制 红色 向上三角形标记。
信号直接叠加在价格图上(overlay=true),仅作提示。
使用建议
建议作为筛选条件或二次确认工具,不要单独作为入场依据;
可以配合趋势方向、关键支撑/阻力、成交量等其他因素一起使用;
入场、止损与止盈需由使用者自行定义和验证。
限制与风险
在强趋势行情中,信号可能失效;
在低流动性或跳空行情中,信号准确度下降;
单一形态不能保证稳定盈利。
免责声明
本指标仅用于教育与研究,不构成投资建议。实际交易风险由使用者自行承担。
Auto Fib Extension Targets A-B-C MartenBGAuto Fib Extension Targets A-B-C is a Pine v6 indicator that projects Fibonacci extension targets from the most recent validated A-B-C swing. It works in both directions and is designed for trend continuation planning and take-profit placement.
How it works:
Detects pivots with user-defined left and right bars.
Builds bullish swings from L-H-L and bearish swings from H-L-H.
Validates C by a retracement filter (min to max, relative to AB) and an optional HL or LH condition.
Projects targets from point C using C + r*(B − A) for uptrends and C − r*(A − B) for downtrends.
Draws levels 1.000, 1.272, 1.382, 1.618, optional 2.000, plus an optional 1.272-1.382 target zone.
Optionally shows dotted A-B and B-C segments for quick visual context.
Key settings:
Pivot sensitivity: leftBars and rightBars.
Correction validation: minRetr and maxRetr, HL or LH requirement toggle.
Level visibility: enable or disable each ratio and the target zone.
Extension length: horizontal extension in bars.
Visuals: toggle A-B-C segment display.
Why use it:
Fast projection of realistic continuation targets.
Clear confluence when extensions align with prior highs, liquidity pools, or S/R.
Works on any symbol and timeframe once pivots are confirmed.
Notes:
Pivots confirm after rightBars bars, so targets appear only once a swing is confirmed. This reduces repaint-like behavior typical for unfinished pivots.
No alerts are included by design. If you want alerts or manual A-B-C locking and click-to-select anchors, ask and I will add them.
X Trade Planlets you define up to 10 fully manual price levels and ranges—each with its own toggle, two prices (for a band/box), an optional note, and a color. The tool draws lines that start at the first bar of a chosen anchor timeframe (e.g., Daily) and extend to the right, mirroring the “fresh start-of-session” look. If two prices are entered, the area between them is shaded using the same color at 60% transparency, so the line and box fill are visually consistent.
Key Features
10 explicit categories (Cat 1 … Cat 10)
Each category includes:
Enable/disable toggle
Price 1 (line) and Price 2 (optional, defines box top/bottom)
Note (optional): label shows note only; hidden automatically if blank
Color: used for the line, box border, and box fill (with 60% transparency)
Anchor-aware drawing
Lines and boxes begin at the new bar of your selected Anchor Timeframe (e.g., D/W/H4), producing clean, session-style extensions.
Clean visuals
Line width is standardized at 1 for a crisp, unobtrusive look
Labels are aligned to the right of current bars and inherit user label styling options (size, text color, background)
No historical dependence
The indicator does not compute or display historical pivots, opens, or derived levels. Everything is user-defined.
Inputs (Per Category)
Cat N (toggle): Show/hide the category
Price 1: Primary level; a horizontal line is drawn when set
Price 2 (optional): When set with Price 1, a box is drawn between the two values
Note (optional): Free-text label; shown only if non-empty
Color: Applies to line, box border, and box fill (fill uses 60% transparency)
Global Inputs
Anchor Timeframe: Timeframe whose new bar defines the start (anchor) of all lines/boxes
Extend Right (bars): Number of bars to extend into the future
Labels (on/off) and label style options (size, text color, background)
How It Works
On the first bar and on each new bar of the anchor timeframe, the indicator captures the current bar index as the anchor for each category.
For each enabled category:
If Price 1 is set, the script draws a horizontal line from the anchor to extend_len bars into the future.
If Price 2 is also set, a box spanning Price 1 ↔ Price 2 is drawn from the anchor to the same future point.
If a Note is provided, a right-side label is rendered at the level (or box midpoint). If the note is empty, no label is shown.
Visual objects are refreshed every bar to ensure alignment with current settings.
Common Use Cases
Scenario planning & playbooks: Define “watch zones” (e.g., Look Above & Fail) and keep them consistent across sessions.
Manual S/R & liquidity areas: Mark hand-picked levels/ranges you care about, without auto-calculated clutter.
Session-like anchoring: Start-of-day/week anchoring to mimic institutional levels that reset each period.
Trade management: Color-coded bands for entries, invalidation, and targets with clear notes
Quarter Strength Table (3M) [CHE] Quarter Strength Table (3M) — quarterly seasonality overview for the current symbol
Is there seasonality in certain assets? Some YouTubers claim there is—can you test it yourself?
Summary
This indicator builds a compact table that summarizes quarterly seasonality from three-month bars. It aggregates the simple return of each historical quarter, counts observations, computes the average return and the win rate for each quarter, and flags the historically strongest quarter. The output is a five-column table rendered on the chart, designed for quick comparison rather than signal generation. Because it processes only confirmed higher-timeframe bars, results are stable once a quarter has closed.
Motivation: Why this design?
Seasonality tools often mix intraperiod estimates with live bars, which can lead to misleading flips and inconsistent statistics. The core idea here is to restrict aggregation to completed three-month bars only and to deduplicate events by timestamp. This avoids partial information and double counting, so the table reflects a consistent, closed-bar history.
What’s different vs. standard approaches?
Baseline: Typical seasonality studies that compute monthly or quarterly stats directly on the chart timeframe or update on live higher-timeframe bars.
Architecture differences:
Uses explicit higher-timeframe requests for open, close, time, and calendar month from three-month bars.
Confirms the higher-timeframe bar before recording a sample; deduplicates by the higher-timeframe timestamp.
Keeps fixed arrays of length four for the four quarters; renders a fixed five-by-five table with zebra rows.
Practical effect: Once a quarter closes, counts and averages are stable. The “Best” column marks the highest average quarter so you can quickly identify the historically strongest period.
How it works (technical)
On every chart bar, the script requests three-month open, close, time, and the calendar month derived from that bar’s time. When the three-month bar is confirmed, it computes the simple return for that bar and maps the month to a quarter index between zero and three. A guard stores the last seen three-month timestamp to avoid duplicate writes. Per quarter, it accumulates the sum of returns, the number of samples, and the number of positive samples. From these, it derives average return and win rate. The table header is created once on the first bar; content updates only on the last visible chart bar for efficiency. No forward references are used, and lookahead is disabled in all higher-timeframe requests to avoid peeking.
Parameter Guide
Percent — Formats values as percentages. Default: true. Trade-off: Easier visual comparison; disable if you prefer raw unit returns.
Decimals — Number of digits shown. Default: two. Bounds: zero to six. Trade-off: More digits improve precision but reduce readability.
Show table — Toggles table rendering. Default: true. Trade-off: Disable when space is limited or for batch testing.
Reading & Interpretation
The table shows rows for Q1 through Q4 and columns for Count, Avg Ret, P(win), and Best.
Count: Number of completed three-month bars observed for that quarter.
Avg Ret: Average simple return across all samples in that quarter.
P(win): Share of samples with a positive return.
Best: An asterisk marks the quarter with the highest average return among those with at least one sample.
Use the combination of average and win rate to judge both magnitude and consistency. Low counts signal limited evidence.
Practical Workflows & Combinations
Trend following filter: Favor setups when the upcoming or active quarter historically shows a positive average and a stable win rate. Combine with structure analysis such as higher highs and higher lows to avoid fighting dominant trends.
Exits and risk: When entering during a historically weak quarter, consider tighter risk controls and quicker profit taking.
Multi-asset and multi-timeframe: The default settings work across most liquid symbols. For assets with sparse history, treat results as low confidence due to small sample sizes.
Behavior, Constraints & Performance
Repaint and confirmation: Aggregation occurs only when the three-month bar is confirmed; values do not change afterward for that bar. During an open quarter, no new sample is added.
Higher-timeframe usage: All higher-timeframe requests disable lookahead and rely on confirmation to mitigate repaint.
Resources: Declared `max_bars_back` is two thousand. Arrays are fixed at length four. The script updates the table only on the last visible bar to reduce work.
Known limits: Averages can be affected by outliers and structural market changes. Limited history reduces reliability. Corporate actions and contract rolls may influence returns depending on the symbol’s data source. This is a visualization and not a trading system.
Sensible Defaults & Quick Tuning
Starting values: Percent true; Decimals two; Show table true.
If numbers feel noisy: Decrease decimals to one to reduce visual clutter.
If you need raw values: Turn off Percent to display unit returns.
If the table overlaps price: Toggle Show table off when annotating, or reposition via your chart’s table controls.
What this indicator is—and isn’t
This is a historical summary of quarterly behavior. It visualizes evidence and helps frame expectations. It is not predictive, does not generate trade signals, and does not manage positions or risk. Always combine with market structure, liquidity considerations, and independent risk controls.
Inputs with defaults
Percent: true, boolean.
Decimals: two, integer between zero and six.
Show table: true, boolean.
Pine version: v6
Overlay: true
Primary outputs: Table with five columns and five rows.
Metrics/functions used: Higher-timeframe data requests, table rendering, arrays, bar state checks, month mapping.
Special techniques: Closed-bar aggregation, deduplication by higher-timeframe timestamp, zebra row styling.
Performance/constraints: Two thousand bars back, small fixed loops, higher-timeframe requests without lookahead.
Compatibility/assets/timeframes: Works on time-based charts across most assets with sufficient history.
Limitations/risks: Sample size sensitivity, regime shifts, data differences across venues.
Debug/diagnostics: (Unknown/Optional)
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.
Best regards and happy trading
Chervolino
Universal Breakout Strategy [KedArc Quant]Description:
A flexible breakout framework where you can test different logics (Prev Day, Bollinger, Volume, ATR, EMA Trend, RSI Confirm, Candle Confirm, Time Filter) under one system.
Choose your breakout mode, and the strategy will handle entries, exits, and optional risk management (ATR stops, take-profits, daily loss guard, cooldowns).
An on-chart info table shows live mode values (like Prev High/Low, Bollinger levels, RSI, etc.) plus P&L stats for quick analysis.
Use it to compare which breakout style works best on your instrument and timeframe, whether intraday, swing, or positional trading
🔑 Why it’s useful
* Flexibility: Switch between breakout strategies without loading different indicators.
* Clarity: On-chart info table displays current mode, relevant indicator levels, and live strategy P&L stats.
* Testing efficiency: Quickly A/B test different breakout styles under the same backtest environment.
* Transparency: Every trade is rule-based and displayed with entry/exit markers.
🚀 How it helps traders
* Lets you experiment with breakout strategies quickly without loading multiple scripts.
* Helps identify which breakout method fits your instrument & timeframe.
* Gives clear on-chart visual + statistical feedback for confident decision-making.
⚙️ Input Configuration
* Breakout Mode → choose which strategy to test:
* *Prev Day* → breakouts of yesterday’s High/Low.
* *Bollinger* → Upper/Lower BB pierce.
* *Volume* → Breakout confirmed with volume above average.
* *ATR Stop* → Wide range breakout using ATR filter.
* *Time Filter* → Breakouts inside defined session hours.
* *EMA Trend* → Breakouts only in EMA fast > slow alignment.
* *RSI Confirm* → Breakouts with RSI confirmation (e.g. >55 for longs).
* *Candle Confirm* → Breakouts validated by bullish/bearish candle.
* Lookback / ATR / Bollinger inputs → adjust sensitivity.
* Intrabar mode → option to evaluate breakouts using bar highs/lows instead of closes.
* Table options → show/hide info table, show/hide P&L stats, choose corner placement.
📈 Entry & Exit Logic
* Entry → occurs when breakout condition of chosen mode is met.
* Exit → default exits via opposite signals or optional stop/target if enabled.
* Session filter → optional auto-flat at session end.
* P&L management → optional daily loss guard, cooldown between trades, and ATR-based stop/take profit.
❓ FAQ — Choosing the best setup
Q: Which strategy should I use for which chart?
* *Prev Day Breakouts*: Best on indices, FX, and liquid futures with strong daily levels.
* *Bollinger*: Works well in range-bound environments, or crypto pairs with volatility compression.
* *Volume*: Good on equities where breakout strength is tied to volume spikes.
* *ATR Stop*: Suits volatile instruments (commodities, crypto).
* *EMA Trend*: Useful in trending markets (stocks, indices).
* *RSI Confirm*: Adds momentum filter, better for swing trades.
* *Candle Confirm*: Ideal for scalpers needing visual confirmation.
* *Time Filter*: For intraday traders who want signals only in high-liquidity sessions.
Q: What timeframe should I use?
* Intraday traders → 5m to 15m (Time Filter, Candle Confirm).
* Swing traders → 1H to 4H (EMA Trend, RSI Confirm, ATR Stop).
* Position traders → Daily (Prev Day, Bollinger).
* Breakout
A trade entry condition triggered when price crosses above a resistance level (for longs) or below a support level (for shorts).
* Prev Day High/Low
Formula:
Prev High = High of (Day )
Prev Low = Low of (Day )
* Bollinger Bands
Formula:
Basis = SMA(Close, Length)
Upper Band = Basis + (Multiplier × StdDev(Close, Length))
Lower Band = Basis – (Multiplier × StdDev(Close, Length))
* Volume Confirmation
A breakout is only valid if:
Volume > SMA(Volume, Length)
* ATR (Average True Range)
Measures volatility.
Formula:
ATR = SMA(True Range, Length)
where True Range = max(High–Low, |High–Close |, |Low–Close |)
* EMA (Exponential Moving Average)
Weighted moving average giving more weight to recent prices.
Formula:
EMA = (Price × α) + (EMA × (1–α))
with α = 2 / (Length + 1)
* RSI (Relative Strength Index)
Momentum oscillator scaled 0–100.
Formula:
RSI = 100 – (100 / (1 + RS))
where RS = Avg(Gain, Length) ÷ Avg(Loss, Length)
* Candle Confirmation
Bullish candle: Close > Open AND Close > Close
Bearish candle: Close < Open AND Close < Close
Win Rate (%)
Formula:
Win Rate = (Winning Trades ÷ Total Trades) × 100
* Average Trade P&L
Formula:
Avg Trade = Net Profit ÷ Total Trades
📊 Performance Notes
The Universal Breakout Strategy is designed as a framework rather than a single-asset optimized system. Results will vary depending on the chart, timeframe, and asset chosen.
On the current defaults (15-minute, INR-denominated example), the backtest produced 132 trades over the selected period. This provides a statistically sufficient sample size.
Win rate (~35%) is relatively low, but this is balanced by a positive reward-to-risk ratio (~1.8). In practice, a lower win rate with larger wins versus smaller losses is sustainable.
The average P&L per trade is close to breakeven under default settings. This is expected, as the strategy is not tuned for a single symbol but offered as a universal breakout framework.
Commissions (0.1%) and slippage (1 tick) are included in the simulation, ensuring realistic conditions.
Risk management is conservative, with order sizing set at 1 unit per trade. This avoids over-leveraging and keeps exposure well under the 5-10% equity risk guideline.
👉 Traders are encouraged to:
Experiment with inputs such as ATR period, breakout length, or Bollinger parameters.
Test across different timeframes and instruments (equities, futures, forex, crypto) to find optimal setups.
Combine with filters (trend direction, volatility regimes, or volume conditions) for further refinement.
⚠️ Disclaimer This script is provided for educational purposes only.
Past performance does not guarantee future results.
Trading involves risk, and users should exercise caution and use proper risk management when applying this strategy.
ATR SPREADThis is a comprehensive ATR SPREAD indicator for TradingView that combines volatility monitoring with spread analysis. Here's what it does and why it's useful:
Core Functionality
ATR Progress Tracking:
Monitors how much of the daily ATR (Average True Range) has been "consumed" during the current trading day
Calculates progress from two reference points: day's open and previous day's close
Displays progress as percentages or absolute values
Provides color-coded visual feedback (green → yellow → orange → red) based on ATR consumption levels
Spread Monitoring with Advanced Filtering:
Tracks current market spreads using multiple methods (minute high-low ranges, tick-to-tick differences)
Calculates rolling average spread to establish baseline conditions
Implements sophisticated filtering to exclude anomalous spread readings that could skew analysis
Key Features
Smart Filtering System:
Automatically filters out abnormal spreads during session opens
Excludes spreads that are too large relative to price or ATR
Removes outliers that exceed normal spread multiples
Maintains data quality for accurate analysis
Multi-Level Alert System:
ATR threshold alerts (50%, 80%, 100% consumption)
Customizable warning threshold (default 70%)
Spread expansion warnings and alerts
Session start notifications
Professional Dashboard:
Customizable information panel showing real-time metrics
Multiple positioning options and visual themes
Displays ATR status, progress percentages, current/average spreads
Color-coded status indicators for quick assessment
Trading Applications
Risk Management:
Helps traders understand how much daily volatility has been used up
Assists in position sizing based on remaining expected movement
Identifies periods of unusual market conditions
Market Condition Assessment:
Monitors liquidity conditions through spread analysis
Detects when spreads widen beyond normal levels
Filters out unreliable data during volatile periods
Entry/Exit Timing:
High ATR consumption may suggest limited further movement
Low ATR consumption early in the day might indicate potential for larger moves
Spread conditions help assess execution quality expectations
This indicator is particularly valuable for intraday traders, scalpers, and anyone who needs to monitor market microstructure conditions alongside volatility metrics. It provides a comprehensive view of both price movement potential (ATR) and execution environment quality (spreads) in a single, professional-grade tool.
Z-Score Regression Bands [BOSWaves]Z-Score Regression Bands – Adaptive Trend and Volatility Insight
Overview
The Z-Score Regression Bands is a trend and volatility analysis framework designed to give traders a clear, structured view of price behavior. It combines Least Squares Moving Average (LSMA) regression, a statistical method to detect underlying trends, with Z-Score standardization, which measures how far price deviates from its recent average.
Traditional moving average bands, like Bollinger Bands, often lag behind trends or generate false signals in noisy markets. Z-Score Regression Bands addresses these limitations by:
Tracking trends accurately using LSMA regression
Normalizing deviations with Z-Scores to identify statistically significant price extremes
Visualizing multiple bands for normal, strong, and extreme moves
Highlighting trend shifts using diamond markers based on Z-Score crossings
This multi-layered approach allows traders to understand trend strength, detect overextensions, and identify periods of low or high volatility — all from a single, clear chart overlay. It is designed for traders of all levels and can be applied across scalping, day trading, swing trading, and longer-term strategies.
Theoretical Foundation
The Z-Score Regression Bands are grounded in statistical and trend analysis principles. Here’s the idea in plain terms:
Least Squares Moving Average (LSMA) – Unlike standard moving averages, LSMA fits a straight line to recent price data using regression. This “best-fit” line shows the underlying trend more precisely and reduces lag, helping traders see trend changes earlier.
Z-Score Standardization – A Z-Score expresses how far the LSMA is from its recent mean in standard deviation units. This shows whether price is unusually high or low, which can indicate potential reversals, pullbacks, or acceleration of a trend.
Multi-Band Structure – The three bands represent: Band #1: Normal range of price fluctuations; Band #2: Significant deviation from the trend; Band #3: Extreme price levels that are statistically rare. The distance between bands dynamically adapts to market volatility, allowing traders to visualize expansions (higher volatility) and contractions (lower volatility).
Trend Signals – When Z-Score crosses zero, diamonds appear on the chart. These markers signal potential trend initiation, continuation, or reversal, offering a simple alert for shifts in market momentum.
How It Works
The indicator calculates and plots several layers of information:
LSMA Regression (Trend Detection)
Computes a line that best fits recent price points.
The LSMA line smooths out minor fluctuations while reflecting the general direction of the market.
Z-Score Calculation (Deviation Measurement)
Standardizes the LSMA relative to its recent average.
Positive Z-Score → LSMA above average, negative → LSMA below average.
Helps identify overbought or oversold conditions relative to the trend.
Multi-Band Construction (Volatility Envelope)
Upper and lower bands are placed at configurable multiples of standard deviation.
Band #1 captures typical price movement, Band #2 signals stronger deviation, Band #3 highlights extreme moves.
Bands expand and contract with volatility, giving an intuitive visual guide to market conditions.
Trend Signals (Diamonds)
Appear when Z-Score crosses zero.
Indicates moments when momentum may shift, helping traders time entries or exits.
Visual Interpretation
Band width = volatility: wide bands indicate strong movement; narrow bands indicate calm periods.
LSMA shows underlying trend direction, while bands show how far price has strayed from that trend.
Interpretation
The Z-Score Regression Bands provide a multi-dimensional view of market behavior:
Trend Analysis – LSMA line slope shows general market direction.
Momentum & Volatility – Z-Score indicates whether the trend is accelerating or losing strength; band width indicates volatility levels.
Price Extremes – Price touching Band #2 or #3 may suggest overextension and potential reversals.
Trend Shifts – Diamonds signal statistically significant changes in momentum.
Cycle Awareness – Standard deviation bands help distinguish normal market fluctuations from extreme events.
By combining these insights, traders can avoid false signals and react to meaningful structural shifts in the market.
Strategy Integration
Trend Following
Enter trades when diamonds indicate momentum aligns with LSMA direction.
Use Band #1 and #2 for stop placement and partial exits.
Breakout Trading
Watch for narrow bands (low volatility) followed by price pushing outside Band #1 or #2.
Confirm with Z-Score movement in the breakout direction.
Mean Reversion/Pullback
If price reaches Band #2 or #3 without continuation, expect a pullback toward LSMA.
Exhaustion & Reversals
Flattening Z-Score near zero while price remains at extreme bands signals trend weakening.
Tighten stops or scale out before a potential reversal.
Multi-Timeframe Confirmation
High timeframe LSMA confirms the main trend.
Lower timeframe bands provide refined entry and exit points.
Technical Implementation
LSMA Regression : Best-fit line minimizes lag and captures trend slope.
Z-Score Standardization : Normalizes deviation to allow consistent interpretation across markets.
Multi-Band Envelope : Three layers for normal, strong, and extreme deviations.
Trend Signals : Automatic diamonds for Z-Score zero-crossings.
Band Fill Options : Optional shading to visualize volatility expansions and contractions.
Optimal Application
Asset Classes:
Forex : Capture breakouts, overextensions, and trend shifts.
Crypto : High-volatility adaptation with adjustable band multipliers.
Stocks/ETFs : Identify trending sectors, reversals, and pullbacks.
Indices/Futures : Track cycles and structural trends.
Timeframes:
Scalping (1–5 min) : Focus on Band #1 and trend signals for fast entries.
Intraday (15m–1h) : Use Bands #1–2 for continuation and breakout trades.
Swing (4h–Daily) : Bands #2–3 capture trend momentum and exhaustion.
Position (Daily–Weekly) : LSMA trend dominates; Bands #3 highlight regime extremes.
Performance Characteristics
Strong Performance:
Trending markets with moderate-to-high volatility
Assets with steady liquidity and identifiable cycles
Weak Performance:
Flat or highly choppy markets
Very short timeframes (<1 min) dominated by noise
Integration Tips
Combine with support/resistance, volume, or order flow analysis for confirmation.
Use bands for stops, targets, or scaling positions.
Apply multi-timeframe analysis: higher timeframe LSMA confirms main trend, lower timeframe bands refine entries.
Disclaimer
The Z-Score Regression Bands is a trading analysis tool, not a guaranteed profit system. Its effectiveness depends on market conditions, parameter selection, and disciplined risk management. Use it as part of a broader trading strategy, not in isolation.
Gamma Exposure Levels by OMG (Oh My Gamma)OMG (Oh My Gamma) - Daily GEX Levels
An operational framework for Gamma analysis with daily data.
Indicator's Purpose & Demo Data
This indicator plots key strategic levels derived from Gamma Exposure (GEX) analysis. It showcases the operational logic of OhMyGamma analytical engine.
IMPORTANT: The levels plotted by this public script are based on a past date's snapshot for demonstration purposes. They are not valid for live trading and will not update automatically.
The real edge comes from using the fresh data structure provided daily.
How to Read the Levels
This indicator is designed to provide actionable intelligence, not just data. Here's how to read it:
The Levels: Each line represents a key strategic zone (Zero Gamma, Call/Put Walls, etc.) where a market reaction is statistically probable due to dealer hedging flows.
Line Thickness = Strategic Importance: The thickness of each line directly corresponds to its strategic rating. Thicker, solid lines represent higher-conviction zones.
Labels & Tooltips: Hover over a level's label on your chart to see its full description, confluences, and strategic rating.
Pro Tip: The Power of Confluence
This indicator is not a standalone "system". It's an institutional-grade intelligence layer. Its predictive power increases exponentially when used to find confluence with your own analysis.
The highest-probability trades occur when a key Gamma level aligns with:
Price Action: Key support/resistance zones, order blocks, or liquidity pools.
Volumetric Indicators: High/Low Volume Nodes (HVN/LVN) from Volume Profile, VWAP, and Anchored VWAP.
Use these levels to confirm your setups and gain the conviction to act.
How to Get the Daily Updated Script
This indicator requires a new Pine Script code each day to load the current session's data.
To get the daily updated code feel free to visit www.ohmygamma.com
Feedback & Suggestions
This tool is built for the community. Suggestions for improvements and new features are highly welcome and help the project evolve. Feel free to get in touch via the contact form on the website.
Disclaimer: This tool is for informational and educational purposes only. Trading involves significant risk. The authors assume no responsibility for any trading decisions.
HTF Control Shift CandlesHTF Control Shift Candles highlights reversal-type candles that show a decisive shift in market control between buyers and sellers. These candles are detected by measuring wick length relative to the entire range and the close’s position within that range. A bullish control shift occurs when a candle forms with a long lower wick and closes in the top portion of its range, showing strong rejection of lower prices and a buyer takeover. A bearish control shift occurs when a candle forms with a long upper wick and closes in the bottom portion of its range, showing rejection of higher prices and a seller takeover. Candles are automatically recolored for fast visual recognition, and alerts are built in so traders never miss a potential shift in control.
This tool is specifically designed for 30-minute and higher timeframes, where control shift candles carry greater significance for swing and intraday setups. Inputs allow you to adjust wick percentage (wickPct) and body percentage (bodyPct) thresholds for different levels of sensitivity. For example, with wickPct = 0.5 and bodyPct = 0.3, a bullish control shift requires the lower wick to be at least 50% of the entire range and the close to finish in the top 30%. By tuning these values, traders can refine the detection for different volatility regimes or personal trading strategies.
Bar Close Confirmation Only
This indicator confirms signals only after the candle has closed. The calculation requires final values for open, high, low, and close, which are not fixed until the bar finishes forming. That means no mid-bar or intrabar repainting — alerts and highlights trigger only once the bar is complete. For example, if a candle temporarily has a long lower wick but closes back in the middle of its range, it will not be marked as a bullish control shift. This ensures accuracy by waiting for the final candle close before confirming that buyers or sellers truly maintained control.
Control shift candles can be especially useful around liquidity sweeps, support/resistance zones, or after extended moves, as they often mark key turning points. A bullish control shift near demand may provide an early entry confirmation for longs, while a bearish control shift at supply may signal short opportunities or exits from longs. This makes the indicator a versatile tool for anticipating reversals, timing entries with precision, and filtering signals on higher timeframes where market structure shifts are most impactful.
SCTI - D14SCTI - D14 Comprehensive Technical Analysis Suite
English Description
SCTI D14 is an advanced multi-component technical analysis indicator designed for professional traders and analysts. This comprehensive suite combines multiple analytical tools into a single, powerful indicator that provides deep market insights across various timeframes and methodologies.
Core Components:
1. EMA System (Exponential Moving Averages)
13 customizable EMA lines with periods ranging from 8 to 2584
Fibonacci-based periods (8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584)
Color-coded visualization for easy trend identification
Individual toggle controls for each EMA line
2. TFMA (Multi-Timeframe Moving Averages)
Cross-timeframe analysis with 3 independent EMA calculations
Real-time labels showing trend direction and price relationships
Customizable timeframes for each moving average
Percentage deviation display from current price
3. PMA (Precision Moving Average Cloud)
7-layer moving average system with customizable periods
Fill areas between moving averages for trend visualization
Support and resistance zone identification
Dynamic color-coded trend clouds
4. VWAP (Volume Weighted Average Price)
Multiple anchor points (Session, Week, Month, Quarter, Year, Earnings, Dividends, Splits)
Standard deviation bands for volatility analysis
Automatic session detection and anchoring
Statistical price level identification
5. Advanced Divergence Detector
12 technical indicators for divergence analysis (MACD, RSI, Stochastic, CCI, Williams %R, Bias, Momentum, OBV, VW-MACD, CMF, MFI, External)
Regular and hidden divergences detection
Bullish and bearish signals with visual confirmation
Customizable sensitivity and filtering options
Real-time alerts for divergence formations
6. Volume Profile & Node Analysis
Comprehensive volume distribution analysis
Point of Control (POC) identification
Value Area High/Low (VAH/VAL) calculations
Volume peaks and troughs detection
Support and resistance levels based on volume
7. Smart Money Concepts
Market structure analysis with Break of Structure (BOS) and Change of Character (CHoCH)
Internal and swing structure detection
Equal highs and lows identification
Fair Value Gaps (FVG) detection and visualization
Liquidity zones and institutional flow analysis
8. Trading Sessions
9 major trading sessions (Asia, Sydney, Tokyo, Shanghai, Hong Kong, Europe, London, New York, NYSE)
Real-time session status and countdown timers
Session volume and performance tracking
Customizable session boxes and labels
Statistical session analysis table
Key Features:
Modular Design: Enable/disable any component independently
Real-time Analysis: Live updates with market data
Multi-timeframe Support: Works across all chart timeframes
Customizable Alerts: Set alerts for any detected pattern or signal
Professional Visualization: Clean, organized display with customizable colors
Performance Optimized: Efficient code for smooth chart performance
Use Cases:
Trend Analysis: Identify market direction using multiple EMA systems
Entry/Exit Points: Use divergences and structure breaks for timing
Risk Management: Utilize volume profiles and session analysis for better positioning
Multi-timeframe Analysis: Confirm signals across different timeframes
Institutional Analysis: Track smart money flows and market structure
Perfect For:
Day traders seeking comprehensive market analysis
Swing traders needing multi-timeframe confirmation
Professional analysts requiring detailed market structure insights
Algorithmic traders looking for systematic signal generation
---
中文描述
SCTI - D14是一个先进的多组件技术分析指标,专为专业交易者和分析师设计。这个综合套件将多种分析工具整合到一个强大的指标中,在各种时间框架和方法论中提供深度市场洞察。
核心组件:
1. EMA系统(指数移动平均线)
13条可定制EMA线,周期从8到2584
基于斐波那契的周期(8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584)
颜色编码可视化,便于趋势识别
每条EMA线的独立切换控制
2. TFMA(多时间框架移动平均线)
跨时间框架分析,包含3个独立的EMA计算
实时标签显示趋势方向和价格关系
每个移动平均线的可定制时间框架
显示与当前价格的百分比偏差
3. PMA(精密移动平均云)
7层移动平均系统,周期可定制
移动平均线间填充区域用于趋势可视化
支撑阻力区域识别
动态颜色编码趋势云
4. VWAP(成交量加权平均价格)
多个锚点(交易时段、周、月、季、年、财报、分红、拆股)
标准差带用于波动性分析
自动时段检测和锚定
统计价格水平识别
5. 高级背离检测器
12个技术指标用于背离分析(MACD、RSI、随机指标、CCI、威廉姆斯%R、Bias、动量、OBV、VW-MACD、CMF、MFI、外部指标)
常规和隐藏背离检测
看涨看跌信号配视觉确认
可定制敏感度和过滤选项
背离形成的实时警报
6. 成交量分布与节点分析
全面的成交量分布分析
控制点(POC)识别
价值区域高/低点(VAH/VAL)计算
成交量峰值和低谷检测
基于成交量的支撑阻力水平
7. 聪明钱概念
市场结构分析,包括结构突破(BOS)和结构转变(CHoCH)
内部和摆动结构检测
等高等低识别
公允价值缺口(FVG)检测和可视化
流动性区域和机构资金流分析
8. 交易时区
9个主要交易时段(亚洲、悉尼、东京、上海、香港、欧洲、伦敦、纽约、纽交所)
实时时段状态和倒计时器
时段成交量和表现跟踪
可定制时段框和标签
统计时段分析表格
主要特性:
模块化设计:可独立启用/禁用任何组件
实时分析:随市场数据实时更新
多时间框架支持:适用于所有图表时间框架
可定制警报:为任何检测到的模式或信号设置警报
专业可视化:清洁、有序的显示界面,颜色可定制
性能优化:高效代码确保图表流畅运行
使用场景:
趋势分析:使用多重EMA系统识别市场方向
入场/出场点:利用背离和结构突破进行时机选择
风险管理:利用成交量分布和时段分析进行更好定位
多时间框架分析:在不同时间框架间确认信号
机构分析:跟踪聪明钱流向和市场结构
适用于:
寻求全面市场分析的日内交易者
需要多时间框架确认的摆动交易者
需要详细市场结构洞察的专业分析师
寻求系统化信号生成的算法交易者
Candle Range Theory (CRT) Enhanced✨ Key upgrades over your version:
Uses multi-timeframe high/low/mid as the reference range.
Adds false breakout candle filter (manipulation logic).
Adds liquidity sweep checks.
Filters out tiny candles (low range = noise).
Adds session filter (only valid during chosen active times).
Plots the HTF midpoint line for reference.
Leaves placeholders for order block / risk management logic.
ICT 369 Sniper MSS Indicator (HTF Bias) - H2LThis script is an ICT (Inner Circle Trader) concept-based trading indicator designed to identify high-probability reversal or continuation setups, primarily focusing on intraday trading using a Higher Timeframe (HTF) directional bias.
Here are the four core components of the indicator:
Higher Timeframe (HTF) Bias Filter (Market Structure Shift - MSS): It determines the overall trend by checking if the current price has broken the most recent high or low swing point of a larger timeframe (e.g., 4H). This establishes a Bullish or Bearish bias, ensuring trades align with the dominant trend.
Fair Value Gap (FVG) and OTE: It identifies price imbalances (FVGs) and calculates the Optimal Trade Entry (OTE) levels (50%, 62%, 70.5%, etc.) within those gaps, looking for price to retrace into these specific areas.
Kill Zones (Timing): It incorporates specific time windows (London and New York Kill Zones, based on NY Time) where institutional trading activity is high, only allowing entry signals during these defined periods.
Signal and Targets: It triggers a Long or Short signal when all criteria are met (HTF Bias, FVG, OTE retracement, and Kill Zone timing). It then calculates and plots suggested trade levels, including a Stop Loss (SL) and three Take Profit targets (TP1, TP2, and a dynamic Runner Target based on the weekly Average True Range or ATR).
In summary, it's a comprehensive tool for traders following ICT principles, automating the confluence check across trend, structure, liquidity, and timing.
MTL One-Stop PRO Here’s the English version you can paste into the script description or a Telegram post.
---
# MTL One-Stop PRO v6
**EMAs • PDH/PDL • PWH/PWL • PMH/PML • RSI/ADX/OBV/ATR • Readiness**
## What it draws on the chart
* **EMA bands (21/50/200)** on price + a **21–50 ribbon** — quick read of impulse/pullback and location vs. the moving averages.
* **Prior period levels:**
* **PDH/PDL** (previous day high/low) — *blue*.
* **PWH/PWL** (previous week high/low) — *orange dashed*.
* **PMH/PML** (previous month high/low) — *purple dashed*.
Labels are printed on the right margin to keep the chart clean.
* **“Readiness” panel** (bottom-right): summary metrics and quick long/short readiness scores.
## Readiness panel — fields & meaning
* **TF / Trend**
* `Trend 1 (21>50>200)` — bullish EMA stack.
* `Trend −1 (21<50<200)` — bearish EMA stack.
* `Trend = mix` — mixed/sideways structure.
* **RSI** (calculated on the selected TF) — momentum gauge. Rule of thumb: >50 bullish, <50 bearish.
* **ADX** — trend strength. Practical zone **20–25+**.
* **ATR %** — volatility as % of price (= ATR(14)/Close·100). Helps classify regime: low/normal/high.
* **OBV ↑/↓** — accumulation/distribution direction (arrow from the OBV slope/smoothing).
* **Near PDH? / Near PDL?** — proximity flags to key extremes (within a user-set threshold; handy for breakout/fakeout/retest scenarios).
* **LongScore / ShortScore (0–5)** — quick “readiness” rating:
* +1 for trend aligned with the scenario (EMA stack).
* +1 for RSI in favor.
* +1 for ADX in the working zone.
* +1 for OBV in favor.
* +1 for price positioning (for longs — closer to **PDL/PWL** pullback or **PDH/PWH** breakout; for shorts — the opposite).
Sum → priority: **4–5/5** aggressive, **2–3/5** only with a pattern, **0–1/5** skip.
## How to read & use (fits the “Top-setup 1D/3D/1W” flow)
## Settings (main groups)
* **EMAs (on price):** lengths/visibility 21/50/200, enable the 21–50 “ribbon”.
* **Levels:** toggles for **PDH/PDL**, **PWH/PWL**, **PMH/PML**.
* **Oscillators (calc TF):** choose the timeframe used to compute **RSI/ADX/OBV/ATR** (e.g., compute on **D** while analyzing 1H/3H).
* **Readiness:** proximity threshold to levels (in ATR fractions), working-zone bounds for ADX/RSI.
## Pro tips
* **Colors map to period:** purple = month, orange = week, blue = day.
* Watch **level clusters** (e.g., PWH≈PMH): frequent reversal/fakeout zones.
* **ATR %** guides tactics: in low vol, breakouts underperform; in higher vol, retests and fakeouts improve.
## Important
The indicator **does not generate auto-signals** or replace risk management. It structures levels/context and speeds up the workflow of your checklist (SMC/liquidity/EMA/ATR/RSI/ADX/OBV) in the 1D/3D/1W pipeline.
---
Want a mini “recommended thresholds” card (RSI/ADX/ATR%) per TF and a 60-second “how to build a trade” tutorial for the description?
QTheoryQTheory –
This indicator is built on Quarterly Theory (developed by Daye)
🔹 Quarterly Theory
Markets often unfold in repeating quarterly cycles (Q1–Q4) across multiple timeframes — yearly, monthly, weekly, daily, 90-minute, and even micro cycles. By dividing price action into these quarters, traders can better anticipate structural shifts, accumulation/distribution phases, and liquidity runs.
🔹 Sequential SMT (SSMT)
Sequential SMT extends standard SMT (Smart Money Technique) by comparing multiple assets (such as FX majors) to identify divergences across quarters.
🔹 Features of QTheory
Automatic detection of quarterly cycles across multiple timeframes.
Visual cycle boxes & customizable dividers.
Integrated SSMT signals with divergence line visualization.
DFR (Defining Range) with Fibonacci levels.
Support for up to 5 comparison assets, with inversion options.
Auto-cycle selection for seamless multi-timeframe adaptation.
Extensive customization for colors, opacity, and signal display.
🔹 How it works
QTheory divides price data into consistent “quarters” across multiple timeframes. Within each cycle, it tracks highs, lows, and divergences, then overlays this information as boxes, dividers, and optional signals on your chart. Traders can use these visual cues to better align entries and exits with institutional market behavior patterns.
🔹 How to use it
Enable the desired cycle type (e.g., weekly, daily, 90-minute) from the settings.
Toggle boxes, dividers, and signals depending on your trading style.
Use SSMT divergences and DFR Fibs to anticipate a reversal
Compare against other assets (e.g., DXY or correlated pairs) to refine confluence.
⚠️ Disclaimer: This tool is for educational purposes only. It does not constitute financial advice. Always perform your own analysis and risk management.
Attribution: Portions of this script extend the quarter-cycle logic from TFlab’s “Quarterly Theory ICT 04”, released under the Mozilla Public License 2.0
Adaptive Heikin Ashi [CHE]Adaptive Heikin Ashi — volatility-aware HA with fewer fake flips
Summary
Adaptive Heikin Ashi is a volatility-aware reinterpretation of classic Heikin Ashi that continuously adjusts its internal smoothing based on the current ATR regime, which means that in quiet markets the indicator reacts more quickly to genuine directional changes, while in turbulent phases it deliberately increases its smoothing to suppress jitter and color whipsaws, thereby reducing “noise” and cutting down on fake flips without resorting to heavy fixed smoothing that would lag everywhere.
Motivation: why adapt at all?
Classic Heikin Ashi replaces raw OHLC candles with a smoothed construction that averages price and blends each new candle with the previous HA state, which typically cleans up trends and improves visual coherence, yet its fixed smoothing amount treats calm and violent markets the same, leading to the usual dilemma where a setting that looks crisp in a narrow range becomes too nervous in a spike, and a setting that tames high volatility feels unnecessarily sluggish as soon as conditions normalize; by allowing the smoothing weight to expand and contract with volatility, Adaptive HA aims to keep candles readable across shifting regimes without constant manual retuning.
What is different from normal Heikin Ashi?
Fixed vs. adaptive blend:
Classic HA implicitly uses a fixed 50/50 blend for the open update (`HA_open_t = 0.5 HA_open_{t-1} + 0.5 HA_close_{t-1}`), while this script replaces the constant 0.5 with a dynamic weight `w_t` that oscillates around 0.5 as a function of observed volatility, which turns the open update into an EMA-like filter whose “alpha” automatically changes with market conditions.
Volatility as the steering signal:
The script measures volatility via ATR and compares it to a rolling baseline (SMA of ATR over the same length), producing a normalized deviation that is scaled by sensitivity, clamped to ±1 for stability, and then mapped to a bounded weight interval ` `, so the adaptation is strong enough to matter but never runs away.
Outcome that matters to traders:
In high volatility, the weight shifts upward toward the prior HA open, which strengthens smoothing exactly where classic HA tends to “chatter,” while in low volatility the weight shifts downward toward the most recent HA close, which speeds up reaction so quiet trends do not feel artificially delayed; this is the practical mechanism by which noise and fake signals are reduced without accepting blanket lag.
How it works
1. HA close matches classic HA:
`HA_close_t = (Open_t + High_t + Low_t + Close_t) / 4`
2. Volatility normalization:
`ATR_t` is computed over `atr_length`, its baseline is `ATR_SMA_t = SMA(ATR, atr_length)`, and the raw deviation is `(ATR_t / ATR_SMA_t − 1)`, which is then scaled by `adapt_sensitivity` and clamped to ` ` to obtain `v_t`, ensuring that pathological spikes cannot destabilize the weighting.
3. Adaptive weight around 0.5:
`w_t = 0.5 + oscillation_range v_t`, giving `w_t ∈ `, so with a default `range = 0.20` the weight stays between 0.30 and 0.70, which is wide enough to matter but narrow enough to preserve HA identity.
4. EMA-like open update:
On the very first bar the open is seeded from a stable combination of the raw open and close, and thereafter the update is
`HA_open_t = w_t HA_open_{t−1} + (1 − w_t) HA_close_{t−1}`,
which is equivalent to an EMA where higher `w_t` means heavier inertia (more smoothing) and lower `w_t` means stronger pull to the latest price information (more responsiveness).
5. High and low follow classic HA composition:
`HA_high_t = max(High_t, max(HA_open_t, HA_close_t))`,
`HA_low_t = min(Low_t, min(HA_open_t, HA_close_t))`,
thereby keeping visual semantics consistent with standard HA so that your existing reading of bodies, wicks, and transitions still applies.
Why this reduces noise and fake signals in practice
Fake flips in HA typically occur when a fixed blending rule is forced to process candles during a volatility surge, producing rapid alternations around pivots or within wide intrabar ranges; by increasing smoothing exactly when ATR jumps relative to its baseline, the adaptive open stabilizes the candle body progression and suppresses transient color changes, while in the opposite scenario of compressed ranges, the reduced smoothing allows small but persistent directional pressure to reflect in candle color earlier, which reduces the tendency to enter late after multiple slow transitions.
Parameter guide (what each input really does)
ATR Length (default 14): controls both the ATR and its baseline window, where longer values dampen the adaptation by making the baseline slower and the deviation smaller, which is helpful for noisy lower timeframes, while shorter values make the regime detector more reactive.
Oscillation Range (default 0.20): sets the maximum distance from 0.5 that the weight may travel, so increasing it towards 0.25–0.30 yields stronger smoothing in turbulence and faster response in calm periods, whereas decreasing it to 0.10–0.15 keeps the behavior closer to classical HA and is useful if your strategy already includes heavy downstream smoothing.
Adapt Sensitivity (default 6.0): multiplies the normalized ATR deviation before clamping, such that higher sensitivity accelerates adaptation to regime shifts, while lower sensitivity produces gradual transitions; negative values intentionally invert the mapping (higher vol → less smoothing) and are generally not recommended unless you are testing a counter-intuitive hypothesis.
Reading the candles and the optional diagnostic
You interpret colors and bodies just like with normal HA, but you can additionally enable the Adaptive Weight diagnostic plot to see the regime in real time, where values drifting up toward the upper bound indicate a turbulent context that is being deliberately smoothed, and values gliding down toward the lower bound indicate a calm environment in which the indicator chooses to move faster, which can be valuable for discretionary confirmation when deciding whether a fresh color shift is likely to stick.
Practical workflows and combinations
Trend-following entries: use color continuity and body expansion as usual, but expect fewer spurious alternations around news spikes or into liquidity gaps; pairing with structure (swing highs/lows, breaks of internal ranges) keeps entries disciplined.
Exit management: when the diagnostic weight remains elevated for an extended period, you can be stricter with exit triggers because flips are less likely to be accidental noise; conversely, when the weight is depressed, consider earlier partials since the indicator is intentionally more nimble.
Multi-asset, multi-TF: the adaptation is especially helpful if you rotate instruments with very different vol profiles or hop across timeframes, since you will not need to retune a fixed smoothing parameter every time conditions change.
Behavior, constraints, and performance
The script does not repaint historical bars and uses only past information on closed candles, yet just like any candle-based visualization the current live bar will update until it closes, so you should avoid acting on mid-bar flips without a rule that accounts for bar close; there are no `security()` calls or higher-timeframe lookups, which keeps performance light and execution deterministic, and the clamping of the volatility signal ensures numerical stability even during extreme ATR spikes.
Sensible defaults and quick tuning
Start with the defaults (`ATR 14`, `Range 0.20`, `Sensitivity 6.0`) and observe the weight plot across a few volatile events; if you still see too many flips in turbulence, either raise `Range` to 0.25 or trim `Sensitivity` to 4–5 so that the weight can move high but does not overreact, and if the indicator feels too slow in quiet markets, lower `Range` toward 0.15 or raise `Sensitivity` to 7–8 to bias the weight a bit more aggressively downward when conditions compress.
What this indicator is—and is not
Adaptive Heikin Ashi is a context-aware visualization layer that improves the signal-to-noise ratio and reduces fake flips by modulating smoothing with volatility, but it is not a complete trading system, it does not predict the future, and it should be combined with structure, risk controls, and position management that fit your market and timeframe; always forward-test on your instruments, and remember that even adaptive smoothing can delay recognition at sharp turning points when volatility remains elevated.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Best regards and happy trading
Chervolino
Volume Aggregated (Lite)Volume Aggregated (Lite) is a lightweight yet powerful tool designed to provide traders with a consolidated view of trading volume across major perpetual futures markets. Instead of relying solely on the volume of a single exchange, this indicator aggregates and normalizes data from multiple venues, giving a broader and more representative measure of market activity.
Supported Exchanges:
Binance (USDT.P & USDC.P)
Bybit (USDT.P & USD.P)
OKX (USDT.P & USD.P)
Bitget (USDT.P & USD.P)
Coinbase (USDC.P)
Users can toggle each exchange individually, allowing flexible customization depending on which markets they consider most relevant.
Denomination Options:
COINS: Volume expressed in the base currency (e.g., BTC, ETH).
USD: Volume normalized to USD values by multiplying with price.
Why it’s useful:
Volume is a critical component of technical analysis, reflecting market participation and conviction behind price moves. However, relying on a single exchange can create blind spots, especially in crypto where liquidity is fragmented. By combining data from multiple large exchanges, this indicator offers:
A more comprehensive measure of market interest.
A normalized comparison between exchanges with different quote currencies (e.g., USDT, USD, USDC).
A volume stream that can be used as a custom source for other indicators, strategies, or overlays within TradingView.
Practical Applications:
Trend Confirmation: Check if aggregated volume supports price direction.
Breakout Validation: Identify whether breakouts are backed by broad participation across venues.
Divergence Detection: Spot situations where price moves without sufficient cross-exchange volume.
Custom Indicator Input: Since it outputs a clean series, it can be plugged into moving averages, oscillators, or custom-built scripts.
Technical Details:
The script uses request.security() to pull volume data across exchanges and normalizes values when required (e.g., USD-quoted pairs divided by the instrument’s price). It then aggregates all valid inputs into a single stream. The result is displayed as color-coded columns (green for bullish candles, red for bearish), making it easy to interpret at a glance.
This “Lite” version keeps the focus on core functionality: aggregation, normalization, and straightforward visualization—avoiding unnecessary complexity while remaining highly adaptable for custom analysis.
Quadro Volume Profile [BigBeluga]🔵 OVERVIEW
The Quadro Volume Profile is a precision-engineered volume profiling tool that segments market activity into four distinct quadrants surrounding the current price. By separating bullish and bearish volume above and below the current price, it helps traders identify dominant forces and high-interest price zones with ease. Each quadrant includes label annotations showing total volume and its share of overall activity — delivering powerful insights into the market’s internal structure.
🔵 CONCEPTS
Four-Quadrant Volume Distribution : Volume is separated into Buy and Sell profiles both above and below the current price.
Directional Volume Logic : Bullish and bearish candle volume is allocated to specific bins, creating color-coded volume stacks.
Dynamic PoC Detection : Point of Control (PoC) levels are calculated per quadrant and optionally displayed.
Lookback-Based Anchoring : The volume histogram is anchored to a fixed lookback window, ensuring consistency and historical context.
Label-Based Analytics : Each quadrant displays a labeled breakdown of direction, total volume, and percentage weight of total activity.
🔵 FEATURES
Four separate volume profiles:
Upper Left: Bearish volume (Sell Quad above price)
Upper Right: Bullish volume (Buy Quad above price)
Lower Left: Bullish volume (Buy Quad below price)
Lower Right: Bearish volume (Sell Quad below price)
Live Labels for Each Quad:
Displays BUY or SELL direction
Shows total volume per quadrant (e.g. 607.49K)
Displays percent share of total quad volume (e.g. 18.87%)
Toggle visibility for each profile and each Point of Control (PoC) dashed PoC lines with volume annotations
Adjustable calculation period (lookBack), number of bins, and horizontal offset
Color gradient intensity represents volume strength per bin
Auto-cleaning visuals to keep the chart uncluttered
Gradient color control for Buy and Sell volumes
Clean midline split between upper and lower quadrants
🔵 HOW TO USE
Select your desired calculation period (default: 200 bars) to define the range for volume analysis.
Adjust the bins parameter for more or less resolution in volume distribution.
Toggle each quadrant on/off depending on your preference using the settings panel:
“Upper Sell Quad” – shows bearish volume above current price (left)
“Upper Buy Quad” – shows bullish volume above current price (right)
“Lower Buy Quad” – shows bullish volume below current price (left)
“Lower Sell Quad” – shows bearish volume below current price (right)
Enable or disable PoC lines for each quad to highlight where volume peaked.
Use the gradient coloring to identify volume imbalances — sharp differences between opposing quads often indicate key zones of rejection or breakout.
Monitor the midline level which splits the four quadrants — it serves as a psychological pivot zone.
🔵 CONCLUSION
The Quadro Volume Profile offers a powerful and visually intuitive way to dissect market activity around price. By splitting volume into four quadrants, traders can better interpret order flow, identify dominant volume zones, and spot potential reversals or continuation setups. Whether you're trading breakouts, liquidity sweeps, or range-bound behavior — this tool adds a structured layer of volume context to your charting workflow.
X VIBVolume Imbalance Zones
X VIB highlights price-levels where buying or selling pressure overwhelmed the opposing side within a single bar transition, leaving a void that the market often revisits. The script paints those voids as boxes so you can quickly see where liquidity may rest, where price may pause or react, and which imbalances persist across sessions.
What it plots
For each completed calculation bar (your chart’s timeframe or a higher timeframe you choose), the indicator draws a box that spans the prior bar’s close to the current bar’s open—only when that bar-to-bar transition exhibits a valid volume imbalance (VIB) by the selected rules. Boxes are time-anchored from the previous bar’s time to the current bar’s time close, and they are capped to a configurable count so the chart remains readable.
Two ways to define “Volume Imbalance”
X VIB calculates imbalances in two complementary ways. Both techniques isolate bar-to-bar displacement that reflects one-sided pressure, but they differ in strictness and how much confirmation they require.
Continuity VIB (Bar-to-Bar Displacement)
A strict definition that requires aligned progress and overlap between consecutive bars. In practical terms, a bullish continuity VIB demands that the new bar advances beyond the prior bar’s close, opens above it, and maintains upward progress without erasing the displacement; the bearish case mirrors this to the downside.
Use when: you want the cleanest, most structurally reliable voids that reflect decisive initiative flow.
Effect on boxes: typically fewer, higher-quality zones that mark locations of strong one-sided intent.
Gap-Qualified VIB (Displacement with Gap Confirmation)
A confirmatory definition that treats the bar-to-bar displacement as an imbalance only if the transition also observes a protective “gap-like” relationship with surrounding prices. This extra condition filters out many borderline transitions and emphasizes voids that were less likely to be traded through on their formation.
Use when: you want additional confirmation that the void had genuine follow-through pressure at birth.
Effect on boxes: often slightly fewer but “stickier” zones that can attract price on retests.
Both modes are drawn identically on the chart (as boxes spanning the displacement). Their difference is purely in the qualification of what counts as a VIB. You can display either set independently or together to compare how each mode surfaces structure.
Multi-Timeframe (MTF) logic
You can compute imbalances on a higher timeframe (e.g., 15-minute) while viewing a lower timeframe chart. When MTF is active, X VIB:
Samples open, high, low, close, time, and time_close from the selected HTF in a single, synchronized request (no gaps, no lookahead).
Only evaluates and draws boxes once per HTF bar close, ensuring clean, stable zones that don’t repaint intra-bar.
How traders use these zones
Reversion into voids: Price often returns to “fill” part of a void before deciding on continuation or reversal.
Context for entries/exits: VIB boxes provide precise, mechanically derived levels for limit entries, scale-outs, and invalidation points.
Confluence: Combine with session opens, HTF levels, or volatility bands to grade setups. Continuity VIBs can mark impulse anchors; Gap-Qualified VIBs often mark stickier pockets.
Inputs & controls
Calculate on higher timeframe? Toggle MTF computation; choose your Calc timeframe (e.g., 15).
Show VIBs: Master toggle for drawing imbalance boxes.
Color & Opacity: Pick the box fill and border intensity that suits your theme.
# Instances: Cap how many historical boxes remain on the chart to avoid clutter.
Notes & best practices
Signal density: Continuity VIBs tend to be more frequent on fast charts; Gap-Qualified VIBs are more selective. Try both and keep what aligns with your trade plan.
MTF discipline: When using a higher calc timeframe, analyze reactions primarily at that timeframe’s pace to avoid over-fitting to noise.
Lifecycle awareness: Not all voids fill. Track which boxes persist; durable voids often define the map of the session.