In-Depth: Why Stop Orders Are Canceled
The cryptocurrency market operates 24/7, unlike traditional markets. Making good use of stop-loss and take-profit orders can significantly reduce risks and save time. This guide details the KuCoin stop-loss/take-profit system and explains the conditions under which stop orders might be canceled.
Scenario 1: Insufficient Funds
Scenario 2: KuCoin Price Protection Exceeded
Scenario 3: Order Unable to Fill or Unexpected Fill Price During Market Volatility
Scenario 1: Insufficient Funds
Latest Updates: We recommend reviewing the latest updates to KuCoin's stop-loss/take-profit feature by following this link.
After the upgrade, your funds are no longer frozen when setting stop orders. Funds are only frozen when the stop orders are triggered. However, the orders will be canceled if there are insufficient funds available at the time they are triggered.
Example: Tom has 32,000 USDT in his trading account with the current BTC price at 31,000 USDT. Expecting the price to rise to 35,000 USDT after breaking resistance, he sets a stop limit order at the resistance level of 32,000 USDT. Seeing that the price of BTC remains rather stable, Tom then lends out 30,000 USDT to capitalize on this, leaving only 2,000 USDT in his account.
When BTC finally reaches 32,000 USDT, Tom’s stop order should have been triggered. Unfortunately, due to the active lending, the available balance is now less than when the order was first set, and now requires at least 32,100 × 0.5 = 16,050 USDT (excluding fees) to trigger. Consequently, the order is canceled. Similarly, the order would also be canceled if the funds were over-allocated to other open orders or USDT trades.
Scenario 2: KuCoin Price Protection Exceeded
To safeguard trader interests under extreme market conditions, KuCoin uses the Immediately Executable Price Range (IEPR) system in the spot market.
→ Learn more about price protection.
Price Protection Limit = (Final Transaction Price - Best Buy or Sell Price) / Best Buy or Sell price × 100%
1. For stop-limit orders, there is no restriction on setting the trigger or limit prices. The system checks if the latest transaction price exceeds the KuCoin price protection limit. If so, any part of the order within the price limit will be executed, and the excess will be canceled.
Example: Tom places a stop-limit order to buy BTC with a price protection limit of 10%, as shown above. He sets his order at the current best sell price in the order book of 32,100 USDT. The order triggers and is sent to fill the order book. The system checks that the new price would reach 35,400 USDT (10%) should the order be fully filled, a 10.28% increase (calculated as [35,400 - 32,100] ÷ 32,100.) As the full filled order would exceed the price protection limit of 10%, the portion that causes this threshold to be exceeded will be canceled.
2. For stop-market orders, the system also checks if the latest transaction price exceeds the KuCoin price protection limit. If so, any part of the order within the price limit will be executed, and the excess will be canceled.
Example: Tom sets a stop-market order to buy BTC, with a price protection limit at 10%. The best available sell price in the order book is 32,010 USDT. When BTC reaches 32,000 USDT, the order triggers and is sent to fill the order book. If the order activates at 32,000 USDT and fills up to 36,000 USDT, it surpasses the 12.46% increase limit (calculation: [36,000 - 32,010] ÷ 32,010 = 12.46%). As such, any portion above the initial 10% increase (after 35,211 USDT, as calculated from 32,010 USDT × 110%) will be canceled.
Scenario 3: Order Unable to Fill or Unexpected Fill Price During Market Volatility
1. Stop Limit Orders: Once triggered, they become limit orders. Rapid price fluctuations may sometimes keep these orders from being fully filled. These orders remain open orders until they get fully filled or canceled by other conditions.
Example: Tom sets a stop limit sell order, as shown above. The following three situations could occur:
a. BTC rises above 30,800 USDT after reaching the trigger price, and the order fills at the best available prices from the order book.
b. BTC fluctuates around the trigger price of 30,800 USDT and drops below it. Here, the order fills partially with any of the best available prices above 30,800 USDT, and the remainder stays as an open order until filled or canceled.
c. BTC quickly falls below 30,800 USDT after reaching the trigger price. In this case, the order remains open and fills only if prices return to or exceed 30,800 USDT.
2. Stop Market Orders: These orders are filled at the current market price after they trigger. In this case, there may be risk of deviation from the expected price when markets are particularly volatile. As such, a part of the order may be canceled should the new price exceed the price protection limit.
Example: Tom sets a stop market sell order as shown above. The best available buy price is 31,000 USDT. The price protection limit is set at 10% below this, at 27,900 USDT (calculation: 31,000 - [31,000 × 10%] = 27,900). From here, the following situations could occur:
a. BTC price rises above 31,000 USDT after the order is triggered, and is fully filled at the best available prices, not dropping below 31,000 USDT.
b. BTC price stays around 31,000 USDT, but does not fall lower than 27,900 USDT. As a result, the order is fully filled with the best available buy prices from the order book, with an average price above 27,900 USDT.
c. BTC price continues to fall after the order triggers, going below 27,900 USDT. Since it exceeds the price protection limit, the system only fills part of the order at prices above 27,900 USDT, and cancels any remainder that would execute below this threshold.