TQ601 · TECHNICAL SPECIFICATION Turquoise Equities Guide to Certification ISSUE 2.2 · 29 July 2013 Contents 1 2 3 4 5 Introduction ........................................................................................................ 6 1.1 Purpose ...................................................................................................... 6 1.2 Readership.................................................................................................. 6 1.3 Document Series......................................................................................... 6 1.4 Document History........................................................................................ 7 1.5 Contacts ...................................................................................................... 8 Certification Programme ..................................................................................... 9 2.1 Access to the Live Service .......................................................................... 9 2.2 Software Identification ................................................................................. 9 2.3 Certification Policy....................................................................................... 9 2.4 Certification passport ................................................................................ 10 2.5 Test Scenario Exception Policy ................................................................. 10 2.6 Re-certification Policy ................................................................................ 10 2.7 Non-Conformant Behaviour on the Live Service ........................................ 10 2.8 Test charges ............................................................................................. 10 Certification Process ........................................................................................ 11 3.1 Full Certification Test ................................................................................ 12 3.2 Self Certification Checklist ......................................................................... 14 Additional Mandatory Test Guidance................................................................ 15 4.1 Mandatory Own Trade Book Downloads ................................................... 15 4.2 Mandatory Replay and Recovery for All Market Data Interfaces ................ 15 4.3 Mandatory Testing for Sponsored Access Customers ............................... 15 Certification Test Scenarios.............................................................................. 16 5.1 Test Procedure ......................................................................................... 16 5.2 FIX and Native Trading ............................................................................. 17 5.2.1 5.3 Password Change .............................................................................. 17 Level-2 ITCH ............................................................................................. 18 5.3.1 ITCH Replay Request ........................................................................ 18 5.3.2 ITCH Snapshot for Instrument ............................................................ 19 5.3.3 ITCH Snapshot for Segment .............................................................. 20 5.4 Group Ticker Plant .................................................................................... 21 5.4.1 GTP – Replay Request ...................................................................... 21 5.4.2 GTP – Recovery Request .................................................................. 22 5.5 Continuous Trading / Order Management ................................................. 23 2 5.5.1 Establish Logon for Test Cycle ........................................................... 23 5.5.2 Auction – Limit Orders ........................................................................ 24 5.5.3 Auction – Market Orders .................................................................... 25 5.5.4 Auction – Market to Limit Order .......................................................... 26 5.5.5 Aggressive Market Orders and forcing Incoming Order Source .......... 27 5.5.6 Market Order ...................................................................................... 28 5.5.7 Limit PassiveOnly Order..................................................................... 29 5.5.8 Aggressive Limit Order ....................................................................... 30 5.5.9 Limit Passive Order ............................................................................ 31 5.5.10 Dark Pegged Order ............................................................................ 32 5.5.11 Stop Orders........................................................................................ 33 5.5.12 Stop Limit Order ................................................................................. 34 5.5.13 Mid-point Pegged Order ..................................................................... 35 5.5.14 Hidden Order ..................................................................................... 36 5.5.15 Iceberg Orders ................................................................................... 37 5.5.16 Randomized Iceberg Orders .............................................................. 38 5.5.17 Market order with Time in Force CPX................................................. 39 5.5.18 Limit order with Time in Force CPX .................................................... 39 5.5.19 Named Order ..................................................................................... 40 5.5.20 Order Modification .............................................................................. 41 5.5.21 Order Cancel...................................................................................... 42 5.5.22 Internal Cross Orders ......................................................................... 43 5.5.23 Internal BTF Orders ........................................................................... 44 5.5.24 Committed Cross Orders Deletion ...................................................... 45 5.5.25 Committed BTF Orders Deletion ........................................................ 46 5.5.26 Closing Price Publication Session ...................................................... 47 5.5.27 Enter Order in Closing Price Cross session........................................ 48 5.5.28 Price Modification in Closing Price Cross session .............................. 49 5.5.29 Orders Deletion in Closing Price Cross session ................................. 50 5.5.30 Cancel on Disconnect ........................................................................ 51 5.6 Specialist User Tests/Quote Management ................................................ 52 5.6.1 Establish a connection and Logon...................................................... 52 5.6.2 Named Orders ................................................................................... 53 5.6.3 New Executable Quote ...................................................................... 54 5.6.4 Modify Executable Quote ................................................................... 55 5.6.5 Cancel Executable Quote................................................................... 56 5.6.6 Executable Quotes GFA submission .................................................. 57 5.6.7 Single Side Quote .............................................................................. 58 5.6.8 Modify Executable Single Side Quotes............................................... 59 3 5.6.9 Cancel Executable Single Side Quotes .............................................. 60 5.6.10 Executable Single Side Quotes submission Time in Force GFA......... 61 5.6.11 Executable Single Side Quotes submission Time in Force OPG ........ 62 5.6.12 New Firm Quote (FIX Only) ................................................................ 63 5.6.13 Modify Firm Quote (FIX Only)............................................................. 64 5.6.14 Cancel Firm Quote (FIX Only) ............................................................ 65 5.7 Supervisor User Tests ............................................................................... 66 5.7.1 Establish a connection and Logon...................................................... 66 5.7.2 Mass Cancellation .............................................................................. 67 5.7.3 Orders Modification ............................................................................ 68 5.7.4 Orders Deletion .................................................................................. 69 5.8 Native Recovery ........................................................................................ 70 5.8.1 5.9 Requesting Missed Messages............................................................ 70 Post Trade Gateway Validation ................................................................. 72 5.9.1 Establish Logon for Test Cycle ........................................................... 72 5.9.2 Own Trade Book Download ............................................................... 73 5.9.3 Trade Reporting ................................................................................. 74 5.9.4 Cancel Trade Report .......................................................................... 75 5.9.5 Pre-Release Trade Report ................................................................. 76 5.10 Drop Copy Gateway Validation ................................................................. 77 5.10.1 Establish Logon for Test Cycle ........................................................... 77 5.10.2 Own Order Book Download ................................................................ 78 5.11 On Behalf of Actions Native & FIX Trading Gateways ............................... 79 5.11.1 Cancel Client’s Order ......................................................................... 79 5.11.2 Cancel Client’s Quote ........................................................................ 80 5.11.3 Cancel Client’s Trade ......................................................................... 81 5.11.4 Committed Cross Orders.................................................................... 83 5.11.5 Committed BTF Orders ...................................................................... 84 5.12 All Gateways ............................................................................................. 85 5.12.1 5.13 Error Handling .................................................................................... 85 FIX Session Level Testing ......................................................................... 86 5.13.1 Heartbeat Exchange .......................................................................... 86 5.13.2 Sequence Reset ................................................................................ 87 5.13.3 Sequence Reset at Logon .................................................................. 88 5.13.4 Resend Request ................................................................................ 89 4 Disclaimer The London Stock Exchange Group has taken reasonable efforts to ensure that the information contained in this publication is correct at the time of going to press, but shall not be liable for decisions made in reliance on it. The London Stock Exchange Group will endeavour to provide notice to customers of changes being made to this document, but this notice cannot always be guaranteed. Therefore, please note that this publication may be updated at any time. The information contained is therefore for guidance only. 5 1 Introduction 1.1 Purpose The purpose of this document is to provide customers with a detailed overview of the Certification service. The London Stock Exchange Group restricts access to its Live Services to software applications that have not completed the software certification process. The Live Services are all Trading and Information Services on an eligible LSEG Venue. The eligible venues are currently London Stock Exchange, Borsa Italiana and Turquoise. 1.2 Readership This document is particularly relevant to software developers, system testers and anyone else involved in developing a software application for use on any of the Live Services. This document should be read in conjunction with London Stock Exchange Group Millennium Technical Specifications and the product specific ‘Guide to Testing Services’ documents. Together, these documents provide all of the relevant information that customers require to develop and certify to the services. 1.3 Document Series This document is part of a series of Customer Testing documents that are available to customers. The other documents are: MIT501 Guide to Testing Services (London Stock Exchange and Turquoise) TQ602 Certification Test Report 6 1.4 Document History This document has been through the following iterations: Issue Date Description 1.0 20 July 2010 First issue of this document published. 1.1 9 August 2010 1.2 17 August 2010 1.3 01 September 2010 Fourth issue of this document published. 1.4 21 September 2010 Inclusion of tam@tradeturquoise.com email address. 1.5 14 November 2011 Added trade cancel cycle. 1.6 13 April 2012 Separated MTF-037 (Order Cancel) and MTF-038 (Trade Cancel) 1.7 3 October 2012 Added CDS Test Environment Trading Hours 1.8 1 February 2013 Updated contact details and LCON policy 1.9 12 February 2013 Updated test cases and improved layout. 2.0 14 June 2013 Updated Annual Certification Policy 2.1 16 July 2013 Updated test case IDs 2.2 29 July 2013 Updated Certification Passport Second issue published with test MTF-000 (Initial Password Change) included MTF-000; removed requirement to change password for ITCH gateway In subsequent issues, where amendments have been made to the previous version, these changes will be identified using a series of side bars as illustrated opposite. 7 1.5 Contacts All customers who are developing software for use in the Live Service are allocated a Technical Account Manager (TAM). The TAM/Service Desk is available to provide support during the software development; testing and certification process. If you do not know who your TAM is and need assistance please contact the following team: London Stock Exchange and Turquoise Technical Account Management Telephone: +44 (0)20 7797 3939 Email: londontam@londonstockexchange.com All information requested by a tester during the certification process should be emailed to the following address: MarketAccess@londonstockexchange.com Borsa Italiana Client Technology Services (ITA) and Service Desk Free Toll Number: 008 00 26772 000 Email: service-desk@borsaitaliana.it clients-services@borsaitaliana.it 8 2 Certification Programme The Certification Programme is based on regulatory compliance supporting interoperability against the three eligible London Stock Exchange Group (LSEG) venues. The following Certification Programme applies to anyone connecting a software application to an LSEG Live Service. A Live service is any production Trading or Information Services environment across LSEG. Under EU and national regulatory requirements (including the ESMA Guidelines on Systems and Controls in a Highly Automated Trading Environment) the eligible LSEG venues are required to have procedures and arrangements to ensure fair and orderly trading. This includes requirements for physical and electronic security to protect systems from misuse or unauthorised access and to ensure the integrity of the data that is part of or passes through the systems. The eligible venues are required to undertake standardised certification testing to ensure that members and participants systems used to access the venues have a minimum level of functionality that is compatible with fair and orderly trading on those venues. Customer non-compliance with this certification programme may constitute a breach of the eligible venue terms and conditions or rules. 2.1 Access to the Live Service Access to the LSEG Live Services is permitted only when a customer’s software application has been certified as being fit for purpose. 2.2 Software Identification All customer software must be identifiable by a software name and version number. Software applications that do not have both a name and version number will not be certified. Certification is limited to a single version of the named software. 2.3 Certification Policy Customers are required to certify twice per year per venue. Software certification remains valid for twelve months from the date of the second certification test. Full details can be found in Section 3 9 2.4 Certification passport Customers that have successfully completed the full certification process on an eligible LSEG venue are allowed to connect their software to any other eligible LSEG venues, under the following conditions: The software name and version number are the same on each venue. The functionality that will be used was tested as part of the Full Certification test. The customer completes and returns a certification test report for each additional venue. Please note that Native software is not currently eligible for certification passporting. 2.5 Test Scenario Exception Policy Customers only need to complete the test cases relating to the functionality that they will use on the Live Services. If a customer’s application does not support the functionality described in a particular test scenario and they do not intend to complete the scenario during the test, this must be agreed before the start of the certification test. 2.6 Re-certification Policy Customers are required to re-certify their applications under the following conditions: The customer modifies the software in any way that directly impacts LSEG interfaces. This includes but is not limited to updates to Gateways, Order Management, Execution Management and Quote Management Software. The Exchange upgrades its production environment to a later version of software The software certification period has expired The customer is requested to re-certify their application by the relevant venue 2.7 Non-Conformant Behaviour on the Live Service Any non-conformant behaviour by a customer’s software application on the Live Services may lead to the software application being disconnected and not reconnected until it has been re-certified and the non-conformant behaviour corrected. 2.8 Test charges The published venue specific Certification charges apply to all certification testing regardless of the test being assisted or not. 10 3 Certification Process The Certification Process is an integral part of the Certification Programme Mandatory testing will be required for all applications that wish to connect to the production environment and mandatory functions will need to be tested in order to confirm conformant behaviour. Customers should consider their software application’s ‘production ready’ before attempting the test. Customers should also read and familiarise themselves with this document and the Market and Product Specific Testing documents. These documents contain important guidance that must be read before completing the certification process. When ready to take the test, customers should complete the following steps: Customers should contact o their TAM for London Markets o the Service Desk for Milan Markets to provide the software name and version, a brief description of the application and the gateways that it will connect to The TAM / Service Desk will then confirm whether a Full Certification Test or a Self Certification Checklist is required and forward the relevant Certification Test Report to the customer 11 3.1 Full Certification Test Before Taking the Test The Market Access team for London markets and the Service Desk team for Milan markets will be available to assist participants in completing part of their certification test by performing both mandatory and optional functions. Customers must identify the venue and the test scenarios supported by their application, by ticking the relevant boxes on the Certification Test Report The report form must then be sent to: - marketaccess@londonstockexchange.com for London markets service-desk@borsaitaliana.it for Milan markets. This is a formal record of the software application that is being certified Customers should save a copy of the test report as they will be required to use it during the test to record their test results. During the Test Customers should complete the full set of uncoordinated test cycles described in Section 5 and inform the relevant venue of the LSEG when this has been completed. If required Borsa Italiana can provide some limited support during this phase. Customers should record the test results on TQ602 Certification Test Report using the test procedure shown at the start of section 5. Customers are required to complete all test scenarios previously marked on the Certification Test Report. If a customer does not complete a pre-agreed test scenario, the test will fail. When all of the uncoordinated test scenarios have been completed, the customer must then complete a set of coordinated test scenarios, assisted by a tester. The customer can repeat this part as many times as necessary, however additional test sessions may have to be booked if the testing exceeds two hours. When all test scenarios have been completed, the customer should email the completed Certification Test Report to the tester. The email should be addressed - marketaccess@londonstockexchange.com for London markets, - service-desk@borsaitaliana.it for Milan markets. 12 After the Test After the test the tester will check the details on the completed Certification Test Report and review the log files for the completed test scenarios. A report is generated detailing how the customer’s application has performed during the test. If no re-testing is required, he report will be sent to the customer to sign off the application as fit for purpose and ready for access to the Live Services The following items are checked: The functional behaviour and message sequencing in each scenario If the session was maintained for the entire period or if it dropped If any errors were produced over the time period If multiple interfaces were included in the test, the results are concatenated into a single report. The report will be run specifying a time ranged limited to a single day. If the customer is required to repeat any of the testing they should do so within 24 hours of the original test. 13 3.2 Self Certification Checklist Before Taking the Test Customers must identify the test scenarios supported by their application, by ticking the relevant boxes on the Certification Test Report. Customers should save a copy of the test report as they will be required to use it during the test to record their test results. During the Test Customers are required to complete all test scenarios previously marked on the Certification Test Report. If a customer does not complete a pre-agreed test scenario, the test will fail. Customers should record the test results on TQ602 Certification Test Report using the test procedure shown at the start of section 5. After the Test After the test the customer will need to sign the report to confirm the test was performed and the application is fit for purpose and ready for production access. The report will need to be sent to - marketaccess@londonstockexchange.com for London markets, - service-desk@borsaitaliana.it for Milan markets. By returning the signed copy of the Certification Test Report Certification Checklist, the customer is confirming that their application is fully conformant to all aspects of the Millennium Technical Specifications and technically behaves as described in the guidance given in both this document and the guide to testing. 14 4 Additional Mandatory Test Guidance 4.1 Mandatory Own Trade Book Downloads All Trading customers are required to develop to and certify that their application can use the Own Trade Book Download service on the Post Trade Gateway. This is mandatory for all trading applications. This functionality enables firms to be able to recover in the event of a site failure at the London Stock Exchange or Customer Site without the need to request trade details from the Exchange. 4.2 Mandatory Replay and Recovery for All Market Data Interfaces The use of both the Replay and Recovery channels is mandatory for all customers on all Market Data Gateways. Customers are required to confirm that their software applications can use both of these services. A Market Data Failover and Recovery Service is available on the Customer Development Service. The level of the request (segment, channel or instrument) or the type of request (snapshot for order books, statistics or other) is not mandated but should mirror how the application will work in the production environment. Note: Request limits are applied to both the Replay and Recovery services, limiting the number of recovery actions a customer can perform in a day. 4.3 Mandatory Testing for Sponsored Access Customers Sponsored Access Customers will have additional mandatory testing requirements for Sponsored Access Users (Native Gateway) and Firms (Drop Copy Gateway). Details of this can be found in document MIT701 15 5 Certification Test Scenarios 5.1 Test Procedure Before proceeding with the certification test, customers must identify which scenarios are applicable and mark these on the Test Report. Customers must perform all of the steps in each of the test scenarios and record the results in the relevant sections of the Test Report. When documenting the test results, customers should include all information as requested in each of the steps, such as Order IDs, QuoteMsg IDs and Security IDs. If the result does not match the expected result, the customer should still record it in the relevant section of the certification test report and in the comments section including the following: Order IDs/ QuoteMsg IDs (if any) Security ID Time of the order/quote/operation submission/execution Any information which may be helpful in troubleshooting the error Unless a log off or disconnect request is specified in the test case the customer should complete all test cases without logging off or disconnecting. If there are any unexpected log offs or disconnects, these should be documented in the comments section of the certification test report. Note All test scenarios marked as mandatory must be completed unless an exception has been granted by the TAM Gateway connections and User IDs should be checked at least 2 working days before planned execution date 16 5.2 FIX and Native Trading 5.2.1 Password Change Type: FIX/Native Gateways ID #: MIT-001 Description: Log on to the FIX / Native gateway(s) and change the logon password from the system default. Comments: This test must be performed using each of the protocols intended to be used by the customer (Native and/or FIX). Prerequisites None. # Test Steps Expected Results 1. Establish a connection and Logon to Successful Logon, with current default the relevant gateway(s). password and a valid new password specified. In your logon message, specify a new password of at least eight characters in length including one integer. 2. (please provide details of CompID(s) and gateway(s) tested in the comments section of the Certification report.) Logout and Disconnect. 3. Logon using the new password. Logout message sent by client and connection terminated. Successful Logon, using the new password specified in step 1. 17 5.3 Level-2 ITCH 5.3.1 ITCH Replay Request Type: ITCH Replay ID #: MIT-002 Description: Logon and send Replay Request to request the retransmission of a small range of messages already published on the multicast channel. Comments: The Replay Request must be sent within 5 seconds of establishing a connection. The retransmission request will be sent from the server’s cache of the last 65,000 messages published on the multicast channel Prerequisites None. # Test Steps Expected Results 1. Establish a connection and Logon to Successful Logon. the Replay Service 2. 3. (please choose any one channel to connect to and provide details in the comments section of the Certification report.) Send a Replay Request message Provide the “market data group”, “First Message” and “count” field details in the Certification report. Logout and Disconnect with in 5 seconds of the transmission of the last missed message. Receive a successful Replay Response to the request. Receive requested messages. Logout message sent by client and connection terminated. If this is not done within 5 seconds, the server will terminate the client session. 18 5.3.2 ITCH Snapshot for Instrument Type: ITCH Recovery ID #: MIT-003 Description: Logon and request a Snapshot of the current order book for a particular instrument. Comments: If there is no activity for 5 seconds the server will send a Logout message and disconnect the client connection. Prerequisites None. # Test Steps 1. Establish a connection and send a Login Request to the Recovery Service 2. (please choose any one channel to connect to and provide details in the comments section of the Certification report.) Send a Snapshot Request for the current order book for an instrument. Provide the “sequence number” and “instrument ID” field details in the Certification Report. Expected Results Successful Login Response. Receive: A Snapshot Response to indicate whether a Snapshot Request for an Instrument is accepted. A Snapshot of the current book for both the order and quote books (if any) for the requested instrument via a series of Add Order and Add Attributed Order messages (one book at a time). A Snapshot Complete message once the details for all active orders for the instrument’s order book are disseminated (one message for the order book and one for the quote book (if applicable).) 19 5.3.3 ITCH Snapshot for Segment Type: ITCH Recovery ID #: MIT-004 Description: Request a snapshot of the current order book for all instruments in a specified segment. Comments: If there is no activity for 5 seconds or the client does not terminate the connection within 5 seconds of the transmission of the last application message, the server will send a Logout message. Prerequisites: Already logged on from previous Test Case # Test Steps Send a Snapshot Request for the current 1. order book for a segment. Provide the “segment” and “instrument ID” field details in the Certification report. Expected Results Receive: A Snapshot Response to indicate whether a Snapshot Request for a segment is accepted. A Snapshot of the current book for both the order and quote books (if any) for all instruments in the requested segment via series of Add Order and Add Attributed Order messages. (one instrument at a time) A Snapshot Complete message: Once the details of all active orders for a particular instrument’s order book are disseminated. 2. Logout and Disconnect with in 5 seconds of the transmission of the last missed message. 20 A Snapshot Complete message once the details of all active orders for all instruments in the requested segment are disseminated. Logout message sent by client and connection terminated. If this is not done within 5 seconds, the server will terminate the client session. 5.4 Group Ticker Plant 5.4.1 GTP – Replay Request Type: GTP Replay ID #: MIT-005 Description: Logon and send a Replay Request Comments: Prerequisites None. # Test Steps 1. Establish a connection and Logon to the Replay Service 2. (please choose any one channel to connect to and provide details in the comments section of the Certification report.) Send an Replay request Expected Results Successful Logon. Receive a successful Replay Response. Provide First Message, Count & Request ID in the Certification report. Receive requested messages. Receive Replay & Recovery complete message to indicate completion of retransmission. User will be disconnected after 5 seconds of inactivity 21 5.4.2 GTP – Recovery Request Type: GTP Recovery ID #: MIT-006 Description: Logon and send a Recovery Request Comments: Prerequisites: None. # Test Steps Establish a connection and Logon to the Recovery Service (please choose any one channel to connect to and provide details in the comments section of the Certification report.) Send an Recovery request Expected Results Successful Logon. Receive a successful Recovery Response. Provide Request level,instrument group/Segment(Group ID)/Multicast Channel,Recovery Type & request ID in the Certification report. Receive requested messages. Receive Replay & Recovery complete message to indicate completion of request. User will be disconnected after 5 seconds of inactivity 22 5.5 Continuous Trading / Order Management 5.5.1 Establish Logon for Test Cycle Type: FIX/Native Gateways ID #: MIT-007 Description: Establish a connection and Logon. Comments: Prerequisites: None. # 1. Test Steps Establish a connection and Logon. Expected Results Successful Logon. This session must remain logged on for the duration of the certification test unless LSEG has instructed the customer to logout. 23 5.5.2 Auction – Limit Orders Type: FIX/Native Gateways ID #: MIT-008 Description: Validate Limit orders during Opening/Closing Auction. Comments: Prerequisites: This test needs to be executed during Opening or Closing Auction session. Already logged on from previous Test Case Alternatively, contact LSEG and request a stock to be manually moved into an Opening or Closing Auction session. # 1. Test Steps Enter an aggressive Limit order. Expected Results The order goes on to the order book and is executed at uncrossing. (Assuming there is a match for this order in the order book. If there is no match for the order in the order book, please create a matching order.) Please provide Order ID(s) and Client Order ID in the Certification Report. 24 Receive Execution Report for a fill or partial fill 5.5.3 Auction – Market Orders Type: FIX/Native Gateways ID #: MIT-009 Description: Validate Market (un-priced) orders during Opening/Closing Auction. Comments: Prerequisites: This test needs to be executed during Opening or Closing Auction session. Already logged on from previous Test Case Alternatively, contact LSEG and request a stock to be manually moved into an Opening or Closing Auction session. # 1. Test Steps Enter a Market Order. Expected Results The order goes on to the order book and is executed at uncrossing. (Assuming there is a match for this order in the order book. If there is no match for the order in the order book, please create a matching order.) Please provide Order ID(s) and Client Order ID in the Certification Report. 25 Receive Execution Report for a fill or partial fill 5.5.4 Auction – Market to Limit Order Type: FIX/Native Gateways ID #: MIT-010 Description: Validate Market to Limit Orders. Comments: Prerequisites: This test needs to be executed during Opening Auction. (Only in case of problem it could be executed in Closing or Volatility Auction session). Already logged on from previous Test Case. # 1. Test Steps Enter a Market to Limit order. (Assuming there are matching orders for this order on the order book. If there are no matching orders on the order book, please create these.) Expected Results The order goes on to the order book and is executed at the best price at uncrossing. Any remainder will be converted to a limit order at the last traded price. Receive Execution Report Please provide Order ID(s) and Client Order ID in the Certification Report. 26 5.5.5 Aggressive Market Orders and forcing Incoming Order Source Type: FIX/Native Gateways ID #: MIT-011 Description: Validate Aggressive Market Orders during Continuous Trading. Note this is one un priced order. Comments: Prerequisites: This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. # 1. Test Steps Enter an Aggressive Market order (IOC or FOK) and force the Incoming Order Source. (Assuming there are matching orders for this order on the order book. If there are no matching orders on the order book, please create these.) Please provide Order ID(s) and Client Order ID in the Certification Report. 27 Expected Results The order is executed. Receive Execution Report 5.5.6 Market Order Type: FIX/Native Gateways ID #: MIT-012 Description: Validate Aggressive Market orders during Continuous Trading. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 2. Enter an Aggressive Market order The order is executed. (OrderType=1). (Assuming there are matching orders for this order on the order book. If there are no matching orders on the order book, please create these.) Receive Execution Report Please provide Order ID(s) and Client Order ID in the Certification Report. 3. Enter another Aggressive Market Order that matches against multiple resting orders Please provide Order ID(s) and Client Order ID in the Certification Report. 28 The order trades resulting in multiple execution fills. 5.5.7 Limit PassiveOnly Order Type: FIX/Native Gateways ID #: MIT-013 Description: Validate Limit “PassiveOnlyOrder” during Continuous Trading. Comments: This is an Order level parameter that allows clients to require that their order must rest prior to execution, with flexibility for visible orders to rest at a specified price level on the orderbook. NOTE: Setting PassiveOnlyOrder to values other than 0 or “null” may still result in the order aggressively matching against hidden orders resting on the order book. Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # 1. Test Steps Enter a Day Limit order with the “PassiveOnlyOrder” field populated with any of the defined values other than “0” or “Null”. Please provide Order ID(s) and Client Order ID in the Certification Report. 2. Expected Results The order is accepted and goes on to the order book only if the field value conditions are met otherwise the order is rejected. Receive Execution Report with OrderStatus = 0 (New) Obtain the current sell price of a stock. Sell Price of test stock obtained If there are no sell orders resting on the order book please enter a resting sell order 3. Enter another order with the “PassiveOnlyOrder” field set to 1, and set the bid price above the sell price obtained in step 2 Please provide Order ID(s) and Client Order ID in the Certification Report. 29 Receive Execution Report with OrderStatus = 6 (Expired) with error code “Order would execute with visible order on Aggression” 5.5.8 Aggressive Limit Order Type: FIX/Native Gateways ID #: MIT-014 Description: Validate Aggressive Limit orders during Continuous Trading. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 1. Enter an Aggressive Limit order. The order is immediately executed without resting. (Assuming there are matching orders for this order in the order book. If there are Receive Execution Report no matching orders in the order book, please create them.) Please provide Order ID(s) and Client Order ID in the Certification Report. 30 5.5.9 Limit Passive Order Type: FIX/Native Gateways ID #: MIT-015 Description: Validate Passive Limit orders during Continuous Trading. Comments: Note: This test verifies entering a passive order without using the “PassiveOnlyOrder” field. Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # 1. Test Steps Enter an ordinary Passive Limit order. Expected Results The order goes on to the order book and rests The PassiveOnlyOrder” field must be set to “0” or “Null” (Assuming there are matching orders for this order in the order book. If there are no matching orders in the order book, please create them.) Please provide Order ID(s) and Client Order ID in the Certification Report. 31 Receive Execution Report 5.5.10 Dark Pegged Order Type: FIX/Native Gateways ID #: MIT-016 Description: (i) Validate Dark Mid Price Pegged orders during Periodic Uncrossing (Dark Midpoint orderbook specified via RoutingInst/TargetBook). (ii) Validate Dark Mid Price Pegged orders during Continuous Trading (Dark Midpoint orderbook specified via RoutingInst/TargetBook). Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case MTF-008. # Test Steps Expected Results 1. Enter a Pegged order. The order is successfully submitted and gets a valid order status. It is either Please provide Order ID(s) and Client parked or executed as a dark midpoint Order ID in the certification exception order pegged to the PBBO marketplace. report. Receive execution report 32 5.5.11 Stop Orders Type: FIX/Native Gateways ID #: MIT-017 Description: Validate Stop Orders. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. # Test Steps Expected Results 1. Enter a Stop Order. The order is executed. Please provide Order ID(s) and Client Order ID in the Certification Report. Receive Execution Report (Assuming there are matching orders for this order in the order book. If there are no matching orders in the order book, please create them.) 33 5.5.12 Stop Limit Order Type: FIX/Native Gateways ID #: MIT-018 Description: Validate Stop Limit orders during Continuous Trading. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 2. Enter a Stop Limit order. The order is successfully submitted and gets a valid order status. Order resides Please provide Order ID(s) and Client on the order book or is executed. Order ID in the Certification Report. Receive Execution Report 34 5.5.13 Mid-point Pegged Order Type: FIX/Native Gateways ID #: MIT-019 Description: Validate Mid Price Pegged orders during Continuous Trading. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 2. Enter a Pegged order. The order is successfully submitted and gets a valid order status. It is either Please provide Order ID(s) and Client parked or executed. Order ID in the Certification Report. Receive Execution Report 35 5.5.14 Hidden Order Type: FIX/Native Gateways ID #: MIT-020 Description: Validate Hidden orders during Continuous Trading. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 1. Enter a Hidden order. The order is successfully submitted and gets a valid order status. This is either Please provide Order ID(s) and Client executed or resides on the order book Order ID in the Certification Report. (undisclosed). Receive Execution Report 36 5.5.15 Iceberg Orders Type: FIX/Native Gateways ID #: MIT-021 Description: Validate Iceberg Orders. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. # Test Steps Expected Results 1. Enter an Iceberg order. The order is successfully submitted and gets a valid order status. The order reside on the book (only for peak size) Please provide Order ID(s), Public OrderId and Client Order ID in the Receive Execution Report. Certification report. 2. 3. Enter an order to trade the peak size (visible quantity). The peak size are traded and refreshed in size back to the display quantity. Please provide the new Public OrderID received in the Execution Report Receive Execution Reports. Enter an order to trade the Visible and Hidden size Receive two Execution Reports. Please provide the new Public OrderID received in the Execution Reports 37 5.5.16 Randomized Iceberg Orders Type: FIX/Native Gateways ID #: MIT-022 Description: Validate Randomized Iceberg orders during Continuous Trading. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 1. Enter a Randomized Iceberg order. The order is successfully submitted and gets a valid order status. This order may (Assuming there are matching orders for execute or reside on the order book, fully this order in the order book. If there are or partially. no matching orders in the order book, please create them.) Receive Execution Report with partial fill or fully filled. Please provide Order ID(s) and Client Order ID in the Certification report. 38 5.5.17 Market order with Time in Force CPX Type: FIX/Native Gateways ID #: MIT-023 Description: Validate Market order with Time in Force CPX sent during Continuous Trading session Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. # 1. Test Steps Enter an Market order with TIF CPX Expected Results Receive Acknowledge in the Execution Report Please provide Order ID(s) and Client Order ID in the Certification report. 2. CPX session starts and CPX order are triggered without execution. Execution Report with ExecType=Triggered(L) If the order will be executed, will receive Execution Report with properly order status 5.5.18 Limit order with Time in Force CPX Type: FIX/Native Gateways ID #: MIT-024 Description: Validate Limit order with Time in Force CPX, sent during Continuous Trading Session 39 Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. # Test Steps Expected Results Enter 3 limit orders with TIF CPX 1. Receive Acknowledge in the Execution Report Please provide Order ID(s) and Client Order ID in the Certification report. 2. CPX session starts and CPX order are triggered without execution. Orders with prices worse than the Closing Auction Price should be Expired and receive the Execution Report with the reason ‘Invalid limit price (not equal to the closing price)’. Orders better than the Closing Auction Price should be re-priced to the Closing Auction Price and should be injected. Receive the Execution Report with ‘Repriced (better priced order at start of CPX session)’ Also, If the order will be executed, will receive Execution Report with properly order status. 5.5.19 Named Order Type: FIX/Native Gateways ID #: MIT-025 Description: Validate Named orders during Continuous Trading. 40 Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 1. Enter a Named order. The order is successfully submitted and executed. (Assuming there are matching orders for this order in the order book. If there are Receive Execution Report with partial fills no matching orders in the order book, or fills please create them.) Please provide Order ID(s) and Client Order ID in the Certification Report. 5.5.20 Order Modification Type: FIX/Native Gateways ID #: MIT-026 Description: Validate order Modification during Continuous Trading. 41 Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 1. Enter a passive order that rests on the The order is successfully submitted and order book. resides on the order book. 2. Please provide Order ID(s) and Client Order ID in the Certification Report. Receive Execution Report with ExecType = 0 (New) Amend order. The order is successfully modified. Please provide Order ID(s) and Client Order ID in the Certification Report. Receive Execution Report with ExecType = 5 (Replaced) 5.5.21 Order Cancel Type: FIX/Native Gateways ID #: MIT-027 Description: Validate order deletion during Continuous Trading. 42 Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 1. Enter a passive order that rests on the The order is successfully submitted and order book. resides on the order book. 2. Please provide Order ID(s) and Client Order ID in the Certification Report. Receive Execution Report with ExecType = 0 (New) Cancel the order. The order is successfully cancelled. Please provide Order ID(s) and Client Order ID in the Certification Report. Receive Execution Report with ExecType = 4 (Cancelled) 5.5.22 Internal Cross Orders Type: FIX/Native Gateways ID #: MIT-028 Description: 43 Validate Internal Cross Orders. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. # Test Steps Expected Results 1. Enter an Internal Cross order. The order is successfully submitted and executed. Please provide Order ID(s) and Client Order ID in the Certification Report. 5.5.23 Internal BTF Orders Type: FIX/Native Gateways ID #: MIT-029 Description: Validate Internal BTF Orders. 44 Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. # Test Steps Expected Results 1. Enter an Internal BTF Cross order. The order is successfully submitted and executed. Please provide Order ID(s) and Client Order ID in the Certification Report. 5.5.24 Committed Cross Orders Deletion Type: FIX/Native Gateways ID #: MIT-030 Description: 45 Validate Committed Cross Orders Deletion during Continuous Trading. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. # Test Steps Expected Results 1. Enter a Committed Cross order. The order is successfully submitted and resides on the order book. (Assuming that there is no match for the order in the order book.) Receive Execution Report Please provide Order ID(s) and Client Order ID in the Certification Report. 2. Cancel the cross order. The order is successfully cancelled. Please provide Order ID(s) and Client Order ID in the Certification Report. Receive Execution Report 5.5.25 Committed BTF Orders Deletion Type: FIX/Native Gateways ID #: MIT-031 Description: Validate Committed BTF Orders Deletion during Continuous Trading. 46 Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. # Test Steps Expected Results 1. Enter a Committed BTF order. The order is successfully submitted and resides on the order book. (Assuming that there is no match for the order in the order book.) Receive Execution Report 2. Please provide Order ID(s) and Client Order ID in the Certification Report. Cancel the BTF order. The order is successfully cancelled. Please provide Order ID(s) and Client Order ID in the Certification Report. Receive Execution Report 5.5.26 Closing Price Publication Session Type: FIX/Native Gateways ID #: MIT-032 Description: Validate order sent during Closing Price Publication session 47 Comments: These orders should be parked in the Parked Queue Prerequisites This test needs to be executed during Closing Price Publication Session and Closing Price Cross session Already logged on from previous Test Case # Test Steps Expected Results Enter an order during Closing Price 1. Publication Session at Closing Price Receive Acknowledge in the Execution with Time in Force CPX or DAY Report Please provide Order ID(s) and Client Order ID in the Certification report. Fix: Execution Report with OrdStatus (39) = 9 (Suspended) and ExecType (150) = 9 (Suspended) Native: Execution Report with Order Status = 9 (Suspended) , Exec Type = 9 (Suspended) and Container = 5 (parked) 2. At Closing Price Cross Session orders will be elected on the book. Receive Execution report for each order that is successfully executed at Closing price 5.5.27 Enter Order in Closing Price Cross session Type: FIX/Native Gateways ID #: MIT-033 Description: Validate Orders sent during Closing Price Cross session Comments: 48 Prerequisites This test needs to be executed during Closing Price Cross session. Already logged on from previous Test Case # Test Steps Expected Results 1. Enter an order during Closing Price Cross session. Receive Acknowledge in the Execution Order type: Report - limit order (Price equal to closing price) - Market order The order is successfully submitted and - MTL executed TIF CPX, DAY IOC and FOK Please provide Order ID(s) and Client Order ID in the Certification report. 5.5.28 Price Modification in Closing Price Cross session Type: FIX/Native Gateways ID #: MIT-034 Description: Validate price modification of limit order sent during Continuous Trading Session that remain not matched at the Closing and move to CPX Session. Comments: 49 Prerequisites This test needs to be executed at first time during Continuous Trading and Closing Price Cross session. Already logged on from previous Test Case. # Test Steps Expected Results Enter a Limit order during 1. Continuous Trading Session that Receive Acknowledge in the Execution remain not matched at the Closing Report and move to CPX Session The order is successfully submitted but NOT Order type:Limit executed TIF:DAY Please provide Order ID(s) and Client Order ID in the Certification report. 2. During CPX Session Amend Limit order already submitted but not yet executed, price modification at closing price The order is successfully modified. Receive Execution Report with price updated at Closing Price Please provide Order ID(s) and Client Order ID in the Certification Report. 5.5.29 Orders Deletion in Closing Price Cross session Type: FIX/Native Gateways ID #: MIT-035 Description: Validate Orders Deletion during Closing Price Cross session Comments: 50 Prerequisites This test needs to be executed during Closing Price Cross session. Already logged on from previous Test Case # Test Steps Expected Results 1. Enter an order during Closing Price Cross session Receive Acknowledge in the Execution Report 2. Please provide Order ID(s) and Client Order ID in the Certification report. Cancel the order. The order is successfully cancelled. Receive Execution Report 5.5.30 Cancel on Disconnect Type: FIX/Native Gateways ID #: MIT-036 Description: Validate Cancel-on-Disconnect and Logout Comments: If a different User ID/Comp ID has been specifically enabled for “Cancel on disconnect/Logout” for this test case please repeat test case MIT-007 first to Logon. 51 Customers are highly encouraged to utilise the Cancel on Disconnect functionality Prerequisites Already logged on from previous Test Case # 1. 2. 3. 4. 5. Test Steps Enter 3 passive regular orders that rest on the orderbook. Please provide Order ID(s) and Client Order ID in the Certification Report. Terminate the client-server session by either TCP disconnect for Cancel on disconnect or Logout for cancel on logout. Establish a connection and Logon. Verify the status of orders submitted in step 1 above. Expected Results The orders are successfully submitted and have a Live order status. Client-server session is terminated. (TCP connection dropped or Logout.) Successful Logon. FIX Execution reports received for all cancelled orders automatically. Native: Session active with heartbeating Execution reports received for all cancelled orders from the recovery channel. For native trading, the customer must recover the missed messages via the recovery channel manually. 5.6 Specialist User Tests/Quote Management 5.6.1 Establish a connection and Logon Type: FIX/Native Gateways ID #: MIT-037 Description: 52 Establish a connection and Logon. Comments: Prerequisites Specialist or Supervisor profile (Supervisor is FIX Only) # Test Steps Expected Results 1. Establish a connection and Logon. Successful Logon. Please provide CompID/Target User. 5.6.2 Named Orders Type: FIX/Native Gateways ID #: MIT-038 Description: Validate Named Orders during Continuous Trading. Comments: Prerequisites 53 This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 2. Enter a Named order. The order is successfully submitted and executed. (Assuming there are matching orders for this order in the order book. If there are Receive Execution Report no matching orders in the order book, please create them.) Please provide Order ID(s) and Client Order ID in the Certification Report. 5.6.3 New Executable Quote Type: FIX/Native Gateways ID #: MIT-039 Description: Validate Executable quote submission. Comments: Prerequisites 54 This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 3. Enter an Executable quote that rests on The quote is successfully submitted. the order book FIX: Please provide QuoteMsgID/ Client Order Receive Quote Status Report ID in the Certification Report. Native: Receive Execution report for each side of quote. 5.6.4 Modify Executable Quote Type: FIX/Native Gateways ID #: MIT-040 Description: Modify Executable quote. Comments: Prerequisites This test needs to be executed during Continuous Trading session. 55 Already logged on from previous Test Case. # Test Steps 1. Enter an Executable quote that rests on the order book Please provide QuoteMsgID/Client Order ID in the Certification Report. Expected Results The quote is successfully submitted. FIX: Receive Quote Status Report Native: Receive Execution report for each side of quote. 2. Modify the quote. The quote is successfully amended. (Replaced with new quote) (Please note for both FIX and Native a quote is amended by entering another quote. This replaces the existing quote on the quote book as you can only have one quote on the book for any given instrument.) Please provide new QuoteMsgID/Client Order ID in the certification report. FIX: If the quote rests on the order book, a Quote Status Report is recieved If the quote is fully or partially filled, Execution Report(s) are recieved (please provide ClOrdIDs) Native: Receive Execution report for each side of quote. 5.6.5 Cancel Executable Quote Type: FIX/Native Gateways ID #: MIT-041 Description: Cancel Executable quote. Comments: Prerequisites This test needs to be executed during Continuous Trading session. 56 Already logged on from previous Test Case. # Test Steps 1. Enter an Executable quote that rests on the order book Expected Results The quote is successfully submitted. FIX: Receive Quote Status Report Please provide QuoteMsgID/Client Order ID in the Certification Report. 2. 5.6.6 Native: Receive Execution report for each side of quote. Cancel the quote just entered. The quote is successfully cancelled. FIX: Send Quote Cancel message FIX: Receive Quote Status Report Native: Send Order Cancel Request messages Native: Receive Execution Report for each quote side cancelled. Executable Quotes GFA submission Type: FIX/Native Gateways ID #: MIT-042 Description: Validate Executable Quotes submission. Comments: Prerequisites This test needs to be executed during Opening Auction. Applicable only on MOT # Test Steps Expected Results 1. Enter an Executable (Opening Auction) The quote is parked until the next auction 57 quote width Time in Force set to GFA. call period starts at which point it is injected into the order book. Enter a quantity value in order to have a remaining quantity at the end of uncrossing. Please provide QuoteMsgID/ Client Order ID in the Certification Report. Any remaining volume is deleted after uncrossing and it will not be executed during Continuous Trading. If non auction in a trading day then is deleted after end of trading. FIX:Receive Quote Status Report If the quote is partially filled: Receive Execution Report (please provide ClOrdID) for the quantity traded . The remaining quantity is deleted. Native: Receive Execution report for each side. The remaining quantity is deleted. 5.6.7 Single Side Quote Type: FIX/Native Gateways ID #: MIT-043 Description: Validate Executable Quote submission Continuous Trading session Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. 58 # 1. Test Steps Enter an Executable Single Side Quote NAMED. Expected Results The quote is successfully submitted. Receive Quote Status Report Please provide QuoteMsgID/ Client Order ID in the Certification Report. 5.6.8 Receive Execution Report Modify Executable Single Side Quotes Type: FIX/Native Gateways ID #: MIT-044 Mandatory: Y Description: Validate Modify Executable Single Side Quotes. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. 59 Co-ordinated Test: N # 1. Test Steps Enter an Executable single side quote. Expected Results The single side quote is successfully submitted. (Assuming this quote is not fully or partially filled) FIX: Receive Quote Status Report Please provide QuoteMsgID/Client Order ID in the Certification Report. 2. Modify the single side quote price or quantity (Please note for both FIX and Native a SS quote is amended by entering another SSquote. This replaces the existing SS quote on the quote book as you can only have one SS quote on the book for any given instrument.) FIX: Receive Quote Status Report If the SS quote is fully or partially filled: Receive Execution Report (please provide ClOrdID) Native: Receive Execution report Please provide new SS QuoteMsgID/Client Order ID in the certification report. 5.6.9 Native: Receive Execution report The SS quote is successfully amended. (Replaced with new single side quote) Cancel Executable Single Side Quotes Type: FIX/Native Gateways ID #: MIT-045 Description: Validate Cancel Executable Single Side Quotes. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. 60 # 1. Test Steps Cancel the Single Side quote entered in the previous test case. Expected Results The SS quote is successfully cancelled. FIX: Receive Quote Status Report FIX: Send Quote Cancel message Native: Receive Execution Report. Native: Send Order Cancel Request message 5.6.10 Executable Single Side Quotes submission Time in Force GFA Type: FIX/Native Gateways ID #: MIT-046 Mandatory: Y Co-ordinated Test: N Description: Validate Executable Single Side Quotes submission during Opening Auction. Comments: Prerequisites This test needs to be executed during Opening Auction # Test Steps Expected Results 61 1. Enter an Executable (Opening Auction) quote with Time in Force set to GFA. Enter a quantity value in order to have a remaining quantity at the end of uncrossing. Please provide QuoteMsgID/ Client Order ID in the Certification Report. The quote is parked until the next auction call period starts at which point it is injected into the order book. Any remaining volume is deleted after uncrossing and it will not be executed during Continuous Trading. If non auction in a trading day then is deleted after end of trading. FIX: Receive Quote Status Report If the quote is partially filled: Receive Execution Report (please provide ClOrdID) for the quantity traded . The remaining quantity is deleted. Native:Receive Execution report The remaining quantity is deleted. 5.6.11 Executable Single Side Quotes submission Time in Force OPG Type: FIX/Native Gateways ID #: MIT-047 Description: Validate Executable Single Side Quotes submission during Opening Auction Call Comments: Prerequisites This test needs to be executed during Opening Auction Call # Test Steps Expected Results 62 1. Enter an Executable (Opening Auction) SS quote with Time in Force set to OPG Enter a quantity value in order to have a remaining quantity at the end of uncrossing. Please provide QuoteMsgID/ Client Order ID in the Certification Report. The quote is parked until the next auction call period starts at which point it is injected into the order book. Any remaining volume is deleted after uncrossing and it will not be executed during Continuous Trading. If non auction in a trading day then is deleted after end of trading. FIX: Receive Quote Status Report If the quote is partially filled: Receive Execution Report (please provide ClOrdID) for the quantity traded . The remaining quantity is deleted. Native: Receive Execution report The remaining quantity is deleted. 5.6.12 New Firm Quote (FIX Only) Type: FIX Gateway ID #: MIT-048 Description: Validate Firm quote submission. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. 63 # 1. Test Steps Enter a Firm quote. Expected Results The quote is successfully submitted. Please provide QuoteMsgID in the certification report. Receive Quote Status Report 5.6.13 Modify Firm Quote (FIX Only) Type: FIX Gateway ID #: MIT-049 Description: Modify Firm quote. Comments: Prerequisites This test needs to be executed during Continuous Trading session. 64 Already logged on from previous Test Case # Test Steps 1. Modify Firm Quote entered in MIT-048 Expected Results Receive Quote Status Report Please note: As you can only have one quote for any given instrument, a firm quote is modified by sending a new quote which replaces the existing quote.) Please provide new QuoteMsgID in the Certification Report. 5.6.14 Cancel Firm Quote (FIX Only) Type: FIX Gateway ID #: MIT-050 Description: Cancel Firm quote. Comments: Prerequisites: This test needs to be executed during Continuous Trading session. 65 Already logged on from previous Test Case # Test Steps 1. Cancel the quote entered in MIT-048 Expected Results The quote is successfully cancelled. Receive Quote Status Report 5.7 Supervisor User Tests 5.7.1 Type: FIX Establish a connection and Logon ID #: MIT-051 Description: Establish a connection and Logon. 66 Comments: Prerequisites Supervisor profile # 1. Test Steps Expected Results Successful Logon. Establish a connection and Logon. Please provide CompID. 5.7.2 Type: FIX Mass Cancellation ID #: MIT-052 Description: Validate Mass Cancellation orders for member firm Comments: Mass Cancellation does not cancel orders in Trading Stop Session status. Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. # Test Steps Expected Results 1. Enter Mass Cancel request for member The Mass Cancel is successfully 67 firm. executed. Orders in Trading Stop Session are not cancelled. Receive Order Mass Cancel Report (Assuming there is at least one order in the order book. If there are no orders in the order book, please request to another user to create it.) 5.7.3 Orders in Trading Stop Session are not cancelled. Orders Modification Type: FIX ID #: MIT-053 Description: Validate Orders Modification of an order entered by another user. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 1. Amend an order entered another user. The order is successfully modified. 68 (Assuming there is at least one order in the order book. If there are no orders in the order book, please request to another user to create it.) Receive Execution Report No Execution Report are sent to user that are entered the order. Please provide Order ID(s) and Client Order ID in the Certification Report. 5.7.4 Type: FIX Orders Deletion ID #: MIT-054 Description: Validate Orders Deletion during Continuous Trading. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case # Test Steps Expected Results 1. Cancel a entered another user The order is successfully cancelled. (Assuming there is at least one order in the order book. If there are no orders in 69 Receive Execution Report the order book, please request to another user to create it.) No Execution Report are sent to user that are entered the order. Please provide Order ID(s) and Client Order ID in the Certification Report. 5.8 Native Recovery 5.8.1 Requesting Missed Messages Type: Native Recovery Gateway ID #: MIT-055 Description: This test case validates that native recovery works by sending a Missed Message Request for all AppIDs (LoadIDs) Comments: The same CompID and password must be used for both Native Trading and Native Recovery services. 70 Prerequisites: Already logged on to the Native Trading Gateway from previous trading test case. Cancel-on-Disconnect needs to be enabled on the CompID used for testing. (Or send a request to LSEG to cancel your open orders on your behalf while the CompID is disconnected from the Exchange.) # 1. Test Steps Enter 3 passive orders that rest on the orderbook, one on each LoadID. Expected Results 3 orders are now resting on the orderbook, one on each LoadID (also known as AppID and PartitionID). (the LoadID for each instrument can be obtained from the Instrument.csv reference data file.) 2. If cancel-on-disconnect is enabled: drop the connection Otherwise: Logout the CompID. Contact LSEG and request them to cancel the open orders on your behalf While the CompID is disconnected, the open orders are cancelled 3. Wait 30 seconds, and then establish a connection to the Native Gateway realtime channel Successful logon to the Native Gateway real-time channel. 4. 5. (This needs to happen before connecting to the recovery channel) Establish a connection and Logon to the Native Recovery Channel Send a Missed Message Request for LoadID 1 (also known as AppID 1) specifying the LastMsgSeqNum that is known for that LoadID. Successful logon to the Native Gateway recovery channel Missed Message Request Is Sent Missed Message Request Ack received with ResponseType=0 (Successful) Execution Report(s) received for each cancelled order Missed Message Report received with ResponseType=0 (Download Complete) 6. Repeat Step 5 for all other LoadIDs Step 5 is repeated for LoadID 2 and LoadID 3. 7. Logout from the Native Recovery service within 3 heartbeat intervals Logout successful and Recovery session terminated (The server with disconnect customer connection if there is no activity for 3 heartbeat intervals) Connection to the Realtime Channel should remain active and heartbeating. 71 5.9 Post Trade Gateway Validation 5.9.1 Establish Logon for Test Cycle Type: Post Trading Gateway ID #: MIT-056 Description: Establish a connection and Logon. Comments: Prerequisites None. # Test Steps 1. Establish a connection and Logon to the Post Trade Gateway. 72 Expected Results Successful Logon. 5.9.2 Own Trade Book Download Type: Post Trading Gateway ID #: MIT-057 Description: Validate Own Trades Book Download. Comments: Prerequisites Already logged on from previous Test Case. # Test Steps 1. Send a Trade Capture Report Request. Please provide TradeRequestID in the Certification Report. Expected Results Receive a Trade Capture Report Request Ack Receive Trade Capture Report(s) as requested 73 5.9.3 Trade Reporting Type: Post Trading Gateway ID #: MIT-058 Description: Enter an offbook Trade Capture Report. Comments: Prerequisites: Already logged on from previous Test Case # Test Steps 1. Enter a Trade (Trade Capture Report). Please provide TradeReportID in the Certification Report. Expected Results The Trade Report is successfully submitted. Receive a Trade Capture Report (TCR) Ack and TCR when processed. 74 5.9.4 Cancel Trade Report Type: Post Trading Gateway ID #: MIT-059 Description: Cancel an Offbook Trade. Comments: Prerequisites: Already logged on from previous Test Case # Test Steps 1. Cancel the Trade entered in previous test Send Trade Capture Report Please provide TradeID in the Certification Report. 75 Expected Results The Trade Report is cancelled. Receive a Trade Capture Report Ack 5.9.5 Pre-Release Trade Report Type: Post Trading Gateway ID #: MIT-060 Description: Pre-release a Trade Report Comments: Prerequisites Already logged on from previous Test Case # Test Steps 1. Enter a Trade Capture Report with delayed publication requested, and which meets the size requirements for being delayed. 2. Please provide TradeReportID in the Certification Report. Pre-release the trade report entered in step 1. Trade Capture Report Expected Results The Trade Report is successfully submitted. Receive a Trade Capture Report Ack The Trade Report is Pre-released successfully. 76 Please provide TradeID in the Certification Report Receive a Trade Capture Report Ack and TCR. 5.10 Drop Copy Gateway Validation 5.10.1 Establish Logon for Test Cycle Type: Drop Copy Gateway ID #: MIT-061 Description: Establish a connection and Logon. Comments: Prerequisites None. # Test Steps 1. Establish a connection and Logon to the Drop Copy Gateway. 77 Expected Results Successful Logon. 5.10.2 Own Order Book Download Type: Drop Copy Gateway ID #: MIT-062 Description: Validate Own Order Book Download Comments: Prerequisites: Already logged on from previous Test Case. # Test Steps 1. Send a Mass Order Status Request. Expected Results Receive Execution Report for each active order for the specified Trader Group. Please provide MassStatus ReqID and the Trader Group in the Certification Report 78 5.11 On Behalf of Actions Native & FIX Trading Gateways 5.11.1 Cancel Client’s Order Type: On behalf of – Fix/Native Gateways ID #: MIT-063 Description: Exchange cancels an order on behalf of a customer. Comments: Prerequisites: Contact LSEG for executing this test in co-ordination with customer. Already logged on from previous Trading test case. # Test Steps Expected Results Customer to Enter a passive order that 1. The order is successfully submitted and rests on the order book resides on the order book. 2. Please provide Order ID(s) and Client Order ID in the Certification Report. Request LSEG to cancel the order, stating the OrderID Receive Execution Report LSEG cancel the orders as requested. Receive Execution reports with exec type (4). The order is successfully cancelled. 79 3. Customer to confirm receipt of unsolicited messages 5.11.2 Cancel Client’s Quote Type: On behalf of – Fix/Native Gateways ID #: MIT-064 Description: Exchange cancels an order on behalf of a customer. Comments: Prerequisites: Contact LSEG for executing this test in co-ordination with customer. Already logged on from previous Trading test case. # Test Steps Expected Results Customer enters an executable quote 4. If quoting is supported, quote is that rests on the orderbook. submitted and resting on the order book. 5. Please provide QuoteMsgID/ Client Order ID in the Certification Report. If quoting not supported move onto step 3. Request LSEG to cancel the quote stating QuoteMsgIDs The order is successfully cancelled. LSEG cancel the quotes as requested. Receive Execution reports with exec type (4). 80 6. Customer to confirm receipt of unsolicited messages 5.11.3 Cancel Client’s Trade Type: On behalf of – Fix/Native Gateways ID #: MIT-65 Description: Exchange cancels a trade. Comments: Prerequisites: Contact LSEG for executing this test in co-ordination with customer. Already logged on from previous Trading test case. # Test Steps Expected Results 1. Customer to Enter an aggressive order The order is successfully submitted and that trades as fully filled. (OrderStatus = resides on the order book. 2) Receive Execution Report for fully filled Please provide TradeMatchID, Order ID and Client Order ID in the Certification Report. 2. Request LSEG to cancel the trade, The trade is cancelled. providing the TradeMatchID that will be used for this test. Customer receives Execution Report for trade cancellation. LSEG cancel the trade Customer receives 2nd Execution Report 81 for the Order which is also cancelled. 3. Customer to Enter an aggressive order that trades as partially filled. (OrderStatus = 1) The order is successfully submitted and resides on the order book. Receive Execution Report for partial fill 4. Please provide TradeMatchID, Order ID and Client Order ID in the Certification Report. Request LSEG to cancel the trade, providing the TradeMatchID that will be used for this test. The trade is cancelled. Customer receives Execution Report for trade cancellation. LSEG cancel the trade Customer receives 2nd Execution Report for the Order with the new quantity restated as follows: OrigQty – PartialTradedQty 82 5.11.4 Committed Cross Orders Type: FIX/Native Gateways ID #: MIT-066 Description: Validate Committed Cross Orders during Continuous Trading. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. Call the testing team to book time for executing this test in co-ordination with a SDA. # Test Steps Expected Results 1. Enter a Committed Cross order on Sell The order is successfully submitted. side and setup the Cross ID to <membercode>yyyymmddhhmmss (format required only for conformance test purpose) 2. Please provide Order ID(s) and Client Order ID in the Certification Report. SDA enter a Committed Cross order on Buy side having the Cross ID format as previously specified, confirmed by customer Please provide Order ID(s) and Client Order ID in the Certification Report. 83 The order is matched with other side order and executed. Receive Execution Report 5.11.5 Committed BTF Orders Type: FIX/Native Gateways ID #: MIT-067 Description: Validate Committed BTF Orders during Continuous Trading. Comments: Prerequisites This test needs to be executed during Continuous Trading session. Already logged on from previous Test Case. Call the service desk to book time for executing this test in co-ordination with a SDA. # Test Steps Expected Results 1. Enter a Committed BTF Cross order on The order is successfully submitted. Sell side and setup the Cross ID to <membercode>yyyymmddhhmmss (format required only for conformance test purpose) Please provide Order ID(s) and Client Order ID in the Certification Report. 2. SDA enter a Committed BTF Cross order on Buy side having the Cross ID format as previously specified, confirmed by customer Please provide Order ID(s) and Client Order ID in the Certification Report. 84 The order is matched with other side order and executed. Receive Execution Report 5.12 All Gateways 5.12.1 Error Handling Type: Error Handling ID #: MIT-068 Description: Verifying Logon after Suspension / Un-suspension of UserID. Comments: This test case needs to be repeated for every interface/service the customer subscribes to, i.e. a customer needs to repeat the steps below for each Gateway. This test needs to be completed (where applicable) for the services listed below: FIX Gateway Native Gateway Native Recovery Drop Copy Gateway Post Trade Gateway FIX/FAST Replay Service (any one channel) FIX/FAST Recovery Service (any one channel) ITCH Replay Service (any one channel) ITCH Recovery Service (any one channel) Group Ticker Plant Replay Service (any one channel) Group Ticker Plant Recovery Service (any one channel) When executing this test case for Market Data Services, please choose any one channel to connect to and provide details in the comments section of the Certification Report. Prerequisites: CompID / UserID is logged off # 1 Test Steps Request LSEG to suspend the CompID. Expected Results CompID is suspended. 2 Establish a connection and Logon to the applicable Gateway(s). Logon is rejected. Customer to verify the reject message. Customer application should automatically stop trying to logon and display the reason the logon was unsuccessful. 4 Verify application behaviour conforms to the connectivity policy as outlined in the Technical Specification Customer application attempts to connect a maximum of 3 times to the primary gateway with a minimum timeout value of 3 seconds between attempts before attempting to connect to the secondary gateway – and this should be retried a maximum of a further 3 times. 5 Request LSEG to un-suspend CompID CompID un-suspended 6 Establish a connection and Logon Gateway Successful Logon 85 5.13 FIX Session Level Testing 5.13.1 Heartbeat Exchange Type: FIX Session Testing ID #: MIT-069 Description: The client and the server are exchanging Heartbeat messages during the period of client’s inactivity. Comments: Prerequisites: Customer application can suspend sending all messages except heartbeats. (Heartbeats are only sent during periods of inactivity). # 1. 2. 3. 4 Test Steps Document the time of test execution start in the Certification report. Establish a connection and Logon to the Gateway. Stay inactive, i.e. make sure that there are no client initiated messages sent to the server. Make sure there are no unexpected disconnects within reasonable (a few minutes) timeframe. Document the time of test execution end in the Certification Report and document whether or not disconnects happen during test execution. 86 Expected Results Successful Logon. There are no client initiated messages sent to the Gateway. Gateway is sending Heartbeat messages to the client. Client is sending Heartbeat messages to the Gateway. 5.13.2 Sequence Reset Type: FIX Session Testing ID #: MIT-070 Description: FIX message Sequence Reset. Comments: Prerequisites: None # Test Steps 1. Document the time of test execution start in the Certification report. 2. Establish a connection and Logon to the Gateway. 3. Make sure that the client and Server are exchanging Heartbeat messages. 4. Expected Results Successful Logon. Gateway is sending Heartbeat messages to the client. Send a Sequence Reset message MsgType=4. Client is responding to Heartbeat messages sent by the server. Make sure that the value of the NewSeqNo tag is greater than the sequence number of the latest incoming Heartbeat message. Gateway resets messages sequence number to the value specified in NewSeqNo tag sent by the client. Document the time of test execution end in the Certification Report. 87 5.13.3 Sequence Reset at Logon Type: FIX Session Testing ID #: MIT-071 Description: FIX messages Reset initiated by the client at Logon. Comments: This test is mandatory Prerequisites: None # Test Steps 1. Document the time of test execution start in the Certification Report. 2. Establish a connection and Logon to the Gateway. 3. Make sure that the client and Server are exchanging Heartbeat messages and inbound and outbound MsgSeqNum is > 10. 4. 5. Disconnect from the server. Client to set the next expected inbound and outbound MsgSeqNumbers to 1. Send a Logon message with ResetSeqNumFlag tag set to “Y”. 6. Document the time of test execution end in the Certification Report. 88 Expected Results Successful Logon. Server is sending Heartbeat messages to the client. Client is sending Heartbeat messages to the server. FIX session is terminated. Server is responding with a Logon message with the ResetSeqNumFlag tag set to “Y”. Messages sequence is reset to “1”. Server and Client sending heartbeat messages 5.13.4 Resend Request Type: FIX Session Testing ID #: MIT-072 Description: Client Resend Request. Comments: Prerequisites: Customer application needs to support manually setting the next expected inbound MsgSeqNum (tag34). # 1. 2. 3. 4. 5. 6. 7. Test Steps Document the time of test execution start in the Certification Report. Establish a connection and Logon to the Gateway. Submit an order that results in a fully filled trade Note down the Message Sequence number received for this execution report. Submit a Logout request Customer to manually set their next expected inbound MsgSeqNum to the value obtained in step 3 Reconnect and log on. Customer application should detect a sequence number gap and send a Resend Request (MsgType=2) with tags BeginSeqNo and EndSeqNo set to the value obtained in step 3 Expected Results Successful Logon. The trade execution report received. Logout acknowledged by gateway Customer application’s next expected inbound MsgSeqNum reconfigured. Logon successful. Gateway will resend the Execution Report back to the client, with PossDup(43)=Y. Gateway will send a SeqReset with the next expected sequence number in tag 36. Session should remain active with heartbeats being exchanged. 8. Document the time of test execution end in the Certification Report. 89