map fix conformance process - asx · © 2019 asx limited abn 98 008 624 691 | version 1.0 | april...
TRANSCRIPT
MAP FIX Conformance Process
Application Conformance Process
April 2019
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP FIX Conformance Process 2/13
Contents 1 Introduction ........................................................................................................................................................ 3
1.1 Purpose ............................................................................................................................................................. 3 1.2 Readership ......................................................................................................................................................... 3 1.3 Document History .............................................................................................................................................. 3 1.4 Enquiries ............................................................................................................................................................ 3
2 Application Conformance Process ....................................................................................................................... 4
2.1 When to Repeat Conformance Testing .............................................................................................................. 4 2.2 Non-Compliant Software ................................................................................................................................... 4 2.3 Application Conformance Testing ...................................................................................................................... 4 2.4 Prior to Conformance ........................................................................................................................................ 4 2.5 Expectations during Conformance ..................................................................................................................... 5
3 Self testing .......................................................................................................................................................... 6
3.1 Connection ........................................................................................................................................................ 6 3.1.1 Log on ............................................................................................................................................................ 6 3.1.2 Logout ........................................................................................................................................................... 7 3.1.3 Password Change .......................................................................................................................................... 7
3.2 Application Messaging ....................................................................................................................................... 8 3.2.1 Resend Request ............................................................................................................................................. 8 3.2.2 Test Request .................................................................................................................................................. 8 3.2.3 Message Reject Handling .............................................................................................................................. 9
3.3 Market Data..................................................................................................................................................... 10 3.3.1 Market Data Validation ............................................................................................................................... 10
4 Assisted Testing..................................................................................................................................................11
4.1 Password Expiry ............................................................................................................................................... 11 4.2 Account Disabled ............................................................................................................................................. 12
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP FIX Conformance Process 3/13
1 Introduction
The ASX conformance process is designed to help protect participants from any erroneous application behaviour that
may be disruptive to the market due to non-conformant software.
The following conformance test applies to any application that intends to connect to the ASX Market Announcements
Platform (MAP) FIX service. All customer applications must pass the conformance test prior to accessing the MAP
production system.
Customers must complete the mandatory test cases.
1.1 Purpose
The purpose of this document is to provide an overview of the ASX MAP FIX conformance test and set expectations
regarding conduct and expected results.
1.2 Readership
Participants that connect to the MAP FIX service are expected to read this document and understand the
requirements of this process.
1.3 Document History
Issue Date Description
1.0 April 2019 First release of document
1.4 Enquiries
Please contact [email protected] or your Technical Account Manager if you have any questions relating to this
document.
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP FIX Conformance Process 4/13
2 Application Conformance Process
ASX expects customers to become familiar with the ASX MAP development platform and develop their applications to
a state of readiness for conformance testing. ASX requires customers to have finalised their software, meaning that
said software is in a production-ready state before booking the test.
Self testing customers perform the majority of the conformance test unassisted and complete the process by advising
CTS about start and end time of the self-test. CTS will then check the available logs to verify the result and produce a
pass or fail report.
Assisted-testing customers will perform the conformance assisted by a member of the CTS team. Assisted testing will
take approximately 30 minutes. If testing is not completed within a test time slot, customers will need to book an
additional session.
2.1 When to Repeat Conformance Testing
While customers are encouraged to perform regular conformance testing, they must repeat conformance testing of
their software in these circumstances:
When market-facing software is modified
When ASX upgrades or changes its production environment and deems the change mandatory
During extended periods of absence when the software is not connected to ASX
Upon specific request from the ASX
2.2 Non-Compliant Software
Warning: ASX reserves the right to block access to the production system by non-compliant software.
ASX will require successful completion of a conformance test prior to re-connection.
2.3 Application Conformance Testing
To successfully complete conformance testing the customer’s software application needs to have established a FIX
protocol connection to the MAP Industry Wide Testing (IWT) environment.
2.4 Prior to Conformance
Prior to conformance testing, customers are requested to:
Read and understand the MAP FIX specification document
Discuss the intended functionality of their applications with their ASX Technical Account Manager (TAM) to ensure all steps were followed and the process is fully understood
Submit the conformance checklist with optional cases clearly marked
Send the conformance checklist to [email protected] prior to self testing
The CTS team is available to assist customers in completing their tests.
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP FIX Conformance Process 5/13
2.5 Expectations during Conformance
Customers are expected to:
Consume price sensitive session state changes from the IWT MAP FIX Gateway and provide results to CTS
Maintain a stable TCP connection and FIX session throughout the documented sequence of tests
Use a single FIX session to complete all FIX protocol tests
Perform all tests in the documented sequence
Perform only the documented tests using the FIX session you specify in the Conformance Checklist
Refrain from introducing any additional tests during both phases of the conformance test
Perform the conformance test cases within the start and end times supplied in the conformance checklist
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP MAP FIX Conformance Process 6/13
3 Self testing
The customer is responsible for completing this section of the conformance test without the direct supervision of ASX. All actions during this section of the conformance test will
be logged and reviewed by ASX after completion to ensure that customer applications have successfully completed the test cases.
3.1 Connection
The following set of tests relate to how an application manages connectivity to the MAP FIX server to ensure that the application meets ASX requirements.
3.1.1 Log on
Category Mandatory
Description The application must perform a standard Logon (35=A). The application must sustain connectivity and receive a successful connection acknowledgement. The application must pass this test to progress to the next phase of functionality testing.
Notes The application must pass this test to progress to the subsequent test cases.
Requirements Network connectivity to the test system is required prior to attempting this case. The heartbeat interval parameter must be specified in the FIX Logon message according to the MAP FIX Specification.
# Test Case Expected Results
1 Application to establish a connection and log on to the gateway. Participant receives an ‘ack’, Message Type = (A) confirming a successful logon
Application will then need to maintain a minimum of 5 heartbeats
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP MAP FIX Conformance Process 7/13
3.1.2 Logout
Category Mandatory
Description The purpose of this test is to ensure that the application logs out gracefully.
Notes
Requirements A graceful Logout (5) message must be sent and not simply a socket disconnection.
# Test Case Expected Results
1 Logout gracefully and disconnect from the concurrent session by sending a Logout (5) message.
Participant receives a Logout (5) message confirming a graceful logoff.
3.1.3 Password Change
Category Optional
Description The purpose of this test is to ensure that the application can perform a password change as part of a logon to the environment to demonstrate that the application can manage its own password in day-to-day operations.
Notes
Requirements New passwords must adhere to the ASX password policy, outlined in Logon (A), NewPassword = (925).
# Test Case Expected Results
1 Establish a connection and send new password to the exchange. Participant receives acknowledgement of a logon and a password change success.
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP MAP FIX Conformance Process 8/13
3.2 Application Messaging
3.2.1 Resend Request
Category Mandatory
Description The purpose of this test is to ensure that the customer application can successfully request missed FIX messages.
Notes
Requirements The correct FIX tags are used in the resend request process.
# Test Case Expected Results
1 The application will need to send a ResendRequest (2) message containing a BeginSeqNo and EndSeqNo value (7 and 13, respectively).
Confirmation of receipt of the request will result in the requested FIX messages being re-sent to the customer application.
3.2.2 Test Request
Category Mandatory
Description The purpose of this test is to ensure that the customer is able to verify the application connectivity to the MAP FIX gateway.
Notes
Requirements The correct FIX tags are used in the test request process.
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP MAP FIX Conformance Process 9/13
# Test Case Expected Results
1 The application sends a TestRequest (1) message containing a unique TestReqID (112).
Confirmation of receipt of the test request will result in a heartbeat message being sent by the ASX (49=ASX) to verify the connection.
3.2.3 Message Reject Handling
Category Mandatory
Description Customer applications must handle reject messages
A Reject (3) message will indicate the rejection reason in the SessionRejectReason (373) tag
Notes Reject reasons are provided on page 11 of the MAP FIX Specification.
Requirements The customer application is required to send a FIX message that will trigger one or more of the reject messages (as stated in the MAP FIX Specification).
# Test Case Expected Results
1 The application will need to send a FIX message (e.g Logon A) with an error.
A Reject message (3) will be received with a SessionRejectReason (373) with a value stated in MAP FIX Specification.
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP MAP FIX Conformance Process 10/13
3.3 Market Data
3.3.1 Market Data Validation
Category Mandatory
Description The customer application must consume session state changes sent by the MAP FIX Gateway. The customer application must process timing and cross release information.
Notes Case testing can be discussed in further detail by contacting CTS.
Requirements The customer application must process 35=f (SecurityStatus) messages.
# Test Case Expected Results
1 SecurityStatus messages will be sent by the MAP FIX gateway changing session states of various instruments throughout the day.
At the conclusion of the self test the customer provides a report detailing:
Instrument session state changes received
Session state timings received
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP MAP FIX Conformance Process 11/13
4 Assisted Testing
This phase of the conformance test process is allocated for one-to-one testing between participant or participant developer and an ASX test specialist. These test cases will be
conducted in a controlled manner with both parties on the phone confirming each test independently, on a step-by-step basis.
The participant is required to book the assisted test session with CTS after the self testing phase has been successfully completed.
4.1 Password Expiry
Category Optional
Description The participant will receive an error message upon login, relating to an account that requires a change in password. This simulates a user password expiry event. The FIX user will now be in an expired state. The application will re-connect and provide a new password in the FIX Logon message. The FIX server will accept the password change attempt and acknowledge the logon attempt with a FIX Logon (A) message.
Notes The purpose of this test is ensure an application can correctly manage the situation where a FIX user’s password has reached its expiry date.
Requirements The application must refrain from any further connection attempts if it is unable to provide a valid logon message after the password expires (step 2).
# Test Case Expected Results
1 The application will perform a standard Logout (5)
ASX will then set a new password which will be configured to expire immediately, and advise a new password
The participant will receive a Logout (5) confirmation
2 The application will then send a Logon (A) message with the new password in tag 554 (using the new password provided by ASX in Password (554).
The application will receive a Logout (5) from the exchange where the SessionStatus = “Password expired” (1409=8) and its connection will be terminated by the exchange.
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP MAP FIX Conformance Process 12/13
3 The application will then need to send a Logon (A) message, where it sends a valid NewPassword (925) value.
The application will maintain its connection to the exchange.
4.2 Account Disabled
Category Mandatory
Description The purpose of this test is to ensure that the application does not attempt multiple login retry attempts once the account is disabled.
Notes
Requirements The application must refrain from any further connection attempts after the account is disabled.
# Test Case Expected Results
1 The application will perform a Logoff (35=5)
CTS will disable the user account which will prevent any further successful connections
The application will perform a Logon (35=A)
The application will receive a Logout (35=5) message indicating “Account locked” (1409=6)
The application is observed not attempting multiple Logon (35=A) retry attempts once their user account has been disabled
© 2019 ASX Limited ABN 98 008 624 691 | Version 1.0 | April 2019 MAP MAP FIX Conformance Process 13/13
Disclaimer:
This document provides general information only and may be subject to change at any time without notice. ASX Limited (ABN 98 008 624 691) and its
related bodies corporate (“ASX”) makes no representation or warranty with respect to the accuracy, reliability or completeness of this information. To the
extent permitted by law, ASX and its employees, officers and contractors shall not be liable for any loss or damage arising in any way, including by way of
negligence, from or in connection with any information provided or omitted, or from anyone acting or refraining to act in reliance on this information. The
information in this document is not a substitute for any relevant operating rules, and in the event of any inconsistency between this document and the
operating rules, the operating rules prevail to the extent of the inconsistency.
ASX Trade Marks
The trademarks listed below are trademarks of ASX. Where a mark is indicated as registered it is registered in Australia and may also be registered in other
countries. Nothing contained in this document should be construed as being any licence or right to use of any trade mark contained within the document.
ASX®