The trading system of the Exchange is an order-driven system.
During the Pre-opening Session and the Closing Auction Session, the system accepts at-auction and at-auction limit orders only.
During the Continuous Trading Session, the system accepts limit, enhanced limit and special limit orders only, with an option for an "All-or-Nothing Qualifier" that confines the order to be either executed immediately in full or rejected, without being written into the central order book.
For details of the trading system and associated infrastructure, please visit the Infrastructure section.
For all trading sessions, the maximum order size for automatch stocks is 3,000 board lots. The maximum number of orders in each price queue is 40,000 while the maximum number of outstanding orders per broker ID has been removed.
Pre-opening Session
Orders are accumulated over a certain period of time and matched within a pre-defined random matching period. Orders are matched in order type, price and time priority (at-auction orders carry a higher matching priority), at the final Indicative Equilibrium Price ("IEP"). Please click here for FAQ in relation to Pre-opening Session.
For details of the POS Enhancements, please refer to the POS enhancements initiative and POS information book.
Continuous Trading Session
Orders are continuously executed in strict price and time priority. An order entered into the system at an earlier time must be executed in full before an order at the same price entered at a later time is executed.
Closing Auction Session
The Closing Auction Session (CAS) is applicable to selected securities and consists of four periods: the Reference Price fixing period, order input period, no-cancellation period, and random closing period.
During the Reference Price fixing period, a Reference Price, which sets the allowable upper and lower price limits of the closing auction session (±5 per cent from the Reference Price), is calculated for each security that will have a Closing Auction Session.
During the order input period, at-auction orders and at-auction limit orders within the ±5 per cent price limit can be entered, amended or cancelled.
During the no-cancellation period, prices of new at-auction limit orders must be between the lowest ask and highest bid of the order book, and no orders can be amended or cancelled.
During the random closing period, the order rules from the no-cancellation period apply and the market closes randomly within two minutes. After the random closing period, orders for all CAS securities are matched at the final IEP. In cases where final IEP cannot be established during the CAS, the Reference Price will be treated as the final IEP for order matching and will become the closing price of the CAS security. Order matching is based on order type, price and then time priority (at-auction orders carry a higher matching priority).
For further detail of CAS, please refer to the CAS information book and infographic.
OTP-C currently supports the following order types for automatching:
Pre-opening Session and Closing Auction Session
The OTP-C only accepts at-auction and at-auction limit orders during the Pre-opening Session and Closing Auction Session.
For Pre-opening Session, the order price input into the OTP-C cannot deviate 9 times or more from the previous closing price or the nominal price (as the case may be), if available.
For Closing Auction Session, the order price input into the OTP-C is subject to the two stages price limit. Stage 1 price limit: is applicable to the Order Input Period and is set at ±5 per cent from the Reference Price. Stage 2 price limit is applicable to the No Cancellation Period and Random Closing Period and is set at the highest bid and the lowest ask of the order book at the end of the Order Input Period.
-
At-auction Order
An at-auction order is an order with no specified price and is entered into the OTP-C for execution at the final Indicative Equilibrium Price (IEP). It enjoys a higher order matching priority than an at-auction limit order and will be matched in time priority at the final IEP.
Any outstanding at-auction orders after the end of the Pre-opening Session will be cancelled before the commencement of the Continuous Trading Session.
-
At-auction Limit Order
An at-auction limit order is an order with a specified price. An at-auction limit order with a specified price at or more competitive than the final IEP (in case of buying, the specified price is equal to or higher than the final IEP, or in case of selling, the specified price is equal to or lower than the final IEP) may be matched at the final IEP subject to availability of eligible matching order on the opposite side. An at-auction limit order will be matched in price and time priority at the final IEP. No at-auction limit order will be matched at a price worse than the final IEP. If an IEP cannot be determined during the Closing Auction Session, the Reference Price will serve as the price for matching. The matching of applicable at-auction orders and at-auction limit orders will occur at the Reference Price instead and the matching mechanism will be same as matching at the IEP.
Any outstanding at-auction limit orders at the end of the Pre-opening Session will be carried forward to the Continuous Trading Session and treated as limit orders provided that the specified price of that at-auction limit order does not deviate 9 times or more from the nominal price. Such orders will be put in the price queue of the input price.
Continuous Trading Session
The OTP-C only accepts limit, enhanced limit and special limit orders (with an option for an "All-or-Nothing Qualifier" that confines the order to be either executed immediately in full or rejected without being written into the central order book) during Continuous Trading Session as long as the order price input into the OTP-C (i) does not deviate 9 times or more from the nominal price, if available, and (ii) follows the quotation rules unless the restriction is waived. At the end of the continuous trading session, all outstanding orders of securities applicable for trading in the closing auction session will be automatically carried forward to the closing auction session provided that the price of buy limit orders is not higher than the allowable upper price limit or the price of sell limit orders is not lower than the allowable lower price limit prescribed for closing auction session. All outstanding orders carried forward from the continuous trading session to the closing auction session will be treated as at-auction limit orders.
-
Limit Order
A limit order will allow matching only at the specified price. The sell order input price cannot be made at a price below the best bid price, if available whereas the buy order input price cannot be made at a price above the best ask price, if available.
Any outstanding limit order will be put in the price queue of the input price.
-
Enhanced Limit Order
An enhanced limit order will allow matching of up to 10 price queues (i.e. the best price queue and up to the 10th queue at 9 spreads away) at a time provided that the traded price is not worse than the input price. The sell order input price cannot be made at a price of 10 spreads (or more) below the current bid price whereas the buy order input price cannot be made at a price of 10 spreads (or more) above the current ask price.
Any outstanding enhanced limit order will be treated as a limit order and put in the price queue of the input price.
Example 1 : Enhanced Limit Order (ELO) - fully matched
Table 1 (a) : Original Position
Price
|
Volume (‘000)
|
Price
|
Volume (‘000)
|
Bid |
Ask |
$30.00
|
100
|
$30.05
|
80
|
$29.95
|
90
|
$30.10
|
70
|
$29.90
|
80
|
$30.15
|
160
|
$29.85
|
60
|
$30.20
|
50
|
$29.80
|
180
|
$30.25
|
60
|
$29.75
|
34
|
$30.30
|
50
|
$29.70
|
100
|
$30.35
|
40
|
$29.65
|
150
|
$30.40
|
45
|
$29.60
|
18
|
$30.45
|
25
|
$29.55
|
36
|
$30.50
|
70
|
$29.50
|
200
|
$30.55
|
80
|
$29.45
|
150
|
$30.60
|
55
|
$29.40
|
50
|
$30.65
|
50
|
$29.35
|
20
|
$30.70
|
25
|
Enhanced Limit Order: to buy 650,000@ $30.50
Table 1 (b) : After Execution
Price
|
Volume (‘000)
|
Price
|
Volume (‘000)
|
Bid |
Ask |
$30.00
|
100
|
$30.55
|
80
|
$29.95
|
90
|
$30.60
|
55
|
$29.90
|
80
|
$30.65
|
50
|
$29.85
|
60
|
$30.70
|
25
|
$29.80
|
180
|
$30.75
|
20
|
$29.75
|
34
|
$30.80
|
70
|
$29.70
|
100
|
$30.85
|
20
|
$29.65
|
150
|
$30.90
|
10
|
$29.60
|
18
|
$30.95
|
70
|
$29.55
|
36
|
$31.00
|
15
|
$29.50
|
200
|
$31.05
|
25
|
$29.45
|
150
|
$31.10
|
60
|
$29.40
|
50
|
$31.15
|
30
|
$29.35
|
20
|
$31.20
|
35
|
Trade executed
|
80,000@ 30.05
70,000@ 30.10
160,000@ 30.15
50,000@ 30.20
60,000@ 30.25
50,000@ 30.30
40,000@ 30.35
45,000@ 30.40
25,000@ 30.45
70,000@ 30.50
|
Unfilled
|
None
|
Example 2 : Enhanced Limit Order (ELO) - with unfilled quantity
Table 2 (a) : Original Position
Price
|
Volume (‘000)
|
Price
|
Volume (‘000)
|
Bid |
Ask |
$30.00
|
100
|
$30.05
|
80
|
$29.95
|
90
|
$30.10
|
70
|
$29.90
|
80
|
$30.15
|
160
|
$29.85
|
60
|
$30.20
|
50
|
$29.80
|
180
|
$30.25
|
60
|
$29.75
|
34
|
$30.30
|
50
|
$29.70
|
100
|
$30.35
|
40
|
$29.65
|
150
|
$30.40
|
45
|
$29.60
|
18
|
$30.45
|
25
|
$29.55
|
36
|
$30.50
|
70
|
$29.50
|
200
|
$30.55
|
80
|
$29.45
|
150
|
$30.60
|
55
|
$29.40
|
50
|
$30.65
|
50
|
$29.35
|
20
|
$30.70
|
25
|
Enhanced Limit Order: to buy 680,000 @ $30.50
Table 2 (b) : After Execution
Price
|
Volume (‘000)
|
Price
|
Volume (‘000)
|
Bid |
Ask |
$30.50
|
30
|
$30.55
|
80
|
$30.00 |
100
|
$30.60
|
55
|
$29.95 |
90 |
$30.65
|
50
|
$29.90 |
80 |
$30.70
|
25
|
$29.85 |
60 |
$30.75
|
20
|
$29.80 |
180 |
$30.80
|
70
|
$29.75 |
34 |
$30.85
|
20
|
$29.70 |
100 |
$30.90
|
10
|
$29.65 |
150 |
$30.95
|
70
|
$29.60 |
18 |
$31.00
|
15
|
$29.55 |
36 |
$31.05
|
25
|
$29.50 |
200 |
$31.10
|
60
|
$29.45 |
150 |
$31.15
|
30
|
$29.40 |
50 |
$31.20
|
35
|
Trade executed
|
80,000@ 30.05
70,000@ 30.10
160,000@ 30.15
50,000@ 30.20
60,000@ 30.25
50,000@ 30.30
40,000@ 30.35
45,000@ 30.40
25,000@ 30.45
70,000@ 30.50
|
Unfilled
|
30,000 @ $30.50 as limit order
|
- Special Limit Order
A special limit order will allow matching of up to 10 price queues (i.e. the best price queue and up to the 10th queue at 9 spreads away) at a time provided that the traded price is not worse than the input price. A special limit order has no restriction on the input price as long as the order input price is at or below the best bid price for a sell order or at or above the best ask price for a buy order.
Any outstanding special limit order will be cancelled and will not be stored in the OTP-C.
Example 3 : Special Limit Order (SLO)
Table 3 (a) : Original Position
Price
|
Volume (‘000)
|
Price
|
Volume (‘000)
|
Bid |
Ask |
$30.00
|
100
|
$30.05
|
80
|
$29.95
|
90
|
$30.10
|
70
|
$29.90
|
80
|
$30.15
|
160
|
$29.85
|
60
|
$30.20
|
50
|
$29.80
|
180
|
$30.25
|
60
|
$29.75
|
34
|
$30.30
|
50
|
$29.70
|
100
|
$30.35
|
40
|
$29.65
|
150
|
$30.40
|
45
|
$29.60
|
18
|
$30.45
|
25
|
$29.55
|
36
|
$30.50
|
70
|
$29.50
|
200
|
$30.55
|
80
|
$29.45
|
150
|
$30.60
|
55
|
$29.40
|
50
|
$30.65
|
50
|
$29.35
|
20
|
$30.70
|
25
|
Special Limit Order: to buy 660,000 @ $30.55
|
Table 3 (b) : After Execution
Price
|
Volume (‘000)
|
Price
|
Volume (‘000)
|
Bid |
Ask |
$30.00
|
100
|
$30.55
|
80
|
$29.95
|
90
|
$30.60
|
55
|
$29.90
|
80
|
$30.65
|
50
|
$29.85
|
60
|
$30.70
|
25
|
$29.80
|
180
|
$30.75
|
20
|
$29.75
|
34
|
$30.80
|
70
|
$29.70
|
100
|
$30.85
|
20
|
$29.65
|
150
|
$30.90
|
10
|
$29.60
|
18
|
$30.95
|
70
|
$29.55
|
36
|
$31.00
|
15
|
$29.50
|
200
|
$31.05
|
25
|
$29.45
|
150
|
$31.10
|
60
|
$29.40
|
50
|
$31.15
|
30
|
$29.35
|
20
|
$31.20
|
35
|
Trade executed
|
80,000@ 30.05
70,000@ 30.10
160,000@ 30.15
50,000@ 30.20
60,000@ 30.25
50,000@ 30.30
40,000@ 30.35
45,000@ 30.40
25,000@ 30.45
70,000@ 30.50
|
Unfilled quantity
|
10,000 cancelled, not stored in the System.
|
Comparison of Limit Order, Enhanced Limit Order and Special Limit Order
The following example illustrates the effect on the central order book if a sell order of 600K shares of XYZ stock is input at different selling prices and with different order types:
Original Order Book of XYZ Stock
(Nominal Price: $1.00)
|
Price
|
Volume (‘000)
|
Price
|
Volume (‘000)
|
Bid |
Ask |
$1.00
|
100
|
$1.01
|
80
|
$0.99
|
90
|
$1.02
|
70
|
$0.98
|
60
|
$1.03
|
90
|
$0.97
|
~
|
$1.04
|
50
|
$0.96
|
80
|
$1.05
|
30
|
$0.95
|
20
|
$1.06
|
20
|
$0.94
|
30
|
$1.07
|
30
|
$0.93
|
50
|
$1.08
|
50
|
$0.92
|
~
|
$1.09
|
60
|
$0.91
|
70
|
$1.10
|
30
|
|
If the selling price is input at
|
Case 1
Limit Order
|
Case 2
Enhanced Limit Order
|
Case 3
Special Limit Order
|
1
|
$1.01
|
Order unfilled and put in the ask queue at $1.01
|
Order unfilled and put in the ask queue at $1.01
|
Order rejected by the OTP-C
(special limit sell order cannot be made at a price above the current bid at $1.00)
|
2
|
$1.00
|
Order partially filled
Filled: 100,000@$1.00
Outstanding: 500,000 put in the ask queue at $1.00
|
Order partially filled
Filled: 100,000@$1.00
Outstanding: 500,000 put in the ask queue at $1.00
|
Order partially filled
Filled: 100,000@$1.00
Outstanding:500,000 @$1.00 cancelled by the OTP-C
|
3
|
$0.91
|
Order rejected by the OTP-C
(limit sell order cannot be made at a price below the current bid at $1.00)
|
Order partially filled
Filled: 100,000@$1.00
90,000@$0.99
60,000@$0.98
80,000@$0.96
20,000@$0.95
30,000@$0.94
50,000@$0.93
70,000@$0.91
Outstanding: 100,000 put in the ask queue at $0.91
|
Order partially filled
Filled: 100,000@$1.00
90,000@$0.99
60,000@$0.98
80,000@$0.96
20,000@$0.95
30,000@$0.94
50,000@$0.93
70,000@$0.91
Outstanding: 100,000@$0.91 cancelled by the OTP-C
|
4
|
Any price below $0.91 but above $0.111 (i.e. a price which does not deviate 9 times or more from the nominal price*)
|
Order rejected by the OTP-C
(enhanced limit sell order cannot be made at a price of 10 spreads (or more) below the current bid price at $1.00)
|
Order partially filled
Filled: 100,000@$1.00
90,000@$0.99
60,000@$0.98
80,000@$0.96
20,000@$0.95
30,000@$0.94
50,000@$0.93
70,000@$0.91
Outstanding: 100,000 cancelled by the OTP-C
|
5
|
At or below $0.111 (i.e. a price which deviates 9 times or more from the nominal price*)
|
Order rejected by the OTP-C
(limit sell order cannot be made at a price below the current bid at $1.00 or deviates 9 times or more from the nominal price*)
|
Order rejected by the OTP-C
(enhanced limit sell order cannot be made at a price of 10 spreads (or more) below the current bid price at $1.00 or deviates 9 times or more from the nominal price*)
|
Order rejected by the OTP-C
(special limit sell order cannot be made at a price which deviates 9 times or more from the nominal price*)
|
* The 9-times restriction, as stipulated in Rule 505A of the Rules of the Exchange
A transaction completed / input into the OTP-C can first be categorized as either a non-direct or direct business transaction depending on whether the same Exchange Participant handles both sides of the transaction.
OTP-C currently supports the following public trade types. Public trade types are disseminated by HKEX Orion Market Data Platform – Securities Market (OMD-C) for possible onward dissemination by information vendors:
Trading Method |
Public Trade Type |
Description |
Automatch Trade |
Non-direct: “ ”
Direct: “Y” |
Means a trade concluded through the OTP-C by automatic matching of buy and sell orders submitted by Exchange Participant(s). |
Manual Trade |
Non-direct: “M”
Direct: “X”
|
Means a trade concluded by Exchange Participant(s) not through the OTP-C by automatic matching of orders and the selling party is responsible to report the trade details to the Exchange through the OTP-C. |
Special Lot Trade |
Non-direct: “M”
Direct: “X”
|
Means a trade with the quantity of shares larger than one board lot and the quantity may not be in integral multiples of one board lot of shares, which can be concluded through the OTP-C using the operation specified for special lot transaction. In case the trade is not concluded through the OTP-C, the selling party is responsible to report the trade details to the Exchange through the OTP-C. |
Odd Lot Trade
|
Non-direct: “D”
Direct: “D”
|
Means a trade with the quantity of shares less than one board lot which can be concluded through the OTP-C using the operation specified for odd lot transaction. In case the trade is not concluded through the OTP-C, the selling party is responsible to report the trade details to the Exchange through the OTP-C.
|
Auction Matching Trade
|
Non-direct: “U”
Direct: “U”
|
Means a trade concluded through the automatic order matching of the auction orders during the order matching period in the Pre-opening Session and at the end of the random closing period of the Closing Auction Session.
|
Pre-opening Trade
|
Non-direct: “P”
Direct: “P”
|
Means a trade concluded before the commencement of the Morning Session, including trades concluded on the previous day but not recorded in the OTP-C.
|
The first bid or ask order entered into the trading system on each trading day is governed by the opening quotation rule. The first order if it is a bid must be higher than or equal to the previous closing price minus twenty-four spreads. The first order if it is an ask must be lower than or equal to the previous closing price plus twenty-four spreads. The first order, whether it is a bid or ask, shall not in any case deviate 9 times or more from the previous closing price. Quotations for buy and sell orders other than the opening quotations are governed by another set of quotation rules and a scale of spreads. In particular, a buy order or a sell order shall not be made at a price that deviates 9 times or more from the nominal price. However, quotation rules in general do not apply to at-auction limit orders, except that a buy at-auction limit order or a sell at-auction limit order shall not be made at a price that deviates 9 times or more from the nominal price.
The spread table is available under the Second Schedule of the Rules of the Exchange.
A Volatility Control Mechanism (VCM) in the securities market is applied on constituent stocks of the Hang Seng Composite LargeCap, MidCap and SmallCap Indexes, SPAC Shares, SPAC Warrants, and eligible Exchange Traded Funds and Leverage & Inverse Products to prevent extreme price volatility from trading incidents such as a “flash crash” and algorithm errors, and to address systemic risks from the inter-connectedness of securities and derivatives markets.
In the securities market, different triggering thresholds (from ±5% to ±50%) are applied to constituent stocks of the Hang Seng Composite LargeCap, MidCap and SmallCap Indexes, SPAC Shares, SPAC Warrants and eligible Exchange Traded Funds and Leverage & Inverse Products. If the potential transaction price for an applicable security deviates more than a pre-defined triggering threshold from its last traded price five minutes ago, a five minutes VCM cooling-off period will be started. During the VCM cooling-off period, trading is allowed within a pre-defined price band. Normal trading and VCM monitoring will resume after cooling-off period.
The VCM is only applicable to board lot order input during certain periods of the Continuous Trading Session.