SlideShare a Scribd company logo
1 of 13
Trading Systems:
Testing at the Confluence of FT & NFT


Alexey Zverev, Managing Director
Alyona Bulda, QA Project Lead
Ivan Bobrov, HFT Analyst
Introduction


 1. Introduction
 2. Our topic - how to find / reproduce "toxic issues" which can happen under
    the load or in real live environment conditions
 3. We will talk about:
      a. A classical approach where FT and NFT are separate streams
      b. What is missed here
      c. Some approaches we use or may apply to fill this gap between FT and
         NFT (applying to trading systems)
 4. Our presenters
FT                                               NFT
               focus on:                                        focus on:

• Test scenarios are based on functional            • Testing is based on non-functional
requirements                                        requirements

• Test tools which allow to run simplistic tests    • Load scenarios are driven by the
such as to send an order -> to verify a response    technical characteristics in PROD.

• Prepare a functional library starting from        • The main target of the tests is to assess
simple scenarios and adding more complex ones       non-functional requirements: latency,
step by step                                        capacity and fault tolerance

• Test scenarios are automated
                                                    • A lot of efforts are invested in correct
• A test Library is enhanced as we proceed          latency measurements and determining
with its testing and production clients scenarios   conditions when the system breaks

• An automated library will be reused as a          • Further regressions are done to
regression test library which is executed           compare system performance indicators
against each release after go live and can be       with the previous releases
taken for consequent projects
What do we miss when we keep FT
 and NFT separated ?
- Any complex system must sustain a certain level of concurrency. Some issues
appear when several events happen simultaneously (Race conditions).
Example 1: Clients send a CxlReplace request and approx. at the same time
the ME sends a fill back.
These 2 events meet at
the Order Management
server, and the state of
the order can get corrupted.
What do we miss when we keep FT
 and NFT separated ?
- Production order books and various system object states are more complex
than in our FT scripts, and no amount of test cases can cover all possible
scenarios
Example 2: A User tries to
hit two different implied
orders coming from the
same parent order
which is being restated
in the middle of the process.
What do we miss when we keep FT
  and NFT separated ?
- Components may behave differently under the load
Example 3: The System must support various
throttling limitations and the requirements of
the system behaviour. The correctness
of functional system behavior can be
tested only under the load.


- Integer memory overflow
Example 4: Turnover (VWAP) fields in the statistics messages and incremental
OrderID overflow;


* the picture was taken from https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcS9nlDdLAmuvmyRqqZsanbyfwL601nJlOvtHGEfJBS4DKnmSTANUA
What do we miss when we keep FT
and NFT separated ?
- Dynamic Mass events which happen during DLC
Example 5: Market Open,
Market Close, Auctions,..
The state of the system
at exact instance
when the system goes
from one session to another
should be verified with the load
applied against the system.
Detailed Verification Of The System Behavior Under Random Load




   We need to make sure that we
  provide extensive coverage
                                                               - basic consistency check
   We need to make sure that the load test mimics             - market data must be internally consistent
  what happens in the production system                        - order book should be available and not be
   We need to verify that the system                          different
  works as expected




                                        + Recreation of exact steps of real production issues

                                        - It is difficult to record multiple network streams
Performing Functional Testing Against The System Under The Load




 to leave a part of the system intact by the load

                                                    to adjust functional tests to cope with the
                                                    activity of the load




                                                    to make scripts in case when we
                                                    perform
                                                    tests actively interacting with the load
                                                     * scenarios must be flexible
                                                     * sustain interaction with the script
Testing With The Baseline


      The example of the cycle of a Clearing System




                             A detailed, step by step analysis
The “Mini Robots” Solution
The “Mini Robots” Solution
Questions & Answers-tO




           Thank You-tO

More Related Content

What's hot

Introduction to Total Data Driven Test Automation
Introduction to Total Data Driven Test AutomationIntroduction to Total Data Driven Test Automation
Introduction to Total Data Driven Test Automation
VNITO Alliance
 
Faster Payments Service How To Ensure Compliance From AppLabs
Faster Payments Service How To Ensure Compliance From AppLabsFaster Payments Service How To Ensure Compliance From AppLabs
Faster Payments Service How To Ensure Compliance From AppLabs
VIJAYA BHASKARA VARMA YARAKARAJU
 

What's hot (20)

Automated visual-regression-testing (1)
Automated visual-regression-testing (1)Automated visual-regression-testing (1)
Automated visual-regression-testing (1)
 
Michael Monaghan - Evolution of New Feature Verification in 3G Networks
Michael Monaghan - Evolution of New Feature Verification in 3G NetworksMichael Monaghan - Evolution of New Feature Verification in 3G Networks
Michael Monaghan - Evolution of New Feature Verification in 3G Networks
 
Seminar on Software Testing
Seminar on Software TestingSeminar on Software Testing
Seminar on Software Testing
 
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
Frank Cohen - Are We Ready For Cloud Testing - EuroSTAR 2010
 
Functional & Performance Test Automation with CI
Functional & Performance Test Automation with CI Functional & Performance Test Automation with CI
Functional & Performance Test Automation with CI
 
Ginsbourg.com presentation of performance and load testing 2020
Ginsbourg.com presentation of performance and load testing 2020Ginsbourg.com presentation of performance and load testing 2020
Ginsbourg.com presentation of performance and load testing 2020
 
Testing strategies in microservices
Testing strategies in microservicesTesting strategies in microservices
Testing strategies in microservices
 
What is component testing | David Tzemach
What is component testing | David TzemachWhat is component testing | David Tzemach
What is component testing | David Tzemach
 
Test Automation - Everything You Need To Know
Test Automation - Everything You Need To KnowTest Automation - Everything You Need To Know
Test Automation - Everything You Need To Know
 
Performance Testing Using JMeter | Edureka
Performance Testing Using JMeter | EdurekaPerformance Testing Using JMeter | Edureka
Performance Testing Using JMeter | Edureka
 
Differences asked in Software Testing Interview.
Differences asked in Software Testing Interview. Differences asked in Software Testing Interview.
Differences asked in Software Testing Interview.
 
2016 NIWeek - TI’s Continuous Delivery Machine for Accelerated Application De...
2016 NIWeek - TI’s Continuous Delivery Machine for Accelerated Application De...2016 NIWeek - TI’s Continuous Delivery Machine for Accelerated Application De...
2016 NIWeek - TI’s Continuous Delivery Machine for Accelerated Application De...
 
Data validation
Data validationData validation
Data validation
 
Basics of Functional Verification - Arrow Devices
Basics of Functional Verification - Arrow DevicesBasics of Functional Verification - Arrow Devices
Basics of Functional Verification - Arrow Devices
 
Neotys PAC 2018 - Gayatree Nalwadad
Neotys PAC 2018 - Gayatree NalwadadNeotys PAC 2018 - Gayatree Nalwadad
Neotys PAC 2018 - Gayatree Nalwadad
 
Introduction to Total Data Driven Test Automation
Introduction to Total Data Driven Test AutomationIntroduction to Total Data Driven Test Automation
Introduction to Total Data Driven Test Automation
 
Automation Tool Overview
Automation Tool OverviewAutomation Tool Overview
Automation Tool Overview
 
Faster Payments Service How To Ensure Compliance From AppLabs
Faster Payments Service How To Ensure Compliance From AppLabsFaster Payments Service How To Ensure Compliance From AppLabs
Faster Payments Service How To Ensure Compliance From AppLabs
 
Installation testing
Installation testingInstallation testing
Installation testing
 
Ginsbourg.com - Performance and load test report template ltr 2.0
Ginsbourg.com - Performance and load test report template ltr 2.0Ginsbourg.com - Performance and load test report template ltr 2.0
Ginsbourg.com - Performance and load test report template ltr 2.0
 

Viewers also liked

Extent3 exactpro four_houses_test_tools_2012 (1)
Extent3 exactpro four_houses_test_tools_2012 (1)Extent3 exactpro four_houses_test_tools_2012 (1)
Extent3 exactpro four_houses_test_tools_2012 (1)
extentconf Tsoy
 
Extent3 exante broker_for_algorithmic_trading_2012
Extent3 exante broker_for_algorithmic_trading_2012Extent3 exante broker_for_algorithmic_trading_2012
Extent3 exante broker_for_algorithmic_trading_2012
extentconf Tsoy
 
Extent3 exactpro testing_of_hft_gui
Extent3 exactpro testing_of_hft_guiExtent3 exactpro testing_of_hft_gui
Extent3 exactpro testing_of_hft_gui
extentconf Tsoy
 
QA Meet up in Saratov 25.07.15: Инструменты для тестирования и Лондонская фон...
QA Meet up in Saratov 25.07.15: Инструменты для тестирования и Лондонская фон...QA Meet up in Saratov 25.07.15: Инструменты для тестирования и Лондонская фон...
QA Meet up in Saratov 25.07.15: Инструменты для тестирования и Лондонская фон...
Iosif Itkin
 
Extent3 prognoz practical_approach_lppl_model_2012
Extent3 prognoz practical_approach_lppl_model_2012Extent3 prognoz practical_approach_lppl_model_2012
Extent3 prognoz practical_approach_lppl_model_2012
extentconf Tsoy
 

Viewers also liked (20)

Extent 2013 Obninsk Managing Uncertain Data at Scale
Extent 2013 Obninsk Managing Uncertain Data at ScaleExtent 2013 Obninsk Managing Uncertain Data at Scale
Extent 2013 Obninsk Managing Uncertain Data at Scale
 
Extent 2013 Obninsk New Trading System: Architecture and Capabilities
Extent 2013 Obninsk New Trading System: Architecture and CapabilitiesExtent 2013 Obninsk New Trading System: Architecture and Capabilities
Extent 2013 Obninsk New Trading System: Architecture and Capabilities
 
Extent3 exactpro four_houses_test_tools_2012 (1)
Extent3 exactpro four_houses_test_tools_2012 (1)Extent3 exactpro four_houses_test_tools_2012 (1)
Extent3 exactpro four_houses_test_tools_2012 (1)
 
Extent3 exante broker_for_algorithmic_trading_2012
Extent3 exante broker_for_algorithmic_trading_2012Extent3 exante broker_for_algorithmic_trading_2012
Extent3 exante broker_for_algorithmic_trading_2012
 
Extent3 exactpro testing_of_hft_gui
Extent3 exactpro testing_of_hft_guiExtent3 exactpro testing_of_hft_gui
Extent3 exactpro testing_of_hft_gui
 
Extent 2013 Obninsk High Performance Messaging
Extent 2013 Obninsk High Performance MessagingExtent 2013 Obninsk High Performance Messaging
Extent 2013 Obninsk High Performance Messaging
 
Liquidity Fragmentation & SOR
Liquidity Fragmentation & SORLiquidity Fragmentation & SOR
Liquidity Fragmentation & SOR
 
Extent 2013 Obninsk Test Tools for Trading Systems: Evolution Theory
Extent 2013 Obninsk Test Tools for Trading Systems: Evolution TheoryExtent 2013 Obninsk Test Tools for Trading Systems: Evolution Theory
Extent 2013 Obninsk Test Tools for Trading Systems: Evolution Theory
 
QA Meet up in Saratov 25.07.15: Инструменты для тестирования и Лондонская фон...
QA Meet up in Saratov 25.07.15: Инструменты для тестирования и Лондонская фон...QA Meet up in Saratov 25.07.15: Инструменты для тестирования и Лондонская фон...
QA Meet up in Saratov 25.07.15: Инструменты для тестирования и Лондонская фон...
 
Extent 2013 Obninsk LSE - The Focus Beyond Low Latency
Extent 2013 Obninsk  LSE - The Focus Beyond Low LatencyExtent 2013 Obninsk  LSE - The Focus Beyond Low Latency
Extent 2013 Obninsk LSE - The Focus Beyond Low Latency
 
EXTENT-2016: Industry Practices of Advanced Program Analysis
EXTENT-2016: Industry Practices of Advanced Program AnalysisEXTENT-2016: Industry Practices of Advanced Program Analysis
EXTENT-2016: Industry Practices of Advanced Program Analysis
 
EXTENT-2015: Blockchain New Frontiers
EXTENT-2015: Blockchain New FrontiersEXTENT-2015: Blockchain New Frontiers
EXTENT-2015: Blockchain New Frontiers
 
Extent3 prognoz practical_approach_lppl_model_2012
Extent3 prognoz practical_approach_lppl_model_2012Extent3 prognoz practical_approach_lppl_model_2012
Extent3 prognoz practical_approach_lppl_model_2012
 
EXTENT-2015: Millennium Surveillance™ – Achieving Excellence
EXTENT-2015: Millennium Surveillance™ –  Achieving ExcellenceEXTENT-2015: Millennium Surveillance™ –  Achieving Excellence
EXTENT-2015: Millennium Surveillance™ – Achieving Excellence
 
EXTENT-2015: LSEG Technology Overview
EXTENT-2015: LSEG Technology Overview EXTENT-2015: LSEG Technology Overview
EXTENT-2015: LSEG Technology Overview
 
EXTENT-2016: Testing the Architecture
EXTENT-2016: Testing the ArchitectureEXTENT-2016: Testing the Architecture
EXTENT-2016: Testing the Architecture
 
EXTENT-2015: Hyper-Fast Trading
EXTENT-2015: Hyper-Fast TradingEXTENT-2015: Hyper-Fast Trading
EXTENT-2015: Hyper-Fast Trading
 
EXTENT-2015: Big Button 2.0
EXTENT-2015: Big Button 2.0EXTENT-2015: Big Button 2.0
EXTENT-2015: Big Button 2.0
 
EXTENT-2015: A Test Harness for Algo Trading Systems
EXTENT-2015: A Test Harness for Algo Trading Systems EXTENT-2015: A Test Harness for Algo Trading Systems
EXTENT-2015: A Test Harness for Algo Trading Systems
 
EXTENT-2015 Tradecope Presentation
EXTENT-2015 Tradecope PresentationEXTENT-2015 Tradecope Presentation
EXTENT-2015 Tradecope Presentation
 

Similar to Extent 2013 Obninsk Trading Systems: Testing at the Confluence of FT & NFT

Components in real time systems
Components in real time systemsComponents in real time systems
Components in real time systems
Saransh Garg
 
Performance and load testing
Performance and load testingPerformance and load testing
Performance and load testing
sonukalpana
 
Processscheduling 161001112521
Processscheduling 161001112521Processscheduling 161001112521
Processscheduling 161001112521
marangburu42
 
Divide and stress: the journey to component load test
Divide and stress: the journey to component load testDivide and stress: the journey to component load test
Divide and stress: the journey to component load test
Juan Pedro Escalona Rueda
 

Similar to Extent 2013 Obninsk Trading Systems: Testing at the Confluence of FT & NFT (20)

Testing real-time Linux. What to test and how
Testing real-time Linux. What to test and how Testing real-time Linux. What to test and how
Testing real-time Linux. What to test and how
 
Quantstamp Report - LINKSWAP
Quantstamp Report - LINKSWAPQuantstamp Report - LINKSWAP
Quantstamp Report - LINKSWAP
 
Components in real time systems
Components in real time systemsComponents in real time systems
Components in real time systems
 
DBTest 2013 - In Data Veritas - Data Driven Testing for Distributed Systems
DBTest 2013 - In Data Veritas - Data Driven Testing for Distributed SystemsDBTest 2013 - In Data Veritas - Data Driven Testing for Distributed Systems
DBTest 2013 - In Data Veritas - Data Driven Testing for Distributed Systems
 
Performance and load testing
Performance and load testingPerformance and load testing
Performance and load testing
 
Traffic Simulator
Traffic SimulatorTraffic Simulator
Traffic Simulator
 
Tools. Techniques. Trouble?
Tools. Techniques. Trouble?Tools. Techniques. Trouble?
Tools. Techniques. Trouble?
 
MongoDB World 2018: Tutorial - MongoDB Meets Chaos Monkey
MongoDB World 2018: Tutorial - MongoDB Meets Chaos MonkeyMongoDB World 2018: Tutorial - MongoDB Meets Chaos Monkey
MongoDB World 2018: Tutorial - MongoDB Meets Chaos Monkey
 
Basics of QTP Framework
Basics of QTP FrameworkBasics of QTP Framework
Basics of QTP Framework
 
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
 
Performance tuning Grails Applications GR8Conf US 2014
Performance tuning Grails Applications GR8Conf US 2014Performance tuning Grails Applications GR8Conf US 2014
Performance tuning Grails Applications GR8Conf US 2014
 
Ginsbourg.com - Performance and Load Test Report Template LTR 1.5
Ginsbourg.com - Performance and Load Test Report Template LTR 1.5Ginsbourg.com - Performance and Load Test Report Template LTR 1.5
Ginsbourg.com - Performance and Load Test Report Template LTR 1.5
 
Build Java Web Application Using Apache Struts
Build Java Web Application Using Apache Struts Build Java Web Application Using Apache Struts
Build Java Web Application Using Apache Struts
 
Architecting for the cloud storage build test
Architecting for the cloud storage build testArchitecting for the cloud storage build test
Architecting for the cloud storage build test
 
09 workflow
09 workflow09 workflow
09 workflow
 
Performance testing material
Performance testing materialPerformance testing material
Performance testing material
 
Qtp basic
Qtp basicQtp basic
Qtp basic
 
Processscheduling 161001112521
Processscheduling 161001112521Processscheduling 161001112521
Processscheduling 161001112521
 
Processscheduling 161001112521
Processscheduling 161001112521Processscheduling 161001112521
Processscheduling 161001112521
 
Divide and stress: the journey to component load test
Divide and stress: the journey to component load testDivide and stress: the journey to component load test
Divide and stress: the journey to component load test
 

More from extentconf Tsoy

Extent april2012-kostroma social-networks-socialmedia-trading
Extent april2012-kostroma social-networks-socialmedia-tradingExtent april2012-kostroma social-networks-socialmedia-trading
Extent april2012-kostroma social-networks-socialmedia-trading
extentconf Tsoy
 
Extent3 turquoise equity_trading_2012
Extent3 turquoise equity_trading_2012Extent3 turquoise equity_trading_2012
Extent3 turquoise equity_trading_2012
extentconf Tsoy
 
Extent3 witology prediction_markets_2012
Extent3 witology prediction_markets_2012Extent3 witology prediction_markets_2012
Extent3 witology prediction_markets_2012
extentconf Tsoy
 
Verification of Financial Models
Verification of Financial ModelsVerification of Financial Models
Verification of Financial Models
extentconf Tsoy
 
The Simple Matter of Project Management
The Simple Matter of Project ManagementThe Simple Matter of Project Management
The Simple Matter of Project Management
extentconf Tsoy
 
Exchange Simulators for SOR / Algo Testing: Advantages vs. Shortcomings
Exchange Simulators for SOR / Algo Testing: Advantages vs. ShortcomingsExchange Simulators for SOR / Algo Testing: Advantages vs. Shortcomings
Exchange Simulators for SOR / Algo Testing: Advantages vs. Shortcomings
extentconf Tsoy
 
Behavior Driven Development Pros and Cons
Behavior Driven Development Pros and ConsBehavior Driven Development Pros and Cons
Behavior Driven Development Pros and Cons
extentconf Tsoy
 
Virtualization Technology for Test Automation
Virtualization Technology for Test AutomationVirtualization Technology for Test Automation
Virtualization Technology for Test Automation
extentconf Tsoy
 
Cost of Quality How to Save Money
Cost of Quality How to Save MoneyCost of Quality How to Save Money
Cost of Quality How to Save Money
extentconf Tsoy
 
Exactpro Test Tools EXTENT Feb 2011
Exactpro Test Tools EXTENT Feb 2011Exactpro Test Tools EXTENT Feb 2011
Exactpro Test Tools EXTENT Feb 2011
extentconf Tsoy
 
Technical Testing Introduction
Technical Testing IntroductionTechnical Testing Introduction
Technical Testing Introduction
extentconf Tsoy
 
Financial Instruments EXTENT February 2011
Financial Instruments EXTENT February 2011Financial Instruments EXTENT February 2011
Financial Instruments EXTENT February 2011
extentconf Tsoy
 
Liquidity Fragmentation & SOR
Liquidity Fragmentation & SORLiquidity Fragmentation & SOR
Liquidity Fragmentation & SOR
extentconf Tsoy
 

More from extentconf Tsoy (15)

Extent 2013 Obninsk How a Great QA Team Can Make a Disproportionate Contribut...
Extent 2013 Obninsk How a Great QA Team Can Make a Disproportionate Contribut...Extent 2013 Obninsk How a Great QA Team Can Make a Disproportionate Contribut...
Extent 2013 Obninsk How a Great QA Team Can Make a Disproportionate Contribut...
 
Extent 2013 Obninsk Cross-Asset Portfolio Margin Risk Calculation for HFT
Extent 2013 Obninsk Cross-Asset Portfolio Margin Risk Calculation for HFTExtent 2013 Obninsk Cross-Asset Portfolio Margin Risk Calculation for HFT
Extent 2013 Obninsk Cross-Asset Portfolio Margin Risk Calculation for HFT
 
Extent april2012-kostroma social-networks-socialmedia-trading
Extent april2012-kostroma social-networks-socialmedia-tradingExtent april2012-kostroma social-networks-socialmedia-trading
Extent april2012-kostroma social-networks-socialmedia-trading
 
Extent3 turquoise equity_trading_2012
Extent3 turquoise equity_trading_2012Extent3 turquoise equity_trading_2012
Extent3 turquoise equity_trading_2012
 
Extent3 witology prediction_markets_2012
Extent3 witology prediction_markets_2012Extent3 witology prediction_markets_2012
Extent3 witology prediction_markets_2012
 
Verification of Financial Models
Verification of Financial ModelsVerification of Financial Models
Verification of Financial Models
 
The Simple Matter of Project Management
The Simple Matter of Project ManagementThe Simple Matter of Project Management
The Simple Matter of Project Management
 
Exchange Simulators for SOR / Algo Testing: Advantages vs. Shortcomings
Exchange Simulators for SOR / Algo Testing: Advantages vs. ShortcomingsExchange Simulators for SOR / Algo Testing: Advantages vs. Shortcomings
Exchange Simulators for SOR / Algo Testing: Advantages vs. Shortcomings
 
Behavior Driven Development Pros and Cons
Behavior Driven Development Pros and ConsBehavior Driven Development Pros and Cons
Behavior Driven Development Pros and Cons
 
Virtualization Technology for Test Automation
Virtualization Technology for Test AutomationVirtualization Technology for Test Automation
Virtualization Technology for Test Automation
 
Cost of Quality How to Save Money
Cost of Quality How to Save MoneyCost of Quality How to Save Money
Cost of Quality How to Save Money
 
Exactpro Test Tools EXTENT Feb 2011
Exactpro Test Tools EXTENT Feb 2011Exactpro Test Tools EXTENT Feb 2011
Exactpro Test Tools EXTENT Feb 2011
 
Technical Testing Introduction
Technical Testing IntroductionTechnical Testing Introduction
Technical Testing Introduction
 
Financial Instruments EXTENT February 2011
Financial Instruments EXTENT February 2011Financial Instruments EXTENT February 2011
Financial Instruments EXTENT February 2011
 
Liquidity Fragmentation & SOR
Liquidity Fragmentation & SORLiquidity Fragmentation & SOR
Liquidity Fragmentation & SOR
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 

Extent 2013 Obninsk Trading Systems: Testing at the Confluence of FT & NFT

  • 1. Trading Systems: Testing at the Confluence of FT & NFT Alexey Zverev, Managing Director Alyona Bulda, QA Project Lead Ivan Bobrov, HFT Analyst
  • 2. Introduction 1. Introduction 2. Our topic - how to find / reproduce "toxic issues" which can happen under the load or in real live environment conditions 3. We will talk about: a. A classical approach where FT and NFT are separate streams b. What is missed here c. Some approaches we use or may apply to fill this gap between FT and NFT (applying to trading systems) 4. Our presenters
  • 3. FT NFT focus on: focus on: • Test scenarios are based on functional • Testing is based on non-functional requirements requirements • Test tools which allow to run simplistic tests • Load scenarios are driven by the such as to send an order -> to verify a response technical characteristics in PROD. • Prepare a functional library starting from • The main target of the tests is to assess simple scenarios and adding more complex ones non-functional requirements: latency, step by step capacity and fault tolerance • Test scenarios are automated • A lot of efforts are invested in correct • A test Library is enhanced as we proceed latency measurements and determining with its testing and production clients scenarios conditions when the system breaks • An automated library will be reused as a • Further regressions are done to regression test library which is executed compare system performance indicators against each release after go live and can be with the previous releases taken for consequent projects
  • 4. What do we miss when we keep FT and NFT separated ? - Any complex system must sustain a certain level of concurrency. Some issues appear when several events happen simultaneously (Race conditions). Example 1: Clients send a CxlReplace request and approx. at the same time the ME sends a fill back. These 2 events meet at the Order Management server, and the state of the order can get corrupted.
  • 5. What do we miss when we keep FT and NFT separated ? - Production order books and various system object states are more complex than in our FT scripts, and no amount of test cases can cover all possible scenarios Example 2: A User tries to hit two different implied orders coming from the same parent order which is being restated in the middle of the process.
  • 6. What do we miss when we keep FT and NFT separated ? - Components may behave differently under the load Example 3: The System must support various throttling limitations and the requirements of the system behaviour. The correctness of functional system behavior can be tested only under the load. - Integer memory overflow Example 4: Turnover (VWAP) fields in the statistics messages and incremental OrderID overflow; * the picture was taken from https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcS9nlDdLAmuvmyRqqZsanbyfwL601nJlOvtHGEfJBS4DKnmSTANUA
  • 7. What do we miss when we keep FT and NFT separated ? - Dynamic Mass events which happen during DLC Example 5: Market Open, Market Close, Auctions,.. The state of the system at exact instance when the system goes from one session to another should be verified with the load applied against the system.
  • 8. Detailed Verification Of The System Behavior Under Random Load  We need to make sure that we provide extensive coverage - basic consistency check  We need to make sure that the load test mimics - market data must be internally consistent what happens in the production system - order book should be available and not be  We need to verify that the system different works as expected + Recreation of exact steps of real production issues - It is difficult to record multiple network streams
  • 9. Performing Functional Testing Against The System Under The Load to leave a part of the system intact by the load to adjust functional tests to cope with the activity of the load to make scripts in case when we perform tests actively interacting with the load * scenarios must be flexible * sustain interaction with the script
  • 10. Testing With The Baseline The example of the cycle of a Clearing System A detailed, step by step analysis
  • 13. Questions & Answers-tO Thank You-tO

Editor's Notes

  1. *
  2. *
  3. *
  4. *
  5. *