Financial Machine Learning and Data Science
A curated list of practical financial machine learning (FinML) tools and applications. This collection is primarily in Python.
If you want to contribute to this list (please do), send me a pull request or contact me @dereknow or on linkedin. Also, a listed repository should be deprecated if:
- Repository's owner explicitly say that "this library is not maintained".
- Not committed for long time (2~3 years).
Trading
Deep Learning
- Deep Learning - Technical experimentations to beat the stock market using deep learning.
- Deep Learning II - Tensorflow Regression.
- Deep Learning III - Algorithmic trading with deep learning experiments.
- Deep Learning IV - Bulbea: Deep Learning based Python Library.
- LTSM GRU - Stock Market Forecasting using LSTM\GRU.
-
- Multilayer neural network architecture for stock return prediction.
- LTSM Recurrent - OHLC Average Prediction of Apple Inc. Using LSTM Recurrent Neural Network.
- ARIMA-LTSM Hybrid - Hybrid model to predict future price correlation coefficients of two assets.
- Neural Network - Neural networks to predict stock prices.
- AI Trading - AI to predict stock market movements.
Reinforcement Learning
- RL Trading - A collection of 25+ Reinforcement Learning Trading Strategies - Google Colab.
- RL - OpenGym with Deep Q-learning and Policy Gradient.
- RL II - reinforcement learning on stock market and agent tries to learn trading.
- RL III - Github - Deep Reinforcement Learning based Trading Agent for Bitcoin.
- RL IV - Reinforcement Learning for finance.
- RL V - Building an Agent to Trade with Reinforcement Learning.
- Pair Trading RL - Using deep actor-critic model to learn best strategies in pair trading.
Other Models
- Mixture Models I - Mixture models to predict market bottoms.
- Mixture Models II - Mixture models and stock trading.
- Scikit-learn Stock Prediction - Using python and scikit-learn to make stock predictions.
- Fundamental LT Forecasts - Research in investment finance for long term forecasts.
- Short-Term Movement Cues - Identify social/historical cues for short term stock movement.
- Trend Following - A futures trend following portfolio investment strategy.
Data Processing Techniques and Transformations
- Advanced ML - Exercises too Financial Machine Learning (De Prado).
- Advanced ML II - More implementations of Financial Machine Learning (De Prado).
Portfolio Management
Portfolio Selection and Optimisation
- Distribution Characteristic Optimisation - Extends classical portfolio optimisation to take the skewness and kurtosis of the distribution of market invariants into account.
- Reinforcement Learning - Reinforcement Learning for Portfolio Management.
- Efficient Frontier - Modern Portfolio Theory.
- Policy Gradient Portfolio - A Deep Reinforcement Learning Framework for the Financial Portfolio Management Problem.
- Deep Portfolio Theory - Autoencoder framework for portfolio selection.
- 401K Portfolio Optimisation - Portfolio analyses and optimisation for 401K.
- Online Portfolio Selection - ****Comparing OLPS algorithms on a diversified set of ETFs.
- OLMAR Algorithm - Relative importance of each component of the OLMAR algorithm.
- Modern Portfolio Theory - Universal portfolios; modern portfolio theory.
Factor and Risk Analysis:
- Various Risk Measures - Risk measures and factors for alternative and responsible investments.
- Pyfolio - Portfolio and risk analytics in Python.
- Risk Basic - Active portfolio risk management .
- CAPM - Expected returns using CAPM.
- Factor Analysis - Factor analysis for mutual funds.
- VaR GaN - Estimate Value-at-Risk for market risk management using Keras and TensorFlow.
- VaR - Value-at-risk calculations.
- Python for Finance - Various financial notebooks.
- Performance Analysis - Performance analysis of predictive (alpha) stock factors.
- Quant Finance - General quant repository.
- Risk and Return - Riskiness of portfolios and assets.
- Convex Optimisation - Convex Optimization for Finance.
- Factor Analysis - Factor strategy notebooks.
- Statistical Finance - Various financial experiments.
Techniques
Unsupervised:
- PCA Pairs Trading - PCA, Factor Returns, and trading strategies.
- Fund Clusters - Data exploration of fund clusters.
- VRA Stock Embedding - Variational Reccurrent Autoencoder for Embedding stocks to vectors based on the price history.
- Industry Clustering - Clustering of industries.
- Pairs Trading - Finding pairs with cluster analysis.
- Industry Clustering - Project to cluster industries according to financial attributes.
Textual:
- NLP - This project assembles a lot of NLP operations needed for finance domain.
- Earning call transcripts - Correlation between mutual fund investment decision and earning call transcripts.
- Buzzwords - Return performance and mutual fund selection.
- Fund classification - Fund classification using text mining and NLP.
- NLP Event - Applying Deep Learning and NLP in Quantitative Trading.
- Financial Sentiment Analysis - Sentiment, distance and proportion analysis for trading signals.
- Financial Statement Sentiment - Extracting sentiment from financial statements using neural networks.
- Extensive NLP - Comprehensive NLP techniques for accounting research.
- Accounting Anomalies - Using deep-learning frameworks to identify accounting anomalies.
Other Assets
Derivatives and Hedging:
- Options - Introduction to options.
- Derivative Markets - The economics of futures, futures, options, and swaps.
- Black Scholes - Options pricing.
- Computational Derivatives - Projects focusing on investigating simulations and computational techniques applied in finance.
- Reinforcement Learning - Hedging portfolios with reinforcement learning.
- Delta Hedging - Advanced derivatives.
- Options Risk Measures - Efficient financial risk estimation via computer experiment design (regression + variance-reduced sampling).
- Derivatives Python - Derivative analytics with Python.
- Volatility and Variance Derivatives - Volatility derivatives analytics.
- Options - Black Scholes and Copula.
- Option Strategies - Valuation of Vanilla and Exotic option strategies (Butterfly, Risk Reversal etc.) with widget animations.
- Derman - Binomial tree for American call.
- Hull White - Callable Bond, Hull White.
Fixed Income
- Vasicek - Bootstrapping and interpolation.
- Binomial Tree - Utility functions in fixed income securities.
- Corporate Bonds - Predicting the buying and selling volume of the corporate bonds.
Alternative Finance
- Kiva Crowdfunding - Exploratory data analysis.
- Venture Capital - Insight into a new founder to make data-driven investment decisions.
- Venture Capital NN - Cox-PH neural network predictions for VC/innovations finance research.
- Private Equity - Valuation models.
- VC OLS - VC regression.
- Watch Valuation - Analysis of luxury watch data to classify whether a certain model is likely to be over- or undervalued.
- Art Valuation - Art evaluation analytics.
- Blockchain - Repository for distributed autonomous investment banking.
Extended Research:
- HFT - High frequency trading.
- Deep Portfolio - Deep learning for finance Predict volume of bonds.
- Mathematical Finance - Notebooks for math and financial tutorials.
- NLP Finance Papers - Curating quantitative finance papers using machine learning.
- Simulation - Investigating simulations as part of computational finance.
- Market Crash Prediction - Predicting market crashes using an LPPL model.
- Commodity - Commodity influence over Brazilian stocks.
- Finance Graph Theory - Modelling Contentedness of Firms in Financial Markets with Heterogeneous Agents.
- Real Estate Property Fraud - Unsupervised fraud detection model that can identify likely candidates of fraud.
- Behavioural Economics - Behavioural Economics and Finance Python Notebooks.
- Bayesian Finance - Notebook PyMC3 implementation.
- Bayesian Finance I - Stochastic Process Calibration using Bayesian Inference & Probabilistic Programs.
- Currency PCA - Forex spots PCA.
- Backtests - Trading data and algorithms.
- High Frequency - A Python toolkit for high-frequency trade research.
- Financial Economics - Financial Economics Models.
- Critical Transitions - Detecting critical transitions in financial networks with topological data analysis.
- Economic Foundations - Basic economic models.
- Corporate Finance - Basic corporate finance.
- Applied Corporate Finance - Studies the empirical behaviours in stock market.
- M&A - Mergers and Acquisitions.
- Life-cycle - Company life cycle.
- Computational Finance - Applied Computational Economics and Finance.
- Liquidity and Momentum - Various factors and portfolio constructions.
Courses
- Mathematical Finance - NYU Math-GA 2048: Scientific Computing in Finance.
- Algo Trading - Intro to algo trading.
- Python for Finance - CEU python for finance course material.
- Handson Python for Finance - Hands-on Python for Finance published by Packt.
- Machine Learning for Trading - Notebooks, resources and references accompanying the book Machine Learning for Algorithmic Trading.
- ML Specialisation - Machine Learning in Finance.
- Risk Management - Finance risk engagement course resources.
- Basic Investments - Basic investment tools in python.
- Basic Derivatives - Basic forward contracts and hedging.
- Basic Finance - Source code notebooks basic finance applications.
Data
- Employee Count SEC Filings
- SEC Parsing
- Open Edgar
- EDGAR
- IRS
- Rating Industries
- Web Scraping (FirmAI)
- Financial Corporate
- Non-financial Corporate
- http://finance.yahoo.com/
- https://fred.stlouisfed.org/
- https://stooq.com
- https://github.com/timestocome/StockMarketData
Personal Papers
- Financial Machine Learning Regulation
- Predicting Restaurant Facility Closures
- Predicting Corporate Bankruptcies
- Predicting Earnings Surprises
- Machine Learning in Asset Management
Colleges, Centers and Departments
- NYU FRE
- Cornell University
- Courant NYU
- Oxford Man
- Stanford Advanced Financial Technologies
- Berkley CIFT