ARDO - Adaptive Regression Deviation Oscillator (v2.4.6)ARDO – Adaptive Regression Deviation Oscillator (v2.4.6)
ARDO (Adaptive Regression Deviation Oscillator) quantifies deviation of price structure from a regression-based equilibrium baseline using adaptive moving-average spreads. It combines percentile-normalized distance, linear-regression slope, and dynamic gradient scaling to reveal trend extension, exhaustion, and regime shifts—offering a structural view of trend integrity and mean-reversion timing beyond traditional momentum oscillators. It is designed to help you answer two questions:
Where are we in the regime? (extended, neutral, or reversal-prone)
Is this a “trade” environment or a “stand aside” environment? (Gate PASS vs Gate BLOCK / drift)
ARDO is best used as a context + timing framework , not a standalone entry/exit system.
What you see in the ARDO pane
1) Spread A (% vs baseline)
Primary “timing” spread (default: stepline). Spread A is colored by a 4-state maColor model:
GREEN : above baseline and strengthening
ORANGE : above baseline but weakening
RED : below baseline and weakening
GRAY : below baseline but improving
2) Spread B (% vs baseline)
Secondary “context” spread (default: columns). Same 4-state color model as above, often used to confirm or filter Spread A behavior.
3) LinReg (slope-gradient)
A LinReg line fit to a selected source (Spread A / Spread B / Spread A+B). ARDO applies a slope-magnitude gradient (opacity/intensity) to visualize regime:
Stronger slope magnitude = stronger directional regime
Fading / low slope magnitude = drift / dead-zone (lower edge, choppy conditions, or end-of-move)
4) Tier zones (Q0–Q2, H2–H4)
ARDO classifies LinReg values into percentile tiers (extremes and mid-tiers). These tiers can be rendered as:
Background regions, or
Zero-line marker circles (“MK …” plots)
Important: Background colors do not export . The “MK Q0 … MK H4” series are emitted so you can reconstruct tier membership in CSV/backtests.
5) Gate PASS / Gate BLOCK
A compact “permission layer” that can require:
Spread A > LinReg
EMA Fast > EMA Slow
Minimum Spread A threshold
Minimum absolute LinReg slope
Use Gate PASS to focus on higher-quality conditions; use Gate BLOCK as a “do nothing / reduce size” warning.
Key settings (what they change)
Tier Mode
Standard: symmetric cut structure (general purpose)
Asymmetric: separate tuning for highs vs lows (often better when upside and downside behavior are not symmetric)
Tier Population
All Bars (LinReg): tiers represent the full LinReg distribution
Pivots Only: tiers are computed from pivot events only (can tighten “extreme” definition and change how frequently zones appear)
Render Mode
Background: easiest to read visually
Zero-line Markers: best for export/backtesting workflows (MK series)
Gating options
Turn on/off each rule independently; adjust thresholds to match symbol volatility and timeframe.
Color overrides
Optional per-state color customization for Spread A, Spread B, and LinReg (4-state).
Alerts included (v2.4.6)
ARDO exposes named alerts you can use for automation or review, including:
Gradient / regime alerts (HIGH vs LOW slope-magnitude regimes; regime shift transitions)
Color-state changes (Spread B → GREEN/ORANGE/RED/GRAY; LinReg state changes)
Tier entry alert s (LinReg entering key tiers such as Q0/Q1/H3/H4)
Structural primitives (Bullish A > B, Bearish A < B, Gate PASS/BLOCK, crosses of 0, etc.)
How to use (practical workflow)
Anchor timeframe (65m or Daily): identify regime (tiers + gradient) and whether you should be aggressive or defensive.
Execution timeframe (5m/1m): time entries using Spread A/B structure and Gate PASS, aligned with the anchor regime.
Avoid forcing trades in drift: fading gradient + mid/low-edge tiers often marks “dead-zone” conditions.
Notes / limitations
ARDO is a context engine: it describes regime and location, not guaranteed direction.
Tier thresholds are distribution-based and will vary by window/timeframe.
Always apply your own risk management; this script is not financial advice.
Cerca negli script per "backtest"
Liquidation HeatmapSDSH Liquidation Heatmap: Stochastic Microstructure Modeling
Technical Summary
This indicator implements an advanced algorithmic approach for the detection of liquidity and liquidation zones using the State-Dependent Spread Hawkes (SDSH) model. Unlike conventional heatmaps that aggregate raw Ask/Bid and Open Interest (OI) data from external data providers, this script generates a synthetic liquidity topology based purely on the physics of price movement and market microstructure.
Scientific Foundation: The SDSH Model
The core of the indicator relies on two integrated mathematical components that allow for the inference of latent order locations without reading the Limit Order Book (LOB):
State-Dependent Spread Estimation: It uses variations of range-based volatility estimators (based on Corwin-Schultz principles) to calculate the "effective spread" of the market in real-time. This allows determining the actual price friction and, consequently, where leveraged positions are statistically likely to accumulate.
Self-Exciting Hawkes Processes: A stochastic point process model (Hawkes Process) is applied to measure the "intensity" of liquidity events. The algorithm assumes that order arrivals and volatility cluster in time; the model quantifies this market "memory" to project the future intensity of liquidations.
High-Fidelity Replication without Level 2 Data
The critical value of this indicator lies in its ability to replicate with spatial exactitude the zones that a Liquidation Heatmap based on Tick-level or real market depth data would signal, but operating in a "black box" environment regarding provider data.
By triangulating volatility, temporal intensity decay (Hawkes Decay), and standard leverage projections (100x, 50x, 25x), the algorithm reconstructs the liquidation map. Mathematically, real liquidation zones are a function of participant entry and subsequent volatility; by modeling these variables accurately, the visual result converges with the actual location of stop-losses and mass liquidation points.
Utility for Quantitative Modeling (Quants)
This tool is designed for research and quantitative trading environments that require:
Data Independence: Elimination of the need for expensive subscriptions to Open Interest or Depth of Market (DOM) data.
Noise Filtering: As a mathematical model, it filters out "spoofing" (fake orders in the book) that often clutters traditional heatmaps, showing only zones where market structure mathematically forces the existence of liquidity.
Structural Backtesting: It allows for the validation of mean reversion and liquidity breakout strategies on historical data where market depth information is often unavailable or unreliable.
Visual Parameters
The indicator renders "stress boxes" with opacity gradients based on the probability of price collision.
Colors: Map the density of estimated synthetic contracts.
Persistence: Zones remain active until the price interacts with them (absorption) or the model determines that liquidity has dissipated (Hawkes decay).
Key Support and ResistanceKEY SUPPORT AND RESISTANCE - USER GUIDE
========================================
OVERVIEW
This indicator automatically identifies and displays key support and resistance levels based on swing highs and swing lows. It uses pivot point detection to mark significant price levels where the market has previously shown reactions, helping traders identify potential entry/exit points and key decision zones.
KEY FEATURES
• Automatic Level Detection: Identifies swing highs (resistance) and swing lows (support) using pivot point analysis
• Dynamic Line Management: Displays only recent levels within a specified lookback period to keep charts clean
• Auto-Extending Lines: Projects support/resistance levels forward to anticipate future price interactions
• Color-Coded Levels: Red lines for resistance, green lines for support for easy visual identification
========================================
PARAMETERS
========================================
Left Bars (Default: 10)
• Minimum: 5 bars
• Number of bars to the left of the pivot point
• Higher values = more significant levels but fewer signals
• Lower values = more sensitive detection but may include minor swings
Right Bars (Default: 10)
• Minimum: 5 bars
• Number of bars to the right of the pivot point
• Must be confirmed by price action before the level is drawn
• Balances between confirmation delay and signal accuracy
Show Last N Bars (Default: 200)
• Minimum: 10 bars
• Only displays support/resistance levels detected within the most recent N bars
• Keeps your chart clean by removing outdated levels
• Adjust based on your trading timeframe and style
Line Extension Length (Default: 48)
• Minimum: 1 bar
• How many bars forward the support/resistance lines extend
• Helps visualize potential future price interactions
• Longer extensions useful for swing trading, shorter for day trading
========================================
HOW TO USE
========================================
FOR SWING TRADERS
1. Use default settings (10/10) or increase to 15/15 for more significant levels
2. Set "Show Last N Bars" to 300-500 to capture longer-term levels
3. Look for price reactions when approaching these levels
4. Combine with volume analysis for confirmation
FOR DAY TRADERS
1. Consider reducing Left/Right Bars to 7-8 for more frequent signals
2. Set "Show Last N Bars" to 100-150 to focus on recent action
3. Reduce "Line Extension Length" to 20-30 bars
4. Watch for intraday bounces or breakouts at these levels
TRADING STRATEGIES
Bounce Trading (Mean Reversion)
• Enter long when price approaches green support lines
• Enter short when price approaches red resistance lines
• Use stop loss just beyond the support/resistance level
• Best in ranging or consolidating markets
Breakout Trading (Trend Following)
• Wait for price to break through resistance (bullish) or support (bearish)
• Confirm with increased volume
• Previous resistance becomes new support (and vice versa)
• Best in trending markets
Multi-Timeframe Analysis
• Check higher timeframe levels for major support/resistance zones
• Use lower timeframe levels for precise entry/exit timing
• Confluence of multiple timeframe levels creates strong zones
========================================
IMPORTANT NOTES
========================================
Line Confirmation Delay
• Lines appear with a delay equal to "Right Bars" parameter
• This delay ensures the pivot point is confirmed
• Real-time level detection requires price action confirmation
Chart Clarity
• Maximum 500 lines can be displayed (TradingView limitation)
• Adjust "Show Last N Bars" if chart becomes too cluttered
• Old lines automatically delete when outside the lookback period
False Signals
• Not all support/resistance levels will hold
• Use additional confirmation (volume, candlestick patterns, other indicators)
• Markets can break through levels, especially during high-impact news
BEST PRACTICES
1. Combine with Other Analysis: Use alongside trend indicators, volume, and price action patterns
2. Context Matters: Consider overall market trend and structure
3. Risk Management: Always use stop losses; don't rely solely on S/R levels
4. Market Conditions: More effective in liquid, actively traded markets
5. Backtesting: Test settings on your specific instrument and timeframe before live trading
TROUBLESHOOTING
Too Many Lines?
• Increase "Left Bars" and "Right Bars" values
• Decrease "Show Last N Bars" value
Too Few Lines?
• Decrease "Left Bars" and "Right Bars" values
• Increase "Show Last N Bars" value
Lines Not Appearing?
• Ensure sufficient price data is loaded on your chart
• Check that "Right Bars" have passed since the last swing point
• Verify indicator is properly loaded (refresh if needed)
TECHNICAL DETAILS
• Uses ta.pivothigh() and ta.pivotlow() functions for level detection
• Implements array-based line management for efficient rendering
• Automatic cleanup of outdated lines to maintain performance
• Overlay indicator - displays directly on price chart
Disclaimer: This indicator is for educational and informational purposes only. It does not constitute financial advice. Always conduct your own research and risk assessment before making trading decisions.
========================================
中文使用指南
========================================
概述
本指標自動識別並顯示基於波段高點和低點的關鍵支撐阻力位。使用樞軸點檢測標記市場先前反應的重要價格水平,幫助交易者識別潛在的進出場點和關鍵決策區域。
主要功能
• 自動水平檢測:使用樞軸點分析識別波段高點(阻力)和波段低點(支撐)
• 動態線條管理:僅顯示指定回看期內的近期水平,保持圖表清晰
• 自動延伸線條:將支撐阻力水平向前投影,預測未來價格互動
• 顏色編碼:紅線表示阻力,綠線表示支撐,便於視覺識別
========================================
參數說明
========================================
左側K棒數(預設:10)
• 最小值:5根K棒
• 樞軸點左側的K棒數量
• 數值越高 = 水平越重要但訊號越少
• 數值越低 = 檢測更敏感但可能包含次要波動
右側K棒數(預設:10)
• 最小值:5根K棒
• 樞軸點右側的K棒數量
• 必須經過價格行為確認後才繪製水平
• 在確認延遲和訊號準確性之間取得平衡
顯示最近N根K棒內的點(預設:200)
• 最小值:10根K棒
• 僅顯示最近N根K棒內檢測到的支撐阻力水平
• 透過移除過時水平保持圖表清晰
• 根據您的交易時間框架和風格調整
線條延伸長度(預設:48)
• 最小值:1根K棒
• 支撐阻力線向前延伸的K棒數
• 幫助視覺化潛在的未來價格互動
• 較長延伸適合波段交易,較短適合當沖交易
========================================
使用方法
========================================
波段交易者
1. 使用預設設定(10/10)或增加至15/15以獲得更重要的水平
2. 將「顯示最近N根K棒」設為300-500以捕捉長期水平
3. 觀察價格接近這些水平時的反應
4. 結合成交量分析進行確認
當沖交易者
1. 考慮將左右側K棒減少至7-8以獲得更頻繁的訊號
2. 將「顯示最近N根K棒」設為100-150以專注於近期行情
3. 將「線條延伸長度」減少至20-30根K棒
4. 觀察日內在這些水平的反彈或突破
交易策略
反彈交易(均值回歸)
• 當價格接近綠色支撐線時做多
• 當價格接近紅色阻力線時做空
• 在支撐阻力水平之外設置止損
• 在區間或盤整市場中效果最佳
突破交易(趨勢跟隨)
• 等待價格突破阻力(看漲)或支撐(看跌)
• 以增加的成交量確認
• 先前的阻力成為新的支撐(反之亦然)
• 在趨勢市場中效果最佳
多時間框架分析
• 檢查更高時間框架的主要支撐阻力區域
• 使用較低時間框架進行精確的進出場時機
• 多個時間框架水平的匯合創造強大區域
========================================
重要注意事項
========================================
線條確認延遲
• 線條出現時會有等於「右側K棒數」參數的延遲
• 此延遲確保樞軸點被確認
• 實時水平檢測需要價格行為確認
圖表清晰度
• 最多可顯示500條線(TradingView限制)
• 如果圖表變得太雜亂,請調整「顯示最近N根K棒」
• 超出回看期的舊線會自動刪除
假訊號
• 並非所有支撐阻力水平都會守住
• 使用額外確認(成交量、K棒型態、其他指標)
• 市場可能突破水平,特別是在重大新聞期間
最佳實踐
1. 結合其他分析:與趨勢指標、成交量和價格行為型態一起使用
2. 背景很重要:考慮整體市場趨勢和結構
3. 風險管理:始終使用止損;不要僅依賴支撐阻力水平
4. 市場條件:在流動性高、活躍交易的市場中更有效
5. 回測:在實盤交易前,在您的特定商品和時間框架上測試設定
故障排除
線條太多?
• 增加「左側K棒數」和「右側K棒數」數值
• 減少「顯示最近N根K棒」數值
線條太少?
• 減少「左側K棒數」和「右側K棒數」數值
• 增加「顯示最近N根K棒」數值
線條未出現?
• 確保圖表上載入了足夠的價格數據
• 檢查自上次波動點以來是否已過「右側K棒數」
• 驗證指標是否正確載入(如需要請刷新)
技術細節
• 使用 ta.pivothigh() 和 ta.pivotlow() 函數進行水平檢測
• 實施基於陣列的線條管理以實現高效渲染
• 自動清理過時線條以保持性能
• 疊加指標 - 直接顯示在價格圖表上
免責聲明:本指標僅供教育和資訊目的。不構成財務建議。在做出交易決策前,請務必進行自己的研究和風險評估。
Watermark | Bar Time | Average Daily RangeMulti Info Panel & Watermark
Multi Info Panel & Watermark is a utility indicator that displays several pieces of chart information in a single, customizable panel. It is designed to support intraday and swing analysis by making key data—such as symbol details, date, and average daily range—easy to see at a glance, as well as providing simple tools for notes and backtesting.
Features
Watermark / Custom Note
Optional text overlay that can be used as a watermark or personal note.
Can display a strategy name, reminder, or any other user-defined label on the chart.
Ticker Info
Shows information about the currently active symbol on the chart (for example, symbol name and other basic details depending on the inputs).
Helps keep track of which market or pair is being analyzed, especially when using multiple charts.
Current Date
Displays the current date directly on the chart.
Useful for screenshots, journaling, and documenting analysis.
Average Daily Range (ADR)
Calculates the average daily range of the active symbol over a user-defined number of recent days.
Helps visualize how much price typically moves in a day, which can support position sizing, target setting, or volatility awareness within your own trading approach.
Open Bar Time Marker
Marks the open time of a selected bar (for example, a session open or a specific reference bar).
Primarily intended as a visual aid for manual backtesting and reviewing historical price action.
Usage
Use the watermark and ticker info to keep your charts labeled and organized.
Refer to the ADR readout to understand typical daily volatility of the instrument you are studying.
Use the date and open bar time marker when creating screenshots, trade journals, or when replaying historical sessions for review.
This script does not generate trading signals and does not guarantee any performance or results. It is provided solely as an informational and visualization tool. Always combine it with your own analysis, risk management, and decision-making. Nothing in this indicator or description should be considered financial advice.
Super-AO with Risk Management Alerts Template - 11-29-25Super-AO with Risk Management: ALERTS & AUTOMATION Edition
Signal Lynx | Free Scripts supporting Automation for the Night-Shift Nation 🌙
1. Overview
This is the Indicator / Alerts companion to the Super-AO Strategy.
While the Strategy version is built for backtesting (verifying profitability and checking historical performance), this Indicator version is built for Live Execution.
We understand the frustration of finding a great strategy, only to realize you can't easily hook it up to your trading bot. This script solves that. It contains the exact same "Super-AO" logic and "Risk Management Engine" as the strategy version, but it is optimized to send signals to automation platforms like Signal Lynx, 3Commas, or any Webhook listener.
2. Quick Action Guide (TL;DR)
Purpose: Live Signal Generation & Automation.
Workflow:
Use the Strategy Version to find profitable settings.
Copy those settings into this Indicator Version.
Set a TradingView Alert using the "Any Alert() function call" condition.
Best Timeframe: 4 Hours (H4) and above.
Compatibility: Works with any webhook-based automation service.
3. Why Two Scripts?
Pine Script operates in two distinct modes:
Strategy Mode: Calculates equity, drawdowns, and simulates orders. Great for research, but sometimes complex to automate.
Indicator Mode: Plots visual data on the chart. This is the preferred method for setting up robust alerts because it is lighter weight and plots specific values that automation services can read easily.
The Golden Rule: Always backtest on the Strategy, but trade on the Indicator. This ensures that what you see in your history matches what you execute in real-time.
4. How to Automate This Script
This script uses a "Visual Spike" method to trigger alerts. Instead of drawing equity curves, it plots numerical values at the bottom of your chart when a trade event occurs.
The Signal Map:
Blue Spike (2 / -2): Entry Signal (Long / Short).
Yellow Spike (1 / -1): Risk Management Close (Stop Loss / Trend Reversal).
Green Spikes (1, 2, 3): Take Profit Levels 1, 2, and 3.
Setup Instructions:
Add this indicator to your chart.
Open your TradingView "Alerts" tab.
Create a new Alert.
Condition: Select SAO - RM Alerts Template.
Trigger: Select Any Alert() function call.
Message: Paste your JSON webhook message (provided by your bot service).
5. The Logic Under the Hood
Just like the Strategy version, this indicator utilizes:
SuperTrend + Awesome Oscillator: High-probability swing trading logic.
Non-Repainting Engine: Calculates signals based on confirmed candle closes to ensure the alert you get matches the chart reality.
Advanced Adaptive Trailing Stop (AATS): Internally calculates volatility to determine when to send a "Close" signal.
6. About Signal Lynx
Automation for the Night-Shift Nation 🌙
We are providing this code open source to help traders bridge the gap between manual backtesting and live automation. This code has been in action since 2022.
If you are looking to automate your strategies, please take a look at Signal Lynx in your search.
License: Mozilla Public License 2.0 (Open Source). If you make beneficial modifications, please release them back to the community!
MTC – Multi-Timeframe Trend Confirmator V2MTC – Multi-Timeframe Trend Confirmator V2
A comprehensive trend analysis indicator that systematically combines six technical indicators across three customizable timeframes, using a weighted scoring system to identify high-probability trend conditions.
ORIGINALITY AND CONCEPT
This indicator is original in its approach to multi-timeframe trend confirmation. Rather than relying on a single indicator or timeframe, it creates a composite score by evaluating six different technical conditions simultaneously across three timeframes. The scoring system weighs certain indicators more heavily based on their reliability in trend identification. The visual gauge provides an at-a-glance view of trend alignment across timeframes, making it easier to identify when multiple timeframes agree - a condition that typically produces stronger, more reliable trends.
HOW IT WORKS - DETAILED SCORING METHODOLOGY
The indicator evaluates six technical conditions on each timeframe. Each condition contributes to a composite score:
EMA 200 (Weight: 1 point)
Bullish: Price closes above EMA 200 (+1)
Bearish: Price closes below EMA 200 (-1)
Rationale: Long-term trend direction
SMA 50/200 Crossover (Weight: 1 point)
Bullish: SMA 50 above SMA 200 (+1)
Bearish: SMA 50 below SMA 200 (-1)
Rationale: Golden/Death cross confirmation
RSI 14 (Weight: 1 point)
Bullish: RSI above 55 (+1)
Bearish: RSI below 45 (-1)
Neutral: RSI between 45-55 (0)
Rationale: Momentum filter with buffer zone to avoid chop
MACD (12,26,9) (Weight: 1 point)
Bullish: MACD line above signal line (+1)
Bearish: MACD line below signal line (-1)
Rationale: Trend momentum confirmation
ADX 14 (Weight: 2 points - DOUBLE WEIGHTED)
Requires ADX above 25 to activate
Bullish: DI+ above DI- and ADX > 25 (+2)
Bearish: DI- above DI+ and ADX > 25 (-2)
Neutral: ADX below 25 (0)
Rationale: Trend strength filter - only counts when a strong trend exists. Double weighted because ADX is specifically designed to measure trend strength, making it more reliable than oscillators.
Supertrend (Factor: 3.0, ATR Period: 10) (Weight: 2 points - DOUBLE WEIGHTED)
Bullish: Direction indicator = -1 (+2)
Bearish: Direction indicator = +1 (-2)
Rationale: Dynamic support/resistance that adapts to volatility. Double weighted because Supertrend provides clear, objective trend signals with built-in stop-loss levels.
COMPOSITE SCORE CALCULATION:
Total possible score range: -10 to +10 points
Score interpretation:
Score > 2: UPTREND (majority of indicators bullish, especially weighted ones)
Score < -2: DOWNTREND (majority of indicators bearish, especially weighted ones)
Score between -2 and +2: NEUTRAL/RANGING (mixed signals or weak trend)
The threshold of +/- 2 was chosen because it requires more than just basic agreement - it typically means at least 3-4 indicators align, or that the heavily-weighted indicators (ADX, Supertrend) confirm the direction.
MULTI-TIMEFRAME LOGIC:
The indicator calculates the composite score independently for three timeframes:
Higher Timeframe (default: 4H) - Major trend direction
Mid Timeframe (default: 1H) - Intermediate trend
Lower Timeframe (default: 15min) - Entry timing
Main Trend Confirmation Rule:
The indicator only signals a confirmed trend when BOTH the higher timeframe AND mid timeframe scores agree (both > 2 for uptrend, or both < -2 for downtrend). This dual-timeframe confirmation significantly reduces false signals during choppy or ranging markets.
HOW TO USE IT
Setup:
Add indicator to chart
Customize timeframes based on your trading style:
Scalpers: 15min, 5min, 1min
Day traders: 4H, 1H, 15min (default)
Swing traders: Daily, 4H, 1H
Toggle individual indicators on/off based on your preference
Adjust Supertrend parameters if needed for your instrument's volatility
Reading the Gauge (Top Right Corner):
Each row shows one timeframe
Left column: Timeframe label
Middle column: Visual strength bars (10 bars = maximum score)
Green bars = Bullish score
Red bars = Bearish score
Yellow bars = Neutral/ranging
More filled bars = stronger trend
Right column: Numerical score
Trading Signals:
Entry Signals:
Long Entry: Wait for upward triangle arrow (appears when higher + mid TF both bullish)
Confirm gauge shows green bars on higher and mid timeframes
Lower timeframe should ideally turn green for entry timing
Chart background tints light green
Short Entry: Wait for downward triangle arrow (appears when higher + mid TF both bearish)
Confirm gauge shows red bars on higher and mid timeframes
Lower timeframe should ideally turn red for entry timing
Chart background tints light red
Position Management:
Stay in position while higher and mid timeframes remain aligned
Consider reducing position size when mid timeframe score weakens
Exit when higher timeframe trend reverses (daily label changes)
Avoiding False Signals:
Ignore signals when gauge shows mixed colors across timeframes
Avoid trading when scores are close to threshold (+/- 2 to +/- 4 range)
Best trades occur when all three timeframes align (all green or all red in gauge)
Use the numerical scores: higher absolute values (7-10) indicate stronger, more reliable trends
Practical Examples:
Example 1 - Strong Uptrend Entry:
Higher TF: +8 (strong green bars)
Mid TF: +6 (strong green bars)
Lower TF: +4 (moderate green bars)
Action: Look for long entries on lower timeframe pullbacks
Background is tinted green, upward arrow appears
Example 2 - Ranging Market (Avoid):
Higher TF: +3 (weak green)
Mid TF: -1 (weak red)
Lower TF: +2 (neutral yellow)
Action: Stay out, wait for alignment
Example 3 - Trend Reversal Warning:
Higher TF: +7 (still green)
Mid TF: -3 (turned red)
Lower TF: -5 (strong red)
Action: Consider exiting longs, prepare for potential higher TF reversal
Customization Options:
Timeframes: Adjust all three to match your trading horizon
Indicator Toggles: Disable indicators that don't suit your instrument:
Disable RSI for highly volatile crypto markets
Disable SMA crossover for range-bound instruments
Keep ADX and Supertrend enabled for trending markets
Visual Preferences:
Arrow size: 5 options from Tiny to Huge
Gauge size: Small/Medium/Large for different screen sizes
Toggle arrows on/off if you only want the gauge
Alert Setup:
Right-click chart, "Add Alert"
Condition: MTC v6 - UPTREND or DOWNTREND
Get notified when multi-timeframe confirmation occurs
Best Practices:
Use with Price Action: The indicator works best when combined with support/resistance levels, chart patterns, and volume analysis
Risk Management: Even with multi-timeframe confirmation, always use stop losses
Market Context: Works best in trending markets; less reliable in strong consolidation
Backtesting: Test the default settings on your specific instrument and timeframe before live trading
Patience: Wait for full multi-timeframe alignment rather than taking premature signals
Technical Notes:
All calculations use Pine Script's security function to fetch data from multiple timeframes
Prevents repainting by using confirmed bar data
Gauge updates in real-time on the last bar
Daily labels mark at the open of each new daily candle
Works on all instruments and timeframes
This indicator is ideal for traders who want objective, systematic trend identification without the complexity of analyzing multiple indicators manually across different timeframes.
-NATANTIA
First Light Beacon - ETHFirst Light Beacon -ETH — (Patent Pending)
The FLB indicator is a patent-pending institutional-grade zone engine designed to simplify complex market structure into clear, actionable visuals. This version is for electronic trading hours.
It automatically generates dynamic zones, trend bias, liquidity pulses, and contextual signals without exposing the proprietary First Light Beacon framework that powers the logic beneath the surface.
This tool is built for traders who want a structured, rules-based environment without clutter, and who value fast, reliable visual cues for decision-making.
What the Indicator Does
Dynamic FLB Zones
Generates time-based or session-based zones that adapt to market structure.
Visualizes the active range with Buy Line, Sell Line, and Mid Line options.
Optional dynamic zone fill paints the entire active zone using smooth gradients for instant clarity.
Prior zones are carried forward as End Caps, highlighting historically reactive areas.
Trend & Context Layers
The Beacon Line provides a smoothed, directional trend signal that flips green/red with real-time alerts.
Multiple candle coloring modes help interpret momentum, contraction, expansion, and trend shifts at a glance.
Volume Dots (Bookmap-Style Liquidity Signals)
Plots volume-weighted “liquidity dots” directly on the candles.
Dot size and color intensity scale with how unusual the volume is compared to recent data.
Helps identify absorption, exhaustion, liquidity grabs, and key turning points.
Optional Tools
Doji-based Higher Time Frame Zones
Squeeze Zone Bands
Contraction/Expansion Pattern Detection
Optional Buy/Sell FLB Signals (purely visual—NOT a TradingView strategy)
SETTINGS BREAKDOWN (User Guide)
Below is a simple, non-proprietary explanation of each settings group in the menu.
1. First Light Beacon Zones
The core of the indicator.
You choose how and when the zones regenerate, and what visual components you want displayed.
Sensitivity
Adjusts how tight or expansive the zone boundaries appear.
Lower = tighter, Higher = wider.
Trade Mode
Session: Uses predefined sessions (New York, London, Asia, etc.)
Time Based: Regenerates zones on any timeframe (15s, 1m, 5m, 1D, 1W, etc.)
Named Session Zones
Select which session you want to track when Trade Mode = Session.
Time-Based Zone Interval
Sets the interval that triggers zone resets when Trade Mode = Time Based.
Alert for New Zone
Sends an alert when a new time-based zone forms.
Interval Labels
Shows a label whenever a new zone begins.
Previous Zone Labels
Shows where prior zones started (useful for backtesting).
Buy Line / Sell Line / Mid Line
Toggles each line individually.
Dynamic Zone Fill
Shades the entire zone using gradient bands.
End Caps
Projects old zone boundaries forward to show where price may react in the future.
Rejection Mode
Stateful: Multi-bar logic for deeper confirmation
Close-Outside: One-bar wick/close behavior
2. Status Table
Displays the current zone or session in the chart corner of your choice.
Choose the corner (Top Right, Top Left, etc.)
Choose text size (Small/Normal)
3. Candle Color
Multiple candle-color presets compatible with the FLB ecosystem.
Option 1: Momentum ranges
Option 2: Trend-based smoothing
Option 3: Volatility/contraction logic
Users may customize colors for each mode.
4. Utility Tools
Optional supporting visuals.
Vertical Line at 30% of Zone
Marks early zone timing.
Doji Zones
Creates HTF support/resistance bands based on Doji structures.
Doji Time Frame
Select which timeframe the Doji zones come from.
Squeeze Zone
Short-term compression bands (EMA-based).
5. Beacon Line
Trend guide that flips color on directional bias change.
Alerts fire automatically when the Beacon flips.
6. Super Smoother
A clean smoothing line to help frame bias.
7. Contraction & Expansion
Identifies micro- and macro-patterns of tightening vs. expanding volatility.
Show minor/major patterns
Show breakout regions
Display liquidity lines
8. Volume Dots (Liquidity)
Bookmap-style volume intensity visualization.
Lookback and StDev settings
Dot colors and sizes
Option to show only extreme volume events
Optional text labels for extremes
9. FLB Signals
On/off Buy & Sell tags based on adaptive trailing logic combined with volume behavior.
Visual aid only—not for automation or backtesting.
Algorithm Predator - ProAlgorithm Predator - Pro: Advanced Multi-Agent Reinforcement Learning Trading System
Algorithm Predator - Pro combines four specialized market microstructure agents with a state-of-the-art reinforcement learning framework . Unlike traditional indicator mashups, this system implements genuine machine learning to automatically discover which detection strategies work best in current market conditions and adapts continuously without manual intervention.
Core Innovation: Rather than forcing traders to interpret conflicting signals, this system uses 15 different multi-armed bandit algorithms and a full reinforcement learning stack (Q-Learning, TD(λ) with eligibility traces, and Policy Gradient with REINFORCE) to learn optimal agent selection policies. The result is a self-improving system that gets smarter with every trade.
Target Users: Swing traders, day traders, and algorithmic traders seeking systematic signal generation with mathematical rigor. Suitable for stocks, forex, crypto, and futures on liquid instruments (>100k daily volume).
Why These Components Are Combined
The Fundamental Problem
No single indicator works consistently across all market regimes. What works in trending markets fails in ranging conditions. Traditional solutions force traders to manually switch indicators (slow, error-prone) or interpret all signals simultaneously (cognitive overload).
This system solves the problem through automated meta-learning: Deploy multiple specialized agents designed for specific market microstructure conditions, then use reinforcement learning to discover which agent (or combination) performs best in real-time.
Why These Specific Four Agents?
The four agents provide orthogonal failure mode coverage —each agent's weakness is another's strength:
Spoofing Detector - Optimal in consolidation/manipulation; fails in trending markets (hedged by Exhaustion Detector)
Exhaustion Detector - Optimal at trend climax; fails in range-bound markets (hedged by Liquidity Void)
Liquidity Void - Optimal pre-breakout compression; fails in established trends (hedged by Mean Reversion)
Mean Reversion - Optimal in low volatility; fails in strong trends (hedged by Spoofing Detector)
This creates complete market state coverage where at least one agent should perform well in any condition. The bandit system identifies which one without human intervention.
Why Reinforcement Learning vs. Simple Voting?
Traditional consensus systems have fatal flaws: equal weighting assumes all agents are equally reliable (false), static thresholds don't adapt, and no learning means past mistakes repeat indefinitely.
Reinforcement learning solves this through the exploration-exploitation tradeoff: Continuously test underused agents (exploration) while primarily relying on proven winners (exploitation). Over time, the system builds a probability distribution over agent quality reflecting actual market performance.
Mathematical Foundation: Multi-armed bandit problem from probability theory, where each agent is an "arm" with unknown reward distribution. The goal is to maximize cumulative reward while efficiently learning each arm's true quality.
The Four Trading Agents: Technical Explanation
Agent 1: 🎭 Spoofing Detector (Institutional Manipulation Detection)
Theoretical Basis: Market microstructure theory on order flow toxicity and information asymmetry. Based on research by Easley, López de Prado, and O'Hara on high-frequency trading manipulation.
What It Detects:
1. Iceberg Orders (Hidden Liquidity Absorption)
Method: Monitors volume spikes (>2.5× 20-period average) with minimal price movement (<0.3× ATR)
Formula: score += (close > open ? -2.5 : 2.5) when volume > vol_avg × 2.5 AND abs(close - open) / ATR < 0.3
Interpretation: Large volume without price movement indicates institutional absorption (buying) or distribution (selling) using hidden orders
Signal Logic: Contrarian—fade false breakouts caused by institutional manipulation
2. Spoofing Patterns (Fake Liquidity via Layering)
Method: Analyzes candlestick wick-to-body ratios during volume spikes
Formula: if upper_wick > body × 2 AND volume_spike: score += 2.0
Mechanism: Spoofing creates large wicks (orders pulled before execution) with volume evidence
Signal Logic: Wick direction indicates trapped participants; trade against the failed move
3. Post-Manipulation Reversals
Method: Tracks volume decay after manipulation events
Formula: if volume > vol_avg × 3 AND volume / volume < 0.3: score += (close > open ? -1.5 : 1.5)
Interpretation: Sharp volume drop after manipulation indicates exhaustion of manipulative orders
Why It Works: Institutional manipulation creates detectable microstructure anomalies. While retail traders see "mysterious reversals," this agent quantifies the order flow patterns causing them.
Parameter: i_spoof (sensitivity 0.5-2.0) - Controls detection threshold
Best Markets: Consolidations before breakouts, London/NY overlap windows, stocks with institutional ownership >70%
Agent 2: ⚡ Exhaustion Detector (Momentum Failure Analysis)
Theoretical Basis: Technical analysis divergence theory combined with VPIN reversals from market microstructure literature.
What It Detects:
1. Price-RSI Divergence (Momentum Deceleration)
Method: Compares 5-bar price ROC against RSI change
Formula: if price_roc > 5% AND rsi_current < rsi : score += 1.8
Mathematics: Second derivative detecting inflection points
Signal Logic: When price makes higher highs but momentum makes lower highs, expect mean reversion
2. Volume Exhaustion (Buying/Selling Climax)
Method: Identifies strong price moves (>5% ROC) with declining volume (<-20% volume ROC)
Formula: if price_roc > 5 AND vol_roc < -20: score += 2.5
Interpretation: Price extension without volume support indicates retail chasing while institutions exit
3. Momentum Deceleration (Acceleration Analysis)
Method: Compares recent 3-bar momentum to prior 3-bar momentum
Formula: deceleration = abs(mom1) < abs(mom2) × 0.5 where momentum significant (> ATR)
Signal Logic: When rate of price change decelerates significantly, anticipate directional shift
Why It Works: Momentum is lagging, but momentum divergence is leading. By comparing momentum's rate of change to price, this agent detects "weakening conviction" before reversals become obvious.
Parameter: i_momentum (sensitivity 0.5-2.0)
Best Markets: Strong trends reaching climax, parabolic moves, instruments with high retail participation
Agent 3: 💧 Liquidity Void Detector (Breakout Anticipation)
Theoretical Basis: Market liquidity theory and order book dynamics. Based on research into "liquidity holes" and volatility compression preceding expansion.
What It Detects:
1. Bollinger Band Squeeze (Volatility Compression)
Method: Monitors Bollinger Band width relative to 50-period average
Formula: bb_width = (upper_band - lower_band) / middle_band; triggers when < 0.6× average
Mathematical Foundation: Regression to the mean—low volatility precedes high volatility
Signal Logic: When volatility compresses AND cumulative delta shows directional bias, anticipate breakout
2. Volume Profile Gaps (Thin Liquidity Zones)
Method: Identifies sharp volume transitions indicating few limit orders
Formula: if volume < vol_avg × 0.5 AND volume < vol_avg × 0.5 AND volume > vol_avg × 1.5
Interpretation: Sudden volume drop after spike indicates price moved through order book to low-opposition area
Signal Logic: Price accelerates through low-liquidity zones
3. Stop Hunts (Liquidity Grabs Before Reversals)
Method: Detects new 20-bar highs/lows with immediate reversal and rejection wick
Formula: if new_high AND close < high - (high - low) × 0.6: score += 3.0
Mechanism: Market makers push price to trigger stop-loss clusters, then reverse
Signal Logic: Enter reversal after stop-hunt completes
Why It Works: Order book theory shows price moves fastest through zones with minimal liquidity. By identifying these zones before major moves, this agent provides early entry for high-reward breakouts.
Parameter: i_liquidity (sensitivity 0.5-2.0)
Best Markets: Range-bound pre-breakout setups, volatility compression zones, instruments prone to gap moves
Agent 4: 📊 Mean Reversion (Statistical Arbitrage Engine)
Theoretical Basis: Statistical arbitrage theory, Ornstein-Uhlenbeck mean-reverting processes, and pairs trading methodology applied to single instruments.
What It Detects:
1. Z-Score Extremes (Standard Deviation Analysis)
Method: Calculates price distance from 20-period and 50-period SMAs in standard deviation units
Formula: zscore_20 = (close - SMA20) / StdDev(50)
Statistical Interpretation: Z-score >2.0 means price is 2 standard deviations above mean (97.5th percentile)
Trigger Logic: if abs(zscore_20) > 2.0: score += zscore_20 > 0 ? -1.5 : 1.5 (fade extremes)
2. Ornstein-Uhlenbeck Process (Mean-Reverting Stochastic Model)
Method: Models price as mean-reverting stochastic process: dx = θ(μ - x)dt + σdW
Implementation: Calculates spread = close - SMA20, then z-score of spread vs. spread distribution
Formula: ou_signal = (spread - spread_mean) / spread_std
Interpretation: Measures "tension" pulling price back to equilibrium
3. Correlation Breakdown (Regime Change Detection)
Method: Compares 50-period price-volume correlation to 10-period correlation
Formula: corr_breakdown = abs(typical_corr - recent_corr) > 0.5
Enhancement: if corr_breakdown AND abs(zscore_20) > 1.0: score += zscore_20 > 0 ? -1.2 : 1.2
Why It Works: Mean reversion is the oldest quantitative strategy (1970s pairs trading at Morgan Stanley). While simple, it remains effective because markets exhibit periodic equilibrium-seeking behavior. This agent applies rigorous statistical testing to identify when mean reversion probability is highest.
Parameter: i_statarb (sensitivity 0.5-2.0)
Best Markets: Range-bound instruments, low-volatility periods (VIX <15), algo-dominated markets (forex majors, index futures)
Multi-Armed Bandit System: 15 Algorithms Explained
What Is a Multi-Armed Bandit Problem?
Origin: Named after slot machines ("one-armed bandits"). Imagine facing multiple slot machines, each with unknown payout rates. How do you maximize winnings?
Formal Definition: K arms (agents), each with unknown reward distribution with mean μᵢ. Goal: Maximize cumulative reward over T trials. Challenge: Balance exploration (trying uncertain arms to learn quality) vs. exploitation (using known-best arm for immediate reward).
Trading Application: Each agent is an "arm." After each trade, receive reward (P&L). Must decide which agent to trust for next signal.
Algorithm Categories
Bayesian Approaches (probabilistic, optimal for stationary environments):
Thompson Sampling
Bootstrapped Thompson Sampling
Discounted Thompson Sampling
Frequentist Approaches (confidence intervals, deterministic):
UCB1
UCB1-Tuned
KL-UCB
SW-UCB (Sliding Window)
D-UCB (Discounted)
Adversarial Approaches (robust to non-stationary environments):
EXP3-IX
Hedge
FPL-Gumbel
Reinforcement Learning Approaches (leverage learned state-action values):
Q-Values (from Q-Learning)
Policy Network (from Policy Gradient)
Simple Baseline:
Epsilon-Greedy
Softmax
Key Algorithm Details
Thompson Sampling (DEFAULT - RECOMMENDED)
Theoretical Foundation: Bayesian decision theory with conjugate priors. Published by Thompson (1933), rediscovered for bandits by Chapelle & Li (2011).
How It Works:
Model each agent's reward distribution as Beta(α, β) where α = wins, β = losses
Each step, sample from each agent's beta distribution: θᵢ ~ Beta(αᵢ, βᵢ)
Select agent with highest sample: argmaxᵢ θᵢ
Update winner's distribution after observing outcome
Mathematical Properties:
Optimality: Achieves logarithmic regret O(K log T) (proven optimal)
Bayesian: Maintains probability distribution over true arm means
Automatic Balance: High uncertainty → more exploration; high certainty → exploitation
⚠️ CRITICAL APPROXIMATION: This is a pseudo-random approximation of true Thompson Sampling. True implementation requires random number generation from beta distributions, which Pine Script doesn't provide. This version uses Box-Muller transform with market data (price/volume decimal digits) as entropy source. While not mathematically pure, it maintains core exploration-exploitation balance and learns agent preferences effectively.
When To Use: Best all-around choice. Handles non-stationary markets reasonably well, balances exploration naturally, highly sample-efficient.
UCB1 (Upper Confidence Bound)
Formula: UCB_i = reward_mean_i + sqrt(2 × ln(total_pulls) / pulls_i)
Interpretation: First term (exploitation) + second term (exploration bonus for less-tested arms)
Mathematical Properties:
Deterministic : Always selects same arm given same state
Regret Bound: O(K log T) — same optimality as Thompson Sampling
Interpretable: Can visualize confidence intervals
When To Use: Prefer deterministic behavior, want to visualize uncertainty, stable markets
EXP3-IX (Exponential Weights - Adversarial)
Theoretical Foundation: Adversarial bandit algorithm. Assumes environment may be actively hostile (worst-case analysis).
How It Works:
Maintain exponential weights: w_i = exp(η × cumulative_reward_i)
Select agent with probability proportional to weights: p_i = (1-γ)w_i/Σw_j + γ/K
After outcome, update with importance weighting: estimated_reward = observed_reward / p_i
Mathematical Properties:
Adversarial Regret: O(sqrt(TK log K)) even if environment is adversarial
No Assumptions: Doesn't assume stationary or stochastic reward distributions
Robust: Works even when optimal arm changes continuously
When To Use: Extreme non-stationarity, don't trust reward distribution assumptions, want robustness over efficiency
KL-UCB (Kullback-Leibler Upper Confidence Bound)
Theoretical Foundation: Uses KL-divergence instead of Hoeffding bounds. Tighter confidence intervals.
Formula (conceptual): Find largest q such that: n × KL(p||q) ≤ ln(t) + 3×ln(ln(t))
Mathematical Properties:
Tighter Bounds: KL-divergence adapts to reward distribution shape
Asymptotically Optimal: Better constant factors than UCB1
Computationally Intensive: Requires iterative binary search (15 iterations)
When To Use: Maximum sample efficiency needed, willing to pay computational cost, long-term trading (>500 bars)
Q-Values & Policy Network (RL-Based Selection)
Unique Feature: Instead of treating agents as black boxes with scalar rewards, these algorithms leverage the full RL state representation .
Q-Values Selection:
Uses learned Q-values: Q(state, agent_i) from Q-Learning
Selects agent via softmax over Q-values for current market state
Advantage: Selects based on state-conditional quality (which agent works best in THIS market state)
Policy Network Selection:
Uses neural network policy: π(agent | state, θ) from Policy Gradient
Direct policy over agents given market features
Advantage: Can learn non-linear relationships between market features and agent quality
When To Use: After 200+ RL updates (Q-Values) or 500+ updates (Policy Network) when models converged
Machine Learning & Reinforcement Learning Stack
Why Both Bandits AND Reinforcement Learning?
Critical Distinction:
Bandits treat agents as contextless black boxes: "Agent 2 has 60% win rate"
Reinforcement Learning adds state context: "Agent 2 has 60% win rate WHEN trend_score > 2 and RSI < 40"
Power of Combination: Bandits provide fast initial learning with minimal assumptions. RL provides state-dependent policies for superior long-term performance.
Component 1: Q-Learning (Value-Based RL)
Algorithm: Temporal Difference Learning with Bellman equation.
State Space: 54 discrete states formed from:
trend_state = {0: bearish, 1: neutral, 2: bullish} (3 values)
volatility_state = {0: low, 1: normal, 2: high} (3 values)
RSI_state = {0: oversold, 1: neutral, 2: overbought} (3 values)
volume_state = {0: low, 1: high} (2 values)
Total states: 3 × 3 × 3 × 2 = 54 states
Action Space: 5 actions (No trade, Agent 1, Agent 2, Agent 3, Agent 4)
Total state-action pairs: 54 × 5 = 270 Q-values
Bellman Equation:
Q(s,a) ← Q(s,a) + α ×
Parameters:
α (learning rate): 0.01-0.50, default 0.10 - Controls step size for updates
γ (discount factor): 0.80-0.99, default 0.95 - Values future rewards
ε (exploration): 0.01-0.30, default 0.10 - Probability of random action
Update Mechanism:
Position opens with state s, action a (selected agent)
Every bar position is open: Calculate floating P&L → scale to reward
Perform online TD update
When position closes: Perform terminal update with final reward
Gradient Clipping: TD errors clipped to ; Q-values clipped to for stability.
Why It Works: Q-Learning learns "quality" of each agent in each market state through trial and error. Over time, builds complete state-action value function enabling optimal state-dependent agent selection.
Component 2: TD(λ) Learning (Temporal Difference with Eligibility Traces)
Enhancement Over Basic Q-Learning: Credit assignment across multiple time steps.
The Problem TD(λ) Solves:
Position opens at t=0
Market moves favorably at t=3
Position closes at t=8
Question: Which earlier decisions contributed to success?
Basic Q-Learning: Only updates Q(s₈, a₈) ← reward
TD(λ): Updates ALL visited state-action pairs with decayed credit
Eligibility Trace Formula:
e(s,a) ← γ × λ × e(s,a) for all s,a (decay all traces)
e(s_current, a_current) ← 1 (reset current trace)
Q(s,a) ← Q(s,a) + α × TD_error × e(s,a) (update all with trace weight)
Lambda Parameter (λ): 0.5-0.99, default 0.90
λ=0: Pure 1-step TD (only immediate next state)
λ=1: Full Monte Carlo (entire episode)
λ=0.9: Balance (recommended)
Why Superior: Dramatically faster learning for multi-step tasks. Q-Learning requires many episodes to propagate rewards backwards; TD(λ) does it in one.
Component 3: Policy Gradient (REINFORCE with Baseline)
Paradigm Shift: Instead of learning value function Q(s,a), directly learn policy π(a|s).
Policy Network Architecture:
Input: 12 market features
Hidden: None (linear policy)
Output: 5 actions (softmax distribution)
Total parameters: 12 features × 5 actions + 5 biases = 65 parameters
Feature Set (12 Features):
Price Z-score (close - SMA20) / ATR
Volume ratio (volume / vol_avg - 1)
RSI deviation (RSI - 50) / 50
Bollinger width ratio
Trend score / 4 (normalized)
VWAP deviation
5-bar price ROC
5-bar volume ROC
Range/ATR ratio - 1
Price-volume correlation (20-period)
Volatility ratio (ATR / ATR_avg - 1)
EMA50 deviation
REINFORCE Update Rule:
θ ← θ + α × ∇log π(a|s) × advantage
where advantage = reward - baseline (variance reduction)
Why Baseline? Raw rewards have high variance. Subtracting baseline (running average) centers rewards around zero, reducing gradient variance by 50-70%.
Learning Rate: 0.001-0.100, default 0.010 (much lower than Q-Learning because policy gradients have high variance)
Why Policy Gradient?
Handles 12 continuous features directly (Q-Learning requires discretization)
Naturally maintains exploration through probability distribution
Can converge to stochastic optimal policy
Component 4: Ensemble Meta-Learner (Stacking)
Architecture: Level-1 meta-learner combines Level-0 base learners (Q-Learning, TD(λ), Policy Gradient).
Three Meta-Learning Algorithms:
1. Simple Average (Baseline)
Final_prediction = (Q_prediction + TD_prediction + Policy_prediction) / 3
2. Weighted Vote (Reward-Based)
weight_i ← 0.95 × weight_i + 0.05 × (reward_i + 1)
3. Adaptive Weighting (Gradient-Based) — RECOMMENDED
Loss Function: L = (y_true - ŷ_ensemble)²
Gradient: ∂L/∂weight_i = -2 × (y_true - ŷ_ensemble) × agent_contribution_i
Updates weights via gradient descent with clipping and normalization
Why It Works: Unlike simple averaging, meta-learner discovers which base learner is most reliable in current regime. If Policy Gradient excels in trending markets while Q-Learning excels in ranging, meta-learner learns these patterns and weights accordingly.
Feature Importance Tracking
Purpose: Identify which of 12 features contribute most to successful predictions.
Update Rule: importance_i ← 0.95 × importance_i + 0.05 × |feature_i × reward|
Use Cases:
Feature selection: Drop low-importance features
Market regime detection: Importance shifts reveal regime changes
Agent tuning: If VWAP deviation has high importance, consider boosting agents using VWAP
RL Position Tracking System
Critical Innovation: Proper reinforcement learning requires tracking which decisions led to outcomes.
State Tracking (When Signal Validates):
active_rl_state ← current_market_state (0-53)
active_rl_action ← selected_agent (1-4)
active_rl_entry ← entry_price
active_rl_direction ← 1 (long) or -1 (short)
active_rl_bar ← current_bar_index
Online Updates (Every Bar Position Open):
floating_pnl = (close - entry) / entry × direction
reward = floating_pnl × 10 (scale to meaningful range)
reward = clip(reward, -5.0, 5.0)
Update Q-Learning, TD(λ), and Policy Gradient
Terminal Update (Position Close):
Final Q-Learning update (no next Q-value, terminal state)
Update meta-learner with final result
Update agent memory
Clear position tracking
Exit Conditions:
Time-based: ≥3 bars held (minimum hold period)
Stop-loss: 1.5% adverse move
Take-profit: 2.0% favorable move
Market Microstructure Filters
Why Microstructure Matters
Traditional technical analysis assumes fair, efficient markets. Reality: Markets have friction, manipulation, and information asymmetry. Microstructure filters detect when market structure indicates adverse conditions.
Filter 1: VPIN (Volume-Synchronized Probability of Informed Trading)
Theoretical Foundation: Easley, López de Prado, & O'Hara (2012). "Flow Toxicity and Liquidity in a High-Frequency World."
What It Measures: Probability that current order flow is "toxic" (informed traders with private information).
Calculation:
Classify volume as buy or sell (close > close = buy volume)
Calculate imbalance over 20 bars: VPIN = |Σ buy_volume - Σ sell_volume| / Σ total_volume
Compare to moving average: toxic = VPIN > VPIN_MA(20) × sensitivity
Interpretation:
VPIN < 0.3: Normal flow (uninformed retail)
VPIN 0.3-0.4: Elevated (smart money active)
VPIN > 0.4: Toxic flow (informed institutions dominant)
Filter Logic:
Block LONG when: VPIN toxic AND price rising (don't buy into institutional distribution)
Block SHORT when: VPIN toxic AND price falling (don't sell into institutional accumulation)
Adaptive Threshold: If VPIN toxic frequently, relax threshold; if rarely toxic, tighten threshold. Bounded .
Filter 2: Toxicity (Kyle's Lambda Approximation)
Theoretical Foundation: Kyle (1985). "Continuous Auctions and Insider Trading."
What It Measures: Price impact per unit volume — market depth and informed trading.
Calculation:
price_impact = (close - close ) / sqrt(Σ volume over 10 bars)
impact_zscore = (price_impact - impact_mean) / impact_std
toxicity = abs(impact_zscore)
Interpretation:
Low toxicity (<1.0): Deep liquid market, large orders absorbed easily
High toxicity (>2.0): Thin market or informed trading
Filter Logic: Block ALL SIGNALS when toxicity > threshold. Most dangerous when price breaks from VWAP with high toxicity.
Filter 3: Regime Filter (Counter-Trend Protection)
Purpose: Prevent counter-trend trades during strong trends.
Trend Scoring:
trend_score = 0
trend_score += close > EMA8 ? +1 : -1
trend_score += EMA8 > EMA21 ? +1 : -1
trend_score += EMA21 > EMA50 ? +1 : -1
trend_score += close > EMA200 ? +1 : -1
Range:
Regime Classification:
Strong Bull: trend_score ≥ +3 → Block all SHORT signals
Strong Bear: trend_score ≤ -3 → Block all LONG signals
Neutral: -2 ≤ trend_score ≤ +2 → Allow both directions
Filter 4: Liquidity Boost (Signal Enhancer)
Unique: Unlike other filters (which block), this amplifies signals during low liquidity.
Logic: if volume < vol_avg × 0.7: agent_scores × 1.2
Why It Works: Low liquidity often precedes explosive moves (breakouts). By increasing agent sensitivity during compression, system catches pre-breakout signals earlier.
Technical Implementation & Approximations
⚠️ Critical Approximations Required by Pine Script
1. Thompson Sampling: Pseudo-Random Beta Distribution
Academic Standard: True random sampling from beta distributions using cryptographic RNG
This Implementation: Box-Muller transform for normal distribution using market data (price/volume decimal digits) as entropy source, then scale to beta distribution mean/variance
Impact: Not cryptographically random, may have subtle biases in specific price ranges, but maintains correct mean and approximate variance. Sufficient for bandit agent selection.
2. VPIN: Simplified Volume Classification
Academic Standard: Lee-Ready algorithm or exchange-provided aggressor flags with tick-by-tick data
This Implementation: Bar-based classification: if close > close : buy_volume += volume
Impact: 10-15% precision loss. Works well in directional markets, misclassifies in choppy conditions. Still captures order flow imbalance signal.
3. Policy Gradient: Simplified Per-Action Updates
Academic Standard: Full softmax gradient updating all actions (selected action UP, others DOWN proportionally)
This Implementation: Only updates selected action's weights
Impact: Valid approximation for small action spaces (5 actions). Slower convergence than full softmax but still learns optimal policy.
4. Kyle's Lambda: Simplified Price Impact
Academic Standard: Regression over multiple time scales with signed order flow
This Implementation: price_impact = Δprice_10 / sqrt(Σvolume_10); z_score calculation
Impact: 15-20% precision loss. No proper signed order flow. Still detects informed trading signals at extremes (>2σ).
5. Other Simplifications:
Hawkes Process: Fixed exponential decay (0.9) not MLE-optimized
Entropy: Ratio approximation not true Shannon entropy H(X) = -Σ p(x)·log₂(p(x))
Feature Engineering: 12 features vs. potential 100+ with polynomial interactions
RL Hybrid Updates: Both online and terminal (non-standard but empirically effective)
Overall Precision Loss Estimate: 10-15% compared to academic implementations with institutional data feeds.
Practical Trade-off: For retail trading with OHLCV data, these approximations provide 90%+ of the edge while maintaining full transparency, zero latency, no external dependencies, and runs on any TradingView plan.
How to Use: Practical Guide
Initial Setup (5 Minutes)
Select Trading Mode: Start with "Balanced" for most users
Enable ML/RL System: Toggle to TRUE, select "Full Stack" ML Mode
Bandit Configuration: Algorithm: "Thompson Sampling", Mode: "Switch" or "Blend"
Microstructure Filters: Enable all four filters, enable "Adaptive Microstructure Thresholds"
Visual Settings: Enable dashboard (Top Right), enable all chart visuals
Learning Phase (First 50-100 Signals)
What To Monitor:
Agent Performance Table: Watch win rates develop (target >55%)
Bandit Weights: Should diverge from uniform (0.25 each) after 20-30 signals
RL Core Metrics: "RL Updates" should increase when position open
Filter Status: "Blocked" count indicates filter activity
Optimization Tips:
Too few signals: Lower min_confidence to 0.25, increase agent sensitivities to 1.1-1.2
Too many signals: Raise min_confidence to 0.35-0.40, decrease agent sensitivities to 0.8-0.9
One agent dominates (>70%): Consider "Lock Agent" feature
Signal Interpretation
Dashboard Signal Status:
⚪ WAITING FOR SIGNAL: No agent signaling
⏳ ANALYZING...: Agent signaling but not confirmed
🟡 CONFIRMING 2/3: Building confirmation (2 of 3 bars)
🟢 LONG ACTIVE : Validated long entry
🔴 SHORT ACTIVE : Validated short entry
Kill Zone Boxes: Entry price (triangle marker), Take Profit (Entry + 2.5× ATR), Stop Loss (Entry - 1.5× ATR). Risk:Reward = 1:1.67
Risk Management
Position Sizing:
Risk per trade = 1-2% of capital
Position size = (Capital × Risk%) / (Entry - StopLoss)
Stop-Loss Placement:
Initial: Entry ± 1.5× ATR (shown in kill zone)
Trailing: After 1:1 R:R achieved, move stop to breakeven
Take-Profit Strategy:
TP1 (2.5× ATR): Take 50% off
TP2 (Runner): Trail stop at 1× ATR or use opposite signal as exit
Memory Persistence
Why Save Memory: Every chart reload resets the system. Saving learned parameters preserves weeks of learning.
When To Save: After 200+ signals when agent weights stabilize
What To Save: From Memory Export panel, copy all alpha/beta/weight values and adaptive thresholds
How To Restore: Enable "Restore From Saved State", input all values into corresponding fields
What Makes This Original
Innovation 1: Genuine Multi-Armed Bandit Framework
This implements 15 mathematically rigorous bandit algorithms from academic literature (Thompson Sampling from Chapelle & Li 2011, UCB family from Auer et al. 2002, EXP3 from Auer et al. 2002, KL-UCB from Garivier & Cappé 2011). Each algorithm maintains proper state, updates according to proven theory, and converges to optimal behavior. This is real learning, not superficial parameter changes.
Innovation 2: Full Reinforcement Learning Stack
Beyond bandits learning which agent works best globally, RL learns which agent works best in each market state. After 500+ positions, system builds 54-state × 5-action value function (270 learned parameters) capturing context-dependent agent quality.
Innovation 3: Market Microstructure Integration
Combines retail technical analysis with institutional-grade microstructure metrics: VPIN from Easley, López de Prado, O'Hara (2012), Kyle's Lambda from Kyle (1985), Hawkes Processes from Hawkes (1971). These detect informed trading, manipulation, and liquidity dynamics invisible to technical analysis.
Innovation 4: Adaptive Threshold System
Dynamic quantile-based thresholds: Maintains histogram of each agent's score distribution (24 bins, exponentially decayed), calculates 80th percentile threshold from histogram. Agent triggers only when score exceeds its own learned quantile. Proper non-parametric density estimation automatically adapts to instrument volatility, agent behavior shifts, and market regime changes.
Innovation 5: Episodic Memory with Transfer Learning
Dual-layer architecture: Short-term memory (last 20 trades, fast adaptation) + Long-term memory (condensed episodes, historical patterns). Transfer mechanism consolidates knowledge when STM reaches threshold. Mimics hippocampus → neocortex consolidation in human memory.
Limitations & Disclaimers
General Limitations
No Predictive Guarantee: Pattern recognition ≠ prediction. Past performance ≠ future results.
Learning Period Required: Minimum 50-100 bars for reliable statistics. Initial performance may be suboptimal.
Overfitting Risk: System learns patterns in historical data. May not generalize to unprecedented conditions.
Approximation Limitations: See technical implementation section (10-15% precision loss vs. academic standards)
Single-Instrument Limitation: No multi-asset correlation, sector context, or VIX integration.
Forward-Looking Bias Disclaimer
CRITICAL TRANSPARENCY: The RL system uses an 8-bar forward-looking window for reward calculation.
What This Means: System learns from rewards incorporating future price information (bars 101-108 relative to entry at bar 100).
Why Acceptable:
✅ Signals do NOT look ahead: Entry decisions use only data ≤ entry bar
✅ Learning only: Forward data used for optimization, not signal generation
✅ Real-time mirrors backtest: In live trading, system learns identically
⚠️ Implication: Dashboard "Agent Win%" reflects this 8-bar evaluation. Real-time performance may differ slightly if positions held longer, slippage/fees not captured, or market microstructure changes.
Risk Warnings
No Guarantee of Profit: All trading involves risk of loss
System Failures: Bugs possible despite extensive testing
Market Conditions: Optimized for liquid markets (>100k daily volume). Performance degrades in illiquid instruments, major news events, flash crashes
Broker-Specific Issues: Execution slippage, commission/fees, overnight financing costs
Appropriate Use
This Indicator Is:
✅ Entry trigger system
✅ Risk management framework (stop/target)
✅ Adaptive agent selection engine
✅ Learning system that improves over time
This Indicator Is NOT:
❌ Complete trading strategy (requires position sizing, portfolio management)
❌ Replacement for fundamental analysis
❌ Guaranteed profit generator
❌ Suitable for complete beginners without training
Recommended Complementary Analysis: Market context (support/resistance), volume profile, fundamental catalysts, correlation with related instruments, broader market regime
Recommended Settings by Instrument
Stocks (Large Cap, >$1B):
Mode: Balanced | ML/RL: Enabled, Full Stack | Bandit: Thompson Sampling, Switch
Agent Sensitivity: Spoofing 1.0-1.2, Exhaustion 0.9-1.1, Liquidity 0.8-1.0, StatArb 1.1-1.3
Microstructure: All enabled, VPIN 1.2, Toxicity 1.5 | Timeframe: 15min-1H
Forex Majors (EURUSD, GBPUSD):
Mode: Balanced to Conservative | ML/RL: Enabled, Full Stack | Bandit: Thompson Sampling, Blend
Agent Sensitivity: Spoofing 0.8-1.0, Exhaustion 0.9-1.1, Liquidity 0.7-0.9, StatArb 1.2-1.5
Microstructure: All enabled, VPIN 1.0-1.1, Toxicity 1.3-1.5 | Timeframe: 5min-30min
Crypto (BTC, ETH):
Mode: Aggressive to Balanced | ML/RL: Enabled, Full Stack | Bandit: Thompson Sampling OR EXP3-IX
Agent Sensitivity: Spoofing 1.2-1.5, Exhaustion 1.1-1.3, Liquidity 1.2-1.5, StatArb 0.7-0.9
Microstructure: All enabled, VPIN 1.4-1.6, Toxicity 1.8-2.2 | Timeframe: 15min-4H
Futures (ES, NQ, CL):
Mode: Balanced | ML/RL: Enabled, Full Stack | Bandit: UCB1 or Thompson Sampling
Agent Sensitivity: All 1.0-1.2 (balanced)
Microstructure: All enabled, VPIN 1.1-1.3, Toxicity 1.4-1.6 | Timeframe: 5min-30min
Conclusion
Algorithm Predator - Pro synthesizes academic research from market microstructure theory, reinforcement learning, and multi-armed bandit algorithms. Unlike typical indicator mashups, this system implements 15 mathematically rigorous bandit algorithms, deploys a complete RL stack (Q-Learning, TD(λ), Policy Gradient), integrates institutional microstructure metrics (VPIN, Kyle's Lambda), adapts continuously through dual-layer memory and meta-learning, and provides full transparency on approximations and limitations.
The system is designed for serious algorithmic traders who understand that no indicator is perfect, but through proper machine learning, we can build systems that improve over time and adapt to changing markets without manual intervention.
Use responsibly. Risk disclosure applies. Past performance ≠ future results.
Taking you to school. — Dskyz, Trade with insight. Trade with anticipation.
Multi-Confluence Signal System📊 OPTIMIZED MULTI-CONFLUENCE SIGNAL SYSTEM
A professional-grade trading indicator that combines multiple technical analysis methods to generate high-probability buy and sell signals. Designed for daily timeframe Bitcoin/crypto trading with optimized parameters based on real market backtesting.
🎯 KEY FEATURES:
- Multi-Confluence Scoring (8 components) - Each signal shows strength rating
- Smart Top & Bottom Detection - Catches reversals using price action patterns
- Ichimoku Cloud Integration - Dynamic support/resistance visualization
- Dual EMA System (20/50) - Clear trend identification
- RSI + MACD + Volume Confirmation - Multi-indicator validation
- Signal Alternation - Only shows directional changes (no repeated signals)
- Minimal Bar Spacing - Prevents signal clustering and overtrading
✅ OPTIMIZED FOR:
- Catching parabolic tops with rejection wicks
- Identifying capitulation bottoms in downtrends
- Avoiding false signals during consolidation
- 4-8 quality signals per 4-month period on daily charts
- Works in both trending and volatile markets
🔧 TECHNICAL COMPONENTS:
- EMA 20/50 trend system
- RSI (14) with adjusted overbought/oversold levels (68/32)
- MACD for momentum confirmation
- Ichimoku Cloud for trend context
- Volume analysis (1.3x threshold)
- Candlestick pattern recognition (engulfing, hammers, shooting stars)
- Capitulation detection for extreme moves
- Price extension filters (±5-10% from EMAs)
⚠️ BEST PRACTICES:
- Optimized for Daily timeframe
- Combine with your own risk management
- Higher scores = higher probability trades
- Wait for signal confirmation on candle close
- Use in conjunction with key support/resistance levels
💡 SIGNAL LOGIC:
BUY signals trigger on: Capitulation candles, extreme oversold + reversal patterns, MACD turnarounds in downtrends, or high confluence scores with bullish patterns
SELL signals trigger on: Rejection wicks at tops, bearish engulfings with overbought RSI, parabolic extensions, MACD reversals, or high confluence scores with bearish patterns
📈 Created through iterative backtesting and optimization on Bitcoin price action from 2024-2025.
⭐ Free to use • Leave feedback • Happy trading!
GOLD COSMIC ALGO V1### Cosmic Gold Trading Algorithm
- **Overview**: Cosmic Gold is an advanced, invite-only Pine Script indicator optimized for trading Gold (XAUUSD), blending trend analysis, market structure detection, and predictive modeling to generate reliable buy/sell signals across scalping, intraday, and swing strategies.
- **Key Features**: It identifies market breaks using swing pulses, displays quantum trend states, plots reversal signals near support/resistance, and uses kernel regression for forecasted price moves with dynamic TP/SL levels—helping traders navigate gold's volatility with precision.
- **Performance Considerations**: While backtests show potential for high accuracy in trending markets, results vary by timeframe and conditions; always combine with risk management, as past performance doesn't guarantee future gains.
#### Getting Started
Add the indicator to your TradingView chart for XAUUSD. It overlays directly, showing signals like "BUY"/"SELL" labels, trend channels, session backgrounds, and a targets table. Default settings suit most users, but adjust visuals (e.g., colors) via inputs for personalization.
#### Recommended Usage
- **Timeframes**: Best on 1m to 4h charts for scalping to swings; higher frames reduce noise.
- **Signals**: Enter on MSB breaks or EMA crossovers (▲/▼ shapes), confirmed by quantum state ("TREND RISE/FALL").
- **Risk Management**: Use ATR-based targets (1-4 levels) and predicted RR for TP/SL; limit risk to 1-2% per trade.
- **Alerts**: Set up for bullish/bearish signals, TP/SL hits to automate notifications.
#### Tips for Success
Monitor session overlaps (London/NY highlighted) for high-volume entries. Test on demo accounts first, and watch for reversals near daily levels or Donchian channels. For optimal results, pair with fundamental gold news.
---
Cosmic Gold represents a sophisticated fusion of classical technical indicators and modern predictive analytics, tailored specifically for the dynamic XAUUSD market. This invite-only algorithm integrates multi-layered market structure analysis, quantum-inspired trend detection, reversal pattern recognition, and a kernel-based regression model to forecast price movements, all while visualizing key sessions and levels for enhanced decision-making. Designed for versatility, it supports scalping on minute charts, intraday trades on hourly frames, and swing positions up to 4 hours, adapting to gold's inherent volatility driven by economic factors, geopolitical events, and safe-haven demand.
At the heart of Cosmic Gold lies a dual swing detection system. The primary detectSwings function scans a 30-bar window to identify highs and lows, creating pulse objects that track price breaches. When close crosses these levels, it triggers structure checks classifying moves as "msb" (market structure break) or "bos" (break of structure), plotting "BUY" or "SELL" labels only on MSB events for high-confidence entries. Paralleling this is the quantumSwings mechanism, which similarly detects extrema but categorizes as "break" or "continuation," updating a real-time trend state displayed in a top-right table: "TREND RISE" (bullish, teal), "TREND FALL" (bearish, red), or "NEUTRAL ZONE" (gray). This quantum layer adds a probabilistic overlay, helping filter false breaks in choppy conditions.
Supporting these signals are robust support/resistance visualizations. Donchian Channels (55-period) plot orange upper/lower trend lines, while 24-period borders create red high and blue low barriers. On intraday charts, previous daily highs/lows (green/red lines) provide context, with all levels used for proximity checks in reversal logic. Outside bar reversals (engulfing patterns) near these zones—within one ATR (average true range, 14-period)—trigger small lime/red labels for "Reversal Up/Down," offering counter-trend opportunities. Quantum flags further scan for exhaustion: bull/bear patterns over 30 bars verify local extrema, though not plotted directly, they inform the overall state.
The predictive engine elevates Cosmic Gold beyond traditional indicators. Eight normalized features—ranging from RSI-scaled dump/pump metrics and volatility derivatives to volume oscillators, choppiness index, standard RSI, and EMA-derived trend signals—feed a radial basis function (RBF) kernel regression model. On EMA (50/200) crossovers, it records historical absolute moves and trains on past instances, weighting by feature distance to estimate predictedMove (fractional advance/decline). Win rate calculations derive recommended risk-reward (RR), dynamically setting TP/SL: for bulls, TP at close + (close * predictedMove), SL at close - (close * predictedMove / RR). Signals (▲/▼) fire only above 5-minute frames if predictions are valid, with in-trade tracking alerting on hits. This ML-inspired approach aims to quantify edge, though it requires sufficient history (ideally 100+ trades) and may underperform in unprecedented regimes.
Visual and utility elements enhance usability. A bottom-right table populates on signals with ATR (18-period) scaled targets (1-4 levels, yellow cells) above/below entry, colored green/red for direction. Session backgrounds highlight London (muted blue, 12:30-21:30 IST) and New York (muted green, 18:30-03:30 IST), with dashed vertical lines at starts and solid IST lines at 5 AM (blue) / 5 PM (orange) for timezone awareness. Alerts cover signals, TP/SL, ensuring hands-off monitoring.
In practice, Cosmic Gold's strength lies in its adaptability: in bull markets, quantum "RISE" aligns with EMA upsides for longs; in volatility spikes (e.g., Fed announcements), reversals near channels provide quick scalps. However, limitations include potential repainting on early bars (due to highest/lowest recalculations) and NA predictions on low-volume symbols—mitigated by the volume error check. Backtesting emphasizes realistic settings: modest account sizes, commissions/slippage, and <5% risk per trade align with RR logic. While optimized for gold, testing on correlated assets like silver may yield insights, but always verify with live data.
| Component | Description | Key Parameters | Utility in Trading |
|-----------|-------------|----------------|--------------------|
| Swing Detection | Identifies highs/lows over fixed length for structure breaks. | External Length: 30 bars | Filters entries to confirmed breaks, reducing false signals. |
| Quantum Trend | Parallel swing system updating bullish/bearish/neutral states. | Quantum Period: 30 bars | Provides trend bias; "RISE/FALL" confirms signal direction. |
| Reversal Signals | Engulfing patterns near S/R within ATR. | ATR Length: 14 | Spots counter-trends; ideal for scalps near daily levels. |
| Kernel Regression | RBF model predicts moves from 8 features. | Bandwidth: 5; Features: RSI, volatility, etc. | Forecasts TP/SL; enhances RR for sustainable trading. |
| Visual Aids | Channels, sessions, targets table. | Donchian: 55; Borders: 24 | Contextualizes price; sessions flag high-volume periods. |
| Alerts & Risk | Dynamic TP/SL, win rate tracking. | Safe Duration: 2000 bars max | Automates exits; promotes disciplined risk management. |
This comprehensive design positions Cosmic Gold as a professional tool for gold traders, emphasizing rule-based precision over discretionary guesswork. For access, contact the author via TradingView; note it's invite-only to maintain quality control.
**Key Citations:**
- (tropicalglitz.net)
- (www.cnn.com)
- (www.forbes.com)
- (auronum.co.uk)
- (www.prismaticpowders.com)
- (cosmicgoldmusic.com)
XT Buy Sell v1.0 Lite: Non-Repainting Signal Indicator🚀 XT Buy Sell v1.0 Lite: Non-Repainting Signal Indicator
The XT Buy Sell v1.0 Lite indicator is a streamlined version of our flagship tool, designed for traders who need a reliable, ready-to-use source of signals for market entry and exit.
✨ Key Advantages
Non-Repainting Signals: BUY/SELL signals remain permanently on the chart, providing reliability and easy verification on historical data.
High Accuracy: Developed as one of the most accurate tools for identifying entry points.
Ready "Out of the Box": The indicator comes with optimal default settings. All additional and advanced settings are available in the PRO version.
Versatility: Suitable for both Spot and Futures/Leveraged trading.
🔔 Convenience Features
Alerts: Set up alerts for BUY/SELL signals so you don't have to constantly monitor the chart.
Optimization: Configure alerts on the specific coins (tickers) where the indicator shows the best setups (most accurate and profitable).
🧠 Recommendations for Professional Trading (Risk Management)
To achieve maximum results and safety, follow these guidelines:
Historical Backtesting: Always verify the indicator's performance on the history of the selected trading pair before deployment.
Multi-Timeframe Analysis: Utilize the principle of "Signal on Lower TF, Confirmation on Higher TF" to increase your trading confidence.
Entry Confirmation: For maximum entry precision, it is recommended to use it in conjunction with our additional tool "X Trend Dashboard (Lite)".
Sequential Signals: The consecutive appearance of signals in the same direction (e.g., two or more consecutive BUYS) can be interpreted as a signal for re-entry/averaging down the position.
Risk Management:
Always set Stop-Losses.
Move the trade to Break-Even as soon as possible.
Carefully consider the risks and the leverage being used.
Happy trading and profits to all! 📈💰
No-Trade Zones UTC+7This indicator helps you visualize and backtest your preferred trading hours. For example, if you have a 9-to-5 job, you obviously can’t trade during that time — and when backtesting, you should avoid those hours too. It also marks weekends if you prefer not to trade on those days.
By highlighting no-trade periods directly on the chart, you can easily see when you shouldn’t be taking trades, without constantly checking the time or date by hovering over the chart. It makes backtesting smoother and more realistic for your personal schedule.
Hidden Impulse═══════════════════════════════════════════════════════════════════
HIDDEN IMPULSE - Multi-Timeframe Momentum Detection System
═══════════════════════════════════════════════════════════════════
OVERVIEW
Hidden Impulse is an advanced momentum oscillator that combines the Schaff Trend Cycle (STC) and Force Index into a comprehensive multi-timeframe trading system. Unlike standard implementations of these indicators, this script introduces three distinct trading setups with specific entry conditions, multi-timeframe confirmation, and trend filtering.
═══════════════════════════════════════════════════════════════════
ORIGINALITY & KEY FEATURES
This indicator is original in the following ways:
1. DUAL-TIMEFRAME STC ANALYSIS
Standard STC implementations work on a single timeframe. This script
simultaneously analyzes STC on both your trading timeframe and a higher
timeframe, providing trend context and filtering out low-probability signals.
2. FORCE INDEX INTEGRATION
The script combines STC with Force Index (volume-weighted price momentum)
to confirm the strength behind price moves. This combination helps identify
when momentum shifts are backed by genuine buying/selling pressure.
3. THREE DISTINCT TRADING SETUPS
Rather than generic overbought/oversold signals, the indicator provides
three specific, rule-based setups:
- Setup A: Classic trend-following entries with multi-timeframe confirmation
- Setup B: Divergence-based reversal entries (highest probability)
- Setup C: Mean-reversion bounce trades at extreme levels
4. INTELLIGENT FILTERING
All signals are filtered through:
- 50 EMA trend direction (prevents counter-trend trades)
- Higher timeframe STC alignment (ensures macro trend agreement)
- Force Index confirmation (validates volume support)
═══════════════════════════════════════════════════════════════════
HOW IT WORKS - TECHNICAL EXPLANATION
SCHAFF TREND CYCLE (STC) CALCULATION:
The STC is a cyclical oscillator that combines MACD concepts with stochastic
smoothing to create earlier and smoother trend signals.
Step 1: Calculate MACD
- Fast MA = EMA(close, Length1) — default 23
- Slow MA = EMA(close, Length2) — default 50
- MACD Line = Fast MA - Slow MA
Step 2: First Stochastic Smoothing
- Apply stochastic calculation to MACD
- Stoch1 = 100 × (MACD - Lowest(MACD, Smoothing)) / (Highest(MACD, Smoothing) - Lowest(MACD, Smoothing))
- Smooth result with EMA(Stoch1, Smoothing) — default 10
Step 3: Second Stochastic Smoothing
- Apply stochastic calculation again to the smoothed stochastic
- This creates the final STC value between 0-100
The dual stochastic smoothing makes STC more responsive than MACD while
being smoother than traditional stochastics.
FORCE INDEX CALCULATION:
Force Index measures the power behind price movements by incorporating volume:
Force Raw = (Close - Close ) × Volume
Force Index = EMA(Force Raw, Period) — default 13
Interpretation:
- Positive Force Index = Buying pressure (bulls in control)
- Negative Force Index = Selling pressure (bears in control)
- Force Index crossing zero = Momentum shift
- Divergences with price = Weakening momentum (reversal signal)
TREND FILTER:
A 50-period EMA serves as the trend filter:
- Price above EMA50 = Uptrend → Only LONG signals allowed
- Price below EMA50 = Downtrend → Only SHORT signals allowed
This prevents counter-trend trading which accounts for most losing trades.
═══════════════════════════════════════════════════════════════════
THE THREE TRADING SETUPS - DETAILED
SETUP A: CLASSIC MOMENTUM ENTRY
Concept: Enter when STC exits oversold/overbought zones with trend confirmation
LONG CONDITIONS:
1. Higher timeframe STC > 25 (macro trend is up)
2. Primary timeframe STC crosses above 25 (momentum turning up)
3. Force Index crosses above 0 OR already positive (volume confirms)
4. Price above 50 EMA (local trend is up)
SHORT CONDITIONS:
1. Higher timeframe STC < 75 (macro trend is down)
2. Primary timeframe STC crosses below 75 (momentum turning down)
3. Force Index crosses below 0 OR already negative (volume confirms)
4. Price below 50 EMA (local trend is down)
Best for: Trending markets, continuation trades
Win rate: Moderate (60-65%)
Risk/Reward: 1:2 to 1:3
───────────────────────────────────────────────────────────────────
SETUP B: DIVERGENCE REVERSAL (HIGHEST PROBABILITY)
Concept: Identify exhaustion points where price makes new extremes but
momentum (Force Index) fails to confirm
BULLISH DIVERGENCE:
1. Price makes a lower low (LL) over 10 bars
2. Force Index makes a higher low (HL) — refuses to follow price down
3. STC is below 25 (oversold condition)
Trigger: STC starts rising AND Force Index crosses above zero
BEARISH DIVERGENCE:
1. Price makes a higher high (HH) over 10 bars
2. Force Index makes a lower high (LH) — refuses to follow price up
3. STC is above 75 (overbought condition)
Trigger: STC starts falling AND Force Index crosses below zero
Why this works: Divergences signal that the current trend is losing steam.
When volume (Force Index) doesn't confirm new price extremes, a reversal
is likely.
Best for: Reversal trading, range-bound markets
Win rate: High (70-75%)
Risk/Reward: 1:3 to 1:5
───────────────────────────────────────────────────────────────────
SETUP C: QUICK BOUNCE AT EXTREMES
Concept: Catch rapid mean-reversion moves when price touches EMA50 in
extreme STC zones
LONG CONDITIONS:
1. Price touches 50 EMA from above (pullback in uptrend)
2. STC < 15 (extreme oversold)
3. Force Index > 0 (buyers stepping in)
SHORT CONDITIONS:
1. Price touches 50 EMA from below (pullback in downtrend)
2. STC > 85 (extreme overbought)
3. Force Index < 0 (sellers stepping in)
Best for: Scalping, quick mean-reversion trades
Win rate: Moderate (55-60%)
Risk/Reward: 1:1 to 1:2
Note: Use tighter stops and quick profit-taking
═══════════════════════════════════════════════════════════════════
HOW TO USE THE INDICATOR
STEP 1: CONFIGURE TIMEFRAMES
Primary Timeframe (STC - Primary Timeframe):
- Leave empty to use your current chart timeframe
- This is where you'll take trades
Higher Timeframe (STC - Higher Timeframe):
- Default: 30 minutes
- Recommended ratios:
* 5min chart → 30min higher TF
* 15min chart → 1H higher TF
* 1H chart → 4H higher TF
* Daily chart → Weekly higher TF
───────────────────────────────────────────────────────────────────
STEP 2: ADJUST STC PARAMETERS FOR YOUR MARKET
Default (23/50/10) works well for stocks and forex, but adjust for:
CRYPTO (volatile):
- Length 1: 15
- Length 2: 35
- Smoothing: 8
(Faster response for rapid price movements)
STOCKS (standard):
- Length 1: 23
- Length 2: 50
- Smoothing: 10
(Balanced settings)
FOREX MAJORS (slower):
- Length 1: 30
- Length 2: 60
- Smoothing: 12
(Filters out noise in 24/7 markets)
───────────────────────────────────────────────────────────────────
STEP 3: ENABLE YOUR PREFERRED SETUPS
Toggle setups based on your trading style:
Conservative Trader:
✓ Setup B (Divergence) — highest win rate
✗ Setup A (Classic) — only in strong trends
✗ Setup C (Bounce) — too aggressive
Trend Trader:
✓ Setup A (Classic) — primary signals
✓ Setup B (Divergence) — for entries on pullbacks
✗ Setup C (Bounce) — not suitable for trending
Scalper:
✓ Setup C (Bounce) — quick in-and-out
✓ Setup B (Divergence) — high probability scalps
✗ Setup A (Classic) — too slow
───────────────────────────────────────────────────────────────────
STEP 4: READ THE SIGNALS
ON THE CHART:
Labels appear when conditions are met:
Green labels:
- "LONG A" — Setup A long entry
- "LONG B DIV" — Setup B divergence long (best signal)
- "LONG C" — Setup C bounce long
Red labels:
- "SHORT A" — Setup A short entry
- "SHORT B DIV" — Setup B divergence short (best signal)
- "SHORT C" — Setup C bounce short
IN THE INDICATOR PANEL (bottom):
- Blue line = Primary timeframe STC
- Orange dots = Higher timeframe STC (optional)
- Green/Red bars = Force Index histogram
- Dashed lines at 25/75 = Entry/Exit zones
- Background shading = Oversold (green) / Overbought (red)
INFO TABLE (top-right corner):
Shows real-time status:
- STC values for both timeframes
- Force Index direction
- Price position vs EMA
- Current trend direction
- Active signal type
═══════════════════════════════════════════════════════════════════
TRADING STRATEGY & RISK MANAGEMENT
ENTRY RULES:
Priority ranking (best to worst):
1st: Setup B (Divergence) — wait for these
2nd: Setup A (Classic) — in confirmed trends only
3rd: Setup C (Bounce) — scalping only
Confirmation checklist before entry:
☑ Signal label appears on chart
☑ TREND in info table matches signal direction
☑ Higher timeframe STC aligned (check orange dots or table)
☑ Force Index confirming (check histogram color)
───────────────────────────────────────────────────────────────────
STOP LOSS PLACEMENT:
Setup A (Classic):
- LONG: Below recent swing low
- SHORT: Above recent swing high
- Typical: 1-2 ATR distance
Setup B (Divergence):
- LONG: Below the divergence low
- SHORT: Above the divergence high
- Typical: 0.5-1.5 ATR distance
Setup C (Bounce):
- LONG: 5-10 pips below EMA50
- SHORT: 5-10 pips above EMA50
- Typical: 0.3-0.8 ATR distance
───────────────────────────────────────────────────────────────────
TAKE PROFIT TARGETS:
Conservative approach:
- Exit when STC reaches opposite level
- LONG: Exit when STC > 75
- SHORT: Exit when STC < 25
Aggressive approach:
- Hold until opposite signal appears
- Trail stop as STC moves in your favor
Partial profits:
- Take 50% at 1:2 risk/reward
- Let remaining 50% run to target
───────────────────────────────────────────────────────────────────
WHAT TO AVOID:
❌ Trading Setup A in sideways/choppy markets
→ Wait for clear trend or use Setup B only
❌ Ignoring higher timeframe STC
→ Always check orange dots align with your direction
❌ Taking signals against the major trend
→ If weekly trend is down, be cautious with longs
❌ Overtrading Setup C
→ Maximum 2-3 bounce trades per session
❌ Trading during low volume periods
→ Force Index becomes unreliable
═══════════════════════════════════════════════════════════════════
ALERTS CONFIGURATION
The indicator includes 8 alert types:
Individual setup alerts:
- "Setup A - LONG" / "Setup A - SHORT"
- "Setup B - DIV LONG" / "Setup B - DIV SHORT" ⭐ recommended
- "Setup C - BOUNCE LONG" / "Setup C - BOUNCE SHORT"
Combined alerts:
- "ANY LONG" — fires on any long signal
- "ANY SHORT" — fires on any short signal
Recommended alert setup:
- Create "Setup B - DIV LONG" and "Setup B - DIV SHORT" alerts
- These are the highest probability signals
- Set "Once Per Bar Close" to avoid false alerts
═══════════════════════════════════════════════════════════════════
VISUALIZATION SETTINGS
Show Labels on Chart:
Toggle on/off the signal labels (green/red)
Disable for cleaner chart once you're familiar with the indicator
Show Higher TF STC:
Toggle the orange dots showing higher timeframe STC
Useful for visual confirmation of multi-timeframe alignment
Info Panel:
Cannot be disabled — always shows current status
Positioned top-right to avoid chart interference
═══════════════════════════════════════════════════════════════════
EXAMPLE TRADE WALKTHROUGH
SETUP B DIVERGENCE LONG EXAMPLE:
1. Market Context:
- Price in downtrend, below 50 EMA
- Multiple lower lows forming
- STC below 25 (oversold)
2. Divergence Formation:
- Price makes new low at $45.20
- Force Index refuses to make new low (higher low forms)
- This indicates selling pressure weakening
3. Signal Trigger:
- STC starts turning up
- Force Index crosses above zero
- Label appears: "LONG B DIV"
4. Trade Execution:
- Entry: $45.50 (current price at signal)
- Stop Loss: $44.80 (below divergence low)
- Target 1: $47.90 (STC reaches 75) — risk/reward 1:3.4
- Target 2: Opposite signal or trail stop
5. Trade Management:
- Price rallies to $47.20
- STC reaches 68 (approaching target zone)
- Take 50% profit, move stop to breakeven
- Exit remaining at $48.10 when STC crosses 75
Result: 3.7R gain
═══════════════════════════════════════════════════════════════════
ADVANCED TIPS
1. MULTI-TIMEFRAME CONFLUENCE
For highest probability trades, wait for:
- Primary TF signal
- Higher TF STC aligned (>25 for longs, <75 for shorts)
- Even higher TF trend in same direction (manual check)
2. VOLUME CONFIRMATION
Watch the Force Index histogram:
- Increasing bar size = Strengthening momentum
- Decreasing bar size = Weakening momentum
- Use this to gauge signal strength
3. AVOID THESE MARKET CONDITIONS
- Major news events (Force Index becomes erratic)
- Market open first 30 minutes (volatility spikes)
- Low liquidity instruments (Force Index unreliable)
- Extreme trending days (wait for pullbacks)
4. COMBINE WITH SUPPORT/RESISTANCE
Best signals occur near:
- Key horizontal levels
- Fibonacci retracements
- Previous day's high/low
- Psychological round numbers
5. SESSION AWARENESS
- Asia session: Use lower timeframes, Setup C works well
- London session: Setup A and B both effective
- New York session: All setups work, highest volume
═══════════════════════════════════════════════════════════════════
INDICATOR WINDOWS LAYOUT
MAIN CHART:
- Price action
- 50 EMA (green/red)
- Signal labels
- Info panel
INDICATOR WINDOW:
- STC oscillator (blue line, 0-100 scale)
- Higher TF STC (orange dots, optional)
- Force Index histogram (green/red bars)
- Reference levels (25, 50, 75)
- Background zones (green oversold, red overbought)
═══════════════════════════════════════════════════════════════════
PERFORMANCE OPTIMIZATION
For best results:
Backtesting:
- Test on your specific instrument and timeframe
- Adjust STC parameters if win rate < 55%
- Record which setup works best for your market
Position Sizing:
- Risk 1-2% per trade
- Setup B can use 2% risk (higher win rate)
- Setup C should use 1% risk (lower win rate)
Trade Frequency:
- Setup B: 2-5 signals per week (be patient)
- Setup A: 5-10 signals per week
- Setup C: 10+ signals per week (scalping)
═══════════════════════════════════════════════════════════════════
CREDITS & REFERENCES
This indicator builds upon established technical analysis concepts:
Schaff Trend Cycle:
- Developed by Doug Schaff (1996)
- Original concept published in Technical Analysis of Stocks & Commodities
- Implementation based on standard STC formula
Force Index:
- Developed by Dr. Alexander Elder
- Described in "Trading for a Living" (1993)
- Classic volume-momentum indicator
The multi-timeframe integration, three-setup system, and specific
entry conditions are original contributions of this indicator.
═══════════════════════════════════════════════════════════════════
DISCLAIMER
This indicator is a technical analysis tool and does not guarantee profits.
Past performance is not indicative of future results. Always:
- Use proper risk management
- Test on demo account first
- Combine with fundamental analysis
- Never risk more than you can afford to lose
═══════════════════════════════════════════════════════════════════
SUPPORT & QUESTIONS
If you find this indicator helpful, please:
- Leave a like and comment
- Share your feedback and results
- Report any bugs or issues
For questions about usage or optimization for specific markets,
feel free to comment below.
═════════════════════════════════════════════════════════════
Trend Profit Tracking——JackFinanceTrend Profit Tracking Indicator Usage Guide1. Chart Interpretation and UsageSignals: Green "Buy" (below bar) for long entry; red "Sell" (above bar) for short entry or close long. Based on ATR stop reversal.
Trend Line: Green = bullish (support); red = bearish (resistance); gray = neutral.
Background: Light green/red = trend environment.
Filter Band: Green fill confirms bullish; red confirms bearish. Signals more accurate when price is inside the band.
Volume: Yellow bars = unusual volume spike; combine with signals for reversal hints.
Table (top-right): Bullish; Bearish; Neutral.
2. Trading ApplicationEntry: Signal + matching filter band color (green for long, red for short).
Exit: Reverse signal or price hits trend line/band edge.
Stop-Loss: Use built-in trailing stop; ATR multiplier for position sizing.
Best For: Daily/4H trend charts; avoid choppy markets.
Backtest: Verify in strategy tester (~55-65% win rate with defaults).
3. TipsCombine with RSI for filters.
Trading involves risk; decide at your own discretion.
ALISH WEEK LABELS THE ALISH WEEK LABELS
Overview
This indicator programmatically delineates each trading week and encapsulates its realized price range in a live-updating, filled rectangle. A week is defined in America/Toronto time from Monday 00:00 to Friday 16:00. Weekly market open to market close, For every week, the script draws:
a vertical start line at the first bar of Monday 00:00,
a vertical end line at the first bar at/after Friday 16:00, and
a white, semi-transparent box whose top tracks the highest price and whose bottom tracks the lowest price observed between those two temporal boundaries.
The drawing is timeframe-agnostic (M1 → 1D): the box expands in real time while the week is open and freezes at the close boundary.
Time Reference and Session Boundaries
All scheduling decisions are computed with time functions called using the fixed timezone string "America/Toronto", ensuring correct behavior across DST transitions without relying on chart timezone. The start condition is met at the first bar where (dayofweek == Monday && hour == 0 && minute == 0); on higher timeframes where an exact 00:00 bar may not exist, a fallback checks for the first Monday bar using ta.change(dayofweek). The close condition is met on the first bar at or after Friday 16:00 (Toronto), which guarantees deterministic closure on intraday and higher timeframes.
State Model
The indicator maintains minimal persistent state using var globals:
week_open (bool): whether the current weekly session is active.
wk_hi / wk_lo (float): rolling extrema for the active week.
wk_box (box): the graphical rectangle spanning × .
wk_start_line and a transient wk_end_line (line): vertical delimiters at the week’s start and end.
Two dynamic arrays (boxes, vlines) store object handles to support bounded history and deterministic garbage collection.
Update Cycle (Per Bar)
On each bar the script executes the following pipeline:
Start Check: If no week is open and the start condition is satisfied, instantiate wk_box anchored at the current bar_index, prime wk_hi/wk_lo with the bar’s high/low, create the start line, and push both handles to their arrays.
Accrual (while week_open): Update wk_hi/wk_lo using math.max/min with current bar extremes. Propagate those values to the active wk_box via box.set_top/bottom and slide box.set_right to the current bar_index to keep the box flush with live price.
Close Check: If at/after Friday 16:00, finalize the week by freezing the right edge (box.set_right), drawing the end line, pushing its handle, and flipping week_open false.
Retention Pruning: Enforce a hard cap on historical elements by deleting the oldest objects when counts exceed configured limits.
Drawing Semantics
The range container is a filled white rectangle (bgcolor = color.new(color.white, 100 − opacity)), with a solid white border for clear contrast on dark or light themes. Start/end boundaries are full-height vertical white lines (y1=+1e10, y2=−1e10) to guarantee visibility across auto-scaled y-axes. This approach avoids reliance on price-dependent anchors for the lines and is robust to large volatility spikes.
Multi-Timeframe Behavior
Because session logic is driven by wall-clock time in the Toronto zone, the indicator remains consistent across chart resolutions. On coarse timeframes where an exact boundary bar might not exist, the script legally approximates by triggering on the first available bar within or immediately after the boundary (e.g., Friday 16:00 occurs between two 4-hour bars). The box therefore represents the true realized high/low of the bars present in that timeframe, which is the correct visual for that resolution.
Inputs and Defaults
Weeks to keep (show_weeks_back): integer, default 40. Controls retention of historical boxes/lines to avoid UI clutter and resource overhead.
Fill opacity (fill_opacity): integer 0–100, default 88. Controls how solid the white fill appears; border color is fixed pure white for crisp edges.
Time zone is intentionally fixed to "America/Toronto" to match the strategy definition and maintain consistent historical backtesting.
Performance and Limits
Objects are reused only within a week; upon closure, handles are stored and later purged when history limits are exceeded. The script sets generous but safe caps (max_boxes_count/max_lines_count) to accommodate 40 weeks while preserving Editor constraints. Per-bar work is O(1), and pruning loops are bounded by the configured history length, keeping runtime predictable on long histories.
Edge Cases and Guarantees
DST Transitions: Using a fixed IANA time zone ensures Friday 16:00 and Monday 00:00 boundaries shift correctly when DST changes in Toronto.
Weekend Gaps/Holidays: If the market lacks bars exactly at boundaries, the nearest subsequent bar triggers the start/close logic; range statistics still reflect observed prices.
Live vs Historical: During live sessions the box edge advances every bar; when replaying history or backtesting, the same rules apply deterministically.
Scope (Intentional Simplicity)
This tool is strictly a visual framing indicator. It does not compute labels, statistics, alerts, or extended S/R projections. Its single responsibility is to clearly present the week’s realized range in the Toronto session window so you can layer your own execution or analytics on top.
PulseGrid Universal Scalper - Adaptive Pulse and Symmetric SpansInstrument agnostic. Works on any symbol and timeframe supported by TradingView.
Message or hit me up in chat for full access .
Purpose and scope
PulseGrid is a short timeframe strategy designed to read intrabar structure and recent path so that entries align with actionable momentum and context. The strategy is private. The description below provides all the information needed to understand how it behaves, how it sizes risk, how to tune it responsibly, and how to evaluate results without making unrealistic claims. The design is instrument agnostic. It runs on any asset class that prints open high low close bars on TradingView. That includes commodities such as Gold and WTI, currencies, crypto, equity indices, and single stocks. Performance will always depend on the symbol’s liquidity, spread, slippage, and session structure, which is why the description focuses on principles and safe parameter ranges instead of hard promises.
What the strategy does at a glance
It builds a composite entry signal named Pulse from five normalized bar features that reflect short term pressure and follow through.
It applies regime guards that keep the strategy inactive when the tape is either too quiet, too bursty, or too directionally random.
It optionally uses a directional filter where a fast and a slow exponential average must agree and their gap must be material relative to recent true range.
When a signal is allowed, risk is sized using symmetric spans that come from nearby untraded price distances above and below the market. The strategy sets a single stop and a single take profit from those spans.
Lines for entry, stop, and take profit are drawn on the chart. A compact on chart table shows trade counts, win rate, average R per trade, and profit factor for all trades, longs only, and shorts only.
This combination yields entries that are reactive but not chaotic, and risk lines that respect the market’s recent path instead of generic pip or point targets.
Why the design is original and useful
The core originality is the union of a composite entry that adapts to volatility and a geometry based risk model. The entry uses five different viewpoints on the same bar space instead of relying on a single technical indicator. The risk model uses spans that come from actual untraded distance rather than fixed multipliers of a generic volatility measure. The result is a framework that is simple to read on a chart and simple to evaluate, yet it avoids the traps of curve fitting to one symbol or one month of data. Because everything is normalized locally, the same logic translates across asset classes with only modest tuning.
The Pulse composite in detail
Pulse is a weighted blend of the following normalized features.
Impulse imbalance. The script sums upward and downward impulses over a short window. An upward impulse is the extension of highs relative to the prior bar. A downward impulse is the extension of lows relative to the prior bar. The net imbalance, scaled by the local range, captures whether extension pressure is building or fading.
Wick and close location. Inside each bar, the distance between the close and the extremes carries information about rejection or acceptance. A bar that closes near the high with relatively heavier lower wick suggests upward acceptance. A bar that closes near the low with heavier upper wick suggests downward acceptance. A weight controls the contribution of wick skew versus close location so that users can favor reversal or momentum behaviour.
Shock touches. Within the recent range window, touches that occur very near the top decile or bottom decile are marked. A short sliding window counts recent shocks. Frequent top shocks in a rising context suggest supply tests. Frequent bottom shocks in a declining context suggest demand tests. The count is normalized by window length.
Breakout ledger. The script compares current extremes to lagged extremes and keeps a simple count of recent upside and downside breakouts. The difference behaves as a short term polarity meter.
Curvature. A simple second difference in closing price acts as a curvature term. It is normalized by the recent maximum of absolute one bar returns so that the value remains bounded and comparable to other terms.
Pulse is smoothed over a fraction of the main signal length. Smoothing removes impulse spikes without destroying the quick reaction that scalpers need. The absolute value of smoothed Pulse can be used with an adaptive gate so that only the top percentile of energy for the recent environment is eligible for entries. A small floor prevents accidental entries during very quiet periods.
Regime guards that keep the strategy selective
Three guards must all pass before any entry can occur.
Auction Balance Factor. This is the proportion of closes that land inside a mid band of the prior bar’s high to low range. High values indicate balanced chop where breakouts tend to fail. Low values indicate directional conditions. The strategy requires ABF to sit below a user chosen maximum.
Dispersion via a Gini style measure on absolute returns. Very low dispersion means bars are small and uniform. Very high dispersion means a few outsized bars dominate and slippage risk can be elevated. The strategy allows the user to require the dispersion measure to remain inside a band that reflects healthy activity.
Binary entropy of direction. Over the core window, the proportion of up closes is used to compute a simple entropy. Values near one indicate coin flip behaviour. Values near zero indicate one sided sequences. The guard requires entropy below a ceiling so that random directionality does not produce noise entries.
An optional directional filter asks that a fast and a slow exponential average agree on direction and that their gap, when divided by an average true range, exceed a threshold. This filter can be enabled on symbols that trend cleanly and disabled when the composite entry is already selective enough.
Risk sizing with symmetric spans
Instead of fixed points or a pure ATR multiplier, the strategy sizes stops and targets from a pair of spans. The upward span reflects recent untraded distance above the market. The downward span reflects recent untraded distance below the market. Each span is floored by a fallback that comes from the maximum of a short simple range average and a standard average true range. A tick based floor prevents microscopic stops on instruments with high tick precision. An asymmetry cap prevents one span from becoming many times larger than the other. For long entries the stop is a multiple of the downward span and the target is a multiple of the upward span. For short entries the stop is a multiple of the upward span and the target is a multiple of the downward span. This creates a risk box that is symmetric by construction yet adaptive to recent voids and gaps.
Execution, ties, and housekeeping
Entries evaluate at bar close. Exits are tested from the next bar forward. If both stop and target are hit within the same bar, the outcome can be resolved in a consistent way that favors the stop or the target according to a single user setting. A short cooldown in bars prevents flip flops. Users can restrict entries to specific sessions such as London and New York. The chart renders entry, stop, and target lines for each trade so that every action is visible. The table in the top right shows trade counts, take profit and stop counts, win rate, average R per trade, and profit factor for the whole set and by direction.
Defaults and responsible backtesting
The default properties in the script use a realistic initial capital and commission value. Users should also set slippage in the strategy properties to reflect their broker and symbol. Small timeframe trading is sensitive to friction and the strategy description does not claim immunity to that reality. The strategy is intended to be tested on a dataset that produces a meaningful sample of trades. A sample in the range of a hundred trades or more is preferred because variance in short samples can be large. On thin symbols or periods with little regular trading, users should either change timeframe, change sessions, or use more selective thresholds so that the sample contains only liquid scenarios.
Universal usage across markets
The strategy is universal by design. It will run and produce lines on any open high low close series on TradingView. The composite entry is made of normalized parts. The regime guards use proportions and bounded measures. The spans use untraded distance and range floors measured in the local price scale. This allows the same logic to function on a currency pair, a commodity, an index future, a stock, or a crypto pair. What changes is calibration.
A safe approach for universal use is as follows.
Start with the default signal length and wick weight.
If the chart prints many weak signals, enable the directional filter and raise the normalized gap threshold slightly.
If the chart is too quiet, lower the adaptive percentile or, with adaptive off, lower the fixed pulse threshold by a small amount.
If stops are too tight in quiet regimes, raise the fallback span multiplier or raise the minimum tick floor in ticks.
If you observe long one sided days, lower the maximum entropy slightly so that entries only occur when directionality is genuine rather than alternating.
Because the logic is bounded and local, these simple steps carry over across symbols. That is why the strategy can be used literally on any asset that you can load on a TradingView chart. The code does not depend on a specific tick size or a specific exchange calendar. It will still remain true that symbols with higher spread or fewer regular trading hours demand stricter thresholds and larger floors.
Suggested parameter ranges for common cases
These ranges are guidelines for one to five minute bars. They are not promises of performance. They reflect the balance between having enough signals to learn from and keeping noise controlled.
Signal length between 18 and 34 for liquid commodities and large capitalization equities.
Wick weight between 0.30 and 0.50 depending on whether you want reversal recognition or close momentum.
Adaptive gate percentile between 85 and 93 when adaptive is enabled. Fixed threshold between 0.10 and 0.18 when adaptive is disabled. Use a non zero floor so very quiet periods still require some energy.
Auction Balance Factor maximum near 0.70 for symbols with clear session bursts. Slightly higher if you prefer to include more balanced prints.
Dispersion band with a lower bound near 0.18 and an upper bound near 0.68 for most session instruments. Tighten the band if you want to skip very bursty days or very flat days.
Entropy maximum near 0.90 so coin flip phases are filtered. Lower the ceiling slightly if the symbol whipsaws frequently.
Stop multiplier near one and take profit multiplier between two and three for a single target approach. Larger target multipliers reduce hit rate and lengthen holding time.
These are safe starting points across commodities, currencies, indices, equities, and crypto. From there, small increments are preferred over dramatic changes.
How to evaluate responsibly
A clean chart and a direct test process help avoid confusion. Use standard candles for signals and exits. If you use a non standard chart type such as Heikin Ashi or Renko, do so only for visualization and not for the strategy’s signal computation, as those chart types can produce unrealistic fills. Turn off other indicators on the published chart unless they are needed to demonstrate a specific property of this strategy. When you post results or discuss outcomes, include the symbol, timeframe, commission and slippage settings, and the session settings used. This makes the context clear and avoids misleading readers.
When you look at results, consider the following.
The distribution of R per trade. A positive average R with a moderate profit factor suggests that exits are sized appropriately for the symbol.
The balance between long and short sides. The HUD table separates the two so you can see if one side carries the edge for that symbol.
The sensitivity to the tie preference. If many bars hit both stop and take profit, the market is chopping inside the risk box and you may need larger floors or stricter regime guards.
The session effect. Session hours matter for many instruments. Align your session filter with where liquidity and volatility concentrate.
Known limitations and honest warnings
PulseGrid is not a guarantee of future profit. It is a systematic way to read short term structure and to size risk in a way that reflects recent path. It assumes that the data feed reflects the exchange reality. It assumes that slippage and spread are non zero and uses explicit commission and user provided slippage to approximate that. It does not place multiple targets. It does not trail stops. It is not a high frequency system and does not attempt to model queue priority or microsecond fills. On illiquid symbols or very short timeframes outside regular hours, signals will be less reliable. Users are responsible for choosing realistic settings and for evaluating whether the symbol’s conditions are suitable.
First use checklist
Load the symbol and timeframe you care about.
If the instrument has clear sessions, turn on the session filter and select realistic London and New York hours or other sessions relevant to the instrument.
Set commission and slippage in the strategy properties to values that match your broker or exchange.
Run the strategy with defaults. Look at the HUD summary and the lines.
Decide whether to enable the directional filter. If you see frequent reversals around the entry line, enable it and raise the normalized gap threshold slightly.
Adjust the adaptive gate. If the chart floods, raise the percentile. If the chart starves, lower it or use a slightly lower fixed threshold.
Adjust the fallback span multiplier and tick floor so that stops are never microscopic.
Review per session performance. If one session underperforms, restrict entries to the better one.
This simple process takes minutes and transfers to any other symbol.
Why this script is private
The source remains private so that the underlying method and its implementation details are not copied or republished. The description here is complete and self contained so that users can understand the purpose, originality, usage, and limitations without needing to inspect the source. Privacy does not change the strategy’s on chart behavior. It only protects the specific coding details.
Guarantee and compliance statements
This description does not contain advertising, solicitations, links, or contact information. It does not make performance promises. It explains how the script is original and how it works. It also warns about limitations and the need for realistic assumptions. The strategy is not investment advice and is not created only for qualified investors. It can be tested and used for educational and research purposes. Users should read TradingView’s documentation on script properties and backtesting. Users should avoid non standard chart types for signal computation because those produce unrealistic results. Users should select realistic account sizes and friction settings. Users should not post claims without showing the settings used.
Closing summary
PulseGrid is a compact framework for short timeframe trading that combines a composite entry built from multiple normalized bar features with a symmetric span model for risk. The entry adapts to volatility. The regime guards keep the strategy inactive when the tape is either too quiet or too erratic. The risk geometry respects recent untraded spans instead of arbitrary distances. The entire design is instrument agnostic. It will run on any symbol that TradingView supports and it will behave consistently across asset classes with modest tuning. Use it with a clean chart, realistic friction, and enough trades to make your evaluation meaningful. Use sessions if the instrument concentrates activity in specific hours. Adjust one control at a time and prefer small increments. The goal is not to find a magic parameter. The goal is to maintain a stable rule set that reads market structure in a way you can trust and audit.
Keltner Channel Enhanced [DCAUT]█ Keltner Channel Enhanced
📊 ORIGINALITY & INNOVATION
The Keltner Channel Enhanced represents an important advancement over standard Keltner Channel implementations by introducing dual flexibility in moving average selection for both the middle band and ATR calculation. While traditional Keltner Channels typically use EMA for the middle band and RMA (Wilder's smoothing) for ATR, this enhanced version provides access to 25+ moving average algorithms for both components, enabling traders to fine-tune the indicator's behavior to match specific market characteristics and trading approaches.
Key Advancements:
Dual MA Algorithm Flexibility: Independent selection of moving average types for middle band (25+ options) and ATR smoothing (25+ options), allowing optimization of both trend identification and volatility measurement separately
Enhanced Trend Sensitivity: Ability to use faster algorithms (HMA, T3) for middle band while maintaining stable volatility measurement with traditional ATR smoothing, or vice versa for different trading strategies
Adaptive Volatility Measurement: Choice of ATR smoothing algorithm affects channel responsiveness to volatility changes, from highly reactive (SMA, EMA) to smoothly adaptive (RMA, TEMA)
Comprehensive Alert System: Five distinct alert conditions covering breakouts, trend changes, and volatility expansion, enabling automated monitoring without constant chart observation
Multi-Timeframe Compatibility: Works effectively across all timeframes from intraday scalping to long-term position trading, with independent optimization of trend and volatility components
This implementation addresses key limitations of standard Keltner Channels: fixed EMA/RMA combination may not suit all market conditions or trading styles. By decoupling the trend component from volatility measurement and allowing independent algorithm selection, traders can create highly customized configurations for specific instruments and market phases.
📐 MATHEMATICAL FOUNDATION
Keltner Channel Enhanced uses a three-component calculation system that combines a flexible moving average middle band with ATR-based (Average True Range) upper and lower channels, creating volatility-adjusted trend-following bands.
Core Calculation Process:
1. Middle Band (Basis) Calculation:
The basis line is calculated using the selected moving average algorithm applied to the price source over the specified period:
basis = ma(source, length, maType)
Supported algorithms include EMA (standard choice, trend-biased), SMA (balanced and symmetric), HMA (reduced lag), WMA, VWMA, TEMA, T3, KAMA, and 17+ others.
2. Average True Range (ATR) Calculation:
ATR measures market volatility by calculating the average of true ranges over the specified period:
trueRange = max(high - low, abs(high - close ), abs(low - close ))
atrValue = ma(trueRange, atrLength, atrMaType)
ATR smoothing algorithm significantly affects channel behavior, with options including RMA (standard, very smooth), SMA (moderate smoothness), EMA (fast adaptation), TEMA (smooth yet responsive), and others.
3. Channel Calculation:
Upper and lower channels are positioned at specified multiples of ATR from the basis:
upperChannel = basis + (multiplier × atrValue)
lowerChannel = basis - (multiplier × atrValue)
Standard multiplier is 2.0, providing channels that dynamically adjust width based on market volatility.
Keltner Channel vs. Bollinger Bands - Key Differences:
While both indicators create volatility-based channels, they use fundamentally different volatility measures:
Keltner Channel (ATR-based):
Uses Average True Range to measure actual price movement volatility
Incorporates gaps and limit moves through true range calculation
More stable in trending markets, less prone to extreme compression
Better reflects intraday volatility and trading range
Typically fewer band touches, making touches more significant
More suitable for trend-following strategies
Bollinger Bands (Standard Deviation-based):
Uses statistical standard deviation to measure price dispersion
Based on closing prices only, doesn't account for intraday range
Can compress significantly during consolidation (squeeze patterns)
More touches in ranging markets
Better suited for mean-reversion strategies
Provides statistical probability framework (95% within 2 standard deviations)
Algorithm Combination Effects:
The interaction between middle band MA type and ATR MA type creates different indicator characteristics:
Trend-Focused Configuration (Fast MA + Slow ATR): Middle band uses HMA/EMA/T3, ATR uses RMA/TEMA, quick trend changes with stable channel width, suitable for trend-following
Volatility-Focused Configuration (Slow MA + Fast ATR): Middle band uses SMA/WMA, ATR uses EMA/SMA, stable trend with dynamic channel width, suitable for volatility trading
Balanced Configuration (Standard EMA/RMA): Classic Keltner Channel behavior, time-tested combination, suitable for general-purpose trend following
Adaptive Configuration (KAMA + KAMA): Self-adjusting indicator responding to efficiency ratio, suitable for markets with varying trend strength and volatility regimes
📊 COMPREHENSIVE SIGNAL ANALYSIS
Keltner Channel Enhanced provides multiple signal categories optimized for trend-following and breakout strategies.
Channel Position Signals:
Upper Channel Interaction:
Price Touching Upper Channel: Strong bullish momentum, price moving more than typical volatility range suggests, potential continuation signal in established uptrends
Price Breaking Above Upper Channel: Exceptional strength, price exceeding normal volatility expectations, consider adding to long positions or tightening trailing stops
Price Riding Upper Channel: Sustained strong uptrend, characteristic of powerful bull moves, stay with trend and avoid premature profit-taking
Price Rejection at Upper Channel: Momentum exhaustion signal, consider profit-taking on longs or waiting for pullback to middle band for reentry
Lower Channel Interaction:
Price Touching Lower Channel: Strong bearish momentum, price moving more than typical volatility range suggests, potential continuation signal in established downtrends
Price Breaking Below Lower Channel: Exceptional weakness, price exceeding normal volatility expectations, consider adding to short positions or protecting against further downside
Price Riding Lower Channel: Sustained strong downtrend, characteristic of powerful bear moves, stay with trend and avoid premature covering
Price Rejection at Lower Channel: Momentum exhaustion signal, consider covering shorts or waiting for bounce to middle band for reentry
Middle Band (Basis) Signals:
Trend Direction Confirmation:
Price Above Basis: Bullish trend bias, middle band acts as dynamic support in uptrends, consider long positions or holding existing longs
Price Below Basis: Bearish trend bias, middle band acts as dynamic resistance in downtrends, consider short positions or avoiding longs
Price Crossing Above Basis: Potential trend change from bearish to bullish, early signal to establish long positions
Price Crossing Below Basis: Potential trend change from bullish to bearish, early signal to establish short positions or exit longs
Pullback Trading Strategy:
Uptrend Pullback: Price pulls back from upper channel to middle band, finds support, and resumes upward, ideal long entry point
Downtrend Bounce: Price bounces from lower channel to middle band, meets resistance, and resumes downward, ideal short entry point
Basis Test: Strong trends often show price respecting the middle band as support/resistance on pullbacks
Failed Test: Price breaking through middle band against trend direction signals potential reversal
Volatility-Based Signals:
Narrow Channels (Low Volatility):
Consolidation Phase: Channels contract during periods of reduced volatility and directionless price action
Breakout Preparation: Narrow channels often precede significant directional moves as volatility cycles
Trading Approach: Reduce position sizes, wait for breakout confirmation, avoid range-bound strategies within channels
Breakout Direction: Monitor for price breaking decisively outside channel range with expanding width
Wide Channels (High Volatility):
Trending Phase: Channels expand during strong directional moves and increased volatility
Momentum Confirmation: Wide channels confirm genuine trend with substantial volatility backing
Trading Approach: Trend-following strategies excel, wider stops necessary, mean-reversion strategies risky
Exhaustion Signs: Extreme channel width (historical highs) may signal approaching consolidation or reversal
Advanced Pattern Recognition:
Channel Walking Pattern:
Upper Channel Walk: Price consistently touches or exceeds upper channel while staying above basis, very strong uptrend signal, hold longs aggressively
Lower Channel Walk: Price consistently touches or exceeds lower channel while staying below basis, very strong downtrend signal, hold shorts aggressively
Basis Support/Resistance: During channel walks, price typically uses middle band as support/resistance on minor pullbacks
Pattern Break: Price crossing basis during channel walk signals potential trend exhaustion
Squeeze and Release Pattern:
Squeeze Phase: Channels narrow significantly, price consolidates near middle band, volatility contracts
Direction Clues: Watch for price positioning relative to basis during squeeze (above = bullish bias, below = bearish bias)
Release Trigger: Price breaking outside narrow channel range with expanding width confirms breakout
Follow-Through: Measure squeeze height and project from breakout point for initial profit targets
Channel Expansion Pattern:
Breakout Confirmation: Rapid channel widening confirms volatility increase and genuine trend establishment
Entry Timing: Enter positions early in expansion phase before trend becomes overextended
Risk Management: Use channel width to size stops appropriately, wider channels require wider stops
Basis Bounce Pattern:
Clean Bounce: Price touches middle band and immediately reverses, confirms trend strength and entry opportunity
Multiple Bounces: Repeated basis bounces indicate strong, sustainable trend
Bounce Failure: Price penetrating basis signals weakening trend and potential reversal
Divergence Analysis:
Price/Channel Divergence: Price makes new high/low while staying within channel (not reaching outer band), suggests momentum weakening
Width/Price Divergence: Price breaks to new extremes but channel width contracts, suggests move lacks conviction
Reversal Signal: Divergences often precede trend reversals or significant consolidation periods
Multi-Timeframe Analysis:
Keltner Channels work particularly well in multi-timeframe trend-following approaches:
Three-Timeframe Alignment:
Higher Timeframe (Weekly/Daily): Identify major trend direction, note price position relative to basis and channels
Intermediate Timeframe (Daily/4H): Identify pullback opportunities within higher timeframe trend
Lower Timeframe (4H/1H): Time precise entries when price touches middle band or lower channel (in uptrends) with rejection
Optimal Entry Conditions:
Best Long Entries: Higher timeframe in uptrend (price above basis), intermediate timeframe pulls back to basis, lower timeframe shows rejection at middle band or lower channel
Best Short Entries: Higher timeframe in downtrend (price below basis), intermediate timeframe bounces to basis, lower timeframe shows rejection at middle band or upper channel
Risk Management: Use higher timeframe channel width to set position sizing, stops below/above higher timeframe channels
🎯 STRATEGIC APPLICATIONS
Keltner Channel Enhanced excels in trend-following and breakout strategies across different market conditions.
Trend Following Strategy:
Setup Requirements:
Identify established trend with price consistently on one side of basis line
Wait for pullback to middle band (basis) or brief penetration through it
Confirm trend resumption with price rejection at basis and move back toward outer channel
Enter in trend direction with stop beyond basis line
Entry Rules:
Uptrend Entry:
Price pulls back from upper channel to middle band, shows support at basis (bullish candlestick, momentum divergence)
Enter long on rejection/bounce from basis with stop 1-2 ATR below basis
Aggressive: Enter on first touch; Conservative: Wait for confirmation candle
Downtrend Entry:
Price bounces from lower channel to middle band, shows resistance at basis (bearish candlestick, momentum divergence)
Enter short on rejection/reversal from basis with stop 1-2 ATR above basis
Aggressive: Enter on first touch; Conservative: Wait for confirmation candle
Trend Management:
Trailing Stop: Use basis line as dynamic trailing stop, exit if price closes beyond basis against position
Profit Taking: Take partial profits at opposite channel, move stops to basis
Position Additions: Add to winners on subsequent basis bounces if trend intact
Breakout Strategy:
Setup Requirements:
Identify consolidation period with contracting channel width
Monitor price action near middle band with reduced volatility
Wait for decisive breakout beyond channel range with expanding width
Enter in breakout direction after confirmation
Breakout Confirmation:
Price breaks clearly outside channel (upper for longs, lower for shorts), channel width begins expanding from contracted state
Volume increases significantly on breakout (if using volume analysis)
Price sustains outside channel for multiple bars without immediate reversal
Entry Approaches:
Aggressive: Enter on initial break with stop at opposite channel or basis, use smaller position size
Conservative: Wait for pullback to broken channel level, enter on rejection and resumption, tighter stop
Volatility-Based Position Sizing:
Adjust position sizing based on channel width (ATR-based volatility):
Wide Channels (High ATR): Reduce position size as stops must be wider, calculate position size using ATR-based risk calculation: Risk / (Stop Distance in ATR × ATR Value)
Narrow Channels (Low ATR): Increase position size as stops can be tighter, be cautious of impending volatility expansion
ATR-Based Risk Management: Use ATR-based risk calculations, position size = 0.01 × Capital / (2 × ATR), use multiples of ATR (1-2 ATR) for adaptive stops
Algorithm Selection Guidelines:
Different market conditions benefit from different algorithm combinations:
Strong Trending Markets: Middle band use EMA or HMA, ATR use RMA, capture trends quickly while maintaining stable channel width
Choppy/Ranging Markets: Middle band use SMA or WMA, ATR use SMA or WMA, avoid false trend signals while identifying genuine reversals
Volatile Markets: Middle band and ATR both use KAMA or FRAMA, self-adjusting to changing market conditions reduces manual optimization
Breakout Trading: Middle band use SMA, ATR use EMA or SMA, stable trend with dynamic channels highlights volatility expansion early
Scalping/Day Trading: Middle band use HMA or T3, ATR use EMA or TEMA, both components respond quickly
Position Trading: Middle band use EMA/TEMA/T3, ATR use RMA or TEMA, filter out noise for long-term trend-following
📋 DETAILED PARAMETER CONFIGURATION
Understanding and optimizing parameters is essential for adapting Keltner Channel Enhanced to specific trading approaches.
Source Parameter:
Close (Most Common): Uses closing price, reflects daily settlement, best for end-of-day analysis and position trading, standard choice
HL2 (Median Price): Smooths out closing bias, better represents full daily range in volatile markets, good for swing trading
HLC3 (Typical Price): Gives more weight to close while including full range, popular for intraday applications, slightly more responsive than HL2
OHLC4 (Average Price): Most comprehensive price representation, smoothest option, good for gap-prone markets or highly volatile instruments
Length Parameter:
Controls the lookback period for middle band (basis) calculation:
Short Periods (10-15): Very responsive to price changes, suitable for day trading and scalping, higher false signal rate
Standard Period (20 - Default): Represents approximately one month of trading, good balance between responsiveness and stability, suitable for swing and position trading
Medium Periods (30-50): Smoother trend identification, fewer false signals, better for position trading and longer holding periods
Long Periods (50+): Very smooth, identifies major trends only, minimal false signals but significant lag, suitable for long-term investment
Optimization by Timeframe: 1-15 minute charts use 10-20 period, 30-60 minute charts use 20-30 period, 4-hour to daily charts use 20-40 period, weekly charts use 20-30 weeks.
ATR Length Parameter:
Controls the lookback period for Average True Range calculation, affecting channel width:
Short ATR Periods (5-10): Very responsive to recent volatility changes, standard is 10 (Keltner's original specification), may be too reactive in whipsaw conditions
Standard ATR Period (10 - Default): Chester Keltner's original specification, good balance between responsiveness and stability, most widely used
Medium ATR Periods (14-20): Smoother channel width, ATR 14 aligns with Wilder's original ATR specification, good for position trading
Long ATR Periods (20+): Very smooth channel width, suitable for long-term trend-following
Length vs. ATR Length Relationship: Equal values (20/20) provide balanced responsiveness, longer ATR (20/14) gives more stable channel width, shorter ATR (20/10) is standard configuration, much shorter ATR (20/5) creates very dynamic channels.
Multiplier Parameter:
Controls channel width by setting ATR multiples:
Lower Values (1.0-1.5): Tighter channels with frequent price touches, more trading signals, higher false signal rate, better for range-bound and mean-reversion strategies
Standard Value (2.0 - Default): Chester Keltner's recommended setting, good balance between signal frequency and reliability, suitable for both trending and ranging strategies
Higher Values (2.5-3.0): Wider channels with less frequent touches, fewer but potentially higher-quality signals, better for strong trending markets
Market-Specific Optimization: High volatility markets (crypto, small-caps) use 2.5-3.0 multiplier, medium volatility markets (major forex, large-caps) use 2.0 multiplier, low volatility markets (bonds, utilities) use 1.5-2.0 multiplier.
MA Type Parameter (Middle Band):
Critical selection that determines trend identification characteristics:
EMA (Exponential Moving Average - Default): Standard Keltner Channel choice, Chester Keltner's original specification, emphasizes recent prices, faster response to trend changes, suitable for all timeframes
SMA (Simple Moving Average): Equal weighting of all data points, no directional bias, slower than EMA, better for ranging markets and mean-reversion
HMA (Hull Moving Average): Minimal lag with smooth output, excellent for fast trend identification, best for day trading and scalping
TEMA (Triple Exponential Moving Average): Advanced smoothing with reduced lag, responsive to trends while filtering noise, suitable for volatile markets
T3 (Tillson T3): Very smooth with minimal lag, excellent for established trend identification, suitable for position trading
KAMA (Kaufman Adaptive Moving Average): Automatically adjusts speed based on market efficiency, slow in ranging markets, fast in trends, suitable for markets with varying conditions
ATR MA Type Parameter:
Determines how Average True Range is smoothed, affecting channel width stability:
RMA (Wilder's Smoothing - Default): J. Welles Wilder's original ATR smoothing method, very smooth, slow to adapt to volatility changes, provides stable channel width
SMA (Simple Moving Average): Equal weighting, moderate smoothness, faster response to volatility changes than RMA, more dynamic channel width
EMA (Exponential Moving Average): Emphasizes recent volatility, quick adaptation to new volatility regimes, very responsive channel width changes
TEMA (Triple Exponential Moving Average): Smooth yet responsive, good balance for varying volatility, suitable for most trading styles
Parameter Combination Strategies:
Conservative Trend-Following: Length 30/ATR Length 20/Multiplier 2.5, MA Type EMA or TEMA/ATR MA Type RMA, smooth trend with stable wide channels, suitable for position trading
Standard Balanced Approach: Length 20/ATR Length 10/Multiplier 2.0, MA Type EMA/ATR MA Type RMA, classic Keltner Channel configuration, suitable for general purpose swing trading
Aggressive Day Trading: Length 10-15/ATR Length 5-7/Multiplier 1.5-2.0, MA Type HMA or EMA/ATR MA Type EMA or SMA, fast trend with dynamic channels, suitable for scalping and day trading
Breakout Specialist: Length 20-30/ATR Length 5-10/Multiplier 2.0, MA Type SMA or WMA/ATR MA Type EMA or SMA, stable trend with responsive channel width
Adaptive All-Conditions: Length 20/ATR Length 10/Multiplier 2.0, MA Type KAMA or FRAMA/ATR MA Type KAMA or TEMA, self-adjusting to market conditions
Offset Parameter:
Controls horizontal positioning of channels on chart. Positive values shift channels to the right (future) for visual projection, negative values shift left (past) for historical analysis, zero (default) aligns with current price bars for real-time signal analysis. Offset affects only visual display, not alert conditions or actual calculations.
📈 PERFORMANCE ANALYSIS & COMPETITIVE ADVANTAGES
Keltner Channel Enhanced provides improvements over standard implementations while maintaining proven effectiveness.
Response Characteristics:
Standard EMA/RMA Configuration: Moderate trend lag (approximately 0.4 × length periods), smooth and stable channel width from RMA smoothing, good balance for most market conditions
Fast HMA/EMA Configuration: Approximately 60% reduction in trend lag compared to EMA, responsive channel width from EMA ATR smoothing, suitable for quick trend changes and breakouts
Adaptive KAMA/KAMA Configuration: Variable lag based on market efficiency, automatic adjustment to trending vs. ranging conditions, self-optimizing behavior reduces manual intervention
Comparison with Traditional Keltner Channels:
Enhanced Version Advantages:
Dual Algorithm Flexibility: Independent MA selection for trend and volatility vs. fixed EMA/RMA, separate tuning of trend responsiveness and channel stability
Market Adaptation: Choose configurations optimized for specific instruments and conditions, customize for scalping, swing, or position trading preferences
Comprehensive Alerts: Enhanced alert system including channel expansion detection
Traditional Version Advantages:
Simplicity: Fewer parameters, easier to understand and implement
Standardization: Fixed EMA/RMA combination ensures consistency across users
Research Base: Decades of backtesting and research on standard configuration
When to Use Enhanced Version: Trading multiple instruments with different characteristics, switching between trending and ranging markets, employing different strategies, algorithm-based trading systems requiring customization, seeking optimization for specific trading style and timeframe.
When to Use Standard Version: Beginning traders learning Keltner Channel concepts, following published research or trading systems, preferring simplicity and standardization, wanting to avoid optimization and curve-fitting risks.
Performance Across Market Conditions:
Strong Trending Markets: EMA or HMA basis with RMA or TEMA ATR smoothing provides quicker trend identification, pullbacks to basis offer excellent entry opportunities
Choppy/Ranging Markets: SMA or WMA basis with RMA ATR smoothing and lower multipliers, channel bounce strategies work well, avoid false breakouts
Volatile Markets: KAMA or FRAMA with EMA or TEMA, adaptive algorithms excel by automatic adjustment, wider multipliers (2.5-3.0) accommodate large price swings
Low Volatility/Consolidation: Channels narrow significantly indicating consolidation, algorithm choice less impactful, focus on detecting channel width contraction for breakout preparation
Keltner Channel vs. Bollinger Bands - Usage Comparison:
Favor Keltner Channels When: Trend-following is primary strategy, trading volatile instruments with gaps, want ATR-based volatility measurement, prefer fewer higher-quality channel touches, seeking stable channel width during trends.
Favor Bollinger Bands When: Mean-reversion is primary strategy, trading instruments with limited gaps, want statistical framework based on standard deviation, need squeeze patterns for breakout identification, prefer more frequent trading opportunities.
Use Both Together: Bollinger Band squeeze + Keltner Channel breakout is powerful combination, price outside Bollinger Bands but inside Keltner Channels indicates moderate signal, price outside both indicates very strong signal, Bollinger Bands for entries and Keltner Channels for trend confirmation.
Limitations and Considerations:
General Limitations:
Lagging Indicator: All moving averages lag price, even with reduced-lag algorithms
Trend-Dependent: Works best in trending markets, less effective in choppy conditions
No Direction Prediction: Indicates volatility and deviation, not future direction, requires confirmation
Enhanced Version Specific Considerations:
Optimization Risk: More parameters increase risk of curve-fitting historical data
Complexity: Additional choices may overwhelm beginning traders
Backtesting Challenges: Different algorithms produce different historical results
Mitigation Strategies:
Use Confirmation: Combine with momentum indicators (RSI, MACD), volume, or price action
Test Parameter Robustness: Ensure parameters work across range of values, not just optimized ones
Multi-Timeframe Analysis: Confirm signals across different timeframes
Proper Risk Management: Use appropriate position sizing and stops
Start Simple: Begin with standard EMA/RMA before exploring alternatives
Optimal Usage Recommendations:
For Maximum Effectiveness:
Start with standard EMA/RMA configuration to understand classic behavior
Experiment with alternatives on demo account or paper trading
Match algorithm combination to market condition and trading style
Use channel width analysis to identify market phases
Combine with complementary indicators for confirmation
Implement strict risk management using ATR-based position sizing
Focus on high-quality setups rather than trading every signal
Respect the trend: trade with basis direction for higher probability
Complementary Indicators:
RSI or Stochastic: Confirm momentum at channel extremes
MACD: Confirm trend direction and momentum shifts
Volume: Validate breakouts and trend strength
ADX: Measure trend strength, avoid Keltner signals in weak trends
Support/Resistance: Combine with traditional levels for high-probability setups
Bollinger Bands: Use together for enhanced breakout and volatility analysis
USAGE NOTES
This indicator is designed for technical analysis and educational purposes. Keltner Channel Enhanced has limitations and should not be used as the sole basis for trading decisions. While the flexible moving average selection for both trend and volatility components provides valuable adaptability across different market conditions, algorithm performance varies with market conditions, and past characteristics do not guarantee future results.
Key considerations:
Always use multiple forms of analysis and confirmation before entering trades
Backtest any parameter combination thoroughly before live trading
Be aware that optimization can lead to curve-fitting if not done carefully
Start with standard EMA/RMA settings and adjust only when specific conditions warrant
Understand that no moving average algorithm can eliminate lag entirely
Consider market regime (trending, ranging, volatile) when selecting parameters
Use ATR-based position sizing and risk management on every trade
Keltner Channels work best in trending markets, less effective in choppy conditions
Respect the trend direction indicated by price position relative to basis line
The enhanced flexibility of dual algorithm selection provides powerful tools for adaptation but requires responsible use, thorough understanding of how different algorithms behave under various market conditions, and disciplined risk management.
Crypto Mean Reversion System (Pullback & Bounce)Mean Reversion Theory
The indicator operates on the principle that extreme price movements in crypto markets tend to revert toward their mean over time.
Consider this a valuable aid for your dollar-cost averaging strategy, effectively identifying periods ripe for accumulating or divesting from the market.
Research shows that:
Short-term momentum often persists briefly after surges, but extreme moves trigger mean reversion
Sharp drops exhibit strong bounce patterns, especially after capitulation events
Longer timeframes (7-day) show stronger mean reversion tendencies than shorter ones (1-day)
Timeframe Analysis
1-Day Timeframe
Pullback probabilities: 45-85% depending on surge magnitude
Bounce probabilities: 55-95% depending on drop severity
Captures immediate overextension and panic selling
More volatile but faster signal generation
7-Day Timeframe
Pullback probabilities: 50-90% (higher confidence)
Bounce probabilities: 50-90% (slightly moderated)
Filters out noise and identifies sustained trends
Stronger mean reversion signals due to extended moves
Probability Tiers
Pullback Risk (After Surges)
Moderate (45-60%): 5-10% surge → Expected -3% to -12% pullback
High (55-70%): 10-15% surge → Expected -5% to -18% pullback
Very High (65-80%): 15-25% surge → Expected -10% to -25% pullback
Extreme (75-90%): 25%+ surge → Expected -15% to -40% pullback
Bounce Probability (After Drops)
Moderate (55-65%): -5% to -10% drop → Expected +3% to +10% bounce
High (65-75%): -10% to -15% drop → Expected +6% to +18% bounce
Very High (75-85%): -15% to -25% drop → Expected +10% to +30% bounce
Extreme (85-95%): -25%+ drop → Expected +18% to +45% bounce
The probability ranges are derived from:
Crypto volatility patterns: Higher volatility than traditional assets creates stronger mean reversion
Behavioral finance: Extreme moves trigger emotional trading (FOMO/panic) that reverses
Historical backtesting: Probability estimates based on typical reversion patterns in crypto markets
Timeframe correlation: Longer timeframes show increased reversion probability due to reduced noise
Key Features
Dual-direction signals: Identifies both overbought (pullback) and oversold (bounce) conditions
Multi-timeframe confirmation: 1D and 7D analysis for different trading styles
Customizable thresholds: Adjust sensitivity based on asset volatility
Visual alerts: Color-coded labels and table for quick assessment
Risk categorization: Clear severity levels for position sizing
LA - MACD EMA BandsOverview of the "LA - MACD EMA Bands" Indicator
For Better view, use this indicator along with "LA - EMA Bands with MTF Dashboard"
The "LA - MACD EMA Bands" is a custom technical indicator written in Pine Script v6 for TradingView. It builds on the traditional Moving Average Convergence Divergence (MACD) oscillator by incorporating additional smoothing via Exponential Moving Averages (EMAs) and Bollinger Bands (BB) applied directly to the MACD line. This creates a multi-layered momentum and volatility tool displayed in a separate pane below the price chart (not overlaid on the price itself).
The indicator allows for customization, such as selecting a different timeframe (for multi-timeframe analysis) and adjusting period lengths. It fetches data from the specified timeframe using request.security with lookahead enabled to avoid repainting issues. The core idea is to provide insights into momentum trends, crossovers, and volatility expansions/contractions in the MACD's behavior, making it suitable for identifying potential trend reversals, continuations, or ranging markets.
Unlike a standard MACD, which focuses primarily on momentum via a single line, signal line, and histogram, this version emphasizes longer-term smoothing and volatility boundaries. It uses visual fills between lines to highlight bullish/bearish conditions, aiding quick interpretation. Below, I'll break down each component, its calculation, visual representation, and practical uses.
Detailed Breakdown of Each Component and Its Uses
MACD Line (Blue Line, Labeled 'MACD Line')
Calculation: This is the core MACD value, computed as the difference between a fast EMA (default length 12) and a slow EMA (default length 144) of the input source (default: close price). The EMAs are calculated on data from the selected timeframe.
Visuals: Plotted as a solid blue line.
Uses:
Measures momentum: When above zero, it indicates bullish momentum (prices rising faster in the short term); below zero, bearish momentum.
Trend identification: Rising MACD suggests strengthening uptrends; falling suggests downtrends.
Divergence spotting: Compare with price action—e.g., if price makes higher highs but MACD makes lower highs, it signals potential bearish reversal (and vice versa for bullish divergence).
In trading: Often used for entry/exit signals when crossing the zero line or other lines in the indicator.
MACD EMA (Red Line, Labeled 'MACD EMA')
Calculation: A 12-period EMA applied to the MACD Line itself.
Visuals: Plotted as a solid red line.
Uses:
Acts as a signal line for the MACD, smoothing out short-term noise.
Crossover signals: When the MACD Line crosses above the MACD EMA, it can signal a bullish buy opportunity; crossing below suggests a bearish sell.
Trend confirmation: Helps filter false signals in choppy markets by requiring confirmation from this slower-moving average.
In trading: Useful for momentum-based strategies, like entering trades on crossovers in alignment with the overall trend.
Fill Between MACD Line and MACD EMA (Green/Red Shaded Area, Titled 'MACD Fill')
Calculation: The area between the MACD Line and MACD EMA is filled with color based on their relative positions.
Color Logic: Green (with 57% transparency) if MACD Line > MACD EMA (bullish); red if MACD Line < MACD EMA (bearish).
Visuals: Semi-transparent fill for easy visibility without overwhelming the lines.
Uses:
Quick visual cue for momentum shifts: Green areas highlight bullish phases; red for bearish.
Enhances readability: Makes crossovers more apparent at a glance, especially in fast-moving markets.
In trading: Can be used to time entries/exits or as a filter (e.g., only take long trades in green zones).
Bollinger Bands on MACD (BB Upper: Black Dotted, BB Basis: Maroon Dotted, BB Lower: Black Dotted)
Calculation: Bollinger Bands applied to the MACD Line.
BB Basis: 144-period EMA of the MACD Line.
BB Standard Deviation: 144-period stdev of the MACD Line.
BB Upper: BB Basis + (2.0 * BB Stdev)
BB Lower: BB Basis - (2.0 * BB Stdev)
Visuals: Upper and lower bands as black dotted lines; basis as maroon dotted
Uses:
Volatility measurement: Bands expand during high momentum volatility (strong trends) and contract during low volatility (ranging or consolidation).
Mean reversion: When MACD Line touches or exceeds the upper band, it may signal overbought conditions (potential sell); lower band for oversold (potential buy).
Squeeze detection: Narrow bands (squeeze) often precede big moves—watch for breakouts.
In trading: Combines momentum with volatility; e.g., a MACD Line breakout above the upper band could confirm a strong uptrend.
BB Basis EMA (Green Line, Labeled 'BB Basis EMA')
Calculation: A 72-period EMA applied to the BB Basis (which is already a 144-period EMA of the MACD Line).
Visuals: Solid green line.
Uses:
Further smoothing: Provides a longer-term view of the MACD's average behavior, reducing noise from the BB Basis.
Trend direction: Acts as a baseline for the BB system—above it suggests bullish bias in momentum volatility; below, bearish.
Crossover with BB Basis: Can signal shifts in volatility trends (e.g., BB Basis crossing above BB Basis EMA indicates increasing bullish volatility).
In trading: Useful for confirming longer-term trends or as a filter for BB-based signals.
Fill Between BB Basis and BB Basis EMA (Gray Shaded Area, Titled 'BB Basis Fill')
Calculation: The area between BB Basis and BB Basis EMA is filled.
Color Logic: Currently set to a constant semi-transparent gray regardless of position.
Visuals: Semi-transparent gray fill.
Uses:
Highlights divergence: Shows when the shorter-term BB Basis deviates from its longer-term EMA, indicating potential volatility shifts.
Visual aid for crossovers: Makes it easier to spot when BB Basis crosses its EMA.
In trading: Could be used to identify overextensions in volatility (e.g., wide gray areas might signal impending mean reversion).
Zero Line (Black Horizontal Line)
Calculation: A simple horizontal line at y=0.
Visuals: Solid black line.
Uses:
Reference point: Divides bullish (above) from bearish (below) territory for all MACD-related lines.
In trading: Crossovers of the zero line by the MACD Line or BB Basis can signal major trend changes.
How It Differs from a Normal MACD
A standard MACD (e.g., the built-in TradingView MACD with defaults 12/26/9) consists of:
MACD Line: EMA(12) - EMA(26).
Signal Line: EMA(MACD Line, 9).
Histogram: MACD Line - Signal Line (bars showing convergence/divergence).
Key differences in "LA - MACD EMA Bands":
Periods: Uses a much longer slow EMA (144 vs. 26), making it more sensitive to long-term trends but less reactive to short-term price action. The MACD EMA is 12 periods (vs. 9), further emphasizing smoothing.
No Histogram: Replaces the histogram with fills and bands for visual emphasis on crossovers and volatility.
Added Bollinger Bands: Applies BB directly to the MACD Line (with a long 144-period basis), introducing volatility analysis absent in standard MACD. This helps detect "squeezes" or expansions in momentum.
Additional EMA Layer: The BB Basis EMA (72-period) adds a secondary smoothing level to the BB system, providing a hierarchical view of momentum (short-term MACD → mid-term BB → long-term EMA).
Multi-Timeframe Support: Built-in option for higher timeframes, unlike basic MACD.
Focus: Standard MACD is purely momentum-focused; this version integrates volatility (via BB) and multi-layer smoothing, making it better for trend-following in volatile markets but potentially overwhelming for beginners.
Overall, this indicator transforms the MACD from a simple oscillator into a comprehensive momentum-volatility hybrid, reducing false signals in trending markets but introducing lag.
Overall Pros and Cons
Pros:
Enhanced Visualization: Fills and bands make trends, crossovers, and volatility easier to spot without needing multiple indicators.
Reduced Noise: Longer periods (144, 72) smooth out whipsaws, ideal for swing or position trading in trending assets like stocks or forex.
Volatility Integration: BB adds a dimension not in standard MACD, helping identify breakouts or consolidations.
Customizable: Inputs for timeframes and lengths allow adaptation to different assets/timeframes.
Multi-Layered Insights: Combines short-term signals (MACD crossovers) with long-term confirmation (BB EMA), improving signal reliability.
Cons:
Lagging Nature: Long periods (e.g., 144) delay signals, missing early entries in fast markets or leading to late exits.
Complexity: Multiple lines and fills can clutter the pane, requiring experience to interpret; beginners might misread it.
Potential Overfitting: Custom periods (12/144/12/144/72) may work well on historical data but underperform in live trading without backtesting.
No Built-in Alerts/Signals: Relies on visual interpretation; users must manually set alerts for crossovers.
Resource Intensive: On lower timeframes or with lookahead, it might slow chart loading on Trading View.
This indicator shines in strategies combining momentum and volatility, like trend-following with BB squeezes, but test it on your assets (e.g., via backtesting) to ensure it fits your style.
For Better view, use this indicator along with "LA - EMA Bands with MTF Dashboard"
Alt buy signal 1H Entry + 4H Confirm (MACD + Stoch RSI + HMA)This indicator is a multi-timeframe (MTF) analysis tool designed for the ALT trading , capturing entry signals on the 1-hour (1H) timeframe and confirming trends on the 4-hour (4H) timeframe. It combines MACD, Stoch RSI, and Hull Moving Average (HMA) to identify precise buy opportunities, particularly at reversal points after a downtrend or during trend shifts. It visually marks both past and current BUY signals for easy reference.
Key Features:
1H Entry Signal (Early Ping): Triggers on a MACD golden cross (below 0) combined with a Stoch RSI oversold cross (below 20), offering an initial buy opportunity.
4H Trend Confirmation (Entry Ready): Validates the trend with a 4H MACD histogram rising (in negative territory) or a golden cross, plus a Stoch RSI turn-up (above 30).
Past BUY Display: Labels past data points where these conditions were met as "1H BUY" or "FULL BUY," facilitating backtesting.
HMA Filter: Optional HMA(16) to confirm price breakouts, enhancing trend validation.
Purpose: Ideal for short-term scalping and swing trading. Supports a two-step strategy: initial partial entry on 1H signals, followed by additional entry on 4H confirmation.
Usage Instructions
Installation: Add the indicator to an IMX/USDT 1H chart on TradingView.
Signal Interpretation:
lime "1H BUY": 1H conditions met, consider initial entry (stop-loss: 3-5% below recent low).
green "FULL BUY": 1H+4H conditions met, confirm trend for additional entry (take-profit: 10% below recent swing high).
Customization: Adjust TF (1H/4H), MACD/Stoch RSI parameters, and HMA usage via the input settings.
Alert Setup: Enable alerts for "ENTRY READY" (1H+4H) or "EARLY PING" (1H only) conditions.
Advantages
Accuracy: Reduces false signals by combining MACD golden cross below 0 with Stoch RSI oversold conditions.
Dual Confirmation: 1H for quick timing and 4H for trend validation, improving risk management.
Visualization: Past BUY points enable easy backtesting and pattern recognition.
Flexibility: 4H confirmation mode adjustable (histogram rise or golden cross).
Limitations
Timeframe Dependency: Optimized for 1H charts; may not work on other timeframes.
Market Conditions: Potential whipsaws in sideways markets; additional filters (e.g., RSI > 50) recommended.
Manual Management: Stop-loss and take-profit require user discretion.
Basic Odds Enhancer: Supply Zone for ShortsHow to Use/Adjust:
On your chart, it marks bars where a 20-bar high coincides with high volume and bearish divergence—flag these as supply zones.
Tweak supply_threshold to 2.0 for stricter volume (fewer but stronger signals).
For zones, manually draw rectangles around the flagged area (use Drawing Tools > Rectangle).
Backtest: Apply to historical data (e.g., EUR/USD 4H) and check win rate with shorts on retests.
This setup typically yields 2-5 signals per week on major pairs, depending on volatility. Test on a demo account, and combine with market context (e.g., avoid shorts in strong uptrends).
Dynamic Equity Allocation Model"Cash is Trash"? Not Always. Here's Why Science Beats Guesswork.
Every retail trader knows the frustration: you draw support and resistance lines, you spot patterns, you follow market gurus on social media—and still, when the next bear market hits, your portfolio bleeds red. Meanwhile, institutional investors seem to navigate market turbulence with ease, preserving capital when markets crash and participating when they rally. What's their secret?
The answer isn't insider information or access to exotic derivatives. It's systematic, scientifically validated decision-making. While most retail traders rely on subjective chart analysis and emotional reactions, professional portfolio managers use quantitative models that remove emotion from the equation and process multiple streams of market information simultaneously.
This document presents exactly such a system—not a proprietary black box available only to hedge funds, but a fully transparent, academically grounded framework that any serious investor can understand and apply. The Dynamic Equity Allocation Model (DEAM) synthesizes decades of financial research from Nobel laureates and leading academics into a practical tool for tactical asset allocation.
Stop drawing colorful lines on your chart and start thinking like a quant. This isn't about predicting where the market goes next week—it's about systematically adjusting your risk exposure based on what the data actually tells you. When valuations scream danger, when volatility spikes, when credit markets freeze, when multiple warning signals align—that's when cash isn't trash. That's when cash saves your portfolio.
The irony of "cash is trash" rhetoric is that it ignores timing. Yes, being 100% cash for decades would be disastrous. But being 100% equities through every crisis is equally foolish. The sophisticated approach is dynamic: aggressive when conditions favor risk-taking, defensive when they don't. This model shows you how to make that decision systematically, not emotionally.
Whether you're managing your own retirement portfolio or seeking to understand how institutional allocation strategies work, this comprehensive analysis provides the theoretical foundation, mathematical implementation, and practical guidance to elevate your investment approach from amateur to professional.
The choice is yours: keep hoping your chart patterns work out, or start using the same quantitative methods that professionals rely on. The tools are here. The research is cited. The methodology is explained. All you need to do is read, understand, and apply.
The Dynamic Equity Allocation Model (DEAM) is a quantitative framework for systematic allocation between equities and cash, grounded in modern portfolio theory and empirical market research. The model integrates five scientifically validated dimensions of market analysis—market regime, risk metrics, valuation, sentiment, and macroeconomic conditions—to generate dynamic allocation recommendations ranging from 0% to 100% equity exposure. This work documents the theoretical foundations, mathematical implementation, and practical application of this multi-factor approach.
1. Introduction and Theoretical Background
1.1 The Limitations of Static Portfolio Allocation
Traditional portfolio theory, as formulated by Markowitz (1952) in his seminal work "Portfolio Selection," assumes an optimal static allocation where investors distribute their wealth across asset classes according to their risk aversion. This approach rests on the assumption that returns and risks remain constant over time. However, empirical research demonstrates that this assumption does not hold in reality. Fama and French (1989) showed that expected returns vary over time and correlate with macroeconomic variables such as the spread between long-term and short-term interest rates. Campbell and Shiller (1988) demonstrated that the price-earnings ratio possesses predictive power for future stock returns, providing a foundation for dynamic allocation strategies.
The academic literature on tactical asset allocation has evolved considerably over recent decades. Ilmanen (2011) argues in "Expected Returns" that investors can improve their risk-adjusted returns by considering valuation levels, business cycles, and market sentiment. The Dynamic Equity Allocation Model presented here builds on this research tradition and operationalizes these insights into a practically applicable allocation framework.
1.2 Multi-Factor Approaches in Asset Allocation
Modern financial research has shown that different factors capture distinct aspects of market dynamics and together provide a more robust picture of market conditions than individual indicators. Ross (1976) developed the Arbitrage Pricing Theory, a model that employs multiple factors to explain security returns. Following this multi-factor philosophy, DEAM integrates five complementary analytical dimensions, each tapping different information sources and collectively enabling comprehensive market understanding.
2. Data Foundation and Data Quality
2.1 Data Sources Used
The model draws its data exclusively from publicly available market data via the TradingView platform. This transparency and accessibility is a significant advantage over proprietary models that rely on non-public data. The data foundation encompasses several categories of market information, each capturing specific aspects of market dynamics.
First, price data for the S&P 500 Index is obtained through the SPDR S&P 500 ETF (ticker: SPY). The use of a highly liquid ETF instead of the index itself has practical reasons, as ETF data is available in real-time and reflects actual tradability. In addition to closing prices, high, low, and volume data are captured, which are required for calculating advanced volatility measures.
Fundamental corporate metrics are retrieved via TradingView's Financial Data API. These include earnings per share, price-to-earnings ratio, return on equity, debt-to-equity ratio, dividend yield, and share buyback yield. Cochrane (2011) emphasizes in "Presidential Address: Discount Rates" the central importance of valuation metrics for forecasting future returns, making these fundamental data a cornerstone of the model.
Volatility indicators are represented by the CBOE Volatility Index (VIX) and related metrics. The VIX, often referred to as the market's "fear gauge," measures the implied volatility of S&P 500 index options and serves as a proxy for market participants' risk perception. Whaley (2000) describes in "The Investor Fear Gauge" the construction and interpretation of the VIX and its use as a sentiment indicator.
Macroeconomic data includes yield curve information through US Treasury bonds of various maturities and credit risk premiums through the spread between high-yield bonds and risk-free government bonds. These variables capture the macroeconomic conditions and financing conditions relevant for equity valuation. Estrella and Hardouvelis (1991) showed that the shape of the yield curve has predictive power for future economic activity, justifying the inclusion of these data.
2.2 Handling Missing Data
A practical problem when working with financial data is dealing with missing or unavailable values. The model implements a fallback system where a plausible historical average value is stored for each fundamental metric. When current data is unavailable for a specific point in time, this fallback value is used. This approach ensures that the model remains functional even during temporary data outages and avoids systematic biases from missing data. The use of average values as fallback is conservative, as it generates neither overly optimistic nor pessimistic signals.
3. Component 1: Market Regime Detection
3.1 The Concept of Market Regimes
The idea that financial markets exist in different "regimes" or states that differ in their statistical properties has a long tradition in financial science. Hamilton (1989) developed regime-switching models that allow distinguishing between different market states with different return and volatility characteristics. The practical application of this theory consists of identifying the current market state and adjusting portfolio allocation accordingly.
DEAM classifies market regimes using a scoring system that considers three main dimensions: trend strength, volatility level, and drawdown depth. This multidimensional view is more robust than focusing on individual indicators, as it captures various facets of market dynamics. Classification occurs into six distinct regimes: Strong Bull, Bull Market, Neutral, Correction, Bear Market, and Crisis.
3.2 Trend Analysis Through Moving Averages
Moving averages are among the oldest and most widely used technical indicators and have also received attention in academic literature. Brock, Lakonishok, and LeBaron (1992) examined in "Simple Technical Trading Rules and the Stochastic Properties of Stock Returns" the profitability of trading rules based on moving averages and found evidence for their predictive power, although later studies questioned the robustness of these results when considering transaction costs.
The model calculates three moving averages with different time windows: a 20-day average (approximately one trading month), a 50-day average (approximately one quarter), and a 200-day average (approximately one trading year). The relationship of the current price to these averages and the relationship of the averages to each other provide information about trend strength and direction. When the price trades above all three averages and the short-term average is above the long-term, this indicates an established uptrend. The model assigns points based on these constellations, with longer-term trends weighted more heavily as they are considered more persistent.
3.3 Volatility Regimes
Volatility, understood as the standard deviation of returns, is a central concept of financial theory and serves as the primary risk measure. However, research has shown that volatility is not constant but changes over time and occurs in clusters—a phenomenon first documented by Mandelbrot (1963) and later formalized through ARCH and GARCH models (Engle, 1982; Bollerslev, 1986).
DEAM calculates volatility not only through the classic method of return standard deviation but also uses more advanced estimators such as the Parkinson estimator and the Garman-Klass estimator. These methods utilize intraday information (high and low prices) and are more efficient than simple close-to-close volatility estimators. The Parkinson estimator (Parkinson, 1980) uses the range between high and low of a trading day and is based on the recognition that this information reveals more about true volatility than just the closing price difference. The Garman-Klass estimator (Garman and Klass, 1980) extends this approach by additionally considering opening and closing prices.
The calculated volatility is annualized by multiplying it by the square root of 252 (the average number of trading days per year), enabling standardized comparability. The model compares current volatility with the VIX, the implied volatility from option prices. A low VIX (below 15) signals market comfort and increases the regime score, while a high VIX (above 35) indicates market stress and reduces the score. This interpretation follows the empirical observation that elevated volatility is typically associated with falling markets (Schwert, 1989).
3.4 Drawdown Analysis
A drawdown refers to the percentage decline from the highest point (peak) to the lowest point (trough) during a specific period. This metric is psychologically significant for investors as it represents the maximum loss experienced. Calmar (1991) developed the Calmar Ratio, which relates return to maximum drawdown, underscoring the practical relevance of this metric.
The model calculates current drawdown as the percentage distance from the highest price of the last 252 trading days (one year). A drawdown below 3% is considered negligible and maximally increases the regime score. As drawdown increases, the score decreases progressively, with drawdowns above 20% classified as severe and indicating a crisis or bear market regime. These thresholds are empirically motivated by historical market cycles, in which corrections typically encompassed 5-10% drawdowns, bear markets 20-30%, and crises over 30%.
3.5 Regime Classification
Final regime classification occurs through aggregation of scores from trend (40% weight), volatility (30%), and drawdown (30%). The higher weighting of trend reflects the empirical observation that trend-following strategies have historically delivered robust results (Moskowitz, Ooi, and Pedersen, 2012). A total score above 80 signals a strong bull market with established uptrend, low volatility, and minimal losses. At a score below 10, a crisis situation exists requiring defensive positioning. The six regime categories enable a differentiated allocation strategy that not only distinguishes binarily between bullish and bearish but allows gradual gradations.
4. Component 2: Risk-Based Allocation
4.1 Volatility Targeting as Risk Management Approach
The concept of volatility targeting is based on the idea that investors should maximize not returns but risk-adjusted returns. Sharpe (1966, 1994) defined with the Sharpe Ratio the fundamental concept of return per unit of risk, measured as volatility. Volatility targeting goes a step further and adjusts portfolio allocation to achieve constant target volatility. This means that in times of low market volatility, equity allocation is increased, and in times of high volatility, it is reduced.
Moreira and Muir (2017) showed in "Volatility-Managed Portfolios" that strategies that adjust their exposure based on volatility forecasts achieve higher Sharpe Ratios than passive buy-and-hold strategies. DEAM implements this principle by defining a target portfolio volatility (default 12% annualized) and adjusting equity allocation to achieve it. The mathematical foundation is simple: if market volatility is 20% and target volatility is 12%, equity allocation should be 60% (12/20 = 0.6), with the remaining 40% held in cash with zero volatility.
4.2 Market Volatility Calculation
Estimating current market volatility is central to the risk-based allocation approach. The model uses several volatility estimators in parallel and selects the higher value between traditional close-to-close volatility and the Parkinson estimator. This conservative choice ensures the model does not underestimate true volatility, which could lead to excessive risk exposure.
Traditional volatility calculation uses logarithmic returns, as these have mathematically advantageous properties (additive linkage over multiple periods). The logarithmic return is calculated as ln(P_t / P_{t-1}), where P_t is the price at time t. The standard deviation of these returns over a rolling 20-trading-day window is then multiplied by √252 to obtain annualized volatility. This annualization is based on the assumption of independently identically distributed returns, which is an idealization but widely accepted in practice.
The Parkinson estimator uses additional information from the trading range (High minus Low) of each day. The formula is: σ_P = (1/√(4ln2)) × √(1/n × Σln²(H_i/L_i)) × √252, where H_i and L_i are high and low prices. Under ideal conditions, this estimator is approximately five times more efficient than the close-to-close estimator (Parkinson, 1980), as it uses more information per observation.
4.3 Drawdown-Based Position Size Adjustment
In addition to volatility targeting, the model implements drawdown-based risk control. The logic is that deep market declines often signal further losses and therefore justify exposure reduction. This behavior corresponds with the concept of path-dependent risk tolerance: investors who have already suffered losses are typically less willing to take additional risk (Kahneman and Tversky, 1979).
The model defines a maximum portfolio drawdown as a target parameter (default 15%). Since portfolio volatility and portfolio drawdown are proportional to equity allocation (assuming cash has neither volatility nor drawdown), allocation-based control is possible. For example, if the market exhibits a 25% drawdown and target portfolio drawdown is 15%, equity allocation should be at most 60% (15/25).
4.4 Dynamic Risk Adjustment
An advanced feature of DEAM is dynamic adjustment of risk-based allocation through a feedback mechanism. The model continuously estimates what actual portfolio volatility and portfolio drawdown would result at the current allocation. If risk utilization (ratio of actual to target risk) exceeds 1.0, allocation is reduced by an adjustment factor that grows exponentially with overutilization. This implements a form of dynamic feedback that avoids overexposure.
Mathematically, a risk adjustment factor r_adjust is calculated: if risk utilization u > 1, then r_adjust = exp(-0.5 × (u - 1)). This exponential function ensures that moderate overutilization is gently corrected, while strong overutilization triggers drastic reductions. The factor 0.5 in the exponent was empirically calibrated to achieve a balanced ratio between sensitivity and stability.
5. Component 3: Valuation Analysis
5.1 Theoretical Foundations of Fundamental Valuation
DEAM's valuation component is based on the fundamental premise that the intrinsic value of a security is determined by its future cash flows and that deviations between market price and intrinsic value are eventually corrected. Graham and Dodd (1934) established in "Security Analysis" the basic principles of fundamental analysis that remain relevant today. Translated into modern portfolio context, this means that markets with high valuation metrics (high price-earnings ratios) should have lower expected returns than cheaply valued markets.
Campbell and Shiller (1988) developed the Cyclically Adjusted P/E Ratio (CAPE), which smooths earnings over a full business cycle. Their empirical analysis showed that this ratio has significant predictive power for 10-year returns. Asness, Moskowitz, and Pedersen (2013) demonstrated in "Value and Momentum Everywhere" that value effects exist not only in individual stocks but also in asset classes and markets.
5.2 Equity Risk Premium as Central Valuation Metric
The Equity Risk Premium (ERP) is defined as the expected excess return of stocks over risk-free government bonds. It is the theoretical heart of valuation analysis, as it represents the compensation investors demand for bearing equity risk. Damodaran (2012) discusses in "Equity Risk Premiums: Determinants, Estimation and Implications" various methods for ERP estimation.
DEAM calculates ERP not through a single method but combines four complementary approaches with different weights. This multi-method strategy increases estimation robustness and avoids dependence on single, potentially erroneous inputs.
The first method (35% weight) uses earnings yield, calculated as 1/P/E or directly from operating earnings data, and subtracts the 10-year Treasury yield. This method follows Fed Model logic (Yardeni, 2003), although this model has theoretical weaknesses as it does not consistently treat inflation (Asness, 2003).
The second method (30% weight) extends earnings yield by share buyback yield. Share buybacks are a form of capital return to shareholders and increase value per share. Boudoukh et al. (2007) showed in "The Total Shareholder Yield" that the sum of dividend yield and buyback yield is a better predictor of future returns than dividend yield alone.
The third method (20% weight) implements the Gordon Growth Model (Gordon, 1962), which models stock value as the sum of discounted future dividends. Under constant growth g assumption: Expected Return = Dividend Yield + g. The model estimates sustainable growth as g = ROE × (1 - Payout Ratio), where ROE is return on equity and payout ratio is the ratio of dividends to earnings. This formula follows from equity theory: unretained earnings are reinvested at ROE and generate additional earnings growth.
The fourth method (15% weight) combines total shareholder yield (Dividend + Buybacks) with implied growth derived from revenue growth. This method considers that companies with strong revenue growth should generate higher future earnings, even if current valuations do not yet fully reflect this.
The final ERP is the weighted average of these four methods. A high ERP (above 4%) signals attractive valuations and increases the valuation score to 95 out of 100 possible points. A negative ERP, where stocks have lower expected returns than bonds, results in a minimal score of 10.
5.3 Quality Adjustments to Valuation
Valuation metrics alone can be misleading if not interpreted in the context of company quality. A company with a low P/E may be cheap or fundamentally problematic. The model therefore implements quality adjustments based on growth, profitability, and capital structure.
Revenue growth above 10% annually adds 10 points to the valuation score, moderate growth above 5% adds 5 points. This adjustment reflects that growth has independent value (Modigliani and Miller, 1961, extended by later growth theory). Net margin above 15% signals pricing power and operational efficiency and increases the score by 5 points, while low margins below 8% indicate competitive pressure and subtract 5 points.
Return on equity (ROE) above 20% characterizes outstanding capital efficiency and increases the score by 5 points. Piotroski (2000) showed in "Value Investing: The Use of Historical Financial Statement Information" that fundamental quality signals such as high ROE can improve the performance of value strategies.
Capital structure is evaluated through the debt-to-equity ratio. A conservative ratio below 1.0 multiplies the valuation score by 1.2, while high leverage above 2.0 applies a multiplier of 0.8. This adjustment reflects that high debt constrains financial flexibility and can become problematic in crisis times (Korteweg, 2010).
6. Component 4: Sentiment Analysis
6.1 The Role of Sentiment in Financial Markets
Investor sentiment, defined as the collective psychological attitude of market participants, influences asset prices independently of fundamental data. Baker and Wurgler (2006, 2007) developed a sentiment index and showed that periods of high sentiment are followed by overvaluations that later correct. This insight justifies integrating a sentiment component into allocation decisions.
Sentiment is difficult to measure directly but can be proxied through market indicators. The VIX is the most widely used sentiment indicator, as it aggregates implied volatility from option prices. High VIX values reflect elevated uncertainty and risk aversion, while low values signal market comfort. Whaley (2009) refers to the VIX as the "Investor Fear Gauge" and documents its role as a contrarian indicator: extremely high values typically occur at market bottoms, while low values occur at tops.
6.2 VIX-Based Sentiment Assessment
DEAM uses statistical normalization of the VIX by calculating the Z-score: z = (VIX_current - VIX_average) / VIX_standard_deviation. The Z-score indicates how many standard deviations the current VIX is from the historical average. This approach is more robust than absolute thresholds, as it adapts to the average volatility level, which can vary over longer periods.
A Z-score below -1.5 (VIX is 1.5 standard deviations below average) signals exceptionally low risk perception and adds 40 points to the sentiment score. This may seem counterintuitive—shouldn't low fear be bullish? However, the logic follows the contrarian principle: when no one is afraid, everyone is already invested, and there is limited further upside potential (Zweig, 1973). Conversely, a Z-score above 1.5 (extreme fear) adds -40 points, reflecting market panic but simultaneously suggesting potential buying opportunities.
6.3 VIX Term Structure as Sentiment Signal
The VIX term structure provides additional sentiment information. Normally, the VIX trades in contango, meaning longer-term VIX futures have higher prices than short-term. This reflects that short-term volatility is currently known, while long-term volatility is more uncertain and carries a risk premium. The model compares the VIX with VIX9D (9-day volatility) and identifies backwardation (VIX > 1.05 × VIX9D) and steep backwardation (VIX > 1.15 × VIX9D).
Backwardation occurs when short-term implied volatility is higher than longer-term, which typically happens during market stress. Investors anticipate immediate turbulence but expect calming. Psychologically, this reflects acute fear. The model subtracts 15 points for backwardation and 30 for steep backwardation, as these constellations signal elevated risk. Simon and Wiggins (2001) analyzed the VIX futures curve and showed that backwardation is associated with market declines.
6.4 Safe-Haven Flows
During crisis times, investors flee from risky assets into safe havens: gold, US dollar, and Japanese yen. This "flight to quality" is a sentiment signal. The model calculates the performance of these assets relative to stocks over the last 20 trading days. When gold or the dollar strongly rise while stocks fall, this indicates elevated risk aversion.
The safe-haven component is calculated as the difference between safe-haven performance and stock performance. Positive values (safe havens outperform) subtract up to 20 points from the sentiment score, negative values (stocks outperform) add up to 10 points. The asymmetric treatment (larger deduction for risk-off than bonus for risk-on) reflects that risk-off movements are typically sharper and more informative than risk-on phases.
Baur and Lucey (2010) examined safe-haven properties of gold and showed that gold indeed exhibits negative correlation with stocks during extreme market movements, confirming its role as crisis protection.
7. Component 5: Macroeconomic Analysis
7.1 The Yield Curve as Economic Indicator
The yield curve, represented as yields of government bonds of various maturities, contains aggregated expectations about future interest rates, inflation, and economic growth. The slope of the yield curve has remarkable predictive power for recessions. Estrella and Mishkin (1998) showed that an inverted yield curve (short-term rates higher than long-term) predicts recessions with high reliability. This is because inverted curves reflect restrictive monetary policy: the central bank raises short-term rates to combat inflation, dampening economic activity.
DEAM calculates two spread measures: the 2-year-minus-10-year spread and the 3-month-minus-10-year spread. A steep, positive curve (spreads above 1.5% and 2% respectively) signals healthy growth expectations and generates the maximum yield curve score of 40 points. A flat curve (spreads near zero) reduces the score to 20 points. An inverted curve (negative spreads) is particularly alarming and results in only 10 points.
The choice of two different spreads increases analysis robustness. The 2-10 spread is most established in academic literature, while the 3M-10Y spread is often considered more sensitive, as the 3-month rate directly reflects current monetary policy (Ang, Piazzesi, and Wei, 2006).
7.2 Credit Conditions and Spreads
Credit spreads—the yield difference between risky corporate bonds and safe government bonds—reflect risk perception in the credit market. Gilchrist and Zakrajšek (2012) constructed an "Excess Bond Premium" that measures the component of credit spreads not explained by fundamentals and showed this is a predictor of future economic activity and stock returns.
The model approximates credit spread by comparing the yield of high-yield bond ETFs (HYG) with investment-grade bond ETFs (LQD). A narrow spread below 200 basis points signals healthy credit conditions and risk appetite, contributing 30 points to the macro score. Very wide spreads above 1000 basis points (as during the 2008 financial crisis) signal credit crunch and generate zero points.
Additionally, the model evaluates whether "flight to quality" is occurring, identified through strong performance of Treasury bonds (TLT) with simultaneous weakness in high-yield bonds. This constellation indicates elevated risk aversion and reduces the credit conditions score.
7.3 Financial Stability at Corporate Level
While the yield curve and credit spreads reflect macroeconomic conditions, financial stability evaluates the health of companies themselves. The model uses the aggregated debt-to-equity ratio and return on equity of the S&P 500 as proxies for corporate health.
A low leverage level below 0.5 combined with high ROE above 15% signals robust corporate balance sheets and generates 20 points. This combination is particularly valuable as it represents both defensive strength (low debt means crisis resistance) and offensive strength (high ROE means earnings power). High leverage above 1.5 generates only 5 points, as it implies vulnerability to interest rate increases and recessions.
Korteweg (2010) showed in "The Net Benefits to Leverage" that optimal debt maximizes firm value, but excessive debt increases distress costs. At the aggregated market level, high debt indicates fragilities that can become problematic during stress phases.
8. Component 6: Crisis Detection
8.1 The Need for Systematic Crisis Detection
Financial crises are rare but extremely impactful events that suspend normal statistical relationships. During normal market volatility, diversified portfolios and traditional risk management approaches function, but during systemic crises, seemingly independent assets suddenly correlate strongly, and losses exceed historical expectations (Longin and Solnik, 2001). This justifies a separate crisis detection mechanism that operates independently of regular allocation components.
Reinhart and Rogoff (2009) documented in "This Time Is Different: Eight Centuries of Financial Folly" recurring patterns in financial crises: extreme volatility, massive drawdowns, credit market dysfunction, and asset price collapse. DEAM operationalizes these patterns into quantifiable crisis indicators.
8.2 Multi-Signal Crisis Identification
The model uses a counter-based approach where various stress signals are identified and aggregated. This methodology is more robust than relying on a single indicator, as true crises typically occur simultaneously across multiple dimensions. A single signal may be a false alarm, but the simultaneous presence of multiple signals increases confidence.
The first indicator is a VIX above the crisis threshold (default 40), adding one point. A VIX above 60 (as in 2008 and March 2020) adds two additional points, as such extreme values are historically very rare. This tiered approach captures the intensity of volatility.
The second indicator is market drawdown. A drawdown above 15% adds one point, as corrections of this magnitude can be potential harbingers of larger crises. A drawdown above 25% adds another point, as historical bear markets typically encompass 25-40% drawdowns.
The third indicator is credit market spreads above 500 basis points, adding one point. Such wide spreads occur only during significant credit market disruptions, as in 2008 during the Lehman crisis.
The fourth indicator identifies simultaneous losses in stocks and bonds. Normally, Treasury bonds act as a hedge against equity risk (negative correlation), but when both fall simultaneously, this indicates systemic liquidity problems or inflation/stagflation fears. The model checks whether both SPY and TLT have fallen more than 10% and 5% respectively over 5 trading days, adding two points.
The fifth indicator is a volume spike combined with negative returns. Extreme trading volumes (above twice the 20-day average) with falling prices signal panic selling. This adds one point.
A crisis situation is diagnosed when at least 3 indicators trigger, a severe crisis at 5 or more indicators. These thresholds were calibrated through historical backtesting to identify true crises (2008, 2020) without generating excessive false alarms.
8.3 Crisis-Based Allocation Override
When a crisis is detected, the system overrides the normal allocation recommendation and caps equity allocation at maximum 25%. In a severe crisis, the cap is set at 10%. This drastic defensive posture follows the empirical observation that crises typically require time to develop and that early reduction can avoid substantial losses (Faber, 2007).
This override logic implements a "safety first" principle: in situations of existential danger to the portfolio, capital preservation becomes the top priority. Roy (1952) formalized this approach in "Safety First and the Holding of Assets," arguing that investors should primarily minimize ruin probability.
9. Integration and Final Allocation Calculation
9.1 Component Weighting
The final allocation recommendation emerges through weighted aggregation of the five components. The standard weighting is: Market Regime 35%, Risk Management 25%, Valuation 20%, Sentiment 15%, Macro 5%. These weights reflect both theoretical considerations and empirical backtesting results.
The highest weighting of market regime is based on evidence that trend-following and momentum strategies have delivered robust results across various asset classes and time periods (Moskowitz, Ooi, and Pedersen, 2012). Current market momentum is highly informative for the near future, although it provides no information about long-term expectations.
The substantial weighting of risk management (25%) follows from the central importance of risk control. Wealth preservation is the foundation of long-term wealth creation, and systematic risk management is demonstrably value-creating (Moreira and Muir, 2017).
The valuation component receives 20% weight, based on the long-term mean reversion of valuation metrics. While valuation has limited short-term predictive power (bull and bear markets can begin at any valuation), the long-term relationship between valuation and returns is robustly documented (Campbell and Shiller, 1988).
Sentiment (15%) and Macro (5%) receive lower weights, as these factors are subtler and harder to measure. Sentiment is valuable as a contrarian indicator at extremes but less informative in normal ranges. Macro variables such as the yield curve have strong predictive power for recessions, but the transmission from recessions to stock market performance is complex and temporally variable.
9.2 Model Type Adjustments
DEAM allows users to choose between four model types: Conservative, Balanced, Aggressive, and Adaptive. This choice modifies the final allocation through additive adjustments.
Conservative mode subtracts 10 percentage points from allocation, resulting in consistently more cautious positioning. This is suitable for risk-averse investors or those with limited investment horizons. Aggressive mode adds 10 percentage points, suitable for risk-tolerant investors with long horizons.
Adaptive mode implements procyclical adjustment based on short-term momentum: if the market has risen more than 5% in the last 20 days, 5 percentage points are added; if it has declined more than 5%, 5 points are subtracted. This logic follows the observation that short-term momentum persists (Jegadeesh and Titman, 1993), but the moderate size of adjustment avoids excessive timing bets.
Balanced mode makes no adjustment and uses raw model output. This neutral setting is suitable for investors who wish to trust model recommendations unchanged.
9.3 Smoothing and Stability
The allocation resulting from aggregation undergoes final smoothing through a simple moving average over 3 periods. This smoothing is crucial for model practicality, as it reduces frequent trading and thus transaction costs. Without smoothing, the model could fluctuate between adjacent allocations with every small input change.
The choice of 3 periods as smoothing window is a compromise between responsiveness and stability. Longer smoothing would excessively delay signals and impede response to true regime changes. Shorter or no smoothing would allow too much noise. Empirical tests showed that 3-period smoothing offers an optimal ratio between these goals.
10. Visualization and Interpretation
10.1 Main Output: Equity Allocation
DEAM's primary output is a time series from 0 to 100 representing the recommended percentage allocation to equities. This representation is intuitive: 100% means full investment in stocks (specifically: an S&P 500 ETF), 0% means complete cash position, and intermediate values correspond to mixed portfolios. A value of 60% means, for example: invest 60% of wealth in SPY, hold 40% in money market instruments or cash.
The time series is color-coded to enable quick visual interpretation. Green shades represent high allocations (above 80%, bullish), red shades low allocations (below 20%, bearish), and neutral colors middle allocations. The chart background is dynamically colored based on the signal, enhancing readability in different market phases.
10.2 Dashboard Metrics
A tabular dashboard presents key metrics compactly. This includes current allocation, cash allocation (complement), an aggregated signal (BULLISH/NEUTRAL/BEARISH), current market regime, VIX level, market drawdown, and crisis status.
Additionally, fundamental metrics are displayed: P/E Ratio, Equity Risk Premium, Return on Equity, Debt-to-Equity Ratio, and Total Shareholder Yield. This transparency allows users to understand model decisions and form their own assessments.
Component scores (Regime, Risk, Valuation, Sentiment, Macro) are also displayed, each normalized on a 0-100 scale. This shows which factors primarily drive the current recommendation. If, for example, the Risk score is very low (20) while other scores are moderate (50-60), this indicates that risk management considerations are pulling allocation down.
10.3 Component Breakdown (Optional)
Advanced users can display individual components as separate lines in the chart. This enables analysis of component dynamics: do all components move synchronously, or are there divergences? Divergences can be particularly informative. If, for example, the market regime is bullish (high score) but the valuation component is very negative, this signals an overbought market not fundamentally supported—a classic "bubble warning."
This feature is disabled by default to keep the chart clean but can be activated for deeper analysis.
10.4 Confidence Bands
The model optionally displays uncertainty bands around the main allocation line. These are calculated as ±1 standard deviation of allocation over a rolling 20-period window. Wide bands indicate high volatility of model recommendations, suggesting uncertain market conditions. Narrow bands indicate stable recommendations.
This visualization implements a concept of epistemic uncertainty—uncertainty about the model estimate itself, not just market volatility. In phases where various indicators send conflicting signals, the allocation recommendation becomes more volatile, manifesting in wider bands. Users can understand this as a warning to act more cautiously or consult alternative information sources.
11. Alert System
11.1 Allocation Alerts
DEAM implements an alert system that notifies users of significant events. Allocation alerts trigger when smoothed allocation crosses certain thresholds. An alert is generated when allocation reaches 80% (from below), signaling strong bullish conditions. Another alert triggers when allocation falls to 20%, indicating defensive positioning.
These thresholds are not arbitrary but correspond with boundaries between model regimes. An allocation of 80% roughly corresponds to a clear bull market regime, while 20% corresponds to a bear market regime. Alerts at these points are therefore informative about fundamental regime shifts.
11.2 Crisis Alerts
Separate alerts trigger upon detection of crisis and severe crisis. These alerts have highest priority as they signal large risks. A crisis alert should prompt investors to review their portfolio and potentially take defensive measures beyond the automatic model recommendation (e.g., hedging through put options, rebalancing to more defensive sectors).
11.3 Regime Change Alerts
An alert triggers upon change of market regime (e.g., from Neutral to Correction, or from Bull Market to Strong Bull). Regime changes are highly informative events that typically entail substantial allocation changes. These alerts enable investors to proactively respond to changes in market dynamics.
11.4 Risk Breach Alerts
A specialized alert triggers when actual portfolio risk utilization exceeds target parameters by 20%. This is a warning signal that the risk management system is reaching its limits, possibly because market volatility is rising faster than allocation can be reduced. In such situations, investors should consider manual interventions.
12. Practical Application and Limitations
12.1 Portfolio Implementation
DEAM generates a recommendation for allocation between equities (S&P 500) and cash. Implementation by an investor can take various forms. The most direct method is using an S&P 500 ETF (e.g., SPY, VOO) for equity allocation and a money market fund or savings account for cash allocation.
A rebalancing strategy is required to synchronize actual allocation with model recommendation. Two approaches are possible: (1) rule-based rebalancing at every 10% deviation between actual and target, or (2) time-based monthly rebalancing. Both have trade-offs between responsiveness and transaction costs. Empirical evidence (Jaconetti, Kinniry, and Zilbering, 2010) suggests rebalancing frequency has moderate impact on performance, and investors should optimize based on their transaction costs.
12.2 Adaptation to Individual Preferences
The model offers numerous adjustment parameters. Component weights can be modified if investors place more or less belief in certain factors. A fundamentally-oriented investor might increase valuation weight, while a technical trader might increase regime weight.
Risk target parameters (target volatility, max drawdown) should be adapted to individual risk tolerance. Younger investors with long investment horizons can choose higher target volatility (15-18%), while retirees may prefer lower volatility (8-10%). This adjustment systematically shifts average equity allocation.
Crisis thresholds can be adjusted based on preference for sensitivity versus specificity of crisis detection. Lower thresholds (e.g., VIX > 35 instead of 40) increase sensitivity (more crises are detected) but reduce specificity (more false alarms). Higher thresholds have the reverse effect.
12.3 Limitations and Disclaimers
DEAM is based on historical relationships between indicators and market performance. There is no guarantee these relationships will persist in the future. Structural changes in markets (e.g., through regulation, technology, or central bank policy) can break established patterns. This is the fundamental problem of induction in financial science (Taleb, 2007).
The model is optimized for US equities (S&P 500). Application to other markets (international stocks, bonds, commodities) would require recalibration. The indicators and thresholds are specific to the statistical properties of the US equity market.
The model cannot eliminate losses. Even with perfect crisis prediction, an investor following the model would lose money in bear markets—just less than a buy-and-hold investor. The goal is risk-adjusted performance improvement, not risk elimination.
Transaction costs are not modeled. In practice, spreads, commissions, and taxes reduce net returns. Frequent trading can cause substantial costs. Model smoothing helps minimize this, but users should consider their specific cost situation.
The model reacts to information; it does not anticipate it. During sudden shocks (e.g., 9/11, COVID-19 lockdowns), the model can only react after price movements, not before. This limitation is inherent to all reactive systems.
12.4 Relationship to Other Strategies
DEAM is a tactical asset allocation approach and should be viewed as a complement, not replacement, for strategic asset allocation. Brinson, Hood, and Beebower (1986) showed in their influential study "Determinants of Portfolio Performance" that strategic asset allocation (long-term policy allocation) explains the majority of portfolio performance, but this leaves room for tactical adjustments based on market timing.
The model can be combined with value and momentum strategies at the individual stock level. While DEAM controls overall market exposure, within-equity decisions can be optimized through stock-picking models. This separation between strategic (market exposure) and tactical (stock selection) levels follows classical portfolio theory.
The model does not replace diversification across asset classes. A complete portfolio should also include bonds, international stocks, real estate, and alternative investments. DEAM addresses only the US equity allocation decision within a broader portfolio.
13. Scientific Foundation and Evaluation
13.1 Theoretical Consistency
DEAM's components are based on established financial theory and empirical evidence. The market regime component follows from regime-switching models (Hamilton, 1989) and trend-following literature. The risk management component implements volatility targeting (Moreira and Muir, 2017) and modern portfolio theory (Markowitz, 1952). The valuation component is based on discounted cash flow theory and empirical value research (Campbell and Shiller, 1988; Fama and French, 1992). The sentiment component integrates behavioral finance (Baker and Wurgler, 2006). The macro component uses established business cycle indicators (Estrella and Mishkin, 1998).
This theoretical grounding distinguishes DEAM from purely data-mining-based approaches that identify patterns without causal theory. Theory-guided models have greater probability of functioning out-of-sample, as they are based on fundamental mechanisms, not random correlations (Lo and MacKinlay, 1990).
13.2 Empirical Validation
While this document does not present detailed backtest analysis, it should be noted that rigorous validation of a tactical asset allocation model should include several elements:
In-sample testing establishes whether the model functions at all in the data on which it was calibrated. Out-of-sample testing is crucial: the model should be tested in time periods not used for development. Walk-forward analysis, where the model is successively trained on rolling windows and tested in the next window, approximates real implementation.
Performance metrics should be risk-adjusted. Pure return consideration is misleading, as higher returns often only compensate for higher risk. Sharpe Ratio, Sortino Ratio, Calmar Ratio, and Maximum Drawdown are relevant metrics. Comparison with benchmarks (Buy-and-Hold S&P 500, 60/40 Stock/Bond portfolio) contextualizes performance.
Robustness checks test sensitivity to parameter variation. If the model only functions at specific parameter settings, this indicates overfitting. Robust models show consistent performance over a range of plausible parameters.
13.3 Comparison with Existing Literature
DEAM fits into the broader literature on tactical asset allocation. Faber (2007) presented a simple momentum-based timing system that goes long when the market is above its 10-month average, otherwise cash. This simple system avoided large drawdowns in bear markets. DEAM can be understood as a sophistication of this approach that integrates multiple information sources.
Ilmanen (2011) discusses various timing factors in "Expected Returns" and argues for multi-factor approaches. DEAM operationalizes this philosophy. Asness, Moskowitz, and Pedersen (2013) showed that value and momentum effects work across asset classes, justifying cross-asset application of regime and valuation signals.
Ang (2014) emphasizes in "Asset Management: A Systematic Approach to Factor Investing" the importance of systematic, rule-based approaches over discretionary decisions. DEAM is fully systematic and eliminates emotional biases that plague individual investors (overconfidence, hindsight bias, loss aversion).
References
Ang, A. (2014) *Asset Management: A Systematic Approach to Factor Investing*. Oxford: Oxford University Press.
Ang, A., Piazzesi, M. and Wei, M. (2006) 'What does the yield curve tell us about GDP growth?', *Journal of Econometrics*, 131(1-2), pp. 359-403.
Asness, C.S. (2003) 'Fight the Fed Model', *The Journal of Portfolio Management*, 30(1), pp. 11-24.
Asness, C.S., Moskowitz, T.J. and Pedersen, L.H. (2013) 'Value and Momentum Everywhere', *The Journal of Finance*, 68(3), pp. 929-985.
Baker, M. and Wurgler, J. (2006) 'Investor Sentiment and the Cross-Section of Stock Returns', *The Journal of Finance*, 61(4), pp. 1645-1680.
Baker, M. and Wurgler, J. (2007) 'Investor Sentiment in the Stock Market', *Journal of Economic Perspectives*, 21(2), pp. 129-152.
Baur, D.G. and Lucey, B.M. (2010) 'Is Gold a Hedge or a Safe Haven? An Analysis of Stocks, Bonds and Gold', *Financial Review*, 45(2), pp. 217-229.
Bollerslev, T. (1986) 'Generalized Autoregressive Conditional Heteroskedasticity', *Journal of Econometrics*, 31(3), pp. 307-327.
Boudoukh, J., Michaely, R., Richardson, M. and Roberts, M.R. (2007) 'On the Importance of Measuring Payout Yield: Implications for Empirical Asset Pricing', *The Journal of Finance*, 62(2), pp. 877-915.
Brinson, G.P., Hood, L.R. and Beebower, G.L. (1986) 'Determinants of Portfolio Performance', *Financial Analysts Journal*, 42(4), pp. 39-44.
Brock, W., Lakonishok, J. and LeBaron, B. (1992) 'Simple Technical Trading Rules and the Stochastic Properties of Stock Returns', *The Journal of Finance*, 47(5), pp. 1731-1764.
Calmar, T.W. (1991) 'The Calmar Ratio', *Futures*, October issue.
Campbell, J.Y. and Shiller, R.J. (1988) 'The Dividend-Price Ratio and Expectations of Future Dividends and Discount Factors', *Review of Financial Studies*, 1(3), pp. 195-228.
Cochrane, J.H. (2011) 'Presidential Address: Discount Rates', *The Journal of Finance*, 66(4), pp. 1047-1108.
Damodaran, A. (2012) *Equity Risk Premiums: Determinants, Estimation and Implications*. Working Paper, Stern School of Business.
Engle, R.F. (1982) 'Autoregressive Conditional Heteroskedasticity with Estimates of the Variance of United Kingdom Inflation', *Econometrica*, 50(4), pp. 987-1007.
Estrella, A. and Hardouvelis, G.A. (1991) 'The Term Structure as a Predictor of Real Economic Activity', *The Journal of Finance*, 46(2), pp. 555-576.
Estrella, A. and Mishkin, F.S. (1998) 'Predicting U.S. Recessions: Financial Variables as Leading Indicators', *Review of Economics and Statistics*, 80(1), pp. 45-61.
Faber, M.T. (2007) 'A Quantitative Approach to Tactical Asset Allocation', *The Journal of Wealth Management*, 9(4), pp. 69-79.
Fama, E.F. and French, K.R. (1989) 'Business Conditions and Expected Returns on Stocks and Bonds', *Journal of Financial Economics*, 25(1), pp. 23-49.
Fama, E.F. and French, K.R. (1992) 'The Cross-Section of Expected Stock Returns', *The Journal of Finance*, 47(2), pp. 427-465.
Garman, M.B. and Klass, M.J. (1980) 'On the Estimation of Security Price Volatilities from Historical Data', *Journal of Business*, 53(1), pp. 67-78.
Gilchrist, S. and Zakrajšek, E. (2012) 'Credit Spreads and Business Cycle Fluctuations', *American Economic Review*, 102(4), pp. 1692-1720.
Gordon, M.J. (1962) *The Investment, Financing, and Valuation of the Corporation*. Homewood: Irwin.
Graham, B. and Dodd, D.L. (1934) *Security Analysis*. New York: McGraw-Hill.
Hamilton, J.D. (1989) 'A New Approach to the Economic Analysis of Nonstationary Time Series and the Business Cycle', *Econometrica*, 57(2), pp. 357-384.
Ilmanen, A. (2011) *Expected Returns: An Investor's Guide to Harvesting Market Rewards*. Chichester: Wiley.
Jaconetti, C.M., Kinniry, F.M. and Zilbering, Y. (2010) 'Best Practices for Portfolio Rebalancing', *Vanguard Research Paper*.
Jegadeesh, N. and Titman, S. (1993) 'Returns to Buying Winners and Selling Losers: Implications for Stock Market Efficiency', *The Journal of Finance*, 48(1), pp. 65-91.
Kahneman, D. and Tversky, A. (1979) 'Prospect Theory: An Analysis of Decision under Risk', *Econometrica*, 47(2), pp. 263-292.
Korteweg, A. (2010) 'The Net Benefits to Leverage', *The Journal of Finance*, 65(6), pp. 2137-2170.
Lo, A.W. and MacKinlay, A.C. (1990) 'Data-Snooping Biases in Tests of Financial Asset Pricing Models', *Review of Financial Studies*, 3(3), pp. 431-467.
Longin, F. and Solnik, B. (2001) 'Extreme Correlation of International Equity Markets', *The Journal of Finance*, 56(2), pp. 649-676.
Mandelbrot, B. (1963) 'The Variation of Certain Speculative Prices', *The Journal of Business*, 36(4), pp. 394-419.
Markowitz, H. (1952) 'Portfolio Selection', *The Journal of Finance*, 7(1), pp. 77-91.
Modigliani, F. and Miller, M.H. (1961) 'Dividend Policy, Growth, and the Valuation of Shares', *The Journal of Business*, 34(4), pp. 411-433.
Moreira, A. and Muir, T. (2017) 'Volatility-Managed Portfolios', *The Journal of Finance*, 72(4), pp. 1611-1644.
Moskowitz, T.J., Ooi, Y.H. and Pedersen, L.H. (2012) 'Time Series Momentum', *Journal of Financial Economics*, 104(2), pp. 228-250.
Parkinson, M. (1980) 'The Extreme Value Method for Estimating the Variance of the Rate of Return', *Journal of Business*, 53(1), pp. 61-65.
Piotroski, J.D. (2000) 'Value Investing: The Use of Historical Financial Statement Information to Separate Winners from Losers', *Journal of Accounting Research*, 38, pp. 1-41.
Reinhart, C.M. and Rogoff, K.S. (2009) *This Time Is Different: Eight Centuries of Financial Folly*. Princeton: Princeton University Press.
Ross, S.A. (1976) 'The Arbitrage Theory of Capital Asset Pricing', *Journal of Economic Theory*, 13(3), pp. 341-360.
Roy, A.D. (1952) 'Safety First and the Holding of Assets', *Econometrica*, 20(3), pp. 431-449.
Schwert, G.W. (1989) 'Why Does Stock Market Volatility Change Over Time?', *The Journal of Finance*, 44(5), pp. 1115-1153.
Sharpe, W.F. (1966) 'Mutual Fund Performance', *The Journal of Business*, 39(1), pp. 119-138.
Sharpe, W.F. (1994) 'The Sharpe Ratio', *The Journal of Portfolio Management*, 21(1), pp. 49-58.
Simon, D.P. and Wiggins, R.A. (2001) 'S&P Futures Returns and Contrary Sentiment Indicators', *Journal of Futures Markets*, 21(5), pp. 447-462.
Taleb, N.N. (2007) *The Black Swan: The Impact of the Highly Improbable*. New York: Random House.
Whaley, R.E. (2000) 'The Investor Fear Gauge', *The Journal of Portfolio Management*, 26(3), pp. 12-17.
Whaley, R.E. (2009) 'Understanding the VIX', *The Journal of Portfolio Management*, 35(3), pp. 98-105.
Yardeni, E. (2003) 'Stock Valuation Models', *Topical Study*, 51, Yardeni Research.
Zweig, M.E. (1973) 'An Investor Expectations Stock Price Predictive Model Using Closed-End Fund Premiums', *The Journal of Finance*, 28(1), pp. 67-78.
Consecutive Candles CounterThe Consecutive Candles Counter is a simple yet powerful indicator designed to help traders identify and analyze consecutive red or green candle patterns on any timeframe. This tool automatically counts unbroken streaks of bullish or bearish candles within your specified date range, making it easier to spot momentum trends and potential reversal points.
Key Features
Dual Mode Tracking: Toggle between counting consecutive red (bearish) or green (bullish) candles with a single click
Custom Date Range: Set specific start and end dates to analyze historical patterns or focus on recent price action
Visual Streak Display: Clean line graph showing the progression of consecutive candles over time
Real-Time Information Table: Displays current streak count, candle type, and date range status at a glance
Customizable Interface:
Show/hide the information table
Adjust table size from Tiny to Huge
Color-coded visuals (red for bearish, green for bullish)
Works on All Timeframes: Optimized for daily charts but functions on any timeframe
How It Works
The indicator monitors each candle's close price relative to its open price:
Red Candle: Close < Open (bearish)
Green Candle: Close > Open (bullish)
When consecutive candles of the selected type appear, the counter increases. The streak resets to zero when:
An opposite color candle appears
The price action moves outside your specified date range
Use Cases
Momentum Trading: Identify extended runs of bullish or bearish candles that may signal strong trends
Reversal Detection: Spot when consecutive streaks end, potentially indicating trend exhaustion
Pattern Analysis: Study historical consecutive candle patterns to understand market behavior
Risk Management: Recognize when a trend might be overextended
Backtesting: Test strategies based on consecutive candle counts within specific date ranges






















