This is the code for this video on Youtube by Siraj Raval on Q Learning for Trading as part of the Move 37 course at School of AI. Credits for this code go to ShuaiW.
Related post: Teach Machine to Trade
Python 2.7. To install all the libraries, run pip install -r requirements.txt
agent.py: a Deep Q learning agentenvs.py: a simple 3-stock trading environmentmodel.py: a multi-layer perceptron as the function approximatorutils.py: some utility functionsrun.py: train/test logicrequirement.txt: all dependenciesdata/: 3 csv files with IBM, MSFT, and QCOM stock prices from Jan 3rd, 2000 to Dec 27, 2017 (5629 days). The data was retrieved using Alpha Vantage API
To train a Deep Q agent, run python run.py --mode train. There are other parameters and I encourage you look at the run.py script. After training, a trained model as well as the portfolio value history at episode end would be saved to disk.
To test the model performance, run python run.py --mode test --weights <trained_model>, where <trained_model> points to the local model weights file. Test data portfolio value history at episode end would be saved to disk.