The first concept we are going to approach in this series im designing and automating an ICT strategy is going to be liquidity. This is a really interesting topic because it gives an insight to how institutional traders operate. The traditional definition of liquidity is the relative ease with which a certain asset can be bought and sold. This also applies to assets like currencies. In this specific case we can look at it as the capacity to fulfill but and sell orders. If you have any experience with trading strategies you might have noted that stop losses are placed at specific levels. This means that there is a high probability that anyone using technical analysis will have certain level marked as stop losses. This creates zones in price where many order will be closed, giving rise to high liquidity at those zones. These zone give institutions or "smart money" the capacity of placing orders without producing slippage (simply put, slippage is the difference between the expected price of an asset and the actual price that it is traded at the moment of the order getting fulfilled). And here is where things start getting interesting, there is a concept called "stop hunting". This is when the large institutions deliberately push price towards these stop loss zones, creating a bunch of liquidity for them selves. To illustrate this better we can see a simple example, let's say an asset's price is currently in a an up trend. We can assume that many market participants are going long on this asset. Independently on the strategy they are using we can assume that many of them have stop losses at the most recent swing low. What institutions will do is manipulate price and push it towards the most recent swing low so these stop losses get triggered. Giving way to an increase i liquidity which the institution can later take advantage of. This is where the tricks come in. There is another related concept which is "inducement". This refers to what I like to think of as "illusions" created by institutions to manipulate the market psychology to their favor. In the context of the previous example, inducement might look like a price spike during the up trend. This might make traders think that the up trend is gaining momentum. When in reality this spike is just to creat liquidity for a trend reversal. The intention of this spike could be to trigger the stop losses of sellers.
Now that we have an idea of the concepts, let's take a look at the types of liquidity. There are two: sell-side and buy-side liquidity. Sell-side liquidity is the liquidity generated by sell orders, which are in other terms the stop losses of buyers bellow the price. And buy-side is the same just in the other direction. In ICT, price will move towards these buy-side and sell-side liquidity zones which is where institutions want price to be so they can fulfill their orders.

For the purpose of illustrating this concept i have added an image of the EURUSD pair in trading view, using the liquidity indicator provided by LuxAlgo. Don't worry, in the next post we will learn how to implement it in python but for now we will take this image for the sake of example.
Often, the concept of liquidity zones and order blocks get confused. But they are not the same. Order blocks are usually at a certain price or are narrow, whereas liquidity zones are well zones. Also, order blocks are created by specific actions taken over the asset like a sell or a buy meanwhile liquidity zones are a larger part of the general dynamic of the market. However they do interact in many cases. Order blocks can form parts of liquidity zones and are usually represented by consolidation before the movement in price is actualized. Don't worry too much about order blocks for know as we will go into more detail later on. Just know that there is a difference and they interact.
So I am going to leave it here and later on I will go into methods and algorithms for spotting liquidity zones in historical data of an asset. Some methods will be more complicated than others and I will try to add optional theory articles to compliment these posts. I don't want to delve very deeply in these general posts but I will also try to cover as much as I can. Most don't require much in terms of prerequisites other than a relative good grasp of python and concepts in mathematics.