STOP_TRADING_MODE📘 Release Notes
STOP_TRADING_MODE — Stable Release
Version: 1.0.0
Status: Stable / Production-ready
⸻
🎯 Purpose
This indicator is designed to identify market regimes, not to generate constant trade signals.
Its primary goal is to protect the trader from low-quality environments and highlight rare, high-quality interaction points with equilibrium.
⸻
🧠 Core Concepts
• STOP Mode — identifies impulsive, dangerous, or one-sided market conditions
• Equilibrium (MID / EQ) — represents the auction balance, not a trend level
• MAGNET vs SPRING — distinguishes range behavior from trend behavior
• EQ_HOLD — highlights valid reactions at equilibrium only in a range-friendly environment
⸻
✅ What’s Included
🔴 STOP Mode (Background Only)
• Red background marks:
• volatility spikes (ATR expansion)
• impulsive candles
• one-directional movement
• No entry signals
• Used strictly as a risk-environment filter
🟨 MID (Equilibrium Line)
• Calculated as SMA of HL2
• Acts as:
• Magnet in ranging markets
• Spring in trending markets
• Not a trade trigger by itself
🔁 MAGNET / SPRING Regime Detection
• Based on:
• frequency of MID crossings
• time spent near equilibrium
• market “trendiness” ratio
• Regime labels appear only when the regime changes
• Prevents constant label repainting or noise
🟢 EQ_HOLD Signal (Rare by Design)
• Triggered only when:
• STOP mode is OFF
• MID behaves as MAGNET
• price reacts cleanly at equilibrium
• Designed for micro-scaling / position management, not aggressive entries
• Low frequency = high informational value
⸻
🚫 What Was Removed (By Design)
• No STOP / STOP_OFF labels on chart (alerts only)
• No constant signal spam
• No reliance on trend prediction
• No “buy/sell” prompts
⸻
🎛 UI & Usability Improvements
• Clean, minimal visual layout
• Color logic aligned with meaning:
• 🔴 Risk / danger
• 🟨 Balance / structure
• 🟢 Action-permitted condition
• Optional toggles for regime and EQ_HOLD labels
⸻
🧪 Known Behavior (Not Bugs)
• MID crossing does not immediately change regime
• STOP may activate after entry — this signals risk management mode, not exit
• EQ_HOLD appears infrequently by intention
⸻
🧩 Intended Usage
• Best suited for:
• range-aware traders
• scale-in / scale-out strategies
• discretionary decision support
• Not intended for:
• high-frequency trading
• signal-following automation
• prediction-based entries
⸻
🧠 Design Philosophy
“Silence is a feature.”
If the indicator does nothing —
the market likely offers nothing worth doing.
Biến động
H1 Liquidity Sweep Tracker🇬🇧 English: H1 Liquidity Sweep Tracker
Overview
The H1 Liquidity Sweep Tracker is a technical analysis tool designed for TradingView (Pine Script v5). It identifies "Liquidity Sweeps"—market movements where the price briefly breaches a significant level to trigger stop-loss orders before reversing.
Core Functions
H1 Level Detection: Regardless of your current timeframe (e.g., 1m, 5m, or 15m), the script automatically fetches the High and Low of the previous 1-hour candle.
Real-Time Monitoring: It tracks price action relative to these levels to identify failed breakouts.
Visual Indicators:
Horizontal Lines: Displays the H1 High (Red) and H1 Low (Green) from the previous hour.
Sweep Shapes: A triangle appears above/below the candle when a sweep is detected.
How it Works (The Logic)
A "Sweep" is triggered when the current price moves beyond the H1 boundary but fails to maintain that position:
Bullish Sweep: The price drops below the previous H1 Low (collecting sell-side liquidity) but closes back above it. This suggests a potential upward reversal.
Bearish Sweep: The price rises above the previous H1 High (collecting buy-side liquidity) but closes back below it. This suggests a potential downward reversal.
[GYTS] Volatility Toolkit Volatility Toolkit
🌸 Part of GoemonYae Trading System (GYTS) 🌸
🌸 --------- INTRODUCTION --------- 🌸
💮 What is Volatility Toolkit?
Volatility Toolkit is a comprehensive volatility analysis indicator featuring academically-grounded range-based estimators. Unlike simplistic measures like ATR, these estimators extract maximum information from OHLC data — resulting in estimates that are 5-14× more statistically efficient than traditional close-to-close methods.
The indicator provides two configurable estimator slots, weighted aggregation, adaptive threshold detection, and regime identification — all with flexible smoothing options via
GYTS FiltersToolkit integration.
💮 Why Use This Indicator?
Standard volatility measures (like simple standard deviation) are highly inefficient, requiring large amounts of data to produce stable estimates. Academic research has shown that range-based estimators extract far more information from the same price data:
• Statistical Efficiency — Yang-Zhang achieves up to 14× the efficiency of close-to-close variance, meaning you can achieve the same estimation accuracy with far fewer bars
• Drift Independence — Rogers-Satchell and Yang-Zhang correctly isolate variance even in strongly trending markets where simpler estimators become biased
• Gap Handling — Yang-Zhang properly accounts for overnight gaps, critical for equity markets
• Regime Detection — Built-in threshold modes identify when volatility enters elevated or suppressed states
↑ Overview showing Yang-Zhang volatility with dynamic threshold bands and regime background colouring
🌸 --------- HOW IT WORKS --------- 🌸
💮 Core Concept
The toolkit groups volatility estimators by their output scale to ensure valid comparisons and aggregations:
• Log-Return Scale (σ) — Close-to-Close, Parkinson, Garman-Klass, Rogers-Satchell, Yang-Zhang. These are comparable and can be aggregated. Annualisable via √(periods_per_year) scaling.
• Price Unit Scale ($) — ATR. Measures volatility in absolute price terms, directly usable for stop-loss placement.
• Percentage Scale (%) — Chaikin Volatility. Measures the rate of change of the trading range — whether volatility is expanding or contracting.
Only estimators with the same scale can be meaningfully compared or aggregated. The indicator enforces this and warns when mixing incompatible scales.
💮 Range-Based Estimator Overview
Range-based estimators utilise High, Low, Open, and Close prices to extract significantly more information about the underlying diffusion process than close-only methods:
• Parkinson (1980) — Uses High-Low range. ~5× more efficient than close-to-close. Assumes zero drift.
• Garman-Klass (1980) — Incorporates Open and Close. ~7.4× more efficient. Assumes zero drift, no gaps.
• Rogers-Satchell (1991) — Drift-independent. Superior in trending markets where Parkinson/GK become biased.
• Yang-Zhang (2000) — Composite estimator handling both drift and overnight gaps. Up to 14× more efficient.
💮 Theoretical Background
• Parkinson, M. (1980). The Extreme Value Method for Estimating the Variance of the Rate of Return. Journal of Business, 53 (1), 61–65. DOI
• Garman, M.B. & Klass, M.J. (1980). On the Estimation of Security Price Volatilities from Historical Data. Journal of Business, 53 (1), 67–78. DOI
• Rogers, L.C.G. & Satchell, S.E. (1991). Estimating Variance from High, Low and Closing Prices. Annals of Applied Probability, 1 (4), 504–512. DOI
• Yang, D. & Zhang, Q. (2000). Drift-Independent Volatility Estimation Based on High, Low, Open, and Close Prices. Journal of Business, 73 (3), 477–491. DOI
🌸 --------- KEY FEATURES --------- 🌸
💮 Feature Reference
Estimators (8 options across 3 scale groups):
• Close-to-Close — Classical benchmark using closing prices only. Least efficient but useful as baseline. Log-return scale.
• Parkinson — Range-based (High-Low), ~5× more efficient than close-to-close. Assumes zero drift. Log-return scale.
• Garman-Klass — OHLC-optimised, ~7.4× more efficient. Assumes zero drift, no gaps. Log-return scale.
• Rogers-Satchell — Drift-independent, handles trending markets where Parkinson/GK become biased. Log-return scale.
• Yang-Zhang — Gap-aware composite, most comprehensive (up to 14× efficient). Uses internal rolling variance (unsmoothed). Log-return scale.
• Std Dev — Standard deviation of log returns. Log-return scale.
• ATR — Average True Range in absolute price units. Useful for stop-loss placement. Price unit scale.
• Chaikin — Rate of change of range. Measures volatility expansion/contraction, not level. Percentage scale.
Smoothing Filters (10 options via FiltersToolkit):
• SMA / EMA — Classical moving averages
• Super Smoother (2-Pole / 3-Pole) — Ehlers IIR filter with excellent noise reduction
• Ultimate Smoother (2-Pole / 3-Pole) — Near-zero lag in passband
• BiQuad — Second-order IIR with configurable Q factor
• ADXvma — Adaptive smoothing, flat during ranging periods
• MAMA — MESA Adaptive Moving Average (cycle-adaptive)
• A2RMA — Adaptive Autonomous Recursive MA
Threshold Modes:
• Static — Fixed threshold values you define (e.g., 0.025 annualised)
• Dynamic — Adaptive bands: baseline ± (standard deviation × multiplier)
• Percentile — Threshold at Nth percentile of recent history (e.g., 80th percentile for high)
Visual Features:
• Level-based colour gradient — Line colour shifts with percentile rank (warm = high vol, cool = low vol)
• Fill to zero — Gradient fill intensity proportional to volatility level
• Threshold fills — Intensity-scaled fills when thresholds are breached
• Regime background — Chart background indicates HIGH/NORMAL/LOW volatility state
• Legend table — Displays estimator names, parameters, current values with percentile ranks (P##)
💮 Dual Estimator Slots
Compare two volatility estimators side-by-side. Each slot independently configures:
• Estimator type (8 options across three scale groups)
• Lookback period and smoothing filter
• Colour palette and visual style
This enables direct comparison between estimators (e.g., Yang-Zhang vs Rogers-Satchell) or between different parameterisations of the same estimator.
↑ Yang-Zhang (reddish) and Rogers-Satchell (greenish)
💮 Flexible Smoothing via FiltersToolkit
All estimators (except Yang-Zhang, which uses internal rolling variance) support configurable smoothing through 10 filter types. Using Infinite Impulse Response (IIR) filters instead of SMA avoids the "drop-off artefact" where volatility readings crash when old spikes exit the window.
Example: Same estimator (Parkinson) with different smoothing filters
Add two instances of Volatility Toolkit to your chart:
• Instance 1: Parkinson with SMA smoothing (lookback 14)
• Instance 2: Parkinson with Super Smoother 2-Pole (lookback 14)
Notice how SMA creates sharp drops when volatile bars exit the window, while Super Smoother maintains a gradual transition.
↑ Two Parkinson estimators — SMA (red mono-colour, showing drop-off artefacts) vs Super Smoother (turquoise mono colour, with smooth transitions)
↑ Garman-Klass with BiQuad (orangy) and 2-pole SuperSmoother filters (greenish)
💮 Weighted Aggregation
Combine multiple estimators into a single weighted average. The indicator automatically:
• Validates scale compatibility (only same-scale estimators can be aggregated)
• Normalises weights (so 2:1 means 67%:33%)
• Displays clear warnings when scales differ
Example: Robust volatility estimate
Combine Yang-Zhang (handles gaps) with Rogers-Satchell (handles drift) using equal weights:
• E1: Yang-Zhang (14)
• E2: Rogers-Satchell (14)
• Aggregation: Enabled, weights 1:1
The aggregated line (with "fill to zero" enabled) provides a more robust estimate by averaging two complementary methodologies.
↑ Yang-Zhang + Rogers-Satchell with aggregation line (thicker) showing combined estimate (notice how opening gaps are handled differently)
Example: Trend-weighted aggregation
In strongly trending markets, weight Rogers-Satchell more heavily since it's drift-independent:
• Estimator 1: Garman-Klass (faster, higher weight in ranging)
• Estimator 2: Rogers-Satchell (drift-independent, higher weight in trends)
• Aggregation: weights 1:2 (favours RS during trends)
💮 Adaptive Threshold Detection
Three threshold modes for identifying volatility regime shifts. Threshold breaches are visualised with intensity-scaled fills that grow stronger the further volatility exceeds the threshold.
Example: Dynamic thresholds for regime detection
Configure dynamic thresholds to automatically adapt to market conditions:
• High Threshold Mode: Dynamic (baseline + 2× std dev)
• Low Threshold Mode: Dynamic (baseline - 2× std dev)
• Show threshold fills: Enabled
This creates adaptive bands that widen during volatile periods and narrow during calm periods.
Example: Percentile-based thresholds
Use percentile mode for context-aware regime detection:
• High Threshold Mode: Percentile (96th)
• Low Threshold Mode: Percentile (4th)
• Percentile Lookback: 500
This identifies when volatility enters the top/bottom 4% of its recent distribution.
↑ Different threshold settings, where the dynamic and percentile methods show adaptive bands that widen during volatile periods, with fill intensity varying by breach magnitude. Regime detection (see next) is enabled too.
💮 Regime Background Colouring
Optional background colouring indicates the current volatility regime:
• High Volatility — Warm/alert background colour
• Normal — No background (neutral)
• Low Volatility — Cool/calm background colour
Select which source (Estimator 1, Estimator 2, or Aggregation) drives the regime display.
Example: Regime filtering for trade decisions
Use regime background to filter trading signals from other indicators:
• Regime Source: Aggregation
• Background Transparency: 90 (subtle)
When the background shows HIGH volatility (warm), consider tighter stops. When LOW (cool), watch for breakout setups.
↑ Regime background emphasis for breakout strategies. Note the interesting A2RMA smoothing for this case.
🌸 --------- USAGE GUIDE --------- 🌸
💮 Getting Started
1. Add the indicator to your chart
2. Estimator 1 defaults to Yang-Zhang (14) — the most comprehensive estimator for gapped markets
3. Keep "Annualise Volatility" enabled to express values in standard annualised form
4. Observe the legend table for current values and percentile ranks (P##). Hover over the table cells to see a little more info in the tooltip.
💮 Choosing an Estimator
• Trending equities with gaps — Yang-Zhang. Handles both drift and overnight gaps optimally.
• Crypto (24/7 trading) — Rogers-Satchell. Drift-independent without Yang-Zhang's multi-period lag.
• Ranging markets — Garman-Klass or Parkinson. Simpler, no drift adjustment needed.
• Price-based stops — ATR. Output in price units, directly usable for stop distances.
• Regime detection — Combine any estimator with threshold modes enabled.
💮 Interpreting Output
• Value (P##) — The volatility reading with percentile rank. "0.1523 (P75)" means 0.1523 annualised volatility at the 75th percentile of recent history.
• Colour gradient — Warmer colours = higher percentile (elevated volatility), cooler colours = lower percentile.
• Threshold fills — Intensity indicates how far beyond the threshold the current reading is.
• ⚠️ HIGH / 🔻 LOW — Table indicators when thresholds are breached.
🌸 --------- ALERTS --------- 🌸
💮 Direction Change Alerts
• Estimator 1/2 direction change — Triggers when volatility inflects (rising to falling or vice versa)
💮 Cross Alerts
• E1 crossed E2 — Triggers when the two estimator lines cross
💮 Threshold Alerts
• E1/E2/Aggr High Volatility — Triggers when volatility breaches the high threshold
• E1/E2/Aggr Low Volatility — Triggers when volatility falls below the low threshold
💮 Regime Change Alerts
• E1/E2/Aggr Regime Change — Triggers when the volatility regime transitions (High ↔ Normal ↔ Low)
🌸 --------- LIMITATIONS --------- 🌸
• Drift bias in Parkinson/GK — These estimators overestimate variance in trending conditions. Switch to Rogers-Satchell or Yang-Zhang for trending markets.
• Yang-Zhang minimum lookback — Requires at least 2 bars (enforced internally). Cannot produce instantaneous readings like other estimators.
• Flat candles — Single-tick bars produce near-zero variance readings. Use higher timeframes for illiquid assets.
• Discretisation bias — Estimates degrade when ticks-per-bar is very small. Consider higher timeframes for thinly traded instruments.
• Scale mixing — Different scale groups (log-return, price unit, percentage) cannot be meaningfully compared or aggregated. The indicator warns but does not prevent display.
🌸 --------- CREDITS --------- 🌸
💮 Academic Sources
• Parkinson, M. (1980). The Extreme Value Method for Estimating the Variance of the Rate of Return. Journal of Business, 53 (1), 61–65. DOI
• Garman, M.B. & Klass, M.J. (1980). On the Estimation of Security Price Volatilities from Historical Data. Journal of Business, 53 (1), 67–78. DOI
• Rogers, L.C.G. & Satchell, S.E. (1991). Estimating Variance from High, Low and Closing Prices. Annals of Applied Probability, 1 (4), 504–512. DOI
• Yang, D. & Zhang, Q. (2000). Drift-Independent Volatility Estimation Based on High, Low, Open, and Close Prices. Journal of Business, 73 (3), 477–491. DOI
• Wilder, J.W. (1978). New Concepts in Technical Trading Systems . Trend Research.
💮 Libraries Used
• VolatilityToolkit Library — Range-based estimators, smoothing, and aggregation functions
• FiltersToolkit Library — Advanced smoothing filters (Super Smoother, Ultimate Smoother, BiQuad, etc.)
• ColourUtilities Library — Colour palette management and gradient calculations
VIXO - VIX OscillatorVIXO (VIX Oscillator) is a volatility oscillator built from the CBOE Volatility Index (symbol: TVC:VIX). It helps visualize volatility regime shifts by combining a smoothed VIX RSI with a normalized VIX momentum component, plus a VIX histogram that becomes more/less prominent depending on how far VIX is from its moving average. It helps you assess whether market conditions may be approaching rare but powerful squeeze phases.
WHAT THIS INDICATOR PLOTS
1) VIX RSI (cyan line)
- RSI is calculated on the VIX close and then smoothed (SMA) to reduce noise.
- Use it to observe short-term momentum in volatility rather than price.
2) VIX Normalized Momentum (gray line)
- Momentum is measured as ROC (rate of change) of the VIX close.
- That ROC is normalized to a 0–100 scale using a rolling lookback window:
- 50 is the midpoint of the recent momentum range (neutral within the selected window).
- Values near 0/100 indicate momentum near the low/high of that lookback window.
3) VIX Value Bars (histogram)
- Histogram shows the raw VIX value.
- Bar visibility is dynamically adjusted (transparency changes) based on the ratio of VIX to its 21-period SMA:
- When VIX is close to its MA, bars are more transparent.
- When VIX deviates more from its MA (within a capped range), bars become more visible.
- If VIX High is below 30, the script intentionally keeps bars fully transparent to reduce visual clutter.
LEVELS (REFERENCE ONLY)
The horizontal levels are visual guides to help segment oscillator zones. They are not guarantees and should not be treated as standalone trade signals:
- 80: “Panic of Market”
- 60: “VIX says BUY” (label only; not financial advice)
- 50: “Neutral / Momentum Mid”
- 40: “Get Ready”
HOW TO USE
- Apply VIXO to any chart. The indicator always pulls TVC:VIX data, regardless of the chart symbol.
- Typical interpretation:
- Rising VIX RSI and/or rising normalized momentum can indicate increasing volatility pressure.
- Falling readings can indicate volatility easing.
- Compare changes in VIXO with your chart’s price structure, trend filters, or risk management framework.
INPUTS
- RSI Length: RSI period on VIX close (smoothed afterward).
- Momentum Length: ROC period on VIX close.
- Momentum Normalization Lookback: window used to scale ROC into 0–100.
DATA & BEHAVIOR NOTES
- Data source: request.security("TVC:VIX", timeframe.period, OHLC).
- The script does not use lookahead to access future data.
- On realtime bars, values can update while the current bar is forming; historical bars remain fixed once closed.
- Availability of TVC:VIX data depends on your TradingView data access.
IMPORTANT DISCLAIMER
This indicator is provided for educational and informational purposes only and does not constitute financial, investment, or trading advice. It does not predict the future, does not guarantee results, and should not be used as the sole basis for any trading decision. Always validate signals with additional analysis and use appropriate risk management.
Compression-to-Expansion Early Warning (CEEWS)The Compression → Expansion Early Warning System (CEEWS) is a volatility-structure and market-timing indicator designed to identify periods of statistical price compression and to signal when that compression transitions into directional expansion. Rather than predicting direction in advance, CEEWS focuses on detecting when price action becomes tightly constrained and then confirms when stored energy begins to release.
CEEWS quantifies compression using a composite of volatility contraction, range tightening, candle overlap, and reference-level convergence, producing a normalized Build score (0–100) that reflects the degree of latent price pressure. Elevated Build values indicate that the market is coiled and increasingly susceptible to movement, while expansion signals occur only when volatility begins to expand and price breaks from its recent range.
The indicator is intended as a timing and transition tool, not a standalone trend or directional system. CEEWS is most effective when paired with broader regime or trend-health indicators and is particularly well suited for index funds and highly liquid markets, where prolonged consolidation phases often precede sharp directional moves. Its primary purpose is to help traders identify when the market is likely to move, not to forecast where it will go.
[CT] Daily & Weekly Percentage Price Oscillator Daily & Weekly Percentage Price Oscillator, or D&W PPO, is a dual-speed momentum oscillator that blends a slower “weekly-style” percentage oscillator with a faster “daily-style” percentage oscillator, then turns the relationship between them into a clean histogram that is easy to trade. The script builds four EMAs from the chart’s close. The first pair, L1 and L2, is used to create the W component, which behaves like a slow, higher-timeframe trend pressure line. W is calculated as the percentage distance between EMA(L1) and EMA(L2), normalized by EMA(L2). When W is rising and positive, it tells you the broader momentum is expanding upward, and when W is falling and negative, the broader momentum is expanding downward. The second pair, L3 and L4, creates the D component, which behaves like a faster, lower-timeframe momentum pulse, also expressed as a percentage but normalized by the same EMA(L2), so both components share a consistent “scale.” The script then combines them into R = W + D, which represents the total blended momentum, where W supplies the slow structure and D supplies the fast impulse.
The indicator is plotted as a histogram using “R − W,” and that choice is intentional. Because R = W + D, the histogram value “R − W” is mathematically identical to D. In other words, the columns you see are the fast momentum component, but anchored to a clear baseline that reflects whether the fast component is adding to, or subtracting from, the slower component’s trend context. The zero line is the equilibrium point where R equals W, meaning the fast component is neutral relative to the slow trend context. When the histogram is above zero, the fast component is contributing positive momentum and the script colors the columns with the Bull color, indicating that R is above W and the short-term push is aligned to the upside. When the histogram is below zero, the fast component is contributing negative momentum and the script colors the columns with the Bear color, indicating that R is below W and the short-term push is aligned to the downside. If you enable “Color price bars,” the chart candles are painted with the same logic so you can visually stay in sync with the fast momentum regime without staring at the panel.
How to trade it comes down to treating the histogram as your actionable trigger layer and using its behavior around the zero line as the decision boundary. A basic long framework is to prioritize long trades when the histogram is above zero and either expanding or printing consecutive positive columns, because that tells you the fast momentum pulse is supportive and not fighting the current regime. The cleanest long entries usually occur when the histogram flips from negative to positive and holds above zero for at least a bar or two, because that transition often marks the shift from pullback pressure into renewed upside impulse. You can add selectivity by watching for a “dip and re-strengthen” pattern above zero: after a positive run, the histogram contracts toward the baseline without breaking materially below it, then turns back up, which often corresponds to a controlled pullback followed by continuation. A basic short framework is the mirror image: prioritize shorts when the histogram is below zero and expanding downward, and treat flips from positive to negative that hold below zero as the higher-quality transition into downside impulse. In both directions, the histogram is especially useful for avoiding trades during momentum dead zones, because when columns chop tightly around the zero line with frequent flips, it is signaling indecision and a lack of clean directional impulse, which is where most “false starts” tend to happen.
Risk management with this tool is straightforward because the oscillator gives you a natural invalidation concept. For long trades, a common invalidation is the histogram losing the zero line and staying negative, since that indicates the fast component has turned from supportive to opposing. For short trades, invalidation is the histogram regaining the zero line and holding positive. Another practical way to manage trades is to use histogram contraction as an early warning that the impulse is weakening. If you are long and positive columns begin to shrink toward zero for several bars, you can tighten risk, take partials, or wait for a fresh expansion before adding. If you are short and negative columns begin to shrink toward zero, the same concept applies. The optional W line can be shown if you want a visual anchor of the slow component; while the histogram is already built to reflect the fast component relative to the slow context, viewing W can help you quickly recognize whether the larger momentum backdrop is generally rising or falling, which can be used as an additional bias filter for trade selection.
In practice, the D&W PPO is best used as a momentum alignment and timing tool: the slow component defines the “weather,” the fast component defines the “wind,” and the histogram tells you whether the wind is pushing with the weather or pushing against it. When the histogram is cleanly one-sided and expanding, it supports continuation-style trading and trend-following entries. When the histogram is choppy around zero, it warns you that conditions are rotational and patience usually pays.
Minervini Ultimate +VCPMinervini Ultimate Suite (SEPA Dashboard)
This indicator implements Mark Minervini's "Trend Template" criteria combined with a Volatility Contraction Pattern (VCP) detector and a custom Relative Strength rating. It is designed to help traders visualize the technical health of a stock based on stage analysis concepts.
This indicator serves as a complete Control System (Dashboard) for Mark Minervini's SEPA trading strategy. Instead of manually checking five different metrics on every chart, this indicator performs the mathematical calculations and presents the "bottom line" in a single, organized table.
1. What This Indicator Does
The goal is to ensure you never enter a trade blindly. It verifies the stock against Minervini's strict requirements:
Trend: Is the stock in a healthy Stage 2 Uptrend?
Relative Strength: Is it stronger than the general market?
Buy Risk: Is it the right time to buy, or is the price extended?
Pressure: Are institutions accumulating or distributing?
VCP: Is there a breakout opportunity (volatility contraction) right now?
2. Key Benefits
Time-Saving: Instead of drawing lines and calculating percentages manually, you get immediate visual feedback (Green/Red).
Discipline: The indicator will flag "Extended" (Red) if you attempt to buy a stock that has run up too much, saving you from late entries and unnecessary losses.
Precision Timing: The VCP feature (Blue Dots) helps you identify the "calm before the storm"—the exact moment volatility contracts, which often precedes a major breakout.
3. Indicator Parameters & Features
A. Minervini Pressure (Buying vs. Selling)
What it checks: Money flow over the last 20 days.
Calculation: Sums up volume on "Up Days" (Green) versus volume on "Down Days" (Red).
Meaning:
🟢 Buying: More money is entering than leaving. A sign of institutional accumulation.
🔴 Selling: Selling pressure dominates. The price may be rising, but without strong volume backing.
B. Buy Risk (Price Extension)
What it checks: The distance of the current price from the 50-Day Moving Average. Minervini strictly warns against "chasing" stocks.
Signals:
🟢 Low Risk: Price is within 0% – 15% of the 50MA. This is the ideal "Buy Zone".
🟡 Caution: Price is 15% – 25% away. Buy with increased caution.
🔴 Extended: Price is >25% from the MA. Do not buy. The probability of a pullback is high.
⚪ Broken: Price is below the 50MA. The short-term trend is damaged.
C. TPR - Trend Template (Trend Power Rating)
What it checks: Is the stock in a Stage 2 Uptrend?
Strict Rules (All must be true for a PASS):
Price > 50MA > 150MA > 200MA.
The 200MA is trending UP (positive slope).
Price is near the 52-Week High (within 25%).
Price is above the 52-Week Low (at least 25%).
Meaning:
🟢 PASSED: Technically healthy and ready to move.
🔴 FAILED: The trend structure is broken (e.g., MAs are entangled).
D. RPR Score (Relative Performance Rating)
What it checks: How strong the stock is compared to the general market (S&P 500 / SPY).
Calculation: Weighted performance over 3, 6, 9, and 12 months vs. the SPY. The score ranges from 1 to 99.
Meaning:
🟢 80-99: Market Leader. These are the stocks Minervini targets.
🟡 70-80: Good, but not elite.
⚪ Below 70: Laggard (weaker than the market).
E. VCP Action (Volatility Contraction Pattern)
What it checks: Monitors price tightness. It calculates the range between the highest close and lowest close over the last 5 days.
Meaning:
🔵 SQUEEZE (Blue Text + Blue Dot on Chart): The price range has contracted to less than 2.5%.
Why it matters: When a stock stops moving wildly and trades in a tight range ("Flat Line"), it indicates supply has dried up. A high-volume breakout often follows immediately.
Adaptive Quant RSI [ML + MTF]This is an advanced momentum indicator that integrates Machine Learning (K-Means Clustering) with Multi-Timeframe (MTF) analysis. Unlike traditional RSI which uses fixed 70/30 levels, this script dynamically calculates support and resistance zones based on real-time historical data distribution.
Key Features:
🤖 ML Dynamic Thresholds: Uses K-Means clustering to segment RSI data into clusters, automatically plotting dynamic long/short thresholds that adapt to market volatility.
⏳ MTF Trend Background: The background color changes based on a Higher Timeframe (e.g., 5-min) RSI trend, helping you align with the broader market direction.
📊 Extreme Statistics: Incorporates percentile analysis (95th/5th) and historical pivots to identify extreme overbought/oversold conditions with high reversal probability.
📈 Probability Analysis: Displays the statistical probability of the current RSI value being at the top or bottom of its historical range.
Usage: Look for confluence between the dynamic ML thresholds and the MTF background color to identify high-probability reversal setups.
IV Rank & Percentile Suite V1.0What This Indicator Does
The IV Rank & Percentile Suite provides the volatility context options traders need to time entries. It calculates two complementary metrics—IV Rank and IV Percentile—using historical volatility as a proxy, then displays clear visual zones to identify favorable conditions for premium selling strategies.
Stop guessing if volatility is "high" or "low." This indicator tells you exactly where current volatility sits relative to recent history.
The Two Metrics Explained
IV Rank (0-100) Measures where current volatility sits within its 52-week high-low range.
IV Rank = (Current HV - 52w Low) / (52w High - 52w Low) × 100
70 means current volatility is 70% of the way between the yearly low and high
Sensitive to extreme spikes (a single high reading affects the range)
IV Percentile (0-100) Measures what percentage of days in the lookback period had lower volatility than today.
IV Percentile = (Days with lower HV / Total days) × 100
70 means volatility was lower than today on 70% of days in the past year
More stable, less affected by outlier spikes
Why Both?
IV Rank reacts faster to volatility changes. IV Percentile is more stable and statistically robust. When both agree (e.g., both above 50), you have stronger confirmation. Divergence between them can signal transitional periods.
Zone System
The indicator divides readings into three zones:
Zone ------- Default Range ---- Meaning ------------------ Premium Selling
🟢 High ≥ 50 Elevated volatility Favorable
🟡 Neutral 25-50 Normal volatility Selective
🔴 Low ≤ 25 Compressed volatility Avoid
An additional Extreme threshold (default 75) highlights prime conditions when volatility is significantly elevated.
Zone thresholds are fully customizable in settings.
How to Use It
For Premium Sellers (Iron Condors, Credit Spreads, Strangles)
Wait for IV Rank to enter the green zone (≥50)
Confirm IV Percentile agrees (also elevated)
Enter premium selling positions when both metrics align
Avoid initiating new positions when in the red zone
For Premium Buyers (Long Options, Debit Spreads)
Low IV Rank/Percentile means cheaper options
Red zone can favor directional debit strategies
Avoid buying premium when both metrics are in the green zone
General Principle:
Sell premium when volatility is high (it tends to revert to mean). Buy premium when volatility is low (if you have a directional thesis).
Inputs
Volatility Calculation
HV Period — Lookback for historical volatility calculation (default: 20)
Trading Days/Year — 252 for stocks, 365 for crypto
Lookback Periods
IV Rank Lookback — Period for high/low range (default: 252 = 1 year)
IV Percentile Lookback — Period for percentile calculation (default: 252)
Zone Thresholds
High IV Zone — Readings above this are highlighted green (default: 50)
Low IV Zone — Readings below this are highlighted red (default: 25)
Extreme High — Threshold for "prime" conditions alert (default: 75)
Display Options
Toggle IV Rank, IV Percentile, and raw HV display
Show/hide zone backgrounds
Show/hide info panel
Panel position selection
Info Panel
The panel displays:
Field ------- Description
IV Rank ------- Current reading with color coding
IV Pctl ------- Current percentile with color coding
HV 20d ------- Raw historical volatility percentage
52w Range ------- Lowest to highest HV in lookback period
Zone ------- Current zone status
Premium ------- Signal quality for premium selling
Lookback ------- Days used for calculations
R/P Spread ------- Difference between Rank and Percentile
Alerts
Six alerts are available:
Zone Transitions
IV Entered High Zone — Favorable for premium selling
IV Reached Extreme Levels — Prime conditions
IV Dropped to Low Zone — Caution for premium sellers
Threshold Crosses
IV Rank Crossed Above High Threshold
IV Rank Crossed Below Low Threshold
IV Percentile Above 75
IV Percentile Below 25
Set up alerts to get notified when conditions change without watching charts.
Technical Notes
Volatility Calculation Method
This indicator uses close-to-close historical volatility as an IV proxy:
Calculate log returns: ln(Close / Previous Close)
Take standard deviation over HV Period
Annualize: multiply by √(Trading Days)
This method correlates well with implied volatility for most liquid instruments. On highly liquid options underlyings (SPY, QQQ, major stocks), HV and IV tend to move together, making this a reliable proxy for IV Rank analysis.
Non-Repainting
All calculations use confirmed bar data. Values are fixed once a bar closes.
Lookback Requirement
The indicator needs sufficient history to calculate accurately. For a 252-day lookback, ensure your chart has at least 300+ bars of data.
Best Used On
ETFs: SPY, QQQ, IWM, DIA
Indices: SPX, NDX
High-volume stocks: AAPL, TSLA, NVDA, AMD, META
Timeframe: Daily (recommended), Weekly for longer-term view
The indicator works on any instrument but is most meaningful on underlyings with active options markets.
Important Notes
⚠️ This indicator uses historical volatility as a proxy for implied volatility. While HV and IV are correlated, they are not identical. For precise IV data, consult your options broker's platform.
⚠️ High IV Rank does not guarantee profitable premium selling. It indicates favorable conditions, not guaranteed outcomes. Position sizing and risk management remain essential.
⚠️ Past volatility patterns do not guarantee future behavior. Volatility regimes can shift, and historical ranges may not predict future ranges.
Suggested Workflow
Add to daily chart of your preferred underlying
Set up alert for "IV Entered High Zone"
When alerted, check both IV Rank and IV Percentile
If both elevated, evaluate premium selling opportunities
Use your broker's actual IV data for final entry decisions
Questions? Leave a comment below.
Apex Adaptive Trend Navigator [Pineify]Apex Adaptive Trend Navigator
The Apex Adaptive Trend Navigator is a comprehensive trend-following indicator that combines adaptive moving average technology, dynamic volatility bands, and market structure analysis into a single, cohesive trading tool. Designed for traders who want to identify trend direction with precision while filtering out market noise, this indicator adapts its sensitivity based on real-time market efficiency calculations.
Key Features
Adaptive Moving Average with efficiency-based smoothing factor
Dynamic ATR-based volatility bands that expand and contract with market conditions
Market Structure detection including BOS (Break of Structure) and CHoCH (Change of Character)
Real-time performance dashboard displaying trend status and efficiency metrics
Color-coded cloud visualization for intuitive trend identification
How It Works
The core of this indicator is built on an Adaptive Moving Average that uses a unique efficiency-based calculation method inspired by the Kaufman Adaptive Moving Average (KAMA) and TRAMA concepts. The efficiency ratio measures the directional movement of price relative to total price movement over the lookback period:
Efficiency = |Price Change over N periods| / Sum of |Individual Bar Changes|
This ratio ranges from 0 to 1, where values closer to 1 indicate a strong trending market with minimal noise, and values closer to 0 indicate choppy, sideways conditions. The smoothing factor is then squared to penalize noisy markets more aggressively, causing the adaptive line to flatten during consolidation and respond quickly during strong trends.
The Dynamic Volatility Bands are calculated using the Average True Range (ATR) multiplied by a user-defined factor. These bands create a channel around the adaptive moving average, helping traders visualize the current volatility regime and potential support/resistance zones.
Trading Ideas and Insights
When price stays above the adaptive line with the bullish cloud forming, consider this a confirmation of uptrend strength
The efficiency percentage in the dashboard indicates trend quality - higher values suggest more reliable trends
Watch for price interactions with the upper and lower bands as potential reversal or continuation zones
A flat adaptive line indicates consolidation - wait for a clear directional break before entering trades
How Multiple Indicators Work Together
This indicator integrates three complementary analytical approaches:
The Adaptive Moving Average serves as the trend backbone, providing a dynamic centerline that automatically adjusts to market conditions. Unlike fixed-period moving averages, it reduces lag during trends while minimizing whipsaws during ranging markets.
The ATR Volatility Bands work in conjunction with the adaptive MA to create a volatility envelope. When the adaptive line is trending and price remains within the cloud (between the MA and outer band), this confirms trend strength. Price breaking through the opposite band may signal exhaustion or reversal.
The Market Structure Analysis using swing point detection adds a Smart Money Concepts (SMC) layer. BOS signals indicate trend continuation when price breaks previous swing highs in uptrends or swing lows in downtrends. CHoCH signals warn of potential reversals when the structure shifts against the prevailing trend.
Unique Aspects
The squared efficiency factor creates a non-linear response that dramatically reduces noise sensitivity
Cloud fills only appear on the trend side, providing clear visual distinction between bullish and bearish regimes
The integrated dashboard eliminates the need to switch between multiple indicators for trend assessment
Pivot-based swing detection ensures accurate market structure identification
How to Use
Add the indicator to your chart and adjust the Lookback Period based on your trading timeframe (shorter for scalping, longer for swing trading)
Monitor the cloud color - green clouds indicate bullish conditions, red clouds indicate bearish conditions
Use the efficiency reading in the dashboard to gauge trend reliability before entering positions
Consider entries when price pulls back to the adaptive line during strong trends (high efficiency)
Use the volatility bands as dynamic take-profit or stop-loss reference levels
Customization
Lookback Period : Controls the sensitivity of trend detection and swing point identification (default: 20)
Volatility Multiplier : Adjusts the width of the ATR bands (default: 2.0)
Show Market Structure : Toggle visibility of BOS and CHoCH labels
Show Performance Dashboard : Toggle the trend status table
Color Settings : Customize bullish, bearish, and neutral colors to match your chart theme
Conclusion
The Apex Adaptive Trend Navigator offers traders a sophisticated yet intuitive approach to trend analysis. By combining adaptive smoothing technology with volatility measurement and market structure concepts, it provides multiple layers of confirmation for trading decisions. Whether you are a day trader seeking quick trend identification or a swing trader looking for reliable trend-following signals, this indicator adapts to your market conditions and trading style. The efficiency-based calculations ensure you always know not just the trend direction, but also the quality and reliability of that trend.
Liquidation Bubbles [OmegaTools]🔴🟢 Liquidation Bubbles — Advanced Volume & Price Stress Detector
Liquidation Bubbles is a professional-grade analytical tool designed to identify forced positioning events, stop-runs, and liquidation clusters by combining price displacement and volume imbalance into a single, statistically normalized framework.
This indicator is not a repainting signal tool and not a simple volume spike detector. It is a contextual market stress mapper, built to highlight areas where one-sided positioning becomes unstable and the probability of forced order execution (liquidations, stops, margin calls) materially increases.
---
## 🔬 Core Concept
Market liquidations do not occur randomly.
They emerge when price deviates aggressively from its volume-weighted equilibrium while volume itself becomes abnormal.
Liquidation Bubbles detects exactly this condition by:
* Estimating a **dynamic equilibrium price** using an *inverted volume-weighted moving average*
* Measuring **directional price stress** relative to that equilibrium
* Measuring **volume stress** relative to its own adaptive baseline
* Normalizing both into **Z-score–like metrics**
* Highlighting only **statistically extreme, asymmetric events**
The result is a clear visual map of stress points where market participants are most vulnerable.
---
⚙️ Methodology (How It Works)
1️⃣ Advanced Inverted VWMA (Equilibrium Engine)
The script uses a custom Advanced VWMA, where:
* High volume bars receive less weight
* Low volume bars receive more weight
This produces a **robust equilibrium level**, resistant to manipulation and volume bursts.
This equilibrium is used for **both price and volume normalization**, creating a consistent statistical framework.
---
2️⃣ Price Stress (Directional)
Price stress is calculated as:
* The **maximum deviation** between high/low and equilibrium
* Directionally signed (upside vs downside)
* Normalized by its own historical volatility
This allows the script to distinguish:
* Aggressive upside exhaustion
* Aggressive downside capitulation
---
3️⃣ Volume Stress
Volume stress is measured as:
* Deviation from volume equilibrium
* Normalized by historical volume dispersion
This filters out:
* Normal high-volume sessions
* Illiquid noise
And isolates abnormal participation imbalance.
---
4️⃣ Liquidation Logic
A liquidation event is flagged when:
* Both price stress and volume stress exceed adaptive thresholds
* The imbalance is directional and statistically extreme
Optional Combined Score Mode allows aggregation of price & volume stress into a single composite metric for smoother signals.
---
🔵 Bubble System (Signal Hierarchy)
The indicator plots **two tiers of bubbles**:
🟢🔴 Small Bubbles
* Early warning stress points
* Localized stop-runs
* Micro-liquidations
* Often precede reactions or short-term reversals
🟢🔴 Big Bubbles
* Full liquidation clusters
* Forced unwinds
* High probability exhaustion zones
* Frequently align with:
* Intraday extremes
* Range boundaries
* Reversal pivots
* Volatility expansions
Bubble color:
* **Green** → Downside liquidation (sell-side exhaustion)
* **Red** → Upside liquidation (buy-side exhaustion)
Bubble placement is **ATR-adjusted**, ensuring visual clarity without overlapping price.
---
🔄 Cross-Market Volume Analysis
The script allows optional **external volume sourcing**, enabling:
* Futures volume applied to CFDs
* Index volume applied to ETFs
* Spot volume applied to derivatives
This is critical when:
* Your traded instrument has unreliable volume
* You want **institutional-grade confirmation**
---
🧠 How to Use Liquidation Bubbles
This indicator is **not meant to be traded alone**.
Best use cases:
* 🔹 Confluence with support & resistance
* 🔹 Contextual confirmation for reversals
* 🔹 Identifying fake breakouts
* 🔹 Liquidity sweep detection
* 🔹 Risk management (avoid entering into liquidation zones)
Ideal for:
* Futures
* Indices
* Crypto
* High-liquidity FX pairs
* Intraday & swing trading
---
🎯 Who This Tool Is For
Liquidation Bubbles is designed for:
* Advanced discretionary traders
* Order-flow & liquidity-based traders
* Macro & index traders
* Professionals seeking **context**, not signals
If you want **where the market is fragile**, not just where price moved — this tool was built for you.
---
📌 Key Characteristics
✔ Non-repainting
✔ Statistically normalized
✔ Adaptive to volatility
✔ Works on all timeframes
✔ Futures & crypto ready
✔ No lagging indicators
✔ No moving average crosses
---
Liquidation Bubbles does not predict the future.
It shows you where the market is most likely to break.
— OmegaTools
Zenith MACD Evolution [JOAT]
Zenith MACD Evolution - Volatility-Normalized Momentum Oscillator
Introduction and Purpose
Zenith MACD Evolution is an open-source oscillator indicator that takes the classic MACD and normalizes it by ATR (Average True Range) to create consistent overbought/oversold levels across different market conditions. The core problem this indicator solves is that traditional MACD values are incomparable across different volatility regimes. A MACD reading of 50 might be extreme in a quiet market but normal in a volatile one.
This indicator addresses that by dividing MACD by ATR and scaling to a consistent range, allowing traders to use fixed overbought/oversold levels that work across all market conditions.
Why ATR Normalization Works
Traditional MACD problems:
- Values vary wildly based on price and volatility
- No consistent overbought/oversold levels
- Hard to compare across different instruments
- Extreme readings in one period may be normal in another
ATR-normalized MACD (Zenith) solves these:
- Values scaled to consistent range
- Fixed overbought/oversold levels work across all conditions
- Comparable across different instruments
- Extreme readings are truly extreme regardless of volatility
How the Normalization Works
// Classic MACD
= ta.macd(close, fastLength, slowLength, signalLength)
// ATR for normalization
float atrValue = ta.atr(atrNormLength)
// Volatility-Normalized MACD
float zenithMACD = atrValue != 0 ? (histLine / atrValue) * 100 : 0
float zenithSignal = ta.ema(zenithMACD, signalLength)
The result is a MACD that typically ranges from -200 to +200, with consistent levels:
- Above +150 = Overbought
- Below -150 = Oversold
- Above +200 = Extreme overbought
- Below -200 = Extreme oversold
Signal Types
Zero Cross Up/Down - Zenith crosses zero line (trend change)
Overbought/Oversold Entry - Zenith enters extreme zones
Overbought/Oversold Exit - Zenith leaves extreme zones (potential reversal)
Momentum Shift - Histogram direction changes (early warning)
Divergence - Price makes new high/low but Zenith does not
Histogram Coloring
The histogram uses four colors to show momentum state:
- Strong Bull (Teal) - Positive and rising
- Weak Bull (Light Teal) - Positive but falling
- Strong Bear (Red) - Negative and falling
- Weak Bear (Light Red) - Negative but rising
This helps identify momentum shifts before crossovers occur.
Dashboard Information
Zenith - Current normalized MACD value with signal line
Zone - Current zone (EXTREME OB/OVERBOUGHT/NORMAL/OVERSOLD/EXTREME OS)
Momentum - Direction (RISING/FALLING/FLAT)
Histogram - Current histogram value
ATR Norm - Current ATR value used for normalization
Classic - Traditional MACD value for reference
How to Use This Indicator
For Mean-Reversion:
1. Wait for Zenith to reach extreme zones (+200/-200)
2. Look for momentum shift (histogram color change)
3. Enter counter-trend when exiting extreme zone
For Trend Following:
1. Enter long on zero cross up
2. Enter short on zero cross down
3. Use histogram color to gauge momentum strength
For Divergence Trading:
1. Watch for DIV labels (price vs Zenith divergence)
2. Bullish divergence at support = potential long
3. Bearish divergence at resistance = potential short
Input Parameters
Fast/Slow/Signal Length (12/26/9) - Standard MACD parameters
ATR Normalization Period (26) - Period for ATR calculation
Overbought/Oversold Zone (150/-150) - Zone thresholds
Extreme Level (200) - Extreme threshold
Show Classic MACD Lines (false) - Toggle traditional lines
Show Divergence Detection (true) - Toggle divergence signals
Divergence Lookback (14) - Bars to scan for divergence
Timeframe Recommendations
All timeframes work due to normalization
Higher timeframes provide smoother signals
Normalization makes cross-timeframe comparison meaningful
Limitations
ATR normalization adds slight lag
Divergence detection is simplified
Extreme zones can persist in strong trends
Works best when combined with price action analysis
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes.
This indicator does not constitute financial advice. Momentum analysis does not guarantee profitable trades. Always use proper risk management.
- Made with passion by officialjackofalltrades
Strength Relative to XXX [Hysteresis Smoothed]Strength Relative to XXX
█ OVERVIEW
This versatile indicator measures the relative strength of the current charted asset against any user-selected benchmark symbol (e.g., BTC, ETH, SP:SPX, TVC:GOLD, or any other asset). Green fill = Current asset outperforming the benchmark (bullish relative strength).
Red fill = Current asset underperforming the benchmark (bearish relative weakness). Perfect for rotation strategies across crypto, stocks, forex, and commodities — quickly identify assets gaining momentum edge over a chosen benchmark.
█ HOW IT WORKS
• Relative Ratio : Calculates current close / benchmark close for normalized comparison.
• Smoothing : Applies a Simple Moving Average (SMA) to the ratio (adjustable length).
• Oscillator : Plots deviation from the SMA, centered around zero.
• Hysteresis Enhancement : Adds a small relative threshold (~0.03% default) to prevent rapid color flips from minor noise. Color persists until a convincing cross — stable blocks without lag.
█ FEATURES & INPUTS
• Compare to : Symbol input for any benchmark (match exchange for accuracy).
• MA Length : Smoothing period (default 10).
• Relative Hysteresis Threshold : Noise filter strength (default 0.0003; tweak for responsiveness vs. stability).
█ USAGE TIPS
• Apply to ALT/BTC pairs for crypto rotations, stocks vs. SP:SPX for sector strength, or any custom comparison.
• Works on all timeframes — ideal for short-term scans on 4H/daily.
• Green zones = potential outperformance; red = caution.
• Combine with volume or momentum for confluence.
This refined relative strength oscillator delivers clean, reliable visuals in volatile markets.
Volume-Weighted RSI [VWRSI 2D Pro]A modular, volume-weighted RSI indicator built for clarity and control.
✅ Profile-based auto modes (Scalping → Macro)
✅ Toggleable Buy/Sell signals with strict mode
✅ RSI MA overlays for smoother entries
Buy Signal
RSI crosses above RSI MA
RSI > 50 (or > 55 in strict mode)
Sell Signal
RSI crosses below RSI MA
RSI < 50 (or < 45 in strict mode)
Strict mode filters out weak signals for higher conviction entries.
Volatility-Adaptive RSI Thresholds:
Traditional RSI uses static levels (70/30).
VWRSI Pro replaces these with dynamic bands:
🔹dynHigh = mean + mult × deviation
🔹 dynLow = mean − mult × deviation
Technical write-up can be found here: github.com
Adaptive Market Wave TheoryAdaptive Market Wave Theory
🌊 CORE INNOVATION: PROBABILISTIC PHASE DETECTION WITH MULTI-AGENT CONSENSUS
Adaptive Market Wave Theory (AMWT) represents a fundamental paradigm shift in how traders approach market phase identification. Rather than counting waves subjectively or drawing static breakout levels, AMWT treats the market as a hidden state machine —using Hidden Markov Models, multi-agent consensus systems, and reinforcement learning algorithms to quantify what traditional methods leave to interpretation.
The Wave Analysis Problem:
Traditional wave counting methodologies (Elliott Wave, harmonic patterns, ABC corrections) share fatal weaknesses that AMWT directly addresses:
1. Non-Falsifiability : Invalid wave counts can always be "recounted" or "adjusted." If your Wave 3 fails, it becomes "Wave 3 of a larger degree" or "actually Wave C." There's no objective failure condition.
2. Observer Bias : Two expert wave analysts examining the same chart routinely reach different conclusions. This isn't a feature—it's a fundamental methodology flaw.
3. No Confidence Measure : Traditional analysis says "This IS Wave 3." But with what probability? 51%? 95%? The binary nature prevents proper position sizing and risk management.
4. Static Rules : Fixed Fibonacci ratios and wave guidelines cannot adapt to changing market regimes. What worked in 2019 may fail in 2024.
5. No Accountability : Wave methodologies rarely track their own performance. There's no feedback loop to improve.
The AMWT Solution:
AMWT addresses each limitation through rigorous mathematical frameworks borrowed from speech recognition, machine learning, and reinforcement learning:
• Non-Falsifiability → Hard Invalidation : Wave hypotheses die permanently when price violates calculated invalidation levels. No recounting allowed.
• Observer Bias → Multi-Agent Consensus : Three independent analytical agents must agree. Single-methodology bias is eliminated.
• No Confidence → Probabilistic States : Every market state has a calculated probability from Hidden Markov Model inference. "72% probability of impulse state" replaces "This is Wave 3."
• Static Rules → Adaptive Learning : Thompson Sampling multi-armed bandits learn which agents perform best in current conditions. The system adapts in real-time.
• No Accountability → Performance Tracking : Comprehensive statistics track every signal's outcome. The system knows its own performance.
The Core Insight:
"Traditional wave analysis asks 'What count is this?' AMWT asks 'What is the probability we are in an impulsive state, with what confidence, confirmed by how many independent methodologies, and anchored to what liquidity event?'"
🔬 THEORETICAL FOUNDATION: HIDDEN MARKOV MODELS
Why Hidden Markov Models?
Markets exist in hidden states that we cannot directly observe—only their effects on price are visible. When the market is in an "impulse up" state, we see rising prices, expanding volume, and trending indicators. But we don't observe the state itself—we infer it from observables.
This is precisely the problem Hidden Markov Models (HMMs) solve. Originally developed for speech recognition (inferring words from sound waves), HMMs excel at estimating hidden states from noisy observations.
HMM Components:
1. Hidden States (S) : The unobservable market conditions
2. Observations (O) : What we can measure (price, volume, indicators)
3. Transition Matrix (A) : Probability of moving between states
4. Emission Matrix (B) : Probability of observations given each state
5. Initial Distribution (π) : Starting state probabilities
AMWT's Six Market States:
State 0: IMPULSE_UP
• Definition: Strong bullish momentum with high participation
• Observable Signatures: Rising prices, expanding volume, RSI >60, price above upper Bollinger Band, MACD histogram positive and rising
• Typical Duration: 5-20 bars depending on timeframe
• What It Means: Institutional buying pressure, trend acceleration phase
State 1: IMPULSE_DN
• Definition: Strong bearish momentum with high participation
• Observable Signatures: Falling prices, expanding volume, RSI <40, price below lower Bollinger Band, MACD histogram negative and falling
• Typical Duration: 5-20 bars (often shorter than bullish impulses—markets fall faster)
• What It Means: Institutional selling pressure, panic or distribution acceleration
State 2: CORRECTION
• Definition: Counter-trend consolidation with declining momentum
• Observable Signatures: Sideways or mild counter-trend movement, contracting volume, RSI returning toward 50, Bollinger Bands narrowing
• Typical Duration: 8-30 bars
• What It Means: Profit-taking, digestion of prior move, potential accumulation for next leg
State 3: ACCUMULATION
• Definition: Base-building near lows where informed participants absorb supply
• Observable Signatures: Price near recent lows but not making new lows, volume spikes on up bars, RSI showing positive divergence, tight range
• Typical Duration: 15-50 bars
• What It Means: Smart money buying from weak hands, preparing for markup phase
State 4: DISTRIBUTION
• Definition: Top-forming near highs where informed participants distribute holdings
• Observable Signatures: Price near recent highs but struggling to advance, volume spikes on down bars, RSI showing negative divergence, widening range
• Typical Duration: 15-50 bars
• What It Means: Smart money selling to late buyers, preparing for markdown phase
State 5: TRANSITION
• Definition: Regime change period with mixed signals and elevated uncertainty
• Observable Signatures: Conflicting indicators, whipsaw price action, no clear momentum, high volatility without direction
• Typical Duration: 5-15 bars
• What It Means: Market deciding next direction, dangerous for directional trades
The Transition Matrix:
The transition matrix A captures the probability of moving from one state to another. AMWT initializes with empirically-derived values then updates online:
From/To IMP_UP IMP_DN CORR ACCUM DIST TRANS
IMP_UP 0.70 0.02 0.20 0.02 0.04 0.02
IMP_DN 0.02 0.70 0.20 0.04 0.02 0.02
CORR 0.15 0.15 0.50 0.10 0.10 0.00
ACCUM 0.30 0.05 0.15 0.40 0.05 0.05
DIST 0.05 0.30 0.15 0.05 0.40 0.05
TRANS 0.20 0.20 0.20 0.15 0.15 0.10
Key Insights from Transition Probabilities:
• Impulse states are sticky (70% self-transition): Once trending, markets tend to continue
• Corrections can transition to either impulse direction (15% each): The next move after correction is uncertain
• Accumulation strongly favors IMP_UP transition (30%): Base-building leads to rallies
• Distribution strongly favors IMP_DN transition (30%): Topping leads to declines
The Viterbi Algorithm:
Given a sequence of observations, how do we find the most likely state sequence? This is the Viterbi algorithm—dynamic programming to find the optimal path through the state space.
Mathematical Formulation:
δ_t(j) = max_i × B_j(O_t)
Where:
δ_t(j) = probability of most likely path ending in state j at time t
A_ij = transition probability from state i to state j
B_j(O_t) = emission probability of observation O_t given state j
AMWT Implementation:
AMWT runs Viterbi over a rolling window (default 50 bars), computing the most likely state sequence and extracting:
• Current state estimate
• State confidence (probability of current state vs alternatives)
• State sequence for pattern detection
Online Learning (Baum-Welch Adaptation):
Unlike static HMMs, AMWT continuously updates its transition and emission matrices based on observed market behavior:
f_onlineUpdateHMM(prev_state, curr_state, observation, decay) =>
// Update transition matrix
A *= decay
A += (1.0 - decay)
// Renormalize row
// Update emission matrix
B *= decay
B += (1.0 - decay)
// Renormalize row
The decay parameter (default 0.85) controls adaptation speed:
• Higher decay (0.95): Slower adaptation, more stable, better for consistent markets
• Lower decay (0.80): Faster adaptation, more reactive, better for regime changes
Why This Matters for Trading:
Traditional indicators give you a number (RSI = 72). AMWT gives you a probabilistic state assessment :
"There is a 78% probability we are in IMPULSE_UP state, with 15% probability of CORRECTION and 7% distributed among other states. The transition matrix suggests 70% chance of remaining in IMPULSE_UP next bar, 20% chance of transitioning to CORRECTION."
This enables:
• Position sizing by confidence : 90% confidence = full size; 60% confidence = half size
• Risk management by transition probability : High correction probability = tighten stops
• Strategy selection by state : IMPULSE = trend-follow; CORRECTION = wait; ACCUMULATION = scale in
🎰 THE 3-BANDIT CONSENSUS SYSTEM
The Multi-Agent Philosophy:
No single analytical methodology works in all market conditions. Trend-following excels in trending markets but gets chopped in ranges. Mean-reversion excels in ranges but gets crushed in trends. Structure-based analysis works when structure is clear but fails in chaotic markets.
AMWT's solution: employ three independent agents , each analyzing the market from a different perspective, then use Thompson Sampling to learn which agents perform best in current conditions.
Agent 1: TREND AGENT
Philosophy : Markets trend. Follow the trend until it ends.
Analytical Components:
• EMA Alignment: EMA8 > EMA21 > EMA50 (bullish) or inverse (bearish)
• MACD Histogram: Direction and rate of change
• Price Momentum: Close relative to ATR-normalized movement
• VWAP Position: Price above/below volume-weighted average price
Signal Generation:
Strong Bull: EMA aligned bull AND MACD histogram > 0 AND momentum > 0.3 AND close > VWAP
→ Signal: +1 (Long), Confidence: 0.75 + |momentum| × 0.4
Moderate Bull: EMA stack bull AND MACD rising AND momentum > 0.1
→ Signal: +1 (Long), Confidence: 0.65 + |momentum| × 0.3
Strong Bear: EMA aligned bear AND MACD histogram < 0 AND momentum < -0.3 AND close < VWAP
→ Signal: -1 (Short), Confidence: 0.75 + |momentum| × 0.4
Moderate Bear: EMA stack bear AND MACD falling AND momentum < -0.1
→ Signal: -1 (Short), Confidence: 0.65 + |momentum| × 0.3
When Trend Agent Excels:
• Trend days (IB extension >1.5x)
• Post-breakout continuation
• Institutional accumulation/distribution phases
When Trend Agent Fails:
• Range-bound markets (ADX <20)
• Chop zones after volatility spikes
• Reversal days at major levels
Agent 2: REVERSION AGENT
Philosophy: Markets revert to mean. Extreme readings reverse.
Analytical Components:
• Bollinger Band Position: Distance from bands, percent B
• RSI Extremes: Overbought (>70) and oversold (<30)
• Stochastic: %K/%D crossovers at extremes
• Band Squeeze: Bollinger Band width contraction
Signal Generation:
Oversold Bounce: BB %B < 0.20 AND RSI < 35 AND Stochastic < 25
→ Signal: +1 (Long), Confidence: 0.70 + (30 - RSI) × 0.01
Overbought Fade: BB %B > 0.80 AND RSI > 65 AND Stochastic > 75
→ Signal: -1 (Short), Confidence: 0.70 + (RSI - 70) × 0.01
Squeeze Fire Bull: Band squeeze ending AND close > upper band
→ Signal: +1 (Long), Confidence: 0.65
Squeeze Fire Bear: Band squeeze ending AND close < lower band
→ Signal: -1 (Short), Confidence: 0.65
When Reversion Agent Excels:
• Rotation days (price stays within IB)
• Range-bound consolidation
• After extended moves without pullback
When Reversion Agent Fails:
• Strong trend days (RSI can stay overbought for days)
• Breakout moves
• News-driven directional moves
Agent 3: STRUCTURE AGENT
Philosophy: Market structure reveals institutional intent. Follow the smart money.
Analytical Components:
• Break of Structure (BOS): Price breaks prior swing high/low
• Change of Character (CHOCH): First break against prevailing trend
• Higher Highs/Higher Lows: Bullish structure
• Lower Highs/Lower Lows: Bearish structure
• Liquidity Sweeps: Stop runs that reverse
Signal Generation:
BOS Bull: Price breaks above prior swing high with momentum
→ Signal: +1 (Long), Confidence: 0.70 + structure_strength × 0.2
CHOCH Bull: First higher low after downtrend, breaking structure
→ Signal: +1 (Long), Confidence: 0.75
BOS Bear: Price breaks below prior swing low with momentum
→ Signal: -1 (Short), Confidence: 0.70 + structure_strength × 0.2
CHOCH Bear: First lower high after uptrend, breaking structure
→ Signal: -1 (Short), Confidence: 0.75
Liquidity Sweep Long: Price sweeps below swing low then reverses strongly
→ Signal: +1 (Long), Confidence: 0.80
Liquidity Sweep Short: Price sweeps above swing high then reverses strongly
→ Signal: -1 (Short), Confidence: 0.80
When Structure Agent Excels:
• After liquidity grabs (stop runs)
• At major swing points
• During institutional accumulation/distribution
When Structure Agent Fails:
• Choppy, structureless markets
• During news events (structure becomes noise)
• Very low timeframes (noise overwhelms structure)
Thompson Sampling: The Bandit Algorithm
With three agents giving potentially different signals, how do we decide which to trust? This is the multi-armed bandit problem —balancing exploitation (using what works) with exploration (testing alternatives).
Thompson Sampling Solution:
Each agent maintains a Beta distribution representing its success/failure history:
Agent success rate modeled as Beta(α, β)
Where:
α = number of successful signals + 1
β = number of failed signals + 1
On Each Bar:
1. Sample from each agent's Beta distribution
2. Weight agent signals by sampled probabilities
3. Combine weighted signals into consensus
4. Update α/β based on trade outcomes
Mathematical Implementation:
// Beta sampling via Gamma ratio method
f_beta_sample(alpha, beta) =>
g1 = f_gamma_sample(alpha)
g2 = f_gamma_sample(beta)
g1 / (g1 + g2)
// Thompson Sampling selection
for each agent:
sampled_prob = f_beta_sample(agent.alpha, agent.beta)
weight = sampled_prob / sum(all_sampled_probs)
consensus += agent.signal × agent.confidence × weight
Why Thompson Sampling?
• Automatic Exploration : Agents with few samples get occasional chances (high variance in Beta distribution)
• Bayesian Optimal : Mathematically proven optimal solution to exploration-exploitation tradeoff
• Uncertainty-Aware : Small sample size = more exploration; large sample size = more exploitation
• Self-Correcting : Poor performers naturally get lower weights over time
Example Evolution:
Day 1 (Initial):
Trend Agent: Beta(1,1) → samples ~0.50 (high uncertainty)
Reversion Agent: Beta(1,1) → samples ~0.50 (high uncertainty)
Structure Agent: Beta(1,1) → samples ~0.50 (high uncertainty)
After 50 Signals:
Trend Agent: Beta(28,23) → samples ~0.55 (moderate confidence)
Reversion Agent: Beta(18,33) → samples ~0.35 (underperforming)
Structure Agent: Beta(32,19) → samples ~0.63 (outperforming)
Result: Structure Agent now receives highest weight in consensus
Consensus Requirements by Mode:
Aggressive Mode:
• Minimum 1/3 agents agreeing
• Consensus threshold: 45%
• Use case: More signals, higher risk tolerance
Balanced Mode:
• Minimum 2/3 agents agreeing
• Consensus threshold: 55%
• Use case: Standard trading
Conservative Mode:
• Minimum 2/3 agents agreeing
• Consensus threshold: 65%
• Use case: Higher quality, fewer signals
Institutional Mode:
• Minimum 2/3 agents agreeing
• Consensus threshold: 75%
• Additional: Session quality >0.65, mode adjustment +0.10
• Use case: Highest quality signals only
🌀 INTELLIGENT CHOP DETECTION ENGINE
The Chop Problem:
Most trading losses occur not from being wrong about direction, but from trading in conditions where direction doesn't exist . Choppy, range-bound markets generate false signals from every methodology—trend-following, mean-reversion, and structure-based alike.
AMWT's chop detection engine identifies these low-probability environments before signals fire, preventing the most damaging trades.
Five-Factor Chop Analysis:
Factor 1: ADX Component (25% weight)
ADX (Average Directional Index) measures trend strength regardless of direction.
ADX < 15: Very weak trend (high chop score)
ADX 15-20: Weak trend (moderate chop score)
ADX 20-25: Developing trend (low chop score)
ADX > 25: Strong trend (minimal chop score)
adx_chop = (i_adxThreshold - adx_val) / i_adxThreshold × 100
Why ADX Works: ADX synthesizes +DI and -DI movements. Low ADX means price is moving but not directionally—the definition of chop.
Factor 2: Choppiness Index (25% weight)
The Choppiness Index measures price efficiency using the ratio of ATR sum to price range:
CI = 100 × LOG10(SUM(ATR, n) / (Highest - Lowest)) / LOG10(n)
CI > 61.8: Choppy (range-bound, inefficient movement)
CI < 38.2: Trending (directional, efficient movement)
CI 38.2-61.8: Transitional
chop_idx_score = (ci_val - 38.2) / (61.8 - 38.2) × 100
Why Choppiness Index Works: In trending markets, price covers distance efficiently (low ATR sum relative to range). In choppy markets, price oscillates wildly but goes nowhere (high ATR sum relative to range).
Factor 3: Range Compression (20% weight)
Compares recent range to longer-term range, detecting volatility squeezes:
recent_range = Highest(20) - Lowest(20)
longer_range = Highest(50) - Lowest(50)
compression = 1 - (recent_range / longer_range)
compression > 0.5: Strong squeeze (potential breakout imminent)
compression < 0.2: No compression (normal volatility)
range_compression_score = compression × 100
Why Range Compression Matters: Compression precedes expansion. High compression = market coiling, preparing for move. Signals during compression often fail because the breakout hasn't occurred yet.
Factor 4: Channel Position (15% weight)
Tracks price position within the macro channel:
channel_position = (close - channel_low) / (channel_high - channel_low)
position 0.4-0.6: Center of channel (indecision zone)
position <0.2 or >0.8: Near extremes (potential reversal or breakout)
channel_chop = abs(0.5 - channel_position) < 0.15 ? high_score : low_score
Why Channel Position Matters: Price in the middle of a range is in "no man's land"—equally likely to go either direction. Signals in the channel center have lower probability.
Factor 5: Volume Quality (15% weight)
Assesses volume relative to average:
vol_ratio = volume / SMA(volume, 20)
vol_ratio < 0.7: Low volume (lack of conviction)
vol_ratio 0.7-1.3: Normal volume
vol_ratio > 1.3: High volume (conviction present)
volume_chop = vol_ratio < 0.8 ? (1 - vol_ratio) × 100 : 0
Why Volume Quality Matters: Low volume moves lack institutional participation. These moves are more likely to reverse or stall.
Combined Chop Intensity:
chopIntensity = (adx_chop × 0.25) + (chop_idx_score × 0.25) +
(range_compression_score × 0.20) + (channel_chop × 0.15) +
(volume_chop × i_volumeChopWeight × 0.15)
Regime Classifications:
Based on chop intensity and component analysis:
• Strong Trend (0-20%): ADX >30, clear directional momentum, trade aggressively
• Trending (20-35%): ADX >20, moderate directional bias, trade normally
• Transitioning (35-50%): Mixed signals, regime change possible, reduce size
• Mid-Range (50-60%): Price trapped in channel center, avoid new positions
• Ranging (60-70%): Low ADX, price oscillating within bounds, fade extremes only
• Compression (70-80%): Volatility squeeze, expansion imminent, wait for breakout
• Strong Chop (80-100%): Multiple chop factors aligned, avoid trading entirely
Signal Suppression:
When chop intensity exceeds the configurable threshold (default 80%), signals are suppressed entirely. The dashboard displays "⚠️ CHOP ZONE" with the current regime classification.
Chop Box Visualization:
When chop is detected, AMWT draws a semi-transparent box on the chart showing the chop zone. This visual reminder helps traders avoid entering positions during unfavorable conditions.
💧 LIQUIDITY ANCHORING SYSTEM
The Liquidity Concept:
Markets move from liquidity pool to liquidity pool. Stop losses cluster at predictable locations—below swing lows (buy stops become sell orders when triggered) and above swing highs (sell stops become buy orders when triggered). Institutions know where these clusters are and often engineer moves to trigger them before reversing.
AMWT identifies and tracks these liquidity events, using them as anchors for signal confidence.
Liquidity Event Types:
Type 1: Volume Spikes
Definition: Volume > SMA(volume, 20) × i_volThreshold (default 2.8x)
Interpretation: Sudden volume surge indicates institutional activity
• Near swing low + reversal: Likely accumulation
• Near swing high + reversal: Likely distribution
• With continuation: Institutional conviction in direction
Type 2: Stop Runs (Liquidity Sweeps)
Definition: Price briefly exceeds swing high/low then reverses within N bars
Detection:
• Price breaks above recent swing high (triggering buy stops)
• Then closes back below that high within 3 bars
• Signal: Bullish stop run complete, reversal likely
Or inverse for bearish:
• Price breaks below recent swing low (triggering sell stops)
• Then closes back above that low within 3 bars
• Signal: Bearish stop run complete, reversal likely
Type 3: Absorption Events
Definition: High volume with small candle body
Detection:
• Volume > 2x average
• Candle body < 30% of candle range
• Interpretation: Large orders being filled without moving price
• Implication: Accumulation (at lows) or distribution (at highs)
Type 4: BSL/SSL Pools (Buy-Side/Sell-Side Liquidity)
BSL (Buy-Side Liquidity):
• Cluster of swing highs within ATR proximity
• Stop losses from shorts sit above these highs
• Breaking BSL triggers short covering (fuel for rally)
SSL (Sell-Side Liquidity):
• Cluster of swing lows within ATR proximity
• Stop losses from longs sit below these lows
• Breaking SSL triggers long liquidation (fuel for decline)
Liquidity Pool Mapping:
AMWT continuously scans for and maps liquidity pools:
// Detect swing highs/lows using pivot function
swing_high = ta.pivothigh(high, 5, 5)
swing_low = ta.pivotlow(low, 5, 5)
// Track recent swing points
if not na(swing_high)
bsl_levels.push(swing_high)
if not na(swing_low)
ssl_levels.push(swing_low)
// Display on chart with labels
Confluence Scoring Integration:
When signals fire near identified liquidity events, confluence scoring increases:
• Signal near volume spike: +10% confidence
• Signal after liquidity sweep: +15% confidence
• Signal at BSL/SSL pool: +10% confidence
• Signal aligned with absorption zone: +10% confidence
Why Liquidity Anchoring Matters:
Signals "in a vacuum" have lower probability than signals anchored to institutional activity. A long signal after a liquidity sweep below swing lows has trapped shorts providing fuel. A long signal in the middle of nowhere has no such catalyst.
📊 SIGNAL GRADING SYSTEM
The Quality Problem:
Not all signals are created equal. A signal with 6/6 factors aligned is fundamentally different from a signal with 3/6 factors aligned. Traditional indicators treat them the same. AMWT grades every signal based on confluence.
Confluence Components (100 points total):
1. Bandit Consensus Strength (25 points)
consensus_str = weighted average of agent confidences
score = consensus_str × 25
Example:
Trend Agent: +1 signal, 0.80 confidence, 0.35 weight
Reversion Agent: 0 signal, 0.50 confidence, 0.25 weight
Structure Agent: +1 signal, 0.75 confidence, 0.40 weight
Weighted consensus = (0.80×0.35 + 0×0.25 + 0.75×0.40) / (0.35 + 0.40) = 0.77
Score = 0.77 × 25 = 19.25 points
2. HMM State Confidence (15 points)
score = hmm_confidence × 15
Example:
HMM reports 82% probability of IMPULSE_UP
Score = 0.82 × 15 = 12.3 points
3. Session Quality (15 points)
Session quality varies by time:
• London/NY Overlap: 1.0 (15 points)
• New York Session: 0.95 (14.25 points)
• London Session: 0.70 (10.5 points)
• Asian Session: 0.40 (6 points)
• Off-Hours: 0.30 (4.5 points)
• Weekend: 0.10 (1.5 points)
4. Energy/Participation (10 points)
energy = (realized_vol / avg_vol) × 0.4 + (range / ATR) × 0.35 + (volume / avg_volume) × 0.25
score = min(energy, 1.0) × 10
5. Volume Confirmation (10 points)
if volume > SMA(volume, 20) × 1.5:
score = 10
else if volume > SMA(volume, 20):
score = 5
else:
score = 0
6. Structure Alignment (10 points)
For long signals:
• Bullish structure (HH + HL): 10 points
• Higher low only: 6 points
• Neutral structure: 3 points
• Bearish structure: 0 points
Inverse for short signals
7. Trend Alignment (10 points)
For long signals:
• Price > EMA21 > EMA50: 10 points
• Price > EMA21: 6 points
• Neutral: 3 points
• Against trend: 0 points
8. Entry Trigger Quality (5 points)
• Strong trigger (multiple confirmations): 5 points
• Moderate trigger (single confirmation): 3 points
• Weak trigger (marginal): 1 point
Grade Scale:
Total Score → Grade
85-100 → A+ (Exceptional—all factors aligned)
70-84 → A (Strong—high probability)
55-69 → B (Acceptable—proceed with caution)
Below 55 → C (Marginal—filtered by default)
Grade-Based Signal Brightness:
Signal arrows on the chart have transparency based on grade:
• A+: Full brightness (alpha = 0)
• A: Slight fade (alpha = 15)
• B: Moderate fade (alpha = 35)
• C: Significant fade (alpha = 55)
This visual hierarchy helps traders instantly identify signal quality.
Minimum Grade Filter:
Configurable filter (default: C) sets the minimum grade for signal display:
• Set to "A" for only highest-quality signals
• Set to "B" for moderate selectivity
• Set to "C" for all signals (maximum quantity)
🕐 SESSION INTELLIGENCE
Why Sessions Matter:
Markets behave differently at different times. The London open is fundamentally different from the Asian lunch hour. AMWT incorporates session-aware logic to optimize signal quality.
Session Definitions:
Asian Session (18:00-03:00 ET)
• Characteristics: Lower volatility, range-bound tendency, fewer institutional participants
• Quality Score: 0.40 (40% of peak quality)
• Strategy Implications: Fade extremes, expect ranges, smaller position sizes
• Best For: Mean-reversion setups, accumulation/distribution identification
London Session (03:00-12:00 ET)
• Characteristics: European institutional activity, volatility pickup, trend initiation
• Quality Score: 0.70 (70% of peak quality)
• Strategy Implications: Watch for trend development, breakouts more reliable
• Best For: Initial trend identification, structure breaks
New York Session (08:00-17:00 ET)
• Characteristics: Highest liquidity, US institutional activity, major moves
• Quality Score: 0.95 (95% of peak quality)
• Strategy Implications: Best environment for directional trades
• Best For: Trend continuation, momentum plays
London/NY Overlap (08:00-12:00 ET)
• Characteristics: Peak liquidity, both European and US participants active
• Quality Score: 1.0 (100%—maximum quality)
• Strategy Implications: Highest probability for successful breakouts and trends
• Best For: All signal types—this is prime time
Off-Hours
• Characteristics: Thin liquidity, erratic price action, gaps possible
• Quality Score: 0.30 (30% of peak quality)
• Strategy Implications: Avoid new positions, wider stops if holding
• Best For: Waiting
Smart Weekend Detection:
AMWT properly handles the Sunday evening futures open:
// Traditional (broken):
isWeekend = dayofweek == saturday OR dayofweek == sunday
// AMWT (correct):
anySessionActive = not na(asianTime) or not na(londonTime) or not na(nyTime)
isWeekend = calendarWeekend AND NOT anySessionActive
This ensures Sunday 6pm ET (when futures open) correctly shows "Asian Session" rather than "Weekend."
Session Transition Boosts:
Certain session transitions create trading opportunities:
• Asian → London transition: +15% confidence boost (volatility expansion likely)
• London → Overlap transition: +20% confidence boost (peak liquidity approaching)
• Overlap → NY-only transition: -10% confidence adjustment (liquidity declining)
• Any → Off-Hours transition: Signal suppression recommended
📈 TRADE MANAGEMENT SYSTEM
The Signal Spam Problem:
Many indicators generate signal after signal, creating confusion and overtrading. AMWT implements a complete trade lifecycle management system that prevents signal spam and tracks performance.
Trade Lock Mechanism:
Once a signal fires, the system enters a "trade lock" state:
Trade Lock Duration: Configurable (default 30 bars)
Early Exit Conditions:
• TP3 hit (full target reached)
• Stop Loss hit (trade failed)
• Lock expiration (time-based exit)
During lock:
• No new signals of same type displayed
• Opposite signals can override (reversal)
• Trade status tracked in dashboard
Target Levels:
Each signal generates three profit targets based on ATR:
TP1 (Conservative Target)
• Default: 1.0 × ATR
• Purpose: Quick partial profit, reduce risk
• Action: Take 30-40% off position, move stop to breakeven
TP2 (Standard Target)
• Default: 2.5 × ATR
• Purpose: Main profit target
• Action: Take 40-50% off position, trail stop
TP3 (Extended Target)
• Default: 5.0 × ATR
• Purpose: Runner target for trend days
• Action: Close remaining position or continue trailing
Stop Loss:
• Default: 1.9 × ATR from entry
• Purpose: Define maximum risk
• Placement: Below recent swing low (longs) or above recent swing high (shorts)
Invalidation Level:
Beyond stop loss, AMWT calculates an "invalidation" level where the wave hypothesis dies:
invalidation = entry - (ATR × INVALIDATION_MULT × 1.5)
If price reaches invalidation, the current market interpretation is wrong—not just the trade.
Visual Trade Management:
During active trades, AMWT displays:
• Entry arrow with grade label (▲A+, ▼B, etc.)
• TP1, TP2, TP3 horizontal lines in green
• Stop Loss line in red
• Invalidation line in orange (dashed)
• Progress indicator in dashboard
Persistent Execution Markers:
When targets or stops are hit, permanent markers appear:
• TP hit: Green dot with "TP1"/"TP2"/"TP3" label
• SL hit: Red dot with "SL" label
These persist on the chart for review and statistics.
💰 PERFORMANCE TRACKING & STATISTICS
Tracked Metrics:
• Total Trades: Count of all signals that entered trade lock
• Winning Trades: Signals where at least TP1 was reached before SL
• Losing Trades: Signals where SL was hit before any TP
• Win Rate: Winning / Total × 100%
• Total R Profit: Sum of R-multiples from winning trades
• Total R Loss: Sum of R-multiples from losing trades
• Net R: Total R Profit - Total R Loss
Currency Conversion System:
AMWT can display P&L in multiple formats:
R-Multiple (Default)
• Shows risk-normalized returns
• "Net P&L: +4.2R | 78 trades" means 4.2 times initial risk gained over 78 trades
• Best for comparing across different position sizes
Currency Conversion (USD/EUR/GBP/JPY/INR)
• Converts R-multiples to currency based on:
- Dollar Risk Per Trade (user input)
- Tick Value (user input)
- Selected currency
Example Configuration:
Dollar Risk Per Trade: $100
Display Currency: USD
If Net R = +4.2R
Display: Net P&L: +$420.00 | 78 trades
Ticks
• For futures traders who think in ticks
• Converts based on tick value input
Statistics Reset:
Two reset methods:
1. Toggle Reset
• Turn "Reset Statistics" toggle ON then OFF
• Clears all statistics immediately
2. Date-Based Reset
• Set "Reset After Date" (YYYY-MM-DD format)
• Only trades after this date are counted
• Useful for isolating recent performance
🎨 VISUAL FEATURES
Macro Channel:
Dynamic regression-based channel showing market boundaries:
• Upper/lower bounds calculated from swing pivot linear regression
• Adapts to current market structure
• Shows overall trend direction and potential reversal zones
Chop Boxes:
Semi-transparent overlay during high-chop periods:
• Purple/orange coloring indicates dangerous conditions
• Visual reminder to avoid new positions
Confluence Heat Zones:
Background shading indicating setup quality:
• Darker shading = higher confluence
• Lighter shading = lower confluence
• Helps identify optimal entry timing
EMA Ribbon:
Trend visualization via moving average fill:
• EMA 8/21/50 with gradient fill between
• Green fill when bullish aligned
• Red fill when bearish aligned
• Gray when neutral
Absorption Zone Boxes:
Marks potential accumulation/distribution areas:
• High volume + small body = absorption
• Boxes drawn at these levels
• Often act as support/resistance
Liquidity Pool Lines:
BSL/SSL levels with labels:
• Dashed lines at liquidity clusters
• "BSL" label above swing high clusters
• "SSL" label below swing low clusters
Six Professional Themes:
• Quantum: Deep purples and cyans (default)
• Cyberpunk: Neon pinks and blues
• Professional: Muted grays and greens
• Ocean: Blues and teals
• Matrix: Greens and blacks
• Ember: Oranges and reds
🎓 PROFESSIONAL USAGE PROTOCOL
Phase 1: Learning the System (Week 1)
Goal: Understand AMWT concepts and dashboard interpretation
Setup:
• Signal Mode: Balanced
• Display: All features enabled
• Grade Filter: C (see all signals)
Actions:
• Paper trade ONLY—no real money
• Observe HMM state transitions throughout the day
• Note when agents agree vs disagree
• Watch chop detection engage and disengage
• Track which grades produce winners vs losers
Key Learning Questions:
• How often do A+ signals win vs B signals? (Should see clear difference)
• Which agent tends to be right in current market? (Check dashboard)
• When does chop detection save you from bad trades?
• How do signals near liquidity events perform vs signals in vacuum?
Phase 2: Parameter Optimization (Week 2)
Goal: Tune system to your instrument and timeframe
Signal Mode Testing:
• Run 5 days on Aggressive mode (more signals)
• Run 5 days on Conservative mode (fewer signals)
• Compare: Which produces better risk-adjusted returns?
Grade Filter Testing:
• Track A+ only for 20 signals
• Track A and above for 20 signals
• Track B and above for 20 signals
• Compare win rates and expectancy
Chop Threshold Testing:
• Default (80%): Standard filtering
• Try 70%: More aggressive filtering
• Try 90%: Less filtering
• Which produces best results for your instrument?
Phase 3: Strategy Development (Weeks 3-4)
Goal: Develop personal trading rules based on system signals
Position Sizing by Grade:
• A+ grade: 100% position size
• A grade: 75% position size
• B grade: 50% position size
• C grade: 25% position size (or skip)
Session-Based Rules:
• London/NY Overlap: Take all A/A+ signals
• NY Session: Take all A+ signals, selective on A
• Asian Session: Only A+ signals with extra confirmation
• Off-Hours: No new positions
Chop Zone Rules:
• Chop >70%: Reduce position size 50%
• Chop >80%: No new positions
• Chop <50%: Full position size allowed
Phase 4: Live Micro-Sizing (Month 2)
Goal: Validate paper trading results with minimal risk
Setup:
• 10-20% of intended full position size
• Take ONLY A+ signals initially
• Follow trade management religiously
Tracking:
• Log every trade: Entry, Exit, Grade, HMM State, Chop Level, Agent Consensus
• Calculate: Win rate by grade, by session, by chop level
• Compare to paper trading (should be within 15%)
Red Flags:
• Win rate diverges significantly from paper trading: Execution issues
• Consistent losses during certain sessions: Adjust session rules
• Losses cluster when specific agent dominates: Review that agent's logic
Phase 5: Scaling Up (Months 3-6)
Goal: Gradually increase to full position size
Progression:
• Month 3: 25-40% size (if micro-sizing profitable)
• Month 4: 40-60% size
• Month 5: 60-80% size
• Month 6: 80-100% size
Scale-Up Requirements:
• Minimum 30 trades at current size
• Win rate ≥50%
• Net R positive
• No revenge trading incidents
• Emotional control maintained
💡 DEVELOPMENT INSIGHTS
Why HMM Over Simple Indicators:
Early versions used standard indicators (RSI >70 = overbought, etc.). Win rates hovered at 52-55%. The problem: indicators don't capture state. RSI can stay "overbought" for weeks in a strong trend.
The insight: markets exist in states, and state persistence matters more than indicator levels. Implementing HMM with state transition probabilities increased signal quality significantly. The system now knows not just "RSI is high" but "we're in IMPULSE_UP state with 70% probability of staying in IMPULSE_UP."
The Multi-Agent Evolution:
Original version used a single analytical methodology—trend-following. Performance was inconsistent: great in trends, destroyed in ranges. Added mean-reversion agent: now it was inconsistent the other way.
The breakthrough: use multiple agents and let the system learn which works . Thompson Sampling wasn't the first attempt—tried simple averaging, voting, even hard-coded regime switching. Thompson Sampling won because it's mathematically optimal and automatically adapts without manual regime detection.
Chop Detection Revelation:
Chop detection was added almost as an afterthought. "Let's filter out obviously bad conditions." Testing revealed it was the most impactful single feature. Filtering chop zones reduced losing trades by 35% while only reducing total signals by 20%. The insight: avoiding bad trades matters more than finding good ones.
Liquidity Anchoring Discovery:
Watched hundreds of trades. Noticed pattern: signals that fired after liquidity events (stop runs, volume spikes) had significantly higher win rates than signals in quiet markets. Implemented liquidity detection and anchoring. Win rate on liquidity-anchored signals: 68% vs 52% on non-anchored signals.
The Grade System Impact:
Early system had binary signals (fire or don't fire). Adding grading transformed it. Traders could finally match position size to signal quality. A+ signals deserved full size; C signals deserved caution. Just implementing grade-based sizing improved portfolio Sharpe ratio by 0.3.
🚨 LIMITATIONS & CRITICAL ASSUMPTIONS
What AMWT Is NOT:
• NOT a Holy Grail : No system wins every trade. AMWT improves probability, not certainty.
• NOT Fully Automated : AMWT provides signals and analysis; execution requires human judgment.
• NOT News-Proof : Exogenous shocks (FOMC surprises, geopolitical events) invalidate all technical analysis.
• NOT for Scalping : HMM state estimation needs time to develop. Sub-minute timeframes are not appropriate.
Core Assumptions:
1. Markets Have States : Assumes markets transition between identifiable regimes. Violation: Random walk markets with no regime structure.
2. States Are Inferable : Assumes observable indicators reveal hidden states. Violation: Market manipulation creating false signals.
3. History Informs Future : Assumes past agent performance predicts future performance. Violation: Regime changes that invalidate historical patterns.
4. Liquidity Events Matter : Assumes institutional activity creates predictable patterns. Violation: Markets with no institutional participation.
Performs Best On:
• Liquid Futures : ES, NQ, MNQ, MES, CL, GC
• Major Forex Pairs : EUR/USD, GBP/USD, USD/JPY
• Large-Cap Stocks : AAPL, MSFT, TSLA, NVDA (>$5B market cap)
• Liquid Crypto : BTC, ETH on major exchanges
Performs Poorly On:
• Illiquid Instruments : Low volume stocks, exotic pairs
• Very Low Timeframes : Sub-5-minute charts (noise overwhelms signal)
• Binary Event Days : Earnings, FDA approvals, court rulings
• Manipulated Markets : Penny stocks, low-cap altcoins
Known Weaknesses:
• Warmup Period : HMM needs ~50 bars to initialize properly. Early signals may be unreliable.
• Regime Change Lag : Thompson Sampling adapts over time, not instantly. Sudden regime changes may cause short-term underperformance.
• Complexity : More parameters than simple indicators. Requires understanding to use effectively.
⚠️ RISK DISCLOSURE
Trading futures, stocks, options, forex, and cryptocurrencies involves substantial risk of loss and is not suitable for all investors. Adaptive Market Wave Theory, while based on rigorous mathematical frameworks including Hidden Markov Models and multi-armed bandit algorithms, does not guarantee profits and can result in significant losses.
AMWT's methodologies—HMM state estimation, Thompson Sampling agent selection, and confluence-based grading—have theoretical foundations but past performance is not indicative of future results.
Hidden Markov Model assumptions may not hold during:
• Major news events disrupting normal market behavior
• Flash crashes or circuit breaker events
• Low liquidity periods with erratic price action
• Algorithmic manipulation or spoofing
Multi-agent consensus assumes independent analytical perspectives provide edge. Market conditions change. Edges that existed historically can diminish or disappear.
Users must independently validate system performance on their specific instruments, timeframes, and broker execution environment. Paper trade extensively before risking capital. Start with micro position sizing.
Never risk more than you can afford to lose completely. Use proper position sizing. Implement stop losses without exception.
By using this indicator, you acknowledge these risks and accept full responsibility for all trading decisions and outcomes.
"Elliott Wave was a first-order approximation of market phase behavior. AMWT is the second—probabilistic, adaptive, and accountable."
Initial Public Release
Core Engine:
• True Hidden Markov Model with online Baum-Welch learning
• Viterbi algorithm for optimal state sequence decoding
• 6-state market regime classification
Agent System:
• 3-Bandit consensus (Trend, Reversion, Structure)
• Thompson Sampling with true Beta distribution sampling
• Adaptive weight learning based on performance
Signal Generation:
• Quality-based confluence grading (A+/A/B/C)
• Four signal modes (Aggressive/Balanced/Conservative/Institutional)
• Grade-based visual brightness
Chop Detection:
• 5-factor analysis (ADX, Choppiness Index, Range Compression, Channel Position, Volume)
• 7 regime classifications
• Configurable signal suppression threshold
Liquidity:
• Volume spike detection
• Stop run (liquidity sweep) identification
• BSL/SSL pool mapping
• Absorption zone detection
Trade Management:
• Trade lock with configurable duration
• TP1/TP2/TP3 targets
• ATR-based stop loss
• Persistent execution markers
Session Intelligence:
• Asian/London/NY/Overlap detection
• Smart weekend handling (Sunday futures open)
• Session quality scoring
Performance:
• Statistics tracking with reset functionality
• 7 currency display modes
• Win rate and Net R calculation
Visuals:
• Macro channel with linear regression
• Chop boxes
• EMA ribbon
• Liquidity pool lines
• 6 professional themes
Dashboards:
• Main Dashboard: Market State, Consensus, Trade Status, Statistics
📋 AMWT vs AMWT-PRO:
This version includes all core AMWT functionality:
✓ Full Hidden Markov Model state estimation
✓ 3-Bandit Thompson Sampling consensus system
✓ Complete 5-factor chop detection engine
✓ All four signal modes
✓ Full trade management with TP/SL tracking
✓ Main dashboard with complete statistics
✓ All visual features (channels, zones, pools)
✓ Identical signal generation to PRO
✓ Six professional themes
✓ Full alert system
The PRO version adds the AMWT Advisor panel—a secondary dashboard providing:
• Real-time Market Pulse situation assessment
• Agent Matrix visualization (individual agent votes)
• Structure analysis breakdown
• "Watch For" upcoming setups
• Action Command coaching
Both versions generate identical signals . The Advisor provides additional guidance for interpreting those signals.
Taking you to school. - Dskyz, Trade with probability. Trade with consensus. Trade with AMWT.
TrintityTrendIntroducing TrinityTrend
A multi-signal indicator combining:
Candle TrendStrength
SuperTrend logic
TTM Squeeze detection
Built for clarity, momentum, and volatility awareness—across any timeframe.
TrendStrength Mode
Candle coloring reflects directional conviction.
Strong uptrend
Strong downtrend
Neutral or indecisive
Helps traders stay with momentum and avoid chop.
SuperTrend Overlay
SuperTrend Logic Dynamic trailing stop based on volatility.
🟩 Price above = bullish bias
🟥 Price below = bearish bias
Great for swing entries and exits.
TTM Squeeze Detection
TTM Squeeze Mode Detects compression zones before breakout.
Squeeze on = buildup (You can change the color of this)
Pairs well with TrendStrength for timing entries.
Multi-Timeframe Versatility
Multi-Timeframe Ready:
Intraday scalping
Daily swing setups
Weekly macro bias
Toggle modes to match your strategy
ATR Price ZoneThe ATR Price Zone is an indicator which takes the Daily Average True Range of a stock and shows how high and low the price of the stock could possibly go from the opening price.
Key features:
The ATR Price Zone is an indicator which takes the Daily Average True Range of a stock and shows how high and low the priced the stock could possibly go from the opening price.
Key features:
ATR Price Zone uses zones looking forward to help strategize possible movements in price.
This indicator is customizable with zones, horizontal lines, a quick reference chart and colors.
The indicator continues to move forward with the chart.
It references the Daily True Average Range regardless of which Time Frame you are using.
It also references the opening candle with a blue arrow when using less than daily time frames.
Create by BothwellTrader
NICHI (NuwenPham's Ichimoku)NICHI (NuwenPham’s Ichimoku)
NICHI is a dual-engine Ichimoku indicator designed for modern, high-volatility markets.
It preserves a faithful traditional Ichimoku while introducing an advanced, filter-driven Ichimoku framework for research, visualization, and discretionary trading.
The goal of NICHI is not to replace Ichimoku — but to extend it.
Overview
NICHI includes two independent Ichimoku systems that can be enabled separately or together.
1. Standard Ichimoku
A clean, traditional Hosoda Ichimoku using Donchian midpoints:
Tenkan-sen (short period)
Kijun-sen (medium period)
Senkou Span A & B (forward displaced)
Chikou Span (lagging)
Design choice:
The Standard Ichimoku is intentionally plotted in a separate pane to avoid cluttering the price chart.
It serves as a reference / regime baseline, not a visual overlay.
2. Advanced Ichimoku
The Advanced system keeps the Ichimoku structure intact but replaces the Donchian calculations with selectable smoothing filters.
Each Ichimoku component (Tenkan, Kijun, Senkou B, Chikou) can be calculated using modern filters designed to handle volatility, noise, and regime shifts.
Supported filters include:
McGinley Dynamic (MD)
VWMA (exchange or tick-derived volume)
EMA / DEMA / SMA / SMMA / WMA
ALMA / LSMA / Hull MA
COVWMA / FRAMA / KAMA
50th Percentile
Moving Median
This allows Ichimoku to behave as:
A smoother trend system
A volatility-adaptive framework
A momentum-responsive overlay
Enhanced Cloud (Kumo) Modeling
Advanced Kumo logic includes:
Independent forward offsets for Span A and Span B
Bull / bear regime classification aligned with how the cloud is actually drawn
Adaptive cloud coloring
Neutral cloud state when spans disagree
This avoids misleading regime signals when different offsets are used.
Directional Persistence Tracking
NICHI tracks directional streaks for key components:
Tenkan direction
Kijun direction
Span A direction
Span B direction
These persistence counters stabilize coloring, reduce flicker, and improve visual clarity during transitions.
Bar Coloring Modes (Advanced)
Three bar-coloring frameworks are included.
Kumo-Based
Above cloud → bullish
Below cloud → bearish
Inside cloud → neutral
Tenkan / Kijun-Based
Above both → bullish
Below both → bearish
Chikou-Based
Chikou above past price → bullish
Chikou below past price → bearish
Each mode is intentionally distinct and serves a different trading style.
Moving Average Overlays
NICHI includes four optional moving average overlays (MA1–MA4):
Configurable type, length, width, and source
Intended for bias, confluence, or higher-timeframe context
Controlled as code-level constants by design
What Changed Since BETA
This release promotes NICHI from beta to stable with the following key improvements:
Chikou regime logic fixed:
Chikou comparisons now reference historical price only, eliminating any future lookahead behavior.
Kumo bull/bear alignment clarified:
Cloud regime classification now matches how the cloud is visually drawn when Span A and Span B use different forward offsets.
Kijun direction tracking corrected:
Kijun coloring now reflects Kijun movement, not Tenkan movement.
Bar coloring gated:
Bar coloring is applied only when Advanced Ichimoku is enabled, preventing unintended behavior when using Standard mode alone.
General stability and cleanup:
Minor bug fixes, consistency improvements, and documentation clarity.
Notes
Advanced Ichimoku is intended for research and visualization, not as a turnkey strategy.
Standard Ichimoku remains a faithful baseline.
If reporting issues, please include symbol, timeframe, and a screenshot.
BE-QuantFlow: Adaptive Momentum Trading█ Overview: QuantFlow: Adaptive Momentum Trading
QuantFlow is a sophisticated algorithmic momentum trading method designed specifically for indices and high-beta stocks. However, its logic is universal; with appropriate parameter tuning, it adapts to various asset classes and timeframes.
While the standard momentum indicators (like RSI or MACD) simply measure how fast price is moving (Velocity), QuantFlow analyzes the quality and conviction of the trend . Features like Dynamic Volatility Filtering and Trend Shielding, combined with volatility weighting and a "Dual-Line" approach to distinguish between a sustainable institutional trend and a temporary retail spike, make the indicator unique and more powerful.
█ Why QuantFlow ?
Quant (The Engine): This replaces subjective guessing with objective math.
Instead of just seeing that the price is "up," we measure "how it got there". For example, a stock that rises 1 currency value every day for 10 days (smooth trend) gets a much higher score than a stock that jumps 10 currency value in one minute and does nothing else (erratic noise). This mathematical rigor provides the structure.
█ Core Logic & Philosophy
To understand how QuantFlow calculates momentum, imagine a "Tug-of-War" between Buyers (Bulls) and Sellers (Bears). Most indicators (like RSI) use a single line. If RSI is at 50, it means "Neutral." But "Neutral" can mean two very different things:
Peace: Nothing is happening. No one is buying or selling.
War: Buyers are pushing hard, but Sellers are pushing back equally hard. Volatility is massive.
A single line hides this reality. QuantFlow splits the market into two separate scores:
Bull Score (Green Line): How hard are the buyers pushing?
Bear Score (Red Line): How hard are the sellers pushing?
The Layman's Advantage:
If both lines are low = Sleepy Market (Avoid).
If Green is high and Red is low = Clean Uptrend (Buy).
If Red is high and Green is low = Clean Downtrend (Sell).
If both lines are high = Chaos/War Zone (Wait).
█ How it Weight "Sustenance" (The Critical Quality Check)
This is the most unique aspect of QuantFlow: Trend direction alone is not enough; Sustenance is weighed equally . Standard indicators treat every 10 currency value movements the same way with no distinction. However, QuantFlow asks, "Did you hold the ground you gained?"
Scenario A (High Sustenance) : A stock opens at 100, marches to 110, and closes at 110.
Verdict : Buyers pushed up and sustained the price.
QuantFlow Weight : 100%. This is a high-quality move.
Scenario B (Low Sustenance) : A stock opens at 100, spikes to 110, but gets sold off to close at 102.
Verdict : Buyers pushed up (Trend is Up), but failed to sustain it (Long Wick).
QuantFlow Weight : 20%. This is treated as "Noise" or a trap.
By mathematically weighing the Close Location Value (where the candle closes relative to its high/low), QuantFlow filters out "Gap-and-Fade" traps and exhaustion spikes that fool traditional indicators.
Comparisons: QuantFlow vs. The Rest
Calculation Logic : Standard RSI/MACD measures simple price change over time. QuantFlow measures Price Change 'times (x)' Conviction (Sustenance Weighting).
Visual Output : Standard tools show a single line (0-100), often hiding market conflict. QuantFlow displays Dual Lines (Bull vs Bear Intensity) to reveal the true state of the battle.
Trap Handling : Standard indicators are often fooled by sharp spikes. QuantFlow ignores "Gap-and-Fade" moves with poor closing conviction.
Adaptability : Standard tools use static levels (e.g., Overbought > 70). QuantFlow uses Dynamic Bands that adjust automatically to recent volatility.
█ Dynamic Volatility Filtering
Unlike standard indicators that use fixed levels (e.g., "Buy if RSI > 50"), QuantFlow acknowledges that "50" means something different in a quiet market versus a crashing market. This section explains the statistical engine driving the signals.
The Problem with Static Levels : In a low-volatility environment, a momentum score of 55 might indicate a massive breakout. In a high-volatility environment, a score of 55 might just be random noise. A fixed threshold cannot handle both scenarios.
The Solution: Adaptive Statistics : The script maintains a memory of the Momentum Events. It doesn't just look at price; it looks at where the momentum occurred in the past and draws a "Noise Zone" (Grey Band). This logic acts as a "Smart Gatekeeper" for trade entries:
Scenario A: Inside the Noise (The Filter)
If a new momentum signal happens inside the Noise Zone, the script assumes it is likely chop or noise.
Action : It forces a wait period. The signal is delayed until the trend sustains itself for Confirm Bars; else the signal is cancelled. This filters out ~70% of false signals in sideways markets.
Scenario B: Outside the Noise (The Breakout)
If a new momentum signal happens outside the Noise Zone (or the momentum score smashes through the Upper Band), it is statistically significant (an outlier event).
Action: It triggers an Immediate Entry. No waiting is required because the move is powerful enough to escape the historical noise zone.
█ The ⚠️ "Warning" System (Heads-up for Smart Reversals)
While you are directional if there is potential reversal signal, it provides the heads-up warning for a better decision-making
█ Special Utility: Ghost Mode
For intraday traders, the biggest disruption to "Flow" is the mandatory broker square-off at 3:15 PM (considering Indian Market). Often, a trend continues overnight, and the trader misses the gap-up opening the next morning because their algo was flat.
Ghost Mode is a unique feature that runs silently in the background:
At Square-off: The strategy closes your official position to satisfy the broker.
In the Background: It keeps the trade "alive" virtually (Ghost).
Next Morning: If the market opens in the trend's favor, the strategy re-enters the trade automatically. This approach ensures you capture the full swing of the trend, even if you are forced to exit at the previous session.
█ Advice on this indicator:
Parameter Calibration: The default settings are optimized for BankNifty on 5-minute charts. If you trade stocks, crypto, commodities, or any higher timeframes (e.g., 15-min or hourly), you must adjust these.
Low Volatility Assets: Reduce Stop Multiplier to 2.0.
High Volatility Assets: Increase Momentum Lookback to 50 to filter noise.
Confluence (Additional Confirmation): While QuantFlow is a complete system, using it alongside Key Support/Resistance Levels or Volume Profile provides the highest probability setups.
Bandes de Bollinger - Couleurs DynamiquesDescription
This indicator is an enhanced version of the classic Bollinger Bands. It allows traders to instantly visualize market volatility states (expansion or compression) by coloring each band independently based on its own direction.
Unlike standard indicators that color the background or use a single condition for both lines, this script focuses on the slope of each individual band to provide a more precise reading of price dynamics.
How It Works
The script analyzes the position of each band relative to its previous value (n-1):
Upper Band: Turns GREEN when it moves up (expanding upwards) and RED when it moves down (contracting downwards).
Lower Band: Turns GREEN when it moves down (expanding downwards) and RED when it moves up (contracting upwards).
Signal Interpretation
This independent coloring helps identify three market phases at a glance:
Volatility Expansion (Blast off): Both bands are GREEN. This typically occurs during a breakout or a violent impulsive move where bands open up in opposite directions.
Compression (Squeeze): Both bands are RED. The upper band is sloping down and the lower band is sloping up. The market is consolidating, often signaling an impending explosive move.
Trend: Colors are mixed. For instance, during a strong uptrend, the Upper Band will be Green (rising), but the Lower Band will often be Red (rising as well to follow price, rather than expanding downwards).
Settings
Users retain standard Bollinger Bands configuration:
Length: Period for the Moving Average (Default: 20).
Multiplier: Standard Deviation multiplier (Default: 2.0).
Source: Price data used (Default: Close).
Note
This tool is purely visual and does not repaint. It is designed to assist traders who rely on volatility analysis, mean reversion, or breakout strategies.
ML-Inspired Adaptive Momentum Strategy (TradingView v6)This strategy demonstrates an adaptive momentum approach using volatility-normalized trend strength. It is designed for educational and analytical purposes and uses deterministic, fully transparent logic compatible with Pine Script v6.
ML-Inspired Concept (Educational Context)
Pine Script cannot train or execute real machine-learning models.
Instead, this strategy demonstrates ML-style thinking by:
Converting price data into features
Normalizing features to account for volatility differences
Producing a bounded confidence score
Applying thresholds for decision making
This is not predictive AI and does not claim forecasting capability.
Strategy Logic
EMA is used to measure directional bias
EMA slope represents momentum change
ATR normalizes the slope (feature scaling)
A clamped score between −1 and +1 is generated
Trades trigger only when the score exceeds defined thresholds
Risk & Execution
Position size capped at 5% equity
Commission and slippage included for realistic testing
Signals are calculated on closed bars only
Purpose
This script is intended to help traders explore adaptive momentum concepts and understand how feature normalization can be applied in systematic trading strategies.
Market Regime | NY Session Killzones Indicator [ApexLegion]Market Regime | NY Session Killzones Indicator
Introduction and Theoretical Background
The Market Regime | NY Session Killzones indicator is designed exclusively for New York market hours (07:00-16:00 ET). Unlike universal indicators that attempt to function across disparate global sessions, this tool employs session-specific calibration to target the distinct liquidity characteristics of the NY trading day: Pre-Market structural formation (08:00-09:30), the Morning breakout window (09:30-12:00), and the Afternoon Killzone (13:30-16:00)—periods when institutional order flow exhibits the highest concentration and most definable technical structure. By restricting its operational scope to these statistically significant time windows, the indicator focuses on signal relevance while filtering the noise inherent in lower-liquidity overnight or extended-hours trading environments.
I. TECHNICAL RATIONALE: THE PRINCIPLE OF CONTEXTUAL FUSION
1. The Limitation of Acontextual Indicators
Traditional technical indicators often fail because they treat every bar and every market session equally, applying static thresholds (e.g., RSI > 70) without regard for the underlying market structure or liquidity environment. However, institutional volume and market volatility are highly dependent on the time of day (session) and the prevailing long-term risk environment.
This indicator was developed to address this "contextual deficit" by fusing three distinct yet interdependent analytical layers:
• Time and Structure (Macro): Identifying high-probability trading windows (Killzones) and critical structural levels (Pre-Market Range, PDH/PDL).
• Volatility and Scoring (Engine): Normalizing intraday momentum against annual volatility data to create an objective, statistically grounded AI Score.
• Risk Management (Execution): Implementing dynamic, volatility-adjusted Stop Loss (SL) and Take Profit (TP) parameters based on the Average True Range (ATR).
2. The Mandate for 252-Day Normalization (Z-Score)
What makes this tool unique is its 252-day Z-Score normalization engine that transforms raw momentum readings into statistically grounded probability scores, allowing the same indicator to deliver consistent, context-aware signals across any timeframe—from 1-minute scalping to 1-hour swing trades—without manual recalibration.
THE PROBLEM OF SCALE INVARIANCE
A high Relative Strength Index (RSI) reading on a 1-minute chart has a completely different market implication than a high RSI reading on a Daily chart. Simple percentage-based thresholds (like 70 or 30) do not provide true contextual significance. A sudden spike in momentum may look extreme on a 5-minute chart, but if it is statistically insignificant compared to the overall volatility of the last year, it may be a poor signal.
THE SOLUTION: CROSS-TIMEFRAME Z-SCORE NORMALIZATION
This indicator utilizes the Pine Script function request.security to reference the Daily timeframe for calculating the mean (μ) and standard deviation (σ) of a momentum oscillator (RSI) over the past 252 trading days (one year).
The indicator then calculates the Z-Score (Z) for the current bar's raw momentum (x): Z = (x - μ) / σ
Core Implementation: float raw_rsi = ta.rsi(close, 14) // x
= request.security(syminfo.tickerid, "D",
, // σ (252 days)
lookahead=barmerge.lookahead_on)
float cur_rsi_norm = d_rsi_std != 0 ? (raw_rsi - d_rsi_mean) / d_rsi_std : 0.0 // Z
This score provides an objective measurement of current intraday momentum significance by evaluating its statistical extremity against the yearly baseline of daily momentum. This standardized approach provides the scoring engine with consistent, global contextual information, independent of the chart's current viewing timeframe.
II. CORE COMPONENTS AND TECHNICAL ANALYSIS BREAKDOWN
1. TIME AND SESSION ANALYSIS (KILLZONES AND BIAS)
The indicator visually segments the trading day based on New York (NY) trading sessions, aligning the analysis with periods of high institutional liquidity events.
Pre-Market (PRE)
• Function: Defines the range before the core market opens. This range establishes structural support and resistance levels (PMH/PML).
• Technical Implementation: Uses a dedicated Session input (ny_pre_sess). The High and Low values (pm_h_val/pm_l_val) within this session are stored and plotted for structural reference.
• Smart Extension Logic: PMH/PML lines are automatically extended until the next Pre-Market session begins, providing continuous support/resistance references overnight.
NY Killzones (AM/PM)
• Function: Highlights high-probability volatility windows where institutional liquidity is expected to be highest (e.g., NY open, lunch, NY close).
• Technical Implementation: Separate session inputs (kz_ny_am, kz_ny_pm) are utilized to draw translucent background fills, providing a clear visual cue for timing.
Market Regime Bias
• Function: Determines the initial directional premise for the trading day. The bias is confirmed when the price breaks either the Pre-Market High (PMH) or the Pre-Market Low (PML).
• Technical Implementation: Involves the comparison of the close price against the predefined structural levels (check_h for PMH, check_l for PML). The variable active_bias is set to Bullish or Bearish upon confirmed breakout.
Trend Bar Coloring
• Function: Applies a visual cue to the bars based on the established regime (Bullish=Cyan, Bearish=Red). This visual filter helps mitigate noise from counter-trend candles.
• Technical Implementation: The Pine Script barcolor() function is tied directly to the value of the determined active_bias.
2. VOLATILITY NORMALIZED SCORING ENGINE
The internal scoring mechanism accumulates points from multiple market factors to determine the strength and validity of a signal. The purpose is to apply a robust filtering mechanism before generating an entry.
The score accumulation logic is based on the following factors:
• Market Bias Alignment (+3 Points): Points are awarded for conformance with the determined active_bias (Bullish/Bearish).
• VWAP Alignment (+2 Points): Assesses the position of the current price relative to the Volume-Weighted Average Price (VWAP). Alignment suggests conformity with the average institutional transaction price.
• Volume Anomaly (+2 Points): Detects a price move accompanied by an abnormally high relative volume (odd_vol_spike). This suggests potential institutional participation or significant order flow.
• VIX Integration (+2 Points): A score derived from the CBOE VIX index, assessing overall market stability and stress. Stable VIX levels add points, while high VIX levels (stress regimes) remove points or prevent signal generation entirely.
• ML Probability Score (+3 Points): This is the core predictive engine. It utilizes a Log-Manhattan Distance Kernel to compare the current market state against historical volatility patterns. The script implements a Log-linear distance formula (log(1 + |Δ|) ). This approach mathematically dampens the impact of extreme volatility spikes (outliers), ensuring that the similarity score reflects true structural alignment rather than transient market noise.
Core Technical Logic (Z-Score Normalization)
float cur_rsi_norm = d_rsi_std != 0 ? (raw_rsi - d_rsi_mean) / d_rsi_std : 0.0
• Technical Purpose: This line calculates the Z-Score (cur_rsi_norm) of the current momentum oscillator reading (raw_rsi) by normalizing it against the mean (d_rsi_mean) and standard deviation (d_rsi_std) derived from 252 days of Daily momentum data. If the standard deviation is zero (market is perfectly flat), it safely returns 0.0 to prevent division by zero runtime errors. This allows the AI's probability score to be based on the current signal's significance within the context of the entire trading year.
3. EXECUTION AND RISK MANAGEMENT (ATR MODEL)
The indicator utilizes the Average True Range (ATR) volatility model. This helps risk management scale dynamically with market volatility by allowing users to define TP/SL distances independently based on the current ATR.
Stop Loss Multiplier (sl_mult)
• Function: Sets the Stop Loss (SL) distance as a configurable multiple of the current ATR (e.g., 1.5 × ATR).
• Technical Logic: The price level is calculated as: last_sl_price := close - (atr_val * sl_mult). The mathematical sign is reversed for short trades.
Take Profit Multiplier (tp_mult)
• Function: Sets the Take Profit (TP) distance as a configurable multiple of the current ATR (e.g., 3.0 × ATR).
• Technical Logic: The price level is calculated as: last_tp_price := close + (atr_val * tp_mult). The mathematical sign is reversed for short trades.
Structural SL Option
• Function: Provides an override to the ATR-based SL calculation. When enabled, it forces the Stop Loss to the Pre-Market High/Low (PMH/PML) level, aligning the stop with a key institutional structural boundary.
• Technical Logic: The indicator checks the use_struct_sl input. If true, the calculated last_sl_price is overridden with either pm_h_val or pm_l_val, dependent on the specific trade direction.
Trend Continuation Logic
• Function: Enables signal generation in established, strong trends (typically in the Afternoon session) based on follow-through momentum (a new high/low of the previous bar) combined with a high Signal Score, rather than exclusively relying on the initial PMH/PML breakout.
• Technical Logic: For a long signal, the is_cont_long logic specifically requires checks like active_bias == s_bull AND close > high , confirming follow-through momentum within the established regime.
Smart Snapping & Cleanup (16:00 Market Close)
• Function: To maintain chart cleanliness, all trade boxes (TP/SL), AI Prediction zones, Killzone overlays (NY AM/PM), and Liquidity lines (PDH/PDL) are automatically "snapped" and cut off precisely at 16:00 NY Time (Market Close).
• Technical Logic: When is_market_close condition is met (hour == 16 and minute == 0), the script executes cleanup logic that:
◦ Closes active trades and evaluates final P&L
◦ Snaps all TP/SL box widths to current bar
◦ Truncates AI Prediction ghost boxes at market close
◦ Cuts off NY AM/PM Killzone background fills
◦ Terminates PDH/PDL line extensions
◦ Prevents visual clutter from extending into post-market sessions
4. LIQUIDITY AND STRUCTURAL ANALYSIS
The indicator plots key structural levels that serve as high-probability magnet zones or areas of potential liquidity absorption.
• Pre-Market High/Low (PMH/PML): These are the high and low established during the configured pre-market session (ny_pre_sess). They define the primary structural breakout level for the day, often serving as the initial market inflection point or the key entry level for the morning session.
• PDH (Previous Day High): The high of the calendar day immediately preceding the current bar. This represents a key Liquidity Pool; large orders are often placed above this level, making it a frequent target for stop hunts or liquidity absorption by market makers.
• PDL (Previous Day Low): The low of the calendar day immediately preceding the current bar. This also represents a key Liquidity Pool and a high-probability reversal or accumulation point, particularly during the Killzones.
FIFO Array Management
The indicator uses FIFO (First-In-First-Out) array structures to manage liquidity lines and labels, automatically deleting the oldest objects when the count exceeds 500 to comply with drawing object limits.
5. AI PREDICTION BOX (PREDICTIVE MODEL)
Function: Analyzes AI scores and volatility to project predicted killzone ranges and duration with asymmetric directional bias.
A. DIRECTIONAL BIAS (ASYMMETRIC EXPANSION)
The prediction model calculates directional probability using the ML kernel's 252-day Normalized RSI (Z-Score) and Relative Volume (RVOL). The prediction box dynamically adjusts its range based on this probability to provide immediate visual feedback on high-probability direction.
Bullish Scenario (ml_prob > 1.0):
• Upper Range: Expands significantly (1.5x multiplier) to show the aggressive upside target
• Lower Range: Tightens (0.5x multiplier) to show the invalidation level
• Visual Intent: The box is visibly skewed upward, immediately communicating bullish bias without requiring numerical analysis.
Bearish Scenario (ml_prob < -1.0):
• Upper Range: Tightens (0.5x multiplier) to show the invalidation level
• Lower Range: Expands significantly (1.5x multiplier) to show the aggressive downside target
• Visual Intent: The box is visibly skewed downward, immediately communicating bearish bias.
Neutral Scenario (-1.0 < ml_prob < 1.0):
Both ranges use balanced multipliers, creating a symmetrical box that indicates uncertainty.
B. DYNAMIC VOLATILITY BOOSTER (SESSION-BASED ADAPTATION)
The prediction box adjusts its volatility multiplier based on the current session and market conditions to account for intraday volatility patterns.
AM Session (Morning: 07:00-12:00):
• Base Multiplier: 1.0x (Neutral Base)
• Logic: Morning sessions often contain false breakouts and noise. The base multiplier starts neutral to avoid over-projecting during consolidation.
• Trend Booster: Multiplier jumps to 1.5x when:
Price > London Session Open AND AI is Bullish (ml_prob > 0), OR
Price < London Session Open AND AI is Bearish (ml_prob < 0)
• Logic: When the London trend (typically 03:00-08:00 NY time) aligns with the AI model's directional conviction, the indicator aggressively targets higher volatility expansion. This filters for "institutional follow-through" rather than random morning chop.
PM Session (Afternoon: 13:00-16:00):
• Fixed Multiplier: 1.8x
• Logic: The PM session, particularly the 13:30-16:00 ICT Silver Bullet window, often contains the "True Move" of the day. A higher baseline multiplier is applied to emphasize this session's significance over morning noise.
Safety Floor:
A minimum range of 0.2% of the current price is enforced regardless of volatility conditions.
• Purpose: Maintains the prediction box visibility during extreme low-volatility consolidation periods where ATR might collapse to near-zero values.
Volatility Clamp Protection:
Maximum volatility is capped at three times the current ATR value. During flash crashes, circuit breaker halts, or large overnight gaps, raw volatility calculations can spike to extreme levels. This clamp prevents prediction boxes from expanding to unrealistic widths.
Technical Implementation:
f_get_ai_multipliers(float _prob) =>
float _abs_prob = math.abs(_prob)
float _range_mult = 1.0
float _dur_mult = 1.0
if _abs_prob > 30
_range_mult := 1.8
else if _abs_prob > 10
_range_mult := 1.2
else
_range_mult := 0.7
C. PRACTICAL INTERPRETATION
• Wide Upper Range + Tight Lower Range: Strong bullish conviction. The model expects significant upside with limited downside risk.
• Tight Upper Range + Wide Lower Range: Strong bearish conviction. The model expects significant downside with limited upside.
• Symmetrical Range: Neutral/uncertain market. Wait for directional confirmation before entry.
• Large Box (Extended Duration): High-confidence prediction expecting sustained movement.
• Small Box (Short Duration): Low-confidence or choppy conditions. Expect quick resolution.
III. PRACTICAL USAGE GUIDE: METHODOLOGY AND EXECUTION
A. ESTABLISHING TRADING CONTEXT (THE THREE CHECKS)
The primary goal of the dashboard is to filter out low-probability trade setups before they occur.
• Timeframe Selection: Although the core AI is normalized to the Daily context, the indicator performs optimally on intraday timeframes (e.g., 5m, 15m) where session-based volatility is most pronounced.
• PHASE Check (Timing): Always confirm the current phase. The highest probability signals typically occur within the visually highlighted NY AM/PM Killzones because this is when institutional liquidity and volume are at their peak. Signals outside these zones should be treated with skepticism.
• MARKET REGIME Check (Bias): Ensure the signal (BUY/SELL arrow) aligns with the established MARKET REGIME bias (BULLISH/BEARISH). Counter-bias signals are technically allowed if the score is high, but they represent a higher risk trade.
• VIX REGIME Check (Risk): Review the VIX REGIME for overall market stress. Periods marked DANGER (high VIX) indicate elevated volatility and market uncertainty. During DANGER regimes, reducing position size or choosing a wider SL Multiplier is advisable.
B. DASHBOARD INTERPRETATION (THE REAL-TIME STATUS DISPLAY)
The indicator features a non-intrusive dashboard that provides real-time, context-aware information based on the core analytical engines.
PHASE: (PRE-MARKET, NY-AM, LUNCH, NY-PM)
• Meaning: Indicates the current institutional session time. This is derived from the customizable session inputs.
• Interpretation: Signals generated during NY-AM or NY-PM (Killzones) are generally considered higher-probability due to increased institutional participation and liquidity.
MARKET REGIME: (BULLISH, BEARISH, NEUTRAL)
• Meaning: The established directional bias for the trading day, confirmed by the price breaking above the Pre-Market High (PMH) or below the Pre-Market Low (PML).
• Interpretation: Trading with the established regime (e.g., taking a BUY signal when the regime is BULLISH) is the primary method. NEUTRAL indicates that the PMH/PML boundary has not yet been broken, suggesting market ambiguity.
VIX REGIME: (STABLE, DANGER)
• Meaning: A measure of overall market stress and stability, based on the CBOE VIX index integration. The thresholds (20.0 and 35.0 default) are customizable by the user.
• Interpretation: STABLE indicates stable volatility, favoring momentum trades. DANGER (VIX > 35.0) indicates extreme stress; signals generated in this environment require caution and often necessitate smaller position sizing.
SIGNAL SCORE: (0 to 10+ Points)
• Meaning: The accumulated score derived from the VOLATILITY NORMALIZED AI SCORING ENGINE, factoring in bias, VWAP alignment, volume, and the Z-Score probability.
• Interpretation: The indicator generates a signal when this score meets or exceeds the Minimum Entry Score (default 3). A higher score (e.g., 7+) indicates greater statistical confluence and a stronger potential entry.
AI PROBABILITY: (Bull/Bear %)
• Meaning: Directional probability derived from the ML kernel, expressed as a percentage with Bull/Bear label.
• Interpretation: Higher absolute values (>20%) indicate stronger directional conviction from the ML model.
LIVE METRICS SECTION:
• STATUS: Shows current trade state (LONG, SHORT, or INACTIVE)
• ENTRY: Displays the entry price for active trades
• TARGET: Shows the calculated Take Profit level
• ROI | KILL ZONE:
◦ For Active Trades: Displays real-time P&L percentage during NY session hours.
◦ At Market Close (16:00 NY): Since this is a NY session-specific indicator, any active position is automatically evaluated and closed at 16:00. The final result (VALIDATED or INVALIDATED) is determined based on whether the trade reached profit or loss at market close.
◦ Result Persistence: The killzone result (VALIDATED/INVALIDATED) remains displayed on the dashboard until the next NY AM KILLZONE session begins, providing a clear performance reference for the previous trading day.
Note: If a trade is still trending at 16:00, it will be force-closed and evaluated at that moment, as the indicator operates strictly within NY trading hours.
C. SIGNAL GENERATION AND ENTRY LOGIC
The indicator generates signals based on two distinct technical setups, both of which require the accumulated SIGNAL SCORE to be above the configured Minimum Entry Score.
Breakout Entry
• Trigger Condition: Price closes beyond the Pre-Market High (PMH) or Low (PML).
• Rationale: This setup targets the initial directional movement for the day. A breakout confirms the institutional bias by decisively breaking the first major structural boundary, making the signal high-probability.
Continuation Entry
• Trigger Condition: The market is already in an established regime (e.g., BULLISH), and the price closes above the high (or below the low) of the previous bar, while the SIGNAL SCORE remains high. Requires the Allow Trend Continuation parameter to be active.
• Rationale: This setup targets follow-through trades, typically in the afternoon session, capturing momentum after the morning's direction has been confirmed. This filters for sustainability in the established trend.
Execution: Execute the trade immediately upon the close of the bar that prints the BUY or SELL signal arrow.
D. MANAGING RISK AND EXITS
1. RISK PARAMETER SELECTION
The indicator immediately draws the dynamic TP/SL zones upon entry.
• Volatility-Based (Recommended Default): By setting the SL Multiplier (e.g., 1.5) and the TP Multiplier (e.g., 3.0), the indicator enforces a constant, dynamically sized risk-to-reward ratio (e.g., 1:2 in this example). This helps that risk management scales proportionally with the current market volatility (ATR).
• Structural Override: Selecting the Use Structural SL parameter fixes the stop-loss not to the ATR calculation, but to the more significant structural level of the PMH or PML. This is utilized by traders who favor institutional entry rules where the stop is placed behind the liquidity boundary.
2. EXIT METHODS
• Hard Exit: Price hits the visual TP or SL box boundary.
• Soft Exit (Momentum Decay Filter): If the trade is active and the SIGNAL SCORE drops below the Exit Score Threshold (default 3), it indicates that the momentum supporting the trade has significantly collapsed. This serves as a momentum decay filter, prompting the user to consider a manual early exit even if the SL/TP levels have not been hit, thereby preserving capital during low-momentum consolidation.
• Market Close Auto-Exit: At 16:00 NY time, any active trade is automatically closed and classified as VALIDATED (profit) or INVALIDATED (loss) based on current price vs. entry price.
IV. PARAMETER REFERENCE AND CONFIGURATION
A. GLOBAL SETTINGS
• Language (String, Default: English): Selects the language for the dashboard and notification text. Options: English, Korean, Chinese, Spanish, Portuguese, Russian, Ukrainian, Vietnamese.
B. SESSION TIMES (3 BOX SYSTEM)
• PRE-MARKET (Session, Default: 0800-0930): Defines the session range used for Pre-Market High/Low (PMH/PML) structural calculation.
• REGULAR (Morning) (Session, Default: 0930-1200): Defines the core Morning trading session.
• AFTERNOON (PM) (Session, Default: 1300-1600): Defines the main Afternoon trading session.
• Timezone (String, Default: America/New_York): Sets the timezone for all session and time-based calculations.
C. NY KILLZONES (OVERLAYS)
• Show NY Killzones (Bool, Default: True): Toggles the translucent background fills that highlight high-probability trading times (Killzones).
• NY AM Killzone (Session, Default: 0700-1000): Defines the specific time window for the first key liquidity surge (Open overlap).
• NY PM Killzone (Session, Default: 1330-1600): Defines the afternoon liquidity window, aligned with the ICT Silver Bullet and PM Trend entry timing.
• Allow Entry in Killzones (Bool, Default: True): Enables or disables signal generation specifically during the defined Killzone hours.
• Activate AI Prediction Box (Bool, Default: True): Toggles the drawing of the predicted target range boxes on the chart.
D. CORE SCORING ENGINE
• Minimum Entry Score (Int, Default: 3): The lowest accumulated score required for a Buy/Sell signal to be generated and plotted.
• Allow Trend Continuation (Bool, Default: True): Enables the secondary entry logic that fires signals based on momentum in an established trend.
• Force Ignore Volume (Bool, Default: False): Overrides the volume checks in the scoring engine. Useful for markets where volume data is unreliable or nonexistent.
• Force Show Signals (Ignore Score) (Bool, Default: False): Debug mode that displays all signals regardless of score threshold.
• Integrate CBOE:VIX (Bool, Default: True): Enables the connection to the VIX index for market stress assessment.
• Stable VIX (<) (Float, Default: 20.0): VIX level below which market stress is considered low (increases score).
• Stress VIX (>) (Float, Default: 35.0): VIX level above which market stress is considered high (decreases score/flags DANGER).
• Use ML Probability (Bool, Default: True): Activates the volatility-normalized AI Z-Score kernel. Disabling this removes the cross-timeframe normalization filter.
• Max Learning History (Int, Default: 2000): Maximum number of bars stored in the ML training arrays.
• Normalization Lookback (252 Days) (Int, Default: 252): The number of DAILY bars used to calculate the Z-Score mean and standard deviation (representing approximately 1 year of data).
E. RISK MANAGEMENT (ATR MODEL)
• Use Structural SL (Bool, Default: False): Overrides the ATR-based Stop Loss distance to use the Pre-Market High/Low as the fixed stop level.
• Stop Loss Multiplier (x ATR) (Float, Default: 1.5): Defines the Stop Loss distance in multiples of the current Average True Range (ATR).
• Take Profit Multiplier (x ATR) (Float, Default: 3.0): Defines the Take Profit distance in multiples of the current Average True Range (ATR).
• Exit Score Threshold (<) (Int, Default: 3): The minimum score below which an active trade is flagged for a Soft Exit due to momentum collapse.
F. VISUAL SETTINGS
• Show Dashboard (Bool, Default: True): Toggles the real-time data panel.
• Show NY Killzones (Bool, Default: True): Toggles killzone background fills.
• Show TP/SL Zones (Bool, Default: True): Toggles the drawing of Take Profit and Stop Loss boxes.
• Show Pre-Market Extensions (Bool, Default: True): Extends PM High/Low lines across the entire chart for support/resistance reference.
• Activate AI Prediction Box (Bool, Default: True): Enable or disable the predictive range projection.
• Light Mode Optimization (Bool, Default: True): Toggles dashboard and plot colors for optimal visibility on white (light) chart backgrounds.
• Enforce Trend Coloring (Bool, Default: True): Forces candle colors based on Market Regime (Bullish=Cyan, Bearish=Pink) to emphasize trend direction.
• Label Size (String, Default: Normal): Options: Tiny, Small, Normal.
G. LIQUIDITY POOLS (PDH/PDL)
• Show Liquidity Lines (Bool, Default: True): Toggles the display of the Previous Day High (PDH) and Low (PDL) lines.
• Liquidity High Color (Color, Default: Green): Color setting for the PDH line.
• Liquidity Low Color (Color, Default: Red): Color setting for the PDL line.
🔔 ALERT CONFIGURATION GUIDE
The indicator is equipped with specific alert conditions.
How to Set Up an Alert:
Click the "Alert" (Clock icon) in the top TradingView toolbar.
Select "Market Regime NY Session " from the Condition dropdown menu.
Choose one of the specific trigger conditions below depending on your strategy:
🚀 Available Alert Conditions
1. BUY (Long Entry)
Trigger: Fires immediately when a confirmed Bullish Setup is detected.
Conditions: Market Bias is Bullish (or valid Continuation) + Signal Score ≥ Minimum Entry Score.
Usage: Use this alert to open new Long positions or close existing Short positions.
2. SELL (Short Entry)
Trigger: Fires immediately when a confirmed Bearish Setup is detected.
Conditions: Market Bias is Bearish (or valid Continuation) + Signal Score ≥ Minimum Entry Score.
Usage: Use this alert to open new Short positions or close existing Long positions.
V. IMPORTANT TECHNICAL LIMITATIONS
⚠️ Intraday Only (Timeframe Compatibility)
This indicator is strictly designed for Intraday Timeframes (1m to 4h).
Daily/Weekly Charts: The session logic (e.g., "09:30-16:00") cannot function on Daily bars because a single bar encompasses the entire session. Session boxes, TP/SL zones, and AI prediction boxes will NOT draw on the Daily timeframe. Only the PDH/PDL liquidity lines remain visible on Daily charts. This is expected behavior, not a limitation.
Maximum Supported Timeframe: All visual components (session boxes, killzone overlays, TP/SL zones, AI prediction boxes) are displayed up to the 4-hour timeframe. Above this timeframe, only PDH/PDL lines and the dashboard remain functional.
⚠️ Drawing Object Limit (Max 500)
A single script can display a maximum of 500 drawing objects (boxes/lines) simultaneously.
On lower timeframes (e.g., 1-minute), where many signals and session boxes are generated, older history (typically beyond 10-14 days) will automatically disappear to make room for new real-time data.
For deeper historical backtesting visualization, switch to higher timeframes (e.g., 15m, 1h).
The indicator implements FIFO array management to comply with this limit while maintaining the most recent and relevant visual data.
VI. PRACTICAL TRADING TIPS AND BEST PRACTICES
• Killzone Confirmation: The highest statistical validity is observed when a high-score signal occurs directly within a visible NY AM/PM Killzone. Use the Killzones as a strict time filter.
• Liquidity Awareness (PDH/PDL): Treat the Previous Day High (PDH) and Low (PDL) lines as magnets. If your dynamic Take Profit (TP) is placed just above PDH, consider adjusting your target slightly below PDH or utilizing the Soft Exit, as liquidity absorption at these levels often results in sudden, sharp reversals that stop out a trade just before the target is reached.
• VIX as a Position Sizer: During DANGER VIX regimes, the resulting high volatility means the ATR value will be large. It is prudent to either reduce the SL Multiplier or, more commonly, reduce the overall position size to maintain a constant currency risk exposure per trade.
• Continuation Filter Timing: Trend Continuation signals are most effective during the Afternoon (PM) session when the morning's directional breakout has had time to establish a strong, clear, and sustainable trend. Avoid using them in the initial AM session when the direction is still being contested.
• 16:00 Market Close Rule: All trades, boxes, and lines are automatically cleaned up at 16:00 NY time. This prevents overnight chart clutter and maintains visual clarity.
VII. DISCLAIMER & RISK WARNINGS
• Educational Purpose Only
This indicator, including all associated code, documentation, and visual outputs, is provided strictly for educational and informational purposes. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments.
• No Guarantee of Performance
Past performance is not indicative of future results. All metrics displayed on the dashboard (including "ROI" and trade results) are theoretical calculations based on historical data. These figures do not account for real-world trading factors such as slippage, liquidity gaps, spread costs, or broker commissions.
• High-Risk Warning
Trading cryptocurrencies, futures, and leveraged financial products involves a substantial risk of loss. The use of leverage can amplify both gains and losses. Users acknowledge that they are solely responsible for their trading decisions and should conduct independent due diligence before executing any trades.
• Software Limitations
The software is provided "as is" without warranty. Users should be aware that market data feeds on analysis platforms may experience latency or outages, which can affect signal generation accuracy.
fmfm12 chosen chart timeframe. It monitors the price to determine:
Whether resistance has been broken → BUY signal
Or support has been broken → SELL signal
After a breakout or breakdown, the indicator automatically draws price targets (T1 / T2 / T3) as percentages from the breakout point, and also displays FVG (Fair Value Gaps) zones that indicate imbalances between supply and demand.
⚙️ Main Components
Support and Resistance Levels (Key Levels)
Automatically calculated from the 4-hour timeframe (180 minutes).
Draws lines:
Green = Resistance
Red = Support
Option to display a midline (blue).
Line style (solid / dashed / dotted), thickness, and label size are customizable.
Trading Signals (Signals)
When resistance is broken upward → BUY signal (green).
When support is broken downward → SELL signal (red).
Signal size is adjustable (small / large, etc.).
Price Targets (Targets)
After confirming a breakout or breakdown, the indicator draws:
T1 / T2 / T3 as horizontal lines in the breakout direction.
Target percentages are adjustable (default: 0.5%, 1%, 1.5%).
Different colors for bullish and bearish targets.
Fair Value Gaps (FVG)
Detects bullish and bearish gaps within a set number of candles (default: 10).
Draws transparent colored zones:
Light Green = Bullish Gap
Light Red = Bearish Gap
📊 Practical Usage
Add the indicator to TradingView (paste the code into the Pine Editor, save, and add it to the chart).
When the price approaches a support or resistance line, observe:






















