Mean Reversion — BB + Z-Score + RSI + EMA200 (TP at Opposite Z)This is a systematic mean-reversion framework for index futures and other liquid assets.
This strategy combines Bollinger Bands, Z-Score dislocation, RSI extremes, and a trend-filtering EMA200 to capture short-term mean-reversion inefficiencies in NQ1!. It is designed for high-volatility conditions and uses a precise exit model based on opposite-side Z-Score targets and dynamic mid-band failure detection.
🔍 Entry Logic (Mean Reversion) :
The strategy enters trades only when multiple confluence signals align:
Long Setup
Price at or below the lower Bollinger Band
Z-Score ≤ –Threshold (deep statistical deviation)
RSI ≤ oversold level
Price below the EMA-200 (countertrend mean-reversion only)
Cooldown must be completed
No open position
Short Setup
Price at or above the upper Bollinger Band
Z-Score ≥ Threshold
RSI ≥ overbought level
Price above the EMA-200
Cooldown complete
No open position
This multi-signal gate filters out weak reversions and focuses on mature dislocations.
🎯 Take-Profit Model: Opposite-Side Z-Score Target :
Once in a trade, take-profit is set by solving for the price where the Z-Score reaches the opposite side:
Long TP = Z = +Threshold
Short TP = Z = –Threshold
This creates a symmetric statistical exit based on reverting to equilibrium plus overshoot.
🛡️ Stop-Loss System (Volatility-Aware) :
Stop losses combine:
A fixed base stop (points)
A standard-deviation volatility component
This adapts the SL to regime changes and avoids being shaken out during rare volatility spikes.
⏳ Half-Life Exit :
If a trade has not reverted within a fixed number of bars, it automatically closes.
This prevents “mean-reversion traps” during trending periods.
📉 Advanced Mid-Band Exit Logic (BB Basis Failure) :
This is the unique feature of the system.
After entry:
Wait for price to cross the Bollinger Basis (middle band) in the direction of the mean.
Start a 5-bar delay timer.
After 5 bars, the strategy becomes “armed.”
Once armed:
If price fails back through the mean, exit immediately.
Intrabar exits trigger precisely (with tick-level precision if Bar Magnifier is enabled).
This protects profits and exits trades at the first sign of mean-failure.
⏱️ Cooldown System :
After each closed trade, a cooldown period prevents immediate re-entry.
This avoids clustering and improves statistical independence of trades.
🖥️ What This Strategy Is Best For :
High-volatility intraday NQ conditions
Statistical mean reversion with structured confluence
Traders who want clean, rule-based entries
Avoiding trend-day traps using EMA and half-life logic
📊 Included Visual Elements :
Bollinger Bands (Upper, Basis, Lower)
BUY/SELL markers at signal generation
Optional alerts for automated monitoring
🚀 Summary :
This is a precision mean-reversion system built around volatility bands, statistical dislocation, and price-behavior confirmation. By combining Z-Score, RSI, EMA200 filtering, and a sophisticated mid-band failure exit, this model captures high-probability reversions while avoiding the common pitfalls of naive band-touch systems.
แบนด์และแชนแนล
ES-VIX Expected Move LTF LevelsES-VIX LTF Price Bands
This indicator plots dynamic intraday price bands for ES futures based on real-time volatility levels measured by the VIX (CBOE Volatility Index). The bands evolve throughout the trading day, providing volatility-adjusted price targets.
Formulas:
Upper Band = (Input TF Open) + (ES Price × VIX x √(Input TF ÷ (23h in min) ) ÷ 100
Lower Band = Daily Open - (ES Price × VIX x √(Input TF ÷ (23h in min) ) ÷ 100
The calculation uses the square root of Input TF ÷ (23h in min) to convert annualized VIX volatility into an expected TF move, then scales it as a percentage adjustment from the current TF input's open.
Features:
Real-time band calculation that updates throughout the trading session
Upper band (green) extends from the current TF's open
Lower band (red) contracts from the current TF's open
Inner upper band (green) at 50% of expected move
Inner lower band (red) at 50% of expected move
Middle Inner upper band (green) at 80% of expected move
Middle Inner lower band (red) at 80% of expected move
Information table displaying:
Current input TF
Current ES price and VIX level
Current input TF Open
Expected move
RSI + EMA Dynamic Zones + Volume + Divergence (with RSI 50 line)RSI + EMA Dynamic Zones + Volume + Divergence (with RSI 50 line)
ES-VIX Daily Price Bands - Inner bands (80% and 50%)ES-VIX Daily Price Bands
This indicator plots dynamic intraday price bands for ES futures based on real-time volatility levels measured by the VIX (CBOE Volatility Index). The bands evolve throughout the trading day, providing volatility-adjusted price targets.
Formulas:
Upper Band = Daily Low + (ES Price × VIX ÷ √252 ÷ 100)
Lower Band = Daily High - (ES Price × VIX ÷ √252 ÷ 100)
The calculation uses the square root of 252 (trading days per year) to convert annualized VIX volatility into an expected daily move, then scales it as a percentage adjustment from the current day's extremes.
Features:
Real-time band calculation that updates throughout the trading session
Upper band (green) extends from the current day's low
Lower band (red) contracts from the current day's high
Inner upper band (green) at 50% of expected move
Inner lower band (red) at 50% of expected move
Middle Inner upper band (green) at 80% of expected move
Middle Inner lower band (red) at 80% of expected move
Shaded zone between bands for visual clarity
Information table displaying:
Current ES price and VIX level
Running daily high and low
Current upper and lower band values
ES-VIX Daily Price BandsES-VIX Daily Price Bands
This indicator plots dynamic intraday price bands for ES futures based on real-time volatility levels measured by the VIX (CBOE Volatility Index). The bands evolve throughout the trading day, providing volatility-adjusted price targets.
Formulas:
Upper Band = Daily Low + (ES Price × VIX ÷ √252 ÷ 100)
Lower Band = Daily High - (ES Price × VIX ÷ √252 ÷ 100)
The calculation uses the square root of 252 (trading days per year) to convert annualized VIX volatility into an expected daily move, then scales it as a percentage adjustment from the current day's extremes.
Features:
Real-time band calculation that updates throughout the trading session
Upper band (green) extends from the current day's low
Lower band (red) contracts from the current day's high
Shaded zone between bands for visual clarity
Information table displaying:
Current ES price and VIX level
Running daily high and low
Current upper and lower band values
ATR Based TMA Bands [NeuraAlgo]ATR-Based TMA Bands
ATR-Based TMA Bands is a volatility-adaptive channel system built around a smoothed Triangular Moving Average (TMA).
It identifies trend direction, momentum shifts, and reversal opportunities using a combination of TMA structure and ATR-driven channel expansion.
Perfect for traders who want a clean, intelligent, and adaptive market framework.
Made by NeuraAlgo.
🔷 How It Works
1. 🔹 TMA Midline (Core Trend)
The indicator builds a smooth and stable midline using:
📐 Triangular Moving Average
🔄 Additional EMA smoothing
This creates a low-noise trend curve that reacts cleanly to real momentum changes.
2. 📈 Volatility-Adjusted Bands
The channels are built from:
📊 Standard Deviation × Expansion Multiplier
📏 Three ATR-based outer layers
These bands:
Expand in high volatility
Contract in stable markets
Reveal pullbacks, breakout zones, and exhaustion points
3. 🔁 Trend Tilt Algorithm
Slope is measured using an ATR-normalized tilt formula:
atrBase = ta.atr(smoothLen)
tilt = (midline - midline ) / (0.1 * atrBase)
This classifies the trend into:
Bullish
Bearish
Neutral
The bar colors and midline adjust automatically to match market direction.
4. 🔄 Reversal Detection (Turn Signals)
The indicator flags directional flips:
Turn Up → bearish → bullish shift
Turn Down → bullish → bearish shift
These are early reversal alerts ideal for swing traders.
5. 🎯 Flip Buy / Flip Sell Signals
Deep volatility extensions create high-probability re-entry zones:
Flip Buy → price rebounds from oversold ATR zone
Flip Sell → price rejects from overbought ATR zone
Great for:
Mean-reversion entries
Trend re-tests
Pullback trades
Exhaustion signals
📌 How to Use This Indicator
✔ Trend Trading
Follow trend using tilt-colored candles
Use midline as dynamic trend filter
Use channels for breakout/pullback entries
✔ Reversal Trading
Watch for Turn Up / Turn Down labels
Flip signals show where the market is over-stretched
✔ Risk Management
ATR channels automatically adjust to volatility
Helps with smarter SL/TP placement
⭐ Best For
Trend traders
Swing traders
Reversal hunters
Volatility lovers
Anyone wanting a smart, clean technical framework
💡 Core Features
TMA-smoothed trend detection
Multi-layer ATR expansion channels
Intelligent trend tilt algorithm
Turn Up / Turn Down reversal markers
Flip Buy / Flip Sell exhaustion signals
Adaptive bar coloring
Clean and professional visual design
rahulp33It is a 15-min high-low for the day; this will help the fellow chartist understand a trend emerging for the day. This indicator, along with others, gives a general sense of the daily trend, but it's not the sole factor to consider.
MA Crossover20 Ema
200 Day Crossover
Marks Death and Golden Cross
Useful for longterm time frames and finding trends.
Can be used for intraday scalping but advised to be used with price action and other indicators like Williams %R or VWAP.
PersonsPivots-UpdatedThe script was written by another script writer and it worked fine with Futures, Forex and ETFs but had a Runtime error for stocks so I had a coder friend do a debug
Structure Break Out + rsi divergence + alma SIMPLIFIED OBJECTIVE (dyor, nfa, test different assets and diff TF)
The goal of this script is to act as a Reversal Sniper. Most traders lose money by trying to guess the top or bottom of a market too early. This strategy solves that by waiting for two specific events to happen together:
First, a hidden shift in momentum (RSI Divergence).
Second, a confirmed change in price direction (Crossing the ALMA 20 Blue Line).
This ensures you only enter a trade when the market has confirmed it is ready to reverse.
TRADING RULES
BUY SIGNAL (Long Position)
Step 1: Look for a GREEN DIV label below the candles. This warns you that sellers are exhausted.
Step 2: Wait for a GREEN TRIANGLE with the text GO. This confirms the price has crossed above the Blue Line.
Step 3: Enter the Buy trade immediately when the candle with the GO signal closes.
SELL SIGNAL (Short Position)
Step 1: Look for a RED DIV label above the candles. This warns you that buyers are exhausted.
Step 2: Wait for a RED TRIANGLE with the text GO. This confirms the price has crossed below the Blue Line.
Step 3: Enter the Sell trade immediately when the candle with the GO signal closes.
EXIT RULES (How to Close the Trade)
The script draws lines on the chart to help you manage the trade.
Scenario A: The Perfect Win (Target Hit)
If price hits the Green Line, the trade is closed automatically for a profit. This is your Risk-Reward Target.
Scenario B: The Trend Change (Reversal)
If the price turns around and crosses the Blue Line in the wrong direction, close the trade immediately. Do not wait for the stop loss. This protects your profits or keeps losses small.
Scenario C: The Safety Net (Stop Loss)
If price hits the Red Line, the trade is closed for a loss. This is your safety guard to prevent a small loss from becoming a big one.
IMPORTANT NOTES
Never trade a DIV label without a GO signal. The DIV is just a warning; the GO is the trigger.
- This strategy works best on 15-Minute and 1-Hour timeframes.
- If t
he Blue Line is flat, be careful, as the market may be ranging. Ideally, you want to see the Blue Line angling up or down.
ES-VIX Daily Price Bands - Inner bandsES-VIX Daily Price Bands
This indicator plots dynamic intraday price bands for ES futures based on real-time volatility levels measured by the VIX (CBOE Volatility Index). The bands evolve throughout the trading day, providing volatility-adjusted price targets.
Formulas:
Upper Band = Daily Low + (ES Price × VIX ÷ √252 ÷ 100)
Lower Band = Daily High - (ES Price × VIX ÷ √252 ÷ 100)
The calculation uses the square root of 252 (trading days per year) to convert annualized VIX volatility into an expected daily move, then scales it as a percentage adjustment from the current day's extremes.
Features:
Real-time band calculation that updates throughout the trading session
Upper band (green) extends from the current day's low
Lower band (red) contracts from the current day's high
Inner upper band (green) at 50% of expected move
Inner lower band (red) at 50% of expected move
Shaded zone between bands for visual clarity
Information table displaying:
Current ES price and VIX level
Running daily high and low
Current upper and lower band values
Session Markers - JDK AnalysisSession Markers is a tool designed to study how markets behave during specific, recurring time windows. Many traders know that price behaves differently depending on the day of the week, the time of the day, or particular market sessions such as the weekly open, the London session, or the New York open. This indicator makes those recurring windows visible on the chart and then analyzes what price typically does inside them. The result is a clear statistical understanding of how a chosen session behaves, both in direction and in strength.
The script works by allowing the trader to define any time window using a start day and time and an end day and time. Every time this window occurs on the chart, the indicator highlights it with a full-height vertical band. These visual markers reveal patterns that are otherwise difficult to detect manually, such as whether certain sessions tend to trend, reverse, consolidate, or create large imbalances. They also help the trader quickly scan through historical price action to see how the market has behaved under similar conditions.
For every completed session window, the indicator measures how much price changed from the moment the window began to the moment it ended. Instead of using raw price differences, it converts these changes into percentage moves. This makes the measurement consistent across different price ranges and market regimes. A one-percent move always has the same meaning, whether the asset is trading at 100 or 50,000. These percentage moves are collected for a user-selected number of past sessions, creating a dataset of how the market has behaved in the chosen time window.
Based on this dataset, the indicator generates several statistics. It counts how many past sessions closed higher and how many closed lower, producing a directional tendency. It also computes the probability of an upward session by dividing the number of positive sessions by the total. More importantly, it calculates the average percentage movement for all sessions in the lookback period. This average move reflects not just the direction but also the magnitude of price changes. A session with frequent small upward moves but occasional large downward moves will show a negative average movement, even if more sessions ended positive. This creates a more realistic representation of true market behavior.
Using this average movement, the script determines a “Bias” for the session. If the average percentage move is positive, the bias is considered bullish. If it is negative, the bias is bearish. If the values are very close to zero, the bias is neutral. This way, the indicator takes both frequency and impact into account, producing a magnitude-aware assessment instead of one that only counts wins and losses. A sequence such as +5%, –1% results in a bullish bias because the overall impact is strongly positive. On the other hand, a series of small gains followed by a large drop produces a bearish bias even if more sessions ended positive, because the large move dominates the average. This provides a far more truthful picture of what the market tends to do during the chosen window.
All relevant statistics are displayed neatly in a small panel in the top-right corner of the chart. The panel updates in real time as new sessions complete and older ones fall out of the lookback range. It shows how many sessions were analyzed, how many ended up or down, the probability of an upward move, the average percentage change, and the final bias. The background color of the panel instantly reflects that bias, making it easy to interpret at a glance.
To use the tool effectively, the trader simply needs to define a time window of interest. This could be something like the weekly opening window from Sunday to Monday, the London open each day, or even a unique custom window. After selecting how many past sessions to analyze, the indicator takes care of the rest. The vertical session markers reveal the structure visually. The statistics summarize the historical behavior objectively. The magnitude-weighted bias provides a realistic indication of whether the window tends to produce upward or downward movement on average.
Session Markers is helpful because it translates repeated market timing behavior into measurable data. It exposes hidden tendencies that are easy to feel intuitively but hard to quantify manually. By analyzing both direction and magnitude, it prevents misleading interpretations that can arise from looking only at win rates. It helps traders understand whether a session typically produces meaningful moves or just small noise, whether it tends to trend or reverse, and whether its behavior has recently changed. Whether used for bias building, session filtering, or deeper market research, it offers a structured framework for understanding the market through time-based patterns.
rahulpatkiIt is a 15-min high-low for the day; this will help the fellow chartist understand a trend emerging for the day. This indicator, along with others, provides a general idea of the daily trend, but it is not the only one to consider.
SymFlex Band - MAD, RSI, ATRThe SymFlex Band is an adaptive volatility and momentum framework that merges
three independent band models into a unified analytical tool.
• The MAD Band measures deviation from the moving average using Median Absolute Deviation,
providing a stable view of range-based volatility.
• The RSI Momentum Band adjusts its upper and lower boundaries asymmetrically,
expanding in the direction of momentum and contracting against it.
• The ATR Band captures classical volatility expansion for breakout and trend-continuation conditions.
Rather than placing the three indicators separately on a chart, the script synchronizes
their center-line logic, compares their band distances, identifies the nearest active band,
and displays real-time correlation between their dynamic ranges.
This structure helps traders understand whether price behavior is dominated by
range compression, momentum imbalance, or volatility expansion.
The table summarizes:
• active band ranges
• breakout status
• distance from each band
• cross-band correlation
This indicator is designed purely for analysis. It does not generate trade entries.
Multi-Timeframe Opening RangeMulti Time frame range created to find trends and look for blocks of time in which the market is most likely to pivot.
Also assists in finding trends more easily highs and lows.
Take bounces and rejections off the boxes it works well.
Physics of PricePhysics of Price is a non-repainting kinematic reversal and volatility overlay. It models price as a physical object with position, velocity, and acceleration, then builds adaptive bands and a short-term predictive “ghost cone” to highlight where reversals are statistically more likely.
CONCEPT
Instead of using only moving averages, the core engine tracks a smoothed price (position), trend speed (velocity), and change in trend speed (acceleration). Standard deviation of the model error defines probabilistic bands around this kinematic centerline. When price stretches too far away and snaps back, the move is treated as a potential exhaustion event.
CORE COMPONENTS
– Kinematic centerline (Alpha–Beta–Gamma style filter) that bends with trend instead of lagging like a simple MA.
– Inner and outer bands based on the standard deviation of residuals between price and the kinematic model.
– Regime filter using R² and band width to avoid signals in chaotic or ultra-wide regimes.
– Optional RSI “hook” filter that waits for momentum to actually turn instead of buying into a falling RSI.
– Optional divergence add-on using kinematic velocity, so a marginal new price extreme with weaker velocity is recognized as a possible exhaustion pattern.
REVERSAL EVENTS AND SCORING
Raw events are detected when price wicks through the outer band and closes back inside (band hit with snap). These are plotted as diamonds and treated as candidates, not automatic trades.
Each event is then scored from 0 to 100 using several factors:
– How far price overshot the outer band.
– How strongly it snapped back inside.
– Whether an RSI hook is present (if enabled).
– Regime quality from the kinematic model.
– Basic kinematic safety to avoid the most aggressive “knife-catch” situations.
– Optional divergence bonus when price makes a new extreme but velocity does not.
Only events with a score above the chosen threshold become confirmed signals (triangles labeled PHYSICS REV).
GHOST CONE (PREDICTIVE BAND)
On the latest bar, the script projects a short-horizon “ghost cone” into the future using position, velocity, and a damped acceleration term. This creates a curved predictive band that visualizes a plausible short-term path and range, rather than a simple straight line. The cone is meant as context for trade management and risk, not as a hard target.
FILTERS AND OPTIONS
– Regime filter (R² and band width) can be tightened or relaxed depending on how selective you want the engine to be.
– RSI and volume filters can be toggled on for extra confirmation or off to see the raw kinematic behavior.
– An optional trend baseline (EMA) can be enabled to bias or restrict reversals relative to a higher-timeframe trend.
– Dynamic cooldown scales with volatility so the script does not spam signals in fast environments.
HOW TO USE
Physics of Price is primarily a mean-reversion and exhaustion tool. It works best in markets that respect ranges, swings, and two-sided order flow. Confirmed PHYSICS REV signals near the outer bands, with decent model health and a clean RSI hook, are the core use case. The bands and ghost cone can also be used as a context overlay alongside your own entries, exits, and risk framework.
This is an indicator, not a complete trading system. It does not use lookahead or higher-timeframe security calls and is designed for “once per bar close” alerts. Always combine it with your own risk management and confluence.
Keltner Hull Suite [QuantAlgo]🟢 Overview
The Keltner Hull Suite combines Hull Moving Average positioning with double-smoothed True Range banding to identify trend regimes and filter market noise. The indicator establishes upper and lower volatility bounds around the Hull MA, with the trend line conditionally updating only when price violates these boundaries. This mechanism distinguishes between genuine directional shifts and temporary price fluctuations, providing traders and investors with a systematic framework for trend identification that adapts to changing volatility conditions across multiple timeframes and asset classes.
🟢 How It Works
The calculation foundation begins with the Hull Moving Average, a weighted moving average designed to minimize lag while maintaining smoothness:
hullMA = ta.hma(priceSource, hullPeriod)
The indicator then calculates true range and applies dual exponential smoothing to create a volatility measure that responds more quickly to volatility changes than traditional ATR implementations while maintaining stability through the double-smoothing process:
tr = ta.tr(true)
smoothTR = ta.ema(tr, keltnerPeriod)
doubleSmooth = ta.ema(smoothTR, keltnerPeriod)
deviation = doubleSmooth * keltnerMultiplier
Dynamic support and resistance boundaries are constructed by applying the multiplier-scaled volatility deviation to the Hull MA, creating upper and lower bounds that expand during volatile periods and contract during consolidation:
upperBound = hullMA + deviation
lowerBound = hullMA - deviation
The trend line employs a conditional update mechanism that prevents premature trend reversals. The system maintains the current trend line until price action violates the respective boundary, at which point the trend line snaps to the violated bound:
if upperBound < trendLine
trendLine := upperBound
if lowerBound > trendLine
trendLine := lowerBound
Directional bias determination compares the current trend line value against its previous value, establishing bullish conditions when rising and bearish conditions when falling. Signal generation occurs on state transitions, triggering alerts when the trend state shifts from neutral or opposite direction:
trendUp = trendLine > trendLine
trendDown = trendLine < trendLine
longSignal = trendState == 1 and trendState != 1
shortSignal = trendState == -1 and trendState != -1
The visualization layer creates a trend band by plotting both the current trend line and a two-bar shifted version, with the area between them filled to create a visual channel that reinforces directional conviction.
🟢 How to Use This Indicator
▶ Long and Short Signals: The indicator generates long/buy signals when the trend state transitions to bullish (trend line begins rising) and short/sell signals when transitioning to bearish (trend line begins falling). These state changes represent structural shifts in momentum where price has broken through the adaptive volatility bands, confirming directional commitment.
▶ Trend Band Dynamics: The spacing between the main trend line and its shifted counterpart creates a visual band whose width reflects trend strength and momentum consistency. Expanding bands indicate accelerating directional movement and strong trend persistence, while contracting or flattening bands suggest decelerating momentum, potential trend exhaustion, or impending consolidation. Monitoring band width provides early warning of regime transitions from trending to range-bound conditions.
▶ Preconfigured Presets: Three optimized parameter sets accommodate different trading styles and timeframes. Default (14, 20, 2.0) provides balanced trend identification suitable for daily charts and swing trading, Fast Response (10, 14, 1.5) delivers aggressive signal generation optimized for intraday scalping and momentum trading on 1-15 minute timeframes, while Smooth Trend (18, 30, 2.5) offers conservative trend confirmation ideal for position trading on 4-hour to daily charts with enhanced noise filtration.
▶ Built-in Alerts: Three alert conditions enable automated monitoring - Bullish Trend Signal triggers on long setup confirmation, Bearish Trend Signal activates on short setup confirmation, and Trend Change alerts on any directional transition. These notifications allow you to respond to regime shifts without continuous chart monitoring.
▶ Color Customization: Five visual themes (Classic, Aqua, Cosmic, Ember, Neon, plus Custom) accommodate different chart backgrounds and display preferences, ensuring optimal contrast and visual clarity across trading environments.
NIFTY Weekly Option Seller DirectionalHere’s a straight description you can paste into the TradingView “Description” box and tweak if needed:
---
### NIFTY Weekly Option Seller – Regime + Score + Management (Single TF)
This indicator is built for **weekly option sellers** (primarily NIFTY) who want a **structured regime + scoring framework** to decide:
* Whether to trade **Iron Condor (IC)**, **Put Credit Spread (PCS)** or **Call Credit Spread (CCS)**
* How strong that regime is on the current timeframe (score 0–5)
* When to **DEFEND** existing positions and when to **HARVEST** profits
> **Note:** This is a **single timeframe** tool. The original system uses it on **4H and 1D separately**, then combines scores manually (e.g., using `min(4H, 1D)` for conviction and lot sizing).
---
## Core logic
The script classifies the market into 3 regimes:
* **IC (Iron Condor)** – range/mean-reversion conditions
* **PCS (Put Credit Spread)** – bullish/trend-up conditions
* **CCS (Call Credit Spread)** – bearish/trend-down conditions
For each regime, it builds a **0–5 score** using:
* **EMA stack (8/13/34)** – trend structure
* **ADX (custom DMI-based)** – trend strength vs range
* **Previous-day CPR** – in CPR vs break above/below
* **VWAP (session)** – near/far value
* **Camarilla H3/L3** – for IC context
* **RSI (14)** – used as a **brake**, not a primary signal
* **Daily trend / Daily ADX** – used as **hard gates**, not double-counted as extra points
Then:
* Scores for PCS / CCS / IC are **cross-penalised** (they pull each other down if conflicting)
* Final scores are **smoothed** (current + previous bar) to avoid jumpy signals
The **background colour** shows the current regime and conviction:
* Blue = IC
* Green = PCS
* Red = CCS
* Stronger tint = higher regime score
---
## Scoring details (per timeframe)
**PCS (uptrend, bullish credit spreads)**
* +2 if EMA(8) > EMA(13) > EMA(34)
* +1 if ADX > ADX_TREND
* +1 if close > CPR High
* +1 if close > VWAP
* RSI brake:
* If RSI < 50 → PCS capped at 2
* If RSI > 75 → PCS capped at 3
* Daily gating:
* If daily EMA stack is **not** uptrend → PCS capped at 2
**CCS (downtrend, bearish credit spreads)**
* +2 if EMA(8) < EMA(13) < EMA(34)
* +1 if ADX > ADX_TREND
* +1 if close < CPR Low
* +1 if close < VWAP
* RSI brake:
* If RSI > 50 → CCS capped at 2
* If RSI < 25 → CCS capped at 3
* Daily gating:
* If daily EMA stack is **not** downtrend → CCS capped at 2
**IC (range / mean-reversion)**
* +2 if ADX < ADX_RANGE (low trend)
* +1 if close inside CPR
* +1 if near VWAP
* +0.5 if inside Camarilla H3–L3
* +1 if daily ADX < ADX_RANGE (daily also range-like)
* +0.5 if RSI between 45 and 55 (classic balance zone)
* Daily gating:
* If daily ADX ≥ ADX_TREND → IC capped at 2 (no “strong IC” in strong trends)
**Cross-penalty & smoothing**
* Each regime’s raw score is reduced by **0.5 × max(other two scores)**
* Final IC / PCS / CCS scores are then **smoothed** with previous bar
* Scores are always clipped to ** **
---
## Regime selection
* If one regime has the highest score → that regime is selected.
* If there is a tie or close scores:
* When ADX is high, trend regimes (PCS/CCS) are preferred in the direction of the EMA stack.
* When ADX is low, IC is preferred.
The selected regime’s score is used for:
* Background colour intensity
* Minimum score gate for alerts
* Display in the info panel
---
## DEFEND / HARVEST / REGIME alerts
The script also defines **management signals** using ATR-based buffers and Camarilla breaks:
* **DEFEND**
* Price moving too close to short strikes (PCS/CCS/IC) relative to ATR, or
* Trend breaks through Camarilla with ADX strong
→ Suggests rolling away / widening / converting to reduce risk.
* **HARVEST**
* Price has moved far enough from your short strikes (in ATR multiples) and market is still range-compatible
→ Suggests booking profits / rolling closer / reducing risk.
* **REGIME CHANGED**
* Regime flips (IC ↔ PCS/CCS) with cooldown and minimum score gate
→ Suggests switching playbook (range vs trend) for new entries.
Each of these has a plotshape label plus an `alertcondition()` for TradingView alerts.
---
## UI / Panel
The **top-right panel** (optional) shows:
* Strategy + final regime score (IC / PCS / CCS, x/5)
* ADX / RSI values
* CPR status (Narrow / Normal / Wide + %)
* EMA Stack (Up / Down / Mixed) and EMA tightness
* VWAP proximity (Near / Away)
* Final **IC / PCS / CCS** scores (for this timeframe)
* H3/L3, H4/L4, CPR Low/High and VWAP levels (rounded)
These values are meant to be **read quickly at the decision time** (e.g. near the close of the 4H bar or daily bar).
---
## Intended workflow
1. Run the script on **4H** and **1D** charts separately.
2. For each timeframe, read the panel’s **IC / PCS / CCS scores** and regime.
3. Decide:
* Final regime (IC vs PCS vs CCS)
* Combined score (e.g. `AlignScore = min(Score_4H, Score_1D)`)
4. Map that combined score to **your own lot-size buckets** and trade rules.
5. During the life of the position, use **DEFEND / HARVEST / REGIME** alerts to adjust.
The script does **not** auto-calculate lot size or P&L. It focuses on giving a structured, consistent **market regime + strength + levels + management** layer for weekly option selling.
---
## Disclaimer
This is a discretionary **decision-support tool**, not a guarantee of profit or a replacement for risk management.
No performance is implied or promised. Always size positions and manage risk according to your own capital, rules, and regulations.
DH EMA 28/72/200 Unified Ribbon (Scaled HTF)Unified EMA Ribbon (28/72/200)
This indicator merges two popular EMA systems — 21/55/200 and 34/89/200 — into a single, smoother trend-tracking ribbon.
Each pair of EMAs is averaged to create:
EMA 28 (average of 21 & 34)
EMA 72 (average of 55 & 89)
EMA 200 retained as long-term trend filter
The unified ribbon reduces noise, improves trend clarity, and provides clean pullback zones for high-probability entries, especially on the H1 timeframe.
21-50-100 EMA Crossover indicatorSimple EMA crossover indicator visualizing 21-50-100 EMA crossovers.
NQ-VIX Expected Move LTF LevelsNQ -VIX LTF Price Bands
This indicator plots dynamic intraday price bands for NQ futures based on real-time volatility levels measured by the VIX (CBOE Volatility Index). The bands evolve throughout the trading day, providing volatility-adjusted price targets.
Formulas:
Upper Band = (Input TF Open) + (NQ Price × VIX x √(Input TF ÷ (23h in min) ) ÷ 100
Lower Band = Daily Open - (NQ Price × VIX x √(Input TF ÷ (23h in min) ) ÷ 100
The calculation uses the square root of Input TF ÷ (23h in min) to convert annualized VIX volatility into an expected TF move, then scales it as a percentage adjustment from the current TF input's open.
Features:
Real-time band calculation that updates throughout the trading session
Upper band (green) extends from the current TF's open
Lower band (red) contracts from the current TF's open
Inner upper band (green) at 50% of expected move
Inner lower band (red) at 50% of expected move
Middle Inner upper band (green) at 80% of expected move
Middle Inner lower band (red) at 80% of expected move
Information table displaying:
Current input TF
Current NQ price and VIX level
Current input TF Open
Expected move
ES-VIX Expected Move - Open basedES-VIX Daily Price Bands
This indicator plots dynamic intraday price bands for ES futures based on real-time volatility levels measured by the VIX (CBOE Volatility Index). The bands evolve throughout the trading day, providing volatility-adjusted price targets.
Formulas:
Upper Band = Daily Open + (ES Price × VIX ÷ √252 ÷ 100)
Lower Band = Daily Open - (ES Price × VIX ÷ √252 ÷ 100)
The calculation uses the square root of 252 (trading days per year) to convert annualized VIX volatility into an expected daily move, then scales it as a percentage adjustment from the current day's open.
Features:
Real-time band calculation that updates throughout the trading session
Upper band (green) extends from the current day's open
Lower band (red) contracts from the current day's open
Inner upper band (green) at 50% of expected move
Inner lower band (red) at 50% of expected move
Middle Inner upper band (green) at 80% of expected move
Middle Inner lower band (red) at 80% of expected move
Information table displaying:
Current ES price and VIX level
Daily Open
Expected move






















