OPEN-SOURCE SCRIPT

[ A L P H A X ] CATALYST - Volatility & Regime Prediction Engine

1 578
AlphaX CATALYST — Volatility Ignition & Regime Prediction Engine: Compression Cycle Detection, Bias Vector Scoring, 6-Stage Regime State Machine & Ignition Probability Gate

AlphaX CATALYST is a professional-grade volatility prediction system built on a fundamentally different philosophy from every other indicator in the AlphaX suite. Where VOID, SURGE, FORTRESS, and ANCHOR all detect setups after price has established a structural context, CATALYST reads the market before the move happens. It does not wait for a breakout to confirm entry — it measures the energy compressing inside the market during quiet periods and predicts the ignition point before the explosion occurs. The core insight is simple but profound: markets breathe in cycles. They compress, coil, and then release energy in directional bursts. CATALYST quantifies every stage of that cycle — from the first signs of volatility contraction through full coil, ignition, trending expansion, and exhaustion — and fires signals only when the compression is deep enough, the directional bias during the coil is strong enough, and the higher timeframe structure confirms the direction. The result is a system that positions you at the moment of ignition — not a bar after the breakout has already occurred. Designed for volatility-aware traders across crypto, forex, gold, and indices on any timeframe.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🌬 The Philosophy — Markets Breathe

Every major directional move in every liquid market is preceded by a period of compression. Price range contracts. Volume dries up. Volatility percentile falls toward historic lows. The Bollinger Bands compress inside the Keltner Channels. Narrow range bars form consecutively. This compression is not random — it is the mechanism by which institutional positions are accumulated quietly, without moving price, before the delivery move begins.

Most traders see this compression phase as boring or unreadable and look elsewhere for setups. CATALYST is built on the opposite premise: the compression phase is the most important and readable phase of the entire price cycle. The depth of the compression tells you how much energy is coiling. The directional bias during the compression tells you where that energy is most likely to be released. The higher timeframe alignment tells you whether that release is likely to be with or against the macro institutional flow.

By the time the breakout candle is obvious to everyone, CATALYST has already been tracking the setup for multiple bars — measuring compression depth, monitoring accumulation bias, and computing the ignition probability score in real time. When ignition fires, it fires with advance conviction — not reactive confirmation.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

The 6-Stage Regime State Machine

CATALYST is built around a deterministic 6-stage regime cycle that every market passes through on every timeframe. Understanding the regime is the foundation of using CATALYST correctly — the dashboard, background colors, and regime flip labels all communicate exactly which stage the market is in at every bar.

Stage 0 — QUIET
The market is dormant. No significant compression is building (score below 35). Volatility is neither low nor building toward a setup. This is the baseline state — the market is between cycles. Gray background tint. No actionable context.

Stage 1 — BUILDING
Compression is beginning to develop (score between 35 and 75). One or more compression signals are present — the squeeze may be turning on, narrow range bars may be forming, volume may be beginning to dry. The coil is winding up. Orange background tint intensifies slightly. The bias vector label appears on the current coil box to indicate which direction accumulation is occurring.

Stage 2 — COILED
Maximum compression state (score 75+, full BB/KC squeeze active). The spring is fully wound. Energy is at maximum concentration. This is the highest pre-ignition alert state. Deeper orange background tint. The coil box is rendered with higher opacity. The COILED flip label appears on the chart. Dashboard shows COMPRESS at 75%+ and SQUEEZE ON. This is the state you watch most closely — ignition can occur at any bar from here.

Stage 3 — IGNITION
A single-bar flash state. The regime transitions through IGNITION on the bar where all ignition conditions are simultaneously met — compression deep enough, bias directional enough, expansion candle large enough, ATR expanding. The cyan background tint and IGNITION flip label mark this bar. The IGNITE signal label fires on this bar. This is the entry bar. Immediately transitions to TRENDING on the next bar.

Stage 4 — TRENDING
The expansion phase. Price is in directional delivery. The regime holds TRENDING until one of the exhaustion conditions fires: RSI reaching extreme levels with climax volume, a significant wick rejection candle in the trend direction, a squeeze reforming during the trend (stall), or a reversal candle closing through the 21 EMA. Yellow-green tint during bull expansion, red tint during bear expansion.

Stage 5 — EXHAUSTION
The expansion energy is spent. One of the exhaustion conditions has triggered. Purple diamond markers appear above or below price. This is the early warning that the trend leg is ending — not necessarily the trend itself, but the current momentum leg. After EXHAUSTION, the regime resets: if compression begins building again, it cycles back to BUILDING; if not, it returns to QUIET and the cycle begins again.

Why the state machine matters: Every signal in CATALYST is regime-gated. Ignition signals can only fire from the COILED state. Exhaustion warnings can only fire from the TRENDING state. This ensures signals are always contextually appropriate — you cannot get an ignition signal without prior compression, and you cannot get an exhaustion warning without a prior trend.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📉 The Compression Score Engine — Measuring the Coil

The compression score is a 0–100 composite reading that quantifies exactly how tightly the market is coiling at any given bar. It is the primary input to the regime state machine and is displayed live on the dashboard.

Six compression components and their weights:

Squeeze State (up to 30 points):
The BB/KC squeeze is the most powerful single compression signal. When Bollinger Bands are fully inside Keltner Channels, the market is at maximum volatility contraction — 30 points. If the squeeze fired on the previous bar (just released), 15 points are still awarded, capturing the residual compression energy at the moment of release.

Narrow Range Pattern — NR (up to 20 points):
The current bar's high-low range is measured against the lowest range over the lookback period (default: 7 bars). When the current bar has the narrowest range in the lookback window, 20 points are awarded. This is the NR7 pattern generalized to a configurable lookback — the classic volatility contraction signal.

NR Streak (up to 15 points):
Consecutive narrow range bars amplify the coil energy. When the NR count over the minimum coil duration reaches the threshold, 15 additional points are awarded. Multiple consecutive NR bars indicate the market has been compressing for a sustained period — a deeper, more energetic coil.

Volume Dry-Up (up to 15 points):
Current volume below the configurable fraction of its moving average (default: 65% of the 20-bar SMA) confirms institutional accumulation is occurring quietly — institutions are building positions without creating visible volume signals. 15 points awarded when volume is dry.

Volume Dry Streak (up to 10 points):
Multiple consecutive bars of volume dry-up, identical logic to the NR streak. Sustained low volume over multiple bars is a stronger coil signal than a single dry bar.

ATR Percentile Rank (up to 10 points):
The current ATR is ranked against its own history over the configurable lookback (default: 100 bars). When ATR is in the bottom 25th percentile of its historical range — meaning volatility is at a historic low for this instrument on this timeframe — 10 points are awarded. Below the 40th percentile scores 5 points. This ensures the compression is genuine historically, not just temporarily quiet in an already volatile market.

Reading the score:
  • 0–35 — QUIET, no meaningful compression building
  • 35–55 — BUILDING, compression developing but not yet actionable
  • 55–74 — COILING, significant compression present
  • 75–100 — FULLY COILED, maximum compression, squeeze active. Ignition-ready state


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🧭 The Bias Vector — Who Is Accumulating During the Coil?

Compression tells you the market is coiling. The Bias Vector tells you which direction institutions are accumulating during that coil. A range of -100 (fully bearish) to +100 (fully bullish), the bias vector is a composite of five independent directional pressure readings — each measuring accumulation from a different angle.

Volume Delta (up to ±25 points):
The estimated directional volume pressure — bull volume EMA minus bear volume EMA — forms the primary bias input. When delta is positive and rising (buyers accelerating), 25 points are added. When delta is positive but not accelerating, 10 points. The inverse applies for bear delta. This is the most direct measure of whether buyers or sellers are winning the quiet accumulation battle during compression.

Close-Position Bias (up to ±20 points):
Where closes fall within each bar's high-low range, averaged over the lookback period (default: 10 bars). When the average close position is in the upper 55%+ of the range — candles are consistently closing near their highs — buyers are controlling the candle closes. ±20 points based on whether the close bias is bullish (above 0.55) or bearish (below 0.45). This is a subtle but powerful measure of who is controlling the close during the coil.

Micro Structure (up to ±20 points):
Higher highs or higher lows over the structure lookback (default: 20 bars) vote bullish. Lower lows or lower highs vote bearish. ±20 points. Micro structure during compression tells you whether the coil is forming as a higher low (bullish coil) or a lower high (bearish coil) — the internal structure of the compression box reveals directional intent.

HTF Bias (up to ±20 points):
The higher timeframe EMA alignment (default: 60-minute, 50-period EMA). When HTF close is above the HTF EMA — the macro trend is bullish — +20 points. When below, -20 points. When Require HTF Alignment is disabled, this component is neutral. The HTF bias ensures the coil's directional reading is contextualized against the macro institutional flow.

Price vs BB Basis (up to ±15 points):
Whether the current close is above or below the BB basis (Bollinger Band midline). Price above the basis during compression means the coil is forming above fair value — a mild bullish signal. Price below the basis is mildly bearish. ±15 points. This adds a relative positioning dimension to the bias.

Reading the bias vector:
  • +35 to +100 — bull bias. Buyers are accumulating during the coil. Long ignition is favored
  • -35 to -100 — bear bias. Sellers are distributing during the coil. Short ignition is favored
  • -34 to +34 — neutral bias. No clear directional accumulation. Ignition may fire in either direction — lower conviction


Bias Arrow:
During BUILDING and COILED regime stages, a live bias arrow label appears below (bull bias) or above (bear bias) the coil box on the current bar, showing the directional score in real time. As new bars form, the arrow updates continuously — you can watch the bias building or shifting during the coil.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🔥 The Ignition Score — 0 to 100 Probability Gate

Every bar in the COILED regime, CATALYST computes two separate ignition scores — one for long ignition, one for short. These scores gate whether a signal fires. Only when the score meets the configured minimum threshold (default: 62) does a signal become eligible.

Long ignition score components:
  • Compression depth (up to 20 points) — fully coiled scores 20, isCoiling scores 10, moderate compression scores 10
  • Squeeze state (up to 20 points) — squeeze release scores 20 (maximum — the spring just released), squeeze still active scores 10
  • Bias vector alignment (up to 25 points) — bias above +50 scores 25, above +35 scores 15, below 0 deducts 15
  • HTF alignment (up to 15 points) — HTF bullish scores 15, disabled scores 15 (neutral)
  • Expansion candle quality (up to 15 points) — strong bull body above ATR threshold scores 15, any bullish close scores 8
  • ATR expansion (up to 5 points) — ATR expanding above its short-term average confirms the coil is releasing
  • Volume delta confirmation (up to 10 points) — accelerating buy delta scores 10, positive delta scores 5


The short ignition score mirrors this structure with all conditions inverted.

What the score thresholds mean in practice:
  • 90–100 — near-perfect setup. All components aligned. Extremely rare
  • 75–89 — elite setup. Multiple high-weight components confirmed simultaneously
  • 62–74 (default threshold) — high-quality setup. Sufficient confirmation to fire
  • 50–61 — moderate quality. Available if you lower the threshold, but carries more false signals
  • Below 50 — low-quality ignition conditions. System will not fire at any reasonable threshold setting


The live long and short scores are displayed in real time on the dashboard as IGNITE L and IGNITE S — color-coded yellow-green or red when they meet the threshold, neutral otherwise. You can watch the ignition score building toward threshold in real time during the coil phase.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

The Ignition Signal — IGNITE Entry

The IGNITE label is CATALYST's primary entry signal. It fires when all of the following conditions are simultaneously confirmed on a bar close:

Hard requirements (all must be true):
  • Regime is in COILED state (compression score 75+, squeeze active)
  • The expansion candle body meets or exceeds the configured minimum (default: 1.15× ATR) — the breakout candle is large and directional
  • The bias vector is aligned with the signal direction (+35 or higher for long, -35 or lower for short)
  • ATR is actively expanding above its short-term average — the volatility expansion has begun
  • Squeeze has released on this bar or was releasing on the previous bar (when Require Squeeze Release is enabled)
  • Ignition score meets the minimum threshold (default: 62)
  • Session filter is satisfied (when enabled)
  • Signal cooldown has elapsed since the last signal


Signal label: A large IGNITE label appears below the bar (long) or above (short) on the exact ignition bar. Yellow-green for long, red for short.

Why this is fundamentally different from a standard breakout signal: A standard breakout indicator fires when price closes above a resistance level or a band. It reacts to what has already happened. CATALYST fires on the ignition bar only after verifying that the preceding compression was deep enough (COILED regime), that the directional bias during the coil was confirmed (bias vector), that the breakout candle itself is sufficiently large (body ATR check), and that the volatility is genuinely expanding (ATR expansion). Every component addresses a specific failure mode of basic breakout trading — false breakouts, weak breakouts, counter-HTF breakouts, and low-compression breakouts are all filtered before the signal fires.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🔮 The Compression Coil Box

When the compression score crosses 55 and the BUILDING regime begins, CATALYST draws a live Coil Box — an orange-tinted rectangle spanning the high-low range of the entire compression period from the first coiling bar to the current bar.

What the coil box represents: The coil box is the visual representation of the spring being wound. Every bar that the coil remains active, the box extends to the right and expands to incorporate the new bar's range. The box's height represents the total price range of the compression period — the tighter this range, the more compressed the energy.

Box opacity: The box becomes more opaque when the compression reaches the fully COILED state (score 75+, squeeze active). This visual intensity progression gives you an immediate sense of compression depth — a faint box means early-stage building, a deep orange box means maximum coil.

Box on ignition: When ignition fires, the box remains on the chart at the coil range, giving you a clear visual reference for the compression zone that preceded the move. The coil box range is also used for structural stop loss placement — the SL Beyond Coil Box Edge setting places the stop loss beyond the coil box boundary rather than a fixed ATR distance from entry.

Box cleanup: When the regime returns to QUIET (compression fully dissipated without ignition), the box is deleted. When ignition occurs, the box is retained as a reference.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Exhaustion Radar — Early Warning System

The Exhaustion Radar monitors the TRENDING regime for signs that the expansion energy is being spent. When exhaustion conditions are met, purple diamond markers appear above (bull trend exhaustion) or below (bear trend exhaustion) the bar — a warning that the current momentum leg is likely approaching its end.

Exhaustion conditions (any one is sufficient):
  • RSI climax with volume spike — RSI above the overbought threshold (default: 72) in a bull trend with volume exceeding the configured climax multiple (default: 2.2×). This combination of extreme RSI and high volume is the classic climax top pattern — buyers are exhausting their buying capacity simultaneously
  • RSI climax with volume spike (bear) — RSI below the oversold threshold (default: 28) with climax volume in a bear trend. Sellers exhausting
  • Wick rejection in trend direction — a bar with a rejection wick exceeding the configured minimum percentage (default: 55%) in the direction of the trend. A bull trend bar with a massive upper wick indicates aggressive selling into the highs — supply overwhelming demand at the extreme
  • Trend stall squeeze — when a squeeze (BB inside KC) forms during the trending phase while volume is also drying up. This indicates the expansion move has stalled into a new compression without resolution — energy is being absorbed rather than continuing
  • Reversal candle through 21 EMA — a strong opposing candle that closes through the 21-period EMA in the trend direction. In a bull trend, a strong bearish close through the 21 EMA indicates the trend's immediate momentum structure has been broken


How to use exhaustion signals: Exhaustion diamonds are not reversal signals. They indicate that the current momentum leg is likely complete — not that the trend has ended. Use them to take partial or full profit on trend trades, tighten trailing stops, or wait for the next CATALYST compression cycle to develop before re-entering.

━━━━━━━━━━━━━━━━━════════════════════════

🎯 Coil-Anchored Risk Guidance System

On every IGNITE signal, CATALYST draws forward-projecting risk guidance levels for the duration of the trade.

Stop Loss (SL):
When SL Beyond Coil Box Edge is enabled (default: on), the stop is placed beyond the coil box boundary — below the coil box low (long) or above the coil box high (short) — plus a small ATR buffer. The coil box represents the full compression range: if price returns into and through the opposite side of the coil box after ignition, the breakout has failed and the setup is invalidated. This gives the stop structural meaning beyond just an ATR distance. When the coil SL is less conservative than the fixed ATR SL, the system uses whichever is further from entry to ensure adequate protection.

TP1 — First Target:
2.0× ATR from the entry close (configurable). The initial partial profit target. At TP1, consider scaling out 50% of the position.

TP2 — Extended Target:
4.0× ATR from entry (configurable). The full expansion target for the remaining position — allowing the trailing stop or regime-based exit (exhaustion signal) to manage the remainder.

Level visualization: All three levels are drawn as horizontal dashed or dotted lines extending 12 bars forward from the signal bar, with price labels at the right edge showing exact levels. SL in red, TP1 in dim yellow-green, TP2 in bright yellow-green.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📊 Live Dashboard

The 14-row real-time dashboard displays every internal state of the CATALYST engine on every bar.

  • REGIME — current stage: QUIET / BUILDING / COILED / IGNITION / TRENDING / EXHAUSTION. Color-coded by regime type
  • COMPRESS — live compression score 0–100%. Orange when above 50%, deeper orange when above 75%
  • SQUEEZE — ON (BB inside KC, maximum coil), RELEASE (squeeze just fired — highest-quality ignition condition), or OFF
  • ATR RANK — current ATR percentile versus its 100-bar history. Orange when below 30th percentile (historically low volatility — coil energy building)
  • VOL DRY — YES when current volume is below the dry-up threshold, NO otherwise. Orange when YES
  • BIAS VECTOR — the composite directional accumulation score with + or - sign. Yellow-green above +35, red below -35, neutral otherwise
  • HTF BIAS — higher timeframe EMA direction: BULL, BEAR, or FLAT
  • VOL DELTA — BUYERS when bull volume dominates, SELLERS when bear volume dominates
  • IGNITE L — live long ignition probability score 0–100. Highlights yellow-green when at or above the minimum threshold
  • IGNITE S — live short ignition probability score 0–100. Highlights red when at or above threshold
  • COIL BARS — number of bars the current coil has been active. Orange when at or above the minimum coil duration
  • COIL RANGE — the high-low range of the current coil box in price terms
  • SESSION — ACTIVE or FILTERED based on the session filter state


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📈 Chart Visual System

  • Compression Coil Box (orange) — live orange-tinted box spanning the full high-low range of the current compression period. Brightens on full coil. The core visual centerpiece of CATALYST
  • Regime Background Tints — subtle full-bar background colors for each regime: gray (QUIET), light orange (BUILDING), deeper orange (COILED), cyan (IGNITION), yellow-green or red (TRENDING), purple (EXHAUSTION)
  • IGNITE Label (below bar, yellow-green) — bull ignition signal. All conditions confirmed
  • IGNITE Label (above bar, red) — bear ignition signal
  • ◆ Exhaustion Diamond (above bar, purple) — bull trend exhaustion warning
  • ◆ Exhaustion Diamond (below bar, purple) — bear trend exhaustion warning
  • Bias Vector Arrow Label — appears near the coil box on the current bar during BUILDING and COILED phases, showing ▲ BIAS +xx or ▼ BIAS -xx in real time
  • Regime Flip Labels — small text labels marking every regime transition: BUILDING, COILED, IGNITION, TRENDING, EXHAUSTION. Color-coded by regime
  • SL Dashed Line (red) — stop loss guide extending 12 bars from ignition bar
  • TP1 Dotted Line (dim yellow-green) — first take-profit guide
  • TP2 Dotted Line (bright yellow-green) — extended take-profit guide
  • SL / TP1 / TP2 Price Labels — exact price levels labeled at the right end of each guide line


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🚀 How to Trade with AlphaX CATALYST — Step by Step

Step 1 — Monitor the Regime
  • Check the dashboard REGIME row. If it shows QUIET, nothing actionable is developing. If it shows BUILDING, a compression cycle is beginning — start paying attention
  • Watch COMPRESS build toward 75+. When SQUEEZE shows ON simultaneously, the market is in maximum coil state. This is your highest-alert pre-signal phase
  • Note the Coil Box forming and narrowing on the chart. The tighter the box, the more energy compressed inside


Step 2 — Assess the Bias During the Coil
  • Watch the Bias Arrow label near the coil box. Is it showing ▲ BIAS or ▼ BIAS? A strong positive bias (+50 or above) during a tight coil is the strongest possible pre-ignition setup
  • Check HTF BIAS on the dashboard — does it confirm the bias arrow direction? HTF alignment is worth 15 ignition score points and significantly increases the probability of a clean directional ignition
  • Watch VOL DELTA — are BUYERS or SELLERS winning the accumulation battle during the quiet phase?
  • If the Bias Vector is below ±35, the coil does not have strong directional conviction. Lower your size expectations or wait for bias to build


Step 3 — Watch the Ignition Scores Approach Threshold
  • As the coil deepens, watch IGNITE L and IGNITE S scores on the dashboard climbing toward the minimum threshold. When a score crosses the threshold and highlights, the system is primed — ignition can fire on the next qualifying expansion bar
  • The squeeze release (SQUEEZE shows RELEASE) is the most important single event in the ignition sequence. When the squeeze releases on a strong expansion candle in the bias direction, ignition fires immediately if the score is sufficient


Step 4 — Enter on the IGNITE Label
  • The IGNITE label marks the exact ignition bar. Enter on the close of the signal bar or the open of the following bar
  • The SL is placed beyond the coil box edge — below the coil low (long) or above the coil high (short). This is your structural invalidation: if price re-enters and closes through the opposite side of the coil box, the breakout has failed
  • TP1 at 2.0× ATR — scale out 50% here. Move the remainder to breakeven
  • Let TP2 or the first exhaustion diamond manage the remaining position


Step 5 — Exit on Exhaustion or Regime Shift
  • A purple diamond marks the exhaustion condition. Take profit on the remaining position or tighten the stop aggressively
  • The dashboard shows EXHAUSTION regime — the trend energy has been identified as spent
  • If no exhaustion fires and price continues, the system will track the regime as TRENDING — let the move run until exhaustion appears
  • After EXHAUSTION, the regime resets. Watch for a new compression cycle to build in the updated directional context


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Identifying Low-Quality Conditions — When Not to Trade

Stand aside when:
  • Regime is QUIET and COMPRESS is below 35 — no cycle is developing. CATALYST has nothing actionable and no signal can fire. Do not force entries
  • Regime reaches COILED but Bias Vector is below ±35 — the coil is real but the directional accumulation is inconclusive. Ignition in this environment carries reduced directional probability. Reduce size significantly or wait for bias to develop clarity
  • HTF BIAS opposes the bias vector direction — a bearish HTF while the bias vector is bullish means the coil is building against the macro institutional flow. Counter-HTF ignitions have a significantly lower success rate. Wait for HTF alignment
  • IGNITE L and IGNITE S scores are both below threshold — the market is compressing but neither a long nor short setup has sufficient confirmation quality. No signal will fire. Wait for the scores to build
  • Multiple regime cycles in rapid succession without trending — BUILDING → COILED → QUIET → BUILDING cycles that never reach IGNITION indicate a market in deep chop or accumulation. Do not try to anticipate the breakout direction — wait for the cycle to complete cleanly
  • Session shows FILTERED — the session filter has blocked the current time window. No signals will fire
  • COIL BARS is below the minimum coil duration — the compression has been too brief to build meaningful energy. A coil of 2 bars has far less stored energy than a coil of 8+ bars. Prioritize setups with longer coil durations


The ideal CATALYST setup:
  • COMPRESS at 80+, SQUEEZE ON for multiple bars
  • Bias Vector at +50 or above (long) or -50 or below (short)
  • HTF BIAS aligned with the bias direction
  • VOL DELTA confirming the bias direction (BUYERS for long, SELLERS for short)
  • IGNITE L or S score approaching 75+
  • COIL BARS at 5 or more — sustained compression
  • Squeeze RELEASE on the ignition bar — the spring snapping
  • Strong body expansion candle in the bias direction


When all these conditions align, CATALYST produces its highest-conviction ignition signals — setups where the compression depth, directional accumulation, HTF alignment, volume pressure, and expansion quality are all confirming simultaneously.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Key Features
  • 🌬 6-stage regime state machine — QUIET → BUILDING → COILED → IGNITION → TRENDING → EXHAUSTION. Every bar is classified and every signal is regime-gated
  • 📉 Multi-component compression score — BB/KC squeeze, NR patterns, NR streaks, volume dry-up, volume dry streaks, and ATR percentile rank combined into a single 0–100 score
  • 📦 Live compression coil box — orange-tinted box tracking the full range of the compression period in real time, brightening at maximum coil depth
  • 🧭 5-component bias vector — Volume Delta, Close-Position Bias, Micro Structure, HTF EMA alignment, and BB Basis positioning combined into a -100 to +100 directional accumulation score
  • ⚡ Live bias arrow label — directional score displayed near the coil box on the current bar, updating in real time during BUILDING and COILED phases
  • 🔥 Dual ignition probability scores — separate 0–100 long and short scores computed every bar with a configurable minimum threshold gate
  • 💥 IGNITE signal — fires only from COILED state on the exact bar where compression, bias, expansion candle, and ATR all confirm simultaneously
  • ⚠ Exhaustion radar — RSI climax volume, rejection wick, trend stall squeeze, and reversal candle conditions produce early exhaustion warnings during the TRENDING phase
  • 📡 HTF EMA bias filter — pulls higher timeframe directional structure into both the bias vector and the ignition scoring system
  • 🎯 Coil-anchored SL placement — stop loss placed beyond the compression box structural boundary rather than a fixed ATR distance
  • 🎨 Regime background tints — full-bar background colors for every regime stage, providing constant visual awareness of where the market is in the cycle
  • 🏷 Regime flip labels — small text labels at every regime transition point on the chart history
  • 📊 14-row live dashboard — Regime, Compress, Squeeze, ATR Rank, Vol Dry, Bias Vector, HTF Bias, Vol Delta, Ignition Scores, Coil Bars, Coil Range, Session updated every bar
  • 🔔 5 alert conditions — Ignite Long, Ignite Short, Fully Coiled, Squeeze Release, Exhaustion Warning
  • ⚙ Fully configurable — all ATR/BB/KC parameters, NR lookback, volume dry-up threshold, ATR percentile length, HTF timeframe and EMA, delta and structure lookbacks, ignition threshold, body size filter, exhaustion RSI/volume/wick parameters, SL/TP multiples, session windows, and all colors are independently adjustable


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Settings Reference

Volatility Engine
  • ATR Length — ATR calculation lookback used across the engine (default: 14)
  • BB Length / BB Mult — Bollinger Band parameters for squeeze detection (defaults: 20 / 2.0)
  • KC Length / KC Mult — Keltner Channel parameters (defaults: 20 / 1.5)
  • NR Pattern Lookback — bars for narrow range comparison. NR fires when current range is the narrowest in this window (default: 7)
  • Volume Dry-Up Length — lookback for volume moving average (default: 20)
  • Max Vol vs Avg (coil) — maximum volume as a fraction of average for the dry-up condition (default: 0.65)
  • ATR Percentile Lookback — history window for ATR percentile rank (default: 100)
  • Min Coil Duration (bars) — minimum consecutive bars needed for streak bonuses (default: 3)


Bias Vector
  • HTF Bias Timeframe — higher timeframe for EMA bias pull (default: 60-minute)
  • HTF EMA Length — EMA period on the higher timeframe (default: 50)
  • Require HTF Alignment — when on, HTF opposing direction deducts points from ignition scores
  • Volume Delta Length — EMA smoothing for volume delta estimation (default: 14)
  • Close-Position Bias Len — lookback for average close position within bar range (default: 10)
  • Structure Lookback — bars for micro higher high / lower low detection (default: 20)


Ignition Signals
  • Min Ignition Score (0–100) — threshold below which no signal fires (default: 62). 58–68 is practical range
  • Min Ignition Body (xATR) — expansion candle body must exceed this multiple of ATR (default: 1.15)
  • Require Squeeze Release — when on, ignition must occur on or after BB/KC squeeze releases
  • Show Ignition BUY/SELL Labels — toggle IGNITE signal labels
  • Show Exhaustion Warnings — toggle exhaustion diamond markers
  • Signal Cooldown (bars) — minimum bars between consecutive signals (default: 6)


Exhaustion Radar
  • RSI Overbought / Oversold — RSI thresholds for climax exhaustion detection (defaults: 72 / 28)
  • Climax Volume (x avg) — volume multiple above average required for RSI climax condition (default: 2.2)
  • Min Rejection Wick % — minimum wick as fraction of bar range for wick rejection exhaustion (default: 0.55)


Risk Guidance
  • Show SL / TP Guides on Signal — toggle level lines and labels
  • SL Distance (xATR) — ATR-based SL floor distance (default: 1.2)
  • TP1 Distance (xATR) — first take-profit target distance (default: 2.0)
  • TP2 Distance (xATR) — extended take-profit target distance (default: 4.0)
  • SL Beyond Coil Box Edge — places SL at the structural coil boundary rather than fixed ATR only (default: on)


Session Filter
  • Enable Session Filter — toggle the session restriction
  • London (08:00–13:00 UTC) — toggle London session inclusion
  • London/NY Overlap (13:00–17:00 UTC) — toggle the highest-volume overlap session
  • NY Afternoon (17:00–21:00 UTC) — toggle NY afternoon session


Display
  • Show Compression Coil Box — toggle the live orange coil box
  • Regime Background Tint — toggle the full-bar regime background colors
  • Show Bias Vector Arrow — toggle the live bias label near the coil box
  • Dashboard Position — Top Right / Top Left / Top Center / Bottom Right / Bottom Left / Bottom Center
  • Dashboard Size — Normal / Bigger


Theme
  • Bull Primary / Bright / Dim — yellow-green family for all bullish elements
  • Bear Primary / Bright / Dim — red family for all bearish elements
  • Coil / Squeeze — orange for all compression and coil elements
  • Ignition — cyan for the ignition regime flash
  • Exhaustion — purple for exhaustion regime and warning diamonds
  • Neutral — gray for QUIET regime and neutral states


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🔔 Alert Conditions (5 total)

Signal Alerts
  • CATALYST Ignite Long — all long ignition conditions confirmed. IGNITE label fired below bar
  • CATALYST Ignite Short — all short ignition conditions confirmed. IGNITE label fired above bar


State Alerts
  • CATALYST Fully Coiled — regime has entered COILED state (compression 75+, squeeze active). Ignition may be imminent — prepare
  • CATALYST Squeeze Release — BB has expanded outside KC on this bar. Maximum-quality ignition condition active
  • CATALYST Exhaustion — exhaustion conditions detected in the TRENDING regime. Trend energy fading


All alert messages are formatted as const strings for clean webhook and notification platform integration.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🎯 Recommended Settings by Instrument & Timeframe

The default configuration is optimized for XAUUSD, major forex pairs, and crypto on M5–H1:
  • Min Ignition Score at 62 — strong quality gate while allowing frequent enough signals on intraday timeframes
  • HTF at 60-minute — meaningful macro context for M5–M15 trading. The squeeze and ignition on M5 confirmed by H1 EMA alignment is the core multi-timeframe framework
  • ATR Percentile Lookback at 100 — calibrated for intraday volatility cycles on liquid instruments
  • NR Lookback at 7 — captures classic NR7 patterns while remaining sensitive enough for fast-moving instruments


For other instruments or timeframes, adjust:
  • M1–M3 scalping — reduce ATR Percentile Lookback to 50, reduce NR Lookback to 5, reduce Min Ignition Score to 58, shorten Cooldown to 3 bars
  • H1–H4 swing trading — set HTF to Daily or Weekly, increase ATR Percentile Lookback to 200–250, increase Min Ignition Score to 68–72, increase TP2 to 6.0–8.0× ATR for wider swing targets
  • Crypto (BTC, ETH) — increase KC Mult to 2.0–2.5 and BB Mult to 2.5 to account for wider natural volatility, increase Climax Volume threshold to 2.8–3.5 for crypto's naturally higher volume spikes
  • Higher signal frequency — lower Min Ignition Score to 55–58, reduce NR Lookback to 5, reduce Min Coil Duration to 2
  • Ultra-selective signals only — raise Min Ignition Score to 72–78, require Squeeze Release on, HTF Alignment on, increase Min Coil Duration to 5


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

👥 Who This Is For
  • 💥 Volatility breakout and expansion traders — CATALYST is purpose-built for traders who want to enter at the moment of volatility ignition, not after the move has already extended significantly
  • Squeeze traders and NR pattern traders — the compression engine formalizes and quantifies every squeeze and narrow range pattern into a single score, eliminating subjective judgment about whether a coil is "tight enough"
  • 🔮 Anticipatory traders who want to read the market before it moves — the bias vector and ignition score system provides pre-signal intelligence during the coil that no reactive indicator can match
  • 📊 Multi-timeframe traders — the HTF bias integration means every CATALYST signal is contextualized against the higher timeframe institutional flow
  • 🧠 Systematic traders — every component of the compression score, bias vector, and ignition score is quantified and configurable. There is no subjectivity in what constitutes a "good enough" coil
  • 🎯 Risk-conscious traders — the coil-anchored stop loss is structurally meaningful — placed at the exact level that invalidates the breakout thesis
  • 📈 Traders across all asset classes — the ATR normalization and percentile-ranked volatility detection means CATALYST works consistently on gold, forex, crypto, and indices without manual recalibration between instruments


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📝 Notes
  • All signals are confirmed on bar close — the indicator is non-repainting by design. Regime state, compression score, bias vector, and ignition scores all finalize on confirmed bars
  • The regime state machine is sequential — IGNITION can only be reached from COILED. This means no signal can fire without prior confirmed compression regardless of how strong the expansion candle is
  • The ATR percentile rank requires the configured lookback history to be available. On charts with fewer bars than the ATR Percentile Lookback setting, the rank may underperform until sufficient history accumulates. This warm-up effect resolves naturally
  • The bias arrow label is drawn only on the last bar and refreshes on every tick during live trading. It does not appear on historical bars — only the current bar during BUILDING and COILED regimes
  • The SL / TP guide lines are redrawn on every new ignition signal. Previous signal levels are deleted when a new signal fires
  • Maximum 500 labels, 500 lines, and 100 boxes are rendered. The coil box, regime flip labels, and SL/TP levels all count toward these limits. On very active charts with long history, the oldest labels may be removed by TradingView's rendering limits
  • The session filter uses UTC hours rather than exchange-specific sessions, making it instrument-agnostic across all markets globally
  • The indicator does not track open positions or P&L — the regime state tracks the expansion direction (bull or bear) from ignition through exhaustion, but does not connect to any broker or account


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Disclaimer

This indicator is a technical analysis and visualization tool intended for educational and informational purposes only. It does not constitute financial advice or a recommendation to buy or sell any financial instrument. All signals are generated from historical and real-time price data using mathematical calculations — their accuracy or profitability is not guaranteed. Past performance of any signal type does not guarantee future results. Always conduct your own analysis, use proper risk management, and consult a licensed financial advisor before making any trading decisions. The author accepts no responsibility for any losses incurred from the use of this indicator.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Built for traders who understand that the most powerful moment to enter a market is not when everyone can see the move — it is the bar before, when the coil finally snaps.

Declinazione di responsabilità

Le informazioni e le pubblicazioni non sono intese come, e non costituiscono, consulenza o raccomandazioni finanziarie, di investimento, di trading o di altro tipo fornite o approvate da TradingView. Per ulteriori informazioni, consultare i Termini di utilizzo.