*3.1. Machine Learning Prediction Methods*

Felizardo et al. (2019) presented a comparative study of price prediction performance among several machine learning models: long short-term memory (LSTM), WaveNet, support vector machine (SVM), and random forest (RF). The results indicated that for time-series data, the LSTM model tends to perform better than other machine learning models. The research of Tandon et al. (2019) gave a similar conclusion. They applied three di fferent machine-learning methods to forecast the Bitcoin price, and compared their prediction ability. As a result, the RNN (recurrent neural network) with LSTM gave a lower mean absolute error than the random forest and linear regression models. Many research focuses on improving the LSTM model to increase forecasting accuracy. Wu et al. (2018) proposed an LSTM called LSTM with AR(2) model to forecast Bitcoin's daily price. The conventional LSTM model only considers the previous price of to predict the current price; instead, the LSTM with AR(2) takes the previous two days' prices into account. The experimental results demonstrated that the proposed model with AR(2) achieved a better forecasting accuracy with a lower mean squared error. Hashish et al. (2019) proposed the addition of hidden Markov models (HMMs) to the conventional LSTM. The HMM was used to describe the historical movements of Bitcoin. The proposed hybrid of HMM and LSTM outperformed the traditional forecasting of LSTM by decreasing the mean squared error from 49.089 to 33.888. The main drawback of the machine-learning models is that these models need high computational capacity, and so the execution time of the forecasting process is very time consuming. Thus, in this paper we focus on time-series prediction models. Support vector machine, latent source, and multilayer perceptron models work better for classification problems. The LSTM model performs well in solving long-term dependency problems, which means it is suitable for price prediction. However, the LSTM model needs a long computation time and has a large memory requirement.
