4.52 out of 5
4.52
17529 reviews on Udemy

Python for Finance: Investment Fundamentals & Data Analytics

Learn Python Programming and Conduct Real-World Financial Analysis in Python - Complete Python Training
Instructor:
365 Careers
82,714 students enrolled
English [Auto] More
Learn how to code in Python
Take your career to the next level
Work with Python’s conditional statements, functions, sequences, and loops
Work with scientific packages, like NumPy
Understand how to use the data analysis toolkit, Pandas
Plot graphs with Matplotlib
Use Python to solve real-world tasks
Get a job as a data scientist with Python
Acquire solid financial acumen
Carry out in-depth investment analysis
Build investment portfolios
Calculate risk and return of individual securities
Calculate risk and return of investment portfolios
Apply best practices when working with financial data
Use univariate and multivariate regression analysis
Understand the Capital Asset Pricing Model
Compare securities in terms of their Sharpe ratio
Perform Monte Carlo simulations
Learn how to price options by applying the Black Scholes formula
Be comfortable applying for a developer job in a financial institution

Do you want to learn how to use Python in a working environment?

Are you a young professional interested in a career in Data Science?

 

Would you like to explore how Python can be applied in the world of Finance and solve portfolio optimization problems?

 

If so, then this is the right course for you!

 

We are proud to present Python for Finance: Investment Fundamentals and Data Analytics – one of the most interesting and complete courses we have created so far. It took our team slightly over four months to create this course, but now, it is ready and waiting for you.

 

An exciting journey from Beginner to Pro.

 

If you are a complete beginner and you know nothing about coding, don’t worry! We start from the very basics. The first part of the course is ideal for beginners and people who want to brush up on their Python skills. And then, once we have covered the basics, we will be ready to tackle financial calculations and portfolio optimization tasks.   

Finance Fundamentals.

 

And it gets even better! The Finance block of this course will teach you in-demand real-world skills employers are looking for. To be a high-paid programmer, you will have to specialize in a particular area of interest. In this course, we will focus on Finance, covering many tools and techniques used by finance professionals daily:

 

  • Rate of return of stocks

     

  • Risk of stocks

     

  • Rate of return of stock portfolios

     

  • Risk of stock portfolios

     

  • Correlation between stocks

     

  • Covariance

     

  • Diversifiable and non-diversifiable risk

     

  • Regression analysis

     

  • Alpha and Beta coefficients

     

  • Measuring a regression’s explanatory power with R^2

     

  • Markowitz Efficient frontier calculation

     

  • Capital asset pricing model

     

  • Sharpe ratio

     

  • Multivariate regression analysis

     

  • Monte Carlo simulations

     

  • Using Monte Carlo in a Corporate Finance context

     

  • Derivatives and type of derivatives

     

  • Applying the Black Scholes formula

     

  • Using Monte Carlo for options pricing

     

  • Using Monte Carlo for stock pricing

Everything is included! All these topics are first explained in theory and then applied in practice using Python.

Is there a better way to reinforce what you have learned in the first part of the course?

 

This course is great, even if you are an experienced programmer, as we will teach you a great deal about the finance theory and mechanics you will need if you start working in a finance context.     

Teaching is our passion.

 

Everything we teach is explained in the best way possible. Plain and clear English, relevant examples and time-efficient videos. Don’t forget to check some of our sample videos to see how easy they are to understand.   

If you have questions, contact us! We enjoy communicating with our students and take pride in responding within the 1 business day. Our goal is to create high-end materials that are fun, exciting, career-enhancing, and rewarding.    

What makes this course different from the rest of the Programming and Finance courses out there?  

  • This course will teach you how to code in Python and apply these skills in the world of Finance. It is both a Programming and a Finance course.

  • High-quality production – HD video and animations (this isn’t a collection of boring lectures!)

  • Knowledgeable instructors. Martin is a quant geek fascinated by the world of Data Science, and Ned is a finance practitioner with several years of experience who loves explaining Finance topics in real life and here on Udemy.

  • Complete training – we will cover all the major topics you need to understand to start coding in Python and solving the financial topics introduced in this course (and they are many!)

  • Extensive Case Studies that will help you reinforce everything you’ve learned.

  • Course Challenge: Solve our exercises and make this course an interactive experience.

  • Excellent support: If you don’t understand a concept or you simply want to drop us a line, you’ll receive an answer within 1 business day.

  • Dynamic: We don’t want to waste your time! The instructors set a very good pace throughout the whole course.

Please don’t forget that the course comes with Udemy’s 30-day unconditional, money-back-in-full guarantee. And why not give such a guarantee, when we are convinced the course will provide a ton of value for you?

Just subscribe to this course! If you don’t acquire these skills now, you will miss an opportunity to separate yourself from the others. Don’t risk your future success! Let’s start learning together now!

Welcome! Course Introduction

1
What Does the Course Cover?

In this video, we will discuss:

  • who are the instructors of the course
  • what the course is about
  • who it is for
  • the wide range of topics covered in this course 
2
Download Useful Resources - Exercises and Solutions

Learn how to navigate in the Course Content section and find the resources available for all lectures.

Introduction to programming with Python

1
Programming Explained in 5 Minutes

In this lesson, we will explain what you must know about programming if you are just getting started.

2
Programming Explained in 5 Minutes

3
Why Python?

Python is a programming language characterized as:

  • open-source
  • general-purpose
  • high-level
4
Why Python?
5
Why Jupyter?

You must install Python and Jupyter on your computer. If you have them, you can still complete this lecture, because we will say a few interesting things about Jupyter.

6
Why Jupyter?
7
Installing Python and Jupyter

There are various ways to install Python on your computer. But especially for new users, it is highly recommended to choose Anaconda. It will install, not only Python, but also the Jupyter Notebook App and many scientific computing and data science packages.

8
Jupyter’s Interface – the Dashboard

In this lesson, we’ll do a quick tour of the Jupyter dashboard. You’ll see how to:

  • manipulate files and folders in the Jupyter dashboard
  • upload and open Python files in Jupyter
  • create new Python files in Jupyter
9
Jupyter’s Interface – Prerequisites for Coding

Now that we know more about the dashboard, we are ready to examine the shell and see how to code in Jupyter.  

10
Jupyter’s Interface
11
Python 2 vs Python 3: What's the Difference?

Python Variables and Data Types

1
Variables

In this lesson, we will start coding. We will also introduce you to one of the main concepts in programming – variables.

2
Variables
3
Numbers and Boolean Values

Two distinct numeric types in Python are:

  • integers
  • floating points (floats)
4
Numbers and Boolean Values
5
Strings

In this lesson, we’ll learn about another type of value that can be useful when working in Python – strings. Strings are text values composed of a sequence of characters.

6
Strings

Basic Python Syntax

1
Arithmetic Operators

We’ll continue to build our Python syntax knowledge. The next topic on our agenda is arithmetic operators:

  • addition (+)
  • subtraction (-)
  • division (/)
  • multiplication (*)
  • remainder (%)
  • exponentiation (**)
2
Arithmetic Operators
3
The Double Equality Sign

Here, we will explore another useful operator - the double equality sign.

4
The Double Equality Sign
5
Reassign Values

In this video, we will show you how to reassign variables in Python.

6
Reassign values
7
Add Comments

Learn how to use the hash sign for writing comments in Python.

8
Add Comments
9
Line Continuation

In this video, we will show you a neat trick that will be extremely valuable when you become an advanced Python programmer and work with large amounts of code – using the forward slash to finish your code on a new line.

10
Indexing Elements

Let’s look at another important concept that will help us a great deal when working in Python - indexing. This is a technique we’ll use frequently, later in the course, especially when we focus on Python’s application in the world of finance.

11
Indexing Elements
12
Structure Your Code with Indentation

The next concept for programming in Python that we will see is fundamental – it is called indentation. The way you apply it in practice is important, as this will be the only mechanism to communicate your ideas to the machine properly.

13
Structure Your Code with Indentation

Python Operators Continued

1
Comparison Operators

In this section, we will learn more about the operators that will help us in our work in Python. We will start with comparison operators.

2
Comparison Operators
3
Logical and Identity Operators

Briefly, the logical operators in Python are the words “not”, “and”, and “or”. They compare a certain number of statements and return Boolean values – “True” or “False” – hence their second name, Boolean operators.

4
Logical and Identity Operators

Conditional Statements

1
Introduction to the IF statement

Values act as the most basic (or primitive) data elements to form not only variables, but expressions. In this video, you will learn about a prominent example of conditional statements in Python – the IF statement.

2
Introduction to the IF statement
3
Add an ELSE statement

Here, we will focus on adding an ELSE statement to a conditional in Python.

4
Else if, for Brief – ELIF

We’ll show you an elegant way to add a second IF statement to one of our expressions. This is done with the help of the ELIF keyword.

5
A Note on Boolean values

You probably noticed we talked about Boolean values a few times. We would like to provide a short video that explains their application.

6
A Note on Boolean Values

Python Functions

1
Defining a Function in Python

In this section, we’ll step it up a notch. Starting from this lesson, we’ll deal with Python’s functions - an invaluable tool for programmers.

2
Creating a Function with a Parameter

Our next task will be to create a function with a parameter.

3
Another Way to Define a Function

In this lesson, we will explore another way to organize the definition of a function.

4
Another Way to Define a Function
5
Using a Function in another Function

This video provides an example of how to work with functions within functions.

6
Combining Conditional Statements and Functions

Combining two of Python’s main tools:

  • IF statements
  • functions
7
Creating Functions Containing a Few Arguments

We’ll learn how to work with more than one parameter in a function.

8
Notable Built-in Functions in Python

When you install Python on your computer, you are also installing some of its built-in functions, such as:

  • type()
  • int()
  • float()
  • str()
  • max()
  • min()
  • len(), and more
9
Functions

Python Sequences

1
Lists

In this section, we’ll cover these types of Python objects:

  • lists
  • tuples
  • dictionaries
2
Lists
3
Using Methods

We will introduce you to the programming term “method” and then see how to invoke a method in Python.

4
Using Methods
5
List Slicing

In this lesson, we’ll introduce you to another important Python concept – slicing.

6
Tuples

Let’s discover the tuple – another type of data sequence. Different from a list, the tuple is immutable.

7
Dictionaries

Now that you know what lists and tuples are, you will more quickly understand what dictionaries are about. Dictionaries represent another way of storing data.

8
Dictionaries

Using Iterations in Python

1
For Loops

In this section, we will be dealing with iteration – a fundamental building block of all programs. It allows us to execute a certain code repeatedly.

Here, we will show you how one could use a for- loop in Python. 

2
For Loops
3
While Loops and Incrementing

The same output we obtained in the previous lesson could be achieved after using a while loop, instead of a for loop. That’s what we will do in this lecture.

4
Create Lists with the range() Function

In this lesson, we will show you how to create a Python list with the range() function.

5
Create Lists with the range() Function
6
Use Conditional Statements and Loops Together

Let’s see how one could apply the range() function in a for- loop in Python.

7
All In – Conditional Statements, Functions, and Loops

We will count the number of items whose value is less than 20 in a list. To achieve this, we will use these tools:

  • Python conditional statements
  • Python functions
  • Python loops
8
Iterating over Dictionaries

Time for a more challenging topic – iterating over a dictionary.

Advanced Python tools

1
Object Oriented Programming

The focus of this video is object-oriented programming, OOP. We will explain:

  • what it is
  • which programming languages support it
2
Object Oriented Programming - Quiz
3
Modules and Packages

It is time to learn about Python modules and packages. This will be necessary in the Python for Finance part of the course, too.

4
Modules - Quiz
5
The Standard Library

Let’s talk about Python’s standard library. It is a collection of modules available as soon as you install Python.

6
The Standard Library - Quiz
7
Importing Modules

There are four ways to import a module in Python. You can decide which one you will use when working on your own.

8
Importing Modules - Quiz
9
Must-have packages for Finance and Data Science

Here, we will present the Python libraries and modules used in this course:

  • numpy
  • pandas
  • pandas-datareader
  • matplotlib
  • math
  • statsmodels, and more
10
Must-have packages - Quiz
11
Working with arrays

Arrays are fundamental data structures in any programming language. We will introduce you to them in this lesson.

12
Generating Random Numbers

When working with financial data, you won’t always base your calculations on existing data. Sometimes, it will be necessary to run simulations and examine hypothetical scenarios, because historical data will be insufficient. In these situations, you will need a whole set of randomly generated numbers.

13
A Note on Using Financial Data in Python
14
Sources of Financial Data
15
Accessing the Notebook Files
16
Importing and Organizing Data in Python – part I

This is an important lecture, as we will explain how we have organized the Python for Finance part of the course in terms of working with financial data downloaded from Yahoo Finance.

17
Importing and Organizing Data in Python – part II.A

In this video, we will take the first steps to extract data from online sources.

18
Importing and Organizing Data in Python – part II.B
19
Importing and Organizing Data in Python – part III

Here, we will add a few tools and techniques to your skillset, allowing you to analyse the data in your DataFrame.  

20
Changing the Index of Your Time-Series Data
21
Restarting the Jupyter Kernel

PART II FINANCE: Calculating and Comparing Rates of Return in Python

1
Considering both risk and return

This is where the Python for Finance part of the course starts.

When you think of an investment, you must always evaluate two things – its potential profit or loss. You must know how to measure the potential return and risk of the investment.

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.5
4.5 out of 5
17529 Ratings

Detailed Rating

Stars 5
9224
Stars 4
6370
Stars 3
1611
Stars 2
218
Stars 1
106
bd60253c0ab6fb191434d08e8e5788ba

Includes

8 hours on-demand video
1 article
Full lifetime access
Access on mobile and TV
Certificate of Completion