C++ for Modeling Quantitative Finance  ( ccquant | 49 hours )

Prerequisites:

General Programming Knowledge

Overview:

Deep C++ training to cover quantitative methods modeling and introduce a huge project for the trainees to have real hands-on experience with C++ for Quants

Course Outline:

Module 1(C++ Phase 1)

  • Intro + References
  • Basics
  • Workshop Basics
  • Overloading
  • What can we overload, and how.
  • Extra C++ Types (bool & reference)
  • Workshop overloading
  • OOP 
  • Quick introduction to Oop
  • Classes
  • Structs
  • Access Modifiers
  • Constructor
  • default/delete functions
  • initializer syntax / constructor initialization list
  • Workshop classes
  • Memory
  • Classical memory interaction
  • Workshop Memory

Module 2

  • Introduction to quantitative finance
  • Discrete Time Models
  • Continuous Time Models
  • Interest rate models 
  • Options on bonds
  • Short rate Models 
  • Forward Rate Models 
  • Market Models 

Module3 (C++ Phase2 & Quantitative final phase)

  • Inheritance
  • Construction
  • Polymorphism
  • Virtual, pure virtual, abstract, interface
  • Access modifiers
  • Workshop Inheritance (Shapes)
  • Exceptions
  • What are they
  • How do they work
  • What to throw and what to catch
  • Workshop exceptions
  • Memory exhaustion
  • How it’s notified
  • How to handle
  • Modern Memory Management
  • RAII
  • Templates applied to Modern Memory Management (SmartPointer)
  • Standardized C++11 SmartPointers
  • Nullptr
  • Workshop SmartPointers
  • Namespaces
  • Workshop Namespaces
  • Vasicek Bond Prices in C++
  • Black-Scholes Modeling in C++ put &call 
  • Introduction to Monte carlo Simulation
  • How to price options using  Simulation
  • Monte carlo Simulation in C++
  • Geometric Brownian Motion
  • American Vs European Options
  • Slice based valuation :Lattice Method
  • Slice based valuation :PDE Method
  • Slice based valuation :PDE Method
  • Valuation of American (dates Predetermined) Bermudan Option 

Module 4 -C++ Final phase 

  • auto
  • The new auto keyword
  • The new auto return syntax
  • enum
  • New style enums
  • constexpr
  • New constant expressions
  • About constness
  • Const and Mutable explained
  • Lambdas & function objects
  • Classes that act like functions
  • Introduction lambda functions
  • Chrono
  • An introduction to the new Chrono library

 Module 5

  • Casting
  • Standard library
  • String
  • Containers
  • Vector (vs)
  • List
  • Map
  • Array
  • Tuple
  • Initializer lists
  • Iterators
  • range-for syntax
  • Std Algorithms
  • Streams
  • Miscellaneous Keywords
  • static
  • explicit

Module 6

  • Move semantics
  • Introduction to L/R values
  • R-value-references applied to move semantics
  • Type Traits
  • Obtaining information on compile time
  • Concurrency
  • Introduction to C++11’s Threading, async/future and atomic types implementation
  • Variadic templates - An introduction to C++11’s variadic templates
Sites Published:

United Arab Emirates - C++ for Modeling Quantitative Finance

Qatar - C++ for Modeling Quantitative Finance

Egypt - C++ for Modeling Quantitative Finance

Saudi Arabia - C++ for Modeling Quantitative Finance

South Africa - C++ for Modeling Quantitative Finance

Brasil - C++ for Modeling Quantitative Finance

Canada - C++ for Modeling Quantitative Finance

中国 - C++ for Modeling Quantitative Finance

香港 - C++ for Modeling Quantitative Finance

澳門 - C++ for Modeling Quantitative Finance

台灣 - C++ for Modeling Quantitative Finance

USA - C++ for Modeling Quantitative Finance

Österreich - C++ for Modeling Quantitative Finance

Schweiz - C++ for Modeling Quantitative Finance

Deutschland - C++ for Modeling Quantitative Finance

Czech Republic - C++ for Modeling Quantitative Finance

Denmark - C++ for Modeling Quantitative Finance

Estonia - C++ for Modeling Quantitative Finance

Finland - C++ for Modeling Quantitative Finance

Greece - C++ for Modeling Quantitative Finance

Magyarország - C++ for Modeling Quantitative Finance

Ireland - C++ for Modeling Quantitative Finance

Luxembourg - C++ for Modeling Quantitative Finance

Latvia - C++ for Modeling Quantitative Finance

España - C ++ para el Modelado de Finanzas Cuantitativas

Italia - C++ for Modeling Quantitative Finance

Lithuania - C++ for Modeling Quantitative Finance

Nederland - C++ for Modeling Quantitative Finance

Norway - C++ for Modeling Quantitative Finance

Portugal - C++ for Modeling Quantitative Finance

România - C++ for Modeling Quantitative Finance

Sverige - C++ for Modeling Quantitative Finance

Türkiye - C++ for Modeling Quantitative Finance

Malta - C++ for Modeling Quantitative Finance

Belgique - C++ for Modeling Quantitative Finance

France - C++ for Modeling Quantitative Finance

日本 - C++ for Modeling Quantitative Finance

Australia - C++ for Modeling Quantitative Finance

Malaysia - C++ for Modeling Quantitative Finance

New Zealand - C++ for Modeling Quantitative Finance

Philippines - C++ for Modeling Quantitative Finance

Singapore - C++ for Modeling Quantitative Finance

Thailand - C++ for Modeling Quantitative Finance

Vietnam - C++ for Modeling Quantitative Finance

India - C++ for Modeling Quantitative Finance

Argentina - C ++ para el Modelado de Finanzas Cuantitativas

Chile - C ++ para el Modelado de Finanzas Cuantitativas

Costa Rica - C ++ para el Modelado de Finanzas Cuantitativas

Ecuador - C ++ para el Modelado de Finanzas Cuantitativas

Guatemala - C ++ para el Modelado de Finanzas Cuantitativas

Colombia - C ++ para el Modelado de Finanzas Cuantitativas

México - C ++ para el Modelado de Finanzas Cuantitativas

Panama - C ++ para el Modelado de Finanzas Cuantitativas

Peru - C ++ para el Modelado de Finanzas Cuantitativas

Uruguay - C ++ para el Modelado de Finanzas Cuantitativas

Venezuela - C ++ para el Modelado de Finanzas Cuantitativas

Polska - C++ for Modeling Quantitative Finance

United Kingdom - C++ for Modeling Quantitative Finance

South Korea - C++ for Modeling Quantitative Finance

Pakistan - C++ for Modeling Quantitative Finance

Sri Lanka - C++ for Modeling Quantitative Finance

Bulgaria - C++ for Modeling Quantitative Finance

Bolivia - C ++ para el Modelado de Finanzas Cuantitativas

Indonesia - C++ for Modeling Quantitative Finance

Kazakhstan - C++ for Modeling Quantitative Finance

Moldova - C++ for Modeling Quantitative Finance

Morocco - C++ for Modeling Quantitative Finance

Tunisia - C++ for Modeling Quantitative Finance

Kuwait - C++ for Modeling Quantitative Finance

Oman - C++ for Modeling Quantitative Finance

Slovakia - C++ for Modeling Quantitative Finance

Kenya - C++ for Modeling Quantitative Finance

Nigeria - C++ for Modeling Quantitative Finance

Botswana - C++ for Modeling Quantitative Finance

Slovenia - C++ for Modeling Quantitative Finance

Croatia - C++ for Modeling Quantitative Finance

Serbia - C++ for Modeling Quantitative Finance

Bhutan - C++ for Modeling Quantitative Finance

Nepal - C++ for Modeling Quantitative Finance