Blog: Articles on C++11 and Computational Finance (by Daniel J. Duffy)

Daniel Duffy

C++ author, trainer
On this blog I would like to share some of my work.
Feedback relating to these topics very welcome.
 
Last edited:

Daniel Duffy

C++ author, trainer
This would've been perfect for the project I just turned in for this course :)
The difference is I needed 20 years to get my design up and running while you got it working in a few weeks :)

BTW what were the similarities and differences between the two approaches?

I get the impression you enjoyed the parallel programming aspects in this part?
 
Last edited:

Daniel Duffy

C++ author, trainer
An interesting follow-on remark is that these design principles are reusable, standardized and can be applied to any application domain. They grew from exposure to CAD, process control, holography and computational finance.
My forthcoming 2nd edition on C++ instrument pricing formalizes these domain architectures in computational finance.

@dstefan
 
Last edited:

Bkovalick

Active Member
C++ Student
The difference is I needed 20 years to get my design up and running while you got it working in a few weeks :)

BTW what were the similarities and differences between the two approaches?

I get the impression you enjoyed the parallel programming aspects in this part?
Very much so. Mine focused solely on improving the nested loop a.k.a the monte carlo simulation. Based on the feedback from @APalley the better approach would've been similar to what you did at the client level. Also I solely relied on subtype polymorphism to implement SDE, RNG and FDM instances but as I stated in my systems design document my improvement to this would be something quite similar to your approach. I did use boost signals for the pre and post process functions which meant I could price multiple options with one call to the start function. But overall I would say it's something I'll continue to revisit to see where I can make improvements.
 

Daniel Duffy

C++ author, trainer
this book is really good. I like it a lot. I used it around 8-9 years ago and it's still relevant.
The book uses OpenMP 2.0 and MPI code snippets which is of course good. Maybe a 2nd edition would be nice.
Nowadays parallel design patterns are ready-to-run in libraries such as C++ Concurrency, PPL, TBB, TPL, actor systems (and many other languages of course).

An important modelling construct is the usefulness of creating a task dependency graph up front.
 
Last edited:

Daniel Duffy

C++ author, trainer
This was probably the first object-oriented software program + Design Patterns

  1. Create and clone instances/objects Creational
  2. Build the structure of objects Structural
  3. Manipulate objects Behavioural

 
Last edited:
Top