C++ in Quantitative Finance I 2400-QFU2C1
1. Creating a Basic Program
Basic C++ Syntax. Compiling a C++ Program. Printing Text. Running a Compiled Program, Pausing Execution. Understanding White Space. Adding Comments to the Source Code. Using an IDE
2. Simple Variables and Data Types
Declaring Variables. Assigning Values to Variables. Printing Variables. Formatting Numbers. Understanding Type Conversion. Introduction to Characters. Introduction to Strings. Introduction to Constants.
3. Operators and Control Structures
Arithmetic Operators. If Conditionals. Using else and else if. The Ternary Operator. Logical and Comparison Operators. Increment and Decrement Operators. While Loop. For Loop
4. Input, Output, and Files
Taking Character Input. Discarding Input. Taking Numeric Input. Taking String Input. Taking Multiple Inputs. Reading in a Whole Line. Validating Input. Creating File Output. Using File Input
5. Defining Your Own Functions
Creating Simple Functions. Creating Functions that Take Arguments. Setting Default Argument Values. Creating Functions that Return a Value. Overloading Functions. Understanding Variable Scope
6. Complex Data Types
Working with Arrays. Working with Pointers. Structures. Revisiting User-Defined Functions
7. Introducing Objects
Creating a Simple Class. Adding Methods to a Class. Creating and Using Object. Defining Constructors. Defining Destructors. The this Pointer
8. Class Inheritance
Basic Inheritance. Inheriting Constructors and Destructors. Access Control. Overriding Methods. Overloading Methods. Making Friends
9. Namespaces & Modularization
Working with Included Files. The C Preprocessor. Understanding Namespaces. Linkage and Scope
10. Working with Templates
11. Simple application for pricing non-path dependent options.
12. Simple application for pricing path dependent options.
Type of course
Course coordinators
Learning outcomes
After the course students will be able to write and compile their own basic C++ applications. They will be able to design and deploy simple Monte-Carlo simulations which can approximate the theoretical prices of both non-path dependent and path-dependent options.
KW01, KW02, KU01, KU02
Assessment criteria
Exam with computers, home taken project and activity in the class.
Bibliography
1. Ullman, Signer "C++ Programming. Visual Quickstart Guide"
2. Prata "C++ Primer Plus 6 ed."
3. Duffy "Introduction to C++ for Financial Engineers"
Additional information
Additional information (registration calendar, class conductors, localization and schedules of classes), might be available in the USOSweb system: