🏛️ Institutional SMC Logic & Auction Market Thesis
Volatility is strictly cyclical: periods of extreme compression inevitably precede violent directional expansions. When ATR and Bollinger Bandwidth pinch to historical lows, institutions accumulate silently before triggering an explosive breakout bar that expands range.
Permitted Market Regimes:
COMPRESSION EXPANSION TREND_UP TREND_DOWN CHOPPY
🔍 Phase 1: 1. Volatility Pinch
ATR contracts below 75% of 20-period average; multiple consecutive narrow range candles.
Active Structural Pivot
Compression Box High: 24,540.0
M5 Benchmark Level
Risk Geometry (SL)
18.0 - 24.0 Spot Pts
Capped by Max Risk Cap
Composite Entry Score
82.0% Conviction
Quality Gate Passed
Adaptive Scaling Profile
STANDARD_BALANCED
Dynamic High-Watermark
⚙️ Quantitative Quality Gates & Entry Scoring Filters
The strategy enforces strict fail-fast validation before computing the multi-factor confluence score:
| Filter / Quality Gate | Condition & Mathematical Threshold | Operational Impact & Protection |
|---|---|---|
| Coil ATR Compression | Coil Range <= 0.85x ATR (Mandatory) | Validates genuine pre-breakout pinch |
| Breakout Bar Body Ratio | Candle Body >= 60% of total range | Eliminates indecision wicks |
| Breakout Volume Surge | RVOL >= 1.40x (+0.10 Score) | Confirms institutional ignition |
| Box Range Bound | Box Range <= 40.0 points | Keeps initial stop-loss within risk budget |
| Directional Close | Close completely beyond box boundary | Prevents intraday wick traps |
🛑 Risk Geometry & Profit Booking Execution
Stop-Loss Geometry:
Opposite side of compression box or midpoint of the expansion breakout candle + 3.0 pts buffer. Maximum risk cap: 25.0 points.
Profit Booking & Scaling:
STANDARD_BALANCED profile: 50% partial at +1.5R, 30% partial at +2.5R, 20% runner with dynamic 65% profit floor retention.
Position Sizing Protocol:
Strictly allocated in integer multiples of 65 shares (NIFTY default) or configured
LOT_SIZE. Fractional lots are mathematically rounded up/down to preserve exchange execution validity.
🎯 Option Strike & Greeks Architecture
Strike Selection Rule:
ATM strike (Delta ~0.50) on non-expiry days; ATM ± 50 pts on expiry days. Tuesday weekly maturity.
Weekly Expiry Cycle:
Matures on Tuesday (or preponed to Monday if Tuesday is an official NSE exchange holiday). Automated holiday shift handled via
ExchangeCalendar.
Codebase Implementation:
Class:
Source File:
CompressionExpansionStrategySource File:
nifty_expansion_runner/strategies/compression_expansion.py