Errors
The API uses standard HTTP status codes to indicate the success or failure of the API call,The body of the response will be JSON in the following format:
List of Error Messages
Error Code | Description |
---|---|
ILLEGAL_PARAMETER | Parameter error |
INVALID_TOKEN | Invalid token |
UNSUPPORTED_CATEGORY | Unsupported CATEGORY |
UNSUPPORTED_SUB_TYPE | Unsupported subscription type |
TOO_MANY_SYMBOLS | Too many symbols in a single call |
TOO_MANY_SUBSCRIPTION | Too many quotes pushes |
UNAUTHORIZED_SUB_TYPE | Unauthorized subscription type |
INVALID_SYMBOL | Wrong symbol |
UNSUPPORTED_API_VERSION | Unsupported api version |
UNAUTHORIZED_CATEGORY | No data permission for this CATEGORY |
UNSUPPORTED_TIMESPAN | Unsupported candlestick type |
SYSTEM_INTERNAL_ERROR | Internal error |
ORDER_STOP_PRICE_MUST_GRATER_TRADE_PRICE | The stop-loss price of the stop-loss order must be greater than the current latest market price |
ORDER_STOP_PRICE_MUST_LESS_TRADE_PRICE | Sell stop price must be less than the current latest market price |
ORDER_LMT_PRICE_MUST_GRATER_STOP_PRICE | The limit price of a buy stop order must be greater than the stop price |
ORDER_LMT_PRICE_MUST_LESS_STOP_PRICE | The limit price for a sell stop order must be less than the stop price |
ORDER_PRICE_ILLEGAL | The price does not comply with the spread rules for the underlying |
UNSUPPORTED_ORDER_TYPE | The current order type is not supported |
VERIFICATION_CODE_INCORRECT | Verification code error |
TICKER_ID_CAN_NOT_TRADE | The stock is not in the tradable table |
NOT_SUPPORT_EXTEND_HOUR | Pre-market and after-hours trading is not supported |
TRADE_ORDER_NO_PERMISSION | No order permission |
TRADE_ORDER_TICKER_UNLISTED_CANNOT_TRADE | The ticker is not listed and cannot be traded |
TRADE_PLACE_ORDER_REPEAT | Repeat orders |
ORDER_TICKER_NOT_FOUND | The target does not support transactions |
ORDER_TICKER_CAN_NOT_TRADE | The target does not support transactions |
ORDER_NOT_FOUND | The order does not exist |
ORDER_CANNOT_GET_LOCK | Unable to acquire current lock |
ORDER_PLACE_REPEART | Repeat orders |
ORDER_PRICE_OUT_OF_RANGE | The price exceeds the set gear range |
ORDER_ONLY_ACCEPT_AUO_ALO | Only at-auction and at-auction limit orders are accepted |
ORDER_ONLY_ACCEPT_ELO_MC | The current period only supports order modification and cancellation of enhanced limit orders |
ORDER_ONLY_ACCEPT_AUO_ALO_MC | In the current period, only limit orders and auction limit orders can be changed or cancelled. |
ORDER_ONLY_ACCEPT_AUO_ALO_NOT_MC | Only at-auction/at-auction limit orders are accepted, no change or cancellation |
ORDER_NOT_ACCEPT_ALL | No action accepted |
ORDER_ONLY_ACCEPT_ELO | Only enhanced limit orders are accepted |
ORDER_ONLY_ACCEPT_ALO_ELO_MC | Only accept at-auction limit order, and order changes or cancellation of enhanced limit orders. |
ORDER_ONLY_ACCEPT_AUO_ELO | Only at-auction and enhanced Limit Orders are accepted |
ORDER_NOT_ACCEPT_DUE_TO_TRADE_DAY_NOT_END | No operation is accepted because there is no end-of-day clearing on the current trading day |
ORDER_STATUS_CANNOT_OPERATE | Order status does not allow operation |
ORDER_PENDING_SUBMIT | Order submitting |
ORDER_PENDING_MODIFY | Order being revised |
ORDER_PENDING_CANCEL | Order canceling |
ORDER_HAS_UNFINISH_TASK | Operation is not allowed when there are unfinished asynchronous tasks. |
ORDER_NO_CHNAGE_CANNOT_MODIFY | The order has not changed so it cannot be modified. |
ORDER_ONLY_QUANTITY_ADD_CANNOT_MODIFY | Change of order is not allowed to only increase the order quantity. |
ORDER_ENTRUST_QTY_LT_FILL_QTY | The order quantity cannot be less than or equal to the executed quantity. |
ORDER_FINAL_FILLED_CANNOT_CANCEL | All orders are all filled and cannot be cancelled. |
ORDER_QTY_OR_PRICE_ILLEGAL | The order quantity or price is inappropriate. |
ORDER_PRICE_MUST_BE_ZERO_BY_AUO | The price of auction order must be 0 |
ORDER_FINAL_FILLED_CANNOT_MODIFY | All orders are filled and cannot be modified |
ORDER_ENTRUST_QTY_CANNOT_LT_FILL_QTY | The order quantity cannot be less than or equal to the executed quantity |
ORDER_ALREADY_CANCELLED | The order has been cancelled and cannot be operated |
ORDER_QTY_ILLEGAL | The order quantity is inappropriate since it should be an integer multiple of the buy/sell unit |
ORDER_QTY_EXCEED_CAN_BUY_QTY | The order quantity exceeds the maximum quantity that can be purchased |
ORDER_QTY_EXCEED_CAN_SELL_QTY | The order quantity exceeds the maximum quantity that can be sold |
ORDER_BUYING_POWER_NOT_ENOUGH | Insufficient buying power |
ORDER_MSG_FILLED_PRICE_OR_AMOUNT_IS_NULL | The transaction price or quantity of the transaction order is empty |
ORDER_ONLY_ACCEPT_LIMIT | Only accept limit orders |
ORDER_PRICIE_EXCEED_UP_LIMIT | The order price quantity exceeds the price limit |
ORDER_PRICIE_EXCEED_DOWN_LIMIT | Order price quantity exceeds price floor |
ORDER_QTY_EXCEED_MILLION | The number of orders in a single China Connect market cannot exceed 1,000,000 |
ORDER_ODD_LOT_POSITION_NO_MATCH | Fractional shares: the current position is not a fractional share, and does not support such a trading |
ORDER_ODD_LOT_ASHARE_OPEN_UNSUPPORT | Fractional shares: A shares do not support fractional shares trading |
ORDER_ODD_LOT_ASHARE_MUST_CLOSE_ALL | Fractional shares: All positions must be closed for A-share positions. |
ORDER_ODD_LOT_BUY_QUANTITY_INVALID | Fractional shares: The total quantity of buy orders and current position must be equal to one lot. |
ORDER_ODD_LOT_SELL_QUANTITY_INVALID | Fractional shares: the sell quantity must be less than or equal to the current position of fractional shares. |
ORDER_ODD_LOT_EXIST_SELL | Fractional shares: do not support reverse order since there is a sell order. |
ORDER_ODD_LOT_EXIST_BUY | Fractional shares: do not support reverse order since there is a buy order. |
ORDER_ODD_LOT_CANNOT_CREATE | Fractional shares: fractional shares cannot be placed in the current session. |
ORDER_ODD_LOT_CANNOT_MODIFY | Fractional shares: fractional shares cannot be changed in the current session. |
ORDER_ODD_LOT_CANNOT_CANCEL | Fractional shares: fractional shares cannot be canceled in the current session. |
ORDER_ODD_ENTRUST_PRICE_DIVERGE_MORE | Fractional shares: The order price deviates significantly from the market price. |
ORDER_ONLY_ACCEPT_MKT_LMT | Only accept market and limit orders |
ORDER_ONLY_ACCEPT_LMT | Only accept limit orders |
ORDER_MKT_PRICE_TOO_LOW | U.S. stocks below $3 are prohibited from placing orders before and after the market hours. |
ORDER_QTY_EXCEED_US_LIMIT | The number of single orders in the US stock market cannot exceed 100,000 shares |
ORDER_AMOUNT_EXCEED_US_LIMIT | The amount of a single order in the US stock market cannot exceed 3,000,000 |
ORDER_MKT_PRICE_QTY_STEP_1000 | The latest price of the market order is 0.01~0.099, and the quantity must not be less than 1000 |
ORDER_MKT_PRICE_QTY_STEP_100 | The latest price of the market order is 0.1~0.999, and the quantity must not be less than 100 |
ORDER_MKT_PRICE_QTY_STEP_1 | The latest price of the market order is greater than 1, and the quantity must not be less than 1 |
ORDER_LMT_PRICE_QTY_STEP_1000 | The latest price of the limit order is 0.01~0.099, and the quantity must not be less than 1000 |
ORDER_LMT_PRICE_QTY_STEP_100 | The latest price of the limit order is 0.1~0.999, and the quantity must not be less than 100 |
ORDER_LMT_PRICE_QTY_STEP_1 | The latest price of the limit order is greater than 1, and the quantity must not be less than 1 |
ORDER_MKT_LMT_PRICE_TOO_LOW | The commission price of US stock limit orders and the market price of market orders cannot be lower than 0.01 |
ORDER_ONLY_ACCEPT_LMT_STP_STPLMT_STPTRAIL | Only accept limit orders, stop orders, stop limit orders, trailing stop orders during the current period |
ORDER_ONLY_ACCEPT_MKT_LMT_STP_STPLMT_STPTRAIL | Only accept market orders, limit orders, stop orders, stop limit orders, trailing stop orders during the current period |
ORDER_TYPE_UNSUPPORT_OUTSIDE_RTH | The current order type does not support pre-market and post-market (ORDER_BA_TRADE_FLAG_ONLY_LIMIT) |
ORDER_MUST_SUPPORT_OUTSIDE_RTH_IN_AFTER_MARKET | To place an order during after-hours trading, you must choose to support before-hours and after-hours (AFTER_MARKET_LIMIT_ORDER_BA_TRADE_FLAG) |
ORDER_SUPPORT_OUTSIDE_RTH_ONLY_US | Pre-market and after-hours trading orders only support the US stock market (ORDER_BA_TRADE_FLAG_ONLY_US) |
AFTER_MARKET_LIMIT_ORDER_BA_TRADE_FLAG | For limit orders placed in after-hours trading hours, you must select pre-market and after-hours trading |
ORDER_LIQUIDATE_CANT_MODIFY | BO forced liquidation orders are not allowed to be modified |
ORDER_LIQUIDATE_CANT_CANCEL_BY_USER | BO forced liquidation orders do not allow users to cancel |
ORDER_CANCEL_FILLED_FAILE | Part of order cancellation failed |
ORDER_HANDLER_ONLY_ACCEPT_US | The current processor only supports US stock market orders |
ORDER_ID_IS_NULL | Order id is empty |
ORDER_CANNOT_OPERATE | The current order status is not actionable |
ORDER_TYPE_ILLEGAL | Invalid order type |
ORDER_TIF_ILLEGAL | No corresponding order validity period |
ORDER_AMT_ILLEGAL | Invalid order amount |
ORDER_QTY_EXCEED_LIMIT | The order quantity exceeds the limit |
ORDER_AMOUNT_EXCEED_LIMIT | The order amount exceeds the limit |
ORDER_RTH_FLAG_ONLY_LIMIT | Only the limit order type is supported before and after the market |
ORDER_BA_TRADE_FLAG_ONLY_LIMIT | You can only select limit orders during pre-market and post-market hours |
TRAILING_PRICE_MUST_LESS_THAN_MARKET_PRICE | The tracking amount needs to be lower than the market price |
STOP_SHOULD_LT_LIMIT_FOR_LMT_BUY | A stop-limit order, for a buy order, the stop price should be less than the limit price |
STOP_SHOULD_GT_TRADE_FOR_LMT_BUY | For buy orders, the stop price must be higher than the market price |
STOP_SHOULD_LT_TRADE_FOR_LMT_SELL | When selling, the stop price must be less than the current latest price |
STOP_SHOULD_GT_CLOSE_FOR_LMT_BUY_IN_PRE_TIME | Pre-market buy stop-loss order, the stop-loss price needs to be higher than yesterday's closing price |
STOP_SHOULD_LT_CLOSE_FOR_LMT_SELL_IN_PRE_TIME | Sell stop order before the market, the stop price needs to be lower than yesterday's closing price |
STOP_SHOULD_GT_TRADE_FOR_LMT_BUY_IN_CORE_TIME | Intraday buy stop-loss order, the stop-loss price needs to be higher than the latest price |
STOP_SHOULD_LT_TRADE_FOR_LMT_SELL_IN_CORE_TIME | Intraday sell stop-loss order, the stop-loss price needs to be lower than the latest price |
STOP_SHOULD_GT_CLOSE_FOR_LMT_BUY_IN_POST_TIME | After-hours buy stop-loss order, the stop-loss price needs to be higher than the closing price |
STOP_SHOULD_LT_CLOSE_FOR_LMT_SELL_IN_POST_TIME | After-hours sell stop-loss order, the stop-loss price needs to be lower than the closing price |
SELL_QTY_EXCEED_AVAILABLE_QTY | The number of closed positions sold exceeds the number of closed positions |
CASH_ACCOUNT_NOT_ALLOW_SELL_SHORT | Cash accounts do not allow short selling |
SELL_NOT_ALLOW_SHORT_SELLING | Please use the short sell button to sell short |
LONG_POSITION_SHOULD_CLOSE_BEFORE_SELL_SHORT | Since you currently have a long position in the stock, please close the position before proceeding with short selling |
BUY_NOT_ALLOW_FOR_HAVING_SHORT_OPEN_ORDER | There is a short pending order for your current target, and reverse transactions are not allowed |
SHORT_NOT_ALLOW_FOR_HAVING_BUY_OPEN_ORDER | There is a pending buy order for your current target, and reverse transactions are not allowed |
FRACTION_ONLY_ALLOW_IN_CORE_TIME | Odd lot trading is not supported in the current session |
FRACTION_ONLY_ALLOW_MARKET | Odd lot trading only supports market orders |
FRACTION_NOT_SUPPORT_SELL_SHORT | Odd lot trading does not support short sell orders |
FRACTION_CANNOT_MODIFY | Odd lot orders do not support modification |
FRACTION_CANNOT_CANCEL | Odd lot orders do not support cancellation |
FRACTION_AMOUNT_TOO_SMALL | Odd lot order amount is too small |
FRACTION_QUANTITY_DECI_LENGTH_ILLEGAL | Odd lot order stock count precision is illegal |
FRACTION_AMOUNT_DECI_LENGTH_ILLEGAL | Odd lot order amount precision is illegal |
FRACTION_CANNOT_CLOSE_SHORT_POSITION | Odd lot trading does not support closing short positions |
NON_FRACTION_CANNOT_MODIFY_TO_FRACTION | Ordinary orders cannot be modified into odd lot orders |
FRACTION_SELL_NOT_SUPPORT_AMOUNT | Sell order cannot be placed by amount |
FRACTION_NOT_SUPPORT_QUANTITY | Order by share is not supported |
FRACTION_NOT_SUPPORT_AMOUNT | Order by amount is not supported |
CHANNEL_REJECT | Channel rejection |
REPEAT_REQUEST | Repeat request |
INNER_SYSTEM_ERROR | Internal System Error |
TICKER_ID_IS_NULL | Target ID is empty |
TICKER_NOT_FOUND | No matching target |
TICKER_IS_DENY | The current target is prohibited from trading |
TICKER_ONLY_CLOSE | The current target only supports closing positions |
TICKER_CANNOT_OPEN_BY_FRACTION | The current underlying does not support opening positions through odd lot trading |
TICKER_NOT_SUPPORT_SHORT | The target does not support short selling |
TICKER_NOT_SUPPORT_FRACTION | The current underlying does not support odd lot trading |
SECURITY_HAS_CHANGED | Target changed |
QUOTE_NOT_FOUND | No market data |
NO_TRADING_DAY | Non-trading day |
NO_TRADING_TIME | Non-trading hours |
FIX_ROUTE_ERROR | Routing error |
HS_US_REJECTED | Hang Seng rejects US stock orders |
BANK_INFO_NOT_FUND | Bank information does not exist |
BANK_CARD_CAN_NOT_FUND | Bank card information does not exist |
BANK_ID_CAN_NOT_BE_NULL | Bank ID cannot be empty |
BANK_ACCOUNT_REPEAT | Bank card account number is duplicated |
BANK_SERIA_NO_CAN_NOT_BE_REPEATED | Bank flow cannot be repeated |
BROKER_BANK_ACCOUNT_CAN_NOT_NULL | System bank account cannot be empty |
CARD_FOR_OPEN_HAS_BEEN_BOUND | A bank card for opening an account and depositing money has been bound |
NO_MORE_THAN_FIVE_BANK_CARDS_ARE_ALLOWED_TO_BE_BOUND | A user can bind up to five bank cards |
CARD_FOR_OPENING_ACCOUNT_CAN_NOT_BEEN_UNBIND | The bank card used for opening an account and depositing funds is not allowed to be unbound |
FUND_TRANSFER_AMOUNT_CAN_NOT_BE_NULL | The application amount cannot be empty |
FUND_TRANSFER_VOUCHER_CAN_NOT_BE_NULL | The transfer voucher cannot be empty |
FUND_TRANSFER_APPLY_NOT_FUND | The application does not exist |
FUND_TRANSFER_APPLY_LOG_NOT_FUND | The application operation log does not exist |
FUND_TRANSFER_OPERATE_TOO_FREQUENT | There are concurrent operations in deposit and withdrawal applications |
CURRENT_APPLY_STATUS_DOES_NOT_SUPPORT_THIS_OPERATION | The current state does not allow this operation |
ACCOUNT_STATUS_NOT_SUPPORT_THIS_OPERATION | Your account is being closed and this operation cannot be performed. |
FUND_TRANSFER_APPLY_OPERATION_FAILED | The deposit or withdrawal failed. |
AVAILABLE_BALANCE_QUERY_FAILED | The query for withdrawable balance failed. |
AVAILABLE_BALANCE_NOT_ENOUGH | Insufficient balance available for withdrawal |
ACCOUNT_BALANCE_NOT_ENOUGH | The current {HKD} account balance is insufficient. |
ACTUAL_AMOUNT_CANT_GREATER_THAN_APPLY_AMOUNT | The actual amount cannot be greater than the application amount. |
CORRECT_FEE_CANT_GREATER_THAN_WITHDRAW_FEE | The amount of the reversal fee cannot be greater than the withdrawal fee. |
WITHDRAW_FEE_EXCEED_APPLY_AMOUNT | The withdrawal fee is greater than the withdrawal amount. |
ACTUAL_AMOUNT_IS_ILLEGAL | The actual amount is abnormal. |
FEE_AMOUNT_IS_ILLEGAL | Unusual fee amount |
UNSUPPORTED_CURRENCY_TYPE | Unsupported currency type |
UNKNOWN_FEE_TYPE | Unsupported withdrawal fee deduction methods |
WITHDRAW_FEE_EXISTED | Do not add withdrawal fees repeatedly. |
FUND_UNFROZEN_FAILED | Hang Seng funds unfreezing is abnormal. |
FUND_FROZEN_FEE_FAILED | Hang Seng funds unfreezing is abnormal. |
FUND_FROZEN_RECORD_NOT_EXIST | Freeze record does not exist. |
FUND_ADJUST_FROZEN_RECORD_FAILED | Adjust the abnormality of frozen funds |
EXCHANGE_BALANCE_NOT_ENOUGH | Insufficient convertible balance |
EXCHANGE_HAS_PENDING | There are currently processing redemption requests. |
EXCHANGE_RATE_NOT_EQUAL | Exchange rate mismatch |
EXCHANGE_AMOUNT_NOT_EQUAL | Target currency amount does not match. |
EXCHANGE_CANNOT_GET_LOCK | Currency exchange lock acquisition failed. |
FUND_EXCHANGE_FAILED | Currency exchange failed. |
EXCHANGE_AMOUNT_OUT_RANGE | A single exchange amount exceeds the limit, the limit amount{}, the actual exchange amount{}. |
EXCHANGE_COMPANY_AMOUNT_OUT_RANGE | The company account balance exceeds the upper and lower limits. |
EXCHANGE_TIME_OUT_RANGE | Exchange is not allowed at the current time. |
EXCHANGE_IN_DAY_END | Exchange is not allowed during clearing time. |
EXCHANGE_TIMES_OUT_RANGE | The number of exchanges in a single day exceeds the limit. |
BANK_CARD_ACCOUNT_REPEAT | The user's bank card account has been bound. |
FUND_CONTAINS_INVALID_RECORD | Export records contain illegal records. |
FUND_CONTAINS_DIF_CURRENCY | Export records contain different currencies. |
FUND_WITHDRAW_EXPORT_EXCEED_UPLIMIT | The export quantity of the withdrawal record exceeds the upper limit. |
FUND_WITHDRAW_EXPORT_FAILED | Withdrawal record export failed. |
BANK_TRANSFER_NO_EXIST | Account record does not exist. |
BANK_TRANSFER_NO_WAIT_MATCH | Account matching, and there is no record to be matched. |
BANK_TRANSFER_FUND_NO_WAIT_MATCH | Account matching, and there is no deposit record to be matched. |
BANK_TRANSFER_FUND_NAME_NOT_MATCH | Confirm the receipt, the selected receipt record does not match the name of the actual deposit receipt record |
FUND_WITHDRAW_RULE_ALREADY_EXIST | The current withdrawal rules already exist |
FUND_WITHDRAW_BOC_BALANCE_NOT_ENOUGH | Insufficient balance of BOC withdrawable funds |
FUND_TIME_INTERVAL_LIMIT | Deposit and withdrawal time interval restrictions |
THE_REQUIRED_PARAM_IS_NULL | Required parameter is empty |
THE_PARAM_IS_INVALID | Invalid parametric value |
ACCOUNT_NOT_EXIST | Account does not exist |
ACCOUNT_CONVERTING | Account is being upgraded, this operation is not allowed |
ACCOUNT_STATUS_NOT_NORMAL | Your account status is not healthy and cannot perform this action |
ACCOUNT_IN_MIGRATE_LIST_NOT_ALLOW | In the whitelist of data migration, currency exchange, withdrawal approval, and BO payment platform payment are not allowed. |
ACCOUNT_US_UNOPEND | Account U.S. stock market permissions have not been activated |
ACCOUNT_IS_DENY | The current account is prohibited from trading |
ACCOUNT_ONLY_CLOSE | The current account only supports closing positions |
ACCOUNT_NOT_SUPPORT_SHORT | Account does not support short selling |
ACCOUNT_NOT_SUPPORT_FRACTION | Odd lot trading is not allowed in the current account |
TRADE_POSITION_QUANTITY_LIMIT | The number of open positions exceeds the limit (500) |
TRADE_OPEN_ORDER_QUANTITY_LIMIT | The number of pending orders exceeds the limit (500) |
OPEN_API_TRADE_NOT_SUPPORT_US_TRADE | US stock trading is not supported |
TRADE_ORDER_NOT_SUPPORT_OPEN_API_MAINLAND_TRADE_ASHARE | A-shares trading is not supported for mainland customers |
ORDER_EXIST_MATCHED_BUY | There are unfilled buy orders |
ORDER_EXIST_MATCHED_SELL | There are unfilled sell orders |
TRADE_WEBULL_REQUEST_PROCESSING | Trade request processing |
TRADE_ORDER_FILLED | Order has been filled |
CN_GROUP_PERMISSION_NOT_OPEN | Not authorized to trade in A-Share market |
HK_GROUP_PERMISSION_NOT_OPEN | Not authorized to trade in HK Stock market |
STOCK_ELO_EXIST_BUY_SELL_ORDER_BUY_PRICE | The order price entered is significantly deviated from the rule set by HKEX, please re-enter. |
TRADE_PERMISSION_RPQ_EXPIRED | Your current account risk assessment results have expired or do not meet the requirements, so the account has been restricted from opening new position |
ORDER_MKT_ONLY_ALLOW_IN_CORE_TIME | Market order can only be placed during normal trade hours |
ORDER_MODIFY_TO_MKT_ONLY_ALLOW_IN_CORE_TIME | Can only be changed to a market order during normal trade hours |
ORDER_NO_CHANGE_CANNOT_MODIFY | No modifications are identified. The order is the same as the original order. |
ORDER_QTY_MUST_LOT | Invalid Order Volume |
ORDER_SHOULD_INCLUDE_EXTENDED_HOURS_IN_POST_TIME | Order rejected, please select "Include Extended Hours" |
GTC_NOT_SUPPORT | Do not support GTC trading for HK security currently |
GTC_NOT_SUPPORT_MKT | Do not support GTC for market order |
STOP_SHOULD_GT_LIMIT_FOR_LMT_SELL | The Stop Order price should be greater than the Limit Order price for Sell of the Stop Limit Order |