Three Drive Pattern Detector [LuxAlgo]The Three Drives Pattern Detector indicator focuses on detecting and displaying completed Three Drives patterns on the user chart. This harmonic pattern is characterized by successive higher highs / lower lows following specific ratios.
The script uses a multi-length swing detection approach, as well as adjusting ratios to ensure flexibility and a maximum number of visible Three Drives patterns.
🔶 USAGE
The bullish/bearish Three Drives pattern is commonly interpreted as a reversal pattern and is characterized by three extensions (drives) and two intermediary retracements creating consecutive higher lows (for a bullish case) or lower highs (for a bearish case).
The multi-length swing detection approach taken by the indicator allows for detecting shorter-term alongside medium/longer-term patterns simultaneously, allowing to increase in the amount of detected patterns.
Users can set a Minimum Swing length (for example 2) and a Maximum Swing length (for example 100) which defines the range of the swing point detection length, higher values for these settings will detect longer-term Three-Drives patterns, while a larger range will allow for the detection of a larger number of patterns.
Sometimes multiple dashed lines as the last segment can be observed. This means multiple Three Drives patterns sharing multiple swing points have formed, with only the last segment being different.
🔹 Retracement/Extension Ratios
The Three Drives pattern often associates the retracement/extension to Fibonacci ratios of respectively 0.618/1.272.
Some sources specify a maximum retracement/extension level of 0.786/1.618, which means the retracement should be within the 0.618-0.786 range and the extension between 1.272-1.618.
Since finding a pattern where the retracement/extension is precisely at the 0.618/1.272 levels, or even between 0.618-0.786/1.272-1.618 is rare, the script allows users to adjust those ratios, which ensures more flexibility. Depending on the widening/tightening of the ratios, allowing users to find more patterns (but potentially less valid) or more valid (but fewer patterns).
In the example above, " Show Ratios " is set to " Ratios With Margin ", showing the ideal retracement/extension level together with the margin, while in the example below, " Show Ratios " is set to " Ratios ", which shows only a line where the price should ideally reverse.
While setting the ratios wider will result in more frequent but less valid patterns, it can also create good trading opportunities.
🔹 Best Practices
The indicator doesn't include Stop Loss (SL) or Take Profit (TP) levels, however, the 1.618 Fibonacci Extension level of the last leg can commonly be used as stop loss.
Typical Take Profit areas include:
Starting point of the pattern
Each retracement level (2x)
The 0.618 retracement level of the complete pattern
In the above bullish examples, the price was lower than the lowest point of the pattern. The price reversed and attained all TP levels without hitting the SL level.
In the above bearish example, the price went above the highest point of the pattern but did not hit the SL level, after which two TP levels were hit. Then, the price quickly went up, just missing the SL level before it came back down again, hitting the last 2 TP levels.
This example shows that other Fibonacci levels an also be effective when combined with the Three Drives pattern, even in the longer term.
🔶 DETAILS
🔹 Multi Length
The core of this publication is the multi-length swing detection. To ensure the maximum amount of Three Drives patterns are found, up to 99 different swing length periods can be used to detect swing points which are then tested for valid patterns.
Using a wider variety of swing points also ensures that patterns visible only with specific Swing settings can be found on the same chart without the user needing to constantly adjust the Swing settings to find other patterns.
The user only needs to set the desired minimum and maximum Swing Length.
In this case, swing detection using swing Lengths from 3 to 100 (97 different) are computed and evaluated for patterns. Three different patterns were found on the same chart, with swing lengths 3, 4, and 6.
Note: The Maximum Swing length should be equal to or higher than the Minimum Swing Length . If the maximum value is lower than the minimum, the script will automatically take the minimum value as the maximum to prevent errors.
🔹 Width Margin %
Users can filter out patterns based on the duration of each extension/retracement segment. When the users want segments of the detected patterns to be of a similar duration, the width percentage should be set lower. When the focus is on detecting more patterns the width percentage can be set higher.
🔹 Retracement/Extension Settings
Show Ratios , set to Ratios , show the ideal Fibonacci retracement/extension level, while Ratios With Margin (example below) show the additional margins for retracement/extension.
The upper and lower limits can be visualized while hovering over the calculated ratio label.
The dashed line shows an older pattern, where the last leg has been updated.
🔹 Last Known Pattern
The included dashboard highlights the date of the most recently detected pattern; the text will show " None " if no pattern is found.
🔹 Calculated Bars
The "Calculated Bars" setting makes use of the recently introduced calc_bars_count parameter, making it possible to effectively reduce the number of historical bars during the computation of the script, which significantly improves the loading speed of the script.
Users wishing to see the most recent patterns can set this setting to 1000 for example, where only the most recent 1000 bars are used to find patterns. If every bar must be used for pattern detection, set " Calculated bars " at 0.
🔶 SETTINGS
Minimum Swing Length: Minimum length used for the swing detection.
Maximum Swing Length: Maximum length used for the swing detection.
Retracement: Range of required ratios used for testing retracements.
Extension: Range of required ratios used for testing extensions.
Width Margin: Influences the symmetry of the pattern; with a higher number allowing for less symmetry.
🔹 Style
Text Size: Text size of the ratio labels.
Show Ratios: Show the ideal ratio, upper/lower limit of ratios, or none.
🔹 Dashboard
Show Dashboard: Toggle dashboard which shows the date of the last found pattern.
Location: Location of the dashboard on the chart.
Size: Text size.
🔹 Calculation
Calculated Bars: Allows the usage of fewer bars for performance/speed improvement.
Luxalgo
Market Structure Oscillator [LuxAlgo]The Market Structure Oscillator indicator analyzes and synthesizes short-term, intermediate-term, and long-term market structure shifts and breaks, visualizing the output as oscillators and graphical representations of real-time market structures on the main price chart.
The oscillator presentation of the detected market structures helps traders visualize trend momentum and strength, identifying potential trend reversals, and providing different perspectives to enhance the analysis of classic market structures.
🔶 USAGE
A market structure shift signals a potential change in market sentiment or direction, while a break of structure indicates a continuation of the current trend. Detecting these events in real-time helps traders recognize both trend changes and continuations. The market structure oscillator translates these concepts visually, offering deeper insights into market momentum and strength. It aids traders in identifying overbought or oversold conditions, potential trend reversals, and confirming trend direction.
Oscillators often generate signals based on crossing certain thresholds or diverging from price movements, providing cues for traders to enter or exit positions.
The weights determine the influence of each period (short-term, intermediate-term, long-term) on the final oscillator value. By changing the weights, traders can emphasize or de-emphasize the importance of each period. Higher weights increase their respective market structure's influence on the oscillator value. For example, if the weight for the short-term period is set to 0, the final value of the oscillator will be calculated using only the intermediate-term and long-term market structures.
The indicator features a Cycle Oscillator component, which uses the market structure oscillator values to generate a histogram and provide further insights into market cycles and potential signals. The Cycle Oscillator aids in timing by allowing traders to more easily see the median length of an oscillation around the average point, helping them identify both favorable prices and favorable moments for trading.
Users can also display detected market structures on the price chart by enabling the corresponding market structure toggle from the "Market Structures on Chart" settings group.
🔶 DETAILS
The script initiates its analysis by detecting swing levels, which form the fundamental basis for its operations. It begins by identifying short-term swing points, automatically detected solely based on market movements without any reliance on user-defined input. Short-Term Swing Highs (STH) are peaks in price surrounded by lower highs on both sides, while Short-Term Swing Lows (STL) are troughs surrounded by higher lows.
To identify intermediate-term and long-term swing points, the script uses previously detected short-term swing points as reference points. It examines these points to determine intermediate-term swings and further analyzes intermediate-term swings to identify long-term swing points. This method ensures a thorough and unbiased evaluation of market dynamics, providing traders with reliable insights into market structures.
Once swing levels are detected, the process continues with the analysis of Market Structure Shifts (MSS) and Breaks of Structure (BoS). A Market Structure Shift, also known as a Change of Character (CHoCH), is a critical event in price action analysis that suggests a potential shift in market sentiment or direction. It occurs when the price reverses from an established trend, indicating that the current trend may be losing momentum and a reversal could be imminent.
On the other hand, a Break of Structure signifies the continuation of the existing market trend. This event occurs when the price decisively moves beyond a previous swing high or low, confirming the strength and persistence of the prevailing trend.
The indicator analyzes price patterns using a pure price action approach and identifies market structures for short-term, intermediate-term, and long-term periods. The collected data is then normalized and combined using specified weights to calculate the final Market Structure Oscillator value.
🔶 SETTINGS
The indicator incorporates user-defined settings, allowing users to tailor it according to their preferences and trading strategies.
🔹 Market Structure Oscillator
Market Structure Oscillator: Toggles the visibility of the market structures oscillator.
Short Term Weight: Defines the weight for the short-term market structure.
Intermediate Term Weight: Defines the weight for the intermediate-term market structure.
Long Term Weight: Defines the weight for the long-term market structure.
Oscillator Smoothing: Determines the smoothing factor for the oscillator.
Gradient Colors: Allows customization of bullish and bearish gradient colors.
Market Structure Oscillator Crosses: Provides signals based on market structure oscillator equilibrium level crosses.
🔹 Cycle Oscillator
Cycle Oscillator - Histogram: Toggles the visibility of the cycle oscillator.
Cycle Signal Length: Defines the length of the cycle signal.
Cycle Oscillator Crosses: Provides signals based on cycle oscillator crosses.
🔹 Market Structures on Chart
Market Structures: Allows plotting of market structures (short, intermediate, and long term) on the chart.
Line, Label, and Color: Options to display lines and labels for different market structures with customizable colors.
🔹 Oscillator Components
Oscillators: Separately plots short-term, intermediate-term, and long-term oscillators. Provides options to display these oscillators with customizable colors.
🔶 RELATED SCRIPTS
Market-Structures-(Intrabar)
Pure Price Action Order & Breaker Blocks [LuxAlgo]The Pure Price Action Order & Breaker Blocks indicator is a pure price action adaptation of our previously published and highly popular Order-Blocks-Breaker-Blocks script.
Similar to its earlier version, this indicator detects order blocks that can automatically turn into breaker blocks on the chart once mitigated. However, the key difference/uniqueness is that the pure price action version relies solely on price patterns, eliminating the need for length definitions. In other words, it removes the limitation of user-defined inputs, ensuring a robust and objective analysis of market dynamics.
🔶 USAGE
An order block is a significant area on a price chart where there was a notable accumulation or distribution of orders, often identified by a strong price move followed by consolidation. Traders use order blocks to identify potential support or resistance levels.
A mitigated order block refers to an order block that has been invalidated due to subsequent market movements. It may no longer hold the same significance in the current market context. However, when the price mitigates an order block, a breaker block is confirmed. It is possible that the price might trade back to this breaker block, potentially offering a new trading opportunity.
Users can optionally enable the "Historical Polarity Changes" labels within the settings menu to see where breaker blocks might have previously provided effective trade setups.
This feature is most effective when using replay mode. Please note that these labels are subject to backpainting.
🔶 DETAILS
The swing points detection feature relies exclusively on price action, eliminating the need for numerical user-defined settings.
The first step involves detecting short-term swing points, where a short-term swing high (STH) is identified as a price peak surrounded by lower highs on both sides. Similarly, a short-term swing low is recognized as a price trough surrounded by higher lows on both sides.
Intermediate-term swing and long-term swing points are detected using the same approach but with a slight modification. Instead of directly analyzing price candles, we now utilize the previously detected short-term swing points. For intermediate-term swing points, we rely on short-term swing points, while for long-term swing points, we use the intermediate-term ones.
🔶 SETTINGS
Detection: Market structure used to detect swing points for creating order blocks.
Show Last Bullish OB: Number of the most recent bullish order/breaker blocks to display on the chart.
Show Last Bearish OB: Number of the most recent bearish order/breaker blocks to display on the chart.
Use Candle Body: Allows users to use candle bodies as order block areas instead of the full candle range.
🔹 Style
Show Historical Polarity Changes: Allows users to see labels indicating where a swing high/low previously occurred within a breaker block.
🔶 RELATED SCRIPTS
Pure-Price-Action-Structures.
Order-Blocks-Breaker-Blocks.
DTFX Algo Zones [LuxAlgo]DTFX Algo Zones are auto-generated Fibonacci Retracements based on market structure shifts.
These retracement levels are intended to be used as support and resistance levels to look for price to bounce off of to confirm direction.
🔶 USAGE
Due to the retracement levels only being generated from identified market structure shifts, the retracements are confined to only draw from areas considered more important due to the technical Break of Structure (BOS) or Change of Character (CHoCH).
The simple action that causes a market structure shift occurs is price breaking above or below a specific swing point. When a market structure shift happens, a retracement is drawn from the point of break to the highest or lowest point since that point. Due to the price action necessary for a market structure shift, these retracements will not always be immediately actionable.
These retracement levels are intended to be used as points to watch for price to retrace to and bounce from, confirming the current direction of price.
In the example below, after the retracement is initiated, by bouncing off of the retracement levels formed from the previous market structure shift it would further confirm the bias of the market structure shift. A break going through these levels would display a weakness from the current market structure shift, implying that it could simply be noise.
🔶 DETAILS
The script uses standard SMC Market structure identification to determine Break of Structures (BOS) and Change of Characters (CHoCH). The specific swing points can be identified by the shapes placed above or below the specific swing high/low candle.
By unchecking the "Display All Zones" setting, users are able to specify the exact number of retracement zones to display using the "Show Last" parameter. This is handy for cleaning up the chart to stay focused on the most recent retracements.
Additionally, when displaying multiple zones, the "Clean-Up Level Overlap" setting may be helpful for decluttering as well. This option optimizes the display of retracement levels to minimize their overlap on other adjacent zones.
The script allows for up to 5 Fib levels to be displayed from each zone, with options for display, value, line style, and color for each of the 5.
The calculation for Fib Levels changes depending on the direction of market structure shifts. When an upwards (Bullish) zone is generated, the retracement is drawn with the bottom of the zone being 0 and the top of the zone being 1. This is reversed for downwards (Bearish) zones.
🔶 SETTINGS
Structure Length: Sets the SMC structure length to use for finding MMS.
Show Last: Displays this number of retracement zones. (Display All Zones Must be Unchecked)
Display All Zones: Ignores "Show Last" number and displays all historical MMS Retracement Zones.
Zone Display: Choose which zones to display, only bearish, only bullish, or both.
Clean-Up Level Overlap: Minimizes overlap between adjacent zones and levels.
Fib Levels: Settings to display and customize up to 5 Fib levels for each zone.
Previous Highs & Lows [LuxAlgo]The Previous Highs & Lows indicator highlights a user-set amount of previous maximum/minimum prices made within specific intervals, these are displayed as levels customizable levels.
Additionally, one upper and lower zone constructed from the previously displayed highs/lows is included, providing support/resistance areas.
🔶 USAGE
Previous highs/lows are often perceived as key trading levels with the potential of generating multiple reactions upon being reached.
While the daily interval is more commonly used, users can use different intervals, with the indicator supporting hourly, daily, weekly, monthly, and yearly intervals. Using higher intervals on low timeframes can return more distant levels relative to the most recent price, which might not be relevant.
Each level is numbered, with more recent previous highs/lows having a lower number associated with them, users can also highlight more recent levels through a transparency gradient.
Users can control the amount of previous highs/lows displayed using the "Show Last" settings, with a higher value providing more potential support/resistance. Returned previous highs/lows can eventually be filtered out based on their position by enabling the "Filter Based On Position" setting, only keeping previous highs above the current closing price and previous lows below the current closing price, giving more relevant levels as a result.
🔹 Previous High/Low Areas
The indicator includes two areas constructed from the respective percentiles of the returned previous highs/lows. These can be useful as more general support/resistance areas.
Wider areas are often indicative of a group of previous highs or lows being more dispersed, resulting in areas that are easier to reach. Wider areas can also be obtained by increasing the "Areas Width" setting.
Note: Areas will only be displayed if "Show Last" is greater than 1
🔶 SETTINGS
Show Last: Determines the amount of more recent previous highs and previous low levels displayed by the indicator.
Interval: Interval used to capture maximum/minimum price values,
Areas Width: Width of the displayed top/bottom areas, with higher values returning wider areas.
Filter Based On Position: When enabled only display previous highs above the current closing price and previous lows below the current closing price.
🔹 Style
Minimum Gradient Transparency: Minimum transparency value applied to the colors of the oldest displayed previous highs/lows levels.
Half Cup [LuxAlgo]The Half Cup indicator detects and displays patterns with the shape of a Half Cup , initiating a channel. From this channel, breakouts are detected and highlighted with dots.
Users can control the shape of the Half Cup and the channel length through various settings.
Do note that the displayed half cups are displayed retrospectively, making them subject to backpainting.
🔶 USAGE
The idea behind the indicator is derived from the Cup & Handle pattern, which requires waiting for the pattern full completion.
Our Half Cup publication aims to find opportunities when the potential cup is only formed halfway.
In this example, a green dot shows the first breakout of the upper channel extremity. A few bars later, the price went under it, after which it returned above, triggering a second green dot. Both triggers were good opportunities in this case, and the price rose afterward.
The Half Cup pattern can be the start of a potential complete Cup & Handle (As in the example above, a complete Cup pattern (without the Handle ) is shown, manually drawn with dashed lines).
Every green/red dot, whether on a bullish or bearish pattern, points to a breakout respectively above/below the channel.
Besides drawing patterns and the corresponding breakouts, the Half Cup indicator can also provide insights into trends and potential opportunities in the long run.
🔶 DETAILS
🔹 Validation
Several criteria must be fulfilled before a visible pattern on the chart is drawn.
Calculations are done beforehand to know where the Half Cup pattern would be positioned.
The pattern's bottom and top edges are checked for the number of bars whose closing price is outside the half-cup area. When the number of breakouts above/below is equal to or lower than the user-defined settings ( Max % Breaks Top/Bottom ), the pattern is drawn together with a brighter-colored channel next to it.
Dots highlighting the channel's breakout can be drawn from that moment until the end of both channel lines.
🔹 Positioning
Users can adjust the following settings to fit their needs:
% Broadness: Moves the Top/Bottom line (bullish or bearish) diagonally upwards/downwards.
Vertical Shift: Shifts the entire pattern up/down.
Channel Length: Sets the line length of the channel.
Note that adjusting the position of the pattern will change the validation; the script will be rerun to check if patterns are still valid or if new patterns can be drawn. Some patterns may disappear, while new ones may appear.
Before adjusting the position, the user can set Max % Breaks Top/Bottom at 100%. When the positioning is set, Max % Breaks Top/Bottom can be set as desired.
🔹 Updated Drawings
The Half Cup pattern is always drawn retrospectively (that is it is subject to backpainting), the channel is drawn from the bar from where the pattern is detected. Every breakout of the channel will remain visible as dots.
When a new swing high/low is found while the previous swing low/high remains the same, the pattern is updated to minimize clutter. The dots of earlier drawings will remain visible (to ensure no repainting occurs), but the color becomes faded, as such bright dots are associated with patterns that are visible on the chart, while faded dots are from removed/updated patterns.
🔶 SETTINGS
Swing Length: Period used for the swing detection, with higher values returning longer-term Swing Levels.
🔹 Validation
Max % Breaks Bottom: Allowed maximum amount of bars where the closing price is below the bottom of the Half Cup pattern against the total width of the pattern (bars).
Max % Breaks Top: Allowed maximum amount of bars where the closing price is above the top of the Half Cup pattern against the total width of the pattern (bars).
🔹 Positioning
% Broadness: Moves the Top/Bottom line (bullish or bearish) diagonally upwards/downwards.
Vertical Shift: Shifts the entire pattern up/down.
Channel Length: Sets the line length of the channel.
FVG Instantaneous Mitigation Signals [LuxAlgo]The FVG Instantaneous Mitigation Signals indicator detects and highlights "instantaneously" mitigated fair value gaps (FVG), that is FVGs that get mitigated one bar after their creation, returning signals upon mitigation.
Take profit/stop loss areas, as well as a trailing stop loss are also included to complement the signals.
🔶 USAGE
Instantaneous Fair Value Gap mitigation is a new concept introduced in this script and refers to the event of price mitigating a fair value gap one bar after its creation.
The resulting signal sentiment is opposite to the bias of the mitigated fair value gap. As such an instantaneously mitigated bearish FGV results in a bullish signal, while an instantaneously mitigated bullish FGV results in a bearish signal.
Fair value gap areas subject to instantaneous mitigation are highlighted alongside their average level, this level is extended until reached in a direction opposite to the FVG bias and can be used as a potential support/resistance level.
Users can filter out less volatile fair value gaps using the "FVG Width Filter" setting, with higher values highlighting more volatile fair value gaps subject to instantaneous mitigation.
🔹 TP/SL Areas
Users can enable take-profit/stop-loss areas. These are displayed upon a new signal formation, with an area starting from the mitigated FVG area average to this average plus/minus N ATRs, where N is determined by their respective multiplier settings.
Using a higher multiplier will return more distant areas from the price, requiring longer-term variations to be reached.
🔹 Trailing Stop Loss
A trailing-stop loss is included, increasing when the price makes a new higher high or lower low since the trailing has been set. Using a higher trailing stop multiplier will allow its initial position to be further away from the price, reducing its chances of being hit.
The trailing stop can be reset on "Every Signal", whether they are bullish or bearish, or only on an "Inverse Signal", which will reset the trailing when a signal of opposite bias is detected, this will preserve an existing trailing stop when a new signal of the same bias to the present one is detected.
🔶 DETAILS
Fair Value Gaps are ubiquitous to price action traders. These patterns arise when there exists a disparity between supply and demand. The action of price coming back and filling these imbalance areas is referred to as "mitigation" or "rebalancing".
"Instantaneous mitigation" refers to the event of price quickly mitigating a prior fair value gap, which in the case of this script is one bar after their creation. These events are indicative of a market more attentive to imbalances, and more willing to correct disparities in supply and demand.
If the market is particularly sensitive to imbalances correction then these can be excessively corrected, leading to further imbalances, highlighting a potential feedback process.
🔶 SETTINGS
FVG Width Filter: Filter out FVGs with thinner areas from returning a potential signal.
🔹 TP/SL
TP Area: Enable take-profit areas for new signals.
Multiplier: Control the distance from the take profit and the price, with higher values returning more distant TP's.
SL Area: Enable stop-loss areas for new signals.
Multiplier: Control the distance from the stop loss and the price, with higher values returning more distant SL's.
🔹 Trailing Stop
Reset Trailing Stop: Determines when the trailing stop is reset.
Multiplier: Controls the initial position of the trailing stop, with higher values returning more distant trailing stops.
Pure Price Action Structures [LuxAlgo]The Pure Price Action Structures indicator is a pure price action analysis tool designed to automatically identify real-time market structures.
The indicator identifies short-term, intermediate-term, and long-term swing highs and lows, forming the foundation for real-time detection of shifts and breaks in market structure.
Its distinctive/unique feature lies in its reliance solely on price patterns, without being limited by any user-defined input, ensuring a robust and objective analysis of market dynamics.
🔶 USAGE
Market structure is a crucial aspect of understanding price action. The script automatically identifies real-time market structure, enabling traders to comprehend market trends more easily. It assists traders in recognizing both trend changes and continuations.
Market structures are constructed from three sets of swing points, short-term swings, intermediary swings, and long-term swings. Market structures associated with longer-term swing points are indicative of longer-term trends.
A market structure shift (MSS), also known as a change of character (CHoCH), is a significant event in price action analysis that may signal a potential shift in market sentiment or direction. Conversely, a break of structure (BOS) is another significant event in price action analysis that typically indicates a continuation of the prevailing trend.
However, it's important to note that while an MSS can be the first indication of a trend reversal and a BOS signifies a continuation of the prevailing trend, they do not guarantee a complete reversal or continuation of the trend.
In some cases, MSS and BOS levels may also act as liquidity zones or areas of price consolidation, rather than indicating a definitive change in market direction or continuation. Traders should approach them with caution and consider additional factors to confirm the validity of the signal before making trading decisions.
🔶 DETAILS
🔹 Market Structures
Market structures are based on the analysis of price action and aim to identify key levels and patterns in the market, where swing point detection is one of the core concepts within ICT trading methodologies and teachings.
Swing points are automatically detected solely based on market movements, without any reliance on user-defined input.
🔹 Utilizing Swing Points
Swing points are not identified in real time as they occur. While short-term swing points may be displayed with a delay of at most one bar, the identification of intermediate and long-term swing points depends entirely on market movements. Furthermore, detection is not limited by any user-defined input but relies solely on pure price action. Consequently, swing points are not typically utilized in real-time trading scenarios.
Traders often analyze historical swing points to discern market trends and pinpoint potential entry and exit points for their trades. By identifying swing highs and lows, traders can:
Recognize Trends: Swing highs and lows help traders identify the direction of the trend. Higher swing highs and higher swing lows indicate an uptrend, while lower swing highs and lower swing lows indicate a downtrend.
Identify Support and Resistance Levels: Swing highs often serve as resistance levels, known in ICT terminology as Buyside Liquidity Levels, while swing lows function as support levels, also referred to in ICT terminology as Sellside Liquidity Levels. Traders can utilize these levels to strategize entry and exit points for their trades.
Spot Reversal Patterns: Swing points can form various reversal patterns, such as double tops or bottoms, head and shoulders patterns, and triangles. Recognizing these patterns can signal potential trend reversals, allowing traders to adjust their strategies accordingly.
Set Stop Loss and Take Profit Levels: In the context of ICT teachings, swing levels represent specific price levels where a concentration of buy or sell orders is anticipated. Traders can target these liquidity levels/pools to accumulate or distribute their positions, essentially using swing points to establish stop loss and take profit levels for their trades.
Overall, swing points provide valuable information about market dynamics and can assist traders in making more informed trading decisions.
🔶 SETTINGS
🔹 Structures
Swings and Size: Toggles the visibility of the structure's highs and lows, assigns an icon corresponding to the structures, and controls the size of the icons.
Market Structures: Toggles the visibility of the market structures.
Market Structure Labels: Controls the visibility of labels that highlight the type of market structure.
Line Style and Width: Customizes the style and width of the lines representing the market structure.
Swing and Line Colors: Customizes colors for the icons representing highs and lows, and the lines and labels representing the market structure.
🔶 RELATED SCRIPTS
Market-Structures-(Intrabar).
Buyside-Sellside-Liquidity.
Candle Body Support/Resistance [LuxAlgo]The Candle Body Support/Resistance indicator is a tool that provides Support/Resistance levels from high-volatility candles, a concept originally described by Steve Nison in "Beyond Candlesticks".
Users can define the candle body percentage used to set the detected support/resistance levels. Occurrences of price testing the returned levels are highlighted using user-customizable dots.
🔶 USAGE
Support/Resistance levels are drawn from volatile candles, that is candles having a body (range between opening and closing price) whose magnitude is larger than the Volatility Threshold , which is determined by the multiplicative factor of an ATR (Average True Range) using a user set length.
The level starts from the opening price +/- a percentage of the open-close range. Users can adjust the percentage of the candle body used as support/resistance levels respectively, with higher percentage values returning levels prone to get reached sooner by the price.
A test is considered valid when a wick passes through the Support/Resistance level while the closing price is not breaking it.
Two modes are included, Trailing and Historical , both affecting the displayed elements of the indicator, these are described in the sub-section below.
🔹 Historical
The Historical Mode will draw a separate line from every Volatile Candle . When this line is tested, a dot will be drawn.
In the above example, the red resistance line was tested once until a bullish volatile candle formed, which closed just below the resistance level. The resistance level was tested again, after which the newly created support level was broken quickly, and the price decreased. These levels proved helpful later, acting as resistance/support levels (illustrated by the extra manually drawn dashed white lines).
To prevent cluttering Support/Resistance , lines will be deleted when the line is mitigated and hasn't been tested.
When a Support/Resistance line reaches its Maximum Line Length , it will also be deleted when it has not been tested.
🔹 Trailing
When a new volatile candle of the same type (bullish/bearish) appears while the Support/Resistance isn't broken, this line will be updated with the values of the new volatile candle. This creates a trailing line and a less cluttered chart.
Unlike the Historical mode , a line will not be deleted after a while or when it is mitigated. Instead, the line won't be updated anymore. A new line will start from the next found volatile candle.
Using the same situation as the Historical Mode example, we can note the future significance of old support/resistance levels (illustrated by the extra manually drawn dashed white lines).
The user can switch between these 2 modes, each offering a unique perspective on the market. This provides a more in-depth examination of the market, enhancing the user's trading analysis.
Using a copy of our indicator while using both modes can also be helpful.
🔶 DETAILS
The Support level is the opening price of a bullish volatile candle plus a user-set percentage of the candle's body, while the Resistance level is the opening price of a bearish volatile candle minus a percentage of the candle's body.
The following example illustrates the ATR with the multiplicative factor (Volatility Threshold) where the body of Volatile candles exceeds the ATR limits. Changing the Volatility Threshold and ATR length gives users extra flexibility to adjust to their needs.
🔹 Max Line Length
When using the Historical Mode and the duration of a displayed level reaches the user-set Max Line Length value, the level will return to the last test or be deleted when it has not been tested.
🔶 SETTINGS
Display Mode: Display mode of the indicator.
Support %: Sets the distance of the Support Line from the opening price relative to the candle body.
Resistance %: Sets the distance of the Resistance Line from the opening price relative to the candle body.
🔹 Filter
Length ATR: Amount of bars for the calculation of the Average True Range.
Volatility Threshold: multiplicative factor of ATR.
Max Line Length: Maximum allowed duration/length (in bars) of a Support/Resistance level.
Pivot Point Profile [LuxAlgo]The Pivot Point Profile indicator groups and displays data accumulated from previous pivot points, providing a comprehensive method for prioritizing and displaying areas of interest directly given by swing highs and lows.
Users have access to common settings present in other profile-type indicators.
🔶 USAGE
The Pivot Point Profile is particularly helpful in identifying highly active reversal zones that have been visited multiple times by price. Because of this, we could generally expect these areas to serve as future points of interest, often acting as support or resistance when re-visited.
The profile displays data associated with both Pivot Highs and Pivot Lows. Each row consists of pivot high and pivot low counts side-by-side, forming the total width of the row.
By analyzing the row as a whole, we can gain a better understanding of WHERE to look for interactions.
By analyzing the pivot counts independently, we can gain a better understanding of WHAT to expect when returning to these areas.
For example:
If a row in the profile contains entirely Pivot Lows, this could be seen as an indication to look for buyers to hold that level for a continuation upwards. A break of this level could be interpreted as a lack of interest from previous buyers at this level, indicating a further move down.
🔹 Concentrated Areas
Each row in the profile displays the current count of high pivots and low pivots within the selected lookback. The largest count for each pivot direction is identified as a "Concentrated Area (CA)", these CAs are highlighted over the chart with a line displaying the average of all pivots within that CA. The CA Average is the average of all pivot points (in the majority direction) within the given row.
These can hold more importance as potential support/resistance areas.
Note: The CA Threshold can be manually adjusted to highlight all rows based on a user-selected value.
🔶 DETAILS
🔹 Calculation
The idea behind the Pivot Point Profile is a new analysis method for pivot points, taking the idea of a volume profile and adapting it to display pivot points instead of volume. By using this data, in theory, we should be able to better prioritize zones to anticipate reversals, as well as identify key levels to watch for buyer & seller interactions to use as confirmations in direction.
The (vertical) width of each row is the product of the script's "Row Size", this is the number of rows that the profile will consist of. With a max of 250, the profile can be decently granular. That being said, A more granular profile will have fewer overlapping pivot points. By decreasing the row size (Using fewer rows in the profile) you will increase the tolerance for grouping pivot points. Potentially leading to a more comprehensive Profile. Inversely, By reducing the tolerance for grouping, you will better visualize only similar highs and lows but may have noisier data to sift through.
The Profile is calculated based on a "Lookback" parameter, using only the lookback amount of previous high and low pivots to calculate the profile. Configuring this parameter alongside "Pivot Length", will allow for great control over the frame of reference of the profile.
Note: This indicator is capable of utilizing the full chart history of pivot points, this can be done by enabling the "Use Full Chart History" setting, this will cause the script will calculate from everything it has access to on your current chart.
🔹 Display
The Pivot Point Profile display can be customized to fit a various range of chart styles and visual needs. The specific settings to adjust these can be located in the "Profile Display" Section of the User Inputs.
Profile Width: Sets the Left to Right Width of the Profile. This is the maximum width that the profile will occupy and will scale to fit within this width.
Profile Offset: Sets the distance of the Profile's Axis from the current chart candle. This moves the entire profile left and right to enable to user to set the distance between the profile and the current candle.
Direction: Changes the display direction of the profile, allowing for "Left", "Right", or "Center" display styles.
🔶 SETTINGS
🔹 Pivot Point Parameters
Pivot Type: Choose between "Fractal Pivots" or "SMC Structure" to use as the basis for pivots.
Length: Sets the length for the pivot calculations.
🔹 Profile Calculations Parameters
Lookback: Sets the number of pivots to calculate within, in increments of high and low pairs. (Setting this to 1 = 1 Pivot High & 1 Pivot Low)
Use Full Chart History: Disregards the set lookback and instead uses all available chart data to calculate from.
Row Size: Sets the total number of rows to calculate the profile with.
🔹 Profile Display
Profile Width: Sets the max left & right width (in bars) that the profile will occupy.
Profile Offset: Sets the distance of the profile axis from the last chart bar.
Direction: Sets the display direction
🔹 Concentrated Areas
Highlight CAs: Extends the rows left from concentrated areas.
CA Threshold: Manually set the threshold for determining concentrated areas, when disabled, only the largest rows will be displayed.
CA Averages: Toggles the concentrated area averages for each pivot direction.
Note: CA Averages can be displayed independently without CA Highlights being displayed, and vice versa.
Candlestick Structure [LuxAlgo]The Candlestick Structure indicator detects major market trends and displays various candlestick patterns aligning with the detected trend, filtering out potentially unwanted patterns as a result. Multiple trend detection methods are included and can be selected by the users.
A dashboard showing the alignment percentage of each individual pattern is also provided.
🔶 USAGE
By distinguishing major and minor trend detection, we can still detect patterns based on minor trends, yet filter out the patterns that do not align with the major trend.
By detecting candlestick patterns that align with a major trend, we can effectively detect the ending points of retracements, potentially providing various entry points of interest within a trend.
Users are able to track the alignment of each candlestick pattern in the dashboard to reveal which patterns typically align with the trend and which may not.
Note: Alignment % only checks if the pattern's direction is the same as the current trend direction. These are only raw readings and not any type of confidence score.
🔶 DETAILS
In this indicator, we are identifying and tracking 16 different Candlestick Patterns.
🔹 Bullish Patterns
Hammer: Identified by a small upper wick (or no upper wick) with a small body, and an elongated lower wick whose length is 2X greater than the candle body’s width.
Inverted Hammer: Identified by a small lower wick (or no lower wick) with a small body, and an elongated upper wick whose length is 2X greater than the candle body’s width.
Bullish Engulfing: A 2 bar pattern identified by a large bullish candle body fully encapsulating (opening lower and closing higher) the previous small (bearish) candle body.
Rising 3: A 5 bar pattern identified by an initial full-bodied bullish candle, followed by 3 bearish candles that trade within the high and low of the initial candle, followed by another full-bodied bullish candle closing above the high of the initial candle.
3 White Soldiers: Identified by 3 full-bodied bullish candles, each opening within the body and closing below the high, of the previous candle.
Morning Star: A 3 bar pattern identified by a full-bodied bearish candle, followed by a small-bodied bearish candle, followed by a full-bodied bullish candle that closes above the halfway point of the first candle.
Bullish Harami: A 2 bar pattern, identified by an initial bearish candle, followed by a small bullish candle whose range is entirely contained within the body of the initial candle.
Tweezer Bottom: A 2 bar pattern identified by an initial bearish candle, followed by a bullish candle, both having equal lows.
🔹 Bearish Patterns
Hanging Man: Identified by a small upper wick (or no upper wick) with a small body, and an elongated lower wick whose length is 2X greater than the candle body’s width.
Shooting Star: Identified by a small lower wick (or no lower wick) with a small body, and an elongated upper wick whose length is 2X greater than the candle body’s width.
Bearish Engulfing: A 2 bar pattern identified by a large bearish candle body fully encapsulating (opening higher and closing lower) the previous small (bullish) candle body.
Falling 3: A 5 bar pattern identified by an initial full-bodied bearish candle, followed by 3 bullish candles that trade within the high and low of the initial candle, followed by another full-bodied bearish candle closing below the low of the initial candle.
3 Black Crows: Identified by 3 full-bodied bearish candles, each open within the body and closing below the low, of the previous candle.
Evening Star: A 3 bar pattern identified by a full-bodied bullish candle, followed by a small-bodied bullish candle, followed by a full-bodied bearish candle that closes below the halfway point of the first candle.
Bearish Harami: A 2 bar pattern, identified by an initial bullish candle, followed by a small bearish candle whose range is entirely contained within the body of the initial candle.
Tweezer Top: A 2 bar pattern identified by an initial bullish candle, followed by a bearish candle, both having equal highs.
🔹 Trend Types
Major trend is displayed at all times, the display will change depending on the trend method selected.
The minor trend can also be visualized; to avoid confusion, the minor trend can optionally be displayed through the candle colors.
Supertrend: Displays Upper and Lower SuperTrend, When we break above the upper, it is considered an Uptrend. When we break below the lower, it is considered a Downtrend.
EMAs: Displays Fast and Slow EMAs, When Fast>Slow, it is considered an Uptrend. When Fast<Slow, it is considered a Downtrend.
ChoCh: Displays ChoCh Lines and Labels, When a Bullish ChoCh occurs, it is now considered as an Uptrend. When a Bearish ChoCh occurs, it is now considered a Downtrend.
Donchian Channel: Displays the Highest and Lowest Values, When we break above the Highest, it is considered an Uptrend. When we break below the Lowest, it is considered a Downtrend.
Below is an example of the Change of Character (ChoCh) method of trend detection.
Note: In this description, each screenshot has a different trend method in use, scroll through if you are looking for a specific one.
🔶 SETTINGS
Candlestick Patterns: Choose which candlestick patterns to include in calculations.
Minor Trend Length: Determines the Donchian Channel length to use for minor trend identification.
Major Trend Method: Determines which trend method to use for identifying Major Trend.
Major Trend Parameters: Various inputs for controlling Major trends, depending on the specific method you have selected.
Color Candles: Colors the chart candles based on minor trend.
Dashboard: Control display size and location of Alignment Dashboard.
Wolfe Wave Detector [LuxAlgo]The Wolfe Wave Detector displays occurrences of Wolfe Waves, alongside a target line. A multiple swing detection approach is used to maximize the number of detected waves.
The indicator includes a dashboard with the number of detected waves, as well as the number of reached targets.
🔶 USAGE
The Wolfe Wave pattern is a chart pattern composed of five segments, with the initial segment extremities (points XABCD) forming a channel containing price variations.
After the price reaches point D , we can expect a reversal toward a target line (point E ). The target line is obtained by connecting and extending point X -> C .
The script draws the XABCD pattern and a projection of where E might potentially be located.
The projection is derived from the intersection between the target line and a line starting from D , parallel to B-C . From this line, margins are added, left and right, creating a wedge-shaped figure in most cases.
When the price passes the target line, this is highlighted by a dot. The dot and pattern are green by default when the target is above D and red when the target is below D . Colors can be edited in the settings. The dashed target line is colored in the opposite color.
As seen in the above example, the price trend can reverse after reaching the target line.
🔹 Symmetry
Ideally, the Wolfe Wave must have a degree of symmetry; every upward line should have a similar angle to the other upward lines, and the same should be true for the downward lines.
Also, the lines forming the channel should be as parallel as possible.
Users have the option to adjust the tolerance:
Margin controls the wave symmetry of the pattern
Angle controls the channel symmetry of the pattern
It's important to note that in both cases, a lower number will lead to more symmetrical patterns, but they may appear less frequently.
It is also important to note that increasing the Margin can delay validating the pattern. In the meantime, the price could surpass the channel in the opposite direction, invalidating and deleting the otherwise valid pattern.
🔹 Multiple Swings
Users can set a Minimum Swing length (for example 2) and a Maximum Swing length (for example 100) which defines the range of the swing point detection length, higher values for these settings will detect longer-term Wolfe patterns, while a larger range will allow for the detection of a larger number of patterns.
By using multiple swings, it is possible to find smaller next to larger patterns at the same time.
The dashboard shows the number of patterns found and targets reached. When, for example, bullish patterns are disabled in the settings, the dashboard only shows the results of bearish patterns.
🔹 Extend Target Line
The publication includes a setting that allows the Target Line to be extended up to 50 bars further. As seen in the above example, the Target Line can still be reached even after the pattern has been finalized. Once the Target Line is reached, it won't be updated further.
Here is another example of a Target Line being reached later on.
The Target Line acted as a support level, after which where the price changed direction.
🔹 Show Progression
An option is included to show the progression before the pattern is completed. Users can make use of the XABC pattern or visualize where point D should be positioned.
The focus lies on the bar range (between the left and right borders of the grey rectangle). The pattern is considered invalid and deleted when point D is beyond these limits. The height of the rectangle is optional. Ideally, the price should be located between the top and bottom of the rectangle, but it is not mandatory.
Show Progression has three options including:
Full: Show all lines of XABC plus line C-D and rectangle for the position of point D
Partial: Show line C-D and rectangle for the position of point D
None: Only show valid completed patterns
The 'Partial' option in the 'Show Progression' feature is designed to help users locate the desired position of point D without the visual clutter caused by the XABC lines. This can be useful for those who prefer a cleaner visual representation of the evolving pattern.
🔶 SETTINGS
🔹 Swing Length
Minimum: Minimum length used for the swing detection.
Maximum Swing Length: Maximum length used for the swing detection.
🔹 Tolerance
Margin: Influences the symmetry of the pattern; with a higher number allowing for less symmetry.
Angle: Influences the symmetry of the channel; with a higher number allowing for less symmetry.
🔹 Style
Toggle: Bullish/Bearish + colors
Extend Target Line: Extend a maximum of 50 bars or until Target Line is reached
Show Progression: Show pattern progression
Dot Size: The size of the dot when the Target Line is reached
🔹 Dashboard
Show Dashboard: Toggle dashboard which shows the number of found patterns and targets reached.
Location: Location of the dashboard on the chart.
Text Size: Text size.
🔹 Calculation
Calculated Bars: Allows the usage of fewer bars for performance/speed improvement
ICT Propulsion Block [LuxAlgo]The ICT Propulsion Block indicator is meant to detect and highlight propulsion blocks, which are specific price structures introduced by the Inner Circle Trader (ICT).
Propulsion Blocks are essentially blocks located where prices interact with preceding order blocks. Traders often utilize them when analyzing price movements to identify potential turning points and market behavior or areas of interest in the market.
🔶 USAGE
An order block is a significant area on a price chart where there was a notable accumulation or distribution of orders, often identified by a strong move in price followed by a consolidation or sideways movement. Traders use order blocks to identify potential support or resistance levels.
A Propulsion Block, on the other hand, is a concept taught by the Inner Circle Trader (ICT) and refers to a specific type of order block that interacts with the preceding order block. Traders often analyze propulsion blocks to identify potential turning points and areas of interest in the market.
A mitigated order block refers to an order block that has been invalidated or nullified due to subsequent market movements or developments. It no longer holds the same significance or relevance in the current market context.
Let's explore a bearish order block and propulsion block scenario commonly utilized by ICT traders in their trading strategies.
🔶 SETTINGS
🔹 Order & Propulsion Blocks
Swing Detection Length: Lookback period used to detect swing points for creating order blocks and/or propulsion blocks.
Mitigation Price: Allows users to choose between the closing price or the candle's wick for mitigation.
Highlight Propulsion Block Signals: Highlights the propulsion block and its sentiment for easier identification and analysis.
Remove Unassociated Order Blocks: Eliminate order blocks that are not associated with any propulsion block.
Remove Mitigated Blocks: Eliminates mitigated order blocks and propulsion blocks along with their associated order blocks, streamlining the visualization for clearer analysis.
Most Recent Blocks: Activates processing of the specified number of most recent blocks according to the option. If not enabled, the script defaults to processing the last 125 occurrences.
🔹 Order & Propulsion Blocks Style
Bullish Order & Propulsion Blocks: Toggles the visibility of bullish order and propulsion blocks, along with color customization options.
Bearish Order & Propulsion Blocks: Toggles the visibility of bearish order and propulsion blocks, along with color customization options.
Block Labels: Toggles the visibility of order and propulsion block labels, and label size customization option.
🔶 RELATED SCRIPTS
Order-Blocks-Breaker-Blocks .
Depth of Market (DOM) [LuxAlgo]The Depth Of Market (DOM) tool allows traders to look under the hood of any market, taking price and volume analysis to the next level. The following features are included: DOM, Time & Sales, Volume Profile, Depth of Market, Imbalances, Buying Pressure, and up to 24 key intraday levels (it really packs a punch).
As a disclaimer, this tool does not use tick data, it is a DOM reconstruction from the provided real-time time series data (price and volume). So the volume you see is from filled orders only, this tool does not show unfilled limit orders.
Traders can enable or disable any of the features at will to avoid being overwhelmed with too much information and to make the tool perform faster.
The features that have the biggest impact on performance are Historical Data Collection, Key Levels (POC & VWAP), Time & Sales, Profile, and Imbalances. Disable these features to improve the indicator computational performance.
🔶 DOM
This is the simplest form of the tool, a simple DOM or ladder that displays the following columns:
PRICE: Price level
BID: Total number of market sell orders filled or limit buy orders filled.
SELL: Sell market orders
BUY: Buy market orders
ASK: Total number of market buy orders filled or limit sell orders filled.
The DOM only collects historical data from the last 24 hours and real-time data.
Traders can select a reset period for the DOM with two options:
DAILY: Resets at the beginning of each trading day
SESSIONS: Resets twice, as DAILY and 15.5 hours later, to coincide with the start of the RTH session for US tickers.
The DOM has two main modes, it can display price levels as ticks or points. The default is automatic based on the current daily volatility, but traders can manually force one mode or the other if they wish.
For convenience, traders have the option to set the number of lines (price levels), and the size of the text and to display only real-time data.
By default, the top price is set to 0 so that the DOM automatically adjusts the price levels to be displayed, but traders can set the top price manually so that the tool displays only the desired price levels in a fixed manner.
🔹 Volume Profile
As additional features to the basic DOM, traders have access to the volume profile histogram and the total volume per price level.
This helps traders identify at a glance key price areas where volume is accumulating (high volume nodes) or areas where volume is lacking (low volume nodes) - these areas are important to some traders who base their decision-making process on them.
🔹 Imbalances
Other added features are imbalances and buying pressure:
Interlevel Imbalance: volume delta between two different price levels
Intralevel Imbalance: delta between buy and sell volume at the same price level
Buying Pressure Percent: percentage of buy volume compared to total volume
Imbalances can help traders identify areas of interest in the price for possible support or resistance.
🔹 Depth
Depth allows traders to see at a glance how much supply is above the current price level or how much demand is below the current price level.
Above the current price level shows the cumulative ask volume (filled sell limit orders) and below the current price level shows the cumulative bid volume (filled buy limit orders).
🔶 KEY LEVELS
The tool includes up to 24 different key intraday levels of particular relevance:
Previous Week Levels
PWH: Previous week high
PWL: Previous week low
PWM: Previous week middle
PWS: Previous week settlement (close)
Previous Day Levels
PDH: Previous day high
PDL: Previous day low
PDM: Previous day middle
PDS: Previous day settlement (close)
Current Day Levels
OPEN: Open of day (or session)
HOD: High of day (or session)
LOD: Low of day (or session)
MOD: Middle of day (or session)
Opening Range
ORH: Open range high
ORL: Open range low
Initial Balance
IBH: Initial balance high
IBL: Initial balance low
VWAP
+3SD: Volume weighted average price plus 3 standard deviations
+2SD: Volume weighted average price plus 2 standard deviations
+1SD: Volume weighted average price plus 1 standard deviation
VWAP: Volume weighted average price
-1SD: Volume weighted average price minus 1 standard deviation
-2SD: Volume weighted average price minus 2 standard deviations
-3SD: Volume weighted average price minus 3 standard deviations
POC: Point of control
Different traders look at different levels, the key levels shown here are objective and specific areas of interest that traders can act on, providing us with potential areas of support or resistance in the price.
🔶 TIME & SALES
The tool also features a full-time and sales panel with time, price, and size columns, a size filter, and the ability to set the timezone to display time in the trader's local time.
The information shown here is what feeds the DOM and it can be useful in several ways, for example in detecting absorption. If a large number of orders are coming into the market but the price is barely moving, this indicates that there is enough liquidity at these levels to absorb all these orders, so if these orders stop coming into the market, the price may turn around.
🔶 SETTINGS
Period: Select the anchoring period to start data collection, DAILY will anchor at the start of the trading day, and SESSIONS will start as DAILY and 15.5 hours later (RTH for US tickers).
Mode: Select between AUTO and MANUAL modes for displaying TICKS or POINTS, in AUTO mode the tool will automatically select TICKS for tickers with a daily average volatility below 5000 ticks and POINTS for the rest of the tickers.
Rows: Select the number of price levels to display
Text Size: Select the text size
🔹 DOM
DOM: Enable/Disable DOM display
Realtime only: Enable/Disable real-time data only, historical data will be collected if disabled
Top Price: Specify the price to be displayed on the top row, set to 0 to enable dynamic DOM
Max updates: Specify how many times the values on the SELL and BUY columns are accumulated until reset.
Profile/Depth size: Maximum size of the histograms on the PROFILE and DEPTH columns.
Profile: Enable/Disable Profile column. High impact on performance.
Volume: Enable/Disable Volume column. Total volume traded at price level.
Interlevel Imbalance: Enable/Disable Interlevel Imbalance column. Total volume delta between the current price level and the price level above. High impact on performance.
Depth: Enable/Disable Depth, showing the cumulative supply above the current price and the cumulative demand below. Impact on performance.
Intralevel Imbalance: Enable/Disable Intralevel Imbalance column. Delta between total buy volume and total sell volume. High impact on performance.
Buying Pressure Percent: Enable/Disable Buy Percent column. Percentage of total buy volume compared to total volume.
Imbalance Threshold %: Threshold for highlighting imbalances. Set to 90 to highlight the top 10% of interlevel imbalances and the top and bottom 10% of intra-level imbalances.
Crypto volume precision: Specify the number of decimals to display on the volume of crypto assets
🔹 Key Levels
Key Levels: Enable/Disable KEY column. Very high performance impact.
Previous Week: Enable/Disable High, Low, Middle, and Close of the previous trading week.
Previous Day: Enable/Disable High, Low, Middle, and Settlement of the previous trading day.
Current Day/Session: Enable/Disable Open, High, Low and Middle of the current period.
Open Range: Enable/Disable High and Low of the first candle of the period.
Initial Balance: Enable/Disable High and Low of the first hour of the period.
VWAP: Enable/Disable Volume-weighted average price of the period with 1, 2, and 3 standard deviations.
POC: Enable/Disable Point of Control (price level with the highest volume traded) of the period.
🔹 Time & Sales
Time & Sales: Enable/Disable time and sales panel.
Timezone offset (hours): Enter your time zone\'s offset (+ or −), including a decimal fraction if needed.
Order Size: Set order size filter. Orders smaller than the value are not displayed.
🔶 THANKS
Hi, I'm makit0 coder of this tool and proud member of the LuxAlgo Opensource team, it's an honor to be part of the LuxAlgo family doing something I love as it's writing opensource code and sharing it with the world. I'd like to thank all of you who use, comment on, and vote for all of our open-source tools, and all of you who give us your support.
And of course thanks to the PineCoders family for all the work in front of and behind the scenes that makes the PineScript community what it is, simply the best.
Peace, Love & PineScript!
Market Structure Targets Model [LuxAlgo]The Market Structure Targets Model indicator provides an algorithmic approach to setting targets from market structure shifts (MSS) and market structure breaks (MSB), two popular Smart Money Concept (SMC) concepts. Depending on the target % settings, they can be used as take profit, confirmation levels, or potential reversal points.
🔶 USAGE
Our Market Structure Targets Model scripts provide automated and customizable targets from MSS and MSB. Each displayed target can be used in several ways described in the sub-sections below:
🔹 Take Profit
The targets can be used as take profit levels, where the target distance can be set separately for bullish/bearish MSS/MSB respectively.
🔹 Confirmation Levels
Alternatively, targets can be used as an additional confirmation level of a trend reversal when set at a lower percentage, filtering out fake signals that might be given from market structures. In this way, targets can be used as potential entry levels.
🔹 Potential Reversal Points
In some circumstances, targets being reached can be indicative of trend reversals. The percentage of the targets would be typically set higher to allow for trend exhaustion.
The above examples highlight this usage for bearish reversal scenarios, while the image below highlights it for bullish reversal scenarios.
🔹 Support/Resistance Levels
The targets, being horizontal levels, can also serve as potential support/resistances, with breakouts potentially confirming new trends. It is important to remain observant of the market structure. An MSS or MSB in the opposite direction provides essential information to be included in future decisions.
Using multiple timeframes can help detect longer-term trends. Depending on the user's preference, they can choose the appropriate timeframe for their needs.
Note that Target lines will only be drawn when the Target Level exceeds the close value when it is drawn.
🔹 Maximum Target Duration
The Maximum Target Duration setting removes unreached target levels when the amount of bars since the associated market structure of that target exceeds the user set limit. This effectively allows the removal of any target that might no longer be relevant to newer trends.
🔹 Type: Switch/Hold
This setting is another way to control unreached target levels.
Switch: When a new MSS/MSB is found, the previous target level associated with a market structure with the same direction (bullish/bearish) is deleted if it hasn't been reached.
Hold: Target levels are retained and continuously evaluated when a new MSS/MSB is formed.
The target level will be removed in both cases when the Maximum Target Duration condition is applied.
The above example shows the case when the Type setting is set to Switch , while in the example below, it is set to Hold .
🔶 DETAILS
🔹 Market Structure
Market structures are commonly classified as follows:
Market Structure Shift (MSS), also referred to as Change of Character (CHoCH)
Market Structure Break (MSB), also referred to as Break of Structure (BOS)
MSS indicates a shift in the market trend, confirming trend reversals. Conversely, MSB occurs once a trend is already determined, confirming new higher highs/lower lows.
🔹 Targets
A: Highest/lowest between the extremities of the MSS/MSB line
B: Price value of the MSS/MSB line
The distance between A and B is projected on the opposite side of the MSS/MSB line, adjusted with a percentage that can be set by the user. The above example used 100% of the distance between A and B.
The Target Percentage of MSS and MSB can be set separately for bullish or bearish market structures.
🔶 SETTINGS
Swings: Period used for the swing detection, with higher values returning longer-term Swing Levels.
Type: the Switch/Hold setting controls unattained target levels
Maximum Target Duration: removes the target lines when the amount of bars since the drawing of the target exceeds the limit and the target has not been reached
🔹 Market Structure Shift (MSS)
Bullish: Toggle, color setting, % Target
Bearish: Toggle, color setting, % Target
🔹 Market Structure Break (MSB)
Bullish: Toggle, color setting, % Target
Bearish: Toggle, color setting, % Target
Wave Consolidation [LuxAlgo]The Wave Consolidation indicator uses market profiles to highlight consolidation zones based on upward and downward moves determined when a Higher-High or Lower-Low is created.
Users can control the amount of consolidation zones to display and the sensitivity of the swing point detection used to return those zones.
🔶 USAGE
These zones are intended as areas of interest to traders where price has seen historical interactions, which can be interpreted as support and resistance. By identifying these areas of interest before the price returns to them, traders are able to anticipate and prepare for various scenarios and respond dynamically to the behavior of the market, as seen below.
Rejection: A quick move away from the zone may indicate that the area is either overvalued or undervalued, leading to a fast movement in the opposite direction.
Breakthrough: Moving beyond a zone could indicate acceptance at that specific price, potentially signaling a shift in momentum or the start of a new trend. In a strong major trend, zones created from smaller trends could be used as price targets for taking profit and managing risk.
Consolidation: Holding these zones might suggest a market in balance at these levels, this could lead to opportunities for range-bound trading.
Below is an example of the Rejection and Consolidation scenarios described above.
Note: By analyzing the tests and retests of these zones, traders can also gain further insight into where participants are interacting in the market.
🔶 DETAILS
The full process for acquiring and managing these zones is described in the sub-sections below.
🔹 Creation
By only considering market movements creating a higher-high or lower-low, we can identify meaningful, directional, moves which can then be used to calculate zones.
Once a move is identified, the script calculates a volume profile spanning the length of the given move.
The width of the zones is determined starting from the POC of the profile and expanding outwards until the value of the profile's row falls below the profile's average.
Note: By increasing the "Multiplier" Input, Users can increase the threshold the script uses to determine zone width in multiples of Standard Deviations above the Average.
While this area is similar to a VP Value Area, it is not intended to replicate a value zone. The calculation is not concerned with capturing any % of the total profile's volume within the zone and only analyzes based on a fixed inclusion threshold.
🔹 Management
To keep clutter to a minimum, If a new zone overlaps a recently created zone, the zones are grouped as one. This is especially helpful in areas where prices are ranging, creating multiple zones in a very similar area.
Zones before management:
Zones after management:
🔹 Deletion
Just because a zone is crossed, does not make it immediately unimportant!
Once a Zone is mitigated (crossed in the opposite direction of its bias) it is reduced to a single dotted line representing the outer threshold for the zone. These lines are important to watch, as the price will often retest a break. For this reason, they will stay on the chart until the next swing point is detected when they will finally be deleted for good.
Below is an example of activity around a broken zone before it is deleted.
Below is the same example 2bBars later , once the new swing is confirmed, the dotted lines are deleted and new zones are created.
Notice how the newly formed resistance zone is in the same area where we noticed sellers previously.
🔶 SETTINGS
🔹 Structure
Display Structure: Determines if swing structures are displayed.
Structure Length: Sets Length for structure identification.
🔹 Zones
Volume-Based Calculations: Opt to use a "Volume" based Profile Calculation instead of the default "Price Action" based Calculation.
Display Count: Sets the specific number of bullish and bearish zones to display on the chart.
Multiplier: Sets the multiplier to use for the value cut-off for determining zone boundaries.
🔹 Style
Display Average Lines: Toggles on/off the average (mid) lines for the zones.
Market Sentiment Technicals [LuxAlgo]The Market Sentiment Technicals indicator synthesizes insights from diverse technical analysis techniques, including price action market structures, trend indicators, volatility indicators, momentum oscillators, and more.
The indicator consolidates the evaluated outputs from these techniques into a singular value and presents the combined data through an oscillator format, technical rating, and a histogram panel featuring the sentiment of each component alongside the overall sentiment.
🔶 USAGE
The Market Sentiment Technicals indicator is a tool able to swiftly and easily gauge market sentiment by consolidating the individual sentiment from multiple technical analysis techniques applied to market data into a single value, allowing users to asses if the market is uptrending, consolidating, or downtrending.
The tool includes various components and presentation formats, each described in the sub-sections below.
🔹Indicators Sentiment Panel
The indicators sentiment panel provides normalized sentiment scores for each supported indicator, along with a synthesized representation derived from the average of all individual normalized sentiments.
🔹Market Sentiment Meter
The market sentiment meter is obtained from the synthesized representation derived from the average of all individual normalized sentiments. It allows users to quickly and easily gauge the overall market sentiment.
🔹Market Sentiment Oscillator
The market sentiment oscillator provides a visual means to monitor the current and historical strength of the market. It assists in identifying the trend direction, trend momentum, and overbought and oversold conditions, aiding in the anticipation of potential trend reversals.
Divergence occurs when there is a difference between what the price action is indicating and what the market sentiment oscillator is indicating, helping traders assess changes in the price trend.
🔶 DETAILS
The indicator employs a range of technical analysis techniques to interpret market data. Each group of indicators provides valuable insights into different aspects of market behavior.
🔹Momentum Indicators
Momentum indicators assess the speed and change of price movements, often indicating whether a trend is strengthening or weakening.
Relative Strength Index (RSI): Measures the magnitude of recent price changes to evaluate overbought or oversold conditions.
Stochastic %K: Compares the closing price to the range over a specified period to identify potential reversal points.
Stochastic RSI Fast: Combines features of Stochastic oscillators and RSI to gauge both momentum and overbought/oversold levels efficiently.
Commodity Channel Index (CCI): Measures the deviation of an asset's price from its statistical average to determine trend strength and overbought and oversold conditions.
Bull Bear Power: Evaluates the strength of buying and selling pressure in the market.
🔹Trend Indicators
Trend indicators help traders identify the direction of a market trend.
Moving Averages: Provides a smoothed representation of the underlying price data, aiding in trend identification and analysis.
Bollinger Bands: Consists of a middle band (typically a simple moving average) and upper and lower bands, which represent volatility levels of the market.
Supertrend: A trailing stop able to identify the current direction of the trend.
Linear Regression: Fits a straight line to past data points to predict future price movements and identify trend direction.
🔹Market Structures
Market Structures: Analyzes the overall pattern of price movements, including Break of Structure (BOS), Market Structure Shifts (MSS), also referred to as Change of Character (CHoCH), aiding in identifying potential market turning and continuation points.
🔹The Normalization Technique
The normalization technique employed for trend indicators relies on buy-sell signals. The script tracks price movements and normalizes them based on these signals.
normalize(buy, sell, smooth)=>
var os = 0
var float max = na
var float min = na
os := buy ? 1 : sell ? -1 : os
max := os > os ? close : os < os ? max : math.max(close, max)
min := os < os ? close : os > os ? min : math.min(close, min)
ta.sma((close - min)/(max - min), smooth) * 100
In this Pine Script snippet:
The variable os tracks market sentiment, taking a value of 1 for buy signals and -1 for sell signals, indicating bullish and bearish sentiments, respectively.
max and min are used to identify extremes in sentiment and are updated based on changes in os . When market sentiment shifts from buying to selling (or vice versa), max and min adjust accordingly.
Normalization is achieved by comparing current price levels to historical extremes in sentiment. The result is smoothed by default using a 3-period simple moving average. Users have the option to customize the smoothing period via the script settings input menu.
🔶 SETTINGS
🔹Generic Settings
Timeframe: This option selects the timeframe for calculating sentiment. If a timeframe lower than the chart's is chosen, calculations will be based on the chart's timeframe.
Horizontal Offset: Determines the distance at which the visual components of the indicator will be displayed from the primary chart.
Gradient Colors: Allows customization of gradient colors.
🔹Indicators Sentiment Panel
Indicators Sentiment Panel: Toggle the visibility of the indicators sentiment panel.
Panel Height: Determines the height of the panel.
🔹Market Sentiment Meter
Market Sentiment Meter: Toggle the visibility of the market sentiment meter (technical ratings in the shape of a speedometer).
🔹Market Sentiment Oscillator
Market Sentiment Oscillator: Toggle the visibility of the market sentiment oscillator.
Show Divergence: Enables detection of divergences based on the selected option.
Oscillator Line Width: Customization option for the line width.
Oscillator Height: Determines the height of the oscillator.
🔹Settings for Individual Components
In general,
Source: Determines the data source for calculations.
Length: The period to be used in calculations.
Smoothing: Degree of smoothness of the evaluated values.
🔹Normalization Settings - Trend Indicators
Smoothing: The period used in smoothing normalized values, where normalization is applied to moving averages, Bollinger Bands, Supertrend, VWAP bands, and market structures.
🔶 LIMITATIONS
Like any technical analysis tool, the Market Sentiment Technicals indicator has limitations. It's based on historical data and patterns, which may not always accurately predict future market movements. Additionally, market sentiment can be influenced by various factors, including economic news, geopolitical events, and market psychology, which may not be fully captured by technical analysis alone.
Anchored Monte Carlo Shuffled Projection [LuxAlgo]The Anchored Monte Carlo Shuffled Projection tool randomly simulates future price points based on historical bar movements made before a user-anchored point in time.
By anchoring our data and projections to a single point in time, users can better understand and reflect on how the price played out while taking into consideration our random simulations.
🔶 USAGE
After selecting the indicator to apply to the chart, you will be prompted to "Set the Anchor Point". Do so by clicking on the desired location on your chart, only time is used as the anchor point.
Note: To select a new anchor point when applied to the chart, click on the 'More' dropdown next to the indicator status bar (○○○), then select "Reset points...".
Alternate Method: You are also able to click and drag the vertical line that displays on the anchor point bar when the indicator is highlighted.
By randomly simulating bar movements, a range is developed of potential price action which could be utilized to locate future price development as well as potential support/resistance levels.
Performing numerous simulations and taking the average at each step will converge toward the result highlighted by the "Average Line", and can point out where the price might develop, assuming the trend and amount of volatility persist.
Current closing price + Sum of changes in the calculation window
This constraint will cause the simulations always to display an endpoint consistent with the current lookback's slope.
While this may be helpful to some traders, this indicator includes an option to produce a less biased range, as seen below:
🔶 DETAILS
The Anchored Monte Carlo Shuffled Projection tool creates simulations based on prices within a user-set lookback window originating at the specified anchor point. Simulations are done as follows:
Collect each bar's price changes in the user-set window.
Randomize the order of each change in the window.
Project the cumulative sum of the shuffled changes from the current closing price.
Collect data on each point along the way.
This is the process for the Default calculation; for the 'Randomize Direction' calculation, when added onto the front for every other change, the value is inverted, creating the randomized endpoints for each simulation.
The script contains each simulation's data for that bar, with a maximum of 1000 simulations.
To get a glimpse behind the scenes, each simulation (up to 99) can be viewed using the 'Visualize Simulations' Options, as seen below.
Because the script holds the full simulation data, the script can also calculate this data, such as standard deviations.
In this script the Standard deviation lines are the average of all standard deviations across the vertical data groups, this provides a singular value that can be displayed a distance away from the simulation center line.
🔶 SETTINGS
Lookback: Sets the number of Bars to include in calculations.
Simulation Count: Sets the number of randomized simulations to calculate. (Max 1000)
Randomize Direction: See Details Above. Creates a more 'Normalized' Distribution
Visualize Simulations: See Details Above. Turns on Visualizations, and colors are randomly generated. Visualized max does not cap the calculated max. If 1000 simulations are used, the data will be from 1000 simulations, however, only the last 99 simulations will be visualized.
🔹 Standard Deviations
Standard Deviation Multiplier: Sets the multiplier to use for the Standard Deviation distance away from the center line.
🔹 Style
Extend Lines: Extends the Simulated Value Lines into the future for further reference and analysis.
Breakouts with Tests & Retests [LuxAlgo]The Breakouts Tests & Retests indicator highlights tests and retests of levels constructed from detected swing points. A swing area of interest switches colors when a breakout occurs.
Users can control the sensitivity of the swing point detection and the width of the swing areas.
🔶 USAGE
When a Swing point is detected, an area of interest is drawn, colored green for a bullish swing and red when bearish.
A test is confirmed when the opening price is situated in the area of interest, and the closing price is above or below the area, depending on whether it is a bullish or bearish swing. Tests are highlighted with a solid-colored triangle.
A breakout is confirmed when the price closes in the opposite position, below or above the area, in which case the area will switch colors.
If the opening price is located within the area and the closing price closes outside the area, in the same direction as the breakout, this is considered a retest . Retests are highlighted with a hollow-colored triangle.
Note that tests/retests do not act on wicks. The main factor is that the opening price is in the area of interest, while the closing price is outside.
🔹 Area Of Interest Width
The user can adjust the width of the swing areas. Changing the " Width " is a fast and easy way to find different areas of interest.
A higher "Multiple" setting would return a wider area, allowing price to develop within it for a longer period of time and potentially provide later test signals.
When a swing area is broken, a higher "Width" setting can make it more complicated for the price to break it again, allowing a swing area to remain valid for a longer period of time thus potentially providing more retest signals.
🔶 DETAILS
Generally, only one bullish/bearish pattern can be active at a time. This means that no more than 1 bullish or bearish area will be active.
The " Display " settings, however, can help control how areas of different types are displayed.
Bullish AND Bearish: Both, bullish and bearish patterns can be drawn at the same time
Bullish OR Bearish: Only 1 bullish or 1 bearish pattern is drawn at a time
Bullish: Only bullish patterns
Bearish: Only bearish patterns
🔹 Test/Retest Labels
The user can adjust the settings so only the latest test/retest label is shown or set a minimum number of bars until the next test/retest can be drawn.
🔹 Maximum Bars
Users can set a limit of bars for when there is no test/retest in that period; the area of interest won't be updated anymore and will be available and ready for the next Swing.
An option for pulling the area back to the last retest is included.
🔶 SETTINGS
Display: Determines which swing areas are displayed by the indicator. See the "DETAILS" section for more information
Multiple: Adjusts the width of the areas of interest
Maximum Bars: Limit of bars for when there is no test/retest
Display Test/Retest Labels: Show all labels or just the last test/retest label associated with a swing area
Minimum Bars: Minimum bars required for a subsequent test/retest label are allowed to be displayed
Set Back To Last Retest: When after "Maximum Bars" no test/retest is found, place the right side of the area at the last test/retest
🔹 Swings
Left: x amount of wicks on the left of a potential Swing need to be higher/lower for a Swing to be confirmed.
Right: The number of wicks on the right of a potential swing needs to be higher/lower for a Swing to be confirmed.
🔹 Style
Bullish: color for test period (before a breakout) / retest period (after a breakout)
Bearish: color for test period (before a breakout) / retest period (after a breakout)
Label Size
Multi-Chart Widget [LuxAlgo]The Multi-Chart Widget tool is a comprehensive solution crafted for traders and investors looking to analyze multiple financial instruments simultaneously. With the capability to showcase up to three additional charts, users can customize each chart by selecting different financial instruments, and timeframes.
Users can add various widely used technical indicators to the charts such as the relative strength index, Supertrend, moving averages, Bollinger Bands...etc.
🔶 USAGE
The tool offers traders and investors a comprehensive view of multiple charts simultaneously. By displaying up to three additional charts alongside the primary chart, users can analyze assets across different timeframes, compare their performance, and make informed decisions.
Users have the flexibility to choose from various customizable chart types, including the recently added "Volume Candles" option.
This tool allows adding to the chart some of the most widely used technical indicators, such as the Supertrend, Bollinger Bands, and various moving averages.
In addition to the charting capabilities, the tool also features a dynamic statistic panel that provides essential metrics and key insights into the selected assets. Users can track performance indicators such as relative strength, trend, and volatility, enabling them to identify trends, patterns, and trading opportunities efficiently.
🔶 DETAILS
A brief overview of the indicators featured in the statistic panel is given in the sub-section below:
🔹Dual Supertrend
The Dual Supertrend is a modified version of the Supertrend indicator, which is based on the concept of trend following. It generates buy or sell signals by analyzing the asset's price movement. The Dual Supertrend incorporates two Supertrend indicators with different parameters to provide potentially more accurate signals. It helps traders identify trend reversals and establish trend direction in a more responsive manner compared to a single Supertrend.
🔹Relative Strength Index
The Relative Strength Index is a momentum oscillator that measures the speed and change of price movements. RSI oscillates between 0 and 100 and is typically used to identify overbought or oversold conditions in a market. Traditionally, RSI values above 70 are considered overbought, suggesting that the asset may be due for a reversal or correction, while RSI values below 30 are considered oversold, indicating potential buying opportunities.
🔹Volatility
Volatility in trading refers to the degree of variation or fluctuation in the price of a financial instrument, such as a stock, currency pair, or commodity, over a certain period of time. It is a measure of the speed and magnitude of price changes and reflects the level of uncertainty or risk in the market. High volatility implies that prices are experiencing rapid and significant movements, while low volatility suggests that prices are relatively stable and are not changing much. Traders often use volatility as an indicator to assess the potential risk and return of an investment and to make informed decisions about when to enter or exit trades.
🔹R-Squared (R²)
R-squared, also known as the coefficient of determination, is a statistical measure that indicates the proportion of the variance in the dependent variable that is predictable from the independent variable(s). In other words, it quantifies the goodness of fit of a regression model to the observed data. R-squared values range from %0 to %100, with higher values indicating a better fit of the model to the data. An R-squared of 100% means that all movements of a security are completely explained by movements in the index, while an R-squared value of %0 indicates that the model does not explain any of the variability in the dependent variable.
In simpler terms, in investing, a high R-squared, from 85% to 100%, indicates that the stock’s or fund’s performance moves relatively in line with the index. Conversely, a low R-squared (around 70% or less) indicates that the fund's performance tends to deviate significantly from the movements of the index.
🔶 SETTINGS
🔹Mini Chart(s) Generic Settings
Mini Charts Separator: This option toggles the visibility of the separator lines.
Number Of Bars: Specifies the number of bars to be displayed for each mini chart.
Horizontal Offset: Determines the distance at which the mini charts will be displayed from the primary chart.
🔹Mini Chart Settings: Top - Middle - Bottom
Mini Chart Top/Middle/Bottom: Toggle the visibility of the selected mini chart.
Symbol: Choose the financial instrument to be displayed in the mini chart. If left as an empty string, it will default to the current chart instrument.
Timeframe: This option determines the timeframe used for calculating the mini charts. If a timeframe lower than the chart's timeframe is selected, the calculations will be based on the chart's timeframe.
Chart Type: Selection from various chart types for the mini charts, including candles, volume candles, line, area, columns, high-low, and Heikin Ashi.
Chart Size: Determines the size of the mini chart.
Technical Indicator: Selection from various technical indicators to be displayed on top of the mini charts.
Note : Chart sizing is relative to other mini charts. For example, If all the mini charts are sized to x5 relative to each other, the result will be the same as if they were all sized as x1. This is because the relative proportions between the mini charts remain consistent regardless of their absolute sizes. Therefore, their positions and sizes relative to each other remain unchanged, resulting in the same visual representation despite the differences in absolute scale.
🔹Supertrend Settings
ATR Length: is the lookback length for the ATR calculation.
Factor: is what the ATR is multiplied by to offset the bands from price.
Color: color customization option.
🔹Moving Average Settings
Type: is the type of the moving average, available types of moving averages include SMA (Simple Moving Average), EMA (Exponential Moving Average), RMA (Root Mean Square Moving Average), HMA (Hull Moving Average), WMA (Weighted Moving Average), and VWMA (Volume Weighted Moving Average).
Source: Determines what data from each bar will be used in calculations.
Length: The time period to be used in calculating the Moving Average.
Color: Color customization option.
🔹Bollinger Bands Settings
Basis Type: Determines the type of Moving Average that is applied to the basis plot line.
Source: Determines what data from each bar will be used in calculations.
Length: The time period to be used in calculating the Moving Average which creates the base for the Upper and Lower Bands.
StdDev: The number of Standard Deviations away from the Moving Average that the Upper and Lower Bands should be.
Color: Color customization options for basis, upper and lower bands.
🔹Mini Chart(s) Panel Settings
Mini Chart(s) Panel: Controls the visibility of the panel containing the mini charts.
Dual Supertrend: Toggles the display of the evaluated dual super trend, based on the super trend settings provided below the option. The definitions for the options are the same as stated above for the super trend.
Relative Strength Index: Toggles the display of the evaluated RSI, based on the source and length settings provided below the option.
Volatility: Toggles the display of the calculated Volatility, based on the length settings provided below the option.
R-Squared: Toggles the display of the calculated R-Squared (R²), based on the length settings provided below the option.
🔶 LIMITATIONS
The tool allows users to display mini charts featuring various types of instruments alongside the primary chart instrument. However, there's a limitation: the selected primary chart instrument must have an ACTIVE market status. Alternatively, if the primary chart instrument is not active, the mini chart instruments must belong to the same exchange and have the same type as the primary chart instrument.
ICT Immediate Rebalance Toolkit [LuxAlgo]The ICT Immediate Rebalance Toolkit is a comprehensive suite of tools crafted to aid traders in pinpointing crucial trading zones and patterns within the market.
The ICT Immediate Rebalance, although frequently overlooked, emerges as one of ICT's most influential concepts, particularly when considered within a specific context. The toolkit integrates commonly used price action tools to be utilized in conjunction with the Immediate Rebalance patterns, enriching the capacity to discern context for improved trading decisions.
The ICT Immediate Rebalance Toolkit encompasses the following Price Action components:
ICT Immediate Rebalance
Buyside/Sellside Liquidity
Order Blocks & Breaker Blocks
Liquidity Voids
ICT Macros
🔶 USAGE
🔹 ICT Immediate Rebalance
What is an Immediate Rebalance?
Immediate rebalances, a concept taught by ICT, hold significant importance in decision-making. To comprehend the concept of immediate rebalance, it's essential to grasp the notion of the fair value gap. A fair value gap arises from market inefficiencies or imbalances, whereas an immediate rebalance leaves no gap, no inefficiencies, or no imbalances that the price would need to return to.
Rule of Thumb
After an immediate rebalance, the expectation is for two extension candles to follow; otherwise, the immediate rebalance is considered failed. It's important to highlight that both failed and successful immediate rebalances, when considered within a context, are significant signatures in trading.
Immediate rebalances can occur anywhere and in any timeframe.
🔹 Buyside/Sellside Liquidity
In the context of Inner Circle Trader's teachings, liquidity primarily refers to the presence of stop losses or pending orders, that indicate concentrations of buy or sell orders at specific price levels. Institutional traders, like banks and large financial entities, frequently aim for these liquidity levels or pools to accumulate or distribute their positions.
Buyside liquidity denotes a chart level where short sellers typically position their stops, while Sellside liquidity indicates a level where long-biased traders usually place their stops. These zones often serve as support or resistance levels, presenting potential trading opportunities.
The presentation applied here is the multi-timeframe version of our previously published Buyside-Sellside-Liquidity script.
🔹 Order Blocks & Breaker Blocks
Order Blocks and Breaker Blocks hold significant importance in technical analysis and play a crucial role in shaping market behavior.
Order blocks are fundamental elements of price action analysis used by traders to identify key levels in the market where significant buying or selling activity has occurred. These blocks represent areas on a price chart where institutional traders, banks, or large market participants have placed substantial buy or sell orders, leading to a temporary imbalance in supply and demand.
Breaker blocks, also known as liquidity clusters or pools, complement order blocks by identifying zones where liquidity is concentrated on the price chart. These areas, formed from mitigated order blocks, often act as significant barriers to price movement, potentially leading to price stalls or reversals in the future.
🔹 Liquidity Voids
Liquidity voids are sudden price changes when the price jumps from one level to another. Liquidity voids will appear as a single or a group of candles that are all positioned in the same direction. These candles typically have large real bodies and very short wicks, suggesting very little disagreement between buyers and sellers.
Here is our previously released Liquidity-Voids script.
🔹 ICT Macros
In the context of ICT's teachings, a macro is a small program or set of instructions that unfolds within an algorithm, which influences price movements in the market. These macros operate at specific times and can be related to price runs from one level to another or certain market behaviors during specific time intervals. They help traders anticipate market movements and potential setups during specific time intervals.
Here is our previously released ICT-Macros script.
🔶 SETTINGS
🔹 Immediate Rebalances
Immediate Rebalances: toggles the visibility of the detected immediate rebalance patterns.
Bullish, and Bearish Immediate Rebalances: color customization options.
Wicks 75%, %50, and %25: color customization options of the wick price levels for the detected immediate rebalance.
Ignore Price Gaps: ignores price gaps during calculation.
Confirmation (Bars): specifies the number of bars required to confirm the validation of the detected immediate rebalance.
Immediate Rebalance Icon: allows customization of the size of the icon used to represent the immediate rebalance.
🔹 Buyside/Sellside Liquidity
Buyside/Sellside Liquidity: toggles the visibility of the buy-side/sell-side liquidity levels.
Timeframe: this option is to identify liquidity levels from higher timeframes. If a timeframe lower than the chart's timeframe is selected, calculations will be based on the chart's timeframe.
Detection Length: lookback period used for the detection.
Margin: sets margin/sensitivity for the liquidity levels.
Buyside/Sellside Liquidity Color: color customization option for buy-side/sell-side liquidity levels.
Visible Liquidity Levels: allows customization of the visible buy-side/sell-side liquidity levels.
🔹 Order Blocks & Breaker Blocks
Order Blocks: toggles the visibility of the order blocks.
Breaker Blocks: toggles the visibility of the breaker blocks.
Swing Detection Length: lookback period used for the detection of the swing points used to create order blocks & breaker blocks.
Mitigation Price: allows users to select between the closing price or the wick of the candle.
Use Candle Body in Detection: allows users to use candle bodies as order block areas instead of the full candle range.
Remove Mitigated Order Blocks & Breaker Blocks: toggles the visibility of the mitigated order blocks & breaker blocks.
Order Blocks: Bullish, Bearish Color: color customization option for order blocks.
Breaker Blocks: Bullish, Bearish Color: color customization option for breaker blocks.
Visible Order & Breaker Blocks: allows customization of the visible order & breaker blocks.
Show Order Blocks & Breaker Blocks Labels: toggles the visibility of the order blocks & breaker blocks labels.
🔹 Liquidity Voids
Liquidity Voids: toggles the visibility of the liquidity voids.
Liquidity Voids Width Filter: filtering threshold while detecting liquidity voids.
Ignore Price Gaps: ignores price gaps during calculation.
Remove Mitigated Liquidity Voids: remove mitigated liquidity voids.
Bullish, Bearish, and Mitigated Liquidity Voids: color customization option..
Liquidity Void Labels: toggles the visibility of the liquidity voids labels.
🔹 ICT Macros
London and New York (AM, Launch, and PM): toggles the visibility of specific macros, allowing users to customize macro colors.
Macro Top/Bottom Lines, Extend: toggles the visibility of the macro's pivot high/low lines and allows users to extend the pivot lines.
Macro Mean Line: toggles the visibility of the macro's mean (average) line.
Macro Labels: toggles the visibility of the macro labels, allowing customization of the label size.
🔶 RELATED SCRIPTS
ICT-Killzones-Toolkit
Smart-Money-Concepts
Thanks to our community for recommending this script. For more conceptual scripts and related content, we welcome you to explore by visiting >>> LuxAlgo-Scripts .
Reversal Candlestick Structure [LuxAlgo]The Reversal Candlestick Structure indicator detects multiple candlestick patterns occurring when trends are most likely to experience a reversal in real-time. The reversal detection method includes various settings allowing users to adjust the reversal detection algorithm more precisely.
A dashboard showing the percentage of patterns detected as reversals is also included.
🔶 USAGE
Candlestick patterns are ubiquitous to technical analysts, allowing them to detect trend continuations, reversals, and indecision.
The proposed tool effectively detects reversals by using the confluence between candlestick patterns and a reversal detection method based on the stochastic oscillator, acting as a filter for the patterns. If a candlestick pattern occurs while conditions suggest a potential reversal then the pattern is highlighted.
The displayed candle coloring allows users to observe the reversal detection method, with colored candles indicating potential reversals.
Users wanting to detect longer-term reversals can use a higher "Trend Length" setting, this can however lead to an increased amount of displayed candlestick patterns.
To prevent false positives users also have control over a "Threshold" setting in a range between (0, 100), with values closer to 100 preventing candlesticks from being detected at the start of trends.
The "Warmup Length" serves a similar purpose, and aims to prevent sudden moves to be classified as reversals. Higher values of this setting will require trends to be established for a longer period of time for reversal conditions to be detected.
🔹 Dashboard
To evaluate the role of individual candlestick patterns as potential reversal signals relative to the proposed reversal detection method, a dashboard displaying the percentage of candlestick patterns displayed (that occur when a potential reversal is detected) over the total amount detected.
Hovering on the dashboard cells of the "Reversal %" column allows displaying the total amount of patterns detected.
🔶 CANDLESTICKS PATTERNS
This tool detects 16 popular candlestick patterns, each listed in the sub-sections below.
🔹 Bullish Patterns
Hammer - A bullish reversal pattern that forms after a decline, characterized by a small body at the upper end of the trading range and a long lower shadow.
Inverted Hammer - A bullish reversal pattern that forms after a downtrend, featuring a small body at the lower end of the trading range and a long upper shadow.
Bullish Engulfing - A bullish reversal pattern where a small bearish candlestick is followed by a larger bullish candlestick that completely engulfs the previous candle.
Rising 3 - A bullish continuation pattern that consists of a long bullish candlestick followed by three smaller bearish candlesticks and then another long bullish candlestick.
3 White Soldiers - A bullish reversal pattern consisting of three consecutive long bullish candlesticks, each opening within the previous candle's body and closing higher.
Morning Star - A bullish reversal pattern made up of three candlesticks: a long bearish candlestick, followed by a short candlestick, and then a long bullish candlestick.
Bullish Harami - A bullish reversal pattern where a small bullish candlestick is completely within a previous larger bearish candlestick.
Tweezer Bottom - A bullish reversal pattern identified by an initial bullish candle, followed by a bearish candle, both having equal lows.
🔹 Bearish Patterns
Hanging Man - A bearish reversal pattern that forms after an uptrend, characterized by a small body at the upper end of the trading range and a long lower shadow.
Shooting Star - A bearish reversal pattern that forms after an uptrend, featuring a small body at the lower end of the trading range and a long upper shadow.
Bearish Engulfing - A bearish reversal pattern where a small bullish candlestick is followed by a larger bearish candlestick that completely engulfs the previous candle.
Falling 3 - A bearish continuation pattern that consists of a long bearish candlestick followed by three smaller bullish candlesticks and then another long bearish candlestick.
3 Black Crows - A bearish reversal pattern consisting of three consecutive long bearish candlesticks, each opening within the previous candle's body and closing lower.
Evening Star - A bearish reversal pattern made up of three candlesticks: a long bullish candlestick, followed by a short candlestick, and then a long bearish candlestick.
Bearish Harami - A bearish reversal pattern where a small bearish candlestick is completely within a previous larger bullish candlestick.
Tweezer Top - A bearish reversal pattern is identified by an initial bullish candle, followed by a bearish candle, both having equal highs."
🔶 SETTINGS
🔹 Patterns
Group including toggles for each of the supported candlestick patterns. Enabled toggles will allow detection of the associated candlestick pattern.
🔹 Reversal Detection
Trend Length: Determines the sensitivity of the reversal detection method to shorter-term variation, with higher values returning a detection method more sensitive to longer-term trends.
Threshold: Determines how easy it is for the reversal detection method to consider a trend at an extreme point.
Warmup Length: Warmup period in the reversal detection method, longer values will require a longer-term trend to detect potential reversals.
🔹 Style
Color Candles: Enable candle coloring on the user chart based on the reversal detection method.
Use Gradient: Use a gradient as candle coloring.
Label Size: Size of the labels displaying the detected candlesticks patterns.
🔹 Dashboard
Show Dashboard: Display the dashboard on the user chart when enabled.
Location: Dashboard location on the user chart.
Size: Size of the displayed dashboard.
Ichimoku Theories [LuxAlgo]The Ichimoku Theories indicator is the most complete Ichimoku tool you will ever need. Four tools combined into one to harness all the power of Ichimoku Kinkō Hyō.
This tool features the following concepts based on the work of Goichi Hosoda:
Ichimoku Kinkō Hyō: Original Ichimoku indicator with its five main lines and kumo.
Time Theory: automatic time cycle identification and forecasting to understand market timing.
Wave Theory: automatic wave identification to understand market structure.
Price Theory: automatic identification of developing N waves and possible price targets to understand future price behavior.
🔶 ICHIMOKU KINKŌ HYŌ
Ichimoku with lines only, Kumo only and both together
Let us start with the basics: the Ichimoku original indicator is a tool to understand the market, not to predict it, it is a trend-following tool, so it is best used in trending markets.
Ichimoku tells us what is happening in the market and what may happen next, the aim of the tool is to provide market understanding, not trading signals.
The tool is based on calculating the mid-point between the high and low of three pre-defined ranges as the equilibrium price for short (9 periods), medium (26 periods), and long (52 periods) time horizons:
Tenkan sen: middle point of the range of the last 9 candles
Kinjun sen: middle point of the range of the last 26 candles
Senkou span A: middle point between Tankan Sen and Kijun Sen, plotted 26 candles into the future
Senkou span B: midpoint of the range of the last 52 candles, plotted 26 candles into the future
Chikou span: closing price plotted 26 candles into the past
Kumo: area between Senkou pans A and B (kumo means cloud in Japanese)
The most basic use of the tool is to use the Kumo as an area of possible support or resistance.
🔶 TIME THEORY
Current cycles and forecast
Time theory is a critical concept used to identify historical and current market cycles, and use these to forecast the next ones. This concept is based on the Kihon Suchi (translating to "Basic Numbers" in Japanese), these are 9 and 26, and from their combinations we obtain the following sequence:
9, 17, 26, 33, 42, 51, 65, 76, 129, 172, 200, 257
The main idea is that the market moves in cycles with periods set by the Kihon Suchi sequence.
When the cycle has the same exact periods, we obtain the Taito Suchi (translating to "Same Number" in Japanese).
This tool allows traders to identify historical and current market cycles and forecast the next one.
🔹 Time Cycle Identification
Presentation of 4 different modes: SWINGS, HIGHS, KINJUN, and WAVES .
The tool draws a horizontal line at the bottom of the chart showing the cycles detected and their size.
The following settings are used:
Time Cycle Mode: up to 7 different modes
Wave Cycle: Which wave to use when WAVE mode is selected, only active waves in the Wave Theory settings will be used.
Show Time Cycles: keep a cleaner chart by disabling cycles visualisation
Show last X time cycles: how many cycles to display
🔹 Time Cycle Forecast
Showcasing the two forecasting patterns: Kihon Suchi and Taito Suchi
The tool plots horizontal lines, a solid anchor line, and several dotted forecast lines.
The following settings are used:
Show time cycle forecast: to keep things clean
Forecast Pattern: comes in two flavors
Kihon Suchi plots a line from the anchor at each number in the Kihon Suchi sequence.
Taito Suchi plot lines from the anchor with the same size detected in the anchored cycle
Anchor forecast on last X time cycle: traders can place the anchor in any detected cycle
🔶 WAVE THEORY
All waves activated with overlapping
The main idea behind this theory is that markets move like waves in the sea, back and forth (making swing lows and highs). Understanding the current market structure is key to having realistic expectations of what the market may do next. The waves are divided into Simple and Complex.
The following settings are used:
Basic Waves: allows traders to activate waves I, V and N
Complex Waves: allows traders to activate waves P, Y and W
Overlapping waves: to avoid missing out on any of the waves activated
Show last X waves: how many waves will be displayed
🔹 Basic Waves
The three basic waves
The basic waves from which all waves are made are I, V, and N
I wave: one leg moves
V wave: two legs move, one against the other
N wave: Three legs move, push, pull back, and another push
🔹 Complex Waves
Three complex waves
There are other waves like
P wave: contracting market
Y wave: expanding market
W wave: double top or double bottom
🔶 PRICE THEORY
All targets for the current N wave with their calculations
This theory is based on identifying developing N waves and predicting potential price targets based on that developing wave.
The tool displays 4 basic targets (V, E, N, and NT) and 3 extended targets (2E and 3E) according to the calculations shown in the chart above. Traders can enable or disable each target in the settings panel.
🔶 USING EVERYTHING TOGETHER
Please DON'T do this. This is not how you use it
Now the real example:
Daily chart of Nasdaq 100 futures (NQ1!) with our Ichimoku analysis
Time, waves, and price theories go together as one:
First, we identify the current time cycles and wave structure.
Then we forecast the next cycle and possible key price levels.
We identify a Taito Suchi with both legs of exactly 41 candles on each I wave, both together forming a V wave, the last two I waves are part of a developing N wave, and the time cycle of the first one is 191 candles. We forecast this cycle into the future and get 22nd April as a key date, so in 6 trading days (as of this writing) the market would have completed another Taito Suchi pattern if a new wave and time cycle starts. As we have a developing N wave we can see the potential price targets, the price is actually between the NT and V targets. We have a bullish Kumo and the price is touching it, if this Kumo provides enough support for the price to go further, the market could reach N or E targets.
So we have identified the cycle and wave, our expectations are that the current cycle is another Taito Suchi and the current wave is an N wave, the first I wave went for 191 candles, and we expect the second and third I waves together to amount to 191 candles, so in theory the N wave would complete in the next 6 trading days making a swing high. If this is indeed the case, the price could reach the V target (it is almost there) or even the N target if the bulls have the necessary strength.
We do not predict the future, we can only aim to understand the current market conditions and have future expectations of when (time), how (wave), and where (price) the market will make the next turning point where one side of the market overcomes the other (bulls vs bears).
To generate this chart, we change the following settings from the default ones:
Swing length: 64
Show lines: disabled
Forecast pattern: TAITO SUCHI
Anchor forecast: 2
Show last time cycles: 5
I WAVE: enabled
N WAVE: disabled
Show last waves: 5
🔶 SETTINGS
Show Swing Highs & Lows: Enable/Disable points on swing highs and swing lows.
Swing Length: Number of candles to confirm a swing high or swing low. A higher number detects larger swings.
🔹 Ichimoku Kinkō Hyō
Show Lines: Enable/Disable the 5 Ichimoku lines: Kijun sen, Tenkan sen, Senkou span A & B and Chikou Span.
Show Kumo: Enable/Disable the Kumo (cloud). The Kumo is formed by 2 lines: Senkou Span A and Senkou Span B.
Tenkan Sen Length: Number of candles for Tenkan Sen calculation.
Kinjun Sen Length: Number of candles for the Kijun Sen calculation.
Senkou Span B Length: Number of candles for Senkou Span B calculation.
Chikou & Senkou Offset: Number of candles for Chikou and Senkou Span calculation. Chikou Span is plotted in the past, and Senkou Span A & B in the future.
🔹 Time Theory
Show Time Cycle Forecast: Enable/Disable time cycle forecast vertical lines. Disable for better performance.
Forecast Pattern: Choose between two patterns: Kihon Suchi (basic numbers) or Taito Suchi (equal numbers).
Anchor forecast on last X time cycle: Number of time cycles in the past to anchor the time cycle forecast. The larger the number, the deeper in the past the anchor will be.
Time Cycle Mode: Choose from 7 time cycle detection modes: Tenkan Sen cross, Kijun Sen cross, Kumo change between bullish & bearish, swing highs only, swing lows only, both swing highs & lows and wave detection.
Wave Cycle: Choose which type of wave to detect from 6 different wave types when the time cycle mode is set to WAVES.
Show Time Cycles: Enable/Disable time cycle horizontal lines. Disable for better performance.
how last X time cycles: Maximum number of time cycles to display.
🔹 Wave Theory
Basic Waves: Enable/Disable the display of basic waves, all at once or one at a time. Disable for better performance.
Complex Waves: Enable/Disable complex wave display, all at once or one by one. Disable for better performance.
Overlapping Waves: Enable/Disable the display of waves ending on the same swing point.
Show last X waves: 'Maximum number of waves to display.
🔹 Price Theory
Basic Targets: Enable/Disable horizontal price target lines. Disable for better performance.
Extended Targets: Enable/Disable extended price target horizontal lines. Disable for better performance.