[blackcat] L3 Inverted VixFix Indicator with RSI ScalingThis pine script that creates a custom indicator called the Inverted VixFix Indicator with RSI Scaling. This indicator combines two well-known technical indicators - the VixFix and the RSI - to create a more comprehensive view of market conditions.
The VixFix is a technical indicator that helps identify market trends and volatility. It is based on the highest close of the past 22 bars and the lowest low of the same period. The VixFix is calculated as 100 times the difference between the highest close and the current low divided by the highest close. The indicator is inverted, meaning that high values indicate low volatility and low values indicate high volatility.
The RSI (Relative Strength Index) is a momentum indicator that measures the strength of price action in a given period. It is calculated based on the closing prices of the selected asset. The RSI is scaled to a range between 0 and 100, with values above 70 indicating overbought conditions and values below 30 indicating oversold conditions.
The Inverted VixFix Indicator with RSI Scaling combines these two indicators to give a more comprehensive view of market conditions. The RSI is first scaled to a range between 0 and 100 using the RSI Length, RSI Overbought, and RSI Oversold inputs. The Inverted VixFix is then scaled to the same range as the RSI using the RSI Overbought and RSI Oversold inputs. The two indicators are then combined to create the Inverted VixFix Indicator with RSI Scaling.
To smooth out the RSI, the script also uses the ALMA (Arnaud Legoux Moving Average) function. This function is a type of moving average that uses a variable smoothing factor to give more weight to recent price action. In this script, the ALMA is applied to the scaled RSI with a length of 3, a offset of 0.58, and a sigma of 6.
To help visualize the indicator, the script also creates visual elements such as threshold lines and fills. The Bull Threshold line is drawn at the RSI Overbought level and the Bear Threshold line is drawn at the RSI Oversold level. A fill is then created between these two lines using the color purple and opacity set to 70%.
Overall, the Inverted VixFix Indicator with RSI Scaling is a useful tool for traders looking for a more comprehensive view of market conditions. By combining the VixFix and RSI indicators, this script provides a more nuanced view of market trends and volatility.
在腳本中搜尋"Volatility"
Adaptive Genesis Engine [AGE]ADAPTIVE GENESIS ENGINE (AGE)
Pure Signal Evolution Through Genetic Algorithms
Where Darwin Meets Technical Analysis
🧬 WHAT YOU'RE GETTING - THE PURE INDICATOR
This is a technical analysis indicator - it generates signals, visualizes probability, and shows you the evolutionary process in real-time. This is NOT a strategy with automatic execution - it's a sophisticated signal generation system that you control .
What This Indicator Does:
Generates Long/Short entry signals with probability scores (35-88% range)
Evolves a population of up to 12 competing strategies using genetic algorithms
Validates strategies through walk-forward optimization (train/test cycles)
Visualizes signal quality through premium gradient clouds and confidence halos
Displays comprehensive metrics via enhanced dashboard
Provides alerts for entries and exits
Works on any timeframe, any instrument, any broker
What This Indicator Does NOT Do:
Execute trades automatically
Manage positions or calculate position sizes
Place orders on your behalf
Make trading decisions for you
This is pure signal intelligence. AGE tells you when and how confident it is. You decide whether and how much to trade.
🔬 THE SCIENCE: GENETIC ALGORITHMS MEET TECHNICAL ANALYSIS
What Makes This Different - The Evolutionary Foundation
Most indicators are static - they use the same parameters forever, regardless of market conditions. AGE is alive . It maintains a population of competing strategies that evolve, adapt, and improve through natural selection principles:
Birth: New strategies spawn through crossover breeding (combining DNA from fit parents) plus random mutation for exploration
Life: Each strategy trades virtually via shadow portfolios, accumulating wins/losses, tracking drawdown, and building performance history
Selection: Strategies are ranked by comprehensive fitness scoring (win rate, expectancy, drawdown control, signal efficiency)
Death: Weak strategies are culled periodically, with elite performers (top 2 by default) protected from removal
Evolution: The gene pool continuously improves as successful traits propagate and unsuccessful ones die out
This is not curve-fitting. Each new strategy must prove itself on out-of-sample data through walk-forward validation before being trusted for live signals.
🧪 THE DNA: WHAT EVOLVES
Every strategy carries a 10-gene chromosome controlling how it interprets market data:
Signal Sensitivity Genes
Entropy Sensitivity (0.5-2.0): Weight given to market order/disorder calculations. Low values = conservative, require strong directional clarity. High values = aggressive, act on weaker order signals.
Momentum Sensitivity (0.5-2.0): Weight given to RSI/ROC/MACD composite. Controls responsiveness to momentum shifts vs. mean-reversion setups.
Structure Sensitivity (0.5-2.0): Weight given to support/resistance positioning. Determines how much price location within swing range matters.
Probability Adjustment Genes
Probability Boost (-0.10 to +0.10): Inherent bias toward aggressive (+) or conservative (-) entries. Acts as personality trait - some strategies naturally optimistic, others pessimistic.
Trend Strength Requirement (0.3-0.8): Minimum trend conviction needed before signaling. Higher values = only trades strong trends, lower values = acts in weak/sideways markets.
Volume Filter (0.5-1.5): Strictness of volume confirmation. Higher values = requires strong volume, lower values = volume less important.
Risk Management Genes
ATR Multiplier (1.5-4.0): Base volatility scaling for all price levels. Controls whether strategy uses tight or wide stops/targets relative to ATR.
Stop Multiplier (1.0-2.5): Stop loss tightness. Lower values = aggressive profit protection, higher values = more breathing room.
Target Multiplier (1.5-4.0): Profit target ambition. Lower values = quick scalping exits, higher values = swing trading holds.
Adaptation Gene
Regime Adaptation (0.0-1.0): How much strategy adjusts behavior based on detected market regime (trending/volatile/choppy). Higher values = more reactive to regime changes.
The Magic: AGE doesn't just try random combinations. Through tournament selection and fitness-weighted crossover, successful gene combinations spread through the population while unsuccessful ones fade away. Over 50-100 bars, you'll see the population converge toward genes that work for YOUR instrument and timeframe.
📊 THE SIGNAL ENGINE: THREE-LAYER SYNTHESIS
Before any strategy generates a signal, AGE calculates probability through multi-indicator confluence:
Layer 1 - Market Entropy (Information Theory)
Measures whether price movements exhibit directional order or random walk characteristics:
The Math:
Shannon Entropy = -Σ(p × log(p))
Market Order = 1 - (Entropy / 0.693)
What It Means:
High entropy = choppy, random market → low confidence signals
Low entropy = directional market → high confidence signals
Direction determined by up-move vs down-move dominance over lookback period (default: 20 bars)
Signal Output: -1.0 to +1.0 (bearish order to bullish order)
Layer 2 - Momentum Synthesis
Combines three momentum indicators into single composite score:
Components:
RSI (40% weight): Normalized to -1/+1 scale using (RSI-50)/50
Rate of Change (30% weight): Percentage change over lookback (default: 14 bars), clamped to ±1
MACD Histogram (30% weight): Fast(12) - Slow(26), normalized by ATR
Why This Matters: RSI catches mean-reversion opportunities, ROC catches raw momentum, MACD catches momentum divergence. Weighting favors RSI for reliability while keeping other perspectives.
Signal Output: -1.0 to +1.0 (strong bearish to strong bullish)
Layer 3 - Structure Analysis
Evaluates price position within swing range (default: 50-bar lookback):
Position Classification:
Bottom 20% of range = Support Zone → bullish bounce potential
Top 20% of range = Resistance Zone → bearish rejection potential
Middle 60% = Neutral Zone → breakout/breakdown monitoring
Signal Logic:
At support + bullish candle = +0.7 (strong buy setup)
At resistance + bearish candle = -0.7 (strong sell setup)
Breaking above range highs = +0.5 (breakout confirmation)
Breaking below range lows = -0.5 (breakdown confirmation)
Consolidation within range = ±0.3 (weak directional bias)
Signal Output: -1.0 to +1.0 (bearish structure to bullish structure)
Confluence Voting System
Each layer casts a vote (Long/Short/Neutral). The system requires minimum 2-of-3 agreement (configurable 1-3) before generating a signal:
Examples:
Entropy: Bullish, Momentum: Bullish, Structure: Neutral → Signal generated (2 long votes)
Entropy: Bearish, Momentum: Neutral, Structure: Neutral → No signal (only 1 short vote)
All three bullish → Signal generated with +5% probability bonus
This is the key to quality. Single indicators give too many false signals. Triple confirmation dramatically improves accuracy.
📈 PROBABILITY CALCULATION: HOW CONFIDENCE IS MEASURED
Base Probability:
Raw_Prob = 50% + (Average_Signal_Strength × 25%)
Then AGE applies strategic adjustments:
Trend Alignment:
Signal with trend: +4%
Signal against strong trend: -8%
Weak/no trend: no adjustment
Regime Adaptation:
Trending market (efficiency >50%, moderate vol): +3%
Volatile market (vol ratio >1.5x): -5%
Choppy market (low efficiency): -2%
Volume Confirmation:
Volume > 70% of 20-bar SMA: no change
Volume below threshold: -3%
Volatility State (DVS Ratio):
High vol (>1.8x baseline): -4% (reduce confidence in chaos)
Low vol (<0.7x baseline): -2% (markets can whipsaw in compression)
Moderate elevated vol (1.0-1.3x): +2% (trending conditions emerging)
Confluence Bonus:
All 3 indicators agree: +5%
2 of 3 agree: +2%
Strategy Gene Adjustment:
Probability Boost gene: -10% to +10%
Regime Adaptation gene: scales regime adjustments by 0-100%
Final Probability: Clamped between 35% (minimum) and 88% (maximum)
Why These Ranges?
Below 35% = too uncertain, better not to signal
Above 88% = unrealistic, creates overconfidence
Sweet spot: 65-80% for quality entries
🔄 THE SHADOW PORTFOLIO SYSTEM: HOW STRATEGIES COMPETE
Each active strategy maintains a virtual trading account that executes in parallel with real-time data:
Shadow Trading Mechanics
Entry Logic:
Calculate signal direction, probability, and confluence using strategy's unique DNA
Check if signal meets quality gate:
Probability ≥ configured minimum threshold (default: 65%)
Confluence ≥ configured minimum (default: 2 of 3)
Direction is not zero (must be long or short, not neutral)
Verify signal persistence:
Base requirement: 2 bars (configurable 1-5)
Adapts based on probability: high-prob signals (75%+) enter 1 bar faster, low-prob signals need 1 bar more
Adjusts for regime: trending markets reduce persistence by 1, volatile markets add 1
Apply additional filters:
Trend strength must exceed strategy's requirement gene
Regime filter: if volatile market detected, probability must be 72%+ to override
Volume confirmation required (volume > 70% of average)
If all conditions met for required persistence bars, enter shadow position at current close price
Position Management:
Entry Price: Recorded at close of entry bar
Stop Loss: ATR-based distance = ATR × ATR_Mult (gene) × Stop_Mult (gene) × DVS_Ratio
Take Profit: ATR-based distance = ATR × ATR_Mult (gene) × Target_Mult (gene) × DVS_Ratio
Position: +1 (long) or -1 (short), only one at a time per strategy
Exit Logic:
Check if price hit stop (on low) or target (on high) on current bar
Record trade outcome in R-multiples (profit/loss normalized by ATR)
Update performance metrics:
Total trades counter incremented
Wins counter (if profit > 0)
Cumulative P&L updated
Peak equity tracked (for drawdown calculation)
Maximum drawdown from peak recorded
Enter cooldown period (default: 8 bars, configurable 3-20) before next entry allowed
Reset signal age counter to zero
Walk-Forward Tracking:
During position lifecycle, trades are categorized:
Training Phase (first 250 bars): Trade counted toward training metrics
Testing Phase (next 75 bars): Trade counted toward testing metrics (out-of-sample)
Live Phase (after WFO period): Trade counted toward overall metrics
Why Shadow Portfolios?
No lookahead bias (uses only data available at the bar)
Realistic execution simulation (entry on close, stop/target checks on high/low)
Independent performance tracking for true fitness comparison
Allows safe experimentation without risking capital
Each strategy learns from its own experience
🏆 FITNESS SCORING: HOW STRATEGIES ARE RANKED
Fitness is not just win rate. AGE uses a comprehensive multi-factor scoring system:
Core Metrics (Minimum 3 trades required)
Win Rate (30% of fitness):
WinRate = Wins / TotalTrades
Normalized directly (0.0-1.0 scale)
Total P&L (30% of fitness):
Normalized_PnL = (PnL + 300) / 600
Clamped 0.0-1.0. Assumes P&L range of -300R to +300R for normalization scale.
Expectancy (25% of fitness):
Expectancy = Total_PnL / Total_Trades
Normalized_Expectancy = (Expectancy + 30) / 60
Clamped 0.0-1.0. Rewards consistency of profit per trade.
Drawdown Control (15% of fitness):
Normalized_DD = 1 - (Max_Drawdown / 15)
Clamped 0.0-1.0. Penalizes strategies that suffer large equity retracements from peak.
Sample Size Adjustment
Quality Factor:
<50 trades: 1.0 (full weight, small sample)
50-100 trades: 0.95 (slight penalty for medium sample)
100 trades: 0.85 (larger penalty for large sample)
Why penalize more trades? Prevents strategies from gaming the system by taking hundreds of tiny trades to inflate statistics. Favors quality over quantity.
Bonus Adjustments
Walk-Forward Validation Bonus:
if (WFO_Validated):
Fitness += (WFO_Efficiency - 0.5) × 0.1
Strategies proven on out-of-sample data receive up to +10% fitness boost based on test/train efficiency ratio.
Signal Efficiency Bonus (if diagnostics enabled):
if (Signals_Evaluated > 10):
Pass_Rate = Signals_Passed / Signals_Evaluated
Fitness += (Pass_Rate - 0.1) × 0.05
Rewards strategies that generate high-quality signals passing the quality gate, not just profitable trades.
Final Fitness: Clamped at 0.0 minimum (prevents negative fitness values)
Result: Elite strategies typically achieve 0.50-0.75 fitness. Anything above 0.60 is excellent. Below 0.30 is prime candidate for culling.
🔬 WALK-FORWARD OPTIMIZATION: ANTI-OVERFITTING PROTECTION
This is what separates AGE from curve-fitted garbage indicators.
The Three-Phase Process
Every new strategy undergoes a rigorous validation lifecycle:
Phase 1 - Training Window (First 250 bars, configurable 100-500):
Strategy trades normally via shadow portfolio
All trades count toward training performance metrics
System learns which gene combinations produce profitable patterns
Tracks independently: Training_Trades, Training_Wins, Training_PnL
Phase 2 - Testing Window (Next 75 bars, configurable 30-200):
Strategy continues trading without any parameter changes
Trades now count toward testing performance metrics (separate tracking)
This is out-of-sample data - strategy has never seen these bars during "optimization"
Tracks independently: Testing_Trades, Testing_Wins, Testing_PnL
Phase 3 - Validation Check:
Minimum_Trades = 5 (configurable 3-15)
IF (Train_Trades >= Minimum AND Test_Trades >= Minimum):
WR_Efficiency = Test_WinRate / Train_WinRate
Expectancy_Efficiency = Test_Expectancy / Train_Expectancy
WFO_Efficiency = (WR_Efficiency + Expectancy_Efficiency) / 2
IF (WFO_Efficiency >= 0.55): // configurable 0.3-0.9
Strategy.Validated = TRUE
Strategy receives fitness bonus
ELSE:
Strategy receives 30% fitness penalty
ELSE:
Validation deferred (insufficient trades in one or both periods)
What Validation Means
Validated Strategy (Green "✓ VAL" in dashboard):
Performed at least 55% as well on unseen data compared to training data
Gets fitness bonus: +(efficiency - 0.5) × 0.1
Receives priority during tournament selection for breeding
More likely to be chosen as active trading strategy
Unvalidated Strategy (Orange "○ TRAIN" in dashboard):
Failed to maintain performance on test data (likely curve-fitted to training period)
Receives 30% fitness penalty (0.7x multiplier)
Makes strategy prime candidate for culling
Can still trade but with lower selection probability
Insufficient Data (continues collecting):
Hasn't completed both training and testing periods yet
OR hasn't achieved minimum trade count in both periods
Validation check deferred until requirements met
Why 55% Efficiency Threshold?
If a strategy earned 10R during training but only 5.5R during testing, it still proved an edge exists beyond random luck. Requiring 100% efficiency would be unrealistic - market conditions change between periods. But requiring >50% ensures the strategy didn't completely degrade on fresh data.
The Protection: Strategies that work great on historical data but fail on new data are automatically identified and penalized. This prevents the population from being polluted by overfitted strategies that would fail in live trading.
🌊 DYNAMIC VOLATILITY SCALING (DVS): ADAPTIVE STOP/TARGET PLACEMENT
AGE doesn't use fixed stop distances. It adapts to current volatility conditions in real-time.
Four Volatility Measurement Methods
1. ATR Ratio (Simple Method):
Current_Vol = ATR(14) / Close
Baseline_Vol = SMA(Current_Vol, 100)
Ratio = Current_Vol / Baseline_Vol
Basic comparison of current ATR to 100-bar moving average baseline.
2. Parkinson (High-Low Range Based):
For each bar: HL = log(High / Low)
Parkinson_Vol = sqrt(Σ(HL²) / (4 × Period × log(2)))
More stable than close-to-close volatility. Captures intraday range expansion without overnight gap noise.
3. Garman-Klass (OHLC Based):
HL_Term = 0.5 × ²
CO_Term = (2×log(2) - 1) × ²
GK_Vol = sqrt(Σ(HL_Term - CO_Term) / Period)
Most sophisticated estimator. Incorporates all four price points (open, high, low, close) plus gap information.
4. Ensemble Method (Default - Median of All Three):
Ratio_1 = ATR_Current / ATR_Baseline
Ratio_2 = Parkinson_Current / Parkinson_Baseline
Ratio_3 = GK_Current / GK_Baseline
DVS_Ratio = Median(Ratio_1, Ratio_2, Ratio_3)
Why Ensemble?
Takes median to avoid outliers and false spikes
If ATR jumps but range-based methods stay calm, median prevents overreaction
If one method fails, other two compensate
Most robust approach across different market conditions
Sensitivity Scaling
Scaled_Ratio = (Raw_Ratio) ^ Sensitivity
Sensitivity 0.3: Cube root - heavily dampens volatility impact
Sensitivity 0.5: Square root - moderate dampening
Sensitivity 0.7 (Default): Balanced response to volatility changes
Sensitivity 1.0: Linear - full 1:1 volatility impact
Sensitivity 1.5: Exponential - amplified response to volatility spikes
Safety Clamps: Final DVS Ratio always clamped between 0.5x and 2.5x baseline to prevent extreme position sizing or stop placement errors.
How DVS Affects Shadow Trading
Every strategy's stop and target distances are multiplied by the current DVS ratio:
Stop Loss Distance:
Stop_Distance = ATR × ATR_Mult (gene) × Stop_Mult (gene) × DVS_Ratio
Take Profit Distance:
Target_Distance = ATR × ATR_Mult (gene) × Target_Mult (gene) × DVS_Ratio
Example Scenario:
ATR = 10 points
Strategy's ATR_Mult gene = 2.5
Strategy's Stop_Mult gene = 1.5
Strategy's Target_Mult gene = 2.5
DVS_Ratio = 1.4 (40% above baseline volatility - market heating up)
Stop = 10 × 2.5 × 1.5 × 1.4 = 52.5 points (vs. 37.5 in normal vol)
Target = 10 × 2.5 × 2.5 × 1.4 = 87.5 points (vs. 62.5 in normal vol)
Result:
During volatility spikes: Stops automatically widen to avoid noise-based exits, targets extend for bigger moves
During calm periods: Stops tighten for better risk/reward, targets compress for realistic profit-taking
Strategies adapt risk management to match current market behavior
🧬 THE EVOLUTIONARY CYCLE: SPAWN, COMPETE, CULL
Initialization (Bar 1)
AGE begins with 4 seed strategies (if evolution enabled):
Seed Strategy #0 (Balanced):
All sensitivities at 1.0 (neutral)
Zero probability boost
Moderate trend requirement (0.4)
Standard ATR/stop/target multiples (2.5/1.5/2.5)
Mid-level regime adaptation (0.5)
Seed Strategy #1 (Momentum-Focused):
Lower entropy sensitivity (0.7), higher momentum (1.5)
Slight probability boost (+0.03)
Higher trend requirement (0.5)
Tighter stops (1.3), wider targets (3.0)
Seed Strategy #2 (Entropy-Driven):
Higher entropy sensitivity (1.5), lower momentum (0.8)
Slight probability penalty (-0.02)
More trend tolerant (0.6)
Wider stops (1.8), standard targets (2.5)
Seed Strategy #3 (Structure-Based):
Balanced entropy/momentum (0.8/0.9), high structure (1.4)
Slight probability boost (+0.02)
Lower trend requirement (0.35)
Moderate risk parameters (1.6/2.8)
All seeds start with WFO validation bypassed if WFO is disabled, or must validate if enabled.
Spawning New Strategies
Timing (Adaptive):
Historical phase: Every 30 bars (configurable 10-100)
Live phase: Every 200 bars (configurable 100-500)
Automatically switches to live timing when barstate.isrealtime triggers
Conditions:
Current population < max population limit (default: 8, configurable 4-12)
At least 2 active strategies exist (need parents)
Available slot in population array
Selection Process:
Run tournament selection 3 times with different seeds
Each tournament: randomly sample active strategies, pick highest fitness
Best from 3 tournaments becomes Parent 1
Repeat independently for Parent 2
Ensures fit parents but maintains diversity
Crossover Breeding:
For each of 10 genes:
Parent1_Fitness = fitness
Parent2_Fitness = fitness
Weight1 = Parent1_Fitness / (Parent1_Fitness + Parent2_Fitness)
Gene1 = parent1's value
Gene2 = parent2's value
Child_Gene = Weight1 × Gene1 + (1 - Weight1) × Gene2
Fitness-weighted crossover ensures fitter parent contributes more genetic material.
Mutation:
For each gene in child:
IF (random < mutation_rate):
Gene_Range = GENE_MAX - GENE_MIN
Noise = (random - 0.5) × 2 × mutation_strength × Gene_Range
Mutated_Gene = Clamp(Child_Gene + Noise, GENE_MIN, GENE_MAX)
Historical mutation rate: 20% (aggressive exploration)
Live mutation rate: 8% (conservative stability)
Mutation strength: 12% of gene range (configurable 5-25%)
Initialization of New Strategy:
Unique ID assigned (total_spawned counter)
Parent ID recorded
Generation = max(parent generations) + 1
Birth bar recorded (for age tracking)
All performance metrics zeroed
Shadow portfolio reset
WFO validation flag set to false (must prove itself)
Result: New strategy with hybrid DNA enters population, begins trading in next bar.
Competition (Every Bar)
All active strategies:
Calculate their signal based on unique DNA
Check quality gate with their thresholds
Manage shadow positions (entries/exits)
Update performance metrics
Recalculate fitness score
Track WFO validation progress
Strategies compete indirectly through fitness ranking - no direct interaction.
Culling Weak Strategies
Timing (Adaptive):
Historical phase: Every 60 bars (configurable 20-200, should be 2x spawn interval)
Live phase: Every 400 bars (configurable 200-1000, should be 2x spawn interval)
Minimum Adaptation Score (MAS):
Initial MAS = 0.10
MAS decays: MAS × 0.995 every cull cycle
Minimum MAS = 0.03 (floor)
MAS represents the "survival threshold" - strategies below this fitness level are vulnerable.
Culling Conditions (ALL must be true):
Population > minimum population (default: 3, configurable 2-4)
At least one strategy has fitness < MAS
Strategy's age > culling interval (prevents premature culling of new strategies)
Strategy is not in top N elite (default: 2, configurable 1-3)
Culling Process:
Find worst strategy:
For each active strategy:
IF (age > cull_interval):
Fitness = base_fitness
IF (not WFO_validated AND WFO_enabled):
Fitness × 0.7 // 30% penalty for unvalidated
IF (Fitness < MAS AND Fitness < worst_fitness_found):
worst_strategy = this_strategy
worst_fitness = Fitness
IF (worst_strategy found):
Count elite strategies with fitness > worst_fitness
IF (elite_count >= elite_preservation_count):
Deactivate worst_strategy (set active flag = false)
Increment total_culled counter
Elite Protection:
Even if a strategy's fitness falls below MAS, it survives if fewer than N strategies are better. This prevents culling when population is generally weak.
Result: Weak strategies removed from population, freeing slots for new spawns. Gene pool improves over time.
Selection for Display (Every Bar)
AGE chooses one strategy to display signals:
Best fitness = -1
Selected = none
For each active strategy:
Fitness = base_fitness
IF (WFO_validated):
Fitness × 1.3 // 30% bonus for validated strategies
IF (Fitness > best_fitness):
best_fitness = Fitness
selected_strategy = this_strategy
Display selected strategy's signals on chart
Result: Only the highest-fitness (optionally validated-boosted) strategy's signals appear as chart markers. Other strategies trade invisibly in shadow portfolios.
🎨 PREMIUM VISUALIZATION SYSTEM
AGE includes sophisticated visual feedback that standard indicators lack:
1. Gradient Probability Cloud (Optional, Default: ON)
Multi-layer gradient showing signal buildup 2-3 bars before entry:
Activation Conditions:
Signal persistence > 0 (same directional signal held for multiple bars)
Signal probability ≥ minimum threshold (65% by default)
Signal hasn't yet executed (still in "forming" state)
Visual Construction:
7 gradient layers by default (configurable 3-15)
Each layer is a line-fill pair (top line, bottom line, filled between)
Layer spacing: 0.3 to 1.0 × ATR above/below price
Outer layers = faint, inner layers = bright
Color transitions from base to intense based on layer position
Transparency scales with probability (high prob = more opaque)
Color Selection:
Long signals: Gradient from theme.gradient_bull_mid to theme.gradient_bull_strong
Short signals: Gradient from theme.gradient_bear_mid to theme.gradient_bear_strong
Base transparency: 92%, reduces by up to 8% for high-probability setups
Dynamic Behavior:
Cloud grows/shrinks as signal persistence increases/decreases
Redraws every bar while signal is forming
Disappears when signal executes or invalidates
Performance Note: Computationally expensive due to linefill objects. Disable or reduce layers if chart performance degrades.
2. Population Fitness Ribbon (Optional, Default: ON)
Histogram showing fitness distribution across active strategies:
Activation: Only draws on last bar (barstate.islast) to avoid historical clutter
Visual Construction:
10 histogram layers by default (configurable 5-20)
Plots 50 bars back from current bar
Positioned below price at: lowest_low(100) - 1.5×ATR (doesn't interfere with price action)
Each layer represents a fitness threshold (evenly spaced min to max fitness)
Layer Logic:
For layer_num from 0 to ribbon_layers:
Fitness_threshold = min_fitness + (max_fitness - min_fitness) × (layer / layers)
Count strategies with fitness ≥ threshold
Height = ATR × 0.15 × (count / total_active)
Y_position = base_level + ATR × 0.2 × layer
Color = Gradient from weak to strong based on layer position
Line_width = Scaled by height (taller = thicker)
Visual Feedback:
Tall, bright ribbon = healthy population, many fit strategies at high fitness levels
Short, dim ribbon = weak population, few strategies achieving good fitness
Ribbon compression (layers close together) = population converging to similar fitness
Ribbon spread = diverse fitness range, active selection pressure
Use Case: Quick visual health check without opening dashboard. Ribbon growing upward over time = population improving.
3. Confidence Halo (Optional, Default: ON)
Circular polyline around entry signals showing probability strength:
Activation: Draws when new position opens (shadow_position changes from 0 to ±1)
Visual Construction:
20-segment polyline forming approximate circle
Center: Low - 0.5×ATR (long) or High + 0.5×ATR (short)
Radius: 0.3×ATR (low confidence) to 1.0×ATR (elite confidence)
Scales with: (probability - min_probability) / (1.0 - min_probability)
Color Coding:
Elite (85%+): Cyan (theme.conf_elite), large radius, minimal transparency (40%)
Strong (75-85%): Strong green (theme.conf_strong), medium radius, moderate transparency (50%)
Good (65-75%): Good green (theme.conf_good), smaller radius, more transparent (60%)
Moderate (<65%): Moderate green (theme.conf_moderate), tiny radius, very transparent (70%)
Technical Detail:
Uses chart.point array with index-based positioning
5-bar horizontal spread for circular appearance (±5 bars from entry)
Curved=false (Pine Script polyline limitation)
Fill color matches line color but more transparent (88% vs line's transparency)
Purpose: Instant visual probability assessment. No need to check dashboard - halo size/brightness tells the story.
4. Evolution Event Markers (Optional, Default: ON)
Visual indicators of genetic algorithm activity:
Spawn Markers (Diamond, Cyan):
Plots when total_spawned increases on current bar
Location: bottom of chart (location.bottom)
Color: theme.spawn_marker (cyan/bright blue)
Size: tiny
Indicates new strategy just entered population
Cull Markers (X-Cross, Red):
Plots when total_culled increases on current bar
Location: bottom of chart (location.bottom)
Color: theme.cull_marker (red/pink)
Size: tiny
Indicates weak strategy just removed from population
What It Tells You:
Frequent spawning early = population building, active exploration
Frequent culling early = high selection pressure, weak strategies dying fast
Balanced spawn/cull = healthy evolutionary churn
No markers for long periods = stable population (evolution plateaued or optimal genes found)
5. Entry/Exit Markers
Clear visual signals for selected strategy's trades:
Long Entry (Triangle Up, Green):
Plots when selected strategy opens long position (position changes 0 → +1)
Location: below bar (location.belowbar)
Color: theme.long_primary (green/cyan depending on theme)
Transparency: Scales with probability:
Elite (85%+): 0% (fully opaque)
Strong (75-85%): 10%
Good (65-75%): 20%
Acceptable (55-65%): 35%
Size: small
Short Entry (Triangle Down, Red):
Plots when selected strategy opens short position (position changes 0 → -1)
Location: above bar (location.abovebar)
Color: theme.short_primary (red/pink depending on theme)
Transparency: Same scaling as long entries
Size: small
Exit (X-Cross, Orange):
Plots when selected strategy closes position (position changes ±1 → 0)
Location: absolute (at actual exit price if stop/target lines enabled)
Color: theme.exit_color (orange/yellow depending on theme)
Transparency: 0% (fully opaque)
Size: tiny
Result: Clean, probability-scaled markers that don't clutter chart but convey essential information.
6. Stop Loss & Take Profit Lines (Optional, Default: ON)
Visual representation of shadow portfolio risk levels:
Stop Loss Line:
Plots when selected strategy has active position
Level: shadow_stop value from selected strategy
Color: theme.short_primary with 60% transparency (red/pink, subtle)
Width: 2
Style: plot.style_linebr (breaks when no position)
Take Profit Line:
Plots when selected strategy has active position
Level: shadow_target value from selected strategy
Color: theme.long_primary with 60% transparency (green, subtle)
Width: 2
Style: plot.style_linebr (breaks when no position)
Purpose:
Shows where shadow portfolio would exit for stop/target
Helps visualize strategy's risk/reward ratio
Useful for manual traders to set similar levels
Disable for cleaner chart (recommended for presentations)
7. Dynamic Trend EMA
Gradient-colored trend line that visualizes trend strength:
Calculation:
EMA(close, trend_length) - default 50 period (configurable 20-100)
Slope calculated over 10 bars: (current_ema - ema ) / ema × 100
Color Logic:
Trend_direction:
Slope > 0.1% = Bullish (1)
Slope < -0.1% = Bearish (-1)
Otherwise = Neutral (0)
Trend_strength = abs(slope)
Color = Gradient between:
- Neutral color (gray/purple)
- Strong bullish (bright green) if direction = 1
- Strong bearish (bright red) if direction = -1
Gradient factor = trend_strength (0 to 1+ scale)
Visual Behavior:
Faint gray/purple = weak/no trend (choppy conditions)
Light green/red = emerging trend (low strength)
Bright green/red = strong trend (high conviction)
Color intensity = trend strength magnitude
Transparency: 50% (subtle, doesn't overpower price action)
Purpose: Subconscious awareness of trend state without checking dashboard or indicators.
8. Regime Background Tinting (Subtle)
Ultra-low opacity background color indicating detected market regime:
Regime Detection:
Efficiency = directional_movement / total_range (over trend_length bars)
Vol_ratio = current_volatility / average_volatility
IF (efficiency > 0.5 AND vol_ratio < 1.3):
Regime = Trending (1)
ELSE IF (vol_ratio > 1.5):
Regime = Volatile (2)
ELSE:
Regime = Choppy (0)
Background Colors:
Trending: theme.regime_trending (dark green, 92-93% transparency)
Volatile: theme.regime_volatile (dark red, 93% transparency)
Choppy: No tint (normal background)
Purpose:
Subliminal regime awareness
Helps explain why signals are/aren't generating
Trending = ideal conditions for AGE
Volatile = fewer signals, higher thresholds applied
Choppy = mixed signals, lower confidence
Important: Extremely subtle by design. Not meant to be obvious, just subconscious context.
📊 ENHANCED DASHBOARD
Comprehensive real-time metrics in single organized panel (top-right position):
Dashboard Structure (5 columns × 14 rows)
Header Row:
Column 0: "🧬 AGE PRO" + phase indicator (🔴 LIVE or ⏪ HIST)
Column 1: "POPULATION"
Column 2: "PERFORMANCE"
Column 3: "CURRENT SIGNAL"
Column 4: "ACTIVE STRATEGY"
Column 0: Market State
Regime (📈 TREND / 🌊 CHAOS / ➖ CHOP)
DVS Ratio (current volatility scaling factor, format: #.##)
Trend Direction (▲ BULL / ▼ BEAR / ➖ FLAT with color coding)
Trend Strength (0-100 scale, format: #.##)
Column 1: Population Metrics
Active strategies (count / max_population)
Validated strategies (WFO passed / active total)
Current generation number
Total spawned (all-time strategy births)
Total culled (all-time strategy deaths)
Column 2: Aggregate Performance
Total trades across all active strategies
Aggregate win rate (%) - color-coded:
Green (>55%)
Orange (45-55%)
Red (<45%)
Total P&L in R-multiples - color-coded by positive/negative
Best fitness score in population (format: #.###)
MAS - Minimum Adaptation Score (cull threshold, format: #.###)
Column 3: Current Signal Status
Status indicator:
"▲ LONG" (green) if selected strategy in long position
"▼ SHORT" (red) if selected strategy in short position
"⏳ FORMING" (orange) if signal persisting but not yet executed
"○ WAITING" (gray) if no active signal
Confidence percentage (0-100%, format: #.#%)
Quality assessment:
"🔥 ELITE" (cyan) for 85%+ probability
"✓ STRONG" (bright green) for 75-85%
"○ GOOD" (green) for 65-75%
"- LOW" (dim) for <65%
Confluence score (X/3 format)
Signal age:
"X bars" if signal forming
"IN TRADE" if position active
"---" if no signal
Column 4: Selected Strategy Details
Strategy ID number (#X format)
Validation status:
"✓ VAL" (green) if WFO validated
"○ TRAIN" (orange) if still in training/testing phase
Generation number (GX format)
Personal fitness score (format: #.### with color coding)
Trade count
P&L and win rate (format: #.#R (##%) with color coding)
Color Scheme:
Panel background: theme.panel_bg (dark, low opacity)
Panel headers: theme.panel_header (slightly lighter)
Primary text: theme.text_primary (bright, high contrast)
Secondary text: theme.text_secondary (dim, lower contrast)
Positive metrics: theme.metric_positive (green)
Warning metrics: theme.metric_warning (orange)
Negative metrics: theme.metric_negative (red)
Special markers: theme.validated_marker, theme.spawn_marker
Update Frequency: Only on barstate.islast (current bar) to minimize CPU usage
Purpose:
Quick overview of entire system state
No need to check multiple indicators
Trading decisions informed by population health, regime state, and signal quality
Transparency into what AGE is thinking
🔍 DIAGNOSTICS PANEL (Optional, Default: OFF)
Detailed signal quality tracking for optimization and debugging:
Panel Structure (3 columns × 8 rows)
Position: Bottom-right corner (doesn't interfere with main dashboard)
Header Row:
Column 0: "🔍 DIAGNOSTICS"
Column 1: "COUNT"
Column 2: "%"
Metrics Tracked (for selected strategy only):
Total Evaluated:
Every signal that passed initial calculation (direction ≠ 0)
Represents total opportunities considered
✓ Passed:
Signals that passed quality gate and executed
Green color coding
Percentage of evaluated signals
Rejection Breakdown:
⨯ Probability:
Rejected because probability < minimum threshold
Most common rejection reason typically
⨯ Confluence:
Rejected because confluence < minimum required (e.g., only 1 of 3 indicators agreed)
⨯ Trend:
Rejected because signal opposed strong trend
Indicates counter-trend protection working
⨯ Regime:
Rejected because volatile regime detected and probability wasn't high enough to override
Shows regime filter in action
⨯ Volume:
Rejected because volume < 70% of 20-bar average
Indicates volume confirmation requirement
Color Coding:
Passed count: Green (success metric)
Rejection counts: Red (failure metrics)
Percentages: Gray (neutral, informational)
Performance Cost: Slight CPU overhead for tracking counters. Disable when not actively optimizing settings.
How to Use Diagnostics
Scenario 1: Too Few Signals
Evaluated: 200
Passed: 10 (5%)
⨯ Probability: 120 (60%)
⨯ Confluence: 40 (20%)
⨯ Others: 30 (15%)
Diagnosis: Probability threshold too high for this strategy's DNA.
Solution: Lower min probability from 65% to 60%, or allow strategy more time to evolve better DNA.
Scenario 2: Too Many False Signals
Evaluated: 200
Passed: 80 (40%)
Strategy win rate: 45%
Diagnosis: Quality gate too loose, letting low-quality signals through.
Solution: Raise min probability to 70%, or increase min confluence to 3 (all indicators must agree).
Scenario 3: Regime-Specific Issues
⨯ Regime: 90 (45% of rejections)
Diagnosis: Frequent volatile regime detection blocking otherwise good signals.
Solution: Either accept fewer trades during chaos (recommended), or disable regime filter if you want signals regardless of market state.
Optimization Workflow:
Enable diagnostics
Run 200+ bars
Analyze rejection patterns
Adjust settings based on data
Re-run and compare pass rate
Disable diagnostics when satisfied
⚙️ CONFIGURATION GUIDE
🧬 Evolution Engine Settings
Enable AGE Evolution (Default: ON):
ON: Full genetic algorithm (recommended for best results)
OFF: Uses only 4 seed strategies, no spawning/culling (static population for comparison testing)
Max Population (4-12, Default: 8):
Higher = more diversity, more exploration, slower performance
Lower = faster computation, less exploration, risk of premature convergence
Sweet spot: 6-8 for most use cases
4 = minimum for meaningful evolution
12 = maximum before diminishing returns
Min Population (2-4, Default: 3):
Safety floor - system never culls below this count
Prevents population extinction during harsh selection
Should be at least half of max population
Elite Preservation (1-3, Default: 2):
Top N performers completely immune to culling
Ensures best genes always survive
1 = minimal protection, aggressive selection
2 = balanced (recommended)
3 = conservative, slower gene pool turnover
Historical: Spawn Interval (10-100, Default: 30):
Bars between spawning new strategies during historical data
Lower = faster evolution, more exploration
Higher = slower evolution, more evaluation time per strategy
30 bars = ~1-2 hours on 15min chart
Historical: Cull Interval (20-200, Default: 60):
Bars between culling weak strategies during historical data
Should be 2x spawn interval for balanced churn
Lower = aggressive selection pressure
Higher = patient evaluation
Live: Spawn Interval (100-500, Default: 200):
Bars between spawning during live trading
Much slower than historical for stability
Prevents population chaos during live trading
200 bars = ~1.5 trading days on 15min chart
Live: Cull Interval (200-1000, Default: 400):
Bars between culling during live trading
Should be 2x live spawn interval
Conservative removal during live trading
Historical: Mutation Rate (0.05-0.40, Default: 0.20):
Probability each gene mutates during breeding (20% = 2 out of 10 genes on average)
Higher = more exploration, slower convergence
Lower = more exploitation, faster convergence but risk of local optima
20% balances exploration vs exploitation
Live: Mutation Rate (0.02-0.20, Default: 0.08):
Mutation rate during live trading
Much lower for stability (don't want population to suddenly degrade)
8% = mostly inherits parent genes with small tweaks
Mutation Strength (0.05-0.25, Default: 0.12):
How much genes change when mutated (% of gene's total range)
0.05 = tiny nudges (fine-tuning)
0.12 = moderate jumps (recommended)
0.25 = large leaps (aggressive exploration)
Example: If gene range is 0.5-2.0, 12% strength = ±0.18 possible change
📈 Signal Quality Settings
Min Signal Probability (0.55-0.80, Default: 0.65):
Quality gate threshold - signals below this never generate
0.55-0.60 = More signals, accept lower confidence (higher risk)
0.65 = Institutional-grade balance (recommended)
0.70-0.75 = Fewer but higher-quality signals (conservative)
0.80+ = Very selective, very few signals (ultra-conservative)
Min Confluence Score (1-3, Default: 2):
Required indicator agreement before signal generates
1 = Any single indicator can trigger (not recommended - too many false signals)
2 = Requires 2 of 3 indicators agree (RECOMMENDED for balance)
3 = All 3 must agree (very selective, few signals, high quality)
Base Persistence Bars (1-5, Default: 2):
Base bars signal must persist before entry
System adapts automatically:
High probability signals (75%+) enter 1 bar faster
Low probability signals (<68%) need 1 bar more
Trending regime: -1 bar (faster entries)
Volatile regime: +1 bar (more confirmation)
1 = Immediate entry after quality gate (responsive but prone to whipsaw)
2 = Balanced confirmation (recommended)
3-5 = Patient confirmation (slower but more reliable)
Cooldown After Trade (3-20, Default: 8):
Bars to wait after exit before next entry allowed
Prevents overtrading and revenge trading
3 = Minimal cooldown (active trading)
8 = Balanced (recommended)
15-20 = Conservative (position trading)
Entropy Length (10-50, Default: 20):
Lookback period for market order/disorder calculation
Lower = more responsive to regime changes (noisy)
Higher = more stable regime detection (laggy)
20 = works across most timeframes
Momentum Length (5-30, Default: 14):
Period for RSI/ROC calculations
14 = standard (RSI default)
Lower = more signals, less reliable
Higher = fewer signals, more reliable
Structure Length (20-100, Default: 50):
Lookback for support/resistance swing range
20 = short-term swings (day trading)
50 = medium-term structure (recommended)
100 = major structure (position trading)
Trend EMA Length (20-100, Default: 50):
EMA period for trend detection and direction bias
20 = short-term trend (responsive)
50 = medium-term trend (recommended)
100 = long-term trend (position trading)
ATR Period (5-30, Default: 14):
Period for volatility measurement
14 = standard ATR
Lower = more responsive to vol changes
Higher = smoother vol calculation
📊 Volatility Scaling (DVS) Settings
Enable DVS (Default: ON):
Dynamic volatility scaling for adaptive stop/target placement
Highly recommended to leave ON
OFF only for testing fixed-distance stops
DVS Method (Default: Ensemble):
ATR Ratio: Simple, fast, single-method (good for beginners)
Parkinson: High-low range based (good for intraday)
Garman-Klass: OHLC based (sophisticated, considers gaps)
Ensemble: Median of all three (RECOMMENDED - most robust)
DVS Memory (20-200, Default: 100):
Lookback for baseline volatility comparison
20 = very responsive to vol changes (can overreact)
100 = balanced adaptation (recommended)
200 = slow, stable baseline (minimizes false vol signals)
DVS Sensitivity (0.3-1.5, Default: 0.7):
How much volatility affects scaling (power-law exponent)
0.3 = Conservative, heavily dampens vol impact (cube root)
0.5 = Moderate dampening (square root)
0.7 = Balanced response (recommended)
1.0 = Linear, full 1:1 vol response
1.5 = Aggressive, amplified response (exponential)
🔬 Walk-Forward Optimization Settings
Enable WFO (Default: ON):
Out-of-sample validation to prevent overfitting
Highly recommended to leave ON
OFF only for testing or if you want unvalidated strategies
Training Window (100-500, Default: 250):
Bars for in-sample optimization
100 = fast validation, less data (risky)
250 = balanced (recommended) - about 1-2 months on daily, 1-2 weeks on 15min
500 = patient validation, more data (conservative)
Testing Window (30-200, Default: 75):
Bars for out-of-sample validation
Should be ~30% of training window
30 = minimal test (fast validation)
75 = balanced (recommended)
200 = extensive test (very conservative)
Min Trades for Validation (3-15, Default: 5):
Required trades in BOTH training AND testing periods
3 = minimal sample (risky, fast validation)
5 = balanced (recommended)
10+ = conservative (slow validation, high confidence)
WFO Efficiency Threshold (0.3-0.9, Default: 0.55):
Minimum test/train performance ratio required
0.30 = Very loose (test must be 30% as good as training)
0.55 = Balanced (recommended) - test must be 55% as good
0.70+ = Strict (test must closely match training)
Higher = fewer validated strategies, lower risk of overfitting
🎨 Premium Visuals Settings
Visual Theme:
Neon Genesis: Cyberpunk aesthetic (cyan/magenta/purple)
Carbon Fiber: Industrial look (blue/red/gray)
Quantum Blue: Quantum computing (blue/purple/pink)
Aurora: Northern lights (teal/orange/purple)
⚡ Gradient Probability Cloud (Default: ON):
Multi-layer gradient showing signal buildup
Turn OFF if chart lags or for cleaner look
Cloud Gradient Layers (3-15, Default: 7):
More layers = smoother gradient, more CPU intensive
Fewer layers = faster, blockier appearance
🎗️ Population Fitness Ribbon (Default: ON):
Histogram showing fitness distribution
Turn OFF for cleaner chart
Ribbon Layers (5-20, Default: 10):
More layers = finer fitness detail
Fewer layers = simpler histogram
⭕ Signal Confidence Halo (Default: ON):
Circular indicator around entry signals
Size/brightness scales with probability
Minimal performance cost
🔬 Evolution Event Markers (Default: ON):
Diamond (spawn) and X (cull) markers
Shows genetic algorithm activity
Minimal performance cost
🎯 Stop/Target Lines (Default: ON):
Shows shadow portfolio stop/target levels
Turn OFF for cleaner chart (recommended for screenshots/presentations)
📊 Enhanced Dashboard (Default: ON):
Comprehensive metrics panel
Should stay ON unless you want zero overlays
🔍 Diagnostics Panel (Default: OFF):
Detailed signal rejection tracking
Turn ON when optimizing settings
Turn OFF during normal use (slight performance cost)
📈 USAGE WORKFLOW - HOW TO USE THIS INDICATOR
Phase 1: Initial Setup & Learning
Add AGE to your chart
Recommended timeframes: 15min, 30min, 1H (best signal-to-noise ratio)
Works on: 5min (day trading), 4H (swing trading), Daily (position trading)
Load 1000+ bars for sufficient evolution history
Let the population evolve (100+ bars minimum)
First 50 bars: Random exploration, poor results expected
Bars 50-150: Population converging, fitness improving
Bars 150+: Stable performance, validated strategies emerging
Watch the dashboard metrics
Population should grow toward max capacity
Generation number should advance regularly
Validated strategies counter should increase
Best fitness should trend upward toward 0.50-0.70 range
Observe evolution markers
Diamond markers (cyan) = new strategies spawning
X markers (red) = weak strategies being culled
Frequent early activity = healthy evolution
Activity slowing = population stabilizing
Be patient. Evolution takes time. Don't judge performance before 150+ bars.
Phase 2: Signal Observation
Watch signals form
Gradient cloud builds up 2-3 bars before entry
Cloud brightness = probability strength
Cloud thickness = signal persistence
Check signal quality
Look at confidence halo size when entry marker appears
Large bright halo = elite setup (85%+)
Medium halo = strong setup (75-85%)
Small halo = good setup (65-75%)
Verify market conditions
Check trend EMA color (green = uptrend, red = downtrend, gray = choppy)
Check background tint (green = trending, red = volatile, clear = choppy)
Trending background + aligned signal = ideal conditions
Review dashboard signal status
Current Signal column shows:
Status (Long/Short/Forming/Waiting)
Confidence % (actual probability value)
Quality assessment (Elite/Strong/Good)
Confluence score (2/3 or 3/3 preferred)
Only signals meeting ALL quality gates appear on chart. If you're not seeing signals, population is either still learning or market conditions aren't suitable.
Phase 3: Manual Trading Execution
When Long Signal Fires:
Verify confidence level (dashboard or halo size)
Confirm trend alignment (EMA sloping up, green color)
Check regime (preferably trending or choppy, avoid volatile)
Enter long manually on your broker platform
Set stop loss at displayed stop line level (if lines enabled), or use your own risk management
Set take profit at displayed target line level, or trail manually
Monitor position - exit if X marker appears (signal reversal)
When Short Signal Fires:
Same verification process
Confirm downtrend (EMA sloping down, red color)
Enter short manually
Use displayed stop/target levels or your own
AGE tells you WHEN and HOW CONFIDENT. You decide WHETHER and HOW MUCH.
Phase 4: Set Up Alerts (Never Miss a Signal)
Right-click on indicator name in legend
Select "Add Alert"
Choose condition:
"AGE Long" = Long entry signal fired
"AGE Short" = Short entry signal fired
"AGE Exit" = Position reversal/exit signal
Set notification method:
Sound alert (popup on chart)
Email notification
Webhook to phone/trading platform
Mobile app push notification
Name the alert (e.g., "AGE BTCUSD 15min Long")
Save alert
Recommended: Set alerts for both long and short, enable mobile push notifications. You'll get alerted in real-time even if not watching charts.
Phase 5: Monitor Population Health
Weekly Review:
Check dashboard Population column:
Active count should be near max (6-8 of 8)
Validated count should be >50% of active
Generation should be advancing (1-2 per week typical)
Check dashboard Performance column:
Aggregate win rate should be >50% (target: 55-65%)
Total P&L should be positive (may fluctuate)
Best fitness should be >0.50 (target: 0.55-0.70)
MAS should be declining slowly (normal adaptation)
Check Active Strategy column:
Selected strategy should be validated (✓ VAL)
Personal fitness should match best fitness
Trade count should be accumulating
Win rate should be >50%
Warning Signs:
Zero validated strategies after 300+ bars = settings too strict or market unsuitable
Best fitness stuck <0.30 = population struggling, consider parameter adjustment
No spawning/culling for 200+ bars = evolution stalled (may be optimal or need reset)
Aggregate win rate <45% sustained = system not working on this instrument/timeframe
Health Check Pass:
50%+ strategies validated
Best fitness >0.50
Aggregate win rate >52%
Regular spawn/cull activity
Selected strategy validated
Phase 6: Optimization (If Needed)
Enable Diagnostics Panel (bottom-right) for data-driven tuning:
Problem: Too Few Signals
Evaluated: 200
Passed: 8 (4%)
⨯ Probability: 140 (70%)
Solutions:
Lower min probability: 65% → 60% or 55%
Reduce min confluence: 2 → 1
Lower base persistence: 2 → 1
Increase mutation rate temporarily to explore new genes
Check if regime filter is blocking signals (⨯ Regime high?)
Problem: Too Many False Signals
Evaluated: 200
Passed: 90 (45%)
Win rate: 42%
Solutions:
Raise min probability: 65% → 70% or 75%
Increase min confluence: 2 → 3
Raise base persistence: 2 → 3
Enable WFO if disabled (validates strategies before use)
Check if volume filter is being ignored (⨯ Volume low?)
Problem: Counter-Trend Losses
⨯ Trend: 5 (only 5% rejected)
Losses often occur against trend
Solutions:
System should already filter trend opposition
May need stronger trend requirement
Consider only taking signals aligned with higher timeframe trend
Use longer trend EMA (50 → 100)
Problem: Volatile Market Whipsaws
⨯ Regime: 100 (50% rejected by volatile regime)
Still getting stopped out frequently
Solutions:
System is correctly blocking volatile signals
Losses happening because vol filter isn't strict enough
Consider not trading during volatile periods (respect the regime)
Or disable regime filter and accept higher risk
Optimization Workflow:
Enable diagnostics
Run 200+ bars with current settings
Analyze rejection patterns and win rate
Make ONE change at a time (scientific method)
Re-run 200+ bars and compare results
Keep change if improvement, revert if worse
Disable diagnostics when satisfied
Never change multiple parameters at once - you won't know what worked.
Phase 7: Multi-Instrument Deployment
AGE learns independently on each chart:
Recommended Strategy:
Deploy AGE on 3-5 different instruments
Different asset classes ideal (e.g., ES futures, EURUSD, BTCUSD, SPY, Gold)
Each learns optimal strategies for that instrument's personality
Take signals from all 5 charts
Natural diversification reduces overall risk
Why This Works:
When one market is choppy, others may be trending
Different instruments respond to different news/catalysts
Portfolio-level win rate more stable than single-instrument
Evolution explores different parameter spaces on each chart
Setup:
Same settings across all charts (or customize if preferred)
Set alerts for all
Take every validated signal across all instruments
Position size based on total account (don't overleverage any single signal)
⚠️ REALISTIC EXPECTATIONS - CRITICAL READING
What AGE Can Do
✅ Generate probability-weighted signals using genetic algorithms
✅ Evolve strategies in real-time through natural selection
✅ Validate strategies on out-of-sample data (walk-forward optimization)
✅ Adapt to changing market conditions automatically over time
✅ Provide comprehensive metrics on population health and signal quality
✅ Work on any instrument, any timeframe, any broker
✅ Improve over time as weak strategies are culled and fit strategies breed
What AGE Cannot Do
❌ Win every trade (typical win rate: 55-65% at best)
❌ Predict the future with certainty (markets are probabilistic, not deterministic)
❌ Work perfectly from bar 1 (needs 100-150 bars to learn and stabilize)
❌ Guarantee profits under all market conditions
❌ Replace your trading discipline and risk management
❌ Execute trades automatically (this is an indicator, not a strategy)
❌ Prevent all losses (drawdowns are normal and expected)
❌ Adapt instantly to regime changes (re-learning takes 50-100 bars)
Performance Realities
Typical Performance After Evolution Stabilizes (150+ bars):
Win Rate: 55-65% (excellent for trend-following systems)
Profit Factor: 1.5-2.5 (realistic for validated strategies)
Signal Frequency: 5-15 signals per 100 bars (quality over quantity)
Drawdown Periods: 20-40% of time in equity retracement (normal trading reality)
Max Consecutive Losses: 5-8 losses possible even with 60% win rate (probability says this is normal)
Evolution Timeline:
Bars 0-50: Random exploration, learning phase - poor results expected, don't judge yet
Bars 50-150: Population converging, fitness climbing - results improving
Bars 150-300: Stable performance, most strategies validated - consistent results
Bars 300+: Mature population, optimal genes dominant - best results
Market Condition Dependency:
Trending Markets: AGE excels - clear directional moves, high-probability setups
Choppy Markets: AGE struggles - fewer signals generated, lower win rate
Volatile Markets: AGE cautious - higher rejection rate, wider stops, fewer trades
Market Regime Changes:
When market shifts from trending to choppy overnight
Validated strategies can become temporarily invalidated
AGE will adapt through evolution, but not instantly
Expect 50-100 bar re-learning period after major regime shifts
Fitness may temporarily drop then recover
This is NOT a holy grail. It's a sophisticated signal generator that learns and adapts using genetic algorithms. Your success depends on:
Patience during learning periods (don't abandon after 3 losses)
Proper position sizing (risk 0.5-2% per trade, not 10%)
Following signals consistently (cherry-picking defeats statistical edge)
Not abandoning system prematurely (give it 200+ bars minimum)
Understanding probability (60% win rate means 40% of trades WILL lose)
Respecting market conditions (trending = trade more, choppy = trade less)
Managing emotions (AGE is emotionless, you need to be too)
Expected Drawdowns:
Single-strategy max DD: 10-20% of equity (normal)
Portfolio across multiple instruments: 5-15% (diversification helps)
Losing streaks: 3-5 consecutive losses expected periodically
No indicator eliminates risk. AGE manages risk through:
Quality gates (rejecting low-probability signals)
Confluence requirements (multi-indicator confirmation)
Persistence requirements (no knee-jerk reactions)
Regime awareness (reduced trading in chaos)
Walk-forward validation (preventing overfitting)
But it cannot prevent all losses. That's inherent to trading.
🔧 TECHNICAL SPECIFICATIONS
Platform: TradingView Pine Script v5
Indicator Type: Overlay indicator (plots on price chart)
Execution Type: Signals only - no automatic order placement
Computational Load:
Moderate to High (genetic algorithms + shadow portfolios)
8 strategies × shadow portfolio simulation = significant computation
Premium visuals add additional load (gradient cloud, fitness ribbon)
TradingView Resource Limits (Built-in Caps):
Max Bars Back: 500 (sufficient for WFO and evolution)
Max Labels: 100 (plenty for entry/exit markers)
Max Lines: 150 (adequate for stop/target lines)
Max Boxes: 50 (not heavily used)
Max Polylines: 100 (confidence halos)
Recommended Chart Settings:
Timeframe: 15min to 1H (optimal signal/noise balance)
5min: Works but noisier, more signals
4H/Daily: Works but fewer signals
Bars Loaded: 1000+ (ensures sufficient evolution history)
Replay Mode: Excellent for testing without risk
Performance Optimization Tips:
Disable gradient cloud if chart lags (most CPU intensive visual)
Disable fitness ribbon if still laggy
Reduce cloud layers from 7 to 3
Reduce ribbon layers from 10 to 5
Turn off diagnostics panel unless actively tuning
Close other heavy indicators to free resources
Browser/Platform Compatibility:
Works on all modern browsers (Chrome, Firefox, Safari, Edge)
Mobile app supported (full functionality on phone/tablet)
Desktop app supported (best performance)
Web version supported (may be slower on older computers)
Data Requirements:
Real-time or delayed data both work
No special data feeds required
Works with TradingView's standard data
Historical + live data seamlessly integrated
🎓 THEORETICAL FOUNDATIONS
AGE synthesizes advanced concepts from multiple disciplines:
Evolutionary Computation
Genetic Algorithms (Holland, 1975): Population-based optimization through natural selection metaphor
Tournament Selection: Fitness-based parent selection with diversity preservation
Crossover Operators: Fitness-weighted gene recombination from two parents
Mutation Operators: Random gene perturbation for exploration of new parameter space
Elitism: Preservation of top N performers to prevent loss of best solutions
Adaptive Parameters: Different mutation rates for historical vs. live phases
Technical Analysis
Support/Resistance: Price structure within swing ranges
Trend Following: EMA-based directional bias
Momentum Analysis: RSI, ROC, MACD composite indicators
Volatility Analysis: ATR-based risk scaling
Volume Confirmation: Trade activity validation
Information Theory
Shannon Entropy (1948): Quantification of market order vs. disorder
Signal-to-Noise Ratio: Directional information vs. random walk
Information Content: How much "information" a price move contains
Statistics & Probability
Walk-Forward Analysis: Rolling in-sample/out-of-sample optimization
Out-of-Sample Validation: Testing on unseen data to prevent overfitting
Monte Carlo Principles: Shadow portfolio simulation with realistic execution
Expectancy Theory: Win rate × avg win - loss rate × avg loss
Probability Distributions: Signal confidence quantification
Risk Management
ATR-Based Stops: Volatility-normalized risk per trade
Volatility Regime Detection: Market state classification (trending/choppy/volatile)
Drawdown Control: Peak-to-trough equity measurement
R-Multiple Normalization: Performance measurement in risk units
Machine Learning Concepts
Online Learning: Continuous adaptation as new data arrives
Fitness Functions: Multi-objective optimization (win rate + expectancy + drawdown)
Exploration vs. Exploitation: Balance between trying new strategies and using proven ones
Overfitting Prevention: Walk-forward validation as regularization
Novel Contribution:
AGE is the first TradingView indicator to apply genetic algorithms to real-time indicator parameter optimization while maintaining strict anti-overfitting controls through walk-forward validation.
Most "adaptive" indicators simply recalibrate lookback periods or thresholds. AGE evolves entirely new strategies through competitive selection - it's not parameter tuning, it's Darwinian evolution of trading logic itself.
The combination of:
Genetic algorithm population management
Shadow portfolio simulation for realistic fitness evaluation
Walk-forward validation to prevent overfitting
Multi-indicator confluence for signal quality
Dynamic volatility scaling for adaptive risk
...creates a system that genuinely learns and improves over time while avoiding the curse of curve-fitting that plagues most optimization approaches.
🏗️ DEVELOPMENT NOTES
This project represents months of intensive development, facing significant technical challenges:
Challenge 1: Making Genetics Actually Work
Early versions spawned garbage strategies that polluted the gene pool:
Random gene combinations produced nonsensical parameter sets
Weak strategies survived too long, dragging down population
No clear convergence toward optimal solutions
Solution:
Comprehensive fitness scoring (4 factors: win rate, P&L, expectancy, drawdown)
Elite preservation (top 2 always protected)
Walk-forward validation (unproven strategies penalized 30%)
Tournament selection (fitness-weighted breeding)
Adaptive culling (MAS decay creates increasing selection pressure)
Challenge 2: Balancing Evolution Speed vs. Stability
Too fast = population chaos, no convergence. Too slow = can't adapt to regime changes.
Solution:
Dual-phase timing: Fast evolution during historical (30/60 bar intervals), slow during live (200/400 bar intervals)
Adaptive mutation rates: 20% historical, 8% live
Spawn/cull ratio: Always 2:1 to prevent population collapse
Challenge 3: Shadow Portfolio Accuracy
Needed realistic trade simulation without lookahead bias:
Can't peek at future bars for exits
Must track multiple portfolios simultaneously
Stop/target checks must use bar's high/low correctly
Solution:
Entry on close (realistic)
Exit checks on current bar's high/low (realistic)
Independent position tracking per strategy
Cooldown periods to prevent unrealistic rapid re-entry
ATR-normalized P&L (R-multiples) for fair comparison across volatility regimes
Challenge 4: Pine Script Compilation Limits
Hit TradingView's execution limits multiple times:
Too many array operations
Too many variables
Too complex conditional logic
Solution:
Optimized data structures (single DNA array instead of 8 separate arrays)
Minimal visual overlays (only essential plots)
Efficient fitness calculations (vectorized where possible)
Strategic use of barstate.islast to minimize dashboard updates
Challenge 5: Walk-Forward Implementation
Standard WFO is difficult in Pine Script:
Can't easily "roll forward" through historical data
Can't re-optimize strategies mid-stream
Must work in real-time streaming environment
Solution:
Age-based phase detection (first 250 bars = training, next 75 = testing)
Separate metric tracking for train vs. test
Efficiency calculation at fixed interval (after test period completes)
Validation flag persists for strategy lifetime
Challenge 6: Signal Quality Control
Early versions generated too many signals with poor win rates:
Single indicators produced excessive noise
No trend alignment
No regime awareness
Instant entries on single-bar spikes
Solution:
Three-layer confluence system (entropy + momentum + structure)
Minimum 2-of-3 agreement requirement
Trend alignment checks (penalty for counter-trend)
Regime-based probability adjustments
Persistence requirements (signals must hold multiple bars)
Volume confirmation
Quality gate (probability + confluence thresholds)
The Result
A system that:
Truly evolves (not just parameter sweeps)
Truly validates (out-of-sample testing)
Truly adapts (ongoing competition and breeding)
Stays within TradingView's platform constraints
Provides institutional-quality signals
Maintains transparency (full metrics dashboard)
Development time: 3+ months of iterative refinement
Lines of code: ~1500 (highly optimized)
Test instruments: ES, NQ, EURUSD, BTCUSD, SPY, AAPL
Test timeframes: 5min, 15min, 1H, Daily
🎯 FINAL WORDS
The Adaptive Genesis Engine is not just another indicator - it's a living system that learns, adapts, and improves through the same principles that drive biological evolution. Every bar it observes adds to its experience. Every strategy it spawns explores new parameter combinations. Every strategy it culls removes weakness from the gene pool.
This is evolution in action on your charts.
You're not getting a static formula locked in time. You're getting a system that thinks , that competes , that survives through natural selection. The strongest strategies rise to the top. The weakest die. The gene pool improves generation after generation.
AGE doesn't claim to predict the future - it adapts to whatever the future brings. When markets shift from trending to choppy, from calm to volatile, from bullish to bearish - AGE evolves new strategies suited to the new regime.
Use it on any instrument. Any timeframe. Any market condition. AGE will adapt.
This indicator gives you the pure signal intelligence. How you choose to act on it - position sizing, risk management, execution discipline - that's your responsibility. AGE tells you when and how confident . You decide whether and how much .
Trust the process. Respect the evolution. Let Darwin work.
"In markets, as in nature, it is not the strongest strategies that survive, nor the most intelligent - but those most responsive to change."
Taking you to school. — Dskyz, Trade with insight. Trade with anticipation.
— Happy Holiday's
UM VIX30-rolling/VIX Ratio oscillatorSUMMARY
A forward-looking volatility tool that often signals VIX spikes and market reversals before they happen. MA direction flips spotlight the moment volatility pressure shifts.
DESCRIPTION
This indicator compares spot VIX to a synthetic 30-day constant-maturity volatility estimate (“VIX30”) built from VX1 and VX2 futures. The VIX30/VIX Ratio reveals short-term volatility pressure and regime shifts that traditional VX1/VX2 roll-yield alone often misses.
VIX30 is constructed using true calendar-day interpolation between VX1 and VX2, with VX1% and VX2% showing the real-time weights behind the 30-day volatility anchor. The table displays the volatility regime, the VX1/VX2 weights, spot-term roll yield (VIX30/VIX), and futures-term roll yield (VX2/VX1), giving a complete, front-of-the-curve perspective on volatility dynamics.
Use this to spot early vol expansions, collapsing contango, and regime transitions that influence VXX, UVXY, SVIX, VX options, and VIX futures.
⸻
HOW IT WORKS
The script calculates the exact calendar days to expiration for the front two VIX futures. It then applies linear interpolation to blend VX1 and VX2 into a 30-day constant-maturity synthetic volatility measure (“VIX30”). Comparing VIX30 to spot VIX produces the VIX30/VIX Ratio, which highlights short-term volatility pressure and regime direction. A full term-structure table summarizes regime, VX1%/VX2% weights, and both spot-term and futures-term roll yields.
⸻
DEFAULT SETTINGS
VX1! and VX2! are used by default for front-month and second-month futures. These may be manually overridden if TradingView rolls contracts early. The default timeframe is 30 minutes, and the VIX30/VIX Ratio uses a 21-period EMA for regime smoothing. The historical threshold is set to 1.08, reflecting the long-run average relationship between VIX30 and VIX. All settings are user-configurable.
⸻
SUGGESTED USES
• Identify early volatility expansions before they appear in VX1/VX2 roll yield.
• Confirm contango/backwardation shifts with front-of-curve context.
• Time long/short volatility trades in VXX, UVXY, SVIX, and VX options.
• Monitor regime transitions (Low → Cautionary → High) to anticipate trend inflections.
• Combine with price action, NW trends, or MA color-flip systems for higher-confidence entries.
• MA red → green flips may signal opportunities to short volatility or increase equity exposure.
• MA green → red flips may signal opportunities to go long volatility, reduce equity exposure, or even take short-equity positions.
⸻
ALERTS
Alerts trigger when the ratio crosses above or below the historical threshold or when the moving-average slope flips direction. A green flip signals rising volatility pressure; a red flip signals fading or collapsing volatility. These can be used to automate long/short volatility bias shifts or trade-entry notifications.
⸻
FURTHER HINTS
• Increasing orange/red in the table suggests an emerging higher-volatility environment.
• SVIX (inverse volatility ETF) can trend strongly when volatility decays; on a 6h chart, MA green flips often align with attractive short-volatility opportunities.
• For long-volatility trades, consider shrinking to a 30-minute chart and watching for MA green → red flips as early entry cues.
• Experiment with different timeframes and smoothing lengths to match your trading style.
• Higher VIX30/VIX and VX2/VX1 roll yields generally imply faster decay in VXX, UVXY, and UVIX — or stronger upside momentum in SVIX.
HV-SMA DeltaHistorical Volatility with SMA Multiplier
Concept
This indicator acts as a "volatility explosion meter" for the market. Its core principle is to compare the current volatility with its historical average to detect moments when the market begins to "swing" with significantly more force.
The main components are as follows:
① Historical Volatility (HV) This line is an indicator of the current price volatility.
If this line moves higher, it means the price is swinging wildly (high volatility).
If this line is low, it means the price is calm or moving within a narrow range (low volatility).
② SMA x Multiplier This line functions as a "threshold" or "volatility resistance" level. It is calculated from the moving average of past volatility and then multiplied by an adjustable number (smaMultiplier) to create an upper band. In simple terms, this line tells us: "Normally, volatility should not exceed this level."
③ Difference (Histogram) This is the result of subtracting the Threshold Line (②) from the HV value (①).
Appear when the HV breaks above the threshold line. This signals that "volatility has now spiked significantly above its historical average."
Appear when the HV is still below the threshold line. This indicates that volatility remains at a normal or below-average level.
.
.
How to Use
This indicator does not tell you the direction of the price. Instead, it indicates the "power" or "momentum" of the movement. Therefore, it should always be used in conjunction with other tools to confirm the direction.
① Look for "Volatility Breakout" signals.
② Use it to confirm the strength of a trend.
③ Use it for risk management.
You can try adjusting the smaLength and smaMultiplier values in the indicator's settings to fit the specific asset and timeframe you are trading. More volatile assets may require a higher Multiplier.
-----------------------------------------------------------
หลักการทำงาน (Concept)
Indicator ตัวนี้เป็น "เครื่องวัดการระเบิดของความผันผวน" ในตลาด
โดยแกนหลักเป็นการเปรียบเทียบความผันผวนในปัจจุบันกับความผันผวนโดยเฉลี่ยในอดีต
เพื่อหาจังหวะที่ตลาดเริ่ม "เหวี่ยง" แรงขึ้นอย่างมีนัยสำคัญ
ส่วนประกอบหลักๆ มีดังนี้:
① Historical Volatility (HV)
เส้นนี้คือตัวชี้วัดความผันผวนของราคา ณ ปัจจุบัน
ถ้าเส้นนี้วิ่งขึ้นสูง แปลว่าราคากำลังแกว่งตัวรุนแรง (ผันผวนสูง)
ถ้าเส้นนี้อยู่ต่ำ แปลว่าราคานิ่งๆ หรือเคลื่อนไหวในกรอบแคบๆ (ผันผวนต่ำ)
② SMA x Multiplier
เส้นนี้ทำหน้าที่เป็น "เส้นเกณฑ์" หรือ "แนวต้านของความผันผวน"
ถูกคำนวณมาจากเส้นค่าเฉลี่ยของความผันผวนในอดีต
แล้วคูณด้วยตัวเลข Adjustable (sma-Multiplier) เพื่อสร้างเป็นกรอบบน
พูดง่ายๆ คือ เส้นนี้บอกเราว่า "โดยปกติแล้ว ความผันผวนไม่ควรจะเกินระดับนี้"
③ Difference (Histogram)
เป็นผลลัพธ์จากการนำค่า HV ข้อ ① มาลบกับ เส้นเกณฑ์ ข้อ ②
เกิดขึ้นเมื่อ HV ทะลุเส้นเกณฑ์ขึ้นไป
เป็นสัญญาณว่า ณ ตอนนี้ "ความผันผวนได้พุ่งสูงกว่าค่าเฉลี่ยในอดีตอย่างมีนัยสำคัญ"
เกิดขึ้นเมื่อ HV ยังอยู่ต่ำกว่าเส้นเกณฑ์
บอกว่าความผันผวนยังอยู่ในระดับปกติหรือต่ำกว่าค่าเฉลี่ย
.
.
วิธีการนำไปใช้ (How to Use)
Indicator ตัวนี้ ไม่ได้บอกทิศทางของราคา
แต่จะบอก "พลัง" หรือ "โมเมนตัม" ของการเคลื่อนไหว
เราจึงควรใช้มันร่วมกับเครื่องมืออื่นเพื่อยืนยันทิศทางเสมอ
① มองหาสัญญาณ "การระเบิดของราคา" (Volatility Breakout)
② ใช้ยืนยันความแข็งแกร่งของเทรนด์
③ ใช้ในการบริหารความเสี่ยง
สามารถลองปรับค่า smaLength และ smaMultiplier ในการตั้งค่า Indicator
เพื่อให้เข้ากับสินทรัพย์และ Timeframe ที่เทรดได้นะ
สินทรัพย์ที่เหวี่ยงแรงๆ อาจต้องใช้ Multiplier ที่สูงขึ้น เป็นต้น
The VoVix Experiment The VoVix Experiment
The VoVix Experiment is a next-generation, regime-aware, volatility-adaptive trading strategy for futures, indices, and more. It combines a proprietary VoVix (volatility-of-volatility) anomaly detector with price structure clustering and critical point logic, only trading when multiple independent signals align. The system is designed for robustness, transparency, and real-world execution.
Logic:
VoVix Regime Engine: Detects pre-move volatility anomalies using a fast/slow ATR ratio, normalized by Z-score. Only trades when a true regime spike is detected, not just random volatility.
Cluster & Critical Point Filters: Price structure and volatility clustering must confirm the VoVix signal, reducing false positives and whipsaws.
Adaptive Sizing: Position size scales up for “super-spikes” and down for normal events, always within user-defined min/max.
Session Control: Trades only during user-defined hours and days, avoiding illiquid or high-risk periods.
Visuals: Aurora Flux Bands (From another Original of Mine (Options Flux Flow): glow and change color on signals, with a live dashboard, regime heatmap, and VoVix progression bar for instant insight.
Backtest Settings
Initial capital: $10,000
Commission: Conservative, realistic roundtrip cost:
15–20 per contract (including slippage per side) I set this to $25
Slippage: 3 ticks per trade
Symbol: CME_MINI:NQ1!
Timeframe: 15 min (but works on all timeframes)
Order size: Adaptive, 1–2 contracts
Session: 5:00–15:00 America/Chicago (default, fully adjustable)
Why these settings?
These settings are intentionally strict and realistic, reflecting the true costs and risks of live trading. The 10,000 account size is accessible for most retail traders. 25/contract including 3 ticks of slippage are on the high side for MNQ, ensuring the strategy is not curve-fit to perfect fills. If it works here, it will work in real conditions.
Forward Testing: (This is no guarantee. I've provided these results to show that executions perform as intended. Test were done on Tradovate)
ALL TRADES
Gross P/L: $12,907.50
# of Trades: 64
# of Contracts: 186
Avg. Trade Time: 1h 55min 52sec
Longest Trade Time: 55h 46min 53sec
% Profitable Trades: 59.38%
Expectancy: $201.68
Trade Fees & Comm.: $(330.95)
Total P/L: $12,576.55
Winning Trades: 59.38%
Breakeven Trades: 3.12%
Losing Trades: 37.50%
Link: www.dropbox.com
Inputs & Tooltips
VoVix Regime Execution: Enable/disable the core VoVix anomaly detector.
Volatility Clustering: Require price/volatility clusters to confirm VoVix signals.
Critical Point Detector: Require price to be at a statistically significant distance from the mean (regime break).
VoVix Fast ATR Length: Short ATR for fast volatility detection (lower = more sensitive).
VoVix Slow ATR Length: Long ATR for baseline regime (higher = more stable).
VoVix Z-Score Window: Lookback for Z-score normalization (higher = smoother, lower = more reactive).
VoVix Entry Z-Score: Minimum Z-score for a VoVix spike to trigger a trade.
VoVix Exit Z-Score: Z-score below which the regime is considered decayed (exit).
VoVix Local Max Window: Bars to check for local maximum in VoVix (higher = stricter).
VoVix Super-Spike Z-Score: Z-score for “super” regime events (scales up position size).
Min/Max Contracts: Adaptive position sizing range.
Session Start/End Hour: Only trade between these hours (exchange time).
Allow Weekend Trading: Enable/disable trading on weekends.
Session Timezone: Timezone for session filter (e.g., America/Chicago for CME).
Show Trade Labels: Show/hide entry/exit labels on chart.
Flux Glow Opacity: Opacity of Aurora Flux Bands (0–100).
Flux Band EMA Length: EMA period for band center.
Flux Band ATR Multiplier: Width of bands (higher = wider).
Compliance & Transparency
* No hidden logic, no repainting, no pyramiding.
* All signals, sizing, and exits are fully explained and visible.
* Backtest settings are stricter than most real accounts.
* All visuals are directly tied to the strategy logic.
* This is not a mashup or cosmetic overlay; every component is original and justified.
Disclaimer
Trading is risky. This script is for educational and research purposes only. Do not trade with money you cannot afford to lose. Past performance is not indicative of future results. Always test in simulation before live trading.
Proprietary Logic & Originality Statement
This script, “The VoVix Experiment,” is the result of original research and development. All core logic, algorithms, and visualizations—including the VoVix regime detection engine, adaptive execution, volatility/divergence bands, and dashboard—are proprietary and unique to this project.
1. VoVix Regime Logic
The concept of “volatility of volatility” (VoVix) is an original quant idea, not a standard indicator. The implementation here (fast/slow ATR ratio, Z-score normalization, local max logic, super-spike scaling) is custom and not found in public TradingView scripts.
2. Cluster & Critical Point Logic
Volatility clustering and “critical point” detection (using price distance from a rolling mean and standard deviation) are general quant concepts, but the way they are combined and filtered here is unique to this script. The specific logic for “clustered chop” and “critical point” is not a copy of any public indicator.
3. Adaptive Sizing
The adaptive sizing logic (scaling contracts based on regime strength) is custom and not a standard TradingView feature or public script.
4. Time Block/Session Control
The session filter is a common feature in many strategies, but the implementation here (with timezone and weekend control) is written from scratch.
5. Aurora Flux Bands (From another Original of Mine (Options Flux Flow)
The “glowing” bands are inspired by the idea of volatility bands (like Bollinger Bands or Keltner Channels), but the visual effect, color logic, and integration with regime signals are original to this script.
6. Dashboard, Watermark, and Metrics
The dashboard, real-time Sharpe/Sortino, and VoVix progression bar are all custom code, not copied from any public script.
What is “standard” or “common quant practice”?
Using ATR, EMA, and Z-score are standard quant tools, but the way they are combined, filtered, and visualized here is unique. The structure and logic of this script are original and not a mashup of public code.
This script is 100% original work. All logic, visuals, and execution are custom-coded for this project. No code or logic is directly copied from any public or private script.
Use with discipline. Trade your edge.
— Dskyz, for DAFE Trading Systems
Tremor Tracker [theUltimator5]Tremor Tracker is a volatility monitoring tool that visualizes the "tremors" of price action by measuring and analyzing the average volatility of the current trading range, working on any timeframe. This indicator is designed to help traders detect when the market is calm, when volatility is building, and when it enters a potentially unstable or explosive state by using a lookback period to determine the average volatility and highlights outliers.
🔍 What It Does
Calculates bar-level volatility as the percentage difference between the high and low of each candle.
Applies a user-selected moving average (SMA, EMA, or WMA) to smooth out short-term noise and highlight trends in volatility.
Compares current volatility to its long-term average over a configurable lookback period.
Dynamically colors each volatility bar based on how extreme it is relative to historical behavior:
🟢 Lime — Low volatility (subdued, ranging conditions)
🟡 Yellow — Moderate or building volatility
🟣 Fuchsia — Elevated or explosive volatility
⚙️ Customizable Settings
Low Volatility Limit and High Volatility Limit: Define the thresholds for color changes based on volatility's ratio to its average.
Volatility MA Length: Adjust the smoothing period for the volatility moving average.
Average Volatility Lookback: Set how many bars are used to calculate the long-term average.
MA Type: Choose between SMA, EMA, or WMA for smoothing.
Show Volatility MA Line?: Toggle the display of the smoothed volatility trendline.
Show Raw Volatility Bars?: Toggle the display of raw per-bar volatility with dynamic coloring.
🧠 Use Cases
Identify breakout conditions: When volatility spikes above average, it may signal the onset of a new trend or a news-driven breakout.
Avoid chop zones: Prolonged periods of low volatility often precede sharp moves — a classic “calm before the storm” setup.
Timing reversion trades: Detect overextended conditions when volatility is well above historical norms.
Adapt strategies by volatility regime: Use color feedback to adjust risk, position sizing, or strategy selection based on real-time conditions.
📌 Notes
Volatility is expressed as a percentage, making this indicator suitable for use across different timeframes and asset classes.
The tool is designed to be visually intuitive, so traders can quickly spot evolving volatility states without diving into raw numbers.
OG ATR RangeDescription:
The OG ATR Tool is a clean, visualized version of the Average True Range indicator for identifying volatility, stop-loss levels, and realistic price movement expectations.
How it works:
Calculates the average range (in points/pips) of recent candles.
Overlays ATR bands to help define breakout potential or squeeze zones.
Can be used to size trades or set dynamic stop-loss and target levels.
Best for:
Intraday traders who want to avoid unrealistic targets.
Volatility-based setups and breakout strategies.
Creating position sizing rules based on instrument volatility.
Pro Tip: Combine with your trend indicators to set sniper entries and exits that respect volatility.
Candle Spread
Candle Spread is an indicator that helps traders measure the range of price movement within each candle over a specified time period. It calculates the range of the candle between the High and Low (High - Low) and displays it in a separate window below the chart as columns.
Key Features:
Colored Bars: The bars are colored based on the candle's direction:
Bullish Candle: Bars are Green.
Bearish Candle: Bars are Red.
Moving Average: The indicator includes a 30-period Simple Moving Average (SMA), which represents the overall average range of the candles.
Helps Identify Market Volatility: This indicator helps traders identify wide-range candles (signaling high volatility in the market), which could indicate a surge in momentum or potential trend reversals.
cankardesler stoploss v2This stoploss allows to filter high volatility fake trends;
But how we are made it; we are calculating the last spikes value average and calculating the standart deviation, after we added to the standart stoploss formula price+2atr and voila!!
Your stop loss is ready.
The idea behind this formula: what is explosing our stops? fake-out spikes.
We think if we get the last spikes average and calculate the standart deviation on it and after add it to the original stop formula, its gonna help for bypassing the spikes.
Thanks a lot @ocankardes for helping me to developing this formula
trend_vol_stopThe description below is copied from the script's comments. Because TradingView does not allow me to edit this description, please refer to the script's comments section, as well as the release notes, for the most up-to-date information.
----------
Usage:
The inputs define the trend and the volatility stop.
Trend:
The trend is defined by a moving average crossover. When the short
(or fast) moving average is above the long (slow) moving average, the
trend is up. Otherwise, the trend is down. The inputs are:
long: the number of periods in the long/slow moving average.
short: the number of periods in the short/fast moving average.
The slow moving average is shown in various colors (see explanation
below. The fast moving average is a faint blue.
Volatility stop:
The volatility stop has two modes, percentage and rank. The percentage
stop is given in terms of annualized volatility. The rank stop is given
in terms of percentile.
stop_pct and stop_rank are initialized with "-1". You need to set one of
these to the values you want after adding the indicator to your chart.
This is the only setting that requires your input.
mode: choose "rank" for a rank stop, "percentage" for a percentage stop.
vol_window: the number of periods in the historical volatility
calculation. e.g. "30" means the volatility will be a weighted
average of the previous 30 periods. applies to both types of stop.
stop_pct: the volatility limit, annualized. for example, "50" means
that the trend will not be followed when historical volatility rises
above 50%.
stop_rank: the trend will not be followed when the volatility is in the
N-th percentile. for example, "75" means the trend will not be
followed when the current historical volatility is greater than 75%
of previous volatilities.
rank_window: the number of periods in the rank percentile calculation.
for example, if rank_window is "252" and "stop_rank" is "80", the
trend will not be followed when current historical volatility is
greater than 80% of the previous 252 historical volatilities.
Outputs:
The outputs include moving averages, to visually identify the trend,
a volatility table, and a performance table.
Moving averages:
The slow moving average is colored green in an uptrend, red in a
downtrend, and black when the volatility stop is in place.
Volatility table:
The volatility table gives the current historical volatility, annualized
and expressed as a whole number percentage. E.g. "65" means the
instrument's one standard deviation annual move is 65% of its price.
The current rank is expressed, also as a whole number percentage. E.g.
"15" means the current volatility is greater than 15% of previous
volatilities. For convenience, the volatilities corresponding to the
0, 25, 50, 75, and 100th percentiles are also shown.
Performance table:
The performance table shows the current strategy's performance versus
buy-and-hold. If the trend is up, the instrument's return for that
period is added to the strategy's return, because the strategy is long.
If the trend is down, the negative return is added, because the strategy
is short. If the volatility stop is in (the slow moving average is
black), that period's return is excluded from the strategy returns.
Every period's return is added to the buy-and-hold returns.
The table shows the average return, the standard deviation of returns,
and the sharpe ratio (average return / standard deviation of returns).
All figures are expressed as per-period, whole number percentages.
For exmaple, "0.1" in the mean column on a daily chart means a
0.1% daily return.
The number of periods (samples) for each strategy is also shown.
vstop5 (RA)Upgrade standart Volatility Stop with 5 fixed values for selected tickers.
When switching between tickers - VStop multiplier will be changed to desired fixed value for fixed tickers.
If nothing mached - will be used standart value
See the example of setting here
As You can see on screenshot 5 different VStops can be set up for different tickers.
and as a result:
Доработка стандартного индикатора VStop, но с возможностью зафиксировать для 5-ти разных инструментов свое значение мультипликатора.
Далее при переключении с одного инструмента на другой - значение Мультипликатора VStop будет меняться в соответствии с сохраненными привязанными настройками. для всех НЕ привязанных инструментов - будет использовано значение Мультипликатора по умолчанию, которое также задается в Настройках.
Пример настроек тут
VMA's (T=1h, 2h, 4h, 8h)Plots four VMA's (Variable/Volatility Moving Average) in multiple static resolutions (1h, 2h, 4h, 8h), ideal for support/resistance/stops on predictably trending symbols like BTCUSD.
Example:
Donchian Channel Width The Donchian Channel was developed by Richard Donchian and it could be compared
to the Bollinger Bands. When it comes to volatility analysis, the Donchian Channel
Width was created in the same way as the Bollinger Bandwidth technical indicator was.
As was mentioned above the Donchian Channel Width is used in technical analysis to measure
volatility. Volatility is one of the most important parameters in technical analysis.
A price trend is not just about a price change. It is also about volume traded during this
price change and volatility of a this price change. When a technical analyst focuses his/her
attention solely on price analysis by ignoring volume and volatility, he/she only sees a part
of a complete picture only. This could lead to a situation when a trader may miss something and
lose money. Lets take a look at a simple example how volatility may help a trader:
Most of the price based technical indicators are lagging indicators.
When price moves on low volatility, it takes time for a price trend to change its direction and
it could be ok to have some lag in an indicator.
When price moves on high volatility, a price trend changes its direction faster and stronger.
An indicator's lag acceptable under low volatility could be financially suicidal now - Buy/Sell signals could be generated when it is already too late.
Another use of volatility - very popular one - it is to adapt a stop loss strategy to it:
Smaller stop-loss recommended in low volatility periods. If it is not done, a stop-loss could
be generated when it is too late.
Bigger stop-loss recommended in high volatility periods. If it is not done, a stop-loss could
be triggered too often and you may miss good trades.
Adaptive Trend Envelope [BackQuant]Adaptive Trend Envelope
Overview
Adaptive Trend Envelope is a volatility-aware trend-following overlay designed to stay responsive in fast markets while remaining stable during slower conditions. It builds a dynamic trend spine from two exponential moving averages and surrounds it with an adaptive envelope whose width expands and contracts based on realized return volatility. The result is a clean, self-adjusting trend structure that reacts to market conditions instead of relying on fixed parameters.
This indicator is built to answer three core questions directly on the chart:
Is the market trending or neutral?
If trending, in which direction is the dominant pressure?
Where is the dynamic trend boundary that price should respect?
Core trend spine
At the heart of the indicator is a blended trend spine:
A fast EMA captures short-term responsiveness.
A slow EMA captures structural direction.
A volatility-based blend weight dynamically shifts influence between the two.
When short-term volatility is low relative to long-term volatility, the fast EMA has more influence, keeping the trend responsive. When volatility rises, the blend shifts toward the slow EMA, reducing noise and preventing overreaction. This blended output is then smoothed again to form the final trend spine, which acts as the structural backbone of the system.
Volatility-adaptive envelope
The envelope surrounding the trend spine is not based on ATR or fixed percentages. Instead, it is derived from:
Log returns of price.
An exponentially weighted variance estimate.
A configurable multiplier that scales envelope width.
This creates bands that automatically widen during volatile expansions and tighten during compression. The envelope therefore reflects the true statistical behavior of price rather than an arbitrary distance.
Inner hysteresis band
Inside the main envelope, an inner band is constructed using a hysteresis fraction. This inner zone is used to stabilize regime transitions:
It prevents rapid flipping between bullish and bearish states.
It allows trends to persist unless price meaningfully invalidates them.
It reduces whipsaws in sideways conditions.
Trend regime logic
The indicator operates with three regime states:
Bullish
Bearish
Neutral
Regime changes are confirmed using a configurable number of bars outside the adaptive envelope:
A bullish regime is confirmed when price closes above the upper envelope for the required number of bars.
A bearish regime is confirmed when price closes below the lower envelope for the required number of bars.
A trend exits back to neutral when price reverts through the trend spine.
This structure ensures that trends are confirmed by sustained pressure rather than single-bar spikes.
Active trend line
Once a regime is active, the indicator plots a single dominant trend line:
In a bullish regime, the lower envelope becomes the active trend support.
In a bearish regime, the upper envelope becomes the active trend resistance.
In neutral conditions, price itself is used as a placeholder.
This creates a simple, actionable visual reference for trend-following decisions.
Directional energy visualization
The indicator uses layered fills to visualize directional pressure:
Bullish energy fills appear when price holds above the active trend line.
Bearish energy fills appear when price holds below the active trend line.
Opacity gradients communicate strength and persistence rather than binary states.
A subtle “rim” effect is added using ATR-based offsets to give depth and reinforce the active side of the trend without cluttering the chart.
Signals and trend starts
Discrete signals are generated only when a new trend regime begins:
Buy signals appear at the first confirmed transition into a bullish regime.
Sell signals appear at the first confirmed transition into a bearish regime.
Signals are intentionally sparse. They are designed to mark regime shifts, not every pullback or continuation, making them suitable for higher-quality trend entries rather than frequent trading.
Candle coloring
Optional candle coloring reinforces regime context:
Bullish regimes tint candles toward the bullish color.
Bearish regimes tint candles toward the bearish color.
Neutral states remain visually muted.
This allows the chart to communicate trend state even when the envelope itself is partially hidden or de-emphasized.
Alerts
Built-in alerts are provided for key trend events:
Bull trend start.
Bear trend start.
Transition from trend to neutral.
Price crossing the trend spine.
These alerts support hands-off trend monitoring across multiple instruments and timeframes.
How to use it for trend following
Trend identification
Only trade in the direction of the active regime.
Ignore counter-trend signals during confirmed trends.
Entry alignment
Use the first regime signal as a structural entry.
Use pullbacks toward the active trend line as continuation opportunities.
Trend management
As long as price respects the active envelope boundary, the trend remains valid.
A move back through the spine signals loss of trend structure.
Market filtering
Periods where the indicator remains neutral highlight non-trending environments.
This helps avoid forcing trades during chop or compression.
Adaptive Trend Envelope is designed to behave like a living trend structure. Instead of forcing price into static rules, it adapts to volatility, confirms direction through sustained pressure, and presents trend information in a clean, readable form that supports disciplined trend-following workflows.
VAM Pro (Multi-Model) [Final]Volatility Adjusted Momentum (VAM) Pro+ is a professional quantitative tool designed to measure trend strength by normalizing momentum against market volatility. Standard momentum indicators often fail during high-volatility periods because they treat every price change the same regardless of market noise. This indicator solves that problem by scaling price changes based on their statistical significance using Z-Score logic. This Pro+ version is specifically optimized for Scalping and Intraday Trading by introducing advanced volatility estimators and mathematical horizon adjustments that superior to classic standard deviation models.
The indicator allows you to choose the most suitable volatility model for your specific asset class. The Parkinson Volatility model is highly recommended for Crypto markets because it uses the High-Low range instead of just close prices, effectively capturing intraday wicks and liquidation spikes that standard deviation often misses. For Equities and Forex, the Garman-Klass model is the most efficient choice as it utilizes the full Open-High-Low-Close data set to account for opening gaps and professional trading ranges.
The mathematical core of the script features a strict Horizon Adjustment based on the Square Root of Time rule. This aligns the one-bar volatility risk with your chosen momentum lookback period to ensure a mathematically consistent calculation. By default, the script uses Logarithmic Returns to maintain scale invariance, which is critical for assets with high percentage swings like Cryptocurrencies. To trade with VAM Pro, look for the histogram color and its relation to the Zero line. A Green histogram indicates positive volatility-adjusted momentum where bulls are dominant, while a Red histogram shows bearish dominance. Values reaching the +2.0 or -2.0 Sigma levels represent statistically extreme moves that often act as exhaustion points or precede strong mean-reversion opportunities. When the histogram crosses the yellow signal line, it provides an early warning that the current momentum is fading.
Investment involves risk. The Volatility Adjusted Momentum (VAM) Pro+ is an analytical tool and does not constitute financial advice, investment recommendations, or an offer to buy or sell any security. Past performance is not indicative of future results. Market conditions can change rapidly, and technical indicators may produce false signals. Always perform your own due diligence, use proper risk management, and consult with a certified financial advisor before making any trading decisions. The author assumes no responsibility for any financial losses incurred through the use of this script.
Liquidity Trend & Squeeze RadarThe Liquidity Trend & Squeeze Radar is a comprehensive trading system designed to visualize the three most critical components of price action: Trend, Volatility, and Momentum. The core philosophy of this tool is to identify periods of market "compression" (low volatility), where energy builds up, and then signal when that energy is released (expansion) for a potential breakout trade. It combines an EMA Cloud for trend direction with a TTM-style Squeeze indicator and a linear regression momentum filter.
Key Components
Trend Cloud (Structure) This component identifies the overall market bias. It uses a Fast EMA and a Slow EMA to create a shaded "Cloud."
Uptrend: The Fast EMA is above the Slow EMA. The Cloud is shaded green (default).
Downtrend: The Fast EMA is below the Slow EMA. The Cloud is shaded red (default).
Usage: Generally, traders should look to take Long signals only when the Trend Cloud is bullish and Short signals when the Trend Cloud is bearish.
Volatility Radar (The Squeeze) This logic detects when the market enters a period of low volatility. It calculates this by comparing Bollinger Bands (Expansion) against Keltner Channels (Average Range).
Squeeze Active: When the Bollinger Bands narrow and go inside the Keltner Channels, a "Squeeze" is active. This is represented by gray dots plotted along the Fast EMA and gray-colored price candles.
Usage: Do not trade during a Squeeze. This indicates indecision and chop. Treat this as a "Wait" signal while potential energy builds.
Momentum Filter (Hidden Logic) While the Squeeze is active, the script calculates the underlying momentum using Linear Regression. This predicts the likely direction of the breakout before it happens. This data is displayed in the Dashboard.
Breakout Signals (Fire) When the Squeeze condition ends (volatility expands), the script checks the Momentum filter.
Bullish Breakout: If the Squeeze ends and Momentum is positive, a triangle pointing up is plotted below the bar.
Bearish Breakout: If the Squeeze ends and Momentum is negative, a triangle pointing down is plotted above the bar.
Status Dashboard A table located in the top-right corner provides a real-time summary of the market state without needing to interpret the chart visuals manually. It lists the current Trend direction, Volatility state (Squeeze vs. Expansion), and Momentum value (Positive vs. Negative).
How to Trade This Indicator
Step 1: Identify the Trend Observe the background Cloud. Ensure you are trading in the direction of the dominant flow. If the Cloud is green, favor Longs. If red, favor Shorts.
Step 2: Wait for the Squeeze Look for the gray dots to appear on the moving average line and for the candles to turn gray. This indicates the market is resting and building energy. During this phase, you are stalking the trade. Avoid entering positions while the gray dots remain visible.
Step 3: The Breakout (The Trigger) Wait for the gray dots to disappear. This means the Squeeze has "Fired."
Long Entry: Look for a Triangle Up signal. Ideally, this should occur when the Trend Cloud is green.
Short Entry: Look for a Triangle Down signal. Ideally, this should occur when the Trend Cloud is red.
Step 4: Confirmation Check the Dashboard table. High-probability trades occur when all three metrics align (e.g., Trend is BULL, Volatility is EXPANSION, and Momentum is POSITIVE).
Settings Guide
Trend Structure:
Fast/Slow EMA Length: Adjusts the sensitivity of the Trend Cloud. Higher numbers effectively smooth out noise but react slower to trend changes.
Show Trend Cloud: Toggles the shaded area between EMAs on or off.
Volatility Radar:
Bollinger/Keltner Settings: These define the Squeeze sensitivity.
Keltner Mult: The most important setting. The default is 1.5. Lowering this to 1.0 will make the Squeeze harder to trigger (requiring extreme compression), leading to fewer but potentially more explosive signals.
Momentum:
Momentum Length: The lookback period for the linear regression calculation used to determine breakout direction.
Visuals:
Colorize Candles: Paints the price bars based on the current state (Gray for Squeeze, Green/Red for Trend).
Show Dashboard: Toggles the visibility of the data table.
Disclaimer This indicator and guide are for educational and informational purposes only. They do not constitute financial, investment, or trading advice. Trading in financial markets involves a significant risk of loss and is not suitable for every investor. Past performance of any trading system or methodology is not necessarily indicative of future results. The user assumes all responsibility for any trades made using this tool. Always use proper risk management.
ATR Daily (Classic vs Robust, NY-Fix, Spike Control)📘 What this indicator does
This tool provides an advanced view of daily market volatility by comparing two versions of the Average True Range (ATR):
• Classic ATR — standard Wilder smoothing
• Robust ATR — uses median-based filtering and spike-control logic to reduce distortion from abnormal candles
Both values are calculated using daily data aligned to the New York trading session, so volatility resets at the same moment each institutional trading day begins. This keeps readings consistent across crypto, forex and stocks, even on intraday charts.
⚙️ How it works (in simple terms)
The script evaluates each True Range (TR) value relative to a median-based threshold:
• Abnormally large ranges are either clamped to a limit or excluded from updating ATR
• A hard cap prevents single spikes from inflating the entire indicator
• The result is a smoother and more realistic representation of daily volatility
This allows ATR to reflect typical market behaviour instead of rare one-off events.
📊 What appears on the chart
• Two daily ATR lines (Classic and Robust)
• Histogram showing the percentage of daily range already completed
• Red bars when price exceeds 100% of daily ATR
• A data table with volatility metrics
• Background highlights on days with extreme values
💡 How traders can use it
• Identify when a market has already completed most of its typical daily move
• Compare Classic vs Robust ATR to spot news-driven distortion
• Use Robust ATR for more stable stop-loss and take-profit logic
• Track volatility expansion or contraction across sessions
⚙️ Key settings
Setting Purpose
ATR period Standard smoothing length (default 14)
Robust mode Clamp, Freeze or Off
MAD multiplier Sensitivity to outliers
Cap × median(TR) Maximum allowed spike size
Base for passed ATR Which ATR is used to measure daily %
Freeze weekends Keeps ATR unchanged on Sat/Sun
🧩 Unique concept
Unlike typical ATR indicators, this one combines robust statistics (median + MAD) with session-based fixation. ATR values update only once per New York session, creating stable volatility measurements that match institutional timing.
🔒 Source code
The script is published with protected source code to preserve its statistical structure and prevent unauthorized modification.
🧭 Summary
ATR Daily (Classic vs Robust, NY-Fix) provides a clearer and more reliable view of daily volatility.
It helps determine whether the market is still in the early phase of its daily range or already exhausted.
MACD Scaled Overlay█ OVERVIEW
The "MACD Scaled Overlay" indicator is an advanced version of the classic MACD (Moving Average Convergence Divergence) oscillator that displays signals directly on the price chart. Instead of a traditional separate panel, the MACD line, signal line, and histogram are scaled and overlaid on the price chart, making it easier to identify key price levels and potential reversal points. The indicator also supports the detection of divergences (regular and hidden) and offers extensive customization options, such as adjusting colors, line thickness, and enabling/disabling visual elements.
█ CONCEPTS
The "MACD Scaled Overlay" indicator is designed to simplify trend and reversal analysis by integrating MACD signals with the price chart. The MACD Scaled Overlay is scaled relative to the average candle range, allowing the lines and histogram to dynamically adjust to market volatility. Additionally, the indicator enables the detection of divergences (bullish and bearish, both regular and hidden) based on the traditional MACD histogram (before scaling), ensuring consistency with classic divergence analysis. The indicator is most effective when combined with other technical analysis tools, such as Fibonacci levels, pivot points, or trend lines.
█ MACD Calculations and Scaling
The indicator is based on the classic MACD formula, which includes:
-MACD Line: The difference between the fast EMA (default: 12) and the slow EMA (default: 26).
-Signal Line: The EMA of the MACD line (default: 9).
-Histogram: The difference between the MACD line and the signal line.
Scaling is achieved by normalizing the MACD values relative to the standard deviation and the average candle range. This makes the lines and histogram dynamically adjust to market volatility, improving their readability and utility on the price chart. The scaling formulas are:
-MACD Scaled: macdNorm * avgRangeLines * scaleFactor
-Signal Scaled: signalNorm * avgRangeLines * scaleFactor
-Histogram Scaled: histNorm * avgRangeHist * scaleFactor
Where:
-macdNorm and signalNorm are the normalized MACD and signal line values.
-avgRangeLines and avgRangeHist are the average candle ranges.
-scaleFactor is the scaling multiplier (default: 2).
The positioning of the lines and histogram is relative to the candle midpoint (candleMid = (high + low) / 2), ensuring proper display on the price chart. Divergences are calculated based on the traditional MACD histogram (before scaling), maintaining consistency with standard divergence detection methodology.
█INDICATOR FEATURES
-Dynamic MACD and Signal Lines: Scaled and overlaid on the price chart, facilitating the identification of reversal points.
-Histogram: Displays the difference between the MACD and signal lines, dynamically adjusted to market volatility.
-Divergence Detection: Ability to detect regular and hidden divergences (bullish and bearish) based on the traditional MACD histogram, with options to enable/disable their display.
-Visual Customization: Options to adjust colors, line thickness, transparency, and enable/disable elements such as the zero line, MACD line, signal line, or histogram.
-Smoothing: Smoothing length for lines (default: 1) and histogram (default: 3). Smoothing may delay crossover signals, which should be considered during analysis.
-Alerts: Alert conditions for MACD and signal line crossovers, enabling notifications for potential buy/sell signals.
█ HOW TO SET UP THE INDICATOR
-Add the "MACD Scaled Overlay" indicator to your TradingView chart.
-Configure parameters in the settings, such as EMA lengths, scaling multiplier, or smoothing periods, to match your trading style.
-Enable or disable the display of the zero line, MACD line, signal line, or histogram based on your needs.
-Adjust colors and line thickness in the "Style" section and transparency settings in the input section to optimize visualization.
█ HOW TO USE
Add the indicator to your chart, configure the parameters, and observe the interactions of the price with the MACD line, signal line, and histogram to identify potential entry and exit points. Key signals include:
-MACD and Signal Line Crossovers: A crossover of the MACD line above the signal line may indicate a buy signal (bullish cross), while a crossover below the signal line may indicate a sell signal (bearish cross).
-Crossings Through the Price Line (Zero): The MACD line or histogram crossing the price line (candle midpoint) may indicate a change in momentum. For example, the histogram moving from negative to positive values near the price line may signal increasing bullish trend strength.
-Divergences: Detection of regular and hidden divergences (bullish and bearish) based on the traditional MACD histogram can help predict trend reversals. Divergences are not standalone signals, as they are delayed by the specified pivot length (default: 3). However, they help strengthen the significance of other signals, such as crossovers or support/resistance levels.
The indicator is most effective when combined with other tools, such as Fibonacci levels, pivot points, or support/resistance lines, to confirm signals.
Range TableThe Range Table indicator calculates and displays the Daily Average True Range (ATR), the current day's True Range (TR), and two customizable ATR percentage values in a clean table format. It provides values in ticks, points, and USD, helping traders set stop-loss buffers based on market volatility.
**Features:**
- Displays the Daily ATR (14-period) and current day's True Range (TR) with its percentage of the Daily ATR.
- Includes two customizable ATR percentages (default: 75% and 10%, with the second disabled by default).
- Shows values in ticks, points, and USD based on the symbol's tick size and point value.
- Customizable table position, background color, text color, and font size.
- Toggle visibility for the table and percentage rows via input settings.
**How to Use:**
1. Add the indicator to your chart.
2. Adjust the table position, colors, and font size in the input settings.
3. Enable or disable the 75% and 10% ATR rows or customize their percentages.
4. Use the displayed values to set stop-loss or take-profit levels based on volatility.
**Ideal For:**
- Day traders and swing traders looking to set volatility-based stop-losses.
- Users analyzing tick, point, and USD-based risk metrics.
**Notes:**
- Ensure your chart is set to a timeframe that aligns with the daily ATR calculations.
- USD values are approximate if `syminfo.pointvalue` is unavailable.
Developed by FlyingSeaHorse.
Momentum Regression [BackQuant]Momentum Regression
The Momentum Regression is an advanced statistical indicator built to empower quants, strategists, and technically inclined traders with a robust visual and quantitative framework for analyzing momentum effects in financial markets. Unlike traditional momentum indicators that rely on raw price movements or moving averages, this tool leverages a volatility-adjusted linear regression model (y ~ x) to uncover and validate momentum behavior over a user-defined lookback window.
Purpose & Design Philosophy
Momentum is a core anomaly in quantitative finance — an effect where assets that have performed well (or poorly) continue to do so over short to medium-term horizons. However, this effect can be noisy, regime-dependent, and sometimes spurious.
The Momentum Regression is designed as a pre-strategy analytical tool to help you filter and verify whether statistically meaningful and tradable momentum exists in a given asset. Its architecture includes:
Volatility normalization to account for differences in scale and distribution.
Regression analysis to model the relationship between past and present standardized returns.
Deviation bands to highlight overbought/oversold zones around the predicted trendline.
Statistical summary tables to assess the reliability of the detected momentum.
Core Concepts and Calculations
The model uses the following:
Independent variable (x): The volatility-adjusted return over the chosen momentum period.
Dependent variable (y): The 1-bar lagged log return, also adjusted for volatility.
A simple linear regression is performed over a large lookback window (default: 1000 bars), which reveals the slope and intercept of the momentum line. These values are then used to construct:
A predicted momentum trendline across time.
Upper and lower deviation bands , representing ±n standard deviations of the regression residuals (errors).
These visual elements help traders judge how far current returns deviate from the modeled momentum trend, similar to Bollinger Bands but derived from a regression model rather than a moving average.
Key Metrics Provided
On each update, the indicator dynamically displays:
Momentum Slope (β₁): Indicates trend direction and strength. A higher absolute value implies a stronger effect.
Intercept (β₀): The predicted return when x = 0.
Pearson’s R: Correlation coefficient between x and y.
R² (Coefficient of Determination): Indicates how well the regression line explains the variance in y.
Standard Error of Residuals: Measures dispersion around the trendline.
t-Statistic of β₁: Used to evaluate statistical significance of the momentum slope.
These statistics are presented in a top-right summary table for immediate interpretation. A bottom-right signal table also summarizes key takeaways with visual indicators.
Features and Inputs
✅ Volatility-Adjusted Momentum : Reduces distortions from noisy price spikes.
✅ Custom Lookback Control : Set the number of bars to analyze regression.
✅ Extendable Trendlines : For continuous visualization into the future.
✅ Deviation Bands : Optional ±σ multipliers to detect abnormal price action.
✅ Contextual Tables : Help determine strength, direction, and significance of momentum.
✅ Separate Pane Design : Cleanly isolates statistical momentum from price chart.
How It Helps Traders
📉 Quantitative Strategy Validation:
Use the regression results to confirm whether a momentum-based strategy is worth pursuing on a specific asset or timeframe.
🔍 Regime Detection:
Track when momentum breaks down or reverses. Slope changes, drops in R², or weak t-stats can signal regime shifts.
📊 Trade Filtering:
Avoid false positives by entering trades only when momentum is both statistically significant and directionally favorable.
📈 Backtest Preparation:
Before running costly simulations, use this tool to pre-screen assets for exploitable return structures.
When to Use It
Before building or deploying a momentum strategy : Test if momentum exists and is statistically reliable.
During market transitions : Detect early signs of fading strength or reversal.
As part of an edge-stacking framework : Combine with other filters such as volatility compression, volume surges, or macro filters.
Conclusion
The Momentum Regression indicator offers a powerful fusion of statistical analysis and visual interpretation. By combining volatility-adjusted returns with real-time linear regression modeling, it helps quantify and qualify one of the most studied and traded anomalies in finance: momentum.
Recency-Weighted Market Memory w/ Quantile-Based DriftRecency-Weighted Market Memory w/ Quantile-Based Drift
This indicator combines market memory, recency-weighted drift, quantile-based volatility analysis, momentum (RoC) filtering, and historical correlation checks to generate dynamic forecasts of possible future price levels. It calculates bullish and bearish forecast lines at each horizon, reflecting how the price might behave based on historical similarities.
Trading Concepts & Mathematical Foundations Explained
1) Market Memory
Concept:
Markets tend to repeat past behaviors under similar conditions. By identifying historical market states that closely match current conditions, we predict future price movements based on what happened historically.
Calculation Steps:
We select a historical lookback window (for example, 210 bars).
Each historical bar within this window is evaluated to see if its conditions match the current market. Conditions include:
Correlation between price change and bullish/bearish volume changes (over a user-defined correlation lookback period).
Momentum (Rate of Change, RoC) measured over a separate lookback period.
Only bars closely matching current conditions (within user-defined tolerance percentages) are included.
2) Recency-Weighted Drift
Concept:
Recent market movements often influence future direction. We assign more importance to recent bars to capture the current market bias effectively.
Calculation Steps:
Consider recent price changes between opens and closes for a user-defined drift lookback (for example, last 20 bars).
Give higher weight to recent bars (the most recent bar gets the highest weight, and weights decrease progressively for older bars).
Average these weighted changes separately for upward and downward movements, then combine these averages to calculate a final drift percentage relative to the current price.
3) Correlation Filtering
Concept:
Price changes often correlate strongly with bullish or bearish volume activity. By using historical correlation comparisons, we focus only on past market states with similar volume-price dynamics.
Calculation Steps:
Compute current correlations between price changes and bullish/bearish volume over the user-defined correlation lookback.
Evaluate each historical bar to see if its correlation closely matches the current correlation (within a user-specified percentage tolerance).
Only historical bars meeting this correlation criterion are selected.
4) Momentum (RoC) Filtering
Concept:
Two market periods may exhibit similar correlation structures but differ in how fast prices move (momentum). To ensure true similarity, momentum is checked as an additional filter.
Calculation Steps:
Compute the current Rate of Change (RoC) over the specified RoC lookback.
For each candidate historical bar, calculate its historical RoC.
Only include historical bars whose RoC closely matches the current RoC (within the RoC percentage tolerance).
5) Quantile-Based Volatility and Drift Amplification
Concept:
Quantiles (such as the 95th, 50th, and 5th percentiles) help gauge if current prices are near historical extremes or the median. Quantile bands measure volatility expansions and contractions.
Calculation Steps:
Calculate the 95%, 50%, and 5% quantiles of price over the quantile lookback period.
Add and subtract multiples of the standard deviation to these quantiles, creating upper and lower bands.
Measure the bands' widths relative to the current price as volatility indicators.
Determine the active quantile (95%, 50%, or 5%) based on proximity to the current price (within a percentage tolerance).
Compute the rate of change (RoC) of the active quantile to detect directional bias.
Combine volatility and quantile RoC into a scaling factor that amplifies or dampens expected price moves.
6) Expected Value (EV) Computation & Forecast Lines
Concept:
We forecast future prices based on how similarly-conditioned historical periods performed. We average historical moves to estimate the expected future price.
Calculation Steps:
For each forecast horizon (e.g., 1 to 27 bars ahead), collect all historical price moves that passed correlation and RoC filters.
Calculate average historical moves for bullish and bearish cases separately.
Adjust these averages by applying recency-weighted drift and quantile-based scaling.
Translate adjusted percentages into absolute future price forecasts.
Draw bullish and bearish forecast lines accordingly.
Indicator Inputs & Their Roles
Correlation Tolerance (%)
Adjusts how strictly the indicator matches historical correlation. Higher tolerance includes more matches, lower tolerance selects fewer but closer matches.
Price RoC Lookback and Price RoC Tolerance (%)
Controls how momentum (speed of price moves) is matched historically. Increasing tolerance broadens historical matches.
Drift Lookback (bars)
Determines the number of recent bars influencing current drift estimation.
Quantile Lookback Period and Std Dev Multipliers
Defines quantile calculation and the size of the volatility bands.
Quantile Contact Tolerance (%)
Sets how close the current price must be to a quantile for it to be considered "active."
Forecast Horizons
Specifies how many future bars to forecast.
Continuous Forecast Lines
Toggles between drawing continuous lines or separate horizontal segments for each forecast horizon.
Practical Trading Applications
Bullish & Bearish EV Lines
These forecast lines indicate expected price levels based on historical similarity. Green indicates positive expectations; red indicates negative.
Momentum vs. Mean Reversion
Wide quantile bands and high drift suggest momentum, while extremes may signal possible reversals.
Volatility Sensitivity
Forecasts adapt dynamically to market volatility. Broader bands increase forecasted price movements.
Filtering Non-Relevant Historical Data
By using both correlation and RoC filtering, irrelevant past periods are excluded, enhancing forecast reliability.
Multi-Timeframe Suitability
Adaptable parameters make this indicator suitable for different trading styles and timeframes.
Complementary Tool
This indicator provides probabilistic projections rather than direct buy or sell signals. Combine it with other trading signals and analyses for optimal results.
Important Considerations
While historically-informed forecasts are valuable, market behavior can evolve unpredictably. Always manage risks and use supplementary analysis.
Experiment extensively with input settings for your specific market and timeframe to optimize forecasting performance.
Summary
The Recency-Weighted Market Memory w/ Quantile-Based Drift indicator uniquely merges multiple sophisticated concepts, delivering dynamic, historically-informed price forecasts. By combining historical similarity, adaptive drift, momentum filtering, and quantile-driven volatility scaling, traders gain an insightful perspective on future price possibilities.
Feel free to experiment, explore, and enjoy this powerful addition to your trading toolkit!
G-VIDYA | QuantEdgeBIntroducing G-VIDYA by QuantEdgeB
____
🔹 Overview
The G-VIDYA | QuantEdgeB is a dynamic trend-following indicator that enhances market trend detection using Gaussian smoothing and an adaptive Variable Index Dynamic Average (VIDYA). It is designed to reduce noise, improve responsiveness, and adapt to volatility, making it a powerful tool for traders looking to capture long-term trends efficiently.
By integrating ATR-based filtering, the indicator creates a dynamic support and resistance band around VIDYA, allowing for more accurate trend confirmations. Additionally, traders have the option to enable trade labels for clearer visual signals.
This indicator is well-suited for medium to long-term trend traders, combining mathematical precision with market adaptability for robust trading strategies.
_____
🚀 Key Features
1. Gaussian Smoothing → Reduces market noise and smoothens price action.
2. VIDYA Adaptive Calculation → Adjusts dynamically based on market volatility.
3. ATR-Based Filtering → Creates a volatility-driven range around VIDYA.
4. Dynamic Trend Confirmation → Identifies bullish and bearish momentum shifts.
5. Trade Labels (Optional) → Can display Long/Cash labels on chart for better clarity.
6. Customizable Color Modes → Offers multiple visual themes for personalized experience.
7. Automated Alerts → Sends buy/sell alerts for crossover trend changes.
_____
📊 How It Works
1. Gaussian Smoothing is applied to the closing price to remove noise and improve signal clarity.
2. VIDYA Calculation dynamically adjusts to price movements, making it more reactive during high-volatility periods and stable in low-volatility environments.
3. ATR-Based Filtering establishes a dynamic range (Upper & Lower ATR Bands) around VIDYA:
- If price breaks above the upper ATR band, it signals a potential long trend.
- If price breaks below the lower ATR band, it signals a potential short trend.
4. The indicator assigns color-coded candles based on trend direction:
- Bullish Trend → Blue/Green (Uptrend)
- Bearish Trend → Red/Maroon (Downtrend)
5. Labels & Alerts (Optional)
- Users can activate Long/Cash labels to mark buy/sell opportunities.
- Built-in alerts trigger automatic notifications when trend direction changes.
_____
🎨 Visual Representation
- VIDYA Line → A smooth, trend-following line that dynamically adjusts to market conditions.
- Upper & Lower ATR Bands → Establishes a volatility-based corridor around VIDYA.
- Bar Coloring → Candles change color according to the detected trend.
- Long/Short Labels (Optional) → Displays trade entry/exit signals (can be enabled/disabled).
- Alerts → Generates trade notifications based on trend reversals.
______
⚙️ Default Settings
- Gaussian Smoothing
- Length: 4
- Sigma: 2.0
- VIDYA Settings
- VIDYA Length: 46
- Standard Deviation Length: 28
- ATR Settings
- ATR Length: 14
- ATR Multiplier: 1.3
____
💡 Who Should Use It?
✅ Trend Traders → Those who rely on medium-to-long-term trends for trading decisions.
✅ Swing Traders → Ideal for traders who want to capture trend reversals and ride momentum.
✅ Quantitative Analysts → Provides statistically driven smoothing and adaptive trend detection.
✅ Risk-Averse Traders → ATR filtering helps manage market volatility effectively.
_____
Conclusion
The G-VIDYA | QuantEdgeB is an advanced trend-following indicator that combines Gaussian smoothing, adaptive VIDYA filtering, and ATR-based dynamic trend analysis to deliver robust and reliable trade signals.
✅ Key Takeaways
📌 Adaptive & Dynamic: Adjusts to market conditions, making it effective for trend-following strategies.
📌 Noise Reduction: Gaussian smoothing helps filter out short-term fluctuations, improving signal clarity.
📌 Volatility Awareness: ATR-based filtering ensures better handling of market swings and trend reversals.
By blending mathematical precision and quantitative market analysis, G-VIDYA | QuantEdgeB offers a powerful edge in trend trading strategies.
🔹 Disclaimer: Past performance is not indicative of future results. No trading strategy can guarantee success in financial markets.
🔹 Strategic Advice: Always backtest, optimize, and align parameters with your trading objectives and risk tolerance before live trading.






















