The Limit Order will trigger as soon as it hits your desired rate. However, due to the following cases, your transaction might not be filled:
1. You do not have enough tokens in your wallet.
For example, you may make an order with 100 KNC and then move the KNC token out of your wallet. In this case, when the rate you desired hit and you do not have enough 100KNC in your wallet, the transaction will not be triggered.
2. The market rate changes at the time of processing the order.
Since every transaction on KyberSwap is on-chain, it will take some time from when the transaction is broadcasted to when it is mined. While it’s being processed, if the market rate turned out to be worse than the order rate, the transaction would not be carried out. This is more likely to happen since we changed the rate buffer from 1-3% to 0%.
3. The rate chart on KyberSwap only shows the relative market rate.
You might see that the rate on our chart hit your order’s rate, but the order is not filled. It is because in KyberSwap’s chart, the rate is calculated based on the market rate, and not an actual record of each trade like in centralized exchanges. For example: The rate shown on charts is equivalent for 0.001 ETH. If you order is (let’s say) 5 ETH, You will be offered a different rate than shown on the chart.
Note: if your order is not triggered due to the above reasons, it will maintain the status “open” until the market rate hit again.