I need some clarity on how order execution works in Zerodha when using the same limit price across two accounts. Here’s what happened:
I placed CNC (Cash and Carry) limit orders for the same instrument in two separate Zerodha accounts.
Both orders had the same limit price.
The orders were placed approximately 2 minutes apart.
What I observed:
The first order (placed earlier) started getting partially filled, which I assume means it was in the queue at my limit price.
Surprisingly, the second order (placed later in my other account) also started getting partially filled before the first order was fully executed.
My understanding:
When the limit price is the same for two orders, the exchange prioritizes based on time priority (first-come, first-served).
I expected the first order to be fully executed before the second order started filling, given the 2-minute time difference.
Can someone explain why the second order was partially filled before the first one was completed? Is this expected behavior, or could something have gone wrong? Any insights into how Zerodha or the exchange handles such cases would be really helpful!
We have cross-checked both the orders. You have given the disclosed quantity for both orders. If you place a disclosed quantity order, the queue will change based on the execution of each trade. Read more about the disclosed quantity here.
Read the article. a quick follow up question @Ragavendran_M : Disclosed quantity releases orders in batches - despite being in 1 order, will the brokerage charged be for 1 or the number of batches it takes to complete?
I used to think, Zerodha just sends the order 1 time to the exchange and then the exchange splits the order based on disclosed qunatity. Is that not the case? Does Zerodha splits it and sends it to exchange multiple times?