Forecasting stock market behavior is a crucial task that requires careful attention as, with the right choices, a successful stock price prediction can result in attractive profits. Due to non-stationary, noisy, interdependent and chaotic data, stock market forecasting is a significant challenge, making it difficult for investors to spend their money in a way that generates profit. Given the importance of this area, machine learning experts have proposed several models that aim to predict the future value of stock groups.
Previous work used traditional machine learning techniques such as support vector regression, random forests, and the Bayesian model. More recently, researchers have turned to deep learning models. Deep neural networks such as LSTM and encoder-decoder are increasingly being used to perform the task of stock market forecasting as they are more efficient in coping with the time-series nature of the data.
StockBot, a new approach proposed by researchers at Stanford University, was introduced to help investors make a daily decision: sell or buy. It is a generalizable price prediction model based on stacked LSTM that aims to predict stock prices for new stocks that do not have sufficient historical data.
Generally, LSTM-based prediction models are trained on the price of a single stock and can only perform the inference using the parameters learned on the same stock. Therefore, the authors proposed to train the network specifically for a type of industry such as “energy” or “finance”. Specifically, the past and future prices of multiple tickers in the same industry are combined to create a mixed training and/or test set. In this way, the model can operate in two modes. Although the training step is performed using the combined set, the prediction step can be performed for all tickers or just one ticker, which is very useful for making a more robust prediction for stocks with insufficient historical data. In addition, a bot is used to perform the buy or sell trades at the time of closing every day in order to maximize profits. The decision is made by using the stock price predictions analytically without any training phase. The algorithm followed by the bot is as follows:
1) Calculate the changes in δi given by δi = sign(ci+1 − ci), where ci is the share price on the i-th day.
2) check the evolutions of δi, following ∆i = δi+1 − δi.
The decision is made with respect to the value of ∆. When ∆ = −2, the bot decides to buy since it indicates the end of a valley. While ∆i = 2 indicates the beginning of a drop, the bot decides to sell.
The authors explored several possibilities in the experimental study by comparing different prediction models, such as individual/stacked many-to-one LSTM architectures and the encoder-decoder model. The results show that one or two stack LSTMs are the best architectures. Also, for simplicity and speed, forecasting several days together has proven to be more interesting than predicting the future day one at a time, since the latter approach can only predict one day at a time. Finally, the decisions made by the bot outperform even the most aggressive ETFs and leading investment products provided by investment firms.
We have seen in this article a new stock market prediction model that allows you to benefit from two great advantages: firstly, predicting stocks that suffers from a limited database thanks to a network trained in several other companies belonging to the same sector of activity. Second, benefit from decision support thanks to a bot that knows when to buy or sell based on daily changes in expected closing values.
This Article is written as a research summary article by Marktechpost Staff based on the research article 'StockBot: Using LSTMs to Predict Stock Prices'. All Credit For This Research Goes To Researchers on This Project. Checkout the paper, gitlab link. Please Don't Forget To Join Our ML Subreddit
Mahmoud is a PhD researcher in machine learning. He also has a
bachelor’s degree in physical sciences and master’s degree in
telecommunication systems and networks. Your current areas of
the research concerns computer vision, stock market prediction and
learning. He produced several scientific articles on the relationship with the person.
identification and study of the robustness and stability of depths
networks
Great article!