Fusion EMA Trend Trade PlannerFusion EMA Trend Trade Planner
Back to basics.
This tool was built for traders who want a cleaner way to read trend direction, avoid messy chop, and plan risk before entering a trade.
Instead of filling the chart with separate tools for trend, confirmation, filtering, and risk levels, this script combines those steps into one simple workflow.
The goal is not to predict the future.
The goal is to answer four basic questions:
• Is the market trending?
• Is the trend clean or messy?
• Does the broader context support the move?
• Where would entry, stop loss, and take profit levels sit?
━━━━━━━━━━━━━━━━━━━━
🔹 Core Idea
━━━━━━━━━━━━━━━━━━━━
Fusion EMA Trend Trade Planner is built around a simple trend-following process:
1. Find clean EMA structure.
2. Check the 21-period Basis Cloud.
3. Use optional filters if extra confirmation is wanted.
4. Plot a simple risk/reward trade plan.
5. Watch for trend deterioration.
━━━━━━━━━━━━━━━━━━━━
🔹 Fusion EMA Structure
━━━━━━━━━━━━━━━━━━━━
The main trend engine uses four exponential moving averages.
A bullish trend is shown when the EMAs are stacked cleanly:
Fast EMA > Medium EMA > Slow EMA > Anchor EMA
A bearish trend is shown when the EMAs are stacked the opposite way:
Fast EMA < Medium EMA < Slow EMA < Anchor EMA
This is different from a basic two-line crossover.
A single moving average can show direction, but a stacked EMA structure can show both direction and trend quality.
When the EMAs are separated and aligned, the trend structure is cleaner.
When the EMAs compress or cross, the market may be losing structure.
When the structure is mixed, candles can turn grey. This is a visual warning that the trend is no longer clean.
━━━━━━━━━━━━━━━━━━━━
🔹 Fusion Ribbon
━━━━━━━━━━━━━━━━━━━━
The ribbon shows the relationship between the four EMAs.
When the ribbon is clean and expanded, trend structure is stronger.
When the ribbon compresses or turns grey, the market may be entering chop, transition, or weak trend conditions.
This makes it easier for newer traders to visually separate:
• Clean trend
• Weak trend
• Choppy market
━━━━━━━━━━━━━━━━━━━━
🔹 21-Period Basis Cloud
━━━━━━━━━━━━━━━━━━━━
The Basis Cloud is built around a smoothed 21-period basis average.
The number 21 was chosen because it is a Fibonacci number commonly used by trend traders as an intermediate market rhythm.
The cloud also uses a shorter reference average to create a layered visual zone around the basis.
The Basis Cloud is not designed as a simple crossover signal.
Its job is to act as a directional context layer.
In simple terms:
• Green cloud = basis direction is rising
• Red cloud = basis direction is falling
The Fusion EMA Structure and Basis Cloud are calculated separately.
This means traders can compare two different views of the market:
• EMA trend structure
• 21-period basis direction
When both agree, the setup has cleaner directional context.
When they disagree, conditions may be weaker or less clear.
━━━━━━━━━━━━━━━━━━━━
🔹 Higher Timeframe Filter
━━━━━━━━━━━━━━━━━━━━
An optional higher timeframe Fusion EMA can be used for extra context.
This helps traders avoid taking setups that go directly against broader trend structure.
For example:
• Current chart is bullish
• Higher timeframe is also bullish
• Setup has better alignment
This does not guarantee success, but it helps keep trades in line with the bigger picture.
━━━━━━━━━━━━━━━━━━━━
🔹 Optional Quality Filter
━━━━━━━━━━━━━━━━━━━━
The script includes an optional Quality Filter for traders who prefer additional confirmation.
By default, the indicator focuses on Fusion EMA Structure, Basis Cloud direction, and Trade Planning.
For traders who want a more selective approach, the Quality Filter can be enabled to evaluate:
• EMA ribbon expansion
• Price position relative to the Basis Cloud
• Higher timeframe agreement
• ADX trend strength
The filter is not intended to predict win rates or assign confidence scores.
Its purpose is simply to reduce participation during weaker trend conditions.
Many traders may prefer to leave the filter disabled and use Fusion EMA Structure and Basis Cloud alignment alone.
━━━━━━━━━━━━━━━━━━━━
🔹 Trade Planner
━━━━━━━━━━━━━━━━━━━━
When a valid setup appears, the script can draw a full trade plan:
• Entry
• Stop Loss
• TP1
• TP2
• TP3
Stop loss can be calculated using:
• ATR-based stop
• Percentage-based stop
Take-profit levels are based on adjustable risk/reward values.
This helps traders see the risk before entering instead of chasing candles blindly.
The Trade Planner is a visual planning tool only. It does not place trades automatically.
━━━━━━━━━━━━━━━━━━━━
🔹 Grey Exit Marker
━━━━━━━━━━━━━━━━━━━━
If a trade is active and the EMA structure turns grey, the script can print a small X marker.
This means the original clean trend structure has weakened.
It does not mean price must reverse.
It simply means the condition that created the trade setup is no longer clean.
━━━━━━━━━━━━━━━━━━━━
🔹 Suggested Workflow
━━━━━━━━━━━━━━━━━━━━
For a bullish setup:
1. Wait for green candle structure.
2. Check that the ribbon is clean.
3. Check that price is above the Basis Cloud.
4. Use the optional Quality Filter if you want extra confirmation.
5. Use the Trade Planner to review entry, stop loss, and targets.
6. Watch for grey candles or exit markers.
For a bearish setup:
1. Wait for red candle structure.
2. Check that the ribbon is clean.
3. Check that price is below the Basis Cloud.
4. Use the optional Quality Filter if you want extra confirmation.
5. Use the Trade Planner to review entry, stop loss, and targets.
6. Watch for grey candles or exit markers.
━━━━━━━━━━━━━━━━━━━━
🔹 Originality
━━━━━━━━━━━━━━━━━━━━
This script was designed as a complete trend-following workflow, not as a random collection of indicators.
The goal of this script was not to merge unrelated indicators into a single chart.
Each component was selected to perform a specific role within the workflow:
• Fusion EMA Structure identifies trend alignment.
• Fusion Ribbon visualizes trend quality.
• 21-Period Basis Cloud provides directional context.
• Optional Quality Filter helps reduce participation during weaker conditions.
• Trade Planner converts trend conditions into predefined risk levels.
• Grey Exit Marker highlights trend deterioration.
Together, these components form a single trend-analysis and trade-planning process rather than functioning as separate standalone indicators.
The purpose is to move from trend reading to trade planning in one clean process.
━━━━━━━━━━━━━━━━━━━━
🔹 Important Notes
━━━━━━━━━━━━━━━━━━━━
This indicator does not:
• Predict future price movement
• Guarantee profitable trades
• Estimate win probability
• Replace risk management
• Call every top or bottom
It is designed to help traders identify cleaner trend conditions and plan trades more consistently.
Simple idea:
Find the trend.
Check the structure.
Plan the risk.
Do not chase messy candles. Indicator

AI Source Switching Moving Average (Zeiierman)█ Overview
The AI Source Switching Moving Average is an adaptive price-selection and trend intelligence system that combines historical analog recognition, machine learning classification, neural learning, feature optimization, dynamic source selection, and AI-driven trend management into a single framework.
Rather than calculating a moving average from a fixed source such as Close, Open, High, or Low, the indicator continuously evaluates which price source currently contains the most useful market information.
The script transforms each OHLC source into a multi-dimensional feature space, stores historical behavior, searches for similar historical environments, and allows those analogs to vote on which source currently provides the highest predictive value.
An adaptive feature-weighting engine continuously learns which characteristics best separate bullish and bearish conditions, while an online neural model adds a second layer of directional intelligence.
█ Why Is This One Unique
Most moving averages are static.
You select a source:
• Close
• Open
• High
• Low
Then the moving average simply smooths that source. This indicator does something fundamentally different.
Instead of assuming one source is always optimal, it continuously evaluates all four OHLC streams and determines which source currently contains the strongest information based on historical behavior.
The indicator effectively asks:
"Which price source has historically produced the best outcome under conditions most similar to the current market?"
That selected source then becomes the input for the moving average and AI Supertrend. This transforms a traditional moving average into a dynamic source-selection engine.
█ How It Works
⚪ Builds Multi-Dimensional OHLC Features
The model does not analyze raw prices directly.
Each OHLC source is transformed into a behavioral fingerprint consisting of:
• Trend Structure
• Mean-Reversion State
• Momentum
• Volatility Profile
• Range Position
• Price Slope
Every source becomes its own market state representation.
oT = featTrend(open, atrNow)
oM = featMean(open)
oMo = featMomentum(open)
oV = featVol(open)
oR = featRange(open)
oS = featSlope(open, atrNow)
The same feature process is applied to High, Low, and Close.
hT = featTrend(high, atrNow)
lT = featTrend(low, atrNow)
cT = featTrend(close, atrNow)
Instead of asking:
"Where is price?"
The model asks:
"How is this source behaving?"
⚪ Creates A Historical Memory Bank
Every confirmed bar is stored together with:
• Source feature state
• Future market outcome
• Volatility-normalized labels
This becomes the learning dataset.
moveFwd = close - close
bandFwd = learnAtrFactor * atrNow
outcome = moveFwd > 2 * bandFwd ? 3 :
moveFwd > bandFwd ? 2 :
moveFwd > 0 ? 1 :
moveFwd < -2 * bandFwd ? -3 :
moveFwd < -bandFwd ? -2 :
moveFwd < 0 ? -1 : 0
Each stored row contains the feature snapshot plus the outcome label.
rowO = makeRow(oT , oM , oMo , oV , oR , oS , outcome)
Each confirmed observation becomes a real historical example the model can reference later.
if barstate.isconfirmed and bar_index > horizonBars + 120
if validO
addBank(bankO, rowO, memoryDepth)
addBank(bankAll, rowO, memoryDepth * 4)
⚪ Uses Historical Analog Matching
Once enough data has been collected, the model begins searching for historical situations that resemble current conditions.
Similarity is measured using a compressed Lorentzian-style distance function:
compress(d) =>
math.log(1.0 + math.abs(d))
The gap between the current feature state and each historical row is then calculated across all features.
gapTo(t, m, mo, v, r, s, array row) =>
wT * compress(t - row.get(0)) +
wM * compress(m - row.get(1)) +
wMo * compress(mo - row.get(2)) +
wV * compress(v - row.get(3)) +
wR * compress(r - row.get(4)) +
wS * compress(s - row.get(5))
This helps reduce outlier influence and prevents any single feature from dominating the comparison process.
The goal is not to find identical charts. The goal is to find historically similar market environments.
⚪ Let Historical Analogs Vote
After finding the closest historical examples, the model allows them to vote.
Closer analogs receive greater influence. More distant analogs contribute less.
wg = 1.0 / (1.0 + g)
score += cls * wg
bull += cls > 0 ? wg : 0.0
bear += cls < 0 ? wg : 0.0
The weighted voting system produces:
• Analog Score
• Directional Bias
• Agreement Fraction
• Similarity Tightness
• Market Conviction
analog = total > 0 ? score / total : 0.0
dir = analog > 0.15 ? 1 : analog < -0.15 ? -1 : 0
agree = total > 0 ? (dir == 1 ? bull : dir == -1 ? bear : 0.0) / total : 0.0
tight = clamp(1.0 - avgGap / gapScale, 0.0, 1.0)
This creates a probabilistic ranking system rather than a binary signal engine.
⚪ Auto-Optimizes Feature Importance
Different markets reward different behaviors.
A feature that is extremely predictive today may become less useful tomorrow. The indicator solves this problem using adaptive Fisher-discriminant optimization.
The engine continuously measures which features best separate bullish outcomes from bearish outcomes.
f = math.pow(meanB - meanS, 2) / (varB + varS + 0.000001)
• Features with higher predictive value receive larger weights.
• Features with lower predictive value gradually lose influence.
norm = maxF > 0 ? fish.get(j) / maxF : 1.0
imp.set(j, math.max(floor, norm * 8.0))
The optimized weights are smoothed over time.
wAuto.set(j, prev + fisherSpeed * (wRaw.get(j) - prev))
This allows the model to adapt automatically without requiring manual optimization.
⚪ Adds Neural Learning
Beyond analog classification, the indicator includes an online neural learning layer.
The neural model continuously updates itself using confirmed market outcomes and adjusts internal directional bias over time.
neuralScore(t, m, mo, v, r, s) =>
nt * t + nm * m + nmo * mo + nv * v + nr * r + ns * s + nb
The neural layer evaluates:
• Trend Structure
• Mean Reversion
• Momentum
• Volatility
• Range Position
• Slope Behavior
Training is performed using an Adam-style optimizer.
adam(weight, grad, mom, vel, step) =>
newMom = beta1 * mom + (1.0 - beta1) * grad
newVel = beta2 * vel + (1.0 - beta2) * grad * grad
mHat = newMom / (1.0 - math.pow(beta1, step))
vHat = newVel / (1.0 - math.pow(beta2, step))
newWeight = weight - learnRate * mHat / (math.sqrt(vHat) + eps)
This creates a second intelligence layer that works alongside the analog engine.
⚪ Ranks All Four Sources
Every bar receives independent scores for:
• Open
• High
• Low
• Close
rO = rankSource(oT, oM, oMo, oV, oR, oS, oAnalog, oAgree, oTight, oK)
rH = rankSource(hT, hM, hMo, hV, hR, hS, hAnalog, hAgree, hTight, hK)
rL = rankSource(lT, lM, lMo, lV, lR, lS, lAnalog, lAgree, lTight, lK)
rC = rankSource(cT, cM, cMo, cV, cR, cS, cAnalog, cAgree, cTight, cK)
The ranking combines:
• Analog Classification Strength
• Historical Agreement
• Similarity Quality
• Feature Separation
• Neural Confidence
rankSource(t, m, mo, v, r, s, analog, agree, tight, k) =>
neural = useNeural ? neuralScore(t, m, mo, v, r, s) : 0.0
directional = math.abs(analog) / 3.0
raw = directional * 0.35 + agree * 0.25 + tight * 0.20 + normScore(neural) * neuralInfluence + (k >= kNeighbors ? 0.10 : 0.0)
clamp(raw, 0.0, 1.0)
The highest-ranked source becomes the active source for both the moving average and Supertrend.
bestId = safeRO >= safeRH and safeRO >= safeRL and safeRO >= safeRC ? 0 :
safeRH >= safeRL and safeRH >= safeRC ? 1 :
safeRL >= safeRC ? 2 : 3
This means the indicator can dynamically switch between Open, High, Low, and Close depending on which source currently demonstrates the strongest historical edge.
⚪ Builds An Adaptive AI Moving Average
After selecting the best source, the indicator calculates a moving average using that dynamically chosen input.
hardSrc = bestId == 0 ? open :
bestId == 1 ? high :
bestId == 2 ? low : close
The selected source is then smoothed and passed into the moving-average engine.
aiSourceRaw = hardSrc
aiSource = ta.ema(aiSourceRaw, srcSmoothLen)
aiMA = ma(aiSource, maLen, maType)
Unlike traditional averages that remain tied to a fixed source, the AI MA continuously adapts to changing market conditions.
The result is a smoother and more context-aware trend representation.
█ Main Weakness
The indicator is not deep learning.
It does not train a large neural network.
Instead, it operates as an online analog classifier enhanced by adaptive feature weighting and lightweight neural optimization.
Because it learns from historical analogs, performance can vary depending on:
• Symbol
• Timeframe
• Market Regime
• Memory Depth
• Feature Configuration
• Learning Horizon
As with all adaptive systems, historical similarity does not guarantee future outcomes.
█ How To Use
⚪ Reading The AI Moving Average
• Rising average = bullish conditions dominate.
• Falling average = bearish conditions dominate.
• Strong slope = stronger trend conviction.
• Flat slope = weaker directional conviction.
The AI Moving Average can be used much like a traditional moving average, but with the added benefit of dynamic source selection.
Use it for:
• Identifying trend direction
• Spotting trend changes
• Confirming momentum shifts
• Dynamic support and resistance analysis
• Pullback and retest opportunities
• Trend continuation setups
In bullish conditions , traders may look for price to remain above the moving average and use pullbacks into the average as potential continuation zones.
In bearish conditions , traders may look for price to remain below the moving average and use rallies into the average as potential resistance areas.
⚪ Reading The AI Supertrend
The AI Supertrend acts as:
• Trend Filter
• Dynamic Trailing Stop
• Market Structure Guide
• Bullish flips indicate positive trend conditions.
• Bearish flips indicate negative trend conditions.
Because the band width adapts to model confidence, trend changes become more responsive during strong conditions and more tolerant during weak conditions.
Use the AI Supertrend for:
• Trend confirmation
• Trade management
• Trailing stop placement
• Exit planning
• Market structure analysis
• Trend-following systems
Many traders may choose to remain long while price stays above the bullish trail and remain short while price stays below the bearish trail.
The Supertrend can also be used as a dynamic stop-loss framework, allowing positions additional room during uncertain conditions while tightening risk management when the AI model detects stronger directional conviction.
█ Settings
MA Type: Selects the moving average formula used after source selection.
MA Length: Controls the smoothing period of the AI moving average.
AI Source Smoothing: Smooths source transitions after source switching.
Memory Depth: Controls how many historical examples are stored.
Analog Count: Controls how many historical analogs participate in voting.
Learning Horizon: Controls how far ahead outcomes are evaluated.
Analog Spacing: Controls sampling diversity within the memory bank.
Learning Sensitivity × ATR: Controls how future outcomes are classified.
Use Neural Online Training: Enables the adaptive neural learning layer.
Neural Influence: Controls neural contribution to source ranking.
Learning Rate: Controls neural adaptation speed.
Huber Delta: Controls error sensitivity during training.
Auto Optimize Feature Weights: Enables adaptive feature importance learning.
Adaptation Speed: Controls weight adjustment speed.
Weight Floor: Sets minimum feature influence.
Minimum Rows: Controls when Fisher optimization becomes active.
Show AI Supertrend: Displays the adaptive trail.
ATR Length: Controls volatility measurement.
ATR Multiplier: Controls trail width.
AI Band Adaptivity: Controls AI influence over trail width.
-----------------
Disclaimer
The content provided in my scripts, indicators, ideas, algorithms, and systems is for educational and informational purposes only. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
Indicator

Skew MTF TrendMulti-timeframe trend structure at a glance.
Three fully configurable timeframes on one chart every average colored by its native timeframe's trend state: green above, red below, gray neutral.
Main Timeframe (default 4H)
EMAs 21, 50, 100, 200. A ribbon fills between the 21/50/100 — green when bull-stacked, red when bear-stacked, gray when mixed.
HTF 1 (default Daily)
EMAs 50 and 200 with trend coloring.
HTF 2 (default Weekly)
EMAs 21, 50, 200 and SMA 200 with trend coloring.
All three timeframes can be changed to any combination. Linewidth scales by layer (Main: 2, HTF 1: 3, HTF 2: 4) for instant visual separation. Master toggles show/hide each timeframe with one click. Every period and line is independently configurable.
Trend Table
A compact table in the bottom right reads trend state per timeframe using the 50 EMA and 200 EMA:
▲ Green — price above both the 50 EMA and 200 EMA (uptrend)
▼ Red — price below both the 50 EMA and 200 EMA (downtrend)
● Gray — price between the 50 and 200, or mixed (pending)
The table dynamically displays each selected timeframe, updating automatically when settings change.
Trading with it
The 50 EMA is the key level that defines the trend. The 200 EMA is the level you trade into.
Uptrend — Price holds the 50 EMA as support, table showing ▲. Dips into the 50 EMA and the ribbon are buying opportunities. If price dips deeper, the 200 EMA is the next level to bid — the last line of trend defense.
Downtrend — Price rejects the 50 EMA as resistance, table showing ▼. Rips into the 50 EMA and the ribbon are selling opportunities. The 200 EMA above is the level to sell into on deeper retracements.
Chop — Price is caught between the 50 and 200, table showing ● on one or more timeframes. Neither side has control. Reduce size or sit flat until the 50 EMA cleanly holds or rejects.
When all three timeframes agree, the trend is strong. When they disagree, conditions are transitional. Indicator

Indicator

EMA Horizon█ OVERVIEW
The EMA Horizon indicator offers a modern, structural upgrade to the classic Exponential Moving Average. While standard EMAs are indispensable tools for trend identification, they inherently suffer from "live candle blindness" —flickering wildly on the current unclosed bar and causing traders to miss critical intraday touches or fall into false breakout traps.
EMA Horizon solves this by calculating an immediate forward-looking volatility corridor based on the asset's actual physical extremes (High/Low), anchored tightly to its closing history. It provides an unchanging, reliable boundary range for the current candle asset space, allowing traders to see exactly where the EMA would be pushed under extreme conditions.
---
█ THE PROBLEM WITH STANDARD EMAs
A standard EMA updates continuously based on the live ticking close . During highly volatile periods, the indicator line bends and flexes dramatically inside the current bar. This real-time distortion creates two major issues:
The Flicker Trap: Price can spike out of an EMA zone and snap back before the candle closes, leaving no historical trace of the breach and causing missed execution opportunities.
Lagging Boundaries: Standard bands (like envelopes or Keltner channels) look backward at historical averages. They fail to tell you how a single massive, aggressive live expansion bar will mathematically impact the underlying moving average trend line right now.
---
█ THE SOLUTION & MECHANICAL EDGE
EMA Horizon does not simply calculate an EMA of all Highs or all Lows (which smoothly degrades accuracy over time). Instead, it preserves the integrity of pure historical closing prices up to the immediate moment.
From that clean historical baseline, it executes a "one-off" look-ahead calculation: it processes the current candle's High and Low as if they were the immediate next closing prices .
The High Band shows the ultimate ceiling the EMA could reach on the next step.
The Low Band shows the absolute floor the EMA could drop to on the next step.
By utilizing the built-in Bands Offset parameter, you can shift this entire calculation forward across your timeline. When shifted, the boundaries sitting under your live candle are locked—derived entirely from the previous candle's completed structure. This eliminates real-time repainting and gives you an unshakeable roadmap for price interaction.
---
█ FEATURES
Pure History Anchoring: The base EMA line relies strictly on closing prices, ensuring your core trend logic remains untainted by extreme wicks.
Next-Bar Step Simulation: Dynamically maps out the mathematical limits of the moving average based on immediate price expansion boundaries.
Global Visual Alignment: The script features a unique global offset parameter that shifts both the baseline EMA and its projection bands uniformly. This completely avoids visual distortion and allows you to perfectly map historical structures without losing physical perspective.
---
█ HOW TO USE
Add to Chart: Search for "EMA Horizon" in your PulseWire indicator panel and apply it.
Configure your Length: Adjust the Length input to match your primary trend tracking asset class (e.g., 9 for short-term momentum, 21 or 50 for structural trends).
Set your Offset Look:
Set Bands Offset to 0 to observe the real-time maximum range expansion matching the current candle's high/low.
Set Bands Offset to 1 to push the indicator one bar to the right. This allows you to track how the current live asset price responds to the locked, unchangeable projection generated by the previous closed bar.
Identify True Deviations: Watch for instances where a candle aggressively drives through the green horizon cloud. If the asset price slices cleanly past the projected bands, it indicates an exhaustion phase or an institutional velocity breakout that goes beyond standard mathematical trend boundaries.
Indicator

Indicator

EMA Trend Dash Board by [Itto Ryu]# EMA Trend Dash Board — Trend stage classifier on a 5-EMA stack
A pure-EMA trend dashboard. Five exponential moving averages (10/20/50/100/200)
plus three derived signals — stack alignment, EMA50 slope, and the fast-vs-trend
gap — classify the market into one of four trend stages: ACCEL → MATURE → DECEL
→ REVERSAL. A 0-to-100 Bull/Bear score and a state-machine VERDICT row summarise
all of it in a single glance.
## What's different from a generic EMA ribbon
Most EMA-ribbon scripts only colour the EMAs. This one adds:
1. **Stage classification** — instead of "trending vs ranging", the script tells
you *where in the trend you are*. Stage 1 (ACCEL) is for adds; Stage 3 (DECEL)
warns to trim; Stage 4 (REVERSAL) tells you the stack has lost alignment.
2. **Bull/Bear score (0–100)** — composed of:
- Price-above-EMA: 8 pts each (max 40)
- Stack-pair ordering: 10 pts each (max 40)
- Trend-EMA slope direction: 10 pts
- Gap expansion (only when stack aligned): 10 pts
3. **Verdict state machine** — combines stage + score into one action label
(STRONG SETUP, SIGNAL CLEAR, TREND ACCEL, EASE, WATCH, EXIT, ...).
## Defaults (and why)
| Input | Default | Reasoning |
|---|---|---|
| EMA lengths | 10 / 20 / 50 / 100 / 200 | Classic Stan Weinstein / Mark Minervini ladder |
| Slope/Gap lookback | 5 bars | Catches turns without over-smoothing on intraday |
| Slope flat threshold | 0.1% | Below this magnitude the trend EMA is treated as flat — avoids false up/down on chop |
| Gap expansion threshold | 0.05% | Min change in |gap| to count as expanding/compressing |
| Dashboard | top_right, normal | Standard placement; tiny/small for low-res screens |
## Visual elements
| Element | Meaning |
|---|---|
| 5 EMA lines | EMA 1 (fast, yellow) → EMA 5 (long, slate). EMA 3 (Trend, pink) drawn thicker as the slope reference |
| Fast-Trend fill | Green when EMA1 > EMA3, red otherwise. Quick visual on momentum direction |
| Right-edge labels | EMA name tags at the latest bar |
| Dashboard | Trend / EMA Stack / Trend Dynamics / Scoring / Signal / Verdict sections |
## Who this is for
- Trend-following swing traders who already use EMA stacks but want a state read-out
- Discretionary traders who want a "what stage am I in?" check without staring at the chart
- Anyone replacing 3-4 separate EMA indicators with one consolidated dashboard
## Who this is NOT for
- Pure mean-reversion / range traders — EMAs are the wrong tool
- Tick scalpers — the stage/gap thresholds are tuned for swing+intraday, not sub-minute
- Anyone needing entry/exit signals automated — this is a *read-out*, not a strategy
## How to use
1. Apply on standard candle chart, any timeframe (works best 15m → Daily)
2. Read the **Stage** row first — that's your context
3. Cross-check with **Verdict** row — that's your action
4. The Bull/Bear bars give a confidence reading; the SIGNAL row gives the discrete label
5. Configure alerts on STRONG Long/Short or Stack Broken for hands-off monitoring
## Common mistakes
- **Entering on Stage 4 just because Verdict says STRONG SETUP** — Stage 4 = stack lost alignment, by design it forces a re-check. Wait for re-alignment.
- **Reading dashboard on Heikin Ashi** — EMAs are calculated on HA close (a smoothed value), not real close. Numbers will not match a standard-chart EMA. Use standard candles for the dashboard.
- **Tuning EMA lengths for one symbol and assuming portability** — re-test on each instrument; trend EMAs are regime-dependent.
## Disclosure
- **Pine version**: v6
- **Repaint**: NO — all calculations use confirmed-bar data. Dashboard and right-edge labels refresh on the last bar (cosmetic only) and do not modify historical bars.
- **Lookahead**: NONE — no `request.security` calls.
- **Chart type**: Designed for standard candle charts. On Heikin Ashi / Renko / Range / PnF / Kagi the EMA values are calculated against the chart's synthetic close and will not match a standard-chart EMA.
- **Originality**: Generic 5-EMA inputs; novel additions are the Stage classifier, Bull/Bear scoring weights, and Verdict state machine.
- **Predecessor**: Extracted from the author's earlier "Ichimoku Trend Dash Board" (Ichimoku + EMA combined). This EMA-only variant strips Ichimoku, ADX, RSI, MACD, and SL/TP logic for a focused trend-stage read.
## Disclaimer
For educational purposes only. Not financial advice. Trading involves
substantial risk of loss — past performance does not guarantee future results.
You are solely responsible for your own trading decisions. Script provided
"as is" with no warranty; author is not liable for any losses. Indicator

Indicator

Traq APEX EMA System + ConfluenceFull Description:
Traq APEX EMA System + Confluence is a discretionary trading indicator designed to evaluate trend pullbacks using a combination of EMA structure, market structure, liquidity context, and risk-reference levels.
The script is built around the idea that an EMA pullback signal is more useful when it occurs in the presence of supporting structure. Instead of treating an EMA rejection alone as a trade signal, the script checks whether additional conditions are present, such as recent break of structure, internal liquidity sweeps, active fair value gap retests, higher-timeframe EMA alignment, session context, VWAP direction, and previous day/week liquidity levels.
Main Components
EMA Ribbon and Bias
The script plots an EMA ribbon using multiple moving averages. The ribbon is used to evaluate trend structure, compression, expansion, and pullback location. A separate bias EMA is used to judge broader directional context. The script can optionally require the price to agree with the bias EMA and can also require the bias EMA slope to support the trade direction.
Higher-Timeframe EMA Context
The indicator includes two configurable higher-timeframe EMA states. By default, these use the last closed higher-timeframe candle to avoid live higher-timeframe flicker. Users can choose between “No Opposition” and “Strict Alignment” modes.
“No Opposition” allows neutral higher-timeframe conditions but blocks signals when the selected higher timeframes oppose the trade direction. “Strict Alignment” requires both selected higher timeframes to align.
Pullback Signal Engine
The Traq APEX signal engine looks for pullbacks into the EMA ribbon followed by a rejection candle. Users can choose shallow, mid, or deep pullback depth. A minimum body-size filter based on ATR is included to reduce weak rejection candles.
The plotted signal is not intended to be a market-entry instruction. The displayed entry reference uses a stop-entry concept: above the signal candle high for long setups and below the signal candle low for short setups.
Break of Structure Context
The script tracks confirmed swing highs and swing lows using pivot logic. A bullish BOS occurs when the price closes above a prior swing high by a minimum point threshold. A bearish BOS occurs when the price closes below a prior swing low by a minimum point threshold. BOS is used as a structure filter and dashboard condition, not as a separate visual clutter layer.
Internal Liquidity Sweeps
The script tracks internal swing liquidity using pivot highs and lows. A buy-side sweep occurs when price trades through a recent swing high. A sell-side sweep occurs when the price trades through a recent swing low. These sweeps can be required as part of the confluence layer.
Internal liquidity drawings are capped through managed line and label arrays so that old liquidity markings do not consume the script’s drawing budget.
Active FVG Retest Tracking
The script detects bullish and bearish fair value gaps and stores multiple active FVGs in arrays. FVGs are only added and removed on confirmed bars to avoid intrabar rollback artifacts. Users can choose the mitigation mode: Touch, Midline, or Full Fill.
FVG retests can be used as a score component or required as a stricter filter.
External Liquidity Map
The script includes previous day high/low, previous week high/low, and previous week equilibrium. These levels are used as external liquidity context and optional score components.
External liquidity sweeps can be used to increase confluence but are not required by default.
Confluence Score
The script scores long and short conditions separately using available components such as BOS, internal sweep, FVG retest, session, VWAP direction, and external liquidity sweep. Users can set a minimum score threshold. This allows the script to be tested as either a broad pullback tool or a stricter confluence filter.
Risk Reference Levels
When a final signal appears, the script can display a stop reference and fixed R:R target. Stops are based on recent liquidity sweep levels when available, otherwise a fallback swing/ATR reference is used. These levels are visual references only and should be evaluated against each trader’s own risk plan.
How to Use
Start by using the script as a visual decision-support tool, not as an automated signal system.
Suggested starting settings for testing:
Use Closed HTF Bars: ON
MTF Mode: No Opposition
Require Recent BOS: ON
Require Internal Sweep: ON
Require Active FVG Retest: OFF
Require External Sweep: OFF
Minimum Confluence Score: 3
FVG Mitigation Mode: Midline
Max Internal LIQ Drawings: 20 to 30
Show Base Debug: ON during testing
The base debug markers can help show where the EMA pullback engine wanted to fire but the confluence layer blocked the signal.
Limitations
This script does not predict future price movement. It does not guarantee profitable trades, accuracy, win rate, or any specific trading result.
The indicator is designed for discretionary analysis and requires user judgment. Signals can fail, especially during choppy, low-volume, news-driven, or range-bound conditions.
Swing structure and liquidity levels are based on pivot confirmation, which means they are confirmed with delay. This avoids repainting after confirmation but does not identify swings instantly.
Higher-timeframe context defaults to closed HTF bars for stability. If users disable closed HTF mode, higher-timeframe arrows and context may update intrabar.
Risk labels and target labels are references only. They should not be treated as financial advice or as a substitute for proper position sizing, market context, and independent testing.
Chart Setup
For publication, use a clean candlestick chart with only this script applied. Avoid adding unrelated indicators, extra drawings, logos, promotional text, or contact references. The script output should be clearly visible, including the EMA ribbon, dashboard, liquidity labels, and a small number of example signals.
Disclaimer
This script is for educational and analytical use only. It does not provide financial advice, does not predict future market movement, and does not guarantee trading results. Users should test settings on their own markets and timeframes before relying on any output.
Indicator

V-AEMA VMR [LB]Concept
The V-AEMA VMR (Volume-Adaptive Exponential Moving Average with Volatility-Modulated Regime) is a hybrid trend-following indicator that combines an EMA baseline with a volatility-based drift component. It produces a dynamic core line whose colour reflects the trend regime, surrounded by two levels of adaptive bands that expand or contract based on volume intensity. The indicator generates directional entry signals when price breaks the first band in the direction of the trend, and projects take-profit zones when price fully exits both bands.
Mathematical Foundation
The core line (Hybrid Line) is a weighted blend of a standard EMA and a volatility-shifted version of that same EMA :
HybridLine = EMA * W + (EMA + Drift) * (1 - W)
where the drift is derived from the Z-Score of price relative to the EMA, scaled by ATR :
Drift = Z_Score * ATR * 0.35
Z_Score = (Price - EMA) / StdDev(Price, L_vola)
Band width starts from a base volatility measure combining standard deviation and ATR :
BaseWidth = StdDev * 0.65 + ATR * 0.35
This base is then adjusted by a volume ratio and user-defined multipliers :
UpperWidth = BaseWidth * (BaseUpMult + (VolRatio - 1) * VolImpactUp)
LowerWidth = BaseWidth * (BaseDnMult + (VolRatio - 1) * VolImpactDn)
where VolRatio = min(max(Volume / SMA(Volume, L_vol), 0.35), 2.50) .
Two band levels are generated : Band 1 at HybridLine +/- Width, and Band 2 (extreme) at HybridLine +/- Width * 1.55 (upper) / 1.40 (lower).
What Problem Does It Solve ?
Conventional envelope indicators (Bollinger Bands, Keltner Channels) apply fixed multipliers to a single volatility metric and ignore volume dynamics. The V-AEMA VMR adapts its band width to both volatility and volume surges, producing wider bands during high-participation moves and narrower bands during quiet periods. The hybrid core line reduces pure EMA lag by incorporating a volatility offset, while the dual-band structure filters signals by strength : a break of Band 1 triggers an entry, while a break of Band 2 confirms an explosive move and projects a take-profit zone.
How To Interpret
Core line colour – cyan/green indicates the hybrid line is rising (bull regime) ; magenta/red indicates it is falling (bear regime).
Cloud and bands – the area between Band 1 and Band 2 forms a halo that thickens when volume expands. Narrow bands suggest low conviction or consolidation.
Entry signals – a triangle appears below the bar when price crosses above Upper Band 1 while the hybrid line is rising (long). A triangle appears above the bar when price crosses below Lower Band 1 while the hybrid line is falling (short). These signals are confirmed by the trend direction.
Take-profit zones – when the entire bar (high and low for shorts, low and high for longs) clears the extreme band (Band 2) in the direction of the signal, a coloured box is projected forward. The box represents a potential target zone based on the breakout amplitude and ATR, scaled by the TP Factor.
Info panel – displays the current regime (BULL/BEAR), the volume ratio (values above 1.0 indicate above-average participation), and the current upper/lower deviation values in price units.
Parameters
EMA Length – period of the base exponential moving average (default 55).
Volatility Length – period for the standard deviation used in the Z-Score calculation (default 34).
Volume Length – period for the volume moving average used in the volume ratio (default 34).
EMA Weight – blend ratio between the pure EMA and the volatility-drifted version. Higher values produce a smoother line ; lower values make it more reactive to volatility (default 0.80).
Upper Base Deviation – core multiplier for the upper band width before volume adjustment (default 1.55).
Lower Base Deviation – core multiplier for the lower band width before volume adjustment (default 1.05).
Volume Impact Upper/Lower – sensitivity of the upper and lower bands to the volume ratio. Higher values make bands expand more aggressively when volume surges (default 0.95 / 0.55).
ATR Length – period of the Average True Range used in band width and TP zone calculations (default 14).
Show Cloud – toggles the filled areas between bands.
Show Info Panel – toggles the real-time dashboard.
Show Signals – toggles the entry triangles.
Show TP Zones – toggles the take-profit projection boxes.
TP Projection Bars – how many bars forward the TP zone extends.
TP Factor – scales the height of the TP zone relative to the breakout range.
Max Historical TP Zones – limits the number of TP boxes kept on the chart.
Reference
This indicator is a proprietary design synthesising concepts from adaptive moving averages (Kaufman, Ehlers), volatility envelopes (Bollinger, Keltner), and volume-weighted band models. It does not correspond to a single academic publication. Indicator

Adaptive MA Fibonacci Zones MTF# Adaptive MA Fibonacci Zones MTF
Adaptive MA Fibonacci Zones MTF is a multi-timeframe technical analysis tool that projects Fibonacci-based price levels around a selected moving average.
The indicator allows traders to choose from multiple moving average types, including EMA, SMA, WMA, SMMA, DEMA, TEMA, HMA, VWMA, ALMA, and KAMA. Two independent higher timeframes can be analyzed simultaneously, making it easier to compare trend structure and potential reaction zones across different market perspectives.
### Features
• Supports multiple moving average calculation methods
• Displays two configurable higher timeframes on a single chart
• Automatically generates Fibonacci-based projection levels around each moving average
• Dynamic bullish and bearish level calculation depending on price position relative to the selected moving average
• Optional Fibonacci level labels
• Visual trend direction labels for each timeframe
• Useful for identifying potential support, resistance, pullback, and expansion areas
### How It Works
The script calculates a selected moving average on two user-defined timeframes. A customizable percentage range is then applied around each moving average, and Fibonacci ratios are projected within that range. When price is above the moving average, levels are projected upward. When price is below the moving average, levels are projected downward.
### Notes
This indicator is designed as a visual analysis tool and should not be considered financial advice. Fibonacci levels and moving averages are analytical references that may be used alongside other forms of technical analysis and risk management techniques.
Indicator

Moving averages. JB styleMoving averages. JB style
A clean, configurable multi-MA overlay. Up to four moving averages, each colored by its own slope, with debounced crossover markers, weight-scaled line widths, an EMA/SMA switch, a regular-hours session lock, and five color palettes — all tuned so the indicator reads as a separate layer over your candles instead of blending into them.
WHAT IT DOES
- Up to 4 moving averages. Defaults are 9 / 21 / 50 / 200, and every slot has its own editable length and show/hide toggle, so you can run one MA or all four. Source is fixed to close to keep the panel simple.
- EMA or SMA from one dropdown. The MA Type dropdown flips all lines between simple and exponential, reusing the same lengths and styling.
- Slope-based coloring. Each line is colored by its own slope: a blue tone when rising, an orange/amber tone when falling, and neutral gray when essentially flat. Colors sit deliberately off the green/red axis so the lines never blend into the candles.
- Weight-scaled widths. Faster MAs are thin, slower MAs are thick, so the long-term anchors stand out at a glance. The slowest MA is drawn as a dotted circle line to mark it as the long-term reference.
- Crossover markers. A hollow ring with a centered dot marks crossovers between adjacent MAs (1x2, 2x3, 3x4) — including the classic 50/200 — a bright bull tone for a bullish cross and an amber tone for a bearish one, placed right at the crossing price.
- Five palettes. Dark, Light, Neon, Ocean, and Solarized. Candles are never recolored on any theme.
WHY IT'S DIFFERENT
Most moving-average indicators just draw lines and color them by whether price is above or below — which whipsaws constantly. This one is built around signal reliability:
1. Slope coloring instead of price-vs-MA coloring. Color reflects whether the average itself is rising or falling — a steadier read of trend than the noisy "is price above the line" flip.
2. A slope deadband kills color flicker. Near-flat averages normally strobe between colors on every tick. Here the slope must clear an ATR-scaled threshold before the color flips; otherwise the line goes neutral. A flat ribbon looks flat — which is itself useful information.
3. Crossovers are MA vs MA, not price vs MA. A faster average crossing a slower one needs agreement between two degrees of smoothing, so it fires far less on noise than a single line being touched by price.
4. A debounce filter removes chop without lagging the signal. The marker fires on the actual crossover, then suppresses further crosses until the two averages genuinely separate (by an ATR-scaled amount) and reconverge. A cluster of back-and-forth chop crosses produces one marker on the real cross — not a smear of noise, and not delayed to a later cross.
5. Confirmed-bar markers don't repaint. A crossover marker appears only after the bar closes, so it never flashes mid-bar and then vanishes.
6. Regular-hours session lock. Every MA (and the ATR behind the filters) is computed from a regular-session feed, so a 200-MA reads the same whether your chart shows extended hours or not. The lines simply hold flat through pre/post-market instead of drifting. On 24/7 instruments this is a harmless no-op.
7. Always the chart's own timeframe. The session lock swaps only the session, never the timeframe — the MAs are always calculated on the timeframe you're viewing.
8. Lines that don't fight the candles. Bull/bear line colors are deliberately blue/orange rather than green/red, so the indicator reads as a clean layer over the candles instead of camouflaging into them.
INPUTS
- Palette: color theme for lines and markers (Dark / Light / Neon / Ocean / Solarized).
- MA Type: SMA or EMA, applied to all lines.
- Regular Hours Only: compute all MAs and ATR from a regular-session feed, regardless of the chart's session.
- Show Crossovers: toggle all crossover markers.
- Slope Deadband (x ATR): minimum slope before the color flips; 0 disables (default 0.02).
- Crossover Min Sep (x ATR): debounce gap — after a marked cross, the next one is suppressed until the MAs separate by this amount and reconverge; 0 disables (default 0.10).
- MA #1-4 Show / Length: per-slot visibility and period (defaults 9 / 21 / 50 / 200).
Indicator

Smart Trail, 9/21 Crossover + VWAP Signals ScoreSmart Trail + 9/21 Crossover + VWAP with HTF and ADX Filter
A trend-following signal indicator combining a dynamic ATR-based Smart Trail with EMA 9/21 crossover signals, VWAP bias, a higher timeframe alignment filter, and an ADX + DI directional filter — all working together to surface only high-conviction entries.
How It Works
The Smart Trail continuously calculates adaptive support and resistance levels using ATR and a configurable sensitivity multiplier. When the trend flips direction a signal fires — but only after passing the ADX strength filter, DI directional filter, and higher timeframe Smart Trail alignment check.
Scoring System (0–100)
Every Smart Trail signal is scored across three weighted factors:
Smart Trail (default 40 pts) — trend direction confirmation. Full points when trend is aligned.
EMA 9/21 (default 35 pts) — full points when price is above both EMAs and 9 > 21 (bull) or below both and 9 < 21 (bear). Partial (0.5) when mixed. Zero when fully against.
VWAP (default 25 pts) — full points when price is above VWAP for bull signals, below for bear signals.
All weights are fully adjustable. Score normalizes to 0–100 regardless of weight configuration.
EMA 9/21 Crossover Signals
Independent crossover signals plot separately from the Smart Trail signals using a distinct shape (triangle) and color (yellow/orange) so they are easy to differentiate. An optional fill between the two EMAs colors green when 9 > 21 (bullish) and red when 9 < 21 (bearish) — giving instant visual context of EMA stack direction across the whole chart.
Hard Filters (signal blocked entirely if not met)
ADX + DI Filter:
ADX must be above the configured minimum threshold (default 20) — blocks signals during choppy, trendless price action
DI+ must be greater than DI- for bull signals — confirms buyers are in control
DI- must be greater than DI+ for bear signals — confirms sellers are in control
Toggling the ADX filter off disables both the ADX threshold and DI directional checks simultaneously
Higher Timeframe (HTF) Smart Trail Filter:
Runs the same Smart Trail calculation on an automatically determined higher timeframe
Bull signals only fire when the HTF Smart Trail is also bullish
Bear signals only fire when the HTF Smart Trail is also bearish
Auto timeframe mapping: 1m → 5m, 2-3m → 15m, 5m → 30m, 15m → 1h, 30m → 2h, 1h → 4h, 4h+ → Daily
HTF Smart Trail plots as a thicker faded line for visual reference
Session Filter:
Restricts signals to regular trading hours (default 9:30–16:00 ET, fully configurable)
Signal Labels
Each Smart Trail signal prints a scored label directly on the chart:
▲ 85 — bullish flip, score 85
▼ 22 — bearish flip, score 22
Label color is green (≥70), yellow (50–69), or red (<50). An optional rolling score label can be enabled to display the live score at a configurable bar frequency.
Alerts
Two dynamic alert conditions using the alert() function — one for bull, one for bear. Both Smart Trail signals and EMA crossover events trigger the same alert so only one alert needs to be created in PulseWire.
Set the alert condition to "Any alert() function call" in the PulseWire alert dialog.
Alert message format: Smart Trail: BULL | Score: 82 | ADX: 24 | DI+: 28 | DI-: 18 | HTF: 15m | META | 3m | Price: 626.87
Settings
GroupKey SettingsSmart TrailLength, multiplier, source, sensitivityScore WeightsPer-factor weight (0–100 each)Score FilterMin bull score, max bear scoreSession FilterOn/off toggle, custom sessionADX FilterOn/off toggle, length, minimum thresholdHTF FilterOn/off toggle (auto timeframe)EMA CrossShow/hide signals, show/hide fill, bull/bear fill colorsDisplayRolling score labels, frequency
Recommended Usage
Best used on intraday timeframes (1m–15m). Signals with scores of 70+ where ADX is above 25 and DI direction is clearly aligned represent the highest conviction setups. The EMA fill gives immediate context — trading in the direction of the fill color with a Smart Trail flip confirmation is the core entry pattern. Indicator

50-MA Extension Dot [ATR / % / Points]50-MA Extension Dot marks when price has moved a defined distance above a daily moving-average anchor. The goal of the script is to help traders study when price becomes extended relative to its daily trend structure, rather than judging a move by price alone.
The script supports three extension methods: ATR Extension, Percent, and Points. ATR Extension compares the distance from price to the daily moving average against the instrument’s daily ATR, making the reading volatility-adjusted. Percent mode measures how far price is above the moving average in percentage terms. Points mode measures the raw point distance above the moving-average anchor.
The moving-average type, moving-average length, threshold method, threshold value, ATR length, and extension source are customizable so traders can study past moves and build their own rules. For example, users can test how a symbol historically behaved when it became one ATR, two ATRs, a fixed percentage, or a fixed point distance above its daily moving-average reference.
When the selected threshold is reached, the script plots a small dot above the candle. The dot is not a standalone buy or sell signal. It is a visual marker showing that price has reached a defined extension zone relative to the chosen daily moving-average reference.
The script can also display the daily moving average, an optional threshold line, and a small table showing the current daily moving average, daily ATR, extension price, percentage distance from the moving average, ATR percentage, and ATR extension value.
This tool is useful for studying stretched moves, breakout extensions, momentum exhaustion, and conditions where price may be moving too far too quickly above its daily trend anchor. Because different symbols have different volatility profiles, the customizable inputs allow traders to compare past extensions and develop rules that fit their own process.
This indicator does not predict future price movement. It is a contextual extension tool designed to measure distance from a daily trend reference and help traders research historical extension behavior. Indicator

Guppy MMA Mean Reversion SignalsThe Guppy MMA Mean Reversion System is a trend-following mean reversion tool designed to identify high-probability pullbacks within established trends. By combining the classic Guppy Multiple Moving Average (GMMA) with volatility, volume, and momentum filters, this script aims to reduce the "noise" often found in standard moving average cross strategies.
The Concept: Why this Works
Standard GMMA indicators are excellent for visualizing trend strength but often lack precise entry triggers or filters to avoid entering during periods of low volume or extreme exhaustion. This script addresses these limitations by integrating four distinct analytical components:
- GMMA Ribbons (Trend & Reversion Zones) : We use two groups of EMAs (Short-term and Long-term). The Long-term group defines the "institutional" trend. Our entry logic looks for price to revert from the short-term trend back into the long-term trend zone—a classic sign of a healthy pullback.
- CVD Confluence (Volume Confirmation) : Using Cumulative Volume Delta (CVD) based on candle-body delta approximations, the script ensures that volume flow supports the entry direction. This prevents entering pullbacks that lack the necessary buying/selling pressure to resume the trend.
- ATR Volatility Filter (Statistical Spacing) : To avoid "choppy" entries, this filter requires the price to be at a statistically significant distance from the EMA based on market volatility (ATR). This ensures you are entering at a true "discount" rather than in a sideways market.
- RSI Exhaustion Filter (Momentum Safety) : We utilize RSI to ensure that a reversion hasn't reached an overextended state. For example, it prevents buying a pullback if the RSI indicates the asset is already in an overbought exhaustion phase.
How to Use
- Long Entries (Green Circles) : Triggers when the Long-term ribbon is bullish, and price pulls back to touch the Long-term EMA group, provided the CVD, ATR, and RSI conditions are met.
- Short Entries (Red Circles) : Triggers when the Long-term ribbon is bearish, and price rallies to touch the Long-term EMA group, filtered by volume and momentum.
- Exits (Labels) : Exit signals appear when price successfully reverts back to the "fast" Short-term group, marking the completion of the mean reversion move.
Key Features & Customization
- Independent Toggles : You can independently turn on/off buy signals, sell signals, and their respective exits to suit your specific trading style (e.g., only trading the long side).
- Signal Cooldown : Includes a customizable "bar count" cooldown to prevent multiple overlapping signals during high-volatility periods.
- Comprehensive Settings : Fully adjustable EMA lengths, ATR multipliers, and RSI thresholds to adapt the system to different timeframes and asset classes (Crypto, Forex, Stocks).
Settings Guide
- Use ATR Filter : Increase the multiplier for more conservative, wider entries.
- Use CVD Filter : Enable to ensure volume delta is trending with your entry.
- Use RSI Filter : Helps avoid "catching falling knives" by filtering out trades during extreme momentum spikes. Indicator

Smart Trail + 9/21 + VWAP + FVG Scored SignalsSmart Trail Signals + ScoreSmart Trail + 9/21 + VWAP + FVG Scored Signals
A trend-following signal indicator built on a dynamic ATR-based Smart Trail, enhanced with a multi-factor confluence scoring system and a true RVOL gate to filter out low-conviction entries.
How It Works
The Smart Trail continuously calculates adaptive support and resistance levels using ATR and a configurable sensitivity multiplier. When the trend flips direction, a signal fires — but only if it passes both the confluence score threshold and the RVOL gate.
Scoring System (0–100)
Every signal is scored across four weighted factors:
Smart Trail (default 40 pts) — trend direction confirmation. Full points when trend is aligned, zero when not.
EMA 9/21 (default 35 pts) — full points when price is above both EMAs and 9 > 21 (bull), zero when fully inverted, partial when mixed.
VWAP (default 25 pts) — full points when price is above VWAP (institutional bias), zero when below.
FVG / Fair Value Gap (default 20 pts) — scores based on an active unmitigated FVG below price (bull) or above price (bear), weighted by gap size relative to ATR, volume strength, and trend alignment. Clears automatically when price fully mitigates the zone.
All weights are fully adjustable in the settings panel. The score normalizes to 0–100 regardless of weight configuration.
RVOL Gate
Signals will not fire unless the true Relative Volume clears a configurable minimum threshold (default 1.0x). RVOL is calculated using the LevelUp methodology — cumulative session volume today compared against the average cumulative volume at the same time of day over the past N days — giving an accurate real-time read rather than a simple rolling average.
Signal Labels
Each signal prints a scored label directly on the chart:
▲ 85 — bullish flip, score 85
▼ 22 — bearish flip, score 22
Label color is green (≥70), yellow (50–69), or red (<50).
An optional rolling score label can be enabled to display the live score at a configurable bar frequency.
Filters
Score filter — set minimum bull score and maximum bear score to control signal sensitivity
Session filter — restrict signals to regular trading hours (default 9:30–16:00 ET, fully configurable)
RVOL gate — hard minimum RVOL required for any signal to fire
Alerts
Four alert conditions included:
Bull signal fired
Bear signal fired
High conviction bull (score ≥ 70)
High conviction bear (score ≤ 30)
Settings
GroupKey SettingsSmart TrailLength, multiplier, source, sensitivityScore WeightsPer-factor weight (0–100 each)Score FilterMin bull score, max bear scoreSession FilterOn/off toggle, custom sessionRVOL GateLookback days, minimum thresholdFVGVolume MA, trend EMA, zone colors, show/hideDisplayRolling score labels, frequency
Recommended Usage
Best used on intraday timeframes (1m–15m). Signals with scores of 70+ and RVOL above 1.5x represent the highest conviction setups where all factors align. Scores between 60–70 are valid but warrant additional context from price action and key levels. Indicator

Indicator

Indicator

EMA Ribbon with ATR ExtensionsThis indicator is an EMA ribbon framework combined with multi-timeframe trend structure and volatility-normalized distance measurements using ATR.
The core component is a configurable exponential moving average ribbon, allowing multiple EMA lengths to be plotted simultaneously across different timeframes. This includes both intraday EMAs and optional higher-timeframe EMAs such as daily and weekly periods. The purpose of this structure is to provide a layered view of trend behavior across multiple time horizons, helping visualize alignment, compression, and expansion within broader market structure.
In addition to standard EMA visualization, the indicator integrates a volatility context layer using the Average True Range (ATR). This allows price distance from each EMA to be expressed not only in percentage terms, but also in ATR-normalized form. The ATR extension metric is derived from the relationship between percentage deviation from the moving average and current ATR percentage, enabling comparison of movement intensity across different instruments regardless of price scale.
The included table presents a structured breakdown for each selected EMA:
EMA value based on configurable length and timeframe
Percentage distance between price and each EMA
ATR-normalized extension value representing volatility-adjusted deviation
This structure allows users to observe how price interacts with multiple trend references simultaneously, while also understanding whether movement is occurring within normal volatility conditions or represents an expanded deviation relative to recent market behavior.
A visual marker is included to highlight conditions where price is significantly extended above a selected higher timeframe EMA relative to ATR-based expansion. This is intended to assist with quickly identifying periods of elevated trend extension within the broader EMA framework.
The header display optionally shows symbol, description, and active chart timeframe to maintain contextual awareness when analyzing multiple assets or timeframes.
Overall, the tool is designed as a multi-layer trend and volatility visualization system combining moving averages, relative distance metrics, and ATR-based normalization to better contextualize price positioning within ongoing market structure. Indicator

Indicator

Indicator

FVG + EMA 9/21 + VWAP Scored SignalsCombined FVG, EMA 9/21 & VWAP Scored Signals
A confluence-scored signal engine that combines Fair Value Gap (FVG) imbalance zones, EMA 9/21/50 trend structure, anchored VWAP, and candle quality into a single 0–100 directional score. One BUY or SELL per direction until the opposite side fires.
What it does
Most pullback and FVG indicators print signals on every touch, every cross, every fresh gap — and the noise drowns out the edge. This indicator scores every bar against a weighted, four-factor confluence model and only prints a signal when the directional score clears a per-symbol threshold during regular trading hours. A built-in state machine guarantees one BUY (or SELL) per leg until the opposite side triggers, so the chart stays clean and signals stay actionable.
It is designed for intraday traders on 1–5 minute charts, particularly for 0DTE / weekly options entries on QQQ, SPX, SPY, IWM, and the Mag-8 names, but it works on any liquid symbol.
The four scoring components
The total score (0–100) is the weighted sum of:
EMA / Trend (default 30 pts) — Fast EMA vs Slow EMA, Slow vs Trend, price vs Trend EMA, normalized EMA gap, and candle direction. Rewards aligned trend structure on the entry bar.
FVG (default 30 pts) — Price must be touching one of the top-N highest-ranked FVG zones (sorted internally by size, volume, trend alignment, mitigation, and age). Score is scaled by the FVG's own directional strength %, so a 98%-strength zone contributes ~29 pts while a 50% zone contributes ~15 pts.
VWAP (default 20 pts) — Side (price above/below) plus slope (rising/falling, measured over a configurable lookback). Anchored VWAP with Session/Week/Month/Quarter/Year options.
Candle (default 20 pts) — Body-to-range ratio of the entry bar, rewarding decisive close-direction candles.
All four weights are user-adjustable and a live score table in the top-right shows each component's bull and bear contribution every bar, plus the active signal state.
How the state machine works
Trigger: in-session AND directional score ≥ threshold.
Per-symbol threshold: Mag-8 + index ETFs (AAPL, MSFT, GOOGL, AMZN, NVDA, META, TSLA, AVGO, QQQ, SPY, IWM) use a lower threshold (default 70). Everything else uses a higher threshold (default 90). Both are configurable.
One signal per direction: Once a BUY prints, no further BUYs print until a SELL fires (and vice versa). No clutter, no repainting signals, no second-guessing.
Tie-break: If both bull and bear clear threshold on the same bar, the higher score wins.
Fair Value Gap engine
The FVG component is built on the classic 3-bar imbalance definition (bull = low > high , bear = high < low ) and extends it with:
Quality scoring (size, volume vs MA, trend EMA alignment, age decay, mitigation penalty)
Continuous mitigation tracking (zones are removed when fully filled)
Internal storage of up to 200 FVGs with the top N displayed
Per-zone bull/bear strength bars (0–100%) and smart text labels ("Strong Bullish Imbalance," "Bearish Bias," etc.)
The FVG ranking and rendering logic is adapted from Zeiierman's Ranked FVG Imbalance Zones (CC BY-NC-SA 4.0), with the scoring, state machine, and confluence integration built on top.
Visuals
EMA 9/21/50 with ATR buffer band around the fast EMA
Optional EMA-cross triangles
Anchored VWAP line
FVG zone boxes with strength bars and text labels
Optional candle coloring by EMA 9/21 alignment
BUY/SELL labels with embedded score
Live score table (component breakdown + total + threshold + state)
Alerts
Combined real-time alert — uses alert() so a single PulseWire alert on "Any alert() function call" fires on every printed BUY or SELL, with the score and ticker embedded in the message.
Separate alertcondition() entries for BUY, SELL, new bull FVG, new bear FVG, bull FVG touch, bear FVG touch.
Recommended use
Timeframe: 1m, 2m, 3m, or 5m for intraday; the EMA 9/21 framework is calibrated for these.
Session: RTH-gated by default (09:30–16:00 America/New_York). Configurable.
Workflow: Wait for a BUY/SELL label inside an FVG zone with score ≥ threshold and the score table showing alignment across at least three of four components. Use the FVG zone as structural invalidation.
Tuning: If you're getting too few signals on a non-Mag-8 name, lower the "Other Threshold." If you want stricter signals on the Mag-8, raise the "Day-11 Threshold."
Notes
Signals are gated by inSession, so no pre-market or after-hours prints.
Score is clamped 0–100 for display; VWAP can contribute negatively to the raw score, which is intentional (price on the wrong side of a sloping VWAP should hurt the directional case).
All visuals (zones, bars, text, EMA fill, score table) can be toggled off independently.
License & credits
Released under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).
FVG ranking, rendering, and storage architecture adapted from Zeiierman — Ranked FVG Imbalance Zones. EMA/VWAP/candle scoring, state machine, per-symbol thresholds, score table, and combined alert engine are original work.
Disclaimer: This indicator is for educational and informational purposes only. It is not financial advice and does not guarantee profitable trades. 0DTE and weekly options carry significant risk of total loss. Always test on a paper account before risking capital, and size positions according to your own risk tolerance. Indicator

Indicator
