Python & Machine Learning in Financial Analysis 2021

Complete course on using Python, Machine learning, and Deep Learning in Finance with a complete coding (step-by-step guide)

What you’ll learn

PYTHON & MACHINE LEARNING
Python & Machine Learning
  • Financial Data and Preprocessing: explores how financial data is different from other types of data commonly used in machine learning tasks. You will be able to use the functions provided to download financial data from a number of sources (such as Yahoo Finance and Quandl) and preprocess it for further analysis. Finally, you will learn how to investigate whether the data follows the stylized facts of asset returns.
  • Technical Analysis in Python: demonstrates some fundamental basics of technical analysis as well as how to quickly create elegant dashboards in Python. You will be able to draw some insights into patterns emerging from a selection of the most commonly used metrics (such as MACD and RSI).
  • Time Series Modeling: Time Series Modeling, introduces the basics of time series modeling (including time series decomposition and statistical stationarity). Then, we look at two of the most widely used approaches of time series modeling—exponential smoothing methods and ARIMA class models. Lastly, we present a novel approach to modeling a time series using the additive model from Facebook’s Prophet library.
  • Multi-Factor Models: shows you how to estimate various factor models in Python. We start with the simplest one-factor model and then explain how to estimate more advanced three-, four-, and five-factor models.
  • Modeling Volatility with GARCH Class Models: introduces you to the concept of volatility forecasting using (G)ARCH class models, how to choose the best-fitting model, and how to interpret your results.
  • Monte Carlo Simulations in Finance: introduces you to the concept of Monte Carlo simulations and how to use them for simulating stock prices, the valuation of European/American options, and for calculating the VaR.
  • Asset Allocation in Python: introduces the concept of Modern Portfolio Theory and shows you how to obtain the Efficient Frontier in Python. Then, we look at how to identify specific portfolios, such as minimum variance or the maximum Sharpe ratio. We also show you how to evaluate the performance of such portfolios.
  • Identifying Credit Default with Machine Learning: presents a case of using machine learning for predicting credit default. You will get to know the state-of-the-art classification algorithms, learn how to tune the hyperparameters of the models, and handle problems with imbalanced data.
  • Advanced Machine Learning Models in Finance: introduces you to a selection of advanced classifiers (including stacking multiple models). Additionally, we look at how to deal with class imbalance, use Bayesian optimization for hyperparameter tuning, and retrieve feature importance from a model.
  • Deep Learning in Finance: demonstrates how to use deep learning techniques for working with time series and tabular data. The networks will be trained using PyTorch.

Course content

10 sections • 95 lectures • 20h 57m total lengthExpand all sections

Financial Data and Preprocessing11 lectures • 1hr 53min

  • Introducing Python and its advantagesPreview09:13
  • What is financial analysis and what will you learn in this course?Preview04:40
  • Introduction02:42
  • Getting data from Yahoo Finance05:50
  • Getting data from Quandl04:14
  • Converting prices to returns13:52
  • Changing frequency09:29
  • Visualizing time series data14:10
  • Identifying outliers13:10
  • Investigating stylized facts of asset returns36:03
  • Source codes of section 100:01

Technical Analysis in Python10 lectures • 2hr 9min

  • Introduction03:02
  • Creating a candlestick chart06:59
  • Simple Moving Average (SMA) and Exponential Moving Average (EMA)06:06
  • Bollinger Bands05:46
  • Backtesting a strategy based on simple moving average31:37
  • Calculating Bollinger Bands and testing a buy/sell strategy29:42
  • TA-Lib library installation tutorial02:31
  • Calculating the relative strength index and testing a long/short strategy14:33
  • Building an interactive dashboard for TA28:52
  • Source codes of section 200:01

Time Series Modeling11 lectures • 2hr 12min

  • Introduction01:23
  • Decomposing time series12:45
  • Testing for stationarity in time series18:55
  • Download Library00:02
  • Correcting for stationarity in time series20:15
  • Article (1) about Exponential Smoothing Methods (ESM)01:33
  • Article (2) about Time series exponential smoothing05:36
  • Modeling time series with exponential smoothing methods25:46
  • Modeling time series with ARIMA class models32:41
  • Forecasting using ARIMA class models12:45
  • Source codes of Section 300:01

Multi-Factor Models8 lectures • 1hr 16min

  • Introduction01:51
  • Implementing the CAPM in Python12:16
  • Download csv file00:02
  • Implementing the Fama-French three-factor model in Python16:36
  • Implementing the rolling three-factor model on a portfolio of assets19:57
  • Implementing the four and five-factor models in Python21:18
  • More about Multi-factor models03:35
  • Source codes of section 400:01

Modeling Volatility with GARCH Class Models11 lectures • 1hr 3min

  • Introduction04:16
  • Explaining stock returns’ volatility with ARCH models11:27
  • There’s more about Explaining stock returns’ volatility with ARCH models00:39
  • Explaining stock returns’ volatility with GARCH models06:32
  • There’s more about Explaining stock returns’ volatility with GARCH models01:16
  • Implementing a CCC-GARCH model for multivariate volatility forecasting18:27
  • How to program with Python and R in the same Jupyter notebook02:54
  • Download Dataset (csv file)00:02
  • Forecasting the conditional covariance matrix using DCC-GARCH (Python and R)15:20
  • There’s more about Forecasting the conditional covariance matrix using DCC-GARCH01:48
  • Source codes of Section 500:01

Monte Carlo Simulations in Finance8 lectures • 1hr 54min

  • Introduction03:30
  • Simulating stock price dynamics using Geometric Brownian Motion38:08
  • Download chapter_6_utils00:02
  • Pricing European options using simulations15:38
  • Pricing American Options with Least Squares Monte Carlo19:37
  • Pricing American Options using Quantlib18:15
  • Estimating Value-at-risk using Monte Carlo19:14
  • Source codes of Section 600:01

Asset Allocation in Python5 lectures • 1hr 3min

  • Introduction04:52
  • Evaluating the performance of a basic 1/n portfolio12:26
  • Finding the Efficient Frontier using Monte Carlo simulations22:41
  • Finding the Efficient Frontier using optimization with scipy22:57
  • Source codes of section 700:01

Identifying Credit Default with Machine Learning12 lectures • 2hr 41min

  • Introduction04:20
  • Download credit card default.csv00:02
  • Loading the data and managing data types18:01
  • Exploratory Data Analysis36:16
  • Splitting the data into training and test sets09:16
  • Dealing with missing values14:11
  • Encoding categorical variables17:09
  • Download chapter_8_utils00:02
  • Fitting a decision tree classifier18:36
  • Implementing scikit-learns pipelines18:07
  • Tuning hyperparameters using grid search and cross-validation24:54
  • Source codes of Section 800:01

Advanced Machine Learning Models in Finance12 lectures • 3hr 15min

  • Introduction03:29
  • Download chapter_9_utils and csv files00:02
  • Investigating advanced classifiers24:37
  • There’s more about use advanced classifiers to achieve better results04:58
  • Codes of There’s more about use advanced classifiers to achieve better results35:36
  • Using stacking for improved performance16:12
  • Investigating the feature importance38:47
  • Investigating different approaches to handling imbalanced data24:29
  • There’s more about Investigating different approaches to handling imbalanced dat02:46
  • Download Trials.p files00:02
  • Bayesian Hyperparameter Optimization43:53
  • Source codes of section 900:01

Deep Learning in Finance7 lectures • 3hr 31min

  • Introduction07:10
  • Download chapter_10_utils and credit_card_default.csv00:02
  • Deep Learning for Tabular Data33:12
  • Multilayer perceptrons for time series forecasting01:05:26
  • Convolutional neural networks (CNN) for time series forecasting54:23
  • Recurrent neural networks (RNN) for time series forecasting51:00
  • Source codes of section 1000:01

Requirements

  • Basic knowledge of Python and statistics

Description

In this course, you will learn financial analysis using the Python programming language. Use libraries related to financial issues and learn how to install and set them up.

You will know various things in the field of finance, such as:

Getting data from Yahoo Finance and Quandl

Changing frequency

Visualizing time series data

Creating a candlestick chart

Calculating Bollinger Bands and testing a buy/sell strategy

Building an interactive dashboard for TA

Modeling time series with exponential smoothing methods and ARIMA class models

Forecasting using ARIMA class models

Implementing the Capital Asset Pricing Model in Python

Implementing the Fama-French three-factor model, rolling three-factor model on a portfolio of assets, and  four- and five-factor models in Python

Explaining stock returns’ volatility with ARCH and GARCH models

Implementing a CCC-GARCH model for multivariate volatility forecasting

Forecasting a conditional covariance matrix using DCC-GARCH

Simulating stock price dynamics using Geometric Brownian Motion

Pricing European options using simulations

Pricing American options with Least Squares Monte Carlo and Pricing it using Quantlib

Estimating value-at-risk using Monte Carlo

Evaluating the performance of a basic 1/n portfolio

Finding the Efficient Frontier using Monte Carlo simulations and optimization with scipy

Identifying Credit Default with Machine Learning

Loading data and managing data types

Exploratory data analysis

Splitting data into training and test sets

Dealing with missing values

Encoding categorical variables

Fitting a decision tree classifier

Implementing sci-kit-learn’s pipelines

Investigating advanced classifiers

Using stacking for improved performance

Investigating the feature importance

Investigating different approaches to handling imbalanced data

Bayesian hyperparameter optimization

Tuning hyperparameters using grid search and cross-validation

Deep Learning in Finance

Deep learning for tabular data

Multilayer perceptrons for time series forecasting

Convolutional neural networks for time series forecasting

Recurrent neural networks for time series forecasting

And many other cases …

And you will be able to implement all of these issues in Python.

All the steps of coding are taught step by step and all the codes will be provided to you to use in your projects and articles.

Who this course is for:

  • Financial analysts
  • Stock market and cryptocurrencies traders
  • Data analysts
  • Data scientists
  • Python developers
  • Students and researchers in the field of finance

Instructor

S. EMADEDIN HASHEMI
S. Emadedin Hashemi

S. Emadedin Hashemi Industrial Engineer, Financial analyst and Data Scientist

  • 4.3 Instructor Rating
  • 68 Reviews
  • 26,765 Students
  • 1 Course

S.E. Hashemi is an Industrial Engineer.

In the Department of Industrial Engineering, he teaches Statistical quality control, Engineering economics, Operations research, and Industrial systems design. In addition to topics such as Mathematical modeling, Optimization algorithms, Multi-criteria decision making, Systems analysis, Supply chain and Logistics, he is active in Data analysis and Data-driven systems analysis using Artificial intelligence and Machine learning algorithms. His activities also include consulting industrial companies and designing management systems

Leave a Comment