Module 1 Introduction to Stock Markets

Chapter 15

Supplementary note – The 20 market depth or level 3 data


The 20 Market Depth (level 3 data) Window

I’ve driven a car for many years and I’ve even changed my car a few times now. Each time I changed my car, the engine remained more or less the same, but the features within the vehicle and its aesthetics continuously changed. Air conditioner, power steering, and power windows were all luxury features in the car at one point, but today, I guess no one buys a car without these essential features. The game-changer for me though was parking assist. The little camera at the back of the car gave me complete visibility of the parking space available. I was no longer required to pop and twist my head out and struggle to park the car, nor did I have to bug my co-passenger to get down and help me navigate my way into a parking spot. The parking assist feature did everything and helped me execute a perfect parallel park. The parking assist feature was my edge for hassle-free car parking.

I feel the same edge while trading the markets with the level 3 data 🙂

Level 3 or the 20 market depth feature is unique and has multiple uses. You’ll probably appreciate the level 3 market window if you have traded at an institutional desk. A regular retail trader would not understand this feature anytime soon, simply because this feature was unavailable all these years until we introduced it for the very first time to the Indian retail traders.

The purpose of this chapter is to help you understand how useful this feature is and get you started on building trading strategies around this feature.

If you are entirely new to this, I’d suggest you read this blog to understand what the level 3 data is all about.

Assuming you know what it is, this chapter will help you understand the multiple uses of this feature.

Contract availability

For the option traders, the 20-depth order book gives great visibility into the availability of contracts to trade and help identify better price points to execute these trade. Without this visibility, it becomes really hard to trade illiquid contracts. While I’m specifically talking about options here, you can extend this to Futures contracts as well, especially the illiquid ones.

Let us put this in context, have a look at the regular market depth (i.e. the top 5 bid-ask) of the 13000 CE expiring in Jan 2020.

We can see narrow bids on the right and a notch better offer to the left. You’d probably hesitate to trade this contract if you are someone looking at trading a few lots of Nifty.

But check what’s hiding under the hood here by opening the level 3 data –


As you can see, there are many contracts available, but they are not visible in the regular market depth. In fact, the bid and offer quantities are heavily concentrated below the 8th row respectively.

Given the availability of the contracts in this strike, the perspective to trade or not completely changes and will now depend upon your trading strategy.

Execution control

Level 3 data gives you full visibility of the approximate execution price for your trade. This is particularly useful when you decide to scalp the market. When you scalp the market —

  • You trade large quantities, i.e. buy and sell large amounts in quick succession to profit from small tick moves in the stock
  • Since these are quick trades, you place market orders only

Let us say you want to buy and sell 5000 shares of Hindustan Zinc; the regular market depth window gives you the following information —


As you can see, there is no visibility on how these 5000 shares will get filled. Now, take a look at the 20 depth window —


The 20 depth window paints an entirely different picture. It not only tells me that I’ll get the 5000 shares, but it also gives me information about the approximate buy price. If I were to place a market order for 5000 shares, I’d be buying this order book from 210.5 to 211.25. I also see at 211; there are 2425 shares available, so I can expect the average price is at or around 211.

Now, my decision to scalp the stock should depend on the pop I’d expect over and above 211. Maybe 211.5 or so. Of course, you’ll get the exact breakeven (post charges) if you were to use a brokerage calculator.

Position sizing

Level 3 market window plays a critical role in ‘guesstimating’ the number of shares to trade, given the liquidity of the stock. For the sake of this discussion, we will assume that the availability of capital is not an issue.

Now, have a look at the regular market depth —

You expect Siemens to move from 1675 to about 1690 over the next hour. So, given the fact that you are not constrained by capital, how many shares will you buy for this intraday trade?

The regular market depth window suggests that you can buy close to 175 shares. However, the 20 depth opens up a different perspective altogether —

In fact, the liquidity in this stock lies below the best five bid and ask, and the impact cost is reasonable. The regular market depth window fails to capture this information. Assuming you intend to buy about 1500 shares, the buy price will lie somewhere within 1675.5 to 1678, which is spread of 0.149%.

In this case, assuming you are sure about the target price (1690), you can go all in and buy through whatever is available at that moment.

Order placement

You can extend the position sizing concept and use the 20 depth market watch to place a stop loss or a limit order. Assume you have an intraday buy position in VST Tillers at 1313.8.

The question is, where you would place the stoploss for this trade? Can the 20 market depth help us with this?

Of course. Have a look the 20 depth window for VST Tillers. As you can see, there is a concentration of bids in 1290. The good part is that the number of order count is also the highest (35) at 1290.

This implies that several traders have placed an order at 1290, indicating some sort of price action at that level. This perhaps builds a case for placing the stoploss.

A prudent trader would probably place a stoploss not at 1290, but maybe at a price just below it.

So I were a buyer in this stock, then purely based on 20 depth I’d probably place my SL at 1290 or below, maybe at 1287 and by the same logic, set my target at 1340 or at 1338.8.

Validate the support and resistance level

I find this extremely interesting. In the example above, we identified 1290 as the stoploss price, simply because there was a concentration of bids. In other words, we expect 1290 as a support price.

If this is indeed true, then it should show up on the charts as well, right? Have a look at the chart below –

Clearly, there is some price action around 1296. Remember, support and resistance is not one price point, but rather a range. Therefore 1290 – 1300 marks as an intraday support for this stock.

This is a perfect example of seeing the price action concept play out in the market.

Another way to look at this is first to identify the S&R level and then check the 20 depth to figure if there is a concentration of bids/offers in that zone.

Validate the range breakout

As a trader, we have often traded breakouts, be it on an intraday or an end of day basis. The idea behind trading a breakout is simple –

  1. The scrip is trading within a tight range for a specific duration
  2. A little higher than average volume indicates accumulation of position in the scrip
  3. When in a trading range, there is an equal probability of a breakout from the higher end of the range or a breakdown from the lower end of the range
  4. Either way, the move, i.e. the breakout or breakdown has to have an accompanying volume, else it would turn out to be a false alarm

Given the above, the idea is to ensure you place your bets in a direction in which you think the scrip will move.

Have a look at the chart of Nifty Futures Nov’19 series. This is a 15-minute intraday chart –


As you can see, Nifty has been hovering in an 80 point range, i.e. between 11900 and 11980. There are three possibilities here –

  • Nifty can continue to trade within this range
  • Nifty can break above 11980
  • Nifty can breakdown below 11900

What will eventually pan out is anybody’s guess. However, if I were to take a call on this, I’d bet on Nifty breaking above 11980. The reason is simple – Nifty has put up an impressive rally from 11550 since this rally there is no negative newsflow, hence no dampener in the immediate futures, hence a breakout above 11980 after this accumulation is likely. Therefore, I’d be a buyer in Nifty Futures.

Now, I don’t want to get stuck with a false breakout. A false breakout is Nifty moving a tick or two above the breakout price and falling back into the range in no time.

A false breakout is usually associated with thin volumes, and a valid breakout is associated with decent volume.

This is precisely where the 20 depth plays a crucial role in decision making –


The bid concentration is the highest at 11980; in fact, this is the highest in across both sides of the order book. So this gives me the conviction to go ahead and place my long trade.

Also, the critical point to note is that the information of the bid concentration at 11980 is buried in the 11th spot in the order book, way below the regular top 5 views.

Now check this –

As expected, the breakout did happen, resulting in a decent 35 point intraday move. Not bad for a quick trade, right?

Hopefully, by now you’ve started to appreciate the immeasurable value 20 depth order book brings to you while trading.

Remember, irrespective of which technique you use to develop a point of view (technical or quantitative analysis), things boil down to price, and the action trades take at that price.

The 20 depth market window is essentially your ticket to validate the truth of this price action. Make sure you use your card wisely!

Do post your comments and tell us how differently you will use the 20 depth window for identifying trading opportunities.

Good luck!




  1. Shailaja says:

    cannot see market depth

  2. Salman says:

    Very nicely written, thank you for your incredible insight.

  3. Manish Rajouri says:

    Sir, how will the market depth data be relied upon? When clients or trading systems use the disclosed quantity feature, not the entire quantity is shown. In such a case, isn’t there a chance that the wrong assumptions are made looking at just the market depth?

    • Karthik Rangappa says:

      Valid point, but there is no way one can identify disclosed quantity. By the way, level 3 helps you identify contract availability. Given this, the disclosed quantity, if any, will only make the liquidity situation better.

  4. Rahul says:

    Hi Karthik! Newbie here, under the ‘The 20 Market Depth (level 3 data) Window’ section, you’ve said – If you are entirely new to this, I’d suggest you read this blog to understand what the level 3 data is all about.
    Are you referring to this chapter as the blog or have a separate blog elsewhere, in which case I do not see a link to it. Can you help?

  5. Ujjawal says:

    Amazing featute for the reatil traders. Way to go team for bringing such innovative and pro Tools to the world at such decent costs.

  6. vinod says:

    good feature i like

  7. monicashah says:


  8. SUDHIN says:

    So this is only or those doing fno right?

  9. Suganya says:

    I have generated more than 100 Rs (Brokerage alone… But I am not able to view 20 depth data…

  10. Munish says:

    “view 20depath” is not being shown in market depth on my pc

  11. Rajan says:

    I think analysis based on visible quantities is misleading as there is feature of disclosed quantity. The numbers in market depth do not paint the full picture. Correct me if I am wrong.

    • Karthik Rangappa says:

      If you think about it, the 20 market depth is an indicator of liquidity – both in terms of contract availability and the spread. If the order is a disclosed one, then it only improves the liquidity situation right?

  12. udaya Kothamasu says:

    Am not able to see the 20 Depth

  13. Pramod says:

    Thank you, This is good information made available

  14. Rajhamsan Iyer says:

    Excellent article!
    I am a new to intraday trading and was exploring the 20 market depth; apparently Zerodha is watching what I am doing since I got a pop-up asking me to read this article!
    Thanks for the information; will try to use it.

  15. bhaskar says:

    Hi karthik,
    All are fine, but how to enable or see 20 level depth…
    I could not able to see any article or link or after logging 20 level depth option.
    I have generated more than 10K brokerage but still nothing is seen.

  16. Arindam Roy Chowdhury says:

    Hi Karthik,

    Excellent insight for RTs.
    Kudos to your efforts in improving Zerodha always! Goodluck in your future endeavors as well.

    Best Regards,

  17. Brahma says:

    sir,in nifty future range example you highlight offer side of order book and telling about bits.I think there are more sellers at 11980 level.So price will come down na…please clarify..

  18. rajinikanth sangam says:

    view 20depath” is not being shown in market depth on my pc, please let me know sir.

  19. ASHMEET SINGH says:

    A speechifier should know how to make his listeners understand and Sir you are best at it 👍

  20. rajinikanth sangam says:

    20 depth

  21. Brahma says:

    sorry its “bids”…not “bits”.

  22. Harshendu Gor says:

    when it will be available for commodity trading

  23. Shyam says:

    Nice article.. you guys have made a mistake though. The bids are on the left and the ask(offer) are on the right. Surprised such a basic mistake being made by a brokerage company!

  24. KAMALAKAR WAD says:


  25. muthu says:

    great support for us thanks zeroda

  26. Shriappi says:

    Hi Team, when soon we can expect this feature in commodities ? any deadline your working with ?

  27. Gurbhajan Singh says:

    Dear sir, Pls email me this article I need this for trading. OR give me link from where it can be opened.

  28. tarak says:

    No doubt, this is valuable, but how much. Liquidity can vanish in micro secs with computers putting orders in and out, Can a human eye catch this variation?

    Tools such as bookmap Or jigsaw can only help along with 20 depth. Unfortunately, we do not have those in India.

  29. neeraj says:

    Instead of showing all 20 price levels, Can you please display only those price levels which are in the top 10 in bids and offers side?. This will make it clear where are the supports and resistances. This is especially useful in the case of nifty and banknifty where 0.05 price level makes it almost useless, because we can see only at a distance of 1 rupee with these 20 levels.

  30. DFW says:

    Hi Karthik,

    Appreciate this new feature- thanks; it’s most certainly preferable to just seeing the top 5 bid and asks, but in my experience, I do find that the level 2 data can often prove to be something of an illusion especially in the function of establishing supports and resistance. Often you find a strong quantity of bids and ask at a certain level and prima facie you’d think those levels could be crucial but as you move closer to those levels, invariably the bids and asks just disappear from the table. I’ve read somewhere that this is often the smart money looking to trap the retailers like me and send the stock scurrying the other way cause there’s nothing quite like having trapped positions in driving momentum the other way.

    • Karthik Rangappa says:

      Well, bids and asks change, that’s the very nature of this beast. You need to evaluate how the order flow hits at these key price points. Need not necessarily be for that given moment.

  31. Uday Kumar says:

    Why is it called level 3 data? Are there any level 2 & level 1 data exists, if so what are they?
    I presume, level 1 data is usual LTP, OHLC and vol, level 2 data is top 5 bid & ask data..

  32. Anil Chauhan says:

    100 Rs as a brokerage on daily basis or on a monthly basis, please clarify.

  33. Narayan says:

    Thank you for the wonderful blog. My concern is when max quantity 2250 placed at [email protected] for selling then how it is giving conviction to go long or bullish breakout. Could you please elaborate.

    • Karthik Rangappa says:

      The quantities keep changing, you need to see how the bids are getting paced at that level. If the bids are continuously higher at that point, then you develop more conviction at that price point.

  34. naween kumar says:

    Good day sir very nice i m using this feature best & solve my all problem & idea for market im happy

    Thanks to zerodha & All Teem

  35. sandeep says:

    Dharma’s query is a valid query as even I am confused on the nifty example ..At 11980 there are more price should go down…how it has gone up…pl. help to explain. Rgds Sandeep

  36. om thakur says:

    Great tool for scalping… and I hope this is only free for some time

  37. ASHOK MUKHIYA says:

    sir, in commodity section, it is not visible!

  38. Amitesh says:

    In the range breakout example its not bid that are concentrated….offers are concentrated right?…..if its ture should i still look for buy?

  39. neeraj says:

    Hi Karthik,
    I had written the following suggestion yesterday, for which you had replied that I can choose to see only the Top 10. I am not sure whether you have understood my question. I meant Top 10 in terms of “Quantity”.

    Once Top 10 are identified they can be shown in the order of the price itself, as it is done today (Intermediate prices where the quantity is low will get discarded). The displayed items need not be rearranged in terms of Quantity.

    This may slow down the refresh rate somewhat but I think it should not matter, as it gives valuable information.
    This was my previous message:-

    “Instead of showing all 20 price levels, Can you please display only those price levels which are in the top 10 in bids and offers side?. This will make it clear where are the supports and resistances. This is especially useful in the case of nifty and banknifty where 0.05 price level makes it almost useless, because we can see only at a distance of 1 rupee with these 20 levels.”
    (( I could not reply to your message there and so I have created a new message here))

    • Karthik Rangappa says:

      I’m so sorry, I didn’t quite get what you were saying initially. This is quite clear. This could be quite complicated in terms of tech and of course, the refresh rate will take a hit. None the less, I will check with the team.

  40. John says:

    Hi Karthik, Thanks for providing one more excellent tool for better decision making. I just have one question. I understand that this data (20 level depth data) is dynamic. So how much that we can depend on such data that is dynamic in nature?

  41. Rajkumar says:

    How to access it on kite mobile

  42. Amitesh Patel says:

    yes that’s right…..but there are a lot of sellers there so is it a nice idea to go long after that level breaks?

  43. Bijoy kumar padhi says:

    In the last example there are 18 orders in the offer side total 2250 quantity. is this means that bid is concentrated there(11980)
    2250 quantity are in sell side?
    would you please clarify this there must be problem with my understanding.

  44. Parendu says:

    In the last example, when there was highest bid at 11980 on sell side, it should imply that it is the resistance and market may not go up from that level. But the inference has been made reverse here. Can you please elaborate ?

  45. Ashish says:

    Hi Karthik,
    You wrote ‘The bid concentration is the highest at 11980’, shouldn’t it be Offer instead of Bid, maybe a typo. And since 11980 has highest offers, wouldn’t it serve as supply zone rather than support.

  46. HD says:

    Is this feature provided through Kite connect API? I checked the depth that we receive in Ticker data and we are still getting 5 levels of market depth and not 20. If not yet part of kite connect API, any plans in future? Also, will there be any additional charges?

    Thanks in advance.

  47. Sandeep Ganju says:


    As always, an excellent write up.
    A basic question from my side. For a Nifty 12000 CE trading at 111. Suppose a trader has placed 4 sell orders with 1200 qty at 135 and he is the only one who has placed sell Call orders at 135 level. The trouble is that he has disclosed 0 qty. In this case what would appear at 135 CE sell side level. Pls remember that hypothetically these are the only orders placed at 135 CE sell.

  48. Prithvi Raj K says:

    I was wondering how this was helpful. This article makes a lot of sense.

    A webinar on the subject would be fantastic.

  49. Hemant says:

    Sir, At what one should focus on number of orders or at Quantity in market depth while making decisions for intraday trading.
    which is more important to look at order or qty. ?

  50. Kay says:

    Hey Karthik!! I sincerely appreciate all the effort that was put into making these modules, they are very very informative and awsome.
    The content is really great, Thank you and varsity for curating the concepts and information into one place,
    And one other thing, does zerodha offer
    “time and sales ” data??

    • Karthik Rangappa says:

      Thanks for the kind words and I’m glad you liked the content here. We provide OHLC and volume data, which is time-stamped. Guess this should suffice?

  51. Kay says:

    Yep! That’s good enough, thank you

  52. Sakrayya Raichur says:


Post a comment