RTH & ETH High/Low (Today & Prev)RTH and ETH High Low Indicator. This draws a line for the ETH and RTH highs and lows for todays session and yesterdays session. it allows you to toggle off any of the 8 potential levels as well as change the colour of the 8 levels. WIP
Futures
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.
BOCS Channel Scalper Strategy - Automated Mean Reversion System# BOCS Channel Scalper Strategy - Automated Mean Reversion System
## WHAT THIS STRATEGY DOES:
This is an automated mean reversion trading strategy that identifies consolidation channels through volatility analysis and executes scalp trades when price enters entry zones near channel boundaries. Unlike breakout strategies, this system assumes price will revert to the channel mean, taking profits as price bounces back from extremes. Position sizing is fully customizable with three methods: fixed contracts, percentage of equity, or fixed dollar amount. Stop losses are placed just outside channel boundaries with take profits calculated either as fixed points or as a percentage of channel range.
## KEY DIFFERENCE FROM ORIGINAL BOCS:
**This strategy 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 Version**: 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 scalper ideal for active day traders who want continuous opportunities within consolidation zones rather than waiting for breakout confirmation. However, increased trade frequency also means higher commission costs and requires tighter risk management.
## TECHNICAL METHODOLOGY:
### Price Normalization Process:
The strategy 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 strategy 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 strategy 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 strategy 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. This captures mean reversion opportunities as price reaches channel extremes.
### Cooldown Filter:
An optional cooldown period (measured in bars) prevents signal spam by enforcing minimum spacing between consecutive signals. If cooldown is set to 3 bars, no new long signal 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 strategy includes a multi-timeframe ATR filter to avoid trading during low-volatility conditions. Using request.security(), it fetches ATR values from a specified timeframe (e.g., 1-minute ATR while trading on 5-minute charts). The filter compares current ATR to a user-defined minimum threshold:
- If ATR ≥ threshold: Trading enabled
- If ATR < threshold: No signals fire
This prevents entries during dead zones where mean reversion is unreliable due to insufficient price movement.
### 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. Larger percentages aim for opposite channel edge.
### Stop Loss Placement:
Stop losses are placed 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. If price breaks through, the range is no longer valid and position exits.
### Trade Execution Logic:
When entry conditions are met (price in zone, cooldown satisfied, ATR filter passed, no existing position):
1. Calculate entry price at zone boundary
2. Calculate TP and SL based on selected method
3. Execute strategy.entry() with calculated position size
4. Place strategy.exit() with TP limit and SL stop orders
5. Update info table with active trade details
The strategy enforces one position at a time by checking strategy.position_size == 0 before entry.
### 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.
### Position Sizing System:
Three methods calculate position size:
**Fixed Contracts**:
- Uses exact contract quantity specified in settings
- Best for futures traders (e.g., "trade 2 NQ contracts")
**Percentage of Equity**:
- position_size = (strategy.equity × equity_pct / 100) / close
- Dynamically scales with account growth
**Cash Amount**:
- position_size = cash_amount / close
- Maintains consistent dollar exposure regardless of price
## INPUT PARAMETERS:
### Position Sizing:
- **Position Size Type**: Choose Fixed Contracts, % of Equity, or Cash Amount
- **Number of Contracts**: Fixed quantity per trade (1-1000)
- **% of Equity**: Percentage of account to allocate (1-100%)
- **Cash Amount**: Dollar value per position ($100+)
### 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 entries on/off
- **Enable Short Scalps**: Toggle short entries 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 signals (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 trade 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 strategy status
- **Table Position**: Corner placement (Top Left/Right, Bottom Left/Right)
- **Color Settings**: Customize long/short/TP/SL colors
## 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 entries
- **Active TP/SL lines** with emoji labels (⊕ Entry, 🎯 TP, 🛑 SL)
- **Info table** showing position status, channel state, last signal, entry/TP/SL prices, and ATR status
## HOW TO USE:
### For 1-3 Minute Scalping (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
- Position Size: 1-2 contracts
### For 5-15 Minute Day Trading:
- 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
- Position Size: Fixed contracts or 5-10% equity
### For 30-60 Minute Swing Scalping:
- 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
- Position Size: % of equity recommended
## BACKTEST CONSIDERATIONS:
- Strategy performs best in ranging, mean-reverting markets
- Strong trending markets produce more stop losses as price breaks channels
- ATR filter significantly reduces trade count but improves quality during low volatility
- Cooldown period trades signal quantity for signal quality
- Commission and slippage materially impact sub-5-minute timeframe performance
- Shorter timeframes require tighter entry zones (15-20%) to catch quick reversions
- % of Channel TP adapts better to varying channel sizes than fixed points
- Fixed contract sizing recommended for consistent risk per trade in futures
**Backtesting Parameters Used**: This strategy was developed and tested using realistic commission and slippage values to provide accurate performance expectations. Recommended settings: Commission of $1.40 per side (typical for NQ futures through discount brokers), slippage of 2 ticks to account for execution delays on fast-moving scalp entries. These values reflect real-world trading costs that active scalpers will encounter. Backtest results without proper cost simulation will significantly overstate profitability.
## 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 require data feed with volume information but are optional for core functionality.
## KNOWN LIMITATIONS:
- Immediate touch entry can fire multiple times 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 higher-tier TradingView subscription (request.security limitation)
- Mean reversion logic fails in strong breakout scenarios leading to stop loss hits
- Position sizing via % of equity or cash amount calculates based on close price, may differ from actual fill price
- No partial closing capability - full position exits at TP or SL only
- Strategy does not account for gap openings or overnight holds
## RISK DISCLOSURE:
Trading involves substantial risk of loss. Past performance does not guarantee future results. This strategy is for educational purposes and backtesting only. Mean reversion strategies can experience extended drawdowns during trending markets. Stop losses may not fill at intended levels during extreme volatility or gaps. Thoroughly test on historical data and paper trade before risking real capital. Use appropriate position sizing and never risk more than you can afford to lose. Consider consulting a licensed financial advisor before making trading decisions. Automated trading systems can malfunction - monitor all live positions actively.
## 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. 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 signals, multi-timeframe ATR volatility filtering, flexible position sizing (fixed/percentage/cash), cooldown period filtering, dual TP methods (fixed points vs channel percentage), automated strategy execution with exit management, and real-time position monitoring table.
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.
FlowSpike ES — BB • RSI • VWAP + AVWAP + News MuteThis indicator is purpose-built for E-mini S&P 500 (ES) futures traders, combining volatility bands, momentum filters, and session-anchored levels into a streamlined tool for intraday execution.
Key Features:
• ES-Tuned Presets
Automatically optimized settings for scalping (1–2m), daytrading (5m), and swing trading (15–60m) timeframes.
• Bollinger Band & RSI Signals
Entry signals trigger only at statistically significant extremes, with RSI filters to reduce false moves.
• VWAP & Anchored VWAPs
Session VWAP plus anchored VWAPs (RTH open, weekly, monthly, and custom) provide high-confidence reference levels used by professional order-flow traders.
• Volatility Filter (ATR in ticks)
Ensures signals are only shown when the ES is moving enough to offer tradable edges.
• News-Time Mute
Suppresses signals around scheduled economic releases (customizable windows in ET), helping traders avoid whipsaw conditions.
• Clean Alerts
Long/short alerts are generated only when all conditions align, with optional bar-close confirmation.
Why It’s Tailored for ES Futures:
• Designed around ES tick size (0.25) and volatility structure.
• Session settings respect RTH hours (09:30–16:00 ET), the period where most liquidity and institutional flows concentrate.
• ATR thresholds and RSI bands are pre-tuned for ES market behavior, reducing the need for manual optimization.
⸻
This is not a generic indicator—it’s a futures-focused tool created to align with the way ES trades day after day. Whether you scalp the open, manage intraday swings, or align to weekly/monthly anchored flows, FlowSpike ES gives you a clear, rules-based signal framework.
Futures Playbook: VWAP + OR + Cross-Asset TellsFutures Playbook: VWAP + OR + Cross-Asset Tells (with Trade Messages + Coach Panel)
This all-in-one futures trading toolkit combines Opening Range (OR) levels, VWAP, and cross-asset signals to help traders quickly read intraday structure, manage execution, and filter noise.
Core Features
• Opening Range (OR):
• Customizable OR window with High/Low and Midpoint.
• Automatic shading of the OR zone.
• VWAP & Bands:
• Built-in or session-anchored VWAP.
• Optional standard deviation bands for context.
• Cross-Asset Tells:
• Live reads on US 10Y yield, DXY, Crude, and Gold.
• Regime detection: rates risk, USD strength, energy softness, and real-rate easing.
• Confirmations:
• Volume vs. moving average filter.
• Cumulative delta with smoothing.
• ATR-based chop filter to avoid low-quality trends.
Trade Messages + Coach Panel
• Trade Messages (labels): Automatic on-chart prompts for OR completion, VWAP reclaim/loss, long/short setups, and EU close flows.
• Coach Panel (table): Real-time dashboard with regime context, directional bias, execution notes, risk reminders, and key levels (ORH, ORL, VWAP).
Alerts
• OR breakout (long/short with confirmations).
• VWAP reclaim or loss.
• 10Y yield crossing risk threshold.
Use Case
Designed for futures traders and scalpers who rely on VWAP + OR dynamics and need cross-asset confirmation before committing to trades. Great for structuring entries, managing risk, and filtering market noise throughout the session.
NDX Ladder → Adjusted to Active Ticker (5s & 10s)This indicator allows you to a grid of NDX levels directly on the NQ! (E-mini NASDAQ 100 Futures) chart, automatically adjusting for the spread between NDX and NQ1!. This is particularly useful for traders who perform technical analysis on SPX but execute trades on NQ1!.
Features:
Renders every 5 and 10 points steps of the NDX in your current chart.
The script adjusts these levels in real-time based on the current spread between NDX and NQ / MNQ
Plots updated horizontal lines that move with the spread
Futures Tick & Point Value [BoredYeti]Futures Tick & Point Value
This utility displays tick size, dollars per tick, and (optionally) a per-point row for the current futures contract.
Features
• Hardcoded $/tick map for common CME/NYMEX/CBOT/COMEX contracts
• Automatic fallback using pointvalue * mintick for any other symbol
• Table settings: adjustable position, text size, customizable colors
• Optional “Per Point” row showing ticks and $/point
Notes
• Contract specs can vary by broker/exchange and may change over time. Always confirm with official specifications.
• Educational tool only; not financial advice.
Futures Forward Price [NeoButane]In futures markets, the theoretical value of a futures contract can be derived from its underlying price and cost of carry. By baking in the costs and potential yields, the theoretical forward price then be used in basis against futures prices in place of the underlying spot price.
Usage
The script creates plots on the main chart and a separate window pane. Both are meant to be used to visualize dislocations in the market.
By using a futures vs. forward basis instead of futures vs. spot basis, discounts in the market are clearer.
Last month, the gold futures market GCZ2025 traded >1% above forward price when tariffs were announced and fell back in line once the tariffs were verbally retracted.
View roll spreads over a back-adjusted continuous chart. I guess. I don't think spread traders only look at one chart. This is as educational for me as it is you.
Configuration
The underlying reference needs to be changed to match the futures contract you are using.
The Risk-Free Rate defaults to FRED:SOFR. I found the contract month matched 3-Month SOFR Futures to be the closest for forward price.
Risk-Free Rate: The interest rate source for forward price.
Constant Risk-Free Rate: a static interest rate that can be used in advance of future changes in risk-free rate.
Underlying Reference: spot or index price. Some examples include TVC:SPX, TVC:GOLD, CRYPTO:BTCUSD, TVC:USOIL.
Forward Price Compounding: determines which formula to use. They're similar and become closer as the contract matures.
Alternative Contract: enable and select a futures contract to use it on a chart different than the main.
Storage Cost and Yield: for use with commodities. I haven't found a proper use for them yet but enabling is simple if you are able to.
The following are meant to be used with the continuous formula as they are compounded. However the rate sources don't differ much for the purpose of futures prices.
3-Month CME SOFR Futures
3-Month ICEEUR SONIA Futures
3-Month Osaka TONA Futures
The other rate sources are either meant for futures contracts shorter than quarterly such as monthly crypto futures or were meant to help myself understand how different rates would align with futures prices, like inflation.
What this script does
It uses the cost of carry formula to output the forward price (red line). The underlying reference (green line) is plotted alongside and a futures-derived reference (blue line) can be displayed to see how it looks next to the real reference price.
The data pane displays either the nominal difference or percentage difference between the real futures price and the calculated forward price.
Further reading
www.investopedia.com
www.cmegroup.com
www.oxfordenergy.org
www-2.rotman.utoronto.ca
www.cmegroup.com
3-month rate futures
www.cmegroup.com
www.ice.com
www.bankofengland.co.uk
www.jpx.co.jp
SPX Ladder → Adjusted to Active Ticker (5s & 10s)This indicator allows you to a grid of SPX levels directly on the ES1! (E-mini S&P 500 Futures) chart, automatically adjusting for the spread between SPX and ES1!. This is particularly useful for traders who perform technical analysis on SPX but execute trades on ES1!.
Features:
Renders every 5 and 10 points steps of the SPX in your current chart.
The script adjusts these levels in real-time based on the current spread between SPX and ES1!
Plots updated horizontal lines that move with the spread
Supports Multiple Tickers, ES1!, SPY and SPX500USD.
Ideal for futures traders who want SPX context while trading ES1!.
Crypto Perp Calc v1Advanced Perpetual Position Calculator for TradingView
Description
A comprehensive position sizing and risk management tool designed specifically for perpetual futures trading. This indicator eliminates the confusion of calculating leveraged positions by providing real-time position metrics directly on your chart.
Key Features:
Interactive Price Selection: Click directly on chart to set entry, stop loss, and take profit levels
Accurate Lot Size Calculation: Instantly calculates the exact position size needed for your margin and leverage
Multiple Entry Support: DCA into positions with up to 3 entry points with customizable allocation
Multiple Take Profit Levels: Scale out of positions with up to 3 TP targets
Comprehensive Risk Metrics: Shows dollar P&L, account risk percentage, and liquidation price
Visual Risk/Reward: Color-coded boxes and lines display your trade setup clearly
Real-time Info Table: All critical position data in one organized panel
Perfect for traders using perpetual futures who need precise position sizing with leverage.
---------
How to Use
Quick Start (3 Clicks)
1. Add the indicator to your chart
2. Click three times when prompted:
First click: Set your entry price
Second click: Set your stop loss
Third click: Set your take profit
3. Read the TOTAL LOTS value from the info table (highlighted in yellow)
4. Use this lot size in your exchange when placing the trade
Detailed Setup
Step 1: Configure Your Account
Enter your account balance (total USDT in account)
Set your margin amount (how much USDT to risk on this trade)
Choose your leverage (1x to 125x)
Select Long or Short position
Step 2: Set Price Levels
Main levels use interactive clicking (Entry, SL, TP)
For multiple entries or TPs, use the settings panel to manually input prices and percentages
Step 3: Read the Results
The info table shows:
TOTAL LOTS - The position size to enter on your exchange
Margin Used - Your actual capital at risk
Notional - Total position value (margin × leverage)
Max Risk - Dollar amount you'll lose at stop loss
Total Profit - Dollar amount you'll gain at take profit
R:R Ratio - Risk to reward ratio
Account Risk - Percentage of account at risk
Liquidation - Price where position gets liquidated
Step 4: Advanced Features (Optional)
Multiple Entries (DCA):
Enable "Use Multiple Entries"
Set up to 3 entry prices
Allocate percentage for each (must total 100%)
See individual lot sizes for each entry
Multiple Take Profits:
Enable "Use Multiple TPs"
Set up to 3 TP levels
Allocate percentage to close at each level (must total 100%)
View profit at each target
Visual Elements
Blue lines/labels: Entry points
Red lines/labels: Stop loss
Green lines/labels: Take profit targets
Colored boxes: Visual risk (red) and reward (green) zones
Info table: Can be positioned anywhere on screen
Alerts
Set price alerts for:
Entry zones reached
Stop loss approached
Take profit levels hit
Works with TradingView's alert system
Tips for Best Results
Always verify the lot size matches your intended risk
Check the liquidation price stays far from your stop loss
Monitor the account risk percentage (recommended: keep under 2-3%)
Use the warning indicators if risk exceeds margin
For quick trades, use single entry/TP; for complex strategies, use multiple levels
Example Workflow
Find your trade setup using your analysis
Add this indicator and click to set levels
Check risk metrics in the table
Copy the TOTAL LOTS value
Enter this exact position size on your exchange
Set alerts for key levels if desired
This tool bridges the gap between TradingView charting and exchange execution, ensuring your position sizing is always accurate when trading with leverage.
Disclaimer, this was coded with help of AI, double check calculations if they are off.
(ES, NQ) Trend Checker SB1(ES, NQ) Trend Checker SB1
Stay ahead of the market by tracking whether the E-mini S&P 500 (ES) and the Nasdaq 100 (NQ) are moving in sync.
📊 How it works:
The script checks whether each index is bullish (close > open) or bearish (close < open).
If both are aligned (all bullish or all bearish), conditions are stable.
If they diverge, the indicator instantly flags a mismatch in trend.
🎯 Features:
Background shading to highlight mismatched conditions.
Real-time alerts when ES and NQ fall out of sync.
Works on any timeframe.
🔥 Why it matters:
When ES and NQ move together, market momentum is usually stronger and cleaner.
But when they disagree, expect choppiness, fakeouts, or caution zones — the perfect heads-up before entering trades.
FlowStateTrader FlowState Trader - Advanced Time-Filtered Strategy
## Overview
FlowState Trader is a sophisticated algorithmic trading strategy that combines precision entry signals with intelligent time-based filtering and adaptive risk management. Built for traders seeking to achieve their optimal performance state, FlowState identifies high-probability trading opportunities within user-defined time windows while employing dynamic trailing stops and partial position management.
## Core Strategy Philosophy
FlowState Trader operates on the principle that peak trading performance occurs when three elements align: **Focus** (precise entry signals), **Flow** (optimal time windows), and **State** (intelligent position management). This strategy excels at finding reversal opportunities at key support and resistance levels while filtering out suboptimal trading periods to keep traders in their optimal flow state.
## Key Features
### 🎯 Focus Entry System
**Support/Resistance Zone Trading**:
- Dynamic identification of key price levels using configurable lookback periods
- Entry signals triggered when price interacts with these critical zones
- Volume confirmation ensures genuine breakout/reversal momentum
- Trend filter alignment prevents counter-trend disasters
**Entry Conditions**:
- **Long Signals**: Price closes above support buffer, touches support level, with above-average volume
- **Short Signals**: Price closes below resistance buffer, touches resistance level, with above-average volume
- Optional trend filter using EMA or SMA for directional bias confirmation
### ⏰ FlowState Time Filtering System
**Comprehensive Time Controls**:
- **12-Hour Format Trading Windows**: User-friendly AM/PM time selection
- **Multi-Timezone Support**: UTC, EST, PST, CST with automatic conversion
- **Day-of-Week Filtering**: Trade only weekdays, weekends, or both
- **Lunch Hour Avoidance**: Automatically skips low-volume lunch periods (12-1 PM)
- **Visual Time Indicators**: Background coloring shows active/inactive trading periods
**Smart Time Features**:
- Handles overnight trading sessions seamlessly
- Prevents trades during historically poor performance periods
- Customizable trading hours for different market sessions
- Real-time trading window status in dashboard
### 🛡️ Adaptive Risk Management
**Multi-Level Take Profit System**:
- **TP1**: First profit target with optional partial position closure
- **TP2**: Final profit target for remaining position
- **Flexible Scaling**: Choose number of contracts to close at each level
**Dynamic Trailing Stop Technology**:
- **Three Operating Modes**:
- **Conservative**: Earlier activation, tighter trailing (protect profits)
- **Balanced**: Optimal risk/reward balance (recommended)
- **Aggressive**: Later activation, wider trailing (let winners run)
- **ATR-Based Calculations**: Adapts to current market volatility
- **Automatic Activation**: Engages when position reaches profitability threshold
### 📊 Intelligent Position Sizing
**Contract-Based Management**:
- Configurable entry quantity (1-1000 contracts)
- Partial close quantities for profit-taking
- Clear position tracking and P&L monitoring
- Real-time position status updates
### 🎨 Professional Visualization
**Enhanced Chart Elements**:
- **Entry Zone Highlighting**: Clear visual identification of trading opportunities
- **Dynamic Risk/Reward Lines**: Real-time TP and SL levels with price labels
- **Trailing Stop Visualization**: Live tracking of adaptive stop levels
- **Support/Resistance Lines**: Key level identification
- **Time Window Background**: Visual confirmation of active trading periods
**Dual Dashboard System**:
- **Strategy Dashboard**: Real-time position info, settings status, and current levels
- **Performance Scorecard**: Live P&L tracking, win rates, and trade statistics
- **Customizable Sizing**: Small, Medium, or Large display options
### ⚙️ Comprehensive Customization
**Core Strategy Settings**:
- **Lookback Period**: Support/resistance calculation period (5-100 bars)
- **ATR Configuration**: Period and multipliers for stops/targets
- **Reward-to-Risk Ratios**: Customizable profit target calculations
- **Trend Filter Options**: EMA/SMA selection with adjustable periods
**Time Filter Controls**:
- **Trading Hours**: Start/end times in 12-hour format
- **Timezone Selection**: Four major timezone options
- **Day Restrictions**: Weekend-only, weekday-only, or unrestricted
- **Session Management**: Lunch hour avoidance and custom periods
**Risk Management Options**:
- **Trailing Stop Modes**: Conservative/Balanced/Aggressive presets
- **Partial Close Settings**: Enable/disable with custom quantities
- **Alert System**: Comprehensive notifications for all trade events
### 📈 Performance Tracking
**Real-Time Metrics**:
- Net profit/loss calculation
- Win rate percentage
- Profit factor analysis
- Maximum drawdown tracking
- Total trade count and breakdown
- Current position P&L
**Trade Analytics**:
- Winner/loser ratio tracking
- Real-time performance scorecard
- Strategy effectiveness monitoring
- Risk-adjusted return metrics
### 🔔 Alert System
**Comprehensive Notifications**:
- Entry signal alerts with price and quantity
- Take profit level hits (TP1 and TP2)
- Stop loss activations
- Trailing stop engagements
- Position closure notifications
## Strategy Logic Deep Dive
### Entry Signal Generation
The strategy identifies high-probability reversal points by combining multiple confirmation factors:
1. **Price Action**: Looks for price interaction with key support/resistance levels
2. **Volume Confirmation**: Ensures sufficient market interest and liquidity
3. **Trend Alignment**: Optional filter prevents counter-trend positions
4. **Time Validation**: Only trades during user-defined optimal periods
5. **Zone Analysis**: Entry occurs within calculated buffer zones around key levels
### Risk Management Philosophy
FlowState Trader employs a three-tier risk management approach:
1. **Initial Protection**: ATR-based stop losses set at strategy entry
2. **Profit Preservation**: Trailing stops activate once position becomes profitable
3. **Scaled Exit**: Partial profit-taking allows for both security and potential
### Time-Based Edge
The time filtering system recognizes that not all trading hours are equal:
- Avoids low-volume, high-spread periods
- Focuses on optimal liquidity windows
- Prevents trading during news events (lunch hours)
- Allows customization for different market sessions
## Best Practices and Optimization
### Recommended Settings
**For Scalping (1-5 minute charts)**:
- Lookback Period: 10-20
- ATR Period: 14
- Trailing Stop: Conservative mode
- Time Filter: Major session hours only
**For Day Trading (15-60 minute charts)**:
- Lookback Period: 20-30
- ATR Period: 14-21
- Trailing Stop: Balanced mode
- Time Filter: Extended trading hours
**For Swing Trading (4H+ charts)**:
- Lookback Period: 30-50
- ATR Period: 21+
- Trailing Stop: Aggressive mode
- Time Filter: Disabled or very broad
### Market Compatibility
- **Forex**: Excellent for major pairs during active sessions
- **Stocks**: Ideal for liquid stocks during market hours
- **Futures**: Perfect for index and commodity futures
- **Crypto**: Effective on major cryptocurrencies (24/7 capability)
### Risk Considerations
- **Market Conditions**: Performance varies with volatility regimes
- **Timeframe Selection**: Lower timeframes require tighter risk management
- **Position Sizing**: Never risk more than 1-2% of account per trade
- **Backtesting**: Always test on historical data before live implementation
## Educational Value
FlowState serves as an excellent learning tool for:
- Understanding support/resistance trading
- Learning proper time-based filtering
- Mastering trailing stop techniques
- Developing systematic trading approaches
- Risk management best practices
## Disclaimer
This strategy is for educational and informational purposes only. Past performance does not guarantee future results. Trading involves substantial risk of loss and is not suitable for all investors. Users should thoroughly backtest the strategy and understand all risks before live trading. Always use proper position sizing and never risk more than you can afford to lose.
---
*FlowState Trader represents the evolution of systematic trading - combining classical technical analysis with modern risk management and intelligent time filtering to help traders achieve their optimal performance state through systematic, disciplined execution.*
VWATR + VIX + VVIX Trend Regime### 🤖 VWATR + VIX + VVIX Trend Regime — Your Ultimate Volatility Dashboard! 📊
This isn't just another indicator; it's a comprehensive dashboard that brings together everything you need to understand market volatility focused on Futures. It merges price-based movement with market-wide fear and sentiment, giving you a powerful edge in your trading and risk management. Think of it as your personal volatility sidekick, ready to help you navigate market uncertainty like a pro!
***
### ✨ What's Inside?
* **VWATR (Volume-Weighted ATR):** A super-smart measure of price movement that pays close attention to where the big money is flowing.
* **VIX (The "Fear Gauge"):** Tracks the expected volatility of the S&P 500, essentially telling you how nervous the market is feeling.
* **VVIX (The "VIX of VIX"):** This one's for the pros! It measures how volatile the VIX itself is, giving you an early heads-up on potential fear spikes.
* **VX Term Structure:** A clever way to see if traders are preparing for a crisis. It compares the two nearest VIX futures to spot a rare signal called "backwardation."
* **Z-Scores:** It helps you spot when VIX and VVIX are at historic highs or lows, making it easier to predict when things might return to normal.
* **Divergence Score:** A unique tool to flag potential market shifts when the VIX and VVIX start moving in completely different directions.
* **Regime Classification:** The script automatically labels the market as "Full Panic," "Known Crisis," "Surface Calm," "Stress," or "Normal," so you always know where you stand.
* **Gradient Bars:** A visual treat! The background of your chart changes color to reflect real-time volatility shifts, giving you an instant feel for the market's mood.
* **Alerts:** Get push notifications on your phone for key events like "Full Panic" or "Backwardation" so you never miss a beat.
***
### 📝 Panel/Table Outputs
This is your mission control! The on-screen table gives you a clean summary of the current market regime, VIX and VVIX values, their ratios, term structure, Z-scores, and signals. Everything you need, right where you can see it.
***
### 🚀 How to Get Started
1. **Check your data:** You'll need access to real-time data for VIX, VVIX, VX1!, and VX2!. A paid subscription might be necessary for this.
2. **Add it to your chart:** Use the indicator on any chart (we've set it to `overlay=false`) to get your full volatility dashboard.
3. **Tweak it to perfection:** Head over to the Settings panel to customize the thresholds, colors, and your all-important "Jolt Value."
4. **Start trading smarter:** Use the dashboard to inform your trades, hedge your portfolio, and manage risk with confidence.
***
### ⚙️ Customization & Key Settings
* `showVWATR`: Toggle your price-volatility metric on or off.
* `showExpectedVol`: See the expected volatility as a percentage of the current price.
* `joltLevel`: This is a very important line on your chart! It's your personal trigger for when volatility is getting a little too wild. More on this below.
* `enableGradientBars`: Turn the awesome colored background on or off.
* `enableTable`: Hide or show your information table.
* `VIX/VVIX/VX1!/VX2! symbols`: If your broker uses different symbols for these, you can change them here.
* `VIX/VVIX thresholds`: Adjust these levels to fine-tune the indicator to your personal risk tolerance.
***
### 💡 Jolt Value: A Quick Guide for Smart Traders 🧠
The **jolt value** is your personal tripwire for volatility. Think of it as a warning light on your car's dashboard. You set the level, and when volatility (VWATR) crosses that line, you get an instant signal that something interesting is happening.
**How to Set Your Jolt Value:**
The ideal jolt value is dynamic. You want to keep it just a little above the current VIX level to stay alert without getting too many false alarms.
| Current VIX Level | Market Regime | Recommended Jolt Value |
| :--- | :--- | :--- |
| Under 15 | Calm/Complacent | 15–16 |
| 15–20 | Typical/Normal | 16–18 |
| 20–30 | Cautious/Active | 18–22 |
| Over 30 | Stress/Panic | 30+ |
**A Pro Tip for August 2025:** Since the VIX is hovering around 14.7, setting your jolt value to **16.5** is a great starting point for keeping an eye on things. If the VIX starts to climb above 20, you should adjust your jolt level to match the new reality.
***
### ⚠️ Important Things to Note
* You might experience some data delays if you're not on a paid TradingView plan or your broker does not provide real-time data for the VIX also VIX is only active during NY session, so it's not advised to use it outside of normal trading hours!
Stock Table aiTrendviewProfessional Stock Market Monitoring Table (Pine Script v5)
This indicator is a real-time multi-asset monitoring table designed for professional traders, analysts, and portfolio managers using TradingView. Built with Pine Script v5, it enables users to track up to 10 instruments (stocks, indices, forex pairs, cryptocurrencies, or commodities) in a unified table embedded directly into the chart. It is intended to streamline portfolio monitoring, cross-market analysis, and rapid visual comparison of asset performance.
The core logic of this script involves retrieving live price data through TradingView’s request.security() function for each of the selected symbols. It calculates both absolute price change and percentage price change relative to the previous bar close. This ensures users can see real-time movements in each asset’s price. These calculations are updated at the close of every bar to optimize performance and reduce processing load using the barstate.islast condition.
The display structure is dynamically generated using table.new() and related functions. Internally, the script stores symbol and price data in arrays for efficient processing. Symbols are cleaned to remove exchange prefixes (e.g., "NASDAQ:", "BINANCE:") so only the ticker name is displayed. Based on the selected layout (1 to 5 columns), the table auto-adjusts its row structure to maintain clarity and symmetry. Each cell reflects the ticker symbol, current price, and changes, with conditional formatting applied to indicate price movement direction using green (positive), red (negative), or neutral colors.
Users can customize many visual elements including text size, color themes, transparency, table position, and whether headers are shown. The script includes built-in fallbacks for invalid symbols or empty data, ensuring robustness and uninterrupted performance during live market hours.
Use cases include:
Intraday traders monitoring multiple instruments simultaneously.
Swing traders assessing relative strength and correlation.
Portfolio managers scanning asset performance without switching charts.
Analysts preparing multi-asset presentations or watchlists.
To use the tool:
Paste the Pine Script into the Pine Editor.
Add the script to the chart.
Enter your desired symbols via the input fields.
Customize table position, layout, size, and color to suit your workspace.
This script does not provide trade signals or financial advice. It is purely a market visualization and data presentation tool. All calculations are based on live chart data and are synchronized with the chart’s timeframe.
Disclaimer from aiTrendview:
This script is a visual tool developed for market awareness and comparative observation. It does not constitute financial advice or guarantee trading results. aiTrendview and its affiliates are not responsible for any losses arising from decisions made based on this tool. All trading involves risk, and past performance is not indicative of future results. Always consult with a qualified financial advisor before making trading decisions.
Opening-Range BreakoutNote: Default trading date range looks mediocre. Set date range to "Entire History" to see full effect of the strategy. 50.91% profitable trades, 1.178 profit factor, steady profits and limited drawdown. Total P&L: $154,141.18, Max Drawdown: $18,624.36. High R^2
█ Overview
The Opening-Range Breakout strategy is a mechanical, session‑based day‑trading system designed to capture the initial burst of directional momentum immediately following the market open. It defines a user‑configurable “opening range” window, measures its high and low boundaries, then places breakout stop orders at those levels once the range closes. Built‑in filters on minimum range width, reward‑to‑risk ratios, and optional reversal logic help refine entries and manage risk dynamically.
█ How It Works
Opening‑Range Formation
Between 9:30–10:15 AM ET (configurable), the script tracks the highest high and lowest low to form the day’s opening range box.
On the first bar after the range window closes, the range high (OR_high) and low (OR_low) are “locked in.”
Range‑Width Filter
To avoid false breakouts in low‑volatility mornings, the range must be at least X% of the current price (default 0.35%).
If the measured opening-range width < minimum threshold, no orders are placed that day.
Entry & Order Placement
Long: a stop‑buy order at the opening‑range high.
Short: a stop‑sell order at the opening‑range low.
Only one side can trigger (or both if reverse logic is enabled after a losing trade).
Risk Management
Once triggered, each trade uses an ATR‑style stop-loss defined as a percentage retracement of the range (default 50% of range width).
Profit target is set at a configurable Reward/Risk Ratio (default 1.1×).
Optional: Reverse on Stop‑Loss – if the initial breakout loses, immediately reverse into the opposite side on the same day.
Session Exit
Any open positions are closed at the end of the regular trading day (default 3:45 PM ET window end, with hard flat at session close).
Visual cues are provided via green (range high) and red (range low) step‑line plots directly on the chart, allowing you to see the range box and breakout triggers in real time.
█ Why It Works
Early Momentum Capture: The first 15 – 60 minutes of trading encapsulate overnight news digestion and institutional order flow, creating a well‑defined volatility “range.”
Mechanical Discipline: Clear, rule‑based entries and exits remove emotional guesswork, ensuring consistency.
Volatility Filtering: By requiring a minimum range width, the system avoids choppy, low‑range days where false breakouts are common.
Dynamic Sizing: Stops and targets scale with the opening range, adapting automatically to each day’s volatility environment.
█ How to Use
Set Your Instruments & Timeframe
-Apply to any futures contract on a 1‑ to 5‑minute chart.
-Ensure chart timezone is set to America/New_York.
Configure Inputs
-Opening‑Range Window: e.g. “0930-1015” for a 45‑minute range.
-Min. OR Width (%): e.g. 0.35 for 0.35% of current price.
-Reward/Risk Ratio: e.g. 1.1 for a modest profit target above your stop.
-Max OR Retracement %: e.g. 50 to set stop at 50% of range width.
-One Trade Per Day: toggle to limit to a single breakout.
-Reverse on Stop Loss: toggle to flip direction after a losing breakout.
Monitor the Chart
-Watch the green and red range boundaries form during the session open.
-Orders will automatically submit on the first bar after the range window closes, conditioned on your filters.
Review & Adjust
-Backtest across multiple months to validate performance on your preferred contract.
-Tweak range duration, minimum width, and R/R multiple to fit your risk tolerance and desired win‑rate vs. expectancy balance.
█ Settings Reference
Input Defaults
Opening‑Range Window - Time window to form OR (HHMM-HHMM) - 0930–1015
Regular Trading Day - Full session for EOD flat (HHMM-HHMM) - 0930–1545
Min. OR Width (%) - Minimum OR size as % of close to trigger orders - 0.35
Reward/Risk Ratio - Profit target multiple of stop‑loss distance - 1.1
Max OR Retracement (%) - % of OR width to use as stop‑loss distance - 50
One Trade Per Day - Limit to a single breakout order per day - false
Reverse on Stop Loss - Reverse direction immediately after a losing trade - true
Disclaimer
This strategy description and any accompanying code are provided for educational purposes only and do not constitute financial advice or a solicitation to trade. Futures trading involves substantial risk, including possible loss of capital. Past performance is not indicative of future results. Traders should assess their own risk tolerance and conduct thorough backtesting and forward-testing before committing real capital.
SPX Levels Adjusted to Active TickerThis indicator allows you to plot custom SPX levels directly on the ES1! (E-mini S&P 500 Futures) chart, automatically adjusting for the spread between SPX and ES1!. This is particularly useful for traders who perform technical analysis on SPX but execute trades on ES1!.
Features:
Input up to three SPX key levels to track (e.g., 5000, 4950, 4900)
The script adjusts these levels in real-time based on the current spread between SPX and ES1!
Displays the spread in the chart header for quick reference
Plots updated horizontal lines that move with the spread
Includes optional labels showing the spread periodically to reduce clutter
Supports Multiple Tickers, ES1!, SPY and SPX500USD.
Ideal for futures traders who want SPX context while trading ES1!.
COT Comm OsciDescription
The COT Comm Osci is a sentiment oscillator based on net positions from the weekly Commitments of Traders (COT) report.
It transforms net positions of Commercials, Noncommercials, or Nonreportables into a 0–100 index.
A value of 100 = highest net position within the selected timeframe.
A value of 0 = lowest net position.
You can define three historical intervals (e.g. 26/ 52 / 156 weeks).
Tip
To improve your analysis, it's recommended to add a separate COT indicator that visualizes raw Long/Short or net positions directly. This helps interpret the oscillator in context.
This script is based on “Commercial Index–Buschi” by MagicEins and has been extended with new features and error handling.
Features
Select between Commercial, Noncommercial, or Nonreportable trader groups
Proper handling of HG Futures (Copper)
Displays a warning if the root code is invalid (unsupported market symbol)
SPX Levels Adjusted to ES1!This indicator allows you to plot custom SPX levels directly on the ES1! (E-mini S&P 500 Futures) chart, automatically adjusting for the spread between SPX and ES1!. This is particularly useful for traders who perform technical analysis on SPX but execute trades on ES1!.
Features:
Input up to three SPX key levels to track (e.g., 5000, 4950, 4900)
The script adjusts these levels in real-time based on the current spread between SPX and ES1!
Displays the spread in the chart header for quick reference
Plots updated horizontal lines that move with the spread
Includes optional labels showing the spread periodically to reduce clutter
Ideal for futures traders who want SPX context while trading ES1!.
Make sure to apply this indicator on the ES1! chart, not SPX.
ORB Norman (2 Sessions, Auto Timezone)ORB Norman (2 Sessions, Auto Timezone)
This script plots Opening Range Breakout (ORB) levels for two configurable sessions. It’s designed for intraday traders—especially in futures markets like Gold (GC), Nasdaq (NQ), and S&P (ES)—who trade based on early session breakouts or range rejections. Unlike standard indicators, this tool auto-adjusts for timezones based on the instrument, ensuring precise session alignment.
Features:
Automatically adjusts for NQ/ES (Chicago time) and GC (New York time) based on the symbol.
Plots high, low, and optional midpoint lines for each session.
Clean, minimal settings with visual separation for better usability.
Ray extension length is fully customizable.
Works on any intraday chart (recommended: 5–15 minute timeframes).
Includes customizable session times, colors, ray length, and an optional midpoint line.
Default Sessions:
Session 1:
‣ 07:00–08:00 EST for GC
‣ 06:00–07:00 CT for NQ/ES
Session 2:
‣ 09:30–09:45 EST for GC
‣ 08:30–08:45 CT for NQ/ES
This tool is ideal for traders who scalp the early morning breakout or look for range rejections based on the opening auction.
This script was developed from scratch based on the author's own intraday trading needs.
NQ Position Size CalculatorNQ Position Size Line Calculator is designed specifically for Nasdaq 100 futures (NQ) and micro futures (MNQ) traders who want to maintain disciplined risk management. This visual tool eliminates the guesswork from position sizing by displaying distance lines and contract calculations directly on your chart.
The indicator creates horizontal lines at 10-tick intervals from your stop loss level, showing you exactly how many contracts to trade at each distance to maintain your predetermined risk amount. Whether you're trading regular NQ contracts or micro MNQ contracts, this calculator ensures you never risk more than intended while providing instant visual feedback for optimal position sizing decisions.
How to Use the Indicator
Step 1: Configure Your Settings
Stop Loss Price: Enter your exact stop loss level (e.g., 20000.00)
Risk Amount ($): Set your maximum dollar risk per trade (e.g., $500)
Contract Type: Choose between:
NQ (Regular): $5 per tick - for larger accounts
MNQ (Micro): $0.50 per tick - for smaller accounts or conservative sizing
Display Options:
Max Lines: Number of distance lines to show (default: 30)
Show Labels: Toggle tick distance and contract count labels
Line Color: Customize the color of distance lines
Label Size: Choose tiny, small, or normal label sizes
Step 2: Read the Visual Display
Once configured, the indicator displays:
Stop Loss Line:
Thick yellow line marking your exact stop loss level
Yellow label showing the stop loss price
Distance Lines:
Dashed red lines at 10-tick intervals above and below your stop loss
Lines appear on both sides for long and short position planning
Labels (if enabled):
Green labels (right side): For long positions above your stop loss
Red labels (left side): For short positions below your stop loss
Format: "20T 5x" means 20 ticks distance, 5 contracts maximum
Step 3: Use the Information Tables
The indicator provides two helpful tables:
Position Size Table (top-right):
Shows common tick distances (10, 20, 40, 80, 160 ticks)
Displays risk per contract at each distance
Contract count for your specified risk amount
Total risk with rounded contract numbers
Settings Table (bottom-right):
Confirms your current risk amount
Shows selected contract type
Displays current settings for quick reference
Step 4: Apply to Your Trading
For Long Positions:
Look at the green labels on the right side of your chart
Find your desired entry level
Read the label to see: distance in ticks and maximum contracts
Example: "30T 8x" = 30 ticks from stop, buy 8 contracts maximum
For Short Positions:
Look at the red labels on the left side of your chart
Find your desired entry level
Read the label for tick distance and contract count
Example: "40T 6x" = 40 ticks from stop, sell 6 contracts maximum
Step 5: Trading Execution
Before Entering a Trade:
Identify your stop loss level and input it into the indicator
Choose your entry point by looking at the distance lines
Note the contract count from the corresponding label
Verify the risk amount matches your trading plan
Execute your trade with the calculated position size
Risk Management Features:
Contract rounding: All position sizes are rounded down (never up) to ensure you don't exceed your risk limit
Zero position filtering: Lines only show where position size is at least 1 contract
Dual-sided display: Plan both long and short opportunities simultaneously
EMA Trend Dashboard
Trend Indicator using 3 custom EMA lines. Displays a table with 5 rows(position configurable)
-First line shows relative position of EMA lines to each other and outputs Bull, Weak Bull, Flat, Weak Bear, or Bear. EMA line1 should be less than EMA line2 and EMA line 2 should be less than EMA line3. Default is 9,21,50.
-Second through fourth line shows the slant of each EMA line. Up, Down, or Flat. Threshold for what is considered a slant is configurable. Also added a "steep" threshold configuration for steep slants.
-Fifth line shows exhaustion and is a simple, configurable calculation of the distance between EMA line1 and EMA line2.
--Lines one and five change depending on its value but ALL other colors are able to be changed.
--Default is somewhat set to work well with Micro E-mini Futures but this indicator can be changed to work on anything. I created it to help get a quick overview of short-term trend on futures. I used ChatGPT to help but I am still not sure if it actually took longer because of it.
Futures Margin Lookup TableThis script applies a table to your chart, which provides the intraday and overnight margin requirements of the currently selected symbol.
In this indicator the user must provide the broker data in the form of specifically formatted text blocks. The data for which should be found on the broker website under futures margin requirements.
The purpose for it's creation is due to the non-standard way each individual broker may price their margins and lack of information within TradingView when connected to some (maybe all) brokers, including during paper trading, as the flat percentage rule is not accurate.
An example of information could look like this
MES;Micro S&P;$50;$2406
ES;E-Mini S&P;$500;$24,053
GC;Gold;$500;$16500
NQ;E-Mini Nasdaq;$1,000;$34,810
FDAX;Dax Index;€2,000;€44,311
Each symbol begins a new line, and the values on that line are separated by semicolons (;)
Each line consists of the following...
SYMBOL : Search string used to match to the beginning of the current chart symbol.
NAME: Human readable name
INTRA: Intraday trading margin requirement per contract
OVERNIGHT: Overnight trading margin requirement per contract
The script simply finds a matching line within your provided information using the current chart symbol.
So for example the continuous chart for
NQ1!
would match to the user specified line starting with NQ... as would the individual contract dates such as NQM2025, NQK2025, etc.
NOTES:
There is a possibility that symbols with similar starting characters could match. If this is the case put the longer symbol higher in the list.
There is also a line / character limit to the text input fields within pinescript. Ensure the text you enter / paste into them is not truncated. If so there are 3 input fields for just this purpose. Find the last complete line and continue the remaining symbol lines on the subsequent inputs.