Purpose: Based on FinRL (https://github.com/AI4Finance-Foundation/FinRL), develop an AI stock-selection and trading strategy using Supervised Learning (SL) and Deep Reinforcement Learning (DRL), and deploy it to an online trading platform.
-
Download Dow-30, NASDAQ-100, or S&P 500 data, including Open, High, Low, Close prices, and Volume (OHLCV) and fundamental indicators.
-
Obtain technical indicators and perform feature engineering: technical indicators, such as MACD, RSI; and fundamental indicators, such as EPS, ROI, ROE, P/E, P/S.
-
Stock Selection: Perform supervised machine learning using classic machine learning algorithms (LSTM, Random Forest, SVM, Linear Regression, Lasso, Ridge) to select stocks based on fundamental multi-factor data, and select the top 25% of stocks every quarter; • Reference paper: https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3302088 • GitHub Code: https://github.com/AI4Finance-Foundation/Machine-Learning-for-Stock-Recommendation-IEEE-2018
-
Portfolio Allocation: Use DRL Ensemble strategy (including PPO, DDPG, A2C, SAC, and TD3) in FinRL for asset allocation of the selected stocks, trade with daily data, and output positions; • Reference paper: https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3690996 • GitHub Code: https://github.com/AI4Finance-Foundation/FinRL-Meta/blob/master/tutorials/1-Introduction/FinRL_PortfolioAllocation_NeurIPS_2020.ipynb
- Deployment: Deploy strategies to online trading platforms such as Alpaca for paper trading
• GitHub Code: https://github.com/AI4Finance-Foundation/FinRL-Meta/blob/master/tutorials/3-Practical/FinRL_PaperTrading_Demo.ipynb
Disclaimer: Nothing herein is financial advice, and NOT a recommendation to trade real money. Please use common sense and always first consult a professional before trading or investing.