Zero-lag Volatility-Breakout EMA Trend StrategyThis is a simple volatility-breakout strategy which uses the difference in two different zero-lag* EMAs (explained below on what exactly I mean by this) to track the upwards or downwards strength of an instrument. When the difference breaks above a Bollinger Band of a configurable standard deviation multiple, the strategy enters based off the direction of the base EMA used (i.e. if the difference breaks above and the current EMA is rising, a long entry is produced. If the difference breaks above and the current EMA is falling, a short entry is produced).
The two EMA-type metrics used to calculate the volatility difference are calculated by the following formula:
top_ema = math.max(src, ta.ema(src, length))
bottom_ema = math.min(src, ta.ema(src, length))
ema_difference = (top_ema - bottom_ema) - 1
This produces a difference which responds immediately to large price movements, instead of lagging if it used strictly the EMA itself.
SETTINGS
Source : The source of the strategy - close, hlc3, another indicator plot, etc.
EMA Difference Length : The length of both the EMA difference statistics and the base EMA used to calculate the entry side.
Standard Deviation Multiple : The Bollinger Bands multiple used when the difference is breaking out.
Use Binary Strategy : The strategy has two configurations: Binary and Rapid-Exit. 'Binary' means that it will not close a long position until a short position is generated, and vice-versa. 'Rapid-Exit' will close a long or short position once the difference reaches the middle Bollinger Band MA. This means that turning on 'Binary' will expose you to more market risk, but potentially greater market return. Turning off 'Binary' will exit quickly and reduce drawdown.
The strategy results below use 10% equity and 0.1% fees per trade.
Cari dalam skrip untuk "Volatility"
VDVA - Volume Delta Volatility AmplifierThis script defines an indicator named VDVA (Volume Delta Volatility Amplifier), which combines volume delta (the difference between volume up and volume down) and volatility (ATR) into one line. This line is then smoothed using a moving average and compared with the zero level and a shorter-period moving average. The script also plots shapes when the rate of change of the line exceeds the first standard deviation. Moreover, the script uses Bollinger Bands and Keltner Channels to determine the squeeze condition, which is a signal of a potential breakout. Finally, the script plots two bar charts that show the volume up and volume down multiplied by ATR.
dark green line - bullish
light green line - potential bearish
dark red line - bearish
light red line - potential bullish
blue cloud - bullish
yellow cloud - bearish
red triangle - bearish entry
green triangle - bullish entry
purple cross - squeeze
JZ_Chaikin HTF Volatility BreakoutFirst off, all credit to Harry Potter as this is a minor customization of his indicator.
Basic additions:
-- Added a Higher Timeframe that is set to Daily but can be changed. Timeframe does wait until barstate.isconfirmed so won't repaint.
-- Added HMA smoothing line to both Chart and HTF. Can be used as it's own signal, as confirmation or in combination with faster signal line -- Breakout signal & Range Highlight use both.
-- Added optional coloring of HMA based on whether increasing or decreasing.
-- Added a low volatility option that highlights Range/No Trade zones. Defval is off so needs to be selected from inputs.
Breakout Signals are very simple and both take the HTF signal and HMA. When the faster Volatility line rises from below zero and comes within the range of -10 to 0, AND the HMA signals is increasing (and also below zero) for confirmation, generates a breakout signal of an incoming big move. You can alter the breakout threshold to be greater or less than -10, I just found that works best for filtering out the noise and false signals. Won't catch everything, but pretty reliable when it does.
Tested mostly on BTC so can't vouch for other assets and would likely need modification.
I've JUST taught myself coding from scratch (and to say I'm an amateur is an understatement), so apologies in advance if anything is unclear or could be coded better. Open to any suggestions.
Heikin Ashi Volatility Percentile - TraderHalaiThe Heikin Ashi Volatility Percentile (HAVP) Oscillator was inspired by the legendary Bollinger Band Width Percentile indicator(known as BBWP), written by Caretaker, and made famous by Eric Krown, a famous influencer.
This script borrows aspects of the BBWP indicator which enables the HAVP oscillator to visually match the look and feel of BBWP and allows similar configuration functions (such as colouring function, smoothing MAs and alerts)
The fundamentals of this script are however different to BBWP. Instead of Bollinger band width, this script uses a reverse function of Heikin Ashi close (implemented in my Smoothed Heikin Ashi Trend
indicator, linked below).
The reverse Heikin Ashi close is smoothed using Ehler's SuperSmoother function, providing smooth oscillation and earlier signals of volatility tops and bottoms.
From an automated backtest that I have conducted on the BTCUSD index pair, I have observed comparable performance to BBWP across multiple timeframes when combining with stochastic direction to give a bias on overall direction. Using parameters I have tested, it performs better on mid-term timeframes such as 3h,4h and 6h. BBWP outperforms on 1h and 1d, with lower timeframes being comparable.
From the results, using HAVP over BBWP tends to result in reduced holding time and more frequent trades, which may or may not be desirable, although the behaviour can be adjusted using the parameters provided.
For instance, the smoother oscillation provided by HAVP provides a great predictability factor and earlier confirmation signals, which is something that Ehler emphasised in his trading style, and something which I agree with personally. I would encourage you to try out both HAVP and BBWP and see which fits your trading style.
Releasing this as open source allows for the betterment of the community and further development, criticism and discussion.
Thanks and enjoy! :)
Cryptogrithm's Secret Momentum and Volatility IndicatorThis indicator is hard-coded for Bitcoin, but you may try it on other asset classes/coins. I have not updated this indicator in over 3 years, but it seems to still work very well for Bitcoin.
This indicator is NOT for beginners and is directed towards intermediate/advanced traders with a sensibility to agree/disagree with what this indicator is signalling (common sense).
This indicator was developed back in 2018 and I has not been maintained since, which is the reason why I am releasing it. (It still works great though! At the time of this writing of May 2022).
How to use:
Terms:
PA (Price Action): Literally the candlestick formations on your chart (and the trend formation). If you don't know how to read and understand price action, I will make a fast-track video/guide on this later (but in the meanwhile, you need to begin by learning Order-Flow Analysis, please google it first before asking).
CG Level (Cryptogrithm Level/Yellow Line): PA level above = bullish, PA level below = bearish
CG Bands (Cryptogrithm Bands): This is similar to how bollingers work, you can use this the same was as bollinger bands. The only difference is that the CG bands are more strict with the upper and lower levels as it uses different calculations to hug the price tighter allowing it to be more reactive to drastic price changes (earlier signals for oversold/overbought).
CG Upper Band (Red Upper Line): Above this upper bound line means overbought.
CG Middle Band (Light Blue Line): If PA trades above this line, the current PA trend is bullish continuing in the uptrend. If PA trades below this line, the current PA trend is bearish continuing in the downtrend. This band should only be used for short-term trends.
CG Lower Band (Green Lower Line): Below this lower bound line means oversold.
What the CG Level (yellow line) tells you:
PA is trading above CG Level = Bullish
PA is trading below CG Level = Bearish
Distance between CG Level and price = Momentum
What this means is that the further away the price is from the CG Level, the greater the momentum of the current PA trend. An increasing gap between the CG Level and PA indicates the price's strength (momentum) towards the current upward/downward trend. Basically when the PA and CG Level diverge, it means that the momentum is increasing in the current trend and when they converge, the current trend is losing momentum and the direction of the PA trend may flip towards the other direction (momentum flip).
PA+CG Level Momentum:
To use the CG Level as a momentum indicator, you need to pay attention to how the price and the CG level are moving away/closer from each other:
PA + CG Level Diverges = Momentum Increasing
PA + CG Level Converges = Momentum Decreasing
Examples (kind of common sense, but just for clarity):
Case 1: Bullish Divergence (Bullish): The PA is ABOVE and trending AWAY above from the CG Level = very bullish, this means that momentum is increasing towards the upside and larger moves will come (increasing gap between the price and CG Level)
Case 2: Bearish Convergence (Bearish): - The PA is ABOVE the CG Level and trending TOWARDS the CG Level = bearish, there is a possibility that the upward trend is ending. Look to start closing off long positions until case 1 (divergence) occurs again.
Case 3: Neutral - The PA is trading on the CG Level (no clear divergence or convergence between the PA and CG Level) = Indicates a back and forth (tug of war) between bears and bulls. Beware of choppy price patterns as the trend is undecisive until either supply/liquidity is dried out and a winner between bull/bear is chosen. This is a no trade zone, but do as you wish.
Case 4: Bearish Divergence (Bearish): The PA is BELOW and trending AWAY BELOW from the CG Level = very bearish, this means that momentum is increasing towards the downside and larger downward moves will come (increasing gap between the price and CG Level).
Case 5: Bullish Convergence (Bullish): - The PA is BELOW the CG Level and trending TOWARDS the CG Level = bullish, there is a possibility that the downward trend is ending and a trend flip is occuring. Look to start closing off short positions until case 4 (divergence) occurs again.
CG Bands + CG Level: You can use the CG bands instead of the PA candles to get a cleaner interpretation of reading the momentum. I won't go into detail as this is pretty self-explanatory. It is the same explanation as PA+CG Level Momentum, but you are replacing the PA candles with the CG Bands for interpretation. So instead of the PA converging/diverging from the CG Level, the Upper and Lower Bound levels are converging/diverging from the CG level instead.
Convergence: CG Level (yellow line) trades inside the CG bands
Divergence: CG Level (yellow line) trades outside the CG bands
Bullish/Bearish depends on whether the CG Band is trading below or above the CG level. If CG Band is above the CG Level, this is bullish. If CG Band is below the CG level, this is bearish.
Crosses (PA or CG Band crosses with CG level): This typically indicates volatility is incoming.
There are MANY MANY MANY other ways to use this indicator that is not explained here and even other undiscovered methods. Use some common sense as to how this indicator works (it is a momentum indicator and volatility predictor). You can get pretty creative and apply your own methods / knowledge to it and look for patterns that occur. Feel free to comment and share what you came up with!
Directional Volatility and VolumeAn oscillator that manages to display the direction of volatility and volume in a single indicator. This allows viewing the trend in concert with the volume strength. Thus a trader can check if the price movement has volatility and volume behind it or not.
Action Section, Volatility Choppiness Indicator (by ChartArt)Here is a solution to find entry points to trade. This indicator highlights price sections with low choppiness, where both the ADX (Average Directional Index) indicator shows strong movement (up or down!) in the price and a customized Money Flow indicator (which uses only the change of the volume not the change of the price, hence a Volume Flow indicator), also shows volatility is present. Using higher filter values than the default setting of "30" reduces the noise, but also shows less 'action sections'. Vice versa using values lower than "30" increases the amount and duration of action sections which are shown.
The "action section" indicator does not show the direction if the price is going up or down. It shows if there is enough action worthy the time to trade (lower odds of a neutral sideways trend). Therefore in addition a Heikin-Ashi based price change indicator can optionally be plotted, which shows the actual direction of the price.
Action Section, High Volume Volatility & Low Price Choppiness Indicator
This indicator works only on charts which have volume data.
[RS]Volatility Bands V0EXPERIMENTAL:
Displays Volatility Cycles and forecasts maximum volatility expectancy for a predetermined time frame.
Honest Volatility Grid [Honestcowboy]The Honest Volatility Grid is an attempt at creating a robust grid trading strategy but without standard levels.
Normal grid systems use price levels like 1.01;1.02;1.03;1.04... and place an order at each of these levels. In this program instead we create a grid using keltner channels using a long term moving average.
🟦 IS THIS EVEN USEFUL?
The idea is to have a more fluid style of trading where levels expand and follow price and do not stick to precreated levels. This however also makes each closed trade different instead of using fixed take profit levels. In this strategy a take profit level can even be a loss. It is useful as a strategy because it works in a different way than most strategies, making it a good tool to diversify a portfolio of trading strategies.
🟦 STRATEGY
There are 10 levels below the moving average and 10 above the moving average. For each side of the moving average the strategy uses 1 to 3 orders maximum (3 shorts at top, 3 longs at bottom). For instance you buy at level 2 below moving average and you increase position size when level 6 is reached (a cheaper price) in order to spread risks.
By default the strategy exits all trades when the moving average is reached, this makes it a mean reversion strategy. It is specifically designed for the forex market as these in my experience exhibit a lot of ranging behaviour on all the timeframes below daily.
There is also a stop loss at the outer band by default, in case price moves too far from the mean.
What are the risks?
In case price decides to stay below the moving average and never reaches the outer band one trade can create a very substantial loss, as the bands will keep following price and are not at a fixed level.
Explanation of default parameters
By default the strategy uses a starting capital of 25000$, this is realistic for retail traders.
Lot sizes at each level are set to minimum lot size 0.01, there is no reason for the default to be risky, if you want to risk more or increase equity curve increase the number at your own risk.
Slippage set to 20 points: that's a normal 2 pip slippage you will find on brokers.
Fill limit assumtion 20 points: so it takes 2 pips to confirm a fill, normal forex spread.
Commission is set to 0.00005 per contract: this means that for each contract traded there is a 5$ or whatever base currency pair has as commission. The number is set to 0.00005 because pinescript does not know that 1 contract is 100000 units. So we divide the number by 100000 to get a realistic commission.
The script will also multiply lot size by 100000 because pinescript does not know that lots are 100000 units in forex.
Extra safety limit
Normally the script uses strategy.exit() to exit trades at TP or SL. But because these are created 1 bar after a limit or stop order is filled in pinescript. There are strategy.orders set at the outer boundaries of the script to hedge against that risk. These get deleted bar after the first order is filled. Purely to counteract news bars or huge spikes in price messing up backtest.
🟦 VISUAL GOODIES
I've added a market profile feature to the edge of the grid. This so you can see in which grid zone market has been the most over X bars in the past. Some traders may wish to only turn on the strategy whenever the market profile displays specific characteristics (ranging market for instance).
These simply count how many times a high, low, or close price has been in each zone for X bars in the past. it's these purple boxes at the right side of the chart.
🟦 Script can be fully automated to MT5
There are risk settings in lot sizes or % for alerts and symbol settings provided at the bottom of the indicator. The script will send alert to MT5 broker trying to mimic the execution that happens on tradingview. There are always delays when using a bridge to MT5 broker and there could be errors so be mindful of that. This script sends alerts in format so they can be read by tradingview.to which is a bridge between the platforms.
Use the all alert function calls feature when setting up alerts and make sure you provide the right webhook if you want to use this approach.
Almost every setting in this indicator has a tooltip added to it. So if any setting is not clear hover over the (?) icon on the right of the setting.
Vo-S-Di-T-I - Volatility Scaled Directional Trend IndicatorThis code represents just the foundation for what's to come. It lays the groundwork for a more sophisticated quant trading model, offering a glimpse into the potential of future developments. I hope my contribution to this community will be valued. I'm here for idea exchanges and coding together, with the key emphasis on ensuring everything we do is grounded on a solid statistical basis.
----------------------------------------------------------------------------------------------------------------------
The developed code is based on a rigorous quantitative approach for analyzing price trends in the equity sector, utilizing advanced statistical methodology to scale returns based on the volatility observed over predefined periods of 20 and 50 days. This technique for normalizing returns allows us to eliminate distortions due to the intrinsic variability of prices and focus on the underlying structure of price behavior. The primary goal of the code is not to speculatively predict future market movements but rather to identify potential reversal trend signals through price dynamics analysis, within an optimized risk and return context.
Our approach is distinguished by the use of statistical decomposition techniques and time series analysis to interpret price variations as indicators of possible shifts in market behavior. This allows distinguishing between random or short-term price movements and true trend changes, providing a solid foundation for more informed investment decisions.
The current code represents the initial phase of a broader project that envisages the integration of machine learning algorithms to further refine the ability to detect significant changes in price trends. Through the application of predictive models and machine learning techniques, we intend to explore complex patterns in historical price data that may precede trend reversals, always respecting the principles of rigorous statistical analysis and risk management. This development and learning path will allow us to continuously improve investment strategies, leveraging the analytical capabilities of modern data science algorithms applied to the financial sector.
HOW TO READ
Simply put, Z values above 0 indicate an uptrend, while values below indicate a downtrend. IMPORTANT: It is not necessary to consider any crosses between Z-Short and Z-Long, but only potential crosses with 0.
The initial values are set at 20 and 50, but everyone is free to choose the most suitable periods, as long as all choices have valid statistical significance. My advice is to use R or MatLab to explore the best correlation between N and price movements. The reason I have set two values for N (Short and Long) is because it's interesting to assess short-term and medium-to-long-term trends to understand if price movements can lead to reversals only in the short term or also in the medium to long term. This idea came to me because I believe all other trend determination systems have too much lag and unpredictability.
Qullamaggie ADR and Volatility and Price Change IndicatorElevate your trading strategy with Qullamaggie ADR, a dynamic indicator inspired by the Kristjan Qullamaggie trading approach. Gain a deeper understanding of market dynamics, daily price movements, and potential turning points.
Key Features:
Qullamaggie ADR: Assess market volatility through the QullaADR, offering customizable time intervals (5, 10, 15, 20 days) to adapt to various trading styles.
Today's Change: Monitor price changes relative to the low of the current trading day, providing valuable intraday insights.
PrevDay price differentials from the previous day's low, aiding in the identification of potential trend reversals.
Track the percentage change from the opening price, offering a snapshot of intraday market sentiment.
Percent from 10-day SMA: Visualize the percentage difference between the closing price and a 10-day Simple Moving Average (SMA), a key trend-following indicator.
Usage:
Utilize QullaADR to set realistic profit targets and stop-loss levels based on current market conditions.
Identify potential trend shifts by observing changes from the previous day's low with Today's QullaChange.
Incorporate QullaPercent from 10-day SMA for trend confirmation and well-informed trading decisions.
Strategy Inspiration:
QullaADR draws inspiration from the Kristjan Qullamaggie trading strategy, aiming to complement your trading toolkit and enhance decision-making.
Disclaimer:
Trading involves risk, and past performance is not indicative of future results. Use this indicator as a supplementary tool within a comprehensive trading strategy.
Version: 1.0
Exponential Regression Channel with novel volatilityThis code is a modified version of the built-in "linear regression" script of Tradingviews which can be plotted correctly on logarithmic charts
The log reg code of Forza was adjusted by altustro to generate an exponential regression (or a correct linear regression on the log scale, this is equivalent).
The standard deviation in the log scale is a better volatility measure which we call novola, and which defines the trend channel displayed in addition to the main indicator.
The exponential regression slope and channel also defines the typical holding time of the stock and the SL/TP boundaries, which are calculated and displayed at the last bar.
The display works both in log and regular scale. But only in the log scale it can be compared to the linear extension, which can also be plotted when activated in the properties.
The underlying exponential fit can not be displayed in regular scale as only lines can be plotted by TV. But with the related script Exponental Regression also the exponential regression can be exactly displayed using a workaround.
Volume, Momentum and Volatility weighted moving averageMoving averages are filters on price data. This moving average creates a filter which factors in:
- the price RSI or it's Momentum
- the volume RSI
- the RVI or Volatility
Each factor is put through a least squares filter to smooth them first.
Then the factors are used to build a coefficient for an exponentially weighted average.
The chart above shows a comparison of standard average types with this script.
This is useful if you are looking for a moving average based trigger and do not wish to react to candle noise price action.
Candle-Box RatioVolatility compression/expansion indicator calculated from the ratio of the area of the candles to the area of a rectangle encompassing the candles over n bars.
Generally during a squeeze or compression the ratio between the candles and the rectangular area increases, ie the candles occupy a larger portion of the rectangle, and vice versa during a release/expansion. It is inherently low lag due to the lack of any averaging in the calculation since the start of an expansion/breakout will instantly change the dimensions of the encompassing rectangle and the corresponding ratio. A potential downside is that different lengths will produce significantly different results which will require tuning to optimize for specific instruments and timeframes.
Additional standard deviation bands to identify potential points of volatility change and the option to normalize the output using the stdev bands.
RSI (w/ Curve and Volatility)This is a centered triple oscillator which measures RSI, RVI (volatility), and Coppock Curve (trend). This is centered so it ranges from negative 50 to positive 50. This indicator is used most accurately when all 3 indicators show above/below 0.
RSI is the bright pink line. RSI determines strength in a direction. When it is above 20 or below -20, a pullback is likely - this could be a prime time to scale out of position. Remember do not enter a trade just because it is oversold, as the strength is still greatly against you.
RVI is the thin lighter line. RVI was created by Donald Dorsey to use in conjunction with other indicators. The instructions for using RVI is to sell/short when below -10 and buy/cover when above 10. Use this indicator to confirm your bias.
The purple area is the Coppock curve . This curve is used to analyze longer term trends in a chart. RSI and RVI struggle to indicate long term trends, use the Coppock curve to confirm your bias. The curve is bullish when above 0 and bearish when below 0. Be cautious when trying to buy or sell it early when its falling. If it is falling and pops back up without reaching 0, it is typically indicate of a big price movement in that direction.
CryptoMedication's Volatility RSI
So, here's what we ended up doing for the most recent one that we created.
1. We took the ATR (Average True Range) - You can read about that here: medium.com
2. Then applied the Bollinger Bands %B to it
3. Then overlayed it with another indicator
Purpose:
The general purpose of this indicator is to identify when there are periods of consolidation or if there were be a large increase in the price (going either way). However, we were able to plug this in so that it connected with the RSI (after cancelling out the noise and smoothing values*making it scaled out evenly), so that it also produces buy/sell signals.
If you're interested to get a more in-depth overview of how this works, visit this link here: medium.com
[tududu] Volatilidade Lenta (Slow Volatility)Um modelo de volatilidade lenta baseado nas bandas de 91 períodos em até 4 desvios padrões. Tenho utilizado esse modelo para identificar oportunidades de alavancagem em condições extremas de mercado. Considero o modelo usual de Bollinger muito suscetível a ruídos e incapaz de lidar com acréscimo súbito de volatilidade, por isso busquei um rastreamento lento mais confiável com sinais de menor frequência. A princípio deve ser utilizado no diário, porém mesmo no intradiário pode ser um indicador mais confiável que as bandas de 20 períodos.
---
Slow Volatility model based on 91 SMA up to 4 standard deviations. It can be used as 'leverage indicator' ,pinpointing extreme market conditions that allows safer leverage. Usual Bollinger Bands are way too prone to noise, so this slow variant is much more reliable, albeit it provides much less frequent signals. To be used on daily chart, but feel free to test it on intraday charts.
Price Action Volatility FilterThis creates a none oscillating histogram that shows price action without lower time frame volatility to help show bias for use with macd or entries with other trending indicators.
[RS]Volatility Explosive Measure V0EXPERIMENTAL:
Measures the volatility range of current price range, can help detect squeezes as well explosive moves
yuthavithi volatility based force trade scalper strategyI have converted my volatility based force scalper into strategy. Nice to see it is so profitable. Work best with Heikin Ashi bar.
Vervoort Volatility Bands [LazyBear]This is Mr. Vervoort's take on volatility bands. Sticking to his style, he uses highly smoothed data everywhere, also improves on the way the bands are calculated. Is this better than others? I will let you guys decide :)
More info:
www.traders.com
List of my other indicators:
- Chart:
- GDoc: docs.google.com
FVE (Volatility Modified) This is another version of FVE indicator that we have posted earlier
in this forum.
This version has an important enhancement to the previous one that`s
especially useful with intraday minute charts.
Due to the volatility had not been taken into account to avoid the extra
complication in the formula, the previous formula has some drawbacks:
The main drawback is that the constant cutoff coefficient will overestimate
price changes in minute charts and underestimate corresponding changes in
weekly or monthly charts.
And now the indicator uses adaptive cutoff coefficient which will adjust to
all time frames automatically.