Building Automated Trading Systems

Building Automated Trading Systems

With an Introduction to Visual C++.NET 2005

1st Edition - March 7, 2007

Write a review

  • Author: Benjamin Van Vliet
  • Hardcover ISBN: 9780750682510
  • eBook ISBN: 9780080476254

Purchase options

Purchase options
DRM-free (PDF)
Sales tax will be calculated at check-out

Institutional Subscription

Free Global Shipping
No minimum order


Over the next few years, the proprietary trading and hedge fund industries will migrate largely to automated trade selection and execution systems. Indeed, this is already happening. While several finance books provide C++ code for pricing derivatives and performing numerical calculations, none approaches the topic from a system design perspective. This book will be divided into two sections—programming techniques and automated trading system ( ATS ) technology—and teach financial system design and development from the absolute ground up using Microsoft Visual C++.NET 2005. MS Visual C++.NET 2005 has been chosen as the implementation language primarily because most trading firms and large banks have developed and continue to develop their proprietary algorithms in ISO C++ and Visual C++.NET provides the greatest flexibility for incorporating these legacy algorithms into working systems. Furthermore, the .NET Framework and development environment provide the best libraries and tools for rapid development of trading systems.The first section of the book explains Visual C++.NET 2005 in detail and focuses on the required programming knowledge for automated trading system development, including object oriented design, delegates and events, enumerations, random number generation, timing and timer objects, and data management with STL.NET and .NET collections. Furthermore, since most legacy code and modeling code in the financial markets is done in ISO C++, this book looks in depth at several advanced topics relating to managed/unmanaged/COM memory management and interoperability. Further, this book provides dozens of examples illustrating the use of database connectivity with ADO.NET and an extensive treatment of SQL and FIX and XML/FIXML. Advanced programming topics such as threading, sockets, as well as using C++.NET to connect to Excel are also discussed at length and supported by examples.The second section of the book explains technological concerns and design concepts for automated trading systems. Specifically, chapters are devoted to handling real-time data feeds, managing orders in the exchange order book, position selection, and risk management. A .dll is included in the book that will emulate connection to a widely used industry API ( Trading Technologies, Inc.’s XTAPI ) and provide ways to test position and order management algorithms. Design patterns are presented for market taking systems based upon technical analysis as well as for market making systems using intermarket spreads. As all of the chapters revolve around computer programming for financial engineering and trading system development, this book will educate traders, financial engineers, quantitative analysts, students of quantitative finance and even experienced programmers on technological issues that revolve around development of financial applications in a Microsoft environment and the construction and implementation of real-time trading systems and tools.

Key Features

* Teaches financial system design and development from the ground up using Microsoft Visual C++.NET 2005.
* Provides dozens of examples illustrating the programming approaches in the book
* Chapters are supported by screenshots, equations, sample Excel spreadsheets, and programming code


Primary audience: financial engineers, quantitative analysts, programmers in trading companies; graduate students in financial engineering and financial markets courses and programs.

Table of Contents

  • Chapter 1 Introduction

    Section I: Introduction to Visual C++.NET 2005

    Chapter 2 The .NET Framework

    Chapter 3 Tracking References

    Chapter 4 Classes and Objects

    Chapter 5 Reference Types

    Chapter 6 Value Types

    Chapter 7 Unmanaged Objects

    Chapter 8 Composition

    Chapter 9 Properties

    Chapter 10 Structures and Enumerations

    Chapter 11 Inheritance

    Chapter 12 Converting and Casting

    Chapter 13 Operator Overloading

    Chapter 14 Delegates and Events

    Chapter 15 Arrays

    Chapter 16 Generating Random Numbers

    Chapter 17 Time and Timers

    Chapter 18 Input and Output Streams

    Chapter 19 Exception Handling

    Chapter 20 Collections

    Chapter 21 STL/STL.NET

    Chapter 22 DataSets

    Chapter 23 Connecting to Databases

    Chapter 24 Structured Query Language

    Chapter 25 XML

    Chapter 26 Financial Information Exchange Protocol

    Chapter 27 Serialization

    Chapter 28 Windows Services

    Chapter 29 Setup and Installation Packages

    Section II: Concurrency

    Chapter 30 Threading

    Chapter 31 Synchronization Classes

    Chapter 32 Sockets

    Section III: Interoperability and Connectivity

    Chapter 33 Marshaling

    Chapter 34 Interior and Pinning Pointers

    Chapter 35 Connecting to Managed DLLs

    Chapter 36 Connecting to Componenet Object Model (COM) DLLs with COM Interop

    Chapter 37 Connecting to C++DLLs with Platform Invocation Services

    Chapter 38 Connecting to Excel

    Chapter 39 Connecting to TraderAPI

    Chapter 40 Connecting to XTAPIConnection_Example

    Section IV: Automated Trading Systems

    Chapter 41 Building Trading Systems

    Chapter 42 K„ V Trading System Development Methodology

    Chapter 43 Automated Trading System Classes

    Chapter 44 Single-Threaded, Technical Analysis System

    Chapter 45 Producer/Consumer Design Pattern

    Chapter 46 Multithreaded, Statistical Arbitrage System

Product details

  • No. of pages: 336
  • Language: English
  • Copyright: © Academic Press 2007
  • Published: March 7, 2007
  • Imprint: Academic Press
  • Hardcover ISBN: 9780750682510
  • eBook ISBN: 9780080476254

About the Author

Benjamin Van Vliet

Ben Van Vliet is a Lecturer at the Illinois Institute of Technology (IIT), where he also serves as the Associate Director of the M.S. Financial Markets program. At IIT he teaches courses in quantitative finance, C++ and .NET programming, and automated trading system design and development. He is vice chairman of the Institute for Market Technology, where he chairs the advisory board for the Certified Trading System Developer (CTSD) program. He also serves as series editor of the Financial Markets Technology series for Elsevier/Academic Press and consults extensively in the financial markets industry.

Mr. Van Vliet is also the author of "Modeling Financial Markets" with Robert Hendry (2003, McGraw Hill) and "Building Automated Trading Systems"(2007, Academic Press. Additionally, he has published several articles in the areas of finance and technology, and presented his research at several academic and professional conferences.

Affiliations and Expertise

Lecturer in and the Associate Director of the Masters in Financial Markets Program, Stuart School of Business, Illinois Institute of Technology, USA

Ratings and Reviews

Write a review

There are currently no reviews for "Building Automated Trading Systems"