ICT Market Structure

OVERVIEW
ICT Market Structure maps the skeleton of a chart. It marks confirmed swing points as higher highs, higher lows, lower highs and lower lows, and draws a line where price closes through the last swing. A close through a swing in the direction of the prevailing structure is a break of structure. A close through it against the prevailing structure is a change of character. The bias those breaks leave behind is shown in a small table.
HOW IT WORKS
A swing high is a bar whose high is the top of the window of a chosen number of bars on each side, and a swing low is the mirror. A swing is known only after that many bars have passed. Swings alternate between highs and lows. Each new swing high is labelled HH if it is above the previous swing high and LH if it is below, and each swing low is labelled HL or LL in the same way. The market bias starts undefined. A bar that closes above the last swing high, after closing below it on the bar before, is a bullish break. If the bias was already bullish or undefined, it is a break of structure. If the bias was bearish, it is a change of character. The bearish case is the mirror. A given swing level can only be broken once, and every break sets the bias to the direction of the break.

Swing labels and break lines on a trending chart. BOS marks continuation and CHoCH marks a break against the prevailing structure.
WHAT YOU'LL SEE ON THE CHART

The same chart with the trend background switched on to show the bias.
BEST FOR
This indicator draws and labels price structure rather than reporting a single event type, so no market or timeframe group is singled out. It was not measured, and it reads the candles of whatever chart it is placed on.
ALERTS
LIMITATIONS
The script reads the candles of the chart it is placed on, so results on non-standard chart types differ from results on regular candles. Swing points are known only after the chosen number of bars has passed, so swing-based items appear with that delay. It is a drawing and labelling tool, not a forecast. It is weaker in these situations:
OPEN SOURCE
The source code is open. This script is one module of the author's own larger ICT toolkit, published here on its own so it can be read, checked and reused under the Mozilla Public License 2.0.
ACCESS
Free, open-source script.
DISCLAIMER
This indicator is a technical analysis tool, not investment advice. The author is not a registered investment adviser, broker or dealer. Nothing here is a recommendation to buy, sell or hold any instrument. What you see on the chart is the output of a calculation you configured. Any decision you take from it is yours. Past behaviour of an indicator — including anything you observe in historical bars or in a backtest, which is a simulation — does not indicate future results. Trading carries a real risk of loss, including your entire capital. Charting uses TradingView® technology. TradingView is unaffiliated with the author. For educational purposes only. Not investment advice.
ICT Market Structure maps the skeleton of a chart. It marks confirmed swing points as higher highs, higher lows, lower highs and lower lows, and draws a line where price closes through the last swing. A close through a swing in the direction of the prevailing structure is a break of structure. A close through it against the prevailing structure is a change of character. The bias those breaks leave behind is shown in a small table.
HOW IT WORKS
A swing high is a bar whose high is the top of the window of a chosen number of bars on each side, and a swing low is the mirror. A swing is known only after that many bars have passed. Swings alternate between highs and lows. Each new swing high is labelled HH if it is above the previous swing high and LH if it is below, and each swing low is labelled HL or LL in the same way. The market bias starts undefined. A bar that closes above the last swing high, after closing below it on the bar before, is a bullish break. If the bias was already bullish or undefined, it is a break of structure. If the bias was bearish, it is a change of character. The bearish case is the mirror. A given swing level can only be broken once, and every break sets the bias to the direction of the break.
Swing labels and break lines on a trending chart. BOS marks continuation and CHoCH marks a break against the prevailing structure.
WHAT YOU'LL SEE ON THE CHART
- Swing labels — small HH, HL, LH and LL labels on each confirmed swing, coloured by direction.
- Swing level lines — a short dotted line extending to the right of each swing point.
- BOS lines — a line from the broken swing to the bar that broke it, labelled BOS, in the colour of the direction.
- CHoCH lines — the same line in the accent colour, labelled CHoCH, when the break goes against the prevailing structure.
- Trend background and bar colour — optional shading and candle colouring by the current bias. Off by default.
- Info table — a small table with the market bias, the last high, the last low and the swing sensitivity.
The same chart with the trend background switched on to show the bias.
BEST FOR
This indicator draws and labels price structure rather than reporting a single event type, so no market or timeframe group is singled out. It was not measured, and it reads the candles of whatever chart it is placed on.
ALERTS
- Bullish BOS
- Bearish BOS
- Bullish CHoCH
- Bearish CHoCH
- Upward Structure Break (BOS or CHoCH)
- Downward Structure Break (BOS or CHoCH)
LIMITATIONS
The script reads the candles of the chart it is placed on, so results on non-standard chart types differ from results on regular candles. Swing points are known only after the chosen number of bars has passed, so swing-based items appear with that delay. It is a drawing and labelling tool, not a forecast. It is weaker in these situations:
- Choppy, range-bound markets, where breaks follow each other in both directions
- Very low swing sensitivity, which fills the chart with small swings
- The first bars of a chart, while no swing has been confirmed
- Intrabar use, since events can disappear before the bar closes
OPEN SOURCE
The source code is open. This script is one module of the author's own larger ICT toolkit, published here on its own so it can be read, checked and reused under the Mozilla Public License 2.0.
ACCESS
Free, open-source script.
DISCLAIMER
This indicator is a technical analysis tool, not investment advice. The author is not a registered investment adviser, broker or dealer. Nothing here is a recommendation to buy, sell or hold any instrument. What you see on the chart is the output of a calculation you configured. Any decision you take from it is yours. Past behaviour of an indicator — including anything you observe in historical bars or in a backtest, which is a simulation — does not indicate future results. Trading carries a real risk of loss, including your entire capital. Charting uses TradingView® technology. TradingView is unaffiliated with the author. For educational purposes only. Not investment advice.
volebot — technical-analysis indicators with plain-language docs. Access requests and contact: vole.bot
Отказ от ответственности
Информация и публикации не предназначены для предоставления и не являются финансовыми, инвестиционными, торговыми или другими видами советов или рекомендаций, предоставленных или одобренных TradingView. Подробнее читайте в Условиях использования.
volebot — technical-analysis indicators with plain-language docs. Access requests and contact: vole.bot
Отказ от ответственности
Информация и публикации не предназначены для предоставления и не являются финансовыми, инвестиционными, торговыми или другими видами советов или рекомендаций, предоставленных или одобренных TradingView. Подробнее читайте в Условиях использования.