Trend-Range IdentifierTrend trading algorithms fail in ranging market and Swing trading algorithm fail in trending market. Purpose of this indicator is to identify if the instrument is trending or ranging so that you can apply appropriate trading algorithm for the market.
Process:
ATR is calculated based on the input parameter atrLength
Range/Channel containing upLine and downLine is calculated by adding/subtracting atrMultiplier * atr to close price.
This range/channel will remain same until the price breaks either upLine or downLine.
Once price crosses one among upLine and downLine, then new upLine/downLine is calculated based on latest close price.
If price breaks upLine, the trend is considered to be up until the next line break or no lines are broken for rangeLength bars. During this state, candles are colored in lime and upLine/downLine are colored in green.
If price breaks downLine, the trend is considered to be down until the next line break or no lines are broken for rangeLength bars. During this state, candles are colored in orange and upLine/downLine are colored in red.
If close price does not break either upLine or downLine for rangeLength bars, then the instrument is considered to be in range. During this state, candles are colored in silver and upLine/downLine are colored in purple.
In ranging duration, we display one among Keltner Channel, Bollinger Band or Donchian Band as per input parameter : rangeChannel . Other parameters used for calculation are rangeLength and stdDev
I have not fully optimized parameters. Suggestions and feedback welcome.
Range
Session High and Session LowI have heard many people ask for a script that will identify the high and low of a specific session. So, I made one.
Important Note: This indicator has to be set up properly or you will get an error. Important things to note are the length of the range and the session definition. The idea is that you would set it up for what's relevant to your trading. Going too far back in the chart history will cause errors. Setting the session for a time that is not on the chart can cause errors. If you set it to look farther back than there are bars to display, you may get an error. What I've found is that if you get an error, you just need to change the settings to reflect available data and it will be able to compile the script. At the time of its publishing, the default range start is set to 10/01/2020. If you're looking at this years later, you'll probably have to set the range to something more recent.
Features:
Plot or Lines:
Using Plot (displayed), the indicator will track the high/low from the end of the session into the next session. Then at the start of the next session, it will start tracking the high/low of that session until its end, then track that high/low until the start of the next session then reset.
Using lines, it will extend horizontal lines to the right indefinitely. The number of sessions back that the lines apply to is a user-defined number of sessions. There are limits to the number of lines that can be cast on a chart (roughly 40-50). So, the maximum number of sessions you can apply the lines to is the last 21 sessions (42 lines total). That gets really noisy though so I can't imagine that is a limiting factor.
Colors:
You can change the background color and its transparency, as well as turn the background color on or off.
You can change the highs and lows colors
You can adjust the line width to your preference
Session Length:
You can use a continuous session covering any user-defined period (provided its not tooooo many candles back)
You can define the session length for intraday
You can exclude weekends
Display Options:
You can adjust the colors, transparency, and linewidth
You can display the plotline or horizontal lines
You can show/hide the background color.
You can change how many sessions back the horizontal lines will track
Let me know if there's anything this script is missing or if you run into any issues that I might be able to help resolve.
Here's what it looks like with Lines for the last 5 sessions and different background color.
SuperTrendRange by DGTSuperTrendRange study attempts to determine the state of the market
• whether a well-established bull/bear trend is present
• whether the market is trading in a range
SuperTrendRange (STR) takes into account the volatility of the market - further details regarding volatility can be found in the description of “Volatility Bands by DGT” study
Due to its similarities to SupertTrend (ST) and Parabolic SAR (SAR), I will try to explain by stating differences between them
SuperTrendRange uses both the ATR (Average True Range) and STDEV (Standard Deviation) as part of its calculations - unlike ST and SAR where they use only ATR
Sensitivity of the indicator is adjusted using the multiplier setting of both ATR and STDEV
Additionally, unlike ST, the source of the basis of SuperTrendRange can be selected among the assets price value or its moving average
Source and Length are adjustable too
The SuperTrendRange, like Parabolic SAR indicator, appears on a chart as a series of dots, either above, below or unlike Parabolic SAR both above and below of the asset's price
A dot placed
- below the price when the market is trending upward
- above the price when it is trending downward
- both above and below when the price starts moving sideways – this is a feature that both SuperTrend and Parabolic SAR misses, where they are known to produce false signals and losing trades, whereas SuperTrendRange emphasis the zones of the ranges occurring and in most cases are considered no trade recommended zones. Please note that the range width may vary depending on how the market is volatile. It is up to the users to trade if it fits their trading strategies
Dots plotted above and below can be assumed as Support and Resistance levels
Example usages – with trading opportunities
Gold Monthly Chart
Bitcoin Daily Chart
Disclaimer:
Trading success is all about following your trading strategy and the indicators should fit within your trading strategy, and not to be traded upon solely
The script is for informational and educational purposes only. Use of the script does not constitute professional and/or financial advice. You alone have the sole responsibility of evaluating the script output and risks associated with the use of the script. In exchange for using the script, you agree not to hold dgtrd TradingView user liable for any possible claim for damages arising from any decision you make based on use of the script
Silen's Pseudo VPVR / Pseudo Volume Profile Custom RangeDisclamer: This indicator does not use actual Volume data and doesn't display any Volume data. It creates a pseudo Volume Profile by counting the high-low-2 values of candles and simulates something that is similar to a Volume Profile without using any Volume data.
Core facts:
Creates a pseudo Volume Profile by counting values of candles and sorting them into a Profile.
Works for charts that don't provide any Volume Information.
Can display up to 5 different Value Levels.
Value level colors are (from largest to smallest level): Red, Orange, Yellow, Green, Blue.
The Value levels can be used as Support and Resistance indicators.
The Custom Range of the Volume Profile can be adjusted from 10 to 1500 bars.
Much faster than the other custom pseudo VPVRs out there.
Shortcomings:
As the chart progresses with bars the line positions will distort to the left side. Refreshing the tradingview page or switching to another time interval fixes this. I might fix this issue in the future.
Does not use actual Volume nor display actual Volume.
Note: For those who wondered what happened to my first version of this indicator: It got taken down by Tradingview because it was misleading as to using the words "Volume Profile" and "Visible Range". I fully support their decision and I hope I could clear any misunderstandings! Give their team a heads up for the hard work they're doing in keeping this place clean and well organized!
Enjoy! :)
Volume DensitySince we don't have tick count per time interval, let's do it this way. Basically "bigger the move bigger the volume" rule applies in most times, making volume alone kinda useless. What is more interesting, is when there was a huge volume within a relatively small range, or vice versa, a huge move without equally increased volume.
Without diving into details, bars with low volatility and serious volume are aprox. areas of possible future reversals/pullbacks, while volumeless high volatility moves should not cause any serious stops in price action.
This is just a small easy script to highlight this process. "Mathematically speaking, it's just a reciprocal of quotient of awfewefaffwqg..... Nah, not this time.
HOW IT WORKS:
Volume Density = 1/(range/volume)
We take range of a bar (high minus low), divide it by volume of the same bar, in order to neutralize this "bigger-bigger" relationship. Then we memorize this number, take 1 and divide 1 by this number, in order to inverse the result. So now, small bars with big volume will be rated higher than just by using classic volume histogram.
I suppose it would be easy to use it along with classic volume histogram, and assess the differences between these 2 histograms.
///
Probs some1 has already posted smth like this before idk, but if it aint the case, here it is, for you.
London Open Range Breakout by KviateqThis script is what I currently use to day trade forex on a 5-minute timeframe.
The script features Multi-timeframe EMA20 that uses timeframe multipliers and is smoother by the factor by which you're multiplying your current timeframe.
Default settings are set to display EMA20 on the current (M5) timeframe, as well as M15, H1, H4 and D1 timeframes.
The background color changes intensity based on how many conditions are met - are all EMAs in the right order, is the current close above/below all the EMAs.
Featured is also a range set to 1 hour since the London breakout (can be changed to M15, or however long you'd like - my current setting is 30 minute).
Also featured are levels that I find to be of most importance - such as Daily and Weekly Open, Previous Day's and Week's Highs.
The idea is to only take trades when all stars align - EMAs, break above/below the Opening Range and not to long/short into an important level.
ORB - Opening Range BreakoutThis script plots the high/low of any custom session and extends it until the daily close. It does not show on the timeframe higher than the length of custom opening session by default.
The time period of opening range & the max timeframe to display it on can be adjusted from the settings.
So for eg. if want to use 5m ORB to trade, then set "ORB total time" as 5min & "Session Time" as whatever is the opening 5mins time period of ticker that are trading.
ATR Daily LevelsPlots the daily ATR on the chart as upper and lower levels.
It can be use to adapt your trading in high and low periods of market volatility, determine reasonable target or take profit, entry at likely mean reversion, stop loss beyond normal flows etc...
More on the script behavior:
- Daily ATR upper/lower levels are applied on the current day low/high;
- The ATR value is defined by the last D1 bar;
- Shows up to D1 timeframe;
- Configuration for the indicator's period (default: 20 period ATR);
- Configuration for plotting the indicator on the the x axis with an offset/at begining of the day (default: offset);
Dynamic Range here comes open source version of notorious JFT Indicator ( the indicator access you can get in some bucks ) on various telegram channels however they will not give code.
Now how it works
1. 2 ranges derived from indicator are supposed to be a consolidation zone and any close above or below is supposed to give a good move.
2. I personally consider it as may be addition to price analysis. ( i don't believe much in indicators,even simple MA gives fruitful results when there is good move in market )
3. Range can be drawn on chart with various resolution ( Daily/Monthly/Weekly )
PS: I coded myself based on data analysis shown by access only indicator. In case you use it for your publication don't forget to give credits.
Thanks,
daytraderph
Hancock - Renko Brick ProductionThis is the accompanying script that shows how many renko bricks were produced in each direction per candle. It gives a basic indication of volatility, some might find it useful.
Happy trading
Hancock
Hancock - RenkoThis is the first release of Renko indicator.
Renko is plotted over candles and best calculates the number of Renko bricks printed up or down per candle which can be viewed from the data window. It plots the high and low of a the bricks, if numerous bricks are printed on a candle, as well as the open and close of a Renko brick.
This will be actively developed and improved over the next few months and i will be basing other indicators from this Renko.
Happy trading
Hancock
High & Low Of Custom Session - OpeningRange Breakout (Expo)High & Low Of Custom Session - OpeningRange Breakout (Expo) prints the high and the low of a custom session.
I use the indicator to trade the re-test of opening range (high/low) as well as breakouts from the opening range. The same logic can be applied to the session you have chosen.
HOW TO USE
1. Use the indicator to trade the re-tests of the session range.
2. Use the indicator to trade breakouts of session range.
INDICATOR IN ACTION
1-min chart
I hope you find this indicator useful , and please comment or contact me if you like the script or have any questions/suggestions for future improvements. Thanks!
I will continually work on this indicator, so please share your experience and feedback as it will enable me to make even better improvements. Thanks to everyone that has already contacted me regarding my scripts. Your feedback is valuable for future developments!
-----------------
Disclaimer
Copyright by Zeiierman.
The information contained in my scripts/indicators/ideas does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, or individual’s trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My scripts/indicators/ideas are only for educational purposes!
[RS]Standardized Trend Mapnothing excessively new here..
a map of standardized trend over multiple lengths, extra parameter for smoothing the input source(close) will remove noise.
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.
Volume DensityA group of two indicators:
The "Volume Density" shows how much volume was thrown out relative to the covered price range.
The "Volume Density Bars" shows the same, but with colour on top of the bar chart.
Multiple SuperTrends - evoSupertrend is one of the most popular and easy to use indicators out there. Here are 15 supertrends each having a different ATR multiple from price. This can be used to find ranges (often followed by a reversal) or to create a filter for fake signals.
In the input tab "Spacing" you can change the space between each supertrend, setting this to 0 would be a normal supertrend. You can also change style, color, line width and transparency all in the input tab.
Pine code tip: Change line 21 to 'true' to make editable true.
Enjoy! :)
Rolling midpointsThe script made for research purposes which plots these statistics of a given window: Mid-range (max + min)/2, Lower midpoint (mid-range + min)/2, and Higher midpoint (mid-range + max)/2.
This could be interesting when checking periods with sample size <= 0, or checking distros with srs kurtosis values.
Mean & median are also there.
Time Range StatisticsA good amount of users requested a text box showing various price statistics, the following script returns various of these stats in a user-selected range, and include classical ones such as a central tendency measurement (mean), dispersion (normalized range) and percent change, but also include less common statistics such as average traded volume and number of gaps. The script also calculates the correlation between the closing price and another user-selected instrument.
The script is currently the longest one I ever made and took some efforts, as I wasn't satisfied with the statistics to be originally included. Big thx to Gael for the enormous feedback and the idea of the normalized range, to user @Cookiecrush for the feedback ( without ya I would have posted something bad you know umu ? ), and Lulidolce for the support, friendship is magic!
Selected Range
The setting Start determine the bar at which the range starts, while End determine at which bar the range end. To help you select these values, the current bar number (bar index) is displayed at the right of the indicator title in blue.
The setting evaluate to last bar will use a range starting at Start and ending at the last bar, as such you can use a full range by using Start = 0 and select evaluate to last bar
The range is highlighted by an area on the chart. By default Start = 9000 and End = 10000, you might not have this amount of data in your chart, as such use the displayed bar index to select Start and End, then set the settings as default.
Displayed Statistics
The statistics panel is displayed on the right side of the last bar, the panel has 3 sections, a title section who shows the symbol ticker, timeframe, and overall trends represented by a chart emoji, the overall trends are determined by comparing the number of higher highs with the number of lower low.
Below are displayed the date ranges with time format: year/month/day/hour:minute.
The second section shows the general statistics. The first one is the mean, also represented by the orange line in the chart, the blue line displayed represent the highest price value in the range, while the red one represents the lowest price value.
The second stat is the normalized range, and determine how spread is the price in the user-selected range, why not the standard deviation? Because the standard deviation might return results varying widely depending on the scale of the closing price, you could get measures such as 0.0156 or 16 or even 56 depending on the instrument, as such using a normalized range can be more appropriate as it lays in a range of (0,1). Lower values indicate a low degree of price variation. Note that I still want to find another measure in the future.
The percentage change (or relative change) indicates at which percentage the price has increased or decreased, and is calculated by subtracting the closing at bar Start with the price at bar End , divided by the price at bar End , the result is then multiplied by 100.
The average traded volume calculate the mean of the volume in the selected range, I used the same format used by the original volume indicator for clarity.
Finally, the last stats of the section is the number of gaps, this stat is by default hidden. An up gap is detected when the open price is superior to the previous high, while a down gap is detected when the open price is inferior to the previous low, this allow to only retain significant gaps.
The last section of the indicator panel shows the correlation between the closing price and another instrument, by default GOOG, this correlation is also calculated within the user-selected range. Positive values indicate a positive relationship, that is the two instruments tend to move in the same direction. Negative values indicate a negative relationship, both instruments tend to move in a direction opposite to each other. Values closer to 1 or -1 indicate a stronger relationship, while values closer to 0 indicate no relationship.
In Summary
The script shows various stats, each calculated within a user-selected range, in general one would be more interested in how these stats might evolve with time, but checking them in a custom range can be quite interesting.
Thx for reading. umu
REVEREVE is abbreviation from Range Extension Volume Expansion. This indicator shows these against a background of momentum. The histogram and columns for the range and volume rises ara calculated with the same algorithm as I use in the Volume Range Events indicator, which I published before. Because this algorithm uses the same special function to assess 'normal' levels for volume and range and uses the same calculation for depicting the rises on a scale of zero through 100, it becomes possible to compare volume and range rises in the same chart panel and come to meaningful conclusions. Different from VolumeRangeEvents is that I don't attempt to show direction of the bars and columns by actually pointing up or down. However I did color the bars for range events according to direction if Close jumps more than 20 percent of ATR up or down either blue or red. If the wider range leads to nothing, i.e. a smaller jump than 20 percent, the color is black. You can teak this in the inputs. The volume colums ar colored according to two criteria, resulting in four colors (orange, blue, maroon, green). The first criterium is whether the expansion is climactic (orange, blue) or moderate (maroon, green). I assume that climactic (i.e. more than twice as much) volume marks the beginning or end of a trend. The second criterium looks at the range event that goes together with the volume event. If lots of volume lead to little change in range (blue, green), I assume that this volume originates from institutional traders who are accumulating or distributing. If wild price jumps occur with comparatively little volume (orange, maroon, or even no volume event) I assume that opportunistic are active, some times attributing to more volume.
For the background I use the same colors calculated with the same algorithm as in the Hull Agreement Indicator, which I published before. This way I try to predict trend changes by observation of REVE.