Buy GTT no more allows setting a price lower than the trigger price


So we have been using GTT super successfully during these uncertain Covid times to buy value stocks at low prices.

We aren’t full time traders rather we are passive investors who invest for a long time. GTT has been a great tool for us whereby we were able to set the trigger price for buy GTT and would set the limit price lower than the trigger price.

Since we aren’t full time traders and aren’t always on the terminal, a triggered GTT gave us the flexibility to have a relook at the price depending upon the movement of stock and allowed enough time for us to load funds.

I was able to set the GTT using this criteria till Wednesday (Apr, 29 2020). Looks like something changed during Thursday/Friday and Zerodha no more allows us to set the price lower than trigger price for buy GTT.

ZerodhaTeam, @nithin - Please revert GTT to the earlier design. Let the control remain in the hands of the user howsoever we wish to use the GTT feature.


You can give trigger the price you want to buy, GTT is not not like normal limit orders, if one places limit below trigger there are chances for it not to execute and as validity is only for that day after trigger, we have changed this, don’t compare GTT to normal orders.

The main issue with allowing GTT buy with limit price lesser than trigger price is that the buy order becomes a pending order most of the times, and if that happens, the entire purpose of GTT isn’t met. With the change we have made, GTT is almost guaranteed execution, unless the market moves up fast by the time the order is placed after the trigger. This is only going to benefit passive investors, who need not log in everyday to see if the GTT triggered order is executed or not.

I understood that part @nithin.

Just wanted to understand, Does pending orders cost or harm Zerodha in any way? If not, let the users decide how they wish to use it.

This was available in the earlier design also. All I am asking is that the control should not be taken away from the user. Let the users be the best judge on how they wish to use GTT.


No it doesn’t of course. But we have gotten crazy number of complaints from people saying their GTT’s weren’t executed (buy, sell, SL). We had to make this change for that. But that said, I get your point, I will speak to the team and see if we can give some sort of an advanced option for users who want to use GTT this way.


I think changes have been done in GTT Sell also. Quoting higher price than trigger price is not accepted anymore.

@nithin if you just think from human psychology, we always want to sell at a higher cost and buy at a lower cost. So buy price < trigger price and sell price > trigger price is very human behavior.

For complaints of GTT orders not being executed, it is because of many market factors that are not in our control.

But people should be allowed to choose as they wish to. People alone are responsible for their decision to buy or sell at what price. And Zerodha is only a facilitator. But restricting them to quote within the boundary is taking that freedom from them. My opinion.


That can be agreed for active users, day traders, GTT is mainly used by people who hold eq in their demats and use it for target oriented instead time based stop losses/targets, so execution is more important. Also by just keeping 5 paisa,10 paisa or even 50 paisa away may result in non execution and the risk return trade off won’t match here. I hope you got it.

Also if one want to sell higher they can give that as trigger, they have that option of giving trigger where ever they want. Also as Nithin said we will look if we can give both options for advanced users.

GTT is meant for passive investors, and when there is a trigger the idea is for the order to be placed with intention for it to be executed. If you place a trigger to sell at 100 and put selling as 101, the selling may not get executed when stock goes to 100. If the idea is to sell at 101, the trigger and price could be 101 in the first place.

In that a case there is no need for two separate functions - Trigger and Buy/ Sell. Trigger becomes redundant na. Trigger itself can act as buy or sell. No? Currently, the user fills in trigger price and buy/ sell price. Two places. Just let trigger be the buy/ sell price. At least one has to type less.

1 Like

But one should choose to either sell or buy in the first place, trigger doesn’t matter but one should select what he want to do once that is triggered.
As market orders will result in more slippage we have given limit option.

On trigger placing a market order can lead to a large impact cost on some stocks, so we ask for limits. This limit price acts as a market protection, the further away from the trigger the limit is, it behaves more like a market order.

So trigger at 101 and sell at 100 means at 101 a selling order with price 100 will get placed. This almost acts like a market order while also ensuring the execution doesn’t happen at lesser than 100.

But fundamentally as human nature, we would want it to sell at 101. Forget share market, even at vegetable market, we tend to negotiate from the price vendor asks. That negotiation is upto the person whether to accept or reject. So here, if I set up a trigger at 101, I would like to sell at may 101 or 100 or may be 102 (higher than trigger) or buy at say 100 (lower than trigger) or 102 (higher than trigger). Now whether there is someone to buy/ sell for your quoted price is completely dependent on the market. No one else is responsible for it.

But just from human dynamics point of view, we always want to buy cheap and sell at higher price.

I am saying this from experience. I am a passive investor and I use GTT. Sometimes my sell orders could not get executed because of market fluctuation or no respective buyer/ seller at that moment at that price but I am not complaining because I know for every seller there has to be a buyer and vice-versa. So I alone am responsible for quoting trigger and buy/ sell price and the rest is up to the market to decide.

How I wish all our customers were like you. :slight_smile:

We get blamed for a lot of things, and this was getting added to that, especially with the recent volatility and triggered GTTs not executing. But like I said, I get the point, we will see if there is another way to offer what is asked for.


can i suggest - just by adding a line in that GTT window that - you alone are responsible for the price you quote, whether the order gets executed or not is completely market dependent. Maybe ‘I agree’ checkbox which is ticked by default to save time.

:slight_smile: we have that already.

From the whole conversation I have gathered Zerodha’s main reason of modifying this feature was people were complaining and were not able to understand how GTT works. It is not costing you in any way.

A simple javascript can help here -

As soon as someone puts a price lower than the trigger price on buy GTT, there can be a warning something on the lines of

You are setting limit price lesser than the trigger price, it may result in non-execution of the order

and vice versa for Sell GTT. Even after that if someone does a mistake, it is upto them.

Please do not take away an excellent feature from the users who understood the product just because the other users who are complaining didn’t understand it. :slight_smile:

For passive investors like my wife and I, GTT is a god send feature. We would want to see it reverted to its earlier design as soon as possible.


@siva One more suggestion, when one uses the Copy GTT/GTC function, unlike normal order where the said order are copied as they are (buy then buy and if sell then sell) in this case even if it’s a sell GTT/GTC order then the copied order is always a buy order so please correct it so that the copy function copies the exact order.

Thanks, this is known thing, will be fixed in next update.

Hi Gautam, where is this copy function used ?

There’s quantity limit of 30K per order but what if you have to place sell order for over 150K shares or even buy order for large orders, in such cases it’s a hazzle so one places one order of 30k and then uses the copy function which basically replicates the same order and one can do it multiple times to place the desired no of orders. It’s a breeze for CNC buy/sell orders, it’s not a big brainer thing as it basically just reduces a few seconds time if one were to place 5-10 such copy orders after placing an initial buy/sell order as compared to repeating the normal process n no of times. :sweat_smile:

It would have been a wonderful thing that there were no limits on order quantities and even if there is, a simple function in the normal order window say *N function which replicated the same order N no of times would have been truly revolutionary and time saving. But I am definitely asking for too much… :confused: