Get in Touch

Course Outline

Module 1 (C++ Phase 1)

  • Introduction and References
  • Fundamentals
  • Workshop Fundamentals
  • Function Overloading
  • What Can Be Overloaded and How
  • Additional C++ Types (bool & reference)
  • Workshop on Overloading
  • Object-Oriented Programming (OOP)
  • Quick Introduction to OOP
  • Classes
  • Structs
  • Access Modifiers
  • Constructors
  • Default and Deleted Functions
  • Initializer Syntax / Constructor Initialization List
  • Workshop on Classes
  • Memory Management
  • Classical Memory Interaction
  • Workshop on 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

Module 3 (C++ Phase 2 & Quantitative Final Phase)

  • Inheritance
  • Construction
  • Polymorphism
  • Virtual, Pure Virtual, Abstract, and Interfaces
  • Access Modifiers
  • Workshop on Inheritance (Shapes)
  • Exceptions
  • What Are Exceptions
  • How Exceptions Work
  • What to Throw and What to Catch
  • Workshop on Exceptions
  • Memory Exhaustion
  • How It Is Notified
  • How to Handle It
  • Modern Memory Management
  • RAII (Resource Acquisition Is Initialization)
  • Templates Applied to Modern Memory Management (SmartPointers)
  • Standardized C++11 SmartPointers
  • nullptr
  • Workshop on SmartPointers
  • Namespaces
  • Workshop on 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 (Predetermined Dates) Bermudan Options

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 and Function Objects
  • Classes That Act Like Functions
  • Introduction to 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 at 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

Requirements

General Programming Knowledge

 49 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories