Old opening procedure until 2006

This section describes the opening procedure in ASX under the old system SEATS trading engine which was operating until 2 October 2006.The SEATS opening every morning involves orders carried over from the previous trading day, and new orders entered from 7.30 am to 10.00.

Opening prices for the market are established during the market opening phase at 10:00 am Sydney time. From 10.00 am to 10.09 am opening times are staggered, depending on the starting letter of the ASX Code for the security. SEATS currently opens randomly for five different groups of stocks (in alphabetical order). The actual opening occurs randomly, varying within 15 seconds of the times listed below.

Before the market is called, new orders can be entered, existing orders can be deleted, and the price and quantity associated with existing orders can be amended. Price and time precedence still applies to orders entered or amended during, although overlapping orders do not execute.

An opening algorithm is used to execute overlapping orders at a sequence of different prices. The algorithm involves the following steps:

·         Step 1: When there are overlapping bids and offer, trade the priority bid against the priority offer at the weighted average price to the extent that the security is available.

·         Step 2: Repeat Step 1 until there is no price overlap.

·         Step 3: Open the security for normal trading.

The way SEATS establishes the opening price for the market during the opening phase that is calculated using the following formula:

(Bid Quantity * the Bid Price) + (Offer Quantity * the Offer Price)

Bid Quantity + Offer Quantity

This is best described using an example as follows.

Table 2 shows the orderbook for HIJ security immediately prior to the opening phase.

Table 2: Bid/Offer Schedule in HIJ immediately prior to the opening phase

BID

OFFER

Broker

Quantity

Price (c)

Price (c)

Quantity

Broker

111

400

423

420

6,000

777

222

2,000

422

421

800

888

333

10,000

422

422

8,000

900

444

5,000

422

423

1,000

950

555

5,000

420

424

600

999

 

Table 3 shows the sequence of trades in security HIJ that SEATS automatically performs during opening. The official opening price reported by SEATS is the first price generated by the opening algorithm. As can be seen from Table 3, the opening price in HIJ is 420.2.

Table 3: Sequence of opening prices for HIJ

Trade

No

Buyer

Seller

Quantity

Average Price Calculation

Trade Price

(rounded)

1

111

777

400

400*423 + 6000 * 420 = 420.19

              6400

420.2

2

222

777

2,000

2000*422 + 5600*420 = 420.53

               7600

420.5

3

333

777

3,600

10000*422 + 3600*420 = 421.47

               13600

420.5

4

333

888

800

6400*422 + 800*421 = 421.89

               7200

421.9

5

333

900

5,600

Limit Prices are Equal

422.0

6

444

900

2,400

Limit Prices are Equal

422.0

 

Table 4 shows the orderbook for HIJ immediately after the opening.

Table 4: Bid/Offer Schedule for HIJ following opening

BID

OFFER

Broker

Quantity

Price (c)

Price (c)

Quantity

Broker

444

2,600

422

423

1,000

950

555

5,000

420

424

600

999

 

Important notes on opening algorithm:

1.    The sequences of opening trade prices are rounded to one-tenth of a cent, which results in opening trades at prices in tenths of a cent. This is equal to the smallest minimum tick enforced on SEATS during normal trading.

2.    The opening price is a function of the size of overlapping orders as well as their price. This opening price is not continuously calculated by SEATS during the Pre-opening phase, and hence there is an element of uncertainty associated with the opening price. Further the opening algorithm causes bids (asks) to be traded at a price less than (greater than) or equal to the price attached to these orders. This also generated uncertainty regarding the price at which a bid or ask will be executed.

Activity

Examples

Consider the following orders file:

AMC, 1-Apr-97,07:37:26,ENTER,831,500,415500,5044,889024888125048,,A

AMC,1-Apr-97,07:38:41,ENTER,831,700,581700,5045,657291406094408,,A

AMC,1-Apr-97,07:39:03,ENTER,832,500,416000,5046,242062359407230,,A

AMC,1-Apr-97,07:39:35,ENTER,835,500,417500,5047,1127193705767590,,A

AMC,1-Apr-97,07:40:09,ENTER,832,1000,832000,5048,,253803710837903,B

AMC,1-Apr-97,07:40:57,ENTER,831,500,415500,5049,,1265162355224700,B

AMC,1-Apr-97,07:41:41,ENTER,832,2000,1664000,5050,,160695464670030,B

AMC,1-Apr-97,07:42:34,ENTER,829,2000,1658000,5051,,1207277960876310,B

AMC,1-Apr-97,07:43:02,ENTER,828,2000,1656000,5052,,950274482642464,B

AMC,1-Apr-97,07:43:55,ENTER,827,2000,1654000,5053,,1174784694812760,B

AMC,1-Apr-97,07:44:03,ENTER,827,2000,1654000,5054,,722686986640687,B
Opening algorithm starts here

In this case, all orders are submitted during a preopening phase where no matching algorithm is exercised. The last line indicates the opening of the call market using the opening algorithm where all trades will be generated according to a call auction.

The corresponding output for this example is the following:

AMC, 1-Apr-97,07:37:26,ENTER,831,500,415500,5044,889024888125048,,A

AMC,1-Apr-97,07:38:41,ENTER,831,700,581700,5045,657291406094408,,A

AMC,1-Apr-97,07:39:03,ENTER,832,500,416000,5046,242062359407230,,A

AMC,1-Apr-97,07:39:35,ENTER,835,500,417500,5047,1127193705767590,,A

AMC,1-Apr-97,07:40:09,ENTER,832,1000,832000,5048,,253803710837903,B

AMC,1-Apr-97,07:40:57,ENTER,831,500,415500,5049,,1265162355224700,B

AMC,1-Apr-97,07:41:41,ENTER,832,2000,1664000,5050,,160695464670030,B

AMC,1-Apr-97,07:42:34,ENTER,829,2000,1658000,5051,,1207277960876310,B

AMC,1-Apr-97,07:43:02,ENTER,828,2000,1656000,5052,,950274482642464,B

AMC,1-Apr-97,07:43:55,ENTER,827,2000,1654000,5053,,1174784694812760,B

AMC,1-Apr-97,07:44:03,ENTER,827,2000,1654000,5054,,722686986640687,B

AMC,1-Apr-97,10:00:03,TRADE,831,500,415500,5055,253803710837903,889024888125048

AMC,1-Apr-97,10:01:07,TRADE,831,500,581700,5056,253803710837903, 657291406094408

AMC,1-Apr-97,10:02:24,TRADE,831,200,166200,5059,1265162355224700,657291406094408

AMC,1-Apr-97,10:03:41,TRADE,832,500,416000,5061,160695464670030, 242062359407230

 

And the corresponding orderbook is the following:

ORDERBOOK FOR SECURITY AMC - START

Best bid=832.0, Best ask=835.0

Ask[5047], 835.0,     vol:500.0,          [1127193705767590]

     <--spread=3.0-->

Bid[5050], 832.0,     vol:1300.0,    [160695464670030]

Bid[5049], 831.0,     vol:500.0,          [1265162355224700]

Bid[5051], 829.0,     vol:2000.0,    [1207277960876310]

Bid[5052], 828.0,     vol:2000.0,    [950274482642464]

Bid[5054], 827.0,     vol:2000.0,    [722686986640687]

Bid[5053], 827.0,     vol:2000.0,    [1174784694812760]

ORDERBOOK FOR SECURITY AMC - END

 

Example 2:

Consider the following input.csv file:

(preOpening phase)

AMC, 1-Apr-97,07:45:26,ENTER,831,500,415500,5062,889024888125048,,A

AMC,1-Apr-97,07:45:41,ENTER,831,700,581700,5063,657291406094408,,A

AMC,1-Apr-97,07:46:03,ENTER,832,500,416000,5064,242062359407230,,A

AMC,1-Apr-97,07:46:35,ENTER,835,500,417500,5065,1127193705767590,,A

AMC,1-Apr-97,07:47:09,ENTER,832,1000,832000,5066,,253803710837903,B

AMC,1-Apr-97,07:47:57,ENTER,831,500,415500,5067,,1265162355224700,B

(Opening phase)

(Continuous phase)

AMC,1-Apr-97,10:01:41,ENTER,832,2000,1664000,5068,,160695464670030,B

AMC,1-Apr-97,10:02:34,ENTER,829,2000,1658000,5069,,1207277960876310,B

AMC,1-Apr-97,10:03:02,ENTER,828,2000,1656000,5070,,950274482642464,B

(preopening phase)

AMC,1-Apr-97,16:01:55,ENTER,827,2000,1654000,5071,,1174784694812760,B

AMC,1-Apr-97,16:03:09,ENTER,827,2000,1654000,5072,,722686986640687,B

(Opening phase)

 

In this case, the first 6 orders are submitted during a PreOpening phase where no matching algorithm is exercised. Then the call market is exercised using the Opening phase algorithm where all possible trades are generated. Then the Normal phase is started where continuous market is started allowing the matching algorithm to be exercised whenever the spread becomes equal or less than zero. Three orders in this example are submitted during the Normal phase. Then, a PreOpening phase is started again where no matching algorithm is exercised. Two orders are submitted during this PreOpening phase. Finally, Then the call market is exercised using the Opening (which plays the role of a Closing phase) algorithm where all possible trades are generated. 

The corresponding output for this example is the following:

AMC, 1-Apr-97,07:45:26,ENTER,831,500,415500,5062,889024888125048,,A

AMC,1-Apr-97,07:45:41,ENTER,831,700,581700,5063,657291406094408,,A

AMC,1-Apr-97,07:46:03,ENTER,832,500,416000,5064,242062359407230,,A

AMC,1-Apr-97,07:46:35,ENTER,835,500,417500,5065,1127193705767590,,A

AMC,1-Apr-97,07:47:09,ENTER,832,1000,832000,5066,,253803710837903,B

AMC,1-Apr-97,07:47:57,ENTER,831,500,415500,5067,,1265162355224700,B

AMC,1-Apr-97,10:00:03,TRADE,831,500,415500,5079,253803710837903,889024888125048

AMC,1-Apr-97,10:01:07,TRADE,831,500,581700,5080,253803710837903, 657291406094408

AMC,1-Apr-97,10:02:24,TRADE,831,200,166200,5081,1265162355224700,657291406094408

AMC,1-Apr-97,10:20:41,ENTER,832,2000,1664000,5082,,160695464670030,B

AMC,1-Apr-97,10:21:41,TRADE,832,500,416000,5083,160695464670030, 242062359407230

AMC,1-Apr-97,10:42:34,ENTER,829,2000,1658000,5084,,1207277960876310,B

AMC,1-Apr-97,10:43:02,ENTER,828,2000,1656000,5085,,950274482642464,B

AMC,1-Apr-97,16:01:55,ENTER,827,2000,1654000,5086,,1174784694812760,B

AMC,1-Apr-97,16:03:09,ENTER,827,2000,1654000,5087,,722686986640687,B

 

And the corresponding orderbook text file is the following:

ORDERBOOK FOR SECURITY AMC - START

Best bid=832.0, Best ask=835.0

 

Ask[5076], 835.0,     vol:500.0,          [1127193705767590]

     <--spread=3.0-->

Bid[5082], 832.0,     vol:1500.0,    [160695464670030]

Bid[5078], 831.0,     vol:300.0,          [1265162355224700]

Bid[5084], 829.0,     vol:2000.0,    [1207277960876310]

Bid[5085], 828.0,     vol:2000.0,    [950274482642464]