4H RangeThis script visualizes certain key values based on a 4-hour timeframe of the selected market on the chart. These values include the High, Mid, and Low price levels during each 4-hour period.
These levels can be helpful to identify inside range price action, chop, and consolidation. They can sometimes act as pivots and can be a great reference for potential entries and exits if price continues to hold the same range.
Here's a step-by-step overview of what this indicator does:
1. Inputs: At the beginning of the script, users are allowed to customize some inputs:
Choose the color of lines and labels.
Decide whether to show labels on the chart.
Choose the size of labels ("tiny", "small", "normal", or "large").
Choose whether to display price values in labels.
Set the number of bars to offset the labels to the right.
Set a threshold for the number of ticks that triggers a new calculation of high, mid, and low values.
* Tick settings may need to be increased on equity charts as one tick is usually equal to one cent.
For example, if you want to clear the range when there is a close one point/one dollar above or below the range high/low then on ES
that would be 4 ticks but one whole point on AAPL would be 100 ticks. 100 ticks on an equity chart may or may not be ideal due to
different % change of 100 ticks might be too excessive depending on the price per share.
So be aware that user preferred thresholds can vary greatly depending on which chart you're using.
2. Retrieving Price Data: The script retrieves the high, low, and closing price for every 4-hour period for the current market.
The script also calculates the mid-price of each 4-hour period (the average of the high and low prices).
3. Line Drawing: At the start of the script (first run), it draws three lines (high, mid, and low) at the levels corresponding to the high,
mid, and low prices. Users can also change transparency settings on historical lines to view them. Default setting for historical lines
is for them to be hidden.
4. Updating Lines and Labels: For each subsequent 4-hour period, the script checks whether the close price of the period has gone
beyond a certain threshold (set by user input) above the previous high or below the previous low. If it has, the script deletes the
previous lines and labels, draws new lines at the new high, mid, and low levels, and creates new labels (if the user has opted to
show labels).
5. Displaying Values in the Data Window: In addition to the visual representation on the chart, the script also plots the high, mid, and
low prices. These plotted values appear in the Data Window of TradingView, allowing users to see the exact price levels even when
they're not directly labeled on the chart.
6. Updating Lines and Labels Position: At the end of each period, the script moves the lines and labels (if they're shown) to the right,
keeping them aligned with the current period.
Please note: This script operates based on a 4-hour timeframe, regardless of the timeframe selected on the chart. If a shorter timeframe is selected on the chart, the lines and labels will appear to extend across multiple bars because they represent 4-hour price levels. If a longer timeframe is selected, the lines and labels may not accurately represent high, mid, and low levels within that longer timeframe.
ابحث في النصوص البرمجية عن "high low"
DB Support Resistance Levels + Smart Higher Highs and Lower LowsDB Support Resistance Levels + Smart Higher Highs and Lower Lows
The indicator plots historic lines for high, low and close prices shown in settings as "base levels". Users can control the lookback period that is plotted along with an optional multiplier. Traders will notice that the price bounces off these historic base levels. The base levels are shown as light gray by default (customizable in the settings). Users may choose to display base levels by a combination of historic high, low and close values.
On top of the historic base levels, the indicator display higher high and lower low levels from the current bar high/low. Higher highs are shown by default in pink and lower lows by default in yellow. The user can adjust the lookback period for displaying higher highs and the optional multiplier. Only historic values higher than the current bar high are displayed filtering out (by highlighting) the remaining levels for the current bar. Users may choose to use a combination of historic open, low and close values for displaying higher highs. The user can adjust the lookback period for displaying lower lows and the optional multiplier. Only historic values lower than the current bar low are displayed filtering out (by highlighting) the remaining levels for the current bar. Users may choose to use a combination of historic open, low and close values for displaying lower low.
The indicator includes two optional filters for filtering out higher highs and lower lows to focus (highlight) the most relevant levels. The filters include KC and a simple price multiplier filter. The latter is enabled by default and recommended.
The indicator aims to provide two things; first a simple plot of historic base levels and second as the price moves to highlight the most relevant levels for the current price action. While the indicator works on all timeframes, it was tested with the weekly. Please keep in mind adjusting the timeframe may require the lookback settings to be adjusted to ensure the bars are within range.
How should I use this indicator?
Traders may use this indicator to gain a visual reference of support and resistance levels from higher periods of time with the most likely levels highlighted in pink and yellow. Replaying the indicator gives a visual show of levels in action and just how very often price action bounces from these highlighted levels.
Additional Notes
This indicator does increase the max total lines allowed which may impact performance depending on device specs. No alerts or signals for now. Perhaps coming soon...
Ticker Correlation Reference IndicatorHello,
I am super excited to be releasing this Ticker Correlation assessment indicator. This is a big one so let us get right into it!
Inspiration:
The inspiration for this indicator came from a similar indicator by Balipour called the Correlation with P-Value and Confidence Interval. It’s a great indicator, you should check it out!
I used it quite a lot when looking for correlations; however, there were some limitations to this indicator’s functionality that I wanted. So I decided to make my own indicator that had the functionality I wanted. I have been using this for some time but decided to actual spruce it up a bit and make it user friendly so that I could share it publically. So let me get into what this indicator does and, most importantly, the expanded functionality of this indicator.
What it does:
This indicator determines the correlation between 2 separate tickers. The user selects the two tickers they wish to compare and it performs a correlation assessment over a defaulted 14 period length and displays the results. However, the indicator takes this much further. The complete functionality of this indicator includes the following:
1. Assesses the correlation of all 4 ticker variables (Open, High, Low and Close) over a user defined period of time (defaulted to 14);
2. Converts both tickers to a Z-Score in order to standardize the data and provide a side by side comparison;
3. Displays areas of high and low correlation between all 4 variables;
4. Looks back over the consistency of the relationship (is correlation consistent among the two tickers or infrequent?);
5. Displays the variance in the correlation (there may be a statistically significant relationship, but if there is a high variance, it means the relationship is unstable);
6. Permits manual conversion between prices; and
7. Determines the degree of statistical significance (be it stable, unstable or non-existent).
I will discuss each of these functions below.
Function 1: Assesses the correlation of all 4 variables.
The only other indicator that does this only determines the correlation of the close price. However, correlation between all 4 variables varies. The correlation between open prices, high prices, low prices and close prices varies in statistically significant ways. As such, this indicator plots the correlation of all 4 ticker variables and displays each correlation.
Assessing this matters because sometimes a stock may not have the same magnitude in highs and lows as another stock (one stock may be more bullish, i.e. attain higher highs in comparison to another stock). Close price is helpful but does not pain the full picture. As such, the indicator displays the correlation relationship between all 4 variables (image below):
Function 2: Converts both tickers to Z-Score
Z-Score is a way of standardizing data. It simply measures how far a stock is trading in relation to its mean. As such, it is a way to express both tickers on a level playing field. Z-Score was also chosen because the Z-Score Values (0 – 4) also provide an appropriate scale to plot correlation lines (which range from 0 to 1).
The primary ticker (Ticker 1) is plotted in blue, the secondary comparison ticker (Ticker 2) is plotted in a colour changing format (which will be discussed below). See the image below:
Function 3: Displays areas of high and low correlation
While Ticker 1 is plotted in a static blue, Ticker 2 (the comparison ticker) is plotted in a dynamic, colour changing format. It will display areas of high correlation (i.e. areas with a P value greater than or equal to 0.9 or less than and equal to -0.9) in green, areas of moderate correlation in white. Areas of low correlation (between 0.4 and 0 or -0.4 and 0) are in red. (see image below):
Function 4: Checks consistency of relationship
While at the time of assessing a stock there very well maybe a high correlation, whether that correlation is consistent or not is the question. The indicator employs the use of the SMA function to plot the average correlation over a defined period of time. If the correlation is consistently high, the SMA should be within an area of statistical significance (over 0.5 or under -0.5). If the relationship is inconsistent, the SMA will read a lower value than the actual correlation.
You can see an example of this when you compare ETH to Tezos in the image below:
You can see that the correlation between ETH and Tezo’s on the high level seems to be inconsistent. While the current correlation is significant, the SMA is showing that the average correlation between the highs is actually less than 0.5.
The indicator also tells the user narratively the degree of consistency in the statistical relationship. This will be discussed later.
Function 5: Displays the variance
When it comes to correlation, variance is important. Variance simply means the distance between the highest and lowest value. The indicator assess the variance. A high degree of variance (i.e. a number surpassing 0.5 or greater) generally means the consistency and stability of the relationship is in issue. If there is a high variance, it means that the two tickers, while seemingly significantly correlated, tend to deviate from each other quite extensively.
The indicator will tell the user the variance in the narrative bar at the bottom of the chart (see image below):
Function 6: Permits manual conversion of price
One thing that I frequently want and like to do is convert prices between tickers. If I am looking at SPX and I want to calculate a price on SPY, I want to be able to do that quickly. This indicator permits you to do that by employing a regression based formula to convert Ticker 1 to Ticker 2.
The user can actually input which variable they would like to convert, whether they want to convert Ticker 1 Close to Ticker 2 Close, or Ticker 1 High to Ticker 2 High, or low or open.
To do this, open the settings and click “Permit Manual Conversion”. This will then take the current Ticker 1 Close price and convert it to Ticker 2 based on the regression calculations.
If you want to know what a specific price on Ticker 1 is on Ticker 2, simply click the “Allow Manual Price Input” variable and type in the price of Ticker 1 you want to know on Ticker 2. It will perform the calculation for you and will also list the standard error of the calculation.
Below is an example of calculating a SPY price using SPX data:
Above, the indicator was asked to convert an SPX price of 4,100 to a SPY price. The result was 408.83 with a standard error of 4.31, meaning we can expect 4,100 to fall within 408.83 +/- 4.31 on SPY.
Function 7: Determines the degree of statistical significance
The indicator will provide the user with a narrative output of the degree of statistical significance. The indicator looks beyond simply what the correlation is at the time of the assessment. It uses the SMA and the highest and lowest function to make an assessment of the stability of the statistical relationship and then indicates this to the user. Below is an example of IWM compared to SPY:
You will see, the indicator indicates that, while there is a statistically significant positive relationship, the relationship is somewhat unstable and inconsistent. Not only does it tell you this, but it indicates the degree of inconsistencies by listing the variance and the range of the inconsistencies.
And below is SPY to DIA:
SPY to BTCUSD:
And finally SPY to USDCAD Currency:
Other functions:
The indicator will also plot the raw or smoothed correlation result for the Open, High, Low or Close price. The default is to close price and smoothed. Smoothed just means it is displaying the SMA over the raw correlation score. Unsmoothing it will show you the raw correlation score.
The user also has the ability to toggle on and off the correlation table and the narrative table so that they can just review the chart (the side by side comparison of the 2 tickers).
Customizability
All of the functions are customizable for the most part. The user can determine the length of lookback, etc. The default parameters for all are 14. The only thing not customizable is the assessment used for determining the stability of a statistical relationship (set at 100 candle lookback) and the regression analysis used to convert price (10 candle lookback).
User Notes and important application tips:
#1: If using the manual calculation function to convert price, it is recommended to use this on the hourly or daily chart.
#2: Leaving pre-market data on can cause some errors. It is recommended to use the indicator with regular market hours enabled and extended market hours disabled.
#3: No ticker is off limits. You can compare anything against anything! Have fun with it and experiment!
Non-Indicator Specific Discussions:
Why does correlation between stocks mater?
This can matter for a number of reasons. For investors, it is good to diversify your portfolio and have a good array of stocks that operate somewhat independently of each other. This will allow you to see how your investments compare to each other and the degree of the relationship.
Another function may be getting exposure to more expensive tickers. I am guilty of trading IWM to gain exposure to SPY at a reduced cost basis :-).
What is a statistically significant correlation?
The rule of thumb is anything 0.5 or greater is considered statistically significant. The ideal setup is 0.9 or more as the effect is almost identical. That said, a lot of factors play into statistical significance. For example, the consistency and variance are 2 important factors most do not consider when ascertaining significance. Perhaps IWM and SPY are significantly correlated today, but is that a reliable relationship and can that be counted on as a rule?
These are things that should be considered when trading one ticker against another and these are things that I have attempted to address with this indicator!
Final notes:
I know I usually do tutorial videos. I have not done one here, but I will. Check back later for this.
I hope you enjoy the indicator and please feel free to share your thoughts and suggestions!
Safe trades all!
Liquidity prints / quantifytools- Overview
Liquidity prints detect points in price where buyers or sellers are being effectively absorbed, indicative of price being on a path of resistance. In other words, the prints detect points in price where hard way is likely in current motion and easy way in the opposite. Prints with ideal attributes such as prints into extended trends or into a deviation are marked separately as print confluence. Prints with important or multiple confluence factors give further color into potential strength and duration of print influence. Liquidity prints are detected using an universally applicable method based on price action (OHLC). The prints principally work on any chart, whether that is equities, currencies, cryptocurrencies or commodities, charts with volume data or no volume data. Essentially any asset that can be considered an ordinary speculative asset. The prints also work on any timeframe, from second charts to monthly charts. Liquidity prints are activated real-time after a confirmed bar close, meaning they are not repainted and can be interacted with once a confirmation is in place.
Liquidity prints are based on the premise that price acts a certain way when sufficient liquidity is found, in other words when price shows exhaustion of some sort. A simple example of such price action are wicks, attempted moves that were rejected within the same time period where move was initiated. This type of price action typically takes place when price is close to or at meaningful amount of bids in an order book. There's no guarantee the stacked orders can't be just cleared and moved through, but at face value it does not make sense to expect price moving the hard way. When sufficient amount of characteristics in price action are hinting proximate liquidity, a print is activated. As a barometer for print feedback quality, short term impact on price rate of change and likelihood of print lows/highs being revisited during backtesting period are tracked for each print. Peak increase/decrease during backtesting period is also recorded and added to average calculations. Liquidity prints can also be backtested using any script that has a source input, including mechanic strategies utilizing Tradingview's native backtester.
Key takeaways
Liquidity prints are activated when price is showing signs of grind against path of greater resistance, leaving path of least resistance to the opposite direction.
Liquidity prints with ideal attributes are marked separately as print confluence, giving further color into print strength and duration of influence.
Liquidity prints are backtested using price rate of change, print invalidation mark and peak magnitude metrics.
Liquidity prints can be backtested and utilized in any other Tradingview script, including mechanic strategies utilizing Tradingview's native backtester.
Liquidity prints are detected using price action based methodology. They principally work on any chart or timeframe, including charts with no volume data.
Liquidity prints are activated real-time after a confirmed bar close and are not repainted.
For practical guide with practical examples, see last section.
Accessing script 🔑
See "Author's instructions" section, found at bottom of the script page.
Disclaimer
Liquidity prints are not buy/sell signals, a standalone trading strategy or financial advice. They also do not substitute knowing how to trade. Example charts and ideas shown for use cases are textbook examples under ideal conditions, not guaranteed to repeat as they are presented. Liquidity prints notify when a set of conditions (various reversal patterns, overextended price etc.) are in place from a purely technical standpoint. Liquidity prints should be viewed as one tool providing one kind of evidence, to be used in conjunction with other means of analysis.
Liquidity print quality is backtested using metrics that reasonably depict their expected behaviour, such as historical likelihood of price slowing down or turning shortly after a print. Print quality metrics are not intended to be elaborate and perfect, but to serve as a general barometer for print feedback. Backtesting is done first and foremost to exclude scenarios where prints clearly don't work or work suboptimally, in which case they can't be considered as valid evidence. Even when print metrics indicate historical reactions of good quality, price impact can and inevitably does deviate from the expected. Past results do not guarantee future performance.
- Example charts
Chart #1: BTCUSDT
Chart #2: DXY
Chart #3: NQ futures
Chart #4: Crude oil futures
Chart #5: Custom timeframes
- Print confluence
Attributes that make prints ideal in one way or another are marked separately as print confluence, giving clue into potential strength and duration of print influence. Prints with important or multiple confluence factors can be considered as heavier and more reliable evidence of price being on a path of resistance. Users can choose which confluence to show/hide (by default all) and set a minimum amount of confluence for confluence text to activate (by default 1).
Confluence type #1: Trend extensions
Price trending for abnormally long time doesn't happen too often and requires effort to sustain. Prints taking place at extended trends often have a longer duration influence, indicating a potential larger scale topping/bottoming process being close. Trend extension confluence is indicated using a numbered label, equal to amount of bars price has been in a trending state.
Confluence type #2: Consecutive prints
Prints that take place consecutively imply heavier resistance ahead, as required conditions trigger multiple times within a short period. Consecutive prints tend to lead to more clean, aggressive and heavier magnitude reactions relative to prints with no confluence. Consecutive print confluence is indicated using a numbered label with an x in front, equal to amount of prints that have taken place consecutively.
Confluence type #3: Deviations
When price closes above/below prior print highs/lows and closes right back in with a print, odds are some market participants are stuck in an awkward position. When market participants are stuck, potential for a snowball effect of covering underwater positions is higher, driving price further away. Prints into deviations act similarly to consecutive prints, elevating potential for more aggressive reactions relative to prints with no confluence. Deviation confluence is indicated using a label with a curve symbol.
- Backtesting
Built-in backtesting is based on metrics that are considered to reasonably quantify expected behaviour of prints. Main purpose of the metrics is to form a general barometer for monitoring whether or not prints can be viewed as valid evidence. When prints are clearly not working optimally, one should adjust expectations accordingly or take action to improve print performance. To make any valid conclusions of print performance, sample size should also be significant enough to eliminate randomness effectively. If sample size on any individual chart is insufficient, one should view feedback scores on multiple correlating and comparable charts to make up for the loss.
For more elaborate backtesting, prints can be used in any other script that has a source input, including fully mechanic strategies utilizing Tradingview's native backtester. Print plots are created separately for regular prints and prints with each type of confluence.
Print feedback
Print feedback is monitored for 3 bars following a print. Feedback is considered to be 100% successful when all 3/3 bars show a supportive reaction. When 2/3 bars are supportive, feedback rate is 66%, 1/3 bars = 33% and 0/3 = 0%. After print backtesting period is finished, performance of given print is added to average calculations.
Metric #1 : Rate of change
Rate of change used for backtesting is based on OHLC4 average (open + high + low + close / 4) with a length of 3. Rate of change trending up is considered valid feedback for bullish liquidity prints, trending down for bearish liquidity prints. Note that trending rate of change does not always correlate with trending price, but sometimes simply means current trend in price is slowing down.
Metric #2 : Invalidation mark
Print invalidation marks are set at print low/high with a little bit of "wiggle room". Wiggle room applied is always 1/10th of print bar range. E.g. for a bullish print with bar range of 2%, invalidation mark is set to 0.20% below print low. For most prints this is practically at print low/high, but in the case of prints with high volatility a more noticeable excess is given, due to the expectation of greater adverse reaction without necessarily meaning invalidation. A low being above invalidation mark is considered valid feedback for bullish prints and a high being below invalidation mark for bearish prints.
Metric #3 : Peak increase/decrease
Unlike prior two metrics, peak increase/decrease is not feedback the same way, but rather an assisting factor to be viewed with feedback scores. Peak increase/decrease is measured from print close to highest high/lowest low during backtesting period and added to average calculations
Feedback scores
When liquidity prints are working optimally, quality threshold for both feedback metrics are met. By default, threshold is set to 66%, indicating valid feedback on 2/3 of backtesting periods on average. When threshold is met, a tick will appear next to feedback scores, otherwise an exclamation mark indicating suboptimal performance on either or both.
By default, the prints are filtered as little as possible, idea behind being that it is better to have more poor prints filtered with discretion/mechanically afterwards than potentially filtering too much from the get go. Sometimes filtering is insufficient, leading to failed reactions beyond a tolerable level. When this is the case, print sensitivity can be adjusted via input menu, separately for bullish and bearish prints. Print filter sensitivity ranges from 1 to 5, by default set to 1. Lower sensitivity sets looser criteria for print activation, higher sensitivity sets stricter criteria. For most charts and timeframes default sensitivity works just fine, but when this is not the case, filters can be tweaked in search of better settings. If feedback score threshold is met, it's better to keep filter sensitivity intact and use discretion, which is much more nuanced and capable than any mechanical process. If feedback scores are still insufficient after tweaking, depending on the severity of lack, prints should be vetted extra carefully using other means of analysis or simply avoided.
Verifying backtest calculations
Backtest metrics can be toggled on via input menu, separately for bullish and bearish prints. When toggled on, both cumulative and average counters used in print backtesting will appear on "Data Window" tab. Calculation states are shown at a point in time where cursor is hovered. E.g. when hovering cursor on 4th of January 2021, backtest calculations as they were during this date will be shown. Backtest calculations are updated after backtest period of a print has finished (3 bars). Assisting backtest visuals are also plotted on chart to ease inspection.
- Alerts
Available alerts are the following.
- Bullish/bearish liquidity print
- Bullish/bearish liquidity print with specified print confluence
- Bullish/bearish liquidity print with set minimum print confluence amount exceeded
- Visuals
Visual impact of prints can be managed by adjusting width and length via input menu. Length of prints is available in 3 modes (1-3 from shortest to longest) and width in 10 modes (1-10 from narrowest to widest).
Print confluence text can be embedded inside print nodes, eliminating visuals outside the chart.
Metric table is available in two themes, Classic and Stealth.
Metric table can be offsetted horizontally or vertically from any four corners of the chart, allowing space for tables from other scripts.
Table sizes, label sizes and colors are fully customizable via input menu.
-Practical guide
Key in maximizing success with prints is knowing when they are likely reliable and when not. In general, the more volatile and ranging the market regime, the better liquidity prints will work. Any type of volatile spike in price, parabola or a clean range is where liquidity prints provide optimal feedback. On the other hand low volatility and trending environments are suboptimal and tend to provide more mute/lagged or completely failed feedback. Anomalies such as market wide crashes are also environments where prints can't be expected to work reliably.
Being aware of events on multiple timeframes is crucial for establishing bias for any individual timeframe. Not often it makes sense to go against higher timeframe moves on lower timeframes and this principle of timeframe hierarchy also applies to prints. In other words, higher timeframe prints dictate likelihood of successful prints on lower timeframes. If hard way on a weekly chart is up, same likely applies to daily chart during weekly print influence time. In such scenarios, it's best to not swim in upstream and avoid contradicting lower timeframe prints, at least until clear evidence suggesting otherwise has developed.
Points in price where it anyway makes sense to favor one side over the other are key points of confluence for prints as well. Prints into clean range highs/lows with clean taps can be valuable for optimal entry timing. This is especially true if simultaneously previous pivot gets taken out, increasing odds of liquidity indicated by a print being swept stop-losses.
Prints that don't match underlying bias (e.g. bullish prints at range high, bearish prints at range low) should be avoided until clear evidence has developed favoring them, such as a convincing break through a level followed by a re-test.
Prints that are immediately rejected aggressively are more likely prints that end up failing. Next bar following a print closing below print lows/above print highs is a strong hint of print failure. To consider print still valid in such cases, there should be quick and clear defending of print lows/highs. Failed prints are an inevitable bummer, but never useless. Failed prints are ideal for future reference, as liquidity still likely exists there. Re-tests into these levels often provide sensible entries.
Stacked confluence doesn't come too often and is worth paying special attention to, as multiple benefitting factors are in place simultaneously.
From a more zoomed out perspective, any larger zone with multiple prints taking place inside are potential topping/bottoming processes taking place, also worth paying attention to.
GKD-B Stepped Baseline [Loxx]Giga Kaleidoscope GKD-B Stepped Baseline is a Baseline module included in Loxx's "Giga Kaleidoscope Modularized Trading System".
█ GKD-B Stepped Baseline
This is a special implementation of GKD-B Baseline in that it allows the user to filter the selected moving average using the various types of volatility listed below. This additional filter allows the trader to identify longer trends that may be more confucive to a slow and steady trading style.
GKD Stepped Baseline includes 64 different moving averages:
Adaptive Moving Average - AMA
ADXvma - Average Directional Volatility Moving Average
Ahrens Moving Average
Alexander Moving Average - ALXMA
Deviation Scaled Moving Average - DSMA
Donchian
Double Exponential Moving Average - DEMA
Double Smoothed Exponential Moving Average - DSEMA
Double Smoothed FEMA - DSFEMA
Double Smoothed Range Weighted EMA - DSRWEMA
Double Smoothed Wilders EMA - DSWEMA
Double Weighted Moving Average - DWMA
Ehlers Optimal Tracking Filter - EOTF
Exponential Moving Average - EMA
Fast Exponential Moving Average - FEMA
Fractal Adaptive Moving Average - FRAMA
Generalized DEMA - GDEMA
Generalized Double DEMA - GDDEMA
Hull Moving Average (Type 1) - HMA1
Hull Moving Average (Type 2) - HMA2
Hull Moving Average (Type 3) - HMA3
Hull Moving Average (Type 4) - HMA4
IE /2 - Early T3 by Tim Tilson
Integral of Linear Regression Slope - ILRS
Instantaneous Trendline
Kalman Filter
Kaufman Adaptive Moving Average - KAMA
Laguerre Filter
Leader Exponential Moving Average
Linear Regression Value - LSMA ( Least Squares Moving Average )
Linear Weighted Moving Average - LWMA
McGinley Dynamic
McNicholl EMA
Non-Lag Moving Average
Ocean NMA Moving Average - ONMAMA
One More Moving Average - OMA
Parabolic Weighted Moving Average
Probability Density Function Moving Average - PDFMA
Quadratic Regression Moving Average - QRMA
Regularized EMA - REMA
Range Weighted EMA - RWEMA
Recursive Moving Trendline
Simple Decycler - SDEC
Simple Jurik Moving Average - SJMA
Simple Moving Average - SMA
Sine Weighted Moving Average
Smoothed LWMA - SLWMA
Smoothed Moving Average - SMMA
Smoother
Super Smoother
T3
Three-pole Ehlers Butterworth
Three-pole Ehlers Smoother
Triangular Moving Average - TMA
Triple Exponential Moving Average - TEMA
Two-pole Ehlers Butterworth
Two-pole Ehlers smoother
Variable Index Dynamic Average - VIDYA
Variable Moving Average - VMA
Volume Weighted EMA - VEMA
Volume Weighted Moving Average - VWMA
Zero-Lag DEMA - Zero Lag Exponential Moving Average
Zero-Lag Moving Average
Zero Lag TEMA - Zero Lag Triple Exponential Moving Average
Adaptive Moving Average - AMA
The Adaptive Moving Average (AMA) is a moving average that changes its sensitivity to price moves depending on the calculated volatility. It becomes more sensitive during periods when the price is moving smoothly in a certain direction and becomes less sensitive when the price is volatile.
ADXvma - Average Directional Volatility Moving Average
Linnsoft's ADXvma formula is a volatility-based moving average, with the volatility being determined by the value of the ADX indicator.
The ADXvma has the SMA in Chande's CMO replaced with an EMA , it then uses a few more layers of EMA smoothing before the "Volatility Index" is calculated.
A side effect is, those additional layers slow down the ADXvma when you compare it to Chande's Variable Index Dynamic Average VIDYA .
The ADXVMA provides support during uptrends and resistance during downtrends and will stay flat for longer, but will create some of the most accurate market signals when it decides to move.
Ahrens Moving Average
Richard D. Ahrens's Moving Average promises "Smoother Data" that isn't influenced by the occasional price spike. It works by using the Open and the Close in his formula so that the only time the Ahrens Moving Average will change is when the candlestick is either making new highs or new lows.
Alexander Moving Average - ALXMA
This Moving Average uses an elaborate smoothing formula and utilizes a 7 period Moving Average. It corresponds to fitting a second-order polynomial to seven consecutive observations. This moving average is rarely used in trading but is interesting as this Moving Average has been applied to diffusion indexes that tend to be very volatile.
Deviation Scaled Moving Average - DSMA
The Deviation-Scaled Moving Average is a data smoothing technique that acts like an exponential moving average with a dynamic smoothing coefficient. The smoothing coefficient is automatically updated based on the magnitude of price changes. In the Deviation-Scaled Moving Average, the standard deviation from the mean is chosen to be the measure of this magnitude. The resulting indicator provides substantial smoothing of the data even when price changes are small while quickly adapting to these changes.
Donchian
Donchian Channels are three lines generated by moving average calculations that comprise an indicator formed by upper and lower bands around a midrange or median band. The upper band marks the highest price of a security over N periods while the lower band marks the lowest price of a security over N periods.
Double Exponential Moving Average - DEMA
The Double Exponential Moving Average ( DEMA ) combines a smoothed EMA and a single EMA to provide a low-lag indicator. It's primary purpose is to reduce the amount of "lagging entry" opportunities, and like all Moving Averages, the DEMA confirms uptrends whenever price crosses on top of it and closes above it, and confirms downtrends when the price crosses under it and closes below it - but with significantly less lag.
Double Smoothed Exponential Moving Average - DSEMA
The Double Smoothed Exponential Moving Average is a lot less laggy compared to a traditional EMA . It's also considered a leading indicator compared to the EMA , and is best utilized whenever smoothness and speed of reaction to market changes are required.
Double Smoothed FEMA - DSFEMA
Same as the Double Exponential Moving Average (DEMA), but uses a faster version of EMA for its calculation.
Double Smoothed Range Weighted EMA - DSRWEMA
Range weighted exponential moving average (EMA) is, unlike the "regular" range weighted average calculated in a different way. Even though the basis - the range weighting - is the same, the way how it is calculated is completely different. By definition this type of EMA is calculated as a ratio of EMA of price*weight / EMA of weight. And the results are very different and the two should be considered as completely different types of averages. The higher than EMA to price changes responsiveness when the ranges increase remains in this EMA too and in those cases this EMA is clearly leading the "regular" EMA. This version includes double smoothing.
Double Smoothed Wilders EMA - DSWEMA
Welles Wilder was frequently using one "special" case of EMA (Exponential Moving Average) that is due to that fact (that he used it) sometimes called Wilder's EMA. This version is adding double smoothing to Wilder's EMA in order to make it "faster" (it is more responsive to market prices than the original) and is still keeping very smooth values.
Double Weighted Moving Average - DWMA
Double weighted moving average is an LWMA (Linear Weighted Moving Average). Instead of doing one cycle for calculating the LWMA, the indicator is made to cycle the loop 2 times. That produces a smoother values than the original LWMA
Ehlers Optimal Tracking Filter - EOTF
The Elher's Optimum Tracking Filter quickly adjusts rapid shifts in the price and yet is relatively smooth when the price has a sideways action. The operation of this filter is similar to Kaufman’s Adaptive Moving
Average
Exponential Moving Average - EMA
The EMA places more significance on recent data points and moves closer to price than the SMA ( Simple Moving Average ). It reacts faster to volatility due to its emphasis on recent data and is known for its ability to give greater weight to recent and more relevant data. The EMA is therefore seen as an enhancement over the SMA .
Fast Exponential Moving Average - FEMA
An Exponential Moving Average with a short look-back period.
Fractal Adaptive Moving Average - FRAMA
The Fractal Adaptive Moving Average by John Ehlers is an intelligent adaptive Moving Average which takes the importance of price changes into account and follows price closely enough to display significant moves whilst remaining flat if price ranges. The FRAMA does this by dynamically adjusting the look-back period based on the market's fractal geometry.
Generalized DEMA - GDEMA
The double exponential moving average (DEMA), was developed by Patrick Mulloy in an attempt to reduce the amount of lag time found in traditional moving averages. It was first introduced in the February 1994 issue of the magazine Technical Analysis of Stocks & Commodities in Mulloy's article "Smoothing Data with Faster Moving Averages.". Instead of using fixed multiplication factor in the final DEMA formula, the generalized version allows you to change it. By varying the "volume factor" form 0 to 1 you apply different multiplications and thus producing DEMA with different "speed" - the higher the volume factor is the "faster" the DEMA will be (but also the slope of it will be less smooth). The volume factor is limited in the calculation to 1 since any volume factor that is larger than 1 is increasing the overshooting to the extent that some volume factors usage makes the indicator unusable.
Generalized Double DEMA - GDDEMA
The double exponential moving average (DEMA), was developed by Patrick Mulloy in an attempt to reduce the amount of lag time found in traditional moving averages. It was first introduced in the February 1994 issue of the magazine Technical Analysis of Stocks & Commodities in Mulloy's article "Smoothing Data with Faster Moving Averages''. This is an extension of the Generalized DEMA using Tim Tillsons (the inventor of T3) idea, and is using GDEMA of GDEMA for calculation (which is the "middle step" of T3 calculation). Since there are no versions showing that middle step, this version covers that too. The result is smoother than Generalized DEMA, but is less smooth than T3 - one has to do some experimenting in order to find the optimal way to use it, but in any case, since it is "faster" than the T3 (Tim Tillson T3) and still smooth, it looks like a good compromise between speed and smoothness.
Hull Moving Average (Type 1) - HMA1
Alan Hull's HMA makes use of weighted moving averages to prioritize recent values and greatly reduce lag whilst maintaining the smoothness of a traditional Moving Average. For this reason, it's seen as a well-suited Moving Average for identifying entry points. This version uses SMA for smoothing.
Hull Moving Average (Type 2) - HMA2
Alan Hull's HMA makes use of weighted moving averages to prioritize recent values and greatly reduce lag whilst maintaining the smoothness of a traditional Moving Average. For this reason, it's seen as a well-suited Moving Average for identifying entry points. This version uses EMA for smoothing.
Hull Moving Average (Type 3) - HMA3
Alan Hull's HMA makes use of weighted moving averages to prioritize recent values and greatly reduce lag whilst maintaining the smoothness of a traditional Moving Average. For this reason, it's seen as a well-suited Moving Average for identifying entry points. This version uses LWMA for smoothing.
Hull Moving Average (Type 4) - HMA4
Alan Hull's HMA makes use of weighted moving averages to prioritize recent values and greatly reduce lag whilst maintaining the smoothness of a traditional Moving Average. For this reason, it's seen as a well-suited Moving Average for identifying entry points. This version uses SMMA for smoothing.
IE /2 - Early T3 by Tim Tilson and T3 new
The T3 moving average is a type of technical indicator used in financial analysis to identify trends in price movements. It is similar to the Exponential Moving Average (EMA) and the Double Exponential Moving Average (DEMA), but uses a different smoothing algorithm.
The T3 moving average is calculated using a series of exponential moving averages that are designed to filter out noise and smooth the data. The resulting smoothed data is then weighted with a non-linear function to produce a final output that is more responsive to changes in trend direction.
The T3 moving average can be customized by adjusting the length of the moving average, as well as the weighting function used to smooth the data. It is commonly used in conjunction with other technical indicators as part of a larger trading strategy.
Integral of Linear Regression Slope - ILRS
A Moving Average where the slope of a linear regression line is simply integrated as it is fitted in a moving window of length N (natural numbers in maths) across the data. The derivative of ILRS is the linear regression slope. ILRS is not the same as a SMA ( Simple Moving Average ) of length N, which is actually the midpoint of the linear regression line as it moves across the data.
Instantaneous Trendline
The Instantaneous Trendline is created by removing the dominant cycle component from the price information which makes this Moving Average suitable for medium to long-term trading.
Kalman Filter
Kalman filter is an algorithm that uses a series of measurements observed over time, containing statistical noise and other inaccuracies. This means that the filter was originally designed to work with noisy data. Also, it is able to work with incomplete data. Another advantage is that it is designed for and applied in dynamic systems; our price chart belongs to such systems. This version is true to the original design of the trade-ready Kalman Filter where velocity is the triggering mechanism.
Kalman Filter is a more accurate smoothing/prediction algorithm than the moving average because it is adaptive: it accounts for estimation errors and tries to adjust its predictions from the information it learned in the previous stage. Theoretically, Kalman Filter consists of measurement and transition components.
Kaufman Adaptive Moving Average - KAMA
Developed by Perry Kaufman, Kaufman's Adaptive Moving Average (KAMA) is a moving average designed to account for market noise or volatility. KAMA will closely follow prices when the price swings are relatively small and the noise is low.
Laguerre Filter
The Laguerre Filter is a smoothing filter which is based on Laguerre polynomials. The filter requires the current price, three prior prices, a user defined factor called Alpha to fill its calculation.
Adjusting the Alpha coefficient is used to increase or decrease its lag and its smoothness.
Leader Exponential Moving Average
The Leader EMA was created by Giorgos E. Siligardos who created a Moving Average which was able to eliminate lag altogether whilst maintaining some smoothness. It was first described during his research paper "MACD Leader" where he applied this to the MACD to improve its signals and remove its lagging issue. This filter uses his leading MACD's "modified EMA" and can be used as a zero lag filter.
Linear Regression Value - LSMA ( Least Squares Moving Average )
LSMA as a Moving Average is based on plotting the end point of the linear regression line. It compares the current value to the prior value and a determination is made of a possible trend, eg. the linear regression line is pointing up or down.
Linear Weighted Moving Average - LWMA
LWMA reacts to price quicker than the SMA and EMA . Although it's similar to the Simple Moving Average , the difference is that a weight coefficient is multiplied to the price which means the most recent price has the highest weighting, and each prior price has progressively less weight. The weights drop in a linear fashion.
McGinley Dynamic
John McGinley created this Moving Average to track prices better than traditional Moving Averages. It does this by incorporating an automatic adjustment factor into its formula, which speeds (or slows) the indicator in trending, or ranging, markets.
McNicholl EMA
Dennis McNicholl developed this Moving Average to use as his center line for his "Better Bollinger Bands" indicator and was successful because it responded better to volatility changes over the standard SMA and managed to avoid common whipsaws.
Non-lag moving average
The Non Lag Moving average follows price closely and gives very quick signals as well as early signals of price change. As a standalone Moving Average, it should not be used on its own, but as an additional confluence tool for early signals.
Ocean NMA Moving Average - ONMAMA
Created by Jim Sloman, the NMA is a moving average that automatically adjusts to volatility without being programmed to do so. For more info, read his guide "Ocean Theory, an Introduction"
One More Moving Average (OMA)
The One More Moving Average (OMA) is a technical indicator that calculates a series of Jurik-style moving averages in order to reduce noise and provide smoother price data. It uses six exponential moving averages to generate the final value, with the length of the moving averages determined by an adaptive algorithm that adjusts to the current market conditions. The algorithm calculates the average period by comparing the signal to noise ratio and using this value to determine the length of the moving averages. The resulting values are used to generate the final value of the OMA, which can be used to identify trends and potential changes in trend direction.
Parabolic Weighted Moving Average
The Parabolic Weighted Moving Average is a variation of the Linear Weighted Moving Average . The Linear Weighted Moving Average calculates the average by assigning different weights to each element in its calculation. The Parabolic Weighted Moving Average is a variation that allows weights to be changed to form a parabolic curve. It is done simply by using the Power parameter of this indicator.
Probability Density Function Moving Average - PDFMA
Probability density function based MA is a sort of weighted moving average that uses probability density function to calculate the weights. By its nature it is similar to a lot of digital filters.
Quadratic Regression Moving Average - QRMA
A quadratic regression is the process of finding the equation of the parabola that best fits a set of data. This moving average is an obscure concept that was posted to Forex forums in around 2008.
Regularized EMA - REMA
The regularized exponential moving average (REMA) by Chris Satchwell is a variation on the EMA (see Exponential Moving Average) designed to be smoother but not introduce too much extra lag.
Range Weighted EMA - RWEMA
This indicator is a variation of the range weighted EMA. The variation comes from a possible need to make that indicator a bit less "noisy" when it comes to slope changes. The method used for calculating this variation is the method described by Lee Leibfarth in his article "Trading With An Adaptive Price Zone".
Recursive Moving Trendline
Dennis Meyers's Recursive Moving Trendline uses a recursive (repeated application of a rule) polynomial fit, a technique that uses a small number of past values estimations of price and today's price to predict tomorrow's price.
Simple Decycler - SDEC
The Ehlers Simple Decycler study is a virtually zero-lag technical indicator proposed by John F. Ehlers. The original idea behind this study (and several others created by John F. Ehlers) is that market data can be considered a continuum of cycle periods with different cycle amplitudes. Thus, trending periods can be considered segments of longer cycles, or, in other words, low-frequency segments. Applying the right filter might help identify these segments.
Simple Loxx Moving Average - SLMA
A three stage moving average combining an adaptive EMA, a Kalman Filter, and a Kauffman adaptive filter.
Simple Moving Average - SMA
The SMA calculates the average of a range of prices by adding recent prices and then dividing that figure by the number of time periods in the calculation average. It is the most basic Moving Average which is seen as a reliable tool for starting off with Moving Average studies. As reliable as it may be, the basic moving average will work better when it's enhanced into an EMA .
Sine Weighted Moving Average
The Sine Weighted Moving Average assigns the most weight at the middle of the data set. It does this by weighting from the first half of a Sine Wave Cycle and the most weighting is given to the data in the middle of that data set. The Sine WMA closely resembles the TMA (Triangular Moving Average).
Smoothed LWMA - SLWMA
A smoothed version of the LWMA
Smoothed Moving Average - SMMA
The Smoothed Moving Average is similar to the Simple Moving Average ( SMA ), but aims to reduce noise rather than reduce lag. SMMA takes all prices into account and uses a long lookback period. Due to this, it's seen as an accurate yet laggy Moving Average.
Smoother
The Smoother filter is a faster-reacting smoothing technique which generates considerably less lag than the SMMA ( Smoothed Moving Average ). It gives earlier signals but can also create false signals due to its earlier reactions. This filter is sometimes wrongly mistaken for the superior Jurik Smoothing algorithm.
Super Smoother
The Super Smoother filter uses John Ehlers’s “Super Smoother” which consists of a Two pole Butterworth filter combined with a 2-bar SMA ( Simple Moving Average ) that suppresses the 22050 Hz Nyquist frequency: A characteristic of a sampler, which converts a continuous function or signal into a discrete sequence.
Three-pole Ehlers Butterworth
The 3 pole Ehlers Butterworth (as well as the Two pole Butterworth) are both superior alternatives to the EMA and SMA . They aim at producing less lag whilst maintaining accuracy. The 2 pole filter will give you a better approximation for price, whereas the 3 pole filter has superior smoothing.
Three-pole Ehlers smoother
The 3 pole Ehlers smoother works almost as close to price as the above mentioned 3 Pole Ehlers Butterworth. It acts as a strong baseline for signals but removes some noise. Side by side, it hardly differs from the Three Pole Ehlers Butterworth but when examined closely, it has better overshoot reduction compared to the 3 pole Ehlers Butterworth.
Triangular Moving Average - TMA
The TMA is similar to the EMA but uses a different weighting scheme. Exponential and weighted Moving Averages will assign weight to the most recent price data. Simple moving averages will assign the weight equally across all the price data. With a TMA (Triangular Moving Average), it is double smoother (averaged twice) so the majority of the weight is assigned to the middle portion of the data.
Triple Exponential Moving Average - TEMA
The TEMA uses multiple EMA calculations as well as subtracting lag to create a tool which can be used for scalping pullbacks. As it follows price closely, its signals are considered very noisy and should only be used in extremely fast-paced trading conditions.
Two-pole Ehlers Butterworth
The 2 pole Ehlers Butterworth (as well as the three pole Butterworth mentioned above) is another filter that cuts out the noise and follows the price closely. The 2 pole is seen as a faster, leading filter over the 3 pole and follows price a bit more closely. Analysts will utilize both a 2 pole and a 3 pole Butterworth on the same chart using the same period, but having both on chart allows its crosses to be traded.
Two-pole Ehlers smoother
A smoother version of the Two pole Ehlers Butterworth. This filter is the faster version out of the 3 pole Ehlers Butterworth. It does a decent job at cutting out market noise whilst emphasizing a closer following to price over the 3 pole Ehlers .
Variable Index Dynamic Average - VIDYA
Variable Index Dynamic Average Technical Indicator ( VIDYA ) was developed by Tushar Chande. It is an original method of calculating the Exponential Moving Average ( EMA ) with the dynamically changing period of averaging.
Variable Moving Average - VMA
The Variable Moving Average (VMA) is a study that uses an Exponential Moving Average being able to automatically adjust its smoothing factor according to the market volatility.
Volume Weighted EMA - VEMA
An EMA that uses a volume and price weighted calculation instead of the standard price input.
Volume Weighted Moving Average - VWMA
A Volume Weighted Moving Average is a moving average where more weight is given to bars with heavy volume than with light volume. Thus the value of the moving average will be closer to where most trading actually happened than it otherwise would be without being volume weighted.
Zero-Lag DEMA - Zero Lag Double Exponential Moving Average
John Ehlers's Zero Lag DEMA's aim is to eliminate the inherent lag associated with all trend following indicators which average a price over time. Because this is a Double Exponential Moving Average with Zero Lag, it has a tendency to overshoot and create a lot of false signals for swing trading. It can however be used for quick scalping or as a secondary indicator for confluence.
Zero-Lag Moving Average
The Zero Lag Moving Average is described by its creator, John Ehlers , as a Moving Average with absolutely no delay. And it's for this reason that this filter will cause a lot of abrupt signals which will not be ideal for medium to long-term traders. This filter is designed to follow price as close as possible whilst de-lagging data instead of basing it on regular data. The way this is done is by attempting to remove the cumulative effect of the Moving Average.
Zero-Lag TEMA - Zero Lag Triple Exponential Moving Average
Just like the Zero Lag DEMA , this filter will give you the fastest signals out of all the Zero Lag Moving Averages. This is useful for scalping but dangerous for medium to long-term traders, especially during market Volatility and news events. Having no lag, this filter also has no smoothing in its signals and can cause some very bizarre behavior when applied to certain indicators.
Volatility Goldie Locks Zone
This volatility filter is the standard first pass filter that is used for all NNFX systems despite the additional volatility/volume filter used in step 5. For this filter, price must fall into a range of maximum and minimum values calculated using multiples of volatility. Unlike the standard NNFX systems, this version of volatility filtering is separated from the core Baseline and uses it's own moving average with Loxx's Exotic Source Types. The green and red dots at the top of the chart denote whether a candle qualifies for a either or long or short respectively. The green and red triangles at the bottom of the chart denote whether the trigger has crossed up or down and qualifies inside the Goldie Locks zone. White coloring of the Goldie Locks Zone mean line is where volatility is too low to trade.
Volatility Types Included
Close-to-Close
Close-to-Close volatility is a classic and most commonly used volatility measure, sometimes referred to as historical volatility .
Volatility is an indicator of the speed of a stock price change. A stock with high volatility is one where the price changes rapidly and with a bigger amplitude. The more volatile a stock is, the riskier it is.
Close-to-close historical volatility calculated using only stock's closing prices. It is the simplest volatility estimator. But in many cases, it is not precise enough. Stock prices could jump considerably during a trading session, and return to the open value at the end. That means that a big amount of price information is not taken into account by close-to-close volatility .
Despite its drawbacks, Close-to-Close volatility is still useful in cases where the instrument doesn't have intraday prices. For example, mutual funds calculate their net asset values daily or weekly, and thus their prices are not suitable for more sophisticated volatility estimators.
Parkinson
Parkinson volatility is a volatility measure that uses the stock’s high and low price of the day.
The main difference between regular volatility and Parkinson volatility is that the latter uses high and low prices for a day, rather than only the closing price. That is useful as close to close prices could show little difference while large price movements could have happened during the day. Thus Parkinson's volatility is considered to be more precise and requires less data for calculation than the close-close volatility .
One drawback of this estimator is that it doesn't take into account price movements after market close. Hence it systematically undervalues volatility . That drawback is taken into account in the Garman-Klass's volatility estimator.
Garman-Klass
Garman Klass is a volatility estimator that incorporates open, low, high, and close prices of a security.
Garman-Klass volatility extends Parkinson's volatility by taking into account the opening and closing price. As markets are most active during the opening and closing of a trading session, it makes volatility estimation more accurate.
Garman and Klass also assumed that the process of price change is a process of continuous diffusion (Geometric Brownian motion). However, this assumption has several drawbacks. The method is not robust for opening jumps in price and trend movements.
Despite its drawbacks, the Garman-Klass estimator is still more effective than the basic formula since it takes into account not only the price at the beginning and end of the time interval but also intraday price extremums.
Researchers Rogers and Satchel have proposed a more efficient method for assessing historical volatility that takes into account price trends. See Rogers-Satchell Volatility for more detail.
Rogers-Satchell
Rogers-Satchell is an estimator for measuring the volatility of securities with an average return not equal to zero.
Unlike Parkinson and Garman-Klass estimators, Rogers-Satchell incorporates drift term (mean return not equal to zero). As a result, it provides a better volatility estimation when the underlying is trending.
The main disadvantage of this method is that it does not take into account price movements between trading sessions. It means an underestimation of volatility since price jumps periodically occur in the market precisely at the moments between sessions.
A more comprehensive estimator that also considers the gaps between sessions was developed based on the Rogers-Satchel formula in the 2000s by Yang-Zhang. See Yang Zhang Volatility for more detail.
Yang-Zhang
Yang Zhang is a historical volatility estimator that handles both opening jumps and the drift and has a minimum estimation error.
We can think of the Yang-Zhang volatility as the combination of the overnight (close-to-open volatility ) and a weighted average of the Rogers-Satchell volatility and the day’s open-to-close volatility . It considered being 14 times more efficient than the close-to-close estimator.
Garman-Klass-Yang-Zhang
Garman-Klass-Yang-Zhang (GKYZ) volatility estimator consists of using the returns of open, high, low, and closing prices in its calculation.
GKYZ volatility estimator takes into account overnight jumps but not the trend, i.e. it assumes that the underlying asset follows a GBM process with zero drift. Therefore the GKYZ volatility estimator tends to overestimate the volatility when the drift is different from zero. However, for a GBM process, this estimator is eight times more efficient than the close-to-close volatility estimator.
Exponential Weighted Moving Average
The Exponentially Weighted Moving Average (EWMA) is a quantitative or statistical measure used to model or describe a time series. The EWMA is widely used in finance, the main applications being technical analysis and volatility modeling.
The moving average is designed as such that older observations are given lower weights. The weights fall exponentially as the data point gets older – hence the name exponentially weighted.
The only decision a user of the EWMA must make is the parameter lambda. The parameter decides how important the current observation is in the calculation of the EWMA. The higher the value of lambda, the more closely the EWMA tracks the original time series.
Standard Deviation of Log Returns
This is the simplest calculation of volatility . It's the standard deviation of ln(close/close(1))
Pseudo GARCH(2,2)
This is calculated using a short- and long-run mean of variance multiplied by θ.
θavg(var ;M) + (1 − θ) avg (var ;N) = 2θvar/(M+1-(M-1)L) + 2(1-θ)var/(M+1-(M-1)L)
Solving for θ can be done by minimizing the mean squared error of estimation; that is, regressing L^-1var - avg (var; N) against avg (var; M) - avg (var; N) and using the resulting beta estimate as θ.
Average True Range
The average true range (ATR) is a technical analysis indicator, introduced by market technician J. Welles Wilder Jr. in his book New Concepts in Technical Trading Systems, that measures market volatility by decomposing the entire range of an asset price for that period.
The true range indicator is taken as the greatest of the following: current high less the current low; the absolute value of the current high less the previous close; and the absolute value of the current low less the previous close. The ATR is then a moving average, generally using 14 days, of the true ranges.
True Range Double
A special case of ATR that attempts to correct for volatility skew.
Standard Deviation
Standard deviation is a statistic that measures the dispersion of a dataset relative to its mean and is calculated as the square root of the variance. The standard deviation is calculated as the square root of variance by determining each data point's deviation relative to the mean. If the data points are further from the mean, there is a higher deviation within the data set; thus, the more spread out the data, the higher the standard deviation.
Adaptive Deviation
By definition, the Standard Deviation (STD, also represented by the Greek letter sigma σ or the Latin letter s) is a measure that is used to quantify the amount of variation or dispersion of a set of data values. In technical analysis we usually use it to measure the level of current volatility .
Standard Deviation is based on Simple Moving Average calculation for mean value. This version of standard deviation uses the properties of EMA to calculate what can be called a new type of deviation, and since it is based on EMA , we can call it EMA deviation. And added to that, Perry Kaufman's efficiency ratio is used to make it adaptive (since all EMA type calculations are nearly perfect for adapting).
The difference when compared to standard is significant--not just because of EMA usage, but the efficiency ratio makes it a "bit more logical" in very volatile market conditions.
Median Absolute Deviation
The median absolute deviation is a measure of statistical dispersion. Moreover, the MAD is a robust statistic, being more resilient to outliers in a data set than the standard deviation. In the standard deviation, the distances from the mean are squared, so large deviations are weighted more heavily, and thus outliers can heavily influence it. In the MAD, the deviations of a small number of outliers are irrelevant.
Because the MAD is a more robust estimator of scale than the sample variance or standard deviation, it works better with distributions without a mean or variance, such as the Cauchy distribution.
For this indicator, I used a manual recreation of the quantile function in Pine Script. This is so users have a full inside view into how this is calculated.
Efficiency-Ratio Adaptive ATR
Average True Range (ATR) is widely used indicator in many occasions for technical analysis . It is calculated as the RMA of true range. This version adds a "twist": it uses Perry Kaufman's Efficiency Ratio to calculate adaptive true range
Mean Absolute Deviation
The mean absolute deviation (MAD) is a measure of variability that indicates the average distance between observations and their mean. MAD uses the original units of the data, which simplifies interpretation. Larger values signify that the data points spread out further from the average. Conversely, lower values correspond to data points bunching closer to it. The mean absolute deviation is also known as the mean deviation and average absolute deviation.
This definition of the mean absolute deviation sounds similar to the standard deviation ( SD ). While both measure variability, they have different calculations. In recent years, some proponents of MAD have suggested that it replace the SD as the primary measure because it is a simpler concept that better fits real life.
For Pine Coders, this is equivalent of using ta.dev()
Additional features will be added in future releases.
█ Giga Kaleidoscope Modularized Trading System
Core components of an NNFX algorithmic trading strategy
The NNFX algorithm is built on the principles of trend, momentum, and volatility. There are six core components in the NNFX trading algorithm:
1. Volatility - price volatility; e.g., Average True Range, True Range Double, Close-to-Close, etc.
2. Baseline - a moving average to identify price trend
3. Confirmation 1 - a technical indicator used to identify trends
4. Confirmation 2 - a technical indicator used to identify trends
5. Continuation - a technical indicator used to identify trends
6. Volatility/Volume - a technical indicator used to identify volatility/volume breakouts/breakdown
7. Exit - a technical indicator used to determine when a trend is exhausted
What is Volatility in the NNFX trading system?
In the NNFX (No Nonsense Forex) trading system, ATR (Average True Range) is typically used to measure the volatility of an asset. It is used as a part of the system to help determine the appropriate stop loss and take profit levels for a trade. ATR is calculated by taking the average of the true range values over a specified period.
True range is calculated as the maximum of the following values:
-Current high minus the current low
-Absolute value of the current high minus the previous close
-Absolute value of the current low minus the previous close
ATR is a dynamic indicator that changes with changes in volatility. As volatility increases, the value of ATR increases, and as volatility decreases, the value of ATR decreases. By using ATR in NNFX system, traders can adjust their stop loss and take profit levels according to the volatility of the asset being traded. This helps to ensure that the trade is given enough room to move, while also minimizing potential losses.
Other types of volatility include True Range Double (TRD), Close-to-Close, and Garman-Klass
What is a Baseline indicator?
The baseline is essentially a moving average, and is used to determine the overall direction of the market.
The baseline in the NNFX system is used to filter out trades that are not in line with the long-term trend of the market. The baseline is plotted on the chart along with other indicators, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR).
Trades are only taken when the price is in the same direction as the baseline. For example, if the baseline is sloping upwards, only long trades are taken, and if the baseline is sloping downwards, only short trades are taken. This approach helps to ensure that trades are in line with the overall trend of the market, and reduces the risk of entering trades that are likely to fail.
By using a baseline in the NNFX system, traders can have a clear reference point for determining the overall trend of the market, and can make more informed trading decisions. The baseline helps to filter out noise and false signals, and ensures that trades are taken in the direction of the long-term trend.
What is a Confirmation indicator?
Confirmation indicators are technical indicators that are used to confirm the signals generated by primary indicators. Primary indicators are the core indicators used in the NNFX system, such as the Average True Range (ATR), the Moving Average (MA), and the Relative Strength Index (RSI).
The purpose of the confirmation indicators is to reduce false signals and improve the accuracy of the trading system. They are designed to confirm the signals generated by the primary indicators by providing additional information about the strength and direction of the trend.
Some examples of confirmation indicators that may be used in the NNFX system include the Bollinger Bands, the MACD (Moving Average Convergence Divergence), and the MACD Oscillator. These indicators can provide information about the volatility, momentum, and trend strength of the market, and can be used to confirm the signals generated by the primary indicators.
In the NNFX system, confirmation indicators are used in combination with primary indicators and other filters to create a trading system that is robust and reliable. By using multiple indicators to confirm trading signals, the system aims to reduce the risk of false signals and improve the overall profitability of the trades.
What is a Continuation indicator?
In the NNFX (No Nonsense Forex) trading system, a continuation indicator is a technical indicator that is used to confirm a current trend and predict that the trend is likely to continue in the same direction. A continuation indicator is typically used in conjunction with other indicators in the system, such as a baseline indicator, to provide a comprehensive trading strategy.
What is a Volatility/Volume indicator?
Volume indicators, such as the On Balance Volume (OBV), the Chaikin Money Flow (CMF), or the Volume Price Trend (VPT), are used to measure the amount of buying and selling activity in a market. They are based on the trading volume of the market, and can provide information about the strength of the trend. In the NNFX system, volume indicators are used to confirm trading signals generated by the Moving Average and the Relative Strength Index. Volatility indicators include Average Direction Index, Waddah Attar, and Volatility Ratio. In the NNFX trading system, volatility is a proxy for volume and vice versa.
By using volume indicators as confirmation tools, the NNFX trading system aims to reduce the risk of false signals and improve the overall profitability of trades. These indicators can provide additional information about the market that is not captured by the primary indicators, and can help traders to make more informed trading decisions. In addition, volume indicators can be used to identify potential changes in market trends and to confirm the strength of price movements.
What is an Exit indicator?
The exit indicator is used in conjunction with other indicators in the system, such as the Moving Average (MA), the Relative Strength Index (RSI), and the Average True Range (ATR), to provide a comprehensive trading strategy.
The exit indicator in the NNFX system can be any technical indicator that is deemed effective at identifying optimal exit points. Examples of exit indicators that are commonly used include the Parabolic SAR, the Average Directional Index (ADX), and the Chandelier Exit.
The purpose of the exit indicator is to identify when a trend is likely to reverse or when the market conditions have changed, signaling the need to exit a trade. By using an exit indicator, traders can manage their risk and prevent significant losses.
In the NNFX system, the exit indicator is used in conjunction with a stop loss and a take profit order to maximize profits and minimize losses. The stop loss order is used to limit the amount of loss that can be incurred if the trade goes against the trader, while the take profit order is used to lock in profits when the trade is moving in the trader's favor.
Overall, the use of an exit indicator in the NNFX trading system is an important component of a comprehensive trading strategy. It allows traders to manage their risk effectively and improve the profitability of their trades by exiting at the right time.
How does Loxx's GKD (Giga Kaleidoscope Modularized Trading System) implement the NNFX algorithm outlined above?
Loxx's GKD v1.0 system has five types of modules (indicators/strategies). These modules are:
1. GKD-BT - Backtesting module (Volatility, Number 1 in the NNFX algorithm)
2. GKD-B - Baseline module (Baseline and Volatility/Volume, Numbers 1 and 2 in the NNFX algorithm)
3. GKD-C - Confirmation 1/2 and Continuation module (Confirmation 1/2 and Continuation, Numbers 3, 4, and 5 in the NNFX algorithm)
4. GKD-V - Volatility/Volume module (Confirmation 1/2, Number 6 in the NNFX algorithm)
5. GKD-E - Exit module (Exit, Number 7 in the NNFX algorithm)
(additional module types will added in future releases)
Each module interacts with every module by passing data between modules. Data is passed between each module as described below:
GKD-B => GKD-V => GKD-C(1) => GKD-C(2) => GKD-C(Continuation) => GKD-E => GKD-BT
That is, the Baseline indicator passes its data to Volatility/Volume. The Volatility/Volume indicator passes its values to the Confirmation 1 indicator. The Confirmation 1 indicator passes its values to the Confirmation 2 indicator. The Confirmation 2 indicator passes its values to the Continuation indicator. The Continuation indicator passes its values to the Exit indicator, and finally, the Exit indicator passes its values to the Backtest strategy.
This chaining of indicators requires that each module conform to Loxx's GKD protocol, therefore allowing for the testing of every possible combination of technical indicators that make up the six components of the NNFX algorithm.
What does the application of the GKD trading system look like?
Example trading system:
Backtest: Strategy with 1-3 take profits, trailing stop loss, multiple types of PnL volatility, and 2 backtesting styles
Baseline: Hull Moving Average as shown on the chart above
Volatility/Volume: Hurst Exponent
Confirmation 1: Fisher Transform
Confirmation 2: Williams Percent Range
Continuation: Fisher Transform
Exit: Rex Oscillator
Each GKD indicator is denoted with a module identifier of either: GKD-BT, GKD-B, GKD-C, GKD-V, or GKD-E. This allows traders to understand to which module each indicator belongs and where each indicator fits into the GKD protocol chain.
Giga Kaleidoscope Modularized Trading System Signals (based on the NNFX algorithm)
Standard Entry
1. GKD-C Confirmation 1 Signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
6. GKD-C Confirmation 1 signal was less than 7 candles prior
Volatility/Volume Entry
1. GKD-V Volatility/Volume signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 2 agrees
5. GKD-B Baseline agrees
6. GKD-C Confirmation 1 signal was less than 7 candles prior
Continuation Entry
1. Standard Entry, Baseline Entry, or Pullback; entry triggered previously
2. GKD-B Baseline hasn't crossed since entry signal trigger
3. GKD-C Confirmation Continuation Indicator signals
4. GKD-C Confirmation 1 agrees
5. GKD-B Baseline agrees
6. GKD-C Confirmation 2 agrees
1-Candle Rule Standard Entry
1. GKD-C Confirmation 1 signal
2. GKD-B Baseline agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume agrees
1-Candle Rule Baseline Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 1 signal was less than 7 candles prior
Next Candle:
1. Price retraced (Long: close < close or Short: close > close )
2. GKD-B Baseline agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-V Volatility/Volume Agrees
1-Candle Rule Volatility/Volume Entry
1. GKD-V Volatility/Volume signal
2. GKD-C Confirmation 1 agrees
3. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
4. GKD-C Confirmation 1 signal was less than 7 candles prior
Next Candle:
1. Price retraced (Long: close < close or Short: close > close)
2. GKD-B Volatility/Volume agrees
3. GKD-C Confirmation 1 agrees
4. GKD-C Confirmation 2 agrees
5. GKD-B Baseline agrees
PullBack Entry
1. GKD-B Baseline signal
2. GKD-C Confirmation 1 agrees
3. Price is beyond 1.0x Volatility of Baseline
Next Candle:
1. Price is within a range of 0.2x Volatility and 1.0x Volatility of the Goldie Locks Mean
2. GKD-C Confirmation 1 agrees
3. GKD-C Confirmation 2 agrees
4. GKD-V Volatility/Volume Agrees
]█ Setting up the GKD
The GKD system involves chaining indicators together. These are the steps to set this up.
Use a GKD-C indicator alone on a chart
1. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Simple"
Use a GKD-V indicator alone on a chart
**nothing, it's already useable on the chart without any settings changes
Use a GKD-B indicator alone on a chart
**nothing, it's already useable on the chart without any settings changes
Baseline (Baseline, Backtest)
1. Import the GKD-B Baseline into the GKD-BT Backtest: "Input into Volatility/Volume or Backtest (Baseline testing)"
2. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Baseline"
Volatility/Volume (Volatility/Volume, Backte st)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Solo"
2. Inside the GKD-V indicator, change the "Signal Type" setting to "Crossing" (neither traditional nor both can be backtested)
3. Import the GKD-V indicator into the GKD-BT Backtest: "Input into C1 or Backtest"
4. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Volatility/Volume"
5. Inside the GKD-BT Backtest, a) change the setting "Backtest Type" to "Trading" if using a directional GKD-V indicator; or, b) change the setting "Backtest Type" to "Full" if using a directional or non-directional GKD-V indicator (non-directional GKD-V can only test Longs and Shorts separately)
6. If "Backtest Type" is set to "Full": Inside the GKD-BT Backtest, change the setting "Backtest Side" to "Long" or "Short
7. If "Backtest Type" is set to "Full": To allow the system to open multiple orders at one time so you test all Longs or Shorts, open the GKD-BT Backtest, click the tab "Properties" and then insert a value of something like 10 orders into the "Pyramiding" settings. This will allow 10 orders to be opened at one time which should be enough to catch all possible Longs or Shorts.
Solo Confirmation Simple (Confirmation, Backtest)
1. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Simple"
1. Import the GKD-C indicator into the GKD-BT Backtest: "Input into Backtest"
2. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Solo Confirmation Simple"
Solo Confirmation Complex without Exits (Baseline, Volatility/Volume, Confirmation, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Complex"
4. Import the GKD-V indicator into the GKD-C indicator: "Input into C1 or Backtest"
5. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full wo/ Exits"
6. Import the GKD-C into the GKD-BT Backtest: "Input into Exit or Backtest"
Solo Confirmation Complex with Exits (Baseline, Volatility/Volume, Confirmation, Exit, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C indicator, change the "Confirmation Type" setting to "Solo Confirmation Complex"
4. Import the GKD-V indicator into the GKD-C indicator: "Input into C1 or Backtest"
5. Import the GKD-C indicator into the GKD-E indicator: "Input into Exit"
6. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full w/ Exits"
7. Import the GKD-E into the GKD-BT Backtest: "Input into Backtest"
Full GKD without Exits (Baseline, Volatility/Volume, Confirmation 1, Confirmation 2, Continuation, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C 1 indicator, change the "Confirmation Type" setting to "Confirmation 1"
4. Import the GKD-V indicator into the GKD-C 1 indicator: "Input into C1 or Backtest"
5. Inside the GKD-C 2 indicator, change the "Confirmation Type" setting to "Confirmation 2"
6. Import the GKD-C 1 indicator into the GKD-C 2 indicator: "Input into C2"
7. Inside the GKD-C Continuation indicator, change the "Confirmation Type" setting to "Continuation"
8. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full wo/ Exits"
9. Import the GKD-E into the GKD-BT Backtest: "Input into Exit or Backtest"
Full GKD with Exits (Baseline, Volatility/Volume, Confirmation 1, Confirmation 2, Continuation, Exit, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Chained"
2. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
3. Inside the GKD-C 1 indicator, change the "Confirmation Type" setting to "Confirmation 1"
4. Import the GKD-V indicator into the GKD-C 1 indicator: "Input into C1 or Backtest"
5. Inside the GKD-C 2 indicator, change the "Confirmation Type" setting to "Confirmation 2"
6. Import the GKD-C 1 indicator into the GKD-C 2 indicator: "Input into C2"
7. Inside the GKD-C Continuation indicator, change the "Confirmation Type" setting to "Continuation"
8. Import the GKD-C Continuation indicator into the GKD-E indicator: "Input into Exit"
9. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "GKD Full w/ Exits"
10. Import the GKD-E into the GKD-BT Backtest: "Input into Backtest"
Baseline + Volatility/Volume (Baseline, Volatility/Volume, Backtest)
1. Inside the GKD-V indicator, change the "Testing Type" setting to "Baseline + Volatility/Volume"
2. Inside the GKD-V indicator, make sure the "Signal Type" setting is set to "Traditional"
3. Import the GKD-B Baseline into the GKD-V indicator: "Input into Volatility/Volume or Backtest (Baseline testing)"
4. Inside the GKD-BT Backtest, change the setting "Backtest Special" to "Baseline + Volatility/Volume"
5. Import the GKD-V into the GKD-BT Backtest: "Input into C1 or Backtest"
6. Inside the GKD-BT Backtest, change the setting "Backtest Type" to "Full". For this backtest, you must test Longs and Shorts separately
7. To allow the system to open multiple orders at one time so you can test all Longs or Shorts, open the GKD-BT Backtest, click the tab "Properties" and then insert a value of something like 10 orders into the "Pyramiding" settings. This will allow 10 orders to be opened at one time which should be enough to catch all possible Longs or Shorts.
Requirements
Outputs
Chained or Standalone: GKD-BT or GKC-V
Stack 1: GKD-C Continuation indicator
Stack 2: GKD-C Continuation indicator
The Strat [LuxAlgo]The Strat indicator is a full toolkit regarding most of the concepts within "The Strat" methodology with features such as candle numbering, pivot machine gun (PMG) highlighting, custom combo highlighting, and various statistics included.
Alerts are also included for the detection of specific candle numbers, custom combos, and PMGs.
🔶 SETTINGS
Show Numbers on Chart: Shows candle numbering on the chart.
Style Candles: Style candles based on the detected number. Only effective on non-line charts and if the script is brought to the front.
🔹 Custom Combo Search
Combo: User defined combo to be searched by the script. Combos can be composed of any series of numbers including (1, 2, -2, 3), e.g : 2-21. No spaces or other characters should be used.
🔹 Pivot Machine Gun
Show Labels: Highlight detected PMGs with a label.
Min Sequence Length: Minimum sequence length of consecutive higher lows/lower highs required to detect a PMG.
Min Breaks: Minimum amount of broken previous highs/lows required to detect a PMG.
Show Levels: Show levels of the broken highs/lows.
🔹 Pivot Combos
Pivot Lookback: Lookback period used for detecting pivot points.
Right Bars Scan: Number of bars scanned to the right side of a detected pivot.
Left Bars Scan: Number of bars scanned to the left side of a detected pivot.
🔹 Dashboard
Show Dashboard: Displays statistics dashboard on chart.
Numbers Counter: Displays the numbers counter section on the dashboard.
Pivot Combos: Displays pivots combo section on the dashboard.
%: Display the percentage of detected pivot combos on the dashboard instead of absolute numbers.
Pivot Combos Rows: Number of rows displayed by the "Pivots Combo" dashboard section.
Show MTF: Showa MTF candle numbering on the dashboard.
Location: Location of the dashboard on the chart.
Size: Size of the displayed dashboard.
🔶 USAGE
This script allows users with an understanding of The Strat to quickly highlight elements such as candle numbers, pivot machine guns, and custom combos. The usage for these concepts is given in the sub-sections below.
🔹 Candle Numbers
The Strat assigns a number to individual candles, this number is determined by the current candle position relative to the precedent candle, these include:
Number 1 - Inside bar, occurs when the previous candle range engulfs the current one.
Number 2 Up - Upside Directional Bar, occurs when the current price high breaks the previous high while the current low is lower than the previous high.
Number 2 Down - Downside Directional Bar, occurs when the current price low breaks the previous low while the current high is higher than the previous low.
Number 3 - Outside bar, occurs when the current candle range engulfs the previous one.
The script can highlight the number of a candle by using labels but can also style candles by depending on the candle number. Inside bars (1) only have their candle wick highlighted, directional bars (2) (-2) only have their candle body highlighted. Outside bars have their candle range highlighted.
Note that downside directional bars are highlighted with the number -2.
Users can see the total amount of times a specific candle number is detected on the historical data on the dashboard available within the settings, as well as the number of times a candle number is detected relative to the total amount of detected candle numbers expressed as a percentage.
It is also possible to see the current candle numbers returned by multiple timeframes on the dashboard.
🔹 Searching For Custom Combos
Combos are made of a sequence of two or more candle numbers. These combos can highlight multiple reversals/continuation scenarios. Various common combos are documented by The Strat community.
This script allows users to search for custom combos by entering them on the Combo user setting field.
When a user combo is found, it is highlighted on the chart as a box highlighting the combo range.
🔹 Pivot Combos
It can be of interest to a user to display the combo associated with a pivot high/low. This script will highlight the location of pivot points on the chart and display its associated combo by default. These are based on the Pivot Combo lookback and not displayed in real-time.
Users can see on the dashboard the combos associated with a pivot high/low, these are ranked by frequency.
🔹 Pivot Machine Gun (PMG)
Pivot Machine Guns (PMG)s describe the scenario where a single price variation breaks the value of multiple past successive higher lows/lower highs. This can highlight a self-exciting behavior, where even more past successive higher lows/lower highs get broken.
Users can select the minimum sequence length of successive higher lows/lower highs required for a PMG to be detected, as well the amount of these successive higher lows/lower highs that must be broken.
Previous Day/Week High & Low + 50% w/ Alerts| by Octopu$
📈 Previous Day/Week High & Low + 50% w/ Alerts| by Octopu$
This Indicator includes Previous Day High and Low Levels and 50% (Half of High & Low)
As well as Previous Week High and Low Levels ((Half of High & Low))
And also Pre-Market Session High and Low.
All of them with Built-in alerts.
Can be used in any timeframe with any ticker.
(Using SPY 5m just as an example:)
www.tradingview.com
SPY
Features:
• D High: Green Top Line
• D Low: Red Bottom Line
• D 50%: White 50% Line
• Week High and Low: Blue Top and Bottom Lines
• Pre-Market and Afterhours Session: Gray Lines
• Labels for Identification
Options:
• Toggle on/off for Day High, Low and 50%
• Toggle on/off for DWeek High, Low and 50%
• Toggle on/off for PM and AH Sessions
• Show/Hide the Labels with names
• Show/Hide the Lines themselves
• Fully Customizable Style and Color
Alerts:
• Triggers for Day (above or below level)
• Triggers for Week (above or below level)
Notes:
v1.0
Release of the Indicator
Changes and updates can come in the future for additional functionalities or per requests.
Did you like it? Shoot me a message! I'd appreciate if you dropped by to say thanks.
- Octopu$
🐙
50% Retracement & Fibonacci Levels [LevelUp]Retracement refers to price reversal after reaching a recent high or low, finding an area of support or resistance, and then continuing in the direction of the bigger picture trend. The concept of 50% retracement is based on the work of W.D. Gann.
Gann was born in 1878 in Texas. Over his trading career, it's been stated he was one of the most successful traders who ever lived. With that said, there is no irrefutable proof he made great fortunes in the market. However, it's a fact that his trading ideas and principles are still in use today, many years after his death in 1955.
Gann believed there was a natural order that exists for everything in the universe, including the stock market. He theorized that price movements occurred in a manner that can be pre-determined based on historical precedent and the influence of mathematical equations and relationships. The end result was predictable movement of prices between areas of support and resistance.
The idea of 50% retracement is best explained in this quote from Gann:
"After an initial, sustained price move, either up or down, prices retrace to 50% of their initial move."
What's important here is the idea that retracement applies in both directions. When price is heading up, it may be approaching an area of resistance. When price is declining, it may be heading towards an area of support.
Continuation of the Trend
The primary reason we are interested to gauge levels of retracement is that once a retracement is complete, there is often a continuation of the previous trend. For example, if moving from a recent low to a new high, if price retraces 50%, at that point we look for a bounce and a continuation of the upward trend.
Retracement to Area of Support
When moving a recent low to a recent high, one can anticipate a price to move down 50% of the original move up.
For example, if a stock climbed from $50 to $100, a 50% retracement of the move from low to high would result in a price of $75. We now look for this $75 price area to be an area of support.
Retracement to Area of Resistance
Retracement is also applicable in the other direction. If price moves from a recent high to a new low and starts moving back up, look for price to regain 50% of the original move down. This retracement is often an area of resistance.
For example, if the recent high was $100 and price bounced off a low of $50, look for resistance near $75.
Additional Retracements - 33% and 66%
Gann also focused on other incremental retracements that he calculated based on various geometric angles believed to balance price and time. What I've found most helpful is to keep things simple and focus on no more than three retracements, 33% 50% and 66%.
Direction of Retracement
When moving from a recent low to a new high, the retracement will be downward. If multiple retracement percentages are shown, they will be smallest to largest going from the top to bottom.
When moving from a recent high to a new low, the retracement will be upward. If multiple retracement percentages are shown, they will be smallest to largest going from the bottom to top.
Retracement Versus Reversal
As described above, retracement refers to retracing a move back down towards a recent low after hitting a new high, or moving back up from a recent low towards a previous high.
The difference between a retracement and reversal is that the latter breaks the uptrend as shown in the chart that follows:
■ With retracements, the upward trendline acted as support of the upward trend.
■ With a reversal, the upward trendline was broken and the price continued to move down.
Additional Retracement Examples
Features
■ Choose up to three retracement levels: 33%, 50% and 66%.
■ Configure price and line color at each retracement level.
■ Show/hide retracements on intraday, daily, weekly and monthly.
■ Set preferred lookback count for Marked Highs/Lows.
■ Show Marked Highs/Lows as price or symbols.
■ Show lines of support and/or resistance.
Marked Highs - Support & Resistance [LevelUp]This indicator mimics the functionality of marked highs/lows in MarketSmith, a charting tool available from Investor's Business Daily. Marked highs/lows, sometimes referred to as pivot highs/lows, can be used to locate areas of support and resistance. These same points can also be helpful when drawing trendlines and channels.
I've added several customization options that add to the flexibility and overall usefulness of this technical indicator.
Custom Ranges for Marked Highs/Lows
In MarketSmith, a marked high is the highest high going back nine bars and forward nine bars. The number of required bars with lower highs on each side of the high is referred to as the period. The default for the indicator is a nine bar period, however, you can configure the period to fit with your trading style.
View Marked Highs/Lows on Any Timeframe
MarketSmith only supports marked highs/lows on daily charts. With this indicator you can view marked highs/lows on any timeframe.
Suggestions
■ Draw horizontal rays from the most recent marked high and low to help visualize areas of support and resistance.
■ Create a channel to show the current trading range. Draw a trendline across marked highs and a separate trendline across marked lows.
■ Increase the marked high/low periods to find more significant highs and lows.
EP/SL and ratio calculationExplanation of the indicator
The first question is - what is shown here at all. Generally, the indicator calculates order prices depending on the data found in the chart. The order is based on the lowest low (for a long) of the bounce and the high of the last candle. For a short it is based on the highest high and on the low of the last candle. There is no value for you, if you don’t do swing trading using trend lines on your chart.
All values shown are no financial advise - you are responsible for all your trades.
The indicator looks for the lowest low of the last days. How many days back to be searched can be configured in the settings. The lowest low is marked with the flag - the date and price is displayed there.
The high of the last candle is read out and based on this the entry price is calculated. On the green line are the EP percentages with which is calculated, the entry price and also the high of the last candle displayed.
On the line there is a green (or red) triangle, which indicates the trading direction. More about the direction can be found below in the settings.
Based on the lowest low (or in case of short the highest high) the stop loss is calculated. Also here the percentage and the price is given.
The lines labeled R1 to R5 are the prices of the respective ratios. The lines are 40 time units long (in the standard setting) and thus one can read off the ratio, which the trade would reach after approx. 8 weeks, over the trend lines and their intersection point at the end of the ratio lines.
The orange line marks the point at which we would be 10% above the entry price (or below the entry price for a short).
In general, the calculations are equivalent for short, the marker of the highest high is displayed.
The capital and the number of shares to be traded are not publicly displayed on the chart. The complete calculation is visible when you move the mouse over the text of the entry price.
In this small pop-up window you can see with which capital the calculation was done. The capital should be updated daily in the settings. Furthermore, you can see how many shares can be traded with this capital, taking into account the 1% portfolio risk. It is again the entry price and a proposal for a stop limit price (percentages also configurable) displayed. The price for the 3 ratio (take profit) and also the price for the stop loss can be read here. So actually everything that is necessary for the creation of the order.
Settings
The indicator now has a lot of settings and options. I have also built-in indicators such as EMA and JMA to have all the indicators necessary for me - with the free TV. Some things can also be changed under "Style", but I don't want to go into the things under "Style" here, just the basic settings.
Settings of the main indicator
With the checkmark at "Main Indicator" all lines etc. can be switched off without the other indicators (EMA, JMA) disappearing.
Capital:
Here you can set your daily capital (from paper trading or from the real money deposit). This is used to calculate the number of shares.
Search last bounce in last x candles:
Here you can influence how many candles the tool should look into the past to search for the lowest (long) or highest (short) candle. Default is 10, but sometimes shorter or longer periods make sense. It is also possible to tune a bit here and e.g. with "0" make the calculation of the SL based on the low/high of the last candle. Which low (long) or high (short) is taken, is always evident with the above described flag.
go back x candles for calculation:
If the calculation is not to be made on the basis of the last candle, but e.g. the one before last, this can be adjusted here. Everything is adapted with, thus e.g. also the Stochastic of this time is used for the direction. One can go back in time and reconstruct the calculation at that time.
EP percent:
Specifying how far the EP should be from the high (long)/low (short) of the last candle.
EP limit percent:
Specify how far the EP limit should be from the EP.
SL percent:
Specifying how far the SL should be from the lowest low (long)/highest high (short).
direction mode:
here is set in which way the indicator should be directed long or short. The stochastic used here has the settings 8-5-5. k is the blue line and d is the red line of this stochastic.
Stoch k>d = long automatic, blue line above the red line for long calculation
Stoch k<50% = long automatic, blue line below 50% for long calculation
long no automatic, always long calculation
short no automatic, always short calculation
ignore last candle if market is open:
Normally one calculates at closed market, thus on the finished candles. If you want to calculate with an open market or if you want to make sure that the indicator is not constantly running back and forth after the market has opened, you can automatically ignore the last candle (i.e. calculate on the second to last candle) if the market is open. If the market is closed, the last candle is always taken. If turned off, the last candle is always taken even if the market is open.
use close price for EP (instead of high/low):
You can adjust the EP calculation here to take the close price instead of the high/low of the last candle. This is not the usual strategy, but if there are long wicks/luns and you are quite sure with the trading direction, this can improve the ratio significantly.
Ratio lines length (bars):
The length of the lines. You can change here for 3M/6M trades to 80 time units.
Text color:
Color of the text (default is gray, this is kind of useful for white and black background).
Line color R-lines:
Color of the ratio lines (default is gray)
10% color:
Color of the 10% line (default orange)
Additional indicators settings
EMAs:
Here you can switch on/off all EMA lines
xx EMA Length:
Configuration of the individual EMA lines to be displayed. At 0 the line is switched off, colors are configured at the style.
JMA:
Here you can additionally display the JMA. Also its colors can be configured at Style.
JMA length:
JMA length, default 20, phase is fixed at 50 and power is fixed at 2.
Rabbit HoleHow deep is the Rabbit hole? Interesting experiment that finds the RISING HIGHS and FALLING LOWS and place the difference between the highs and lows into separate arrays.
== Calculations ==
In case current high is higher than previous high, we calculate the value by subtracting the current highest high with the previous High (lowest high) into array A,
same method for the lows just in Array B.
Since we subtract highs and lows it means velocity is taken into consideration with the plotting.
After adding a new value we remove the oldest value if the array is bigger than the Look back length. This is done for both lows and highs array.
Afterwards we sum up the lows and highs array (separately) and plot them separately, We can also smooth them a bit with Moving averages like HMA, JMA, KAMA and more.
== RULES ==
When High Lines crosses the Low Line we get a GREEN tunnel.
When Low Lines crosses the High line we get the RED tunnel.
The Greenish the stronger the up trend.
The Redish the stronger the downtrend.
== NOTES ==
Bars are not colored by default.
Better for higher time frames, 1 hour and above.
Enjoy and like if you like!
Follow up for new scripts: www.tradingview.com
TradeChartist Fib Master™TradeChartist Fib Master is a versatile Fibonacci Support and Resistance indicator that can be used to plot Automatic Levels and Fibonacci Levels based on a variety of ways from the settings, including Auto Fibs plot by connecting to an external indicator.
===================================================================================================================
What does ™TradeChartist Fib Master do?
Plots Automatic Levels without the need for user input
Plots 3 types of Fibonacci Levels
════ 1. Auto-Fibs (by connecting to an external indicator - Oscillatory or non-Oscillatory)
════ 2. Fibs based on Lookback (Lookback type - Candles or Days)
════ 3. Fibs based on Price Input
===================================================================================================================
Detailed description of ™TradeChartist Fib Master features
╔══ Automatic Levels Generator ══╗
Enabling Plot Automatic Levels plots support and resistance levels automatically without any input from the user other than preferred levels plot from the indicator settings namely,
Plot Local Levels for Lower TF - Plots all important Support/Resistance levels for mostly smaller time frames (can be used for up to 1hr in most cases). Recommended for Scalping/Swing Trading mostly dependent on volatility.
Plot Local Levels for Higher TF - Plots all important Support/Resistance levels inferred from mostly time frames - Short to Mid term outlook.
Plot Extended Levels for Higher TF - Plots all important Support/Resistance levels inferred from very higher time frames - Mid to Long term outlook.
Use Trading View Data Window to make effective use of the levels.
Tip: Add a duplicate Fib Master indicator to chart, use Automatic Levels Generator and increase transparency of Fib colours to 100. This helps view the levels on Data Window while having the Fib plots on chart.
Note: Uncheck Plot Automatic Levels to enable Fibonacci plots from Fibonacci Levels Generator
╔══ Fibonacci Levels Generator ══╗
════ 1. Auto-Fibs ════
Almost any indicator plot or Signal (Oscillatory or non-Oscillatory) can be connected to Fib Master to generate automatic fib levels. This is done by automatically detecting the price trend based on the connected indicator, its corresponding highest high and lowest low prices of each trend.
Also, Fib Master plots Bull (default - green) and Bear (default - red) Zones background including the signal candle (default - orange), where the trend changes based on the connected indicator Signal. This helps detect the effectiveness of the connected indicator Signal too, as too many unproductive signals from the connected indicator will create numerous Bull and Bear Zones (which also will render the Auto-Fibs ineffective).
To connect an external indicator Signal, just choose the corresponding Signal plot from the Plug Indicator Here dropdown from settings and choose whether the connected signal is Oscillatory (for Oscillators like RSI, CCI, MACD, Trend Identifier signals from more complex indicators like ™TradeChartist Bollinger Bands and Donchian Channels Pro etc.) or non-Oscillatory (for plots like Moving Averages, Super Trend, Ichimoku plots like Kijun Sen etc.)
If the connected Signal is Oscillatory, enter the filter levels. Default is 0 for both fields as most Oscillators have 0 as their mean reversal zone. For Oscillators like RSI, 60/40, 50/50, 55/45 etc. can be used.
Note: Please test the performance and effectiveness of Auto-Fibs of connected Signal first before using it for trades.
════ 2. Fibs based on Lookback ════
Lookback type - Candles
Determines the High and Low price of the user input number of Candles back (100 default) and plots Fibonacci Levels based on the calculated High and Low for the number of candles in the past from the current candle. The levels stay intact on any time frame as long as no new Highs or Lows are formed.
Lookback type - Days
Determines the High and Low price of the user input number of Days back (100 default) and plots Fibonacci Levels based on the calculated High and Low for the number of days in the past from the day of the current bar. The levels stay intact on any time frame as long as no new Highs or Lows are formed.
════ 3. Fibs based on Price Input ════
Plots Fibonacci Levels based on the user specified High and Low Price in the settings input fields. The levels stay intact on any time frame irrespective of new Highs or Lows being formed. Manual Price Input will enable the trader to keep the Levels intact and visually see the higher Fibonacci Retracement levels, when the price crosses beyond 100% retracement. On the other two lookback types, the Fibonacci levels are displayed only upto 100% retracement.
===================================================================================================================
Note: Show Auto-Fibs from current High/Low
When this option is chosen from indicator settings, the Auto-fib levels are drawn from the highest high of the trending price direction to lowest low of last trend for uptrend or vice-versa for downtrend.
===================================================================================================================
Extra Features
The Fibonacci levels can also be reversed by enabling Reverse Fibonacci Levels option from the settings.
0.886 and 1.113 Fib levels can be plotted on chart by enabling Show 0.886 and 1.113 Fibs from settings, as these are important levels for harmonic pattern traders.
Fib Line and Label Style including Color, transparency, size etc. can be changed from settings based on user preference.
===================================================================================================================
Example Charts
XAU-USD Gold Daily chart using Automatic Levels Generator with Zones identified when connected to external indicator
BTC-USDT Daily chart using Automatic Levels Generator
SPX 1hr chart using Automatic Levels Generator
ETH-USDT 1hr chart using AutoFibs generated by connecting Fib Master to RSI with 60/40 Filter levels
XAG-USD (Silver) 1hr chart using Fibonacci Levels based on lookback
===================================================================================================================
Best Practice: Test with different settings first using Paper Trades before trading with real money
===================================================================================================================
This is not a free to use indicator. Get in touch with me (PM me directly if you would like trial access to test the indicator)
Premium Scripts - Trial access and Information
Trial access offered on all Premium scripts.
PM me directly to request trial access to the scripts or for more information.
===================================================================================================================
Master Pivots (CPR)This helps in monitoring the support and resistance of the current day and plan for tomorrow's support and resistance. The formula for creating the indicator is as below.
Pivot Point (P) = (High + Low + Close)/3
Support 1 (S1) = (P x 2) - High
Support 2 (S2) = P - (High - Low)
Resistance 1 (R1) = (P x 2) - Low
Resistance 2 (R2) = P + (High - Low)
Floor Pivots are one of the classic pivot ranges and helps us in trading based on pivot values. This indicator that I have built is also capable of predicting tomorrow's support and resistance up to 3 levels i.e. R1, R2, R3 and S1, S2 and S3. This is the only indicator available in trading view which does the same. Thats the only reason of making a separate indicator.
In this indicator we have also added some symbols to identify the reversal patterns based on candle. This is best if used in 15 min candle. This plots engulfing pattern, shooting star, hammer and bullish and bearish reversals.
Please use it and provide feedback for changes. If i would change anything it would be available automatically anyway.
I have not added Fibonacci Pivots as its generally available in many sites out of box. How ever if you want to code you can use the below formula.
Pivot Point (P) = (High + Low + Close)/3
Support 1 (S1) = P - {.382 * (High - Low)}
Support 2 (S2) = P - {.618 * (High - Low)}
Support 3 (S3) = P - {1 * (High - Low)}
Resistance 1 (R1) = P + {.382 * (High - Low)}
Resistance 2 (R2) = P + {.618 * (High - Low)}
Resistance 3 (R3) = P + {1 * (High - Low)}
ORB Breakout & RetestORB Breakout & Breakdown Indicator - Complete Opening Range Strategy
Description :
The ORB (Opening Range Breakout) Breakout & Retest Indicator is a simple tool designed to identify opening range breakouts and breakdowns with retest confirmation. This indicator works on ANY timeframe while automatically analyzing 1-minute price action to detect precise entry signals.
What makes this indicator unique:
- ✅ Multi-Timeframe ORB Analysis - Simultaneously tracks 5-min, 15-min, and 30-min opening ranges
- ✅ Smart Retest Logic - Filters false breakouts by requiring price to retest and confirm the level
- ✅ Works on Any Chart Timeframe - View on 5-min, 15-min, 1-hour, or daily charts while getting 1-minute precision
- ✅ Both Long & Short Signals - Detects bullish breakouts AND bearish breakdowns
- ✅ Customizable Alerts - Get notified when confirmed setups occur
- ✅ Clean Visual Display - Compact table showing all ORB levels and signal status
How it Works:
Opening Range Detection :
- 5-Min ORB: Captures high/low from 9:30-9:35 AM
- 15-Min ORB: Captures high/low from 9:30-9:45 AM
- 30-Min ORB: Captures high/low from 9:30-10:00 AM
Breakout Confirmation (3-Step Process) :
1. Initial Break - Price closes above ORB High (or below ORB Low for shorts)
2. Retest - Price pulls back to retest the broken level
3. Confirmation - Price breaks through again, confirming the trend
This retest requirement dramatically reduces false signals and helps you enter trades with better risk/reward.
Perfect For :
- Day traders looking for opening range strategies
- Scalpers who need precise entry signals
- Swing traders identifying strong intraday momentum
- Anyone trading stocks, futures, forex, or crypto during market hours
---
⚙️ Settings & Customization :
Display Options :
- ☑️ Show ORB High (Default: OFF) - Display the high of each opening range in the table
- ☑️ Show ORB Low (Default: OFF) - Display the low of each opening range in the table
- ☑️ Show Breakout+Retest (Default: ON) - Show bullish breakout confirmation status
- ☑️ Show Breakdown+Retest (Default: ON) - Show bearish breakdown confirmation status
Alert Options :
- ☑️ Enable 5-Min Alerts (Default: OFF) - Get alerts for 5-minute ORB confirmations
- ☑️ Enable 15-Min Alerts (Default: OFF) - Get alerts for 15-minute ORB confirmations
- ☑️ Enable 30-Min Alerts (Default: OFF) - Get alerts for 30-minute ORB confirmations
Visual Indicators :
- Green triangles (▲) below bars = Breakout confirmed (bullish)
- Red triangles (▼) above bars = Breakdown confirmed (bearish)
- Triangle sizes: Tiny (5-min), Small (15-min), Normal (30-min)
---
Table Legend:
Timeframe Row: Shows the three ORB periods being tracked
ORB High Row: (Optional) The highest price during each opening range period
ORB Low Row: (Optional) The lowest price during each opening range period
Breakout+Retest Row:
- 🟢 YES = Bullish setup confirmed (price broke high, retested, and confirmed)
- 🔴 NO = No confirmed bullish setup yet
- ⚪ N/A = Opening range not yet established
Breakdown+Retest Row:
- 🟢 YES = Bearish setup confirmed (price broke low, retested, and confirmed)
- 🔴 NO = No confirmed bearish setup yet
- ⚪ N/A = Opening range not yet established
How to Use :
1. Add to Chart - Works best on stocks, futures, and indices with regular market hours (9:30 AM EST open)
2. Choose Your Timeframe - View on any timeframe; indicator automatically analyzes 1-minute data
3. Monitor the Table - Watch for "YES" signals in Breakout or Breakdown rows
4. Set Alerts - Enable alerts for your preferred ORB timeframes
5. Plan Your Trade - Use ORB levels as entry points and initial stop-loss levels
Tips :
- Combine multiple timeframe confirmations for higher probability setups
- Use ORB High/Low levels as natural support/resistance zones
- The 5-min ORB gives faster signals; 30-min ORB gives stronger trends
- Best results typically occur in the first 1-2 hours after market open
- Works on all markets but optimized for regular trading hours (9:30 AM EST)
Key Features Summary :
✓ Multi-timeframe opening range tracking (5, 15, 30-minute)
✓ Retest confirmation logic to filter false breakouts
✓ Works on any chart timeframe with 1-minute precision
✓ Bullish and bearish signal detection
✓ Customizable visual display with toggle options
✓ Individual alerts for each timeframe and direction
✓ Clean, professional table interface
✓ No repainting - signals are final once confirmed
✓ Suitable for all experience levels
Swing & Intraday Entry/Exit Setup V0.1Support & Resistance Levels with Moving Averages & Supertrend
Overview
This comprehensive indicator combines Multi Support/Resistance analysis , Moving Average, and Supertrend signals into one powerful tool. Designed for intraday/swing traders, it helps identify key price levels across Daily, Weekly, and Monthly while providing trend confirmation through MAs and Supertrend.
Product of: CandleCodex
License: Free for personal use | NOT FOR SALE
Version: 5.0 (Pine Script v6)
---
KEY FEATURES
Swing & Intraday Entry/Exit Setup V0.1 © CandleCodex™ (Daily/Weekly/Monthly)
- Previous Day High/Low (PDH/PDL) with customizable styling
- Previous Week High/Low (PWH/PWL) with independent settings
- Previous Month High/Low (PMH/PML) for swing traders
- Mid Levels - Adjustable percentage (default 50%) between high and low
- R1, R2, R3 - Projected resistance levels based on price range
- S1, S2, S3 - Projected support levels for breakout/breakdown targets
Moving Average
- 4 Fully Customizable MAs (20, 50, 100, 200 by default)
- Multiple MA Types: SMA, EMA, SMMA (RMA), WMA, VWMA
- Custom Source Selection: Close, Open, High, Low, HL2, HLC3, OHLC4
- Individual Colors & Toggle:** Show/hide each MA independently
Supertrend Indicator
- Buy/Sell Signals - Automatic labels on trend reversals
- Trend Highlighting - Background fill for bullish/bearish trends
- Customizable ATR Period & Multiplier (Default: 10, 3.0)
- Multiple Source Options: HL2, Close, Open, etc.
- Alert Conditions: Set alerts for buy/sell signals and trend changes
Information Tables
- 3 Separate Tables for Daily, Weekly, Monthly levels
- Adjustable Positions: 9 position options (top, middle, bottom - left, center, right)
- Custom Text Size: Tiny, Small, Normal, Large
- Live Price Display: Shows all levels with current prices
- Range Calculation: Displays trading range for each timeframe
Advanced Customization
- Line Styling: Width (1-5), Style (Solid/Dashed/Dotted), Color for EVERY level
- Label Options: Show/hide labels, show/hide prices, left/right positioning
- Historical Data: Display up to 50 previous periods
- Custom Session Timing: Set specific hours for daily levels (Indian market: 9:15-15:30)
- Copyright Watermark: Toggleable branding with position control
---
VISUAL CUSTOMIZATION
Every line (High, Low, Mid, R1-R3, S1-S3) has independent controls for:
- Color - Choose from full color palette with transparency
- Width - 1 to 5 pixels thickness
- Style - Solid, Dashed, or Dotted lines
- Show/Hide - Toggle individual levels on/off
Default Color Scheme:
- Daily: Green (High), Red (Low), Yellow (Mid)
- Weekly: Cyan (High), Magenta (Low), Light Green (Mid)
- Monthly: Orange (High), Purple (Low), Pink (Mid)
---
HOW TO USE
For Day Traders:
1. Enable Daily Levels - Focus on PDH/PDL as key intraday S/R zones
2. Watch for Breakouts - Price breaking PDH = bullish, breaking PDL = bearish
3. Use Mid Level - Acts as equilibrium; rejection zone for mean reversion
4. R/S Targets - Use R1, R2, R3 as profit targets above PDH; S1, S2, S3 below PDL
5. MA Confirmation - Enter trades in direction of MA trend
6. Supertrend Signals - Take BUY when price above Supertrend, SELL when below
For Swing Traders:
1. Enable Weekly/Monthly Levels - PWH/PWL and PMH/PML for bigger picture
2. Combine Timeframes - Strong rejection at PWL + Daily bullish Supertrend = long opportunity
3. Range Trading - Trade between PWH and PWL in consolidation
4. Breakout Confirmation - Use MA ribbon to confirm trend direction on HTF breakouts
Risk Management:
- Place Stop Loss just below PDL for longs, above PDH for shorts
- Targets: Use R1/S1 for scalping, R2/S2 for swing trades, R3/S3 for momentum trades
- Avoid Chop Zones: When price between MAs, wait for clear trend
---
SETTINGS GROUPS
1. ENABLE/DISABLE FEATURES - Master toggles for all components
2. DISPLAY SETTINGS - Labels, prices, positioning, historical periods
3. DAILY LEVELS STYLING - Complete customization for daily timeframe
4. WEEKLY LEVELS STYLING - Complete customization for weekly timeframe
5. MONTHLY LEVELS STYLING - Complete customization for monthly timeframe
6. MOVING AVERAGES - 4 independent MA configurations
7. SUPERTREND - ATR period, multiplier, signals, highlighting
8. TABLE SETTINGS - Position, size, colors for info tables
9. ADVANCED SETTINGS - Custom session timing, timezone
---
UNIQUE ADVANTAGES
All-in-One Solution - No need for multiple indicators cluttering your chart
Zero Lag - Calculates previous day/week/month data accurately without repainting
Full Control - Every visual element is customizable
Clean Interface - Organized settings with clear tooltips
Performance Optimized - Efficient code, no lag even with all features enabled
Indian Market Ready - Custom session timing (9:15 AM - 3:30 PM IST)
Free Forever - No subscriptions, no hidden costs
---
## 📖 TECHNICAL DETAILS
- Pine Script Version: v6
- Chart Type: Overlay indicator
- Calculation Method: Uses `request.security()` for accurate HTF data with `lookahead_on` to prevent repainting
- Data Structures: Uses Pine v5 matrices and custom types for efficient level management
- Performance: Max 500 lines, 500 labels for historical level display
---
IMPORTANT NOTES
- Works best on intraday timeframes (15min to 4hour)
- Requires TradingView Premium/Pro for reliable multi-timeframe data
- Previous day data appears after the first bar of new day
- Custom session timing only affects Daily levels (Weekly/Monthly use standard calendar)
- Tables display only on last bar to maintain performance
---
LEARNING RESOURCES
This indicator is designed to help traders understand:
- Key support and resistance concepts
- Multi-timeframe analysis techniques
- Trend following with moving averages
- Momentum trading with Supertrend
- Professional chart setup and risk management
---
COPYRIGHT & TERMS
© 2025 CandleCodex™ - All Rights Reserved
Developer: Siddharth Sharma
License: Mozilla Public License 2.0 with additional restrictions
Allowed:
- Personal trading use
- Educational purposes
- Sharing with attribution
Prohibited:
- Commercial sale or resale
- Rebranding as your own work
- Removing copyright notices
- Claiming authorship
This indicator is FREE and will always remain FREE.
If someone is selling this, they are violating copyright.
---
SUPPORT & FEEDBACK
For questions, suggestions, or bug reports:
- Comment below this publication
- Follow CandleCodex™ for updates
- Check release notes for latest improvements
If you find this indicator useful, please Like ❤️ and leave a comment!
---
Disclaimer: This indicator is for educational purposes only. Trading involves risk. Past performance does not guarantee future results. Always practice proper risk management and consult with a financial advisor before trading.
Market Structure [BOS/ChoCh Line & Bar-Chart]Overview
A comprehensive market structure indicator that identifies Break of Structure (BOS) and Change of Character (CHoCH) patterns - essential concepts in Smart Money trading methodology.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔹 KEY FEATURES
Two detection modes: Swing-based (High/Low) and Line Chart-based (Close)
Automatic HH/LL/LH/HL labeling with price and percentage change
BOS (Break of Structure) for trend continuation
CHoCH (Change of Character) for trend reversals
Market Structure Candle Coloring (MSC)
Optional Line Chart overlay
Fully customizable colors and display options
Built-in alerts for BOS and CHoCH events
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔹 DETECTION MODES
Swings Mode
Uses candlestick highs and lows to identify swing points. This is the traditional approach and works well for most trading styles.
Line Chart Mode
Uses closing prices only to identify peaks and troughs - similar to how a line chart displays price action. This mode filters out wicks and can provide cleaner structure identification.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔹 STRUCTURE LABELS
HH (Higher High) - Price made a new high above the previous high → Bullish
HL (Higher Low) - Price made a higher low → Bullish
LH (Lower High) - Price failed to make a new high → Bearish
LL (Lower Low) - Price made a new low below the previous low → Bearish
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔹 BOS vs CHoCH
BOS (Break of Structure)
A continuation signal. Occurs when price breaks a key level in the direction of the current trend.
Bullish BOS: Price closes above the last swing high during an uptrend
Bearish BOS: Price closes below the last swing low during a downtrend
CHoCH (Change of Character)
A reversal signal. Occurs when price breaks the key level that would invalidate the current trend.
Bullish CHoCH: During a downtrend, price closes above the high that produced the last Lower Low
Bearish CHoCH: During an uptrend, price closes below the low that produced the last Higher High
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔹 CANDLE COLORING (MSC)
When enabled, candles are colored based on the current market structure trend:
Bullish trend: Candles colored in the bullish color
Bearish trend: Candles colored in the bearish color
Trend-conforming candles appear solid, counter-trend candles appear faded
Note: For best results, go to Chart Settings → Symbol and set Body/Border/Wick colors to transparent.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔹 SETTINGS
Market Structure Settings
Detection Mode - Choose between Swings or Line Chart
Swing Length - Sensitivity of pivot detection (higher = less sensitive)
Show BOS / Show CHoCH - Toggle display of each pattern type
Line Chart Display
Show Line Chart - Display the close-based line overlay
Line Chart Color / Width - Customize appearance
Labels & Extra Data
Show HH/LL/LH/HL Labels - Toggle swing point labels
Show Price at Pivots - Display price values
Show % Change - Display percentage change between swings
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔹 ALERTS
The indicator includes alerts for:
Bullish/Bearish BOS
Bullish/Bearish CHoCH
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔹 USAGE TIPS
Use higher Swing Length values on higher timeframes to filter noise
CHoCH signals potential trend reversals - consider waiting for confirmation
BOS signals trend continuation - can be used for entries in the trend direction
Combine with other confluence factors like support/resistance, order blocks, or volume analysis
The Line Chart mode can help identify structure on volatile instruments where wicks create noise
For best display of bar coloring set Visual Order -> Bring to Front
AI-based Price action confluence dashboard# **AI-Based Price Action Confluence Dashboard - Publication Guide**
Here's a comprehensive introduction guide for your TradingView indicator publication:
***
## **📊 TITLE**
**AI-Based Price Action Confluence Dashboard**
***
## **🎯 SHORT DESCRIPTION** (For the summary field)
A sophisticated real-time confluence scoring system that analyzes multiple price action signals across 15-minute timeframes, providing traders with an AI-weighted scoring mechanism (0-6 scale) to identify high-probability trade setups through visual signal panels and intelligent path detection.
***
## **📝 FULL DESCRIPTION**
### **Overview**
The AI-Based Price Action Confluence Dashboard is an advanced technical indicator designed to eliminate guesswork in intraday trading by systematically scoring and displaying multiple price action signals in real-time. Unlike traditional single-indicator approaches, this dashboard employs a confluence methodology that combines multiple independent signals to provide stronger trade confirmations and reduce false signals.
This indicator is specifically optimized for **1-minute chart analysis** while monitoring **15-minute price structure**, making it ideal for day traders and scalpers who need precise entry timing with larger timeframe context.
***
### **🔑 Key Features**
**✅ Real-Time AI Confluence Scoring**
- Dynamic scoring system (0-6 points) for both bullish and bearish setups
- Visual meter display shows signal strength at a glance
- Color-coded backgrounds indicate confluence levels (strong, moderate, mixed)
**✅ Multi-Signal Analysis**
The dashboard tracks 6 distinct signal types:
1. **FTFC (First to Finish Close)** - Base & Bonus signals
2. **Long/Short Grab** - Liquidity sweep patterns (Path A)
3. **High/Low Hold** - Extended momentum confirmation (+2 bonus)
4. **2-Up/2-Down** - Clean breakout patterns (Path B)
5. **Breakaway** - First candle gap strategies
**✅ Intelligent Path Detection**
- Mutually exclusive path logic prevents signal conflicts
- Automatically identifies whether price is following a "sweep path" or "clean path"
- Unavailable paths are clearly marked with gray indicators
**✅ Visual Signal Panels**
- 🟢 Green Light = Bullish signal ACTIVE
- 🔴 Red Light = Bearish signal ACTIVE
- 🟡 Yellow Light = Signal BUILDING (conditions partially met)
- ⚪ White Light = Signal OFF
- ▪️ Gray Square = Path UNAVAILABLE (mutually exclusive)
**✅ Comprehensive Alert System**
- 10 different alert conditions covering all major signals
- Strong confluence alerts (5+ points)
- Individual signal completion alerts
- Customizable alert messages
***
### **📐 How It Works**
#### **The Confluence Methodology**
This indicator implements a sophisticated confluence trading approach where multiple independent price action signals are combined to identify high-probability setups. Each signal type contributes points to either the bullish or bearish score, with a maximum of 6 points per direction.
**Scoring Breakdown:**
**BULLISH SIGNALS:**
- FTFC Base (15m close > previous 15m close) = +1
- FTFC Bonus (price clears 15th candle high) = +1
- **PATH A (Sweep):** Long Grab = +1, High Hold Bonus = +2
- **PATH B (Clean):** 2-Up = +1, 2-Up Bonus = +1
- Breakaway (gap above first candle) = +1
**BEARISH SIGNALS:**
- FTFC Base (15m close < previous 15m close) = +1
- FTFC Bonus (price clears 15th candle low) = +1
- **PATH A (Sweep):** Short Grab = +1, Low Hold Bonus = +2
- **PATH B (Clean):** 2-Down = +1, 2-Down Bonus = +1
- Breakaway (gap below first candle) = +1
#### **Path Detection Logic**
The indicator automatically determines which path the market is following:
**PATH A: SWEEP PATH**
- Activated when previous 15m low (bull) or high (bear) is breached
- Indicates liquidity grab before reversal
- Includes powerful +2 bonus for "Hold" confirmations
- Mutually exclusive with Path B
**PATH B: CLEAN PATH**
- Activated when previous 15m low (bull) or high (bear) holds
- Indicates strong directional momentum without sweep
- Cleaner price action but smaller point potential
- Mutually exclusive with Path A
This mutual exclusivity prevents double-counting and ensures signal accuracy.
***
### **🎨 How to Use**
#### **Installation**
1. Add indicator to your 1-minute chart
2. The dashboard appears as a table overlay (default: top right)
3. No additional indicators required - this is a complete system
#### **Reading the Dashboard**
**Top Section - Confluence Meter:**
- Shows current bull/bear scores with visual dot meters
- Background color changes based on confluence strength:
- **Bright Green/Red** = 5+ points (strong directional bias)
- **Medium Green/Red** = 3+ points (moderate bias)
- **Orange** = 3+ points both sides (conflicting signals)
- **Gray** = Low confluence (choppy conditions)
**Signal Panels Section:**
- Each row shows a signal type with bull/bear lights side-by-side
- Active signals (🟢🔴) contribute to the total score
- Building signals (🟡) indicate potential setups forming
- Unavailable paths (▪️) show which exclusive path is blocked
#### **Trading Strategy**
**High-Probability Long Entries:**
- Bull score ≥ 5 AND bear score ≤ 1
- Multiple green lights active in signal panels
- PATH A or PATH B showing full completion
- Consider entry on pullback to key 15m level
**High-Probability Short Entries:**
- Bear score ≥ 5 AND bull score ≤ 1
- Multiple red lights active in signal panels
- PATH A or PATH B showing full completion
- Consider entry on rally to key 15m level
**Avoid Trading When:**
- Both scores are 3+ (conflicting signals)
- No path is showing active/building status
- Score is below 3 on both sides (low confluence)
#### **Risk Management**
- Use 15m swing high/low for stop placement
- Target opposing 15m level or previous session extremes
- Scale out at partial targets when confluence decreases
- Best results when combined with proper position sizing
***
### **⚙️ Customization**
**Dashboard Settings:**
- **Table Location:** Top Left, Top Right, Bottom Left, Bottom Right
- **Text Size:** Tiny, Small, Normal, Large
**Color Scheme:**
- **Bullish Color:** Customize green for bull signals (default: #00cc66)
- **Bearish Color:** Customize red for bear signals (default: #ff4444)
- **Building Color:** Customize yellow for forming signals (default: #ffaa00)
- **Inactive Color:** Customize gray for off signals (default: #555555)
- **Unavailable Color:** Customize dark gray for blocked paths (default: #333333)
All colors can be adjusted to match your chart theme or visual preferences.
***
### **🎯 Best Practices**
1. **Use on 1-minute charts only** - The indicator is calibrated for this timeframe
2. **Trade during liquid sessions** - Best results during NY/London overlap
3. **Wait for 3+ confluence** - Minimum threshold for trade consideration
4. **Watch path transitions** - Signal strength changes when paths flip
5. **Use alerts strategically** - Set alerts for 5+ confluence to catch strong setups
6. **Combine with volume** - High volume confirms signal validity
7. **Respect 15m structure** - Don't fight the larger timeframe bias
***
### **⚠️ Important Notes**
- This indicator is designed for **intraday trading only**
- Requires active monitoring during trading sessions
- Works best on liquid instruments (major forex pairs, indices, large-cap stocks)
- Not suitable for swing trading or position trading
- Past performance does not guarantee future results
- Always use proper risk management and position sizing
***
### **🏷️ Category**
**Oscillators** or **Volatility** (choose based on TradingView categories)
***
### **🏷️ Suggested Tags**
- confluence
- price action
- day trading
- scalping
- intraday
- signals
- dashboard
- multi-timeframe
- 1-minute
- 15-minute
***
### **📜 Disclaimer**
This indicator is a tool for technical analysis and should not be used as the sole basis for trading decisions. All trading involves risk, and you should never risk more than you can afford to lose. The developer assumes no responsibility for trading losses incurred through the use of this indicator. Always practice proper risk management and consider your own risk tolerance before trading.
Master Moving Averages PlusThe Master Moving Averages indicator is a full-session, moving-average–driven market structure engine that combines 1) Heiken Ashi Candlesticks, 2)Exponential Moving Averages, 3)Session Backgrounds, 4)VWAP, 5)EMA Streams, 6)EMA Crossing Labels, 7)All-Inside EMA Labels, 8)Price Control Logic (Bundles, Momentum, Reversals), and 9)Heavy EMA anchors into a single chart framework. The indicator provides access to toggle these features on and off in the settings gear icon to the right of the indicator name in the screen panel.
1)Because this chart uses Heikin Ashi candlesticks, the behavior is slightly different from standard candles. Heiken Ashi candles are smoothed, meaning each candle is influenced by the previous one. This reduces noise and makes trends easier to see. In practice, long sequences of same-color candles with small or no opposite wicks indicate strong, sustained movement, while smaller bodies or the appearance of opposite wicks signal slowing or transition. Opposite wicks are wicks that appear against the current direction of the move. In an upward move, an opposite wick is a wick on top of the candle. It shows that upward progress is no longer clean and momentum is starting to slow. In a downward move, an opposite wick is a wick on the bottom of the candle. It shows that downward progress is slowing.
With Heiken Ashi candles, opposite wicks are especially important because they do not appear easily. When one shows up, it often marks loss of trend quality, a pause, or the beginning of a transition rather than a random fluctuation. Ashi wicks still matter, but they emphasize trend quality rather than single-bar reactions, making them especially useful for staying in moves longer and avoiding premature exits caused by random price spikes. Candlesticks are a visual record of price behavior over one bar, showing where price opened, traded, and closed. The body shows the meaningful part of the move—the distance between open and close—and tells whether price made progress during that bar. Large bodies indicate clean movement and follow-through, while small bodies indicate slowing or uncertainty. The wicks show where price traveled but did not stay. Wicks in the direction of the move are normal and usually appear during healthy trends, while wicks against the move signal slowing, hesitation, or loss of momentum. A candle with a large body and small wicks reflects strong continuation, whereas long wicks with a small body suggest pause, balance, or transition. Candlesticks are not signals by themselves; they are read bar-to-bar to judge whether a move is continuing, slowing, or stalling, helping decide whether to stay in a trade, manage risk, or wait for clearer structure.
For example, suppose price is moving higher and already in a long trade. Several candles print with solid bodies and small lower wicks, showing steady upward progress. This is healthy continuation, so staying in the trade makes sense. Then a candle prints with a small body and a long upper wick. Price pushed higher during the bar but could not hold those levels by the close. That candle does not mean reverse now, but it does mean momentum is slowing. The practical response is to stay in but be alert—do not expect the same speed of continuation. If the next candle prints another upper wick or a small body, the move is likely stalling. If instead the next candle closes strong with a large body, the trend has resumed.
2)An Exponential Moving Average (EMA) is a moving average that tracks price but gives more weight to the most recent bars. In plain terms: it reacts faster to what price is doing right now than a simple average (SMA) does. Here’s what that means in practice: Every EMA is an average of price over a set number of bars The "exponential" part means the newest candles matter more than older ones. Because of that weighting, an EMA turns sooner, crosses sooner, and shows shifts in directional control sooner. On the chart specifically: Short EMAs (like 4, 9, 16) respond quickly → they show immediate pressure. Mid EMAs (24, 36, 48) show follow-through or failure. Long EMAs (72 and up) change slowly → they define structure and context, often showing the explosive nature of building pressure signaling entries.
3)Session Background gives context to which part of the trading day the current bar or candlestick belongs to. The script separates the day into: Pre-Session, After-Hours and Regular Trading Hours (RTH). Price acts differently depending on the session. Session context is shown on the chart by 1️⃣ Background shading. The lighter background → Pre-session or Pre-Market (PM) and After-hours (AH). The darker background → RTH (Regular Trading Hours). One glance tells you where you are in the day. 2️⃣ Different sessions build different levels of highs and lows: Pre-Session High and Low is built only during After Hours (AH) and pre-market hours (PM). Session High and Low is built only during RTH. Previous Day Session High and Low is carried forward into today. These provide perspective during the session. Sometimes price respects pre-session highs and lows and even previous day session highs and lows— especially immediately following opening in the initial move and retracement. Session context just means knowing whether a particular candlestick bar was or is pre-market, regular hours, or after-hours — because the rules change. It's just a check on where you are.
4)VWAP stands for Volume Weighted Average Price. It is the session’s true average price — weighted by where the volume actually traded. Not yesterday, not overnight, only during Regular Trading Hours. Every share traded during Reg Trading Hours (RTH) pulls VWAP toward it. The VWAP on this chart resets at the RTH open. VWAP uses the average price of each bar, then lets the bars with real volume count more. The calculation is High+ Low+ Close/3. High, Low, Close are added together and averaged. So instead of picking just the close or just the high, it uses the middle of where price actually traded during that bar. The equation looks like this: hlc3 × volume. It only updates during the day session. Overnight and pre-market do not contaminate it. So VWAP belongs to today’s fight only. On the chart it looks like a thick orange line outlined in white. There is a right-side label that reads: VWAP | Bullish / Bearish / Neutral.
In practice VWAP is a 1️⃣ Fair price reference that shows where the bulk of business has been done because if Price is above it → trading is happening at higher-than-average prices. If Price is below it → trading is happening at lower-than-average prices. Fair price is the price level where the most of the trading has actually occurred during the session. It's not a prediction.
It's not a target. It's not a value judgment. It's just where buyers and sellers have been most active. 2️⃣ VWAP slope is smoothed and classified: Rising → Bullish, Falling → Bearish, Flat → Neutral. This doesn’t fire signals — it confirms pressure. VWAP shows where today’s real money has traded and whether that price is drifting up, down, or going nowhere.
The right-side VWAP label summarizes everything in one place: trend state, price distance from VWAP (percentage), and slope strength with direction arrows, allowing quick assessment without clutter. Practically, VWAP is used as a fair-value anchor and intraday control reference—price holding above a rising VWAP supports continuation, price below a falling VWAP supports downside pressure, and flat VWAP conditions warn of rotation or chop rather than trend.
5)EMA (Exponential Moving Average) Streams in this script are a visual state. They are the shaded bands between specific EMA pairs that show: direction, pressure, and alignment. The stream shows the relationship of the pairs. In the script the streams are: 4–9, 9–16, 16–24, 24–36 EMA'S. Each one can be turned on or off. On the chart they look like two EMAs with soft shaded fill between them and color changes based on up or down movement. The stream mechanically is telling 1️⃣ Direction. If the pair is above price they push down, if below price they push up. Each stream is made of two EMAs: One reacts faster, one reacts slower, but they’re doing the same thing. For Example a 4 EMA takes the last 4 candlesticks and averages them; likewise a 9 EMA takes the last 9 candlesticks and averages them yielding two lines, one that moves quicker and one that moves slower. When a slower EMA crosses above a faster EMA it drives price down. When a slower EMA crosses below a faster EMA it drives price up. 2️⃣ Pressure: EMA streams show pressure leaning on price. Wide stream → pressure is expanding. Tight stream → pressure is compressing. Compression matters because it precedes movement.
6)EMA Crossing Labels (Pivots, EMA9, EMA16, EMA24) mark an actual EMA crossover event. The Crossing Labels are white labels attached below or above the candlestick showing price direction. They print only when one EMA physically crosses the price control line. The price control line is a default on the chart and is constant. The priceControlLine = (open + close) / 2. The crossing is confirmed on bar close. If, for example, EMA-16 rolls over the priceControlLine and crosses downward, the label fires indicating that price has stalled or shifted, buyers have lost control, sellers are in control, and the market is trending short. If EMA-24 and EMA-36 follow, pressure is stacking, multiple timeframes confirm, pullbacks become weaker, and price is more likely to continue in the same direction.
7)An Inside EMA label can represent two very different conditions, and context matters. When shorter ranges (such as 9–36, 9-48, or 9–72) compress inside a candle during sideways or low-energy price action, it often reflects chop or rotation, and no immediate expansion is required. In contrast, when deeper ranges (9–106, 9–139, 9–192) collapse inside a single candle—especially near the open or during active sessions—it usually occurs because price is moving faster than the EMAs can respond, signaling elevated energy and the potential for rapid continuation or transition. Practically, Inside labels are conditional triggers: shallow compression can persist, while deep compression demands attention because resolution, when it comes, tends to be decisive.
Example 1: Fast open, real urgency— The market opens and within the first few candles a 9–139 Inside label prints. Price has already moved aggressively, and all EMAs are trapped inside one candle body. In real terms, this means structure has been run over. The practical response is immediate attention: do not hesitate, do not wait for EMAs to fan out. Expect either a fast continuation (often followed quickly by a Bundle or Momentum label) or a sharp stall if momentum fails. Speed matters because the next decision point arrives quickly.
Example 2: Mid-day chop, no urgency—Later in the session, price is rotating sideways and a 9–72 Inside label appears. Price has not traveled far, candles overlap, and no expansion follows. In this case, the label simply confirms compression without pressure. The correct action is no action—continue waiting. No urgency, no expectation of immediate resolution.
Example 3: Transition point—After a trend, a 9–106 Inside prints as bodies shrink. Momentum is already slowing. Here the label marks a transition zone. The practical move is to stop expecting continuation and watch closely: a Momentum or Bundle label confirms continuation, while a Reversal label confirms control change.
8)Price Control Logic is determined by three things working together and the Bundle, Momentum, and Reversal labels are expressions of that control:
1️⃣ Price vs the Price Control Line: The Price Control Line is the midpoint of the candle body. When Price is above it → buyers are controlling closes. When Price is below it → sellers are controlling closes.
2️⃣ EMA Position Relative to Control: When EMAs cross the Price Control Line: EMA crosses up through control → momentum is shifting to buyers. EMA crosses down through control → momentum is shifting to sellers. That’s why labels fire only on those crosses. It marks real control shifts, not wicks.
3️⃣ EMA Stack & Compression: Tight EMA bundles inside the candle body means no one has control yet. EMAs expanding upward means buyers are gaining control. EMAs expanding downward means sellers are gaining control. This is pressure building vs pressure releasing.
Bundle, Momentum, and Reversal labels are confirmation markers, not prediction signals. A Bundle label prints when a compressed EMA cluster (16/24/36/48) resolves back into price with real body momentum and EMA-16 already trending, signaling stored pressure releasing. A Momentum label prints only on sharp expansion, where the candle body is significantly larger than the prior bar, confirming acceleration in the existing direction. A Reversal label marks a true short-term control shift, where EMA-16 flips slope with a momentum candle, signaling buyers and sellers have swapped control—not a wick reaction. Because all labels require body dominance and EMA agreement, they often appear after movement begins, making them reliable tools for confirming pressure, continuation, or control change rather than early entry timing. Visually, each label reinforces direction at a glance. Bullish labels are green, placed below the candle, and use an upward-pointing shape to indicate rising pressure. Bearish labels are red, placed above the candle, and use a downward-pointing shape to indicate falling pressure. Labels sit just off the candle body so price remains clear, and their color, placement, and shape always align with the direction of control.
9) Heavy EMA anchors are the big EMAs. They act like fixed reference points while everything else whips around them. The heavy EMA anchors in this chart are EMA 768,1024, 1250, 1536, 2048, 2700, 3300, 4096. They are displayed only as right-side tags at their current price levels, not as plotted lines. These tags sit on the far right edge of the chart, aligned with the price scale, and are color-matched to their respective EMAs. Their purpose is to show where slow, heavy pressure exists without cluttering price action with lines. When these EMA tags are bundled together and price is trading inside that cluster, the market is compressed and choppy. When the tags separate and price holds above or below the group, structure is returning and directional movement becomes easier. Keeping the tags visible provides instant awareness of whether price is trapped or free, helping filter noise and align the rest of the indicator with the larger structure at all times.
Trend Break Targets [MarkitTick]Trend Break Targets
Trend Break Targets is a technical analysis tool designed to assist traders in identifying trendline breakouts and projecting potential price targets based on market geometry. Unlike fully automated indicators that guess trendlines, this tool provides you with precise control by allowing you to manually Pivot Point the trendline to specific points in time, while automating the complex math of target projection and structure mapping.
Theoretical Basis & Concepts
This indicator is grounded in classic technical analysis principles found in foundational trading literature. It automates the following methodology:
Drawing a trend line between two key points to represent dynamic support or resistance.
Identifying a breakout when the price closes above or below this line, potentially signaling a change in trend.
Calculating a price target by measuring the vertical distance between the breakout line and the last high/low (pivot), then projecting that same distance in the direction of the breakout.
This concept is based on methods and "Measured Move" theories explained in classic books such as "Technical Analysis of Stock Trends" by Edwards & Magee, "Technical Analysis of the Financial Markets" by John Murphy, and in Thomas Bulkowski's Price Pattern Studies.
How It Works
Pivot Pointed Trendline Construction The script draws a trendline between two user-defined points in time (Start Date and End Date). It calculates the slope between these points and extends the line infinitely to the right, allowing you to define the exact structure (e.g., a resistance trendline on a wedge).
Breakout Detection The script monitors the "Price Source" (High, Low, or Close) relative to the extended trendline.
A Bullish Breakout (BC) occurs when the Close crosses above a bearish trendline.
A Bearish Breakout (BC) occurs when the Close crosses below a bullish trendline.
Dynamic Target Projection (The Math) Upon a confirmed breakout, the script automatically calculates three distinct targets by identifying the most significant "Swing Point" (Pivot) prior to the breakout.
Distance (D): The vertical distance between the Trendline and the Pivot Price at the specific bar where the pivot occurred.
Target 1 (T1): The Breakout Price +/- (Distance × 1.0). This represents a classic 1:1 measured move.
Target 2 (T2): The Breakout Price +/- (Distance × 1.618). Based on the Golden Ratio extension.
Target 3 (T3): The Breakout Price +/- (Distance × 2.618).
Market Structure (CHOCH) The script includes an optional Change of Character (CHOCH) module. This runs independently of the trendline logic, identifying local Swing Highs and Swing Lows based on the "Swing Detection Length." It plots dashed lines and labels to visualize immediate shifts in market structure.
How to Use This Tool
This is an interactive tool that requires user input to define the setup.
Identify a Setup: Locate a clear trend, wedge, or flag pattern on your chart.
Set Pivot Points: Go to the Indicator Settings. Input the exact Start Date and End Date corresponding to the two main touches of your trendline.
Monitor for Breakout: The script will extend the line. Wait for a "BC" label to appear.
Trade Management: Once "BC" prints, the T1, T2, and T3 lines will instantly render. These can be used as potential take-profit zones or areas to tighten stop-losses.
Settings & Configuration
Indicator Settings
Start/End Date: The timestamp Pivot Points for your trendline.
Price Source: Determines what price (High or Low) Pivot Points the line and triggers the breakout.
Pivot Left/Right: Adjusts the sensitivity for finding the "Pivot Before Break" used for target calculations.
Extend Target Line: How far forward the target lines are drawn.
Visual Style
Colors: Fully customizable colors for the Trendline, Breakout Labels, and each Target level (T1, T2, T3).
Gold Bullish Reversal
This analysis dissects a confirmed bullish reversal on Gold using a custom Trend Break system. The setup identifies a transition from a bearish corrective phase to bullish momentum, validated by a structural break and a geometric target projection.
Trend Identification (The Pivot Points) The descending white trendline serves as the primary dynamic resistance, defining the bearish correction.
Pivot Points: The line is drawn connecting two significant swing highs, marked by Label 1 and Label 2.
Logic: These points represent the "lower highs" characteristic of the previous downtrend. As long as price remained below this trajectory, the bearish bias was intact.
The Trigger: Breakout & Confirmation The transition occurs at the candle marked BC (Breakout Candle).
Breakout Criteria: The indicator logic dictates that a signal is only valid when the bar closes above the trendline. This filters out intraday wicks and ensures genuine buyer commitment.
CHOCH Confluence: Immediately following the breakout, a CHOCH (Change of Character) label appears. This signals a shift in market structure, indicating that the internal lower-high/lower-low sequence has been violated, adding probability to the reversal.
Target Projection: The Measured Move The vertical green lines (T1, T2) represent profit objectives derived from the depth of the prior move. The logic calculates the distance between the breakout line and the lowest pivot prior to the break.
T1 (Standard Target): This is a 1:1 projection of the pre-breakout volatility. We see price action initially stalling near this level, confirming it as a zone of interest.
T2 (Golden Ratio Extension): The second target is calculated as the initial distance multiplied by 1.618 (Fibonacci Golden Ratio). The chart shows the price rallying aggressively through T1 to tap the T2 zone, often considered an exhaustion or major take-profit level in harmonic extensions.
Conclusion Gold has successfully invalidated the 4-hour bearish trendline. The confluence of a confirmed close above resistance (BC) and a structural shift (CHOCH) provided a high-probability long setup. The price has now fulfilled the T2 (1.618) extension, suggesting traders should watch for consolidation or a reaction at this key Fibonacci resistance level.
Bearish Trendline Breakdown
The image displays a Bearish Trendline Breakdown on the Gold (XAUUSD) 4-hour chart. The indicator is actually functioning in "Low" mode here (connecting swing lows to form support), which triggers the bearish logic found in the code. Here is the step-by-step breakdown:
The Setup: Pivot Points & Trendline
Visual: The Blue Labels "1" and "2" connected by a white diagonal line.
Code Logic: These are the user-defined start and end points.
Pivot Point 1 (startDate): The starting pivot of the trendline.
Pivot Point 2 (endDate): The ending pivot.
Trendline: The code draws a line between these two points and extends it to the right (extend.right). In this specific image, the line acts as a Support Trendline.
The Trigger: Break Candle (BC)
Visual: The Red Label "BC" appearing just below the white trendline.
Code Logic: This is the execution signal. The code detects a "Down Break" (dnBreak) because the Price Source was likely set to "Low" and the candle's Close was lower than the Trendline Price at that specific bar (close < currLinePrice). This confirms the support level has been breached.
The Projection: Targets (T1 & T2)
Visual: The Green Labels "T1" and "T2" with dotted horizontal lines projected downward.
Code Logic: These are profit targets based on a "Measured Move."
Pivot Calculation: The script looks back for a recent "Pivot High" (the peak before the crash) to calculate the volatility/distance (dist) between that peak and the trendline.
T1 (Conservative): The price is projected downward by 1x that distance (currLinePrice - dist).
T2 (Extended): The price is projected downward by 1.618x that distance (Golden Ratio extension).
Market Context: CHOCH
Visual: The small Red/Orange "CHOCH" labels appearing above the price action.
Code Logic: This is a secondary confirmation system running independently of the trendline. It detects a Change of Character (structural shift). The red labels indicate a "Bearish CHOCH," meaning the price broke below a significant prior swing low (last_swing_low). This supports the bearish bias of the trendline break.
Disclaimer This tool is for educational and technical analysis purposes only. Breakouts can fail (fake-outs), and past geometric patterns do not guarantee future price action. Always manage risk and use this tool in conjunction with other forms of analysis.
Time Liquidity a Zulu Kilo indicatorTime Liquidity (Daily/Weekly/Monthly/Quarterly/Yearly) — New York Time (ET)
Time Liquidity is a calendar-based “liquidity map” that tracks highs and lows for the current Day / Week / Month / Quarter / Year (using America/New_York time). When each period completes, its high/low becomes a persistent liquidity level that extends forward until price takes it—helping you quickly see where prior time-based liquidity is still “untouched.”
This is not a trading strategy and does not place trades. It is a context + levels tool designed to help you plan, frame targets, and monitor which higher-timeframe highs/lows remain in play.
What it plots:
1) Current period range boxes (optional)
-A live “bounding box” for the active D / W / M / Q / Y period, updating as new highs/lows form. This gives you better perspective
-Per-timeframe visibility controls and opacity controls.
2) Historical liquidity lines (optional)
-When a period rolls over, the completed period’s High (▲) and Low (▼) are projected forward as liquidity lines.
-Each line remains active until price breaches it (high taken when price trades above; low taken when price trades below).
-Tags identify the source timeframe (D/W/M/Q/Y) and side (high/low).
3) NeoHUD (optional)
-A compact panel showing the nearest next “untaken” liquidity above and below current price for each timeframe.
-Useful for quickly answering: “What’s the closest higher-timeframe high above me?” and “What’s the closest low below me?”
Time / session logic (important)
-All calendar boundaries are computed in New York time (America/New_York).
-Week start is Monday 00:00 ET.
-Sunday handling: you can choose whether Sunday merges into Monday (default behavior - This mostly for futures/FX markets) or is treated as a separate day (useful for Bitcoin, etc..).
(Note: This tool is calendar-based, not exchange-session-based. If your market has non-standard sessions/settlement conventions, interpret levels accordingly.)
How to use it (practical workflow)
-Turn on the timeframes you care about (D/W/M/Q/Y).
-Use current boxes to see the active period’s developing range.
-Use historical lines as a “to-do list” of still-untouched highs/lows.
-Watch the NeoHUD to stay oriented on the closest remaining liquidity above/below price (per timeframe).
For a cleaner chart or faster performance, reduce:
-Max Historical Liquidity Lines Kept / TF
-The number of enabled timeframes
-Glow/frame effects and/or boxes
Limitations / transparency
This indicator does not predict direction or guarantee outcomes; it only visualizes time-based highs/lows and whether they have been taken.
On very low timeframes or long histories, TradingView object limits may apply; use the settings above to manage chart load.
No alerts are included in this script (levels are intended for visual decision support).
Risk notice
Trading involves risk. This tool is provided for educational and informational purposes only and should not be used as the sole basis for trading decisions.
(SM3) Volume Profile Tool-kitCore Concept
This indicator is a right-aligned fixed-range Volume Profile + SMT-style tools:
Volume Profile
Shows volume distribution over a fixed lookback window
Bars are colored by volume delta:
Teal = buyers (bullish volume ≥ bearish volume)
Fuchsia = sellers (bearish volume > bullish volume)
POC: highest volume price level
Value Area: price region containing X% of total volume (default 68%)
Liquidity Sweeps
Marks Buy-side Liquidity Sweeps (BSL) and Sell-side Liquidity Sweeps (SSL) based on pivot highs/lows
PDH/PDL Liquidity Boxes
Previous Day High (PDH) zone = red box
Previous Day Low (PDL) zone = green box
Based on the prior full calendar day’s high/low
Boxes extend across the current day only, adjusting bar by barCore Concept
This indicator is a right-aligned fixed-range Volume Profile + SMT-style tools:
Volume Profile
Shows volume distribution over a fixed lookback window
Bars are colored by volume delta:
Teal = buyers (bullish volume ≥ bearish volume)
Fuchsia = sellers (bearish volume > bullish volume)
POC: highest volume price level
Value Area: price region containing X% of total volume (default 68%)
Liquidity Sweeps
Marks Buy-side Liquidity Sweeps (BSL) and Sell-side Liquidity Sweeps (SSL) based on pivot highs/lows
PDH/PDL Liquidity Boxes
Previous Day High (PDH) zone = red box
Previous Day Low (PDL) zone = green box
Based on the prior full calendar day’s high/low
Boxes extend across the current day only, adjusting bar by barCore Concept
This indicator is a right-aligned fixed-range Volume Profile + SMT-style tools:
Volume Profile
Shows volume distribution over a fixed lookback window
Bars are colored by volume delta:
Teal = buyers (bullish volume ≥ bearish volume)
Fuchsia = sellers (bearish volume > bullish volume)
POC: highest volume price level
Value Area: price region containing X% of total volume (default 68%)
Liquidity Sweeps
Marks Buy-side Liquidity Sweeps (BSL) and Sell-side Liquidity Sweeps (SSL) based on pivot highs/lows
PDH/PDL Liquidity Boxes
Previous Day High (PDH) zone = red box
Previous Day Low (PDL) zone = green box
Based on the prior full calendar day’s high/low
Boxes extend across the current day only, adjusting bar by bar
ICT Key Levels Suite |MC|Parts of this script were created by TheTickMagnet, Bankulov, and others. Many thanks to them; credit is due to all of you. I simply compiled them into a suite...
🌟 Overview 🌟
This tool highlights key price levels, such as highs, lows, and session opens, that can influence market movements. Based on ICT concepts, these levels help traders spot potential areas for market reversals or trend continuations.
🌟 Key Levels 🌟
🔹 Week Open (at Sunday 6:00pm EST for Futures)
Marks the start of the trading week. This level helps track price direction and is useful for framing the weekly candle formation using ICT’s Power of 3.
🔹 (Trading) Day Open: 6:00pm EST for Futures or 5:00pm EST for Forex.
🔹 Midnight Open (True Day Open) (00:00 EST)
The Midnight Open (MNOP) marks the start of the new trading day. Price often retraces to this level for liquidity grabs, setting up larger moves in the daily trend. It's also key for framing the Daily Power of 3 and spotting possible market manipulation.
🔹 Previous Day High/Low (customizable)
These levels show where liquidity remains, often serving as targets for price revisits, ideal for reversals or continuation trades.
🔹 Daily divider lines with Weekday label (customizable)
🌟 Overview 🌟
The ICT Sessions & Ranges Indicator helps traders identify key intraday price levels by marking custom session highs/lows and opening ranges.
It helps traders spot potential liquidity grabs, reversals, and breakout zones by tracking price behavior around these key areas
🌟 Session Highs & Lows – Liquidity Zones 🌟
Session highs and lows often attract price due to stop orders resting above or below them. These levels are frequently targeted during high-volatility moves.
🔹 Asia session
- Usually ranges in low volatility.
- Highs/lows often get swept during early London.
- Price may raid these levels, then reverse.
🔹 London session
- First major volatility of the day.
- Highs/lows often tested or swept in New York.
- Commonly forms the day's true high or low.
🔹 NY AM, Lunch & PM Session
🌟 Customizable Settings 🌟
The indicator includes 5 configurable ranges, each with:
Start & End Time – Set any custom time window.
Display Type – Choose Box (highlight range) or Lines (mark high/low) or both (Box and extended Lines).
Color Settings – Set custom colors for boxes and lines.
🌟 Default Settings (according to ICT) 🌟
Range 1: 6:00pm - 2:00am (Asia Session)
Range 2: 02:00 - 07:00 (London Session)
Range 3: 07:00 - 12:00 (NY AM Session)
Range 4: 12:00 - 1:30pm (NY Lunch Session)
Range 5: 1:30pm - 5:00pm (NY PM Session)
Happy trading!
Fair Value Gap Signals [Kodexius]Fair Value Gap Signals is an advanced market structure tool that automatically detects and tracks Fair Value Gaps (FVGs), evaluates the quality of each gap, and highlights high value reaction zones with visual metrics and signal markers.
The script is designed for traders who focus on liquidity concepts, order flow and mean reversion. It goes beyond basic FVG plotting by continuously monitoring how price interacts with each gap and by quantifying three key aspects of each zone:
-Entry velocity inside the gap
-Volume absorption during tests
-Structural integrity and depth of penetration
The result is a dynamic, information rich visualization of which gaps are being respected, which are being absorbed, and where potential reversals or continuations are most likely to occur.
All visual elements are configurable, including the maximum number of visible gaps per direction, mitigation method (close or wick) and an ATR based filter to ignore insignificant gaps in low volatility environments.
🔹 Features
🔸 Automated Fair Value Gap Detection
The script detects both bullish and bearish FVGs based on classic three candle logic:
Bullish FVG: current low is strictly above the high from two bars ago
Bearish FVG: current high is strictly below the low from two bars ago
🔸 ATR Based Gap Filter
To avoid clutter and low quality signals, the script can ignore very small gaps using an ATR based filter.
🔸Per Gap State Machine and Lifecycle
Each gap is tracked with an internal status:
Fresh: gap has just formed and has not been tested
Testing: price is currently trading inside the gap
Tested: gap was tested and left, waiting for a potential new test
Rejected: price entered the gap and then rejected away from it
Filled: gap is considered fully mitigated and no longer active
This state machine allows the script to distinguish between simple touches, multiple tests and meaningful reversals, and to trigger different alerts accordingly.
🔸 Visual Ranking of Gaps by Metrics
For each active gap, three additional horizontal rank bars are drawn on top of the gap area:
Rank 1 (Vel): maximum entry velocity inside the gap
Rank 2 (Vol): relative test volume compared to average volume
Rank 3 (Dpt): remaining safety of the gap based on maximum penetration depth
These rank bars extend horizontally from the creation bar, and their length is a visual score between 0 and 1, scaled to the age of the gap. Longer bars represent stronger or more favorable conditions.
🔸Signals and Rejection Markers
When a gap shows signs of rejection (price enters the gap and then closes away from it with sufficient activity), the script can print a signal label at the reaction point. These markers summarize the internal metrics of the gap using a tooltip:
-Velocity percentage
-Volume percentage
-Safety score
-Number of tests
🔸 Flexible Mitigation Logic (Close or Wick)
You can choose how mitigation is defined via the Mitigation Method input:
Close: the gap is considered filled only when the closing price crosses the gap boundary
Wick: a full fill is detected as soon as any wick crosses the gap boundary
🔸 Alert Conditions
-New FVG formed
-Price entering a gap (testing)
-Gap fully filled and invalidated
-Rejection signal generated
🔹Calculations
This section summarizes the main calculations used under the hood. Only the core logic is covered.
1. ATR Filter and Gap Size
The script uses a configurable ATR length to filter out small gaps. First the ATR is computed:
float atrVal = ta.atr(atrLength)
Gap size for both directions is then measured:
float gapSizeBull = low - high
float gapSizeBear = low - high
If useAtrFilter is enabled, gaps smaller than atrVal are ignored. This ties the minimum gap size to the current volatility regime.
2. Fair Value Gap Detection
The basic FVG conditions use a three bar structure:
bool fvgBull = low > high
bool fvgBear = high < low
For bullish gaps the script stores:
-top as low of the current bar
-bottom as high
For bearish gaps:
-top as high of the current bar
-bottom as low
This defines the price range that is considered the imbalance area.
3. Depth and Safety Score
Depth measures how far price has penetrated into the gap since its creation. For each bar, the script computes a currentDepth and updates the maximum depth:
float currentDepth = 0.0
if g.isBullish
if l < g.top
currentDepth := g.top - l
else
if h > g.bottom
currentDepth := h - g.bottom
if currentDepth > g.maxDepth
g.maxDepth := currentDepth
The safety score expresses how much of the gap remains intact:
float depthRatio = g.maxDepth / gapSize
float safetyScore = math.max(0.0, 1.0 - depthRatio)
safetyScore near 1: gap is mostly untouched
safetyScore near 0: gap is mostly or fully filled
4. Velocity Metric
Velocity captures how aggressively price moves inside the gap. It is based on the body to range ratio of each bar that trades within the gap and rewards bars that move in the same direction as the gap:
float barRange = h - l
float bodyRatio = math.abs(close - open) / barRange
float directionBonus = 0.0
if g.isBullish and close > open
directionBonus := 0.2
else if not g.isBullish and close < open
directionBonus := 0.2
float currentVelocity = math.min(bodyRatio + directionBonus, 1.0)
The gap keeps track of the strongest observed value:
if currentVelocity > g.maxVelocity
g.maxVelocity := currentVelocity
This maximum is later used as velScore when building the velocity rank bar.
5. Volume Accumulation and Volume Score
While price is trading inside a gap, the script accumulates the traded volume:
if isInside
g.testVolume += volume
It also keeps track of the number of tests and the volume at the start of the first test:
if g.status == "Fresh"
g.status := "Testing"
g.testCount := 1
g.testStartVolume := volume
An average volume is computed using a 20 period SMA:
float volAvg = ta.sma(volume, 20)
The expected volume is approximated as:
float expectedVol = volAvg * math.max(1, (bar_index - g.index) / 2)
The volume score is then:
float volScore = math.min(g.testVolume / expectedVol, 1.0)
This produces a normalized 0 to 1 metric that shows whether the gap has attracted more or less volume than expected over its lifetime.
6. Rank Bar Scaling
All three scores are projected visually along the time axis as horizontal bars. The script uses the age of the gap in bars as the maximum width:
float maxWidth = math.max(bar_index - g.index, 1)
Then each metric is mapped to a bar length:
int len1 = int(math.max(1, maxWidth * velScore))
g.rankBox1.set_right(g.index + len1)
int len2 = int(math.max(1, maxWidth * volScore))
g.rankBox2.set_right(g.index + len2)
int len3 = int(math.max(1, maxWidth * safetyScore))
g.rankBox3.set_right(g.index + len3)
This creates an intuitive visual representation where stronger metrics produce longer rank bars, making it easy to quickly compare the relative quality of multiple FVGs on the chart.






















