Range Bar Gaps DetectorRange Bar Gaps Detector
Overview
The Range Bar Gaps Detector identifies price gaps across multiple range bar sizes (12, 24, 60, and 120) on any trading instrument, helping traders spot potential support/resistance zones or breakout opportunities. Designed for Pine Script v6, this indicator detects gaps on range bars and exports data for use in companion scripts like Range Bar Gaps Overlap, making it ideal for multi-timeframe gap analysis.
Key Features
Multi-Range Gap Detection: Identifies gaps on 12, 24, 60, and 120-range bars, capturing both bullish (gap up) and bearish (gap down) price movements.
Customizable Sensitivity: Includes a user-defined minimum deviation (default: 10% of 14-period SMA) for 12-range gaps to filter out noise.
7-Day Lookback: Automatically prunes gaps older than 7 days to focus on recent, relevant price levels.
Data Export: Serializes up to 10 gaps per range (tops, bottoms, start bars, highest/lowest prices, and age) for seamless integration with overlap analysis scripts.
Debugging Support: Plots gap counts and aggregation data in the Data Window for easy verification of detected gaps.
How It Works
The indicator aggregates price movements to simulate higher range bars (24, 60, 120) from a base range bar chart. It detects gaps when the price jumps significantly between bars, ensuring gaps meet the minimum deviation threshold for 12-range bars. Gaps are stored in arrays, serialized for external use, and pruned after 7 days to maintain efficiency.
Usage
Add to your range bar chart (e.g., 12-range) to detect gaps across multiple ranges.
Use alongside the Range Bar Gaps Overlap indicator to visualize gaps and their overlaps as boxes on the chart.
Check the Data Window to confirm gap counts and sizes for each range (12, 24, 60, 120).
Adjust the "Minimal Deviation (%) for 12-Range" input to control gap detection sensitivity.
Settings
Minimal Deviation (%) for 12-Range: Set the minimum gap size for 12-range bars (default: 10% of 14-period SMA).
Range Sizes: Fixed at 24, 60, and 120 for higher range bar aggregation.
Notes
Ensure the script is published under your TradingView username (e.g., GreenArrow2005) for use with companion scripts.
Best used on range bar charts to maintain consistent gap detection.
For advanced overlap analysis, pair with the Range Bar Gaps Overlap indicator to highlight zones where gaps from different ranges align.
Ideal For
Traders seeking to identify key price levels for support/resistance or breakout strategies.
Multi-timeframe analysts combining gap data across various range bar sizes.
Developers building custom indicators that leverage gap data for advanced charting.
Cerca negli script per "range"
Range Bound Channel Index (RBCI) w/ Expanded Source Types [Loxx]Range Bound Channel Index (RBCI) w/ Expanded Source Types is a reversal and trend indicator. This version includes Bollinger bands to show trend exhaustion
What is Range Bound Channel Index (RBCI)?
Range Bound Channel Index (RBCI) is calculated by using a channel (bandwidth) filter (CF). Channel filter simultaneously fulfills two functions: removes low frequent trend formed by low frequent components of the spectrum; removes high frequency noise formed by the high frequent components of the spectrum.
When RBCI approaches its local maximum the prices approach upper border of the trading channel and when RBCI approach its local minimum the prices approach the lower border of the trading corridor.
Included:
-Toggle on/off bar coloring
-Loxx's Expanded Source Types
Range Action Verification Index (RAVI)Range Action Verification Index (RAVI) indicator script. This indicator was originally developed by Tushar Chande (see his book "Beyond Technical Analysis: How to Develop and Implement a Winning Trading System").
range_statA basic statistic to describe "ranges". There are three inputs:
- short range
- long range
- moving average length
The output is a ratio of the short range to the long range. In the screenshot example, the short range is a single day (bar) and the long range is five days. A value near "1" would mean that every day entirely fills the five day range, and that a consolidation is likely present. A value near 0 would mean that each day fills only a small portion of the five day range, and price is probably "trending".
The moving average length is for smoothing the result (which also lags it of course).
The mean, and +- 2 standard deviations are plotted as fuchsia colored lines.
Range Breakout [sgbpulse]Range Breakout
1. Overview
The "Range Breakout " indicator is a powerful tool designed to identify and visually display price ranges on your chart using pivot points. It dynamically draws two distinct boxes – an External Range and an Internal Range – helping traders pinpoint potential support and resistance zones. Beyond its visual representation, the indicator offers a comprehensive set of 12 unique breakout alerts, providing real-time notifications for significant price movements outside these defined ranges. Additionally, it integrates RSI and MFI metrics for momentum confirmation.
2. How It Works
The indicator operates by identifying pivot points based on user-defined "left" and "right" bar lengths. A high pivot is a bar with a specified number of lower highs both to its left and right, and similarly for a low pivot.
External Range: Calculated using longer pivot lengths (default: 15 bars left, 6 bars right). This range represents broader, more significant price consolidation areas.
Internal Range: Calculated using shorter pivot lengths (default: 4 bars left, 3 bars right). This range captures tighter, more immediate price consolidations within the broader trend.
The External Range will always be greater than or equal to the Internal Range, as it's based on a wider historical context. Both ranges are displayed as transparent boxes on your chart, dynamically adjusting as new pivots are formed.
3. Key Features and Settings
Customizable Pivot Lengths:
External Range (Left/Right Bars): Adjust sensitivity for identifying the broader price range. Longer lengths lead to more stable, but less frequent, range updates.
Internal Range (Left/Right Bars): Adjust sensitivity for the tighter, more immediate price range.
Tool Tips: Minimum 6 bars for the External Range, and minimum 2 bars for the Internal Range.
Customizable Range Colors: Easily change the background colors of the External and Internal Range boxes to match your chart's aesthetic.
Dynamic Range Display: The indicator automatically updates the range boxes as new pivot highs and lows are formed, always presenting the most current valid ranges.
RSI / MFI Settings:
Timeframe Source: Select the timeframe for RSI and MFI calculation.
- Chart: Calculation based on the current chart timeframe.
- Daily: Always calculated based on the daily ("D") timeframe, even if the chart is on a lower timeframe.
RSI Length: Period length for RSI calculation (default: 14).
RSI Overbought Level: Overbought level for RSI (default: 70.0).
RSI Oversold Level: Oversold level for RSI (default: 30.0).
MFI Length: Period length for MFI calculation (default: 14).
MFI Overbought Level: Overbought level for MFI (default: 80.0).
MFI Oversold Level: Oversold level for MFI (default: 20.0).
4. Synergy of Ranges & Breakout Strength
The interaction between the External and Internal Ranges provides deep insights into price movement and breakout strength:
Immediate Direction: The movement of the Internal Range (up or down) indicates the short-term directional bias within the broader framework of the External Range.
Strength Confirmation: A breakout of the External Range, followed by a breakout of the Internal Range, confirms the strength of the move and increases confidence in the breakout.
Strong Momentum ("Leaving" Ranges Behind): When price breaks out with exceptionally strong momentum, it continues to move aggressively and does not immediately form new pivots. In such situations, the existing ranges (External and Internal) remain in place while the candles "leave them behind." A "Full Candle" breakout, where the entire candle moves past both ranges, indicates a particularly powerful and decisive move.
Momentum (RSI / MFI) as Confirmation:
- RSI (Relative Strength Index): Measures the speed and change of price movements. Extreme values (above 70 or below 30) indicate overbought/oversold conditions respectively, confirming strong momentum in a breakout.
- MFI (Money Flow Index): Similar to RSI but incorporates volume. Extreme values (above 80 or below 20) indicate strong money flow in/out, reinforcing breakout confirmation.
- Importance of Confirmation: If a breakout occurs but momentum indicators do not confirm it (for example, an upside breakout while RSI is declining), this could signal weakness in the move and the risk of a false breakout (Fakeout).
5. Visuals
The indicator provides clear visual representations on the chart:
Range Boxes:
Two dynamic boxes are drawn on the chart: one for the External Range and one for the Internal Range.
These boxes update continuously, displaying the current range boundaries based on the latest pivots. They provide an immediate visual indication of support and resistance levels.
RSI/MFI Status Labels:
Small text labels appear to the right of the current bar, vertically centered.
They display the status of RSI and MFI: RSI OB (Overbought), RSI OS (Oversold), MFI OB, MFI OS, along with the exact value.
Important: The labels remain on the chart as long as the condition holds (indicator is above/below the level), unlike alerts which mark a singular crossover event.
Plotting of Key Values:
The indicator plots six invisible series on the chart, primarily to allow the user to view the exact numerical values of:
- The upper and lower bounds of the External Range (External High, External Low).
- The upper and lower bounds of the Internal Range (Internal High, Internal Low).
- The calculated RSI and MFI values (RSI, MFI).
These values are accessible for viewing through TradingView's Data Window and also via the Status Line when hovering over the relevant candle. This enables more precise quantitative analysis of range levels and momentum.
6. Comprehensive Breakout Alerts
The "Range Breakout " indicator provides 12 distinct alert conditions for breakouts, allowing you to select the required level of confirmation for each alert. All alerts are triggered only upon a fully confirmed bar close (barstate.isconfirmed) to minimize false signals and ensure reliability.
All breakout alerts are configured to detect a Crossover/Crossunder of the levels, meaning a specific event where the price moves from one side of the range to the other.
External Range Breakout UP
- Close: Price closes above the External Range.
- Real Body: The entire "real body" of the candle (min of open/close prices) closes above the External Range.
- Full Candle: The entire candle (the lowest point of the candle) closes above the External Range.
External Range Breakout DOWN
- Close: Price closes below the External Range.
- Real Body: The entire "real body" of the candle (max of open/close prices) closes below the External Range.
- Full Candle: The entire candle (the highest point of the candle) closes below the External Range.
Internal Range Breakout UP
- Close: Price closes above the Internal Range.
- Real Body: The "real body" of the candle closes above the Internal Range.
- Full Candle: The entire candle closes above the Internal Range.
Internal Range Breakout DOWN
- Close: Price closes below the Internal Range.
- Real Body: The "real body" of the candle closes below the Internal Range.
- Full Candle: The entire candle closes below the Internal Range.
7. Ideal Use Cases
This indicator is ideal for traders who:
Want to clearly identify and monitor price consolidation zones.
Seek confirmation for breakout strategies across various timeframes.
Require reliable and automated alerts for potential entry or exit points based on range expansion.
8. Complementary Indicator
For even more comprehensive market analysis, we highly recommend using this indicator in conjunction with Market Structure Support & Resistance External/Internal & BoS .
This powerful complementary indicator automatically and accurately identifies significant support and resistance levels by locating high and low pivot points, as well as key Pre-Market High/Low levels. Its strength lies in its dynamic adaptability to any timeframe and asset, providing precise and relevant real-time levels while maintaining a clean chart. It also identifies Break of Structure (BoS) to signal potential trend changes or continuations.
Using both indicators together provides a robust framework for identifying defined ranges and potential trend shifts, enabling more informed trading decisions.
View Market Structure Support & Resistance External/Internal & BoS Indicator
9. Important Note: Trading Risk
This indicator is intended for educational and informational purposes only and does not constitute investment advice or a recommendation for trading in any form whatsoever.
Trading in financial markets involves significant risk of capital loss. It is important to remember that past performance is not indicative of future results. All trading decisions are your sole responsibility. Never trade with money you cannot afford to lose.
Range Identifier [LazyBear] ---- May 05 2015 -----
Added support for filtered ranges:
RID V3 : pastebin.com
RIDv3 has full backward compatibility (!?), meaning all my descriptions below still apply for V3.
-- In addition, I have added a NON-OVERLAY mode, which can be put in its own pane, that shows the number of bars in the current range.
-- in Overlay mode, you can switch on/off filtering ranges based on the bar count.
Sample chart:
---- April 30 2015 -----
Updated the source to show a connected Midline only when ConnectRanges option is enabled.
Updated src: pastebin.com
Sample chart:
---- Original Desc ----
This is a simple indicator that highlights the price ranges. Very helpful in determining a breakout.
There are many ways to incorporate this in to your strategy. One simple idea could be to buy if the price breaks above a range, when above the specified EMA, and to SELL when it breaks down from a range below the EMA.
All options are configurable. Alerts can be setup using the specified plot names.
By default it shows only the ranges, but can be configured to show the full "channel". Chart below shows connected ranges with highlights ON.
Range highlighting can be turned OFF. Chart below shows that:
Note for the pine coders:
As you probably noticed in the charts above, single range is showing 2 colors(red/green). Fill() doesn't accept a series for colors, so I worked around this using two fill() statements with a moving DUMMY line, to get this mixed color effect.
List of my public indicators: bit.ly
List of my app-store indicators: blog.tradingview.com
Range Detect SystemTechnical analysis indicator designed to identify potential significant price ranges and the distribution of volume within those ranges. The system helps traders calculate POC and show volume history. Also detecting breakouts or potential reversals. System identifies ranges with a high probability of price consolidation and helps screen out extreme price moves or ranges that do not meet certain volatility thresholds.
⭕️ Key Features
Range Detection — identifies price ranges where consolidation is occurring.
Volume Profile Calculation — indicator calculates the Point of Control (POC) based on volume distribution within the identified range, enhancing the analysis of market structure.
Volume History — shows where the largest volume was traded from the center of the range. If the volume is greater in the upper part of the range, the color will be green. If the volume is greater in the lower part, the color will be red.
Range Filtering — Includes multi-level filtering options to avoid ranges that are too volatile or outside normal ranges.
Visual Customization — Shows graphical indicators for potential bullish or bearish crossovers at the upper and lower range boundaries. Users can choose the style and color of the lines, making it easier to visualize ranges and important levels on the chart.
Alerts — system will notify you when a range has been created and also when the price leaves the range.
⭕️ How it works
Extremes (Pivot Points) are taken as a basis, after confirming the relevance of the extremes we take the upper and lower extremes and form a range. We check if it does not violate a number of rules and filters, perform volume calculations, and only then is the range displayed.
Pivot points is a built-in feature that shows an extremum if it has not been updated N bars to the left and N bars to the right. Therefore, there is a delay depending on the bars specified to check, which allows for a more accurate range. This approach allows not to make unnecessary recalculations, which completely eliminates the possibility of redrawing or range changes.
⭕️ Settings
Left Bars and Right Bars — Allows you to define the point that is the highest among the specified number of bars to the left and right of this point.
Range Logic — Select from which point to draw the range. Maximums only, Minimums only or both.
Use Wick — Option to consider the wick of the candles when identifying Range.
Breakout Confirmation — The number of bars required to confirm a breakout, after which the range will close.
Minimum Range Length — Sets the minimum number of candles needed for a range to be considered valid.
Row Size — Number of levels to calculate POC. *Larger values increase the script load.
% Range Filter — Dont Show Range is than more N% of Average Range.
Multi Filter — Allows use of Bollinger Bands, ATR, SMA, or Highest-Lowest range channels for filtering ranges based on volatility.
Range Hit — Shows graphical labels when price hits the upper or lower boundaries of the range, signaling potential reversal or breakout points.
Range Start — Show points where Range was created.
Range Breakout [BigBeluga]Range Breakout is a dynamic channel-based indicator designed to identify breakout opportunities and price reactions within defined ranges. It automatically creates upper and lower bands with a midline, helping traders spot breakout zones, retests, and potential fakeouts.
🔵 Key Features:
Dynamic Channel Formation:
Automatically plots upper and lower channel bands with a midline based on ATR calculations.
Channels adjust upon breakout events or after a predefined number of bars to reflect new price ranges.
Breakout Detection:
Green circles appear when price breaks above the upper channel edge.
Red circles appear when price breaks below the lower channel edge.
A new channel is formed after each breakout, allowing traders to monitor evolving price ranges.
Retest Signals:
Upward-pointing green triangles signal a retest of the lower band, indicating potential support.
Downward-pointing red triangles indicate a retest of the upper band, suggesting possible resistance.
Filter Signals by Trends (New Feature):
Optional toggle to filter ▲ and ▼ signals based on channel breakout conditions.
When enabled:
In a bullish channel (confirmed by a green circle breakout), only ▲ signals are displayed.
In a bearish channel (confirmed by a red circle breakout), only ▼ signals are displayed.
Helps traders align retest signals with the prevailing trend for higher-quality trade setups.
Fakeout Identification:
'X' symbols appear when price breaks the upper or lower edge of the channel and quickly returns back inside.
Helps traders identify and avoid false breakouts.
🔵 Usage:
Breakout Trading: Use the green and red circle signals to identify potential breakout trades.
Retest Confirmation: Look for triangle markers to confirm retests of key levels, aiding in entry or exit decisions.
Fakeout Alerts: Utilize the 'X' signals to spot and avoid potential trap moves.
Dynamic Range Monitoring: Stay aware of changing market conditions with automatically updating channels.
Range Breakout is an essential tool for traders seeking to capitalize on range breakouts, retests, and fakeout scenarios. Its dynamic channels and clear visual signals provide a comprehensive view of market structure and potential trade setups.
Range Detector [LuxAlgo]The Range Detector indicator aims to detect and highlight intervals where prices are ranging. The extremities of the ranges are highlighted in real-time, with breakouts being indicated by the color changes of the extremities.
🔶 USAGE
Ranging prices are defined by a period of stationarity, that is where prices move within a specific range.
Detecting ranging markets is a common task performed manually by traders. Price breaking one of the extremities of a range can be indicative of a new trend, with an uptrend if price breaks the upper range extremity, and a downtrend if price breaks the lower range extremity.
Ranges are highlighted as zones and are set retrospectively, that is the starting point of a range is offset in the past. The exact moment a range is detected is highlighted by a gray background color. The average between the maximum/minimum of a zone is also highlighted as a dotted line and is also set retrospectively.
The range extremities are set in real-time, blue extremities indicate the range extremities were not broken, green extremities indicate that price broke the upper range extremity, while red extremities indicate price broke the lower range extremity.
Extremities are extended until a new range is detected, allowing past ranges extremities can be used as future support/resistances.
🔶 DETAILS
The detection algorithm used to detect ranges tests if all the prices within a user-set window are all within two extremities. These extremities are determined by the mean of the detection window plus/minus an ATR value.
When a new range is detected, the script checks if this new range overlaps with a previously detected range, if this is the case, both ranges are merged into one; updating the extremities of the previous range.
This can be observed with the real-time extremities changing within a highlighted zone.
🔶 SETTINGS
Minimum Range Length: Minimum amount of bars needed to detect a range.
Range Width: Multiplicative factor for the ATR used to detect new ranges. Lower values detect ranges with a lower width. Using higher values might return false positives.
ATR Length: ATR length used to determine the range width.
Range Analysis - By LeviathanThe Interactive Range Analysis script is an essential tool for analyzing price ranges. It automatically draws important range levels, generates a Volume Profile or Open Interest profile and horizontal/vertical heatmaps, plots the anchored VWAP, draws Fibonacci levels, and much more.
How to use the indicator:
1. The script will prompt you to select the "Start Time" and "End Time" using Tradingview's interactive interface. These two points will determine the length of the range.
2. Once you have selected the range, the script will automatically anchor the range highs and lows to the highest and lowest close/wick/hlc3/ohlc4 (whichever you prefer).
3. You can then begin exploring different tools and options such as Quarters, Eighths, Fibonacci, Outer Levels, VWAP, Horizontal Volume/OI Heatmap, Vertical Volume/OI Heatmap, Fixed Range Volume Profile, Open Interest Profile, Value Area, VAH, VAL, and POC.
4. You can adjust the range by dragging the Start Time and End Time anchors or by removing/reapplying the script.
Tool overview
Range Levels
After selecting your preferred time range, the script will identify and draw a range high level and a range low level, which serve as a base for other important levels. “Half” is the level halfway between the range high and range low. “Quarters” will, as the name suggests, split the range into four equal zones (quarters) and “Eighths” will split the range into eight equal zones (eighths).
”Fibonacci” option allows you to display Fibonacci retracement levels (0.786, 0.618, 0.382, 0.236). “VWAP” will plot a Volume Weighted Average Price, anchored to the start of the range. “Direction” input lets you choose whether your range is UP or DOWN trending in order to make sure that the Fibonacci levels and labels are generated and assigned correctly. With “Outer” turned ON, the script will also generate active levels (quarters/eighths/Fibonacci) above and below the selected price range. “Extend Right” will extend all levels to the right indefinitely, while “Extend (+Bars)” lets you choose how far right the levels get extended. “Diagonal Line” is drawn from the bottom left of the range to the top right of the range or from the top left of the range to the bottom right of the range, depending on the “Direction” input.
Volume Profile / Open Interest Profile
After selecting the “Data Type”, Volume Profile or OI Profile can be generated by turning ON the “Volume/OI Profile” option.
“Resolution” input defines the amount of nodes/rows in the range that are used in profile/heatmap generation for distributing the data. While you can increase the “Resolution” to get better, more granular profiles, you should keep in mind that you might need to lower the resolution when generating profiles for larger ranges.
”Node Type” offers you two options when it comes to the representation of data: Up/Down - divides a node in two sections for up volume/OI and down volume/OI, Total - one node for total volume/OI and Delta - net difference in up volume/OI and down volume/OI.
”Profile Position” lets you choose whether the profile is positioned on the left side of the range or on the right side of the range.
“Profile Direction” determines whether the profile nodes are facing right or left.
“Profile Type” enables you to visualize the nodes in a classic way (Type 1) or in a way where down volume/negative OI are positioned on the left side of the y axis and up volume/positive OI on the right side of the y axis.
“Node Size (%)” defines how much space in the range can be taken by the profile’s nodes. Eg. 50% will allow the largest node to extend to the middle of the range (and others scaled accordingly), 100% will allow the largest node to extend the max right point of the range (and others scaled accordingly).
”Value Area (%)” defines the VA zone, which represents the area where the most volume occured (usually 70% or 68%).
”Horizontal Heatmap” will display a heatmap-like overlay, that will help you identify the price levels where most volume/open interest action occurred.
”Vertical Heatmap” will display a heatmap-like overlay, that will help you identify the points in time where most volume/open interest action occurred.
A more detailed description of this indicator is coming in the next few days.
Important:
* If volume or OI profile does not get generated, try lowering the resolution.
* Once in a while, the script will disappear from your chart. Just remove and reapply.
* Open Interest data is only avaiable on Binance Perpetual Futures pairs
To learn more, read the tooltips in the indicator’s settings and stay tuned for upcoming additions (Range Market Structure, Liquidation Levels, Range Statistics,…)
Range-AnalysisMarkets usually tend to stay within a range during a specific time frame (for example first hour of the regular trading session, the whole regular trading session). For traders before initiating a trade it can be helpful to determine the range potential left for the targeted time frame. So they can decide to either try to ride the current trend further or fade the current trend in the case there is no range potential left for the specific time frame. This could be especially helpful for example in the E-Mini S&P future during the first hour.
The script calculates the average range for the last x days of the session defined and plots a line at the expected range extremes based on that average (for example: RangeExtremeHigh would be currentSessionLow+average Range of the last x days.
Any feedback is appreciated.
Range Finder [UAlgo]🔶 Description:
The "Range Finder " indicator aims at identifying and visualizing price ranges within a specified number of candles. By utilizing the Average True Range (ATR) indicator and Simple Moving Average (SMA), it detects potential breakout conditions and tracks consecutive candles that remain within the breakout range. This indicator offers flexibility by allowing users to customize settings such as range length, method for determining range breaks (based on either candle close or wick), and visualization options for displaying range breaks on the chart.
🔶 Key Features
Identifying Ranges: The Range Finder automatically adapts to the market by continuously evaluating the Average True Range (ATR) and its Simple Moving Average (SMA). This helps in dynamically adjusting the range based on market volatility.
Range Length: Users can specify the number of candles to be used for constructing the range via the "Range Length" input setting. This allows for customization based on trading strategies and preferences.
Range Break Method: The indicator offers the flexibility to choose between two methods for identifying range breaks. Users can select between "Close" or "Wick" based on their preference for using the closing price or the highs and lows (including wicks) of candles for defining the breakout.
Show Range Breaks: This option enables visual representation of range breaks on the chart. When activated, labels with the letter "B" will appear at the breakout point, colored according to the breakout direction (upward breakouts in the chosen up range color and downward breakouts in the chosen down range color).
Range Color Customization: The indicator provides the ability to personalize the visual appearance of the range by selecting preferred colors for ranges indicating potential upward and downward breakouts.
🔶 Disclaimer
It's important to understand that the Range Finder indicator is intended for informational purposes only and should not be solely relied upon for making trading decisions. Trading financial instruments involves inherent risks, and past performance is not necessarily indicative of future results.
Range identifier by medianThis study tries to highlight ranges
as they are defined by
TradingLatino TradingView user.
The study uses median values.
A range is defined as periods when the price does not move a lot.
Its default values are aimed at BTCUSDT pair and 4h timeframe.
HOW IT WORKS
For each of the bars a '5' median is calculated based on the 'highest of open and close'
For each of the bars a '5' median is calculated based on the 'lowest of open and close'
Thanks to the desviation setting both medians
have a tolerated maximum and a minimum
Condition 1:
The bar current 'highest of open and close'
needs to be between the respective tolerated
maximum and minimum
Condition 2:
The bar current 'lowest of open and close'
needs to be between the respective tolerated
maximum and minimum
If both conditions are met
then the bar is in a range
SETTINGS
Price range periods : How many previous periods are used to calculate the medians
Price range maximum desviation (%) ( > 0 ): Maximum positive desviation for range detection
Price range minimum desviation (%) ( > 0 ): Mininum negative desviation for range detection
Desviations should be both of them a positive number
WARNING
Despite the name indicator does not identify the entire range.
It identifies when you realise you are inside a range.
E.g. If a range length is 8 periods length this range indicator
will highlight only the last 6 periods of the range.
USAGE
If your strategy signals you an upwards trend
then you might use this range detector
to know when to exit your long position
Why?
Because most of the times
the price is found to be
in a range it goes down
FEEDBACK 1
My former attempt on calculating ranges
felt too much over complex that is why
I decided to implement it with medians.
It should be easier to modify if
I want to desviation inputs to be calculated
automatically in the future.
I'm interested on different approaches on how to detect ranges.
FEEDBACK 2
I have only used this identifier in BTCUSDT 4h timeframe.
Feel free to comment down below with your suggested settings
for your favourite pair and timeframe
PINE SCRIPT TRICK
This script simulates looping an string char by char
in pine script.
Range identifier by angleThis study tries to highlight ranges
as they are defined by
TradingLatino TradingView user.
A range according to its definition would consist of
periods when the price does not move a lot.
It's aimed at BTCUSDT pair and 4h timeframe.
HOW IT WORKS
Price source is the middle between open and close values.
For each of the bars a '5' periods regression line is calculated
The regression line has an angle with the 0-axis line
which might be between 0 and 90.
0 angle would mean price is always the same
90 angle would mean price going to infinity
When '2' of those periods in a row
have their angles between a maximum angle
and a minimum angle then you have the range
SETTINGS
Price range bar periods : How many previous periods are used to calculate the bar regression line
Price range range periods : How many periods in a row should be used to say that there is a range
Price range maximum angle ( < 90.0 !!! ): Maximum angle for range detection
Price range minimum angle ( > -90.0 !!! ): Mininum angle for range detection
Angles should be set from -89.99 for the minimum angle to +89.99 for the maximum angle
WARNING
Despite the name indicator does not identify the entire range.
It identifies when you realise you are inside a range.
E.g. If a range length is 8 periods length this range indicator
will highlight only the last 6 periods of the range.
USAGE
If your strategy signals you an upwards trend
then you might use this range detector
to know when to exit your long position
Why?
Because most of the times
the price is found to be
in a range it goes down
FEEDBACK 1
I'm quite sure this range approach by comparing angles is a novel one.
I have checked Range Identifier script from TradingView LazyBear user
and it uses another approach.
I'm interested on different approaches on how to detect ranges.
FEEDBACK 2
I have only used this identifier in BTCUSDT 4h timeframe.
I'm interested to know if applying it more traditional
stocks the degrees need to be adjusted to something
more smaller.
PINE SCRIPT TRICK
This script simulates looping an string char by char
in pine script.
CREDITS
I have reused and adapted some code from
'TF Segmented Linear Regression' script
which it's from TradingView alexgrover user.
Ranges and Breakouts [AlgoAlpha]💥 Ranges and Breakouts by AlgoAlpha is a dynamic indicator designed for traders seeking to identify market ranges and capitalize on breakout opportunities. This tool automatically detects ranges based on price action over a specified period, visualizing these ranges with shaded boxes and midlines, making it easy to spot potential breakout scenarios. The indicator includes advanced features such as customizable pivot detection, internal range allowance, and automatic trend color changes for quick market analysis.
Key Features
💹 Dynamic Range Detection : Automatically identifies market ranges using customizable look-back and confirmation periods.
🎯 Breakout Alerts : Get alerted to bullish and bearish breakouts for potential trading opportunities.
📊 Visual Aids : Displays pivot highs/lows within ranges and plots midlines with adjustable styles for easier market trend interpretation.
🔔 Alerts : Signals potential take-profit points based on volatility and moving average crossovers.
🎨 Customizable Appearance : Choose between solid, dashed, or dotted lines for midlines and adjust the colors for bullish and bearish zones.
How to Use
⭐ Add the Indicator : Add the indicator to favorites by pressing the star icon. Adjust the settings like the look-back period, confirmation length, and pivot detection to match your trading strategy.
👀 Monitor the Chart : Watch for new ranges to form, highlighted by shaded boxes on the chart. Midlines and range bounds will appear to help you gauge potential breakout points.
⚡ React to Breakouts : Pay attention to color changes and alert signals for bullish or bearish breakouts. Use these signals to enter or exit trades.
🔔 Set Alerts : Customize alert conditions for new range formations, breakout signals, and take-profit levels to stay on top of market movements without constant monitoring.
How It Works
The indicator detects price ranges by analyzing the highest and lowest prices over a specified period. It confirms a range if these levels remain unchanged for a set number of bars, at which point it visually marks the range with shaded boxes. Pivots are identified within these ranges, and a midline is plotted to help interpret potential breakouts. When price breaks out of these defined ranges, the indicator changes the chart's background color to signal a bullish or bearish trend. Alerts can be set for range formation, breakouts, and take-profit opportunities, helping traders stay proactive in volatile markets.
Range Filter [DW]This is an experimental study designed to filter out minor price action for a clearer view of trends.
Inspired by the QQE's volatility filter, this filter applies the process directly to price rather than to a smoothed RSI.
First, a smooth average price range is calculated for the basis of the filter and multiplied by a specified amount.
Next, the filter is calculated by gating price movements that do not exceed the specified range.
Lastly the target ranges are plotted to display the prices that will trigger filter movement.
Custom bar colors are included. The color scheme is based on the filtered price trend.
Range H/L Buy and Sell SignalThe "Range H/L Buy and Sell Signal" indicator is designed to identify potential buy and sell signals based on a specified price range and market volatility. This indicator can be used in the TradingView platform to assist traders in making informed decisions.
The indicator allows customization of several parameters to adapt to different trading strategies. These parameters include the start and end times for the price range, the volatility threshold, and the desired breakout conditions.
To begin, the indicator calculates the range start and end timestamps based on the provided hours and minutes. This defines the time period within which the indicator will analyze price movements.
Next, the indicator determines the highest high (High) and lowest low (Low) within the specified price range. These levels represent the upper and lower boundaries of the range and act as potential breakout points.
Volatility is also taken into account to filter out false signals. The indicator calculates the true range and the average true range over a period of 14 bars. The true range measures the price range from the current high to low, while the average true range provides an indication of market volatility.
Based on the breakout conditions and the volatility threshold, buy and sell signals are generated. A buy signal occurs when the closing price crosses above the High and the true range is greater than the volatility threshold multiplied by the average true range. Conversely, a sell signal is triggered when the closing price crosses below the Low and the true range exceeds the volatility threshold multiplied by the average true range.
The indicator visually displays the High and Low levels as plotted lines on the chart. Additionally, it marks the buy signals with green labels labeled "BUY" below the corresponding bars and the sell signals with red labels labeled "SELL" above the bars.
It is important to note that this indicator should be used in conjunction with other technical analysis tools and indicators for comprehensive market analysis. Trading always carries risks, and it is crucial to exercise caution and conduct thorough analysis before making any trading decisions.
Divergent Trades LLC:
Disclaimer: The information provided by the Divergent Trades LLC indicator is for educational and informational purposes only. It should not be considered financial advice or a recommendation to buy, sell, or trade any financial instrument. Divergent Trades LLC is not responsible for any losses incurred as a result of using this indicator. Trading in the financial markets carries a high level of risk and may not be suitable for all investors. Before making any investment decisions, please consult with a financial advisor and do your own due diligence. Past performance is not indicative of future results. By using the Divergent Trades LLC indicator, you acknowledge that you have read and understand this disclaimer and agree to its terms and conditions.
Range Breakout Statistics [Honestcowboy]
⯁ Overview
The Range Breakout Statistics uses a very simple system to detect ranges/consolidating markets. The principle is simple, it looks for areas where the slope of a moving average is flat compared to past values. If the moving average is flat for X amount of bars that's a range and it will draw a box.
The statistics part of the script is a bit more complicated. The aim of this script is to expand analysis of trading signals in a different way than a regular backtest. It also highlights the polyline tool, one of my favorite drawing tools on the tradingview platform.
⯁ Statistics Methods
The script has 2 different modes of analyzing a trading signals strength/robustness. It will do that for 2 signals native to the script.
Upper breakout: first price breakout at top of box, before max bars (100 bars by default)
Lower breakout: first price breakout at bottom of box, before max bars
The analysis methods themselves are straightforward and it should be possible for tradingview community to expand this type of analysis to other trading signals. This script is a demo for this analysis, yet some might still find the native signals helpful in their trading, that's why the script includes alerts for the 2 native signals. I've also added a setting to disable any data gathering, which makes script run faster if you want to automate it.
For both of the analysis methods it uses the same data, just with different calculations and drawing methods. The data set is all past price action reactions to the signals saved in a matrix. Below a chart for explaining this visually.
⯁ Method 1: Averages Projection
The idea behind this is that just showing all price action that happened after signal does not give actionable insights. It's more a spaghetti jumble mess of price action lines. So instead the script averages the data out using 3 different approaches, all selectable in the settings menu.
Geometric Average: useful as it accurately reflects compound returns over time, smoothing out the impact of large gains or losses. Accounts for volatility drift.
Arithmetic Average: a standard average calculation, can be misleading in trading due to volatility drift. It is the most basic form of averaging so I included it.
Median: useful as any big volatility huge moves after a signal does not really impact the mean as it's just the middle value of all values.
These averages are the 2 lines you will find in the middle of the projection. Having a clear difference between a lower break average and upper break average price reaction can signal significance of the trading signal instead of pure chaos.
Outside of this I also included calculations for the maximum and minimum values in the dataset. This is useful for seeing price reactions range to the signal, showing extreme losses or wins are possible. For this range I also included 2 matrices of highs and lows data. This makes it possible to draw a band between the range based on closing price and the one using high/low data.
Below is a visualisation of how the averages data is shown on chart.
⯁ Method 2: Equity Simulation
This method will feel closer to home for traders as it more closely resembles a backtest. It does not include any commissions however and also is just a visualisation of price reaction to a signal. This method will simulate what would happen if you would buy at the breakout point and hold the trade for X amount of bars. With 0 being sell at same bar close. To test robustness I've given the option to visualise Equity simulation not just for 1 simulation but a bunch of simulations.
On default settings it will draw the simulations for 0 bars holding all the way to 10 bars holding. The idea behind it is to check how stable the effect is, to have further confirmation of the significance of the signal. If price simulation line moves up on average for 0 bars all the way to 10 bars holding time that means the signal is steady.
Below is a visualisation of the Equity Simulation.
⯁ Signal filtering
For the boxes themselves where breakouts come from I've included a simple filter based on the size of the box in ATR or %. This will filter out all the boxes that are larger top to bottom than the ATR or % value you setup.
⯁ Coloring of Script
The script includes 5 color themes, each carefully created using color themes from the pantone color institute. There are no color settings or other visual settings in the script, the script themes are simple and always have colors that work well together. Equity simulation uses a gradient based on lightness to color the different lines so it's easier to differentiate them while still upper breaks having a different color than lower breaks.
This script is not created to be used in conjunction with other scripts, it will force you into a background color that matches the theme. It's purpose is a research tool for systematic trading, to analyse signals in more depth.
Metaverse color theme:
⯁ Conclusion
I hope this script will help traders get a deeper understanding of how different assets react to their assets. It should be possible to convert this script into other signals if you know how to code on the platform. It is my intention to make more publications that include this type of analysis. It is especially useful when dealing with signals that do not happen often enough, so a regular backtest is not enough to test their significance.
Range DetectionThis is a simple indicator to find the sideways market or ranging market.
It is mainly focused on BTCUSD as BTCUSD doesn’t make big moves each and every candle. It makes big breakouts with one candle and then goes sideways for a longer period of time.
So, this indicator identifies those big candles and plots high and lows of those big candles using lines. New range is created only when new candles close above or below previous major candles high or low.
Range Filter Buy and Sell 5min - guikroth versionRange Filter Buy and Sell 5min - the @guikroth version, republished.
Since this popular version of the Range Filter is no longer available via the original author, I republish it here under the same name.
This version remains true to the guikroth version from the calculations to the default settings and comments in the code, with the exception of an update to the latest version of PineScript, minor styling adjustments and the addition of an all-in-one 'buy or sell' alert option.
The guikroth version was a simplified modification of the original Range Filter by @DonovanWall .
Including having just 3 bar colours based on the filtered price trend, different source input options to the original, and the addition of buy and sell signals and alerts based upon the Range Filter colour change. It consisted of just three inputs; source, sampling period, and range multipler. With the update to version 5, external indicators can also be used as inputs, for example using a VWAP or EMA loaded on your chart as the input on the Range Filter is now also possible.
What is the Range Filter?
As the author of the original Range Filter describes it:
"This is an experimental study designed to filter out minor price action for a clearer view of trends. Inspired by the QQE's volatility filter, this filter applies the process directly to price rather than to a smoothed RSI .
First, a smooth average price range is calculated for the basis of the filter and multiplied by a specified amount.
Next, the filter is calculated by gating price movements that do not exceed the specified range.
Lastly the target ranges are plotted to display the prices that will trigger filter movement.
Custom bar colors are included. The color scheme is based on the filtered price trend."
Popularity of the Range Filter
The Range Filter is a very popular and effective indicator in its own right, with adjustments to the few simple settings it is possible to use the Range Filter for helping filter price movement, whether helping to determine trend direction or ranges, to timing breakout or even reversal entries. Its practical versatility makes it ideal for integrating it's signals into a variety of trading strategies or even other indicators.
With many thanks to the authors of the previous and original versions; @guikroth and @DonovanWall .
Range CandlesAn easy-peasy way to replace OHLC bars with candles on Range Bars chart. For further improvement you could also make "Up Bars" and "Down Bars" colors transparent (open Range Bars chart settings, do the change and save as default).
Compare
Range BreakerStrategy Description: Range Breaker
The Range Breaker strategy is a breakout trading strategy that aims to capture profits when the price of a financial instrument moves out of a defined range. The strategy identifies swing highs and swing lows over a specified lookback period and enters long or short positions when the price breaks above the swing high or below the swing low, respectively. It also employs stop targets based on a percentage to manage risk and protect profits.
Beginner's Guide:
Understand the concepts:
a. Swing High: A swing high is a local peak in price where the price is higher than the surrounding prices.
b. Swing Low: A swing low is a local trough in price where the price is lower than the surrounding prices.
c. Lookback Period: The number of bars or periods the strategy analyzes to determine swing highs and swing lows.
d. Stop Target: A predetermined price level at which the strategy will exit the position to manage risk and protect profits.
Configure the strategy:
a. Set the initial capital, order size, commission, and pyramiding as needed for your specific trading account.
b. Choose the desired lookback period to identify the swing highs and lows.
c. Set the stop target multiplier and stop target percentage as desired to manage risk and protect profits.
Backtest the strategy:
a. Set the backtest start date to analyze the strategy's historical performance.
b. Observe the backtesting results to evaluate the strategy's effectiveness and adjust the parameters if necessary.
Implement the strategy:
a. Apply the strategy to your preferred financial instrument on the TradingView platform.
b. Monitor the strategy's performance and adjust the parameters as needed to optimize its effectiveness.
Risk management:
a. Always use a stop target to protect your trading capital and manage risk.
b. Don't risk more than a small percentage of your trading capital on a single trade.
c. Be prepared to adjust the strategy or stop trading it if the market conditions change significantly.
Adjusting the Lookback Period and Timeframes for Optimal Strategy Performance
The Range Breaker strategy uses a lookback period to identify swing highs and lows, which serve as the basis for determining entry and exit points for long and short positions. By adjusting the lookback period and analyzing different timeframes, you can potentially find the best strategy configuration for each specific asset.
Adjusting the lookback period:
The lookback period is a critical parameter that affects the sensitivity of the strategy to price movements. A shorter lookback period will make the strategy more sensitive to smaller price fluctuations, resulting in more frequent trading signals. On the other hand, a longer lookback period will make the strategy less sensitive, generating fewer signals but potentially capturing larger price movements.
To optimize the lookback period for a specific asset, you can test different lookback values and compare their performance in terms of risk-adjusted returns, win rate, and other relevant metrics. Keep in mind that using an overly short lookback period may lead to overtrading and increased transaction costs, while an overly long lookback period may cause the strategy to miss profitable trading opportunities.
Analyzing different timeframes:
Timeframes refer to the duration of each bar or candlestick on the chart. Shorter timeframes (e.g., 5-minute, 15-minute, or 30-minute) focus on intraday price movements, while longer timeframes (e.g., daily, weekly, or monthly) capture longer-term trends. The choice of timeframe affects the number of trading signals generated by the strategy and the length of time each position is held.
To find the best strategy for each asset, you can test the Range Breaker strategy on different timeframes and analyze its performance. Keep in mind that shorter timeframes may require more active monitoring and management due to the increased frequency of trading signals. Longer timeframes, on the other hand, may require more patience as positions are held for extended periods.
Finding the best strategy for each asset:
Every asset has unique price characteristics that may affect the performance of a trading strategy. To find the best strategy for each asset, you should:
a. Test various lookback periods and timeframes, observing the strategy's performance in terms of profitability, risk-adjusted returns, and win rate.
b. Consider the asset's historical price behavior, such as its volatility, liquidity, and trend-following or mean-reverting tendencies.
c. Evaluate the strategy's performance during different market conditions, such as bullish, bearish, or sideways markets, to ensure its robustness.
d. Keep in mind that each asset may require a unique set of strategy parameters for optimal performance, and there may be no one-size-fits-all solution.
By experimenting with different lookback periods and timeframes, you can fine-tune the Range Breaker strategy for each specific asset, potentially improving its overall performance and adaptability to changing market conditions. Always practice proper risk management and be prepared to make adjustments as needed.
Remember that trading strategies carry inherent risk, and past performance is not indicative of future results. Always practice proper risk management and consider your own risk tolerance before trading with real money.