Using Python and machine learning in financial analysis with step-by-step coding (with all codes)
☑ You will be able to use the functions provided to download financial data from a number of sources and preprocess it for further analysis
☑ 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)
☑ Introduces the basics of time series modeling. Then, we look at exponential smoothing methods and ARIMA class models.
☑ shows you how to estimate various factor models in Python. one ,three-, four-, and five-factor 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.
☑ Introduces concept of Monte Carlo simulations and use them for simulating stock prices, the valuation of European/American options and calculating the VaR.
☑ Introduces the Modern Portfolio Theory and shows you how to obtain the Efficient Frontier in Python. how to evaluate the performance of such portfolios.
☑ Presents a case of using machine learning for predicting credit default. You will get to know tune the hyperparameters of the models and handle imbalances
☑ Introduces you to a selection of advanced classifiers (including stacking multiple models)and how to deal with class imbalance, use Bayesian optimization.
☑ Demonstrates how to use deep learning techniques for working with time series and tabular data. The networks will be trained using PyTorch.
In this course, you will become familiar with a variety of up-to-date financial analysis content, as well as algorithms techniques of machine learning in the Python environment, where you can perform highly specialized financial analysis. You will get acquainted with technical and fundamental analysis and you will use different tools for your analysis. You will get acquainted with technical and fundamental analysis and you will use different tools for your analysis. You will learn the Python environment completely. You will also learn deep learning algorithms and artificial neural networks that can greatly enhance your financial analysis skills and expertise.
This tutorial begins by exploring various ways of downloading financial data and preparing it for modeling. We check the basic statistical properties of asset prices and returns, and investigate the existence of so-called stylized facts. We then calculate popular indicators used in technical analysis (such as Bollinger Bands, Moving Average Convergence Divergence (MACD), and Relative Strength Index (RSI)) and backtest automatic trading strategies built on their basis.
The next section introduces time series analysis and explores popular models such as exponential smoothing, AutoRegressive Integrated Moving Average (ARIMA), and Generalized Autoregressive Conditional Heteroskedasticity (GARCH) (including multivariate specifications). We also introduce you to factor models, including the famous Capital Asset Pricing Model (CAPM) and the Fama-French three-factor model. We end this section by demonstrating different ways to optimize asset allocation, and we use Monte Carlo simulations for tasks such as calculating the price of American options or estimating the Value at Risk (VaR).
In the last part of the course, we carry out an entire data science project in the financial domain. We approach credit card fraud/default problems using advanced classifiers such as random forest, XGBoost, LightGBM, stacked models, and many more. We also tune the hyperparameters of the models (including Bayesian optimization) and handle class imbalance. We conclude the book by demonstrating how deep learning (using PyTorch) can solve numerous financial problems.
English
Language
Financial Data and Preprocessing
Introduction of Python Programming in Financial Analysis
Introduction of Financial Analysis
Introduction
Getting data from Yahoo Finance
Getting data from Quandl
Converting prices to returns
Changing frequency
Visualizing time series data
Identifying outliers
Investigating stylized facts of asset returns
Codes of Chapter 1
Technical Analysis in Python
Introduction
requirements of chapter 2
Creating a candlestick chart
Backtesting a strategy based on simple moving average
Calculating Bollinger Bands and testing a buy/sell strategy
Calculating the relative strength index and testing a long/short strategy
Building an interactive dashboard for TA
Codes of Chapter 2
Time Series Modeling
Introduction
requirements of chapter 3
Decomposing time series
Testing for stationarity in time series
Correcting for stationarity in time series
Modeling time series with exponential smoothing methods
Modeling time series with ARIMA class models
Forecasting using ARIMA class models
Codes of Chapter 3
Multi-Factor Models
Introduction
requirements of chapter 4
Implementing the CAPM in Python
Implementing the Fama-French three-factor model in Python
Implementing the rolling three-factor model on a portfolio of assets
Implementing the four- and five-factor models in Python
Codes of Chapter 4
Modeling Volatility with GARCH Class Models
Introduction
requirements of chapter 5
Explaining stock returns’ volatility with ARCH models
Explaining stock returns’ volatility with GARCH models
Implementing a CCC-GARCH model for multivariate volatility forecasting
Forecasting a conditional covariance matrix using DCC-GARCH
Codes of Chapter 5
Monte Carlo Simulations in Finance
Introduction
requirements of chapter 6
Simulating stock price dynamics using Geometric Brownian Motion
Pricing European options using simulations
Pricing American options with Least Squares Monte Carlo
Pricing American options using Quantlib
Estimating value-at-risk using Monte Carlo
Codes of Chapter 6
Asset Allocation in Python
Introduction
Evaluating the performance of a basic 1/n portfolio
Finding the Efficient Frontier using Monte Carlo simulations
Finding the Efficient Frontier using optimization with scipy
Codes of Chapter 7
Identifying Credit Default with Machine Learning
Introduction
requirements of chapter 8
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 scikit-learn’s pipelines
Tuning hyperparameters using grid search and cross-validation
Codes of Chapter 8
Advanced Machine Learning Models in Finance
Introduction
requirements of chapter 9
Investigating advanced classifiers
Theres more about use advanced classifiers to achieve better results
Using stacking for improved performance
Investigating the feature importance
Investigating different approaches to handling imbalanced data
Bayesian hyperparameter optimization
Codes of Chapter 9
Deep Learning in Finance
Introduction
requirements of chapter 10
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
Codes of Chapter 10