Predicting different stock prices using Long Short-Term Memory Recurrent Neural Network in Python using TensorFlow 2 and Keras. Highly customizable for different stock tickers. Current ticker: AMZN (Amazon).
View deployment here:
GitHub Pages
- Install the required libraries by running pip install -r requirements.txt.
- Run train.py to train our model. (This will take some time approx. 4 hours)
- After training ends, run tensorboard --logdir="logs" to view the Huber loss as specified in the LOSS parameter, the curve is the validation loss. You can also increase the number of epochs to get much better results.
- Run test.py to test the model and to output the result
Note: the project is currently running on GitHub Actions, you can take a look at the example output down below. GitHub Actions allows the code to be ran offsite hence freeing up your development computer.
[
{
"Ticker": "AMZN",
"Future price after": "1 day",
"Predicted price for 2023-07-02": "130.12$",
"Mean absolute error": 0.6441718636608356,
"Accuracy score": 0.5019157088122606,
"Total buy profit": -16.256482042372127,
"Total sell profit": -22.304966658353763,
"Total profit": -38.56144870072589,
"Profit per trade": -0.02954900283580528,
"Generated": "2023-07-01 20:11:33.323003+08:00"
}
]
Ticker | Future price after | Predicted price for 2023-07-02 | Mean absolute error | Accuracy score | Total buy profit | Total sell profit | Total profit | Profit per trade | Generated |
---|---|---|---|---|---|---|---|---|---|
AMZN | 1 day | 130.12$ | 0.6441718636608356 | 0.5019157088122606 | -16.256482042372127 | -22.304966658353763 | -38.56144870072589 | -0.02954900283580528 | 2023-07-01 20:11:33.323003+08:00 |
Disclaimer: This is not finanical advice. Please don't bet your life savings on this.