Monte Carlo Frameworks in C++

This is a project that I am working on with Dr. Kienitz. One of the conclusions that we must draw is that C++ is the only language that is flexible enough for the problems we are working on. Some of the reasons are:

- support for OO and generic programming (in particular C++ templates are extremely flexible ... someone mentioned Turing complete)

- direct discovery of patterns that allow developers to plug in their own models, payoffs etc.

- Performance

- The abiliy to migrate the framework to MPI and OpenMP environments, thus allowing us to run parts of the application concurrently (for example, calculating option price and sensitivities)

- We now have some maintainable libraries that can be used

C# is a good language but it is more suitable for desk top environments. The combination of C++/CLI and C# in .NET seems like a good idea; one language for I/O, GUI and so on, and the other one for distributed number crunching. C++/CLI is like C++ but has a number of extensions that take some geting use to.

Edit: had some feedback on this blog; for the record let me say that I know C# well so my personal conclusions are not based on a one-sided analysis or ignorance of C#.

Monte Carlo and C++

It goes without saying that the Monte Carlo method is important in QF. Performance, accuracy and code extendibility are major requirements when developing C++ applications for MC.

Dr. Joerg Kienitz has kindly agreed to cooperate to help write a book on designing and implementing reusable(pluggable) frameworks using Domain Architectures and Design Patterns.

We examine a range of one-factor and N-factor plain and exotic derivatives problems.

CD with working code as well as code for parallel processing.

Publisher: Wiley, Chichester UK

C# and Trading Systems

C# is a modern object-oriented Language developed by Microsoft. It offers a number of advantages for the busy quant:

1. Safe coding; no more memory management problems

2. Good integration with MS products, e.g. Excel and WinForms

At the moment Signore Andrea Germani (a Wilmotter) and I are writing a hands-on and practical book on C# for Trading systems with the emphasis on fixed income and interest rate products.

The book dicusses C# in some detail and how to use it for swap, bond, IR and related derivatives.

CD with working code will also be povided.

Publisher: Wiley, Chichester, UK