A stock trading bot using sentiment analysis and reinforcement learning.
Sredictio is a stock trading bot that uses sentiment analysis and stock data to assist you in buying/selling stocks.
Sredictio stands for Stock Prediction.
Sredictio, at its core, is a A2C (a.k.a. Advantage Actor Critic) agent that has been trained against stock and sentiment data to come up with actions (buy, sell or hold) to maximise profit.
The stock data was obtained from Yahoo Finance's historical data section.
The sentiment data was obtained by using NLTK's VADER sentiment analysis tool (for what it can do, go here) against the Straits Times' articles on a particular company.
The Extra Resources folder currently contains three spreadsheets.
Sredictio Data Tracking.xlsxis used to document all the tests done on the data and on the A2C agent. The spreadsheet currently contains 4 previous tests on the data and on the model.Sredictio Field Tests.xlsxdocuments the previous field tests. In the last field test, four stocks, Facebook (FB), Google/Alphabet Inc. (GOOGL), Boeing (BA) and ST Engineering (S63.SI), were used as benchmarks for the A2C agent.
The latest model (and previous models) can be found under the Models directory.
The model is a .zip file, containing the parameters of the model.
For more on the model and its format, refer to here for more info.
- 2019-12-10: Version 0.1.0: Initial Update was released.
- 2019-12-10: Version 0.1.1 was released. It was an update to "[tidy] up the files in the repository".
- 2019-12-11: Version 0.1.2 was released. It was "a hotfix for the update to
yahoo-fin, which... [broke] the stock obtaining mechanism of Sredictio." - 2019-12-20: Version 0.2.0: The Quality of Life Update was released.
- Stock data taken from Yahoo Finance.
- Sentiment data scraped from Straits Times articles.
- Cover image taken from pensoft.co.ke.
- Thanks to OpenAI and DeepMind for sharing these open-source Deep Learning resources to us!