Python for Finance: Investment Fundamentals & Data Analytics
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.
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
Diversifiable and non-diversifiable risk
Alpha and Beta coefficients
Measuring a regression’s explanatory power with R^2
Markowitz Efficient frontier calculation
Capital asset pricing model
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
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
Learn how to navigate in the Course Content section and find the resources available for all lectures.
Introduction to programming with Python
In this lesson, we will explain what you must know about programming if you are just getting started.
Python is a programming language characterized as:
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.
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.
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
Now that we know more about the dashboard, we are ready to examine the shell and see how to code in Jupyter.
Python Variables and Data Types
In this lesson, we will start coding. We will also introduce you to one of the main concepts in programming – variables.
Two distinct numeric types in Python are:
- floating points (floats)
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.
Basic Python Syntax
We’ll continue to build our Python syntax knowledge. The next topic on our agenda is arithmetic operators:
- addition (+)
- subtraction (-)
- division (/)
- multiplication (*)
- remainder (%)
- exponentiation (**)
Here, we will explore another useful operator - the double equality sign.
In this video, we will show you how to reassign variables in Python.
Learn how to use the hash sign for writing comments in Python.
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.
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.
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.
Python Operators Continued
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.
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.
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.
Here, we will focus on adding an ELSE statement to a conditional in Python.
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.
You probably noticed we talked about Boolean values a few times. We would like to provide a short video that explains their application.
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.
Our next task will be to create a function with a parameter.
In this lesson, we will explore another way to organize the definition of a function.
This video provides an example of how to work with functions within functions.
Combining two of Python’s main tools:
- IF statements
We’ll learn how to work with more than one parameter in a function.
When you install Python on your computer, you are also installing some of its built-in functions, such as:
- len(), and more
In this section, we’ll cover these types of Python objects:
We will introduce you to the programming term “method” and then see how to invoke a method in Python.
In this lesson, we’ll introduce you to another important Python concept – slicing.
Let’s discover the tuple – another type of data sequence. Different from a list, the tuple is immutable.
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.
Using Iterations in Python
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.
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.
In this lesson, we will show you how to create a Python list with the range() function.
Let’s see how one could apply the range() function in a for- loop in Python.
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
Time for a more challenging topic – iterating over a dictionary.
Advanced Python tools
The focus of this video is object-oriented programming, OOP. We will explain:
- what it is
- which programming languages support it
It is time to learn about Python modules and packages. This will be necessary in the Python for Finance part of the course, too.
Let’s talk about Python’s standard library. It is a collection of modules available as soon as you install Python.
There are four ways to import a module in Python. You can decide which one you will use when working on your own.
Here, we will present the Python libraries and modules used in this course:
- statsmodels, and more
Arrays are fundamental data structures in any programming language. We will introduce you to them in this lesson.
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.
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.
In this video, we will take the first steps to extract data from online sources.
Here, we will add a few tools and techniques to your skillset, allowing you to analyse the data in your DataFrame.
PART II FINANCE: Calculating and Comparing Rates of Return in Python
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.