OPEN-SOURCE SCRIPT

ICT Concepts [LuxAlgo]

The ICT Concepts indicator regroups core concepts highlighted by trader and educator "The Inner Circle Trader" (ICT) into an all-in-one toolkit. Features include Market Structure (MSS & BOS), Order Blocks, Imbalances, Buyside/Sellside Liquidity, Displacements, ICT Killzones, and New Week/Day Opening Gaps.

🔶 SETTINGS

🔹 Mode

  • When Present is selected, only data of the latest 500 bars are used/visualized, except for NWOG/NDOG


🔹 Market Structure

  • Enable/disable Market Structure.
  • Length: will set the lookback period/sensitivity.
  • In Present Mode only the latest Market Structure trend will be shown, while in Historical Mode, previous trends will be shown as well:
    snapshot
  • You can toggle MSS/BOS separately and change the colors:
    snapshot


🔹 Displacement

  • Enable/disable Displacement.


🔹 Volume Imbalance

  • Enable/disable Volume Imbalance.
  • # Visible VI's: sets the amount of visible Volume Imbalances (max 100), color setting is placed at the side.


🔹 Order Blocks

  • Enable/disable Order Blocks.
  • Swing Lookback: Lookback period used for the detection of the swing points used to create 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.
  • Color settings.
  • Show Historical Polarity Changes: Allows users to see labels indicating where a swing high/low previously occurred within a breaker block.
  • Use Candle Body: Allows users to use candle bodies as order block areas instead of the full candle range.

  • Change in Order Blocks style:
    snapshot


🔹 Liquidity

  • Enable/disable Liquidity.
  • Margin: sets the sensitivity, 2 points are fairly equal when:
           'point 1' < 'point 2' + (10 bar Average True Range / (10 / margin)) and
           'point 1' > 'point 2' -   (10 bar Average True Range / (10 / margin))
    snapshot
  • # Visible Liq. boxes: sets the amount of visible Liquidity boxes (max 50), this amount is for Sellside and Buyside boxes separately.
  • Colour settings.

  • Change in Liquidity style:
    snapshot


🔹 Fair Value Gaps

  • Enable/disable FVG's.
  • Balance Price Range: this is the overlap of latest bullish and bearish Fair Value Gaps.
         By disabling Balance Price Range only FVGs will be shown.
    snapshot
  • Options: Choose whether you wish to see FVG or Implied Fair Value Gaps (this will impact Balance Price Range as well)
  • # Visible FVG's: sets the amount of visible FVG's (max 20, in the same direction).
  • Color settings.

  • Change in FVG style:
    snapshot


🔹 NWOG/NDOG

  • Enable/disable NWOG; color settings; amount of NWOG shown (max 50).
  • Enable/disable NDOG    ; color settings; amount of NDOG     shown (max 50).


🔹 Fibonacci

This tool connects the 2 most recent bullish/bearish (if applicable) features of your choice, provided they are enabled.

  • 3 examples (FVG, BPR, OB):
    snapshot
  • Extend lines -> Enabled (example OB):
    snapshot


🔹 Killzones

  • Enable/disable all or the ones you need.
  • Time settings are coded in the corresponding time zones.
    snapshot


🔶 USAGE

By default, the indicator displays each feature relevant to the most recent price variations in order to avoid clutter on the chart & to provide a very similar experience to how a user would contruct ICT Concepts by hand.

Users can use the historical mode in the settings to see historical market structure/imbalances. The ICT Concepts indicator has various use cases, below we outline many examples of how a trader could find usage of the features together.

snapshot

In the above image we can see price took out Sellside liquidity, filled two bearish FVGs, a market structure shift, which then led to a clean retest of a bullish FVG as a clean setup to target the order block above.

snapshot

Price then fills the OB which creates a breaker level as seen in yellow.

snapshot

Broken OBs can be useful for a trader using the ICT Concepts indicator as it marks a level where orders have now been filled, indicating a solidified level that has proved itself as an area of liquidity. In the image above we can see a trade setup using a broken bearish OB as a potential entry level.

snapshot

We can see the New Week Opening Gap (NWOG) above was an optimal level to target considering price may tend to fill / react off of these levels according to ICT.

snapshot

In the next image above, we have another example of various use cases where the ICT Concepts indicator hypothetically allow traders to find key levels & find optimal entry points using market structure.

snapshot

In the image above we can see a bearish Market Structure Shift (MSS) is confirmed, indicating a potential trade setup for targeting the Balanced Price Range imbalance (BPR) below with a stop loss above the buyside liquidity.

snapshot

Although what we are demonstrating here is a hindsight example, it shows the potential usage this toolkit gives you for creating trading plans based on ICT Concepts.

snapshot

Same chart but playing out the history further we can see directly after price came down to the Sellside liquidity & swept below it...

snapshot

Then by enabling IFVGs in the settings, we can see the IFVG retests alongside the Sellside & Buyside liquidity acting in confluence.

snapshot

Which allows us to see a great bullish structure in the market with various key levels for potential entries.

snapshot

Here we can see a potential bullish setup as price has taken out a previous Sellside liquidity zone and is now retesting a NWOG + Volume Imbalance.

snapshot

Users also have the option to display Fibonacci retracements based on market structure, order blocks, and imbalance areas, which can help place limit/stop orders more effectively as well as finding optimal points of interest beyond what the primary ICT Concepts features can generate for a trader.

In the above image we can see the Fibonacci extension was selected to be based on the NWOG giving us some upside levels above the buyside liquidity.

🔶 DETAILS

Each feature within the ICT Concepts indicator is described in the sub sections below.

🔹 Market Structure

Market structure labels are constructed from price breaking a prior swing point. This allows a user to determine the current market trend based on the price action.

There are two types of Market Structure labels included:

  • Market Structure Shift (MSS)
  • Break Of Structure (BOS)


A MSS occurs when price breaks a swing low in an uptrend or a swing high in a downtrend, highlighting a potential reversal. This is often labeled as "CHoCH", but ICT specifies it as MSS.

On the other hand, BOS labels occur when price breaks a swing high in an uptrend or a swing low in a downtrend. The occurrence of these particular swing points is caused by retracements (inducements) that highlights liquidity hunting in lower timeframes.

🔹 Order Blocks

More significant market participants (institutions) with the ability of placing large orders in the market will generally place a sequence of individual trades spread out in time. This is referred as executing what is called a "meta-order".

Order blocks highlight the area where potential meta-orders are executed. Bullish order blocks are located near local bottoms in an uptrend while bearish order blocks are located near local tops in a downtrend.

When price mitigates (breaks out) an order block, a breaker block is confirmed. We can eventually expect price to trade back to this breaker block offering a new trade opportunity.

🔹 Buyside & Sellside Liquidity

Buyside / Sellside liquidity levels highlight price levels where market participants might place limit/stop orders.

Buyside liquidity levels will regroup the stoploss orders of short traders as well as limit orders of long traders, while Sellside liquidity levels will regroup the stoploss orders of long traders as well as limit orders of short traders.

These levels can play different roles. More informed market participants might view these levels as source of liquidity, and once liquidity over a specific level is reduced it will be found in another area.

🔹 Imbalances

Imbalances highlight disparities between the bid/ask, these can also be defined as inefficiencies, which would suggest that not all available information is reflected by the price and would as such provide potential trading opportunities.

It is common for price to "rebalance" and seek to come back to a previous imbalance area.

ICT highlights multiple imbalance formations:

  • Fair Value Gaps: A three candle formation where the candle shadows adjacent to the central candle do not overlap, this highlights a gap area.
  • Implied Fair Value Gaps: Unlike the fair value gap the implied fair value gap has candle shadows adjacent to the central candle overlapping. The gap area is constructed from the average between the respective shadow and the nearest extremity of their candle body.
  • Balanced Price Range: Balanced price ranges occur when a fair value gap overlaps a previous fair value gap, with the overlapping area resulting in the imbalance area.
  • Volume Imbalance: Volume imbalances highlight gaps between the opening price and closing price with existing trading activity (the low/high overlap the previous high/low).
  • Opening Gap: Unlike volume imbalances opening gaps highlight areas with no trading activity. The low/high does not reach previous high/low, highlighting a "void" area.


🔹 Displacement

Displacements are scenarios where price forms successive candles of the same sentiment (bullish/bearish) with large bodies and short shadows.

These can more technically be identified by positive auto correlation (a close to open change is more likely to be followed by a change of the same sign) as well as volatility clustering (large changes are followed by large changes).

Displacements can be the cause for the formation of imbalances as well as market structure, these can be caused by the full execution of a meta order.

🔹 Kill Zones

Killzones represent different time intervals that aims at offering optimal trade entries. Killzones include:

- New York Killzone (7:9 ET)
- London Open Killzone (2:5 ET)
- London Close Killzone (10:12 ET)
- Asian Killzone (20:00 ET)

🔶 Conclusion & Supplementary Material

This script aims to emulate how a trader would draw each of the covered features on their chart in the most precise representation to how it's actually taught by ICT directly.

There are many parallels between ICT Concepts and Smart Money Concepts that we released in 2022 which has a more general & simpler usage:
Smart Money Concepts (SMC) [LuxAlgo]


ICT Concepts, however, is more specifically aligned toward the community's interpretation of how to analyze price 'based on ICT', rather than displaying features to have a more classic interpretation for a technical analyst.
educationalictictconceptsinnercircletraderluxalgomarketstructureorderblockspriceactionSMCSupport and ResistanceTrend Analysis

Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in publication is governed by House rules. You can favorite it to use it on a chart.

Want to use this script on a chart?


Get access to our exclusive tools: luxalgo.com

Join our 150k+ community: discord.gg/lux

All content provided by LuxAlgo is for informational & educational purposes only. Past performance does not guarantee future results.
Also on:

Disclaimer