Normalized Volume Zone [Orderflowing]Normalized Volume Zone | Normalized VZO | Volume Analysis | Normalization (+) | Customizable (+)
Built using Pine Script V5.
Introduction
The Normalized Volume Zone is an indicator rooted in the classic VZO concept, this indicator takes a step further by normalizing the volume data.
Ideal for traders who rely heavily on volume data and seek a normalized dataset to interpret volume trends and signals.
Inspiration and Innovation
The tool builds upon the foundational concepts of the Volume Zone Oscillator (VZO), introduced by Walid Khalil and David Steckler.
This indicator enhances the traditional VZO by introducing advanced normalization calculations, offering traders a new approach to volume-based market analysis.
Core Features
Calculation Sources: Choose from HLC3, OHLC4, close, or open for VZO calculations.
Customizable Periods: Set your preferred periods for VZO calculation, MA length, and percentile lookback, the indicator bends to your trading style.
Advanced Smoothing Options: Select from a range of smoothing methods like HMA, Fourier, SMA, EMA, WMA, DEMA, and TEMA for the VZO line.
Normalization Techniques: Apply normalization methods such as Percentile, Min-Max, Z-Score, or Log to the VZO data.*
Visual Enhancements: Color-coded VZO and MA lines, along with optional dots for significant changes, provide clear visual cues for easier interpretation.
Multi-Timeframe: Can be used on different timeframes for calculation.
*Some of the normalization methods require that you change the length of smoothing.
Example of Multi-Timeframe (4H Calculation on 30M Chart):
Example of HMA Smoothing & Z-Score Normalization:
Functionality
Normalization: The indicator normalizes the smoothed VZO data, making it more consistent and comparable across different trading scenarios.
Visual: The color changes in the VZO and MA lines, along with the optional dots, offer dynamic visual feedback on market conditions.
Usage and Applications
Volume Trend Analysis: The normalized VZO provides a good picture of volume trends, helping traders identify potential reversals or continuation patterns.
Comparative Analysis: Normalization allows for more meaningful comparisons of volume data across different instruments or time frames.
Risk Management: Use the indicator to filter instrument strength and volatility.
Conclusion
The Normalized Volume Zone indicator stands as a great indicator in volume-based trading analysis.
By normalizing the data, it offers traders a custom view of the volume oscillation.
This indicator is particularly valuable for those who prioritize volume in their analysis, providing a good view of market strength and momentum.
It is important to remember that while this indicator offers volume analysis, it is not recommended to only use this for trading decisions.
M-oscillator
LuxAlgo - Backtester (OSC)The OSC Backtester is an innovative strategy script that allows users to create a wide variety of strategies using various unique oscillators.
By utilizing our 'Step' and 'Match' algorithms, users can create custom and complex strategy entries from each of the supported oscillators and included conditions, as well as any external sources, allowing users to create entries from a sequence of conditions and/or multiple matching conditions.
We included a complete alert system that will send a notification for each action taken by the strategy and we also allow users to set custom messages for each action taken by a strategy.
🔶 Features
🔹 Step & Match Algorithm
More complex entry rules can be created by using multiple conditions together, this is done thanks to the Step dropdown setting on the right of each condition.
The Step setting is directly related to the Step & Match algorithm and works in two ways:
When two or more conditions have the same step number, both conditions are evaluated. Used to test matching conditions.
When two or more conditions have different step numbers, each conditions will be evaluated in order, testing for the first step and switching to the next step once the previous one is true. When the final step is true the strategy will open a market order. Used to create sequence of conditions.
This operation is complementary, as you can create a sequence of conditions with one step consisting of two or more matching conditions as long as they have the same step number.
🔹 Fully Customizable Entries From Various Oscillators And Conditions
We allow the users to set entries using our unique HyperWave, Smart Money Flow, and their derived conditions as entries.
The Hyper Wave is a normalized adaptive oscillator aiming to reflect price trends without returning a high amount of noise.
The Smart Money Flow aims to detect trends based on market activity, by doing a comparative analysis between current volume and historical volume. A Smart Money Flow above 50 suggest market participants are bullish, else bearish. Derived from this oscillator we have Overflow indications, this indicator detects when market is overbought or oversold based on participants activity.
Other entries include proprietary reversal signals, real-time divergence detection, oscillator confluence (indicating how aligned each oscillator is), as well as entries using external sources.
🔹 Complete Alert System
Users can get alerted for any action executed by a strategy, from opening positions to closing them.
The message field in the Alert Messages setting section allows for the strategy to send a custom alert message depending on the action taken by the strategy, if no messages are set the strategy will send default messages.
🔶 Usage
Users can create a wide variety of strategies from this script, whether they are trend-following or contrarian traders.
Let's see a contrarian (revesal-based) strategy example using the following entry conditions:
Long: Hyperwave bullish divergence and oversold Hyperwave (lower than 20).
Short: Hyperwave bearish divergence and overbought Hyperwave (greater than 20).
We can also introduce take-profit and stop-loss exit conditions based on external indicators, allowing more control over exits in our strategy. For example:
Long: Hyperwave crossing over 50 while money flow is bearish.
Short: Hyperwave crossing under 50 while money flow is bullish.
Exit Long on a profit (long exit tp): Hyperwave crossing 80.
Exit Short on a profit (short exit tp): Hyperwave crossing 20.
While this strategy script can be used as a standalone, we recommend using other indicators creatively to assist with entries and exits as well as TP/SLs.
Our Step & Match algorithm can magnify interoperability, allowing for way more complete strategies through complex conditions, let's demonstrate this using the following entries:
Long: Any bullish reversal occurring after the price crosses over the lowest upper reversal zone of the Signals & Overlays™.
Short: Any bearish reversal occurring after the price crosses under the highest lower reversal zone of the Signals & Overlays™.
Long TP/SL: 5 ATR's away from the entry price.
Short TP/SL: 5 ATR's away from the entry price.
🔶 Strategy Properties (Important)
This script backtest is done on daily EURGBP, using the following backtesting properties:
Balance (default): 10 000 (default base currency)
Order Size: 10% of the equity
Comission: 3.4 pips (average spread for EURGBP)
Slippage: 3 tick
Stop Loss: 0.02 points away from entry price
We use these properties to ensure a realistic preview of the backtesting system, do note that default properties can be different for various reasons described below:
Order Size: 1 contract by default, this is to allow the strategy to run properly on most instruments such as futures.
Comission: Comission can vary depending on the market and instrument, there is no default value that might return realistic results.
We strongly recommend all users to ensure they adjust the Properties within the script settings to be in line with their accounts & trading platforms of choice to ensure results from the strategies built are realistic.
🔶 How To Access
You can see the Author's Instructions below to learn how to get access.
Machine Learning: Optimal Length [YinYangAlgorithms]This Indicator aims to solve an issue that most others face; static lengths. This Indicator will scan lengths from the Min to Max setting (1 - 400 by default) to calculate which is the most Optimal Length in the current market condition. Almost every Indicator uses a length in some part of their calculation, and this length is usually adjustable via the Settings; however it is generally a static fixed length. Static non changing lengths may not always produce optimal results. As market conditions change generally the optimal length will too. For this reason we have created this indicator.
This Indicator will create a Neutral (Min - Max Length), Fast (Min - Mid Length ((Max - Min) / 2)) and Slow (Mid Length ((Max - Min) / 2) - Max Length). This allows you to understand which the Optimal Fast, Slow and Neutral lengths are within the given Mix and Max length settings.
This Indicator then plots these Optimal Lengths as an Oscillator which can then be used within ANOTHER Indicator as a Source within its Settings. Stand alone this Indicator may not prove all that useful, however when its Lengths are inputted into another Indicator it may prove very useful. This allows other Indicators to use the Optimal Length within its calculations from the Settings rather than relying on simply a fixed length. Unfortunately this results in users needing to manually plug the Optimal Length plots into the second Indicator; but it also allows for endless possibilities with applying Machine Learning Optimal Lengths within both Traditional and Non-Traditional Indicators and may give other Pine Coders an easy and effective way to add Machine Learning auto adjustable lengths within their already created Indicators.
The beautiful part about this Indicator is that aside from inputting the Optimal Length Plot into another Indicator, there is no manual updating needed. When the Optimal Length changes, the change will automatically reflect in the other Indicator without the need for you to manually adjust its length. This may be very useful with both time preservation, as well as if there is an automated strategy based upon said Indicator that now won’t need manual intervention.
Tutorial:
By default this is what the Machine Learning: Optimal Length Indicator looks like. It is simply a way of both Displaying and Plotting our current Optimal Length so that we may then use it as a source within ANOTHER Indicator. This will allow the automation of an Optimal Length to be updated, rather than needing any manual input from yourself (aside from set up).
For instance if you set the start length to 1 and the end length to 400 (default settings), it will scan to find the optimal Length setting between 1 and 400. This features 3 types of lengths:
Fast (Green Line): 1-199 (from start length to half way of total)
Slow (Red Line): 200 - 400 (mid way to end length)
Neutral (Blue Line): 1 - 400 (start to end length)
By breaking down the Optimal Length detection into these 3 different types, we can see how the Optimal Length compares and changes based on the lengths allotted to them and how performance changes.
For instance, you may notice that both the Fast and Slow Optimal Length didn’t change much in the example above; however the Neutral Optimal Length changed quite a bit. This is due to the fact that the Neutral is inclusive of all lengths available and may be considered the more accurate due to that. However, this doesn’t mean the Fast and Slow lengths aren’t important and should be used. They may be useful for seeing how something fairs in a Fast and Slow standpoint.
If you change your TimeFrame from 15 minute to 1 Day, you’ll notice that the Optimal Lengths gravitate towards their upper bounds:
199 is max for Fast, it’s at 195
400 is max for Slow, its at 393
400 is max for Neutral, its at 399
The Optimal Length may move up to its upper bounds on Higher Time Frames because there is a lot of price action and long term data being displayed. This may lead to higher lengths performing better in a profitability standpoint since its data is based on so far back and such drastic price movements.
Below we’re going to go through a few examples, including the code so you may reproduce the example and have an understanding of how versatile Inputting an Optimal Length as a source may be within Traditional Indicators.
Adding the Machine Learning: Optimal Length to another Indicator:
You may add the Optimal Length to another Indicator as shown in the example above. In the example we are adding the ‘Machine Learning: Optimal Length - Neutral’ to our Neutral Length within the Settings. The external Indicator needs to have the ability to input the Optimal Length as a Source, this way it can automatically change within the external Indicator when the Optimal Length Indicator changes its Optimal Length.
Please note you may get an error within an external Indicator that accepts the Length as a Source if you don’t select the Machine Learning: Optimal Length. For instance, if you use ‘Close’ within BTC/USDT the length used would be ~36,000. This length is too long and will throw an error.
For this reason, we will ensure the Max Length that may be used is 1000.
Please note, on lower Time Frames you may need to adjust the Max Length. For instance if 20k bar data is used, the Max Length ‘may’ fail to load when going by default Min: 1 and Max: 400. Generally with most pairs it will load if your TradingView subscription is Premium or greater; however if it is less there is a chance it may fail. If it fails for you too often please lower the Max Length Amount; or send us a message we can look into a fix for this.
*** If it fails to load, please try removing the external Indicator and re-adding it and adding the Lengths back as a Source within the Settings. Sometimes it fails, but re-adding may fix it. If it keeps failing afterwards, reduce the Max Length Amount as mentioned above. ***
Simple Moving Average:
In this example above have the Fast, Slow and Neutral Optimal Length formatted as a Slow Moving Average. The first example is on the 15 minute Time Frame and the second is on the 1 Day Time Frame, demonstrating how the length changes based on the Time Frame and the effects it may have.
Here is the code for the example Indicator shown above. This example shows how you may use the Optimal Length as a Source and then use that Optimal Length and plot it as a Simple Moving Average:
//@version=5
indicator("Optimal Length - Backtesting - MA", overlay=true, max_bars_back=5000)
outputType = input.string("All", "Output Type", options= )
lengthSource = input.source(close, "Neutral Length")
lengthSource_fast = input.source(close, "Fast Length")
lengthSource_slow = input.source(close, "Slow Length")
showNeutral = outputType == "Neutral" or outputType == "Fast + Neutral" or outputType == "Slow + Neutral" or outputType == "All"
showFast = outputType == "Fast" or outputType == "Fast + Neutral" or outputType == "Fast + Slow" or outputType == "All"
showSlow = outputType == "Slow" or outputType == "Slow + Neutral" or outputType == "Fast + Slow" or outputType == "All"
//Neutral
optimalLength = math.min(math.max(math.round(lengthSource), 1), 1000)
optimalMA = ta.sma(close, optimalLength)
//Fast
optimalLength_fast = math.min(math.max(math.round(lengthSource_fast), 1), 1000)
optimalMA_fast = ta.sma(close, optimalLength_fast)
//Slow
optimalLength_slow = math.min(math.max(math.round(lengthSource_slow), 1), 1000)
optimalMA_slow = ta.sma(close, optimalLength_slow)
plot(showNeutral ? optimalMA : na, color=color.blue)
plot(showFast ? optimalMA_fast : na, color=color.green)
plot(showSlow ? optimalMA_slow : na, color=color.red)
Bollinger Bands:
In the two examples above for Bollinger Bands we have first the 15 Minute Time Frame and then the 1 Day Time Frame. As described above in ‘Adding the Machine Learning: Optimal Length to another Indicator’ sometimes it may fail to load, for this reason in the 15 Minute it was reduced to a max of 300 Length.
Bollinger Bands are a way to see a Simple Moving Average (SMA) that then uses Standard Deviation to identify how much deviation has occurred. This Deviation is than Added and Subtracted from the SMA to create the Bollinger Bands which help Identify possible movement zones that are ‘within range’. This may mean that the price may face Support / Resistance when it reaches the Outer / Inner bounds of the Bollinger Bands. Likewise, it may mean the Price is ‘Overbought’ when outside and above or ‘Underbought’ when outside and below the Bollinger Bands.
By applying All 3 different types of Optimal Lengths towards a Traditional Bollinger Band calculation we may hope to see different ranges of Bollinger Bands and how different lookback lengths may imply possible movement ranges on both a Short Term, Long Term and Neutral perspective. By seeing these possible ranges you may have the ability to identify more levels of Support and Resistance over different lengths and Trading Styles.
Below is the code for the Bollinger Bands example above:
//@version=5
indicator("Optimal Length - Backtesting - Bollinger Bands", overlay=true, max_bars_back=5000)
outputType = input.string("All", "Output Type", options= )
lengthSource = input.source(close, "Neutral Length")
lengthSource_fast = input.source(close, "Fast Length")
lengthSource_slow = input.source(close, "Slow Length")
showNeutral = outputType == "Neutral" or outputType == "Fast + Neutral" or outputType == "Slow + Neutral" or outputType == "All"
showFast = outputType == "Fast" or outputType == "Fast + Neutral" or outputType == "Fast + Slow" or outputType == "All"
showSlow = outputType == "Slow" or outputType == "Slow + Neutral" or outputType == "Fast + Slow" or outputType == "All"
mult = 2.0
src = close
neutralColor = color.blue
slowColor = color.red
fastColor = color.green
//Neutral
optimalLength = math.min(math.max(math.round(lengthSource), 1), 1000)
optimalMA = ta.sma(close, optimalLength)
//Fast
optimalLength_fast = math.min(math.max(math.round(lengthSource_fast), 1), 1000)
optimalMA_fast = ta.sma(close, optimalLength_fast)
//Slow
optimalLength_slow = math.min(math.max(math.round(lengthSource_slow), 1), 1000)
optimalMA_slow = ta.sma(close, optimalLength_slow)
//Neutral Bollinger Bands
dev = mult * ta.stdev(src, math.round(optimalLength))
upper = optimalMA + dev
lower = optimalMA - dev
plot(showNeutral ? optimalMA : na, "Neutral Basis", color=color.new(neutralColor, 0))
p1 = plot(showNeutral ? upper : na, "Neutral Upper", color=color.new(neutralColor, 50))
p2 = plot(showNeutral ? lower : na, "Neutral Lower", color=color.new(neutralColor, 50))
fill(p1, p2, title = "Neutral Background", color=color.new(neutralColor, 96))
//Slow Bollinger Bands
dev_slow = mult * ta.stdev(src, math.round(optimalLength_slow))
upper_slow = optimalMA_slow + dev_slow
lower_slow = optimalMA_slow - dev_slow
plot(showFast ? optimalMA_slow : na, "Slow Basis", color=color.new(slowColor, 0))
p1_slow = plot(showFast ? upper_slow : na, "Slow Upper", color=color.new(slowColor, 50))
p2_slow = plot(showFast ? lower_slow : na, "Slow Lower", color=color.new(slowColor, 50))
fill(p1_slow, p2_slow, title = "Slow Background", color=color.new(slowColor, 96))
//Fast Bollinger Bands
dev_fast = mult * ta.stdev(src, math.round(optimalLength_fast))
upper_fast = optimalMA_fast + dev_fast
lower_fast = optimalMA_fast - dev_fast
plot(showSlow ? optimalMA_fast : na, "Fast Basis", color=color.new(fastColor, 0))
p1_fast = plot(showSlow ? upper_fast : na, "Fast Upper", color=color.new(fastColor, 50))
p2_fast = plot(showSlow ? lower_fast : na, "Fast Lower", color=color.new(fastColor, 50))
fill(p1_fast, p2_fast, title = "Fast Background", color=color.new(fastColor, 96))
Donchian Channels:
Above you’ll see two examples of Machine Learning: Optimal Length applied to Donchian Channels. These are displayed with both the 15 Minute Time Frame and the 1 Day Time Frame.
Donchian Channels are a way of seeing potential Support and Resistance within a given lookback length. They are a way of withholding the High’s and Low’s of a specific lookback length and looking for deviation within this length. By applying our Fast, Slow and Neutral Machine Learning: Optimal Length to these Donchian Channels way may hope to achieve a viable range of High’s and Low’s that one may use to Identify Support and Resistance locations for different ranges of Optimal Lengths and likewise potentially different Trading Strategies.
The code to reproduce these Donchian Channels as displayed above is so:
//@version=5
indicator("Optimal Length - Backtesting - Donchian Channels", overlay=true, max_bars_back=5000)
outputType = input.string("All", "Output Type", options= )
lengthSource = input.source(close, "Neutral Length")
lengthSource_fast = input.source(close, "Fast Length")
lengthSource_slow = input.source(close, "Slow Length")
showNeutral = outputType == "Neutral" or outputType == "Fast + Neutral" or outputType == "Slow + Neutral" or outputType == "All"
showFast = outputType == "Fast" or outputType == "Fast + Neutral" or outputType == "Fast + Slow" or outputType == "All"
showSlow = outputType == "Slow" or outputType == "Slow + Neutral" or outputType == "Fast + Slow" or outputType == "All"
mult = 2.0
src = close
neutralColor = color.blue
slowColor = color.red
fastColor = color.green
//Neutral
optimalLength = math.min(math.max(math.round(lengthSource), 1), 1000)
optimalMA = ta.sma(close, optimalLength)
//Fast
optimalLength_fast = math.min(math.max(math.round(lengthSource_fast), 1), 1000)
optimalMA_fast = ta.sma(close, optimalLength_fast)
//Slow
optimalLength_slow = math.min(math.max(math.round(lengthSource_slow), 1), 1000)
optimalMA_slow = ta.sma(close, optimalLength_slow)
//Neutral Donchian Channels
lower_dc = ta.lowest(optimalLength)
upper_dc = ta.highest(optimalLength)
basis_dc = math.avg(upper_dc, lower_dc)
plot(showNeutral ? basis_dc : na, "Donchain Channel - Neutral Basis", color=color.new(neutralColor, 0))
u = plot(showNeutral ? upper_dc : na, "Donchain Channel - Neutral Upper", color=color.new(neutralColor, 50))
l = plot(showNeutral ? lower_dc : na, "Donchain Channel - Neutral Lower", color=color.new(neutralColor, 50))
fill(u, l, color=color.new(neutralColor, 96), title = "Donchain Channel - Neutral Background")
//Fast Donchian Channels
lower_dc_fast = ta.lowest(optimalLength_fast)
upper_dc_fast = ta.highest(optimalLength_fast)
basis_dc_fast = math.avg(upper_dc_fast, lower_dc_fast)
plot(showFast ? basis_dc_fast : na, "Donchain Channel - Fast Neutral Basis", color=color.new(fastColor, 0))
u_fast = plot(showFast ? upper_dc_fast : na, "Donchain Channel - Fast Upper", color=color.new(fastColor, 50))
l_fast = plot(showFast ? lower_dc_fast : na, "Donchain Channel - Fast Lower", color=color.new(fastColor, 50))
fill(u_fast, l_fast, color=color.new(fastColor, 96), title = "Donchain Channel - Fast Background")
//Slow Donchian Channels
lower_dc_slow = ta.lowest(optimalLength_slow)
upper_dc_slow = ta.highest(optimalLength_slow)
basis_dc_slow = math.avg(upper_dc_slow, lower_dc_slow)
plot(showSlow ? basis_dc_slow : na, "Donchain Channel - Slow Neutral Basis", color=color.new(slowColor, 0))
u_slow = plot(showSlow ? upper_dc_slow : na, "Donchain Channel - Slow Upper", color=color.new(slowColor, 50))
l_slow = plot(showSlow ? lower_dc_slow : na, "Donchain Channel - Slow Lower", color=color.new(slowColor, 50))
fill(u_slow, l_slow, color=color.new(slowColor, 96), title = "Donchain Channel - Slow Background")
Envelopes / Envelopes Adjusted:
Envelopes are an interesting one in the sense that they both may be perceived as useful; however we deem that with the use of an ‘Optimal Length’ that the ‘Envelopes Adjusted’ may work best. We will start with examples of the Traditional Envelope then showcase the Adjusted version.
Envelopes:
As you may see, a Traditional form of Envelopes even produced with our Machine Learning: Optimal Length may not produce optimal results. Unfortunately this may occur with some Traditional Indicators and they may need some adjustments as you’ll notice with the ‘Envelopes Adjusted’ version. However, even without the adjustments, these Envelopes may be useful for seeing ‘Overbought’ and ‘Oversold’ locations within a Machine Learning: Optimal Length standpoint.
Envelopes Adjusted:
By adding an adjustment to these Envelopes, we may hope to better reflect out Optimal Length within it. This is caused by adding a ratio reflection towards the current length of the Optimal Length and the max Length used. This allows for the Fast and Neutral (and potentially Slow if Neutral is greater) to achieve a potentially more accurate result.
Envelopes, much like Bollinger Bands are a way of seeing potential movement zones along with potential Support and Resistance. However, unlike Bollinger Bands which are based on Standard Deviation, Envelopes are based on percentages +/- from the Simple Moving Average.
The code used to reproduce the example above is as follows:
//@version=5
indicator("Optimal Length - Backtesting - Envelopes", overlay=true, max_bars_back=5000)
outputType = input.string("All", "Output Type", options= )
displayType = input.string("Envelope Adjusted", "Display Type", options= )
lengthSource = input.source(close, "Neutral Length")
lengthSource_fast = input.source(close, "Fast Length")
lengthSource_slow = input.source(close, "Slow Length")
showNeutral = outputType == "Neutral" or outputType == "Fast + Neutral" or outputType == "Slow + Neutral" or outputType == "All"
showFast = outputType == "Fast" or outputType == "Fast + Neutral" or outputType == "Fast + Slow" or outputType == "All"
showSlow = outputType == "Slow" or outputType == "Slow + Neutral" or outputType == "Fast + Slow" or outputType == "All"
mult = 2.0
src = close
neutralColor = color.blue
slowColor = color.red
fastColor = color.green
//Neutral
optimalLength = math.min(math.max(math.round(lengthSource), 1), 1000)
optimalMA = ta.sma(close, optimalLength)
//Fast
optimalLength_fast = math.min(math.max(math.round(lengthSource_fast), 1), 1000)
optimalMA_fast = ta.sma(close, optimalLength_fast)
//Slow
optimalLength_slow = math.min(math.max(math.round(lengthSource_slow), 1), 1000)
optimalMA_slow = ta.sma(close, optimalLength_slow)
percent = 10.0
maxAmount = math.max(optimalLength, optimalLength_fast, optimalLength_slow)
//Neutral
k = displayType == "Envelope" ? percent/100.0 : (percent/100.0) / (optimalLength / maxAmount)
upper_env = optimalMA * (1 + k)
lower_env = optimalMA * (1 - k)
plot(showNeutral ? optimalMA : na, "Envelope - Neutral Basis", color=color.new(neutralColor, 0))
u_env = plot(showNeutral ? upper_env : na, "Envelope - Neutral Upper", color=color.new(neutralColor, 50))
l_env = plot(showNeutral ? lower_env : na, "Envelope - Neutral Lower", color=color.new(neutralColor, 50))
fill(u_env, l_env, color=color.new(neutralColor, 96), title = "Envelope - Neutral Background")
//Fast
k_fast = displayType == "Envelope" ? percent/100.0 : (percent/100.0) / (optimalLength_fast / maxAmount)
upper_env_fast = optimalMA_fast * (1 + k_fast)
lower_env_fast = optimalMA_fast * (1 - k_fast)
plot(showFast ? optimalMA_fast : na, "Envelope - Fast Basis", color=color.new(fastColor, 0))
u_env_fast = plot(showFast ? upper_env_fast : na, "Envelope - Fast Upper", color=color.new(fastColor, 50))
l_env_fast = plot(showFast ? lower_env_fast : na, "Envelope - Fast Lower", color=color.new(fastColor, 50))
fill(u_env_fast, l_env_fast, color=color.new(fastColor, 96), title = "Envelope - Fast Background")
//Slow
k_slow = displayType == "Envelope" ? percent/100.0 : (percent/100.0) / (optimalLength_slow / maxAmount)
upper_env_slow = optimalMA_slow * (1 + k_slow)
lower_env_slow = optimalMA_slow * (1 - k_slow)
plot(showSlow ? optimalMA_slow : na, "Envelope - Slow Basis", color=color.new(slowColor, 0))
u_env_slow = plot(showSlow ? upper_env_slow : na, "Envelope - Slow Upper", color=color.new(slowColor, 50))
l_env_slow = plot(showSlow ? lower_env_slow : na, "Envelope - Slow Lower", color=color.new(slowColor, 50))
fill(u_env_slow, l_env_slow, color=color.new(slowColor, 96), title = "Envelope - Slow Background")
Hopefully these examples, including reproducing code, have given you some insight as to how useful this Machine Learning: Optimal Length may be and how another Indicator may easily modify their existing code to incorporate the usage of such Machine Learning: Optimal Length. We likewise will publish a Backtesting Indicator which incorporates all of the concepts we’ve gone over within here; in case you wish to take advantage of the Traditional Indicators mentioned above that allow the input of Machine Learning: Optimal Length and don’t wish to code them.
If you have any questions, comments, ideas or concerns please don't hesitate to contact us.
HAPPY TRADING!
RS for VPAThis is a supporting Indicator for the Volume Price Analysis Script VPA 5.0.
Purpose
To indicate the performance of the stock compared to an Index or any other selected stock. It also provides an idea about the strength of the Reference Index as well.
Description
The indicator is an unbound oscillator moving around a zero line. If the stock is strong then the values are positive and if it is weak the values are negative. If the stock is performing better (Stronger) than the Index the indicator is positive and colored green. If the stock is weaker than the Index it is negative and is colored Red.
The background indicates the strength of the Reference Index/Stock. Bullishness/up trend of the Index/Stock is indicated by yellow colour. Short term uptrend, Mid term uptrend and Long term trends are indicated by different shades of yellow varying from light to Dark. The bearishness / down trend is indicated by blue back ground.
How it Works
The relative strength is calculated by using the formula
RS = Gain of the stock / (Gain of the Ref. Index -1)
= (Stock Price today / Stock Price (N period ago)) /
(Index Price today / Index price (N period ago)) – 1
The Index strength is calculated as below
Short term trend up = 5 ema > 22 ema
Mid Term trend up = 22 ema > 60 ema
Long term trend up = 60 ema > 130 ema
Trend down = 5 ema < 22 ema
How to use
Use this indicator to assist your Price Action Analysis using VPA 5.0. When the Price action and volume indicates Bullishness, you can check if the relative strength is also supporting (Positive and in green Territory). This adds credibility to the Price action. Also check if the index is also positive (the Back ground is yellow). This makes the Price action even stronger. Ideally both the stock and index should be strong. Many time you would find the that the stock is in green territory but the index is in blue territory. This calls for some caution in evaluating the Price Action.
When the price action is positive but the relative strength is negative then one should be cautious and wait for the relative strength to turn positive before any entry decision.
Option for the Indicator
One can select the following from the setting for the indicator
1. Index or reference stock – Default is CNX 500
2. Relative Strength Calculation period – Default is 22
3. The EMA periods for the Index/Reference stock strength calculation
[KVA]nRSIThe nRSI stands as a groundbreaking enhancement of the traditional Relative Strength Index (RSI), specifically engineered for traders seeking a more refined and accurate tool in fast-moving markets.
Customizable Price Change Period (n): Unlike the traditional RSI which solely relies on a fixed period for average gains and losses, the nRSI introduces an additional parameter, n, to calculate price changes.
This adaptation focuses on minimizing market noise, sharpening the indicator's sensitivity to genuine trends and patterns.
Enhanced Signal Precision : By reducing the influence of short-term price spikes and fluctuations, the nRSI delivers a more precise signal. This precision is particularly crucial in volatile market conditions, where traditional indicators may be swayed by transient movements.
Ideal Usage
Strategic Trading Decisions : Ideal for traders who need to filter out insignificant price movements to make more strategic, informed trading decisions.
Reliable Divergence Spotting : Enhanced noise reduction aids in identifying more reliable divergences, key for predicting potential market reversals.
Trend Confirmation : The smoothed RSI, assisted by the moving average, becomes an invaluable tool for confirming the validity of market trends, minimizing false signals.
Detrended Price Rate of ChangeThe Detrended Price Rate of Change is an oscillator developed to help traders identify potential conditions of overbought and oversold markets.
The formula of the oscillator includes both the Detrended price formula, useful to spot divergences, and the Rate of change simplified formula, which helps in identifying overextended markets and gives useful information on price momentum.
ATH Drawdown Indicator by Atilla YurtsevenThe ATH (All-Time High) Drawdown Indicator, developed by Atilla Yurtseven, is an essential tool for traders and investors who seek to understand the current price position in relation to historical peaks. This indicator is especially useful in volatile markets like cryptocurrencies and stocks, offering insights into potential buy or sell opportunities based on historical price action.
This indicator is suitable for long-term investors. It shows the average value loss of a price. However, it's important to remember that this indicator only displays statistics based on past price movements. The price of a stock can remain cheap for many years.
1. Utility of the Indicator:
The ATH Drawdown Indicator provides a clear view of how far the current price is from its all-time high. This is particularly beneficial in assessing the magnitude of a pullback or retracement from peak levels. By understanding these levels, traders can gauge market sentiment and make informed decisions about entry and exit points.
2. Risk Management:
This indicator aids in risk management by highlighting significant drawdowns from the ATH. Traders can use this information to adjust their position sizes or set stop-loss orders more effectively. For instance, entering trades when the price is significantly below the ATH could indicate a higher potential for recovery, while a minimal drawdown from the ATH may suggest caution due to potential overvaluation.
3. Indicator Functionality:
The indicator calculates the percentage drawdown from the ATH for each trading period. It can display this data either as a line graph or overlaid on candles, based on user preference. Horizontal lines at -25%, -50%, -75%, and -100% drawdown levels offer quick visual cues for significant price levels. The color-coding of candles further aids in visualizing bullish or bearish trends in the context of ATH drawdowns.
4. ATH Level Indicator (0 Level):
A unique feature of this indicator is the 0 level, which signifies that the price is currently at its all-time high. This level is a critical reference point for understanding the market's peak performance.
5. Mean Line Indicator:
Additionally, this indicator includes a 'Mean Line', representing the average percentage drawdown from the ATH. This average is calculated over more than a thousand past bars, leveraging the law of large numbers to provide a reliable mean value. This mean line is instrumental in understanding the typical market behavior in relation to the ATH.
Disclaimer:
Please note that this ATH Drawdown Indicator by Atilla Yurtseven is provided as an open-source tool for educational purposes only. It should not be construed as investment advice. Users should conduct their own research and consult a financial advisor before making any investment decisions. The creator of this indicator bears no responsibility for any trading losses incurred using this tool.
Please remember to follow and comment!
Trade smart, stay safe
Atilla Yurtseven
Gorb DNAIntroduction:
Gorb DNA is a versatile indicator using classic technical analysis components such as moving averages, stochastic oscillator, and histogram blending call/put flow analysis with our proprietary DNA algorithm. This indicator is designed to provide traders with useful market direction, volume, and momentum change visual cues.
Overview:
The Gorb DNA Indicator isn't just another momentum tool; it's a complex integration of innovative market analysis techniques.
By combining moving averages, stochastic oscillator, with proprietary algorithms, this indicator offers a multi-layered view of market trends, by merging call/put flow analysis with traditional market flow assessment.
This is designed for all kinds of traders, using a simple method to deliver visual changes in flow, volume, and momentum.
Core Features: Call/Put Flow & DNA
Call/Put Flow Analysis: This component examines the strength of market buying and selling pressures. It analyzes call (buying) and put (selling) flows using price range movements, providing insights smoothed over a defined period for analysis of market sentiment.
DNA Algorithm: A central feature of this indicator, the DNA algorithm utilizes a specialized moving average and oscillator technique to discern market trends. It presents an innovative approach, calculating the difference between bullish and bearish indicators to offer a detailed analysis of market momentum.
Visualization and Color Coding: The indicator employs a color-coded system for ease of interpretation, with distinct colors indicating different market conditions: white for upward/bullish movement and purple for downward/bearish movement. This feature translating complex data into a visual format that is simple to understand.
How Call/Put Flow Works:
Moving averages are used with volume and candlestick highs/lows over a specific range to help determine the overall flow. It then plots a colored line area that looks like a colored wave using just two colors to provide traders with a visual of the current market flow. This can help traders identify changes in sentiment with simple color cues.
How DNA Works:
A stochastic oscillator is used to measure the current price level relative to its price over a specific range period to analyze the momentum for the two DNA strands. Additionally moving averages are used to confirm trend and identify any divergences relative to the momentum. This is then plotted as two lines(DNA Strands) following the same color scheme as Call/Put Flow. When momentum is picking up in a specific direction, the lines will change colors and cross each other, this gives a visual of momentum now being fully on one side until it starts to change colors and flip that direction.
Custom Algorithm Elements:
Gorb DNA isn't just common tools combined into one indicator. It includes proprietary algorithmic elements tailored to enhance technical analysis and timing. These are the reasons what set this indicator apart from common momentum, sentiment, and volume methods.
We recommend experimenting with these features to choose what best suits your trading style.
Settings:
All skill-level friendly presets, easy to enable features with one-click
Call Flow: allows the user to plot a colored area that looks like waves showing increases/decreases in bullish volume (not to be followed blindly)
Put Flow: allows the user to plot a colored area that looks like waves showing increases/decreases in bearish volume (not to be followed blindly)
DNA Strand 1: allows the user to plot one of the algorithm lines to visualize momentum direction (not to be followed blindly)
DNA Strand 2: allows the user to plot one of the algorithm lines to visualize momentum direction (not to be followed blindly)
DNA Strength: allows the user to a histogram displaying momentum volume bars in the background
Flow Threshold: allows users to plot a dotted line to identify when call/put flow is now above average flow range
All colors are changeable for the user to customize to their liking
Call/Put Flow & DNA Demonstration
In the image below, we can see a basic illustration of how these core features function.
As stated above, call/put flow carefully monitors changes in moving averages, volume, and price action. If the market sentiment is shifting one direction, the call/put flow will plot those changes. If market is bullish, call flow should rise and put flow should decrease. The same goes for the opposite if the market is bearish.
As is the same for the DNA strands, if markets momentum is becoming bullish, the lines will change color and then cross to signify a change in momentum and the call flow in the background should match this change. This creates two layers of confluence in an easy understandable visual method.
Using Call/Put Flow
In the image below, we disabled everything but call flow to demonstrate usage.
On the left side of the image, you can see call flow matched price increase, then started to decline. This created a flow divergence, identifying a possible change in price action coming. This happened once flow crossed back below the threshold line and price then beginning to move lower. On the right side of the image, you can see call flow rising and price increasing. This is a good confluence showing there is bullish sentiment building in the market.
In this next image, we disabled everything but put flow to demonstrate usage.
The left side shows a put flow divergence. Put flow is slowly rising just like price is, this can help a trader identify a possible shift in sentiment coming. And on the right side, we have put flow rising above the threshold line and price beginning to decrease. Now we have confluence of bearish sentiment building in the market.
The image below shows only call & put flow enabled, to display what the above two images combined look like.
As you can see in the image above, these flow visuals help identify the underlying market sentiment. And when they cross, it leads to a change in price action in the direction of the sentiment over the threshold line.
Using DNA Strands
The image below has just DNA strands enabled to demonstrate usage.
On the left is a box highlighting bearish momentum cross. In the circles is the change in momentum shifting from bullish to bearish. The move gets stronger as the DNA strands get closer to cross over signifying strength in the move. On the right side is a box highlighting a bullish momentum cross. The circles again, show the change from bearish to bullish momentum. Like previously said, the move gets stronger as the DNA strands get closer to crossing over, signifying strength in that direction.
The next image shows call/put flow and DNA strands enabled for a full complete picture.
The circles labeled (1) are showing the change in momentum from bullish to bearish. Circle (2) shows call flow decreasing and put flow rising above calls. Finally the arrow points to the DNA strands crossing over and put flow rising above the threshold line. This is 3 levels of easy visual confluence showing a change in sentiment, volume, and momentum to the downside.
The next image will be showing the bullish side with call/put flow and DNA strands enabled.
The circles that are labeled (1), show the visual change in momentum on the DNA strands from bearish to bullish. Circle (2) is the crossing of call flow over put flow and the arrow points to the DNA strands crossing over and call flow above the threshold line. Three simple to use visual confluences to identify change in sentiment, volume, and momentum to the upside.
Conclusion:
Our goal is to provide a unique, yet simple approach to market sentiment & momentum analysis. It's a tool developed for traders seeking user-friendly and easy to use tools that provide easy visual insights of market dynamics. We believe in simplicity, effectiveness, and creating tools to support decision making for all traders.
How to get access:
You can see the Author's instructions to get access to this indicator
RISK DISCLAIMER
All content, tools, scripts & education provided by Gorb Algo are for informational & educational purposes only. Trading is risky and most lose their money, past performance does not guarantee future results.
Dope DPOThe "Dope DPO" (DDPO) indicator is a technical analysis tool designed for traders to identify trends and potential trend changes in the market. It's based on the concept of the Detrended Price Oscillator (DPO), but with several enhancements for greater versatility and user customization.
Key Features of the Dope DPO Indicator:
Averaging Multiple Periods: The indicator averages the DPO calculations over ten different time periods. This averaging helps in smoothing out the volatility and providing a more comprehensive view of the market trend.
Customizable Smoothing: Users can choose the length of the smoothing as well as the type of moving average (SMA, EMA, WMA, or RMA) for smoothing. This allows for flexibility in how the indicator responds to price changes.
Trend Change Detection: The indicator includes a feature to detect changes in the market trend. It does this by comparing the current value of the smoothed DPO to its value a specified number of bars back. This helps in identifying potential reversals or shifts in momentum.
Dynamic Color Coding: The indicator uses color coding (green and red) to visually represent the trend direction. If the smoothed DPO is trending upwards compared to a previous value, the color will be green, indicating bullish momentum. Conversely, a red color signifies bearish momentum.
Horizontal Reference Lines: It includes horizontal lines at specific levels (overbought, zero, and oversold) to provide reference points for interpreting the indicator's values.
Usage:
Traders can use the Dope DPO to gauge the overall market trend and to look for potential entry and exit points based on trend changes.
The color-coded histogram makes it easy to spot when the trend might be reversing, which can be particularly useful in conjunction with other technical analysis tools.
The flexibility in choosing the smoothing method and length allows traders to tailor the indicator to different trading styles and timeframes.
Pullback and Throwback Candle [TrendX_]Pullback and Throwback candles can help traders determine the the potential reversal points
USAGE
The indicator identifies pullback and throwback in overbought and oversold zones by measuring the distance between the price and its relative strength index.
A Pullback is an expected rebound in a downtrend (painted in green area), while a Throwback is a bounceback from an uptrend (painted in red area).
The strategy is useful for valuing reversal points. Accordingly, it can also be helpful for traders to use alongside other Technical Analysis indicators.
DISCLAIMER
This indicator is not financial advice, it can only help traders make better decisions.
There are many factors and uncertainties that can affect the outcome of any endeavor, and no one can guarantee or predict with certainty what will occur.
Therefore, one should always exercise caution and judgment when making decisions based on past performance.
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.
Stochastic Signal Enhancer
This script defines a custom Stochastic Oscillator indicator with additional visual features to assist traders in identifying potential buy and sell opportunities based on overbought and oversold conditions, as well as the crossovers of the %K and %D lines.
How the Indicator Works:
Stochastic Oscillator Components:
- The Stochastic Oscillator is a momentum indicator that compares a particular closing price of an asset to a range of its prices over a certain period of time. The sensitivity of the oscillator to market movements is reducible by adjusting the time period or by taking a moving average of the result.
- The script uses inputs for %K length , %K smoothing , and %D smoothing to calculate the Stochastic lines (%K and %D).
Overbought and Oversold Levels:
- The overbought and oversold levels are set by default at 80 and 20 , respectively. These levels are user-adjustable.
- Horizontal lines are drawn on the chart to visually represent these levels.
Trading Signals:
- Buy Signal : A buy signal is generated when the %K line crosses above the oversold level, indicating potential upward momentum as the price may be considered "cheap" or "undervalued".
- Sell Signal : Conversely, a sell signal occurs when the %K line crosses below the overbought level, suggesting downward momentum as the price may be "expensive" or "overvalued".
- Additionally, the indicator plots a " strong buy " arrow when the %K line crosses above the %D line while in the oversold area, and a " strong sell " arrow when the %K line crosses below the %D line in the overbought area. These signals imply a confirmation of the trend reversal.
Visual Elements:
- The %K line is plotted in blue and the %D line in orange.
- Buy and sell opportunities are highlighted with green and red labels respectively, with arrows pointing up for buy and down for sell.
- Strong buy and sell signals due to %K and %D crossovers are marked with blue and yellow arrows.
Performance in Market Trends:
Trending Markets : During strong trends, stochastic signals can result in false signals as the oscillator can remain in overbought or oversold territories for extended periods. It is often more effective in non-trending or sideways markets.
Sideways Markets : In a range-bound market, the Stochastic Oscillator performs well as prices tend to close near the extremes of the recent range before reversing.
Confirmation with Other Indicators : The indicator can be more effective when used in conjunction with other technical analysis tools, such as trend lines or moving averages, to confirm the signals.
Adjustable Parameters : Traders can adjust the parameters (%K length, smoothing values, overbought/oversold levels) to better suit the asset being traded or to align with personal trading styles.
The given script provides a multi-faceted view of the Stochastic Oscillator by not only providing the basic overbought and oversold signals but also by enhancing the visual cues for better decision-making. The additional crossover signals act as a potential confirmation, offering a layered approach to interpreting market momentum and possible reversals.
// © ClearTradingMind
TrendX Earning-Approach Valuation (Stock)TrendX Earning-Approach Valuation (Stock) indicator is a Fundamental Analysis tool that only focus on the Earnings of the company.
USAGE
This Earning-Approach Valuation is easy to use and customize. TrendX valuates a company's Fair Value based on all the earnings multiples and its average with a little interference of users' risk capacity. Technical Analysis is also included as an additional basis for investment decisions.
Valuation tool
The strategy projects the future value of the company based on its Fiscal Quarter operating income, net income and diluted total shares outstanding. Operating income is the income from the core business operations, before interest and taxes. Net income is the income after interest, taxes and other expenses. The strategy assumes that the operating income and net income will grow at the same rate as their historical values.
The strategy also adjusts the diluted total shares outstanding, which may change due to dilutive securities, to calculate the projected EPS. It then uses the price-to-earnings (P/E) as a multiple in future valuation approach.
Value classification
TrendX classifies 2 phases between Under-value and Over-value, which are represented in green and red, respectively. This toolkit can work well with other indicators of technical analysis, but it can also stand on its own because of its built-in Technical Analysis plugins, which are explained below.
Display potential Support and Resistance levels
TrendX shows support and resistance levels based on the company's past and present Fair Values, which is colored in white. It also draws a current Fair Value line with green coloring.
Potential Entry and Exit zone
By combining the Breakout and retesting technique in both Lagging and Leading's perpective, with the Earning-based valuation, traders can optimize not only the entry-level at the Undervalued zone but also the exit-level at the potential “Bear” area.
Margin of Safety
TrendX also incorporates the margin of safety, which is shown in Risk Ability for customs.
CONCLUSION
The strategy is useful for valuing companies that have positive and stable earnings, and a predictable growth rate. Accordingly, it can also be helpful for traders to use alongside other forms of Technical Analysis.
Many traders fail to realize that indicators are not enough to achieve success, and they end up getting confused and frustrated by trying to find a perfect solution. TrendX aims to avoid this problem by providing clear and concise signals that can be easily followed
Disclaimer
The results achieved in the past are not all reliable sources of what will happen in the future. There are many factors and uncertainties that can affect the outcome of any endeavor, and no one can guarantee or predict with certainty what will occur.
The strategy also relies on assumptions that may not be accurate or realistic, which can vary depending on the market conditions and investor sentiment.
If you notice significant changes in the Valuation over time, it is due to revisions in the company’s reported financials, changes in accounting standards, or corrections of previous errors.
Therefore, you should always exercise caution and judgment when making decisions based on past performance.
Ultimate RSIThis indicator is a customized version of the RSI indicator that by default utilizes Bollinger Bands. It have included two layers of bands, with separate standard deviations. The indicator is fully customizable.
The indicator displays bullish and bearish divergence from price.
You are able to change the moving average that is used to calculate both the RSI itself, as well as the moving average used for the Bollinger Bands.
I have included fills that color the background to indicate various zones of RSI values.
Price tends to either reject or move quickly at these levels.
I have a yellow RSI zone that indicates a sideways market with little to no momentum with default values of 45 to 55. These are areas where trading is stagnant and you should likely avoid placing trades.
There is now an ATR feature to adjust the Bollinger Bands with ATR (Average True Range).
In order to trade with this indicator, you should watch for the white line (RSI) to cross into the Bollinger Bands, then cross over the yellow moving average (Basis line), where you would enter a BUY or SELL.
Watch this indicator in action and look for patterns. Draw vertical lines on the chart where you would have wanted to buy or sell and study this to understand how to make better trading decisions.
NOTE:
While not required in order to use this indicator, it was designed to visually work with another indicator of mine called The Ultimate Buy and Sell Indicator. I recommend using both together as they are a strong pair of indicators that share the same settings. This indicator while it can be used independently can also help you visualize the settings changes made to the other one which are unable to be displayed on the main chart by that indicator.
Oscillator Volume Profile [Trendoscope®]The Oscillator Volume Profile indicator is designed to construct a volume profile based on predefined oscillator levels. It integrates volume data with oscillator readings to offer a unique perspective on market dynamics.
🎲 Selectable Oscillators:
Users can select from an array of oscillator options for the basis of the volume profile, including:
Relative Strength Index (RSI)
Chande Momentum Oscillator (CMO)
Center of Gravity (COG)
Money Flow Index (MFI)
Rate of Change (ROC)
Commodity Channel Index (CCI)
Stochastic Oscillator (Stoch)
True Strength Index (TSI)
Williams %R (WPR)
The length parameters - Length, Fast Length, Slow Length allows users to define the period over which the chosen oscillator is calculated, tailoring the sensitivity of the indicator to their trading strategy.
🎲 Dynamic Overbought/Oversold Ranges:
This indicator enhances traditional concepts by introducing dynamic overbought and oversold levels. These adaptable thresholds are calculated using various methods, including:
🎯 Highest/Lowest Range Method : This method establishes the range based on the highest and lowest values of the oscillator within the last N bars.
🎯 Moving Average Range Method : The range is derived from a moving average of the oscillator, providing a smoothed threshold that reflects more recent market conditions.
In addition to these methods, the indicator incorporates a unique 'Sticky Border' feature:
🎯 Sticky Border: With this option enabled, the dynamic ranges maintain their levels until the oscillator breaks out of the range. Once a breakout occurs, the levels are recalculated and updated. This mechanism ensures that the borders remain consistent and relevant, only adjusting to significant market movements that warrant a recalculation.
Users can select their preferred method for determining dynamic ranges, allowing for a customized approach that aligns with their analysis and trading strategy. The sticky border feature further refines this functionality, offering continuity until a decisive market move occurs.
🎲 Volume Profile Calculation Parameters:
🎯 Trend Filter: The indicator provides a versatile trend filter with four selectable options:
Uptrend: The volume profile is calculated when the oscillator indicates an uptrend.
Downtrend: The volume profile is calculated when the oscillator indicates a downtrend.
Any: The volume profile is calculated regardless of the trend.
External: Users can input values from an external indicator. The volume profile is then calculated only when the external indicator's value is non-zero, integrating external analysis into the volume profile construction.
🎯 Precision: Users have the option to define the precision for calculating the volume profile, which is crucial due to the varying scales of different oscillators (e.g., some oscillators range from 0 to 100, while others from -1 to 1). Selecting an appropriate precision ensures that the volume profile is accurately aligned with the minimal price range significant to the chosen oscillator. This setting requires user intervention for optimal configuration, as automatic calculation is not feasible due to the diverse nature of oscillator ranges.
🎯 Number of Bars: Users can select a specific number of bars for volume profile calculation, or opt to include all available historical bars for a comprehensive profile.
🎲 Selecting the right precision:
Users must select the right precision based on their choice of indicator. For example, RSI values range from 0-100. Hence, the default precision of 1 work fine on RSI as the volume profiles are plotted from 0 to 100 at the interval of 0.1
But, the default precision of 1 will not be ok on TSI because TSI values range from -1 to 1. Hence, using 1 as precision will result in very less volume profile lines as shown below.
Due to this, it is necessary to increase the precision for oscillators such as TSI where the range between highest and lowest value is far less. Once we set the precision to 2, we can see more appropriate volume profile division.
🎲 Note of thanks:
This publication uses polyline feature for drawing volume profiles. The advantage of using polyline is that we can overcome max 500 lines issue that we face by using the regular line objects. More details of polyline can be found in the tradingview blog post
Further, using polyline for display of volume profiles is inspired by the publications of fikira and KioseffTrading
K`s Extreme DurationExtreme duration uses a special combination of the RSI and its relative position to deliver a reversal signal.
The following are the conditions to generate signals:
* Bullish signal: The current 8-period RSI is below 50 and above 35 while the previous 5 RSI's are below 35.
* Bearish signal: The current 8-period RSI is above 50 and below 65 while the previous 5 RSI's are above 65.
ai.1ai.1 = All in One indicator
"ai.1" is a high probability low risk predictive oscillator based on various well known indicators "All in One". I wanted to be able to get an equal output result for a multiple trading metrics comparison. I wanted to see what all market participants see, because all market participants look at charts in different ways with different indicators. By combining these well known trading indicators into the same scale I get a comprehensive view of the market as it is, not just through one prism.
The ai.1 indicator uses Stochastic and/or Moving Average Convergence Divergence formulas to visualize: Relative Strength Index, Commodity Channel Index, Money Flow Index, True Strength Index, Momentum, Average True Range, Standard deviation, Accumulation Distribution Index, Price Volume Trend, Positive Volume Index and/or On Balance Volume in a standard type of appearance.
1) MACD: Moving Average Convergence Divergence reveals changes in the strength, direction, momentum, and duration of a trend in a stock's price.
2) Stoch: Stochastic is a technical indicator widely used in short-term trend analysis of futures and stock markets. Stochastic is calculated with the lowest and highest by a formula of 100.
3) RSI: Relative Strength Index is calculated from the upward and downward price changes.
4) CCI: The Commodity Channel Index is calculated as the difference between the typical price of a commodity and its simple moving average, divided by the mean absolute deviation of the typical price.
5) MFI: The Money Flow Index is a technical oscillator that uses price and volume for identifying overbought or oversold conditions in an asset.
6) TSI: True Strength Index uses moving averages of the underlying momentum of a financial instrument.
7) MOM: Momentum is simply the difference of the source price and price length.
8) ATR: Average True Range measures the range between high and low.
9) STDV: Standard deviation is the statistical measure of market volatility, measuring how widely prices are dispersed from the average price. If prices trade in a narrow trading range, the standard deviation will return a low value that indicates low volatility.
10) AD: Accumulation Distribution Index is a cumulative indicator that uses volume and price to assess whether a stock is being accumulated or distributed.
11) PVT: Price Volume Trend uses the cumulative volume and price change.
12) PVI: Positive Volume Index compares the previous volume flow with the current volume.
13) OBV: On Balance Volume is the cumulative volume change.
To be able to merge these formulas I had to normalize the math into 1 scale. I did this by using Stochastic and then converting that by its historical minimum and maximum. The normalized output scale range for ai.1 is -100 to 100.
100 = overbought
-100 = oversold
MACD is a unique scale with neutral zero.
Stochastic is a 0-100 scale.
Relative Strength Index is a 0-100 scale.
Commodity Channel Index is generally a -400<400 scale with neutral zero.
Money Flow Index is a 0-100 scale.
True Strength Index is a unique scale with neutral zero.
Momentum is a unique scale with neutral zero.
Average True Range is a unique scale.
Standard deviation is a unique scale.
Accumulation Distribution Index is a unique scale.
Price Volume Trend is a unique scale.
Positive Volume Index is a unique scale.
On Balance Volume is a unique scale.
Everything in between is either bullish or bearish.
Rising = bullish
Falling = bearish
crossover = bullish
crossunder = bearish
cross = anticipation of the next cross direction
convergence = direction change
divergence = momentum
*Represents a how to use tooltip*
The default input settings / style:
Source = ohlc4
7 = K length, *Stochastic length*
3 = D smoothing, *smoothing length*
6 = MACD-ai.1 fast, *fast length line*
color = blue
13 = MACD-ai.1 slow, *slow length line*
color = white
4 = MACD-ai.1 signal, *histogram length*
color rising above 0 = bright green
color falling above 0 = dark green
color falling below 0 = bright red
color rising below 0 = dark red
2 = Stretch, *Output multiplier for MACD-ai.1 visual expansion*
1 = MA, *moving average of ALL or Choice Type ai.1-lines*
MACD-ai.1 variable choice / Choice type ai.1-line:
RSI *Relative Strength Index*
CCI *Commodity Channel Index*
MFI *Money Flow Index*
TSI *True Strength Index*
MOM *Momentum*
ATR&STDV *weighted average True Range & Standard Deviation*
ATR *True Range*
STDV *Standard Deviation*
PVT *Price Volume Trend*
PVI *Positive Volume Index*
OBV *On Balance Volume*
AD *Accumulation Distribution*
ALL *Weighted average of all*
ALLP *Weighted average of all price based*
ALLV *Weighted average of all volume based*
MACD-ai.1 price label / text color
crossover = green label / black text
crossunder = red label / white text
MACD-ai.1 price label on / off
*unchecked off/ checked on*
label decimal place: 2
*example: use 0 for a round number, use 4 for Forex*
long MACD-ai.1 crossover = green tiny circle
short MACD-ai.1 crossunder = red tiny circle
bullish rising green tiny dot
bearish falling red tiny dot
All ai.1-line = weighted average of all metrics
All cross oversold / overbought levels
*values used to trigger a label or character print*
oversold = -65 green tiny circle
extreme oversold = -85 green small circle
overbought = 65 red tiny circle
extreme overbought = 85 red small circle
All ai.1-line extreme cross price label on / off
All ai.1-line cross price label on / off
All ai.1-line reversal price label on / off
*unchecked off/ checked on*
ai.1-lines variable choice:
RSI *Relative Strength Index*
CCI *Commodity Channel Index*
MFI *Money Flow Index*
TSI *True Strength Index*
MOM *Momentum*
ATR&STDV *weighted average True Range & Standard Deviation*
ATR *True Range*
STDV *Standard Deviation*
PVT *Price Volume Trend*
PVI *Positive Volume Index*
OBV *On Balance Volume*
AD *Accumulation Distribution*
ALL *Weighted average of all*
ALLP *Weighted average of all price based*
ALLV *Weighted average of all volume based*
Choice Type ai.1-line cross oversold / overbought levels
*values used to trigger a label or character print*
oversold = -70 green tiny circle
extreme oversold = -90 green small circle
overbought = 70 red tiny circle
extreme overbought = 90 red small circle
Choice Type ai.1-line extreme cross price label on / off
Choice Type ai.1-line cross price label on / off
Choice Type ai.1-line reversal price label on / off
*unchecked off/ checked on*
Horizontal lines:
100 white
75 red
50 yellow
25 purple
0 white
-25 blue
-50 orange
-75 green
-100 white
Example screenshots of various ways to view ai.1 indicator depending on your preferred settings:
MACD-ai.1 with price labels and All ai.1-line output with directional color:
RSI ai.1-line blue with AD ai.1-line white
MACD-ai.1 fast, slow lines w/ signal histogram
long MACD-ai.1 crossover = green tiny circle
short MACD-ai.1 crossunder = red tiny circle
bullish rising green tiny dot
bearish falling red tiny dot
ATR&STDV ai.1-line with directional color:
All ai.1-line output with directional color & extreme overbought / oversold points:
All price ai.1-line purple with All volume ai.1-line orange
The ai.1 indicator can be used independently by itself or in conjunction with your favorite indicator to compare and contrast the accuracy for a trade setup entry and/or exit. The ai.1 indicator can be used on all time frames from 1 minute to 1 month etcetera. However, the default length settings are fine tuned & quick reacting for trading in real time. So, you can make it slower by adjusting the length larger to fit your trading or investing time frame. But I would not tinker with the default length settings without validating its output by back testing it on each specific time frame.
Different time frame snapshot examples:
EUR/USD 1hr chart:
BTC/USD 1 day chart:
ES1! 2 week chart:
TSLA 2 day chart:
TrendX Financial Modelling (Stock)TrendX Financial Modelling (Stock) indicator is a comprehensive tool that takes full advantage of both financial modelling and technical analysis to estimate the Intrinsic Value of any security. There are 2 main Fundamental methods for Intrinsic valuation: Discounted Cash Flow (DCF) and Basic Valuation.
USAGE
This Intrinsic Value Indicator is easy to use and customize. TrendX enables adjusting the parameters such as the type of basic valuation, market expected growth rate, the earnings multiple, and the margin of safety level according to your own assumptions and preferences. You can also apply different filters and alerts to get notified when a buy or sell signal is generated.
Valuation tool
DCF model will calculate the Present Value of all expected future cash flows, discounted at an appropriate rate, and compare it with the current market condition. In addition, Basic Valuation consists of 6 types of approaches depending on the industry of the target company. Combining these, the chart will show the potential target value from the current price.
Value classification
TrendX classifies 2 phases between Under-value and Fair-value, which are represented in Purple and grey, respectively.
Display potential targets
TrendX spot key target levels based on TrendX’s Valuation toolkit.
Optimal valued entry-exit
By combining the Breakout structure and divergences with the TrendX financial model, investors can optimize not only the entry-level at the Undervalued zone but also the exit-level at the potential “Bear” area.
Margin of safety
TrendX also incorporates the margin of safety principle, which is a key concept in value investing. The margin of safety is the secured zone between the intrinsic value and the market price, expressed as a percentage. The higher the margin of safety, the lower the risk of loss and the higher the potential return, which is customizable based on your preferences.
CONCLUSION
The Intrinsic Financial Model Indicator is very practical for any investor who wants to make informed and rational decisions based on Fundamental Analysis. It will help find undervalued gems in any market and avoid overpaying for overhyped stocks. Accordingly, it can also be helpful for traders to use alongside other forms of Technical Analysis.
Many traders fail to realize that indicators are not enough to achieve success, and they end up getting confused and frustrated by trying to find a perfect solution. TrendX aims to avoid this problem by providing clear and concise signals that can be easily followed
DISCLAIMER
The results achieved in the past are not all reliable sources of what will happen in the future. There are many factors and uncertainties that can affect the outcome of any endeavor, and no one can guarantee or predict with certainty what will occur.
If you notice significant changes in the Intrinsic Valuation over time, it is due to revisions in the company’s reported financials, changes in accounting standards, or corrections of previous errors.
Therefore, you should always exercise caution and judgment when making decisions based on past performance.
2Rsi buy & sell & candlesticks patterns in rsi[Trader's Journal]An Ingenious Trading Indicator: RSI, Japanese Candlesticks, and Buy/Sell Signals
The world of trading is a subtle game of analysis, where the smallest piece of information can make the difference between success and failure. In this perpetual quest to anticipate market movements, one indicator stands out: the Relative Strength Index (RSI), a powerful tool that measures the strength of price movements. However, RSI alone may not always suffice for informed trading decisions.
This is where our indicator comes into play, adding a new dimension to your analysis. The indicator skillfully combines RSI with Japanese candlesticks, those small candles rich in market movement information. The goal is clear: to generate buy and sell signals during trend reversals while keeping a keen eye on overbought and oversold zones.
RSI: Guardian of Extremes
The RSI is a basic tool that measures buying and selling pressure on an asset. It oscillates between 0 and 100, signaling overbought levels when the RSI exceeds 70 and oversold levels below 30. These extreme zones are often the stage for trend reversals, but timing is crucial.
Japanese Candlesticks: Messengers of the Market
Japanese candlesticks are more than just candles on a chart. They depict market emotions, reflecting the ongoing struggle between buyers and sellers. Trend reversals are typically heralded by specific candlestick patterns such as the Bearish Engulfing, Evening Star, or Inverted Hammer. These candlesticks act as powerful visual signals.
The Indicator in Action: Timing and Confirmation
When the RSI reaches the overbought zone (above 70) or oversold zone (below 30), our indicator is on alert. This is when vigilance is at its peak. However, buy and sell signals don't occur automatically. They await confirmation from Japanese candlesticks.
For a sell signal, the indicator awaits an exit from the overbought zone, followed by a bearish reversal candlestick. When these conditions are met, the sell signal is triggered. For a buy signal, the process is similar, but upon exiting the oversold zone and in the presence of a bullish candlestick.
The Elegance of the Combination
The beauty of this indicator lies in its ability to combine RSI analysis with the power of Japanese candlesticks. It doesn't just predict trend reversals, it does so elegantly, demanding visual confirmation, thus avoiding false signals.
As the market moves relentlessly, this indicator is your ally for making informed decisions. It reminds you that the wisdom of trading lies in combining different analytical tools to decipher the mysteries of the financial market. Envelop your trading strategies with this indicator, and witness how it can illuminate your path to success.
Fisher+ [OSC]The Fisher Transform Indicator is classified as an oscillator, meaning that its value swings above and below a central point. This characteristic allows traders to identify overbought and oversold conditions, providing potential clues about market reversals. As mentioned previously, it is an oscillator so the strength of the move is displayed by how long the fisher line stays above/below zero. Indicator can be used to aid in confluence near supply/demand zones.
White Line = Fisher
Red/Blue Line = Moving Average
--Changes color whether fisher line is above/below the MA
Red/Blue Shaded Line = Moving Average
--Changes color based on a smoothing factor
Red/Blue Shaded Fill = Asset in Overbought/Oversold Conditions
Red/Blue Circles = Asset in Extreme Overbought/Oversold Conditions
Red/Blue Triangles = MACD Signals Below/Above "0"
Divergence Labels = Asset Signaling Divergence
The moving average line will turn red/blue as long as the fisher line is below/above the moving average. The shaded MA line will switch colors based on if it is moving in an up/down trend. The MA can also be used as a signal and treated similar to an oscillator. Market trending conditions will either keep the MA below/above the dashed zero line.
MACD code credited to LazyBear's MACD Leader indicator. It is used to filter out/confirm any signals such as divergences. As long as the MACD Leader line is above both the MACD line and signal lines then it'll signal with with a triangle. MACD divergences will be added at a later time.
MA + MACD alert TrendsThis is a strategy/combination of warning indicators using 6MA+MACD.
The strategy details are as follows: This is a simple warning strategy created so that we don't have to monitor the candlestick chart too often.
Note: This isn't an entry strategy; it's a signaling strategy for upcoming trends. For maximum efficiency, we should incorporate more formulas into the command. In the case below, I use Fibonacci to enter the command.
This strategy setting works for a 15-minute time frame, but it can still work for different time frames.
It has been working well with Gold and USOIL for the last two years, as well as with currency pairs like EURUSD and many others.
Components:
EMA100 + EMA200 + MA400 + MA800
MACD (timeframe greater than 1 timeframe)
Fibonacci retreat.
Uptrend alert:
Candles on both EMAs (100-200) + 2 SMAs (400-800)
In the previous 80 candles:
EMA100 cross up to EMA200
At the same time, the MACD cross up 0.
The uptrend warning will trigger when EMA6 cuts down to MA10. That's when the price creates the top and we'll wait for the market to go back to the Fibonacci threshold of 0.618 and start buying (or wait for markets to break up the trendline to buy).
Downtrend alert:
Candles are below both EMAs ( 100-200 ) + 2 SMAs ( 400-800 )
In the previous 80 candles:
EMA100 cross down to EMA200
At the same time, the MACD cross down zero.
The downtrend warning will trigger when EMA6 cuts to MA10. That's when the price creates a bottom and we'll wait for the market to go back to the Fibonacci threshold of 0.618 and start selling (or wait for the market to break down the trendline to sell).
Recommended RR: 1:1
If you have any questions please let me know!
Voluminati: Uncovering Market SecretsVoluminati: Uncovering Market Secrets
Overview:
The Voluminati indicator dives deep into the secrets of trading volume, providing traders with unique insights into the market's strength and direction. This advanced tool visualizes the Relative Strength Index (RSI) of trading volume alongside the traditional RSI of price, presenting an enriched perspective on market dynamics.
Features:
Volume RSI: A unique twist on the traditional RSI, the Volume RSI measures the momentum of trading volume. This can help identify periods of increasing buying or selling pressure.
Traditional RSI: The renowned momentum oscillator that measures the speed and change of price movements. Useful for identifying overbought or oversold conditions.
Moving Averages: Both the Volume RSI and traditional RSI come with optional moving averages. These can be toggled on or off and are customizable in type (SMA or EMA) and length.
Overbought & Oversold Fills: Visual aids that highlight regions where the Volume RSI is in overbought (above 70) or oversold (below 30) territories. These fills help traders quickly identify potential reversal zones.
How to Use:
Look for divergence between the Volume RSI and price, which can indicate potential reversals.
When the Volume RSI moves above 70, it might indicate overbought conditions, and when it moves below 30, it might indicate oversold conditions.
The optional moving averages can be used to identify potential crossover signals or to smooth out the oscillators for a clearer trend view.
Customizations:
Toggle the display of the traditional RSI and its moving average.
Choose the type (SMA/EMA) and length for both the Volume RSI and traditional RSI moving averages.
Note: Like all indicators, the Voluminati is best used in conjunction with other tools and analysis techniques. Always use proper risk management.
Momentum Madness (AKA: Moms Mad)The "Momentum Madness" indicator is a customizable technical analysis tool designed for TradingView. It aims to help traders assess price momentum and make informed trading decisions. Below is a description of how this indicator works:
Indicator Title and Settings:
The indicator is titled "Momentum Madness" with a short title "Moms Mad."
Users can customize various settings to tailor the indicator to their preferences.
Input Parameters:
Traders can set the lengths (periods) for four different momentum calculations (len1, len2, len3, len4).
They can specify a lookback period for trend direction determination.
Users can choose from three smoothing types (RMA, SMA, EMA) and set the smoothing length (smoothLength).
The indicator offers options to adjust momentum calculations based on volume (useVolumeWeight), RSI (useRSIAdjustment), and MACD (useMACDAdjustment).
If the trend filter is enabled (useTrendFilter), the indicator considers whether the price is above the 200-period SMA.
Traders can incorporate Bollinger Bands adjustments (useBBAdjustment) and set the Bollinger Bands length (bbLength).
A volatility adjustment can be applied (useVolatilityAdjustment), using the Average True Range (ATR) with a specified length (atrLength).
Smoothing Function:
The indicator offers three smoothing options: RMA, SMA, and EMA, allowing users to select their preferred method for smoothing price data.
Momentum Calculations:
The indicator calculates four different momentum values (mom1, mom2, mom3, mom4) by subtracting the current price from historical prices based on the specified lengths.
Enhancement Features:
Users can enhance momentum calculations through volume weighting, RSI adjustment, MACD adjustment, trend filtering, Bollinger Bands adjustment, and volatility adjustment, depending on their preferences.
Trend Direction Detection:
The indicator identifies the trend direction based on the comparison of the current momentum (mom4Smooth) with a momentum value from a specified lookback period. It determines whether the trend is bullish (green), bearish (red), or neutral (no change).
Plots:
The indicator visualizes the four smoothed momentum values (mom1Smooth, mom2Smooth, mom3Smooth, mom4Smooth) as separate plots on the chart, each with its own customizable color.
A zero line is displayed for reference (yellow).
The average momentum (averageMomentumSmooth) is plotted and can be customized with its own color.
The "Momentum 4" plot dynamically changes color based on trend direction (green for bullish, red for bearish).
Fill:
The indicator fills the area between the "Momentum 4" plot and the zero line with a customizable color to highlight bullish or bearish momentum.
Look for crossover events by studying the chart and understanding what they all mean. Happy trading :)