How do 1inch Limit Orders actually work?

I’ve read the docs, but there are two very important questions that I didn’t see answered that greatly impact how these instruments could be used. Hoping someone knows.

1) Is the limit price guaranteed if the order fills?
If you place a limit order (eg requiring 100% fill) and set a price, is it guaranteed that either the trade doesn’t complete, or the limit price that you set will be the price you get, after all potential front-running/sandwich/MEV shenanigans and gas fees? Or, is this the price that the taker offered, but then once the trade journeys into the mempool something else might happen?

2) What is the time lag between when the limit order is accepted by a buyer/taker and when the transaction is confirmed? During this time, if there is disadvantageous market movement, is it still possible to cancel the limit order? Is it still possible that the order will not go through for some reason, so you can’t act on the certainty that it’s filled?
How long is the time (usually, with reasonable gas offered) from the time that you find out that a limit order has been accepted to the time that the transaction is confirmed? Why I’m asking: do you have to worry that after your limit order is accepted by a buyer/taker at a given price there are several minutes before it’s mined onto the blockchain before it’s actually confirmed, so you bear the risk of any price movement between the time that the limit order was accepted and when it’s confirmed, or the possibility that it is never confirmed, minutes later?

Thank you!

1 Like

Hi, hopefully I can clear this up for you.

  1. The limit price is guaranteed. The rate you set must be what the order fills at. This means someone filling the order will incur 0 slippage

  2. The only lag time is the time it takes for a transaction to get mined. The limit order can be canceled any time but as long as the cancel transaction is pending, the order can still be filled as long as the fill happens before the cancel transaction confirms.

  3. Yes, it’s entirely possible that a limit order never fills. Usually limit orders need arbitrage incentive to fill. I.E. it needs to be the the best rate on the market. Bots will likely fill the order using a Flash Swap.

let me know if you have more questions!

1 Like

Thanks Belac. I just posted an additional question. Can’t get limit orders to actually go through, either through the UI or the API. Not sure why. Have now spent a lot of time getting nowhere with it. Not sure what to do. Help gratefully appreciated!