Thanks Alchemist. Now I have understood. After doing a bit of looking into this matter I have come to know that there are primarily 3 types of mechanisms in which trades might be executed in a financial market.
1) Order driven mechanism
2) Quote driven mechanism
3) Negotiated trading price mechanism.
From what I have seen on various websites and from your explanation too, I could infer that the mechanism followed on NSE (and most of BSE) is order driven.
In order driven markets, there is no much role for the market maker, instead preference is given to
1) Best price (price priority) &
2) Time of order priority (as shown
Trading System - Order Books.
"An investor looking for a better price (by using a limit order) will not be served immediately and faces the risk (of the trade) not to be executed at all. An increase in the profit opportunity, when the order is executed, can then be obtained in return to a greater risk concerning the trade realization. When not executed, orders are stored in an order book, waiting for an hypothetical future compatible counterpart. Hence, the order book appears as some dynamic buy and sell functions during the trading day."
(
http://www.univ-evry.fr/fr/index/Epe...es/Boyer08.pdf)
That explains the trade-off faced by an investor using a limit-order.
Alchemist, I have one more question this time pertaining to stop loss order and trigger price.
1) Imagine RIL is trading at 500, bid at 499 and ask at 501. Imagine I already have a few shares of RIL which I bought previously at say Rs 400 and want to put a stop loss at Rs 490 with a trigger price of Rs 495 in order to protect my profits (hence creating a band of 495-490). Now, whenever the LTP is at or below Rs 495, my stop loss is triggered and it reaches the exchange as a limit sell order of Rs 490. (
Is that correct? i.e will my order go to the exchange as a limit sell order whenever the trigger price is triggered?).
Now as per the time priority rule, imagine a limit buy order had been pending from a long time before @ Rs 494, then my order will get executed at Rs 494 and that's it.
2) In the 2nd case, imagine the market is moving very fast, say like a market crash, then imagine the LTP is at Rs 495 (my stop loss is triggered) and within a fraction of a second, the LTP jumps to say Rs 480. In such a case, my order will not get executed but is still in a triggered state (because it is below my trigger price).
Now whenever the LTP slowly climbs up from Rs 480...to 490 then my limit sell order will be given preference, because it has been in a triggered (yet, unexecuted) state for a long time - is that correct?
3) I have also heard somewhere that market orders are given preference over limit orders (if all else are equal), is there really any such thing?
thanks,
- arcus.