Python for Finance: Investment Fundamentals & Data Analytics
4.5 (16,823 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
79,913 students enrolled

Python for Finance: Investment Fundamentals & Data Analytics

Learn Python Programming and Conduct Real-World Financial Analysis in Python - Complete Python Training
Bestseller
4.5 (16,823 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
79,913 students enrolled
Created by 365 Careers
Last updated 6/2020
English
English [Auto], French [Auto], 6 more
  • German [Auto]
  • Indonesian [Auto]
  • Italian [Auto]
  • Polish [Auto]
  • Portuguese [Auto]
  • Spanish [Auto]
Current price: $135.99 Original price: $194.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 8.5 hours on-demand video
  • 1 article
  • 42 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • 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
Requirements
  • You’ll need to install Anaconda. We will show you how to do it in one of the first lectures of the course
  • All software and data used in the course is free
Description


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!

Who this course is for:
  • Aspiring data scientists
  • Programming beginners
  • People interested in finance and investments
  • Programmers who want to specialize in finance
  • Everyone who wants to learn how to code and apply their skills in practice
  • Finance graduates and professionals who need to better apply their knowledge in Python
Course content
Expand all 111 lectures 08:15:11
+ Welcome! Course Introduction
2 lectures 08:04

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 
Preview 05:10

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

Download Useful Resources - Exercises and Solutions
02:54
+ Introduction to programming with Python
7 lectures 33:22

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

Programming Explained in 5 Minutes
05:04

Programming Explained in 5 Minutes
2 questions

Python is a programming language characterized as:

  • open-source
  • general-purpose
  • high-level
Why Python?
05:11
Why Python?
2 questions

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.

Why Jupyter?
03:29
Why Jupyter?
2 questions

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.

Installing Python and Jupyter
07:12

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
Jupyter’s Interface – the Dashboard
03:15

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

Jupyter’s Interface – Prerequisites for Coding
06:15
Jupyter’s Interface
4 questions
Python 2 vs Python 3: What's the Difference?
02:56
+ Python Variables and Data Types
3 lectures 20:13

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

Preview 04:51
Variables
1 question

Two distinct numeric types in Python are:

  • integers
  • floating points (floats)
Numbers and Boolean Values
03:05
Numbers and Boolean Values
1 question

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.

Strings
12:17
Strings
3 questions
+ Basic Python Syntax
7 lectures 15:13

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

  • addition (+)
  • subtraction (-)
  • division (/)
  • multiplication (*)
  • remainder (%)
  • exponentiation (**)
Arithmetic Operators
03:23
Arithmetic Operators
1 question

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

The Double Equality Sign
01:33
The Double Equality Sign
1 question

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

Reassign Values
01:08
Reassign values
1 question

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

Add Comments
03:20
Add Comments
1 question

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.

Line Continuation
00:49

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.

Indexing Elements
01:18
Indexing Elements
1 question

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.

Structure Your Code with Indentation
03:42
Structure Your Code with Indentation
1 question
+ Python Operators Continued
2 lectures 07:45

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.

Comparison Operators
02:10
Comparison Operators
2 questions

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.

Logical and Identity Operators
05:35
Logical and Identity Operators
2 questions
+ Conditional Statements
4 lectures 27:44

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.

Introduction to the IF statement
06:13
Introduction to the IF statement
1 question

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

Add an ELSE statement
05:37

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.

Preview 11:16

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

A Note on Boolean values
04:38
A Note on Boolean Values
1 question
+ Python Functions
7 lectures 29:26

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.

Defining a Function in Python
04:20

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

Creating a Function with a Parameter
07:58

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

Another Way to Define a Function
05:29
Another Way to Define a Function
1 question

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

Using a Function in another Function
01:49

Combining two of Python’s main tools:

  • IF statements
  • functions
Combining Conditional Statements and Functions
03:06

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

Creating Functions Containing a Few Arguments
02:48

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
Notable Built-in Functions in Python
03:56
Functions
2 questions
+ Python Sequences
5 lectures 34:49

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

  • lists
  • tuples
  • dictionaries
Lists
08:18
Lists
1 question

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

Using Methods
06:54
Using Methods
1 question

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

List Slicing
04:30

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

Tuples
06:40

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.

Dictionaries
08:27
Dictionaries
1 question
+ Using Iterations in Python
6 lectures 32:30

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. 

For Loops
05:40
For Loops
1 question

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.

While Loops and Incrementing
05:10

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

Create Lists with the range() Function
06:22
Create Lists with the range() Function
1 question

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

Use Conditional Statements and Loops Together
06:30

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
All In – Conditional Statements, Functions, and Loops
02:27

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

Iterating over Dictionaries
06:21
+ Advanced Python tools
16 lectures 01:04:10

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

  • what it is
  • which programming languages support it
Preview 05:00
Object Oriented Programming - Quiz
2 questions

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

Modules and Packages
01:05
Modules - Quiz
2 questions

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

The Standard Library
02:47
The Standard Library - Quiz
1 question

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

Importing Modules
04:10
Importing Modules - Quiz
2 questions

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

  • numpy
  • pandas
  • pandas-datareader
  • matplotlib
  • math
  • statsmodels, and more
Must-have packages for Finance and Data Science
04:53
Must-have packages - Quiz
3 questions

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

Working with arrays
06:02

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.

Generating Random Numbers
02:52
A Note on Using Financial Data in Python
02:42
Sources of Financial Data
06:49
Accessing the Notebook Files
02:35

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.

Importing and Organizing Data in Python – part I
03:44

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

Importing and Organizing Data in Python – part II.A
07:01
Importing and Organizing Data in Python – part II.B
04:37

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

Importing and Organizing Data in Python – part III
04:19
Changing the Index of Your Time-Series Data
03:17
Restarting the Jupyter Kernel
02:17