Session Volume Analyzer [JOAT]
Session Volume Analyzer — Global Trading Session and Volume Intelligence System
This indicator addresses the analytical challenge of understanding market participation patterns across global trading sessions. It combines precise session detection with comprehensive volume analysis to provide insights into when and how different market participants are active. The tool recognizes that different trading sessions exhibit distinct characteristics in terms of participation, volatility, and volume patterns.
Why This Combination Provides Unique Analytical Value
Traditional session indicators typically only show time boundaries, while volume indicators show raw volume data without session context. This creates analytical gaps:
1. **Session Context Missing**: Volume spikes without session context provide incomplete information
2. **Participation Patterns Hidden**: Different sessions have different participant types (retail, institutional, algorithmic)
3. **Comparative Analysis Lacking**: No easy way to compare volume patterns across sessions
4. **Timing Intelligence Absent**: Understanding WHEN volume occurs is as important as HOW MUCH volume occurs
This indicator's originality lies in creating an integrated session-volume analysis system that:
**Provides Session-Aware Volume Analysis**: Volume data is contextualized within specific trading sessions
**Enables Cross-Session Comparison**: Compare volume patterns between Asian, London, and New York sessions
**Delivers Participation Intelligence**: Understand which sessions are showing above-normal participation
**Offers Real-Time Session Tracking**: Know exactly which session is active and how current volume compares
Technical Innovation and Originality
While session detection and volume analysis exist separately, the innovation lies in:
1. **Integrated Session-Volume Architecture**: Simultaneous tracking of session boundaries and volume statistics creates comprehensive market participation analysis
2. **Multi-Session Volume Comparison System**: Real-time calculation and comparison of volume statistics across different global sessions
3. **Adaptive Volume Threshold Detection**: Automatic identification of above-average volume periods within session context
4. **Comprehensive Visual Integration**: Session backgrounds, volume highlights, and statistical dashboards provide complete market participation picture
How Session Detection and Volume Analysis Work Together
The integration creates a sophisticated market participation analysis system:
**Session Detection Logic**: Uses Pine Script's time functions to identify active sessions
// Session detection based on exchange time
bool inAsian = not na(time(timeframe.period, asianSession))
bool inLondon = not na(time(timeframe.period, londonSession))
bool inNY = not na(time(timeframe.period, nySession))
// Session transition detection
bool asianStart = inAsian and not inAsian
bool londonStart = inLondon and not inLondon
bool nyStart = inNY and not inNY
**Volume Analysis Integration**: Volume statistics are calculated within session context
// Session-specific volume accumulation
if asianStart
asianVol := 0.0
asianBars := 0
if inAsian
asianVol += volume
asianBars += 1
// Real-time session volume analysis
float asianAvgVol = asianBars > 0 ? asianVol / asianBars : 0
**Relative Volume Assessment**: Current volume compared to session-specific averages
float volMA = ta.sma(volume, volLength)
float volRatio = volMA > 0 ? volume / volMA : 1
// Volume classification within session context
bool isHighVol = volRatio >= 1.5 and volRatio < 2.5
bool isVeryHighVol = volRatio >= 2.5
This creates a system where volume analysis is always contextualized within the appropriate trading session, providing more meaningful insights than raw volume data alone.
Comprehensive Session Analysis Framework
**Default Session Definitions** (customizable based on broker timezone):
- **Asian Session**: 1800-0300 (exchange time) - Represents Asian market participation including Tokyo, Hong Kong, Singapore
- **London Session**: 0300-1200 (exchange time) - Represents European market participation
- **New York Session**: 0800-1700 (exchange time) - Represents North American market participation
**Session Overlap Analysis**: The system recognizes and highlights overlap periods:
- **London/New York Overlap**: 0800-1200 - Typically the highest volume period
- **Asian/London Overlap**: 0300-0300 (brief) - Transition period
- **New York/Asian Overlap**: 1700-1800 (brief) - End of NY, start of Asian
**Volume Intelligence Features**:
1. **Session-Specific Volume Accumulation**: Tracks total volume within each session
2. **Cross-Session Volume Comparison**: Compare current session volume to other sessions
3. **Relative Volume Detection**: Identify when current volume exceeds historical averages
4. **Participation Pattern Analysis**: Understand which sessions show consistent high/low participation
Advanced Volume Analysis Methods
**Relative Volume Calculation**:
float volMA = ta.sma(volume, volLength) // Volume moving average
float volRatio = volMA > 0 ? volume / volMA : 1 // Current vs average ratio
// Multi-tier volume classification
bool isNormalVol = volRatio < 1.5
bool isHighVol = volRatio >= 1.5 and volRatio < 2.5
bool isVeryHighVol = volRatio >= 2.5
bool isExtremeVol = volRatio >= 4.0
**Session Volume Tracking**:
// Cumulative session volume with bar counting
if londonStart
londonVol := 0.0
londonBars := 0
if inLondon
londonVol += volume
londonBars += 1
// Average volume per bar calculation
float londonAvgVol = londonBars > 0 ? londonVol / londonBars : 0
**Cross-Session Volume Comparison**:
The system maintains running totals for each session, enabling real-time comparison of participation levels across different global markets.
What the Display Shows
Session Backgrounds — Colored backgrounds indicating which session is active
- Pink: Asian session
- Blue: London session
- Green: New York session
Session Open Lines — Horizontal lines at each session's opening price
Session Markers — Labels (AS, LN, NY) when sessions begin
Volume Highlights — Bar coloring when volume exceeds thresholds
- Orange: High volume (1.5x+ average)
- Red: Very high volume (2.5x+ average)
Dashboard — Current session, cumulative volume, and averages
Color Scheme
Asian — #E91E63 (pink)
London — #2196F3 (blue)
New York — #4CAF50 (green)
High Volume — #FF9800 (orange)
Very High Volume — #F44336 (red)
Inputs
Session Times:
Asian Session window (default: 1800-0300)
London Session window (default: 0300-1200)
New York Session window (default: 0800-1700)
Volume Settings:
Volume MA Length (default: 20)
High Volume threshold (default: 1.5x)
Very High Volume threshold (default: 2.5x)
Visual Settings:
Session colors (customizable)
Show/hide backgrounds, lines, markers
Background transparency
How to Read the Display
Background color shows which session is currently active
Session open lines show where each session started
Orange/red bars indicate above-average volume
Dashboard shows cumulative volume for each session today
Alerts
Session opened (Asian, London, New York)
High volume bar detected
Very high volume bar detected
Important Limitations and Realistic Expectations
Session times are approximate and depend on your broker's server timezone—manual adjustment may be required for accuracy
Volume data quality varies significantly by broker, instrument, and market type
Cryptocurrency and some forex markets trade continuously, making traditional session boundaries less meaningful
High volume indicates participation level only—it does not predict price direction or market outcomes
Session participation patterns can change over time due to market structure evolution, holidays, and economic conditions
This tool displays historical and current market participation data—it cannot predict future volume or price movements
Volume spikes can occur for numerous reasons unrelated to directional price movement (news, algorithmic trading, etc.)
Different instruments exhibit different session sensitivity and volume patterns
Market holidays and special events can significantly alter normal session patterns
Appropriate Use Cases
This indicator is designed for:
- Market participation pattern analysis
- Session-based trading schedule planning
- Volume context and comparison across sessions
- Educational study of global market structure
- Supplementary analysis for session-based strategies
This indicator is NOT designed for:
- Standalone trading signal generation
- Volume-based price direction prediction
- Automated trading system triggers
- Guaranteed session pattern repetition
- Replacement of fundamental or sentiment analysis
Understanding Session Analysis Limitations
Session analysis provides valuable context but has inherent limitations:
- Session patterns can change due to economic conditions, holidays, and market structure evolution
- Volume patterns may not repeat consistently across different market conditions
- Global events can override normal session characteristics
- Different asset classes respond differently to session boundaries
- Technology and algorithmic trading continue to blur traditional session distinctions
— Made with passion by officialjackofalltrades
Indicator

Futures Ultra CVD (Pure )Futures Ultra CVD (Pure)
Futures Ultra CVD (Pure) is a volume-driven Cumulative Volume Delta (CVD) indicator designed to expose real buying and selling pressure behind price movement. Unlike price-only indicators, this script analyzes how volume is distributed within each bar to determine whether aggressive buyers or sellers are in control, then tracks how that pressure evolves over time.
This version is intentionally pure and ungated: it does not rely on external symbols, market filters, session bias, or macro confirmation. All signals are derived strictly from price, volume, and delta behavior of the active chart, making it suitable for futures, equities, crypto, and FX.
Core Concept: How CVD Is Calculated
For each bar, volume is split into buying pressure and selling pressure using the bar’s price position:
Buying volume increases as price closes closer to the high
Selling volume increases as price closes closer to the low
The difference between buying and selling volume forms Delta:
Positive delta = net aggressive buying
Negative delta = net aggressive selling
This delta is then accumulated into Cumulative Volume Delta (CVD) using one of three user-selectable modes:
Total – running cumulative sum of all delta values
Periodic – rolling sum over a fixed lookback period
EMA – smoothed cumulative delta using an exponential average
This flexibility allows traders to choose between raw order-flow tracking or smoother, trend-like behavior depending on timeframe and instrument.
Visual Structure & Histogram Logic
The CVD is displayed as a column histogram, not a line, to emphasize momentum and pressure shifts.
Enhanced coloring provides additional context:
Brighter green/red bars indicate increasing momentum
Muted colors indicate stalling or weakening pressure
Optional footprint-style highlights appear when buy or sell volume overwhelms the opposite side by a user-defined imbalance factor
This allows traders to visually distinguish:
Strength vs weakness
Continuation vs exhaustion
Absorption and aggressive participation
Built-In Order Flow Signals
The script automatically detects and labels key order-flow events:
Strong Delta
Triggered when delta exceeds a user-defined threshold, highlighting unusually aggressive buying or selling.
Delta Surge
Detects sudden expansion in delta compared to the prior bar, often associated with breakout attempts or liquidation events.
Zero-Line Crosses
Marks transitions between net bullish and bearish participation as CVD crosses above or below zero.
CVD Continuation Logic (Trend Confirmation)
Beyond raw delta, the script evaluates CVD structure to identify continuation conditions:
A bullish continuation requires:
Positive and rising CVD
Strong buy delta
Confirmation from at least one of the following:
CVD above its EMA and SMA
Bullish price expansion
Sustained positive delta pressure
Bearish continuation follows the inverse logic.
These continuation signals are designed to confirm participation strength, not predict reversals.
Conflict Detection (Divergence Warning)
The indicator also flags conflict conditions, where:
Strong buying occurs while CVD remains negative
Strong selling occurs while CVD remains positive
These scenarios often precede failed breakouts, absorption zones, or short-term reversals and can be used as cautionary signals.
Alerts & Practical Use
All major events include built-in alerts:
Strong delta
Delta surge
CVD continuations
Zero-line crosses
Buy/sell imbalances
Conflict signals
Alerts can be set to trigger on bar close or intrabar in real time, depending on trader preference.
How Traders Typically Use This Indicator
Confirm breakouts with delta participation
Validate trends using CVD continuation instead of price alone
Identify absorption or exhaustion via conflicts and imbalances
Combine with price structure, VWAP, or market profile tools
This script is not a trading system by itself. It is a decision-support tool designed to reveal what price alone cannot: who is actually in control of the market.
On-Chart Symbols & What They Mean
This script uses a small number of visual symbols to communicate order-flow events clearly and consistently. All symbols are derived directly from the Cumulative Volume Delta calculations described above.
Δ+ (Green Up Arrow)
Strong Buy Delta
Indicates that buying pressure on the current bar exceeded the Strong Delta Threshold
Represents aggressive market buying dominating selling volume
Often appears during breakouts, trend acceleration, or initiative buying
This symbol does not imply direction by itself; it only confirms strong buyer participation.
Δ− (Red Down Arrow)
Strong Sell Delta
Indicates that selling pressure on the current bar exceeded the Strong Delta Threshold
Represents aggressive market selling dominating buying volume
Often appears during breakdowns, liquidation events, or initiative selling
Like Δ+, this symbol measures participation strength, not trade direction.
↑ (Green Label Up)
CVD Bullish Continuation
Appears when all of the following are present:
CVD is positive and increasing
Strong buy delta is detected
At least one confirmation condition is met:
CVD is above its EMA and SMA
Price shows bullish expansion
Consecutive positive delta bars (sustained buying pressure)
This symbol highlights trend continuation supported by volume, not a reversal signal.
↓ (Red Label Down)
CVD Bearish Continuation
Appears when:
CVD is negative and decreasing
Strong sell delta is detected
At least one confirmation condition is met:
CVD is below its EMA and SMA
Price shows bearish expansion
Consecutive negative delta bars (sustained selling pressure)
This indicates bearish continuation with participation confirmation.
Cyan / Orange Histogram Bars
Footprint-Style Volume Imbalance
Cyan bars indicate buy volume exceeds sell volume by the imbalance factor
Orange bars indicate sell volume exceeds buy volume by the imbalance factor
These bars highlight areas where one side is overwhelming the other, often associated with absorption, initiative moves, or failed auctions.
Bright vs Muted Histogram Colors
CVD Momentum State
Bright colors = CVD increasing in the direction of its current bias
Muted colors = CVD losing momentum or stalling
This allows quick visual identification of strengthening vs weakening participation.
Conflict Alerts (No Symbol by Default)
Delta vs CVD Disagreement
These conditions trigger alerts (but no fixed chart icon):
Strong buying while CVD remains negative
Strong selling while CVD remains positive
Conflicts often signal absorption, trap conditions, or short-term exhaustion.
Important Usage Notes
All symbols are informational, not trade entries.
Signals are calculated from price-based volume distribution, not true bid/ask data.
Results depend on the quality of volume data provided by the exchange and PulseWire.
Indicator

Liquidity Maxing [JOAT]Liquidity Maxing - Institutional Liquidity Matrix
Introduction
Liquidity Maxing is an open-source strategy for PulseWire built around institutional market structure concepts. It identifies structural shifts, evaluates trades through multi-factor confluence, and implements layered risk controls.
The strategy is designed for swing trading on 4-hour timeframes, focusing on how institutional order flow manifests in price action through structure breaks, inducements, and liquidity sweeps.
Core Functionality
Liquidity Maxing performs three primary functions:
Tracks market structure to identify when control shifts between buyers and sellers
Scores potential trades using an eight-factor confluence system
Manages position sizing and risk exposure dynamically based on volatility and user-defined limits
The goal is selective trading when multiple conditions align, rather than frequent entries.
Market Structure Engine
The structure engine tracks three key events:
Break of Structure (BOS): Price pushes beyond a prior pivot in the direction of trend
Change of Character (CHoCH): Control flips from bullish to bearish or vice versa
Inducement Sweeps (IDM): Market briefly runs stops against trend before moving in the real direction
The structure module continuously updates strong highs and lows, labeling structural shifts visually. IDM markers are optional and disabled by default to maintain chart clarity.
The trade engine requires valid structure alignment before considering entries. No structure, no trade.
Eight-Factor Confluence System
Instead of relying on a single indicator, Liquidity Maxing uses an eight-factor scoring system:
Structure alignment with current trend
RSI within healthy bands (different ranges for up and down trends)
MACD momentum agreement with direction
Volume above adaptive baseline
Price relative to main trend EMA
Session and weekend filter (configurable)
Volatility expansion/contraction via ATR shifts
Higher-timeframe EMA confirmation
Each factor contributes one point to the confluence score. The default minimum confluence threshold is 6 out of 8, but you can adjust this from 1-8 based on your preference for trade frequency versus selectivity.
Only when structure and confluence agree does the strategy proceed to risk evaluation.
Dynamic Risk Management
Risk controls are implemented in multiple layers:
ATR-based stops and targets with configurable risk-to-reward ratio (default 2:1)
Volatility-adjusted position sizing to maintain consistent risk per trade as ranges expand or compress
Daily and weekly risk budgets that halt new entries once thresholds are reached
Correlation cooldown to prevent clustered trades in the same direction
Global circuit breaker with maximum drawdown limit and emergency kill switch
If any guardrail is breached, the strategy will not open new positions. The dashboard clearly displays risk state for transparency.
Market Presets
The strategy includes configuration presets optimized for different market types:
Crypto (BTC/ETH): RSI bands 70/30, volume multiplier 1.2, enhanced ATR scaling
Forex Majors: RSI bands 75/25, volume multiplier 1.5
Indices (SPY/QQQ): RSI bands 70/30, volume multiplier 1.3
Custom: Default values for user customization
For crypto assets, the strategy automatically applies ATR volatility scaling to account for higher volatility characteristics.
Monitoring and Dashboards
The strategy includes optional monitoring layers:
Risk Operations Dashboard (top-right):
Trend state
Confluence score
ATR value
Current position size percentage
Global drawdown
Daily and weekly risk consumption
Correlation guard state
Alert mode status
Performance Console (top-left):
Net profit
Current equity
Win rate percentage
Average trade value
Sharpe-style ratio (rolling 50-bar window)
Profit factor
Open trade count
Optional risk tint on chart background provides visual indication of "safe to trade" versus "halted" state.
All visualization elements can be toggled on/off from the inputs for clean chart viewing or full telemetry during parameter tuning.
Alerts and Automation
The strategy supports alert integration with two formats:
Standard alerts: Human-readable messages for long, short, and risk-halt conditions
Webhook format: JSON-formatted payloads ready for external execution systems (optional)
Alert messages are predictable and unambiguous, suitable for manual review or automated forwarding to execution engines.
Built-in Validation Suite
The strategy includes an optional validation layer that can be enabled from inputs. It checks:
Internal consistency of structure and confluence metrics
Sanity and ordering of risk parameters
Position sizing compliance with user-defined floors and caps
This validation is optional and not required for trading, but provides transparency into system operation during development or troubleshooting.
Strategy Parameters
Market Presets:
Configuration Preset: Choose between Crypto (BTC/ETH), Forex Majors, Indices (SPY/QQQ), or Custom
Market Structure Architecture:
Pivot Length: Default 5 bars
Filter by Inducement (IDM): Default enabled
Visualize Structure: Default enabled
Structure Lookback: Default 50 bars
Risk & Capital Preservation:
Risk:Reward Ratio: Default 2.0
ATR Period: Default 14
ATR Multiplier (Stop): Default 2.0
Max Drawdown Circuit Breaker: Default 10%
Risk per Trade (% Equity): Default 1.5%
Daily Risk Limit: Default 6%
Weekly Risk Limit: Default 12%
Min Position Size (% Equity): Default 0.25%
Max Position Size (% Equity): Default 5%
Correlation Cooldown (bars): Default 3
Emergency Kill Switch: Default disabled
Signal Confluence:
RSI Length: Default 14
Trend EMA: Default 200
HTF Confirmation TF: Default Daily
Allow Weekend Trading: Default enabled
Minimum Confluence Score (0-8): Default 6
Backtesting Considerations
When backtesting this strategy, consider the following:
Commission: Default 0.05% (adjustable in strategy settings)
Initial Capital: Default $100,000 (adjustable)
Position Sizing: Uses percentage of equity (default 2% per trade)
Timeframe: Optimized for 4-hour charts, though can be tested on other timeframes
Results will vary significantly based on:
Market conditions and volatility regimes
Parameter settings, especially confluence threshold
Risk limit configuration
Symbol characteristics (crypto vs forex vs equities)
Past performance does not guarantee future results. Win rate, profit factor, and other metrics should be evaluated in context of drawdown periods, trade frequency, and market conditions.
How to Use This Strategy
This is a framework that requires understanding and parameter tuning, not a one-size-fits-all solution.
Recommended workflow:
Start on 4-hour timeframe with default parameters and appropriate market preset
Run backtests and study performance console metrics: focus on drawdown behavior, win rate, profit factor, and trade frequency
Adjust confluence threshold to match your risk appetite—higher thresholds mean fewer but more selective trades
Set realistic daily and weekly risk budgets appropriate for your account size and risk tolerance
Consider ATR multiplier adjustments based on market volatility characteristics
Only connect alerts or automation after thorough testing and parameter validation
Treat this as a risk framework with an integrated entry engine, not merely an entry signal generator. The risk controls are as important as the trade signals.
Strategy Limitations
Designed for swing trading timeframes; may not perform optimally on very short timeframes
Requires sufficient market structure to identify pivots; may struggle in choppy or low-volatility environments
Crypto markets require different parameter tuning than traditional markets
Risk limits may prevent entries during favorable setups if daily/weekly budgets are exhausted
Correlation cooldown may delay entries that would otherwise be valid
Backtesting results depend on data quality and may not reflect live trading with slippage
Design Philosophy
Many indicators tell you when price crossed a moving average or RSI left oversold. This strategy addresses questions institutional traders ask:
Who is in control of the market right now?
Is this move structurally significant or just noise?
Do I want to add more risk given what I've already done today/week?
If I'm wrong, exactly how painful can this be?
The strategy provides disciplined, repeatable answers to these questions through systematic structure analysis, confluence filtering, and multi-layer risk management.
Technical Implementation
The strategy uses Pine Script v6 with:
Custom types for structure, confluence, and risk state management
Functional programming approach for reusable calculations
State management through persistent variables
Optional visual elements that can be toggled independently
The code is open-source and can be modified to suit individual needs. All important logic is visible in the source code.
Disclaimer
This script is provided for educational and informational purposes only. It is not intended as financial, investment, trading, or any other type of advice or recommendation. Trading involves substantial risk of loss and is not suitable for all investors. Past performance, whether real or indicated by historical tests of strategies, is not indicative of future results.
No representation is being made that any account will or is likely to achieve profits or losses similar to those shown. In fact, there are frequently sharp differences between backtested results and actual results subsequently achieved by any particular trading strategy.
The user should be aware of the risks involved in trading and should trade only with risk capital. The authors and publishers of this script are not responsible for any losses or damages, including without limitation, any loss of profit, which may arise directly or indirectly from use of or reliance on this script.
This strategy uses technical analysis methods and indicators that are not guaranteed to be accurate or profitable. Market conditions change, and strategies that worked in the past may not work in the future. Users should thoroughly test any strategy in a paper trading environment before risking real capital.
Commission and slippage settings in backtests may not accurately reflect live trading conditions. Real trading results will vary based on execution quality, market liquidity, and other factors not captured in backtesting.
The user assumes full responsibility for all trading decisions made using this script. Always consult with a qualified financial advisor before making investment decisions.
Enjoy - officialjackofalltrades Strategy

Arbitrage Detector [LuxAlgo]The Arbitrage Detector unveils hidden spreads in the crypto and forex markets. It compares the same asset on the main crypto exchanges and forex brokers and displays both prices and volumes on a dashboard, as well as the maximum spread detected on a histogram divided by four user-selected percentiles. This allows traders to detect unusual, high, typical, or low spreads.
This highly customizable tool features automatic source selection (crypto or forex) based on the asset in the chart, as well as current and historical spread detection. It also features a dashboard with sortable columns and a historical histogram with percentiles and different smoothing options.
🔶 USAGE
Arbitrage is the practice of taking advantage of price differences for the same asset across different markets. Arbitrage traders look for these discrepancies to profit from buying where it’s cheaper and selling where it’s more expensive to capture the spread.
For begginers this tool is an easy way to understand how prices can vary between markets, helping you avoid trading at a disadvantage.
For advanced traders it is a fast tool to spot arbitrage opportunities or inefficiencies that can be exploited for profit.
Arbitrage opportunities are often short‑lived, but they can be highly profitable. By showing you where spreads exist, this tool helps traders:
Understand market inefficiencies
Avoid trading at unfavorable prices
Identify potential profit opportunities across exchanges
As we can see in the image, the tool consists of two main graphics: a dashboard on the main chart and a histogram in the pane below.
Both are useful for understanding the behavior of the same asset on different crypto exchanges or forex brokers.
The tool's main goal is to detect and categorize spread activity across the major crypto and forex sources. The comparison uses data from up to 19 crypto exchanges and 13 forex brokers.
🔹 Forex or Crypto
The tool selects the appropriate sources (crypto exchanges or forex brokers) based on the asset in the chart. Traders can choose which one to use.
The image shows the prices and volumes for Bitcoin and the euro across the main sources, sorted by descending average price over the last 20 days.
🔹 Dashboard
The dashboard displays a list of all sources with four main columns: last price, average price, volume, and total volume.
All four columns can be sorted in ascending or descending order, or left unsorted. A background gradient color is displayed for the sorted column.
Price and volume delta information between the chart asset and each exchange can be enabled or disabled from the settings panel.
🔹 Histogram
The histogram is excellent for visualizing historical values and comparing them with the asset price.
In this case, we have the Euro/U.S. Dollar daily chart. As we can see, the unusual spread activity detected since 2016, with values at or above 98%, is usually a good indication of increased trader activity, which may result in a key price area where the market could turn around.
By default, the histogram has the gradient and smoothing auto features enabled.
The differences are visible in the chart above. On top is an adaptive moving average with higher values for unusual activity. At the bottom is an exponential moving average with a length of 9.
The differences between the gradient and solid colors are evident. In the first case, the colors are in sync with the data values, becoming more yellow with higher values and more green with lower values. In the second case, the colors are solid and only distinguish data above or below the defined percentiles.
🔶 SETTINGS
Sources: Choose between crypto exchanges, forex brokers, or automatic selection based on the asset in the chart.
Average Length: Select the length for the price and volume averages.
🔹 Percentiles
Percentile Length: Select the length for the percentile calculation, or enable the use of the full dataset. Enabling this option may result in runtime errors due to exceeding the allotted resources.
Unusual % >: Select the unusual percentile.
High % >: Select the high percentile.
Typical % >: Select the typical percentile.
🔹 Dashboard
Dashboard: Enable or disable the dashboard.
Sorting: Select the sorting column and direction.
Position: Select the dashboard location.
Size: Select the dashboard size.
Price Delta: Show the price difference between each exchange and the asset on the chart.
Volume Delta: Show the volume difference between each exchange and the asset on the chart.
🔹 Style
Unusual: Enable the plot of the unusual percentile and select its color.
High: Enable the plot of the high percentile and select its color.
Typical: Enable the plot of the typical percentile and select its color.
Low: Select the color for the low percentile.
Percentiles Auto Color: Enable auto color for all plotted percentiles.
Histogram Gradient: Enable the gradient color for the histogram.
Histogram Smoothing: Select the length of the EMA smoothing for the histogram or enable the Auto feature. The Auto feature uses an adaptive moving average with the data percent rank as the efficiency ratio.
Indicator

Indicator

Indicator

FVG Maxing - Fair Value Gaps, Equilibrium, and Candle Patterns
What this script does
This open-source indicator highlights 3-candle fair value gaps (FVGs) on the active chart timeframe, draws their midpoint ("equilibrium") line, tracks when each gap is mitigated, and optionally marks simple candle patterns (engulfing and doji) for confluence. It is intended as an educational tool to study how price interacts with imbalances.
3-candle bullish and bearish FVG zones drawn as forward-extending boxes.
Equilibrium line at 50% of each gap.
Different styling for mitigated vs unmitigated gaps.
Compact statistics panel showing how many gaps are currently active and filled.
Optional overlays for bullish/bearish engulfing patterns and doji candles.
1. FVG logic (3-candle gaps)
The script focuses on a strict 3-candle definition of a fair value gap:
Three consecutive candles with the same body direction.
The wick of candle 3 is separated from the wick of candle 1 (no overlap).
A bullish gap is created when price moves up fast enough to leave a gap between candle 1 and 3. A bearish gap is the mirror case to the downside.
In Pine, the core detection looks like this:
// Three candles with the same body direction
bull_seq = close > open and close > open and close > open
bear_seq = close < open and close < open and close < open
// Wick gap between candle 1 and candle 3
bull_gap = bull_seq and low > high
bear_gap = bear_seq and high < low
// Final FVG flags
is_bull_fvg = bull_gap
is_bear_fvg = bear_gap
For each detected FVG:
Bullish FVG range: from high up to low (gap below current price).
Bearish FVG range: from low down to high (gap above current price).
Each zone is stored in a custom FVGData structure so it can be updated when price later trades back inside it.
2. Equilibrium line (0.5 of the gap)
Every FVG box gets an optional equilibrium line plotted at the midpoint between its top and bottom:
eq_level = (top + bottom) / 2.0
right_index = extend_boxes ? bar_index + extend_length_bars : bar_index
bx = box.new(bar_index - 2, top, right_index, bottom)
eq_ln = line.new(bar_index - 2, eq_level, right_index, eq_level)
line.set_style(eq_ln, line.style_dashed)
line.set_color(eq_ln, eq_color)
You can use this line as a neutral “fair value” reference inside the zone, or as a simple way to think in terms of premium/discount within each gap.
3. Mitigation rules and styling
Each FVG stays active until price trades back into the gap:
Bullish FVG is considered mitigated when the low touches or moves below the top of the gap.
Bearish FVG is considered mitigated when the high touches or moves above the bottom of the gap.
When that happens, the script:
Marks the internal FVGData entry as mitigated.
Softens the box fill and border colors.
Optionally updates the label text from "BULL EQ / BEAR EQ" to "BULL FILLED / BEAR FILLED".
Can hide mitigated zones almost completely if you only want to see unfilled imbalances.
This allows you to distinguish between current areas of interest and zones that have already been traded through.
4. Candle pattern overlays (engulfing and doji)
For additional confluence, the script can mark simple candle patterns on top of the FVG view:
Bullish engulfing — current candle body fully wraps the previous bearish body and is larger in size.
Bearish engulfing — current candle body fully wraps the previous bullish body and is larger in size.
Doji — candles where the real body is small relative to the full range (high–low).
The detection is based on basic body and range geometry:
curr_body = math.abs(close - open)
prev_body = math.abs(close - open )
curr_range = high - low
body_ratio = curr_range > 0 ? curr_body / curr_range : 1.0
bull_engulfing = close > open and close < open and open <= close and close >= open and curr_body > prev_body
bear_engulfing = close < open and close > open and open >= close and close <= open and curr_body > prev_body
is_doji = curr_range > 0 and body_ratio <= doji_body_ratio
On the chart, they appear as:
Small triangle markers below bullish engulfing candles.
Small triangle markers above bearish engulfing candles.
Small circles above doji candles.
All three overlays are optional and can be turned on or off and recolored in the CANDLE PATTERNS group of inputs.
5. Inputs overview
The script organizes settings into clear groups:
DISPLAY SETTINGS : Show bullish/bearish FVGs, show/hide mitigated zones, box extension length, box border width, and maximum number of boxes.
EQUILIBRIUM : Toggle equilibrium lines, color, and line width.
LABELS : Enable labels, choose whether to label unmitigated and/or mitigated zones, and select label size.
BULLISH COLORS / BEARISH COLORS : Separate fill and border colors for bullish and bearish gaps.
MITIGATED STYLE : Opacity used when a gap is marked as mitigated.
STATISTICS : Toggle the on-chart FVG statistics panel.
CANDLE PATTERNS : Show engulfing patterns, show dojis, colors, and the body-to-range threshold that defines a doji.
6. Statistics panel
An optional table in the corner of the chart summarizes the current state of all tracked gaps:
Total number of FVGs still being tracked.
Number of bullish vs bearish FVGs.
Number of unfilled vs mitigated FVGs.
Simple fill rate: percentage of tracked FVGs that have been marked as mitigated.
This can help you study how a particular market tends to treat gaps over time.
7. How you might use it (examples)
These are usage ideas only, not recommendations:
Study how often your symbol mitigates gaps and where inside the zone price tends to react.
Use higher-timeframe context and then refine entries near the equilibrium line on your trading timeframe.
Combine FVG zones with basic candle patterns (engulfing/doji) as an extra visual anchor, if that fits your process.
Hope you enjoy, give your feedback in the comments!
- officialjackofalltrades
Indicator

FX OSINT - Institutional Midnight Intelligence For ForexFX OSINT — Institutional Midnight Intelligence For Forex
See Your FX Charts Like an Intelligence Briefing, Not a Guess
If you’ve ever stared at EURUSD or GBPJPY and thought:
Where is the real liquidity?
Is this move sponsored by smart money or just noise?
Am I buying into premium or discount?
…then FX OSINT is designed for you.
FX OSINT (Forex Open Source Intelligence) treats the FX market the way an analyst treats an investigation:
Collect open‑source signals from price, time, and volatility.
Map out liquidity, structure, and sessions in a repeatable way.
Present them in a clean, non‑cluttered dashboard so you can read context quickly.
No rainbow spaghetti. No 12 indicators stacked on top of each other. Just structured information, midnight visuals, and a clear read on what the market is doing right now.
Why FX OSINT Exists
Many FX traders run into the same problems:
Overloaded charts – multiple indicators fighting for space, none talking to each other.
Signals with no context – arrows that ignore structure, sessions, and liquidity.
Tools not tuned for FX – generic indicators that don’t care what pair you are on.
FX OSINT brings this together into one FX‑focused framework that:
Understands structure : BOS/CHOCH, swings, and trend across multiple timeframes.
Respects liquidity : sweeps, order blocks, and FVGs with controlled visibility.
Reads volatility & ADR : how far today’s range has developed.
Knows the clock : London, New York, and key killzones.
Scores confluence : a 0–100 engine that summarizes how much is lining up.
FX OSINT is built for traders who want structured, institutional‑style logic with a disciplined, midnight‑themed UI —not flashing buy/sell buttons.
1. Midnight Dashboard — Top‑Right Intelligence Panel
This panel acts as your compact “situation room”:
CONFLUENCE — 0–100 score blending trend alignment, volatility regime, sessions, liquidity events, order blocks, FVGs, and ADR context.
REGIME — Low / Building / Normal / Expansion / Extreme, driven by ATR relationships, so you know if you’re in chop, trend, or expansion.
HTF / MTF / LTF TREND — Higher‑, medium‑, and current‑timeframe bias in one place, so you see if you are trading with or against the larger flow.
ADR USED — How much of today’s typical range has already been consumed in percentage terms.
PIP VALUE — Approximate pip size per pair, including JPY‑style pairs.
Everything is bold, legible, and color‑coded, but the layout stays minimal so you can:
Look once → understand the context.
2. Structure, BOS, CHOCH — Smart‑Money‑Style Skeleton
FX OSINT tracks swing highs and lows, then shows how structure evolves:
Trend logic based on evolving swings, not just a moving average cross.
BOS (Break of Structure) when price expands in the direction of trend.
CHOCH (Change of Character) when behavior flips and the market structure changes.
Labels are selective, not spammy . You don’t get a tag on every minor wiggle—only when structure meaningfully shifts, so it’s easier to answer:
"Are we continuing the current leg, or did something actually change here?"
3. Liquidity Sweeps, Order Blocks & FVGs — The OSINT Layer
FX OSINT treats liquidity as a key information layer:
Liquidity sweeps — Detects when price spikes through recent highs/lows and then snaps back, flagging potential stop runs.
Order blocks — The last opposite candle before a displacement move, drawn as controlled boxes with limited lifespan to avoid clutter.
Fair Value Gaps (FVGs) — Three‑candle imbalances rendered as precise zones with a cap on how many can exist at once.
Under the hood, boxes are managed so your chart does not become a wall of old zones:
// Draw Order Blocks with overlap prevention
if isBullishOB and showOrderBlocks
if array.size(obBoxes) >= maxBoxes
oldBox = array.shift(obBoxes)
box.delete(oldBox)
newBox = box.new(bar_index , low , bar_index + obvLength, high ,
border_color = bullColor, bgcolor = bullColorTransp,
border_width = 2, extend = extend.none)
array.push(obBoxes, newBox)
Box limits keep the number of zones under control.
Borders and transparency are tuned so you still see price clearly.
You end up with a curated liquidity map , rather than a chart buried under every level price has ever touched.
4. Volatility, ADR & Sessions — Time and Range Intelligence
FX OSINT runs a Volatility Regime Analyzer and an ADR engine in the background:
Volatility regime — Five states (Low → Extreme) derived from fast vs. slow ATR.
ADR bands — Daily high/mid/low projected from the current daily open.
ADR used % — How far today’s move has traveled relative to its typical range.
On the time side:
Asia, London, New York sessions are softly highlighted with a single active background to avoid overlapping colors.
Killzones (e.g., London and New York opens) can be emphasized when you want to focus on where significant moves often begin.
Together, this helps you answer:
"What time is it in the trading day?"
"How stretched are we?"
"Is expansion just starting, or are we late to the move?"
5. ICT‑Style Add‑Ons — BOS/CHOCH, Premium/Discount, and Confluence
For modern FX / ICT‑inspired workflows, FX OSINT includes:
BOS / CHOCH labels — Clear structural shifts based on swings.
Premium / Discount zones — 25%, 50%, 75% levels of the daily range, so you know if you are buying discount in an uptrend or selling premium in a downtrend.
Confluence score — A single number summarizing how many conditions line up in the current context.
Instead of replacing your plan, FX OSINT compresses your checklist into the chart:
Structure
Liquidity
Session / Time
Volatility / ADR
Higher‑timeframe alignment
When these agree, the dashboard reflects it. When they don’t, it stays neutral and lets you see the conflict.
How To Use FX OSINT
FX OSINT is not a signal bot. It is an information engine that organizes context so you can apply your own plan.
A typical workflow might look like:
Start on higher timeframes (e.g., H4/D1) to form directional bias from structure, volatility regime, and ADR context.
Move to intraday timeframes (e.g., M15/H1) around your chosen sessions (London and/or New York).
Look for confluence :
HTF / MTF / LTF trends aligned.
Price in discount for longs or premium for shorts.
Recent liquidity sweep into a meaningful OB or FVG.
Confluence score at or above a level you consider significant.
Then refine entries using BOS/CHOCH on lower timeframes according to your own risk and execution rules.
FX OSINT aims to make sure you do not enter a trade without seeing:
Where you are in the day (ADR and sessions).
Where you are in the volatility cycle (regime).
Who currently appears in control (structure and trend).
Which liquidity was just targeted (sweeps and zones).
Design Choices and Scope
FX OSINT was designed around a few clear constraints:
FX‑focused — Logic and filters tuned for FX majors, minors, exotics, and metals. It is intended for FX markets, not for every possible asset class.
Open‑source — The full Pine Script code is available so you can read it, learn from it, and adapt it to your own workflow if needed.
Clear themes — Two main visual styles (e.g., dark institutional “midnight” and a lighter accent variant) with a focus on readability, not visual noise.
Chart‑friendly — Panels use fixed areas, session highlights avoid overlapping, and boxes are capped/pruned so the chart remains usable.
FX OSINT is for only Forex pairs, not anything else!
Hope you enjoyed and remember your Open Source Intelligence Matters 😉!
-officialjackofalltrades Indicator

Indicator

Auto Position CalculatorA position sizing tool that automatically detects the instrument you're trading and calculates the correct position size based on your risk parameters.
What It Does
This indicator calculates how many contracts, lots, or shares to trade based on your account size, risk percentage, and stop loss distance. It auto-detects the instrument type and adjusts the point/pip value accordingly.
Supported Instruments
Futures: NQ, MNQ, ES, MES, YM, MYM, RTY, M2K, CL, MCL, GC, MGC
Forex: All major pairs (USD, EUR, GBP, JPY, etc.)
Index CFDs: NAS100, US500, US30, GER40, UK100
Metals: XAU, XAG
Crypto and Stocks: Automatic detection
How to Use
Set your account size and risk % in settings
Click the settings icon and place Entry, Stop Loss, and Take Profit on the chart
The position size and risk calculations appear automatically
Levels auto-reset at your chosen session (Asia, London, or New York open)
Limitations
CFD and forex pip values assume standard lot sizing - your broker may differ
Auto-detection relies on ticker naming conventions, which vary by broker/data feed
Session reset times are based on ET (Eastern Time) Indicator

Indicator

XenoSmooth Predictive Candles - Advanced Heikin Ashi CandlesXenoSmooth Predictive Candles
Summary in one paragraph
A synthetic candle engine for crypto, FX, equities, and futures on intraday to swing timeframes. It reduces noise and flip delay so structure is easier to read. The core novelty is a predictive open with inertia plus slope lead fused with a zero lag body filter and an overshoot based wick model normalized by the real range and capped by ATR. Add it to a clean chart, hide regular candles if desired, and tune lengths. Shapes can move while the bar is open and settle on close. For conservative workflows read on bar close.
Scope and intent
• Markets. Major FX pairs, index futures, large cap equities, liquid crypto
• Timeframes. One minute to daily
• Purpose. Faster and smoother visual structure than Heikin Ashi while keeping causality and realistic wicks
Originality and usefulness
• Unique concept. Predictive open with inertia and slope lead plus selectable zero lag body filter and ATR capped wick overshoot in percent of real range
• Failure mode addressed. Late flips in chop and unreal long wicks from raw extremes
• Testability. Every control is an input. Users can toggle body method, lengths, clipping, and percent modeling
• Portable yardstick. ATR based wick cap and percent of bar range scale across symbols
Method overview in plain language
Build a robust base price from O, H, L, and extra weight on Close. Smooth it with a chosen filter to produce the synthetic close. Drive a predictive open that follows the synthetic close with tunable inertia and a small lead from the last bar slope. Model wicks as the portion of the real extremes that extends beyond the synthetic body, smooth that overshoot, normalize by the bar range if selected, then cap by ATR to avoid tail spikes. Clamp synthetic values to the real high and low if enabled.
Base measures
• Range basis. True Range for the ATR cap and High minus Low for percent normalization
• Return basis. Not used
Components
• Body Base Blend. Weighted O H L with a close bias to stabilize the base
• Zero Lag Body Filter. ZLEMA or Super Smoother or WMA to set the synthetic close
• Predictive Open. Inertial follow of the synthetic close plus a slope lead term
• Wick Overshoot Model. Smoothed extension beyond the body, optional percent of real range, ATR cap
• Clamp Option. Keeps synthetic open and close inside the real bar range
Fusion rule
• Synthetic close equals filtered base
• Synthetic open equals previous open plus inertia times distance to synthetic close plus slope lead
• Wicks equal smoothed overshoot above and below the body, optionally percent of range then converted back to price and capped by ATR
Inputs with guidance
Setup
• Signal timeframe. Uses the chart timeframe
• Invert direction. Not applicable
• Session windows. Not applicable
Logic
• Body length. Core smoothing length for the synthetic close. Typical 6 to 14. Higher gives smoother and slower. Lower gives faster flips
• Body method. ZLEMA or Super Smoother or WMA. ZLEMA is fastest. Super Smoother is calmest
• Close weight in base. 0 to 1. Higher gives stronger emphasis on close and less noise
• Open inertia. 0 to 1. Higher makes the open follow the close more tightly
• Lead gain. 0 to 1. Higher adds more phase lead. Keep modest to avoid overshoot
• Clamp body to real range. On keeps synthetic body inside high and low
• Wick smooth length. Typical 4 to 10. Higher reduces jitter
• Overshoot as percent. On stabilizes wicks across regimes
• ATR length. Typical 10 to 20 for the cap
• Max wick equals ATR times. 0 disables. 1.0 to 2.0 contains extreme tails
Filters
• Efficiency or trend filter. Not used
• Micro versus macro range relation. Not used
• Location filter. Not used
Realism and responsible publication
• No performance claims
• Intrabar motion reminder. Shapes can move while a bar forms and settle on close
• Strategies must use standard candles for signals and orders
Honest limitations and failure modes
• High impact releases and thin liquidity can distort wicks and produce gaps that any smoother cannot predict
• Very quiet regimes can reduce contrast. Consider longer body length
• Session time on the chart controls the definition of each bar
Indicator

RightFlow Universal Volume Profile - Any Market Any TimeframeSummary in one paragraph
RightFlow is a right anchored microstructure volume profile for stocks, futures, FX, and liquid crypto on intraday and daily timeframes. It acts only when several conditions align inside a session window and presents the result as a compact right side profile with value area, POC, a bull bear mix by price bin, and a HUD of profile VWAP and pressure shares. It is original because it distributes each bar’s weight into multiple mid price slices, blends bull bear pressure per bin with a CLV based split, and grows the profile to the right so price action stays readable. Add to a clean chart, read the table, and use the visuals. For conservative workflows read on bar close.
Scope and intent
• Markets. Major FX pairs, index futures, large cap equities and ETFs, liquid crypto.
• Timeframes. One minute to daily.
• Default demo used in the publication. SPY on 15 minute.
• Purpose. See where participation concentrates, which side dominated by price level, and how far price sits from VA and POC.
Originality and usefulness
• Unique fusion. Right anchored growth plus per bar slicing and CLV split, with weight modes Raw, Notional, and DeltaProxy.
• Failure mode addressed. False reads from single bar direction and coarse binning.
• Testability. All parts sit in Inputs and the HUD.
• Portable yardstick. Value Area percent and POC are universal across symbols.
• Protected scripts. Not applicable. Method and use are fully disclosed.
Method overview in plain language
Pick a scope Rolling or Today or This Week. Define a window and number of price bins. For each bar, split its range into small slices, assign each slice a weight from the selected mode, and split that weight by CLV or by bar direction. Accumulate totals per bin. Find the bin with the highest total as POC. Expand left and right until the chosen share of total volume is covered to form the value area. Compute profile VWAP for all, buyers, and sellers and show them with pressure shares.
Base measures
Range basis. High minus low and mid price samples across the bar window.
Return basis. Not used. VWAP trio is price weighted by weights.
Components
• RightFlow Bins. Price histogram that grows to the right.
• Bull Bear Split. CLV based 0 to 1 share or pure bar direction.
• Weight Mode. Raw volume, notional volume times close, or DeltaProxy focus.
• Value Area Engine. POC then outward expansion to target share.
• HUD. Profile VWAP, Buy and Sell percent, winner delta, split and weight mode.
• Session windows optional. Scope resets on day or week.
Fusion rule
Color of each bin is the convex blend of bull and bear shares. Value area shading is lighter inside and darker outside.
Signal rule
This is context, not a trade signal. A strong separation between buy and sell percent with price holding inside VA often confirms balance. Price outside VA with skewed pressure often marks initiative moves.
What you will see on the chart
• Right side bins with blended colors.
• A POC line across the profile width.
• Labels for POC, VAH, and VAL.
• A compact HUD table in the top right.
Table fields and quick reading guide
• VWAP. Profile VWAP.
• Buy and Sell. Pressure shares in percent.
• Delta Winner. Winner side and margin in percent.
• Split and Weight. The active modes.
Reading tip. When Session scope is Today or This Week and Buy minus Sell is clearly positive or negative, that side often controls the day’s narrative.
Inputs with guidance
Setup
• Profile scope. Rolling or session reset. Rolling uses window bars.
• Rolling window bars. Typical 100 to 300. Larger is smoother.
Binning
• Price bins. Typical 32 to 128. More bins increase detail.
• Slices per bar. Typical 3 to 7. Raising it smooths distribution.
Weighting
• Weight mode. Raw, Notional, DeltaProxy. Notional emphasizes expensive prints.
• Bull Bear split. CLV or BarDir. CLV is more nuanced.
• Value Area percent. Typical 68 to 75.
View
• Profile width in bars, color split toggle, value area shading, opacities, POC line, VA labels.
Usage recipes
Intraday trend focus
• Scope Today, bins 64, slices 5, Value Area 70.
• Split CLV, Weight Notional.
Intraday mean reversion
• Scope Today, bins 96, Value Area 75.
• Watch fades back to POC after initiative pushes.
Swing continuation
• Scope Rolling 200 bars, bins 48.
• Use Buy Sell skew with price relative to VA.
Realism and responsible publication
No performance claims. Shapes can move while a bar forms and settle on close. Education only.
Honest limitations and failure modes
Thin liquidity and data gaps can distort bin weights. Very quiet regimes reduce contrast. Session time is the chart venue time.
Open source reuse and credits
None.
Legal
Education and research only. Not investment advice. Test on history and simulation before live use. Indicator

Strategy

Reactive Curvature Smoother Moving Average IndicatorSummary in one paragraph
RCS MA is a reactive curvature smoother for any liquid instrument on intraday through swing timeframes. It helps you act only when context strengthens by adapting its window length with a normalized path energy score and by smoothing with robust residual weights over a quadratic fit, then optionally blending a capped one step forecast. Add it to a clean chart and watch the single colored line. Shapes can shift while a bar forms and settle on close. For conservative use, judge on bar close.
Scope and intent
• Markets: major FX pairs, index futures, large cap equities, liquid crypto
• Timeframes: one minute to daily
• Purpose: reduce lag in trends while resisting chop and outliers
• Limits: indicator only, no orders
Originality and usefulness
• Novelty: adaptive window selection by minimizing normalized path energy with directionality bias, plus Huber weighted residuals and curvature aware penalty, finished with a mintick capped forecast blend
• Failure modes addressed: whipsaws from fixed length MAs and outlier spikes that pull means
• Testable: Inputs expose all components and optional diagnostics show chosen length, directionality, and energy
• Portable yardstick: forecast cap uses mintick to stay symbol aware
Method overview in plain language
Base measures
• Range span of the tested window and a path energy defined as the sum of squared price increments, normalized by span
Components
Adaptive window chooser: scans L between Min and Max using an energy over trend score and picks the lowest score
Robust smoother: fits a quadratic to the last L bars, computes residuals, applies Huber weights and an exponential residual penalty scaled down when curvature is high
Forecast blend: projects one step ahead from the quadratic, caps displacement by a multiple of mintick, blends by user weight
Fusion rule
• Final line equals robust mean plus optional capped forecast blend
Signal rule
• Visual bias only: color turns lime when close is above the line, red otherwise
What you will see on the chart
• One colored line that tightens in trends and relaxes in chop
• Optional debug overlays for core value, chosen L, directionality, and energy
• Optional last bar label with L, directionality, and energy
• Reminder: drawings can move intrabar and settle on close
Inputs with guidance
Setup
• Source: price series to smooth
Logic
• Min window l_min. Typical 5 to 21. Higher increases stability, adds lag
• Max window l_max. Typical 40 to 128. Higher reduces noise, adds lag ceiling
• Length step grid_step. Typical 1 to 8. Smaller is finer and heavier
• Trend bias trend_bias. Typical 0.50 to 0.80. Higher favors trend persistence
• Residual penalty lambda_base. Typical 0.8 to 2.0. Higher downweights large residuals more
• Huber threshold huber_k. Typical 1.5 to 3.0. Higher admits more outliers
• Curvature guard curv_guard. Typical 0.3 to 1.0. Higher reduces influence when curve is tight
• Forecast blend lead_blend. 0 disables. Typical 0.10 to 0.40
• Forecast cap lead_limit. Typical 1 to 5 minticks
• Show chosen L and metrics show_debug. Diagnostics toggle
Optional: enable diagnostics to see length, direction, and energy
Realism and responsible publication
• No performance claims. Past results never guarantee future outcomes
• Shapes can move while bars are open and settle on close
• Use on standard candles for analysis and combine with your own risk process
Honest limitations and failure modes
• Very quiet regimes can reduce energy contrast, length selection may hover near the bounds
• Gap heavy symbols can disrupt quadratic fit on the window edges
• Excessive forecast blend may look anticipatory; use low values and the cap Indicator

DayFlow VWAP Relay Forex Majors StrategySummary in one paragraph
DayFlow VWAP Relay is a day-trading strategy for major FX pairs on intraday timeframes, demonstrated on EURUSD 15 minutes. It waits for alignment between a daily anchored VWAP regime check, residual percentiles, and lower-timeframe micro flow before suggesting trades. The originality is the fusion of daily VWAP residual percentiles with a live micro-flow score from 1 minute data to switch between fade and breakout behavior inside the same session. Add it to a clean chart and use the markers and alerts.
Scope and intent
• Markets: Major FX pairs such as EURUSD, GBPUSD, USDJPY, AUDUSD, USDCHF, USDCAD
• Timeframes: One minute to one hour
• Default demo in this publication: EURUSD on 15 minutes
• Purpose: Reduce false starts by acting only when context, location and micro flow agree
• Limits: This is a strategy. Orders are simulated on standard candles only
Originality and usefulness
• Core novelty: Residual percentiles to daily anchored VWAP decide “balanced versus expanding day”. A separate 1 minute micro-flow score confirms direction, so the same model fades extremes in balance and rides range breaks in expansion
• Failure modes addressed: Chop fakeouts and unconfirmed breakouts are filtered by the expansion gate and micro-flow threshold
• Testability: Every input is exposed. Bands, background regime color, and markers show why a suggestion appears
• Portable yardstick: Stops and targets are ATR multiples converted to ticks, which transfer across symbols
• Open source status: No reused third-party code that requires attribution
Method overview in plain language
The day is anchored with a VWAP that updates from the daily session start. Price minus VWAP is the residual. Percentiles of that residual measured over a rolling window define location extremes for the current day. A regime score compares residual volatility to price volatility. When expansion is low, the day is treated as balanced and the model fades residual extremes if 1 minute micro flow points back to VWAP. When expansion is high, the model trades breakouts outside the VWAP bands if slope and micro flow agree with the move.
Base measures
• Range basis: True Range smoothed by ATR for stops and targets, length 14
• Return basis: Not required for signals; residuals are absolute price distance to VWAP
Components
• Daily Anchor VWAP Bands. VWAP with standard-deviation bands. Slope sign is used for trend confirmation on breakouts
• Residual Percentiles. Rolling percentiles of close minus VWAP over Signal length. Identify location extremes inside the day
• Expansion Ratio. Standard deviation of residuals divided by standard deviation of price over Signal length. Classifies balanced versus expanding day
• Micro Flow. Net up minus down closes from 1 minute data across a short span, normalized to −1..+1. Confirms direction and avoids fades against pressure
• Session Window optional. Restricts trading to your configured hours to avoid thin periods
• Cooldown optional. Bars to wait after a position closes to prevent immediate re-entry
Fusion rule
Gating rather than weighting. First choose regime by Expansion Ratio versus the Expansion gate. Inside each regime all listed conditions must be true: location test plus micro-flow threshold plus session window plus cooldown. Breakouts also require VWAP slope alignment.
Signal rule
• Long suggestion on balanced day: residual at or below the lower percentile and micro flow positive above the gate while inside session and cooldown is satisfied
• Short suggestion on balanced day: residual at or above the upper percentile and micro flow negative below the gate while inside session and cooldown is satisfied
• Long suggestion on expanding day: close above the upper VWAP band, VWAP slope positive, micro flow positive, session and cooldown satisfied
• Short suggestion on expanding day: close below the lower VWAP band, VWAP slope negative, micro flow negative, session and cooldown satisfied
• Positions flip on opposite suggestions or exit by brackets
What you will see on the chart
• Markers on suggestion bars: L for long, S for short
• Exit occurs on reverse signal or when a bracket order is filled
• Reference lines: daily anchored VWAP with upper and lower bands
• Optional background: teal for balanced day, orange for expanding day
Inputs with guidance
Setup
• Signal length. Residual and regime window. Typical 40 to 100. Higher smooths, lower reacts faster
Micro Flow
• Micro TF. Lower timeframe used for micro flow, default 1 minute
• Micro span bars. Count of lower-TF bars. Typical 5 to 20
• Micro flow gate 0..1. Minimum absolute flow. Raising it demands stronger confirmation and reduces trade count
VWAP Bands
• VWAP stdev multiplier. Band width. Typical 0.8 to 1.6. Wider bands reduce breakout frequency and increase fade distance
• Expansion gate 0..3. Threshold to switch from fades to breakouts. Raising it favors fades, lowering it favors breakouts
Sessions
• Use session filter. Enable to trade only inside your window
• Trade window UTC. Default 07:00 to 17:00
Risk
• ATR length. Stop and target basis. Typical 10 to 21
• Stop ATR x. Initial stop distance in ATR multiples
• Target ATR x. Profit target distance in ATR multiples
• Cooldown bars after close. Wait bars before a new entry
• Side. Both, long only, or short only
View
• Show VWAP and bands
• Color bars by residual regime
Properties visible in this publication
• Initial capital 10000
• Base currency Default
• request.security uses lookahead off everywhere
• Strategy: Percent of equity with value 3. Pyramiding 0. Commission cash per order 0.0001 USD. Slippage 3 ticks. Process orders on close ON. Bar magnifier ON. Recalculate after order is filled OFF. Calc on every tick OFF. Using standard OHLC fills ON.
Realism and responsible publication
No performance claims. Past results never guarantee future outcomes. Fills and slippage vary by venue. Shapes can move while a bar forms and settle on close. Strategies must run on standard candles for signals and orders.
Honest limitations and failure modes
High impact news, session opens, and thin liquidity can invalidate assumptions. Very quiet days can reduce contrast between residuals and price volatility. Session windows use the chart exchange time. If both stop and target are touched within a single bar, PulseWire’s standard OHLC price-movement model decides the outcome.
Expect different behavior on illiquid pairs or during holidays. The model is sensitive to session definitions and feed time. Past results never guarantee future outcomes.
Legal
Education and research only. Not investment advice. You are responsible for your decisions. Test on historical data and in simulation before any live use. Use realistic costs.
Strategy

Smart MACD Volume Trader# Smart MACD Volume Trader
## Overview
Smart MACD Volume Trader is an enhanced momentum indicator that combines the classic MACD (Moving Average Convergence Divergence) oscillator with an intelligent high-volume filter. This combination significantly reduces false signals by ensuring that trading signals are only generated when price momentum is confirmed by substantial volume activity.
The indicator supports over 24 different instruments including major and exotic forex pairs, precious metals (gold and silver), energy commodities (crude oil, natural gas), and industrial metals (copper). For forex and commodity traders, the indicator automatically maps to CME and COMEX futures contracts to provide accurate institutional-grade volume data.
## Originality and Core Concept
Traditional MACD indicators generate signals based solely on price momentum, which can result in numerous false signals during low-activity periods or ranging markets. This indicator addresses this critical weakness by introducing a volume confirmation layer with automatic institutional volume integration.
**What makes this approach original:**
- Signals are triggered only when MACD crossovers coincide with elevated volume activity
- Implements a lookback mechanism to detect volume spikes within recent bars
- Automatically detects and maps 24+ forex pairs and commodities to their corresponding CME and COMEX futures contracts
- Provides real institutional volume data for forex pairs where spot volume is unreliable
- Combines two independent market dimensions (price momentum and volume) into a single, actionable signal
- Includes intelligent asset detection that works across multiple exchanges and ticker formats
**The underlying principle:** Volume validates price movement. When institutional money enters the market, it creates volume signatures. By requiring high volume confirmation and using actual institutional volume data from futures markets, this indicator filters out weak price movements and focuses on trades backed by genuine market participation. The automatic futures mapping ensures that forex and commodity traders always have access to the most accurate volume data available, without manual configuration.
## How It Works
### MACD Component
The indicator calculates MACD using standard methodology:
1. **Fast EMA (default: 12 periods)** - Tracks short-term price momentum
2. **Slow EMA (default: 26 periods)** - Tracks longer-term price momentum
3. **MACD Line** - Difference between Fast EMA and Slow EMA
4. **Signal Line (default: 9-period SMA)** - Smoothed average of MACD line
**Crossover signals:**
- **Bullish:** MACD line crosses above Signal line (momentum turning positive)
- **Bearish:** MACD line crosses below Signal line (momentum turning negative)
### Volume Filter Component
The volume filter adds an essential confirmation layer:
1. **Volume Moving Average** - Calculates exponential MA of volume (default: 20 periods)
2. **High Volume Threshold** - Multiplies MA by ratio (default: 2.0x or 200%)
3. **Volume Detection** - Identifies bars where current volume exceeds threshold
4. **Lookback Period** - Checks if high volume occurred in recent bars (default: 5 bars)
**Signal logic:**
- Buy/Sell signals only trigger when BOTH conditions are met:
- MACD crossover/crossunder occurs
- High volume detected within lookback period
### Automatic CME Futures Integration
For forex traders, spot FX volume data can be unreliable or non-existent. This indicator solves this problem by automatically detecting forex pairs and mapping them to corresponding CME futures contracts with real institutional volume data.
**Supported Major Forex Pairs (7):**
- EURUSD → CME:6E1! (Euro FX Futures)
- GBPUSD → CME:6B1! (British Pound Futures)
- AUDUSD → CME:6A1! (Australian Dollar Futures)
- USDJPY → CME:6J1! (Japanese Yen Futures)
- USDCAD → CME:6C1! (Canadian Dollar Futures)
- USDCHF → CME:6S1! (Swiss Franc Futures)
- NZDUSD → CME:6N1! (New Zealand Dollar Futures)
**Supported Exotic Forex Pairs (4):**
- USDMXN → CME:6M1! (Mexican Peso Futures)
- USDRUB → CME:6R1! (Russian Ruble Futures)
- USDBRL → CME:6L1! (Brazilian Real Futures)
- USDZAR → CME:6Z1! (South African Rand Futures)
**Supported Cross Pairs (6):**
- EURJPY → CME:6E1! (Uses Euro Futures)
- GBPJPY → CME:6B1! (Uses British Pound Futures)
- EURGBP → CME:6E1! (Uses Euro Futures)
- AUDJPY → CME:6A1! (Uses Australian Dollar Futures)
- EURAUD → CME:6E1! (Uses Euro Futures)
- GBPAUD → CME:6B1! (Uses British Pound Futures)
**Supported Precious Metals (2):**
- Gold (XAUUSD, GOLD) → COMEX:GC1! (Gold Futures)
- Silver (XAGUSD, SILVER) → COMEX:SI1! (Silver Futures)
**Supported Energy Commodities (3):**
- WTI Crude Oil (USOIL, WTIUSD) → NYMEX:CL1! (Crude Oil Futures)
- Brent Oil (UKOIL) → NYMEX:BZ1! (Brent Crude Futures)
- Natural Gas (NATGAS) → NYMEX:NG1! (Natural Gas Futures)
**Supported Industrial Metals (1):**
- Copper (COPPER) → COMEX:HG1! (Copper Futures)
**How the automatic detection works:**
The indicator intelligently identifies the asset type by analyzing:
1. Exchange name (FX, OANDA, TVC, COMEX, NYMEX, etc.)
2. Currency pair pattern (6-letter codes like EURUSD, GBPUSD)
3. Commodity identifiers (XAU for gold, XAG for silver, OIL for crude)
When a supported instrument is detected, the indicator automatically switches to the corresponding futures contract for volume analysis. For stocks, cryptocurrencies, and other assets, the indicator uses the native volume data from the current chart.
**Visual feedback:**
An information table appears in the top-right corner of the MACD pane showing:
- Current chart symbol
- Exchange name
- Currency pair or asset name
- Volume source being used (highlighted in orange for futures, yellow for native volume)
- Current high volume status
This provides complete transparency about which data source the indicator is using for its volume analysis.
## How to Use
### Basic Setup
1. Add the indicator to your chart
2. The indicator displays in a separate pane (MACD) and overlay (signals/volume bars)
3. Default settings work well for most assets, but can be customized
### Signal Interpretation
### Visual Signals
**Visual Signals:**
- **Green "BUY" label** - Bullish MACD crossover confirmed by high volume
- **Red "SELL" label** - Bearish MACD crossunder confirmed by high volume
- **Green/Red candles** - Highlight bars with volume exceeding the threshold
- **Light green/red background** - Emphasizes signal bars on the chart
**Information Table:**
A detailed information table appears in the top-right corner of the MACD pane, providing real-time transparency about the indicator's operation:
- **Chart:** Current symbol being analyzed
- **Exchange:** The exchange or data feed being used
- **Pair:** The currency pair or asset name extracted from the ticker
- **Volume From:** The actual symbol used for volume analysis
- Orange color indicates CME or COMEX futures are being used (automatic institutional volume)
- Yellow color indicates native volume from the chart symbol is being used
- Hover tooltip shows whether automatic futures mapping is active
- **High Volume:** Current status showing YES (green) when volume exceeds threshold, NO (gray) otherwise
This table ensures complete transparency and allows you to verify that the correct volume source is being used for your analysis.
**Volume Analysis:**
- Gray histogram bars = Normal volume
- Red histogram bars = High volume (exceeds threshold)
- Green line = Volume moving average baseline
**MACD Analysis:**
- Blue line = MACD line (momentum indicator)
- Orange line = Signal line (trend confirmation)
- Gray dotted line = Zero line (bullish above, bearish below)
### Parameter Customization
**MACD Parameters:**
- Adjust Fast/Slow EMA lengths for different sensitivities
- Shorter periods = More signals, faster response
- Longer periods = Fewer signals, less noise
**Volume Parameters:**
- **Volume MA Period:** Higher values smooth volume analysis
- **High Volume Ratio:** Lower values (1.5x) = More signals; Higher values (3.0x) = Fewer, stronger signals
- **Volume Lookback Bars:** Controls how recent the volume spike must be
**Direction Filters:**
- **Only Buy Signals:** Enables long-only strategy mode
- **Only Sell Signals:** Enables short-only strategy mode
### Alert Configuration
The indicator includes three alert types:
1. **Buy Signal Alert** - Triggers when bullish signal appears
2. **Sell Signal Alert** - Triggers when bearish signal appears
3. **High Volume Alert** - Triggers when volume exceeds threshold
To set up alerts:
1. Click the indicator name → "Add alert on Smart MACD Volume Trader"
2. Select desired alert condition
3. Configure notification method (popup, email, webhook, etc.)
## Trading Strategy Guidelines
### Best Practices
**Recommended markets:**
- Liquid stocks (large-cap, high daily volume)
- Major forex pairs (EURUSD, GBPUSD, USDJPY, AUDUSD, USDCAD, USDCHF, NZDUSD)
- Exotic forex pairs (USDMXN, USDRUB, USDBRL, USDZAR)
- Cross pairs (EURJPY, GBPJPY, EURGBP, AUDJPY, EURAUD, GBPAUD)
- Precious metals (Gold, Silver with automatic COMEX futures mapping)
- Energy commodities (Crude Oil, Natural Gas with automatic NYMEX futures mapping)
- Industrial metals (Copper with automatic COMEX futures mapping)
- Major cryptocurrency pairs
- Index futures and ETFs
**Timeframe recommendations:**
- **Day trading:** 5-minute to 15-minute charts
- **Swing trading:** 1-hour to 4-hour charts
- **Position trading:** Daily charts
**Risk management:**
- Use signals as entry confirmation, not standalone strategy
- Combine with support/resistance levels
- Consider overall market trend direction
- Always use stop-loss orders
### Strategy Examples
**Trend Following Strategy:**
1. Identify overall trend using higher timeframe (e.g., daily chart)
2. Trade only in trend direction
3. Use "Only Buy" filter in uptrends, "Only Sell" in downtrends
4. Enter on signal, exit on opposite signal or at resistance/support
**Volume Breakout Strategy:**
1. Wait for consolidation period (low volume, tight MACD range)
2. Enter when signal appears with high volume (confirms breakout)
3. Target previous swing highs/lows
4. Stop loss below/above recent consolidation
**Forex Scalping Strategy (with automatic CME futures):**
1. The indicator automatically detects forex pairs and uses CME futures volume
2. Trade during active sessions only (use session filter)
3. Focus on quick profits (10-20 pips)
4. Exit at opposite signal or profit target
**Commodities Trading Strategy (Gold, Silver, Oil):**
1. The indicator automatically maps to COMEX and NYMEX futures contracts
2. Trade during high-liquidity sessions (overlap of major markets)
3. Use the high volume confirmation to identify institutional entry points
4. Combine with key support and resistance levels for entries
5. Monitor the information table to confirm futures volume is being used (orange color)
6. Exit on opposite MACD signal or at predefined profit targets
## Why This Combination Works
### The Volume Advantage
Studies consistently show that price movements accompanied by high volume are more likely to continue, while low-volume movements often reverse. This indicator leverages this principle by requiring volume confirmation.
**Key benefits:**
1. **Reduced False Signals:** Eliminates MACD whipsaws during low-volume consolidation
2. **Confirmation Bias:** Two independent indicators (price momentum + volume) agreeing
3. **Institutional Alignment:** High volume often indicates institutional participation
4. **Trend Validation:** Volume confirms that price momentum has "conviction"
### Statistical Edge
By combining two uncorrelated signals (MACD crossovers and volume spikes), the indicator creates a higher-probability setup than either signal alone. The lookback mechanism ensures signals aren't missed if volume spike slightly precedes the MACD cross.
## Supported Exchanges and Automatic Detection
The indicator includes intelligent asset detection that works across multiple exchanges and ticker formats:
**Forex Exchanges (Automatic CME Mapping):**
- FX (PulseWire forex feed)
- OANDA
- FXCM
- SAXO
- FOREXCOM
- PEPPERSTONE
- EASYMARKETS
- FX_IDC
**Commodity Exchanges (Automatic COMEX/NYMEX Mapping):**
- TVC (PulseWire commodity feed)
- COMEX (directly)
- NYMEX (directly)
- ICEUS
**Other Asset Classes (Native Volume):**
- Stock exchanges (NASDAQ, NYSE, AMEX, etc.)
- Cryptocurrency exchanges (BINANCE, COINBASE, KRAKEN, etc.)
- Index providers (SP, DJ, etc.)
The detection algorithm analyzes three factors:
1. Exchange prefix in the ticker symbol
2. Pattern matching for currency pairs (6-letter codes)
3. Commodity identifiers in the symbol name
This ensures accurate automatic detection regardless of which data feed or exchange you use for charting. The information table in the top-right corner always displays which volume source is being used, providing complete transparency.
## Technical Details
**Calculations:**
- MACD Fast MA: EMA(close, fastLength)
- MACD Slow MA: EMA(close, slowLength)
- MACD Line: Fast MA - Slow MA
- Signal Line: SMA(MACD Line, signalLength)
- Volume MA: Exponential MA of volume
- High Volume: Current volume >= Volume MA × Ratio
**Signal logic:**
```
Buy Signal = (MACD crosses above Signal) AND (High volume in last N bars)
Sell Signal = (MACD crosses below Signal) AND (High volume in last N bars)
```
## Parameters Reference
| Parameter | Default | Description |
|-----------|---------|-------------|
| Volume Symbol | Blank | Manual override for volume source (leave blank for automatic detection) |
| Use CME Futures | False | Legacy option (automatic detection is now built-in) |
| Alert Session | 1530-2200 | Active session time range for alerts |
| Timezone | UTC+1 | Timezone for alert sessions |
| Volume MA Period | 20 | Number of periods for volume moving average |
| High Volume Ratio | 2.0 | Volume threshold multiplier (2.0 = 200% of average) |
| Volume Lookback | 5 | Number of bars to check for high volume confirmation |
| MACD Fast Length | 12 | Fast EMA period for MACD calculation |
| MACD Slow Length | 26 | Slow EMA period for MACD calculation |
| MACD Signal Length | 9 | Signal line SMA period |
| Only Buy | False | Filter to show only bullish signals |
| Only Sell | False | Filter to show only bearish signals |
| Show Signals | True | Display buy and sell labels on chart |
## Optimization Tips
**For volatile markets (crypto, small caps):**
- Increase High Volume Ratio to 2.5-3.0
- Reduce Volume Lookback to 3-4 bars
- Consider faster MACD settings (8, 17, 9)
**For stable markets (large-cap stocks, bonds):**
- Decrease High Volume Ratio to 1.5-1.8
- Increase Volume MA Period to 30-50
- Use standard MACD settings
**For forex (with automatic CME futures):**
- The indicator automatically uses CME futures when forex pairs are detected
- Set appropriate trading session based on your timezone
- Use Volume Lookback of 5-7 bars
- Consider session-based alerts only
- Monitor the information table to verify correct futures mapping
**For commodities (Gold, Silver, Oil, Copper):**
- The indicator automatically maps to COMEX and NYMEX futures
- Increase High Volume Ratio to 2.0-2.5 for metals
- Use slightly higher Volume MA Period (25-30) for smoother analysis
- Trade during active market hours for best volume data
- The information table will show the futures contract being used (orange highlight)
## Limitations and Considerations
**What this indicator does NOT do:**
- Does not predict future price direction
- Does not guarantee profitable trades
- Does not replace proper risk management
- Does not work well in extremely low-volume conditions
**Market conditions to avoid:**
- Pre-market and after-hours sessions (low volume)
- Major news events (volatile, unpredictable volume)
- Holidays and low-liquidity periods
- Extremely low float stocks
## Conclusion
Smart MACD Volume Trader represents a significant evolution of the traditional MACD indicator by combining volume confirmation with automatic institutional volume integration. This dual-confirmation approach significantly improves signal quality by filtering out low-conviction price movements and ensuring traders work with accurate volume data.
The indicator's automatic detection and mapping system supports over 24 instruments across forex, commodities, and metals markets. By intelligently switching to CME and COMEX futures contracts when appropriate, the indicator provides forex and commodity traders with the same quality of volume data that stock traders naturally have access to.
This indicator is particularly valuable for traders who want to:
- Align their entries with institutional money flow
- Avoid getting trapped in false breakouts
- Trade forex pairs with reliable volume data
- Access accurate volume information for gold, silver, and energy commodities
- Combine momentum and volume analysis in a single, streamlined tool
Whether you are day trading stocks, swing trading forex pairs, or positioning in commodities markets, this indicator provides a robust framework for identifying high-probability momentum trades backed by genuine institutional participation. The automatic futures mapping works seamlessly across all supported instruments, requiring no manual configuration or expertise in futures markets.
---
## Support and Updates
This indicator is actively maintained and updated based on user feedback and market conditions. For questions about implementation or custom modifications, please use the comments section below.
**Disclaimer:** This indicator is for educational and informational purposes only. Past performance does not guarantee future results. Always conduct your own analysis and risk management before trading. Indicator

LEGEND IsoPulse Fusion Universal Volume Trend Buy Sell RadarLEGEND IsoPulse Fusion • Universal Volume Trend Buy Sell Radar
One line summary
LEGEND IsoPulse Fusion reads intent from price and volume together, learns which features matter most on your symbol, blends them into a single signed Fusion line in a stable unit range, and emits clear Buy Sell Close events with a structure gate and a liquidity safety gate so you act only when the tape is favorable.
What this script is and why it exists
Many traders keep separate windows for trend, volume, volatility, and regime filters. The result can feel fragmented. This script merges two complementary engines into one consistent view that is easy to read and simple to act on.
LEGEND Tensor estimates directional quality from five causally computed features that are normalized for stationarity. The features are Flow, Tail Pressure with Volume Mix, Path Curvature, Streak Persistence, and Entropy Order.
IsoPulse transforms raw volume into two decaying reservoirs for buy effort and sell effort using body location and wick geometry, then measures price travel per unit volume for efficiency, and detects volume bursts with a recency memory.
Both engines are mapped into the same unit range and fused by a regime aware mixer. When the tape is orderly the mixer leans toward trend features. When the tape is messy but a true push appears in volume efficiency with bursts the mixer allows IsoPulse to speak louder. The outcome is a single Fusion line that lives in a familiar range with calm behavior in quiet periods and expressive pushes when energy concentrates.
What makes it original and useful
Two reservoir volume split . The script assigns a portion of the bar volume to up effort and down effort using body location and wick geometry together. Effort decays through time using a forgetting factor so memory is present without becoming sticky.
Efficiency of move . Price travel per unit volume is often more informative than raw volume or raw range. The script normalizes both sides and centers the efficiency so it becomes signed fuel when multiplied by flow skew.
Burst detection with recency memory . Percent rank of volume highlights bursts. An exponential memory of how recently bursts clustered converts isolated blips into useful context.
Causal adaptive weighting . The LEGEND features do not receive static weights. The script learns, causally, which features have correlated with future returns on your symbol over a rolling window. Only positive contributions are allowed and weights are normalized for interpretability.
Regime aware fusion . Entropy based order and persistence create a mixer that blends IsoPulse with LEGEND. You see a single line rather than two competing panels, which reduces decision conflict.
How to read the screen in seconds
Fusion area . The pane fills above and below zero with a soft gradient. Deeper fill means stronger conviction. The white Fusion line sits on top for precise crossings.
Entry guides and exit guides . Two entry guides draw symmetrically at the active fused entry level. Two exit guides sit inside at a fraction of the entry. Think of them as an adaptive envelope.
Letters . B prints once when the script flips from flat to long. S prints once when the script flips from flat to short. C prints when a held position ends on the appropriate side. T prints when the structure gate first opens. A prints when the liquidity safety flag first appears.
Price bar paint . Bars tint green while long and red while short on the chart to mirror your virtual position.
HUD . A compact dashboard in the corner shows Fusion, IsoPulse, LEGEND, active entry and exit levels, regime status, current virtual position, and the vacuum z value with its avoid threshold.
What signals actually mean
Buy . A Buy prints when the Fusion line crosses above the active entry level while gates are open and the previous state was flat.
Sell . A Sell prints when the Fusion line crosses below the negative entry level while gates are open and the previous state was flat.
Close . A Close prints when Fusion cools back inside the exit envelope or when an opposite cross would occur or when a gate forces a stop, and the previous state was a hold.
Gates . The Trend gate requires sufficient entropy order or significant persistence. The Avoid gate uses a liquidity vacuum z score. Gates exist to protect you from weak tape and poor liquidity.
Inputs and practical tuning
Every input has a tooltip in the script. This section provides a concise reference that you can keep in mind while you work.
Setup
Core window . Controls statistics across features. Scalping often prefers the thirties or low fifties. Intraday often prefers the fifties to eighties. Swing often prefers the eighties to low hundreds. Smaller responds faster with more noise. Larger is calmer.
Smoothing . Short EMA on noisy features. A small value catches micro shifts. A larger value reduces whipsaw.
Fusion and thresholds
Weight lookback . Sample size for weight learning. Use at least five times the horizon. Larger is slower and more confident. Smaller is nimble and more reactive.
Weight horizon . How far ahead return is measured to assess feature value. Smaller favors quick reversion impulses. Larger favors continuation.
Adaptive thresholds . Entry and exit levels from rolling percentiles of the absolute LEGEND score. This self scales across assets and timeframes.
Entry percentile . Eighty selects the top quintile of pushes. Lower to seventy five for more signals. Raise for cleanliness.
Exit percentile . Mid fifties keeps trades honest without overstaying. Sixty holds longer with wider give back.
Order threshold . Minimum structure to trade. Zero point fifteen is a reasonable start. Lower to trade more. Raise to filter chop.
Avoid if Vac z . Liquidity safety level. One point two five is a good default on liquid markets. Thin markets may prefer a slightly higher setting to avoid permanent avoid mode.
IsoPulse
Iso forgetting per bar . Memory for the two reservoirs. Values near zero point nine eight to zero point nine nine five work across many symbols.
Wick weight in effort split . Balance between body location and wick geometry. Values near zero point three to zero point six capture useful behavior.
Efficiency window . Travel per volume window. Lower for snappy symbols. Higher for stability.
Burst percent rank window . Window for percent rank of volume. Around one hundred to three hundred covers most use cases.
Burst recency half life . How long burst clusters matter. Lower for quick fades. Higher for cluster memory.
IsoPulse gain . Pre compression gain before the atan mapping. Tune until the Fusion line lives inside a calm band most of the time with expressive spikes on true pushes.
Continuation and Reversal guides . Visual rails for IsoPulse that help you sense continuation or exhaustion zones. They do not force events.
Entry sensitivity and exit fraction
Entry sensitivity . Loose multiplies the fused entry level by a smaller factor which prints more trades. Strict multiplies by a larger factor which selects fewer and cleaner trades. Balanced is neutral.
Exit fraction . Exit level relative to the entry level in fused unit space. Values around one half to two thirds fit most symbols.
Visuals and UX
Columns and line . Use both to see context and precise crossings. If you present a very clean chart you can turn columns off and keep the line.
HUD . Keep it on while you learn the script. It teaches you how the gates and thresholds respond to your market.
Letters . B S C T A are informative and compact. For screenshots you can toggle them off.
Debug triggers . Show raw crosses even when gates block entries. This is useful when you tune the gates. Turn them off for normal use.
Quick start recipes
Scalping one to five minutes
Core window in the thirties to low fifties.
Horizon around five to eight.
Entry percentile around seventy five.
Exit fraction around zero point five five.
Order threshold around zero point one zero.
Avoid level around one point three zero.
Tune IsoPulse gain until normal Fusion sits inside a calm band and true squeezes push outside.
Intraday five to thirty minutes
Core window around fifty to eighty.
Horizon around ten to twelve.
Entry percentile around eighty.
Exit fraction around zero point five five to zero point six zero.
Order threshold around zero point one five.
Avoid level around one point two five.
Swing one hour to daily
Core window around eighty to one hundred twenty.
Horizon around twelve to twenty.
Entry percentile around eighty to eighty five.
Exit fraction around zero point six zero to zero point seven zero.
Order threshold around zero point two zero.
Avoid level around one point two zero.
How to connect signals to your risk plan
This is an indicator. You remain in control of orders and risk.
Stops . A simple choice is an ATR multiple measured on your chart timeframe. Intraday often prefers one point two five to one point five ATR. Swing often prefers one point five to two ATR. Adjust to symbol behavior and personal risk tolerance.
Exits . The script already prints a Close when Fusion cools inside the exit envelope. If you prefer targets you can mirror the entry envelope distance and convert that to points or percent in your own plan.
Position size . Fixed fractional or fixed risk per trade remains a sound baseline. One percent or less per trade is a common starting point for testing.
Sessions and news . Even with self scaling, some traders prefer to skip the first minutes after an open or scheduled news. Gate with your own session logic if needed.
Limitations and honest notes
No look ahead . The script is causal. The adaptive learner uses a shifted correlation, crosses are evaluated without peeking into the future, and no lookahead security calls are used. If you enable intrabar calculations a letter may appear then disappear before the close if the condition fails. This is normal for any cross based logic in real time.
No performance promises . Markets change. This is a decision aid, not a prediction machine. It will not win every sequence and it cannot guarantee statistical outcomes.
No dependence on other indicators . The chart should remain clean. You can add personal tools in private use but publications should keep the example chart readable.
Standard candles only for public signals . Non standard chart types can change event timing and produce unrealistic sequences. Use regular candles for demonstrations and publications.
Internal logic walkthrough
LEGEND feature block
Flow . Current return normalized by ATR then smoothed by a short EMA. This gives directional intent scaled to recent volatility.
Tail pressure with volume mix . The relative sizes of upper and lower wicks inside the high to low range produce a tail asymmetry. A volume based mix can emphasize wick information when volume is meaningful.
Path curvature . Second difference of close normalized by ATR and smoothed. This captures changes in impulse shape that can precede pushes or fades.
Streak persistence . Up and down close streaks are counted and netted. The result is normalized for the window length to keep behavior stable across symbols.
Entropy order . Shannon entropy of the probability of an up close. Lower entropy means more order. The value is oriented by Flow to preserve sign.
Causal weights . Each feature becomes a z score. A shifted correlation against future returns over the horizon produces a positive weight per feature. Weights are normalized so they sum to one for clarity. The result is angle mapped into a compact unit.
IsoPulse block
Effort split . The script estimates up effort and down effort per bar using both body location and wick geometry. Effort is integrated through time into two reservoirs using a forgetting factor.
Skew . The reservoir difference over the sum yields a stable skew in a known range. A short EMA smooths it.
Efficiency . Move size divided by average volume produces travel per unit volume. Normalization and centering around zero produce a symmetric measure.
Bursts and recency . Percent rank of volume highlights bursts. An exponential function of bars since last burst adds the notion of cluster memory.
IsoPulse unit . Skew multiplied by centered efficiency then scaled by the burst factor produces the raw IsoPulse that is angle mapped into the unit range.
Fusion and events
Regime factor . Entropy order and streak persistence form a mixer. Low structure favors IsoPulse. Higher structure favors LEGEND. The blend is convex so it remains interpretable.
Blended guides . Entry and exit guides are blended in the same way as the line so they stay consistent when regimes change. The envelope does not jump unexpectedly.
Virtual position . The script maintains state. Buy and Sell require a cross while flat and gates open. Close requires an exit or force condition while holding. Letters print once at the state change.
Disclosures
This script and description are educational. They do not constitute investment advice. Markets involve risk. You are responsible for your own decisions and for compliance with local rules. The logic is causal and does not look ahead. Signals on non standard chart types can be misleading and are not recommended for publication. When you test a strategy wrapper, use realistic commission and slippage, moderate risk per trade, and enough trades to form a meaningful sample, then document those assumptions if you share results.
Closing thoughts
Clarity builds confidence. The Fusion line gives a single view of intent. The letters communicate action without clutter. The HUD confirms context at a glance. The gates protect you from weak tape and poor liquidity. Tune it to your instrument, observe it across regimes, and use it as a consistent lens rather than a prediction oracle. The goal is not to trade every wiggle. The goal is to pick your spots with a calm process and to stand aside when the tape is not inviting. Indicator

Indicator

Indicator

Indicator

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 PulseWire 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 PulseWire 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 PulseWire'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, PulseWire 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 PulseWire 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 PulseWire 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 PulseWire 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 PulseWire 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. Indicator

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 PulseWire 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 PulseWire 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 PulseWire 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. Indicator
