## Quantitative Finance Algorithmic Trading in Python

### What you’ll learn

Understand stock market fundamentals

Understand bonds and bond pricing

Understand the Modern Portfolio Theory and Markowitz model

Understand the Capital Asset Pricing Model (CAPM)

Understand derivatives (futures and options)

Understand credit derivatives (credit default swaps)

Understand stochastic processes and the famous Black-Scholes model

Understand Monte-Carlo simulations

Understand Value-at-Risk (VaR)

Understand CDOs and the financial crisis

Understand interest rate models (Vasicek model)

### Requirements

You should have an interest in quantitative finance as well as in mathematics and programming!

### Description

This course is about the fundamental basics of financial engineering. First of all you will learn about stocks, bonds and other derivatives. The main reason of this course is to get a better understanding of mathematical models concerning the finance in the main. First of all we have to consider bonds and bond pricing. Markowitz-model is the second step. Then Capital Asset Pricing Model (CAPM). One of the most elegant scientific discoveries in the 20th century is the Black-Scholes model and how to eliminate risk with hedging. IMPORTANT: only take this course, if you are interested in statistics and mathematics !!!Section 1 – Introductioninstalling Pythonwhy to use Python programming languagethe problem with financial models and historical dataSection 2 – Stock Market Basicspresent value and future value of moneystocks and sharescommodities and the FOREXwhat are short and long positions?Section 3 – Bond Theory and Implementationwhat are bondsyields and yield to maturityMacaulay durationbond pricing theory and implementationSection 4 – Modern Portfolio Theory (Markowitz Model)what is diverzification in finance?mean and varianceefficient frontier and the Sharpe ratiocapital allocation line (CAL)Section 5 – Capital Asset Pricing Model (CAPM)systematic and unsystematic risksbeta and alpha parameterslinear regression and market riskwhy market risk is the only relevant risk?Section 6 – Derivatives Basicsderivatives basicsoptions (put and call options)forward and future contractscredit default swaps (CDS)interest rate swapsSection 7 – Random Behavior in Financerandom behaviorWiener processesstochastic calculus and Ito’s lemmabrownian motion theory and implementationSection 8 – Black-Scholes ModelBlack-Scholes model theory and implementationMonte-Carlo simulations for option pricingthe greeksSection 9 – Value-at-Risk (VaR)what is value at risk (VaR)Monte-Carlo simulation to calculate risksSection 10 – Collateralized Debt Obligation (CDO)what are CDOs?the financial crisis in 2008Section 11 – Interest Rate Modelsmean reverting stochastic processesthe Ornstein-Uhlenbeck processthe Vasicek modelusing Monte-Carlo simulation to price bondsSection 12 – Value Investinglong term investingefficient market hypothesisAPPENDIX – PYTHON CRASH COURSEbasics – variables, strings, loops and logical operatorsfunctionsdata structures in Python (lists, arrays, tuples and dictionaries)object oriented programming (OOP)NumPyThanks for joining my course, let’s get started!

### Overview

Section 1: Introduction

Lecture 1 Introduction

Lecture 2 Why to use Python?

Lecture 3 Financial models

Section 2: Environment Setup

Lecture 4 Installing Python

Lecture 5 Installing PyCharm

Section 3: Stock Market Basics

Lecture 6 Present value and future value of money

Lecture 7 Time value of money implementation

Lecture 8 Stocks and shares

Lecture 9 Commodities

Lecture 10 Currencies and the FOREX

Lecture 11 Short and long positions

Section 4: Bonds Theory

Lecture 12 What are bonds?

Lecture 13 Yields and yield to maturity

Lecture 14 Interest rates and bonds

Lecture 15 Macaulay duration

Lecture 16 Risks with bonds

Lecture 17 Stocks and bonds

Section 5: Bonds Implementation

Lecture 18 Bonds pricing implementation I

Lecture 19 Bonds pricing implementation II

Lecture 20 Exercise – continuous model for discounting

Lecture 21 Solution – continuous model for discounting

Section 6: Modern Portfolio Theory (Markowitz-Model)

Lecture 22 What are mean, variance and correlation?

Lecture 23 The main idea – diverzification

Lecture 24 Mathematical formulation

Lecture 25 Expected return of the portfolio

Lecture 26 Expected variance (risk) of the portfolio

Lecture 27 Efficient frontier

Lecture 28 Sharpe ratio

Lecture 29 Capital allocation line

Section 7: Markowitz-Model Implementation

Lecture 30 Markowitz model implementation I

Lecture 31 Markowitz model implementation II

Lecture 32 Markowitz model implementation III

Lecture 33 Markowitz model implementation IV

Lecture 34 Markowitz model implementation V

Section 8: Capital Asset Pricing Model (CAPM) Theory

Lecture 35 Systematic and unsystematic risk

Lecture 36 Capital asset pricing model formula

Lecture 37 The beta value

Lecture 38 What is linear regression?

Lecture 39 Capital asset pricing model and linear regression

Section 9: Capital Asset Pricing Model (CAPM) Implementation

Lecture 40 Capital asset pricing model implementation I

Lecture 41 Capital asset pricing model implementation II

Lecture 42 Capital asset pricing model implementation III

Lecture 43 Exercise – normal distribution of returns

Lecture 44 Solution – normal distribution of returns

Section 10: Derivatives Basics

Lecture 45 Introduction to derivatives

Lecture 46 Forward and future contracts

Lecture 47 Swaps and interest rate swaps

Lecture 48 Credit default swap (CDS)

Lecture 49 Options basics

Lecture 50 Call option

Lecture 51 Put option

Lecture 52 American and european options

Section 11: Random Behavior in Finance

Lecture 53 Types of analysis

Lecture 54 Random behavior of returns

Lecture 55 Wiener-processes and random walks

Lecture 56 Wiener-process implementation

Lecture 57 Stochastic calculus introduction

Lecture 58 Ito’s lemma in higher dimensions

Lecture 59 Solving the geometric random walk equation

Lecture 60 Geometric brownian motion implementation

Section 12: Black-Scholes Model

Lecture 61 Black-Scholes model introduction – the portfolio

Lecture 62 Black-Scholes model introduction – dynamic delta hedge

Lecture 63 Black-Scholes model introduction – no arbitrage principle

Lecture 64 Solution to Black-Scholes equation

Lecture 65 The greeks

Lecture 66 How to make money with Black-Scholes model?

Lecture 67 Long Term Capital Management (LTCM)

Section 13: Black-Scholes Model Implementation

Lecture 68 Black-Scholes model implementation

Lecture 69 What is Monte-Carlo simulation?

Lecture 70 Predicting stock prices with Monte-Carlo simulation

Lecture 71 Black-Scholes model implementation with Monte-Carlo simulation I

Lecture 72 Black-Scholes model implementation with Monte-Carlo simulation II

Lecture 73 Black-Scholes model implementation with Monte-Carlo simulation III

Section 14: Value at Risk (VaR)

Lecture 74 What is Value-at-Risk?

Lecture 75 Value-at-Risk introduction

Lecture 76 Value at risk implementation

Lecture 77 Value at risk implementation with Monte-Carlo simulation I

Lecture 78 Value at risk implementation with Monte-Carlo simulation II

Section 15: Collateralized Debt Obligations (CDOs) and the Financial Crisis

Lecture 79 What are CDOs?

Lecture 80 CDOs and diverzification

Lecture 81 CDO tranches

Lecture 82 The financial crisis of 2007-2008

Section 16: Interest Rate Modeling (Vasicek Model)

Lecture 83 Why to use interest rate models?

Lecture 84 The Ornstein-Uhlenbeck process introduction

Lecture 85 The Ornstein-Uhlenbeck process implementation

Lecture 86 Vasicek model introduction

Lecture 87 Vasicek model implementation

Section 17: Pricing Bonds with Vasicek Model

Lecture 88 Bond pricing with the Vasicek model I

Lecture 89 Bond pricing with the Vasicek model II

Lecture 90 Bond pricing with the Vasicek model III

Section 18: Long-Term Investing

Lecture 91 Value investing

Lecture 92 Efficient market hypothesis

Section 19: NEXT STEPS

Lecture 93 Next steps

Section 20: APPENDIX – PYTHON PROGRAMMING CRASH COURSE

Lecture 94 Python crash course introduction

Section 21: Appendix #1 – Python Basics

Lecture 95 First steps in Python

Lecture 96 What are the basic data types?

Lecture 97 Booleans

Lecture 98 Strings

Lecture 99 String slicing

Lecture 100 Type casting

Lecture 101 Operators

Lecture 102 Conditional statements

Lecture 103 How to use multiple conditions?

Lecture 104 Exercise: conditional statements

Lecture 105 Solution: conditional statements

Lecture 106 Logical operators

Lecture 107 Loops – for loop

Lecture 108 Loops – while loop

Lecture 109 Exercise: calculating the average

Lecture 110 Solution: calculating the average

Lecture 111 What are nested loops?

Lecture 112 Enumerate

Lecture 113 Break and continue

Lecture 114 Calculating Fibonacci-numbers

Lecture 115 Exercise: Fibonacci-numbers

Lecture 116 Solution: Fibonacci-numbers

Section 22: Appendix #2 – Functions

Lecture 117 What are functions?

Lecture 118 Defining functions

Lecture 119 Positional arguments and keyword arguments

Lecture 120 Returning values

Lecture 121 Returning multiple values

Lecture 122 Exercise: functions

Lecture 123 Solution: functions

Lecture 124 Yield operator

Lecture 125 Local and global variables

Lecture 126 What are the most relevant built-in functions?

Lecture 127 What is recursion?

Lecture 128 Exercise: recursion

Lecture 129 Solution: recursion

Lecture 130 Local vs global variables

Lecture 131 The __main__ function

Section 23: Appendix #3 – Data Structures in Python

Lecture 132 How to measure the running time of algorithms?

Lecture 133 Data structures introduction

Lecture 134 What are array data structures I

Lecture 135 What are array data structures II

Lecture 136 Lists in Python

Lecture 137 Lists in Python – advanced operations

Lecture 138 Lists in Python – list comprehension

Lecture 139 (!!!) Python lists and arrays

Lecture 140 Exercise: list comprehension

Lecture 141 Solution: list comprehension

Lecture 142 Measuring running time of lists

Lecture 143 What are tuples?

Lecture 144 Mutability and immutability

Lecture 145 What are linked list data structures?

Lecture 146 Doubly linked list implementation in Python

Lecture 147 Hashing and O(1) running time complexity

Lecture 148 Dictionaries in Python

Lecture 149 Sets in Python

Lecture 150 Exercise: constructing dictionaries

Lecture 151 Solution: constructing dictionaries

Lecture 152 Sorting

Section 24: Appendix #4 – Object Oriented Programming (OOP)

Lecture 153 What is object oriented programming (OOP)?

Lecture 154 Class and objects basics

Lecture 155 Using the constructor

Lecture 156 Class variables and instance variables

Lecture 157 Exercise: constructing classes

Lecture 158 Solution: constructing classes

Lecture 159 Private variables and name mangling

Lecture 160 What is inheritance in OOP?

Lecture 161 The super keyword

Lecture 162 Function (method) override

Lecture 163 What is polymorphism?

Lecture 164 Polymorphism and abstraction example

Lecture 165 Exercise: abstraction

Lecture 166 Solution: abstraction

Lecture 167 Modules

Lecture 168 The __str__ function

Lecture 169 Comparing objects – overriding functions

Section 25: Appendix #5 – NumPy

Lecture 170 What is the key advantage of NumPy?

Lecture 171 Creating and updating arrays

Lecture 172 Dimension of arrays

Lecture 173 Indexes and slicing

Lecture 174 Types

Lecture 175 Reshape

Lecture 176 Exercise: reshape problem

Lecture 177 Solution: reshape problem

Lecture 178 Stacking and merging arrays

Lecture 179 Filter

Lecture 180 Running time comparison: arrays and lists

Section 26: Course Materials (DOWNLOADS)

Lecture 181 Course materials

Anyone who wants to learn the basics of financial engineering!

#### Course Information:

Udemy | English | 14h 56m | 3.52 GB

Created by: Holczer Balazs

You Can See More Courses in the Business >> Greetings from CourseDown.com