Skip to Content
Learning Modern C++ for Finance
book

Learning Modern C++ for Finance

by Daniel Hanson
November 2024
Intermediate to advanced
430 pages
10h 39m
English
O'Reilly Media, Inc.
Book available
Content preview from Learning Modern C++ for Finance

Chapter 6. Random Number Generation and Concurrency

Of all the new features introduced in C++11, two that can have immediate and significant impact on common tasks in quantitative financial development were random number generation and task-based concurrency. However, despite their usefulness, they have—​for the most part—​flown under the radar within C++ textbooks, curricula, and other educational resources.

Random numbers can now be generated from probability distributions provided in the Standard Library. Furthermore, the Standard Library also provides a cross-platform solution for implementing parallelizable tasks such as those that frequently occur in option pricing and risk management. This is thanks to an abstraction that takes care of all the thread management for us behind the scenes, much like a vector or a unique_ptr takes responsibility for memory management.

Beginning with C++17, and with significantly greater fanfare with respect to parallelization, the Standard Library began providing parallel versions of selected STL algorithms. What makes this particularly elegant is that as far as programmers are concerned, these algorithms can be executed in parallel by simply adding an extra argument at the call site. Note, however, that these arguments are requests, not constraints: a sequential execution of an algorithm is a valid parallel execution of that algorithm, so your library vendor can ignore such a request and remain conformant.

In this chapter, we will begin with ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Complete Modern C++ (C++11/14/17)

Complete Modern C++ (C++11/14/17)

Umar Lone
The Complete C++ Developer Course

The Complete C++ Developer Course

Codestars By Rob Percival, John P. Baugh

Publisher Resources

ISBN: 9781098100797Errata PageSupplemental Content