BOCS Channel Scalper Indicator - Mean Reversion Alert System# BOCS Channel Scalper Indicator - Mean Reversion Alert System
## WHAT THIS INDICATOR DOES:
This is a mean reversion trading indicator that identifies consolidation channels through volatility analysis and generates alert signals when price enters entry zones near channel boundaries. **This indicator version is designed for manual trading with comprehensive alert functionality.** Unlike automated strategies, this tool sends notifications (via popup, email, SMS, or webhook) when trading opportunities occur, allowing you to manually review and execute trades. The system assumes price will revert to the channel mean, identifying scalp opportunities as price reaches extremes and preparing to bounce back toward center.
## INDICATOR VS STRATEGY - KEY DISTINCTION:
**This is an INDICATOR with alerts, not an automated strategy.** It does not execute trades automatically. Instead, it:
- Displays visual signals on your chart when entry conditions are met
- Sends customizable alerts to your device/email when opportunities arise
- Shows TP/SL levels for reference but does not place orders
- Requires you to manually enter and exit positions based on signals
- Works with all TradingView subscription levels (alerts included on all plans)
**For automated trading with backtesting**, use the strategy version. For manual control with notifications, use this indicator version.
## ALERT CAPABILITIES:
This indicator includes four distinct alert conditions that can be configured independently:
**1. New Channel Formation Alert**
- Triggers when a fresh BOCS channel is identified
- Message: "New BOCS channel formed - potential scalp setup ready"
- Use this to prepare for upcoming trading opportunities
**2. Long Scalp Entry Alert**
- Fires when price touches the long entry zone
- Message includes current price, calculated TP, and SL levels
- Notification example: "LONG scalp signal at 24731.75 | TP: 24743.2 | SL: 24716.5"
**3. Short Scalp Entry Alert**
- Fires when price touches the short entry zone
- Message includes current price, calculated TP, and SL levels
- Notification example: "SHORT scalp signal at 24747.50 | TP: 24735.0 | SL: 24762.75"
**4. Any Entry Signal Alert**
- Combined alert for both long and short entries
- Use this if you want a single alert stream for all opportunities
- Message: "BOCS Scalp Entry: at "
**Setting Up Alerts:**
1. Add indicator to chart and configure settings
2. Click the Alert (⏰) button in TradingView toolbar
3. Select "BOCS Channel Scalper" from condition dropdown
4. Choose desired alert type (Long, Short, Any, or Channel Formation)
5. Set "Once Per Bar Close" to avoid false signals during bar formation
6. Configure delivery method (popup, email, webhook for automation platforms)
7. Save alert - it will fire automatically when conditions are met
**Alert Message Placeholders:**
Alerts use TradingView's dynamic placeholder system:
- {{ticker}} = Symbol name (e.g., NQ1!)
- {{close}} = Current price at signal
- {{plot_1}} = Calculated take profit level
- {{plot_2}} = Calculated stop loss level
These placeholders populate automatically, creating detailed notification messages without manual configuration.
## KEY DIFFERENCE FROM ORIGINAL BOCS:
**This indicator is designed for traders seeking higher trade frequency.** The original BOCS indicator trades breakouts OUTSIDE channels, waiting for price to escape consolidation before entering. This scalper version trades mean reversion INSIDE channels, entering when price reaches channel extremes and betting on a bounce back to center. The result is significantly more trading opportunities:
- **Original BOCS**: 1-3 signals per channel (only on breakout)
- **Scalper Indicator**: 5-15+ signals per channel (every touch of entry zones)
- **Trade Style**: Mean reversion vs trend following
- **Hold Time**: Seconds to minutes vs minutes to hours
- **Best Markets**: Ranging/choppy conditions vs trending breakouts
This makes the indicator ideal for active day traders who want continuous alert opportunities within consolidation zones rather than waiting for breakout confirmation. However, increased signal frequency also means higher potential commission costs and requires disciplined trade selection when acting on alerts.
## TECHNICAL METHODOLOGY:
### Price Normalization Process:
The indicator normalizes price data to create consistent volatility measurements across different instruments and price levels. It calculates the highest high and lowest low over a user-defined lookback period (default 100 bars). Current close price is normalized using: (close - lowest_low) / (highest_high - lowest_low), producing values between 0 and 1 for standardized volatility analysis.
### Volatility Detection:
A 14-period standard deviation is applied to the normalized price series to measure price deviation from the mean. Higher standard deviation values indicate volatility expansion; lower values indicate consolidation. The indicator uses ta.highestbars() and ta.lowestbars() to identify when volatility peaks and troughs occur over the detection period (default 14 bars).
### Channel Formation Logic:
When volatility crosses from a high level to a low level (ta.crossover(upper, lower)), a consolidation phase begins. The indicator tracks the highest and lowest prices during this period, which become the channel boundaries. Minimum duration of 10+ bars is required to filter out brief volatility spikes. Channels are rendered as box objects with defined upper and lower boundaries, with colored zones indicating entry areas.
### Entry Signal Generation:
The indicator uses immediate touch-based entry logic. Entry zones are defined as a percentage from channel edges (default 20%):
- **Long Entry Zone**: Bottom 20% of channel (bottomBound + channelRange × 0.2)
- **Short Entry Zone**: Top 20% of channel (topBound - channelRange × 0.2)
Long signals trigger when candle low touches or enters the long entry zone. Short signals trigger when candle high touches or enters the short entry zone. Visual markers (arrows and labels) appear on chart, and configured alerts fire immediately.
### Cooldown Filter:
An optional cooldown period (measured in bars) prevents alert spam by enforcing minimum spacing between consecutive signals. If cooldown is set to 3 bars, no new long alert will fire until 3 bars after the previous long signal. Long and short cooldowns are tracked independently, allowing both directions to signal within the same period.
### ATR Volatility Filter:
The indicator includes a multi-timeframe ATR filter to avoid alerts during low-volatility conditions. Using request.security(), it fetches ATR values from a specified timeframe (e.g., 1-minute ATR while viewing 5-minute charts). The filter compares current ATR to a user-defined minimum threshold:
- If ATR ≥ threshold: Alerts enabled
- If ATR < threshold: No alerts fire
This prevents notifications during dead zones where mean reversion is unreliable due to insufficient price movement. The ATR status is displayed in the info table with visual confirmation (✓ or ✗).
### Take Profit Calculation:
Two TP methods are available:
**Fixed Points Mode**:
- Long TP = Entry + (TP_Ticks × syminfo.mintick)
- Short TP = Entry - (TP_Ticks × syminfo.mintick)
**Channel Percentage Mode**:
- Long TP = Entry + (ChannelRange × TP_Percent)
- Short TP = Entry - (ChannelRange × TP_Percent)
Default 50% targets the channel midline, a natural mean reversion target. These levels are displayed as visual lines with labels and included in alert messages for reference when manually placing orders.
### Stop Loss Placement:
Stop losses are calculated just outside the channel boundary by a user-defined tick offset:
- Long SL = ChannelBottom - (SL_Offset_Ticks × syminfo.mintick)
- Short SL = ChannelTop + (SL_Offset_Ticks × syminfo.mintick)
This logic assumes channel breaks invalidate the mean reversion thesis. SL levels are displayed on chart and included in alert notifications as suggested stop placement.
### Channel Breakout Management:
Channels are removed when price closes more than 10 ticks outside boundaries. This tolerance prevents premature channel deletion from minor breaks or wicks, allowing the mean reversion setup to persist through small boundary violations.
## INPUT PARAMETERS:
### Channel Settings:
- **Nested Channels**: Allow multiple overlapping channels vs single channel
- **Normalization Length**: Lookback for high/low calculation (1-500, default 100)
- **Box Detection Length**: Period for volatility detection (1-100, default 14)
### Scalping Settings:
- **Enable Long Scalps**: Toggle long alert generation on/off
- **Enable Short Scalps**: Toggle short alert generation on/off
- **Entry Zone % from Edge**: Size of entry zone (5-50%, default 20%)
- **SL Offset (Ticks)**: Distance beyond channel for stop (1+, default 5)
- **Cooldown Period (Bars)**: Minimum spacing between alerts (0 = no cooldown)
### ATR Filter:
- **Enable ATR Filter**: Toggle volatility filter on/off
- **ATR Timeframe**: Source timeframe for ATR (1, 5, 15, 60 min, etc.)
- **ATR Length**: Smoothing period (1-100, default 14)
- **Min ATR Value**: Threshold for alert enablement (0.1+, default 10.0)
### Take Profit Settings:
- **TP Method**: Choose Fixed Points or % of Channel
- **TP Fixed (Ticks)**: Static distance in ticks (1+, default 30)
- **TP % of Channel**: Dynamic target as channel percentage (10-100%, default 50%)
### Appearance:
- **Show Entry Zones**: Toggle zone labels on channels
- **Show Info Table**: Display real-time indicator status
- **Table Position**: Corner placement (Top Left/Right, Bottom Left/Right)
- **Long Color**: Customize long signal color (default: darker green for readability)
- **Short Color**: Customize short signal color (default: red)
- **TP/SL Colors**: Customize take profit and stop loss line colors
- **Line Length**: Visual length of TP/SL reference lines (5-200 bars)
## VISUAL INDICATORS:
- **Channel boxes** with semi-transparent fill showing consolidation zones
- **Colored entry zones** labeled "LONG ZONE ▲" and "SHORT ZONE ▼"
- **Entry signal arrows** below/above bars marking long/short alerts
- **TP/SL reference lines** with emoji labels (⊕ Entry, 🎯 TP, 🛑 SL)
- **Info table** showing channel status, last signal, entry/TP/SL prices, risk/reward ratio, and ATR filter status
- **Visual confirmation** when alerts fire via on-chart markers synchronized with notifications
## HOW TO USE:
### For 1-3 Minute Scalping with Alerts (NQ/ES):
- ATR Timeframe: "1" (1-minute)
- ATR Min Value: 10.0 (for NQ), adjust per instrument
- Entry Zone %: 20-25%
- TP Method: Fixed Points, 20-40 ticks
- SL Offset: 5-10 ticks
- Cooldown: 2-3 bars to reduce alert spam
- **Alert Setup**: Configure "Any Entry Signal" for combined long/short notifications
- **Execution**: When alert fires, verify chart visuals, then manually place limit order at entry zone with provided TP/SL levels
### For 5-15 Minute Day Trading with Alerts:
- ATR Timeframe: "5" or match chart
- ATR Min Value: Adjust to instrument (test 8-15 for NQ)
- Entry Zone %: 20-30%
- TP Method: % of Channel, 40-60%
- SL Offset: 5-10 ticks
- Cooldown: 3-5 bars
- **Alert Setup**: Configure separate "Long Scalp Entry" and "Short Scalp Entry" alerts if you trade directionally based on bias
- **Execution**: Review channel structure on alert, confirm ATR filter shows ✓, then enter manually
### For 30-60 Minute Swing Scalping with Alerts:
- ATR Timeframe: "15" or "30"
- ATR Min Value: Lower threshold for broader market
- Entry Zone %: 25-35%
- TP Method: % of Channel, 50-70%
- SL Offset: 10-15 ticks
- Cooldown: 5+ bars or disable
- **Alert Setup**: Use "New Channel Formation" to prepare for setups, then "Any Entry Signal" for execution alerts
- **Execution**: Larger timeframes allow more analysis time between alert and entry
### Webhook Integration for Semi-Automation:
- Configure alert webhook URL to connect with platforms like TradersPost, TradingView Paper Trading, or custom automation
- Alert message includes all necessary order parameters (direction, entry, TP, SL)
- Webhook receives structured data when signal fires
- External platform can auto-execute based on alert payload
- Still maintains manual oversight vs full strategy automation
## USAGE CONSIDERATIONS:
- **Manual Discipline Required**: Alerts provide opportunities but execution requires judgment. Not all alerts should be taken - consider market context, trend, and channel quality
- **Alert Timing**: Alerts fire on bar close by default. Ensure "Once Per Bar Close" is selected to avoid false signals during bar formation
- **Notification Delivery**: Mobile/email alerts may have 1-3 second delay. For immediate execution, use desktop popups or webhook automation
- **Cooldown Necessity**: Without cooldown, rapidly touching price action can generate excessive alerts. Start with 3-bar cooldown and adjust based on alert volume
- **ATR Filter Impact**: Enabling ATR filter dramatically reduces alert count but improves quality. Track filter status in info table to understand when you're receiving fewer alerts
- **Commission Awareness**: High alert frequency means high potential trade count. Calculate if your commission structure supports frequent scalping before acting on all alerts
## COMPATIBLE MARKETS:
Works on any instrument with price data including stock indices (NQ, ES, YM, RTY), individual stocks, forex pairs (EUR/USD, GBP/USD), cryptocurrency (BTC, ETH), and commodities. Volume-based features are not included in this indicator version. Multi-timeframe ATR requires higher-tier TradingView subscription for request.security() functionality on timeframes below chart timeframe.
## KNOWN LIMITATIONS:
- **Indicator does not execute trades** - alerts are informational only; you must manually place all orders
- **Alert delivery depends on TradingView infrastructure** - delays or failures possible during platform issues
- **No position tracking** - indicator doesn't know if you're in a trade; you must manage open positions independently
- **TP/SL levels are reference only** - you must manually set these on your broker platform; they are not live orders
- **Immediate touch entry can generate many alerts** in choppy zones without adequate cooldown
- **Channel deletion at 10-tick breaks** may be too aggressive or lenient depending on instrument tick size
- **ATR filter from lower timeframes** requires TradingView Premium/Pro+ for request.security()
- **Mean reversion logic fails** in strong breakout scenarios - alerts will fire but trades may hit stops
- **No partial closing capability** - full position management is manual; you determine scaling out
- **Alerts do not account for gaps** or overnight price changes; morning alerts may be stale
## RISK DISCLOSURE:
Trading involves substantial risk of loss. This indicator provides signals for educational and informational purposes only and does not constitute financial advice. Past performance does not guarantee future results. Mean reversion strategies can experience extended drawdowns during trending markets. Alerts are not guaranteed to be profitable and should be combined with your own analysis. Stop losses may not fill at intended levels during extreme volatility or gaps. Never trade with capital you cannot afford to lose. Consider consulting a licensed financial advisor before making trading decisions. Always verify alerts against current market conditions before executing trades manually.
## ACKNOWLEDGMENT & CREDITS:
This indicator is built upon the channel detection methodology created by **AlgoAlpha** in the "Smart Money Breakout Channels" indicator. Full credit and appreciation to AlgoAlpha for pioneering the normalized volatility approach to identifying consolidation patterns. The core channel formation logic using normalized price standard deviation is AlgoAlpha's original contribution to the TradingView community.
Enhancements to the original concept include: mean reversion entry logic (vs breakout), immediate touch-based alert generation, comprehensive alert condition system with customizable notifications, multi-timeframe ATR volatility filtering, cooldown period for alert management, dual TP methods (fixed points vs channel percentage), visual TP/SL reference lines, and real-time status monitoring table. This indicator version is specifically designed for manual traders who prefer alert-based decision making over automated execution.
Search in scripts for "spy"
BOCS AdaptiveBOCS Adaptive Strategy - Automated Volatility Breakout System
WHAT THIS STRATEGY DOES:
This is an automated trading strategy that detects consolidation patterns through volatility analysis and executes trades when price breaks out of these channels. Take-profit and stop-loss levels are calculated dynamically using Average True Range (ATR) to adapt to current market volatility. The strategy closes positions partially at the first profit target and exits the remainder at the second target or stop loss.
TECHNICAL METHODOLOGY:
Price Normalization Process:
The strategy begins by normalizing price to create a consistent measurement scale. It calculates the highest high and lowest low over a user-defined lookback period (default 100 bars). The current close price is then normalized using the formula: (close - lowest_low) / (highest_high - lowest_low). This produces values between 0 and 1, allowing volatility analysis to work consistently across different instruments and price levels.
Volatility Detection:
A 14-period standard deviation is applied to the normalized price series. Standard deviation measures how much prices deviate from their average - higher values indicate volatility expansion, lower values indicate consolidation. The strategy uses ta.highestbars() and ta.lowestbars() functions to track when volatility reaches peaks and troughs over the detection length period (default 14 bars).
Channel Formation Logic:
When volatility crosses from a high level to a low level, this signals the beginning of a consolidation phase. The strategy records this moment using ta.crossover(upper, lower) and begins tracking the highest and lowest prices during the consolidation. These become the channel boundaries. The duration between the crossover and current bar must exceed 10 bars minimum to avoid false channels from brief volatility spikes. Channels are drawn using box objects with the recorded high/low boundaries.
Breakout Signal Generation:
Two detection modes are available:
Strong Closes Mode (default): Breakout occurs when the candle body midpoint math.avg(close, open) exceeds the channel boundary. This filters out wick-only breaks.
Any Touch Mode: Breakout occurs when the close price exceeds the boundary.
When price closes above the upper channel boundary, a bullish breakout signal generates. When price closes below the lower boundary, a bearish breakout signal generates. The channel is then removed from the chart.
ATR-Based Risk Management:
The strategy uses request.security() to fetch ATR values from a specified timeframe, which can differ from the chart timeframe. For example, on a 5-minute chart, you can use 1-minute ATR for more responsive calculations. The ATR is calculated using ta.atr(length) with a user-defined period (default 14).
Exit levels are calculated at the moment of breakout:
Long Entry Price = Upper channel boundary
Long TP1 = Entry + (ATR × TP1 Multiplier)
Long TP2 = Entry + (ATR × TP2 Multiplier)
Long SL = Entry - (ATR × SL Multiplier)
For short trades, the calculation inverts:
Short Entry Price = Lower channel boundary
Short TP1 = Entry - (ATR × TP1 Multiplier)
Short TP2 = Entry - (ATR × TP2 Multiplier)
Short SL = Entry + (ATR × SL Multiplier)
Trade Execution Logic:
When a breakout occurs, the strategy checks if trading hours filter is satisfied (if enabled) and if position size equals zero (no existing position). If volume confirmation is enabled, it also verifies that current volume exceeds 1.2 times the 20-period simple moving average.
If all conditions are met:
strategy.entry() opens a position using the user-defined number of contracts
strategy.exit() immediately places a stop loss order
The code monitors price against TP1 and TP2 levels on each bar
When price reaches TP1, strategy.close() closes the specified number of contracts (e.g., if you enter with 3 contracts and set TP1 close to 1, it closes 1 contract). When price reaches TP2, it closes all remaining contracts. If stop loss is hit first, the entire position exits via the strategy.exit() order.
Volume Analysis System:
The strategy uses ta.requestUpAndDownVolume(timeframe) to fetch up volume, down volume, and volume delta from a specified timeframe. Three display modes are available:
Volume Mode: Shows total volume as bars scaled relative to the 20-period average
Comparison Mode: Shows up volume and down volume as separate bars above/below the channel midline
Delta Mode: Shows net volume delta (up volume - down volume) as bars, positive values above midline, negative below
The volume confirmation logic compares breakout bar volume to the 20-period SMA. If volume ÷ average > 1.2, the breakout is classified as "confirmed." When volume confirmation is enabled in settings, only confirmed breakouts generate trades.
INPUT PARAMETERS:
Strategy Settings:
Number of Contracts: Fixed quantity to trade per signal (1-1000)
Require Volume Confirmation: Toggle to only trade signals with volume >120% of average
TP1 Close Contracts: Exact number of contracts to close at first target (1-1000)
Use Trading Hours Filter: Toggle to restrict trading to specified session
Trading Hours: Session input in HHMM-HHMM format (e.g., "0930-1600")
Main Settings:
Normalization Length: Lookback bars for high/low calculation (1-500, default 100)
Box Detection Length: Period for volatility peak/trough detection (1-100, default 14)
Strong Closes Only: Toggle between body midpoint vs close price for breakout detection
Nested Channels: Allow multiple overlapping channels vs single channel at a time
ATR TP/SL Settings:
ATR Timeframe: Source timeframe for ATR calculation (1, 5, 15, 60, etc.)
ATR Length: Smoothing period for ATR (1-100, default 14)
Take Profit 1 Multiplier: Distance from entry as multiple of ATR (0.1-10.0, default 2.0)
Take Profit 2 Multiplier: Distance from entry as multiple of ATR (0.1-10.0, default 3.0)
Stop Loss Multiplier: Distance from entry as multiple of ATR (0.1-10.0, default 1.0)
Enable Take Profit 2: Toggle second profit target on/off
VISUAL INDICATORS:
Channel boxes with semi-transparent fill showing consolidation zones
Green/red colored zones at channel boundaries indicating breakout areas
Volume bars displayed within channels using selected mode
TP/SL lines with labels showing both price level and distance in points
Entry signals marked with up/down triangles at breakout price
Strategy status table showing position, contracts, P&L, ATR values, and volume confirmation status
HOW TO USE:
For 2-Minute Scalping:
Set ATR Timeframe to "1" (1-minute), ATR Length to 12, TP1 Multiplier to 2.0, TP2 Multiplier to 3.0, SL Multiplier to 1.5. Enable volume confirmation and strong closes only. Use trading hours filter to avoid low-volume periods.
For 5-15 Minute Day Trading:
Set ATR Timeframe to match chart or use 5-minute, ATR Length to 14, TP1 Multiplier to 2.0, TP2 Multiplier to 3.5, SL Multiplier to 1.2. Volume confirmation recommended but optional.
For Hourly+ Swing Trading:
Set ATR Timeframe to 15-30 minute, ATR Length to 14-21, TP1 Multiplier to 2.5, TP2 Multiplier to 4.0, SL Multiplier to 1.5. Volume confirmation optional, nested channels can be enabled for multiple setups.
BACKTEST CONSIDERATIONS:
Strategy performs best during trending or volatility expansion phases
Consolidation-heavy or choppy markets produce more false signals
Shorter timeframes require wider stop loss multipliers due to noise
Commission and slippage significantly impact performance on sub-5-minute charts
Volume confirmation generally improves win rate but reduces trade frequency
ATR multipliers should be optimized for specific instrument characteristics
COMPATIBLE MARKETS:
Works on any instrument with price and volume data including forex pairs, stock indices, individual stocks, cryptocurrency, commodities, and futures contracts. Requires TradingView data feed that includes volume for volume confirmation features to function.
KNOWN LIMITATIONS:
Stop losses execute via strategy.exit() and may not fill at exact levels during gaps or extreme volatility
request.security() on lower timeframes requires higher-tier TradingView subscription
False breakouts inherent to breakout strategies cannot be completely eliminated
Performance varies significantly based on market regime (trending vs ranging)
Partial closing logic requires sufficient position size relative to TP1 close contracts setting
RISK DISCLOSURE:
Trading involves substantial risk of loss. Past performance of this or any strategy does not guarantee future results. This strategy is provided for educational purposes and automated backtesting. Thoroughly test on historical data and paper trade before risking real capital. Market conditions change and strategies that worked historically may fail in the future. Use appropriate position sizing and never risk more than you can afford to lose. Consider consulting a licensed financial advisor before making trading decisions.
ACKNOWLEDGMENT & CREDITS:
This strategy is built upon the channel detection methodology created by AlgoAlpha in the "Smart Money Breakout Channels" indicator. Full credit and appreciation to AlgoAlpha for pioneering the normalized volatility approach to identifying consolidation patterns and sharing this innovative technique with the TradingView community. The enhancements added to the original concept include automated trade execution, multi-timeframe ATR-based risk management, partial position closing by contract count, volume confirmation filtering, and real-time position monitoring.
Volume-Weighted RSI & Multi-Normalized MACD Overlay**Description**:
The "Volume-Weighted RSI & Multi-Normalized MACD Overlay" is a sophisticated indicator that plots a volume-weighted Relative Strength Index (VW-RSI) and a customizable Moving Average Convergence Divergence (MACD) directly on the price chart, enhancing momentum and trend analysis for traders. Designed for stocks, forex, crypto, and more, it supports multi-timeframe (MTF) analysis and offers flexible normalization and scaling options for precise visualization.
**Key Features**:
- **Volume-Weighted RSI**: A volume-sensitive RSI normalized to a configurable range (default: -50/+50), with optional smoothing (SMA, EMA, WMA, VWMA, SMMA, or Bollinger Bands). Overbought (+20) and oversold (-20) lines are plotted relative to a user-defined price source (default: ohlc4).
- **Multi-Normalized MACD**: Supports five bounded normalization methods: Min-Max, Volatility Min-Max, Hyperbolic Tangent, Arctangent, and Min-Max with Smoothing, scaled to the same range as RSI for unified analysis.
- **Price Chart Overlay**: Plots RSI, RSI MA, MACD, MACD Signal, zero-line, overbought (+20), and oversold (-20) lines, anchored to a customizable price source (e.g., ohlc4, hl2).
- **Flexible Scaling**: Choose between high/low range (default) or ATR-based scaling, with separate lookbacks for RSI and MACD (default: 128). Adjust offset and scale factor multipliers for fine-tuned visuals.
- **Customizable Display**: Toggles for RSI (with MA), MACD (with Signal), zero-line, overbought/oversold lines, and RSI background coloring (>20/< -20). Dynamic MACD colors (cyan/magenta) and transparency options enhance clarity.
**How to Use**:
1. Add to any chart (e.g., BTCUSD, SPY, 1H, 1D).
2. Configure settings:
- **General**: Set bounds (-50/+50), timeframe, scaling (high/low or ATR), zero-line source (e.g., ohlc4), and multipliers.
- **RSI**: Adjust price source, length (9), and smoothing options.
- **MACD**: Select price source, lengths (9/21/9), and normalization (e.g., Volatility Min-Max).
- **Display Options**: Toggle lines and background; adjust transparency.
3. Interpret signals: RSI > +20 (overbought), < -20 (oversold); MACD/Signal crosses for momentum; zero-line as reference.
4. Use with the companion "Volume-Weighted RSI & Multi-Normalized MACD" script for pane-based analysis if desired.
**Why Use It?**
Ideal for traders seeking a visually intuitive overlay of RSI and MACD on price action, with customizable scaling and MTF support. Perfect for trend-following, mean-reversion, and cross-market strategies.
**Notes**:
- Ensure a bounded normalization (e.g., Volatility Min-Max) is selected for MACD plotting.
- Adjust scaling multipliers for optimal visibility on volatile assets.
- Feedback welcome to enhance future versions!
**Author**: nepolix
VWAP Divergence LevelsThis is an indicator which paints levels on your chart based on degrees of historical divergence from VWAP. I conceived and designed it for my personal use trading index funds (QQQ, SPY) on the NYSE. It is one of the primary indicators I use on a daily basis, and may be of interest to traders with a focus on volume.
This indicator works by tracking, each session, the maximum amount that price diverges from VWAP that day. The lookback period is locked to 21 days, or about 1 month's worth of trading days. Bearish and bullish divergences are tracked separately.
From this data, we take the average of all maximum daily bullish divergences (the "Mean Bull" divergence amount), and paint that line relative to the current VWAP. In other words, if the VWAP for the current bar is at $2.50 and the Mean Bull divergence is $0.40, the line will be painted at $2.90. The largest value from the lookback period ("Max Bull") is also painted. The same is done for bearish divergences.
Finally, midpoints between the VWAP and the Mean and Max levels are drawn. Optionally, quarter-levels are drawn in the spaces between Mean and VWAP.
When I created this indicator, I found that price very often responds and retraces around these levels, allowing me to more easily visualize the relationship between price and volume. Personally, I have found it useful for finding entrance and exit points-- especially when the levels coincide with important previous daily levels, or other support/resistance points.
Good luck & happy trading.
Disclaimer : Use at your own risk. This indicator and the strategy described herein are not in any way financial advice, nor does the author of this script make any claims about the effectiveness of this indicator or of any related strategy, which may depend highly on the discretion and skill of the trader executing it, among many other factors outside of the author's control. The author of this script accepts no liability, and is not responsible for any trading decisions that you may or may not make as a result of this indicator. You should expect to lose money if using this indicator.
Volume-Weighted RSI & Multi-Normalized MACD### Description for Publishing: Volume-Weighted RSI & Multi-Normalized MACD
**Overview**
The "Volume-Weighted RSI & Multi-Normalized MACD" indicator is a powerful and versatile tool designed for traders seeking enhanced momentum and trend analysis. Combining a volume-weighted Relative Strength Index (VW-RSI) with a customizable Moving Average Convergence Divergence (MACD) featuring multiple normalization methods, this indicator provides deep insights into market dynamics. It supports multi-timeframe (MTF) analysis and includes an optional stepped plotting mode for discrete signal visualization, making it ideal for both trend-following and mean-reversion strategies across various markets (stocks, forex, crypto, etc.).
**Key Features**
1. **Volume-Weighted RSI (VW-RSI)**:
- A modified RSI that incorporates trading volume for greater sensitivity to market activity.
- Normalized to a user-defined range (default: -50 to +50) for consistent analysis.
- Optional smoothing with multiple moving average types (SMA, EMA, WMA, VWMA, SMMA, or SMA with Bollinger Bands) to reduce noise and highlight trends.
- Overbought (+20) and oversold (-20) levels for quick reference.
2. **Multi-Normalized MACD**:
- Offers six normalization methods for MACD, allowing traders to tailor the output to their strategy:
- Normalized Volume Weighted MACD (unbounded).
- Min-Max Normalization (bounded).
- Volatility Normalization (unbounded, volatility-adjusted).
- Volatility Normalization with Min-Max (bounded).
- Hyperbolic Tangent Normalization (bounded).
- Arctangent Normalization (bounded).
- Min-Max with Smoothing (bounded).
- All bounded methods scale to the user-defined range (default: -50 to +50), ensuring comparability with VW-RSI.
- Dynamic color changes for MACD line (lime/red) and histogram (aqua/blue/red/maroon) based on momentum and signal line crosses.
3. **Stepped Plotting Mode**:
- Optional mode to plot RSI and MACD as discrete, stepped lines, reducing noise by only updating when values change significantly (configurable thresholds).
- Ideal for traders focusing on clear, actionable signal changes.
4. **Multi-Timeframe Support**:
- Configurable timeframe input (default: chart timeframe) for analyzing RSI and MACD on higher or lower timeframes, enhancing cross-timeframe strategies.
5. **Customizable Display**:
- Toggle options to show/hide MACD line, signal line, histogram, and cross dots.
- Bollinger Bands for RSI smoothing (optional) with adjustable standard deviation multiplier.
- Clear visual cues with horizontal lines for overbought/oversold levels, midline, and MACD bounds.
**Usage Instructions**
1. **Add to Chart**: Apply the indicator to any symbol (e.g., BTCUSD, SPY) on any timeframe (1H, 1D, etc.).
2. **Configure Settings**:
- **General**: Adjust `Lower Bound` (-50 default) and `Upper Bound` (+50 default) for the output range. Set `Timeframe` for MTF analysis. Enable `Stepped?` for discrete plotting.
- **RSI**: Choose `Price Source` (default: ohlc4), `RSI Length` (default: 9), and smoothing options (e.g., EMA, Bollinger Bands). Adjust `RSI Diff Threshold` for stepped mode.
- **MACD**: Select `Price Source`, `Fast Length` (9), `Slow Length` (21), `Signal Length` (9), and a normalization method (default: Volatility Min-Max). Adjust `MACD Diff Threshold` for stepped mode.
- **Display Options**: Toggle MACD components and histogram colors for clarity.
3. **Interpretation**:
- **VW-RSI**: Watch for crosses above +20 (overbought) or below -20 (oversold) for potential reversals. Use smoothed RSI or Bollinger Bands for trend confirmation.
- **MACD**: Look for MACD/Signal line crosses (dots indicate crossings) and histogram changes for momentum shifts. Bounded normalizations align with RSI for unified analysis.
- **Stepped Mode**: Focus on significant changes in RSI/MACD for clearer signals.
4. **Companion Overlay**: For visualization on the main price chart, use the companion script "VW-RSI & MACD Price Overlay" (available separately, requires this script to be published). It plots RSI and MACD as price-scaled echo lines, with toggles to show/hide and customizable scaling (high/low or ATR).
**Who Is This For?**
- **Trend Traders**: Use MACD normalizations and MTF to identify momentum shifts across timeframes.
- **Mean-Reversion Traders**: Leverage VW-RSI’s overbought/oversold signals for entry/exit points.
- **Technical Analysts**: Customize normalization and smoothing to match specific market conditions.
- **All Markets**: Works on stocks, forex, cryptocurrencies, and more, with any timeframe.
**Notes**
- Unbounded MACD normalizations (`enable_nvw`, `enable_vol`) may produce values outside -50/+50, suitable for volatility-focused strategies.
- For price chart overlay, publish this script and use its ID in the companion script’s `request.security` call.
- Adjust scaling inputs in the companion script for optimal visualization on volatile or stable assets.
**Author’s Note**
Developed by NEPOLIX, this indicator combines volume-weighted precision with flexible normalization for robust technical analysis. Feedback and suggestions are welcome to enhance future versions!
BioSwarm Imprinter™BioSwarm Imprinter™ — Agent-Based Consensus for Traders
What it is
BioSwarm Imprinter™ is a non-repainting, agent-based sentiment oscillator. It fuses many short-to-medium lookback “opinions” into one 0–100 consensus line that is easy to read at a glance (50 = neutral, >55 bullish bias, <45 bearish bias). The engine borrows from swarm intelligence: many simple voters (agents) adapt their influence over time based on how well they’ve been predicting price, so the crowd gets smarter as conditions change.
Use it to:
• Detect emerging trends sooner without overreacting to noise.
• Filter mean-reversion vs continuation opportunities.
• Gate entries with a confidence score that reflects both strength and persistence of the move.
• Combine with your execution tools (VWAP/ORB/levels) as a state filter rather than a trade signal by itself.
⸻
Why it’s different
• Swarm learning: Each agent improves or decays its “fitness” depending on whether its vote matched the next bar’s direction. High-fitness agents matter more; weak agents fade.
• Multi-horizon by design: The crowd is composed of fixed, simple lookbacks spread from lenMin to lenMax. You get a blended, robust view instead of a single fragile parameter.
• Two complementary lenses: Each agent evaluates RSI-style balance (via Wilder’s RMA) and momentum (EMA deviation). You decide the weight of each.
• No repaint, no MTF pitfalls: Everything runs on the chart’s timeframe with bar-close confirmation; no request.security() or forward references.
• Actionable UI: A clean consensus line, optional regime background, confidence heat, and triangle markers when thresholds are crossed.
⸻
What you see on the chart
• Consensus line (0–100): Smoothed to your preference; color/area makes bull/bear zones obvious.
• Regime coloring (optional): Light green in bull zone, light red in bear zone; neutral otherwise.
• Confidence heat: A small gauge/number (0–100) that combines distance from neutral and recent persistence.
• Markers (optional): Triangles when consensus crosses up through your bull threshold (e.g., 55) or down through your bear threshold (e.g., 45).
• Info panel (optional): Consensus value, regime, confidence, number of agents, and basic diagnostics.
⸻
How it works (under the hood)
1. Horizon bins: The range is divided into numBins. Each bin has a fixed, simple integer length (crucial for Pine’s safety rules).
2. Per-bin features (computed every bar):
• RSI-style balance using Wilder’s RMA (not ta.rsi()), then mapped to −1…+1.
• Momentum as (close − EMA(L)) / EMA(L) (dimensionless drift).
3. Agent vote: For its assigned bin, an agent forms a weighted score: score = wRSI*RSI_like + wMOM*Momentum. A small dead-band near zero suppresses chop; votes are +1/−1/0.
4. Fitness update (bar close): If the agent’s previous vote agreed with the next bar’s direction, multiply its fitness by learnGain; otherwise by learnPain. Fitness is clamped so it never explodes or dies.
5. Consensus: Weighted average of all votes using fitness as weights → map to 0–100 and smooth with EMA.
Why it doesn’t repaint:
• No future references, no MTF resampling, fitness updates only on confirmed bars.
• All TA primitives (RMA/EMA/deltas) are computed every bar unconditionally.
⸻
Signals & confidence
• Bullish bias: consensus ≥ bullThr (e.g., 55).
• Bearish bias: consensus ≤ bearThr (e.g., 45).
• Confidence (0–100):
• Distance score: how far consensus is from 50.
• Momentum score: how strong the recent change is versus its recent average.
• Combined into a single gate; start filtering entries at ≥60 for higher quality.
Tip: For range sessions, raise thresholds (60/40) and increase smoothing; for momentum sessions, lower smoothing and keep thresholds at 55/45.
⸻
Inputs you’ll actually tune
• Agents & horizons:
• N_agents (e.g., 64–128)
• lenMin / lenMax (e.g., 6–30 intraday, 10–60 swing)
• numBins (e.g., 12–24)
• Weights & smoothing:
• wRSI vs wMOM (e.g., 0.7/0.3 for FX & indices; 0.6/0.4 for crypto)
• deadBand (0.03–0.08)
• consSmooth (3–8)
• Thresholds & hygiene:
• bullThr/bearThr (55/45 default)
• cooldownBars to avoid signal spam
⸻
Playbooks (ready-to-use)
1) Breakout / Trend continuation
• Timeframe: 15m–1h for day/swing.
• Filter: Take longs only when consensus > 55 and confidence ≥ 60.
• Execution: Use your ORB/VWAP/pullback trigger for entry. Trail with swing lows or 1.5×ATR. Exit on a close back under 50 or when a bearish signal prints.
2) Mean reversion (fade)
• When: Sideways days or low-volatility clusters.
• Setup: Increase deadBand and consSmooth.
• Signal: Bearish fades when consensus rolls over below ≈55 but stays above 50; bullish fades when it rolls up above ≈45 but stays below 50.
• Targets: The neutral zone (~50) as the first take-profit.
3) Multi-TF alignment
• Keep BioSwarm on 1H for bias, execute on 5–15m:
• Only take entries in the direction of the 1H consensus.
• Skip counter-bias scalps unless confidence is very low (explicit mean-reversion plan).
⸻
Integrations that work
• DynamoSent Pro+ (macro bias): Only act when macro bias and swarm consensus agree.
• ORB + Session VWAP Pro: Trade London/NY ORB breakouts that retest while consensus >55 (long) or <45 (short).
• Levels/Orderflow: BioSwarm is your “go / no-go”; execution stays with your usual triggers.
⸻
Quick start
1. Drop the indicator on a 1H chart.
2. Start with: N_agents=64, lenMin=6, lenMax=30, numBins=16, deadBand=0.06, consSmooth=5, thresholds 55/45.
3. Trade only when confidence ≥ 60.
4. Add your favorite execution tool (VWAP/levels/OR) for entries & exits.
⸻
Non-repainting & safety notes
• No request.security(); no hidden lookahead.
• Bar-close confirmation for fitness and signals.
• All TA calls are unconditional (no “sometimes called” warnings).
• No series-length inputs to RSI/EMA — we use RMA/EMA formulas that accept fixed simple ints per bin.
⸻
Known limits & tips
• Too many signals? Raise deadBand, increase consSmooth, widen thresholds to 60/40.
• Too few signals? Lower deadBand, reduce consSmooth, narrow thresholds to 53/47.
• Over-fitting risk: Keep learnGain/learnPain modest (e.g., ×1.04 / ×0.96).
• Compute load: Large N_agents × numBins is heavier; scale to your device.
⸻
Example recipes
EURUSD 1H (swing):
lenMin=8, lenMax=34, numBins=16, wRSI=0.7, wMOM=0.3, deadBand=0.06, consSmooth=6, thr=55/45
Buy breakouts when consensus >55 and confidence ≥60; confirm with 5–15m pullback to VWAP or level.
SPY 15m (US session):
lenMin=6, lenMax=24, numBins=12, consSmooth=4, deadBand=0.05
On trend days, stay with longs as long as consensus >55; add on shallow pullbacks.
BTC 1H (24/7):
Increase momentum weight: wRSI=0.6, wMOM=0.4, extend lenMax to ~50. Use dynamic stops (ATR) and partials on strong verticals.
⸻
Final word
BioSwarm is a state engine: it tells you when the market is primed to continue or mean-revert. Pair it with your entries and risk framework to turn that state into trades. If you’d like, I can supply a companion strategy template that consumes the consensus and back-tests the three playbooks (Breakout/Fade/Flip) with standard risk management.
VIX CCI Oscillator [Compression + EMA Trigger + Bounce Glow]VIX CCI OSCILLATOR
ADJ CHART FOR YOUR LIKING
NOT AS SMOOTH AS PREVIOUS VERSION (STOCH)
SHOWS TIGER SIGNAL ON EMA
SAMEOUTPUT
HUD Box: emoji-coded tactical feedback
bounce 100 "💥 Expansion" :
bounce 0.8 "🔴 Overbought" :
bounce 0.618 "📉 Distribution" :
bounce 0.5 "🧠 Midline" :
bounce 0.382 "📈 Accumulation" :
bounce 0.2 "🟢 Oversold" :
bounce0.0 "💣 Expansion" : "⚪ Neutral"
Tiger EMA/STOCH
This logic checks if the oscillator is trending above or below its 48-period EMA,
If above, it paints the line GREEN🟢 (bullish),
If below, it paints it RED🔴 (bearish),
If compression is active, it overrides both with purple🟣 to highlight tactical squeeze conditions,
⚠️WARNING⚠️
ALWAYS REMEMBER THIS CHART IS VIX/USD
IN MOST CASES SPY MOVES VICE VERSA
I AM NOT RESPOSIBLE FOR YOUR OWN ACTIONS/TRADE IDEAS
Phoenix Pattern Scanner v1.3.2 - Multi-Pattern, Score & PresetsAdvanced multi-pattern scanner with intelligent presets and heuristic scoring system.
🎯 KEY FEATURES
- 5 Trading Style Presets: Conservative, Balanced, Aggressive, Swing, Scalp
- 4 Core Patterns: RVOL (unusual volume), Momentum breakout, RSI bounce, Gap & Go
- Heuristic Score (0-100): Visual ranking system for signal quality
- Per-Pattern Anti-Noise: Prevents signal spam with configurable minimum distance
- Relative Strength %: Compare performance vs benchmark (default SPY)
- Squeeze Detection: Identifies low volatility compression (BB inside Keltner)
📊 SMART FILTERS
- Minimum price and average dollar volume gates
- Weekly trend confirmation (optional)
- Separate lookback periods for each pattern
- Configurable RSI length and Gap parameters
⚙️ CUSTOMIZATION
- All parameters adjustable via settings
- Toggle individual components on/off
- Clean info panel with real-time metrics
- Color-coded score visualization
📍 BEST USED ON
- Daily timeframe (primary design)
- Liquid stocks above $5
- As a screening tool alongside your analysis
⚠️ IMPORTANT NOTES
- Educational/informational tool only
- NOT financial advice or trade signals
- Heuristic score is diagnostic, not predictive
- Past pattern behavior ≠ future results
💡 QUICK START
1. Select a preset matching your style
2. Adjust filters for your market
3. Set alerts for patterns you want to track
4. Use score as relative ranking, not absolute signal
Version 1.3.2 - Stable release
Open source - Free to use and modify
Feedback and improvements welcome
VIX Stoch RSI Oscillator [HUD Box + Compression]vix stoch rsi Oscillator
watch volatility without switching charts,
gives signal based off fib levels 0-100 / volatility,
emoji box to show signal,
HUD Box: emoji-coded tactical feedback
bounce 100 "💥 Expansion" :
bounce 0.8 "🔴 Overbought" :
bounce 0.618 "📉 Distribution" :
bounce 0.5 "🧠 Midline" :
bounce 0.382 "📈 Accumulation" :
bounce 0.2 "🟢 Oversold" :
bounce0.0 "💣 Expansion" : "⚪ Neutral"
Tiger EMA/STOCH
This logic checks if the oscillator is trending above or below its 48-period EMA,
If above, it paints the line GREEN🟢 (bullish),
If below, it paints it RED🔴 (bearish),
If compression is active, it overrides both with purple🟣 to highlight tactical squeeze conditions,
⚠️WARNING⚠️
ALWAYS REMEMBER THIS CHART IS VIX/USD
IN MOST CASES SPY MOVES VICE VERSA
I AM NOT RESPOSIBLE FOR YOUR OWN ACTIONS/TRADE IDEAS
AMEX:USD
TVC:VIX
SP:SPX
Sniper Swing — Short TF (Clean Signals) [v6]📘 How to Use the Sniper Swing Indicator
1. What It Does
It looks for short-term swing breaks in price.
It uses an oscillator (RSI/Stoch) and swing pivots to confirm moves.
It gives you 3 clear signals only:
BUY → Enter long (expecting price to go up).
Gay bear → Enter short (expecting price to go down).
EXIT → Close your trade (long or short).
Candles also change color:
Green = in a BUY trade.
Red = in a Gay bear trade.
Neutral (gray/none) = no trade.
2. When to Use
Works best on short timeframes (1m–5m) for scalping/intraday.
Use on liquid markets (MES/ES, NQ, SPY, BTC, ETH).
Avoid dead hours with no volume (like overnight futures lull or midday chop).
3. How to Trade With It
A. BUY trade
Wait for a BUY triangle below the candle.
Confirm:
Candle turned green.
Price broke a recent swing high.
Oscillator shows strength (indicator does this for you).
Enter long at the close of that candle.
Place your stop-loss:
At the yellow stop line (auto trailing stop), or
Just below the last swing low.
Stay in while candles are green.
Exit when:
An orange X appears, or
Price hits your stop.
B. Gay bear (short) trade
Wait for a Gay bear triangle above the candle.
Confirm:
Candle turned red.
Price broke a recent swing low.
Oscillator shows weakness.
Enter short at the close of that candle.
Place stop-loss:
At the yellow stop line, or
Just above the last swing high.
Stay in while candles are red.
Exit on an orange X or stop hit.
4. Pro Tips for New Traders
Only take one signal at a time → don’t double dip.
Quality > Quantity: ignore weak, sideways markets. Best signals happen during trends.
Start small: trade micros (MES) or small position sizes.
Use alerts: set TradingView alerts for BUY/Gay bear/EXIT so you don’t miss setups.
Think of the indicator like a navigator: it tells you the likely path, but you’re the driver → always manage risk.
5. Quick Mental Checklist
Signal? (BUY or Gay bear triangle)
Confirmed? (candle color + swing break)
Enter? (on close)
Stop? (yellow line or swing)
Exit? (orange X or stop)
Golden Duck Runner With TargetsGolden Duck Runner With Targets
Overview
The Golden Duck Runner is a comprehensive trend-following indicator designed for intraday and swing trading. It combines dual EMA analysis with pullback detection to identify high-probability entry points in trending markets.
Key Features
Core Signal Logic
Dual EMA System: Uses a fast EMA (default 18) and trend filter EMA (default 111)
Pullback Detection: Identifies when price pulls back to the fast EMA while staying above/below the trend filter
Trend Confirmation: Only generates signals in the direction of the overall trend
Visual Elements
Dynamic EMA Colors: Golden fast EMA, with trend filter changing from teal (uptrend) to orange (downtrend)
Entry Signals: Clear golden arrows marking buy/sell opportunities
Target Levels: Displays three take profit levels and stop loss with visual confirmation
Professional Dashboard: Real-time position and trend information
Risk Management
Fixed Tick-Based Targets: Consistent risk/reward ratios across all instruments
Multiple Take Profits: Three progressive profit-taking levels (30, 50, 75 ticks)
Stop Loss Protection: 36-tick stop loss with visual tracking
Position Duration Limit: Automatic closure after 20 bars if targets not reached
Alert System
Comprehensive alert notifications for:
Long and short entry signals
Individual take profit level hits (TP1, TP2, TP3)
Stop loss activation
Combined alerts for any entry or profit-taking event
How It Works
Entry Conditions
Long Signal:
Market in uptrend (Fast EMA > Trend Filter EMA)
Price pulls back below fast EMA but stays above trend filter EMA
Price closes back above fast EMA with momentum
Short Signal:
Market in downtrend (Fast EMA < Trend Filter EMA)
Price pulls back above fast EMA but stays below trend filter EMA
Price closes back below fast EMA with momentum
Exit Strategy
TP1: 30 ticks from entry (partial profit)
TP2: 50 ticks from entry (partial profit)
TP3: 75 ticks from entry (final target)
Stop Loss: 36 ticks against entry
Time Exit: 20 bars maximum hold time
Customization Options
Adjustable EMA periods for different timeframes
Configurable stop loss and take profit levels
Toggle visibility of EMAs, signals, and visual elements
Professional color scheme optimized for all chart backgrounds
Best Use Cases
Futures Trading: ES, NQ, YM, RTY with tick-based precision
Forex Pairs: Major and minor currency pairs
Crypto Markets: Bitcoin, Ethereum, and altcoins
Stock Indices: SPY, QQQ, and sector ETFs
Recommended Timeframes
Scalping: 1m, 3m, 5m charts
Intraday: 15m, 30m, 1H charts
Swing Trading: 4H, 1D charts
Educational Value
This indicator teaches traders:
Trend identification and confirmation
Pullback trading strategies
Proper risk management techniques
Multi-target profit-taking approaches
Important Notes
Not Financial Advice: This indicator is for educational and analysis purposes only
Backtesting Recommended: Test on historical data before live trading
Risk Management: Always use proper position sizing and risk controls
Market Conditions: Performance may vary in different market environments
Technical Specifications
Version: Pine Script v5
Overlay: True (plots on price chart)
Alerts: Full alert integration for automated trading systems
Performance: Optimized for real-time data processing
Compatibility: Works on all TradingView subscription levels
Disclaimer: Trading involves substantial risk of loss and is not suitable for all investors. Past performance does not guarantee future results. Always trade with proper risk management and never risk more than you can afford to lose.
ICT FVG Buy/Sell SignalsThis bot is built on ICT (Inner Circle Trader) concepts such as:
Fair Value Gaps (FVGs) – imbalance zones between candles.
Consequent Encroachment (CE) – the midpoint of a gap.
Premium / Discount Arrays – dealing ranges split into premium (sell-side) and discount (buy-side) zones.
Displacement candles – strong impulsive moves that confirm intent.
The bot scans for FVGs, marks CE levels, and waits for price to return to these levels.
When price revisits a valid FVG zone with displacement confirmation and in the correct PD array, the bot generates a BUY or SELL signal.
✅ Signal Rules
Buy Signal
Price trades back into a Bullish FVG.
Current bar shows bullish displacement (large bullish body relative to ATR).
Price is in discount territory of the current dealing range (if PD filter is enabled).
Close is above the CE line of the FVG.
Sell Signal
Price trades back into a Bearish FVG.
Current bar shows bearish displacement.
Price is in premium territory of the current dealing range.
Close is below the CE line of the FVG.
🎯 What You’ll See on the Chart
Green “BUY” labels below candles when long signals trigger.
Red “SELL” labels above candles when short signals trigger.
Shaded background:
Red = Premium zone (sell side).
Teal = Discount zone (buy side).
Yellow line = dealing range midpoint (equilibrium).
Dots on CE lines = midpoints of the latest bullish/bearish FVG.
🔔 Alerts
ICT Buy → Triggers when a bullish setup confirms.
ICT Sell → Triggers when a bearish setup confirms.
You can connect these alerts to:
TradingView notifications.
Webhooks (for brokers or bots like MetaTrader, NinjaTrader, or Discord).
⚙️ Settings
Swing length – how many bars to use when detecting swing highs/lows for the dealing range.
Use PD filter – toggle ON/OFF for requiring discount/premium alignment.
Displacement ATR multiple – how strong the candle body must be compared to ATR to count as a displacement.
ATR length – used for displacement filter.
📈 Supported Markets
Works on all symbols and timeframes.
Commonly applied to:
NASDAQ (NQ, QQQ)
S&P500 (ES, SPX, SPY)
Forex pairs
Crypto (BTC, ETH, etc.)
⚠️ Disclaimer
This bot is for educational purposes only. It does not guarantee profits and should be tested on demo accounts first.
Always apply proper risk management before trading live.
Fear & Greed [theUltimator5]This indicator attempts to replicate CNN's Fear & Greed Index methodology to measure market sentiment on a scale from 0-100. It combines seven key market components into a single sentiment score, where lower values indicate fear and higher values indicate greed.
Note: It is impossible to perfectly replicate the true Fear & Greed indicator due to data limitations, so this indicator attempts to best replicate the output for each of the (7) components using available data.
The uniqueness of this indicator comes from the calculation methods for the 7 components as well as the visual representation of the data, which includes a table and selectable plots for each of the 7 components which make up the overall sentiment. Existing variants of the Fear & Greed Index have substantial flaws in the calculations of several of the components which result in warped final sentiment numbers. This indicator attempts to better track all 7 components and provide a closer model to the actual Fear & Greed index.
Here are the seven components and a brief description of how each are calculated:
1. Market Momentum
Calculation: S&P 500 current price vs. 125-day moving average
Measures how far the market has moved from its long-term trend
Uses CNN-style Z-score normalization over 252 trading days
Higher values indicate strong upward momentum (greed)
Lower values suggest declining momentum (fear)
2. Stock Strength
Calculation: S&P 500 RSI scaled to 252-day range
Uses 14-period RSI of the S&P 500 index
Normalizes RSI values based on their 252-day minimum and maximum
Measures overbought/oversold conditions relative to recent history
Higher values indicate overbought conditions (greed)
Lower values suggest oversold conditions (fear)
3. Price Breadth
Calculation: Modified McClellan Oscillator
Primary: Uses NYSE advancing vs. declining issues with 7-day smoothing
Fallback: Compares sector performance (QQQ, IWM vs. SPY)
Measures how many stocks participate in market moves
Broader participation indicates healthier trends
Narrow breadth suggests selective or weak trends
4. Put/Call Ratio
Calculation: Inverted CBOE Put/Call ratios
Primary: CBOE Equity-only Put/Call ratio (more sensitive)
Fallback: CBOE Total Put/Call ratio
Uses 5-day average and applies CNN normalization
Higher put/call ratios indicate fear (inverted to lower scores)
Lower put/call ratios suggest complacency (higher scores)
5. Market Volatility
Calculation: VIX relative to its 50-day average
Compares current VIX level to its 50-day moving average
Measures deviation from normal volatility expectations
Higher VIX relative to average indicates fear (lower scores)
Lower relative VIX suggests complacency (higher scores)
6. Safe Haven Demand
Calculation: Stock returns vs. bond yield changes
Compares 20-day smoothed S&P 500 returns to Treasury yield changes
When stocks outperform bonds, indicates risk appetite (higher scores)
When bonds outperform stocks, suggests risk aversion (lower scores)
Uses Treasury 10-year yields as the safe haven benchmark
7. Junk Bond Demand
Calculation: High-yield bond spread analysis
Measures yield spread between junk bonds (JNK ETF) and Treasuries
Compares current spread to its 5-day average
Narrowing spreads indicate risk appetite (higher scores)
Widening spreads suggest risk aversion (lower scores)
The combined sentiment is plotted as a single line which changes color based on the current sentiment value.
0-25: Extreme Fear (Red) - Market panic, oversold conditions
26-45: Fear (Orange) - Cautious sentiment, bearish bias
46-55: Neutral (Yellow) - Balanced market sentiment
56-75: Greed (Light Green) - Optimistic sentiment, bullish bias
76-100: Extreme Greed (Green) - Market euphoria, potentially overbought
There are dashed lines to represent the threshold values for each of the sentiments to better visualize transitions.
The table displays each of the (7) components of the index and their respective values. The table can be toggled on/off and the position can be moved.
An optional secondary line can be toggled on to display (1) of the (7) components as a unique color and the component name and value will highlight on the table. The secondary line can be used to dig into the main driving forces behind the overall index value.
Benchmark Relative Performance BRPBenchmark Relative Performance (BRP) is a comprehensive technical analysis tool that compares any stock's performance against a chosen benchmark (QQQ, SPY, IWM, etc.) to identify outperformance and underperformance patterns.
Key Features:
Dual-line visualization: Shows both ticker and relative strength performance
Dynamic color coding: 5-level color system indicating performance strength
Customizable benchmark: Choose from any ticker via TradingView's symbol picker
Volume weighting: Optional volume analysis for stronger signal confirmation
Performance zones: Visual thresholds for strong/moderate performance levels
Compact info table: Real-time performance status and values
What It Shows:
Benchmark Performance Line (Blue): Shows your chosen benchmark's percentage performance
Relative Strength Line (Color-coded): Shows how much the ticker outperforms/underperforms
Fill Area: Visual gap between ticker and benchmark performance
Performance Zones: Dotted lines marking significant performance thresholds
Color System:
Green: Strong outperformance (above custom threshold)
Lime: Standard outperformance
Yellow: Neutral/Equal performance
Orange: Standard underperformance
Red: Strong underperformance (below custom threshold)
Best Used For:
Stock selection and rotation strategies
Sector/ETF relative strength analysis
Identifying momentum shifts vs benchmarks
Portfolio performance evaluation
Market timing based on relative performance
Settings:
Customizable lookback period (default: 20)
Adjustable strong performance threshold (default: 5%)
Optional volume weighting factor
Full table customization (position, colors, fonts)
Performance display (percentage or decimal)
Perfect for traders and investors who want to identify stocks showing relative strength or weakness compared to major market benchmarks.
1D Exit Alerts"A Daily Exit LONG" + "B Daily Exit SHORT":
I'm not using this one anymore since they often make me worry more than necessary, and I focus more on aiming to reach specific price targets, or using the 5m Exit alerts instead.
Also swing trades require less time-sensitive operations than day trades, so for me personally they felt a bit redundant.
But maybe it helps some of you:
There are 4 conditions that trigger it. As with 5m Exit Alerts, the triggering reasons show up in the exit alert message (unfortunately only as a number, since alert messages can't have "dynamic text" in TradingView).
Here are the conditions sorted from best to worst:
Gap Up / Down. Better check SPY and the stock whether a Gap Reversal is likely to happen (aka get out) or whether the stock will keep going higher / lower.
Earnings: End of day or Tomorrow morning. Alert is triggered at beginning of morning before earnings, and then again 15m before market close.
Mental stop loss: Broke daily EMA 8 or SMA - in the wrong direction....
Wrong direction: Broke below / above yesterday's Low / High. It's not immediately triggered, but only after re-touching VWAP again, to prevent too impulsive exits.
As with 5m Exit alerts: Always consider how the market and stock looks like, then decide whether to exit or not! These are meant to make you look at the chart, not to FOMO-exit.
"X Candle Close":
Same as in 1D Enter alert: Is triggered 15m before market close (I put it in here as well because I kept forgetting whether I put this one into Enter or Exit alerts...)
More infos: www.reddit.com
KING_HPM_LPM_SPYName: KING_HPM_LPM_SPY
This indicator identifies and plots the high (HPM) and low (LPM) of the pre-market session for the SPY ticker (or any chart it's applied to), based on the New York timezone (04:00 - 09:30 AM).
Functionality:
Tracks the high and low during the premarket hours.
When the premarket ends (09:30 AM NY time), it draws horizontal lines at the premarket high and low levels.
It also adds labels:
"HPM" for the high
"LPM" for the low
These lines and labels are customizable (style, width, color).
It keeps the plotted lines/labels for a user-defined number of days (default = 2).
If the number of stored days exceeds the limit, it automatically deletes the oldest lines and labels to maintain only the most recent days visible.
Real Relative Sector Strength - NormalizedShows RS/RW, which is esp. helpful if it's not fully clear based on the stock's chart movement compared to SPY's movement.
"Glowing green" = safely strong
"Glowing red" = safely weak
More infos: www.reddit.com
All-In-One LinesIt's like a "torch in the darkness" that shows the "terrain" in which you are trading, and in which the candle movement unfolds.
It is meant to be used on 5m + 1D intervals. Additionally useful on 15m, 30m, and 1W if you use these.
Shows:
VWAP (on < 1D interval)
EMA 8 from 5m/15m/30m/1D/1W
Yesterday's High (on < 1D interval)
Yesterday's Low (on < 1D interval)
SMA 50/100/200
AVWAPE / AVWAPQ (if SPY) incl. +1/-1 Stdev for each
More infos: www.reddit.com
ForecastForecast (FC), indicator documentation
Type: Study, not a strategy
Primary timeframe: 1D chart, most plots and the on-chart table only render on daily bars
Inspiration: Robert Carver’s “forecast” concept from Advanced Futures Trading Strategies, using normalized, capped signals for comparability across markets
⸻
What the indicator does
FC builds a volatility-normalized momentum forecast for a chosen symbol, optionally versus a benchmark. It combines an EWMAC composite with a channel breakout composite, then caps the result to a common scale. You can run it in three data modes:
• Absolute: Forecast of the selected symbol
• Relative: Forecast of the ratio symbol / benchmark
• Combined: Average of Absolute and Relative
A compact table can summarize the current forecast, short-term direction on the forecast EMAs, correlation versus the benchmark, and ATR-scaled distances to common price EMAs.
⸻
PineScreener, relative-strength screening
This indicator is excellent for screening on relative strength in PineScreener, since the forecast is volatility-normalized and capped on a common scale.
Available PineScreener columns
PineScreener reads the plotted series. You will see at least these columns:
• FC, the capped forecast
• from EMA20, (price − EMA20) / ATR in ATR multiples
• from EMA50, (price − EMA50) / ATR in ATR multiples
• ATR, ATR as a percent of price
• Corr, weekly correlation with the chosen benchmark
Relative mode and Combined mode are recommended for cross-sectional screens. In Relative mode the calculation uses symbol / benchmark, so ensure the ratio ticker exists for your data source.
⸻
How it works, step by step
1. Volatility model
Compute exponentially weighted mean and variance of daily percent returns on D, annualize, optionally blend with a long lookback using 10y %, then convert to a price-scaled sigma.
2. EWMAC momentum, three legs
Daily legs: EMA(8) − EMA(32), EMA(16) − EMA(64), EMA(32) − EMA(128).
Divide by price-scaled sigma, multiply by leg scalars, cap to Cap = 20, average, then apply a small FDM factor.
3. Breakout momentum, three channels
Smoothed position inside 40, 80, and 160 day channels, each scaled, then averaged.
4. Composite forecast
Average the EWMAC composite and the breakout composite, then cap to ±20.
Relative mode runs the same logic on symbol / benchmark.
Combined mode averages Absolute and Relative composites.
5. Weekly correlation
Pearson correlation between weekly closes of the asset and the benchmark over a user-set length.
6. Direction overlay
Two EMAs on the forecast series plus optional green or red background by sign, and optional horizontal level shading around 0, ±5, ±10, ±15, ±20.
⸻
Plots
• FC, capped forecast on the daily chart
• 8-32 Abs, 8-32 Rel, single-leg EWMAC plus breakout view
• 8-32-128 Abs, 8-32-128 Rel, three-leg composite views
• from EMA20, from EMA50, (price − EMA) / ATR
• ATR, ATR as a percent of price
• Corr, weekly correlation with the benchmark
• Forecast EMA1 and EMA2, EMAs of the forecast with an optional fill
• Backgrounds and guide lines, optional sign-based background, optional 0, ±5, ±10, ±15, ±20 guides
Most plots and the table are gated by timeframe.isdaily. Set the chart to 1D to see them.
⸻
Inputs
Symbol selection
• Absolute, Relative, Combined
• Vs. benchmark for Relative mode and correlation, choices: SPY, QQQ, XLE, GLD
• Ticker or Freeform, for Freeform use full TradingView notation, for example NASDAQ:AAPL
Engine selection
• Include:
• 8-32-128, three EWMAC legs plus three breakouts
• 8-32, simplified view based on the 8-32 leg plus a 40-day breakout
EMA, applied to the forecast
• EMA1, EMA2, with line-width controls, plus color and opacity
Volatility
• Span, EW volatility span for daily returns
• 10y %, blend of long-run volatility
• Thresh, Too volatile, placeholders in this version
Background
• Horizontal bg, level shading, enabled by default
• Long BG, Hedge BG, colors and opacities
Show
• Table, Header, Direction, Gain, Extension
• Corr, Length for correlation row
Table settings
• Position, background, opacity, text size, text color
Lines
• 0-lines, 10-lines, 5-lines, level guides
⸻
Reading the outputs
• Forecast > 0, bullish tilt; Forecast < 0, bearish or hedge tilt
• ±10 and ±20 indicate strength on a uniform scale
• EMA1 vs EMA2 on the forecast, EMA1 above EMA2 suggests improving momentum
• Table rows, label colored by sign, current forecast value plus a green or red dot for the forecast EMA cross, optional daily return percent, weekly correlation, and ATR-scaled EMA9, EMA20, EMA50 distances
⸻
Data handling, repainting, and performance
• Daily and weekly series are fetched with request.security().
• Calculations use closed bars, values can update until the bar closes.
• No lookahead, historical values do not repaint.
• Weekly correlation updates during the week, it finalizes on weekly close.
• On intraday charts most visuals are hidden by design.
⸻
Good practice and limitations
• This is a research indicator, not a trading system.
• The fixed Cap = 20 keeps a common scale, extreme moves will be clipped.
• Relative mode depends on the ratio symbol / benchmark, ensure both legs have data for your feed.
⸻
Credits
Concept inspired by Robert Carver’s forecast methodology in Advanced Futures Trading Strategies. Implementation details, parameters, and visuals are specific to this script.
⸻
Changelog
• First version
⸻
Disclaimer
For education and research only, not financial advice. Always test on your market and data feed, consider costs and slippage before using any indicator in live decisions.
Market BreadthMarket breadth is a technical analysis technique that gauges the strength or weakness of moves in a major index.
Supported index ETF: SPY, NDX, DIA, IWM, OEF, MDY, IWB, IWV.
Supported sector index ETF: XLK, XLC, XLY, XLP, XLV, XLU, XLF, XLRE, XLE, XLB, XLI.
Ludvig Indicator PROThe Ludvig Indicator is designed to identify high-probability breakout setups by combining trend, volume, volatility, and relative strength filters. It helps you enter stocks (or ETFs/crypto) when institutional money is likely flowing in, while avoiding false breakouts and weak trends.
🔑 Core Features
Zero-Lag EMA (ZLEMA)
Faster, less lagging trend detection compared to traditional EMAs.
Used as the basis for dynamic ATR bands.
ATR Volatility Bands
Adaptive bands based on the Average True Range (ATR).
Define the zone where price must close outside to confirm trend strength.
Breakout Confirmation
Requires price to close above recent highs (lookback configurable).
Ensures signals are “true breakouts,” not just noise around moving averages.
Volume Filter (Relative Volume)
Validates breakouts with significantly higher volume than average.
Prevents low-liquidity signals from triggering.
Trend Strength (ADX)
Built-in ADX calculation ensures only strong, trending moves are considered.
Default filter: ADX ≥ 18 (configurable).
Relative Strength vs. Benchmark
Compares the asset’s momentum against a benchmark (default: SPY).
Only signals when the asset is outperforming the benchmark.
Useful for sector rotation and picking leaders instead of laggards.
Alerts & Signals
Breakout entries are marked with small green triangles.
Built-in alerts for automated notifications (TradingView alerts).
Credit Spread Alpha SignalCredit Spread Alpha Signal: Complete Description
Introduction and Purpose
The Credit Spread Alpha Signal is a custom indicator developed for TradingView, designed to monitor the credit spread between High Yield (HY) bond yields and the 10-Year US Treasury yield (US10Y). This indicator serves as an advanced macroeconomic tool for traders and investors, helping to identify shifts in risk sentiment, monetary policy adjustments, or financial stress in the economy. It combines credit market data with statistical analysis to generate inverted buy and sell signals, where wider spreads (deteriorated conditions) are seen as buy opportunities (green), and tight spreads (risk-on) as sell opportunities (red).
The script is original, inspired by macroeconomic concepts, and visualizes data intuitively with histograms, background colors, and signal arrows. It is particularly useful for portfolio traders seeking confirmation signals or early warnings, integrating seamlessly into charts of stocks, bonds, or crypto assets.
Key Concepts
- HY Spread : Calculated as the difference between the High Yield Corporate Effective Yield (symbol: BAMLH0A0HYM2EY) and the US10Y Yield. Wider spreads indicate higher credit risk and economic deterioration (buy opportunity in the inverted logic). Tight spreads reflect market optimism (risk-on, sell opportunity).
- Inverted Signal Logic : Unlike traditional interpretation, here widening spreads (stress) trigger green and buy arrows (↑ below the chart), suggesting entry into long positions during panics. Compressing spreads trigger red and sell arrows (↓ above the chart), indicating exit during optimism peaks.
- Visual Highlights : Green for spread > +2.2σ (financial stress, buy); Red for spread < low threshold (risk-on, sell); Optional orange for recession risk (inverted curve + high spread, strong buy).
The indicator uses statistics like simple moving average (SMA) and standard deviation for dynamic thresholds, making it adaptable to different market periods.
How It Works: Internal Calculations
1. Data Sources : Uses `request.security` to fetch daily data ("D") from US10Y, US02Y (for inverted curve), and HY Yield.
2. Spread Calculation : `spread_hy = hy_yield - us10y`.
3. Statistics :
- Average (SMA) of the spread over the last `sma_length` days (default: 120).
- Standard deviation (stdev) over the same period.
- High threshold: `avg_spread_hy + std_mult * std_spread_hy` (default: multiplier 2.2).
- Low threshold: Editable value (default: 1.5%).
4. Conditions :
- High stress (green/buy): `spread_hy > high_threshold`.
- Compression (red/sell): `spread_hy < low_threshold`.
- Recession risk (orange/strong buy, optional): Inverted curve (`us10y < us2y`) + spread > `recession_spread_threshold`.
5. Crossings for Signals :
- Buy (green ↑ below): Crossover above high threshold (`ta.crossover`).
- Sell (red ↓ above): Crossunder below low threshold (`ta.crossunder`).
These calculations are processed bar by bar, ensuring real-time updates.
Visual Elements
- Histogram : Plots the spread as columns (`plot.style_columns`), dynamically colored: Light green (90% transparency) for stress/buy; Light red (90%) for compression/sell; Gray for neutral; Orange for recession.
- Reference Line : Horizontal red line at zero for benchmark.
- Background Coloring : Applies color to the main chart (overlay=true via force_overlay): Light green for buy, Light red for sell, Orange for recession, no color for neutral.
- Signal Arrows : ↑ Green below the bar for buy (widening_cross); ↓ Red above the bar for sell (compressed_cross).
- Floating Legend : Label in the lower panel explaining thresholds and conditions, dynamically updated with editable values.
Editable Settings (Inputs)
- SMA Period (days) : Default 120; adjusts the horizon for average and standard deviation.
- Standard Deviation Multiplier : Default 2.2; sets sensitivity of the high threshold (e.g., 2.2σ for moderate alerts).
- Low Threshold for Compression (%) : Default 1.5; level to detect risk-on/sell.
- Enable Recession Risk? : Default false; activates combined condition of inverted curve + high spread.
- Spread Threshold for Recession (%) : Default 2.0; level for recession (visible if enabled).
These inputs allow customization via the TradingView interface, without editing the code.
Integrated Alerts
The indicator includes alert conditions (`alertcondition`) for notifications in TradingView:
- "ALERT: HY Spread High": Spread exceeds threshold - financial stress (Buy).
- "ALERT: HY Spread Compressed": Spread compressed - risk-on conditions (Sell).
- "ALERT: HY Spread Widening (Buy)": Crossover above - buy opportunity in stress.
- "ALERT: HY Spread Compressed (Sell)": Crossunder below - sell opportunity in risk-on.
- "ALERT: Recession Risk (Strong Buy)": Inverted curve + high spread - high recession risk, consider buy (if enabled).
Set up alerts for email, SMS, or webhook notifications.
Usage Tips and Considerations
- Recommended Timeframe : Daily ("D"), but works on others; data is forced to daily for consistency.
- Practical Application : Add to charts of indices like SPY or QQQ to correlate with market moves. Test on historical periods (e.g., 2020 for widening, 2021 for compressing) to validate signals.
- Limitations : Relies on external data (US10Y, HY Yield), which may have delays; spreads are typically positive. Not financial advice – use with complementary analysis.
- Advanced Customization : Adjust thresholds for volatile markets; enable recession for more robust macro signals.
This indicator transforms credit data into actionable alpha, helping navigate economic cycles with visual precision. For support or modifications, refer to the source code or TradingView community.






















