Volatility Filter v2VF v2 is a new iteration of my tool designed for traders who wish to gain a deeper understanding of market dynamics, specifically to distinguish periods of high volatility, which often correspond to strong market trends. By identifying these periods, traders can make more informed decisions, potentially leading to better trading outcomes.
Understanding Market Volatility:
At the heart of this script lies the concept of market volatility, a statistical measure reflecting the degree of variation in trading prices. Volatility is pivotal for traders; it provides insights into the market's emotional state, indicating periods of uncertainty or confidence. High volatility often correlates with strong trends, making it a critical indicator for trend-followers. By identifying when volatility crosses a certain threshold, traders can discern whether the market is likely to be in a trending phase or a more subdued, range-bound state.
How the Script Works:
The core functionality of the script revolves around a signal line that oscillates around a zero threshold. When the signal line is above zero, it indicates increased market volatility, suggesting the presence of a trend. The farther the oscillator deviates from zero, the stronger the implied trend. This mechanism enables traders to visually gauge market conditions and adjust their strategies accordingly.
Controlling the Indicator:
To cater to diverse trading styles and preferences, the script is equipped with several customizable settings:
Filter Threshold: This 'zero line' acts as the baseline for distinguishing between different volatility regimes. Crossing this threshold is a primary signal for changes in market volatility.
Moving Average Type: With over 30 types of moving averages to choose from, traders can select the one that best fits their analysis style. Each type offers a different perspective on price data, allowing for a tailored approach to trend identification.
Colorize Indicator: This feature enhances the visual representation of the indicator, making it easier to interpret. When enabled, the oscillator's color intensity varies with its proximity to the extremes, providing a quick visual cue about trend strength.
Advanced Settings – Length and Multiplier:
The script introduces an innovative approach to time frame analysis through its length and multiplier settings:
Length: This parameter sets the base period for all metrics within the script, similar to traditional indicators.
Multiplier: This unique feature differentiates the script by incorporating three distinct timeframes into the analysis: a lower timeframe, the main (current) timeframe, and a higher timeframe. The multiplier adjusts these timeframes relative to the main one. For instance, with a daily main timeframe and a multiplier of 2, the lower timeframe would be 12 hours, and the higher timeframe would be 2 days. This tri-timeframe approach aims to provide a more comprehensive volatility assessment.
Volatility Filter Indicators Section:
The script utilizes nine different, undisclosed metrics within its volatility filter. Traders have the flexibility to enable or disable these metrics based on their preferences, allowing for a customizable trading experience. Additionally, the script offers alert functionality for when the indicator crosses the threshold, either upwards or downwards, facilitating timely decision-making.
P.S
With better understanding of markets over time, I designed a new iteration of my volatility filter indicator. The second version provides faster, more precise way to analyze markets, but I also wanted to keep my first version untouched in case if some people find it better for their purposes. As I mentioned above, this version is calculated in a very different way from a previous one, so if you never tried it you can do it here
Volatilityindicator
Realized volatility differentialAbout
This is a simple indicator that takes into account two types of realized volatility: Close-Close and High-Low (the latter is more useful for intraday trading).
The output of the indicator is two values / plots:
an average of High-Low volatility minus Close-Close volatility (10day period is used as a default)
the current value of the indicator
When the current value is:
lower / below the average, then it means that High-Low volatility should increase.
higher / above then obviously the opposite is true.
How to use it
It might be used as a timing tool for mean reversion strategies = when your primary strategy says a market is in mean reversion mode, you could use it as a signal for opening a position.
For example: let's say a security is in uptrend and approaching an important level (important to you).
If the current value is:
above the average, a short position can be opened, as High-Low volatility should decrease;
below the average, a trend should continue.
Intended securities
Futures contracts
RWEDT Weighted Moving Average Overview:
The RWEDT MA, which is short for rolling, weighted, exponential, double exponential, and triple exponential, is a group of moving averages that were subjected to a log transformation to deal with the skewness of price, and the weight of each of these moving averages was also used for calculating the standard deviations from the mean.
Clearing a misunderstanding on Standard Deviation Bands and Moving Averages
Bands, such as standard deviation bands, are frequently misinterpreted as indicators of support and resistance levels or as "mean-reverting" indicators." However, this is not their intended purpose. Bands are statistical tools that provide ranges within which price (in this case) movements are expected to occur based on historical data. Deviations beyond these bands suggest a decrease in confidence in the model rather than a reversal back to a moving average or a "support/resistance level."
Example : Assuming you correctly applied a log transformation to your standard deviation bands to remove the right skew, and assuming your data closely resembles a normal distribution or some other type of symmetrical distribution, then the probability of a value being in the 2 standard deviation range is around 95%. This does not mean it will reject or go up, or mean revert. The price won't bounce from -2 STDEV 95% of the time; that is incorrect. It just tells you that around 95% of the values will be within the 2 SD range.
Moving averages, including the ones in this indicator, are often misinterpreted as signals of trend reversals or levels of "bouncing." What moving averages actually tell you is what the expected value is. It does not show where you expect the price to be in the future; it tells you that based on the lookback, the expected value is in the center, and the confidence you have in the estimate is the confidence interval or the standard deviation range.
Example: Let's say you enter a trade with a positive expected value (expecting the price to drift up), and we have the limits set at 95%. What it tells you is that as long as the price stays within the limits, you can be 95% certain the model isn't completely random. As the price moves further away from the average, or expected value, it tells you that the model is less likely to be correct.
RWEDT MA
This indicator comes with 5 moving averages, each log transformed to reduce the skewness and asymmetry of price as much as possible
Rolling
Weighted
Exponential
Double Exponential
Triple Exponential
The band standard deviation can be adjusted, and the standard deviations have the weight of all of the moving averages that are present in the indicator. The weight is not customizable.
Why this indicator is useful:
This indicator can tell you what the expected value is. Above the moving average signifies a positive expected value, and below the moving average signifies a negative expected value. As previously stated above, the price moving further from the expected value lets you know that you should have less confidence that the model is "correct," and you could see this as taking profits as the price deviates further from the expected value.
The importance of log-transforming prices for standard deviations and moving averages.
Symmetry: Logarithmic transformations can help achieve symmetry in the distribution of price data. Stock prices, for example, exhibit some type of right-skewed distribution, where large positive price movements are more common than large negative movements. Price also can't go below 0 but can go towards positive infinity, so having a right-skew makes sense; all the outliers will be towards infinity, while all the average occurrences are "near" 0.
Stabilizing Variance: Price data typically exhibit heteroscedasticity, meaning that the variance of price movements changes over time. Log transformations can stabilize the variance and make it more consistent across different price levels. This is important for ensuring that the variability in price moves is not disproportionately influenced by extreme values.
Statistical Assumptions: Many retail indicators like Bollinger Bands use the standard deviation and moving average models of a normal distribution to attempt to model price, whose distribution more closely resembles some type of right-skew distribution. Even with the log-transformation, it still won't always resemble a perfect symmetrical distribution, and you still should not use it for mean reversion. You can still use it to understand the expected value and whether or not you should have confidence in your model.
Squeeze Momentum DeluxeThe Squeeze Momentum Deluxe is a comprehensive trading toolkit built with features of momentum, volatility, and price action. This script offers a suite for both mean reversion and trend-following analysis. Developed based on the original TTM Squeeze implementation by @LazyBear, this indicator introduces several innovative components to enhance your trading insights.
🔲 Components and Features
Momentum Oscillator - as rooted in the TTM Squeeze, quantifies the relationship between price and its extremes over a defined period. By normalizing the calculation, the values become comparable throughout time and across securities, allowing for a nuanced assessment of Bullish and Bearish momentum. Furthermore, by presenting it as a ribbon with a signal line we gain additional information about the direction of price swings.
Squeeze Bars - The original squeeze concept is based on the relationship between the Bollinger Bands and Keltner Channel , once the BB resides inside the KC a squeeze occurs. By understanding their fundamentals a new form of calculation can be inferred.
method bb(float src, simple int len, simple float mult) => method kc(float src, simple int len, simple float mult) =>
float basis = ta.sma (src, len) float basis = ta.sma (src, len)
float dev = ta.stdev(src, len) float rng = ta.atr ( len)
float upper = basis + dev * mult float upper = basis + rng * mult
float lower = basis - dev * mult float lower = basis - rng * mult
Both BB and KC are constructed upon a moving average with the addition of Standard Deviation and Average True Range respectively. Therefore, the calculation can be transformed to when the Stdev is lower than the ATR a squeeze occurs.
method sqz(float src, simple int len) =>
float dev = ta.stdev(src, len)
float atr = ta.atr ( len)
dev < atr ? true : false
This indicator uses three different thresholds for the ATR to gain three levels of price "Squeeze" for further analysis.
Directional Flux- This component measures the overall direction of price volatility, offering insights into trend sentiment. Presented as waves in the background, it includes an OverFlux feature to signal extreme market bias in a particular direction which can signal either exhaustion or vital continuation. Additionally, the user can choose if to base the calculation on Heikin-Ashi Candles to bias the tool toward trend assessment.
Confluence Gauges - Placed at the top and bottom of the indicator, these gauges measure confluence in the relationship between the Momentum Oscillator and Directional Flux. They provide traders with an easily interpretable visual aid for detecting market sentiment. Reversal doritos displayed alongside them contribute to mean reversion analysis.
Divergences (Real-Time) - Equipped with a custom algorithm, the indicator detects real-time divergences between price and the oscillator. This dynamic feature enhances your ability to spot potential trend reversals as they occur.
🔲 Settings
Directional Flux Length - Adjusts the period of which the background volatility waves operate on.
Trend Bias - Bases the calculation of the Flux to HA candles to bias its behavior toward the trend of price action.
Squeeze Momentum Length - Calibrates the length of the main oscillator ribbon as well as the period for the squeeze algorithm.
Signal - Controls the width of the ribbon. Lower values result in faster responsiveness at the cost of premature positives.
Divergence Sensitivity - Adjusts a threshold to limit the amount of divergences detected based on strength. Higher values result in less detections, stronger structure.
🔲 Alerts
Sell Signal
Buy Signal
Bullish Momentum
Bearish Momentum
Bullish Flux
Bearish Flux
Bullish Swing
Bearish Swing
Strong Bull Gauge
Strong Bear Gauge
Weak Bull Gauge
Weak Bear Gauge
High Squeeze
Normal Squeeze
Low Squeeze
Bullish Divergence
Bearish Divergence
As well as the option to trigger 'any alert' call.
The Squeeze Momentum Deluxe is a comprehensive tool that goes beyond traditional momentum indicators, offering a rich set of features to elevate your trading strategy. I recommend using toolkit alongside other indicators to have a wide variety of confluence to therefore gain higher probabilistic and better informed decisions.
Weighted Average Volume Depth [QuantraSystems]Weighted Average Volume Depth
Introduction
The Weighted Average Volume Depth (𝓦𝓐𝓥𝓓) indicator is calibrated to provide extensive insights, calculated using volumetric price action and volume depth, and provides dynamic adjustments based upon historical volatility.
This indicator is a valuable asset for traders and investors, aiming to capture trends, measure dynamic volatility, and provide market reversion analysis in a systematic way.
Legend
Volumetric Top Cap: Plotted at y = 0, this line represents the probabilistic maximum value, or ‘cap’ for the signal line. It is colored using a binary color scheme, and indicates the dominant trend direction - green for an uptrend and purple for a downtrend.
Base Line: Calculated using a volume-weighted volatility measurement, this line is used as the benchmark to calculate momentum in the 𝓦𝓐𝓥𝓓 indicator.
Signal Line: The signal line represents the volume and volatility weighted measurements, and oscillates between the Base Line and Top Cap. Its position between these levels provides the depth of insights available in this script.
When the signal line is remaining in close proximity to the base line, this is indicative of a low volatility market environment. These periods are also reflected as muted bar coloring when the ‘Trend Intensity’ setting is enabled.
Conversely, when the signal line approaches, or even breaks above the Top Cap, this is characteristic of an unsustainable trending action - and probabilistically speaking, a reversion or consolation is likely to occur at these levels.
Highlighting: When this setting is enabled, background coloring is applied when the Signal Line breaks above the Top Cap. This highlights green as an oversold zone, and purple as an overbought zone.
Reversal Signals: When price begins to reverse from a zone of overextension, a signal is plotted when this reversion occurs from a high probability zone.
Circle - Shows a possible bullish reversal.
Cross - Shows a possible bearish reversal.
Case Study
In the above image, we showcase three distinct trades in short succession, showcasing the 𝓦𝓐𝓥𝓓’s speed and accuracy under the right conditions.
The first long trade was initiated upon receiving a bullish reversal signal. The trade was then closed after the price experienced a sharp upwards movement - and an overbought signal was indicated by the purple shading.
The second, short trade was entered on the next bar, after a bearish reversal signal was printed by the indicator (a white cross). Similarly, this trade was closed upon the oversold signal.
Once again, a reversal signal was indicated by the 𝓦𝓐𝓥𝓓 indicator. This time a bullish signal (a white circle), and hence a long position was opened. However, this trade was held until a negative trend confirmation (signaled by the Top Cap’s shift in color). This makes apparent the indicator’s flexible nature, and showcases the multiple signaling types available for traders to use.
Recommended Settings
The optimal settings for the 𝓦𝓐𝓥𝓓 indicator will vary upon the chosen asset’s average level volatility, as well as the timeframe it is applied to.
Due to increased volatility levels on lower timeframes, it is recommended to increase the 'Top Cap Multiplier' to take into account the increased frequency of false signals found in these trading environments. The same can be said when used on highly volatile assets - a trader will likely benefit from using a higher 'Top Cap Multiplier.'
On more price-stable assets, as well as any asset on higher timeframes, there is merit to tightening the length of the 'Top Cap Multiplier,' due to the slower nature of price action.
Methodology
The 𝓦𝓐𝓥𝓓 starts with calculating the volume weighted average price and the volume weighted variance - which is the expectation of the squared deviation of a variable from its mean, giving insights into the distribution of trading volume.
Using the volume weighted variance, a standard deviation value is calculated based on user input. This value acts as the ‘Volumetric Top Cap’ - seen in the 𝓦𝓐𝓥𝓓 indicator window as the zero line.
The signal line is calculated as the difference between the current price and the theoretical upper or lower VWAP deviation bands. This line acts as the trigger for identifying prevailing trends and high probability reversal points.
The base line serves as a reference point for historical momentum. It is calculated using an exponential moving average of the lowest signal line values over a defined lookback period. This baseline helps in assessing whether the current momentum is high or low relative to historical norms.
Notes
Bar coloring can be turned off - especially useful when stacking multiple indicators as recommended, or set to 'Trend Intensity,' or 'Binary Trend' (which reflects the top cap coloring).
It is always recommended to never rely on a single indicator - and instead build and test multiple strategies utilizing more than one indicator as confirmation.
Bandwidth Volatility - Silverman Rule of thumb EstimatorOverview
This indicator calculates volatility using the Rule of Thumb bandwidth estimator and incorporating the standard deviations of returns to get historical volatility. There are two options: one for the original rule of thumb bandwidth estimator, and another for the modified rule of thumb estimator. This indicator comes with the bandwidth , which is shown with the color gradient columns, which are colored by a percentile of the bandwidth, and the moving average of the bandwidth, which is the dark shaded area.
The rule of thumb bandwidth estimator is a simple and quick method for estimating the bandwidth parameter in kernel density estimation (KSE) or kernel regression. It provides a rough approximation of the bandwidth without requiring extensive computation resources or fine-tuning. One common rule of thumb estimator is Silverman rule, which is given by
h = 1.06*σ*n^(-1/5)
where
h is the bandwidth
σ is the standard deviation of the data
n is the number of data points
This rule of thumb is based on assuming a Gaussian kernel and aims to strike a balance between over-smoothing and under-smoothing the data. It is simple to implement and usually provides reasonable bandwidth estimates for a wide range of datasets. However , it is important to note that this rule of thumb may not always have optimal results, especially for non-Gaussian or multimodal distributions. In such cases, a modified bandwidth selection, such as cross-validation or even applying a log transformation (if the data is right-skewed), may be preferable.
How it works:
This indicator computes the bandwidth volatility using returns, which are used in the standard deviation calculation. It then estimates the bandwidth based on either the Silverman rule of thumb or a modified version considering the interquartile range. The percentile ranks of the bandwidth estimate are then used to visualize the volatility levels, identify high and low volatility periods, and show them with colors.
Modified Rule of thumb Bandwidth:
The modified rule of thumb bandwidth formula combines elements of standard deviations and interquartile ranges, scaled by a multiplier of 0.9 and inversely with a number of periods. This modification aims to provide a more robust and adaptable bandwidth estimation method, particularly suitable for financial time series data with potentially skewed or heavy-tailed data.
Formula for Modified Rule of Thumb Bandwidth:
h = 0.9 * min(σ, (IQR/1.34))*n^(-1/5)
This modification introduces the use of the IQR divided by 1.34 as an alternative to the standard deviation. It aims to improve the estimation, mainly when the underlying distribution deviates from a perfect Gaussian distribution.
Analysis
Rule of thumb Bandwidth: Provides a broader perspective on volatility trends, smoothing out short-term fluctuations and focusing more on the overall shape of the density function.
Historical Volatility: Offers a more granular view of volatility, capturing day-to-day or intra-period fluctuations in asset prices and returns.
Modelling Requirements
Rule of thumb Bandwidth: Provides a broader perspective on volatility trends, smoothing out short-term fluctuations and focusing more on the overall shape of the density function.
Historical Volatility: Offers a more granular view of volatility, capturing day-to-day or intra-period fluctuations in asset prices and returns.
Pros of Bandwidth as a volatility measure
Robust to Data Distribution: Bandwidth volatility, especially when estimated using robust methods like Silverman's rule of thumb or its modifications, can be less sensitive to outliers and non-normal distributions compared to some other measures of volatility
Flexibility: It can be applied to a wide range of data types and can adapt to different underlying data distributions, making it versatile for various analytical tasks.
How can traders use this indicator?
In finance, volatility is thought to be a mean-reverting process. So when volatility is at an extreme low, it is expected that a volatility expansion happens, which comes with bigger movements in price, and when volatility is at an extreme high, it is expected for volatility to eventually decrease, leading to smaller price moves, and many traders view this as an area to take profit in.
In the context of this indicator, low volatility is thought of as having the green color, which indicates a low percentile value, and also being below the moving average. High volatility is thought of as having the yellow color and possibly being above the moving average, showing that you can eventually expect volatility to decrease.
Bandwidth Bands - Silverman's rule of thumbWhat are Bandwidth Bands?
This indicator uses Silverman Rule of Thumb Bandwidth to estimate the width of bands around the rolling moving average which takes in the log transformation of price to remove most of price skewness for the rest of the volatility calculations and then a exp() function is performed to convert it back to a right skewed distribution. These bandwidths bands could offer insights into price volatility and trading extremes.
Silverman rule of thumb bandwidth:
The Silverman Rule of Thumb Bandwidth is a heuristic method used to estimate the optimal bandwidth for kernel density estimation, a statistical technique for estimating the probability density function of a random variable. In the context of financial analysis, such as in this indicator, it helps determine the width of bands around a moving average, providing insights into the level of volatility in the market. This method is particularly useful because it offers a quick and straightforward way to estimate bandwidth without requiring extensive computational resources or complex mathematical calculation
The bandwidth estimator automatically adjust to the characteristics of the data, providing a flexible and dynamic measure of dispersion that can capture variations in volatility over time. Standard deviations alone may not be as adaptive to changes in data distributions. The Bandwidth considers the overall shape and structure of the data distribution rather than just focusing on the spread of data points.
Settings
Source
Sample length
1-4 SD options to disable or enable each band
Conditional Volatility PercentileSimple Description: This indicator can basically help you find when a big move might happen ( This indicator can't determine the direction but when a big move could happen. ) Basically, a low-extreme value like 0 means that it only has room for upside, so volatility can only expand from that point on, and the fact that volatility mean reverts supports this.
Conditional Volatility Percentile Indicator
This indicator is a tool designed to view current market volatility relative to historical levels. It uses a statistical approach to assess the percentile rank of the calculated conditional volatility.
The Volatility Calculation
This indicator calculates conditional variance with user-defined parameters, which are Omega, Alpha, Beta, and Sigma, and then takes the square root of the variance to calculate the standard deviation. The script then calculates the percentile rank of the conditional variance over a specified lookback.
What this indicator tells you:
Volatility Assessment: Higher percentile values indicate heightened conditional volatility, suggesting increased market activity or potential stress. Meanwhile, lower percentiles suggest relatively lower conditional volatility.
Extreme Values: Volatility is a mean-reverting process. If the volatility percentile value is at a low value for an extended period of time, you can eventually bet on the volatility percentile value increasing with high confidence.
In financial markets, volatility itself exhibits mean-reverting properties. This means that periods of high volatility are likely to be followed by periods of lower volatility, and vice versa.
1. High Volatility Periods: High volatility levels may be followed by a subsequent decrease in volatility as the market returns to a more typical state.
2. Low Volatility Periods: Periods of low volatility may be followed by an uptick in volatility as the market experiences new information or changes in sentiment.
GARCH Volatility Estimation - The Quant ScienceThe GARCH (Generalized Autoregressive Conditional Heteroskedasticity) model is a statistical model used to forecast the volatility of a financial asset. This model takes into account the fluctuations in volatility over time, recognizing that volatility can vary in a heteroskedastic (i.e., non-constant variance) manner and can be influenced by past events.
The general formula of the GARCH model is:
σ²(t) = ω + α * ε²(t-1) + β * σ²(t-1)
where:
σ²(t) is the conditional variance at time t (i.e., squared volatility)
ω is the constant term (intercept) representing the baseline level of volatility
α is the coefficient representing the impact of the squared lagged error term on the conditional variance
ε²(t-1) is the squared lagged error term at the previous time period
β is the coefficient representing the impact of the lagged conditional variance on the current conditional variance
In the context of financial forecasting, the GARCH model is used to estimate the future volatility of the asset.
HOW TO USE
This quantitative indicator is capable of estimating the probable future movements of volatility. When the GARCH increases in value, it means that the volatility of the asset will likely increase as well, and vice versa. The indicator displays the relationship of the GARCH (bright red) with the trend of historical volatility (dark red).
USER INTERFACE
Alpha: select the starting value of Alpha (default value is 0.10).
Beta: select the starting value of Beta (default value is 0.80).
Lenght: select the period for calculating values within the model such as EMA (Exponential Moving Average) and Historical Volatility (default set to 20).
Forecasting: select the forecasting period, the number of bars you want to visualize data ahead (default set to 30).
Design: customize the indicator with your preferred color and choose from different types of charts, managing the design settings.
Squeeze & Release [AlgoAlpha]Introduction:
💡The Squeeze & Release by AlgoAlpha is an innovative tool designed to capture price volatility dynamics using a combination of EMA-based calculations and ATR principles. This script aims to provide traders with clear visual cues to spot potential market squeezes and release scenarios. Hence it is important to note that this indicator shows information on volatility, not direction.
Core Logic and Components:
🔶EMA Calculations: The script utilizes the Exponential Moving Average (EMA) in multiple ways to smooth out the data and provide indicator direction. There are specific lengths for the EMAs that users can modify as per their preference.
🔶ATR Dynamics: Average True Range (ATR) is a core component of the script. The differential between the smoothed ATR and its EMA is used to plot the main line. This differential, when represented as a percentage of the high-low range, provides insights into volatility.
🔶Squeeze and Release Detection: The script identifies and highlights squeeze and release scenarios based on the crossover and cross-under events between our main line and its smoothed version. Squeezes are potential setups where the market may be consolidating, and releases indicate a potential breakout or breakdown.
🔶Hyper Squeeze Detection: A unique feature that detects instances when the main line is rising consistently over a user-defined period. Hyper squeeze marks areas of extremely low volatility.
Visual Components:
The main line (ATR-based) changes color depending on its position relative to its EMA.
A middle line plotted at zero level which provides a quick visual cue about the main line's position. If the main line is above the zero level, it indicates that the price is squeezing on a longer time horizon, even if the indicator indicates a shorter-term release.
"𝓢" and "𝓡" characters are plotted to represent 'Squeeze' and 'Release' scenarios respectively.
Standard Deviation Bands are plotted to help users gauge the extremity and significance of the signal from the indicator, if the indicator is closer to either the upper or lower deviation bands, this means that statistically, the current value is considered to be more extreme and as it is further away from the mean where the indicator is oscillating at for the majority of the time. Thus indicating that the price has experienced an unusual amount or squeeze or release depending on the value of the indicator.
Usage Guidelines:
☝️Traders can use the script to:
Identify potential consolidation (squeeze) zones.
Gauge potential breakout or breakdown scenarios (release).
Fine-tune their entries and exits based on volatility.
Adjust the various lengths provided in the input for better customization based on individual trading styles and the asset being traded.
SuperTrend ToolkitThe SuperTrend Toolkit (Super Kit) introduces a versatile approach to trend analysis by extending the application of the SuperTrend indicator to a wide array of @TradingView's built-in or Community Scripts . This tool facilitates the integration of the SuperTrend algorithm with various indicators, including oscillators, moving averages, overlays, and channels.
Methodology:
The SuperTrend, at its core, calculates a trend-following indicator based on the Average-True-Range (ATR) and price action. It creates dynamic support and resistance levels, adjusting to changing market conditions, and aiding in trend identification.
pine_st(simple float factor = 3., simple int length = 10) =>
float atr = ta.atr(length)
float up = hl2 + factor * atr
up := up < nz(up ) or close > nz(up ) ? up : nz(up )
float lo = hl2 - factor * atr
lo := lo > nz(lo ) or close < nz(lo ) ? lo : nz(lo )
int dir = na
float st = na
if na(atr )
dir := 1
else if st == nz(up )
dir := close > up ? -1 : 1
else
dir := close < lo ? 1 : -1
st := dir == -1 ? lo : up
@TradingView's native SuperTrend lacks the flexibility to incorporate different price sources into its calculation.
Community scripts, addressed the limitation by implementing the option to input different price sources, for example, one of the most popular publications, @KivancOzbilgic's SuperTrend script.
In May 2023, @TradingView introduced an update allowing the passing of another indicator's plot as a source value via the input.source() function. However, the built-in ta.atr function still relied on the chart's price data, limiting the formerly mentioned scripts to the chart's price data alone.
Unique Approach -
This script addresses the aforementioned limitations by processing the data differently.
Firstly we create a User-Defined-Type (UDT) replicating a bar's open, high, low, close (OHLC) values.
type bar
float o = open
float h = high
float l = low
float c = close
We then use this type to store the external input data.
src = input.source(close, "External Source")
bar b = bar.new(
nz(src ) , open 𝘷𝘢𝘭𝘶𝘦
math.max(nz(src ), src), high 𝘷𝘢𝘭𝘶𝘦
math.min(nz(src ), src), low 𝘷𝘢𝘭𝘶𝘦
src ) close 𝘷𝘢𝘭𝘶𝘦
Finally, we pass the data into our custom built SuperTrend with ATR functions to derive the external source's version of the SuperTrend indicator.
supertrend st = b.st(mlt, len)
- Setup Guide -
Utility and Use Cases:
Universal Compatibility - Apply SuperTrend to any built-in indicator or script, expanding its use beyond traditional price data.
- A simple example on one of my own public scripts -
Trend Analysis - Gain additional trend insights into otherwise mainly mean reverting or volume indicators.
- Alerts Setup Guide -
The Super Kit empowers traders and analysts with a tool that adapts the robust SuperTrend algorithm to a myriad of indicators, allowing comprehensive trend analysis and strategy development.
Williams Vix Fix [CC]The Vix Fix indicator was created by Larry Williams and is one of my giant backlog of unpublished scripts which I'm going to start publishing more of. This indicator is a great synthetic version of the classic Volatility Index and can be useful in combination with other indicators to determine when to enter or exit a trade due to the current volatility. The indicator creates this synthetic version of the Volatility Index by a fairly simple formula that subtracts the current low from the highest close over the last 22 days and then divides that result by the same highest close and multiplies by 100 to turn it into a percentage. The 22-day length is used by default since there is a max of 22 trading days in a month but this formula works well for any other timeframe. By itself, this indicator doesn't generate buy or sell signals but generally speaking, you will want to enter or exit a trade when the Vix fix indicator amount spikes and you get an entry or exit signal from another indicator of your choice. Keep in mind that the colors I'm using for this indicator are only a general idea of when volatility is high enough to enter or exit a trade so green colors mean higher volatility and red colors mean low volatility. This is one of the few indicators I have written that don't recommend to buy or sell when the colors change.
This was a custom request from one of my followers so please let me know if you guys have any other script requests you want to see!
Standardized SuperTrend Oscillator
The Standardized SuperTrend Oscillator (SSO) is a versatile tool that transforms the SuperTrend indicator into an oscillator, offering both trend-following and mean reversion capabilities. It provides deeper insights into trends by standardizing the SuperTrend with respect to its upper and lower bounds, allowing traders to identify potential reversals and contrarian signals.
Methodology:
Lets begin with describing the SuperTrend indicator, which is the fundamental tool this script is based on.
SuperTrend:
The SuperTrend is calculated based on the average true range (ATR) and multiplier. It identifies the trend direction by placing a line above or below the price. In an uptrend, the line is below the price; in a downtrend, it's above the price.
pine_st(float src = hl2, float factor = 3., simple int len = 10) =>
float atr = ta.atr(len)
float up = src + factor * atr
up := up < nz(up ) or close > nz(up ) ? up : nz(up )
float lo = src - factor * atr
lo := lo > nz(lo ) or close < nz(lo ) ? lo : nz(lo )
int dir = na
float st = na
if na(atr )
dir := 1
else if st == nz(up )
dir := close > up ? -1 : 1
else
dir := close < lo ? 1 : -1
st := dir == -1 ? lo : up
SSO Oscillator:
The SSO is derived from the SuperTrend and the source price. It calculates the standardized difference between the SuperTrend and the source price. The standardization is achieved by dividing this difference by the distance between the upper and lower bounds of the SuperTrend.
float sso = (src - st) / (up - lo)
Components and Features:
SuperTrend of Oscillator - An additional SuperTrend based on the direction and volatility of the oscillator, behaving as the SuperTrend OF the SuperTrend. This provides further trend analysis of the underlying broad trend regime.
Reversion Tracer - The RSI of the direction of the original SuperTrend, providing a dynamic threshold for premium and discount price areas.
float rvt = ta.rsi(dir, len)
Heikin Ashi Transform - An option to apply the Heikin Ashi transform to the source price of the oscillator, providing a smoother visual representation of trends.
Display Modes - Choose between Line mode for a standard oscillator view or Candle mode, displaying the oscillator as Heikin Ashi candles for more in-depth trend analysis.
Contrarian and Reversion Signals:
Contrarian Signals - Based on the SuperTrend of the oscillator, these signals can act as potential buy or sell indications, highlighting potential trend exhaustion or premature reversals.
Reversion Signals - Generated when the oscillator crosses above or below the Reversion Tracer, signaling potential mean reversion opportunities or trend breakouts.
Utility and Use Cases:
Trend Analysis - Utilize the SSO as a trend-following tool with the added benefits of the oscillator's SuperTrend and Heikin Ashi transform.
Valuation Analysis - Leverage the oscillator's reversion signals for identifying potential mean reversion opportunities in the market.
The Standardized SuperTrend Oscillator enhances the capabilities of the SuperTrend indicator, offering a balanced approach to both trend-following and mean reversion strategies. Its customizable options and contrarian signals make it a valuable instrument for traders seeking comprehensive trend analysis and potential reversal signals.
Volume-Price DiffScript is designed to analize volatility in real-time.
Once added to chart, script starting to collect 2 things:
Ticks count (tc)
Price changing ticks count (pctc)
The pctc/tc ratio may be interpret as a volatility measure.
Label above real-time bar shows:
Ticks count
Price changing ticks count
Ratio between (2) and (1) in percents
Using this indicator trader may detect volatility spikes.
More the "Diff" - less the volatility and vice versa.
Expected Move BandsExpected Moves
The Expected Move of a security shows the amount that a stock is expected to rise or fall from its current market price based on its level of volatility or implied volatility. The expected move of a stock is usually measured with standard deviations.
An Expected Move Range of 1 SD shows that price will be near the 1 SD range 68% of the time given enough samples.
Expected Move Bands
This indicator gets the Expected Move for 1-4 Standard Deviation Ranges using Historical Volatility. Then it displays it on price as bands.
The Expected Move indicator also allows you to see MTF Expected Moves if you want to.
This indicator calculates the expected price movements by analyzing the historical volatility of an asset. Volatility is the measure of fluctuation.
This script uses log returns for the historical volatility calculation which can be modelled as a normal distribution most of the time meaning it is symmetrical and stationary unlike other scripts that use bands to find "reversals". They are fundamentally incorrect.
What these ranges tell you is basically the odds of the price movement being between these levels.
If you take enough samples, 95.5% of the them will be near the 2nd Standard Deviation. And so on. (The 3rd Standard deviation is 99.7%)
For higher timeframes you might need a smaller sample size.
Features
MTF Option
Parameter customization
Advanced Market Opening Gap DetectorThe Advanced Market Opening Gap Detector (AMOGD) is a Pine Script indicator designed to help you identify market gaps at the opening of a new trading day. Gaps are areas on a chart where the price of a security moves sharply up or down with little or no trading in between. They are significant as they may indicate a change in market sentiment. This indicator highlights the size and direction of the opening gap, allowing you to potentially adjust your strategies accordingly.
By setting a minimum gap size, you can filter out smaller, less significant gaps, focusing only on larger gaps which may have more substantial implications. You can define the minimum gap size in points or pips, providing flexibility based on your trading preferences and the asset being traded.
How-to Use:
Apply the AMOGD indicator to your TradingView chart.
Configure the minimum gap size and unit (points or pips) based on your preference using the settings panel.
At the opening of each new trading day, the indicator will check for a gap between the previous close and the opening price.
If a valid gap is detected (i.e., the gap size meets or exceeds the minimum gap size specified), the indicator will:
Draw lines to indicate the opening price and previous close.
Display a label indicating the size of the gap.
Highlight the gap on the chart for better visibility.
Importance:
Market gaps can be pivotal points indicating a possible new trend or a continuation of the current trend. Being able to identify and analyze these gaps is crucial for making informed trading decisions. The AMOGD indicator automates the process of identifying and visualizing opening market gaps, saving traders time and allowing for quick assessment of market conditions at the start of each trading day. By setting a minimum gap size, traders can also filter out less significant price movements, allowing them to focus on potentially trend-changing gaps. This tool can be a valuable addition to a trader's toolkit, aiding in the analysis and interpretation of market behavior at the open, which is often a very volatile and crucial period in the trading day.
DISCLAIMER! RISK WARNING!
PAST PERFORMANCE IS NOT NECESSARILY INDICATIVE OF FUTURE RESULTS. TRADERS SHOULD NOT BASE THEIR DECISION ON INVESTING IN ANY TRADING PROGRAM SOLELY ON THE PAST PERFORMANCE PRESENTED, ADDITIONALLY, IN MAKING AN INVESTMENT DECISION, TRADERS MUST ALSO RELY ON THEIR OWN EXAMINATION OF THE PERSON OR ENTITY MAKING THE TRADING DECISIONS.
Intraday Volatility Bands [Honestcowboy]The Intraday Volatility Bands aims to provide a better alternative to ATR in the calculation of targets or reversal points.
How are they different from ATR based bands?
While ATR and other measures of volatility base their calculations on the previous bars on the chart (for example bars 1954 to 1968). The volatility used in these bands measure expected volatility during that time of the day.
Why would you take this approach?
Markets behave different during certain times of the day, also called sessions.
Here are a couple examples.
Asian Session (generally low volatility)
London Session (bigger volatility starts)
New York Session (overlap of New York with London creates huge volatility)
Generally when using bands or channel type indicators intraday they do not account for the upcoming sessions. On London open price will quickly spike through a bollinger band and it will take some time for the bands to adjust to new volatility.
This script will show expected volatility targets at the start of each new bar and will not adjust during the bar. It already knows what price is expected to do at this time of day.
Script also plots arrows when price breaches either the top or bottom of the bands. You can also set alerts for when this occurs. These are non repainting as the script knows the level at start of the bar and does not change.
🔷 CALCULATION
Think of this script like an ATR but instead it uses past days data instead of previous bars data. Charts below should visualise this more clearly:
The scripts measure of volatility is based on a simple high-low.
The script also counts the number of bars that exist in a day on your current timeframe chart. After knowing that number it creates the matrix used in it's calculations and data storage.
See how it works perfectly on a lower timeframe chart below:
Getting this right was the hardest part, check the coding if you are interested in this type of stuff. I commented every step in the coding process.
🔷 SETTINGS
Every setting of the script has a tooltip but I provided a breakdown here:
Some more examples of different charts:
TrendCylinder (Expo)█ Overview
The TrendCylinder is a dynamic trading indicator designed to capture trends and volatility in an asset's price. It provides a visualization of the current trend direction and upper and lower bands that adapt to volatility changes. By using this indicator, traders can identify potential breakouts or support and resistance levels. While also gauging the volatility to generate trading ranges. The indicator is a comprehensive tool for traders navigating various market conditions by providing a sophisticated blend of trend-following and volatility-based metrics.
█ How It Works
Trend Line: The trend line is constructed using the closing prices with the influence of volatility metrics. The trend line reacts to sudden price changes based on the trend factor and step settings.
Upper & Lower Bands: These bands are not static; they are dynamically adjusted with the calculated standard deviation and Average True Range (ATR) metrics to offer a more flexible, real-world representation of potential price movements, offering an idea of the market's likely trading range.
█ How to Use
Identifying Trends
The trend line can be used to identify the current market trend. If the price is above the trend line, it indicates a bullish trend. Conversely, if the price is below the trend line, it indicates a bearish trend.
Dynamic Support and Resistance
The upper and lower bands (including the trend line) dynamically change with market volatility, acting as moving targets of support and resistance. This helps set up stop-loss or take-profit levels with a higher degree of accuracy.
Breakout vs. Reversion Strategies
Price movements beyond the bands could signify strong trends, making it ideal for breakout strategies.
Fakeouts
If the price touches one of the bands and reverses direction, it could be a fakeout. Traders may choose to trade against the breakout in such scenarios.
█ Settings
Volatility Period: Defines the look-back period for calculating volatility. Higher values adapt the bands more slowly, whereas lower values adapt them more quickly.
Trend Factor: Adjusts the sensitivity of the trend line. Higher values produce a smoother line, while lower values make it more reactive to price changes.
Trend Step: Controls the pace at which the trend line adjusts to sudden price movements. Higher values lead to a slower adjustment and a smoother line, while lower values result in quicker adjustments.
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems 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, backtest, 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/Algos/Systems are only for educational purposes!
VWMA/SMA Delta Volatility (Statistical Anomaly Detector)The "VWMA/SMA Delta Volatility (Statistical Anomaly Detector)" indicator is a tool designed to detect and visualize volatility in a financial market's price data. The indicator calculates the difference (delta) between two moving averages (VWMA/SMA) and uses statistical analysis to identify anomalies or extreme price movements. Here's a breakdown of its components:
Hypothesis:
The hypothesis behind this indicator is that extreme price movements or anomalies in the market can be detected by analyzing the difference between two moving averages and comparing it to a statistically derived normal distribution. When the MA delta (the difference between two MAs: VWMA/SMA) exceeds a certain threshold based on standard deviation and the Z-score coefficient, it may indicate increased market volatility or potential trading opportunities.
Calculation of MA Delta:
The indicator calculates the MA delta by subtracting a simple moving average (SMA) from a volume-weighted moving average (VWMA) of a selected price source. This calculation represents the difference in the market's short-term and long-term trends.
Statistical Analysis:
To detect anomalies, the indicator performs statistical analysis on the MA delta. It calculates a moving average (MA) of the MA delta and its standard deviation over a specified sample size. This MA acts as a baseline, and the standard deviation is used to measure how much the MA delta deviates from the mean.
Delta Normalization:
The MA delta, lower filter, and upper filter are normalized using a function that scales them to a specific range, typically from -100 to 100. Normalization helps in comparing these values on a consistent scale and enhances their visual representation.
Visual Representation:
The indicator visualizes the results through histograms and channels:
The histogram bars represent the normalized MA delta. Red bars indicate negative and below-lower-filter values, green bars indicate positive and above-upper-filter values, and silver bars indicate values within the normal range.
It also displays a Z-score channel, which represents the upper and lower filters after normalization. This channel helps traders identify price levels that are statistically significant and potentially indicative of market volatility.
In summary, the "MA Delta Volatility (Statistical Anomaly Detector)" indicator aims to help traders identify abnormal price movements in the market by analyzing the difference between two moving averages and applying statistical measures. It can be a valuable tool for traders looking to spot potential opportunities during periods of increased volatility or to identify potential market anomalies.
Grid by Volatility (Expo)█ Overview
The Grid by Volatility is designed to provide a dynamic grid overlay on your price chart. This grid is calculated based on the volatility and adjusts in real-time as market conditions change. The indicator uses Standard Deviation to determine volatility and is useful for traders looking to understand price volatility patterns, determine potential support and resistance levels, or validate other trading signals.
█ How It Works
The indicator initiates its computations by assessing the market volatility through an established statistical model: the Standard Deviation. Following the volatility determination, the algorithm calculates a central equilibrium line—commonly referred to as the "mid-line"—on the chart to serve as a baseline for additional computations. Subsequently, upper and lower grid lines are algorithmically generated and plotted equidistantly from the central mid-line, with the distance being dictated by the previously calculated volatility metrics.
█ How to Use
Trend Analysis: The grid can be used to analyze the underlying trend of the asset. For example, if the price is above the Average Line and moves toward the Upper Range, it indicates a strong bullish trend.
Support and Resistance: The grid lines can act as dynamic support and resistance levels. Price tends to bounce off these levels or breakthrough, providing potential trade opportunities.
Volatility Gauge: The distance between the grid lines serves as a measure of market volatility. Wider lines indicate higher volatility, while narrower lines suggest low volatility.
█ Settings
Volatility Length: Number of bars to calculate the Standard Deviation (Default: 200)
Squeeze Adjustment: Multiplier for the Standard Deviation (Default: 6)
Grid Confirmation Length: Number of bars to calculate the weighted moving average for smoothing the grid lines (Default: 2)
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems 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, backtest, 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/Algos/Systems are only for educational purposes!
Intraday Volatility BarsThis script produce a volatility histrogram by bar with the current volatility overlayed.
The histogram shows cumulative average volatility over n days.
And the dots are todays cumulative volatility.
In other words, it calculates the True Range of each bar and adds it to todays value.
This script is build for intraday timeframes between one and 1440 minutes only.
I use this to show me when volatility is above/below/equal to the average volatility.
When the dots are above the histogram then it is a more volatile day, and vice versa.
Recognizing a more volatile day as early as possible can be an advantage for daytrader.
Days that start with higher volatility seems to continue to increase relative to the past few days. Or when midday volatility rises it seems to continue as well.
Happy Trading!
Bollinger Band Percentile SuiteThe Bollinger Band Percentile Suite (𝐵𝐵𝒫𝒸𝓉 𝒮𝓊𝒾𝓉𝑒) is a comprehensive and customizable toolkit built upon the foundation of the %B indicator. The methodology behind this toolkit remains consistent with the original %B indicator, while introducing a host of powerful features to enhance its functionality and adaptability.
Key Features and Customization:
The 𝐵𝐵𝒫𝒸𝓉 offers a wide array of customizable options to suit your trading preferences and strategies. It includes a variety of 14 moving average types that can be chosen as the basis for the Bollinger Band calculation. Additionally, traders have the flexibility to set their upper and lower boundaries for mean reversion detection, allowing for analysis tailored to the user's preference.
Deviation Calculation:
The toolkit provides an option to choose between standard and weighted deviation calculation methods. This added customization ensures that the indicator's behavior aligns with your unique trading style and preferences.
Signals and Reversals:
The 𝐵𝐵𝒫𝒸𝓉 excels in identifying potential overbought and oversold market conditions. It highlights these levels on the chart and marks potential reversal signals with small circles positioned either at the top or bottom of the indicator pane, providing traders with actionable insights.
Trend and Color Coding:
Incorporating a color-coded approach, the BBpct Suite enhances your understanding of market dynamics. It offers bar coloring options based on trend, allowing traders to identify bullish or bearish market conditions as the percentile goes above or below the midline.
Extremities and Reversions:
Recognizing extreme market conditions is crucial for traders. The 𝐵𝐵𝒫𝒸𝓉 includes color-coded indicators for extremities, indicating when the percentile ventures above or below the predefined thresholds. Moreover, it promptly identifies reversions by marking the moment the percentile crosses under the upper threshold (overbought) or over the lower threshold (oversold).
The Bollinger Band Percentile Suite equips traders with a versatile toolkit to gain valuable insights into market overbought and oversold conditions, and potential reversal signals. Its extensive customization options and array of features empower traders to make well-informed decisions based on their unique trading strategies and risk tolerance.
Please note that while the BBpct Suite provides robust analysis, it is advisable to combine its insights with other technical indicators and tools for a comprehensive trading approach.
Example Chart:
MAD Volatility PercentileMean Absolute Deviation (MAD) is a statistical measure that tells you how spread out or variable a set of data points is. It calculates the average distance of each data point from the mean (average) of the data set. MAD helps you understand how much individual values differ from the average value. It's a way to measure the overall "average distance" of the data points from the center point.
Indicator Overview:
This indicator measures market volatility using Mean Absolute Deviation of returns. The MAD Volatility Percentile Indicator calculates and represents market volatility as a percentile. The lower the percentile, the lower the volatility, and the higher the percentile value is, the higher the volatility is.
Understanding Volatility:
Lower percentiles signify a lower volatility market environment, reflecting reduced volatility, while higher percentiles indicate increased volatility and significant price movements. The indicator also comes with an SMA to see when the burst of higher volatility occur. You can also change the sample length on the indicators option. You can consider a big move occurring when the percentile value is above the SMA.
Application
Generally when the Mean Absolute Deviation Volatility Percentile is low, then this means that the volatility is low and a expansion could happen soon, which means a big move will occur soon. This indicator can also protect you from entering a trade that will not have any significant moves for a while.
This indicator is not a directional indicator but it can be applied with directional indicators, and is extremely versatile. For example you can use it with momentum indicators and if there is low volatility and bullish momentum then this can be a signal to potentially place a long position.
Features:
The percentile length sets the lookback of the percentile which calculates the percentile of the Mean Absolute Deviation of returns.
Sample length: Gets the volatility sample (returns)
SMA Length: The SMA of the percentile. Used to find when a move can be considered as an "expansion"
Alerts: You can also enable color alerts that flash when the volatility is at extremely low levels which can signify that a big move could happen soon.
This is an example of the alerts that the indicator comes with.