Kernel Market Dynamics [WFO - MAB]Kernel Market Dynamics
⚛️ CORE INNOVATION: KERNEL-BASED DISTRIBUTION ANALYSIS
The Kernel Market Dynamics system represents a fundamental departure from traditional technical indicators. Rather than measuring price levels, momentum, or oscillator extremes, KMD analyzes the statistical distribution of market returns using advanced kernel methods from machine learning theory. This allows the system to detect when market behavior has fundamentally changed—not just when price has moved, but when the underlying probability structure has shifted.
The Distribution Hypothesis:
Traditional indicators assume markets move in predictable patterns. KMD assumes something more profound: markets exist in distinct distributional regimes , and profitable trading opportunities emerge during regime transitions . When the distribution of recent returns diverges significantly from the historical baseline, the market is restructuring—and that's when edge exists.
Maximum Mean Discrepancy (MMD):
At the heart of KMD lies a sophisticated statistical metric called Maximum Mean Discrepancy. MMD measures the distance between two probability distributions by comparing their representations in a high-dimensional feature space created by a kernel function.
The Mathematics:
Given two sets of normalized returns:
• Reference period (X) : Historical baseline (default 100 bars)
• Test period (Y) : Recent behavior (default 20 bars)
MMD is calculated as:
MMD² = E + E - 2·E
Where:
• E = Expected kernel similarity within reference period
• E = Expected kernel similarity within test period
• E = Expected cross-similarity between periods
When MMD is low : Test period behaves like reference (stable regime)
When MMD is high : Test period diverges from reference (regime shift)
The final MMD value is smoothed with EMA(5) to reduce single-bar noise while maintaining responsiveness to genuine distribution changes.
The Kernel Functions:
The kernel function defines how similarity is measured. KMD offers four mathematically distinct kernels, each with different properties:
1. RBF (Radial Basis Function / Gaussian):
• Formula: k(x,y) = exp(-d² / (2·σ²·scale))
• Properties: Most sensitive to distribution changes, smooth decision boundaries
• Best for: Clean data, clear regime shifts, low-noise markets
• Sensitivity: Highest - detects subtle changes
• Use case: Stock indices, major forex pairs, trending environments
2. Laplacian:
• Formula: k(x,y) = exp(-|d| / σ)
• Properties: Medium sensitivity, robust to moderate outliers
• Best for: Standard market conditions, balanced noise/signal
• Sensitivity: Medium - filters minor fluctuations
• Use case: Commodities, standard timeframes, general trading
3. Cauchy (Default - Most Robust):
• Formula: k(x,y) = 1 / (1 + d²/σ²)
• Properties: Heavy-tailed, highly robust to outliers and spikes
• Best for: Noisy markets, choppy conditions, crypto volatility
• Sensitivity: Lower - only major distribution shifts trigger
• Use case: Cryptocurrencies, illiquid markets, volatile instruments
4. Rational Quadratic:
• Formula: k(x,y) = (1 + d²/(2·α·σ²))^(-α)
• Properties: Tunable via alpha parameter, mixture of RBF kernels
• Alpha < 1.0: Heavy tails (like Cauchy)
• Alpha > 3.0: Light tails (like RBF)
• Best for: Adaptive use, mixed market conditions
• Use case: Experimental optimization, regime-specific tuning
Bandwidth (σ) Parameter:
The bandwidth controls the "width" of the kernel, determining sensitivity to return differences:
• Low bandwidth (0.5-1.5) : Narrow kernel, very sensitive
- Treats small differences as significant
- More MMD spikes, more signals
- Use for: Scalping, fast markets
• Medium bandwidth (1.5-3.0) : Balanced sensitivity (recommended)
- Filters noise while catching real shifts
- Professional-grade signal quality
- Use for: Day/swing trading
• High bandwidth (3.0-10.0) : Wide kernel, less sensitive
- Only major distribution changes register
- Fewer, stronger signals
- Use for: Position trading, trend following
Adaptive Bandwidth:
When enabled (default ON), bandwidth automatically scales with market volatility:
Effective_BW = Base_BW × max(0.5, min(2.0, 1 / volatility_ratio))
• Low volatility → Tighter bandwidth (0.5× base) → More sensitive
• High volatility → Wider bandwidth (2.0× base) → Less sensitive
This prevents signal flooding during wild markets and avoids signal drought during calm periods.
Why Kernels Work:
Kernel methods implicitly map data to infinite-dimensional space where complex, nonlinear patterns become linearly separable. This allows MMD to detect distribution changes that simpler statistics (mean, variance) would miss. For example:
• Same mean, different shape : Traditional metrics see nothing, MMD detects shift
• Same volatility, different skew : Oscillators miss it, MMD catches it
• Regime rotation : Price unchanged, but return distribution restructured
The kernel captures the entire distributional signature —not just first and second moments.
🎰 MULTI-ARMED BANDIT FRAMEWORK: ADAPTIVE STRATEGY SELECTION
Rather than forcing one strategy on all market conditions, KMD implements a Multi-Armed Bandit (MAB) system that learns which of seven distinct strategies performs best and dynamically selects the optimal approach in real-time.
The Seven Arms (Strategies):
Each arm represents a fundamentally different trading logic:
ARM 0 - MMD Regime Shift:
• Logic: Distribution divergence with directional bias
• Triggers: MMD > threshold AND direction_bias confirmed AND velocity > 5%
• Philosophy: Trade the regime transition itself
• Best in: Volatile shifts, breakout moments, crisis periods
• Weakness: False alarms in choppy consolidation
ARM 1 - Trend Following:
• Logic: Aligned EMAs with strong ADX
• Triggers: EMA(9) > EMA(21) > EMA(50) AND ADX > 25
• Philosophy: Ride established momentum
• Best in: Strong trending regimes, directional markets
• Weakness: Late entries, whipsaws at reversals
ARM 2 - Breakout:
• Logic: Bollinger Band breakouts with volume
• Triggers: Price crosses BB outer band AND volume > 1.2× average
• Philosophy: Capture volatility expansion events
• Best in: Range breakouts, earnings, news events
• Weakness: False breakouts in ranging markets
ARM 3 - RSI Mean Reversion:
• Logic: RSI extremes with reversal confirmation
• Triggers: RSI < 30 with uptick OR RSI > 70 with downtick
• Philosophy: Fade overbought/oversold extremes
• Best in: Ranging markets, mean-reverting instruments
• Weakness: Fails in strong trends, catches falling knives
ARM 4 - Z-Score Statistical Reversion:
• Logic: Price deviation from 50-period mean
• Triggers: Z-score < -2 (oversold) OR > +2 (overbought) with reversal
• Philosophy: Statistical bounds reversion
• Best in: Stable volatility regimes, pairs trading
• Weakness: Trend continuation through extremes
ARM 5 - ADX Momentum:
• Logic: Strong directional movement with acceleration
• Triggers: ADX > 30 with DI+ or DI- strengthening
• Philosophy: Momentum begets momentum
• Best in: Trending with increasing velocity
• Weakness: Late exits, momentum exhaustion
ARM 6 - Volume Confirmation:
• Logic: OBV trend + volume spike + candle direction
• Triggers: OBV > EMA(20) AND volume > average AND bullish candle
• Philosophy: Follow institutional money flow
• Best in: Liquid markets with reliable volume
• Weakness: Manipulated volume, thin markets
Q-Learning with Rewards:
Each arm maintains a Q-value representing its expected reward. After every bar, the system calculates a reward based on the arm's signal and actual price movement:
Reward Calculation:
If arm signaled LONG:
reward = (close - close ) / close
If arm signaled SHORT:
reward = -(close - close ) / close
If arm signaled NEUTRAL:
reward = 0
Penalty multiplier: If loss > 0.5%, reward × 1.3 (punish big losses harder)
Q-Value Update (Exponential Moving Average):
Q_new = Q_old + α × (reward - Q_old)
Where α (learning rate, default 0.08) controls adaptation speed:
• Low α (0.01-0.05): Slow, stable learning
• Medium α (0.06-0.12): Balanced (recommended)
• High α (0.15-0.30): Fast, reactive learning
This gradually shifts Q-values toward arms that generate positive returns and away from losing arms.
Arm Selection Algorithms:
KMD offers four mathematically distinct selection strategies:
1. UCB1 (Upper Confidence Bound) - Recommended:
Formula: Select arm with max(Q_i + c·√(ln(t)/n_i))
Where:
• Q_i = Q-value of arm i
• c = exploration constant (default 1.5)
• t = total pulls across all arms
• n_i = pulls of arm i
Philosophy: Balance exploitation (use best arm) with exploration (try uncertain arms). The √(ln(t)/n_i) term creates an "exploration bonus" that decreases as an arm gets more pulls, ensuring all arms get sufficient testing.
Theoretical guarantee: Logarithmic regret bound - UCB1 provably converges to optimal arm selection over time.
2. UCB1-Tuned (Variance-Aware UCB):
Formula: Select arm with max(Q_i + √(ln(t)/n_i × min(0.25, V_i + √(2·ln(t)/n_i))))
Where V_i = variance of rewards for arm i
Philosophy: Incorporates reward variance into exploration. Arms with high variance (unpredictable) get less exploration bonus, focusing effort on stable performers.
Better bounds than UCB1 in practice, slightly more conservative exploration.
3. Epsilon-Greedy (Simple Random):
Algorithm:
With probability ε: Select random arm (explore)
With probability 1-ε: Select highest Q-value arm (exploit)
Default ε = 0.10 (10% exploration, 90% exploitation)
Philosophy: Simplest algorithm, easy to understand. Random exploration ensures all arms stay updated but may waste time on clearly bad arms.
4. Thompson Sampling (Bayesian):
The most sophisticated selection algorithm, using true Bayesian probability.
Each arm maintains Beta distribution parameters:
• α (alpha) = successes + 1
• β (beta) = failures + 1
Selection Process:
1. Sample θ_i ~ Beta(α_i, β_i) for each arm using Marsaglia-Tsang Gamma sampler
2. Select arm with highest sample: argmax_i(θ_i)
3. After reward, update:
- If reward > 0: α += |reward| × 100 (increment successes)
- If reward < 0: β += |reward| × 100 (increment failures)
Why Thompson Sampling Works:
The Beta distribution naturally represents uncertainty about an arm's true win rate. Early on with few trials, the distribution is wide (high uncertainty), leading to more exploration. As evidence accumulates, it narrows around the true performance, naturally shifting toward exploitation.
Unlike UCB which uses deterministic confidence bounds, Thompson Sampling is probabilistic—it samples from the posterior distribution of each arm's success rate, providing automatic exploration/exploitation balance without tuning.
Comparison:
• UCB1: Deterministic, guaranteed regret bounds, requires tuning exploration constant
• Thompson: Probabilistic, natural exploration, no tuning required, best empirical performance
• Epsilon-Greedy: Simplest, consistent exploration %, less efficient
• UCB1-Tuned: UCB1 + variance awareness, best for risk-averse
Exploration Constant (c):
For UCB algorithms, this multiplies the exploration bonus:
• Low c (0.5-1.0): Strongly prefer proven arms, rare exploration
• Medium c (1.2-1.8): Balanced (default 1.5)
• High c (2.0-3.0): Frequent exploration, diverse arm usage
Higher exploration constant in volatile/unstable markets, lower in stable trending environments.
🔬 WALK-FORWARD OPTIMIZATION: PREVENTING OVERFITTING
The single biggest problem in algorithmic trading is overfitting—strategies that look amazing in backtest but fail in live trading because they learned noise instead of signal. KMD's Walk-Forward Optimization system addresses this head-on.
How WFO Works:
The system divides time into repeating cycles:
1. Training Window (default 500 bars): Learn arm Q-values on historical data
2. Testing Window (default 100 bars): Validate on unseen "future" data
Training Phase:
• All arms accumulate rewards and update Q-values normally
• Q_train tracks in-sample performance
• System learns which arms work on historical data
Testing Phase:
• System continues using arms but tracks separate Q_test metrics
• Counts trades per arm (N_test)
• Testing performance is "out-of-sample" relative to training
Validation Requirements:
An arm is only "validated" (approved for live use) if:
1. N_test ≥ Minimum Trades (default 10): Sufficient statistical sample
2. Q_test > 0 : Positive out-of-sample performance
Arms that fail validation are blocked from generating signals, preventing the system from trading strategies that only worked on historical data.
Performance Decay:
At the end of each WFO cycle, all Q-values decay exponentially:
Q_new = Q_old × decay_rate (default 0.95)
This ensures old performance doesn't dominate forever. An arm that worked 10 cycles ago but fails recently will eventually lose influence.
Decay Math:
• 0.95 decay after 10 periods → 0.95^10 = 0.60 (40% forgotten)
• 0.90 decay after 10 periods → 0.90^10 = 0.35 (65% forgotten)
Fast decay (0.80-0.90): Quick adaptation, forgets old patterns rapidly
Slow decay (0.96-0.99): Stable, retains historical knowledge longer
WFO Efficiency Metric:
The key metric revealing overfitting:
Efficiency = (Q_test / Q_train) for each validated arm, averaged
• Efficiency > 0.8 : Excellent - strategies generalize well (LOW overfit risk)
• Efficiency 0.5-0.8 : Acceptable - moderate generalization (MODERATE risk)
• Efficiency < 0.5 : Poor - strategies curve-fitted to history (HIGH risk)
If efficiency is low, the system has learned noise. Training performance was good but testing (forward) performance is weak—classic overfitting.
The dashboard displays real-time WFO efficiency, allowing users to gauge system robustness. Low efficiency should trigger parameter review or reduced position sizing.
Why WFO Matters:
Consider two scenarios:
Scenario A - No WFO:
• Arm 3 (RSI Reversion) shows Q-value of 0.15 on all historical data
• System trades it aggressively
• Reality: It only worked during one specific ranging period
• Live trading: Fails because market has trended since backtest
Scenario B - With WFO:
• Arm 3 shows Q_train = 0.15 (good in training)
• But Q_test = -0.05 (loses in testing) with 12 test trades
• N_test ≥ 10 but Q_test < 0 → Arm BLOCKED
• System refuses to trade it despite good backtest
• Live trading: Protected from false strategy
WFO ensures only strategies that work going forward get used, not just strategies that fit the past.
Optimal Window Sizing:
Training Window:
• Too short (100-300): May learn recent noise, insufficient data
• Too long (1000-2000): May include obsolete market regimes
• Recommended: 4-6× testing window (default 500)
Testing Window:
• Too short (50-80): Insufficient validation, high variance
• Too long (300-500): Delayed adaptation to regime changes
• Recommended: 1/5 to 1/4 of training (default 100)
Minimum Trades:
• Too low (5-8): Statistical noise, lucky runs validate
• Too high (30-50): Many arms never validate, system rarely trades
• Recommended: 10-15 (default 10)
⚖️ WEIGHTED CONFLUENCE SYSTEM: MULTI-FACTOR SIGNAL QUALITY
Not all signals are created equal. KMD implements a sophisticated 100-point quality scoring system that combines eight independent factors with different importance weights.
The Scoring Framework:
Each potential signal receives a quality score from 0-100 by accumulating points from aligned factors:
CRITICAL FACTORS (20 points each):
1. Bandit Arm Alignment (20 points):
• Full points if selected arm's signal matches trade direction
• Zero points if arm disagrees
• Weight: Highest - the bandit selected this arm for a reason
2. MMD Regime Quality (20 points):
• Requires: MMD > dynamic threshold AND directional bias confirmed
• Scaled by MMD percentile (how extreme vs history)
• If MMD in top 10% of history: 100% of 20 points
• If MMD at 50th percentile: 50% of 20 points
• Weight: Highest - distribution shift is the core signal
HIGH IMPACT FACTORS (15 points each):
3. Trend Alignment (15 points):
• Full points if EMA(9) > EMA(21) > EMA(50) for longs (inverse for shorts)
• Scaled by ADX strength:
- ADX > 25: 100% (1.0× multiplier) - strong trend
- ADX 20-25: 70% (0.7× multiplier) - moderate trend
- ADX < 20: 40% (0.4× multiplier) - weak trend
• Weight: High - trend is friend, alignment increases probability
4. Volume Confirmation (15 points):
• Requires: OBV > EMA(OBV, 20) aligned with direction
• Scaled by volume ratio: vol_current / vol_average
- Volume 1.5×+ average: 100% of points (institutional participation)
- Volume 1.0-1.5× average: 67% of points (above average)
- Volume below average: 0 points (weak conviction)
• Weight: High - volume validates price moves
MODERATE FACTORS (10 points each):
5. Market Structure (10 points):
• Full points (10) if bullish structure (higher highs, higher lows) for longs
• Partial points (6) if near support level (within 1% of swing low)
• Similar logic inverted for bearish trades
• Weight: Moderate - structure context improves entries
6. RSI Positioning (10 points):
• For long signals:
- RSI < 50: 100% of points (1.0× multiplier) - room to run
- RSI 50-60: 60% of points (0.6× multiplier) - neutral
- RSI 60-70: 30% of points (0.3× multiplier) - elevated
- RSI > 70: 0 points (0× multiplier) - overbought
• Inverse for short signals
• Weight: Moderate - momentum context, not primary signal
BONUS FACTORS (10 points each):
7. Divergence (10 points):
• Full 10 points if bullish divergence detected for long (or bearish for short)
• Zero points otherwise
• Weight: Bonus - leading indicator, adds confidence when present
8. Multi-Timeframe Confirmation (10 points):
• Full 10 points if higher timeframe aligned (HTF EMA trending same direction, RSI supportive)
• Zero points if MTF disabled or HTF opposes
• Weight: Bonus - macro context filter, prevents counter-trend disasters
Total Maximum: 110 points (20+20+15+15+10+10+10+10)
Signal Quality Calculation:
Quality Score = (Accumulated_Points / Maximum_Possible) × 100
Where Maximum_Possible = 110 points if all factors active, adjusts if MTF disabled.
Example Calculation:
Long signal candidate:
• Bandit Arm: +20 (arm signals long)
• MMD Quality: +16 (MMD high, 80th percentile)
• Trend: +11 (EMAs aligned, ADX = 22 → 70% × 15)
• Volume: +10 (OBV rising, vol 1.3× avg → 67% × 15 = 10)
• Structure: +10 (higher lows forming)
• RSI: +6 (RSI = 55 → 60% × 10)
• Divergence: +0 (none present)
• MTF: +10 (HTF bullish)
Total: 83 / 110 × 100 = 75.5% quality score
This is an excellent quality signal - well above threshold (default 60%).
Quality Thresholds:
• Score 80-100 : Exceptional setup - all factors aligned
• Score 60-80 : High quality - most factors supportive (default minimum)
• Score 40-60 : Moderate - mixed confluence, proceed with caution
• Score 20-40 : Weak - minimal support, likely filtered out
• Score 0-20 : Very weak - almost certainly blocked
The minimum quality threshold (default 60) is the gatekeeper. Only signals scoring above this value can trigger trades.
Dynamic Threshold Adjustment:
The system optionally adjusts the threshold based on historical signal distribution:
If Dynamic Threshold enabled:
Recent_MMD_Mean = SMA(MMD, 50)
Recent_MMD_StdDev = StdDev(MMD, 50)
Dynamic_Threshold = max(Base_Threshold × 0.5,
min(Base_Threshold × 2.0,
MMD_Mean + MMD_StdDev × 0.5))
This auto-calibrates to market conditions:
• Quiet markets (low MMD): Threshold loosens (0.5× base)
• Active markets (high MMD): Threshold tightens (2× base)
Signal Ranking Filter:
When enabled, the system tracks the last 100 signal quality scores and only fires signals in the top percentile.
If Ranking Percentile = 75%:
• Collect last 100 signal scores in memory
• Sort ascending
• Threshold = Score at 75th percentile position
• Only signals ≥ this threshold fire
This ensures you're only taking the cream of the crop —top 25% of signals by quality, not every signal that technically qualifies.
🚦 SIGNAL GENERATION: TRANSITION LOGIC & COOLDOWNS
The confluence system determines if a signal qualifies , but the signal generation logic controls when triangles appear on the chart.
Core Qualification:
For a LONG signal to qualify:
1. Bull quality score ≥ signal threshold (default 60)
2. Selected arm signals +1 (long)
3. Cooldown satisfied (bars since last signal ≥ cooldown period)
4. Drawdown protection OK (current drawdown < pause threshold)
5. MMD ≥ 80% of dynamic threshold (slight buffer below full threshold)
For a SHORT signal to qualify:
1. Bear quality score ≥ signal threshold
2. Selected arm signals -1 (short)
3-5. Same as long
But qualification alone doesn't trigger a chart signal.
Three Signal Modes:
1. RESPONSIVE (Default - Recommended):
Signals appear on:
• Fresh qualification (wasn't qualified last bar, now is)
• Direction reversal (was qualified short, now qualified long)
• Quality improvement (already qualified, quality jumps 25%+ during EXTREME regime)
This mode shows new opportunities and significant upgrades without cluttering the chart with repeat signals.
2. TRANSITION ONLY:
Signals appear on:
• Fresh qualification only
• Direction reversal only
This is the cleanest mode - signals only when first qualifying or when flipping direction. Misses re-entries if quality improves mid-regime.
3. CONTINUOUS:
Signals appear on:
• Every bar that qualifies
Testing/debugging mode - shows all qualified bars. Very noisy but useful for understanding when system wants to trade.
Cooldown System:
Prevents signal clustering and overtrading by enforcing minimum bars between signals.
Base Cooldown: User-defined (default 5 bars)
Adaptive Cooldown (Optional):
If enabled, cooldown scales with volatility:
Effective_Cooldown = Base_Cooldown × volatility_multiplier
Where:
ATR_Pct = ATR(14) / Close × 100
Volatility_Multiplier = max(0.5, min(3.0, ATR_Pct / 2.0))
• Low volatility (ATR 1%): Multiplier ~0.5× → Cooldown = 2-3 bars (tight)
• Medium volatility (ATR 2%): Multiplier 1.0× → Cooldown = 5 bars (normal)
• High volatility (ATR 4%+): Multiplier 2.0-3.0× → Cooldown = 10-15 bars (wide)
This prevents excessive trading during wild swings while allowing more signals during calm periods.
Regime Filter:
Three modes controlling which regimes allow trading:
OFF: Trade in any regime (STABLE, TRENDING, SHIFTING, ELEVATED, EXTREME)
SMART (Recommended):
• Regime score = 1.0 for SHIFTING, ELEVATED (optimal)
• Regime score = 0.8 for TRENDING (acceptable)
• Regime score = 0.5 for EXTREME (too chaotic)
• Regime score = 0.2 for STABLE (too quiet)
Quality scores are multiplied by regime score. A 70% quality signal in STABLE regime becomes 70% × 0.2 = 14% → blocked.
STRICT:
• Regime score = 1.0 for SHIFTING, ELEVATED only
• Regime score = 0.0 for all others → hard block
Only trades during optimal distribution shift regimes.
Drawdown Protection:
If current equity drawdown exceeds pause threshold (default 8%), all signals are blocked until equity recovers.
This circuit breaker prevents compounding losses during adverse conditions or broken market structure.
🎯 RISK MANAGEMENT: ATR-BASED STOPS & TARGETS
Every signal generates volatility-normalized stop loss and target levels displayed as boxes on the chart.
Stop Loss Calculation:
Stop_Distance = ATR(14) × ATR_Multiplier (default 1.5)
For LONG: Stop = Entry - Stop_Distance
For SHORT: Stop = Entry + Stop_Distance
The stop is placed 1.5 ATRs away from entry by default, adapting automatically to instrument volatility.
Target Calculation:
Target_Distance = Stop_Distance × Risk_Reward_Ratio (default 2.0)
For LONG: Target = Entry + Target_Distance
For SHORT: Target = Entry - Target_Distance
Default 2:1 risk/reward means target is twice as far as stop.
Example:
• Price: $100
• ATR: $2
• ATR Multiplier: 1.5
• Risk/Reward: 2.0
LONG Signal:
• Entry: $100
• Stop: $100 - ($2 × 1.5) = $97.00 (-$3 risk)
• Target: $100 + ($3 × 2.0) = $106.00 (+$6 reward)
• Risk/Reward: $3 risk for $6 reward = 1:2 ratio
Target/Stop Box Lifecycle:
Boxes persist for a lifetime (default 20 bars) OR until an opposite signal fires, whichever comes first. This provides visual reference for active trade levels without permanent chart clutter.
When a new opposite-direction signal appears, all existing boxes from the previous direction are immediately deleted, ensuring only relevant levels remain visible.
Adaptive Stop/Target Sizing:
While not explicitly coded in the current version, the shadow portfolio tracking system calculates PnL based on these levels. Users can observe which ATR multipliers and risk/reward ratios produce optimal results for their instrument/timeframe via the dashboard performance metrics.
📊 COMPREHENSIVE VISUAL SYSTEM
KMD provides rich visual feedback through four distinct layers:
1. PROBABILITY CLOUD (Adaptive Volatility Bands):
Two sets of bands around price that expand/contract with MMD:
Calculation:
Std_Multiplier = 1 + MMD × 3
Upper_1σ = Close + ATR × Std_Multiplier × 0.5
Lower_1σ = Close - ATR × Std_Multiplier × 0.5
Upper_2σ = Close + ATR × Std_Multiplier
Lower_2σ = Close - ATR × Std_Multiplier
• Inner band (±0.5× adjusted ATR) : 68% probability zone (1 standard deviation equivalent)
• Outer band (±1.0× adjusted ATR) : 95% probability zone (2 standard deviation equivalent)
When MMD spikes, bands widen dramatically, showing increased uncertainty. When MMD calms, bands tighten, showing normal price action.
2. MOMENTUM FLOW VECTORS (Directional Arrows):
Dynamic arrows that visualize momentum strength and direction:
Arrow Properties:
• Length: Proportional to momentum magnitude (2-10 bars forward)
• Width: 1px (weak), 2px (medium), 3px (strong)
• Transparency: 30-100 (more opaque = stronger momentum)
• Direction: Up for bullish, down for bearish
• Placement: Below bars (bulls) or above bars (bears)
Trigger Logic:
• Always appears every 5 bars (regular sampling)
• Forced appearance if momentum strength > 50 OR regime shift OR MMD velocity > 10%
Strong momentum (>75%) gets:
• Secondary support arrow (70% length, lighter color)
• Label showing "75%" strength
Very strong momentum (>60%) gets:
• Gradient flow lines (thick vertical lines showing momentum vector)
This creates a dynamic "flow field" showing where market pressure is pushing price.
3. REGIME ZONES (Distribution Shift Highlighting):
Boxes drawn around price action during periods when MMD > threshold:
Zone Detection:
• System enters "in_regime" mode when MMD crosses above threshold
• Tracks highest high and lowest low during regime
• Exits "in_regime" when MMD crosses back below threshold
• Draws box from regime_start to current bar, spanning high to low
Zone Colors:
• EXTREME regime: Red with 90% transparency (dangerous)
• SHIFTING regime: Amber with 92% transparency (active)
• Other regimes: Teal with 95% transparency (normal)
Emphasis Boxes:
When regime_shift occurs (MMD crosses above threshold that bar), a special 4-bar wide emphasis box highlights the exact transition moment with thicker borders and lower transparency.
This visual immediately shows "the market just changed" moments.
4. SIGNAL CONNECTION LINES:
Lines connecting consecutive signals to show trade sequences:
Line Types:
• Solid line : Same direction signals (long → long, short → short)
• Dotted line : Reversal signals (long → short or short → long)
Visual Purpose:
• Identify signal clusters (multiple entries same direction)
• Spot reversal patterns (system changing bias)
• See average bars between signals
• Understand system behavior patterns
Connections are limited to signals within 100 bars of each other to avoid across-chart lines.
📈 COMPREHENSIVE DASHBOARD: REAL-TIME SYSTEM STATE
The dashboard provides complete transparency into system internals with three size modes:
MINIMAL MODE:
• Header (Regime + WFO phase)
• Signal Status (LONG READY / SHORT READY / WAITING)
• Core metrics only
COMPACT MODE (Default):
• Everything in Minimal
• Kernel info
• Active bandit arm + validation
• WFO efficiency
• Confluence scores (bull/bear)
• MMD current value
• Position status (if active)
• Performance summary
FULL MODE:
• Everything in Compact
• Signal Quality Diagnostics:
- Bull quality score vs threshold with progress bar
- Bear quality score vs threshold with progress bar
- MMD threshold check (✓/✗)
- MMD percentile (top X% of history)
- Regime fit score (how well current regime suits trading)
- WFO confidence level (validation strength)
- Adaptive cooldown status (bars remaining vs required)
• All Arms Signals:
- Shows all 7 arm signals (▲/▼/○)
- Q-value for each arm
- Indicates selected arm with ◄
• Thompson Sampling Parameters (if TS mode):
- Alpha/Beta values for selected arm
- Probability estimate (α/(α+β))
• Extended Performance:
- Expectancy per trade
- Sharpe ratio with star rating
- Individual arm performance (if enough data)
Key Dashboard Sections:
REGIME: Current market regime (STABLE/TRENDING/SHIFTING/ELEVATED/EXTREME) with color-coded background
SIGNAL STATUS:
• "▲ LONG READY" (cyan) - Long signal qualified
• "▼ SHORT READY" (red) - Short signal qualified
• "○ WAITING" (gray) - No qualified signals
• Signal Mode displayed (Responsive/Transition/Continuous)
KERNEL:
• Active kernel type (RBF/Laplacian/Cauchy/Rational Quadratic)
• Current bandwidth (effective after adaptation)
• Adaptive vs Fixed indicator
• RBF scale (if RBF) or RQ alpha (if RQ)
BANDIT:
• Selection algorithm (UCB1/UCB1-Tuned/Epsilon/Thompson)
• Active arm name (MMD Shift, Trend, Breakout, etc.)
• Validation status (✓ if validated, ? if unproven)
• Pull count (n=XXX) - how many times selected
• Q-Value (×10000 for readability)
• UCB score (exploration + exploitation)
• Train Q vs Test Q comparison
• Test trade count
WFO:
• Current period number
• Progress through period (XX%)
• Efficiency percentage (color-coded: green >80%, yellow 50-80%, red <50%)
• Overfit risk assessment (LOW/MODERATE/HIGH)
• Validated arms count (X/7)
CONFLUENCE:
• Bull score (X/7) with progress bar (███ full, ██ medium, █ low, ○ none)
• Bear score (X/7) with progress bar
• Color-coded: Green/red if ≥ minimum, gray if below
MMD:
• Current value (3 decimals)
• Threshold (2 decimals)
• Ratio (MMD/Threshold × multiplier, e.g. "1.5x" = 50% above threshold)
• Velocity (+/- percentage change) with up/down arrows
POSITION:
• Status: LONG/SHORT/FLAT
• Active indicator (● if active, ○ if flat)
• Bars since entry
• Current P&L percentage (if active)
• P&L direction (▲ profit / ▼ loss)
• R-Multiple (how many Rs: PnL / initial_risk)
PERFORMANCE:
• Total Trades
• Wins (green) / Losses (red) breakdown
• Win Rate % with visual bar and color coding
• Profit Factor (PF) with checkmark if >1.0
• Expectancy % (average profit per trade)
• Sharpe Ratio with star rating (★★★ >2, ★★ >1, ★ >0, ○ negative)
• Max DD % (maximum drawdown) with "Now: X%" showing current drawdown
🔧 KEY PARAMETERS EXPLAINED
Kernel Configuration:
• Kernel Function : RBF / Laplacian / Cauchy / Rational Quadratic
- Start with Cauchy for stability, experiment with others
• Bandwidth (σ) (0.5-10.0, default 2.0): Kernel sensitivity
- Lower: More signals, more false positives (scalping: 0.8-1.5)
- Medium: Balanced (swing: 1.5-3.0)
- Higher: Fewer signals, stronger quality (position: 3.0-8.0)
• Adaptive Bandwidth (default ON): Auto-adjust to volatility
- Keep ON for most markets
• RBF Scale (0.1-2.0, default 0.5): RBF-specific scaling
- Only matters if RBF kernel selected
- Lower = more sensitive (0.3 for scalping)
- Higher = less sensitive (1.0+ for position)
• RQ Alpha (0.5-5.0, default 2.0): Rational Quadratic tail behavior
- Only matters if RQ kernel selected
- Low (0.5-1.0): Heavy tails, robust to outliers (like Cauchy)
- High (3.0-5.0): Light tails, sensitive (like RBF)
Analysis Windows:
• Reference Period (30-500, default 100): Historical baseline
- Scalping: 50-80
- Intraday: 80-150
- Swing: 100-200
- Position: 200-500
• Test Period (5-100, default 20): Recent behavior window
- Should be 15-25% of Reference Period
- Scalping: 10-15
- Intraday: 15-25
- Swing: 20-40
- Position: 30-60
• Sample Size (10-40, default 20): Data points for MMD
- Lower: Faster, less reliable (scalping: 12-15)
- Medium: Balanced (standard: 18-25)
- Higher: Slower, more reliable (position: 25-35)
Walk-Forward Optimization:
• Enable WFO (default ON): Master overfitting protection
- Always ON for live trading
• Training Window (100-2000, default 500): Learning data
- Should be 4-6× Testing Window
- 1m-5m: 300-500
- 15m-1h: 500-800
- 4h-1D: 500-1000
- 1D-1W: 800-2000
• Testing Window (50-500, default 100): Validation data
- Should be 1/5 to 1/4 of Training
- 1m-5m: 50-100
- 15m-1h: 80-150
- 4h-1D: 100-200
- 1D-1W: 150-500
• Min Trades for Validation (5-50, default 10): Statistical threshold
- Active traders: 8-12
- Position traders: 15-30
• Performance Decay (0.8-0.99, default 0.95): Old data forgetting
- Aggressive: 0.85-0.90 (volatile markets)
- Moderate: 0.92-0.96 (most use cases)
- Conservative: 0.97-0.99 (stable markets)
Multi-Armed Bandit:
• Learning Rate (α) (0.01-0.3, default 0.08): Adaptation speed
- Low: 0.01-0.05 (position trading, stable)
- Medium: 0.06-0.12 (day/swing trading)
- High: 0.15-0.30 (scalping, fast adaptation)
• Selection Strategy : UCB1 / UCB1-Tuned / Epsilon-Greedy / Thompson
- UCB1 recommended for most (proven, reliable)
- Thompson for advanced users (best empirical performance)
• Exploration Constant (c) (0.5-3.0, default 1.5): Explore vs exploit
- Low: 0.5-1.0 (conservative, proven strategies)
- Medium: 1.2-1.8 (balanced)
- High: 2.0-3.0 (experimental, volatile markets)
• Epsilon (0.0-0.3, default 0.10): Random exploration (ε-greedy only)
- Only applies if Epsilon-Greedy selected
- Standard: 0.10 (10% random)
Signal Configuration:
• MMD Threshold (0.05-1.0, default 0.15): Distribution divergence trigger
- Low: 0.08-0.12 (scalping, sensitive)
- Medium: 0.12-0.20 (day/swing)
- High: 0.25-0.50 (position, strong signals)
- Stocks/indices: 0.12-0.18
- Forex: 0.15-0.25
- Crypto: 0.20-0.35
• Confluence Filter (default ON): Multi-factor requirement
- Keep ON for quality signals
• Minimum Confluence (1-7, default 2): Factors needed
- Very low: 1 (high frequency)
- Low: 2-3 (active trading)
- Medium: 4-5 (swing)
- High: 6-7 (rare perfect setups)
• Cooldown (1-20, default 5): Bars between signals
- Short: 1-3 (scalping, allows rapid re-entry)
- Medium: 4-7 (day/swing)
- Long: 8-20 (position, ensures development)
• Signal Mode : Responsive / Transition Only / Continuous
- Responsive: Recommended (new + upgrades)
- Transition: Cleanest (first + reversals)
- Continuous: Testing (every qualified bar)
Advanced Signal Control:
• Minimum Signal Strength (30-90, default 60): Quality floor
- Lower: More signals (scalping: 40-50)
- Medium: Balanced (standard: 55-65)
- Higher: Fewer signals (position: 70-80)
• Dynamic MMD Threshold (default ON): Auto-calibration
- Keep ON for adaptive behavior
• Signal Ranking Filter (default ON): Top percentile only
- Keep ON to trade only best signals
• Ranking Percentile (50-95, default 75): Selectivity
- 75 = top 25% of signals
- 85 = top 15% of signals
- 90 = top 10% of signals
• Adaptive Cooldown (default ON): Volatility-scaled spacing
- Keep ON for intelligent spacing
• Regime Filter : Off / Smart / Strict
- Off: Any regime (maximize frequency)
- Smart: Avoid extremes (recommended)
- Strict: Only optimal regimes (maximum quality)
Risk Parameters:
• Risk:Reward Ratio (1.0-5.0, default 2.0): Target distance multiplier
- Conservative: 1.0-1.5 (higher WR needed)
- Balanced: 2.0-2.5 (standard professional)
- Aggressive: 3.0-5.0 (lower WR acceptable)
• Stop Loss (ATR mult) (0.5-4.0, default 1.5): Stop distance
- Tight: 0.5-1.0 (scalping, low vol)
- Medium: 1.2-2.0 (day/swing)
- Wide: 2.5-4.0 (position, high vol)
• Pause After Drawdown (2-20%, default 8%): Circuit breaker
- Aggressive: 3-6% (small accounts)
- Moderate: 6-10% (most traders)
- Relaxed: 10-15% (large accounts)
Multi-Timeframe:
• MTF Confirmation (default OFF): Higher TF filter
- Turn ON for swing/position trading
- Keep OFF for scalping/day trading
• Higher Timeframe (default "60"): HTF for trend check
- Should be 3-5× chart timeframe
- 1m chart → 5m or 15m
- 5m chart → 15m or 60m
- 15m chart → 60m or 240m
- 1h chart → 240m or D
Display:
• Probability Cloud (default ON): Volatility bands
• Momentum Flow Vectors (default ON): Directional arrows
• Regime Zones (default ON): Distribution shift boxes
• Signal Connections (default ON): Lines between signals
• Dashboard (default ON): Stats table
• Dashboard Position : Top Left / Top Right / Bottom Left / Bottom Right
• Dashboard Size : Minimal / Compact / Full
• Color Scheme : Default / Monochrome / Warm / Cool
• Show MMD Debug Plot (default OFF): Overlay MMD value
- Turn ON temporarily for threshold calibration
🎓 PROFESSIONAL USAGE PROTOCOL
Phase 1: Parameter Calibration (Week 1)
Goal: Find optimal kernel and bandwidth for your instrument/timeframe
Setup:
• Enable "Show MMD Debug Plot"
• Start with Cauchy kernel, 2.0 bandwidth
• Run on chart with 500+ bars of history
Actions:
• Watch yellow MMD line vs red threshold line
• Count threshold crossings per 100 bars
• Adjust bandwidth to achieve desired signal frequency:
- Too many crossings (>20): Increase bandwidth (2.5-3.5)
- Too few crossings (<5): Decrease bandwidth (1.2-1.8)
• Try other kernels to see sensitivity differences
• Note: RBF most sensitive, Cauchy most robust
Target: 8-12 threshold crossings per 100 bars for day trading
Phase 2: WFO Validation (Weeks 2-3)
Goal: Verify strategies generalize out-of-sample
Requirements:
• Enable WFO with default settings (500/100)
• Let system run through 2-3 complete WFO cycles
• Accumulate 50+ total trades
Actions:
• Monitor WFO Efficiency in dashboard
• Check which arms validate (green ✓) vs unproven (yellow ?)
• Review Train Q vs Test Q for selected arm
• If efficiency < 0.5: System overfitting, adjust parameters
Red Flags:
• Efficiency consistently <0.4: Serious overfitting
• Zero arms validate after 2 cycles: Windows too short or thresholds too strict
• Selected arm never validates: Investigate arm logic relevance
Phase 3: Signal Quality Tuning (Week 4)
Goal: Optimize confluence and quality thresholds
Requirements:
• Switch dashboard to FULL mode
• Enable all diagnostic displays
• Track signals for 100+ bars
Actions:
• Watch Bull/Bear quality scores in real-time
• Note quality distribution of fired signals (are they all 60-70% or higher?)
• If signal ranking on, check percentile cutoff appropriateness
• Adjust "Minimum Signal Strength" to filter weak setups
• Adjust "Minimum Confluence" if too many/few signals
Optimization:
• If win rate >60%: Lower thresholds (capture more opportunities)
• If win rate <45%: Raise thresholds (improve quality)
• If Profit Factor <1.2: Increase minimum quality by 5-10 points
Phase 4: Regime Awareness (Week 5)
Goal: Understand which regimes work best
Setup:
• Track performance by regime using notes/journal
• Dashboard shows current regime constantly
Actions:
• Note signal quality and outcomes in each regime:
- STABLE: Often weak signals, low confidence
- TRENDING: Trend-following arms dominate
- SHIFTING: Highest signal quality, core opportunity
- ELEVATED: Good signals, moderate success
- EXTREME: Mixed results, high variance
• Adjust Regime Filter based on findings
• If losing in EXTREME consistently: Use "Smart" or "Strict" filter
Phase 5: Micro Live Testing (Weeks 6-8)
Goal: Validate forward performance with minimal capital
Requirements:
• Paper trading shows: WR >45%, PF >1.2, Efficiency >0.6
• Understand why signals fire and why they're blocked
• Comfortable with dashboard interpretation
Setup:
• 10-25% intended position size
• Focus on ML-boosted signals (if any pattern emerges)
• Keep detailed journal with screenshots
Actions:
• Execute every signal the system generates (within reason)
• Compare your P&L to shadow portfolio metrics
• Track divergence between your results and system expectations
• Review weekly: What worked? What failed? Any execution issues?
Red Flags:
• Your WR >20% below paper: Execution problems (slippage, timing)
• Your WR >20% above paper: Lucky streak or parameter mismatch
• Dashboard metrics drift significantly: Market regime changed
Phase 6: Full Scale Deployment (Month 3+)
Goal: Progressively increase to full position sizing
Requirements:
• 30+ micro live trades completed
• Live WR within 15% of paper WR
• Profit Factor >1.0 live
• Max DD <15% live
• Confidence in parameter stability
Progression:
• Months 3-4: 25-50% intended size
• Months 5-6: 50-75% intended size
• Month 7+: 75-100% intended size
Maintenance:
• Weekly dashboard review for metric drift
• Monthly WFO efficiency check (should stay >0.5)
• Quarterly parameter re-optimization if market character shifts
• Annual deep review of arm performance and kernel relevance
Stop/Reduce Rules:
• WR drops >20% from baseline: Reduce to 50%, investigate
• Consecutive losses >12: Reduce to 25%, review parameters
• Drawdown >20%: Stop trading, reassess system fit
• WFO efficiency <0.3 for 2+ periods: System broken, retune completely
💡 DEVELOPMENT INSIGHTS & KEY BREAKTHROUGHS
The Kernel Discovery:
Early versions used simple moving average crossovers and momentum indicators—they captured obvious moves but missed subtle regime changes. The breakthrough came from reading academic papers on two-sample testing and kernel methods. Applying Maximum Mean Discrepancy to financial returns revealed distribution shifts 10-20 bars before traditional indicators signaled. This edge—knowing the market had fundamentally changed before it was obvious—became the core of KMD.
Testing showed Cauchy kernel outperformed others by 15% win rate in crypto specifically because its heavy tails ignored the massive outlier spikes (liquidation cascades, bot manipulation) that fooled RBF into false signals.
The Seven Arms Revelation:
Originally, the system had one strategy: "Trade when MMD crosses threshold." Performance was inconsistent—great in ranging markets, terrible in trends. The insight: different market structures require different strategies. Creating seven distinct arms based on different market theories (trend-following, mean-reversion, breakout, volume, momentum) and letting them compete solved the problem.
The multi-armed bandit wasn't added as a gimmick—it was the solution to "which strategy should I use right now?" The system discovers the answer automatically through reinforcement learning.
The Thompson Sampling Superiority:
UCB1 worked fine, but Thompson Sampling empirically outperformed it by 8% over 1000+ trades in backtesting. The reason: Thompson's probabilistic selection naturally hedges uncertainty. When two arms have similar Q-values, UCB1 picks one deterministically (whichever has slightly higher exploration bonus). Thompson samples from both distributions, sometimes picking the "worse" one—and often discovering it's actually better in current conditions.
Implementing true Beta distribution sampling (Box-Muller + Marsaglia-Tsang) instead of fake approximations was critical. Fake Thompson (using random with bias) underperformed UCB1. Real Thompson with proper Bayesian updating dominated.
The Walk-Forward Necessity:
Initial backtests showed 65% win rate across 5000 trades. Live trading: 38% win rate over first 100 trades. Crushing disappointment. The problem: overfitting. The training data included the test data (look-ahead bias). Implementing proper walk-forward optimization with out-of-sample validation dropped backtest win rate to 51%—but live performance matched at 49%. That's a system you can trust.
WFO efficiency metric became the North Star. If efficiency >0.7, live results track paper. If efficiency <0.5, prepare for disappointment.
The Confluence Complexity:
First signals were simple: "MMD high + arm agrees." This generated 200+ signals on 1000 bars with 42% win rate—not tradeable. Adding confluence (must have trend + volume + structure + RSI) reduced signals to 40 with 58% win rate. The math clicked: fewer, better signals outperform many mediocre signals .
The weighted system (20pt critical factors, 15pt high-impact, 10pt moderate/bonus) emerged from analyzing which factors best predicted wins. Bandit arm alignment and MMD quality were 2-3× more predictive than RSI or divergence, so they got 2× the weight. This isn't arbitrary—it's data-driven.
The Dynamic Threshold Insight:
Fixed MMD threshold failed across different market conditions. 0.15 worked perfectly on ES but fired constantly on Bitcoin. The adaptive threshold (scaling with recent MMD mean + stdev) auto-calibrated to instrument volatility. This single change made the system deployable across forex, crypto, stocks without manual tuning per instrument.
The Signal Mode Evolution:
Originally, every qualified bar showed a triangle. Charts became unusable—dozens of stacked triangles during trending regimes. "Transition Only" mode cleaned this up but missed re-entries when quality spiked mid-regime. "Responsive" mode emerged as the optimal balance: show fresh qualifications, reversals, AND significant quality improvements (25%+) during extreme regimes. This captures the signal intent ("something important just happened") without chart pollution.
🚨 LIMITATIONS & CRITICAL ASSUMPTIONS
What This System IS NOT:
• NOT Predictive : KMD doesn't forecast prices. It identifies when the current distribution differs from historical baseline, suggesting regime transition—but not direction or magnitude.
• NOT Holy Grail : Typical performance is 48-56% win rate with 1.3-1.8 avg R-multiple. This is a probabilistic edge, not certainty. Expect losing streaks of 8-12 trades.
• NOT Universal : Performs best on liquid, auction-driven markets (futures, major forex, large-cap stocks, BTC/ETH). Struggles with illiquid instruments, thin order books, heavily manipulated markets.
• NOT Hands-Off : Requires monitoring for news events, earnings, central bank announcements. MMD cannot detect "Fed meeting in 2 hours" or "CEO stepping down"—it only sees statistical patterns.
• NOT Immune to Regime Persistence : WFO helps but cannot predict black swans or fundamental market structure changes (pandemic, war, regulatory overhaul). During these events, all historical patterns may break.
Core Assumptions:
1. Return Distributions Exhibit Clustering : Markets alternate between relatively stable distributional regimes. Violation: Permanent random walk, no regime structure.
2. Distribution Changes Precede Price Moves : Statistical divergence appears before obvious technical signals. Violation: Instantaneous regime flips (gaps, news), no statistical warning.
3. Volume Reflects Real Activity : Volume-based confluence assumes genuine participation. Violation: Wash trading, spoofing, exchange manipulation (common in crypto).
4. Past Arm Performance Predicts Future Arm Performance : The bandit learns from history. Violation: Fundamental strategy regime change (e.g., market transitions from mean-reverting to trending permanently).
5. ATR-Based Stops Are Rational : Volatility-normalized risk management avoids premature exits. Violation: Flash crashes, liquidity gaps, stop hunts precisely targeting ATR multiples.
6. Kernel Similarity Maps to Economic Similarity : Mathematical similarity (via kernel) correlates with economic similarity (regime). Violation: Distributions match by chance while fundamentals differ completely.
Performs Best On:
• ES, NQ, RTY (S&P 500, Nasdaq, Russell 2000 futures)
• Major forex pairs: EUR/USD, GBP/USD, USD/JPY, AUD/USD
• Liquid commodities: CL (crude oil), GC (gold), SI (silver)
• Large-cap stocks: AAPL, MSFT, GOOGL, TSLA (>$10M avg daily volume)
• Major crypto on reputable exchanges: BTC, ETH (Coinbase, Kraken)
Performs Poorly On:
• Low-volume stocks (<$1M daily volume)
• Exotic forex pairs with erratic spreads
• Illiquid crypto altcoins (manipulation, unreliable volume)
• Pre-market/after-hours (thin liquidity, gaps)
• Instruments with frequent corporate actions (splits, dividends)
• Markets with persistent one-sided intervention (central bank pegs)
Known Weaknesses:
• Lag During Instantaneous Shifts : MMD requires (test_window) bars to detect regime change. Fast-moving events (5-10 bar crashes) may bypass detection entirely.
• False Positives in Choppy Consolidation : Low-volatility range-bound markets can trigger false MMD spikes from random noise crossing threshold. Regime filter helps but doesn't eliminate.
• Parameter Sensitivity : Small bandwidth changes (2.0→2.5) can alter signal frequency by 30-50%. Requires careful calibration per instrument.
• Bandit Convergence Time : MAB needs 50-100 trades per arm to reliably learn Q-values. Early trades (first 200 bars) are essentially random exploration.
• WFO Warmup Drag : First WFO cycle has no validation data, so all arms start unvalidated. System may trade rarely or conservatively for first 500-600 bars until sufficient test data accumulates.
• Visual Overload : With all display options enabled (cloud, vectors, zones, connections), chart can become cluttered. Disable selectively for cleaner view.
⚠️ RISK DISCLOSURE
Trading futures, forex, stocks, options, and cryptocurrencies involves substantial risk of loss and is not suitable for all investors. Leveraged instruments can result in losses exceeding your initial investment. Past performance, whether backtested or live, is not indicative of future results.
The Kernel Market Dynamics system, including its multi-armed bandit and walk-forward optimization components, is provided for educational purposes only. It is not financial advice, investment advice, or a recommendation to buy or sell any security or instrument.
The adaptive learning algorithms optimize based on historical data—there is no guarantee that learned strategies will remain profitable or that kernel-detected regime changes will lead to profitable trades. Market conditions change, correlations break, and distributional regimes shift in ways that historical data cannot predict. Black swan events occur.
Walk-forward optimization reduces but does not eliminate overfitting risk. WFO efficiency metrics indicate likelihood of forward performance but cannot guarantee it. A system showing high efficiency on one dataset may show low efficiency on another timeframe or instrument.
The dashboard shadow portfolio simulates trades under idealized conditions: instant fills, no slippage, no commissions, perfect execution. Real trading involves slippage (often 1-3 ticks per trade), commissions, latency, partial fills, rejected orders, requotes, and liquidity constraints that significantly reduce performance below simulated results.
Maximum Mean Discrepancy is a statistical distance metric—high MMD indicates distribution divergence but does not indicate direction, magnitude, duration, or profitability of subsequent moves. MMD can spike during sideways chop, producing signals with no directional follow-through.
Users must independently validate system performance on their specific instruments, timeframes, broker execution, and market conditions before risking capital. Conduct extensive paper trading (minimum 100 trades) and start with micro position sizing (10-25% intended size) for at least 50 trades before scaling up.
Never risk more capital than you can afford to lose completely. Use proper position sizing (1-2% risk per trade maximum). Implement stop losses on every trade. Maintain adequate margin/capital reserves. Understand that most retail traders lose money. Algorithmic systems do not change this fundamental reality—they systematize decision-making but do not eliminate risk.
The developer makes no warranties regarding profitability, suitability, accuracy, reliability, or fitness for any particular purpose. Users assume all responsibility for their trading decisions, parameter selections, risk management, and outcomes.
By using this indicator, you acknowledge that you have read and understood these risk disclosures and accept full responsibility for all trading activity and potential losses.
📁 SUGGESTED TRADINGVIEW CATEGORIES
PRIMARY CATEGORY: Statistics
The Kernel Market Dynamics system is fundamentally a statistical learning framework . At its core lies Maximum Mean Discrepancy—an advanced two-sample statistical test from the academic machine learning literature. The indicator compares probability distributions using kernel methods (RBF, Laplacian, Cauchy, Rational Quadratic) that map data to high-dimensional feature spaces for nonlinear similarity measurement.
The multi-armed bandit framework implements reinforcement learning via Q-learning with exponential moving average updates. Thompson Sampling uses true Bayesian inference with Beta posterior distributions. Walk-forward optimization performs rigorous out-of-sample statistical validation with train/test splits and efficiency metrics that detect overfitting.
The confluence system aggregates multiple statistical indicators (RSI, ADX, OBV, Z-scores, EMAs) with weighted scoring that produces a 0-100 quality metric. Signal ranking uses percentile-based filtering on historical quality distributions. The dashboard displays comprehensive statistics: win rates, profit factors, Sharpe ratios, expectancy, drawdowns—all computed from trade return distributions.
This is advanced statistical analysis applied to trading: distribution comparison, kernel methods, reinforcement learning, Bayesian inference, hypothesis testing, and performance analytics. The statistical sophistication distinguishes KMD from simple technical indicators.
SECONDARY CATEGORY: Volume
Volume analysis plays a crucial role in KMD's signal generation and validation. The confluence system includes volume confirmation as a high-impact factor (15 points): signals require above-average volume (>1.2× mean) for full points, with scaling based on volume ratio. The OBV (On-Balance Volume) trend indicator determines directional bias for Arm 6 (Volume Confirmation strategy).
Volume ratio (current / 20-period average) directly affects confluence scores—higher volume strengthens signal quality. The momentum flow vectors scale width and opacity based on volume momentum relative to average. Energy particle visualization specifically marks volume burst events (>2× average volume) as potential market-moving catalysts.
Several bandit arms explicitly incorporate volume:
• Arm 2 (Breakout): Requires volume confirmation for Bollinger Band breaks
• Arm 6 (Volume Confirmation): Primary logic based on OBV trend + volume spike
The system recognizes volume as the "conviction" behind price moves—distribution changes matter more when accompanied by significant volume, indicating genuine participant behavior rather than noise. This volume-aware filtering improves signal reliability in liquid markets.
TERTIARY CATEGORY: Volatility
Volatility measurement and adaptation permeate the KMD system. ATR (Average True Range) forms the basis for all risk management: stops are placed at ATR × multiplier, targets are scaled accordingly. The adaptive bandwidth feature scales kernel bandwidth (0.5-2.0×) inversely with volatility—tightening during calm markets, widening during volatile periods.
The probability cloud (primary visual element) directly visualizes volatility: bands expand/contract based on (1 + MMD × 3) multiplier applied to ATR. Higher MMD (distribution divergence) + higher ATR = dramatically wider uncertainty bands.
Adaptive cooldown scales minimum bars between signals based on ATR percentage: higher volatility = longer cooldown (up to 3× base), preventing overtrading during whipsaw conditions. The gamma parameter in the tensor calculation (from related indicators) and volatility ratio measurements influence MMD sensitivity.
Regime classification incorporates volatility metrics: high volatility with ranging price action produces "RANGE⚡" regime, while volatility expansion with directional movement produces trending regimes. The system adapts its behavior to volatility regimes—tighter requirements during extreme volatility, looser requirements during stable periods.
ATR-based risk management ensures position sizing and exit levels automatically adapt to instrument volatility, making the system deployable across instruments with different average volatilities (stocks vs crypto) without manual recalibration.
══════════════════════════════════════════
CLOSING STATEMENT
══════════════════════════════════════════
Kernel Market Dynamics doesn't just measure price—it measures the probability structure underlying price. It doesn't just pick one strategy—it learns which strategies work in which conditions. It doesn't just optimize on history—it validates on the future.
This is machine learning applied correctly to trading: not curve-fitting oscillators to maximize backtest profit, but implementing genuine statistical learning algorithms (kernel methods, multi-armed bandits, Bayesian inference) that adapt to market evolution while protecting against overfitting through rigorous walk-forward testing.
The seven arms compete. The Thompson sampler selects. The kernel measures. The confluence scores. The walk-forward validates. The signals fire.
Most indicators tell you what happened. KMD tells you when the game changed.
"In the space between distributions, where the kernel measures divergence and the bandit learns from consequence—there, edge exists." — KMD-WFO-MAB v2
Taking you to school. — Dskyz, Trade with insight. Trade with anticipation.
Tìm kiếm tập lệnh với "weekly"
COT Net Positions by Luis TrompeterCOT Net Positions by Luis Trompeter visualizes the net positioning of different trader groups based on the weekly Commitments of Traders (COT) reports published by the CFTC every Friday.
The indicator processes the raw COT data by calculating Long positions minus Short positions for each trader category. This results in the net position of every group per report.
The script then plots these net positions continuously over time, based on every available COT release. This creates a clear and easy-to-read visualization of how different market participants are positioned.
The indicator displays the three primary COT categories:
• Commercials
• Non-Commercials
• Non-Reportables
By observing how these trader groups shift their positioning, traders can better understand market sentiment and identify potential directional biases or changes in underlying market pressure.
This tool is designed to help traders incorporate positioning data into their analysis and to better interpret how institutional and speculative flows evolve over time.
This indicator is intended to be used exclusively on the weekly timeframe.
COT data is published once per week by the CFTC and therefore only updates weekly.
Using this script on lower timeframes may result in misleading visualization or irregular spacing between data points.
For correct interpretation, please apply it on 1W charts only.
ICT HTF Volume Candles (Based on HTF Candles by Fadi)# ICT HTF Volume Candles - Multi-Timeframe Volume Analysis
## Overview
This indicator provides multi-timeframe volume visualization designed to complement price action analysis. It displays volume data from up to 6 higher timeframes simultaneously in a separate panel, allowing traders to identify volume spikes, divergences, and institutional activity without switching between timeframes.
**Original Concept Credits:** This indicator builds upon the HTF Candles framework by Fadi, adapting it specifically for volume analysis with enhanced features including gap-filling for extended hours, multiple scaling methods, and advanced synchronization.
## What Makes This Script Original
### Key Innovations:
1. **Three Volume Scaling Methods:**
- **Per-HTF Auto Scale:** Each timeframe scales independently for detailed comparison
- **Global Auto Scale:** All timeframes use unified scale for relative volume comparison
- **Manual Scale:** User-defined maximum for consistent analysis across sessions
2. **Bullish/Bearish Volume Differentiation:**
- Volume bars colored based on price movement (close vs open)
- Separate styling for bullish (green) and bearish (red) volume periods
- Helps identify whether volume supports price direction
3. **Advanced Time Synchronization:**
- Custom daily candle open times (Midnight, 8:30 AM, 9:30 AM ET)
- Timezone-aware calculations for New York trading hours
- Real-time countdown timers for each timeframe
- **Gap-filling technology** for continuous display during extended hours and weekends
4. **Flexible Display Options:**
- Configurable spacing and positioning
- Label placement (top, bottom, or both)
- Day-of-week or time interval labels on candles
- Works reliably in backtesting and live trading
## How It Works
### Volume Calculation
The indicator uses `request.security()` with optimized parameters to fetch volume data from higher timeframes:
- **Volume Open/High/Low/Close (OHLC):** Tracks volume changes within each HTF candle
- **Color Logic:** Compares HTF close vs open prices to determine bullish/bearish classification
- **Alignment:** All volume bars share a common baseline for easy visual comparison
- **Gap Handling:** Uses `gaps=barmerge.gaps_off` to maintain continuity during non-trading hours
### Technical Implementation
```
1. Monitors HTF timeframe changes using request.security() with lookahead
2. Creates new VolumeCandle object when HTF bar opens
3. Updates current candle's volume H/L/C on each chart bar
4. Applies selected scaling method to normalize display height
5. Repositions all candles and labels on each bar update
6. Fills gaps automatically during extended hours for consistent display
```
### Scaling Methods Explained
**Method 1 - Auto Scale per HTF:**
Each timeframe displays volume relative to its own maximum. Best for identifying patterns within each individual timeframe.
**Method 2 - Global Auto Scale:**
All timeframes share the same scale based on the highest volume across all HTFs. Best for comparing relative volume strength between timeframes.
**Method 3 - Manual Scale:**
User sets maximum volume value. Best for maintaining consistent scale across different trading sessions or instruments.
## How to Use This Indicator
### Setup
1. Add indicator to your chart (it appears in a separate panel below price)
2. Configure up to 6 higher timeframes (default: 5m, 15m, 1H, 4H, 1D, 1W)
3. Set number of candles to display for each timeframe
4. Choose volume scaling method based on your analysis needs
5. Enable "Fix gaps in non-trading hours" for extended hours trading (enabled by default)
### Interpretation
**Volume Spikes:**
- Sudden increase in volume height indicates institutional activity or strong conviction
- Compare volume between timeframes to identify where the real money is moving
- Look for volume spikes that appear across multiple timeframes simultaneously
**Bullish vs Bearish Volume:**
- **Green volume bars:** Price closed higher (buying pressure)
- **Red volume bars:** Price closed lower (selling pressure)
- High green volume during uptrend = confirmation of strength
- High red volume during downtrend = confirmation of weakness
- High volume opposite to trend = potential reversal warning
**Multi-Timeframe Context:**
- **5m/15m:** Scalping and day trading activity
- **1H/4H:** Swing trading and intraday institutional flows
- **Daily/Weekly:** Major position building and long-term trends
**Divergences:**
- Price making new highs but volume declining = weakening trend
- Volume increasing while price consolidates = potential breakout brewing
- Price breaks level but volume doesn't confirm = likely false breakout
### Practical Examples
**Example 1 - Institutional Confirmation:**
Price breaks above resistance. Check volume across timeframes:
- 5m shows spike = retail interest
- 15m + 1H + 4H all show spikes = institutional confirmation
- **Trade confidence: HIGH**
**Example 2 - False Breakout Detection:**
Price breaks resistance with:
- High volume on 5m only
- Normal/low volume on 1H and 4H
- **Interpretation:** Likely retail trap, institutions not participating
- **Action:** Wait for pullback or avoid
**Example 3 - Accumulation Phase:**
Price ranges sideways but:
- Daily volume gradually increasing
- Weekly volume above average
- **Interpretation:** Smart money accumulating
- **Action:** Prepare for breakout in direction of volume
**Example 4 - Volume Divergence:**
Price makes new high:
- Current high has lower volume than previous high across all timeframes
- **Interpretation:** Weakening momentum
- **Action:** Consider profit-taking or reversal trade
## Configuration Parameters
### Timeframe Settings
- **HTF 1-6:** Select timeframes (must be higher than chart timeframe)
- **Max Display:** Number of candles to show per timeframe (1-50)
- **Limit to Next HTFs:** Display only first N enabled timeframes (1-6)
### Styling
- **Bull/Bear Colors:** Separate colors for body, border, and wick
- **Padding from current candles:** Distance offset from live price action
- **Space between candles:** Gap between individual volume bars
- **Space between Higher Timeframes:** Gap between different timeframe groups
- **Candle Width:** Thickness of volume bars (1-4, multiplied by 2)
### Volume Settings
- **Volume Scale Method:** Choose 1, 2, or 3
- 1 = Auto Scale per HTF (each TF independent)
- 2 = Global Auto Scale (all TF unified)
- 3 = Manual Scale (user-defined max)
- **Auto Scale Volume:** Enable/disable automatic scaling
- **Manual Scale Max Volume:** Set maximum when using Method 3
### Label Settings
- **HTF Label:** Show/hide timeframe names with color and size options
- **Label Positions:** Display at Top, Bottom, or Both
- **Label Alignment:** Align centered or Follow Candles
- **Remaining Time:** Show countdown timer until next HTF candle
- **Interval Value:** Display day-of-week or time on each candle
### Custom Daily Candle
- **Enable Custom Daily:** Override default daily candle timing
- **Open Time Options:**
- **Midnight:** Standard 00:00 ET daily open
- **8:30 AM:** Align with economic data releases
- **9:30 AM:** Align with NYSE market open
- Useful for specific trading strategies or market alignment
### Advanced Settings
- **Fix gaps in non-trading hours:** Maintains alignment during extended hours and weekends (recommended: ON)
- Prevents visual gaps during forex weekend closures
- Ensures consistent display during crypto 24/7 trading
- Improves backtesting reliability
## Best Practices
1. **Pair with Price Action:** Use alongside HTF price candles indicator for complete picture
2. **Start Simple:** Enable 2-3 timeframes initially (e.g., 15m, 1H, 4H), add more as needed
3. **Match Settings:** Use same candle width/spacing as companion price indicator for visual alignment
4. **Scale Appropriately:**
- Use **Global scale** (Method 2) when comparing timeframes
- Use **Per-HTF scale** (Method 1) for pattern analysis within each timeframe
- Use **Manual scale** (Method 3) for consistent day-to-day comparison
5. **Watch for Volume Clusters:** High volume appearing simultaneously across multiple HTFs signals significant market events
6. **Confirm Breakouts:** Always check if volume supports the price movement across higher timeframes
7. **Extended Hours:** Keep "Fix gaps" enabled for 24/7 markets (Forex, Crypto) and weekend analysis
## Technical Notes
- **Timezone:** All calculations use America/New_York timezone for consistency
- **Real-time Updates:** Volume and timers update on each tick during market hours
- **Performance:** Optimized with max_bars_back=5000 for extensive historical analysis
- **Compatibility:** Works on all instruments with volume data (Stocks, Forex, Crypto, Futures)
- **Gap Handling:** Uses `barmerge.gaps_off` to fill data gaps during non-trading periods
- **Backtesting:** Uses `lookahead=barmerge.lookahead_on` for stable historical data without repainting
- **Data Continuity:** Automatically handles market closures, weekends, and extended hours
## Updates & Improvements
**Version 2.0 (Current):**
- ✅ Fixed alignment issues during extended hours and weekends
- ✅ Eliminated repainting in backtesting
- ✅ Added gap-filling technology for continuous display
- ✅ Improved data synchronization across all timeframes
- ✅ Enhanced NA value handling for data integrity
- ✅ Added advanced settings group for user control
## Support
For questions, suggestions, or feedback, please comment on the publication or message the author.
---
**Disclaimer:** This indicator is for educational and informational purposes only. It does not constitute financial advice. Past performance is not indicative of future results. Always perform your own analysis and implement proper risk management before making trading decisions.
ATR Extension from Moving Average, with Robust Sigma Bands
# ATR Extension from Moving Average, with Robust Sigma Bands
**What it does**
This indicator measures how far price is from a selected moving average, expressed in **ATR multiples**, then overlays **robust sigma bands** around the long run central tendency of that extension. Positive values mean price is extended above the MA, negative values mean price is extended below the MA. The signal adapts to volatility through ATR, which makes comparisons consistent across symbols and regimes.
**Why it can help**
* Normalizes distance to an MA by ATR, which controls for changing volatility
* Uses the **bar’s extreme** against the MA, not just the close, so it captures true stretch
* Computes a **median** and **standard deviation** of the extension over a multi-year window, which yields simple, intuitive bands for trend and mean-reversion decisions
---
## Inputs
* **MA length**: default 50, options 200, 64, 50, 20, 9, 4, 3
* **MA timeframe**: Daily or Weekly. The MA is computed on the chosen higher timeframe through `request.security`.
* **MA type**: EMA or SMA
* **Years lookback**: 1 to 10 years, default 5. This sets the sample for the median and sigma calculation, `years * 365` bars.
* **Line width**: visual width of the plotted extension series
* **Table**: optional on-chart table that displays the current long run **median** and **sigma** of the extension, with selectable text size
**Fixed parameters in this release**
* **ATR length**: 20 on the daily timeframe
* **ATR type**: classic ATR. ADR percent is not enabled in this version.
---
## Plots and colors
* **Main plot**: “Extension from 50d EMA” by default. Value is in **ATR multiples**.
* **Reference lines**:
* `median` line, black dashed
* +2σ orange, +3σ red
* −2σ blue, −3σ green
---
## How it is calculated
1. **Moving average** on the selected higher timeframe: EMA or SMA of `close`.
2. **Extreme-based distance** from MA, as a percent of price:
* If `close > MA`, use `(high − MA) / close * 100`
* Else, use `(low − MA) / close * 100`
3. **ATR percent** on the daily timeframe: `ATR(20) / close * 100`
4. **ATR multiples**: extension percent divided by ATR percent
5. **Robust center and spread** over the chosen lookback window:
* Center: **median** of the ATR-multiple series
* Spread: **standard deviation** of that series
* Bands: center ± 1σ, 2σ, 3σ, with 2σ and 3σ drawn
This design yields an intuitive unit scale. A value of **+2.0** means price is about 2 ATR above the selected MA by the most stretched side of the current bar. A value of **−3.0** means roughly 3 ATR below.
---
## Practical use
* **Trend continuation**
* Sustained readings near or above **+1σ** together with a rising MA often signal healthy momentum.
* **Mean reversion**
* Spikes into **±2σ** or **±3σ** can identify stretched conditions for fade setups in range or late-trend environments.
* **Regime awareness**
* The **median** moves slowly. When median drifts positive for many months, the market spends more time extended above the MA, which often marks bullish regimes. The opposite applies in bearish regimes.
**Notes**
* The MA can be set to Weekly while ATR remains Daily. This is deliberate, it keeps the normalization stable for most symbols.
* On very short intraday charts, the extension remains meaningful since it references the session’s extreme against a higher-timeframe MA and a daily ATR.
* Symbols with short histories may not fill the lookback window. Bands will adapt as data accrues.
---
## Table overlay
Enable **Table → Show** to see:
* “ATR from \”
* Current **median** and **sigma** of the extension series for your lookback
---
## Recommended settings
* **Swing equities**: 50 EMA on Daily, 5 to 7 years
* **Index trend work**: 200 EMA on Daily, 10 years
* **Position trading**: 20 or 50 EMA on Weekly MA, 5 to 10 years
---
## Interpretation examples
* Reading **+2.7** with price above a rising 50 EMA, near prior highs
* Strong trend extension, consider pyramiding in trend systems or waiting for a pullback if you are a mean-reverter.
* Reading **−2.2** into multi-month support with flattening MA
* Stretch to the downside that often mean-reverts, size entries based on your system rules.
---
## Credits
The concept of measuring stretch from a moving average in ATR units has a rich community history. This implementation and its presentation draw on ideas popularized by **Jeff Sun**, **SugarTrader**, and **Steve D Jacobs**. Thanks to each for their contributions to ATR-based extension thinking.
---
## License
This script and description are distributed under **MPL-2.0**, consistent with the header in the source code.
---
## Changelog
* **v1.0**: Initial public release. Daily ATR normalization, EMA or SMA on D or W timeframe, robust median and sigma bands, optional table.
---
## Disclaimer
This tool is for educational use only. It is not financial advice. Always test on your own data and strategies, then manage risk accordingly.
Fundur - Market Sentiment BIndicator Overview
The Market Sentiment B indicator is a sophisticated multi-timeframe momentum oscillator that provides comprehensive market analysis through advanced wave theory and sentiment measurement. Unlike traditional single-timeframe indicators, Market Sentiment B analyzes 11 different timeframes simultaneously to create a unified view of market momentum and sentiment.
What Makes Market Sentiment B Unique
Multi-Timeframe Convergence : The indicator combines data from 11 different periods (8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987) based on mathematical sequences that naturally occur in market cycles.
Advanced Wave Analysis : The histogram component tracks momentum waves with precise peak and trough identification, allowing traders to spot both major moves and smaller precursor waves.
Sentiment Extremes Detection : When all 11 timeframes reach extreme levels simultaneously, the indicator highlights these rare conditions with background coloring, signaling potential major reversals.
Dynamic Zone Analysis : The indicator divides market conditions into Premium (80+), Discount (20-), and Liquidity zones (40-60), providing clear context for trade entries and exits.
Core Components
1. Market Sentiment B Line (Main Signal)
The primary oscillator line that represents the averaged sentiment across all timeframes. This line uses advanced mathematical filtering to smooth out noise while preserving important trend changes.
Key Features:
Oscillates between 0-100
Color-coded: Green when rising, Red when falling
Shows divergences with colored dots
Premium zone: 80+, Discount zone: 20-
2. Momentum Waves (Secondary Signal)
A smoothed version of the Market Sentiment B line that acts as a trend-following component. This line helps identify the underlying momentum direction.
Key Features:
Blue coloring during bullish expansion (above 50 and rising)
Orange coloring during bearish expansion (below 50 and falling)
Filled areas show expansion and contraction phases
Critical 50-line crossovers signal momentum shifts
3. Histogram (Wave Analysis)
The difference between Market Sentiment B and Momentum Waves, displayed as a histogram that reveals the relationship between current sentiment and underlying momentum.
Key Features:
Green bars: Positive momentum (Market Sentiment above Momentum Waves)
Red bars: Negative momentum (Market Sentiment below Momentum Waves)
Wave height labels show the strength of each wave
Divergence patterns identify potential reversals
4. Divergence System
Advanced divergence detection that identifies both regular and hidden divergences, with special "Golden Divergences" for the strongest signals.
Types:
Regular Divergences : Price makes new highs/lows while indicator doesn't
Hidden Divergences : Continuation patterns in trending markets
Golden Divergences : High-probability reversal signals (orange dots)
5. Zone Analysis
The indicator divides market conditions into distinct zones:
Premium Zone (80-100) : Potential selling area
Liquidity Zone (40-60) : Neutral/consolidation area (highlighted in orange)
Discount Zone (0-20) : Potential buying area
Extreme Conditions : Background coloring when all timeframes align
Setup Guide
Initial Installation
Open TradingView and navigate to your desired chart
Click the "Indicators" button or press "/" key
Search for "Fundur - Market Sentiment B"
Click on the indicator to add it to your chart
The indicator will appear in a separate pane below your chart
Essential Settings Configuration
Main Settings
Show Histogram Wave Values : Enable to see wave strength numbers
Wave Value Text Size : Choose from tiny, small, normal, or large
Wave Label Offset : Adjust label positioning (default: 2)
Market Sentiment Thresholds
Only Show Indicators at Market Sentiment Extremes : Filter signals to extreme zones only
Extreme levels are automatically set at 80 (high) and 20 (low)
Small Wave Strategy
Enable Small Wave Swing Strategy : Focus on smaller, early-warning waves
Small Wave Label Color : Customize the color for small wave labels
Divergence Analysis
Show Regular Divergences : Enable standard divergence detection
Show Gold Divergence Dots : Enable high-probability golden signals
Show Divergence Dots : Show all divergence markers
Histogram Settings
Enable Histogram : Toggle the histogram display
Divergence Types : Choose which types to display (Bullish/Bearish Reversals and Continuations)
Recommended Initial Setup
Enable all main components (Histogram, Divergences, Momentum Waves)
Set wave value text size to "small" for clarity
Enable golden divergence dots for premium signals
Start with all alert categories enabled, then customize based on your trading style
Basic Trading Guide
Understanding the Zones
Premium Zone Trading (80-100)
When to Consider Selling:
Market Sentiment B enters 80+ zone
Bearish divergences appear
Histogram shows weakening momentum (smaller green waves)
Background turns red (extreme conditions)
What to Look For:
Bearish pivot signals (orange triangles pointing down)
Golden divergence dots at tops
Momentum Waves turning bearish
Discount Zone Trading (0-20)
When to Consider Buying:
Market Sentiment B enters 0-20 zone
Bullish divergences appear
Histogram shows strengthening momentum (smaller red waves)
Background turns green (extreme conditions)
What to Look For:
Bullish pivot signals (blue triangles pointing up)
Golden divergence dots at bottoms
Momentum Waves turning bullish
Liquidity Zone Trading (40-60)
Consolidation and Breakout Zone:
Orange-filled area indicates neutral sentiment
Wait for clear breaks above 60 or below 40
Use for range-bound trading strategies
Look for momentum wave direction changes
Key Signal Types
1. Zone Crossovers
Above 60 : Bullish momentum building
Below 40 : Bearish momentum building
50-line crosses : Primary trend changes
2. Divergence Signals
Golden dots : Strongest reversal signals that align accross different timeframes
Colored dots : Standard divergence warnings
Hidden divergences : Trend continuation signals
3. Histogram Patterns
Increasing green bars : Building bullish momentum
Increasing red bars : Building bearish momentum
Smaller waves : Early warning signals of deteriorating interest
Basic Entry Rules
Long Entries
Market Sentiment B in discount zone (0-20) OR
Bullish divergence confirmed OR
Break above 40 from oversold conditions OR
Golden divergence dot at bottom
Short Entries
Market Sentiment B in premium zone (80-100) OR
Bearish divergence confirmed OR
Break below 60 from overbought conditions OR
Golden divergence dot at top
Exit Rules
Exit longs when entering premium zone
Exit shorts when entering discount zone
Close positions on opposite divergence signals
Use histogram wave tops/bottoms for fine-tuning exits
Advanced Analysis Setups
Setup 1: Scalping Configuration
Purpose : Quick intraday trades focusing on small moves
Settings :
Enable Small Wave Strategy
Show indicators only at extremes: OFF
Combine multiple alerts: ON
Focus on 1-5 minute timeframes
Signals to Watch :
Small wave histogram peaks/troughs
Quick zone crossovers (40/60 line breaks)
Momentum wave direction changes
Short-term divergences
Setup 2: Swing Trading Configuration
Purpose : Medium-term trend following and reversal trading
Settings :
Show indicators only at extremes: ON
Enable all divergence types
Focus on 15-minute to 4-hour timeframes
Golden divergence alerts: HIGH priority
Signals to Watch :
Premium/discount zone entries
Golden divergence signals
Extreme condition backgrounds
Major histogram wave formations
Setup 3: Position Trading Configuration
Purpose : Long-term trend identification and major reversal spots
Settings :
Only alert in extremes: ON
Focus on golden divergences only
Use daily and weekly timeframes
Minimize noise with extreme filtering
Signals to Watch :
Extreme condition backgrounds (red/green)
Major golden divergence signals
Long-term momentum wave trends
Weekly/monthly zone transitions
Setup 4: Reversal Hunting Configuration
Purpose : Catching major market turns at key levels
Settings :
Enable all divergence types
Show golden divergence dots: ON
Extreme filtering: ON
Small wave strategy: OFF
Signals to Watch :
Multiple divergence confirmations
Golden divergence + extreme zones
All-timeframe extreme conditions
Major histogram wave exhaustion
Setup 5: Trend Following Configuration
Purpose : Riding momentum in established trends
Settings :
Momentum waves: HIGH priority
Hidden divergences: ON
Continuation patterns focus
Zone crossover alerts
Signals to Watch :
Momentum wave expansion phases
Hidden divergence continuations
Liquidity zone breakouts
Sustained momentum patterns
Alert System
The Market Sentiment B indicator features a comprehensive alert system with over 30 different alert types organized into logical categories.
Alert Categories
Market Sentiment B Line Alerts
Golden Divergences : Highest priority reversal signals
Standard Divergences : Regular divergence patterns
Bearish/Bullish Pivots : Momentum pivot points
Premium/Discount Zone : Zone entry/exit alerts
Extreme Conditions : Rare all-timeframe extremes
Liquidity Zone : 40-60 zone movement alerts
Momentum Waves Alerts
Premium/Discount Zones : 80+/20- level alerts
Liquidity Zone Movement : 40-60 zone alerts
Expansion Phases : Bullish/bearish expansion alerts
Direction Changes : 50-line crossover alerts
Cross Alerts : MSB vs Momentum crossovers
Histogram Alerts
State Changes : Bullish/bearish turns
Peak/Trough Detection : Wave top/bottom alerts
Divergence Alerts : Histogram-specific divergences
Hidden Divergences : Continuation pattern alerts
Smaller Wave Alerts : Early warning signals
Alert Configuration Tips
For Day Trading
Enable quick state change alerts
Focus on histogram and small wave alerts
Use combined alerts to reduce noise
Disable extreme-only filtering
For Swing Trading
Enable zone crossover alerts
Focus on divergence and pivot alerts
Use extreme-only filtering
Prioritize golden divergence alerts
For Position Trading
Enable only golden divergences and extreme conditions
Use extreme-only filtering
Focus on major zone transitions
Disable minor wave alerts
Trading Strategies
Strategy 1: Premium/Discount Zone Reversal
Setup : Wait for Market Sentiment B to reach extreme zones
Entry :
Long: Enter discount zone (0-20) with bullish divergence
Short: Enter premium zone (80-100) with bearish divergence
Exit : Opposite zone reached or momentum wave reversal
Risk Management : Stop loss at recent swing high/low
Strategy 2: Golden Divergence Power Plays
Setup : Wait for golden divergence dots to appear
Entry : Enter in direction opposite to divergence (reversal play)
Confirmation : Wait for momentum wave to confirm direction
Exit : When sentiment reaches opposite zone
Risk Management : Tight stops below/above divergent pivot
Strategy 3: Momentum Wave Trend Following
Setup : Identify strong momentum wave expansion phases
Entry : Enter on pullbacks to 50-line during expansion
Continuation : Hold while expansion phase continues
Exit : When expansion phase ends or opposite expansion begins
Risk Management : Trail stops using wave peaks/troughs
Strategy 4: Small Wave Early Entry
Setup : Enable Small Wave Strategy for early signals
Entry : Enter on small wave formations before major moves
Confirmation : Wait for main sentiment line to follow
Exit : When major wave forms or opposite signal appears
Risk Management : Quick exits if main indicator doesn't confirm
Strategy 5: Extreme Condition Contrarian
Setup : Wait for background color changes (extreme conditions)
Entry : Counter-trend when ALL timeframes are extreme
Confirmation : Look for early divergence signs
Exit : When background color disappears
Risk Management : Position size smaller due to counter-trend nature
FAQ & Troubleshooting
Frequently Asked Questions
Q: Why don't I see any signals on my chart?
A: Check if "Only Show Indicators at Market Sentiment Extremes" is enabled. If so, signals only appear when the indicator is above 80 or below 20.
Q: What's the difference between golden and standard divergences?
A: Golden divergences (orange dots) are higher-probability signals that meet additional criteria for strength and momentum alignment. Standard divergences are regular price/indicator disagreements.
Q: How do I reduce alert noise?
A: Enable "Only Alert In Extremes" in the alert settings, or use "Combine Multiple Alerts" to consolidate multiple signals into single messages.
Q: What timeframe works best with this indicator?
A: The indicator works on all timeframes. For day trading, use 1-15 minutes. For swing trading, use 1-4 hours. For position trading, use daily or weekly.
Q: Why are the histogram wave values important?
A: Wave values show the strength of momentum. Declining wave values (smaller peaks) often precede trend changes, while increasing values confirm trend strength.
Troubleshooting Common Issues
Issue: Indicator not loading
Solution: Ensure you're using TradingView Pro or higher
Check that max_bars_back is set appropriately
Refresh the chart and re-add the indicator
Issue: Too many alerts firing
Solution: Enable extreme-only filtering
Disable less important alert categories
Use combined alerts feature
Issue: Missing divergence signals
Solution: Check that divergence detection is enabled
Ensure you're looking in the correct zones
Verify that extreme filtering isn't hiding signals
Issue: Histogram not displaying
Solution: Check that "Enable Histogram" is turned ON
Verify histogram divergence types are enabled
Ensure the chart has sufficient historical data
Best Practices
Start Simple : Begin with basic zone trading before using advanced features
Paper Trade First : Test strategies with paper trading before risking capital
Combine with Price Action : Use the indicator alongside support/resistance levels
Respect Risk Management : Never risk more than you can afford to lose
Keep Learning : Market conditions change; adapt your usage accordingly
Performance Optimization
Use appropriate timeframes for your trading style
Enable only necessary alert types
Consider using extreme filtering during high-volatility periods
Regularly review and adjust settings based on market conditions
Conclusion
The Market Sentiment B indicator represents a sophisticated approach to market analysis, combining multiple timeframes, advanced wave theory, and comprehensive divergence detection into a single powerful tool. Whether you're a scalper looking for quick opportunities or a position trader seeking major reversals, this indicator provides the insights needed to make informed trading decisions.
Remember that no indicator is perfect, and the Market Sentiment B should be used as part of a comprehensive trading plan that includes proper risk management, fundamental analysis awareness, and sound money management principles.
Happy Trading!
Disclaimer: Trading involves substantial risk and is not suitable for all investors. Past performance is not indicative of future results. Always practice proper risk management and never trade with money you cannot afford to lose.
Non-Commercial Bias TrackerNon-Commercial Bias Tracker
Overview
The Non-Commercial Bias Tracker is a sophisticated sentiment analysis tool designed to provide traders with a clear view of the positioning of institutional speculators in the futures market. By analyzing the weekly Commitment of Traders (COT) report, this indicator helps you understand the underlying bias of large market participants for a wide range of assets, including forex, commodities, and indices.
The primary goal of this tool is to identify the prevailing trend in market sentiment and alert you to significant shifts in that trend, allowing you to align your strategy with the flow of institutional money.
Key Features
Dual Asset Analysis: Automatically detects the two assets in a trading pair (e.g., EUR and USD in EURUSD) or a single asset (e.g., GOLD) and displays their sentiment data side-by-side.
Comprehensive Data Table: A clean, customizable dashboard shows you the most critical sentiment metrics at a glance, including the current Net Position, the Change %, and the Overall Bias.
Visual Sentiment Plot: The indicator plots the primary sentiment metric and its signal line, giving you a visual representation of momentum and trend.
Clear Bias-Shift Signals: Green and red circles appear directly on the plot to highlight the exact moment the underlying sentiment momentum shifts, providing clear and timely signals.
How to Use the Indicator
Important Note: The Commitment of Traders data is released weekly. For the most accurate and meaningful signals, it is strongly recommended to use this indicator on the Weekly (W) chart timeframe.
1. The Data Table
The table in the corner of your screen is your main dashboard. Here’s what each row means:
Net Position: Shows the net difference between long (bullish) and short (bearish) contracts held by non-commercial traders. A positive number indicates a net long position; a negative number indicates a net short position.
Change %: This is the primary metric used for analysis, representing the net sentiment as a percentage.
Overall Bias: This is the final output of the indicator's analysis. It provides a clear "Long" or "Short" signal based on the current sentiment momentum. This cell is color-coded for quick interpretation (Green for Long, Red for Short).
2. The Chart Plots
Blue Line: Represents the current sentiment metric ("Change %" or "Net Position %").
Orange Line: Represents the signal line, or the average sentiment over a specific period.
Crossover Signals:
A Green Circle appears when the blue line crosses above the orange line, signaling a shift to a Long Bias.
A Red Circle appears when the blue line crosses below the orange line, signaling a shift to a Short Bias.
Settings & Customization
You can tailor the indicator to your specific needs via the Settings menu:
Data Source: Choose between "Futures Only" or the combined "Futures and Options" data.
Metric Type: Select whether to analyze the market using "Change %" (for momentum) or "Net Position %" (for conviction).
Bias Signal Line Length: Adjust the sensitivity of the crossover signals. A shorter length is faster, while a longer length provides smoother, more confirmed signals.
Style Settings: Customize the position of the data table and the color of the text to match your chart theme.
Disclaimer: This indicator is a tool for analysis and should not be considered as direct financial advice. All trading involves risk. Always use proper risk management and conduct your own due diligence before making any trading decisions.
OverUnder Yield Spread🗺️ OverUnder is a structural regime visualizer , engineered to diagnose the shape, tone, and trajectory of the yield curve. Rather than signaling trades directly, it informs traders of the world they’re operating in. Yield curve steepening or flattening, normalizing or inverting — each regime reflects a macro pressure zone that impacts duration demand, liquidity conditions, and systemic risk appetite. OverUnder abstracts that complexity into a color-coded compression map, helping traders orient themselves before making risk decisions. Whether you’re in bonds, currencies, crypto, or equities, the regime matters — and OverUnder makes it visible.
🧠 Core Logic
Built to show the slope and intent of a selected rate pair, the OverUnder Yield Spread defaults to 🇺🇸US10Y-US2Y, but can just as easily compare global sovereign curves or even dislocated monetary systems. This value is continuously monitored and passed through a debounce filter to determine whether the curve is:
• Inverted, or
• Steepening
If the curve is flattening below zero: the world is bracing for contraction. Policy lags. Risk appetite deteriorates. Duration gets bid, but only as protection. Stocks and speculative assets suffer, regardless of positioning.
📍 Curve Regimes in Bull and Bear Contexts
• Flattening occurs when the short and long ends compress . In a bull regime, flattening may reflect long-end demand or fading growth expectations. In a bear regime, flattening often precedes or confirms central bank tightening.
• Steepening indicates expanding spread . In a bull context, this may signal healthy risk appetite or early expansion. In a bear or crisis context, it may reflect aggressive front-end cuts and dislocation between short- and long-term expectations.
• If the curve is steepening above zero: the world is rotating into early expansion. Risk assets behave constructively. Bond traders position for normalization. Equities and crypto begin trending higher on rising forward expectations.
🖐️ Dynamically Colored Spread Line Reflects 1 of 4 Regime States
• 🟢 Normal / Steepening — early expansion or reflation
• 🔵 Normal / Flattening — late-cycle or neutral slowdown
• 🟠 Inverted / Steepening — policy reversal or soft landing attempt
• 🔴 Inverted / Flattening — hard contraction, credit stress, policy lag
🍋 The Lemon Label
At every bar, an anchored label floats directly on the spread line. It displays the active regime (in plain English) and the precise spread in percent (or basis points, depending on resolution). Colored lemon yellow, neither green nor red, the label is always legible — a design choice to de-emphasize bias and center the data .
🎨 Fill Zones
These bands offer spatial, persistent views of macro compression or inversion depth.
• Blue fill appears above the zero line in normal (non-inverted) conditions
• Red fill appears below the zero line during inversion
🧪 Sample Reading: 1W chart of TLT
OverUnder reveals a multi-year arc of structural inversion and regime transition. From mid-2021 through late 2023, the spread remains decisively inverted, signaling persistent flattening and credit stress as bond prices trended sharply lower. This prolonged inversion aligns with a high-volatility phase in TLT, marked by lower highs and an accelerating downtrend, confirming policy lag and macro tightening conditions.
As of early 2025, the spread has crossed back above the zero baseline into a “Normal / Steepening” regime (annotated at +0.56%), suggesting a macro inflection point. Price action remains subdued, but the shift in yield structure may foreshadow a change in trend context — particularly if follow-through in steepening persists.
🎭 Different Traders Respond Differently:
• Bond traders monitor slope change to anticipate policy pivots or recession signals.
• Equity traders use regime shifts to time rotations, from growth into defense, or from contraction into reflation.
• Currency traders interpret curve steepening as yield compression or divergence depending on region.
• Crypto traders treat inversion as a liquidity vacuum — and steepening as an early-phase risk unlock.
🛡️ Can It Compare Different Bond Markets?
Yes — with caveats. The indicator can be used to compare distinct sovereign yield instruments, for example:
• 🇫🇷FR10Y vs 🇩🇪DE10Y - France vs Germany
• 🇯🇵JP10Y vs 🇺🇸US10Y - BoJ vs Fed policy curves
However:
🙈 This no longer visualizes the domestic yield curve, but rather the differential between rate expectations across regions
🙉 The interpretation of “inversion” changes — it reflects spread compression across nations , not within a domestic yield structure
🙊 Color regimes should then be viewed as relative rate positioning , not absolute curve health
🙋🏻 Example: OverUnder compares French vs German 10Y yields
1. 🇫🇷 Change the long-duration ticker to FR10Y
2. 🇩🇪 Set the short-duration ticker to DE10Y
3. 🤔 Interpret the result as: “How much higher is France’s long-term borrowing cost vs Germany’s?”
You’ll see steepening when the spread rises (France decoupling), flattening when the spread compresses (convergence), and inversions when Germany yields rise above France’s — historically rare and meaningful.
🧐 Suggested Use
OverUnder is not a signal engine — it’s a context map. Its value comes from situating any trade idea within the prevailing yield regime. Use it before entries, not after them.
• On the 1W timeframe, OverUnder excels as a macro overlay. Yield regime shifts unfold over quarters, not days. Weekly structure smooths out rate volatility and reveals the true curvature of policy response and liquidity pressure. Use this view to orient your portfolio, define directional bias, or confirm long-duration trend turns in assets like TLT, SPX, or BTC.
• On the 1D timeframe, the indicator becomes tactically useful — especially when aligning breakout setups or trend continuations with steepening or flattening transitions. Daily views can also identify early-stage regime cracks that may not yet be visible on the weekly.
• Avoid sub-daily use unless you’re anchoring a thesis already built on higher timeframe structure. The yield curve is a macro construct — it doesn’t oscillate cleanly at intraday speeds. Shorter views may offer clarity during event-driven spikes (like FOMC reactions), but they do not replace weekly context.
Ultimately, OverUnder helps you decide: What kind of world am I trading in? Use it to confirm macro context, avoid fighting the curve, and lean into trades aligned with the broader pressure regime.
VIX Implied MovesKey Features:
Three Timeframe Bands:
Daily: Blue bands showing ±1σ expected move
Weekly: Green bands showing ±1σ expected move
30-Day: Red bands showing ±1σ expected move
Calculation Methodology:
Uses VIX's annualized volatility converted to specific timeframes using square root of time rule
Trading day convention (252 days/year)
Band width = Price × (VIX/100) ÷ √(number of periods)
Visual Features:
Colored semi-transparent backgrounds between bands
Progressive line thickness (thinner for shorter timeframes)
Real-time updates as VIX and ES prices change
Example Calculation (VIX=20, ES=5000):
Daily move = 5000 × (20/100)/√252 ≈ ±63 points
Weekly move = 5000 × (20/100)/√50 ≈ ±141 points
Monthly move = 5000 × (20/100)/√21 ≈ ±218 points
This indicator helps visualize expected price ranges based on current volatility conditions, with wider bands indicating higher market uncertainty. The probabilistic ranges represent 68% confidence levels (1 standard deviation) derived from options pricing.
Enhanced KLSE Banker Flow Oscillator# Enhanced KLSE Banker Flow Oscillator
## Description
The Enhanced KLSE Banker Flow Oscillator is a sophisticated technical analysis tool designed specifically for the Malaysian stock market (KLSE). This indicator analyzes price and volume relationships to identify potential smart money movements, providing early signals for market reversals and continuation patterns.
The oscillator measures the buying and selling pressure in the market with a focus on detecting institutional activity. By combining money flow calculations with volume filters and price action analysis, it helps traders identify high-probability trading opportunities with reduced noise.
## Key Features
- Dual-Timeframe Analysis: Combines long-term money flow trends with short-term momentum shifts for more accurate signals
- Adaptive Volume Filtering: Automatically adjusts volume thresholds based on recent market conditions
- Advanced Divergence Detection: Identifies potential trend reversals through price-flow divergences
- Early Signal Detection: Provides anticipatory signals before major price movements occur
- Multiple Signal Types: Offers both early alerts and strong confirmation signals with clear visual markers
- Volatility Adjustment: Adapts sensitivity based on current market volatility for more reliable signals
- Comprehensive Visual Feedback: Color-coded oscillator, signal markers, and optional text labels
- Customizable Display Options: Toggle momentum histogram, early signals, and zone fills
- Organized Settings Interface: Logically grouped parameters for easier configuration
## Indicator Components
1. Main Oscillator Line: The primary banker flow line that fluctuates above and below zero
2. Early Signal Line: Secondary indicator showing potential emerging signals
3. Momentum Histogram: Visual representation of flow momentum changes
4. Zone Fills: Color-coded background highlighting positive and negative zones
5. Signal Markers: Visual indicators for entry and exit points
6. Reference Lines: Key levels for strong and early signals
7. Signal Labels: Optional text annotations for significant signals
## Signal Types
1. Strong Buy Signal (Green Arrow): Major bullish signal with high probability of success
2. Strong Sell Signal (Red Arrow): Major bearish signal with high probability of success
3. Early Buy Signal (Blue Circle): First indication of potential bullish trend
4. Early Sell Signal (Red Circle): First indication of potential bearish trend
5. Bullish Divergence (Yellow Triangle Up): Price making lower lows while flow makes higher lows
6. Bearish Divergence (Yellow Triangle Down): Price making higher highs while flow makes lower highs
## Parameters Explained
### Core Settings
- MFI Base Length (14): Primary calculation period for money flow index
- Short-term Flow Length (5): Calculation period for early signals
- KLSE Sensitivity (1.8): Multiplier for flow calculations, higher = more sensitive
- Smoothing Length (5): Smoothing period for the main oscillator line
### Volume Filter Settings
- Volume Filter % (65): Minimum volume threshold as percentage of average
- Use Adaptive Volume Filter (true): Dynamically adjusts volume thresholds
### Signal Levels
- Strong Signal Level (15): Threshold for strong buy/sell signals
- Early Signal Level (10): Threshold for early buy/sell signals
- Early Signal Threshold (0.75): Sensitivity factor for early signals
### Advanced Settings
- Divergence Lookback (34): Period for checking price-flow divergences
- Show Signal Labels (true): Toggle text labels for signals
### Visual Settings
- Show Momentum Histogram (true): Toggle the momentum histogram display
- Show Early Signal (true): Toggle the early signal line display
- Show Zone Fills (true): Toggle background color fills
## How to Use This Indicator
### Installation
1. Add the indicator to your TradingView chart
2. Default settings are optimized for KLSE stocks
3. Customize parameters if needed for specific stocks
### Basic Interpretation
- Oscillator Above Zero: Bullish bias, buying pressure dominates
- Oscillator Below Zero: Bearish bias, selling pressure dominates
- Crossing Zero Line: Potential shift in market sentiment
- Extreme Readings: Possible overbought/oversold conditions
### Advanced Interpretation
- Divergences: Early warning of trend exhaustion
- Signal Confluences: Multiple signal types appearing together increase reliability
- Volume Confirmation: Signals with higher volume are more significant
- Momentum Alignment: Histogram should confirm direction of main oscillator
### Trading Strategies
#### Trend Following Strategy
1. Identify market trend direction
2. Wait for pullbacks shown by oscillator moving against trend
3. Enter when oscillator reverses back in trend direction with a Strong signal
4. Place stop loss below/above recent swing low/high
5. Take profit at previous resistance/support levels
#### Counter-Trend Strategy
1. Look for oscillator reaching extreme levels
2. Identify divergence between price and oscillator
3. Wait for oscillator to cross Early signal threshold
4. Enter position against prevailing trend
5. Use tight stop loss (1 ATR from entry)
6. Take profit at first resistance/support level
#### Breakout Confirmation Strategy
1. Identify stock consolidating in a range
2. Wait for price to break out of range
3. Confirm breakout with oscillator crossing zero line in breakout direction
4. Enter position in breakout direction
5. Place stop loss below/above the breakout level
6. Trail stop as price advances
### Signal Hierarchy and Reliability
From highest to lowest reliability:
1. Strong Buy/Sell signals with divergence and high volume
2. Strong Buy/Sell signals with high volume
3. Divergence signals followed by Early signals
4. Strong Buy/Sell signals with normal volume
5. Early Buy/Sell signals with high volume
6. Early Buy/Sell signals with normal volume
## Complete Trading Plan Example
### KLSE Market Trading System
#### Pre-Trading Preparation
1. Review overall market sentiment (bullish, bearish, or neutral)
2. Scan for stocks showing significant banker flow signals
3. Note key support/resistance levels for watchlist stocks
4. Prioritize trade candidates based on signal strength and volume
#### Entry Rules for Long Positions
1. Banker Flow Oscillator above zero line (positive flow environment)
2. One or more of the following signals present:
- Strong Buy signal (green arrow)
- Bullish Divergence signal (yellow triangle up)
- Early Buy signal (blue circle) with confirming price action
3. Entry confirmation requirements:
- Volume above 65% of 20-day average
- Price above short-term moving average (e.g., 20 EMA)
- No immediate resistance within 3% of entry price
4. Entry on the next candle open after signal confirmation
#### Entry Rules for Short Positions
1. Banker Flow Oscillator below zero line (negative flow environment)
2. One or more of the following signals present:
- Strong Sell signal (red arrow)
- Bearish Divergence signal (yellow triangle down)
- Early Sell signal (red circle) with confirming price action
3. Entry confirmation requirements:
- Volume above 65% of 20-day average
- Price below short-term moving average (e.g., 20 EMA)
- No immediate support within 3% of entry price
4. Entry on the next candle open after signal confirmation
#### Position Sizing Rules
1. Base risk per trade: 1% of trading capital
2. Position size calculation: Capital × Risk% ÷ Stop Loss Distance
3. Position size adjustments:
- Increase by 20% for Strong signals with above-average volume
- Decrease by 20% for Early signals without confirming price action
- Standard size for all other valid signals
#### Stop Loss Placement
1. For Long Positions:
- Place stop below the most recent swing low
- Minimum distance: 1.5 × ATR(14)
- Maximum risk: 1% of trading capital
2. For Short Positions:
- Place stop above the most recent swing high
- Minimum distance: 1.5 × ATR(14)
- Maximum risk: 1% of trading capital
#### Take Profit Strategy
1. First Target (33% of position):
- 1.5:1 reward-to-risk ratio
- Move stop to breakeven after reaching first target
2. Second Target (33% of position):
- 2.5:1 reward-to-risk ratio
- Trail stop at previous day's low/high
3. Final Target (34% of position):
- 4:1 reward-to-risk ratio or
- Exit when opposing signal appears (e.g., Strong Sell for long positions)
#### Trade Management Rules
1. After reaching first target:
- Move stop to breakeven
- Consider adding to position if new confirming signal appears
2. After reaching second target:
- Trail stop using banker flow signals
- Exit remaining position when:
- Oscillator crosses zero line in opposite direction
- Opposing signal appears
- Price closes below/above trailing stop level
3. Maximum holding period:
- 20 trading days for trend-following trades
- 10 trading days for counter-trend trades
- Re-evaluate if targets not reached within timeframe
#### Risk Management Safeguards
1. Maximum open positions: 5 trades
2. Maximum sector exposure: 40% of trading capital
3. Maximum daily drawdown limit: 3% of trading capital
4. Mandatory stop trading rules:
- After three consecutive losing trades
- After reaching 5% account drawdown
- Resume after two-day cooling period and strategy review
#### Performance Tracking
1. Track for each trade:
- Signal type that triggered entry
- Oscillator reading at entry and exit
- Volume relative to average
- Price action confirmation patterns
- Holding period
- Reward-to-risk achieved
2. Review performance metrics weekly:
- Win rate by signal type
- Average reward-to-risk ratio
- Profit factor
- Maximum drawdown
3. Adjust strategy parameters based on performance:
- Increase position size for highest performing signals
- Decrease or eliminate trades based on underperforming signals
## Advanced Usage Tips
1. Combine with Support/Resistance:
- Signals are more reliable when they occur at key support/resistance levels
- Look for banker flow divergence at major price levels
2. Multiple Timeframe Analysis:
- Use the oscillator on both daily and weekly timeframes
- Stronger signals when both timeframes align
- Enter on shorter timeframe when confirmed by longer timeframe
3. Sector Rotation Strategy:
- Compare banker flow across different sectors
- Rotate capital to sectors showing strongest positive flow
- Avoid sectors with persistent negative flow
4. Volatility Adjustments:
- During high volatility periods, wait for Strong signals only
- During low volatility periods, Early signals can be more actionable
5. Optimizing Parameters:
- For more volatile stocks: Increase Smoothing Length (6-8)
- For less volatile stocks: Decrease KLSE Sensitivity (1.2-1.5)
- For intraday trading: Reduce all length parameters by 30-50%
## Fine-Tuning for Different Markets
While optimized for KLSE, the indicator can be adapted for other markets:
1. For US Stocks:
- Reduce KLSE Sensitivity to 1.5
- Increase Volume Filter to 75%
- Adjust Strong Signal Level to 18
2. For Forex:
- Increase Smoothing Length to 8
- Reduce Early Signal Threshold to 0.6
- Focus more on divergence signals than crossovers
3. For Cryptocurrencies:
- Increase KLSE Sensitivity to 2.2
- Reduce Signal Levels (Strong: 12, Early: 8)
- Use higher Volume Filter (80%)
By thoroughly understanding and properly implementing the Enhanced KLSE Banker Flow Oscillator, traders can gain a significant edge in identifying institutional money flow and making more informed trading decisions, particularly in the Malaysian stock market.
ELVTDFinance COTELVTDFinance COT Indicator:
The ELVTDFinance COT Indicator is a sophisticated tool designed for traders seeking to gain deeper insights into market dynamics through Commitment of Traders (COT) data. This indicator visually represents the net positions of three distinct market participant groups: Commercials, Non-Commercials (Smart Money), and Retail Traders, enabling traders to interpret sentiment and potential market direction.
Key Features:
COT Data Integration:
Pulls weekly COT data from TradingView's LibraryCOT.
Distinguishes between long and short positions for each participant type:
Commercials: Producers or hedgers with vested interest in stabilizing market conditions.
Non-Commercials (Smart Money): Speculative traders often driving trends.
Retail Traders: Non-reportable positions, typically indicative of retail sentiment.
Net Position Calculations:
The indicator calculates and plots the net position (long - short) for each group.
Provides a clear visual distinction of market positioning trends over time.
Dynamic Plot Styles:
Adapts to the timeframe:
Weekly/Monthly: Line plots for a smoother view of trends.
Other Timeframes: Step-line plots for precise position changes.
Color Coding:
Blue: Commercials (Producers/Hedgers).
Teal: Non-Commercials (Smart Money).
Red: Retail Traders.
Highlights Market Sentiment:
Uses a color-shift mechanism based on the relative strength of Smart Money vs. Retail Traders.
Turns green when Smart Money positions dominate retail sentiment, signaling potential trend reversals or continuations.
Labels and Visual Aids:
Displays labels with net positions for each participant group on the chart.
Ensures clarity in understanding which group is leading the market at any point in time.
Advanced Visual Fill:
Shaded regions between Smart Money and Retail Traders provide an intuitive visual cue for sentiment alignment or divergence.
Support for Scalping and Swing Trading:
Offers utility for both short-term scalping strategies and longer-term swing trades by identifying the actions of dominant market forces.
How It Works:
The indicator retrieves and processes COT data weekly.
Net positions are calculated and compared across participant groups.
Plots are dynamically updated to reflect market sentiment.
A zero-line acts as a reference to gauge whether the group is net long or net short.
Use Case Examples:
Trend Reversal Signals:
If Smart Money positions increase while Retail Traders are heavily short, it may signal a potential bullish reversal.
Trend Confirmation:
Alignments between Smart Money and Retail Trader trends can confirm a strong directional move.
Hedging Insights:
Commercials often hedge against price movements. Their actions can hint at supply-side expectations.
By leveraging the ELVTDFinance COT Indicator, traders can better understand the driving forces behind market moves and incorporate this into their decision-making processes. This tool is particularly valuable for analyzing sentiment shifts and gauging market momentum.
Prev Week & Day High/Low LinesTitle:
Advanced Weekly & Daily High/Low Levels with Alerts and Customization
Description:
This indicator automatically plots the high and low levels of the previous week and day, featuring advanced customization options and configurable alerts. It’s a powerful tool for traders who want to identify key support and resistance zones on any timeframe below weekly.
What Does This Indicator Do?
1. Identifies historical levels: Calculates and plots the highs and lows of the previous week and day, helping traders spot reversal points, zones of interest, and decision-making levels.
2. Real-time alerts: Notifies traders when the price approaches or crosses these key levels, allowing them to make decisions without constantly monitoring the chart.
3. Dynamic colors: Changes the color of the levels based on the price proximity, providing a clear visual signal about the immediate importance of each level.
Key Features
1. Total Customization:
• Fully adjustable line colors, styles (solid or dotted), and thicknesses.
• Optional labels for each level with customizable text, size, and position.
• Adaptable configurations to suit different trading styles (scalping, swing trading, intraday).
2. Smart Alerts:
• Set alerts when the price touches or approaches the plotted levels.
• Instant notifications, ideal for trading breakouts or pullbacks at key levels.
3. Optimization and Efficiency:
• Works on all timeframes below weekly, avoiding unnecessary calculations.
• Real-time updates to ensure levels are always accurate.
4. Clear Visualization:
• Dynamic colors for levels close to the current price.
• Projected lines extending into the future to help plan trades.
• Advanced label options, including customizable text and different chart positions.
How It Works
The indicator uses advanced logic to automatically detect day and week transitions based on market time. It calculates and updates the high and low levels efficiently, ensuring that the data reflects the active timeframe. The levels can be projected forward and highlighted with customizable colors and labels.
Additionally, with configurable alerts, traders can receive real-time notifications when the price interacts with these levels, enabling them to respond quickly to market changes.
How to Use It
1. Add the indicator: Apply it to your chart in TradingView.
2. Set up the options:
• Customize the colors, thicknesses, and styles of the lines.
• Adjust the label text and position to suit your preferences.
• Enable alerts for key levels.
3. Utilize the levels: Watch the indicator automatically plot the high and low levels, and use the visual signals and alerts to make informed trading decisions.
Benefits for Traders
• Saves time: No need to manually calculate historical support and resistance levels.
• Improves accuracy: Levels are automatically recalculated and updated in real-time.
• Versatility: Perfect for any trading style (scalping, swing, intraday).
• Real-time alerts: Stay informed about key levels even when not watching the chart.
• Intuitive visualization: Dynamic colors and adjustable labels make technical analysis easier.
Note:
This indicator is unique due to its configurable alerts, advanced customization options, and dynamic colors, setting it apart from similar scripts available on TradingView. It is designed for traders seeking a clear and functional visual tool to make quick and accurate market decisions.
Typical Price Difference - TPD © with reversal zones and signalsv1.0 NOTE: The maths have been tested only for BTC and weekly time frame.
This is a concept that I came through after long long hours of VWAP trading and scalping.
The idea is pretty simple:
1) Typical Price is calculated by (h+l+c) / 3. If we take this price and adjust it to volume we get the VWAP value. The difference between this value and the close value, i call it " Typical Price Difference - TPD ".
2) We get the Historical Volatility as calculated by TradingView script and we add it up to TPD and divide it by two (average). This is what I call " The Source - TS ".
3) We apply the CCI formula to TS .
4) We calculate the Rate of Change (roc) of the CCI formula.
5) We apply the VIX FIX of Larry Williams (script used is from ChrisMoody - CM_Williams_Vix_Fix Finds Market Bottoms) *brilliant script!!!
How to use it:
a) When the (3) is over the TPD we have a bullish bias (green area). When it's under we have a bearish bias (red area).
b) If the (1) value goes over or under a certain value (CAUTION!!! it varies in different assets or timeframes) we get a Reversal Zone (RZ). Red/Green background.
c) If we are in a RZ and the VIX FIX gives a strong value (look for green bars in histogram) and roc (4) goes in the opposite direction, we get a reversal signal that works for the next week(s).
I applied this to BTC on a weekly time frame and after some corrections, it gives pretty good reversal zones and signals. Especially bottoms. Also look for divergences in the zones/signals.
As I said I have tested and confirmed it only on BTC/weekly. I need more time with the maths and pine to automatically adjust it to other time frames. You can play with it in different assets or time frames to find best settings by hand.
Feel free to share your thoughts or ideas on this.
P.S. I realy realy realy try to remember when or how or why I came up with the idea to combine typical price with historical volatility and CCI. I can't! It doesn't make any sense LOL
Expected Move PlotterI get a lot of requests about my indicators that I use. Unfortunately, at this time I cannot make those public but I thought about creating a makeshift alternative people could use as a reference.
I came up with this very simple yet extremely effective indicator. I call it the average or expected move plotter, but its essentially the average move plotter.
All it does is it averages out the move from open to high and low on a monthly, weekly and daily basis over the past 5 days and plots the expected move.
It really is that simple!
I have broken it down by month, week and day, so you can see the average expected move on whichever time frame you prefer.
I will use TSLA as the example.
Here is the daily:
Here is the weekly:
And here is the monthly:
You can switch between whichever timeframe you are working on and it permits all traders (day traders and swing traders) to assist in setting realistic target prices within their desired time frame.
It works on any stock, index, commodity or future.
I have also ensured that it will work with Heikin Ashi candles, for those (like myself) who are fond of those candles.
Let me know if you have any questions and if you like it!
Take care everyone and trade safe!
Key Levels SpacemanBTC IDWMKey levels, plotted automatically
Additional timeframes can be added on request
Useful for seeing strength of the trend in the market
TheStratHelper - Watchlist MakerEnter 13 symbols of your choice in the input tab. By default some symbols are already entered.
2 Up = Current bar higher than the previous bar.
2 Down = Current bar lower than the previous bar.
Scanning for 2 Up or 2 Down on monthly, weekly and daily timeframes.
2up In Force Only = If the current price is still above the last bar.
E.g. of how I use this..If a symbol is 2Up on Monthly, then I want to know if it's 2Up on Weekly. Then I can look for a trade opportunity on 1D.
If a symbol is 2up on monthly, weekly and daily, then I look for a trade opportunity on intraday timeframe.
IMPORTANT: Scans will show the correct results ONLY IF the chart timeframe is 1D or less.
Please DM me to find out how to get access.
EMASARPLEASE READ THE FULL DESCRIPTION BEFORE BUYING OR USING THIS INDICATOR
EMASAR (pronounced Emma-sar) is a strategy based on Exponential Moving Averages and the Parabolic SAR . This is a position trading approach that is derived from Tyler Jenks’ Consensio.
This strategy was developed with four objectives in mind: (1) managing risk (2) protecting from missing out on major moves (3) maximizing risk:reward (4) staying in a trending market and taking profit before it fully reverses.
EMASAR does a great job at accomplishing all of the above through the buy and sell signals that are generated. The data provided below is from the signals that occurred on Bitcoin (Bitstamp) from January 1, 2015 to present (November 11, 2019).
(1) Risk is tightly managed, relative to the winners, and losing positions will be exited before the market moves too far against.
The biggest losing trade on Bitcoin, for the time period outlined above, is -18.47%.
(2) Following the EMASAR buy and sell signals guarantees that one will not miss out on a major trend. As a result of the indicators used for this system it is mathematically impossible for a major trend to occur without providing a buy or sell signal. This system isn't meant to catch exact tops or bottoms but it will do a great job of capturing ~85% of a trend.
(3) On average the winning trades will be 5.55 times the losing trades. There will be stretches where the losers are bigger than the winners and this could last for many months, maybe even a year. However, over the long run the average reward is expected to be 5.55 times the average risk*.
*Past performance does not guarantee future results!
(4) This indicator was designed to capitalize on parabolic markets, specifically Bitcoin and alt coins. Crypto markets have a tendency to get moving so fast that many indicators become all but useless.
Entries can get signaled too late and exits will get signaled way too early. This is specifically true when using oscillators that are designed to identify overbought or oversold environments. EMASAR does a great job of keeping us in a position for the duration of a trend and this includes the major parabolic runs that Bitcoin has a tendency to go on.
Take a look at the two charts below which illustrates the buy and sell signals that occurred at the beginning and end of the 2017 and 2019 parabolic moves. Green = Buy | Blue = Exit | Red = Short
Long signaled at $4,190.27 on September 29th, 2017
Exit signaled at $13,647 on January 14th, 2018
Short signaled at $12,050 on January 16th, 2018
Close Short signaled at $3,684 on February 18th, 2019
Long signaled at $3,684 on February 18th, 2019
Exit signaled at $9,614 on July 16th, 2019
Short signaled at $10,328 on July 22nd, 2019
When Bitcoin, or other alts, really get moving it can be very difficult to distinguish between a correction and a full reversal. We do not want to be exiting during a minor correction, instead this is a time when we want to be holding on or looking to buy the dip.
This is a very fragile balance. The market has a very strong tendency to make corrections looks like reversals and to make reversals look like corrections. Therefore it is very important to have a tool(s) that you trust to distinguish in between the two.
I believe that EMASAR is the best way to find that balance - if I knew of a better way then I would be using it instead!
Following these signals will help us to hold onto positions while the market is still trending in our favor when most think that it has moved too far / too fast, and it will also get us out before a market fully reverses.
Keep in mind that there will be times when we exit a market that is in danger of reversing, only to buy back higher later on. That is okay because it enables us to properly manage risk during times of uncertainty and buying back in at a higher price is more than worth the opportunity cost.
Lets look at the signals above in chronological order:
1) Close Long: $2,274
2) Open Short: $2,347
3) Exit Short: $2,934
4) Open Long: $2,766
5) Close Long: $3,124
6) Enter Long: $4,190
A long was closed at $2,274 after Signal #1 and was re-entered after Signal #4 at $2,766. Additionally a long was closed at $3,124 after Signal #5 and was re-entered on the following signal at $4,190. These are examples of some of the bad signals that will occur. Something to pay attention to is the ratio of the risk to the reward. When the market turns against us EMASAR will quickly signal an exit or a re entry.
EMASAR also works great in traditional markets. The S&P 500 has been on a tear lately after creating new all time highs in October of 2019. It has resumed it's strong bull trend and therefore it is a great market to have long exposure to. That being said we are well overdue for a correction and most people, including myself, expect the next bear market to be much more severe than the last two. Therefore I would not want to have long exposure unless equipped with a very reliable method for taking profit before it fully reverses.
Let's take a look at the S&P 500 weekly EMASAR signals using the preferred settings outlined below:
In August of 1990 EMASAR signaled a 'Close Long' at $308. At that time the market was in danger of fully reversing. When that didn't happen EMASAR gave a signal to re enter at $369 which resulted in losing 19.8% in opportunity cost. That is quite okay because it would have allowed us to properly protect ourselves in the event that the market proceeded to crash. Instead we entered a massive bull market that culminated in the dot com bubble. Notice how EMASAR kept us in for the entire duration of that bull run and then signaled an exit very close to the top at $1,294. It got us back in by the end of 2004 after the market had bottomed. Yet again it kept us in for the following multi year bull market before signaling an exit very close to the top at $1,270.
The action that followed in 2016 looks very similar to what happened in 1990 - 1991. An exit was signaled when the market was in danger of fully reversing. When that didn't happen a re entry was signaled 14% higher. Now the market appears to be taking off in another parabolic advance. There is no way to know how far this next run will go or how long it will last. Nevertheless I feel highly confident that I will be able to hold on for the majority of the trend and then get fully out before it reverses thanks to the signals provided by EMASAR.
When looking at the signals on Gold we will notice striking similarities to the signals in the S&P 500 as well as Bitcoin.
Notice how an entry was signaled very close to the bottom at $323 in June of 2002. An exit was also signaled very close to the top at $1,441 in April of 2013. Throughout that runup there was one bad signal that cost some opportunity. It's very important to understand that missing out on opportunity is well worth the price because it allows us to effectively manage risk. EMASAR also recently provided a long signal at $1,401 which preceded this recent runup.
Settings
Default settings work best for crypto, however the time multiplier should be adjusted for markets that are not open 24/7. For commodities and FOREX my default is 40 and for stocks I use 24. The Moving Averages can be adjusted as well. The period can be changed and you can also select SMA or EMA. I always use the EMA's and strongly prefer the 50 and 200. We have noticed good results with the 9 and 54 EMA's as well. The shorter the period that the Moving Average is set to the more frequent the signals will be. This will generally improve risk:reward while decreasing strike rate. For crypto the best time frames are the 4h and 6h. For traditional markets the best time frames are the Daily, 3D and Weekly. EMASAR can be used on smaller time frames as well, specifically in crypto. The 15m and 1h have shown good results.
Risks
The biggest risks with trading EMASAR revolve around disobeying the signals. Risk management is built into this system with the exit signals that will occur, however it is up to the individual to execute those signals. Passing on an exit signal could lead to a big loss which would have a dramatic impact on the ROI. Most trading systems will have small and medium losses with small, medium and large wins. That is exactly how this works. The small - medium losses and wins will mostly be a wash and will account for roughly 80% of the trades. The large wins will happen about 20% of the time and will make up 80% - 90% of the profits.
Therefore the two biggest risks are passing on signals entirely, or exiting preemptively. Getting chopped in and out of a market can be quite frustrating. If you become overwhelmed with negative emotions then it could cause you to pass up on the next signal. That signal will often be the one that more than makes up for the small - medium losses that preceded.
On average EMASAR will provide one signal every 6 weeks when using the default settings on the 4h chart. Therefore missing one entry could turn an otherwise profitable year into a loser. If electing to trade a system, whether it is EMASAR or another, it is crucial to commit to taking every signal regardless of outside variables (namely your personal bias about market direction or frustration that follows a losing stretch).
Another major risk with this system is taking too much profit too soon. When getting into a trade that has the potential to be a big winner it can be challenging to continue holding through the swings. Anyone that has watched paper profits vanish will be inclined to start exiting after the market makes a big move in his or her favor. While this is better than watching profits completely evaporate, this mistake can be enough to turn a profitable system into one that loses to the market. If 80% - 90% of our profits come from 10% - 20% of our trades then it is vital we do not cut those positions off at the knees.
If taking too much profit too soon then you will consistently turn potential large winners into medium winners. This may lead to making money over the long run which will make it very difficult to realize that anything is wrong. However making money and beating the market are two very different things. Exiting early and making money is nearly as big of a risk as missing entries entirely.
If you have the discipline to execute signals in a timely manner after they are triggered and the emotional control to let the winners run despite the appearance of a vastly overbought / oversold market, then you should have what it takes to beat the market with EMASAR.
If you are not an experienced trader then it is very important to start out small. The only way to learn is to trade in a live environment and the only way to succeed is to risk much less than you can afford to lose. If you have $2,000 to trade with then start with a maximum position size of $20 - $50 and don’t be shy about scaling that down even further. Focus on ROI instead of actual dollars made. If you can return 100% on a $20 roll then you should be able to do the same with a $2,000 roll.
Important Notes
Make sure that you read / understand the risks outlined above. If you jump into this without understanding the unique risks that this system entails then you are going to have a bad time.
This indicator was developed around the 4h and that is where it works best. For crypto adjusting to higher TF’s will cause for bad results as the entries / exits will be late to the party. For traditional markets the Daily - Weekly time frames are preferred. It was not originally intended for smaller TF's but we have seen some good results on the 15m and 1h. The RSI can be a great compliment when using on smaller TF's. Adding a rule for not entering when RSI > 75 or < 25 and instead entering when RSI retests 50 will help to avoid some bad signals.
Alerts can be set for this indicator. Simply make sure that it is visible on the chart, then click the alert icon on the top panel. In the first dropdown set 'Condition' to 'EMASAR' and the second 'Condition' for the upcoming signal. For example if just entered long then set the second condition to 'Close Long' and you will be notified as soon as that signal occurs. If waiting for the next long entry then set the second condition to 'Open Long' so on and so forth. There is an 'All in One' alert that is also available. If you select that then you will be alerted any time that a signal occurs. The message will tell you to check the chart to see which signal caused the alert.
How to Buy
The EMASAR Indicator is available for purchase on my website. The link can be found in my signature or in the tagline of my Trading View profile.
The price is $500 per year which is only payable in Bitcoin. That also includes access to a private Telegram group.
Numanti - FairRate EUR/USD Fair ValueFairRate | EUR/USD Fair Value Indicator
Know When EUR/USD Is Overpriced or Underpriced
Price tells you where the market *is*. Fair value tells you where it *should be*.
EUR/USD doesn't move randomly. Interest rates, yield curves, risk appetite, and equity flows drive where the pair trades over time. When price strays too far from these fundamentals, it tends to snap back.
FairRate shows you exactly how far price has strayed.
How It Works
The indicator calculates a fair value for EUR/USD based on macroeconomic variables updated weekly. It then measures the deviation between current price and fair value in standard deviations (the z-score).
> +2σ --> EUR significantly overvalued — watch for pullback
+1σ to +2σ --> EUR above fair value
-1σ to +1σ --> Near equilibrium
-1σ to -2σ --> EUR below fair value
< -2σ --> EUR significantly undervalued — watch for bounce
The bigger the deviation, the stronger the fundamental pressure for mean reversion.
What You See on the Chart
- Fair Value Line — Where EUR/USD "should" be trading
- ±1σ and ±2σ Bands — Normal and extreme deviation zones
- Info Panel — Current fair value, z-score, and signal status
When price pushes into the outer bands, fundamentals are stretched. That's where opportunities often emerge.
Model Quality
This isn't a typical indicator or curve-fitted approach. It's a proper econometric model:
- R² > 80% — Fundamentals explain most of EUR/USD movement
- Out-of-sample validated — Works on data the model never saw
- Updated weekly — Fresh estimates every Friday
- Research-backed — Methodology documented in white paper
How Traders Use It
Mean Reversion
When z-score hits extreme levels (±2σ), look for reversal setups. Combine with your technical analysis for entries.
Trend Confirmation
If price is trending AND fundamentals support it (z-score moving in trend direction), that's a stronger move.
Risk Filter
Avoid counter-trend trades when z-score is near zero — there's no fundamental reason to expect a reversal.
Context Layer
Add fundamental context to pure price action. Know whether you're trading with or against the macro backdrop.
### What This Is NOT
- Not a buy/sell signal generator
- Not a timing indicator
- Not a substitute for technical analysis
FairRate is a fundamental layer — one piece of the puzzle that tells you whether EUR/USD is cheap, expensive, or fairly priced right now.
The Model
Built on peer-reviewed econometric methodology. The model captures the fundamental drivers that institutional desks use to assess currency valuation — not a black-box indicator or curve-fitted pattern.
Add FairRate to your EUR/USD analysis. Know where fundamentals stand.
© 2025 Numanti. All rights reserved.
YaS-IN Multi-Timeframe RSI AnalyzerYAS-IN MULTI-TIMEFRAME RSI ANALYZER
📊 OVERVIEW
YaS-IN (Yield and Signal Indicator) is an advanced RSI-based trading tool that analyzes multiple timeframe RSI data (14, 25, 100 periods) to identify 5 key market scenarios with confirmation from volume, MACD, and ATR indicators.
🎯 KEY FEATURES
1. MULTI-TIMEFRAME RSI ANALYSIS
RSI 14: Short-term momentum
RSI 25: Medium-term trend
RSI 100: Long-term structural trend
2. 5 MARKET SCENARIOS
Trend Start (New trend confirmation)
Trend Continuation (Healthy uptrend)
Trend End (Overbought, reversal imminent)
Dip Buy Opportunity (Oversold, bounce expected)
Structural Turn (Major trend change)
3. CONFIRMATION SYSTEM
Volume: Above/below average confirmation
MACD: Momentum and crossover confirmation
ATR: Volatility confirmation
4. VISUAL TABLE DISPLAY
Real-time color-coded table showing:
Current RSI values
Active scenarios
Confirmation status
Scenario colors
🔧 HOW IT WORKS
SCENARIO DETECTION
The indicator analyzes RSI values against predefined thresholds to identify which market scenario is currently active.
CONFIRMATION STATUS
Each scenario is validated against three confirmation indicators:
✅ CONFIRMED: 2+ indicators confirm
🔶 PARTIAL: 1 indicator confirms
⚠️ WARNING: 1 indicator contradicts
⚠️ DIVERGENT: 2+ indicators contradict
➖ NEUTRAL: No clear signal
TABLE COLORS
Green: Active bullish scenario
Blue: Active continuation scenario
Red: Active bearish scenario
Orange: Active dip buy scenario
Purple: Active structural turn
Gray: Inactive scenario
⚙️ CUSTOMIZATION OPTIONS
1. RSI PERIODS
Adjust RSI calculation periods (14, 25, 100 default)
2. CONFIRMATION INDICATORS
Toggle Volume/MACD/ATR confirmation on/off
Adjust volume threshold multiplier
Set ATR change percentage
3. TABLE SETTINGS
Position: 6 different screen positions
Size: Small/Medium/Large text
Colors: Custom text and background
Opacity: Background transparency
4. VISUAL OPTIONS
Show/hide chart label
Customize text colors
Adjust table transparency
📈 OPTIMAL TIMEFRAMES
BEST PERFORMANCE
1-Hour: Optimal balance for most traders
4-Hour: Excellent for swing trading
Daily: Good for position trading
GOOD PERFORMANCE
30-Minute: Short-term swing trading
15-Minute: Precise entry timing
Weekly: Long-term analysis
NOT RECOMMENDED
1-5 Minute: Too much noise
Monthly: Too slow for active trading
🎮 USAGE GUIDE
FOR BEGINNERS
Add indicator to 4-hour chart
Watch table for 1-2 days
Trade only "✅ CONFIRMED" scenarios
Use 1-hour chart for entry confirmation
FOR INTERMEDIATE TRADERS
Use multi-timeframe analysis:
4-hour: Main trend direction
1-hour: Confirmation signals
30-minute: Entry timing
Look for scenario consistency across timeframes
Use divergence warnings for risk management
FOR ADVANCED TRADERS
Combine with other technical analysis
Adjust parameters for specific markets
Use alerts for automated notifications
Backtest different parameter combinations
📊 INTERPRETING RESULTS
STRONG SIGNALS
Multiple "✅ CONFIRMED" scenarios
Consistent signals across timeframes
High volume + MACD confirmation
WEAK SIGNALS
"🔶 PARTIAL" or "➖ NEUTRAL" status
Contradictory indicators
Low volume during signals
WARNING SIGNALS
"⚠️ WARNING" or "⚠️ DIVERGENT" status
Indicator divergence
ATR showing low volatility during moves
🔔 ALERT SYSTEM
4 TYPES OF ALERTS
Divergence Detected: Indicators contradict scenarios
Strong Confirmation: Multiple indicators confirm
Confirmed Trend End: Trend reversal with confirmation
Confirmed Dip Buy: Oversold bounce with confirmation
💡 TRADING STRATEGIES
TREND FOLLOWING
Enter on "Trend Start ✅ CONFIRMED"
Add on "Trend Continuation ✅ CONFIRMED"
Exit on "Trend End ✅ CONFIRMED"
MEAN REVERSION
Enter on "Dip Buy ✅ CONFIRMED"
Exit on RSI returning to normal levels
Use ATR for stop loss placement
BREAKOUT TRADING
Watch for "Structural Turn ✅ CONFIRMED"
Enter on confirmation of new trend
Use volume confirmation for validity
⚠️ RISK MANAGEMENT
POSITION SIZING
"✅ CONFIRMED": Full position
"🔶 PARTIAL": Half position
"⚠️ WARNING": Quarter position or avoid
"⚠️ DIVERGENT": No position
STOP LOSS SUGGESTIONS
Based on ATR value (2x ATR recommended)
Adjust for timeframe (tighter on lower TFs)
Consider scenario type (wider for structural turns)
📚 EDUCATIONAL VALUE
LEARN MARKET CYCLES
Understand different market phases
Recognize trend transitions
Identify overbought/oversold conditions
IMPROVE TIMING
Better entry/exit points
Reduced false signals
Improved risk/reward ratios
🚀 BENEFITS
Clear Visualization: All data in one table
Multi-Indicator Confirmation: Reduces false signals
Customizable: Adapt to any trading style
Educational: Helps understand market dynamics
Versatile: Works across multiple timeframes
📝 PUBLISHING NOTES
When publishing this indicator:
Name: YaS-IN Multi-Timeframe RSI Analyzer
Category: Momentum/Volume Indicators
Access Type: Open Source
Tags: RSI, Multi-Timeframe, Volume, MACD, ATR, Scanner
Description: Include this complete documentation
Preview Images: Show table on different charts
Video Tutorial: Demonstrate multi-timeframe usage
🔄 UPDATES & SUPPORT
For updates, improvements, or support:
Check TradingView script page
Join community discussions
Share backtest results
Suggest new features
Happy Trading with YaS-IN! 🚀
This response is AI-generated, for reference only.
Extended SOPR Indicator - SSOPR Tops (A/B toggle)Extended SOPR Indicator — SSOPR Tops and Lows (A/B toggle)
Observation-only. Data: Glassnode SOPR.
Overview
This indicator extends the classical SOPR (Spent Output Profit Ratio) to improve readability and reduce noise on charts. SOPR measures whether coins moved on-chain were spent at a profit or at a loss. In brief: SOPR > 1 → spending at profit; SOPR < 1 → spending at loss. SSOPR (from "Smoothed SOPR") applies optional log transform (centers baseline at 0), smoothing (standard or adaptive), and adds structured signals: Z‑score lows (capitulation), buy zones , and top detection after prolonged elevation.
Why extend SOPR? (SSOPR vs classical SOPR)
• Noise reduction: Raw daily SOPR can whipsaw around its baseline. SSOPR uses smoothing and (optionally) adaptive smoothing so regimes are visible without overfitting.
• Better readability: The log transform shifts the break-even line to 0, making “profit territory” (above 0) and “loss territory” (below 0) visually intuitive on oscillators.
• Actionable context: Z‑score highlights extreme lows (capitulation risk), a simple buy-zone threshold marks potential accumulation, and a structured top pattern (with a time factor) helps frame distribution phases after sustained elevation.
What the script plots
• Smoothed SOPR (SSOPR): An orange line representing the smoothed SOPR (with optional log transform and optional adaptive smoothing).
• Top markers: A red triangle appears once at the onset of a confirmed top pattern.
• Background shading:
– Soft green: Buy zone when SSOPR falls below the “Buy Threshold.” (+ Z‑score capitulation zones (extreme lows)).
– Soft red: Top‑zone shading when the top criteria are met but before the single triangle fires.
Inputs & parameters
• Smoothing Length (default 14): Base window for smoothing SSOPR. Higher values = smoother, slower response.
• Apply Log Transform (default ON): Uses log(SOPR) so the baseline is 0 (log(1)=0). Above 0 → net profit regime; below 0 → net loss regime.
• Adaptive Smoothing (default OFF): Expands smoothing length as volatility rises using a standard deviation proxy; reduces whipsaws while preserving structure.
• Z‑score Threshold for Lows (default −2.5): Highlights capitulation zones when SSOPR deviates far below its rolling mean.
• SSOPR Buy Threshold (default −0.02): Simple rule-of-thumb level for potential accumulation context when below (log scale).
• SSOPR Top Threshold (default +0.005): Minimum elevation required for “profit territory” when assessing tops (log scale).
• Min Bars Above Threshold Before Top (default 50): Ensures prolonged elevation before calling a top.
• Lookback for Peak Detection (default 50): Window used to locate the recent high.
• Drop % from Peak to Confirm Top (default 5%): Confirms the start of distribution from a local high.
• Highlight Background : Toggles shaded zones.
Top detection (indicator-only)
A top fires when ALL of the following are true:
SSOPR spent at least Min Bars Above Threshold above the Top Threshold (sustained elevation).
The rising phase test passes (Option A or B; see below).
A drop from the local peak exceeds Drop % within the Lookback window.
The peak occurred in profit territory (SSOPR > Top Threshold).
To avoid repeated signals during the decline, the script emits the triangle once, at onset.
Rising‑phase switch: Option A vs Option B
• Option A — Up‑step ratio : Over the last A: Bars for Rising Check (default 50), it requires that at least A: Required Up‑Step Ratio (default 60%) of bars were rising (each bar compared to the previous). This favors gradual, persistent advances and filters out “choppy” lifts.
• Option B — Net slope : Compares current SSOPR to its value B: Bars Back for Net Slope ago (default 50). If higher, the series is considered rising. This is simpler and reacts faster in volatile phases but can admit brief pseudo‑trends.
Guidance : Prefer A for conservative confirmation in slow, persistent cycles; use B when trend moves are strong and you need timely detection.
Interpretation guide
• Regimes (log view): Above 0 → spending at profit; below 0 → spending at loss.
• Capitulation lows: When Z‑score < threshold, conditions often reflect forced/liquidity‑driven spending. Treat as context, not signals.
• Buy zone: SSOPR < Buy Threshold flags potential accumulation conditions (combine with price structure).
• Tops: After prolonged elevation, a confirmed top often coincides with profit‑taking/distribution phases.
Recommended timeframes
• Daily : Code optimized for daily timeframe.
Method summary
• SSOPR source: GLASSNODE:BTC_SOPR (via request.security ).
• Optional log transform: sopr → log(sopr) to normalize around 0.
• Smoothing: SMA over Smoothing Length , optionally adaptive using local volatility (std dev).
• Z‑score: (SSOPR − mean) / std dev, highlighting extreme lows.
• Top: Requires long elevation above Top Threshold , rising‑phase (A/B), and a subsequent drop > Drop % from recent high.
Limitations & notes
• SOPR reflects on‑chain movements; some activity occurs off‑chain (exchanges, internal transfers). Not all moves imply sale; aggregation makes it a usable proxy for profit/loss realization.
• Higher smoothing reduces noise but delays signals; adaptive smoothing can help but is still a trade‑off.
• Treat thresholds as context markers. They are not entry/exit signals by themselves.
• Use with price structure, volume, and other on‑chain indicators (e.g., realized price bands, dormancy/CDD) for confluence.
How to use (examples)
• Advance holding above 0 (log view): Retests of 0 from above that hold—while SSOPR remains elevated—often mark absorption; look for Top conditions only after sustained elevation and a confirmed drop from peak.
• Downtrend below 0: Rejections near 0 can align with continued loss realization; extreme Z‑score lows suggest capitulation risk—context for accumulation, not a blind buy.
Recommended settings
• Weekly: Log ON, Smoothing Length 14–30, Adaptive ON, Buy Threshold −0.02, Top Threshold +0.005, Rising Method A, Min Bars 50.
• Daily: Log ON, Smoothing Length 14–20, Adaptive OFF or ON (depending on noise), Rising Method B for timely slope checks.
Credits & references
• SOPR metric: Renato Shirakashi; documentation: Glassnode , CryptoQuant , overview: Bitbo .
Disclaimer
This script is for research/education on market behavior. It is not financial advice. Indicators provide context; decisions remain your responsibility.
Tags
bitcoin, btc, on‑chain, sopr, ssopr, glassnode, oscillator, regime, distribution, capitulation
Aquantprice: Institutional Structure MatrixSETUP GUIDE
Open TradingView
Go to Indicators
Search: Aquantprice: Institutional Structure Matrix
Click Add to Chart
Customize:
Min Buy = 10, Min Sell = 7
Show only PP, R1, S1, TC, BC
Set Decimals = 5 (Forex) or 8 (Crypto)
USE CASES & TRADING STRATEGIES
1. CPR Confluence Trading (Most Popular)
Rule: Enter when ≥3 timeframes show Buy ≥10/15 or Sell ≥7/13
text Example:
Daily: 12/15 Buy
Weekly: 11/15 Buy
Monthly: 10/15 Buy
→ **STRONG LONG BIAS**
Enter on pullback to nearest **S1 or L3**
2. Hot Zone Scalping (Forex & Indices)
Rule: Trade only when price is in Hot Zone (closest 2 levels)
text Hot: S1-PP → Expect bounce or breakout
Action:
- Buy at S1 if Buy Count ↑
- Sell at PP if Sell Count ↑
3. Institutional Reversal Setup
Rule: Price at H3/L3 + Reversal Condition
text Scenario:
Price touches **Monthly L3**
L3 in **Hot Zone**
Buy Count = 13/15
→ **High-Probability Reversal Long**
4. CPR Width Filter (Avoid Choppy Markets)
Rule: Trade only if CPR Label = "Strong Trend"
text CPR Size < 0.25 → Trending
CPR Size > 0.75 → Sideways (Avoid)
5. Multi-Timeframe Bias Dashboard
Use "Buy" and "Sell" columns as a sentiment meter
TimeframeBuySellBiasDaily123BullishWeekly89BearishMonthly112Bullish
→ Wait for alignment before entering
HOW TO READ THE TABLE
Column Meaning Time frame D, W, M, 3M, 6M, 12MOpen Price Current session open PP, TC, BC, etc. Pivot levels (color-coded if in Hot Zone) Buy X/15 conditions met (≥10 = Strong Buy)Sell X/13 conditions met (≥7 = Strong Sell)CPR Size Histogram + Label (Trend vs Range)Zone Hot: PP-S1, Med: S2-L3, etc. + PP Distance
PRO TIPS
Best on 5M–1H charts for entries
Use with volume or order flow for confirmation
Set alerts on Buy ≥12/15 or Sell ≥10/13
Hide unused levels to reduce clutter
Combine with AQuantPrice Dashboard (Small TF) for full system
IDEAL MARKETS
Forex (EURUSD, GBPUSD, USDJPY)
Indices (NAS100, SPX500, DAX)
Crypto (BTC, ETH – use 6–8 decimals)
Commodities (Gold, Oil)
🚀 **NEW INDICATOR ALERT**
**Aquantprice: Institutional Structure Matrix**
The **ALL-IN-ONE CPR Dashboard** used by smart money traders.
✅ **6 Timeframes in 1 Table** (Daily → Yearly)
✅ **15 Buy + 13 Sell Conditions** (Institutional Logic)
✅ **Hot Zones, CPR Width, PP Distance**
✅ **Fully Customizable – Show/Hide Any Level**
✅ **Real-Time Zone Detection** (Hot, Med, Low)
✅ **Precision up to 8 Decimals**
**No more switching charts. No more confusion.**
See **where institutions are positioned** — instantly.
👉 **Add to Chart Now**: Search **"Aquantprice: Institutional Structure Matrix"**
🔥 **Free Access | Pro-Level Insights**
*By AQuant – Trusted by 10,000+ Traders*
#CPR #PivotTrading #SmartMoney #TradingView
FINAL TAGLINE
"See What Institutions See — Before They Move."
Aquantprice: Institutional Structure Matrix
Your Edge. One Dashboard.
MESA Adaptive Ehlers Flow | AlphaNattMESA Adaptive Ehlers Flow | AlphaNatt
An advanced adaptive indicator based on John Ehlers' MESA (Maximum Entropy Spectrum Analysis) algorithm that automatically adjusts to market cycles in real-time, providing superior trend identification with minimal lag across all market conditions.
🎯 What Makes This Indicator Revolutionary?
Unlike traditional moving averages with fixed parameters, this indicator uses Hilbert Transform mathematics to detect the dominant market cycle and adapts its responsiveness accordingly:
Automatically detects market cycles using advanced signal processing
MAMA (MESA Adaptive Moving Average) adapts from fast to slow based on cycle phase
FAMA (Following Adaptive Moving Average) provides confirmation signals
Dynamic volatility bands that expand and contract with cycle detection
Zero manual optimization required - the indicator tunes itself
📊 Core Components
1. MESA Adaptive Moving Average (MAMA)
The MAMA is the crown jewel of adaptive indicators. It uses the Hilbert Transform to measure the market's dominant cycle and adjusts its smoothing factor in real-time:
During trending phases: Responds quickly to capture moves
During choppy phases: Smooths heavily to filter noise
Transition is automatic and seamless based on price action
Parameters:
Fast Limit: Maximum responsiveness (default: 0.5) - how fast the indicator can adapt
Slow Limit: Minimum responsiveness (default: 0.05) - maximum smoothing during consolidation
2. Following Adaptive Moving Average (FAMA)
The FAMA is a slower version of MAMA that follows the primary signal. The relationship between MAMA and FAMA provides powerful trend confirmation:
MAMA > FAMA: Bullish trend in progress
MAMA < FAMA: Bearish trend in progress
Crossovers signal potential trend changes
3. Hilbert Transform Cycle Detection
The indicator employs sophisticated DSP (Digital Signal Processing) techniques:
Detects the dominant cycle period (1.5 to 50 bars)
Measures phase relationships in the price data
Calculates adaptive alpha values based on cycle dynamics
Continuously updates as market character changes
⚡ Key Features
Adaptive Alpha Calculation
The indicator's "intelligence" comes from its adaptive alpha:
Alpha dynamically adjusts between Fast Limit and Slow Limit based on the rate of phase change in the market cycle. Rapid phase changes trigger faster adaptation, while stable cycles maintain smoother response.
Dynamic Volatility Bands
Unlike static bands, these adapt to both ATR volatility AND the current cycle state:
Bands widen when the indicator detects fast adaptation (trending)
Bands narrow during slow adaptation (consolidation)
Band Multiplier controls overall width (default: 1.5)
Provides context-aware support and resistance
Intelligent Color Coding
Cyan: Bullish regime (MAMA > FAMA and price > MAMA)
Magenta: Bearish regime (MAMA < FAMA and price < MAMA)
Gray: Neutral/transitional state
📈 Trading Strategies
Trend Following Strategy
The MESA indicator excels at identifying and riding strong trends while automatically reducing sensitivity during choppy periods.
Entry Signals:
Long: MAMA crosses above FAMA with price closing above MAMA
Short: MAMA crosses below FAMA with price closing below MAMA
Exit/Management:
Exit longs when MAMA crosses below FAMA
Exit shorts when MAMA crosses above FAMA
Use dynamic bands as trailing stop references
Mean Reversion Strategy
When price extends beyond the dynamic bands during established trends, look for bounces back toward the MAMA line.
Setup Conditions:
Strong trend confirmed by MAMA/FAMA alignment
Price touches or exceeds outer band
Enter on first sign of reversal toward MAMA
Target: Return to MAMA line or opposite band
Cycle-Based Swing Trading
The indicator's cycle detection makes it ideal for swing trading:
Enter on MAMA/FAMA crossovers
Hold through the detected cycle period
Exit on counter-crossover or band extremes
Works exceptionally well on 4H to Daily timeframes
🔬 Technical Background
The Hilbert Transform
The Hilbert Transform is a mathematical operation used in signal processing to extract instantaneous phase and frequency information from a signal. In trading applications:
Separates trend from cycle components
Identifies the dominant market cycle without curve-fitting
Provides leading indicators of trend changes
MESA Algorithm Components
Smoothing: 4-bar weighted moving average for noise reduction
Detrending: Removes linear price trend to isolate cycles
InPhase & Quadrature: Orthogonal components for phase measurement
Homodyne Discriminator: Calculates instantaneous period
Adaptive Alpha: Converts period to smoothing factor
MAMA/FAMA: Final adaptive moving averages
⚙️ Optimization Guide
Fast Limit (0.1 - 0.9)
Higher values (0.5-0.9): More responsive, better for volatile markets and lower timeframes
Lower values (0.1-0.3): Smoother response, better for stable markets and higher timeframes
Default 0.5: Balanced for most applications
Slow Limit (0.01 - 0.1)
Higher values (0.05-0.1): Less smoothing during consolidation, more signals
Lower values (0.01-0.03): Heavy smoothing during chop, fewer but cleaner signals
Default 0.05: Good noise filtering while maintaining responsiveness
Band Multiplier (0.5 - 3.0)
Adjust based on instrument volatility
Backtest to find optimal value for your specific market
1.5 works well for most forex and equity indices
Consider higher values (2.0-2.5) for cryptocurrencies
🎨 Visual Interpretation
The gradient visualization shows probability zones around the MESA line:
MESA line: The adaptive trend center
Band expansion: Indicates strong cycle detection and trending
Band contraction: Indicates consolidation or ranging market
Color intensity: Shows confidence in trend direction
💡 Best Practices
Let it adapt: Give the indicator 50+ bars to properly calibrate to the market
Combine timeframes: Use higher timeframe MESA for trend bias, lower for entries
Respect the bands: Price rarely stays outside bands for extended periods
Watch for compression: Narrow bands often precede explosive moves
Volume confirmation: Combine with volume for higher probability setups
📊 Optimal Timeframes
15m - 1H: Day trading with Fast Limit 0.6-0.8
4H - Daily: Swing trading with Fast Limit 0.4-0.6 (recommended)
Weekly: Position trading with Fast Limit 0.2-0.4
⚠️ Important Considerations
The indicator needs time to "learn" the market - avoid trading the first 50 bars after applying
Extreme gap events can temporarily disrupt cycle calculations
Works best in markets with detectable cyclical behavior
Less effective during news events or extreme volatility spikes
Consider the detected cycle period for position holding times
🔍 What Makes MESA Superior?
Compared to traditional indicators:
vs. Fixed MAs: Automatically adjusts to market conditions instead of using one-size-fits-all parameters
vs. Other Adaptive MAs: Uses true DSP mathematics rather than simple volatility adjustments
vs. Manual Optimization: Continuously re-optimizes itself in real-time
vs. Lagging Indicators: Hilbert Transform provides earlier trend change detection
🎓 Understanding Adaptation
The magic of MESA is that it solves the eternal dilemma of technical analysis: be fast and get whipsawed in chop, or be smooth and miss the early move. MESA does both by detecting when to be fast and when to be smooth.
Adaptation in Action:
Strong trend starts → MESA quickly detects phase change → Fast Limit kicks in → Early entry
Trend continues → Phase stabilizes → MESA maintains moderate speed → Smooth ride
Consolidation begins → Phase changes slow → Slow Limit engages → Whipsaw avoidance
🚀 Advanced Applications
Multi-timeframe confluence: Use MESA on 3 timeframes for high-probability setups
Divergence detection: Watch for MAMA/price divergences at band extremes
Cycle period analysis: The internal period calculation can guide position duration
Band squeeze trading: Narrow bands + MAMA/FAMA cross = high-probability breakout
Created by AlphaNatt - Based on John Ehlers' MESA research. For educational purposes. Always practice proper risk management. Not financial advice. Always DYOR.
MULTI-CONDITION RSI SIGNAL GENERATOR═══════════════════════════════════════════════
MULTI-CONDITION RSI SIGNAL GENERATOR
═══════════════════════════════════════════════
OVERVIEW:
This indicator generates trading signals based on Relative Strength Index (RSI) movements with multiple confirmation layers designed to filter false signals and identify high-probability reversal opportunities.
═══════════════════════════════════════════════
WHAT MAKES THIS ORIGINAL:
═══════════════════════════════════════════════
Unlike basic RSI indicators that simply plot overbought/oversold crossovers, this system combines FOUR distinct confirmation mechanisms:
1. PERSISTENCE FILTERING - Requires RSI to remain in extreme zones for a minimum duration
2. LOOKBACK VALIDATION - Verifies recent extreme zone visits before signaling
3. DIVERGENCE DETECTION - Identifies price/RSI divergence for stronger signals
4. MOMENTUM CONFIRMATION - Provides trend-continuation entries via midline crosses
This multi-layered approach significantly reduces whipsaw trades that plague simple RSI crossover systems.
═══════════════════════════════════════════════
HOW IT WORKS (TECHNICAL METHODOLOGY):
═══════════════════════════════════════════════
STEP 1: RSI CALCULATION
- Standard RSI calculation using user-defined period (default: 14)
- Monitors two extreme zones: Overbought (default: 70) and Oversold (default: 30)
STEP 2: PERSISTENCE FILTERING
The script counts how many bars RSI has spent in extreme zones within the lookback period:
- For overbought signals: Counts bars where RSI > 70
- For oversold signals: Counts bars where RSI < 30
- Signal only triggers if count >= Minimum Duration (default: 4 bars)
This filters out brief spikes that immediately reverse, focusing on sustained extreme conditions that are more likely to lead to genuine reversals.
STEP 3: LOOKBACK VALIDATION
- Checks if RSI reached extreme zones within the Lookback Bars period (default: 20)
- Uses ta.highest() and ta.lowest() functions to verify recent extremes
- Ensures we're trading reversals from meaningful extremes, not random crossovers
STEP 4: BASIC SIGNAL GENERATION
- BUY SIGNAL: RSI crosses above the oversold level (30) after meeting persistence and lookback conditions
- SELL SIGNAL: RSI crosses below the overbought level (70) after meeting persistence and lookback conditions
STEP 5: DIVERGENCE DETECTION
The script identifies two types of divergence over the Divergence Lookback period (default: 5 bars):
A) BULLISH DIVERGENCE (indicates potential upward reversal):
- Price makes a lower low (current low < previous low)
- RSI makes a higher low (current RSI low > previous RSI low)
- Suggests weakening downward momentum
B) BEARISH DIVERGENCE (indicates potential downward reversal):
- Price makes a higher high (current high > previous high)
- RSI makes a lower high (current RSI high < previous RSI high)
- Suggests weakening upward momentum
STEP 6: STRONG SIGNAL CONFIRMATION
- STRONG BUY: Basic buy signal + bullish divergence present
- STRONG SELL: Basic sell signal + bearish divergence present
- These represent the highest-probability setups
STEP 7: MOMENTUM SIGNALS (OPTIONAL)
- MOMENTUM BUY: RSI crosses above 50 after being oversold (trend continuation)
- MOMENTUM SELL: RSI crosses below 50 after being overbought (trend continuation)
- Smaller signals for traders who want trend-following entries
═══════════════════════════════════════════════
SIGNAL TYPES AND VISUAL INDICATORS:
═══════════════════════════════════════════════
📈 GREEN TRIANGLE (below bar) - Standard Buy Signal
RSI crossed above oversold level with confirmation filters
📉 RED TRIANGLE (above bar) - Standard Sell Signal
RSI crossed below overbought level with confirmation filters
🔵 BLUE TRIANGLE (below bar) - Strong Buy Signal
Buy signal + bullish divergence (HIGHEST PRIORITY)
🟣 PURPLE TRIANGLE (above bar) - Strong Sell Signal
Sell signal + bearish divergence (HIGHEST PRIORITY)
🟢 GREEN CIRCLE (small) - Momentum Buy
RSI crosses above 50 after oversold conditions
🔴 RED CIRCLE (small) - Momentum Sell
RSI crosses below 50 after overbought conditions
BACKGROUND SHADING:
- Light red background: RSI currently overbought
- Light green background: RSI currently oversold
═══════════════════════════════════════════════
PARAMETER SETTINGS:
═══════════════════════════════════════════════
1. OVERBOUGHT LEVEL (default: 70, range: 50-90)
- Higher values = fewer but stronger overbought signals
- Lower values = more sensitive to overbought conditions
- Recommended: 70 for standard markets, 80 for crypto/volatile assets
2. OVERSOLD LEVEL (default: 30, range: 10-50)
- Lower values = fewer but stronger oversold signals
- Higher values = more sensitive to oversold conditions
- Recommended: 30 for standard markets, 20 for crypto/volatile assets
3. RSI PERIOD (default: 14, range: 2-50)
- Standard RSI calculation period
- Lower = more sensitive/faster signals
- Higher = smoother/slower signals
- Recommended: 14 (industry standard)
4. MINIMUM DURATION (default: 4, range: 1-20)
- Required bars in extreme zone before signal
- Higher values = fewer signals but better quality
- Lower values = more signals but more false positives
- Recommended: 3-5 for day trading, 5-10 for swing trading
5. LOOKBACK BARS (default: 20, range: 5-100)
- How far back to check for extreme zone visits
- Should match your typical trading timeframe
- Recommended: 20 for intraday, 50 for daily charts
6. DIVERGENCE LOOKBACK (default: 5, range: 2-20)
- Period for comparing price/RSI highs and lows
- Lower values = more frequent divergence signals
- Higher values = more significant divergences
- Recommended: 5-10 depending on timeframe
═══════════════════════════════════════════════
HOW TO USE THIS INDICATOR:
═══════════════════════════════════════════════
RECOMMENDED TRADING APPROACH:
1. PRIMARY ENTRIES: Focus on Strong Buy/Sell signals (blue/purple triangles)
- These have the highest win rate due to divergence confirmation
- Wait for price action confirmation (support/resistance, candlestick patterns)
2. SECONDARY ENTRIES: Regular Buy/Sell signals (green/red triangles)
- Use these when Strong signals are infrequent
- Require additional confirmation from other indicators or chart patterns
3. TREND CONTINUATION: Momentum signals (small circles)
- Best used when overall trend is clear
- Not recommended for reversal trading
4. FILTER TRADES: Use background shading as context
- Be cautious entering longs when background is red (overbought)
- Be cautious entering shorts when background is green (oversold)
RISK MANAGEMENT GUIDELINES:
- Never risk more than 2-5% of capital per trade
- Use stop losses below recent swing lows (buys) or above swing highs (sells)
- Target at least 1.5:1 reward-to-risk ratio
- Consider position sizing based on signal strength
TIMEFRAME RECOMMENDATIONS:
- 15min - 1hour: Day trading with adjusted parameters (lower minimum duration)
- 4hour - Daily: Swing trading with default parameters
- Weekly: Position trading with increased lookback periods
COMPLEMENTARY TOOLS:
This indicator works best when combined with:
- Support and resistance levels
- Trend indicators (moving averages, trend lines)
- Volume analysis
- Price action patterns (engulfing candles, pin bars)
═══════════════════════════════════════════════
LIMITATIONS AND CONSIDERATIONS:
═══════════════════════════════════════════════
- This is NOT a standalone trading system - requires additional analysis
- RSI-based strategies perform best in ranging/choppy markets
- May generate fewer signals in strong trending markets
- Divergence signals can be early - wait for price confirmation
- Not recommended for highly illiquid assets
- Backtest on your specific market before live trading
- No indicator is 100% accurate - always use proper risk management
═══════════════════════════════════════════════
TECHNICAL NOTES:
═══════════════════════════════════════════════
- Code is original and does not reuse external libraries
- Uses Pine Script v5 native functions only
- Alert conditions included for all signal types
- No repainting - signals appear and remain fixed
- Efficient calculation methods minimize processing load
═══════════════════════════════════════════════
ALERT SETUP:
═══════════════════════════════════════════════
Four alert conditions are available:
1. "Buy Alert" - Triggers on standard buy signals
2. "Sell Alert" - Triggers on standard sell signals
3. "Strong Buy Alert" - Triggers on divergence-confirmed buy signals
4. "Strong Sell Alert" - Triggers on divergence-confirmed sell signals
To set up alerts: Right-click chart → Add Alert → Select desired condition
═══════════════════════════════════════════════
This indicator is provided for educational and informational purposes. Always practice proper risk management and never trade with money you cannot afford to lose.
Sector Rotation & Money Flow Dashboard📊 Overview
The Sector Rotation & Money Flow Dashboard is a comprehensive market analysis tool that tracks 39 major sector ETFs in real-time, providing institutional-grade insights into sector rotation, momentum shifts, and money flow patterns. This indicator helps traders identify which sectors are attracting capital, which are losing favor, and where the next opportunities might emerge.
Perfect for swing traders, position traders, and investors who want to stay ahead of sector rotation and ride the strongest trends while avoiding weak sectors.
🎯 What This Indicator Does
Tracks 39 Major Sectors: From technology to utilities, cryptocurrencies to commodities
Calculates Multiple Timeframes: 1-week, 1-month, 3-month, and 6-month performance
Advanced Momentum Metrics: Proprietary momentum score and acceleration calculations
Relative Strength Analysis: Compare sector performance against any benchmark index
Money Flow Signals: Visual indicators showing where institutional money is moving
Smart Filtering: Pre-built strategy filters for different trading styles
Trend Detection: Emoji-based visual system for quick trend identification
💡 Key Features
1. Performance Metrics
Multiple timeframe analysis (1W, 1M, 3M, 6M)
Month-over-month change tracking
Relative strength vs benchmark index
2. Advanced Analytics
Momentum Score: Weighted composite of recent performance
Acceleration: Rate of change in momentum (second derivative)
Money Flow Signals: IN/OUT/TURN/WATCH indicators
3. Strategy Preset Filters
🎯 Swing Trade: High momentum opportunities
📈 Trend Follow: Established uptrends
🔄 Mean Reversion: Oversold bounce candidates
💎 Value Hunt: Deep value opportunities
🚀 Breakout: Emerging strength
⚠️ Risk Off: Sectors to avoid
4. Customization
All 39 sector ETFs can be customized
Adjustable benchmark index
Flexible display options
Multiple sorting methods
📋 Settings Documentation
Display Settings
Show Table (Default: On)
Toggles the entire dashboard display
Table Position (Default: Middle Center)
Choose from 9 positions on your chart
Options: Top/Middle/Bottom × Left/Center/Right
Rows to Show (Default: 15)
Number of sectors displayed (5-40)
Useful for focusing on top/bottom performers
Sort By (Default: Momentum)
1M/3M/6M: Sort by specific timeframe performance
Momentum: Weighted recent performance score
Acceleration: Rate of momentum change
1M Change: Month-over-month improvement
RS: Relative strength vs benchmark
Flow: IN First: Prioritize sectors with inflows
Flow: TURN First: Focus on reversal candidates
Recovery Plays: Oversold sectors recovering
Oversold Bounce: Deepest declines with positive signs
Top Gainers/Losers 3M: Best/worst quarterly performers
Best Acc + Mom: Combined strength score
Worst Acc (Topping): Sectors losing momentum
Filter Settings
Strategy Preset Filter (Default: All)
All: No filtering
🎯 Swing Trade: Mom >5, Acc >2, Money flowing in
📈 Trend Follow: Positive 1M & 3M, RS >0
🔄 Mean Reversion: Oversold but improving
💎 Value Hunt: Down >10% with recovery signs
🚀 Breakout: Rapid momentum surge
⚠️ Risk Off: Declining or topping sectors
Custom Flow Filter: Use manual flow filter
Custom Flow Signal Filter (Default: All)
Only active when Strategy Preset = "Custom Flow Filter"
IN Only: Strong inflows
TURN Only: Reversal signals
WATCH Only: Recovery candidates
OUT Only: Outflow sectors
Active Flows Only: Any non-neutral signal
Hide Low Volume ETFs (Default: Off)
Filters out illiquid sectors (future enhancement)
Visual Settings
Show Trend Emojis (Default: On)
🚀 Breakout (Strong 1M + High Acceleration)
🔥 Hot Recovery (From -10% to positive)
💪 Steady Uptrend (All timeframes positive)
➡️ Sideways/Ranging
⚠️ Warning/Topping (Up >15%, now slowing)
📉 Falling (Negative + declining)
🔄 Bottoming (Improving from lows)
Compact Mode (Default: Off)
Removes decimals for cleaner display
Useful when showing many rows
Min Data Points Required (Default: 3)
Minimum data points needed to display a sector
Prevents showing sectors with insufficient data
Relative Strength Settings
RS Benchmark Index (Default: AMEX:SPY)
Index to compare all sectors against
Can use SPY, QQQ, IWM, or any other index
RS Period (Days) (Default: 21)
Lookback period for RS calculation
21 days = 1 month, 63 days = 3 months, etc.
Sector ETF Settings (Groups 1-39)
Each sector has two inputs:
Symbol: The ticker (e.g., "AMEX:XLF")
Name: Display name (e.g., "Financials")
All 39 sectors can be customized to track different ETFs or markets.
📈 Column Explanations
Sector: ETF name/description
1M%: 1-month (21-day) performance
3M%: 3-month (63-day) performance
6M%: 6-month (126-day) performance
Mom: Momentum score (weighted average, recent-biased)
Acc: Acceleration (momentum rate of change)
Δ1M: Month-over-month change
RS: Relative strength vs benchmark
Flow: Money flow signal
↗️ IN: Strong inflows
🔄 TURN: Potential reversal
👀 WATCH: Recovery candidate
↘️ OUT: Outflows
—: Neutral
🎮 Usage Tips
For Swing Traders (3-14 days)
Use "🎯 Swing Trade" filter
Sort by "Acceleration" or "Momentum"
Look for Flow = "IN" and Mom >10
Confirm with positive RS
For Position Traders (2-8 weeks)
Use "📈 Trend Follow" filter
Sort by "RS" or "Best Acc + Mom"
Focus on consistent green across timeframes
Ensure RS >3 for market leaders
For Value Investors
Use "💎 Value Hunt" filter
Sort by "Recovery Plays" or "Top Losers 3M"
Look for improving Δ1M
Check for "WATCH" or "TURN" signals
For Risk Management
Regularly check "⚠️ Risk Off" filter
Sort by "Worst Acc (Topping)"
Review holdings for ⚠️ warning emojis
Exit sectors showing "OUT" flow
Market Regime Recognition
Bull Market: Many sectors showing "IN" flow, positive RS
Bear Market: Widespread "OUT" flows, negative RS
Rotation: Mixed flows, some "IN" while others "OUT"
Recovery: Multiple "TURN" and "WATCH" signals
🔧 Pro Tips
Combine Filters + Sorting: Filter first to narrow candidates, then sort to prioritize
Multi-Timeframe Confirmation: Best setups show alignment across 1M, 3M, and momentum
RS is Key: Sectors outperforming SPY (RS >0) tend to continue outperforming
Acceleration Matters: Positive acceleration often precedes price breakouts
Flow Transitions: "WATCH" → "TURN" → "IN" progression identifies new trends early
Regular Scans:
Daily: Check "Acceleration" sort
Weekly: Review "1M Change"
Monthly: Analyze "RS" shifts
Divergence Signals:
Price up but Acceleration down = Potential top
Price down but Acceleration up = Potential bottom
Sector Pairs Trading: Long sectors with "IN" flow, short sectors with "OUT" flow
⚠️ Important Notes
This indicator makes 40 security requests (maximum allowed)
Best used on Daily timeframe
Data updates in real-time during market hours
Some ETFs may show "—" if data is unavailable
🎯 Common Strategies
"Follow the Flow"
Only trade sectors showing "IN" flow with positive RS
"Rotation Catcher"
Focus on "TURN" signals in sectors down >15% from highs
"Momentum Rider"
Trade top 3 sectors by Momentum score, exit when Acceleration turns negative
"Mean Reversion"
Buy sectors in bottom 20% by 3M performance when Δ1M improves
"Relative Strength Leader"
Maintain positions only in sectors with RS >5
Not financial advice - always do additional research






















