Machine Learning in Asset Management

Follow this link for SSRN paper.

Part One

If you feel like citing something you can use:

Snow, D (2020). Machine Learning in Asset Management—Part 1: Portfolio Construction—Trading Strategies. The Journal of Financial Data Science, Winter 2020, 2 (1) 10-23.

This is the first in a series of articles dealing with machine learning in asset management. Asset management can be broken into the following tasks: (1) portfolio construction, (2) risk management, (3) capital management, (4) infrastructure and deployment, and (5) sales and marketing. This article focuses on portfolio construction using machine learning. Historically, algorithmic trading could be more narrowly defined as the automation of sell-side trade execution, but since the introduction of more advanced algorithms, the definition has grown to include idea generation, alpha factor design, asset allocation, position sizing, and the testing of strategies. Machine learning, from the vantage of a decision-making tool, can help in all these areas.

Editors: Frank J. Fabozzi | Marcos Lopéz de Prado | Joseph Simonian

This paper investigates various machine learning trading and portfolio optimisation models and techniques. The notebooks to this paper are Python based. By last count there are about 15 distinct trading varieties and around 100 trading strategies. Code and data are made available where appropriate. The hope is that this paper will organically grow with future developments in machine learning and data processing techniques. All feedback, contributions and criticisms are highly encouraged. You can find my contact details on the website, FirmAI.

Trading Strategies


1. Tiny CTA
Resources:
See this paper and blog for further explanation.
Data, Code


2. Tiny RL
Resources:
See this paper and/or blog for further explanation.
Data, Code


3. Tiny VIX CMF
Resources:
Data, Code


4. Quantamental
Resources:
Web-scrapers, Data, Code, Interactive Report, Paper.


5. Earnings Surprise
Resources:
Code, Paper


6. Bankruptcy Prediction
Resources:
Data, Code, Paper


7. Filing Outcomes
Resources:
Data


8. Credit Rating Arbitrage
Resources:
Code


9. Factor Investing:
Resources:
Paper, Code, Data


10. Systematic Global Macro
Resources:
Data, Code


11. Mixture Models
Resources:
Data, Code


12. Evolutionary
Resources:
Code, Repo


13. Agent Strategy
Resources:
Code, Repo


14. Stacked Trading
Resources:
Code, Blog


15. Deep Trading
Resources:
Code, Repo


Part Two:

Snow, D (2020). Machine Learning in Asset Management—Part 2: Portfolio Construction—Weight Optimization. The Journal of Financial Data Science, Spring 2020, 2 (1) 10-23.

This is the second in a series of articles dealing with machine learning in asset management. This article focuses on portfolio weighting using machine learning. Following from the previous article (Snow 2020), which looked at trading strategies, this article identifies different weight optimization methods for supervised, unsupervised, and reinforcement learning frameworks. In total, seven submethods are summarized with the code made available for further exploration.

Weight Optimisation (JFDS)


1. Deep Portfolio
Resources:
Data, Code, Paper


2. Linear Regression
Resources:
Code, Paper


3. Bayesian Sentiment
Resources:
Code


4. PCA and Hierarchical
Resource:
Code


5. HRP
Resources:
Data, Code


6. Network Graph
Resources:
Code


7. RL Deep Deterministic
Resources:
Code

Weight Optimisation (SSRN)


1. Online Portfolio Selection (OLPS)
Resources:
Code

Other (SSRN)


1. GANVaR
Resources:
Code


All Data and Code


Top 1% SSRN paper downloads

All Time Top 10 Paper :

Applied Computing eJournal, CompSciRN: Algorithms, CompSciRN: Clustering, Banking & Financial Institutions eJournals, CompSciRN: Artificial Intelligence, Econometric Modeling: Capital Markets - Portfolio Theory eJournal, Machine Learning eJournal

Other Projects

Other FirmAI projects include AtsPy automating Python's best time series models, PandaPy a data structure solutions that has the speed of NumPy and the usability of Pandas (10x to 50x faster), FairPut a holistic approach to implement fair machine learning outputs at the individual and group level, PandasVault a package for advanced pandas functions and code snippets, and ICR an interactive and fully automated corporate report built with Python.