Design patterns are the cutting-edge paradigm for programming in C++, and they are here discussed in depth using examples from financial mathematics. Assuming only a basic knowledge of C++ and mathematical finance, the reader learns how to produce well-designed, structured, reusable code via carefully-chosen examples. This new edition includes several new chapters covering topics of increasing robustness in the presence of exceptions, designing a generic factory, interfacing C++ with EXCEL, and improving code design using the idea of decoupling. Complete ANSI/ISO compatible C++ source code is hosted on an accompanying website for the reader to study in detail, and reuse as they see fit. Whether you are a student of financial mathematics, a working quantitative analyst or financial mathematician, you need this book. Offering practical steps for implementing pricing models for complex financial products, it will transform your understanding of how to use C++.
• New edition includes extra material on how to increase robustness, decrease compile times, improve designs, and interface C++ with EXCEL • Complete ANSI/ISO compatible C++ source code is hosted on an accompanying website for the reader to study in detail, and reuse as they see fit • Implementation of a Monte Carlo pricer for path-dependent exotic derivatives is used as a running example throughout the book
Preface; 1. A simple Monte Carlo model; 2. Encapsulation; 3. Inheritance and virtual functions; 4. Bridging with a virtual constructor; 5. Strategies, decoration and statistics; 6. A random numbers class; 7. An exotics engine and the template pattern; 8. Trees; 9. Solvers, templates and implied volatilities; 10. The factory; 11. Design patterns revisited; 12. The situation in 2007; 13. Exceptions; 14. Templatizing the factory; 15. Interfacing with EXCEL; 16. Decoupling; A. Black–Scholes formulas; B. Distribution functions; C. A simple array class; D. The code; Bibliography; Index.
'This is a short book, but an elegant one. It would serve as an excellent course text for a course on the practical aspects of mathematical finance.' International Statistical Institute
'This book is thought-provoking and rewarding. Even for the less experienced programmer, the presentation is readily accessible, and the coded examples can be directly used to solve real-life problems.' Journal of the American Statistics Association
'This book, although it is quite short, does cover a significant amount of material and does deal with some fairly advanced topics that are important to practitioners. The real strength of the book is its clarity and conciseness.' SIAM Review