Cari skrip untuk "ATR"
ATR Stretched Market [zauoyds]This indicator verify the close in comparison with EMA21. If the number is higher than 2ATR, the X is ploted above the candle.
Avoid positions when the candle is marked.
The best entries always will be close to the averages.
You can change the values through the inputs, according with your trade system.
ATR Stop LossAdds an indicator that can be used to set stop losses.
This is the close price minus the ATR + 10%.
The 10% is there to let the market perform and avoid whipsaws.
ATR on ChartPlots the ATR on the chart for easy visualization, default TF is the Daily but you can alter it.
Franklin ATR Bar highlight by els (robotfarm.ru)Script highlights signal bars for tfc3.ru school trading strategy. Working timeframe D.
ATR Pips [LazyBear] [Elixium Mod: FEAR GAUGE]Modified version of ATR Pips
The indicator's value is a third of the daily range which is good to use as a stop loss value for intra day scalping on markets such as index futures and forex.
It's good for detecting and confirming inflection points in the market.
Average True Range Trailing Mean [Alifer]Upgrade of the Average True Range default indicator by TradingView. It adds and plots a trailing mean to show periods of increased volatility more clearly.
ATR TRAILING MEAN
A trailing mean, also known as a moving average, is a statistical calculation used to smooth out data over time and identify trends or patterns in a time series.
In our indicator, it clearly shows when the ATR value spikes outside of it's average range, making it easier to identify periods of increased volatility.
Here's how the ATR Trailing Mean (atr_mean) is calculated:
atr_mean = ta.cum(atr) / (bar_index + 1) * atr_mult
The ta.cum() function calculates the cumulative sum of the ATR over all bars up to the current bar.
(bar_index + 1) represents the number of bars processed up to the current bar, including the current one.
By dividing the cumulative ATR ta.cum(atr) by (bar_index + 1) and then multiplying it by atr_mult (Multiplier), we obtain the ATR Trailing Mean value.
If atr_mult is set to 1.0, the ATR Trailing Mean will be equal to the simple average of the ATR values, and it will follow the ATR's general trend.
However, if atr_mult is increased, the ATR Trailing Mean will react more strongly to the ATR's recent changes, making it more sensitive to short-term fluctuations.
On the other hand, reducing atr_mult will make the ATR Trailing Mean less responsive to recent changes in ATR, making it smoother and less prone to reacting to short-term volatility.
In summary, adjusting the atr_mult input allows traders to fine-tune the ATR Trailing Mean's responsiveness based on their preferred level of sensitivity to recent changes in market volatility.
IMPLEMENTATION IN A STRATEGY
You can easily implement this indicator in an existing strategy, to only enter positions when the ATR is above the ATR Trailing Mean (with Multiplier-adjusted sensitivity). To do so, add the following lines of codes.
Under Inputs:
length = input.int(title="Length", defval=20, minval=1)
atr_mult = input.float(defval=1.0, step = 0.1, title = "Multiplier", tooltip = "Adjust the sensitivity of the ATR Trailing Mean line.")
smoothing = input.string(title="Smoothing", defval="RMA", options= )
ma_function(source, length) =>
switch smoothing
"RMA" => ta.rma(source, length)
"SMA" => ta.sma(source, length)
"EMA" => ta.ema(source, length)
=> ta.wma(source, length)
This will allow you to define the Length of the ATR (lookback length over which the ATR is calculated), the Multiplier to adjust the Trailing Mean's sensitivity and the type of Smoothing to be used for the ATR.
Under Calculations:
atr= ma_function(ta.tr(true), length)
atr_mean = ta.cum(atr) / (bar_index+1) * atr_mult
This will calculate the ATR based on Length and Smoothing, and the resulting ATR Trailing Mean.
Under Entry Conditions, add the following to your existing conditions:
and atr > atr_mean
This will make it so that entries are only triggered when the ATR is above the ATR Trailing Mean (adjusted by the Multiplier value you defined earlier).
ATR - DEFINITION AND HISTORY
The Average True Range (ATR) is a technical indicator used to measure market volatility, regardless of the direction of the price. It was developed by J. Welles Wilder and introduced in his book "New Concepts in Technical Trading Systems" in 1978. ATR provides valuable insights into the degree of price movement or volatility experienced by a financial asset, such as a stock, currency pair, commodity, or cryptocurrency, over a specific period.
ATR - CALCULATION AND USAGE
The ATR calculation involves three components:
1 — True Range (TR): The True Range is a measure of the asset's price movement for a given period. It takes into account the following factors:
The difference between the high and low prices of the current period.
The absolute value of the difference between the high price of the current period and the closing price of the previous period.
The absolute value of the difference between the low price of the current period and the closing price of the previous period.
Mathematically, the True Range (TR) for the current period is calculated as follows:
TR = max(high - low, abs(high - previous_close), abs(low - previous_close))
2 — ATR Calculation: The ATR is calculated as a Moving Average (MA) of the True Range over a specified period.
The ATR is calculated as follows:
ATR = MA(TR, length)
3 — ATR Interpretation: The ATR value represents the average volatility of the asset over the chosen period. Higher ATR values indicate higher volatility, while lower ATR values suggest lower volatility.
Traders and investors can use ATR in various ways:
Setting Stop Loss and Take Profit Levels: ATR can help determine appropriate stop-loss and take-profit levels in trading strategies. A larger ATR value might require wider stop-loss levels to allow for the asset's natural price fluctuations, while a smaller ATR value might allow for tighter stop-loss levels.
Identifying Market Volatility: A sharp increase in ATR might indicate heightened market uncertainty or the potential for significant price movements. Conversely, a decreasing ATR might suggest a period of low volatility and possible consolidation.
Comparing Volatility Between Assets: Since ATR uses absolute values, it shouldn't be used to compare volatility between different assets, as assets with higher prices will consistently have higher ATR values, while assets with lower prices will consistently have lower ATR values. However, the addition of a trailing mean makes such a comparison possible. An asset whose ATR is consistently close to its ATR Trailing Mean will have a lower volatility than an asset whose ATR continuously moves far above and below its ATR Trailing Mean. This can help traders and investors decide which markets to trade based on their risk tolerance and trading strategies.
Determining Position Size: ATR can be used to adjust position sizes, taking into account the asset's volatility. Smaller position sizes might be appropriate for more volatile assets to manage risk effectively.
Volatility Regimes | GainzAlgo📊 OVERVIEW:
=========
This is a comprehensive ATR-based trading system designed for professional
traders who need advanced volatility analysis, precise trade management, and
intelligent market regime detection. The indicator combines multiple proven
volatility concepts into one powerful, customizable tool.
⭐ WHY THIS SYSTEM IS UNIQUE AND WORTHY OF PUBLICATION:
====================================================
This is not simply a collection of ATR-based indicators placed together.
It represents a unified volatility analysis framework where each component
is specifically designed to work in concert with the others, creating a
complete trading workflow that cannot be replicated by using multiple
separate indicators.
🔗 SYNERGISTIC INTEGRATION - How Components Work Together:
🧠 1. CONTEXT-AWARE ANALYSIS
The Volatility Regime Detection acts as the "brain" of the system,
classifying market conditions into 4 distinct phases. Every other
component then adapts its behavior based on this regime classification:
- ATR Bands expand/contract with regime changes
- Stop Loss distances automatically adjust (tighter in compression,
wider in high volatility)
- Take Profit targets scale proportionally to current regime
- Signal sensitivity filters itself based on market phase
📐 2. UNIFIED VOLATILITY FOUNDATION
All calculations share a single ATR baseline calculation, ensuring
internal consistency across the entire system. When ATR changes, every
element updates in perfect synchronization:
- Bands recalculate from the same ATR value
- Risk management levels use the same volatility measurement
- Regime classification and signals reference identical data
🛡️ 3. INTEGRATED RISK MANAGEMENT
The system doesn't just show WHERE to enter - it calculates HOW MUCH
to risk:
- Dynamic Stop Loss adapts to current ATR automatically
- Position Size Calculator uses the dynamic stop to compute exact quantities
- Take Profit levels scale proportionally, maintaining optimal risk:reward
✅ 4. TWO-STAGE SIGNAL CONFIRMATION
The alert system creates a logical progression:
Step 1: Volatility Breakout → Market energy is building
Step 2: Trend Confirmation → Direction confirmed with volatility support
This prevents false breakouts by requiring both volatility AND direction.
🏦 5. PROFESSIONAL WORKFLOW INTEGRATION
The system mirrors how institutional traders analyze markets:
Phase 1: Assess regime → What's the market doing?
Phase 2: Identify setup → Where's the opportunity?
Phase 3: Calculate risk → What's my exposure?
Phase 4: Set targets → Where do I take profit?
Phase 5: Monitor regime → When do conditions change?
❌ WHY NOT USE SEPARATE INDICATORS?
- Separate ATR Bands: Don't know about regime changes, remain static
- Separate Regime Indicator: Doesn't automatically adjust stop/targets
- Separate Position Calculator: Doesn't know your actual ATR-based stop
- Manual Integration: Requires constant mental calculation and cross-referencing
🧮 DETAILED CALCULATION METHODOLOGY:
=================================
📏 ATR (AVERAGE TRUE RANGE) CALCULATION:
- True Range = Maximum of:
1. Current High - Current Low
2. Absolute value of (Current High - Previous Close)
3. Absolute value of (Current Low - Previous Close)
- ATR = Simple Moving Average of True Range over specified period (default: 14)
📊 DYNAMIC ATR BANDS:
- Upper Band = Current Close + (ATR × Band Multiplier)
- Lower Band = Current Close - (ATR × Band Multiplier)
- Band 1: 1.0× ATR (closest support/resistance)
- Band 2: 2.0× ATR (intermediate zone)
- Band 3: 3.0× ATR (extended zone)
🌡️ VOLATILITY REGIME CLASSIFICATION:
Step 1: Calculate ATR Baseline
- Baseline ATR = SMA or EMA of ATR over long period (default: 50 bars)
- This represents "normal" volatility for the instrument
Step 2: Calculate ATR Ratio
- ATR Ratio = Current ATR ÷ Baseline ATR
- Example: If current ATR = 70 and baseline = 50, ratio = 1.40
Step 3: Classify Regime Based on Ratio
- COMPRESSION: Ratio < 0.70 (ATR is 30% below normal)
Market consolidating, volatility contracting, energy building
- EXPANSION: Ratio between 1.15 and 1.40 (ATR is 15-40% above normal)
Volatility breaking out, early phase of directional movement
- HIGH VOLATILITY: Ratio > 1.40 (ATR is 40%+ above normal)
Strong sustained trend with high participation
- EXHAUSTION: ATR declining after high volatility period
Requires: Previous high ratio + declining ATR over X bars (default: 5)
Trend maturity, potential reversal or consolidation approaching
🛑 DYNAMIC STOP LOSS CALCULATION:
- For Long Positions: Stop Loss = Entry Price - (ATR × SL Multiplier)
- For Short Positions: Stop Loss = Entry Price + (ATR × SL Multiplier)
- Default Multiplier: 2.0× ATR
- Adjusts automatically: Wider in high volatility, tighter in compression
🎯 TAKE PROFIT LEVELS:
- TP1 = Entry Price ± (ATR × TP1 Multiplier)
- TP2 = Entry Price ± (ATR × TP2 Multiplier)
- TP3 = Entry Price ± (ATR × TP3 Multiplier)
- Direction (+ or -) depends on trade direction
📦 POSITION SIZE CALCULATION:
Formula: Position Size = Account Risk Amount ÷ Stop Loss Distance
Step-by-step:
1. Risk Amount = Account Size × (Risk Percentage ÷ 100)
2. Stop Distance = |Entry Price - Stop Loss Price|
3. Position Size = Risk Amount ÷ Stop Distance
📈 ATR PERCENTILE RANKING:
- >80% = Extremely high volatility
- 20-80% = Normal volatility range
- <20% = Extremely low volatility
🌀 VOLATILITY CONTRACTION PATTERN:
Detects extended low-volatility periods indicating imminent breakout.
🧭 TREND DETECTION SIGNALS:
Bullish: Price > MA AND Current ATR > ATR MA
Bearish: Price < MA AND Current ATR > ATR MA
⚡ VOLATILITY BREAKOUT SIGNALS:
Triggered when ATR exceeds its moving average by a defined threshold.
🧩 CORE FEATURES:
==============
1. ATR BANDS (Dynamic Support/Resistance)
2. VOLATILITY REGIME DETECTION
3. DYNAMIC STOP LOSS SYSTEM
4. MULTIPLE TAKE PROFIT LEVELS
5. SUPPORT & RESISTANCE LEVELS
6. RISK MANAGEMENT CALCULATOR
7. ATR PERCENTILE RANKING
8. VOLATILITY CONTRACTION PATTERN
9. TREND DETECTION SIGNALS
10. VOLATILITY BREAKOUT SIGNALS
⚙️ RECOMMENDED SETTINGS BY TRADING STYLE:
======================================
DAY TRADING • SWING TRADING • POSITION TRADING • SCALPING
📘 HOW TO USE THIS INDICATOR:
==========================
STEP 1: Identify Market Regime
STEP 2: Wait for Entry Signal
STEP 3: Set Stop Loss
STEP 4: Set Take Profits
STEP 5: Position Sizing
STEP 6: Monitor & Manage
🔔 ALERT SYSTEM:
=============
Alerts for volatility breakouts, trend changes, regime transitions,
ATR band crossings, contraction completion, and percentile extremes.
🎨 CUSTOMIZATION:
==============
All visuals, thresholds, multipliers, colors, alerts, and risk parameters
can be fully customized.
⚠️ IMPORTANT DISCLAIMER:
=====================
This indicator is a volatility analysis tool and does NOT provide financial advice.
Past performance does not guarantee future results.
All trading involves substantial risk.
All trading decisions are the sole responsibility of the user.
Adaptive ATR Limits█ OVERVIEW
This indicator plots adaptive ATR limits for intraday trading. A key feature of this indicator, which makes it different from other ATR limit indicators, is that the top and bottom ATR limit lines are always exactly one ATR apart from each other (in "auto" mode; there is also a "basic" mode, which plots the limits in the more traditional way—i.e., one ATR above the low and one ATR below the high at all times—and this can be used for comparison).
█ FEATURES
Provides an algorithm to plot the most reasonable intraday ATR top/bottom limits based on currently available information
Dynamically adapts limits as the price evolves during the day
Works correctly and consistently on both RTH and ETH charts
Has a user-selected ADR mode to base the limits on ADR instead of ATR
Option to include the current pre-market and previous day's post-market range in the calculation
Configurable ATR/ADR averaging length
Provides a visual smoothing option
Provides an information box showing the current numerical ATR/ADR values
Reasonable defaults that work well if the user changes nothing
Well-documented, high-quality, open-source code for those interested
█ HOW TO USE
At a minimum, there is nothing that needs to be set. The defaults work well. The ATR top line (red, configurable) gives you the most reasonable move given the currently available information. The line will move away from the price as the price approaches it; that is normal—it is reacting to new information. This happens until the ATR bottom limit hits the lower of the daily low and the previous day's close (in ATR mode). The ATR bottom line (green, configurable) works the same way, with reversed logic.
There is an option to use ADR instead of ATR. The ATR includes the previous day's RTH close in the range, whereas ADR does not. Another option allows the user to add the current day's pre-market range or the previous day's post-market into the current day's range, which has an effect if either of those went outside of today's RTH range, plus yesterday's RTH close (in the default ATR mode). Pre-market and post-market range is not typically included in the daily true range, so only change it if you really know you want it.
█ CONCEPTS
Most traditional ATR limit indicators plot the top ATR limit one ATR above the current daily low, and the bottom ATR limit one ATR below the current daily high. This indicator can also do that (in "basic" mode), but its value lies in its default "auto" mode, which uses an algorithm to dynamically adapt the ATR limits throughout the day, keeping them one ATR apart at all times. It tries to plot the most sensible ATR limits based on the current daily ATR, in order to provide a reasonable visual intraday target, given the available information at that point in time.
"Auto" mode is actually a weighted average of two methods: midpoint and relative (both of which can also be explicitly selected). The midpoint method places the midpoint of the ATR limit equal to the midpoint of the currently established daily range. The relative method measures the currently established daily range and calculates the position of the current price within it (as a ratio between 0 and 1). It then uses that value as a weight in a weighted average of extreme locations for the ATR limits, which are: the ATR top anchored to one ATR above the daily low, and the ATR bottom anchored to one ATR below the daily high.
The relative method is more advanced and better for most of the day; however, it can cause wild swings in the early market or pre-market before a reasonable range (as a percentage of ATR) has been established. "Auto" mode therefore takes another weighted average between the two methods, with the weight determined by the percentage of the ATR currently established within the day, more strongly weighting the calmer midpoint method before a good range is established. Once the full ATR has been achieved, the algorithm in "auto" mode will have fully switched to the relative method and will remain with that method for the rest of the day.
To explain the effect further, as an example, imagine that the price is approaching the full ATR range on the high side. At this point, the indicator will have almost fully transitioned to the second (relative) method. The lower ATR limit will now be anchored to the daily low as the price hits the upper ATR limit. If the price goes beyond the upper ATR, the lower ATR limit will stay anchored to the daily low, and the upper limit will stay anchored to one ATR above the lower limit. This allows you to see how far the price is going beyond the upper ATR limit. If the price then returns and backs off the upper ATR limit, the lower ATR limit will un-anchor from the daily low (it will actually rise, since the daily ATR range has been exceeded, so the lower ATR limit needs to come up because the actual daily range can’t fit into the ATR range anymore). The overall effect is to give you the best visual indication of where the price is in relation to a possible upper ATR-based target. Reverse this example for when the price low approaches the ATR range on the low side.
Care was taken so that the code uses no hard-coded time zones, exchanges, or session times. For this reason, it can in principle work globally. However, it very much depends on the information provided by the exchange, which is reflected in built-in Pine Script variables (see Limitations below).
█ LIMITATIONS
The indicator was developed for US/European equities and is tested on them only. It is also known to work on US futures; in this case, the whole 23-hour session is used, and the "Sessions to include in range" setting has no effect. It may or may not work as intended on security types and equities/futures for other countries.
Multitime ATR with ATR Heat Line# Multi-Timeframe ATR Supertrend with ATH Finder
## Overview
This advanced Pine Script indicator combines multi-timeframe ATR-based Supertrend analysis with an All-Time High (ATH) tracking system. Designed for swing traders who need comprehensive trend analysis across multiple timeframes while monitoring key price levels.
## Key Features
### 1. Multi-Timeframe ATR Supertrend (1H, 4H, 1D)
- **1 Hour Supertrend** (Blue): Short-term trend identification
- **4 Hour Supertrend** (Purple): Medium-term trend confirmation
- **1 Day Supertrend** (Green/Red): Primary trend direction
- Each timeframe displays independent trend lines with customizable colors and visibility
### 2. Dual ATR Data System (1D Only)
- **Previous Day ATR** (lookahead_off): Used for main ATR lines - enables pre-market study and avoids intraday crossover issues
- **Current Day ATR** (lookahead_on): Used for Overheating Line calculation - provides real-time profit-taking signals
### 3. Overheating Line
- Dynamically calculated as: `1D ATR + (ATR Width × 1.3)`
- Orange line indicating potential overextension zones
- Uses current day real-time ATR for intraday decision-making
- Only displays during uptrends
- Customizable multiplier (default: 1.3)
### 4. ATH (All-Time High) Finder
- Automatically tracks and displays the all-time high with a horizontal line
- **Line Color**: Lime green (customizable)
- **Label System**:
- Green label when price is at ATH
- Red label when ATH is historical
- Toggle label visibility independently
- **Bug Fix**: Prevents vertical line display when ATH occurs on current bar
- Line extends to the right for easy visualization
### 5. Warning & Break Signals
Each timeframe provides two types of alerts:
- **Warning Signal** (⚠️): Price closes below uptrend line (potential reversal warning)
- **Break Signal** (⚡): Price closes above downtrend line (potential breakout)
- Smart timing intervals prevent signal spam:
- 1H: Checks every 4 hours (warning) / 1 hour (break)
- 4H/1D: Max 2 signals per day
### 6. Trend Change Indicators
- Small circles mark the exact bar where trend changes occur
- Color-coded for each timeframe
- Helps identify reversal points and trend strength
### 7. Master Control Switches
Efficiently manage all visual elements:
- **Master Highlighter**: Toggle all background fills on/off
- **Master Signals**: Toggle all warning/break signals
- **Master Up Trend**: Toggle all uptrend lines and circles
- **Master Down Trend**: Toggle all downtrend lines and circles
### 8. Fast Cut Lines (Optional)
- Additional support/resistance lines offset by a percentage from main ATR lines
- Useful for tighter stop-loss management
- Separate controls for up and down trends
- Default: OFF (customizable offset percentage)
### 9. Timeframe Visibility Control
- **Hide on Daily+**: Automatically hides indicators (except 1D ATR) on daily timeframes and above
- Reduces chart clutter on higher timeframes
- 1D ATR always visible regardless of chart timeframe
### 10. EMA Integration (Optional)
- Display 20/50/200 EMAs for confluence with ATR trends
- Toggle on/off independently
## Use Cases
### For Swing Traders
1. **Entry Timing**: Wait for multiple timeframe alignment (1H, 4H, 1D all in uptrend)
2. **Trend Confirmation**: Use trend change circles to identify momentum shifts
3. **Profit Taking**: Monitor Overheating Line for potential exit zones
### For Position Management
1. **Stop Loss Placement**: Use 1D ATR line or Fast Cut lines as dynamic stop levels
2. **Risk Assessment**: Distance between timeframe ATR lines indicates volatility
3. **Breakout Trading**: Break signals (⚡) identify potential breakout opportunities
### For Pre-Market Analysis
- 1D ATR uses previous day data, allowing traders to:
- Study support/resistance levels before market open
- Plan entry/exit strategies based on confirmed data
- Avoid false signals from incomplete daily candles
## Settings Guide
### ATH Finder Settings
- **Show ATH Line**: Toggle ATH line visibility
- **Show ATH Label**: Toggle ATH label display (can hide label while keeping line)
- **ATH Line Color**: Customize line color (default: lime)
- **ATH Line Width**: Adjust line thickness (1-5)
### Timeframe Settings (Each timeframe has independent controls)
- **ATR Period**: Lookback period for ATR calculation (default: 10)
- **ATR Multiplier**: Distance multiplier from price (default: 1.0)
- **Show Label**: Display " " / " " / " " text labels
- **Show Warning/Break Signals**: Toggle alert symbols
- **Highlighter**: Toggle background fill between price and ATR line
### Overheating Line Settings
- **Show Overheating Line**: Toggle visibility
- **Overheating Multiplier**: Adjust distance above 1D ATR (default: 1.3)
### Cut Lines Settings
- **Show Fast Cut Line (Up/Down)**: Toggle visibility
- **Fast Cut Offset %**: Percentage distance from ATR lines (default: 1.0%)
## Color Scheme
- **Current TF**: Green (up) / Red (down)
- **1H ATR**: Blue (#1848cc) / Dark Blue (#210ba2)
- **4H ATR**: Purple (#7b1fa2) / Dark Purple (#4e0f60)
- **1D ATR**: Green (#4caf50) / Dark Red (#8c101a)
- **Overheating Line**: Orange (#ff9800)
- **ATH Line**: Lime (customizable)
## Technical Notes
### ATR Calculation
- Uses True Range for volatility measurement
- Option to switch between SMA and EMA calculation methods
- Adapts to both volatile and stable market conditions
### Performance Optimization
- Maximum 500 lines and 500 labels to prevent memory issues
- Bar index limitations prevent historical data errors
- Efficient repainting prevention for 1D timeframe
### Alert System
Built-in alert conditions for:
- Buy/Sell signals (Current TF)
- Warning signals (all timeframes)
- Break signals (all timeframes)
## Best Practices
1. **Multiple Timeframe Confirmation**: Don't trade against higher timeframe trends
2. **Overheating Awareness**: Consider profit-taking when price reaches orange line
3. **ATH Monitoring**: Exercise caution near all-time highs (increased volatility risk)
4. **Signal Filtering**: Use warning signals as alerts, not immediate action triggers
5. **Stop Loss Management**: Place stops below the most relevant ATR line for your timeframe
## Version Information
- Pine Script Version: 5
- Indicator Type: Overlay
- Max Lines: 500
- Max Labels: 500
## Credits
Created by @yohei ogura with <3
Modified for Multi-Timeframe functionality with ATH tracking
Combined ATR + VolumeOverview
The Combined ATR + Volume indicator (C-ATR+Vol) is designed to measure both price volatility and market participation by merging the Average True Range (ATR) and trading volume into a single normalized value. This provides traders with a more comprehensive tool than ATR alone, as it highlights not only how much price is moving, but also whether there is sufficient volume behind those moves.
Originality & Utility
Two Key Components
ATR (Average True Range): Measures price volatility by analyzing the range (high–low) over a specified period. A higher ATR often indicates larger price swings.
Volume: Reflects how actively traders are participating in the market. High volume typically indicates strong buying or selling interest.
Normalized Combination
Both ATR and volume are independently normalized to a 0–100 range.
The final output (C-ATR+Vol) is the average of these two normalized values. This makes it easy to see when both volatility and market participation are relatively high.
Practical Use
Above 80: Signifies elevated volatility and strong volume. Markets may experience significant moves.
Around 50–80: Indicates moderate activity. Price swings and volume are neither extreme nor minimal.
Below 50: Suggests relatively low volatility and lower participation. The market may be ranging or consolidating.
This combined approach can help filter out situations where volatility is high but volume is absent—or vice versa—providing a more reliable context for potential breakouts or trend continuations.
Indicator Logic
ATR Calculation
Uses Pine Script’s built-in ta.tr(true) function to measure true range, then smooths it with a user-selected method (RMA, SMA, EMA, or WMA).
Key Input: ATR Length (default 14).
Volume Calculation
Smooths the built-in volume variable using the same selectable smoothing methods.
Key Input: Volume Length (default 14).
Normalization
For each metric (ATR and Volume), the script finds the lowest and highest values over the lookback period and converts them into a 0–100 scale:
normalized value
=(current value−min)(max−min)×100
normalized value= (max−min)(current value−min) ×100
Combined Score
The final plot is the average of Normalized ATR and Normalized Volume. This single value simplifies the process of identifying high-volatility, high-volume conditions.
How to Use
Setup
Add the indicator to your chart.
Adjust ATR Length, Volume Length, and Smoothing to match your preferred time horizon or chart style.
Interpretation
High Values (above 80): The market is experiencing significant price movement with high participation. Potential for strong trends or breakouts.
Moderate Range (50–80): Conditions are active but not extreme. Trend setups may be forming.
Low Values (below 50): Indicates quieter markets with reduced liquidity. Expect ranging or less decisive moves.
Strategy Integration
Use C-ATR+Vol alongside other trend or momentum indicators (e.g., Moving Averages, RSI, MACD) to confirm potential entries/exits.
Combine it with support/resistance or price action analysis for a broader market view.
Important Notes
This script is open-source and intended as a community contribution.
No Future Guarantee: Past market behavior does not guarantee future results. Always use proper risk management and validate signals with additional tools.
The indicator’s performance may vary depending on timeframes, asset classes, and market conditions.
Adjust inputs as needed to suit different instruments or personal trading styles.
By adhering to TradingView’s publishing rules, this script is provided with sufficient detail on what it does, how it’s unique, and how traders can use it. Feel free to customize the settings and experiment with other technical indicators to develop a trading methodology that fits your objectives.
🔹 Combined ATR + Volume (C-ATR+Vol) 지표 설명
이 인디케이터는 ATR(Average True Range)와 거래량(Volume)을 결합하여 시장의 변동성과 유동성을 동시에 측정하는 지표입니다.
ATR은 가격 변동성의 크기를 나타내며, 거래량은 시장 참여자의 활동 수준을 반영합니다. 보통 높은 ATR은 가격 변동이 크다는 의미이고, 높은 거래량은 시장에서 적극적인 거래가 이루어지고 있음을 나타냅니다.
이 두 지표를 각각 0~100 범위로 정규화한 후, 평균을 구하여 "Combined ATR + Volume (C-ATR+Vol)" 값을 계산합니다.
이를 통해 단순한 가격 변동성뿐만 아니라 거래량까지 고려하여, 더욱 신뢰성 있는 변동성 판단을 할 수 있도록 도와줍니다.
📌 핵심 개념
1️⃣ ATR (Average True Range)란?
시장의 변동성을 측정하는 지표로, 일정 기간 동안의 고점-저점 변동폭을 기반으로 계산됩니다.
ATR이 높을수록 가격 변동이 크며, 낮을수록 횡보장이 지속될 가능성이 큽니다.
하지만 ATR은 방향성을 제공하지 않으며, 단순히 변동성의 크기만을 나타냅니다.
2️⃣ 거래량 (Volume)의 역할
거래량은 시장 참여자의 관심과 유동성을 반영하는 중요한 요소입니다.
높은 거래량은 강한 매수 또는 매도세가 존재함을 의미하며, 낮은 거래량은 시장 참여가 적거나 관심이 줄어들었음을 나타냅니다.
3️⃣ ATR + 거래량의 결합 (C-ATR+Vol)
단순한 ATR 값만으로는 변동성이 커도 거래량이 부족할 수 있으며, 반대로 거래량이 많아도 변동성이 낮을 수 있습니다.
이를 해결하기 위해 ATR과 거래량을 각각 0~100으로 정규화하여 균형 잡힌 변동성 지표를 만들었습니다.
두 지표의 평균값을 계산하여, 가격 변동과 거래량이 동시에 높은지를 측정할 수 있도록 설계되었습니다.
📊 사용법 및 해석
80 이상 → 강한 변동성 구간
가격 변동성이 크고 거래량도 높은 상태
강한 추세가 진행 중이거나 큰 변동이 일어날 가능성이 큼
상승/하락 방향성을 확인한 후 트렌드를 따라가는 전략이 유리
50~80 구간 → 보통 수준의 변동성
가격 움직임이 일정하며, 거래량도 적절한 수준
점진적인 추세 형성이 이루어질 가능성이 있음
시장이 점진적으로 상승 혹은 하락할 가능성이 크므로, 보조지표를 활용하여 매매 타이밍을 결정하는 것이 중요
50 이하 → 낮은 변동성 및 유동성 부족
가격 변동이 적고, 거래량도 낮은 상태
시장이 횡보하거나 조정 기간에 들어갈 가능성이 큼
박스권 매매(지지/저항 활용) 또는 돌파 전략을 고려할 수 있음
💡 활용 방법 및 전략
✅ 1. 트렌드 판단 보조지표로 활용
단독으로 사용하는 것보다는 RSI, MACD, 이동평균선(MA) 등의 지표와 함께 활용하는 것이 효과적입니다.
예를 들어, MACD가 상승 신호를 주고, C-ATR+Vol 값이 80을 초과하면 강한 상승 추세로 해석할 수 있습니다.
✅ 2. 변동성 돌파 전략에 활용
C-ATR+Vol이 80 이상인 구간에서 가격이 특정 저항선을 돌파한다면, 강한 추세의 시작을 의미할 수 있습니다.
반대로, C-ATR+Vol이 50 이하에서 가격이 저항선에 가까워지면 돌파 가능성이 낮아질 수 있습니다.
✅ 3. 시장 참여도와 변동성 확인
단순히 ATR만 높아서는 신뢰하기 어려운 경우가 많습니다. 예를 들어, 급등 후 거래량이 급감하면 상승 지속 가능성이 낮아질 수도 있습니다.
하지만 C-ATR+Vol을 사용하면 거래량이 함께 증가하는지를 확인하여 보다 신뢰할 수 있는 분석이 가능합니다.
🚀 결론
🔹 Combined ATR + Volume (C-ATR+Vol) 인디케이터는 단순한 ATR이 아니라 거래량까지 고려하여 변동성을 측정하는 강력한 도구입니다.
🔹 시장이 큰 움직임을 보일 가능성이 높은 구간을 찾는 데 유용하며, 80 이상일 경우 강한 변동성이 있음을 나타냅니다.
🔹 단독으로 사용하기보다는 보조지표와 함께 활용하여, 트렌드 분석 및 돌파 전략 등에 효과적으로 적용할 수 있습니다.
📌 주의사항
변동성이 크다고 해서 반드시 가격이 급등/급락한다는 보장은 없습니다.
특정한 매매 전략 없이 단순히 이 지표만 보고 매수/매도를 결정하는 것은 위험할 수 있습니다.
시장 상황에 따라 변동성의 의미가 다르게 작용할 수 있으므로, 반드시 다른 보조지표와 함께 활용하는 것이 중요합니다.
🔥 이 지표를 활용하여 시장의 변동성과 거래량을 보다 효과적으로 분석해보세요! 🚀
Momentum Breakout Filter + ATR ZonesMomentum Breakout Filter + ATR Zones - User Guide
What This Indicator Does
This indicator helps you with your MACD + volume momentum strategy by:
Filtering out fake breakouts - Shows ⚠️ warnings when breakouts lack confirmation
Showing clear entry signals - 🚀 LONG and 🔻 SHORT labels when all conditions align
Automatic stop loss & profit targets - Based on ATR (Average True Range)
Visual trend confirmation - Background color + EMA alignment
Signal Types
🚀 LONG Entry Signal (Green Label)
Appears when ALL conditions met:
✅ MACD crosses above signal line
✅ Volume > 1.5× average
✅ Price > EMA 9 > EMA 21 > EMA 200 (bullish trend)
✅ Price closes above recent 20-bar high
🔻 SHORT Entry Signal (Red Label)
Appears when ALL conditions met:
✅ MACD crosses below signal line
✅ Volume > 1.5× average
✅ Price < EMA 9 < EMA 21 < EMA 200 (bearish trend)
✅ Price closes below recent 20-bar low
⚠️ FAKE Breakout Warning (Orange Label)
Appears when price breaks high/low BUT lacks confirmation:
❌ Low volume (below 1.5× average), OR
❌ Wick break only (didn't close through level), OR
❌ MACD not aligned with direction
Hover over the warning label to see what's missing!
ATR Stop Loss & Targets
When you get a signal, colored lines automatically appear:
Long Position
Red solid line = Stop Loss (Entry - 1.5×ATR)
Green dashed lines = Profit Targets:
Target 1: Entry + 2×ATR
Target 2: Entry + 3×ATR
Target 3: Entry + 4×ATR
Short Position
Red solid line = Stop Loss (Entry + 1.5×ATR)
Green dashed lines = Profit Targets:
Target 1: Entry - 2×ATR
Target 2: Entry - 3×ATR
Target 3: Entry - 4×ATR
The lines move with each bar until you exit the position.
Chart Elements
Moving Averages
Blue line = EMA 9 (fast)
Orange line = EMA 21 (medium)
White line = EMA 200 (trend filter)
Volume
Yellow bars = High volume (above threshold)
Gray bars = Normal volume
Background Color
Light green = Bullish trend (all EMAs aligned up)
Light red = Bearish trend (all EMAs aligned down)
No color = Neutral/mixed
MACD (Bottom Pane)
Green/Red columns = MACD Histogram
Blue line = MACD Line
Orange line = Signal Line
Info Dashboard (Bottom Right)
ItemWhat It ShowsVolumeCurrent volume vs average (✓ HIGH or ✗ Low)MACDDirection (BULLISH or BEARISH)TrendEMA alignment (BULL, BEAR, or NEUTRAL)ATRCurrent ATR value in dollarsPositionCurrent position (LONG, SHORT, or NONE)R:RRisk-to-Reward ratio (shows when in position)
How To Use It
Basic Workflow
Wait for setup
Watch for MACD to approach signal line
Volume should be building
Price should be near EMA structure
Get confirmation
Wait for 🚀 LONG or 🔻 SHORT label
Check dashboard shows "✓ HIGH" volume
Verify trend is aligned (green or red background)
Enter the trade
Enter when signal appears
Note your stop loss (red line)
Note your targets (green dashed lines)
Manage the trade
Exit at first target for partial profit
Move stop to breakeven
Trail remaining position
What To Avoid
❌ Don't trade when you see:
⚠️ FAKE labels (wait for confirmation)
Neutral background (no clear trend)
"✗ Low" volume in dashboard
MACD and Trend not aligned
Settings You Can Adjust
Volume Sensitivity
High Volume Threshold: Default 1.5×
Increase to 2.0× for cleaner signals (fewer trades)
Decrease to 1.2× for more signals (more trades)
Fake Breakout Filters
You can toggle these ON/OFF:
Volume Confirmation: Requires high volume
Close Through: Requires candle close, not just wick
MACD Alignment: Requires MACD direction match
Tip: Turn all three ON for highest quality signals
ATR Stop/Target Multipliers
Default settings (conservative):
Stop Loss: 1.5×ATR
Target 1: 2×ATR (1.33:1 R:R)
Target 2: 3×ATR (2:1 R:R)
Target 3: 4×ATR (2.67:1 R:R)
Aggressive traders might use:
Stop Loss: 1.0×ATR
Target 1: 2×ATR (2:1 R:R)
Target 2: 4×ATR (4:1 R:R)
Conservative traders might use:
Stop Loss: 2.0×ATR
Target 1: 3×ATR (1.5:1 R:R)
Target 2: 5×ATR (2.5:1 R:R)
Example Trade Scenarios
Scenario 1: Perfect Long Setup ✅
Stock consolidating near EMA 21
MACD curling up toward signal line
Volume bar turns yellow (high volume)
🚀 LONG label appears
Red stop line and green target lines appear
Result: High probability trade
Scenario 2: Fake Breakout Avoided ✅
Price breaks above resistance
Volume is normal (gray bar)
⚠️ FAKE label appears (hover shows "Low volume")
No entry signal
Price falls back below breakout level
Result: Avoided losing trade
Scenario 3: Premature Entry ❌
MACD crosses up
Volume is high
BUT trend is NEUTRAL (no background color)
No signal appears (trend filter blocks it)
Result: Avoided choppy/sideways market
Quick Reference
Entry Checklist
🚀 or 🔻 label on chart
Dashboard shows "✓ HIGH" volume
Dashboard shows aligned MACD + Trend
Colored background (green or red)
ATR lines visible
No ⚠️ FAKE warning
Exit Strategy
Target 1 (2×ATR): Take 50% profit, move stop to breakeven
Target 2 (3×ATR): Take 25% profit, trail stop
Target 3 (4×ATR): Take remaining profit or trail aggressively
Stop Loss: Exit entire position if hit
Alerts
Set up these alerts:
Long Entry: Fires when 🚀 LONG signal appears
Short Entry: Fires when 🔻 SHORT signal appears
Fake Breakout Warning: Fires when ⚠️ appears (optional)
Tips for Success
Use on 5-minute charts for day trading momentum plays
Only trade high volume stocks ($5-20 range works best)
Wait for full confirmation - don't jump early
Respect the stop loss - it's calculated based on volatility
Scale out at targets - don't hold for home runs
Avoid trading first 15 minutes - let market settle
Best during 10am-11am and 2pm-3pm - peak momentum times
Common Questions
Q: Why didn't I get a signal even though MACD crossed?
A: All conditions must be met - check dashboard for what's missing (likely volume or trend alignment)
Q: Can I use this on any timeframe?
A: Yes, but it's designed for 5-15 minute charts. On daily charts, adjust ATR multipliers higher.
Q: The stop loss seems too tight, can I widen it?
A: Yes, increase "Stop Loss (×ATR)" from 1.5 to 2.0 or 2.5 in settings.
Q: I keep seeing FAKE warnings but price keeps going - what gives?
A: The filter is conservative. You can disable some filters in settings, but expect more false signals.
Q: Can I use this for swing trading?
A: Yes, but use larger timeframes (1H or 4H) and adjust ATR multipliers up (3× for stops, 6-9× for targets).
50% Fib Trend Cloud + ATR BandsThis indicator plots two structural 50% fibonacci midpoints from recent confirmed 'left/right' swings that form a *cloud* of equilibrium, then adds a rolling 50% fibonacci range midpoint based on a lookback window that's wrapped in ATR bands. Importantly, it solves a specific trading problem:
Structural midpoints (macro context) are powerful but can lag when price escapes prior ranges. Enter rolling 50% fib + ATR ➡️ which restores real-time balance & tolerance (micro context). Together they show where price is balanced structurally, where it’s balanced right now, and how much volatility to tolerate before acting.
➖➖➖
🔑 Why this is different
Most tools either draw a single midpoint (ex., daily 50%) or ATR bands around a moving average. This script fuses dual swing-based 50% midpoints (structure) + a rolling 50% with ATR (flow), so you don’t lose context when price escapes prior ranges. The cloud tells you who’s in control (fast vs. slow structure). The rolling 50% + ATR tells you how far is “too far” now.
➖➖➖
🧠 What it does (at a glance)
🔸Structural Equilibrium × 2 (Fib1/Fib2)
Two independent 50% midpoints formed from swing pivots (configurable Left/Right bars + optional smoothing). Their gap is the Midpoint Cloud = structural “fair value” zone.
🔸Rolling 50% + ATR Bands
A rolling highest/lowest window computes an always-current 50% rolling midpoint plot; ±ATR × length envelopes define a soft value area and over-stretch boundaries.
🔸Actionable Visuals
Optional fill between Fib1/Fib2, labels, and candle-overlay modes to instantly read regime (above both / below both / between).
🔸Smart Defaults
Timeframe-aware presets for L/R pivots & smoothing; full manual overrides available.
➖➖➖
⚙️ Calculations (plain-English)
🔸Pivot midpoints (Fib1 & Fib2):
1) Detect a swing using `Left/Right` bars
2) Take the swing’s high/low → compute 50%
3) (Optional) Smooth the line (SMA) to stabilize on noisy TFs
4) Repeat with a different sensitivity to get two distinct midpoints
🔸Rolling midpoint:
Highest High / Lowest Low over the last *N* bars → (HH + LL) / 2
🔸ATR levels:
`Upper = Rolling50 + ATR × Mult`, `Lower = Rolling50 − ATR × Mult`
(Typical: ATR length 14–21; Multipliers 2.236 for L1, 5.382 for L2)
➖➖➖
🤖 Auto-Configured Presets (with Manual Override)
💡Goal: make the midpoints “just work” on common timeframes while still letting you dial them in.
💡How Auto Presets work
When Auto Presets = ON, the script picks sensible L/R/S (Left bars / Right bars / Smoothing) for Fib Trend 1 and Fib Trend 2 based on chart timeframe.
🔸Fib 1 (fast) emphasizes *micro-structure* for quicker bias shifts.
🔸Fib 2 (slow) emphasizes *macro-structure* for anchor/bias context.
These defaults keep Fib 1 responsive without jitter and Fib 2 stable without lag.
➡️ Turn Auto Presets = OFF to take full control with the manual inputs described below.
➖➖➖
🛠 Manual Fib Midpoint Settings (when Auto = OFF)
💡Each midpoint uses three knobs:
🔸Pivot Left (L): bars to the left that must be lower/higher to qualify a swing
🔸Pivot Right (R): bars to the right that must be lower/higher to confirm the swing
🔸Smoothing (S): SMA period applied to the raw 50% midpoint (stabilizes noise)
5-Minute optimized defaults
🔸Fib Trend 1: `L21 / R5 / S55` → responsive local structure (entries/exits, re-balancing zones)
🔸Fib Trend 2: `L55 / R13 / S89` → broader structure (trend context, anchors/stops)
Timeframe guidance
🔸1m–3m: may feel a touch laggy → consider ~`L13 / R3 / S34`
🔸15m–1h: defaults remain strong → optionally ~`L34 / R8 / S89`
🔸4h+ : increase span for stability → `L89–144 / R13–21 / S144–233`
➡️ Rule of thumb: shorter L/R = faster detection, longer S = smoother line. Tune until Fib 1 captures the “active swing” and Fib 2 captures the “dominant swing” without whipsaw.
➖➖➖
🎛 Inputs (quick reference)
🔸Fib Trend 1/2: Source (High/Low/Close), Left/Right bars, Smoothing length, Show/Hide, Cloud fill toggle
🔸Rolling 50%: Lookback length, Price basis (Wicks/Close/HLC3/OHLC4), Plot scope (Full / Last N / None)
🔸ATR Bands: ATR length, Multipliers (L1/L2), Plot scope, Line width/colors
🔸Overlay & Labels: Candle overlay mode, Label padding/size, 50% centerline toggle, Plot widths
➖➖➖
🖍️ Candle Coloring & Overlay Modes
💡Purpose: make trend instantly visible on the candles and ATR levels.
1) Color Logic (dropdown)
🔸 Fib Midpoints — Colors by position of price vs. Fib 1 & Fib 2
🔸ATR Zones — Colors by which ATR zone price is in relative to the Rolling 50%
➡️ Price Reference: Choose the input used for the decision (Close, HL2, OHLC3, OHLC4).
➡️Tip: Close is crisp; HL2/OHLC variants are smoother.
2) Overlay Style (dropdown)
🔸 None — No visual change to candles
🔸 Bar Color — Uses `barcolor()` to tint built-in candles (this takes into account your Trading View settings, for instance if you have wicks set to white, they will show up as white with this setting)
🔸 PlotCandles — Draws unified custom candles (body, wick, border) with the same color for maximum clarity
💡Practical use
🔸 Pick Fib Midpoints to read structural bias at a glance (above/below/between the cloud).
🔸 Pick ATR Zones to read value vs. stretch around the Rolling 50% (mean-reversion vs. trend extension).
➖➖➖
📘 How to use
A) Trend confirmation
- Strong bullish bias when price holds above both structural mids; strong bearish when below both.
- Use the Rolling 50% + ATR as a dynamic re-entry zone: pullbacks that respect ATR(L1) often continue the prevailing trend.
B) Transition / mean reversion
- Inside the Cloud (between Fib1 & Fib2) treat behavior as neutralization/re-balancing; range tactics tend to outperform momentum plays.
- In ranges, fades near ±ATR around the rolling 50% can mark short-term edges.
C) Breakout context
- When price leaves the Cloud, the Rolling 50% keeps you anchored so price never feels “floating.” A clean hold outside ATR(L1/L2) suggests regime strength; quick re-entries hint at traps.
➖➖➖
🖼 Chart examples
➡️ Each snapshot shows how the Cloud (structure) and the Rolling 50% + ATR (flow) work together.
1) 1-Minute Downtrend – Cloud as Dynamic Ceiling
- The Cloud slopes down; pullbacks repeatedly fail under the Cloud’s underside.
- Rolling 50% (dashed mid) + ATR(L1) act as a reversion band: rallies stall near upper ATR and rotate lower.
2) 15-Minute Persistent Drift – Structure Guides, Flow Times Entries
- Long drift lower with Cloud overhead.
- Consolidations near the rolling mid resolve in the trend direction; ATR bands frame risk on each attempt.
3) 15-Minute Uptrend (BTC) – From Cloud Escape to Value Stair-Step
- After escaping the prior Cloud, rolling 50% + ATR establish a new higher value area.
- Pullbacks into ATR(L1) produce orderly stair-steps; Cloud remains supportive on deeper dips
4) 5-Minute BTC – Pullback to Value then Rotate
- Strong leg up; retrace tags lower ATR band and rotates back toward the rolling mid.
- Labels (Fib1/Fib2) make the structural context explicit for decision-making.
➖➖➖
🧪 Starter presets
- Intraday (5–15m): Fib1 ~ L21/R5 (smooth 5), Fib2 ~ L55/R13 (smooth 9) • Rolling = 55 • ATR = 14 • L1 = 2.5x, L2 = 5.0x
- Scalping: Shorten lookbacks & smoothing; keep ATR multipliers similar, or tighten L1.
- Swing: Lengthen all lookbacks; consider ATR length 21–28.
➖➖➖
🏁Final Word
This script is not just a visual tool, it’s a complete trend and structure framework. Whether you're looking for clean trend alignment, dynamic support/resistance, or early warning signs of a reversal, this system is tuned to help you react with confidence — not hindsight.
Rembember, no single indicator should be used in isolation. For best results, combine it with price action analysis, higher-timeframe context, and complementary tools like trendlines, moving averages etc Use it as part of a well-rounded trading approach to confirm setups — not to define them alone.
---
💡Turn logic into clarity. Structure into trades. And uncertainty into confidence.
BOCS AdaptiveBOCS Adaptive Strategy - Automated Volatility Breakout System
WHAT THIS STRATEGY DOES:
This is an automated trading strategy that detects consolidation patterns through volatility analysis and executes trades when price breaks out of these channels. Take-profit and stop-loss levels are calculated dynamically using Average True Range (ATR) to adapt to current market volatility. The strategy closes positions partially at the first profit target and exits the remainder at the second target or stop loss.
TECHNICAL METHODOLOGY:
Price Normalization Process:
The strategy begins by normalizing price to create a consistent measurement scale. It calculates the highest high and lowest low over a user-defined lookback period (default 100 bars). The current close price is then normalized using the formula: (close - lowest_low) / (highest_high - lowest_low). This produces values between 0 and 1, allowing volatility analysis to work consistently across different instruments and price levels.
Volatility Detection:
A 14-period standard deviation is applied to the normalized price series. Standard deviation measures how much prices deviate from their average - higher values indicate volatility expansion, lower values indicate consolidation. The strategy uses ta.highestbars() and ta.lowestbars() functions to track when volatility reaches peaks and troughs over the detection length period (default 14 bars).
Channel Formation Logic:
When volatility crosses from a high level to a low level, this signals the beginning of a consolidation phase. The strategy records this moment using ta.crossover(upper, lower) and begins tracking the highest and lowest prices during the consolidation. These become the channel boundaries. The duration between the crossover and current bar must exceed 10 bars minimum to avoid false channels from brief volatility spikes. Channels are drawn using box objects with the recorded high/low boundaries.
Breakout Signal Generation:
Two detection modes are available:
Strong Closes Mode (default): Breakout occurs when the candle body midpoint math.avg(close, open) exceeds the channel boundary. This filters out wick-only breaks.
Any Touch Mode: Breakout occurs when the close price exceeds the boundary.
When price closes above the upper channel boundary, a bullish breakout signal generates. When price closes below the lower boundary, a bearish breakout signal generates. The channel is then removed from the chart.
ATR-Based Risk Management:
The strategy uses request.security() to fetch ATR values from a specified timeframe, which can differ from the chart timeframe. For example, on a 5-minute chart, you can use 1-minute ATR for more responsive calculations. The ATR is calculated using ta.atr(length) with a user-defined period (default 14).
Exit levels are calculated at the moment of breakout:
Long Entry Price = Upper channel boundary
Long TP1 = Entry + (ATR × TP1 Multiplier)
Long TP2 = Entry + (ATR × TP2 Multiplier)
Long SL = Entry - (ATR × SL Multiplier)
For short trades, the calculation inverts:
Short Entry Price = Lower channel boundary
Short TP1 = Entry - (ATR × TP1 Multiplier)
Short TP2 = Entry - (ATR × TP2 Multiplier)
Short SL = Entry + (ATR × SL Multiplier)
Trade Execution Logic:
When a breakout occurs, the strategy checks if trading hours filter is satisfied (if enabled) and if position size equals zero (no existing position). If volume confirmation is enabled, it also verifies that current volume exceeds 1.2 times the 20-period simple moving average.
If all conditions are met:
strategy.entry() opens a position using the user-defined number of contracts
strategy.exit() immediately places a stop loss order
The code monitors price against TP1 and TP2 levels on each bar
When price reaches TP1, strategy.close() closes the specified number of contracts (e.g., if you enter with 3 contracts and set TP1 close to 1, it closes 1 contract). When price reaches TP2, it closes all remaining contracts. If stop loss is hit first, the entire position exits via the strategy.exit() order.
Volume Analysis System:
The strategy uses ta.requestUpAndDownVolume(timeframe) to fetch up volume, down volume, and volume delta from a specified timeframe. Three display modes are available:
Volume Mode: Shows total volume as bars scaled relative to the 20-period average
Comparison Mode: Shows up volume and down volume as separate bars above/below the channel midline
Delta Mode: Shows net volume delta (up volume - down volume) as bars, positive values above midline, negative below
The volume confirmation logic compares breakout bar volume to the 20-period SMA. If volume ÷ average > 1.2, the breakout is classified as "confirmed." When volume confirmation is enabled in settings, only confirmed breakouts generate trades.
INPUT PARAMETERS:
Strategy Settings:
Number of Contracts: Fixed quantity to trade per signal (1-1000)
Require Volume Confirmation: Toggle to only trade signals with volume >120% of average
TP1 Close Contracts: Exact number of contracts to close at first target (1-1000)
Use Trading Hours Filter: Toggle to restrict trading to specified session
Trading Hours: Session input in HHMM-HHMM format (e.g., "0930-1600")
Main Settings:
Normalization Length: Lookback bars for high/low calculation (1-500, default 100)
Box Detection Length: Period for volatility peak/trough detection (1-100, default 14)
Strong Closes Only: Toggle between body midpoint vs close price for breakout detection
Nested Channels: Allow multiple overlapping channels vs single channel at a time
ATR TP/SL Settings:
ATR Timeframe: Source timeframe for ATR calculation (1, 5, 15, 60, etc.)
ATR Length: Smoothing period for ATR (1-100, default 14)
Take Profit 1 Multiplier: Distance from entry as multiple of ATR (0.1-10.0, default 2.0)
Take Profit 2 Multiplier: Distance from entry as multiple of ATR (0.1-10.0, default 3.0)
Stop Loss Multiplier: Distance from entry as multiple of ATR (0.1-10.0, default 1.0)
Enable Take Profit 2: Toggle second profit target on/off
VISUAL INDICATORS:
Channel boxes with semi-transparent fill showing consolidation zones
Green/red colored zones at channel boundaries indicating breakout areas
Volume bars displayed within channels using selected mode
TP/SL lines with labels showing both price level and distance in points
Entry signals marked with up/down triangles at breakout price
Strategy status table showing position, contracts, P&L, ATR values, and volume confirmation status
HOW TO USE:
For 2-Minute Scalping:
Set ATR Timeframe to "1" (1-minute), ATR Length to 12, TP1 Multiplier to 2.0, TP2 Multiplier to 3.0, SL Multiplier to 1.5. Enable volume confirmation and strong closes only. Use trading hours filter to avoid low-volume periods.
For 5-15 Minute Day Trading:
Set ATR Timeframe to match chart or use 5-minute, ATR Length to 14, TP1 Multiplier to 2.0, TP2 Multiplier to 3.5, SL Multiplier to 1.2. Volume confirmation recommended but optional.
For Hourly+ Swing Trading:
Set ATR Timeframe to 15-30 minute, ATR Length to 14-21, TP1 Multiplier to 2.5, TP2 Multiplier to 4.0, SL Multiplier to 1.5. Volume confirmation optional, nested channels can be enabled for multiple setups.
BACKTEST CONSIDERATIONS:
Strategy performs best during trending or volatility expansion phases
Consolidation-heavy or choppy markets produce more false signals
Shorter timeframes require wider stop loss multipliers due to noise
Commission and slippage significantly impact performance on sub-5-minute charts
Volume confirmation generally improves win rate but reduces trade frequency
ATR multipliers should be optimized for specific instrument characteristics
COMPATIBLE MARKETS:
Works on any instrument with price and volume data including forex pairs, stock indices, individual stocks, cryptocurrency, commodities, and futures contracts. Requires TradingView data feed that includes volume for volume confirmation features to function.
KNOWN LIMITATIONS:
Stop losses execute via strategy.exit() and may not fill at exact levels during gaps or extreme volatility
request.security() on lower timeframes requires higher-tier TradingView subscription
False breakouts inherent to breakout strategies cannot be completely eliminated
Performance varies significantly based on market regime (trending vs ranging)
Partial closing logic requires sufficient position size relative to TP1 close contracts setting
RISK DISCLOSURE:
Trading involves substantial risk of loss. Past performance of this or any strategy does not guarantee future results. This strategy is provided for educational purposes and automated backtesting. Thoroughly test on historical data and paper trade before risking real capital. Market conditions change and strategies that worked historically may fail in the future. Use appropriate position sizing and never risk more than you can afford to lose. Consider consulting a licensed financial advisor before making trading decisions.
ACKNOWLEDGMENT & CREDITS:
This strategy is built upon the channel detection methodology created by AlgoAlpha in the "Smart Money Breakout Channels" indicator. Full credit and appreciation to AlgoAlpha for pioneering the normalized volatility approach to identifying consolidation patterns and sharing this innovative technique with the TradingView community. The enhancements added to the original concept include automated trade execution, multi-timeframe ATR-based risk management, partial position closing by contract count, volume confirmation filtering, and real-time position monitoring.
Rolling ATR Momentum
Rolling ATR Momentum Indicator – User Manual
---
🔍 Overview
The Rolling ATR Momentum Indicator is a simple yet powerful tool designed to detect shifts in market volatility. It compares the current Average True Range (ATR) with the ATR from a previous point in time to measure how market volatility is changing.
This indicator is especially useful for:
- Spotting the beginning or fading of a momentum phase
- Filtering out low-volatility market conditions
- Enhancing timing for entries and exits in trending or breakout trades
---
📊 Key Components
✅ ATR Delta (Rolling)
- Definition: `ATR Delta = Current ATR - Past ATR`
- Inputs:
- ATR Period (default: 14): The base ATR calculation window
- Lookback Period (default: 5): How many bars ago to compare ATR
- Interpretation:
- Positive ATR Delta (Green Line): Market volatility is increasing
- Negative ATR Delta (Red Line): Market volatility is decreasing
📈 Zero Line
- A horizontal baseline at zero helps you easily see when ATR momentum shifts from negative to positive (or vice versa).
🟩/🟥 Background Color
- Green Background: ATR Delta is positive (rising volatility)
- Red Background: ATR Delta is negative (falling volatility)
🔵 Optional: ATR Reference Lines
- You can optionally display raw Current ATR and Past ATR by changing their visibility settings.
---
✅ How to Use It
Entry Timing (Futures/Options)
- Use ATR Delta as a filter:
- Only take trades when ATR Delta is positive → confirms momentum is building
- Avoid trades when ATR Delta is negative → market might be slow, sideways, or losing steam
Breakout Anticipation
- A rising ATR Delta after a tight range or consolidation can suggest that a breakout is underway
Stop-loss Strategy
- Use high ATR periods for wider stops (to avoid noise)
- Use low ATR periods for tighter stops or skip trading
---
🧠 Pro Tips
- This indicator doesn’t predict direction—combine with trend or price structure tools (like EMA, PPMA, candlesticks)
- Works best in trending or breakout environments
- Add it to multi-timeframe layouts to see volatility buildup on higher timeframes
---
⚙️ Settings
| Parameter | Description |
|----------|-------------|
| ATR Period | Length of the ATR calculation (default 14) |
| Lookback Period | How many bars back to compare ATR values |
---
🧭 Best For:
- Index futures (Nifty, BankNifty)
- Option buyers needing volatility confirmation
- Intraday & swing traders looking to trade momentum setups
---
Use the Rolling ATR Momentum indicator as your volatility radar—simple, clean, and highly effective for staying on the right side of market energy.
End of Manual
Composite Indicator (CCI + ATR)Composite Indicator (CCI + ATR)
The Composite Indicator (CCI + ATR) combines the Commodity Channel Index (CCI) with the Average True Range (ATR) , providing traders with a dynamic tool for identifying entry and exit points based on momentum and volatility. This indicator is particularly useful for markets like cryptocurrencies, which often exhibit sharp sell-offs and gradual upward trends.
Key Features
Momentum Analysis with CCI: The CCI calculates price momentum by comparing the current price level to its average over a specific period. The indicator generates signals when CCI crosses predefined thresholds.
- Buy Signal: Triggered when CCI crosses above the lower threshold (e.g., -100).
- Sell Signal: Triggered when CCI crosses below the upper threshold (e.g., +100).
Volatility Filtering with ATR: The ATR measures market volatility, ensuring signals occur only during significant price movements.
Separate multipliers for buy and sell signals allow tailored filtering based on market behavior.
Stop Loss Calculation: Dynamic stop loss levels are calculated using the ATR multiplier to adapt to market volatility, offering better risk management.
How It Works
CCI Calculation: The CCI is calculated using the typical price ((High + Low + Close) / 3) and a user-defined length. It detects momentum changes by measuring deviations from the average price.
ATR Calculation: The ATR determines the average price range over a specified period, identifying the market’s volatility. The ATR SMA acts as a baseline to filter signals.
Buy Signal: A buy signal is triggered when:
- CCI crosses above the lower threshold (e.g., -100).
- ATR exceeds its SMA multiplied by the buy multiplier (e.g., 1.0).
Sell Signal: A sell signal is triggered when:
- CCI crosses below the upper threshold (e.g., +100).
- ATR exceeds its SMA multiplied by the sell multiplier (e.g., 0.95).
Stop Loss Integration:
- Long positions: Stop loss = Low – (ATR * ATR Multiplier)
- Short positions: Stop loss = High + (ATR * ATR Multiplier)
Advantages
Combines momentum (CCI) and volatility (ATR) for precise signal generation.
Customizable thresholds and multipliers for different market conditions.
Dynamic stop loss ensures better risk management in volatile markets.
Suggested Parameter Settings
CCI Length: 20 (default). Adjust as follows:
- 10–15: Shorter timeframes (e.g., 5-15 minutes).
- 20: General use for 1-hour timeframes.
- 30–50: Longer timeframes (e.g., 4-hour or daily charts).
CCI Threshold: 100 (default). Adjust as follows:
- 50–75: For more frequent signals in ranging markets.
- 100: Balanced for most trading conditions.
- 150–200: For strong trends to reduce noise.
ATR Length: 14 (default). Adjust as follows:
- 10–14: For assets with moderate volatility.
- 20: For assets with lower volatility.
ATR Buy Multiplier: 1.0 (default). Adjust as follows:
- 0.9–1.0: For gradual uptrends in crypto markets.
- 1.1–1.2: For stronger trend filtering.
ATR Sell Multiplier: 0.95 (default). Adjust as follows:
- 0.8–0.95: For sharp sell-offs.
- 1.0–1.1: For stable downward trends.
ATR Multiplier (Stop Loss): 1.5 (default). Adjust as follows:
- 1.0–1.2: For shorter timeframes or less volatile markets.
- 2.0–2.5: For highly volatile markets like cryptocurrencies.
Example Use Cases
Scalping (5-15 minute charts): Use CCI Length = 10, CCI Threshold = 75, ATR Buy Multiplier = 0.9, ATR Sell Multiplier = 0.8.
Day Trading (1-hour charts): Use CCI Length = 20, CCI Threshold = 100, ATR Buy Multiplier = 1.0, ATR Sell Multiplier = 0.95.
Swing Trading (4-hour or daily charts): Use CCI Length = 30, CCI Threshold = 150, ATR Buy Multiplier = 1.2, ATR Sell Multiplier = 1.0.
Final Thoughts The Composite Indicator (CCI + ATR) is a versatile tool designed to enhance trading decisions by combining momentum analysis with volatility filtering. Whether scalping or swing trading, this indicator provides actionable insights and robust risk management to navigate complex markets effectively.
Fibonacci ATR Fusion - Strategy [presentTrading]Open-script again! This time is also an ATR-related strategy. Enjoy! :)
If you have any questions, let me know, and I'll help make this as effective as possible.
█ Introduction and How It Is Different
The Fibonacci ATR Fusion Strategy is an advanced trading approach that uniquely integrates Fibonacci-based weighted averages with the Average True Range (ATR) to identify and capitalize on significant market trends.
Unlike traditional strategies that rely on single indicators or static parameters, this method combines multiple timeframes and dynamic volatility measurements to enhance precision and adaptability. Additionally, it features a 4-step Take Profit (TP) mechanism, allowing for systematic profit-taking at various levels, which optimizes both risk management and return potential in long and short market positions.
BTCUSD 6hr Performance
█ Strategy, How It Works: Detailed Explanation
The Fibonacci ATR Fusion Strategy utilizes a combination of technical indicators and weighted averages to determine optimal entry and exit points. Below is a breakdown of its key components and operational logic.
🔶 1. Enhanced True Range Calculation
The strategy begins by calculating the True Range (TR) to measure market volatility accurately.
TR = max(High - Low, abs(High - Previous Close), abs(Low - Previous Close))
High and Low: Highest and lowest prices of the current trading period.
Previous Close: Closing price of the preceding trading period.
max: Selects the largest value among the three calculations to account for gaps and limit movements.
🔶 2. Buying Pressure (BP) Calculation
Buying Pressure (BP) quantifies the extent to which buyers are driving the price upwards within a period.
BP = Close - True Low
Close: Current period's closing price.
True Low: The lower boundary determined in the True Range calculation.
🔶 3. Ratio Calculation for Different Periods
To assess the strength of buying pressure relative to volatility, the strategy calculates a ratio over various Fibonacci-based timeframes.
Ratio = 100 * (Sum of BP over n periods) / (Sum of TR over n periods)
n: Length of the period (e.g., 8, 13, 21, 34, 55).
Sum of BP: Cumulative Buying Pressure over n periods.
Sum of TR: Cumulative True Range over n periods.
This ratio normalizes buying pressure, making it comparable across different timeframes.
🔶 4. Weighted Average Calculation
The strategy employs a weighted average of ratios from multiple Fibonacci-based periods to smooth out signals and enhance trend detection.
Weighted Avg = (w1 * Ratio_p1 + w2 * Ratio_p2 + w3 * Ratio_p3 + w4 * Ratio_p4 + Ratio_p5) / (w1 + w2 + w3 + w4 + 1)
w1, w2, w3, w4: Weights assigned to each ratio period.
Ratio_p1 to Ratio_p5: Ratios calculated for periods p1 to p5 (e.g., 8, 13, 21, 34, 55).
This weighted approach emphasizes shorter periods more heavily, capturing recent market dynamics while still considering longer-term trends.
🔶 5. Simple Moving Average (SMA) of Weighted Average
To further smooth the weighted average and reduce noise, a Simple Moving Average (SMA) is applied.
Weighted Avg SMA = SMA(Weighted Avg, m)
- m: SMA period (e.g., 3).
This smoothed line serves as the primary signal generator for trade entries and exits.
🔶 6. Trading Condition Thresholds
The strategy defines specific threshold values to determine optimal entry and exit points based on crossovers and crossunders of the SMA.
Long Condition = Crossover(Weighted Avg SMA, Long Entry Threshold)
Short Condition = Crossunder(Weighted Avg SMA, Short Entry Threshold)
Long Exit = Crossunder(Weighted Avg SMA, Long Exit Threshold)
Short Exit = Crossover(Weighted Avg SMA, Short Exit Threshold)
Long Entry Threshold (T_LE): Level at which a long position is triggered.
Short Entry Threshold (T_SE): Level at which a short position is triggered.
Long Exit Threshold (T_LX): Level at which a long position is exited.
Short Exit Threshold (T_SX): Level at which a short position is exited.
These conditions ensure that trades are only executed when clear trends are identified, enhancing the strategy's reliability.
Previous local performance
🔶 7. ATR-Based Take Profit Mechanism
When enabled, the strategy employs a 4-step Take Profit system to systematically secure profits as the trade moves in the desired direction.
TP Price_1 Long = Entry Price + (TP1ATR * ATR Value)
TP Price_2 Long = Entry Price + (TP2ATR * ATR Value)
TP Price_3 Long = Entry Price + (TP3ATR * ATR Value)
TP Price_1 Short = Entry Price - (TP1ATR * ATR Value)
TP Price_2 Short = Entry Price - (TP2ATR * ATR Value)
TP Price_3 Short = Entry Price - (TP3ATR * ATR Value)
- ATR Value: Calculated using ATR over a specified period (e.g., 14).
- TPxATR: User-defined multipliers for each take profit level.
- TPx_percent: Percentage of the position to exit at each TP level.
This multi-tiered exit strategy allows for partial position closures, optimizing profit capture while maintaining exposure to potential further gains.
█ Trade Direction
The Fibonacci ATR Fusion Strategy is designed to operate in both long and short market conditions, providing flexibility to traders in varying market environments.
Long Trades: Initiated when the SMA of the weighted average crosses above the Long Entry Threshold (T_LE), indicating strong upward momentum.
Short Trades: Initiated when the SMA of the weighted average crosses below the Short Entry Threshold (T_SE), signaling robust downward momentum.
Additionally, the strategy can be configured to trade exclusively in one direction—Long, Short, or Both—based on the trader’s preference and market analysis.
█ Usage
Implementing the Fibonacci ATR Fusion Strategy involves several steps to ensure it aligns with your trading objectives and market conditions.
1. Configure Strategy Parameters:
- Trading Direction: Choose between Long, Short, or Both based on your market outlook.
- Trading Condition Thresholds: Set the Long Entry, Short Entry, Long Exit, and Short Exit thresholds to define when to enter and exit trades.
2. Set Take Profit Levels (if enabled):
- ATR Multipliers: Define how many ATRs away from the entry price each take profit level is set.
- Take Profit Percentages: Allocate what percentage of the position to close at each TP level.
3. Apply to Desired Chart:
- Add the strategy to the chart of the asset you wish to trade.
- Observe the plotted Fibonacci ATR and SMA Fibonacci ATR indicators for visual confirmation.
4. Monitor and Adjust:
- Regularly review the strategy’s performance through backtesting.
- Adjust the input parameters based on historical performance and changing market dynamics.
5. Risk Management:
- Ensure that the sum of take profit percentages does not exceed 100% to avoid over-closing positions.
- Utilize the ATR-based TP levels to adapt to varying market volatilities, maintaining a balanced risk-reward ratio.
█ Default Settings
Understanding the default settings is crucial for optimizing the Fibonacci ATR Fusion Strategy's performance. Here's a precise and simple overview of the key parameters and their effects:
🔶 Key Parameters and Their Effects
1. Trading Direction (`tradingDirection`)
- Default: Both
- Effect: Determines whether the strategy takes both long and short positions or restricts to one direction. Selecting Both allows maximum flexibility, while Long or Short can be used for directional bias.
2. Trading Condition Thresholds
Long Entry (long_entry_threshold = 58.0): Higher values reduce false positives but may miss trades.
Short Entry (short_entry_threshold = 42.0): Lower values capture early short trends but may increase false signals.
Long Exit (long_exit_threshold = 42.0): Exits long positions early, securing profits but potentially cutting trends short.
Short Exit (short_exit_threshold = 58.0): Delays short exits to capture favorable movements, avoiding premature exits.
3. Take Profit Configuration (`useTakeProfit` = false)
- Effect: When enabled, the strategy employs a 4-step TP mechanism to secure profits at multiple levels. By default, it is disabled to allow users to opt-in based on their trading style.
4. ATR-Based Take Profit Multipliers
TP1 (tp1ATR = 3.0): Sets the first TP at 3 ATRs for initial profit capture.
TP2 (tp2ATR = 8.0): Targets larger trends, though less likely to be reached.
TP3 (tp3ATR = 14.0): Optimizes for extreme price moves, seldom triggered.
5. Take Profit Percentages
TP Level 1 (tp1_percent = 12%): Secures 12% at the first TP.
TP Level 2 (tp2_percent = 12%): Exits another 12% at the second TP.
TP Level 3 (tp3_percent = 12%): Closes an additional 12% at the third TP.
6. Weighted Average Parameters
Ratio Periods: Fibonacci-based intervals (8, 13, 21, 34, 55) balance responsiveness.
Weights: Emphasizes recent data for timely responses to market trends.
SMA Period (weighted_avg_sma_period = 3): Smoothens data with minimal lag, balancing noise reduction and responsiveness.
7. ATR Period (`atrPeriod` = 14)
Effect: Sets the ATR calculation length, impacting TP sensitivity to volatility.
🔶 Impact on Performance
- Sensitivity and Responsiveness:
- Shorter Ratio Periods and Higher Weights: Make the weighted average more responsive to recent price changes, allowing quicker trade entries and exits but increasing the likelihood of false signals.
- Longer Ratio Periods and Lower Weights: Provide smoother signals with fewer false positives but may delay trade entries, potentially missing out on significant price moves.
- Profit Taking:
- ATR Multipliers: Higher multipliers set take profit levels further away, targeting larger price movements but reducing the probability of reaching these levels.
- Fixed Percentages: Allocating equal percentages at each TP level ensures consistent profit realization and risk management, preventing overexposure.
- Trade Direction Control:
- Selecting Specific Directions: Restricting trades to Long or Short can align the strategy with market trends or personal biases, potentially enhancing performance in trending markets.
- Risk Management:
- Take Profit Percentages: Dividing the position into smaller percentages at multiple TP levels helps lock in profits progressively, reducing risk and allowing the remaining position to ride further trends.
- Market Adaptability:
- Weighted Averages and ATR: By combining multiple timeframes and adjusting to volatility, the strategy adapts to different market conditions, maintaining effectiveness across various asset classes and timeframes.
---
If you want to know more about ATR, can also check "SuperATR 7-Step Profit".
Enjoy trading.
Momentum with ATR and Volatility [ST]Momentum with ATR and Volatility
Description in English:
This indicator combines price momentum with market volatility to identify entry and exit points in trades.
It utilizes the difference in closing prices (momentum) and the Average True Range (ATR) to measure volatility. Buy and sell signals are generated based on the combination of these two components.
Detailed Explanation:
Configuration:
Momentum Length: This input defines the period for calculating the momentum, which is the difference between the closing prices. The default value is 10.
ATR Length: This input defines the period for calculating the Average True Range (ATR), which measures market volatility. The default value is 14.
ATR Threshold: This input defines the threshold multiplier for the ATR to generate buy and sell signals. The default value is 3.5.
Momentum Calculation:
Momentum is calculated as the difference between the current closing price and the closing price momentum_length periods ago.
ATR Calculation:
The ATR is calculated based on the specified length and is used to measure market volatility.
Buy and Sell Signals:
Buy Signal: Generated when momentum is positive, the current close is higher than the previous close, and momentum is greater than ATR * threshold.
Sell Signal: Generated when momentum is negative, the current close is lower than the previous close, and momentum is less than -ATR * threshold.
Plotting:
Buy signals are plotted as green triangles below the bars.
Sell signals are plotted as red triangles above the bars.
Momentum and ATR thresholds are plotted in a separate panel below the main chart.
Momentum is plotted as a blue line.
The ATR threshold lines are plotted as solid orange lines.
Indicator Benefits:
Momentum Measurement: Helps traders gauge the momentum of price movements.
Volatility Measurement: Utilizes ATR to measure market volatility, providing a more comprehensive analysis.
Visual Cues: Provides clear visual signals for buy and sell points, aiding in making informed trading decisions.
Justification of Component Combination:
Combining momentum with ATR provides a more robust measure of potential entry and exit points by considering both price movement and market volatility.
How Components Work Together:
The script calculates momentum and ATR for the specified periods.
It generates buy and sell signals based on the conditions of momentum and ATR.
The signals and values are plotted on the chart to provide a visual representation, helping traders identify potential trading opportunities.
Título: Indicador de Momentum com ATR e Volatilidade
Descrição em Português:
Este indicador combina o momentum do preço com a volatilidade do mercado para identificar pontos de entrada e saída em operações.
Utiliza a diferença entre os preços de fechamento (momentum) e o Average True Range (ATR) para medir a volatilidade. Sinais de compra e venda são gerados com base na combinação desses dois componentes.
Explicação Detalhada:
Configuração:
Comprimento do Momentum: Este parâmetro define o período para calcular o momentum, que é a diferença entre os preços de fechamento. O valor padrão é 10.
Comprimento do ATR: Este parâmetro define o período para calcular o Average True Range (ATR), que mede a volatilidade do mercado. O valor padrão é 14.
Limite do ATR: Este parâmetro define o multiplicador de limite para o ATR para gerar sinais de compra e venda. O valor padrão é 3.5.
Cálculo do Momentum:
O momentum é calculado como a diferença entre o preço de fechamento atual e o preço de fechamento momentum_length períodos atrás.
Cálculo do ATR:
O ATR é calculado com base no comprimento especificado e é usado para medir a volatilidade do mercado.
Sinais de Compra e Venda:
Sinal de Compra: Gerado quando o momentum é positivo, o fechamento atual é maior que o fechamento anterior, e o momentum é maior que ATR * threshold.
Sinal de Venda: Gerado quando o momentum é negativo, o fechamento atual é menor que o fechamento anterior, e o momentum é menor que -ATR * threshold.
Plotagem:
Sinais de compra são plotados como triângulos verdes abaixo das barras.
Sinais de venda são plotados como triângulos vermelhos acima das barras.
O momentum e os limites do ATR são plotados em um painel separado abaixo do gráfico principal.
O momentum é plotado como uma linha azul.
As linhas de limite do ATR são plotadas como linhas laranjas sólidas.
Benefícios do Indicador:
Medição do Momentum: Ajuda os traders a avaliar o momentum dos movimentos de preços.
Medição da Volatilidade: Utiliza o ATR para medir a volatilidade do mercado, proporcionando uma análise mais abrangente.
Sinais Visuais: Fornece sinais visuais claros para pontos de compra e venda, auxiliando na tomada de decisões informadas.
Justificação da Combinação de Componentes:
Combinar o momentum com o ATR fornece uma medida mais robusta de potenciais pontos de entrada e saída ao considerar tanto o movimento dos preços quanto a volatilidade do mercado.
Como os Componentes Funcionam Juntos:
O script calcula o momentum e o ATR para os períodos especificados.
Gera sinais de compra e venda com base nas condições de momentum e ATR.
Os sinais e valores são plotados no gráfico para fornecer uma representação visual, ajudando os traders a identificar oportunidades de negociação potenciais.
ZigZag ATR PctZigZag ATR % Library
A PineScript v6 library for detecting price pivots based on ATR percentage change (volatility shifts) rather than fixed ATR multiples.
How It Works
Traditional ZigZag indicators use a fixed price threshold to detect pivots. This library takes a different approach: pivots are detected when volatility is changing significantly .
The ATR % change measures how much the Average True Range has shifted over a lookback period:
atrPct = 100 * (atr / atr - 1)
Positive ATR % = Volatility expanding (market becoming more volatile)
Negative ATR % = Volatility contracting (market calming down)
Pivots form when |ATR %| exceeds your threshold, capturing turning points during volatility transitions.
Exported Types
Settings - Configuration (ATR length, lookback, threshold, display options)
Pivot - Pivot point data (price, time, direction, volume, ATR %)
ZigZag - Main state container
Exported Functions
newInstance(settings) - Create a new ZigZag instance
update(zz, atr, atrPct) - Update on each bar
getLastPivot(zz) - Get the most recent pivot
getPivot(zz, index) - Get pivot at specific index
getPivotCount(zz) - Get total number of pivots
calcTR() - Calculate True Range
calcATR(length) - Calculate ATR using EMA
calcATRPct(atr, atrPrev) - Calculate ATR % change
calcPricePct(startPrice, endPrice) - Calculate price % change
Usage Example
//@version=6
indicator("My ZigZag", overlay = true)
import DeepEntropy/ZigZagATRPct/1 as zz
// Settings
var zz.Settings settings = zz.Settings.new(
atrLength = 14,
atrLookback = 14,
atrPctThreshold = 5.0,
depth = 10
)
var zz.ZigZag zigZag = zz.newInstance(settings)
// Calculate ATR %
float atr = zz.calcATR(14)
float atrPct = zz.calcATRPct(atr, atr )
// Update
zigZag := zz.update(zigZag, atr, atrPct)
// Access pivots
int count = zz.getPivotCount(zigZag)
if count > 0
zz.Pivot last = zz.getLastPivot(zigZag)
label.new(last.point, text = str.tostring(last.atrPct, "#.##") + "%")
Parameters
ATR Length - Period for ATR calculation (default: 14)
ATR Lookback - Bars to look back for ATR % change (default: 14)
ATR % Threshold - Minimum |ATR %| to trigger pivot detection (default: 5.0)
Depth - Minimum bars between pivots (default: 10)
Use Cases
Identify reversals during volatility regime changes
Filter noise during low-volatility consolidation
Detect breakout pivots when volatility expands
Build volatility-aware trading systems
This library detects when the market's behavior is changing, not just how much price has moved.
BOCS Channel Scalper Strategy - Automated Mean Reversion System# BOCS Channel Scalper Strategy - Automated Mean Reversion System
## WHAT THIS STRATEGY DOES:
This is an automated mean reversion trading strategy that identifies consolidation channels through volatility analysis and executes scalp trades when price enters entry zones near channel boundaries. Unlike breakout strategies, this system assumes price will revert to the channel mean, taking profits as price bounces back from extremes. Position sizing is fully customizable with three methods: fixed contracts, percentage of equity, or fixed dollar amount. Stop losses are placed just outside channel boundaries with take profits calculated either as fixed points or as a percentage of channel range.
## KEY DIFFERENCE FROM ORIGINAL BOCS:
**This strategy is designed for traders seeking higher trade frequency.** The original BOCS indicator trades breakouts OUTSIDE channels, waiting for price to escape consolidation before entering. This scalper version trades mean reversion INSIDE channels, entering when price reaches channel extremes and betting on a bounce back to center. The result is significantly more trading opportunities:
- **Original BOCS**: 1-3 signals per channel (only on breakout)
- **Scalper Version**: 5-15+ signals per channel (every touch of entry zones)
- **Trade Style**: Mean reversion vs trend following
- **Hold Time**: Seconds to minutes vs minutes to hours
- **Best Markets**: Ranging/choppy conditions vs trending breakouts
This makes the scalper ideal for active day traders who want continuous opportunities within consolidation zones rather than waiting for breakout confirmation. However, increased trade frequency also means higher commission costs and requires tighter risk management.
## TECHNICAL METHODOLOGY:
### Price Normalization Process:
The strategy normalizes price data to create consistent volatility measurements across different instruments and price levels. It calculates the highest high and lowest low over a user-defined lookback period (default 100 bars). Current close price is normalized using: (close - lowest_low) / (highest_high - lowest_low), producing values between 0 and 1 for standardized volatility analysis.
### Volatility Detection:
A 14-period standard deviation is applied to the normalized price series to measure price deviation from the mean. Higher standard deviation values indicate volatility expansion; lower values indicate consolidation. The strategy uses ta.highestbars() and ta.lowestbars() to identify when volatility peaks and troughs occur over the detection period (default 14 bars).
### Channel Formation Logic:
When volatility crosses from a high level to a low level (ta.crossover(upper, lower)), a consolidation phase begins. The strategy tracks the highest and lowest prices during this period, which become the channel boundaries. Minimum duration of 10+ bars is required to filter out brief volatility spikes. Channels are rendered as box objects with defined upper and lower boundaries, with colored zones indicating entry areas.
### Entry Signal Generation:
The strategy uses immediate touch-based entry logic. Entry zones are defined as a percentage from channel edges (default 20%):
- **Long Entry Zone**: Bottom 20% of channel (bottomBound + channelRange × 0.2)
- **Short Entry Zone**: Top 20% of channel (topBound - channelRange × 0.2)
Long signals trigger when candle low touches or enters the long entry zone. Short signals trigger when candle high touches or enters the short entry zone. This captures mean reversion opportunities as price reaches channel extremes.
### Cooldown Filter:
An optional cooldown period (measured in bars) prevents signal spam by enforcing minimum spacing between consecutive signals. If cooldown is set to 3 bars, no new long signal will fire until 3 bars after the previous long signal. Long and short cooldowns are tracked independently, allowing both directions to signal within the same period.
### ATR Volatility Filter:
The strategy includes a multi-timeframe ATR filter to avoid trading during low-volatility conditions. Using request.security(), it fetches ATR values from a specified timeframe (e.g., 1-minute ATR while trading on 5-minute charts). The filter compares current ATR to a user-defined minimum threshold:
- If ATR ≥ threshold: Trading enabled
- If ATR < threshold: No signals fire
This prevents entries during dead zones where mean reversion is unreliable due to insufficient price movement.
### Take Profit Calculation:
Two TP methods are available:
**Fixed Points Mode**:
- Long TP = Entry + (TP_Ticks × syminfo.mintick)
- Short TP = Entry - (TP_Ticks × syminfo.mintick)
**Channel Percentage Mode**:
- Long TP = Entry + (ChannelRange × TP_Percent)
- Short TP = Entry - (ChannelRange × TP_Percent)
Default 50% targets the channel midline, a natural mean reversion target. Larger percentages aim for opposite channel edge.
### Stop Loss Placement:
Stop losses are placed just outside the channel boundary by a user-defined tick offset:
- Long SL = ChannelBottom - (SL_Offset_Ticks × syminfo.mintick)
- Short SL = ChannelTop + (SL_Offset_Ticks × syminfo.mintick)
This logic assumes channel breaks invalidate the mean reversion thesis. If price breaks through, the range is no longer valid and position exits.
### Trade Execution Logic:
When entry conditions are met (price in zone, cooldown satisfied, ATR filter passed, no existing position):
1. Calculate entry price at zone boundary
2. Calculate TP and SL based on selected method
3. Execute strategy.entry() with calculated position size
4. Place strategy.exit() with TP limit and SL stop orders
5. Update info table with active trade details
The strategy enforces one position at a time by checking strategy.position_size == 0 before entry.
### Channel Breakout Management:
Channels are removed when price closes more than 10 ticks outside boundaries. This tolerance prevents premature channel deletion from minor breaks or wicks, allowing the mean reversion setup to persist through small boundary violations.
### Position Sizing System:
Three methods calculate position size:
**Fixed Contracts**:
- Uses exact contract quantity specified in settings
- Best for futures traders (e.g., "trade 2 NQ contracts")
**Percentage of Equity**:
- position_size = (strategy.equity × equity_pct / 100) / close
- Dynamically scales with account growth
**Cash Amount**:
- position_size = cash_amount / close
- Maintains consistent dollar exposure regardless of price
## INPUT PARAMETERS:
### Position Sizing:
- **Position Size Type**: Choose Fixed Contracts, % of Equity, or Cash Amount
- **Number of Contracts**: Fixed quantity per trade (1-1000)
- **% of Equity**: Percentage of account to allocate (1-100%)
- **Cash Amount**: Dollar value per position ($100+)
### Channel Settings:
- **Nested Channels**: Allow multiple overlapping channels vs single channel
- **Normalization Length**: Lookback for high/low calculation (1-500, default 100)
- **Box Detection Length**: Period for volatility detection (1-100, default 14)
### Scalping Settings:
- **Enable Long Scalps**: Toggle long entries on/off
- **Enable Short Scalps**: Toggle short entries on/off
- **Entry Zone % from Edge**: Size of entry zone (5-50%, default 20%)
- **SL Offset (Ticks)**: Distance beyond channel for stop (1+, default 5)
- **Cooldown Period (Bars)**: Minimum spacing between signals (0 = no cooldown)
### ATR Filter:
- **Enable ATR Filter**: Toggle volatility filter on/off
- **ATR Timeframe**: Source timeframe for ATR (1, 5, 15, 60 min, etc.)
- **ATR Length**: Smoothing period (1-100, default 14)
- **Min ATR Value**: Threshold for trade enablement (0.1+, default 10.0)
### Take Profit Settings:
- **TP Method**: Choose Fixed Points or % of Channel
- **TP Fixed (Ticks)**: Static distance in ticks (1+, default 30)
- **TP % of Channel**: Dynamic target as channel percentage (10-100%, default 50%)
### Appearance:
- **Show Entry Zones**: Toggle zone labels on channels
- **Show Info Table**: Display real-time strategy status
- **Table Position**: Corner placement (Top Left/Right, Bottom Left/Right)
- **Color Settings**: Customize long/short/TP/SL colors
## VISUAL INDICATORS:
- **Channel boxes** with semi-transparent fill showing consolidation zones
- **Colored entry zones** labeled "LONG ZONE ▲" and "SHORT ZONE ▼"
- **Entry signal arrows** below/above bars marking long/short entries
- **Active TP/SL lines** with emoji labels (⊕ Entry, 🎯 TP, 🛑 SL)
- **Info table** showing position status, channel state, last signal, entry/TP/SL prices, and ATR status
## HOW TO USE:
### For 1-3 Minute Scalping (NQ/ES):
- ATR Timeframe: "1" (1-minute)
- ATR Min Value: 10.0 (for NQ), adjust per instrument
- Entry Zone %: 20-25%
- TP Method: Fixed Points, 20-40 ticks
- SL Offset: 5-10 ticks
- Cooldown: 2-3 bars
- Position Size: 1-2 contracts
### For 5-15 Minute Day Trading:
- ATR Timeframe: "5" or match chart
- ATR Min Value: Adjust to instrument (test 8-15 for NQ)
- Entry Zone %: 20-30%
- TP Method: % of Channel, 40-60%
- SL Offset: 5-10 ticks
- Cooldown: 3-5 bars
- Position Size: Fixed contracts or 5-10% equity
### For 30-60 Minute Swing Scalping:
- ATR Timeframe: "15" or "30"
- ATR Min Value: Lower threshold for broader market
- Entry Zone %: 25-35%
- TP Method: % of Channel, 50-70%
- SL Offset: 10-15 ticks
- Cooldown: 5+ bars or disable
- Position Size: % of equity recommended
## BACKTEST CONSIDERATIONS:
- Strategy performs best in ranging, mean-reverting markets
- Strong trending markets produce more stop losses as price breaks channels
- ATR filter significantly reduces trade count but improves quality during low volatility
- Cooldown period trades signal quantity for signal quality
- Commission and slippage materially impact sub-5-minute timeframe performance
- Shorter timeframes require tighter entry zones (15-20%) to catch quick reversions
- % of Channel TP adapts better to varying channel sizes than fixed points
- Fixed contract sizing recommended for consistent risk per trade in futures
**Backtesting Parameters Used**: This strategy was developed and tested using realistic commission and slippage values to provide accurate performance expectations. Recommended settings: Commission of $1.40 per side (typical for NQ futures through discount brokers), slippage of 2 ticks to account for execution delays on fast-moving scalp entries. These values reflect real-world trading costs that active scalpers will encounter. Backtest results without proper cost simulation will significantly overstate profitability.
## COMPATIBLE MARKETS:
Works on any instrument with price data including stock indices (NQ, ES, YM, RTY), individual stocks, forex pairs (EUR/USD, GBP/USD), cryptocurrency (BTC, ETH), and commodities. Volume-based features require data feed with volume information but are optional for core functionality.
## KNOWN LIMITATIONS:
- Immediate touch entry can fire multiple times in choppy zones without adequate cooldown
- Channel deletion at 10-tick breaks may be too aggressive or lenient depending on instrument tick size
- ATR filter from lower timeframes requires higher-tier TradingView subscription (request.security limitation)
- Mean reversion logic fails in strong breakout scenarios leading to stop loss hits
- Position sizing via % of equity or cash amount calculates based on close price, may differ from actual fill price
- No partial closing capability - full position exits at TP or SL only
- Strategy does not account for gap openings or overnight holds
## RISK DISCLOSURE:
Trading involves substantial risk of loss. Past performance does not guarantee future results. This strategy is for educational purposes and backtesting only. Mean reversion strategies can experience extended drawdowns during trending markets. Stop losses may not fill at intended levels during extreme volatility or gaps. Thoroughly test on historical data and paper trade before risking real capital. Use appropriate position sizing and never risk more than you can afford to lose. Consider consulting a licensed financial advisor before making trading decisions. Automated trading systems can malfunction - monitor all live positions actively.
## ACKNOWLEDGMENT & CREDITS:
This strategy is built upon the channel detection methodology created by **AlgoAlpha** in the "Smart Money Breakout Channels" indicator. Full credit and appreciation to AlgoAlpha for pioneering the normalized volatility approach to identifying consolidation patterns. The core channel formation logic using normalized price standard deviation is AlgoAlpha's original contribution to the TradingView community.
Enhancements to the original concept include: mean reversion entry logic (vs breakout), immediate touch-based signals, multi-timeframe ATR volatility filtering, flexible position sizing (fixed/percentage/cash), cooldown period filtering, dual TP methods (fixed points vs channel percentage), automated strategy execution with exit management, and real-time position monitoring table.






















