• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

C++11/14 what do we need to know?

Joined
5/2/06
Messages
11,751
Points
273
According to http://en.wikipedia.org/wiki/C++14, C++14 is the informal name for the most recent revision of the C++ ISO/IEC standard, formally "International Standard ISO/IEC 14882:2014(E) Programming Language C++". C++14 is intended to be a small extension over C++11, featuring mainly bug fixes and small improvements.

There aren't many college courses focusing on the modern functionalities of C++14, so I'm very interested in knowing if there are any specific features that would allow us to apply to finance applications much more efficiently.

The topic was brought to my attention by @JLMARTIN who completed the C++ online certificate (by @Daniel Duffy) and now seek to go to the next level.
 
Some things that I've found useful from C++11:
  1. boost::thread has been incorporated into the standard (i.e. std::thread), and even a bit of added language support.
  2. Language support for lambda expressions! (I'm not sure how it compares to boost::lambda but I would assume much better.)
  3. Range based for loops.
  4. New convenient initializers.
I'm sure there is more. 1-3 were already part of C# (not sure how the threading compares between them).
 
Last edited:
Some things that I've found useful from C++11:
  1. boost::thread has been incorporated into the standard (i.e. std::thread), and even a bit of added language support.
  2. Language support for lambda expressions! (I'm not sure how it compares to boost::lambda but I would assume much better.)
  3. Range based for loops.
  4. New convenient initializers.
I'm sure there is more. 1-3 were already part of C# (not sure how the threading compares between them).

1. C++ concurrency.
2. Boost lambda is deprecated, even in Boost. BTW Boost Phoenix I suspect as well..

The reference book by Nicolai Josuttis is very good IMO.
 
yeah, I do the C++11/14 stuff.

1) Syntax course advanced

http://www.datasimfinancial.com/course_detail.php?courseId=62

1) C++11 for computational finance

http://www.datasimfinancial.com/course_detail.php?courseId=8

3) C++ 11 Fundamentals
http://www.datasim.nl/Education/CourseDetails.asp?CategoryID=CPP&CourseID=CPP-F
//
The 2nd edition "Financial Instrument Pricing in C++ 2004" (now C++11) is due Q2 2015.

// Knowing C# can be helpful (lambdas, tuples, delegates) for sure.

@Daniel Duffy any course on distance learning?
 
That's a good question @Daniel Duffy

after a couple of days browsing the internet, I've found these two links that I find pretty interesting

http://www.artima.com/shop/overview_of_the_new_cpp
http://www.kdab.com/tocs/Qt5/whats-new-in-cxx11-TOC.pdf

For me, both of them assume attendees already have certain c++ knowledge (c++98 I guess) but are not oriented to finance.

Nevertheless, your course of c++11 applied to finance is... awsome!

Hi JL,
I do the syntax/language features as well :)

The interesting part is the application. If you have done my QN C++ you won't have many difficulties!

hth
 
For the QN C++ students who know my previous lattice code, here is a sample chapter on the new approach in C++11 and Layers design.
 

Attachments

  • Chapter11 Lattice Models Fundamental Data Structures and Algorithms.pdf
    718.9 KB · Views: 48
Back
Top