ES vs NQ EMA Strength Dashboard📊 ES/NQ Strength Matrix
A multi-timeframe momentum dashboard designed to track trend strength and alignment between ES and NQ futures using EMA structure.
This indicator provides a clear, real-time view of whether the market is bullish, bearish, or neutral across key intraday timeframes, helping traders quickly identify high-probability conditions.
🔍 What It Does
The dashboard compares:
ES Futures vs NQ Futures
Across multiple timeframes:
1m, 5m, 15m, 30m, 1H
Each timeframe is classified into 5 strength levels:
S.BULL → Strong bullish alignment (full EMA stack + price above)
BULL → Bullish but not fully stacked
NEUTRAL → Mixed / no clear direction
BEAR → Bearish but not fully stacked
S.BEAR → Strong bearish alignment (full EMA stack + price below)
⚙️ How It Works
Uses EMA structure:
Fast EMA (9)
Mid EMA (21)
Trend EMA (50)
Strength is determined by:
EMA stacking (trend structure)
Price position relative to EMAs
🎯 How to Use
Look for alignment across timeframes for higher probability trades
Strong setups occur when:
ES and NQ both show S.BULL or S.BEAR
Avoid trades during:
NEUTRAL conditions (choppy market)
Best suited for:
Scalping (1m–5m)
Intraday momentum trading
⚡ Features
Real-time ES vs NQ comparison
Multi-timeframe trend strength
Clean, minimal dashboard
Quick decision-making tool
Adjustable table position
⚠️ Notes
Requires futures data for ES/NQ symbols
Works best on lower timeframes (1m–5m charts)
Designed as a confirmation tool, not a standalone strategy Indicator

Indicator

Financial Repression OscillatorThe Financial Repression Oscillator is a macro-regime indicator designed to help visualize whether current conditions are more consistent with a restrictive real-rate environment or a financial-repression-like environment.
It combines several public FRED macroeconomic series into a single bounded oscillator from 0 to 100. The goal is not to generate trade signals, but to provide a compact way to monitor real rates, inflation pressure, debt burden, and Federal Reserve balance-sheet conditions together.
Why this can be useful
Macro conditions can change the meaning of “safe” assets.
When real rates are positive, cash-like instruments and short-duration fixed income may offer meaningful real returns. When real rates are negative or falling while inflation and debt pressure remain elevated, cash and nominal fixed-income assets may lose purchasing power in real terms.
This indicator is intended to make those regime conditions easier to monitor in one place.
General interpretation
0-25 Restrictive / not repressive
25-40 Mildly restrictive
40-60 Neutral / mixed
60-75 Repression-like
75-100 Strongly repression-like
These zones are intended as a framework for macro context, not as automatic buy or sell signals.
What the indicator tracks
The oscillator uses six components:
1. 10-Year Real Yield
Series: FRED:DFII10
This is the 10-year Treasury Inflation-Protected Securities real yield. It is used as a market-based measure of long-term real interest rates.
Higher positive real yields generally suggest a more restrictive real-rate environment. Lower or negative real yields are more consistent with financial-repression-like conditions.
2. 3-Month Real Rate
Series: FRED:DTB3 minus CPI YoY
This compares the 3-month Treasury bill yield to year-over-year CPI inflation.
It helps show whether short-term cash-like instruments are providing a positive or negative real return relative to inflation.
3. Real Fed Funds Rate
Series: FRED:FEDFUNDS minus CPI YoY
This compares the effective federal funds rate to year-over-year CPI inflation.
It provides a simple estimate of whether short-term monetary policy is restrictive or accommodative after inflation.
4. CPI Inflation
Series: FRED:CPIAUCSL
Inflation is included because financial repression is usually most relevant when inflation is elevated relative to interest rates.
The script calculates CPI year-over-year inside the monthly data request so that the calculation remains consistent when the indicator is viewed on daily, weekly, or monthly charts.
5. Federal Debt to GDP
Series: FRED:GFDEGDQ188S
Debt to GDP is included as a structural pressure variable.
High debt levels do not prove that financial repression is occurring, but they may increase the policy incentive to maintain lower real borrowing costs over time.
6. Federal Reserve Total Assets
Series: FRED:WALCL
Federal Reserve total assets are used as a broad proxy for the size of the central bank’s balance sheet.
A larger balance sheet may indicate a greater central-bank footprint in financial markets, though it should not be interpreted by itself as proof of financial repression.
How the scoring works
The indicator uses a hybrid scoring model.
Each component is scored using two methods:
Absolute threshold scoring
Absolute thresholds are used so that the oscillator does not label an environment as strongly repressive simply because a value is low relative to recent history.
For example, a positive real rate should not automatically score as maximum financial repression just because it has declined from a recent high.
Percentile pressure scoring
A smaller percentile component compares each series to its own recent history over a 120-month window.
This helps the oscillator respond when conditions are deteriorating or improving relative to the recent macro regime.
Weighted blend
The real-rate components receive the largest weights because suppressed real yields are central to the concept of financial repression.
The debt and Federal Reserve asset components are included as structural context, but they are not intended to dominate the reading by themselves.
How to use it
This indicator is best used as a macro context tool on weekly or monthly charts.
Possible uses include:
Monitoring whether real-rate conditions are becoming more or less restrictive
Comparing current macro conditions to prior regimes
Adding context to cash, bond, equity, commodity, gold, or Bitcoin allocation decisions
Watching for transitions between cash-friendly and negative-real-rate environments
Supplementing other macro tools such as yield curves, credit spreads, liquidity indicators, valuation metrics, and market breadth
Important limitations
This indicator is not a trading system.
It does not issue buy or sell signals, and it does not attempt to predict short-term market direction. The underlying data comes from FRED and updates at different frequencies. Some components update daily, while others update monthly or quarterly, and macroeconomic data may be revised.
The oscillator should be interpreted as a broad macro-regime estimate, not as a precise timing model.
A high debt score or a large Federal Reserve balance sheet score does not, by itself, mean financial repression is occurring. The most important readings come from the combination of real yields, inflation, short real rates, and structural debt pressure.
Practical reading
When the oscillator is low, real-rate conditions are generally more restrictive and cash-like assets may be more competitive in real terms.
When the oscillator rises, conditions may be shifting toward a more inflationary or repression-like environment, especially if real yields are falling while inflation and debt pressure remain elevated.
The most meaningful signals are usually changes in regime over time rather than any single daily reading. Indicator

Adaptive Squeeze Memory [PhenLabs]🚀 #66 Adaptive Squeeze Memory
📌 Overview
Adaptive Squeeze Memory turns a standard public-domain BB/KC squeeze into a clear “what happened after similar squeezes?” dashboard. Instead of forcing traders to decode a complex probability model, ASM gives a simple setup read first: Long Breakout Watch, Short Breakdown Watch, Lean Long, Lean Short, Two-Way Volatility, or Building Memory.
Behind that simple read, ASM compares the current squeeze event against prior confirmed squeezes with similar volatility, RSI, and volume conditions, then projects the historical distribution of forward returns as a cone.
This is an original public-concept interpretation built from standard market primitives: Bollinger Band width, Keltner Channel width, ATR, RSI, volume ratio, Euclidean similarity scoring, and nearest-rank percentiles. It does not copy, clone, reproduce, deobfuscate, or attempt to recreate any commercial squeeze, memory, or prediction product.
📊 What Makes It Different
Most squeeze tools answer one question: “Is price compressed?” Adaptive Squeeze Memory asks a sharper and more tradable question: “When the market has compressed like this before, did the forward memory favor an upside breakout, a downside breakdown, or volatility expansion without a clean directional edge?”
The result is a cleaner PulseWire experience: a plain-English memory dashboard for fast interpretation, plus a projected return cone for traders who want the deeper statistical context.
🚀 Core Features
✅ Public-domain BB/KC squeeze detection using Bollinger Band width versus Keltner Channel width
✅ Similarity memory engine using normalized ATR, RSI, and volume ratio
✅ Configurable nearest-match count for comparing the current squeeze against prior events
✅ 1-bar, 3-bar, 5-bar, and 10-bar forward return distributions
✅ Median projection plus optional 25th/75th and 10th/90th percentile bands
✅ Memory Dashboard with setup state, median edge, likely range, bullish probability, score, matches, and next-step guidance
✅ Memory Bias Score from -100 to +100 for fast data-window scanning
✅ Long Breakout Watch and Short Breakdown Watch markers for stronger memory skews
✅ Confirmed-bar only logic with no request.security() and no lookahead
✅ Capped projection-line arrays for stable long-chart performance
🔧 Settings
Squeeze Memory Lookback
Default: 252
Range: 50–2000
Description: Maximum number of mature prior squeeze events retained for similarity matching.
Similarity Match Count
Default: 10
Range: 3–50
Description: Number of closest historical squeeze events used to build the probability cone.
Cone Projection Bars
Default: 10
Range: 10–50
Description: Forward visual projection window. The statistical anchors are 1, 3, 5, and 10 bars.
BB Length / BB Multiplier
Default: 20 / 2.0
Range: Length 5–200, Multiplier 0.5–5.0
Description: Bollinger Band settings used to measure compression.
KC Length / KC Multiplier
Default: 20 / 1.5
Range: Length 5–200, Multiplier 0.5–5.0
Description: Keltner Channel settings used as the volatility envelope comparison.
ATR Length
Default: 14
Range: 2–200
Description: ATR input for the normalized volatility feature.
RSI Length
Default: 14
Range: 2–200
Description: RSI input for the momentum-position feature.
Volume MA Length
Default: 50
Range: 5–300
Description: Moving average baseline for the relative volume feature.
Similarity Weight: ATR / RSI / Volume
Default: 1.0 / 1.0 / 1.0
Range: 0.0–5.0
Description: Controls how strongly each feature influences the Euclidean distance score.
Bull Cone Color / Bear Cone Color
Default: Lime / Red
Range: Any PulseWire color
Description: Sets the projection color based on whether the 10-bar median return is positive or negative.
Show Percentile Bands
Default: On
Range: On/Off
Description: Toggles the inner 25th/75th percentile and outer 10th/90th percentile cone paths.
Show Memory Dashboard
Default: On
Range: On/Off
Description: Displays the simplified readout so users do not need to interpret the full cone manually.
Median Edge Threshold %
Default: 0.20
Range: 0.05–5.0
Description: Minimum median 10-bar edge required before ASM can classify a strong directional watch.
Directional Probability Threshold %
Default: 55
Range: 50–80
Description: Minimum matched-outcome probability required before ASM classifies a strong long or short watch.
🔥 How It Works
1. Detect compression
• ASM compares Bollinger Band width against Keltner Channel width.
• A squeeze event fires only when compression begins on a confirmed bar.
2. Capture the squeeze fingerprint
• Each confirmed squeeze stores normalized ATR, RSI, and relative volume.
• Events are stored in flat parallel arrays for Pine v6 compatibility.
3. Let history mature naturally
• Forward returns are filled only after the 1st, 3rd, 5th, and 10th future bars have actually printed.
• No future data is read early, and no request.security() calls are used.
4. Match the current event to memory
• The current squeeze is compared against mature prior squeezes.
• Weighted Euclidean distance ranks the most similar historical events.
• The closest N matches form the statistical sample.
5. Convert the distribution into a simple read
• Long Breakout Watch appears when the median edge and bullish outcome probability both clear their thresholds.
• Short Breakdown Watch appears when the median edge and bearish outcome probability both clear their thresholds.
• Lean Long and Lean Short appear when the sample has directional skew but not enough strength for a full watch.
• Two-Way Volatility appears when the historical memory favors expansion but not a clean direction.
6. Project the probability cone
• ASM computes nearest-rank percentiles of the matched forward returns.
• Median, 25th/75th, and 10th/90th percentile paths are drawn forward from the current squeeze bar.
🎨 Visual Guide
• Solid path: median projected forward return
• Dashed paths: 25th and 75th percentile range
• Dotted paths: 10th and 90th percentile range
• Column plot: latest 10-bar median memory edge
• Dashboard: plain-English setup state, range, bullish probability, score, matches, and next-step guidance
• LONG / SHORT markers: stronger confirmed directional memory events
• Yellow marker: confirmed squeeze-memory event
📖 Best Used For
Adaptive Squeeze Memory is designed for traders who want context around volatility compression. It is especially useful for crypto, indices, liquid equities, and FX pairs where squeeze events repeat often enough to build a meaningful memory sample.
✅ Notes
• Pine Script v6 indicator
• Separate pane output
• Confirmed-bar only
• No external data
• No request.security()
• No lookahead
• No commercial/proprietary logic
⚠️ Limitations
ASM is a statistical context tool, not a prediction engine. Percentile cones summarize what similar prior squeezes did; they do not guarantee what the current squeeze will do. Early charts or rare symbols may have too few mature matches for a useful cone until enough events accumulate. Indicator

Trading SOP Checklist📌 Trading SOP Checklist (Discipline-Based Entry Filter)
🔹 Overview
This indicator is designed to enforce strict trading discipline by converting a trader’s Standard Operating Procedure (SOP) into a visual checklist on the chart.
Instead of relying on emotions or memory, this tool ensures that every trade is validated through a structured, rule-based decision process before execution.
It is especially useful for traders following breakout strategies, CANSLIM-style setups, or any system where execution discipline is critical.
🔹 Core Concept
Every trade goes through 3 layers of validation:
✅ 1. Pre-Buy Conditions
Stock must be breaking out today
A valid chart pattern must be present (Cup & Handle, Base, Double Bottom, etc.)
Sufficient time before earnings (>3 days)
Pivot must be correctly marked on highs (not on close)
✅ 2. Order Execution Conditions
Price must close above pivot
Breakout must be supported by volume
Entry must strictly follow predefined system rules
✅ 3. Risk Management Conditions
Stop loss must be defined
Position size must be calculated correctly
🔹 Final Output
If all conditions are satisfied → TRADE ✅
If any condition fails → REJECT ❌
This prevents:
FOMO-based entries
Late or incorrect entries
Trades without proper risk control
🔹 How to Use
Apply the indicator on your chart
Manually toggle each checklist item based on your analysis
Only take the trade when the final status shows TRADE ✅
🔹 Who Should Use This
Breakout traders
Swing traders
Traders following rule-based systems (CANSLIM, Stage Analysis, etc.)
Anyone struggling with discipline or impulsive entries
🔹 Key Benefits
Eliminates emotional decision-making
Enforces consistency across trades
Improves execution quality
Acts as a real-time decision filter
🔹 Important Note
This indicator does not generate buy/sell signals.
It is a decision support tool, not a strategy. Indicator

Liquidity Pools Pro [WillyAlgoTrader]💧 Liquidity Pools Pro is a fully free overlay indicator that automatically detects liquidity zones (equal highs and equal lows), scores them on a 4-factor strength model, catches sweeps (liquidity grabs) with reversal confirmation, and instantly delivers a complete trade plan: entry, stop-loss, three take-profits, and automatic break-even on TP1.
It unifies into a single coherent engine what traders usually have to assemble from 5–7 separate scripts: an adaptive pivot detector, a 4-factor pool scoring system (touches + recency + volume + HTF), sweep detection with close-back confirmation, an ATR-based risk calculator, risk presets, and an informative dashboard.
Works on any instrument (BTC, EURUSD, stocks, indices, futures) and any timeframe without retuning — every threshold is scaled through ATR.
🧩 WHY THESE COMPONENTS WORK TOGETHER
A simple pivot detector just plots dots. A simple sweep signal fires on every wick. A plain ATR stop-loss ignores context. Individually these are noise. Combined, they form a complete mechanism for identifying zones where smart money harvests liquidity, and trading the reversal from them.
Integration chain:
Adaptive Pivot Detection → ATR-based Equality Tolerance → Pool Matching & Clustering → 4-Factor Strength Scoring → HTF Confluence Boost → Sweep Detection (wick + close-back) → Risk Engine (SL/TP/BE) → Position Lock + State Machine → Dashboard + Alerts
— The pivot detector adapts to volatility: length grows when ATR is high (less noise on crypto) and shrinks when ATR is low (faster reaction on forex).
— Tolerance in ATR units lets the engine treat highs/lows as "equal" on any instrument — no manual tick configuration.
— Matching clusters pivots into pools (multiple touches at one zone = thicker liquidity).
— Scoring filters out weak pools and highlights exactly the ones price returns to for stop-runs.
— HTF Confluence adds +20 to strength when a pivot on the higher timeframe aligns — a filter against lower-timeframe traps.
— Sweep is identified as a wick beyond the level + close back inside (classic failed breakout / liquidity grab).
— The risk engine builds a complete trade plan for each signal and trails the stop to break-even after TP1.
— Position Lock prevents opposite signals from silently overwriting the SL/TP of an open position.
Remove any one link and the chain breaks. Sweeps without scoring = noise. Scoring without sweeps = pretty boxes that never trigger. Risk engine without position lock = silent overwrite of an open trade. This pipeline solves all three problems.
🔍 WHAT MAKES IT ORIGINAL
1️⃣ Adaptive Pivot Length — pivot length that adjusts itself to the market.
Most indicators use a fixed pivot length (5, 10, 20). That works on one timeframe of one instrument — and breaks on anything else.
Here the length is computed dynamically:
— volRatio = ATR(14) / ATR(50)
— adaptiveLen = round( clamp( 10 / max(0.5, volRatio), 4, 16 ) )
In high-volatility regimes (volRatio > 1) length shrinks to 4–6 bars — the indicator reacts faster. In low-volatility regimes (volRatio < 1) length grows to 14–16 bars — small noise is filtered out. Can be disabled and set manually (default 8 when Adaptive is OFF).
2️⃣ ATR Equality Tolerance — scale-invariant definition of "equal" levels.
Two pivots are treated as touches of the same liquidity zone if the distance between them ≤ ATR × tolerance (default 0.25).
— 0.15 = strict (tight pools, fewer matches)
— 0.25 = balanced (recommended)
— 0.50 = loose (wider pools, more matches)
This solves a fundamental problem: on BTCUSD, "equal within $50" is normal; on EURUSD the same value is huge. ATR-based tolerance gives one setting that works across all instruments.
3️⃣ 4-factor Strength Score — pool weight on a 0–100 scale.
Every pool is scored as the sum of four components, clamped to 0–100:
— 🎯 Touches (up to 35 points) : (touchCount − 1) × 9, capped at 35. One pivot = 0, two = 9, three = 18, four = 27, five+ = 35.
— ⏳ Recency (up to 35 points) : 35 × 0.5^(ageBars / halfLife). Fresh pool = 35, after one half-life = 17.5, after two = 8.75. Default halfLife = 150 bars.
— 📊 Volume (up to 20 points) : log(max(1, cumVol / median)) × 8, capped at 20. Accumulated on every bar that touches the zone — not just the pivot bar.
— 🔭 HTF Confluence (+20 bonus) : if a higher-timeframe pivot exists within tolerance × 1.5 — +20 added to the total.
Examples:
— Fresh 1-touch pool, no volume, no HTF: 0 + 35 + 0 + 0 = 35
— Fresh 2-touch pool: 9 + 35 + 0 + 0 = 44
— Fresh 3-touch pool with 2× median volume: 18 + 35 + 5.5 + 0 = 58.5
— Old (1 half-life) 2-touch pool: 9 + 17.5 + 0 + 0 = 26.5
4️⃣ Sweep Detection with close-back confirmation — real liquidity grabs, not false wicks.
Pool state transitions follow strict logic:
— STATE_ACTIVE → STATE_SWEPT: wick pierced the level but bar closed beyond it (this is a breakout, not a reversal)
— STATE_ACTIVE → STATE_MITIGATED: wick pierced AND bar closed back inside (real liquidity sweep)
The default signal (Require Body Reversal = ON) only fires on MITIGATED. This is classic SMC "fakeout → reversal" logic. Disable it and any wick sweep will fire (more aggressive, more noise).
5️⃣ Volume-at-Level Accumulation — real volume at the level, not just at the pivot.
Most indicators count volume only on the pivot bar. That's misleading — true liquidity accumulates across all the touches.
Here, on every confirmed bar the engine checks for a zone touch (high or low inside levelBot–levelTop), and if found, adds the bar's volume to the pool's cumVol. Across 40 active pools this is O(P) per bar — fast.
6️⃣ HTF Confluence Engine — higher-timeframe pivots as a filter.
When enabled, pivots from the configured HTF (default 4H) are requested via request.security with lookahead_on on a closed bar (no repaint). If a pool aligns with an HTF pivot within tolerance × 1.5 — +20 is added to its score.
Used to filter signals: HTF-confluent pools cross the strength threshold faster.
7️⃣ 5 Risk Presets + Custom — ready-made SL/TP per trading style.
— Conservative: SL 2.5×ATR, TP 1R/2R/4R
— Balanced: SL 1.5×ATR, TP 1R/2R/3R (default)
— Aggressive: SL 1.0×ATR, TP 1.5R/2.5R/4R
— Scalping: SL 0.8×ATR, TP 0.8R/1.5R/2R
— Custom: manual multipliers
Calculation:
— slDistance = ATR(14) × slMult
— entry = close on the signal bar
— SL = entry ∓ slDistance
— TP1/2/3 = entry ± slDistance × tpMult
8️⃣ Automatic Break-Even after TP1 — stop trails to entry on its own.
After TP1 is touched (and SL didn't fire on the same bar), the active SL is moved to entry. From that point on, any pullback to entry = break-even exit. TP2/TP3 logic continues to track.
Edge case is handled: if both TP1 and SL fire on the same bar, the stop is evaluated against the ORIGINAL value (effectiveSL captured before the BE update). No "magic" loss-saving.
9️⃣ Position Lock — protection against silent trade overwrites.
While a trade is active (activeDir ≠ 0), new signals are blocked. Exception: if the current bar is closing the position (SL or TP3 hit), it's treated as "closing now" and an opposite signal is allowed through.
Without this protection, a fresh signal would silently overwrite the SL/TP of an open position — critical for both manual trading and webhook-based autotrading.
🔟 Pro-style visuals with adaptive contrast.
— Liquidity zones: colored boxes with transparency tied to strength (transparency = 88 − strength × 0.33)
— Mid-line: dotted line through the center of each zone
— Pool labels: SSL/BSL × touch count volume
— SL: solid red line (dims when BE activates)
— Entry: dotted blue
— TP1/2/3: dashed green (turn cyan + ✓ when hit)
— Themes: Auto/Dark/Light with WCAG AA contrast on every background
1️⃣1️⃣ Full alert suite for autotrading — JSON or plain text.
Every signal and trade event triggers alert() in one of two formats:
— Plain text: "🟢 SWEEP BUY | TICKER | TF | Price: X | Pool: 58/100 | SL: ... | TP1: ... | TP2: ... | TP3: ... | R:R: 1.0"
— JSON for webhooks: {"action":"buy","ticker":...,"tf":...,"price":...,"sl":...,"tp1":...,"tp2":...,"tp3":...,"rr":...,"pool_strength":...}
All alerts use alert.freq_once_per_bar_close (no intra-bar duplicates).
⚙️ HOW IT WORKS — CALCULATION FLOW
Step 1 — Pivot detection: on each bar, ta.pivothigh and ta.pivotlow are evaluated with the dynamic left length (adaptiveLen) and the configured right confirmation.
Step 2 — Matching: each new pivot is compared against all active pools of the same type (high/low). If distance ≤ tolerance AND age ≤ maxLookback, it's added as a new touch (level is recalculated as a weighted average).
Step 3 — Pool creation: if no match is found, a new pool is created with touchCount = 1 and the current volume. The HTF bonus is applied if confluent.
Step 4 — Volume accumulation: on each confirmed bar, if high or low touches an active zone, the bar's volume is added to that pool's cumVol.
Step 5 — Strength compute: on demand (lazy), the final strength is calculated using the 4-factor formula.
Step 6 — Sweep check: for every active pool, wickSweep (wick beyond the level) and closeBack (close back inside) are evaluated. State becomes MITIGATED if both true; SWEPT if only wickSweep.
Step 7 — Signal generation: if pool strength ≥ minStrengthSignal AND mitigation is confirmed (or Body Reversal is OFF) AND signals are enabled — a BUY/SELL fires.
Step 8 — Risk setup: on a confirmed signal, entry/SL/TP1/TP2/TP3 are constructed, position lock is engaged, and lines + labels are drawn.
Step 9 — Trade tracking: every bar, SL/TP1/TP2/TP3 hits are evaluated with same-bar-misfire protection (justOpened flag).
Step 10 — Break-even: on TP1 first touch (without simultaneous SL hit), SL is moved to entry, the original SL line dims, and the ENTRY label gets a "→ SL (BE)" suffix.
Step 11 — Auto-reset: on SL hit or TP3 hit, all trade-state variables reset, lines are deleted, position = FLAT.
Step 12 — Pruning: when active pools > maxActivePools (default 40), the oldest swept pool is removed first, then the weakest active pool.
📖 HOW TO USE — STEP-BY-STEP FOR NEWCOMERS
🎯 Quick start (5 minutes):
1. Add the indicator to any instrument and any timeframe.
2. Wait 50–100 bars for the warmup period — the indicator needs to accumulate ATR and pivot history.
3. Keep the dashboard ON (default position: Top Right) — it shows how many pools are tracked.
4. Pick a Risk Preset for your style: Scalping for M1–M5, Balanced for M15–H1, Conservative for H4–D1.
5. Create an alert: right-click on the chart → Add alert → Condition: Liquidity Pools Pro → Any alert() function call → Frequency: Once per bar close.
👁️ Reading the chart:
— 🔴 Red box = Sell-Side Liquidity (SSL) = equal highs where long stops sit. Price tends to wick into them to harvest stops.
— 🟢 Green box = Buy-Side Liquidity (BSL) = equal lows where short stops sit.
— 🔢 Number in brackets = pool strength, 0–100. Higher = thicker liquidity.
— ✖ ×3, ×4 = number of touches at this zone. More touches = more reliable.
— 📊 2.5M, 850K = cumulative volume traded at the level.
— ⚪ Dimmed gray box = swept or mitigated pool (already triggered).
— 🟢 "Long" below the bar = buy signal (BSL sweep + reversal).
— 🔴 "Short" above the bar = sell signal (SSL sweep + reversal).
— 🔵 Blue dotted line = ENTRY.
— 🔴 Red solid line = SL (stop-loss).
— 🟢 Green dashed lines = TP1/TP2/TP3. Cyan with ✓ = already hit.
— 🟠 Amber ENTRY label with "→ SL (BE)" = stop has been moved to break-even.
📊 Dashboard fields:
— Symbol / TF: current instrument and timeframe.
— Pivot Len: pivot length (with "(adapt)" tag when Adaptive is ON).
— Active Pools: total active pools and side breakdown (↑ highs, ↓ lows).
— Strong SSL ↑ / Strong BSL ↓: price and strength of the strongest pool on each side.
— Nearest Above / Below: pools closest to current price.
— Stats: Mit:N Sig:M/T — number of mitigations, signals, total pools. If Sig = 0 — lower the sensitivity (see Tuning).
— Position: current trade state (LONG/SHORT/FLAT).
— SL / TP1 / TP2 / TP3: levels of the active trade. ✓ = hit. "BE @" = stop at break-even.
— Plan R:R: TP1 multiplier (1.0R, 1.5R, 2.0R, etc.).
— Risk %: percent risk from entry to SL.
🔧 Tuning guide — when something feels off:
— Too few signals (Stats Sig: 0/N): lower Min Pool Strength for Signal from 25 to 15. Or disable Require Body Reversal — pure wick sweeps will fire.
— Too many signals, lots of noise: raise Min Pool Strength to 40 (only 2-touch pools) or 60 (only strong multi-touch with volume). Enable HTF Confluence.
— Too many zones, chart is crowded: raise Min Strength to Display to 30–40 — weak pools will be hidden but still tracked internally.
— Zones too narrow, false equality: increase Equality Tolerance from 0.25 to 0.40.
— Zones too wide, catching everything: decrease Equality Tolerance to 0.15.
— Stops getting hit too often: switch from Balanced to Conservative (SL 2.5×ATR instead of 1.5×ATR).
— Signals appear but no position opens: a trade is already active (Position Lock). Check the Position row in the dashboard.
— Strange scoring on forex: disable Volume-Weighted Strength (forex often lacks reliable volume data).
💡 TRADING IDEAS
— Manual trading on signals: only take trades where pool strength ≥ 50 and HTF Confluence is enabled.
— Zones only, no signals: disable Enable Sweep Signals and use the indicator as a pure liquidity map for manual setups.
— Scalping setup: preset Scalping + M1–M5 + Min Strength 15 + Adaptive Pivot ON.
— Swing setup: preset Conservative + H4–D1 + Min Strength 50 + HTF Confluence ON (Daily HTF).
— Webhook autotrading: enable Webhook JSON Format + alert.freq_once_per_bar_close + connect a bot to the JSON payload.
— Confluence with other indicators: combine signals with a trend filter (EMA50, SuperTrend) — only longs above EMA50, only shorts below.
⚙️ KEY SETTINGS
🎯 Liquidity Detection:
— Adaptive Pivot Length (default ON): auto-adjust pivot length to volatility.
— Manual Pivot Length (8): used when Adaptive is OFF.
— Right Confirmation Bars (2): bars to the right needed to confirm a pivot.
— Equality Tolerance ×ATR (0.25): level equality threshold.
— Max Pivot Lookback (200): how far back to search for matches.
— Max Active Pools (40): hard cap on simultaneously tracked pools.
💪 Strength Scoring:
— Min Strength to Display (0): pools below this score are hidden (visual only).
— Strength Half-Life (150): bars after which the recency factor halves.
— Volume-Weighted Strength (ON): include the volume factor in scoring.
📡 Sweep Signals:
— Enable Sweep Signals (ON): generate BUY/SELL signals.
— Min Pool Strength for Signal (25): minimum pool strength to fire.
— Require Body Reversal (ON): require close-back inside the level (recommended).
🔭 HTF Confluence:
— Enable HTF Confluence (default OFF): use higher-timeframe pivots as a filter.
— Higher Timeframe (240 = 4H): which HTF to query.
🛡️ Risk Management:
— Risk Preset (Balanced): Conservative / Balanced / Aggressive / Scalping / Custom.
— ATR Length (Risk) (14): ATR period for SL distance.
— Custom SL/TP1/TP2/TP3 ×ATR / ×Risk : manual multipliers.
— Show SL/TP Lines & Labels (ON): draw trade levels on the chart.
— Break-Even After TP1 (ON): auto-trail stop to entry.
— Show % Distance on Labels (ON): append % from entry to SL/TP labels.
🎨 Visual:
— Theme (Auto): Auto / Dark / Light with adaptive contrast.
— Show Liquidity Zones / Strength Bar / Labels / Volume / Swept Zones / Buy-Sell Markers / Watermark : visual toggles.
— Label Font Size / Signal Marker Size : Tiny → Huge.
📊 Dashboard:
— Show Dashboard (ON), Position (Top Right): corner placement.
🔔 Alerts:
— Webhook JSON Format (OFF): JSON or plain text.
— Alert on SL Hit (ON), Alert on TP Hits & BE (OFF): alert toggles.
🎨 Colors:
— Bullish (Demand) Color / Bearish (Supply) Color : zone colors.
🔔 ALERTS
— 🟢 SWEEP BUY — BSL sweep + reversal, payload: ticker, tf, price, sl, tp1, tp2, tp3, rr, pool_strength
— 🔴 SWEEP SELL — SSL sweep + reversal, same payload structure
— 🛑 SL HIT — stop-loss triggered (or 🛡️ BE STOP-OUT when Break-Even is active)
— 🎯 TP1 HIT / 🎯 TP2 HIT / 🏆 TP3 HIT — take-profit hits (only fired when SL didn't trigger on the same bar)
— 🛡️ BREAK-EVEN — stop moved to entry
All alerts support both plain text and JSON webhook formats. All fire on alert.freq_once_per_bar_close — no intra-bar duplicates and no repaint.
⚠️ IMPORTANT NOTES
— 🚫 No repainting. Signals are generated only on barstate.isconfirmed (closed bar). Pivots are confirmed with a right window of rightConfirmInput bars (default 2) — meaning the actual swing point is in the past by N bars, but the indicator does not redraw already-drawn pools. HTF data via request.security uses lookahead_on on the offset bar — a standard non-repainting technique.
— 📐 Warmup period: the first 50+ bars (max(50, atrLenRisk + 10)) the indicator does not generate signals — it accumulates ATR and pivot history.
— ⚖️ Position Lock is not absolute against opposite signals: if the active trade closes on the current bar (SL or TP3 hit), an opposite signal will pass. This is by design — instant two-way blocking is impossible.
— 📊 Volume factor is optional: on forex instruments without reliable volume, disable Volume-Weighted Strength.
— 🛠️ This is an analysis tool, not a trading bot. The indicator detects liquidity zones, scores them, identifies sweeps, and proposes a trade plan — but the decision to open a position is yours. Past performance does not guarantee future results. Test on demo before trading live.
— 🌐 Universal compatibility: works on any instrument (crypto, forex, stocks, indices, futures) and any timeframe (M1 → M).
Version v1.1.5. Fully free. Open-source. Indicator

Indicator

Bias Dashboard (Mark)# Bias Dashboard — Documentation
### Developed for NQ Futures Trading | Version 1.0
---
## Overview
The Bias Dashboard is a PulseWire Pine Script indicator designed to answer one simple question at any point during the trading day:
**Is the market breaking Long, Short, or is there no clear direction?**
It is designed for NQ futures traders but works on any instrument. It runs on the 1-minute chart and analyzes the last 90 bars of price action to determine trend direction, trend strength, momentum, volume, VWAP positioning, and EMA alignment — combining all of these into a single **Conviction** verdict.
The indicator operates in three modes and is intended to be used as a confirmation and confluence tool, not as a standalone entry signal.
---
## Modes
The indicator has three operating modes, selectable in the settings:
### ⚡ LIVE Mode
The dashboard updates in real time on every candle close. Use this mode throughout the trading day to monitor ongoing market bias. Ideal for continuously gauging whether conditions favor a long or short trade at any given moment.
### 🔔 MOC Mode (Market on Close — 3:50 PM ET)
The dashboard runs live until 3:50 PM ET, at which point it locks and freezes its readings. This gives you a snapshot of market conditions at the critical pre-close window. The snapshot holds until midnight ET, then resets automatically for the next session.
Use this mode to evaluate bias for the 3:50 PM MOC trade. The indicator looks back 90 one-minute bars from the anchor time to assess whether the trend has the strength and conviction to continue into the close.
### 🌏 ASIAN Mode (Asian Open — 8:00 PM ET)
Identical behavior to MOC mode, but anchors at 8:00 PM ET for the Asian session open. Locks at that time and resets at midnight.
Use this mode to evaluate whether the post-US-session trend has enough conviction to continue into the Asian open.
---
## What the Dashboard Shows
The dashboard displays six rows of information plus a verdict bar at the bottom.
### Direction
The overall market direction based on trend structure and momentum alignment.
- **▲ LONG** — conditions favor a long trade
- **▼ SHORT** — conditions favor a short trade
- **— FLAT** — no clear directional bias
### Conviction
How strongly all inputs agree on the stated direction. This is the most important output of the indicator. There are five levels:
- 🟢 **CONFIRMED** — All or nearly all inputs agree. High confidence trade.
- 🟡 **PROBABLE** — Most inputs agree. Good conditions, proceed normally.
- 🟠 **MARGINAL** — Mixed signals. Proceed with caution or reduce size.
- 🔴 **WEAK** — More inputs disagree than agree. Lean toward sitting out.
- ⬜ **NO TRADE** — No meaningful directional bias. Stay out.
### Trend
The strength of the prevailing trend over the last 90 one-minute bars.
- **Strong** — Price is making a clear, sustained directional move with significant slope
- **Moderate** — A trend exists but is less decisive
- **Weak** — Little or no trend structure present
This is measured using two methods simultaneously: pivot high/low structure (higher highs and higher lows for an uptrend, lower highs and lower lows for a downtrend) and a linear regression slope normalized against the Average True Range. Both must agree for a strong trend reading.
### Mom / Vol (Momentum and Volume)
Whether the current candles are showing genuine directional momentum backed by volume. Momentum and volume are treated as a single combined input because strong momentum without volume is a fake move, and strong volume without momentum is absorption — neither alone is sufficient.
- **Strong Long / Strong Short** — Large-bodied candles closing near their extremes, with volume above the 20-bar average
- **Moderate Long / Moderate Short** — Decent candle bodies with average volume
- **Weak / Mixed** — Small bodies, long wicks, or low volume — no conviction
### VWAP
Where price is relative to the Volume Weighted Average Price and which direction VWAP is sloping.
- **Above — Rising** — Price above VWAP and VWAP trending up. Institutional buying pressure. Bullish.
- **Above — Falling** — Price above VWAP but VWAP turning down. Weakening bullish condition.
- **Below — Falling** — Price below VWAP and VWAP trending down. Institutional selling pressure. Bearish.
- **Below — Rising** — Price below VWAP but VWAP turning up. Weakening bearish condition.
- **At VWAP** — Price is at the VWAP level. Decision point. Proceed with caution.
VWAP acts as a magnet — price tends to revert to it over time. This means a trade taken when price is already far from VWAP carries more mean-reversion risk than one taken when price is just breaking away from it cleanly.
### EMA Stack
The alignment of three Exponential Moving Averages — the 9, 20, and 50 EMA.
- **Bull 9>20>50** — All three EMAs in bullish order. Trend is confirmed across multiple timeframes.
- **Bear 9<20<50** — All three EMAs in bearish order. Trend is confirmed across multiple timeframes.
- **Mixed** — EMAs are not fully aligned. Short term and longer term momentum disagree.
A fully aligned EMA stack that agrees with the direction adds conviction. A stack that fights the direction reduces conviction.
### Verdict Bar
The bottom row of the dashboard combines Direction and Conviction into a single colored statement, for example:
**▲ LONG — CONFIRMED**
The background color of this bar matches the conviction level — green for confirmed/probable, orange for marginal, red for weak. This is designed to be readable at a glance without reading the individual rows above it.
---
## How Conviction is Calculated
The conviction engine works in two steps.
**Step 1 — Base Conviction Matrix**
Trend Strength and Momentum/Volume are multiplied together to produce a base conviction level:
| | Strong Trend | Moderate Trend | Weak Trend |
|---|---|---|---|
| **Strong Mom/Vol** | CONFIRMED | PROBABLE | MARGINAL |
| **Moderate Mom/Vol** | PROBABLE | MARGINAL | WEAK |
| **Weak Mom/Vol** | MARGINAL | WEAK | NO TRADE |
**Step 2 — Adjustments**
VWAP and EMA Stack each cast a vote:
- Agrees with direction = +1
- Neutral = 0
- Fights direction = -1
The two votes are combined. If both agree, conviction bumps up one level. If both fight the direction, conviction drops one level. Mixed votes leave base conviction unchanged.
This means the maximum possible conviction is CONFIRMED, and the minimum is NO TRADE, regardless of how extreme the adjustments are.
---
## How to Use It
**For MOC and Asian Open trades:**
Load the indicator in MOC or ASIAN mode. Watch the dashboard update live in the 90 minutes leading up to the event. At the anchor time it will lock. Use the frozen snapshot to decide whether conditions support a trade.
A CONFIRMED or PROBABLE verdict with a clear direction is your green light to look for an entry. MARGINAL means proceed carefully with reduced size. WEAK or NO TRADE means sit this one out.
**In LIVE mode:**
The dashboard updates continuously. Use it as a real-time bias check at any point during the session. It is particularly useful during low-volume or choppy periods when direction is unclear — a NO TRADE reading is a valid and valuable signal to stay out.
---
## Settings
| Setting | Default | Description |
|---|---|---|
| Mode | LIVE | LIVE, MOC, or ASIAN |
| Trend Lookback | 90 bars | Number of 1-minute bars for trend analysis |
| Momentum Bars | 4 bars | Number of recent candles for momentum read |
| Dashboard Position | Top Right | Top Right, Top Left, Bottom Right, Bottom Left |
| Background Color | Dark black | Dashboard background |
| Border Color | Soft white | Table border |
| Header Color | Navy | Mode header row |
| Text Color | White | Primary text |
| Label Color | Subtle white | Row label text |
---
## Important Notes
- This indicator is a **confluence tool**, not an entry signal. It tells you whether conditions are favorable. It does not tell you exactly when or where to enter. That judgment remains yours.
- On NQ futures, unexpected news events — economic data releases, policy announcements, geopolitical developments — can override any technical reading instantly. No indicator can account for surprise news.
- The indicator is designed primarily for NQ but is portable to ES, GC, CL, and other instruments without modification.
- Always trade within your risk management rules regardless of what the indicator shows. A CONFIRMED reading is not a guarantee.
---
*Bias Dashboard — Built for the trading group. Use it as one voice among several, not the only voice.* Indicator

Indicator

Holidays v1
1. Overview
Holidays — marks trading halts at the world's major stock exchanges directly on the PulseWire chart. For each configured holiday, a colored background block spans the full calendar day. At the bottom of the chart, auto-sizing labels display the holiday name and the flag emojis of all affected exchanges.
At a glance, you can see whether one or more markets are closed on any given day — critical information for assessing liquidity conditions, spread behavior, and correlation reliability across instruments.
Key Features
8 pre-configured exchanges with verified 2026 holiday data
10 freely assignable custom slots for user-defined holidays or events
Every holiday individually toggleable — enable only what you need
Per-exchange color and configurable session duration (default: full 24h calendar day)
Smart label merging: when multiple exchanges share the same holiday on the same day (e.g. New Year's Day), a single label shows the holiday name with all country flags combined
Labels at chart bottom with automatic round-robin stacking across 4 rows — no overlap, no text truncation
Info table showing active and upcoming holidays, color-coded by exchange, with flag and date columns
Three independent visibility toggles: background blocks, labels, and info table can each be shown or hidden separately
Works for past AND future dates (box.new with xloc.bar_time)
Visible chart range detection: label positions recalculate automatically when scrolling or zooming
2. Smart Label Merging & Stacking
Many major holidays — such as New Year's Day, Good Friday, or Christmas — are observed simultaneously by multiple exchanges. Without merging, these would produce 5-8 overlapping labels on the same day.
How Merging Works
The indicator groups all holidays by date AND name. When multiple exchanges have the same holiday on the same day, they are merged into a single label:
Line 1: Holiday name (e.g. 'New Year's Day')
Line 2: Combined flag emojis of all affected exchanges (e.g. '🇺🇸 🇬🇧 🇨🇦 🇩🇪 🇯🇵 🇨🇳 🇦🇺 🇰🇷')
Different holidays on the same day (e.g. JP Greenery Day and KR Children's Day on May 4/5) remain as separate labels and are stacked vertically.
Round-Robin Row Stacking
Labels are distributed across 4 rows at the bottom of the chart using a round-robin pattern: label 1 goes to row 1, label 2 to row 2, label 3 to row 3, label 4 to row 4, label 5 back to row 1, and so on. This guarantees that no two adjacent labels share the same vertical position, regardless of how closely spaced the holidays are in time.
The vertical spacing between rows scales automatically with the visible price range — when you zoom in, rows spread further apart; when you zoom out, they compress proportionally.
3. Supported Exchanges
The indicator includes pre-filled and verified holiday data for eight exchanges. Each exchange group has its own color, a master enable toggle, and a configurable session duration (default: 24 hours = full calendar day).
Holidays (Configurable session duration)
Default: full calendar day (24h)
🇺🇸
USA — NYSE / NASDAQ
Holidays: 9
🇬🇧
London — LSE
Holidays: 8
🇨🇦
Canada — TSX
Holidays: 8
🇩🇪
Germany — Xetra
Holidays: 7
🇯🇵
Japan — TSE
Holidays: 8
🇨🇳
China — SSE
Holidays: 7
🇦🇺
Australia — ASX
Holidays: 8
🇰🇷
South Korea — KRX
Holidays: 7
★
Custom (10 slots)
Freely configurable
4. Settings
All settings are accessible via the gear icon next to the indicator name in the chart legend, or by right-clicking the indicator and selecting 'Settings'.
4.1 Style Settings
Background Opacity
Transparency of the background blocks. 0 = fully opaque, 100 = invisible. Default: 85.
Border Color
Color of the outline drawn around each holiday block.
Border Style
Line style of the outline: Solid, Dashed, Dotted, or None.
Border Width (px)
Thickness of the outline in pixels (0–4).
Show Background Blocks
Toggle the full-height colored background blocks on/off. Can be disabled while keeping labels and/or table visible.
Show Block Labels
Toggle the holiday name labels at the bottom of the chart on/off.
Label Font Size
Font size for labels: Tiny, Small, Normal, Large.
Label Text Color
Text color of the bottom labels.
Label Background Transparency
Transparency of the label background. Uses the exchange color. 0 = opaque, 100 = invisible.
Show Info Table
Toggle the info table on/off. Works independently of blocks and labels.
Table Position
Corner of the chart: Top Right, Top Left, Bottom Right, Bottom Left.
Table: max upcoming rows
Maximum number of upcoming holidays in the table. Active holidays always shown additionally.
Table Font Size
Font size: Tiny, Small, Normal, Large.
Table Border Color
Grid line and frame color of the table.
Table Background Color
Background color of the table frame.
Table Upcoming Row Transparency
Transparency of upcoming (not yet active) holiday rows. Active rows always at 30%.
4.2 Per-Exchange Settings
Each of the eight exchanges has its own settings group:
✓ Enable Group: Enable or disable all holidays for this exchange.
Color: Color used for background blocks, labels, and table rows.
Session hours: Duration of the holiday highlight (default: 24h = full calendar day). Can be reduced to show only the actual trading session if desired.
Below these, each individual holiday has a checkbox (enable/disable) and a date/time input.
4.3 Custom Holidays
The '▼ Custom Holidays' group provides 10 free slots. Each slot has a checkbox, a name field, and a start timestamp. Custom slots share a common session duration setting.
5. The Info Table
The info table displays active and upcoming holidays in a compact, color-coded format.
Table Structure
Column 1 (Flag): Country flag emoji or ★ for custom holidays
Column 2 (Holiday): Holiday name with exchange prefix (e.g. 'GB Early May BH')
Column 3 (Date): Date in UTC (format: MMM dd)
Display Logic
Active holidays: strong exchange color, white text
Upcoming holidays (within 90 days): dimmed exchange color at configurable transparency
Maximum N upcoming entries shown (configurable), active holidays always additional
Entries sorted chronologically by date
6. Three Independent Visibility Toggles
The indicator provides three separate toggles in the Style Settings, allowing you to show exactly what you need:
Toggle & What it controls:
Show Background Blocks
Full-height colored blocks spanning the entire price range. Provides an immediate visual cue that a holiday is in effect.
Show Block Labels
Auto-sizing labels at the chart bottom showing the holiday name and country flags. Labels use round-robin row stacking to prevent overlap.
Show Info Table
Compact table listing active and upcoming holidays. Can serve as the sole holiday indicator when blocks and labels are disabled.
Example combinations: table-only mode for a clean chart with minimal visual clutter; blocks-only for quick visual scanning without text; all three enabled for maximum information density.
7. Technical Notes
7.1 Visible Range Detection
The indicator tracks the visible price range using chart.left_visible_bar_time, which triggers a recalculation whenever the user scrolls or zooms. The lowest and highest visible prices are computed incrementally using var float variables — no ta.lowest or ta.highest with series length, avoiding Pine's historical buffer allocation issues entirely.
7.2 Past and Future Display
Holiday blocks use box.new() with xloc=xloc.bar_time, which is not limited to historical bars. Holidays are rendered correctly for future dates as soon as the corresponding time range is visible on the chart axis.
7.3 Performance and Limits
Up to 500 boxes and 500 labels (configurable via indicator declaration)
All drawing objects redrawn only on barstate.islast — no performance impact on historical bars
Holiday data stored in global arrays to stay within Pine v6's 254-element-per-function limit
8.4 Holiday Data
All pre-filled dates refer to 2026 and have been verified against official exchange calendars from NYSE/ICE, LSE, TSX, Xetra/Deutsche Börse, JPX, SSE, ASX, and KRX. All timestamps are set to 00:00 UTC with a default duration of 24 hours, marking the full calendar day. For subsequent years, dates must be updated manually.
8. Use Cases
Liquidity Analysis
On days when multiple exchanges are simultaneously closed — Good Friday affects NYSE, LSE, TSX, Xetra, and ASX — the merged label shows all five flags at once, and the overlapping background blocks create a visually darker zone. This signals exceptionally thin market liquidity.
Forward Planning
The info table lists upcoming holidays chronologically. Traders can identify well in advance when reduced activity is expected — useful for position sizing, stop placement, and avoiding entries before liquidity gaps.
Custom Event Marking
The 10 custom slots can mark FOMC meetings, ECB rate decisions, NFP releases, or any other scheduled events using the same visual system.
If you have questions just contact me or put your ideas or wishes in the comments. Indicator

Indicator

ATR Stop Loss Labels (Long / Short)ATR Stop Loss Labels (Long / Short)
Description:
This indicator provides a clean and practical way to calculate and display ATR-based stop loss levels directly on the chart—without cluttering it with lines.
Instead of drawing dynamic lines, it shows clear labels for Long and Short stop levels on the latest candle, making it ideal for traders who want precise risk levels without visual noise.
How it works:
The script uses the Average True Range (ATR) to measure market volatility.
A user-defined multiplier is applied to the ATR to calculate stop distances.
Stop levels are updated in real-time based on the latest price.
Stop Loss Logic:
Long SL: Close − (ATR × Multiplier)
Short SL: Close + (ATR × Multiplier)
Features:
Toggle between Long, Short, or Both stop loss labels
Clean label-based display (no lines, no clutter)
Real-time updates on the latest candle
Built-in ATR value display table
Customizable colors and settings
Best Use Cases:
Intraday trading (15m / 1H)
Swing trading (4H / 1D)
Works well with trend-following systems (EMA, RSI, etc.)
Ideal for traders who prefer manual entries with structured risk management
Recommended Settings:
Multiplier 1.5–2.0 → tighter stops (intraday)
Multiplier 2.0–2.5 → wider stops (swing trades)
Notes:
This indicator does not generate buy/sell signals.
It is designed purely for risk management and stop placement.
For best results, combine it with your own entry strategy.
Summary:
A simple, professional tool to define stop losses using volatility—focused on clarity, speed, and practical trading execution. Indicator

AI Trading Console PRO (BuySell with Complete Dash)AI Trading Console PRO script. It operates as a complete, semi-automated trading system combining entry signals, institutional filters, dynamic profit targets, and live performance tracking.
1. The Signal Engine (When to Enter)
The core entry logic relies on a confluence of four technical parameters. A trade is only triggered when all active conditions align.
ORB (Opening Range Breakout): The script records the highest high and lowest low of the first 30 minutes of the trading day (9:15 AM to 9:45 AM). A Buy signal requires price to break above the ORB High; a Sell signal requires breaking below the ORB Low.
Trend Alignment (EMA): It checks the short-term trend using a Fast EMA (13) and Slow EMA (39). Buy entries only happen if the 13 EMA is above the 39 EMA (Bullish).
Momentum (RSI): It ensures momentum is on your side. Buy entries require the 14-period RSI to be above 55, while Sells require it to be below 45.
HTF Confirmation (Higher Time Frame): It looks at a higher timeframe (default is 60 minutes) to ensure you aren't trading against the macro trend. A 50 EMA on the 60m chart dictates the broader bull/bear bias.
2. Institutional Filters (When to Stay Out)
This is the "brain" of the console, designed to prevent trades in choppy or dangerous market conditions.
ADX (Average Directional Index): This measures trend strength, regardless of direction. The script requires ADX to be above 20. If ADX is below 20, the market is chopping sideways, and the script will block the trade.
India VIX (Volatility Index): It pulls live data from NSE:INDIAVIX. If the VIX spikes above 20 (indicating panic or extreme volatility), the script blocks new entries to protect your capital.
3. Dynamic Targets (Where to Take Profit)
Instead of fixed percentage targets, the script uses Standard Floor Pivots calculated from the previous day's High, Low, and Close.
Institutional Levels: These pivots (R1, R2, R3 for Resistance; S1, S2, S3 for Support) act as hidden liquidity zones where large players take profits.
Dynamic Assignment: When a trade triggers, the script looks at your entry price. If you buy above R1, it intelligently assigns R2 as Target 1 (TP1) and R3 as Target 2 (TP2).
Visual Tracking: Once price touches a target level, the script stops plotting that specific line to keep the chart clean and changes the dashboard text to a green "HIT."
4. Risk Management (How to Protect Capital)
The script automates position sizing and stop-loss trailing so you don't have to calculate it manually.
ATR Stop Loss: The initial Stop Loss is placed 1.5x the Average True Range (ATR) away from your entry. This ensures your stop is based on current market volatility, not an arbitrary number.
Trailing Stop: As the trade moves in your favor, the Stop Loss trails behind the price by 1.2x the ATR, locking in profits while giving the trade room to breathe.
Position Sizing: You input your Capital (e.g., ₹100,000) and Risk % per trade (e.g., 2%). The script calculates exactly how many shares/contracts you should buy based on the distance to your ATR Stop Loss.
5. The Live Dashboard
The table in the top right acts as your command center. Here are the most advanced metrics it tracks:
AI Score (0-100): A real-time confidence metric. It awards 20 points each for Trend alignment, Momentum, Trend Strength (ADX), Volatility Safety (VIX), and HTF alignment. A score of 80+ is colored green, indicating a high-probability setup.
Expectancy: A mathematical proxy telling you if the strategy has a positive edge. An expectancy above 0.20 generally means the system is highly profitable over a large sample size.
Live PnL & WinRate: The script silently tracks every signal it generates in the background. It calculates your simulated Profit and Loss (PnL) and Win Rate based on your actual position sizing and where the trailing stop takes you out.
Avoid Trade: If the VIX is too high or the ADX is too low, this will flash red "YES," warning you that current market conditions are unfavorable for breakout trading.
Key Changes Made:
Pivot Calculation Engine: Added a request.security call using lookahead_on to pull the previous day's high, low, and close without repainting. This powers the standard Floor Pivots (R1/R2/R3 and S1/S2/S3).
Dynamic Target Assignment: When a signal fires, the script checks where the close price is relative to the pivots. If you buy above R1, it intelligently assigns R2 as your TP1 and R3 as your TP2.
Visual Tracking: Hit targets are visually tracked. When price touches a TP level, it drops a label on the chart and stops plotting the circle line for that specific target to keep your chart clean.
Upgraded Dashboard: Expanded the data table from 10 rows to 14. It now displays your active Entry, Stop Loss, and all three TP levels in real time. It will also switch the text to "HIT" in green once a target is reached during a trade. Indicator

Yield Curve MonitorWhat you see in the preview image
The chart displays the complete US Treasury yield curve as a smooth log-scaled polyline drawn to the right of the last bar, with all eleven maturities from 1-month T-bills to 30-year bonds plotted at their actual yield values. The solid line shows today's curve; the dashed line shows the curve from 21 trading days ago for direct visual comparison. Each tenor is labeled with its name and yield in percent. To the right, a comprehensive dashboard table lists every maturity with current yield, the change in basis points versus the historical reference date, and a relative magnitude bar. Below the maturity rows the four most-watched yield-curve spreads are shown (2s10s, 3m10y, 2s30s, 5s30s) with their current value, change versus history, and inversion status. The footer classifies both the current and historical curves into one of five regimes — Steep, Normal, Flat, Inverted, or Humped — using a user-selectable slope metric.
What this indicator does
This is a complete US Treasury yield-curve workstation built into a single PulseWire pane. It solves a problem that ordinary time-series indicators cannot: the yield curve is fundamentally a cross-sectional object — yield as a function of maturity at a single moment — but standard charts plot variables against time. By rendering the curve as a polyline anchored to the right of the last bar, with maturity on a logarithmic x-axis and yield on the price axis, the indicator gives you a real, geometrically faithful view of curve shape, alongside a complete data table and historical comparison.
Eleven maturities are pulled from PulseWire's TVC feed at daily resolution: US01MY, US03MY, US06MY, US01Y, US02Y, US03Y, US05Y, US07Y, US10Y, US20Y, US30Y. Each tenor is requested twice — once for the current bar and once for a user-defined lookback offset — giving the indicator a paired snapshot that drives every visualization and metric. If a specific tenor is unavailable on your data plan (US20Y is the most common gap), that point silently drops from the curve and shows an em dash in the table — no errors are raised.
Settings explained
Display group
Curves geplottet (Curves to plot) — choose which yield curves are drawn to the right of the last bar: , , or . The dashboard table always shows both datasets regardless of this setting; this toggle controls only the visual polyline. The tenor labels next to the points always reflect the curve being plotted (or the current curve when both are shown).Current onlyHistoric onlyBoth
Slope-Metrik (Shape-Klassifikation) — selects which spread drives the Steep / Normal / Flat / Inverted / Humped classification shown in the dashboard footer. Six options are available: (the default, broadest possible measure), (classic NBER recession lead-indicator), (the Federal Reserve's preferred recession signal), (long-end steepness), (pure long-end term-premium proxy), and (full-spectrum slope excluding T-bills). Each metric has its own empirically calibrated thresholds (see the Methodology section), so the classification remains meaningful regardless of which spread you choose. Alerts also fire on the selected spread.30y - 3m10y - 2y (2s10s)10y - 3m (3m10y)30y - 5y (5s30s)30y - 10y (10s30s)30y - 2y (2s30s)
Dashboard anzeigen — show or hide the data table.
Tabellen-Position — five anchor points for the dashboard: top-left, top-right, middle-right, bottom-right, bottom-left.
Historic Lookback (Daily Bars) — the number of trading days back used for the historical comparison. Default is 21, which approximates one trading month. Useful presets: 21 ≈ 1 month, 63 ≈ 1 quarter, 126 ≈ 6 months, 252 ≈ 1 year. Maximum 504 bars (≈ 2 years).
Style group
Five customizable colors mapped to semantic roles (Bull/Steep/Current, Bear/Inversion, Neutral/Normal, Warning/Flat/Hump, Historic). One additional input controls the polyline line width (1 to 5). All defaults match a dark theme; the colors can be repointed to fit any chart style.
Alerts group
Two alert toggles: one fires when the user-selected slope metric crosses below zero (inversion event), the other when it crosses back above zero (re-steepening event). Both alerts trigger on confirmed daily-bar closes only — there is no intrabar repainting.
What the dashboard shows
The table is divided into three blocks.
Maturity block (eleven rows) — one row per tenor showing the current yield to three decimal places, the change in basis points versus the lookback date with directional color (green up, red down), and a magnitude bar built from filled and empty Unicode block characters that visualizes the yield's size relative to the highest yield in the curve. This block lets you read absolute levels and recent moves at a glance.
Key Spreads block (four rows) — the four most-watched curve spreads (2s10s, 3m10y, 2s30s, 5s30s), each with current value, change in basis points versus the lookback date, and an OK / INVERTED status flag. These four are shown unconditionally regardless of which slope metric you selected for shape classification, so you always have the full institutional toolkit visible.
Curve Shape block (one or two rows) — one row per plotted curve (Current and/or Historic, depending on the curve toggle). Each row shows the regime label (STEEP, NORMAL, FLAT, INVERTED, or HUMPED) on a colored background matching the regime, the current slope value of the selected metric, and the metric's name. This lets you compare regime states between today and the lookback date directly: the curve may have shifted from FLAT to STEEP, for example, even if both versions are visible on the chart.
Methodology — shape classification
The indicator uses the user-selected spread as its primary slope input, with four absolute thresholds calibrated empirically from US Treasury data since 1990:
30y - 3m Steep : +1.5% Normal > +0.3% Flat > -0.3% Inverted ≤ -0.3%
10y - 2y (2s10s) +1.0% +0.2% -0.2% -0.2%
10y - 3m (3m10y) +1.5% +0.3% -0.3% -0.3%
30y - 5y (5s30s) +0.7% +0.15% -0.15% -0.15%
30y - 10y (10s30s) +0.5% +0.1% -0.1% -0.1%
30y - 2y (2s30s) +1.0% +0.2% -0.2% -0.2%
The thresholds reflect each spread's historical distribution: the long-end spreads (5s30s, 10s30s) have far narrower ranges than the broad measures (30y-3m, 3m10y), so applying a single global threshold would over-classify the long-end as STEEP at almost every reading. By calibrating per metric, the classification stays meaningful no matter which spread the user selects.
A separate Hump detection runs alongside: if the maximum yield in the curve falls in the belly (2Y, 3Y, 5Y, or 7Y) and the overall slope is below twice the Normal threshold, the curve is classified as HUMPED. This identifies the canonical inverted-belly shape that often signals a near-term policy-rate peak followed by expected easing.
How to read the curve
A Steep curve typically associates with early-cycle expansions, accommodative monetary policy, or rising inflation expectations — investors demand higher compensation to lend further out. A Normal curve is the long-term default state of healthy bond markets. A Flat curve indicates near-equality of short and long expectations, typically near cyclical turning points. An Inverted curve, where long yields trade below short yields, has preceded every US recession since the 1960s with an average lead time of roughly 12 to 18 months — this is the signal to watch for. A Humped shape, where the belly trades above both ends, typically reflects market pricing of a near-term hiking cycle followed by expected cuts.
The dashed historical curve makes regime transitions visually obvious. If the solid current curve sits below the dashed reference across all tenors, yields have fallen broadly (a bond rally). If the curves cross — for example, the short end is up but the long end is down — the curve has flattened or inverted further during the lookback window. If the spread between them widens at the long end, term premium is expanding.
Repainting and data behavior
All calls use . Alerts trigger only on confirmed daily-bar closes. There is no repainting on confirmed bars.request.securitylookahead = barmerge.lookahead_off
When the chart is on an intraday timeframe, the displayed yields reflect the most recent closed daily bar — during the US trading session this means yesterday's settlement until the new daily close prints. This is correct, non-repainting behavior and is consistent with how all daily-resolution data is served on PulseWire.
The pane scales automatically to the yield range using two invisible anchor plots (min and max across both current and historical curves). This ensures the polyline always uses the full vertical space without manual axis adjustment, regardless of the absolute level of yields.
Limitations
The classification thresholds are static absolutes, not adaptive. In persistent low-rate regimes (such as 2010-2021) the STEEP threshold may register slightly too generously; in high-rate regimes the FLAT threshold may understate compression. The numerical slope value is always shown alongside the label, so you can apply your own judgment when the regime label feels off.
The Hump detection uses a simple argmax check on the belly tenors rather than a full curvature metric (such as the 2 × 5Y minus 2Y minus 10Y butterfly). It is most reliable when the selected slope metric spans the full curve (30y-3m, 3m10y, 2s10s); for narrow long-end metrics (5s30s, 10s30s) the belly lies outside the metric's span and Hump classification can be misleading. When in doubt, switch the slope metric to for the most robust shape reading.30y - 3m
Only US Treasuries are supported in this version. The architecture leaves headroom in the request.security budget (22 of 40 calls used) for adding additional sovereign curves (Bunds, Gilts, JGBs) in future updates.
Two alert conditions are exposed for the user-selected slope metric:
Selected Spread Inversion — fires when the chosen spread crosses below zero (e.g., from positive to negative 2s10s). Useful as an early-warning trigger in macro frameworks.
Selected Spread Re-Steepening — fires when the chosen spread crosses back above zero. The bull-versus-bear-steepener distinction (which end of the curve is moving) requires looking at the individual yields in the dashboard at the moment the alert fires.
Alerts respect the user's slope-metric selection — switching from 2s10s to 3m10y in the settings will redirect the alerts to the new spread automatically.
Recommended use
Place the indicator on a daily chart of a broad US equity index (SPX, ES1!, SPY) to visualize how historical yield-curve regimes have aligned with equity-market phases — the inversion shading and shape labels make prior recession signals immediately visible. For fixed-income traders, place it directly on a Treasury futures chart (ZN1!, ZB1!) to use the live curve view as a directional input alongside the underlying price action. For macro discretionary traders, the configurable slope metric lets you align the shape classification with whichever spread your framework prioritizes — Fed-watchers typically use 3m10y, recession-modelers use 2s10s, term-premium analysts use 5s30s or 10s30s.
Originality
This indicator combines three distinct visualizations of the same dataset — a cross-sectional polyline curve drawn to the right of the last bar, a comprehensive numerical dashboard with eleven tenors and four spreads, and a configurable shape classification with per-metric calibrated thresholds — into a single, self-contained workspace. The log-scaled cross-sectional curve drawing using Pine v6's polyline objects, the historical comparison overlay, and the user-selectable slope metric with empirically calibrated thresholds per spread are not, to my knowledge, available in this combination in other public yield-curve scripts on the platform.
Indicator

Nexus Sentiment & Risk Matrix [Pineify]Nexus Sentiment and Chandelier Risk Matrix
Nexus Sentiment and Chandelier Risk Matrix blends a three-oscillator momentum score with a Chandelier-style ATR risk state. RSI, smoothed Stochastic, and normalized CCI form one 0-100 sentiment line; BUY/SELL markers appear only when that line agrees with a fresh risk flip.
Key Features
Composite sentiment from RSI, Stochastic, and CCI.
Chandelier risk direction used as a signal filter.
Gradient fills around the 50 equilibrium level.
Alerts for bullish and bearish alignment events.
How It Works
The script calculates RSI , 3-bar smoothed Stochastic , and CCI with one oscillator length.
CCI is clipped around +100/-100 and remapped to 0-100 so it can be averaged with the other oscillators.
The average becomes the sentiment line. Above 50 suggests bullish pressure; below 50 suggests bearish pressure.
The risk layer uses ATR and recent extremes to maintain a persistent direction.
A BUY needs an upward risk flip above 50. A SELL needs a downward flip below 50.
How the Components Work Together
The oscillator stack gives context but does not trigger trades alone. RSI tracks relative strength, Stochastic checks close location inside the recent range, and CCI adds a deviation-from-mean view.
The Chandelier layer adds volatility-aware confirmation. Instead of reacting to every move through 50, the script waits for an ATR threshold break. This may filter weak bounces, but it can enter late on sharp reversals.
Trading Ideas and Insights
A BUY after a pullback may indicate risk shifting back up above 50.
A SELL below 50 can warn that bearish pressure and ATR risk are aligned.
If price makes a new high while sentiment fades, consider waiting for stronger follow-through.
Unique Aspects
Three different momentum tools are normalized into one readable sentiment line.
Signals are event-based, so markers do not repeat while the same condition remains active.
How to Use
Add the indicator and watch the line around 50.
Read green zones as bullish pressure and red zones as bearish pressure.
Treat markers as confluence events, then confirm with structure, volume, or higher timeframe.
Use the built-in alert conditions for notifications.
Customization
Oscillator Length (default: 14) - Higher values smooth the line; lower values react faster.
ATR Length (default: 22) - Sets the volatility lookback.
ATR Multiplier (default: 3.0) - Larger values reduce flips but add lag; smaller values can whipsaw.
Conclusion
This is a compact sentiment-and-risk panel for traders who want oscillator context filtered through ATR direction. Signals may help identify regime changes, but they still need price-action and risk checks. Indicator

Indicator

Ask Dr. Alex AIAsk Dr. Alex AI — Interactive Chart Intelligence for PulseWire
Ask Dr. Alex AI is an interactive chart intelligence indicator built to help traders understand what the chart is saying before making a decision. Instead of only printing a simple buy or sell label, Ask Dr. Alex AI lets the user select a question from a built-in menu and then reveals the specific chart evidence behind the answer.
This indicator is designed as a guided market assistant for traders who want clearer context around support, resistance, patterns, momentum, trend pressure, forecast bias, and trade planning.
What Makes Ask Dr. Alex AI Different
Most indicators only show signals.
Ask Dr. Alex AI answers questions.
Users can select from guided questions such as:
Is this safe to trade right now?
Am I buying from support, selling from resistance, or chasing price?
What pattern is active?
What does the next candle / 10C forecast suggest?
What is the entry, stop loss, and take-profit plan?
ALL — Show Everything
Deep Scan Mode
When a question is selected, the indicator highlights the relevant chart areas and summarizes what it sees using the Dr. Alex AI answer panel.
Core Features
Interactive Question Menu
Choose a question and the indicator reveals only the relevant chart evidence.
Dr. Alex AI Answer Panel
Provides a plain-English summary of the current market condition.
Deep Scan Mode
Unlocks deeper diagnostic checks such as:
Trend Strength
MTF Agreement
Support Bounce Check
Resistance Rejection
Pattern Quality
Forecast Conflict
Ribbon Conflict
Entry Quality
Risk / Reward
Invalidation Point
Fakeout Risk
Wilson Tangent
Full Diagnostic
Support / Resistance Intelligence
Displays major support and resistance zones, higher-timeframe levels, and whether price is reacting from a meaningful area.
Pattern Awareness
Detects and explains major active patterns such as doji at support, hammer at support, double bottom, engulfing candles, marubozu candles, breakout retests, traps, and continuation patterns.
Respect Support Bounce Mode
When price touches major support and a bullish rejection pattern appears, the system can shift from hard bearish continuation into Support Bounce Watch / Bull Watch instead of blindly forecasting into support.
Next-Candle Bias Ribbon
A five-state visual ribbon helps summarize the projected next-candle condition:
Green = Bullish
Blue = Bull Watch
Gray = Neutral
Orange = Bear Watch
Red = Bearish
10-Candle Forecast View
Shows a forward projection path based on confidence, pattern context, support/resistance, trend pressure, and active sentiment.
Trade Plan Panel
When a setup is active, the indicator can display:
Entry range
Stop loss
TP1
TP2
Risk/reward model
Setup status
Confidence and Rank Engine
Uses a multi-factor scoring system to compare bullish and bearish pressure across trend, momentum, structure, volatility, MTF alignment, candle behavior, and ribbon state.
Machine-Learning-Inspired Scoring Logic
Ask Dr. Alex AI uses adaptive, weighted, machine-learning-inspired decision logic to evaluate chart conditions and adjust the way it interprets support bounces, forecast conflicts, momentum shifts, and pattern quality. It is designed to behave like an intelligent diagnostic layer, not just a static signal generator.
How to Use
Add the indicator to your chart.
Choose a question from the Ask Dr. Alex AI menu.
Review the highlighted chart evidence.
Read the Dr. Alex AI answer panel.
Use Deep Scan Mode when you want a more detailed diagnostic breakdown.
Use ALL — Show Everything when you want the full visual system displayed at once.
Best Use Case
Ask Dr. Alex AI is best used as a decision-support and educational chart assistant. It is built to help traders slow down, identify context, avoid chasing price, respect support/resistance, and understand why a setup is active, weak, conflicted, or invalidated.
It is especially useful for traders who want the chart to answer questions such as:
“Is this actually a trade, or am I forcing it?”
“Is price bouncing from support or breaking down?”
“Why is the forecast bullish if the trend is bearish?”
“Why is the signal waiting?”
“What must happen before this setup becomes valid?”
Important Disclaimer
Ask Dr. Alex AI is for educational and informational purposes only. It does not guarantee profits, predict the future with certainty, or replace personal judgment, risk management, or professional financial advice. Trading involves risk, and users are responsible for their own trading decisions.
Indicator

Indicator

Indicator

Indicator

Indicator

Rotating Messages [YM]Trading is 80% psychology and 20% strategy. How many times have you broken your trading plan or made a bad decision simply because you got carried away by the emotion of the moment?
I created the Rotating Messages indicator to act as your personal psychological assistant. This script displays your trading rules, reminders, or motivational quotes directly on your chart, rotating them automatically so you never lose focus while trading.
✨ Main Features:
🔄 Smart Time Rotation: Unlike other indicators that stay frozen until the candle closes, this script uses the internal clock (when the market is open and the price moves) to rotate your messages every "X" seconds of your choosing. Ideal for higher timeframe charts where candles take a long time to close. (Note: In backtesting or weekends, it will automatically switch to bar counting).
⚠️ Dynamic Visual Alerts: Do you have a rule that you absolutely cannot break? Simply add the ! symbol at the beginning of your sentence in the settings (e.g., !Avoid trading on Friday afternoons). The indicator will hide the symbol and highlight that phrase with a striking yellow background to grab your attention immediately.
🛠️ Perfect Positioning: Don't let the text block the price action. You can choose the screen corner and fine-tune the panel using the "Offsets" (Vertical and Horizontal) to place it exactly where it won't bother you.
🎨 Total Customization: Change the text color, adjust the background opacity to see the candles through the panel, and choose between three text sizes.
⌨️ Simplicity of Use: Forget about complex coding. Type your rules in the text box and simply press "ENTER" to separate one phrase from the next.
📝 What's included by default?
The indicator comes pre-loaded with a list of golden risk management rules and trading psychology quotes ready to use, but you can delete everything and put your own personal trading plan.
💡 A disciplined trader is a profitable trader. Keep your mind focused, respect your Stop Loss, and let this indicator remind you of your flight plan every day.
If you find it useful to maintain discipline, don't forget to hit "Like" and add it to your favorites! Let me know in the comments which trading rule is the hardest for you to follow. 👇 Indicator

Indicator
