ICT HTF FVGs v2 (fadi)NOTICE: Instead of updating the existing ICT HTF FVGs indicator, this indicator is being published separately due to the requests to keep the original by some traders and because of the drastic change in behavior/configurations. If the original v1 version is more appropriate for your style of trading, feel free to continue to use it.
ICT HTF FVGs v2
In trading, Fair Value Gaps (FVGs) refer to market inefficiencies or imbalances that occur when buying and selling activities are not equal. These gaps can be identified on various timeframes and are used in different trading strategies.
FVGs are crucial in price action trading as they highlight the difference between the current market price of an asset and its fair value. Traders use these gaps to identify potential trading opportunities, as they often indicate areas where the market may correct itself
This indicator will overlap the higher timeframe (HTF) FVGS over the current timeframe to help traders anticipate and plan their trades.
Features
Up to 6 higher timeframes (HTF) can be overlayed on a chart
Traders can limit the number of HTF FVGs to preset number of HTFs
Lower and current timeframes can be included
Configurable spacing of HTF FVGs to prevent overlapping
Configurable Smart Expansion of FVGs based on proximity to current price
Traders can decide what constitutes a Mitigated FVG
Show or hide mitigated FVGs to declutter the chart
Flexible display settings that controls how the FVGs are displayed
Flexible labeling of the FVG levels and content
Higher Timeframes Display Settings
This indicator provides the ability to select up to 6 HTF intervals. These intervals are based on the trader's timeframes including any custom timeframes.
Timeframe Configurations
Enable or Disable a Timeframe
The Timeframe to Display
Bullish / BISI FVG Color
Bearish / SIBI FVG Color
The number of FVGs For The Selected Timeframe
Limit to the next HTFs only can be used to display the selected number of HTF FVGs. For example, if the trader selects 3 then only 3 HTF FVGs will be displayed.
Note: If either of the next two options is selected, they will take up spots from this count.
Hide lower Timeframes restricts the FVGs to higher timeframes only. If this option is disabled, it will show lower timeframes FVGs as well.
Hide Current Timeframe removes current timeframe from the selected list of HTF FVGs. If this option is disabled, it will show current timeframe FVGs as well.
Background Transparency Enable or disable the background color (shaded area) of the FVG. If it is enabled, it will set the transparency amount. The higher the value, the more transparent the background.
Extend lines controls when and how to extend the FVG levels. There are three options:
Extension Only extends the FVGs by the specified number provided below only.
Current Candle Plus Extension extends all the FVGs beyond the current candle by the number provided below.
When in Range will only extend the FVGs near current price based on the advanced settings below. This setting will use Average True Range multiplier to calculate the range (shows FVGs that are higher or lower by the average candle size multiplied by the number in Advanced section).
Mitigated shows or hides the mitigated HTF FVGs. A FVG is considered mitigated based on one of the following options:
None will ignore mitigation and show all FVGs.
Touched when a HTF FVG is touched regardless of how deep the price get inside the FVG.
Wick filled the FVG is closed by a wick or body of a candle.
Body filled the FVG is closed by the body of a candle
Wick filled half a candle's wick or body has reached the C.E. of the FVG
Body filled half a candle body has reached the C.E. of the FVG
Extend mitigated lines sets the number of candles to extend the mitigated FVG levels by for better visibility.
Important Note: Mitigation is calculated based on the timeframe of the FVG, not current timeframe.
Display
Display settings focus on how the FVGs will be displayed. The trader is in total control and there are multiple ways to overlay FVGs on the chart.
Open / Close / C.E. / Link controls the borders. Traders can enable or disable any of them as well as set the thickness and style. Link is the right border.
C.E. also offers the option of setting the bullish (BISI) and bearish (SIBI) colors of the C.E. level
Labeling controls if the labels should be displayed next to the FVG, their color, background, and font size.
Label levels to display controls which levels to show. Open, High. or the C.E.
Label display content controls what to show in the labels, the timeframe of the label, is it a BISI or a SIBI, and a label to indicate if it is the Open or the Close.
Note: if the distance between the open and close has the potential of overlapping the labels, then the indicator will only show the C.E. label for visual clarity.
Advanced Settings
Advanced settings controls some internal calculations:
Proximity factor based on daily range used to calculate possible range of FVGs within a day's range to keep the chart clean. The higher the value, the more FVGs will be shown.
Combine labels factor for visibility used to calculate the distance between the open and close and if all the labels or only the C.E. should be displayed. The higher the value, the bigger the distance for combination (smaller numbers will show more labels).
Range should be within X candles used when "When in Range" option is selected. This is the ATR multiplier used to extend the FVGs. The higher the number, the more FVGs will be extended.
Once desired settings have been achieved, the settings can be saved as default from the bottom left of the indicator settings page for future use.
在脚本中搜索"gaps"
FVG (ICT) with Swing LevelsThis indicator, called "Fair Value Gaps (ICT) with Swing Levels", overlays on the main chart and does the following:
Initial Setup:
It defines user-adjustable parameters:
lookback: Lookback period to keep FVGs visible.
swingPeriod: Period for calculating swing highs and lows.
bullColor and bearColor: Colors for bullish and bearish FVGs.
Fair Value Gaps (FVGs) Detection:
Uses a function to identify FVGs by comparing candle high and low prices.
A bullish FVG forms when the low of two candles ago is higher than the high of the current candle.
A bearish FVG forms when the high of two candles ago is lower than the low of the current candle.
Swing Levels Calculation:
Calculates swing highs and lows over the specified period.
These swing levels define the current market range.
Current Range Verification:
Implements a function to check if an FVG is within the range defined by swing levels.
This ensures only the most relevant FVGs for the current market situation are displayed.
FVG Drawing:
When it detects an FVG (bullish or bearish) within the current range, it draws a box on the chart.
Boxes extend from the bar where the FVG formed to the current bar.
Bullish FVGs are drawn in green and bearish in red (colors are customizable).
Old FVGs Management:
On each new bar, the indicator checks all existing FVG boxes.
It removes boxes that are outside the specified lookback period.
It also removes boxes that are no longer within the current range of swing levels.
Swing Levels Visualization:
Draws lines on the chart to show swing highs (in blue) and swing lows (in purple).
These lines help visualize the current market range.
Continuous Update:
The indicator updates on each new candle, constantly refreshing FVGs and swing levels.
In summary, this indicator identifies and visualizes Fair Value Gaps according to the ICT methodology, filtering them based on higher timeframe swing levels. This helps traders focus on the most significant FVGs within the current market context, reducing visual noise and potentially improving trading decision-making.
FVG & IFVG ICT [TradingFinder] Inversion Fair Value Gap Signal🔵 Introduction
🟣 Fair Value Gap (FVG)
To spot a Fair Value Gap (FVG) on a chart, you need to perform a detailed candle-by-candle analysis.
Here’s the process :
Focus on Candles with Large Bodies : Identify a candle with a substantial body and examine it alongside the preceding candle.
Check Surrounding Candles : The candles immediately before and after the central candle should have long shadows.
Ensure No Overlap : The bodies of the candles before and after the central candle should not overlap with the body of the central candle.
Determine the FVG Range : The gap between the shadows of the first and third candles forms the FVG range.
🟣 ICT Inversion Fair Value Gap (IFVG)
An ICT Inversion Fair Value Gap, also known as a reverse FVG, is a failed fair value gap where the price does not respect the gap. An IFVG forms when a fair value gap fails to hold the price and the price moves beyond it, breaking the fair value gap.
This marks the initial shift in price momentum. Typically, when the price moves in one direction, it respects the fair value gaps and continues its trend.
However, if a fair value gap is violated, it acts as an inversion fair value gap, indicating the first change in price momentum, potentially leading to a short-term reversal or a subsequent change in direction.
🟣 Bullish Inversion Fair Value Gap (Bullish IFVG)
🟣 Bearish Inversion Fair Value Gap (Bearish IFVG)
🔵 How to Use
🟣 Identify an Inversion Fair Value Gap
To identify an IFVG, you first need to recognize a fair value gap. Just as fair value gaps come in two types, inversion fair value gaps also fall into two categories:
🟣 Bullish Inversion Fair Value Gap
A bullish IFVG is essentially a bearish fair value gap that is invalidated by the price closing above it.
Here’s how to identify it :
Identify a bearish fair value gap.
When the price closes above this bearish fair value gap, it transforms into a bullish inversion fair value gap.
This gap acts as support for the price and drives it upwards, indicating a reduction in sellers' strength and an initial shift in momentum towards buyers.
🟣 Bearish Inversion Fair Value Gap
A bearish IFVG is primarily a bullish fair value gap that fails to hold the price, with the price closing below it.
Here’s how to identify it :
Identify a bullish fair value gap.
When the price closes below this gap, it becomes a bearish inversion fair value gap.
This gap acts as resistance for the price, pushing it downwards. A bearish inversion fair value gap signifies a decrease in buyers' momentum and an increase in sellers' strength.
🔵 Setting
🟣 Global Setting
Show All FVG : If it is turned off, only the last FVG will be displayed.
S how All Inversion FVG : If it is turned off, only the last FVG will be displayed.
FVG and IFVG Validity Period (Bar) : You can specify the maximum time the FVG and the IFVG remains valid based on the number of candles from the origin.
Switching Colors Theme Mode : Three modes "Off", "Light" and "Dark" are included in this parameter. "Light" mode is for color adjustment for use in "Light Mode".
"Dark" mode is for color adjustment for use in "Dark Mode" and "Off" mode turns off the color adjustment function and the input color to the function is the same as the output color.
🟣 Logic Setting
FVG Filter
When utilizing FVG filtering, the number of identified FVG areas undergoes refinement based on a specified algorithm. This process helps to focus on higher quality signals and eliminate noise.
Here are the types of FVG filters available :
Very Aggressive Filter : Introduces an additional condition to the initial criteria. For an upward FVG, the highest price of the last candle must exceed the highest price of the middle candle. Similarly, for a downward FVG, the lowest price of the last candle should be lower than the lowest price of the middle candle. This mode minimally filters out FVGs.
Aggressive Filter : Builds upon the Very Aggressive mode by considering the size of the middle candle. It ensures the middle candle is not too small, thereby eliminating more FVGs compared to the Very Aggressive mode.
Defensive Filter : In addition to the conditions of the Very Aggressive mode, the Defensive mode incorporates criteria regarding the size and structure of the middle candle. It requires the middle candle to have a substantial body, with specific polarity conditions for the second and third candles relative to the first candle's direction. This mode filters out a significant number of FVGs, focusing on higher-quality signals.
Very Defensive Filter : Further refines filtering by adding conditions that the first and third candles should not be small-bodied doji candles. This stringent mode eliminates the majority of FVGs, retaining only the highest quality signals.
Mitigation Level FVG and IFVG : Its inputs are one of "Proximal", "Distal" or "50 % OB" modes, which you can enter according to your needs. The "50 % OB" line is the middle line between distal and proximal.
🟣 Display Setting
Show Bullish FVG : Enables the display of demand-related boxes, which can be toggled on or off.
Show Bearish FVG : Enables the display of supply-related boxes along the path, which can also be toggled on or off.
Show Bullish IFVG : Enables the display of demand-related boxes, which can be toggled on or off.
Show Bearish IFVG : Enables the display of supply-related boxes along the path, which can also be toggled on or off.
🟣 Alert Setting
Alert FVG Mitigation : If you want to receive the alert about FVG's mitigation after setting the alerts, leave this tick on. Otherwise, turn it off.
Alert Inversion FVG Mitigation : If you want to receive the alert about Inversion FVG's mitigation after setting the alerts, leave this tick on. Otherwise, turn it off.
Message Frequency : This parameter, represented as a string, determines the frequency of announcements. Options include: 'All' (triggers the alert every time the function is called), 'Once Per Bar' (triggers the alert only on the first call within the bar), and 'Once Per Bar Close' (activates the alert only during the final script execution of the real-time bar upon closure). The default setting is 'Once per Bar'.
Show Alert time by Time Zone : The date, hour, and minute displayed in alert messages can be configured to reflect any chosen time zone. For instance, if you prefer London time, you should input 'UTC+1'. By default, this input is configured to the 'UTC' time zone.
Display More Info : The 'Display More Info' option provides details regarding the price range of the order blocks (Zone Price), along with the date, hour, and minute. If you prefer not to include this information in the alert message, you should set it to 'Off'.
RSI TrendsThis TradingView script combines RSI trend analysis with FVG (Fair Value Gap) detection to identify potential buy and sell opportunities in financial markets. The script is customizable and provides extensive visual feedback directly on the chart, enhancing both strategic entry and exit points for traders. Raw code of FVG was taken from LuxAlgo
Features
FVG Detection: Identifies Fair Value Gaps (FVG), and provides options to display these gaps based on user settings.
RSI Trend Bars: Utilizes the Relative Strength Index (RSI) to paint bars indicating overbought and oversold conditions. This helps traders understand current market sentiment and potential reversal points.
Customizable Settings: Users can customize the timeframe, FVG types, and RSI thresholds. This flexibility allows the script to be adapted to various trading styles and timeframes.
Historical Analysis: Option to display or hide historical FVGs, helping users analyze past market behavior without cluttering the chart.
Alert System: Integrated alerts for detected buy and sell signals based on RSI conditions and the presence or absence of FVGs. This feature notifies traders of potential trading opportunities.
Trading Signals
Buy, Buy+, and Buy++ Signals: These signals are triggered based on overbought conditions without corresponding bearish FVG presence, with increasing stringency for higher tiers of buy signals.
Sell, Sell+, and Sell++ Signals: These signals are based on oversold conditions devoid of bullish FVG presence, with each subsequent plus sign indicating a higher level of confirmation required to trigger the signal.
Use Case
Ideal for traders who rely on technical analysis and are looking for an automated way to spot potential buy and sell points using both price action gaps and momentum indicators.
Customization
All input parameters are adjustable directly from the indicator's settings panel, making it easy to tailor the tool to your trading needs and preferences.
lib_fvgLibrary "lib_fvg"
further expansion of my object oriented library toolkit. This lib detects Fair Value Gaps and returns them as objects.
Drawing them is a separate step so the lib can be used with securities. It also allows for usage of current/close price to detect fill/invalidation of a gap and to adjust the fill level dynamically. FVGs can be detected while forming and extended indefinitely while they're unfilled.
method draw(this)
Namespace types: FVG
Parameters:
this (FVG)
method draw(fvgs)
Namespace types: FVG
Parameters:
fvgs (FVG )
is_fvg(mode, precondition, filter_insignificant, filter_insignificant_atr_factor, live)
Parameters:
mode (int) : switch for detection 1 for bullish FVGs, -1 for bearish FVGs
precondition (bool) : allows for other confluences to block/enable detection
filter_insignificant (bool) : allows to ignore small gaps
filter_insignificant_atr_factor (float) : allows to adjust how small (compared to a 50 period ATR)
live (bool) : allows to detect FVGs while the third bar is forming -> will cause repainting
Returns: a tuple of (bar_index of gap bar, gap top, gap bottom)
create_fvg(mode, idx, top, btm, filled_at_pc, config)
Parameters:
mode (int) : switch for detection 1 for bullish FVGs, -1 for bearish FVGs
idx (int) : the bar_index of the FVG gap bar
top (float) : the top level of the FVG
btm (float) : the bottom level of the FVG
filled_at_pc (float) : the ratio (0-1) that the fill source needs to retrace into the gap to consider it filled/invalidated/ready for removal
config (FVGConfig) : the plot configuration/styles for the FVG
Returns: a new FVG object if there was a new FVG, else na
detect_fvg(mode, filled_at_pc, precondition, filter_insignificant, filter_insignificant_atr_factor, live, config)
Parameters:
mode (int) : switch for detection 1 for bullish FVGs, -1 for bearish FVGs
filled_at_pc (float)
precondition (bool) : allows for other confluences to block/enable detection
filter_insignificant (bool) : allows to ignore small gaps
filter_insignificant_atr_factor (float) : allows to adjust how small (compared to a 50 period ATR)
live (bool) : allows to detect FVGs while the third bar is forming -> will cause repainting
config (FVGConfig)
Returns: a new FVG object if there was a new FVG, else na
method update(this, fill_src)
Namespace types: FVG
Parameters:
this (FVG)
fill_src (float) : allows for usage of different fill source series, e.g. high for bearish FVGs, low vor bullish FVGs or close for both
method update(all, fill_src)
Namespace types: FVG
Parameters:
all (FVG )
fill_src (float)
method remove_filled(unfilled_fvgs)
Namespace types: FVG
Parameters:
unfilled_fvgs (FVG )
method delete(this)
Namespace types: FVG
Parameters:
this (FVG)
method delete_filled_fvgs_buffered(filled_fvgs, max_keep)
Namespace types: FVG
Parameters:
filled_fvgs (FVG )
max_keep (int) : the number of filled, latest FVGs to retain on the chart.
FVGConfig
Fields:
box_args (|robbatt/lib_plot_objects/36;BoxArgs|#OBJ)
line_args (|robbatt/lib_plot_objects/36;LineArgs|#OBJ)
box_show (series__bool)
line_show (series__bool)
keep_filled (series__bool)
extend (series__bool)
FVG
Fields:
config (|FVGConfig|#OBJ)
startbar (series__integer)
mode (series__integer)
top (series__float)
btm (series__float)
center (series__float)
size (series__float)
fill_size (series__float)
fill_lvl_target (series__float)
fill_lvl_current (series__float)
fillbar (series__integer)
filled (series__bool)
_fvg_box (|robbatt/lib_plot_objects/36;Box|#OBJ)
_fill_line (|robbatt/lib_plot_objects/36;Line|#OBJ)
Fair Value Gap Finder with Integrated Gann BoxTitle: Fair Value Gap Finder with Integrated Gann Box Analysis
Description:
The "Fair Value Gap Finder with Integrated Gann Box Analysis" is a unique technical indicator designed for traders who wish to incorporate the concepts of Fair Value Gaps (FVG) and Gann Box methodologies into their trading strategy. This tool is beneficial for both trend-following and scalping techniques across various markets and timeframes.
Functionality:
The indicator identifies Fair Value Gaps, which are areas on the chart where price has skipped a range, creating a 'gap'. Recognizing these zones can be crucial for understanding potential price support and resistance areas. Alongside FVG detection, this script employs Gann Box principles to project potential levels of interest. Gann Boxes are drawn automatically when an FVG is identified, providing additional insights based on W.D. Gann's theories, which relate to time and price symmetry.
Usage:
Upon detecting an FVG, the indicator will highlight the gap on the chart and overlay a Gann Box between the high and low points of the gap. Traders can use these zones to make informed decisions about entry and exit points, stop loss, and take profit levels. The script offers customization options for the appearance and behavior of the FVG boxes and Gann Lines, allowing users to adapt the tool to their preferences.
Originality:
What sets this indicator apart is the integration of FVG with Gann Box levels within a single tool, streamlining the analysis process. It takes the classic approach of identifying gaps and enriches it with the geometric significance of Gann's work, all while allowing users to visualize and interact with these levels in a user-friendly manner.
Open-Source Nature:
This script is open-source, making it a transparent solution for those who wish to understand the underlying calculations. While not all traders are versed in Pine Script, the logic of identifying FVGs and applying Gann Box levels is explained through the script's annotations and the user interface itself.
Instructions for Use:
Apply the script to your chart, and it will automatically detect FVGs.
Adjust the settings in the indicator's input menu to match your trading style and preferences.
Use the FVG and Gann Box levels as potential areas of interest for trade setups.
This script does not guarantee profits and should be used as part of a comprehensive trading plan. It is best used in conjunction with other analysis methods to confirm signals and strategies.
TrendFriendOverview
TrendFriend (TF) combines various technical analysis components, including trend calculations, moving averages, RSI signals, and Fair Value Gaps (FVG) detection to determine trend reversal and continuation points. The FVG feature identifies potential consolidation periods and displays mitigation levels.
Features
Trend Analysis: Utilizes short and long-term Running Moving Averages (RMA) to identify trends.
Average True Range (ATR): Plots ATR to depict market volatility.
RSI Signals: Calculates RSI and provides buy/sell signals based on RSI conditions.
Fair Value Gaps (FVG): Detects FVG patterns and offers options for customization, including dynamic FVG, mitigation levels, and auto threshold.
Usage
Buy Signals: Generated based on pullback conditions, contra-buy signals, and crossovers of specified moving averages.
Sell Signals: Generated based on pullback conditions, contra-sell signals, and crossunders of specified moving averages.
Visualization: FVG areas are visually represented on the chart, and unmitigated levels can be displayed.
Configuration
Adjustable parameters for trend periods, ATR length, RSI settings, FVG threshold, and display preferences.
Dynamic FVG detection and mitigation level visualization can be enabled/disabled.
Usage Example
Trend Analysis: Identify trends with short and long-term moving averages.
RSI Signals: Interpret RSI signals for potential reversals.
FVG Detection: Visualize Fair Value Gaps and mitigation levels on the chart.
Buy/Sell Signals: Receive alerts for buy/sell signals based on specified conditions.
Disclaimer
This Pine Script code is subject to the terms of the Mozilla Public License 2.0. Use this code at your own risk, and always conduct additional analysis before making trading decisions.
Author
Author: devoperator84
License: Mozilla Public License 2.0
Liquidity Voids (FVG) [LuxAlgo]The Liquidity Voids (FVG) indicator is designed to detect liquidity voids/imbalances derived from the fair value gaps and highlight the distribution of the liquidity voids at specific price levels.
Fair value gaps and liquidity voids are both indicators of sell-side and buy-side imbalance in trading. The only difference is how they are represented in the trading chart. Liquidity voids occur when the price moves sharply in one direction forming long-range candles that have little trading activity, whilst a fair value is a gap in price.
🔶 USAGE
Liquidity can help you to determine where the price is likely to head next. In conjunction with higher timeframe market structure, and supply and demand, liquidity can give you insights into potential price movement. It's essential to practice using liquidity alongside trend analysis and supply and demand to read market conditions effectively.
The peculiar thing about liquidity voids is that they almost always fill up. And by “filling”, we mean the price returns to the origin of the gap. The reason for this is that during the gap, an imbalance is created in the asset that has to be made up for. The erasure of this gap is what we call the filling of the void. And while some voids waste no time in filling, some others take multiple periods before they get filled.
🔶 SETTINGS
The script takes into account user-defined parameters and detects the liquidity voids based on them, where detailed usage for each user-defined input parameter in indicator settings is provided with the related input's tooltip.
🔹 Liquidity Detection
Liquidity Voids Threshold: Act as a filter while detecting the Liquidity Voids. When set to 0 basically means no filtering is applied, increasing the value causes the script to check the width of the void compared to a fixed-length ATR value
Bullish: Color customization option for Bullish Liquidity Voids
Bearish: Color customization option for Bearish Liquidity Voids
Labels: Toggles the visibility of the Liquidity Void label
Filled Liquidity Voids: Toggles the visibility of the Filled Liquidity Voids
🔹 Display Options
Mode: Controls the lookback length of detection and visualization
# Bars: Lookback length customization, in case Mode is set to Present
🔶 RELATED SCRIPTS
Buyside-Sellside-Liquidity
Fair-Value-Gaps
Opening Range Gap + Std Dev [starclique]The ICT Opening Range Gap is a concept taught by Inner Circle Trader and is discussed in the videos: 'One Trading Setup For Life' and 2023 ICT Mentorship - Opening Range Gap Repricing Macro
ORGs, or Opening Range Gaps, are gaps that form only on the Regular Trading Hours chart.
The Regular Trading Hours gap occurs between 16:15 PM - 9:29 AM EST (UTC-4)
These times are considered overnight trading, so it is useful to filter the PA (price action) formed there.
The RTH option is only available for futures contracts and continuous futures from CME Group.
To change your chart to RTH, first things first, make sure you’re looking at a futures contract for an asset class, then on the bottom right of your chart, you’ll see ETH (by default) - Click on that, and change it to RTH.
Now your charts are filtering the price action that happened overnight.
To draw out your gap, use the Close of the 4:14 PM candle and the open of the 9:30 AM candle.
How is this concept useful?
Well, It can be used in many ways.
---
How To Use The ORG
One of the ways you can use the opening range gap is simply as support and resistance
If we extend out the ORG from the example above, we can see that there is a clean retest of the opening range gap high after breaking structure to the upside and showing acceptance outside of the gap after consolidating within it.
The ORG High (4:14 Candle Close in this case) was used as support.
We then see an expansion to the upside.
Another way to implement the ORG is by using it as a draw on liquidity (magnet for price)
In this example, if we looked to the left, there was a huge ORG to the downside, leaving a massive gap.
The market will want to rebalance that gap during the regular trading hours.
The market rallies higher, rejects, comes down to clear the current days ORG low, then closes.
That is one example of how you can combine liquidity & ICT market structure concepts with Opening Range Gaps to create a story in the charts.
Now let’s discuss standard deviations.
---
Standard Deviations
Standard Deviations are essentially projection levels for ranges / POIs (Point of Interests)
By this I mean, if you have a range, and you would like to see where it could potentially expand to, you’d place your fibonacci retracement tool on and high and low of the range, then use extension levels to find specific price points where price might reject from.
Since 0 and 1 are your Range High and Low respectively, your projection levels would be something like 1.5, 2, 2.5, and 3, for the extension from your 1 Fib Level, and -0.5, -1, -1.5, and -2 for your 0 Fib level.
The -1 and 2 level produce a 1:1 projection of your range low and high, meaning, if you expect price to expand as much as it did from the range low to range high, then you can project a -1 and 2 on your Fib, and it would show you what ICT calls “symmetrical price”
Now, how are standard deviations relevant here?
Well, if you’ve been paying attention to ICT’s recent videos, you would’ve caught that he’s recently started using Standard Deviation levels on breakers.
So my brain got going while watching his video on ORGs, and I decided to place the fib on the ORG high and low and see what it’d produce.
The results were very interesting.
Using this same example, if we place our fib on the ORG High and Low, and add some projection levels, we can see that we rejected right at the -2 Standard Deviation Level.
---
You can see that I also marked out the EQ (Equilibrium, 50%, 0.5 of Fib) of the ORG. This is because we can use this level as a take profit level if we’re using an old ORG as our draw.
In days like these, where the gap formed was within a consolidation, and it continued to consolidate within the ORG zone that we extended, we can use the EQ in the same way we’d use an EQ for a range.
If it’s showing acceptance above the EQ, we are bullish, and expect the high of the ORG to be tapped, and vice versa.
---
Using The Indicator
Here’s where our indicator comes in play.
To avoid having to do all this work of zooming in and marking out the close and open of the respective ORG candles, we created the Opening Range Gap + Standard Deviations Indicator, with the help of our dedicated Star Clique coder, a1tmaniac.
With the ORG + STD DEV indicator, you will be able to view ORG’s and their projections on the ETH (Electronic Trading Hours) chart.
---
Features
Range Box
- Change the color of your Opening Range Gap to your liking
- Enable or disable the box from appearing using the checkbox
Range Midline
- Change the color of your Opening Range Gap Equilibrium
- Enable or disable the midline from appearing using the checkbox
Std. Dev
- Add whichever standard deviation levels you’d like.
- By default, the indicator comes with 0.5, 1, 1.5, and 2 standard deviation levels.
- Ensure that you add a comma ( , ) in between each standard deviation level
- Enable or disable the standard deviations from appearing using the opacity of the color (change to 0%)
Labels / Offset
- Adjust the offset of the label for the Standard Deviations
- Enable or disable the Labels from appearing using the checkbox
Time
- Adjust the time used for the indicators range
- If you’d like to use this for a Session or ICT Killzone instead, adjust the time
- Adjust the timezone used for the time referenced
- Options are UTC, US (UTC-4, New York Local Time) or UK (UTC+1, London Time)
- By default, the indicator is set to US
Price & Volume Profile (Expo)█ Overview
The Price & Volume Profile provides a holistic perspective on market dynamics by simultaneously tracking price action and trading volume across a range of price levels. So it is not only a volume-based indicator but also a price-based one. In addition to illustrating volume distribution, it quantifies how frequently the price has fallen within a particular range, thus offering a holistic perspective on market dynamics.
This unique and comprehensive approach to market analysis by considering both price action and trading volume, two crucial dimensions of market activity. Its distinctive methodology offers several advantages:
Holistic Market View: By simultaneously tracking the frequency of specific price ranges (Price Profile) and the volume traded at those ranges (Volume Profile), this indicator provides a more complete picture of market behavior. It shows not only where the market is trading but also how much it's trading, reflecting both price acceptance levels and market participation intensity.
Point of Control (POC): The POC, as highlighted by this indicator, serves as a significant reference point for traders. It identifies the price level with the highest trading activity, thus indicating a strong consensus among market participants about the asset's fair value. Observing how price interacts with the POC can offer valuable insights into market sentiment and potential trend reversals.
Support and Resistance Levels: Price levels with high trading activity often act as support or resistance in future price movements. The indicator visually represents these levels, enabling traders to anticipate potential price reactions.
Price Profile
Price and Volume Profile
█ Calculations
The algorithm analyzes both trade frequency and volume across different price levels. It identifies these levels within the visible chart range, then examines each bar to determine if the selected price falls within these levels. If so, it increases a counter and adds the trading volume. This process repeats across the visible range and is visualized as a horizontal histogram, each bar representing a price level and the bar length reflecting trade frequency and volume. Additionally, it calculates the Point of Control (POC), signifying the price level with the highest activity.
In summary: The histogram presents a dual perspective - not only the traded volume at each price level but also the frequency of the price hitting each range. The longer the bar, the more times the price has frequented that specific range, revealing key insights into price behavior and acceptance levels. These frequently visited areas often emerge as strong support or resistance zones, helping traders navigate market movements.
Please note that the indicator adjusts to the visible price range, making it adaptable to changing market conditions. This dynamic analysis can provide more relevant and timely information than static indicators.
█ How to use
This indicator is beneficial for traders as it offers insights into the distribution of trading activity across different price levels. It helps identify key areas of support and resistance and gives a visual representation of market sentiment and liquidity.
The point of control (POC) , which is the price level with the highest traded volume or frequency count, becomes even more crucial in this context. It marks the price at which the most trading activity occurred, signaling a strong consensus among market participants about the asset's fair value. If the market price deviates significantly from the POC, it could suggest an overbought or oversold condition, potentially leading to a price reversion.
Fair Price Areas/gaps are specific price levels or zones where an asset has spent limited time in the past. These areas are considered interesting or significant because they may have an impact on future price action.
Similar to the concept of fair value gaps, which refers to discrepancies between an asset's market price and its estimated intrinsic value, Fair Price Areas/gaps focus on price levels that have been relatively underutilized in terms of trading activity. When an asset's price reaches a Fair Price Area/gap, traders and investors pay attention because they expect the price to react in some way. The rationale behind this concept is that price tends to gravitate towards areas where it has spent less time in the past, as the market perceives them as significant levels.
█ Settings
The indicator is customizable, allowing users to define the number of price levels (rows), the offset, the data source, and whether to display volume or frequency count. It also adjusts dynamically to the visible price range on the chart, ensuring that the analysis remains relevant and timely with changing market conditions.
Source: The price to use for the calculation. Typically, this is the closing price. By considering the user-selected Source (typically the closing price), the indicator determines the frequency with which the price lands within each designated price level (row) over the selected period. In essence, the indicator provides a count of bars where the Source price falls within each range, essentially creating a "Price Profile."
Row Size: The number of price levels (rows) to divide the visible price range into.
Display: Choose whether to display the number of bars ("Counter") or the total volume ("Volume") for each price level.
Offset: The distance of the histogram from the price chart.
Point of Control (POC): If enabled, the indicator will highlight the price level with the most activity.
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
Displacement (Two FVGs)A simple indicator that attempts to identify displacement in price by alerting you when two simultaneous Fair Value Gaps (FVGs) occur.
When two fair value gaps occur, the indicator will print a green bar (if bullish) or a red bar (if bearish). If you right click on the indicator you can turn on alerts that will pop up every time a dual FVG occurs.
Fair Value Gaps are most commonly used amongst price action traders and are defined as instances in which there are inefficiencies, or imbalances, in the market.
The concept for this indicator is very simple. Apply it to your chart and enable alerts on the instruments and timeframe you trade. When you get an alert, it could indicate larger players getting involved.
This is NOT a trading strategy. Its intention is to save time by alerting you to large imbalances in price on the instruments you trade.
FVG Sessions [LuxAlgo]The FVG Sessions indicator highlights the first fair value gap of the trading session as well as the session range. Detected fair value gaps extend to the end of the trading session.
Alerts are included on the formation of a session fair value gap, price being within a session fair value gap, mitigations, and price crossing session fair value gaps average.
🔶 USAGE
Trader ICT states that the first fair value gap of the trading session can attract the most significant reaction. Having only one FVG per session allows users to further focus on that precise imbalance as well as external elements.
The mitigation of a fair value gap is clearly indicated on the chart with a more transparent color allowing users to see inverse FVGs.
Extending the fair value gaps allows the imbalance area to provide potential support and resistance.
Do note that this script should be used on intraday charts.
🔶 ALERTS
The script includes the following alerts:
🔹 Bullish/Bearish FVG
Alerts on the formation of the first bullish or bearish FVG of the session.
🔹 Bullish/Bearish FVG Mitigation
Alerts when the first bullish or bearish FVG of the session is mitigated.
🔹 Price Within FVG
Alerts when price is within the first bullish or bearish FVG area of the session.
🔹 Price Cross FVG Average
Alerts when price cross the average level of the first bullish or bearish FVG of the session.
FVGs & CEs + Alerts: simple & efficient methodFair Value Gap indicator: Paints FVGs and their midlines (CEs). Stops painting when CE is hit, or when fully filled; user choice of threshold. This threshold is also used in the Alert conditions.
~~Plotted here on ES1! (CME), on the 15m timeframe~~
-A FVG represents a 'naked' body where the wicks/tails on either side do not meet. This can be seen as a type of 'gap', which price will have a tendency to want to re-fill (in part or in full).
-The midline (CE, or 'Consequent encroachment') of FVGs also tend to show price sensitivity.
-This indicator paints all FVGs until priced into, and should give an idea of which are more meaningful and which are best ignored (based on context: location, Time of day, market structure, etc).
-This is a simpler and more efficient method of painting Fair value gaps which auto-stop painting when price reaches them.
//Aims of Publishing:
-Education of ICT concepts of Fair Value Gaps and their midlines (CEs): To easily see via forward testing or backtesting, the sensitivity that price shows to these areas & levels.
-Demonstration of a much more efficient way of plotting FVGs which terminate at price, thanks to a modification of @Bjorgums's clever looping method referenced below.
//Settings:
-Toggle on/off upward and downward FVGs independently(blue and orange by default).
-Toggle on/off midline (CE).
-Standard color/line formatting options.
-Choose Threshold: CE of FVG or Full Fill of FVG: This will determine both the 'stop-painting' trigger and the 'Alert' trigger.
-Choose number of days lookback to control how many historical FVGs paint on chart.
//On alerts:
-Simple choice of 2 alerts:
~~One for price crossing into/above the nearest untouched 'premium' FVG above ( orange ). Trigger is user choice of CE or full fill.
~~Another for price crossing into/below the nearest untouched 'discount' FVG below (blue). Trigger is user choice of CE or full fill.
-Alerts set via the three dots in indicator status line.
//Cautionary notes:
-Do not use the alerts blindly to find trades. Wait until you have identified a good FVG above/below which you think price may show sensitivity to
-Usage on very low timeframes can cause unexpected results with alerts: due to new FVGs forming in realtime the Alert will always trigger at the most recent FVG above/ below having its threshold hit.
-Big thank you to @Bjorgum for his fantastic extendAndRemove method. Modified here for use with boxes and to integrate Alerts.
-Also Credit to ICT (inner circle trader) for the concepts used here: Fair value gaps and their Consequent Encroachment (CE).
ICT Implied Fair Value Gap (IFVG) [LuxAlgo]An Implied Fair Value Gap (IFVG) is a three candles imbalance formation conceptualized by ICT that is based on detecting a larger candle body & then measuring the average between the two adjacent candle shadows.
This indicator automatically detects this imbalance formation on your charts and can be extended by a user set number of bars.
The IFVG average can also be extended until a new respective IFVG is detected, serving as a support/resistance line.
Alerts for the detection of bullish/bearish IFVG's are also included in this script.
🔶 SETTINGS
Shadow Threshold %: Threshold percentage used to filter out IFVG's with low adjacent candles shadows.
IFVG Extension: Number of bars used to extend highlighted IFVG's areas.
Extend Averages: Extend IFVG's averages up to a new detected respective IFVG.
🔶 USAGE
Users of this indicator can primarily find it useful for trading imbalances just as they would for trading regular Fair Value Gaps or other imbalances, which aims to highlight a disparity between supply & demand.
For trading a bullish IFVG, users can find this imbalance as an area where price is likely to fill or act as an area of support.
In the same way, a user could trade bearish IFVGs by seeing it as a potential area to be filled or act as resistance within a downtrend.
Users can also extend the IFVG averages and use them as longer-term support/resistances levels. This can highlight the ability of detected IFVG to provide longer term significant support and resistance levels.
🔶 DETAILS
Various methods have been proposed for the detection of regular FVG's, and as such it would not be uncommon to see various methods for the implied version.
We propose the following identification rules for the algorithmic detection of IFVG's:
🔹 Bullish
Central candle body is larger than the body of the adjacent candles.
Current price low is higher than high price two bars ago.
Current candle lower shadow makes up more than p percent of its total candle range.
Candle upper shadow two bars ago makes up more than p percent of its total candle range.
The average of the current candle lower shadow is greater than the average of the candle upper shadow two bars ago.
where p is the user set threshold.
🔹 Bearish
Central candle body is larger than the body of the adjacent candles.
Current price high is higher than low price two bars ago.
Current candle upper shadow makes up more than p percent of its total candle range.
Candle lower shadow two bars ago makes up more than p percent of its total candle range.
The average of the candle lower shadow 2 bars ago is greater than the average of the current candle higher shadow.
where p is the user set threshold.
🔶 SUPPLEMENTARY MATERIAL
You can see our previously posted script that detects various imbalances as well as regular Fair Value Gaps which have very similar usability to Implied Fair Value Gaps here:
muh gap! [FAIR VALUE GAP FINDER]Change the colors of the indicator to contrast your chart! Make sure to also change the transparency for the colors.
---
This indicator finds fair value gaps which are inefficiencies in price delivery. Gaps can be used for entry or even bias.
I've included midpoints, lines, and boxes. Boxes have the greatest range with respect to historic PA so keep that in mind.
I will be updating this script in the future, potentially adding an MTF function, mitigation of gaps and alarms.
Let me know if you guys have any additional ideas.
Best,
P
VolatilityLibrary "Volatility"
Functions for determining if volatility (true range) is within or exceeds normal.
The "True Range" (ta.tr) is used for measuring volatility.
Values are normalized by the volume adjusted weighted moving average (VAWMA) to be more like percent moves than price.
current(len) Returns the current price adjusted volatitlity ratio.
Parameters:
len : Number of bars to get a volume adjusted weighted average price.
normal(len, maxDeviation, level, gapDays, spec, res) Returns the normal upper range of volatility. Compensates for overnight gaps within a regular session.
Parameters:
len : Number of bars to measure volatility.
maxDeviation : The limit of volatility before considered an outlier.
level : The amount of standard deviation after cleaning outliers to be considered within normal.
gapDays : The number of days in the past to measure overnight gap volaility.
spec : session.regular (default), session.extended or other time spec.
res : The resolution (default = '1440').
isNormal(len, maxDeviation, level, gapDays, spec, res) Returns true if the volatility (true range) is within normal levels. Compensates for overnight gaps within a regular session.
Parameters:
len : Number of bars to measure volatility.
maxDeviation : The limit of volatility before considered an outlier.
level : The amount of standard deviation after cleaning outliers to be considered within normal.
gapDays : The number of days in the past to measure overnight gap volaility.
spec : session.regular (default), session.extended or other time spec.
res : The resolution (default = '1440').
severity(len, maxDeviation, level, gapDays, spec, res) Returns ratio of the current value to the normal value. Compensates for overnight gaps within a regular session.
Parameters:
len : Number of bars to measure volatility.
maxDeviation : The limit of volatility before considered an outlier.
level : The amount of standard deviation after cleaning outliers to be considered within normal.
gapDays : The number of days in the past to measure overnight gap volaility.
spec : session.regular (default), session.extended or other time spec.
res : The resolution (default = '1440').
Higher TF - Repainting + Limiting backtest resultsThis strategy is for illustration purpose only. Do not use this as there is massive repainting.
As usual, I was experimenting with adding different entry/exit filters to my main strategy. Thought of adding higher frame filter, picked the code for getting higher time frame supertrend from someone else's script and copied it without thinking much about it.
security(syminfo.tickerid, f_multiple_resolution(HTFMultiplier), supertrend(SupertrendMult, SupertrendPd), lookahead = true, gaps=true)
Started getting better results with this result. I was very much impressed and while trying to enhance further, I started disabling my other entry and exit filters which I generally use.
That worked pretty well without any of my other filters. Hence, thought I will forward test this on a smaller timeframe.
To my surprise, even in forward testing, i was not able to notice repainting very much. It also appeared that smaller timeframes yielded better results. (This wasn't the case with any of my strategies)
Which then prompted me to study the security function and lookahead and gap parameters. Learned that lookahead and gap when set to true will lead to massive repainting - specially if you are using higher timeframes. Hence, these parameters are not advisable to use in strategies.
Further information here: www.tradingview.com
I added three repaint options to further illustrate how security function will work:
Yes : Use security with lookahead and merge set to true
No - set lookahead false : Use security with lookahead and merge set to false
No - do not use security : Falls back to original command on current timeframe. Switch timeframe to HTF resolution to compare the difference.
Conclusion : Always set lookahead and gaps to false when using security function in strategies.
PS: Script also contains code to limit backtesting to certain days/months/years. This can be used as is in other scripts.
Smart Money Zones - Multi-Timeframe AnalysisA clean and efficient smart money concepts indicator designed for traders who follow institutional order flow and price imbalances.
Core Features:
Fair Value Gaps (FVG): Automatically detects bullish and bearish imbalances where price moved too fast, leaving gaps that often get filled
Order Blocks (OB): Identifies the last bearish candle before a bullish move (and vice versa) - institutional accumulation/distribution zones
Zone Strength Rating: Each zone is classified as Very Strong, Strong, Medium, or Weak based on size relative to ATR
Multi-Timeframe Trend Panel: Real-time dashboard showing bullish/bearish trend across 7 timeframes (1m, 5m, 15m, 30m, 1H, 4H, 1D)
Smart Features:
Zones automatically extend into the future
Mitigation tracking - zones fade when 50% filled or fully violated
Optional trend filter - only shows zones aligned with the trend
Customizable zone limits to keep your chart clean
Adjustable panel position (4 corners) and size
Color-Coded Zones:
🟢 Bullish FVG (Green) - Support zones
🔴 Bearish FVG (Red) - Resistance zones
🔵 Bullish OB (Blue) - Demand zones
🟠 Bearish OB (Orange) - Supply zones
Perfect for scalpers, day traders, and swing traders who trade reversals at key institutional levels. Combines smart money concepts with multi-timeframe confirmation for higher probability setups.
Wickless Candle Revisit TrackerWickless Candle Revisit Tracker
Identifies wickless candles (strong momentum candles) and tracks whether price revisits their opening level, providing statistical insights into price behavior patterns.
WHAT ARE WICKLESS CANDLES?
• Green wickless: Open = Low (no lower wick) - opened at the low and moved only upward
• Red wickless: Open = High (no upper wick) - opened at the high and moved only downward
These candles represent strong directional momentum, and their opening levels often act as support/resistance zones that price may revisit.
KEY FEATURES:
• Automatic Detection: Identifies wickless candles with configurable tolerance for broker spread
• Real-time Tracking: Monitors each wickless candle until price revisits its opening level
• Visual Indicators:
- Labels show "WL↑" or "WL↓" with bars count when revisited (or "N/A" if pending)
- Horizontal lines mark price levels (gray dashed = pending, green solid = revisited)
• Comprehensive Statistics Table:
- Total wickless candles detected
- Revisit rate percentage
- Min/Max/Average bars until revisit
- Pending count
• History Limit: Configure how far back to analyze (default: 500 bars)
• Customizable: Adjust colors, toggle labels/lines/table, reposition statistics
USE CASES:
• Identify potential support/resistance levels from momentum candles
• Measure how often price fills "fair value gaps" or inefficiencies
• Track mean reversion patterns after strong momentum moves
• Backtest the reliability of wickless candle levels as trading zones
SETTINGS:
• Wick Tolerance: Allow small wicks due to broker spread (e.g., 0.0001 for forex)
• History Limit: Number of bars to analyze (older candles are hidden)
• Visual Controls: Toggle labels, lines, and statistics table
• Color Customization: Adjust line colors for pending/revisited states
ALERTS:
Built-in alerts for wickless candle detection (green, red, or both).
Perfect for traders analyzing price inefficiencies, fair value gaps, and momentum-based support/resistance levels.
#BLTA - CARE 7891🔷 #BLTA - CARE 7891 is an overlay toolkit designed to support structured trading preparation and chart reading. It combines a manual Trade Box + Lot Size/Risk panel, session background highlights (NY time), confirmed Previous Day/Week High-Low levels, an Asian range liquidity box, a 1H ZigZag market-structure projection, and an imbalance map (FVG / OG / VI) with an optional dashboard.
This script is an indicator (not a strategy). It does not place orders and is intended for planning, risk visualization, and market context.
✅ Main Modules
1) 💸 Risk Module (Trade Box + Lot Calculation + Table)
A complete manual trade-planning tool:
Pick an Entry Point (EP) and Stop Loss (SL) directly on the chart using input.price(..., confirm=true).
Automatically calculates:
Cash at Risk
SL distance (pips) (Forex-aware)
Lot size based on your:
Account balance
Risk %
Units per lot
Account base currency (with conversion if needed)
Draws:
Risk box (EP ↔ SL)
Target box (RR-based TP)
Displays a clean table panel with the key values.
🔁 Re-confirm Mode (Wizard)
Use “Re-confirm Trade Box Points” to force a clean logical reset and re-pick EP/SL/time anchors:
Shows temporary EP/SL labels
Shows a small wizard table guiding you step-by-step
Turn it OFF to return to normal risk table + boxes
Tip: If your chart timeframe changes or you want a fresh selection, Re-confirm mode is the safest way to reset everything cleanly.
2) 🎨 Session Visualization (New York Time)
Highlights chart background for these windows:
Day Division (17:00–17:01 NY)
London (03:00–05:00 NY) + sub-windows
New York (08:00–10:30 NY) + sub-windows
Colors are fully configurable from inputs.
3) 📰 Confirmed PDH/PDL (Previous Days)
Optional module that plots confirmed Previous Day High (PDH) and Previous Day Low (PDL):
Trading day is defined as 17:00 → 17:00 NY
Lines start exactly at the candle where the high/low occurred
Lines extend forward and can freeze when price touches them
Configurable: days to keep, style, width, and “stop on hit”
4) 📅 Confirmed Weekly High/Low (Previous Weeks)
Optional module that plots confirmed Weekly High/Low:
Confirmation occurs at Sunday 17:00 NY (typical FX week boundary)
Lines begin at the candle where the weekly extremes formed
Extends forward and can freeze on touch
Configurable: weeks to keep, style, width, stop-on-hit
5) 🈵 Asian Range Liquidity Box
Draws a session box that tracks high/low and optional midline (50%):
Uses New York time
Dynamic updates while session is active
Optional mid label and configurable line style/width
6) 📈 Market Structure - ZigZag (1H projected)
A ZigZag structure engine calculated on 1H and projected onto any timeframe:
Configurable:
Length
Source type (High/Low or Open/Close)
Colors and width
Opacity when viewing non-1H charts
Optional live extension of the last leg
Includes safe cleanup when toggling OFF (no leftover objects)
7) 📊 Imbalance Detector (FVG / OG / VI) + Dashboard
Detects and draws:
Fair Value Gaps (FVG)
Opening Gaps (OG)
Volume Imbalances (VI)
Optional dashboard shows frequencies and fill rates.
Attribution / Credits
This module is inspired by / adapted from the public concept widely known as “Imbalance Detector” (LuxAlgo-style logic). This script is independently packaged and integrated as part of the toolkit with additional modules and custom structure.
⚙️ How to Use (Quick Steps)
Add the indicator to the chart (overlay).
Enable 💸 Risk Module if you want trade planning.
Go to Trade Box Location and pick:
Entry Point (EP)
Stop Loss (SL)
Time anchors for box edges
Adjust:
Account balance, risk %, units per lot, RR target
Enable additional modules as needed:
Session backgrounds
PDH/PDL
Weekly High/Low
Asian range box
ZigZag
Imbalances + dashboard
🔎 Notes & Limitations
This script is for visual planning and context, not trade execution.
Lot sizing is based on the selected EP/SL and your inputs; always double-check broker rules, symbol specifications, and contract size.
Object-heavy features (boxes/lines/tables) may increase load on lower-end devices or very small timeframes.
ES Multi-Timeframe SMC Entry SystemOverviewThis is a comprehensive Smart Money Concepts (SMC) trading strategy for ES1! (E-mini S&P 500) futures that provides simultaneous buy and sell signals across three timeframes: Daily, Weekly, and Monthly. It incorporates your complete entry checklists, confluence scoring system, and automated risk management.Core Features1. Multi-Timeframe Signal Generation
Daily Signals (D) - For intraday/swing trades (1-3 day holds)
Weekly Signals (W) - For swing trades (3-10 day holds)
Monthly Signals (M) - For position trades (weeks to months)
All three timeframes can trigger simultaneously (pyramiding enabled)
2. Smart Money Concepts ImplementationOrder Blocks (OB)
Automatically detects bullish and bearish order blocks
Bullish OB = Down candle before strong impulse up
Bearish OB = Up candle before strong impulse down
Validates freshness (< 10 bars = higher quality)
Visual boxes displayed on chart
Fair Value Gaps (FVG)
Identifies 3-candle imbalance patterns
Bullish FVG = Gap between high and current low
Bearish FVG = Gap between low and current high
Tracks unfilled gaps as targets/entry zones
Auto-removes when filled
Premium/Discount Zones
Calculates 50-period swing range
Premium = Upper 50% (short from here)
Discount = Lower 50% (long from here)
Deep zones (<30% or >70%) for higher quality setups
Visual shading: Red = Premium, Green = Discount
Liquidity Sweeps
Sell-Side Sweep (SSL) = False break below lows → reversal up
Buy-Side Sweep (BSL) = False break above highs → reversal down
Marked with yellow labels on chart
Valid for 10 bars after occurrence
Break of Structure (BOS)
Identifies when price breaks recent swing high/low
Confirms trend continuation
Marked with small circles on chart
3. Confluence Scoring SystemEach timeframe has a 10-point scoring system based on your checklist requirements:Daily Score (10 points max)
HTF Trend Alignment (2 pts) - 4H and Daily EMAs aligned
SMC Structure (2 pts) - OB in correct zone with HTF bias
Liquidity Sweep (1 pt) - Recent SSL/BSL occurred
Volume Confirmation (1 pt) - Volume > 1.2x 20-period average
Optimal Time (1 pt) - 9:30-12 PM or 2-4 PM ET (avoids lunch)
Risk-Reward >2:1 (1 pt) - Built into exit strategy
Clean Price Action (1 pt) - BOS occurred
FVG Present (1 pt) - Near unfilled fair value gap
Minimum Required: 6/10 (adjustable)Weekly Score (10 points max)
Weekly/Monthly Alignment (2 pts) - W and M EMAs aligned
Daily/Weekly Alignment (2 pts) - D and W trends match
Premium/Discount Correct (2 pts) - Deep zone + trend alignment
Major Liquidity Event (1 pt) - SSL/BSL sweep
Order Block Present (1 pt) - Valid OB detected
Risk-Reward >3:1 (1 pt) - Built into exit
Fresh Order Block (1 pt) - OB < 10 bars old
Minimum Required: 7/10 (adjustable)Monthly Score (10 points max)
Monthly/Weekly Alignment (2 pts) - M and W trends match
Weekly OB in Monthly Zone (2 pts) - OB in deep discount/premium
Major Liquidity Sweep (2 pts) - Significant SSL/BSL
Strong Trend Alignment (2 pts) - D, W, M all aligned
Risk-Reward >4:1 (1 pt) - Built into exit
Extreme Zone (1 pt) - Price <20% or >80% of range
Minimum Required: 8/10 (adjustable)4. Entry ConditionsDaily Long Entry
✅ Daily score ≥ 6/10
✅ 4H trend bullish (price > EMAs)
✅ Price in discount zone
✅ Bullish OB OR SSL sweep OR near bullish FVG
✅ NOT during avoid times (lunch/first 5 min)Daily Short Entry
✅ Daily score ≥ 6/10
✅ 4H trend bearish
✅ Price in premium zone
✅ Bearish OB OR BSL sweep OR near bearish FVG
✅ NOT during avoid timesWeekly Long Entry
✅ Weekly score ≥ 7/10
✅ Weekly trend bullish
✅ Daily trend bullish
✅ Price in discount
✅ Bullish OB OR SSL sweepWeekly Short Entry
✅ Weekly score ≥ 7/10
✅ Weekly trend bearish
✅ Daily trend bearish
✅ Price in premium
✅ Bearish OB OR BSL sweepMonthly Long Entry
✅ Monthly score ≥ 8/10
✅ Monthly trend bullish
✅ Weekly trend bullish
✅ Price in DEEP discount (<30%)
✅ Bullish order block presentMonthly Short Entry
✅ Monthly score ≥ 8/10
✅ Monthly trend bearish
✅ Weekly trend bearish
✅ Price in DEEP premium (>70%)
✅ Bearish order block present5. Automated Risk ManagementPosition Sizing (Per Entry)
Daily: 1.0% account risk per trade
Weekly: 0.75% account risk per trade
Monthly: 0.5% account risk per trade
Formula:
Contracts = (Account Equity × Risk%) ÷ (Stop Points × $50)
Minimum = 1 contractStop Losses
Daily: 12 points ($600 per contract)
Weekly: 40 points ($2,000 per contract)
Monthly: 100 points ($5,000 per contract)
Profit Targets (Risk:Reward)
Daily: 2:1 = 24 points ($1,200 profit)
Weekly: 3:1 = 120 points ($6,000 profit)
Monthly: 4:1 = 400 points ($20,000 profit)
Example with $50,000 AccountDaily Trade:
Risk = $500 (1% of $50k)
Stop = 12 points × $50 = $600
Contracts = $500 ÷ $600 = 0.83 → 1 contract
Target = 24 points = $1,200 profit
Weekly Trade:
Risk = $375 (0.75% of $50k)
Stop = 40 points × $50 = $2,000
Contracts = $375 ÷ $2,000 = 0.18 → 1 contract
Target = 120 points = $6,000 profit
Monthly Trade:
Risk = $250 (0.5% of $50k)
Stop = 100 points × $50 = $5,000
Contracts = $250 ÷ $5,000 = 0.05 → 1 contract
Target = 400 points = $20,000 profit
6. Visual Elements on ChartKey Levels
Previous Daily High/Low - Red/Green solid lines
Previous Weekly High/Low - Red/Green circles
Previous Monthly High/Low - Red/Green crosses
Equilibrium Line - White dotted line (50% of range)
Zones
Premium Zone - Light red shading (upper 50%)
Discount Zone - Light green shading (lower 50%)
SMC Markings
Bullish Order Blocks - Green boxes with "Bull OB" label
Bearish Order Blocks - Red boxes with "Bear OB" label
Bullish FVGs - Green boxes with "FVG↑"
Bearish FVGs - Red boxes with "FVG↓"
Liquidity Sweeps - Yellow "SSL" (down) or "BSL" (up) labels
Break of Structure - Small lime/red circles
Entry Signals
Daily Long - Small lime triangle ▲ with "D" below price
Daily Short - Small red triangle ▼ with "D" above price
Weekly Long - Medium green triangle ▲ with "W" below price
Weekly Short - Medium maroon triangle ▼ with "W" above price
Monthly Long - Large aqua triangle ▲ with "M" below price
Monthly Short - Large fuchsia triangle ▼ with "M" above price
7. Information TablesConfluence Score Table (Top Right)
┌──────────┬────────┬────────┬────────┐
│ TF │ SCORE │ STATUS │ SIGNAL │
├──────────┼────────┼────────┼────────┤
│ 📊 DAILY │ 7/10 │ ✓ PASS │ 🔼 │
│ 📈 WEEKLY│ 6/10 │ ✗ WAIT │ ━ │
│ 🌙 MONTH │ 9/10 │ ✓ PASS │ 🔽 │
├──────────┴────────┴────────┴────────┤
│ P&L: $2,450 │
└─────────────────────────────────────┘
Green scores = Pass (meets minimum threshold)
Orange/Red scores = Fail (wait for better setup)
🔼 = Long signal active
🔽 = Short signal active
━ = No signal
Entry Checklist Table (Bottom Right)
┌──────────────┬───┐
│ CHECKLIST │ ✓ │
├──────────────┼───┤
│ ━ DAILY ━ │ │
│ HTF Trend │ ✓ │
│ Zone │ ✓ │
│ OB │ ✗ │
│ Liq Sweep │ ✓ │
│ Volume │ ✓ │
│ ━ WEEKLY ━ │ │
│ W/M Align │ ✓ │
│ Deep Zone │ ✗ │
│ ━ MONTHLY ━ │ │
│ M/W/D Align │ ✓ │
│ Zone: Discount│ │
└──────────────┴───┘
Green ✓ = Condition met
Red ✗ = Condition not met
Real-time updates as market conditions change
8. Alert SystemIndividual Alerts:
"Daily Long" - Triggers when daily long setup appears
"Daily Short" - Triggers when daily short setup appears
"Weekly Long" - Triggers when weekly long setup appears
"Weekly Short" - Triggers when weekly short setup appears
"Monthly Long" - Triggers when monthly long setup appears
"Monthly Short" - Triggers when monthly short setup appears
Combined Alerts:
"Any Long Signal" - Catches any bullish opportunity (D/W/M)
"Any Short Signal" - Catches any bearish opportunity (D/W/M)
Alert Messages Include:
🔼/🔽 Direction indicator
Timeframe (DAILY/WEEKLY/MONTHLY)
Current confluence score
REM Algo - Earnings AlertsNot everyone wants to hold positions through earnings announcements — and if you’re evaluating a strategy, earnings-related gaps can distort performance metrics and make results harder to interpret.
This script helps you manage earnings risk by triggering alerts during an Earnings Blackout window. You can:
get an alert to close positions the day before earnings, and/or
receive a reminder not to open new positions on blackout days prior to the earnings announcement.
Add alerts to the stocks you trade. When a blackout day occurs, the script triggers at the hour and minute you choose in the settings. The Earnings Blackout period covers the day before and the day of the earnings announcement, adjusted for weekends and market holidays.
Use it as a standalone risk-control tool — or alongside your existing strategy — so earnings gaps don’t interfere with your trading rules or your backtest results.
ICT Unicorn Model [Kodexius]ICT Unicorn Model is a market structure and imbalance confluence tool that automatically detects high probability “Unicorn” setups by combining three key elements into a single, clean script:
-A first, clean break of that swing level (displacement style break)
-A Fair Value Gap that overlaps a breaker candle body range
Instead of plotting every pivot or every imbalance independently, the script waits for a specific sequence: price establishes a valid swing, breaks that swing for the first time, and prints a setup only when the resulting context aligns with a valid, volatility filtered FVG and a clearly defined breaker range.
Each detected setup is drawn directly on the chart with labeled zones (Breaker and FVG) and is then actively monitored. If price violates the breaker boundary based on your chosen invalidation basis (Close or Wick), the setup is marked inactive and can optionally be removed to keep the chart clean.
This indicator is designed for traders who work with ICT style concepts such as liquidity runs, displacement, breaker blocks, and imbalance reversion, and who want a structured, rules based visualization rather than discretionary drawing.
🔹 Features
🔸 Fair Value Gap Detection With Volatility Filtering
Bullish and bearish FVGs are detected using classic three candle imbalance logic. To avoid low quality gaps during compression, the script applies an ATR based minimum size filter using the “FVG Min Size (ATR Multiplier)” input. Only gaps larger than ATR * threshold are considered valid.
🔸 First Break Validation (Clean Break Logic)
A key part of the model is identifying a “first break” of a swing level. The script checks whether the swing price has already been invalidated between the swing bar and the current bar. If it has, the swing is ignored. This helps reduce repeated signals and focuses on fresh structural breaks.
🔸 Breaker and FVG Confluence With Overlap Requirement
After a valid break occurs, the script defines a breaker range using the body of the swing candle (open and close). A setup is only created if this breaker body range overlaps the detected FVG price range. This overlap requirement is what filters many “almost” conditions and keeps signals more selective.
Bullish Unicorn:
Bearish Unicorn:
🔸 Configurable Invalidation Basis (Close or Wick)
You can choose how a setup fails:
-Close: invalidation requires a candle close beyond the breaker boundary
-Wick: invalidation occurs as soon as any wick crosses beyond the breaker boundary
This allows the tool to adapt to different trading styles, from conservative confirmation to more sensitive risk control.
🔸 Automatic Cleanup of Failed Setups
If “Delete Invalidated Setups” is enabled, the script removes the breaker box, FVG box, and label as soon as the setup is invalidated. If disabled, the zones remain visible for review while the setup is marked inactive internally.
🔸 Clear Chart Visuals
Each setup plots:
-A labeled Breaker zone box
-A labeled FVG zone box
-A directional Unicorn label (Bull or Bear) that updates position as the chart advances
Colors for bullish and bearish structures are fully configurable.
🔸 Alert Conditions
Two alert conditions are provided:
-Bullish Unicorn Setup Detected
-Bearish Unicorn Setup Detected
Alerts trigger only on the bar a new setup is created.
🔹 Calculations
This section summarizes the main computations used internally. The goal here is to explain the model mechanics rather than reproduce every implementation detail.
1. Swing Detection (Pivot High / Pivot Low)
Swing levels are detected using a symmetric pivot definition with “Swing Length” bars on both sides:
float ph = ta.pivothigh(high, swingLength, swingLength)
float pl = ta.pivotlow(low, swingLength, swingLength)
When a pivot is confirmed, its price and originating bar index are stored:
-Swing High: price = pivot high, isHigh = true
-Swing Low: price = pivot low, isHigh = false
The script keeps a limited history (most recent swings) to stay efficient.
2. Fair Value Gap Detection
FVGs use the classic three candle displacement imbalance:
Bullish FVG condition
bool isBullFVG = high < low
Bullish gap range is defined as:
-Top = low
-Bottom = high
Bearish FVG condition
bool isBearFVG = low > high
Bearish gap range is defined as:
-Top = low
-Bottom = high
3. ATR Based Minimum Gap Filter
ATR is computed (length 14), then the gap size is compared against a user threshold:
float atr = ta.atr(14)
bool validBullFVG = isBullFVG and (bullFvgTop - bullFvgBot) > (atr * fvgThreshold)
bool validBearFVG = isBearFVG and (bearFvgTop - bearFvgBot) > (atr * fvgThreshold)
This prevents very small imbalances from generating setups in low volatility conditions.
4. “First Break” Check Using Level Invalidation Scan
Before accepting a swing break, the script scans forward from the swing bar to the current bar to confirm the level has not already been breached. The scan can be based on wick or close:
-Wick mode: uses high or low
-Close mode: uses close
Conceptually:
priceToCheck = mode == "Wick" ? (checkBelow ? low : high) : close
If a prior breach is found, the swing is treated as already invalidated and is ignored for setup creation.
5. Break Of Structure Condition
Bullish break requirement
A bullish setup requires breaking a stored swing high with bullish body intent:
-close > swingHighPrice
-open < close
Bearish break requirement
A bearish setup requires breaking a stored swing low with bearish body intent:
-close < swingLowPrice
-open > close
An additional proximity filter is applied in the bearish branch to reduce weak or overly extended breaks by requiring the prior close to be reasonably near the swing level.
6. Breaker Range Construction
Once a qualifying swing is found, the breaker range is derived from the body of the swing candle (the candle at the swing bar index). The body boundaries are:
float breakerTop = math.max(bOpen, bClose)
float breakerBot = math.min(bOpen, bClose)
This models the breaker as the candle body range rather than full wick range, which typically produces more practical invalidation boundaries.
7. Overlap Test Between Breaker and FVG
A setup is only created if the breaker body overlaps the FVG zone. Conceptually the script rejects cases where one range is fully above or fully below the other:
-If there is no overlap, no setup is created
-If overlap exists, the Unicorn setup is valid
8. Active Monitoring and Invalidation
Each setup remains active until invalidated. Invalidation is evaluated every bar using your selected basis:
-Close basis: compares close to breaker boundary
-Wick basis: compares high or low to breaker boundary
Bullish invalidation
Setup fails if price crosses below breaker bottom.
Bearish invalidation
Setup fails if price crosses above breaker top.
If deletion is enabled, all drawings related to that setup are removed immediately on invalidation.
9. Drawing Updates and Object Lifecycle
Breaker and FVG boxes are extended to the right while the setup is active to keep zones visible into the near future. The Unicorn label is also repositioned as new bars print so the most recent context stays readable.






















