Building Low Latency Applications with C++: Develop a complete low latency trading ecosystem from scratch using modern C++ - Softcover

Sourav Ghosh

 
9781837639359: Building Low Latency Applications with C++: Develop a complete low latency trading ecosystem from scratch using modern C++

Synopsis

Understand the impact of reducing latencies on latency sensitive applications.

Key Features

  • Understand the impact application performance latencies have on different business use cases.
  • Develop deep understanding of C++ features for low latency applications with examples and performance data.
  • Learn to build all the components of a C++ electronic trading system from scratch.

Book Description

C++ is a general-purpose programming language designed with the goals of efficiency, performance, and flexibility in mind. Nevertheless, real-time low latency applications have very specific requirements in terms of performance latencies.

In this book, you will learn about the performance requirements for low latency applications, the C++ features that are critical to achieve the required performance latencies, and learn to build a low latency system in C++ from scratch to solidify your understanding of the C++ principles and techniques involved.

You will understand the similarities between such applications, understand the business impact that performance latencies have, and why so much effort is invested to minimize latencies. We will build an entire electronic trading system - matching engine, market data handlers, order gateways and trading algorithms in C++ to teach you the step-by-step low latency development journey from scratch. Additionally, measuring performance and optimizing the critical path is a necessary and continuous process, so we will measure and optimize the performance of our trading system that we build.

By the end of this book, you will have a comprehensive understanding of how to design and build low latency applications in C++ from scratch and minimize performance latencies.

What you will learn

  • Learn the nature of low latency applications in different businesses.
  • Understand design and implementation of low latency applications.
  • Explore C++ design paradigms and features for low latency development.
  • Explore C++ features that are best avoided in low latency development.
  • Build a complete C++ electronic trading ecosystem from scratch.
  • Learn to measure performance and improve the trading system latencies.

Who This Book Is For

This book is for C++ developers who wish to learn about low latency applications and how to design and develop them effectively. C++ Software engineers looking to apply their knowledge to low latency trading systems like HFT can also learn about which specific C++ features matter and which ones to avoid. Quantitative researchers in the trading industry who wish to learn more about the low latency implementation details can also benefit from this book. The basic requirements for this book are - familiarity with Linux and familiarity with the C++ programming language.

Table of Contents

  1. Introducing low latency application development in C++
  2. Designing some common low latency applications in C++
  3. Exploring C++ concepts from a low latency application's perspective
  4. Building the C++ building blocks for low latency applications
  5. Designing our trading ecosystem
  6. Building the C++ matching engine
  7. Communicating with market participants
  8. Processing market data and sending orders to the exchange in C++
  9. Building a C++ market making and liquidity taking algorithm
  10. Adding instrumentation and measuring performance
  11. Optimizing performance of our C++ system
  12. Conclusion

"synopsis" may belong to another edition of this title.

About the Author

Sourav Ghosh has worked in several proprietary, high-frequency algorithmic trading firms over the last decade. He has built and deployed extremely low latency, high-throughput automated trading systems for trading exchanges around the world, across multiple asset classes. He specializes in statistical arbitrage market-making and pairs trading strategies with the most liquid global futures contracts. He is currently the vice president at an investment bank based in São Paulo, Brazil. He holds a master’s in computer science from the University of Southern California. His areas of interest include computer architecture, FinTech, probability theory and stochastic processes, statistical learning and inference methods, and natural language processing.

"About this title" may belong to another edition of this title.