Volatility Range Breakout Strategy [wbburgin]The "Volatility Range Breakout Strategy" uses deviations of high-low volatility to determine bullish and bearish breakouts.
HOW IT WORKS
The volatility function uses the high-low range of a lookback period, divided by the average of that range, to determine the likelihood that price will break in a specific direction.
High and low ranges are determined by the relative volatility compared to the current closing price. The high range, for example, is the (volatility * close) added to the close, the low range is this value subtracted by the close.
A volatility-weighted moving average is taken of these high and low ranges to form high and low bands.
Finally, breakouts are identified once the price closes above or below these bands. An upwards breakout (bullish) occurs when the price breaks above the upper band, while a downwards breakout (bearish) occurs when the price breaks below the lower band. Positions can be closed either by when the price falls out of its current band ("Range Crossover" in settings under 'Exit Type') or when the price falls below or above the volatility MA (default because this allows us to catch trends for longer).
INPUTS/SETTINGS
The AVERAGE LENGTH is the period for the volatility MA and the weighted volatility bands.
The VOLATILITY LENGTH is how far the lookback should be for highs/lows for the volatility calculation.
Enjoy! Let me know if you have any questions.
Cerca negli script per "range"
Zazzamira 50-25-25 Trend System Alerts OnlyPublishing my trading system script. It consist of several conditions to happen in order to open a trade. Work best on ES/MES 5 minute timeframe.
I like to use it with this settings:
- UTC -6 (don't tick Exchange Timezone)
and rest as default
To enter a trade, the following conditions must be met: Entry 1: the opening range (8:30AM - 9:15AM UTC-6) must be defined and the price must close above or below the opening range on the 5-minute timeframe. This entry condition defines the trade direction (above = long / below = short). Once the opening range is defined, the Trend-Based Fib Extension is applied from the range high to the range low (and vice versa). Fib levels are required for Exit conditions. Entry 2: the 8 - 27 - 67 - 97 EMAs must be defined. If the EMAs value order is 8 > 27 > 67 > 97, long-only trades are allowed. If the EMAs value order is 8 < 27 < 67 < 97, short-only trades are allowed. This entry condition filters fake breakouts of Entry 1. Entry 3: no trades are allowed after 12:59 UTC-6 (2PM EST). Entry 4: if Entry 1, Entry 2, and Entry 3 conditions are valid and the price hasn't reached the 23.6% Fib line, an entry order can be set at the range high/long with 4 contracts. To exit a trade, the following conditions must be met: Exit 1 (Stop loss): set a trailing stop based on 2.1x ATR (14) from entry. Exit 2: take 50% profits at the 23.6% Fib and leave trailing stop untouched. Exit 3: if Exit 2 triggers, take 50% (25% of total entry) off at 61.8% Fib, leaving Exit 2 trailing stop values valid. Exit 4: exit the full position at the FIB 100% value. Exit 5: all trades must be closed at 3pm UTC-6 (4PM EST). So basically Take Profit are 50%-25%-25% of position.
Code has been written by © Hiubris_Indicators who has been an amazing coder and gave me the possibility to make this script public so a really big shoutout to him.
This indicator only works for alerts, please check version without alerts to backtest or tweaks. This indicator is meant to be used to automate the system via webhooks
Rescaled RangeRescaled Range is an implementation of the fractal rescaled ranges developed by Harold Edwin Hurst and Benoit Mandlebrot.
Settings include:
“Window Size” - the number of time periods in a window over which price changes are analyzed. This will generally correspond to your trading horizon and defaults to 15.
“Number of Windows” - the number of “Window Size” intervals to average the rescaled range value over. By looking at a number of such periods, the study captures potential volatility that may have occurred in the recent past. This should be set long enough to capture the current trend (defaults to 63), but not so long to include volatility regimes no longer in play.
Each window in the average is offset by 1 time period from the the others - like a moving average.
This study plots two lines - “Rescaled Range High” which indicates overbought conditions when the price moves above it and “Rescaled Range Low” which indicates oversold conditions when the price moves below it.
This study builds upon the bridge range work of Joe Catanzaro (joecat808) and Caleb Sandfort (calebsandfort). Bridge ranges are used to position the rescaled range with respect to the closing price.
Note: Your time series must have (Window Size + Number of Windows) or more periods of data to complete this study. For example, using the defaults, your time series should have (15+63) = 78 periods or more of data.
Expected Range and SkewThis is an open source and updated version of my previous "Confidence Interval" script. This script provides you with the expected range over a given time period in the future and the skew of that range. For example, if you wanted to know the expected 1 standard deviation range of MSFT over the next 20 days, this will tell you that. Additionally, this script will also tell you the skew of the expected range.
How to use this script:
1) Enter the length, this will determine the number of data points used in the calculation of the expected range.
2) Enter the amount of time you want projected forward in minutes, hours, and days.
3) Input standard deviation of the expected range.
4) Pick the type of data you want shown from the dropdown menu. Your choices are either the expected range or the skew of the expected range.
5) Enter the x and y coordinates of the label (optional). This is useful so it doesn't impede your view of the plot.
Here are a few notes about this script:
First, the expected range line gives you the width of said range (upper bound - lower bound), and the label will tell you specifically what the upper and lower bounds of the expected range are.
Second, this script will work on any of the default timeframes, but you need to be careful with how far out you try to project the expected range depending on the timeframe you're using. For example, if you're using the 1min timeframe, it probably won't do you any good trying to project the expected range over the next 20 days; or if you're using the daily timeframe it doesn't make sense to try to project the expected range for the next 5 hours. You can tell if the time horizon you're trying to project doesn't work well with the chart timeframe you're using if the current price is outside of either the upper or lower bounds provided in the label. If the current price is within the upper and lower bounds provided in the label, then the time horizon that you're projecting over is reasonable for the chart timeframe you're using.
Third, this script does not countdown automatically, so the time provided in the label will stay the same. For example, in the picture above, the expected range of Dow Futures over the next 23 days from January 12th, 2021 is calculated. But when tomorrow comes it won't count down to 22 days, instead it will show the range over the next 23 days from January 13th, 2021. So if you want the time horizon to change as time goes on you will have to update this yourself manually.
Lastly, if you try to set an alert on this script, you will get a warning about it possibly repainting. This is because of the label, not the plot itself. The label constantly updates itself, which triggers the warning. I tested setting alerts on this script both with and without the inclusion of the label, and without the label the repainting warning did not occur. So remember, if you set an alert on this script you will get a warning about it possibly repainting, but this is because of the label constantly updating, not the plot itself.
Candle Range Detector by TradeTech AnalysisCandle Range Detector by TradeTech Analysis
This advanced indicator identifies and visualizes price compression zones based on inside bar formations, then tracks how price behaves around those zones — offering valuable insights into liquidity sweeps, range expansions, and trap/mitigation behavior.
The script builds upon the foundational concept of range-based price action, commonly used by institutional traders, and adds automation, mitigation tracking, and sweep detection to map how price reacts around these critical ranges.
🔍 How It Works:
• Range Formation: A new range is detected when the current candle forms entirely within the high and low of the previous candle (i.e., an inside bar). This behavior often indicates price compression and potential breakout zones.
• Range Extension: Once a range is confirmed, the script projects upper and lower boundaries (using either a percentage-based multiplier or Fibonacci log extension), providing context for expected breakout zones.
• Mitigation Tracking: The script continuously monitors whether price breaks above or below the projected extensions, marking that range as mitigated — useful for confirming whether liquidity was absorbed.
• Sweep Detection: If price re-visits a mitigated zone and shows signs of a liquidity sweep (via wick + close behavior), the indicator triggers visual sweep labels and optional alerts.
🧠 Optional Visual Enhancements:
• Highlight range-forming candles with light blue background (toggle on/off)
• Midpoint dotted line for symmetry analysis
• Labels for “Range High” and “Range Low” for visual clarity
• Dynamic box drawing that adapts upon mitigation or continuation
⚙️ Customizable Features:
• Choose between Normal and Fibonacci-based detection modes
• Toggle visibility of range boxes, extension lines, and sweep markers
• Configure sweep alerts, mitigation window size, and visual transparency
⸻
🧪 Use Cases
• Identify consolidation zones before major price moves
• Confirm liquidity sweeps for entry/exit traps
• Visualize and test mitigation behavior of past zones
• Combine with Order Flow or Volume Profile tools to enhance context
⸻
⚠️ This is a fully original implementation that goes beyond classical inside-bar scanners by incorporating mitigation, extension projection, and liquidity sweeps — making it a powerful tool for intraday, swing, and even Smart Money-based trading setups.
Average Daily Range ProjectionsCreates a trailing high and low projection based on the Average Daily Range.
Track the Session High and Low to determine the Daily Range.
Average the Daily Range by a fixed Period to create an Average Daily Range .
Track the Prior Daily Range .
Track the Current Daily Range .
Track the % of Range completion relative to the CDR & ADR(P).
From the Session Low, project an Average Daily Range High by adding the ADR.
From the Session High, project an Average Daily Range Low by subtracting the ADR.
When %R reaches 100% or greater, the ADR HI & LO will lock, showing the range break out or break down. As the Session High and Low create the Daily Range, observe the reaction of price as it reaches the limit of the expected daily range.
On strongly trending days, CDR is likely greater than PDR and ADR(P). Price can break away.
On ranging days, %R may fail to reach 100% and CDR may be lesser than PDR and ADR(P). Price can bounce around within the bounds of ADR HI & LO.
Unmitigated 50% of the RangeThis indicator is designed to display unmitigated 50% zones of price ranges within two swing (High and Low) points. The 50% level serves as a probable target for retracements before the price resumes its movement in the direction of the most recent swing. The underlying theory is that Price Action tends to correct unbalanced price zones by returning to 50% of the range.
The indicator identifies highs and lows utilizing the “Left Swing Sensitivity” setting, which detects the high/low points within the specified number of bars. It then ensures that the zone meets a minimum size requirement, configured via the “Minimum Leg Size” setting, to filter out smaller legs/zones that would not provide sufficient profit and loss opportunities for entries at 50% and take profit at the most recent swing point.
To prevent duplication of zones when the price is gradually moving up, an "Auto Adjust Levels" setting is available. Enabled by default, this feature automatically cleans up smaller zones, retaining only the primary zone between the most recent swing point and the outer swing.
Additionally, the indicator automatically removes mitigated zones where the price has returned to the 50% level, thus maintaining clean charts.
There are several visualization settings available, offering comprehensive control over what is displayed on the charts:
Control the color and style of the lines representing the 1, 0, and 50% levels.
Choose whether to display labels and if they should show the price at the rendered levels.
Optionally extend the lines/labels to the right for each level.
Market Open Range Breakaway v1.2Script Name: Market Open Range Breakaway 1.2
This TradingView script, "Market Open Range Breakaway," highlights the market's opening range for a user-selected day of the week. It calculates the high and low prices during a specified period after the market opens, plots these levels, and tracks the opening price. The script dynamically adjusts for time zones and only displays data during market hours on the chosen day, with optional background shading for the defined range period.
Purpose: Identifies and highlights the market's opening range for a selected day of the week.
Features: Calculates and plots the high, low, and open price during the market's opening range.
Configurable range duration (e.g., 15, 30, or 60 minutes).
Automatically adjusts for different time zones.
Displays levels only during market hours on the target day.
Optional background shading for the opening range.
Inputs: Target day of the week.
Opening range duration.
Use Case: Ideal for traders looking to analyze breakout levels or price movements around the opening range.
Multi-Timeframe RangeThe Multi-Timeframe Range Indicator is designed for traders looking to monitor key price levels across various timeframes (Daily, Weekly, Monthly, Quarterly, and Yearly) directly on their charts. This indicator draws boxes and mid-lines for each timeframe’s high, low, and midpoint, enabling users to visualize price ranges and assess potential areas of support and resistance more effectively.
Features:
Dynamic Range Boxes: Displays the high, low, and midpoint levels for each specified timeframe, with customizable colors for easy differentiation.
Visual Cues for Monday’s Levels: Highlights Monday’s high, low, and midpoint levels each week to support intraday trading setups and weekly trend analysis.
Multi-Timeframe Flexibility: Easily toggle between timeframes to view ranges from daily to yearly, making this indicator suitable for both short-term and long-term traders.
Ideal Use Cases:
Identify key support and resistance zones based on multiple timeframes.
Assess weekly and monthly trends using the Monday range levels.
Gain insights into market structure across various timeframes.
Advanced Technical Range and Expectancy Estimator [SS]Hello everyone,
This indicator is a from of momentum based probability modelling. It is derived from my own approaches to probability modelling but just simplified a bit.
How it works:
The indicator looks at various technical, including stochastics, RSI, MFI and Z-Score, to determine the likely sentiment. All of these, with the exception of Z-Score, are momentum based indicators and can alert us to likely sentiment. However, instead of us making the subjective determination ourselves as to whether the RSI or MFI or Stochastics are bullish, the indicator will look at previous instances of these occurrences, and tally the bullish and bearish follow throughs that happened. It will also calculate the average target price that was hit, under similar conditions, on the same timeframe.
The Z-Score is your "tie breaker". It is not a momentum based indicator and measures something a little different (the standard deviation and over-extension of the stock). For this reason, it provides an alternative assessment and tends to be a bit more reliable in times of low momentum.
Back-test Results:
The indicator back-tests itself over the previous 100 candles. I have limited it to 100 candles for pragmatic considerations (it has to back-test each technical individually and increasing the BT length will slow and potentially error out the indicator) as well as accuracy considerations.
One thing I have noticed in my years of trying to crack the code and develop probability models for tickers, is historical accuracy doesn't always matter because sentiment is always changing. You need to see what it has done over the most recent 100 to 200 candles.
There are two back-test windows, one for the price targets and the other for the sentiment accuracy. The most effective/most accurate will highlight green, the least effective/least accurate will highlight red:
In the image above, you can see that the most accurate predictor of sentiment is Z-Score, with a 90.32% accuracy rate over the past 100 candles.
The most accurate predictor of price is MFI, with a 60% (for bull targets) and 42% (for bear targets)accuracy rate.
Anchoring Points:
The indicator permits you to anchor by two points. The default setting is anchoring by previous candle. If you plan to use this as an oscillator, to see the current prediction for the current candle you are viewing, then you will need to leave this default setting. It will pull the data from the previous candle and give you the data for the current candle you are on.
If you are assess the likely sentiment for the next day after the day has closed off, you will want to anchor by current candle. This will take the current technicals that the day has closed off with and run the assessment for you.
Customizability
You can customize the technicals by source and length of assessment.
They are all defaulted to the traditional settings of these indicators, but if you want to customize your model to try and improve or enhance accuracy in one way or another, you are free and able to do so!
I do suggest leaving the defaults as they seem to work particular well :-).
Thresholds
Thresholds are the tolerance levels that we permit for our technical search range. If you want them to be exactly identical, then you can set it to 0. If you want it to be extremely similar, you can set it to 0.01. This will hone in on the ranges you are interest in and you can see how it affects your accuracy by reviewing the results in the back-test tables.
Keep Static Colour Option
I want to make a quick note on the "Keep Static Colour" option that is in your settings menu.
The primary table that shows you the probability and price targets change colours based on the accuracy of the assessment. This is so, if you are using a mobile device or smaller screen and can't have the back-test results open at the same time, you can see still which are the most reliable results. However, if you have the back-test tables open and you find these colour changes too distracted, you can toggle on the "Keep Static Colour" and it will resort the colour of the table to a solid white:
Show Technicals
The indicator can show you the current technical values if you are using it in place of an oscillator. Its less pivotal as its making the assessment for you, but just for your reference if you want to see what the current MFI, Z-Score or Stochastics etc. are, you have that option as well.
All Timeframes Permitted
You can view Weekly, Monthly, Hourly, 5 minute, 1 minute, its all supported!
That's the indicator in a nutshell.
Hope you enjoy and leave your questions below.
Safe trades everyone!
ADR % RangesThis indicator is designed to visually represent percentage lines from the open of the day. The % amount is determined by X amount of the last days to create an average...or Average Daily Range (ADR).
1. ADR Percentage Lines: The core function of the script is to apply lines to the chart that represent specific percentage changes from the daily open. It first calculates the average over X amount of days and then displays two lines that are 1/3rd of that average. One line goes above the other line goes below. The other two lines are the full "range" of the average. These lines can act as boundaries or targets to know how an asset has moved recently. *Past performance is not indicative of current or future results.
The calculation for ADR is:
Step 1. Calculate Today's Range = DailyHigh - DailyLow
Step 2. Store this average after the day has completed
Step 3. Sum all day's ranges
Step 4. Divide by total number of days
Step 5. Draw on chart
2. Customizable Inputs: Users have the flexibility to customize the script through various inputs. This includes the option to display lines only for the current trading day (`todayonly`), and to select which lines are displayed. The user can also opt to show a table the displays the total range of previous days and the average range of those previous days.
3. No Secondary Timeframe: The ADR is computed based on whatever timeframe the chart is and does not reference secondary periods. Therefore the script cannot be used on charts greater than daily.
This script is can be used by all traders for any market. The trader might have to adjust the "X" number of days back to compute a historical average. Maybe they only want to know the average over the past week (5 days) or maybe the past month (20 days).
Narrow Range StrategyNarrow Range Strategy :
INTRODUCTION :
This strategy is based on the Narrow Range Day concept, implying that low volatility will generate higher volatility in the days ahead. The strategy sends us buy and sell signals with well-defined profit targets. It's a medium/long-term strategy. There's also a money management method that allows us to reinvest part of the profits or reduce the size of orders in the event of substantial losses.
NARROW RANGE (NR) DAY :
A Narrow Range Day is a day in which price variations are included in those of a specific day some time before. The high and low of this specific day form the "reference range". In general, we compare these variations with those of 4 or 7 days ago. The mathematical formula for finding an NR4 is :
If low > low(4) and high < high(4) :
nr = true
This implies that the current low is greater than the low of 4 days ago, and the current high is smaller than the high of 4 days ago. So today's volatility is lower than that of 4 days ago, and may be a sign of high volatility to come.
PARAMETERS :
Narrow Range Length : Corresponds to the number of candles back to compare current volatility. The default is 4, allowing comparison of current volatility with that of 4 candles ago.
Stop Loss : Percentage of the reference range on which to set an exit order to limit losses. The minimum value is 0.001, while the maximum is 1. The default value is 0.35.
Fixed Ratio : This is the amount of gain or loss at which the order quantity is changed. The default is 400, which means that for each $400 gain or loss, the order size is increased or decreased by an amount chosen by the user.
Increasing Order Amount : This is the amount to be added to or subtracted from orders when the fixed ratio is reached. The default is $200, which means that for every $400 gain, $200 is reinvested in the strategy. On the other hand, for every $400 loss, the order size is reduced by $200.
Initial capital : $1000
Fees : Interactive Broker fees apply to this strategy. They are set at 0.18% of the trade value.
Slippage : 3 ticks or $0.03 per trade. Corresponds to the latency time between the moment the signal is received and the moment the order is executed by the broker.
Important : A bot was used to test NR4 and NR7 with all possible Stop Losses in order to find out which combination generates the highest return on BITSTAMP:ETHUSD while limiting the drawdown. This strategy is the most optimal with an NR4 and a SL of 35% of the reference range size in 5D timeframe.
BUY AND SHORT SIGNALS :
When an NR is spotted, we create two stop orders on the high and low of the reference range. As soon as there's a breakout from this reference range (shown in blue on the chart), we open a position. We're LONG if there's a breakout on the high and SHORT if there's a breakout on the low. Executing a stop order cancels the second stop order.
RISK MANAGEMENT :
This strategy is subject to losses. We manage our risk with Stop Losses. The user is free to enter a SL as a percentage of the reference range. The maximum amount risked per trade therefore depends on the size of the range. The larger the range, the greater the risk. That's why we have set a maximum Stop Loss to 10% to limiting risks per trade.
The special feature of this strategy is that it targets a precise profit objective. This corresponds to the size of the reference range at the top of the high if you're LONG, or at the bottom of the low if you're short. In the same way, the larger the reference range, the greater the potential profits.
The risk reward remains the same for all trades and amounts to : 100/35 = 2.86. If the reference range is too high, we have set a SL to 10% of the trade value to limit losses. In that case, the risk reward is less than 2.86.
MONEY MANAGEMENT :
The fixed ratio method was used to manage our gains and losses. For each gain of an amount equal to the value of the fixed ratio, we increase the order size by a value defined by the user in the "Increasing order amount" parameter. Similarly, each time we lose an amount equal to the value of the fixed ratio, we decrease the order size by the same user-defined value. This strategy increases both performance and drawdown.
NOTE :
Please note that the strategy is backtested from 2017-01-01. As the timeframe is 5D, this strategy is a medium/long-term strategy. That's why only 37 trades were closed. Be careful, as the test sample is small and performance may not necessarily reflect what may happen in the future.
Enjoy the strategy and don't forget to take the trade :)
20/200MAs+LTF+4HTF and HighLowBox+3HTF20/200MAs
Shows 20 and 200 MAs in each TFs(tfChart,1 Lower and 4 Higher).
TFs:
current TF
Lower TF (default: lower1)
Higher TF1 (default: higher1)
Higher TF2 (default: higher1)
Higher TF3 (default: higher1)
Higher TF4 (default: higher1)
MAs:
20MA (default: sma)
1st 200MA (default: sma)
2nd 200MA (default: ema)
VWAP (optional)
HighLowBox+3HTF
Enclose in a square high and low range in each timeframe.
Shows price range and duration of each box.
In current timeframe, shows Fibonacci Scale inside(23.6%, 38.2%, 50.0%, 61.8%, 76.4%)/outside of each box.
Outside(161.8%,261.8,361.8%) would be shown as next target, if break top/bottom of each box.
1st box for current timeframe.
2nd box for higher timeframe.(default: higher1)
3rd box for higher timeframe.(default: higher2)
4th box for higher timeframe.(default: higher3)
static timeframes can also be used.
HighLowBox 1+3TF Enclose in a square high and low range in each timeframe.
Shows price range and duration of each box.
In current timeframe, shows Fibonacci Scale inside(23.6%, 38.2%, 50.0%, 61.8%, 76.4%)/outside of each box.
Outside(161.8%,261.8,361.8%) would be shown as next target, if break top/bottom of each box.
1st box for current timeframe.(default: Chart)
2nd-4th box for higher timeframes.(default: higher1,higher2,higher3)
static timeframes can also be used.
NSDT Regular CandlesWhen using Range charts on TradingView, the only candle appearance option is "Range Bars", which are those little thin ones that can be hard to see.
So I made this candle indicator that can be used to plot Regular Candles over the Range Bars for a standard view.
Here is the same chart - only showing the original Range Bars
Stockbee Momentum BurstThis is a script to color code bars based on the bullish- and bearish combination.
Bullish Combination
Percent: Price >= 4% from yesterday and Volume today > Yesterday
Dollar: Price >= 0.9 dollar from open
Base Requirements
- Price > Yesterday's close
- Price > Open
- Price is within 30% of high
- Todays price range >= Yesterdays price range
- Yesterday's move <= 2%
- Volume >= 100 000
Bearish Combination
Percent: Price <= 4% from yesterday and Volume today > Yesterday
Dollar: Price <= 0.9 dollar from open
Base Requirements
- Price < Yesterday's close
- Price < Open
- Price is within 30% of low
- Todays price range >= Yesterdays price range
- Yesterday's move >= -2%
- Minimum volume for each of last 3 days >= 100 000
Momentum Filter
These are based on the 10 and 20 EMA crossover, where the former above would indicate upward momentum and below downward momentum. This can help to narrow down the color code to continuation phases. The linked option will override all other momentum filters, bullish candles will be displayed when EMA 10 > 20 and bearish candles when EMA 10 < 20.
ATR+ Advanced Sessions ATR for DaterangeATR+ Advanced Sessions ATR for Daterange
The ATR+ adds the following additional filters to the stock ATR indicator by Tradingview:
- Calculates the overall average ATR for a user defined daterange, optionally filtered by trading session and selected weekdays, presented as a secondary line over the standard ATR line.
- Basic ATR line, with colour highlight to indicate the selected sessions, days and timeframe being calculated by the average ATR+ line.
- Average ATR+ line indicating the average of all ATRs within the defined timeframe, optionally filtered by instances of a selected trading session and selected weekdays.
- Customisable appearance.
- The ATR+ also includes the basic ATR configuration options typically found in the standard ATR by Tradingview, including period length and smoothing type. Defaults are set to the factory standards: 14 length, RMA smoothing type.
What Is the Average True Range (ATR)?
The ATR is a technical analysis tool that measures market volatility by decomposing the entire range asset price for that period. Investopedia describes the ATR as follows:
"The average true range (ATR) is a technical analysis indicator, introduced by market technician J. Welles Wilder Jr. in his book New Concepts in Technical Trading Systems, that measures market volatility by decomposing the entire range of an asset price for that period.
The true range indicator is taken as the greatest of the following: current high less the current low; the absolute value of the current high less the previous close; and the absolute value of the current low less the previous close. The ATR is then a moving average, generally using 14 days, of the true ranges."
For more information on the ATR and its calculations and use cases, see here:
Investopedia link here.
Tradingview link here.
Note
The indicator may time out if the number of bars being calculated is too long. If this happens, you will need to reduce the datetime range, or increase the chart timeframe in order to reduce the number of bars being calculated and the indicator will attempt to recalculate.
Dual Fibonacci Zone & Ranged Vol DCA Strategy - R3c0nTraderWhat does this do?
This is for educational purposes and allows one to backtest two Fibonacci Zones simultaneously. This also includes an option for Ranged Volume as a parameter.
Pre-requisites:
First off, this is a Long only strategy as I wrote it with DCA in mind. It cannot be used for shorting. Shorting defeats the purpose of a DCA bot which has a goal that is Long a position not Short a position. If you want to short, there are plenty of free scripts out there that do this.
You must have some base knowledge or experience with Fibonacci trading, understanding what is ADX, +DI (and -DI), etc.
You can use this script without a 3Commas account and see how 3Commas DCA Bot would perform. However, I highly recommend inexperienced uses get a free account and going through the tutorials, FAQ's and knowledgebase. This would give you a base understanding of the settings you will see in this strategy and why you will need to know them. Only then should you try testing this strategy with a paper bot.
Background
After I had created and released "Fibonacci Zone DCA Strategy", I began expanding and testing other ideas.
The first idea was to add Ranged Volume to the Fibonacci Zone DCA strategy which I wanted for providing further confirmation before entering a trade. The second idea was to add a second Fibonacci Zone that was just as configurable as the first Fibonacci Zone. I managed to add both and they can be easily enabled or disabled via the strategy settings menu.
Things Got Real Interesting
Things got real interesting when I started testing strategies with two Fibonacci zones. Here's a quick list of what I found I was able to do:
Mix and match exit strategies. I could set the Fib-1 zone strategy to exit with a take profit % and separately set the Fib-2 zone strategy to exit when the price crosses the top-high fib border
Trade the trend. A common phrase amongst traders is "the Trend is your friend" and with the help of an additional Fib Zone, I was able to trade the trend more often by using two different Fib Zone strategies which if configured properly can shorten time to re-deploy capital, increase number of closed trades, and in some cases increase net profit.
Trade both bull market uptrends and bear market downtrends in the same strategy. I found I could configure one Fib Zone strategy to be really good in uptrends and another Fib Zone strategy to be really good in downtrends. In some cases, with both Fib Zone strategies enabled together in a single strategy I got better results than if the strategies were backtested separately.
There are many other trade strategies I am finding with this. One could be to trade a convergence or divergence of the two different Fib Zones. This could possibly be achieved by setting one strategy to have different Fibonacci length.
Credits:
Thank you "EvoCrypto" for granting me permission to use "Ranged Volume" to create this strategy
Thank you "eykpunter" for granting me permission to use "Fibonacci Zones" to create this strategy
Thank you "junyou0424" for granting me permission to use "DCA Bot with SuperTrend Emulator" which I used for adding bot inputs, calculations, and strategy
Consolidation Ranges [kingthies] Consolidation Range Analysis
Published by Eric Thies, January 2021
█ Indicator Summary
This tool calculates, analyzes and plots the visualization of a relative range over a given period of time
By adding to charts, users are enabled to see the impulsive nature of market cycles, along with their efforts to consolidate thereafter
The default period is 30, and should be adjusted to users preference
The default input is the current close price, on the chosen timeframe of the chart
█ Script Source
//
//@version=4
//© kingthies || This source code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
study("Consolidation Ranges ", shorttitle="CR ", overlay=true)
// !<------ User Inputs ----->
src = input(close, title='Range Input (Default set to Close'), lengthEMA=input(30,title='Length'),zoneToggle = input(true, title="Toggle Zone Highlights"), iCol = color.new(#FFFFFF, 100),
// !<---- Declarations & Calculations ---- >
trndUp = float(na),trndDwn = float(na), mid = float(na), e = ema(src, lengthEMA)
trndUp := src < nz(trndUp ) and src > trndDwn ? nz(trndUp ) : high, trndDwn := src < nz(trndUp ) and src > trndDwn ? nz(trndDwn ) : low, mid := avg(trndUp, trndDwn)
// !< ---- Plotting ----->
highRange = plot(trndUp == nz(trndUp ) ? trndUp : na, color=color.white, linewidth=2, style=plot.style_linebr, title="Top of Period Range")
lowRange = plot(trndDwn == nz(trndDwn ) ? trndDwn : na, color=color.white, linewidth=2, style=plot.style_linebr, title="Bottom of Period Range")
xzone = plot(zoneToggle ? src > e ? trndDwn : trndUp : na, color=iCol, style=plot.style_circles, linewidth=0, editable=false)
fill(highRange, xzone, color=color.lime,transp=70), fill(xzone, lowRange, color=color.red,transp=70)
//
Volume Range EventsChanges in the feelings (positive, negative, neutral) in the market concerning the valuation of an instrument are often preceded with sudden outbursts of buying and selling frenzies. The aim of this indicator is to report such outbursts. We can see them as expansions of volume, sometimes 10 times more than usual. and as extensions of the trading range, also sometimes 10 times more than usual (e.g. usual range is 10 cent suddenly a whole dollar.) The changes are calculated in such a way that these fit between plus and minus 100 percent, the bars are scaled in some sort of logarithmic way. The Emoline is the same as the one in the True Balance of Power indicator, which I already published
ONLY RISES ARE EVENTS
Sometimes analysts are tempted to give meaning to low volume or small ranges. These simply mean that the market has little interest in trading this instrument. I believe that in such cases the trader needs to wait for expansion and extension events to happen, then he can make a better guess of where the market is heading. As events often mark the beginning or ending of a trend, this indicator provides an early and clear signal, because it doesn’t bother us about non-events.
WHAT IS USUAL?
If the algorithm would use an average as a normal to scale volume or range events, then previous peaks will act as spoilers by making the average so high that a following peak is scaled too small. I developed a function, usual() , that kicks out all extremes of a ‘population of values’ and which returns the average of the non-extreme values. It can be called with any serial. This function is called by both algorithms that report volume and range peaks, which guarantees that the results are really comparable. As this function has a fixed look back of 8 periods, we might state that ‘usual’ is a short lived relative value. I think this doesn’t matter for the practical use of the indicator.
COLORING AND INTERPRETATION
I follow the categories in the ‘Better Volume Indicator’, published by LeazyBear, these are:
1. Climactic Volumes, event >40 % (this means peak is 1.5 X usual)
LIME: Climax Buying Volume, direction up, range event also > 30 %
RED: Climax Selling Volume, direction down, range event also > 30 %
AQUA: Climax Churning Volume, both directions, range event < 30%
2. Smaller Volumes, event <40 %
GREEN: Supportive Volume, both directions, if combined with range event
BLUE: Churning Volume, both directions, if not combined with range event (Professional Trading)
3. Just Range Events
BLACK histogram bars (Amateurish Trading)
Opening Range with Breakouts & Targets + Retest AlertsOpening Range with Breakouts & Targets + Retest Alerts
Opening Range Breakout strategy with custom sessions, breakout signals, dynamic targets, and smart retest alerts. Perfect for intraday traders seeking precision entries and high-probability setups.
This advanced ORB tool brings precision and flexibility to your trading by combining the Opening Range Breakout concept with retest confirmation, dynamic target projections, and custom session control.
Why Traders Love This Script
✅ High-Probability Setups – Breakouts with confirmation retests are statistically stronger.
✅ Custom Session Flexibility – Adapt the opening range to any market (Stocks, Forex, Crypto).
✅ Dynamic Targets – Automatically projected based on range size for clear profit objectives.
✅ Smart Alerts – Never miss a breakout retest opportunity with Unified Alert Conditions.
Features You’ll Get
✔ Opening Range Box – Marks the range for your selected timeframe or custom session.
✔ Breakout Arrows – Instant visual confirmation of bullish and bearish breakouts.
✔ Daily Bias Filter – Optional directional filter for higher accuracy.
✔ Dynamic Targets – Adaptive or extended display of projected targets.
✔ Retest Detection – Alerts when price retests the breakout zone after a breakout.
✔ Full Customization – Colors, text size, line styles, target styles, and more.
How to Use It
Set Your Opening Range – Default: 30 minutes after session open or choose a custom range.
Look for Breakouts – Signals appear when price closes beyond the range.
Wait for Retest – For higher confidence, enter on retest signals (green/red dots).
Manage Risk with Targets – Use dynamic target levels to plan your exits.
Pro Tip
Combine this indicator with EMA trend filters, VWAP, or volume confirmation for maximum precision.
Alerts
✅ Unified Break & Retest Alert – Fires when price successfully retests after a breakout, signaling a potential high-probability trade.
⚠ Disclaimer: This tool is for educational purposes only. Always use proper risk management and confirm with your own analysis before trading.
NFP RangesPlots the NFP daily ranges for NFP days. Includes extended hours ranges when the time frame is sub 1D, otherwise, only the daily range is taken.
NFP Dates are pre-populated through 2029 and historically through 2022. Will update script to include farther-out dates before they become necessary.
Euclidean Range [InvestorUnknown]The Euclidean Range indicator visualizes price deviation from a moving average using a geometric concept Euclidean distance. It helps traders identify trend strength, volatility shifts, and potential overextensions in price behavior.
Euclidean Distance
Euclidean distance is a fundamental concept in geometry and machine learning. It measures the "straight-line distance" between two points in space. In time series analysis, it can be used to measure how far one sequence deviates from another over a fixed window.
euclidean_distance(src, ref, len) =>
var float sum_sq_diff = na
sum_sq_diff := 0.0
for i = 0 to len - 1
diff = src - ref
sum_sq_diff += diff * diff
math.sqrt(sum_sq_diff)
In this script, we calculate the Euclidean distance between the price (source) and a smoothed average (reference) over a user-defined window. This gives us a single scalar that reflects the overall divergence between price and trend.
How It Works
Moving Average Calculation: You can choose between SMA, EMA, or HMA as your reference line. This becomes the "baseline" against which the actual price is compared.
Distance Band Construction: The Euclidean distance between the price and the reference is calculated over the Window Length. This value is then added to and subtracted from the average to form dynamic upper and lower bands, visually framing the range of deviation.
Distance Ratios and Z-Scores: Two distance ratios are computed: dist_r = distance / price (sensitivity to volatility); dist_v = price / distance (sensitivity to compression or low-volatility states)
Both ratios are normalized using a Z-score to standardize their behavior and allow for easier interpretation across different assets and timeframes.
Z-Score Plots: Z_r (white line) highlights instances of high volatility or strong price deviation; Z_v (red line) highlights low volatility or compressed price ranges.
Background Highlighting (Optional): When Z_v is dominant and increasing, the background is colored using a gradient. This signals a possible build-up in low volatility, which may precede a breakout.
Use Cases
Detect volatile expansions and calm compression zones.
Identify mean reversion setups when price returns to the average.
Anticipate breakout conditions by observing rising Z_v values.
Use dynamic distance bands as adaptive support/resistance zones.
Notes
The indicator is best used with liquid assets and medium-to-long windows.
Background coloring helps visually filter for squeeze setups.
Disclaimer
This indicator is provided for speculative analysis and educational purposes only. It is not financial advice. Always backtest and evaluate in a simulated environment before live trading.