Recurrent Neural Networks (RNNs) are powerful and robust types of ANNs that belong to the most promising algorithms in use because of their internal memory [1]}. This internal memory remembers its inputs and helps RNN to find solutions for a vast variety of problems [2]}. RNN is optimized with respect to its weights to fit the training data by adopting a technique called backpropagation that requires the gradient of the RNN. However, the gradient of RNN may vanish and explode during the optimization routing which hampers RNN's learning ability of long data sequences [3]}. As a solution to these two problems [4]}, the LSTM architecture [5]}, which is a special type of RNN, is often used. LSTMs are explicitly designed to learn long-term dependencies of time-dependent data by remembering information for long periods. LSTM performs faithful learning in applications such as speech recognition [6]}, [7]} and text processing [8]}, [9]}. Moreover, LSTM is also suitable for complex data sequences such as stock time series extracted from financial markets because it has internal memory, has capability of customization, and is free from gradient-related issues.
