ICT Concepts Indicator

NinjaTrader 8 Indicator Published 07 Jan 2024 - Updated on 25 Jan 2024
FREE
Description

The ICT concepts indicator is a free NinjaTrader 8 indicator which displays key concepts of the ICT trading methodology and style. Those key concepts are the following:

  • Change of strucutre (or Change of Character or Market Structure Shift) that indicates that the trend might change
  • Break of Strucutre (or Market Structure Break) that indicates a continuation of the trend
  • Faire Value Gaps which represent displacements of price and are defined as instances of inefficiencies or imbalances visualized by three consecutive candles containing one large middle candle whose bordering candles' upper and lower wicks do not overlap.
  • Order Blocks which represent crucial support and resistance levels derived from aggresive price movement, and that can be used as entry or exit levels

The ICT Concepts indicator can be used in a multi-timeframe settings and can be applied on multiple higher time-frames while visualized on a smaller timeframe

We highly recommend joining our discord community by following this invite link discord-invitation

Examples

Here are few examples of how the indicator works:

  • Market Structure Shift & Market Structure Break
  • Let us begin with the first example showing the basics of ICT market structure concepts being drawn on the chart. In this example Market structure shift and market structure breaks are being drawn on the 15 Range chart on the S&P micros. With a different set of Swing related parameters this can be adapted to another timeframe or instrument. In this example, 3 price swings are used to define a trend.

    ict-market-structure
    Click to enlarge
  • Fair Value Gaps
  • In this example, the indicator detects several Fair Value Gaps on the MNQ instrument on a 15 Minutes Timeframe. Coupled with MSS and MSB, FVGs can be a very good signal to enter a trade.

    In this example, bullish FVGs are drawn in green, and bearish FVGs are drawn in red. Their drawing is stopped when they are retested or mitigated

    ict-market-structure
    Click to enlarge
  • Breaker Blocks
  • Inner Circle Trader (ICT) defined a breaker block as a failed Order Block created after the liquidity sweep and shift in the market structure.

    Breaker blocks are detected between 4 price swings. For a bullish breaker block:

    1. Swing Low
    2. Swing High
    3. Lower Low
    4. Higher High

    The breaker block zone is defined by the last bullish candle that created the first Swing High

    For a bearish breaker block

    1. Swing High
    2. Swing Low
    3. Higher High
    4. Lower Low

    The breaker block zone is defined by the last bearish candle that created the first Swing Low

    Here is an example that illustrates both bullish and bearish breaker blocks

    ict-market-structure
    Click to enlarge

    The swings has been numbered in red for the bearish BB and in green for the bullish BB. On the bearish BB instance the candle marked with red "2" defines the BB zone. Whereas in the bullish BB example, the green candle just before the candle marked "3" in red and "2" in green is the candle that defines the BB zone.

  • Order Blocks
  • Order Blocks are hard to define. According to the ICT methodology, they are regions of aggressive price movements, zones of when the price moves out of consolidation ranges with force.

    After extensive research I have defined 3 criterias that define order blocks

    • Order Blocks occur after Market structure shifts or market structure breaks
    • They should be followed by a strong price move creating a gap
    • They should not be mitigated

    Once these 3 criterias are met, we can draw the Order Block zone which is defined by the high/low of the last opposite candle in the direction of the move. Notice that order blocks are drawn in the same color (default Blue) for both long and short types and they are labeled with "OB"

    ict-market-structure
    Click to enlarge
  • Higher Timeframe MSS & MSB
  • On of the most valuable features of this indicator is the ability to apply it on higher timeframes. In this example, swings and market structure elements are run on the higher 60 Minutes timeframe, whereas the indicator is running on the lower 15 Minutes Timeframe.

    As you can see, the price swings are identified on the 60 Minutes bars, but drawn on the current 15 Minutes bars. The same for Market Structure Shift at the left of the chart, and the Market Structure Break on the right

    ict-market-structure
    Click to enlarge
  • Higher Timeframe Order Blocks
  • In this example, two bearish order blocks were detected on the higher time-frame 60 Minutes and drawn on the current 15 Minutes lower time-frame. Notice that the order block started drawing at the close of the 60 Minutes candle which explains the horizontal gap and the the little delay of drawing.

    ict-market-structure
    Click to enlarge
  • Higher Timeframe Faire Value Gaps
  • The same logic of higher time-frame analysis and drawing can also be used for Fair Value Gaps. As you can see on the two examples below, FVGs are detected on a higher time-frame of 60 Minutes and drawn on the current lower time-frame of 15 Minutes.

    ict-market-structure
    Click to enlarge
    ict-market-structure
    Click to enlarge
    Features

    The ICT Concepts indicator has a set of unique features

    • Free. The indicator is completely free to use.
    • Can be used on a Higher timeframes for multitimeframe support
    • Plots Break of Structure and Change of Stucture
    • Plots Fair Value Gaps
    • Plots Order Blocks
    • Plots Breaker Blocks
    • Highly customizable, lightweight and can be adapted to wide range of instruments
    Parameters

    We always try to keep the parameters to minimum.

    License
    License This is the free license key you get when you create an account on automated-trading.ch. After creating an account, copy your license key from the billing page. You need to set this parameter only once per month, once the license key is validated it will be remembered for the rest of the billing cycle.
    Rendering
    Render Opacity (1-100) The opacity to render ICT object on the chart. I personally prefer the value of 90
    Bearish Color Draw Color of bearish items to draw on the chart
    Bullish Color Draw Color of bullish items to draw on the chart
    Order Block Color Draw color of order blocks to draw on the chart, the same color is used for support and resistance block orders
    Breaker Block Color Draw color of breaker blocks to draw on the chart, the same color is used for support and resistance breaker block orders
    General
    Run on Higher TimeFrame This parameter allows to select a higher time-frame on which the ICT engine will be run and ICT objects will be detected. The default value of this parameter is Same_as_Main_DataSeries which means running the ICT engine on the same time-frame as the chart timeframe. If you select a different value than Same_as_Main_DataSeries, make sure to select a higher time-frame in regard of the active charts' timeframe. For example, if the current time-frame on the chart is 15 Minutes, make sure that the value of this parameter represents a bigger time-frame such as 1 Hour. If in that case you select 1 Minute as a higher time-frame for example, the indicator will not work.
    Higher TimeFrame Period This parameter sets the period of the higher time-frame if the value of the previous parameter is set to another value than Same_as_Main_DataSeries. If the value of the previous parameter Run on Higher TimeFrame is set to Same_as_Main_DataSeries, this parameter will be ignored
    Extension Mode This parameter sets the mode of extending drawing of zones such as Fair value gaps, order blocks and breaker blocks
    • Until Mitigated: This value will extend the drawing of the zone until mitigated (retested or touched) by the price
    • Until Mitigated Or New Day: This value will extend the drawing of the zone until mitigated (retested or touched) by the price only during the same day. The zone drawing will be stopped from extending into a new day
    • Until Broken: This value will extend the drawing of the zone until broken by the price, meaning the price completely retraces through the zone
    • Until Broken Or New Day: This value will extend the drawing of the zone until broken by the price, meaning the price completely retraces through the zone only during the same day. The zone drawing will be stopped from extending into a new day
    Market Structure
    Swing Period Swings are higher lows,higher highs, lower highs and lower lows. After each price bar close, a swing can be detected. But just after that, the next bar can cancel the swing at the previous bar by creating a new swing of the same type. Or this can happen on the second bar, or the third, etc... The swing period sets how many bars is enough to seperate two swings of the same type. The more you increase this parameter, the more you decrease the number of swings overall. The more you decrease this parameter, the more you increase the number of overall swings. I personally use the value of 3 or 4 for this parameter.
    Show Swings This parameter will enable/disable the drawing of swings on the chart. Swings will always be analyzed and processed regardless of this parameter which only affect visibility and render.
    Trend Swing Count This parameter sets the number of successive swings required to define a trend. For example if this value is set to 3, the indicator will being looking for a market strucutre shift or break after 3 consecutive low swings going up or 3 consecutive high swings going down
    Show Market Structure Shift (MSS) This will enable/disable drawing of Market Structure Shifts
    Show Market Structure Break (MSB) This will enable/disable drawing of Market Structure Breaks
    Show Order Blocks This will enable/disable drawing of Order Blocks
    Show Breaker Blocks This will enable/disable drawing of Breaker Blocks
    Fair Value Gap
    Show Fair Value Gaps This will enable/disable drawing of Fair Value Gaps
    Same 3 Candle Type This parameter will constraint Fair Value Gaps to 3 consecutive candles of the same type (bullish or bearish). If this parameter is set to false the indicator will detect Faire Value Gaps that are not perfect. For example, a bullish FVG composed of the first candle Red, then the middle one green, than the last one green. A perfect FVG should have 3 candles of the same type
    Min. Gap (ticks) This parameter sets the minimum distance in ticks between the wicks of the Fair Value Gap to be valid. The more you increase this value, the fewer FVGs will be detected. Inversly, the more you decrease this value, the more you increase the number of detected FVGs
    Download & Installation Instructions

    The indicator can be downloaded for free. To download and install the indicator follow the instructions below

    • Click on the below download button to download the ICT Concepts Indicator file
    • This file was downloaded 378 times. Last download was 5 hours ago
    • Import the downloaded .zip file into NinjaTrader using the import NinjaScript menu item
    • how to import add on to NinjaTrader
    • Next, open a new chart window
    • image
    • In case you intend to use the indicator in a multi-timeframe setting, you should enable the Tick Replay. In this case, on the new chart settings, make sure you enable the Tick Replay check box
    • Overall, I strongly recommend running the indicator with enabled Tick Replay for better consistent results
    • If you don't see the Tick Replay check box, go to Tools->Options->Market Data and enable Show Tick Replay
    • image
    • After installing the indicator and opening a new Chart window you should add the indicator to the chart. Right-click on the chart and click on Indicators...
    • image
    • After adding the indicator to the chart, the indiactor will be run on Historical data loaded in the chart.
    • After that, the indicator is added with success and will continue to run on live market data
    Frequantly Asked Questions
    General
    Can I ask you to modify/add a new feature to this Indicator?

    Yes, If you have an idea that you believe can improve this indicatr, I will be more then happy to hear from you. Please use the contact page to send me a message

    Will I get the source code of the indicator when I download it?

    No, the source code of the indicator is protected for copyright reasons

    Can this indicator be used in a strategy?

    No, this indicator only do rendering and doesn't provide data that can be used from within a strategy. Check out our other strategies for an ICT Concepts based strategy

    Can I use this indicator without the TickReplay mode enabled?

    Yes you can use this indicator without TickReplay unless you are using the indicator in a multi-timeframe setting by chosing a higher timeframe on the Run on Higher TimeFrame parameter. In that case, enabling the TickReplay option is required

    Release Notes
    Release 1.2.0.1 - 25 Jan 2024

    • Fixed Breaker Blocks detection algorithm

    Release 1.2.0.0 - 14 Jan 2024

    • User Friendly parameter value options
    • Always drawing FVG label
    • Better Swing analysis
    • Added "Until Broken" as an extension mode
    • Better Handling of empty license value
    • Added Breaker Blocks

    Release 1.0.0.0 - 07 Jan 2024

    • First Release of the indicator

    User Comments & Feedback