Ensemble of machine learning algorithms for cryptocurrency investment with different data resampling methods

Abstract This work proposes a system based on machine learning aimed at creating an investment strategy capable of trading on the cryptocurrency exchange markets. Additionally, with the goal of generating investments with higher returns and lower risk, rather than investing on predictions based on time sampled financial series, a novel method for resampling financial series was developed and employed in this work. For this purpose, the originally time sampled financial series are resampled according to a closing value threshold, thus creating a series prone to obtaining higher returns and lower risk than the original series. Out of these resampled series as well as the original, technical indicators are calculated and fed as inputs to four machine learning algorithms: Logistic Regression, Random Forest, Support Vector Classifier, and Gradient Tree Boosting. Each of these algorithms is responsible for generating a transaction signal. Afterwards, a fifth transaction signal is generated by simply calculating the unweighted average of the four trading signals outputted from the previous algorithms, to improve on their results. In the end, the investment results obtained with the resampled series are compared to the commonly utilized fixed time interval sampling. This work demonstrates that independently of using or not a resampling method, all learning algorithms outperform the Buy and Hold (B&H) strategy in the overwhelming majority of the 100 markets tested. Nevertheless, out of the learning algorithms, the unweighted average obtains the best overall results, namely accuracies up to 59.26% for time resampled series. But most importantly, it is concluded that both alternative resampling methods tested are capable of generating far greater returns and with lower risk relatively to time resampled data.

[1]  J. Friedman Greedy function approximation: A gradient boosting machine. , 2001 .

[2]  Michel Rauchs,et al.  Global Cryptocurrency Benchmarking Study , 2017 .

[3]  Rui Ferreira Neves,et al.  Combining NeuroEvolution and Principal Component Analysis to trade in the financial markets , 2018, Expert Syst. Appl..

[4]  T. Walther,et al.  Bitcoin is not the New Gold – A comparison of volatility, correlation, and portfolio performance , 2018, International Review of Financial Analysis.

[5]  Tianqi Chen,et al.  XGBoost: A Scalable Tree Boosting System , 2016, KDD.

[6]  Gilles Louppe,et al.  Understanding Random Forests: From Theory to Practice , 2014, 1407.7502.

[7]  J. Murphy Technical Analysis of the Futures Markets: A Comprehensive Guide to Trading Methods and Applications , 1986 .

[8]  Akihiko Takahashi,et al.  Bitcoin technical trading with artificial neural network , 2018 .

[9]  Leo Breiman,et al.  Random Forests , 2001, Machine Learning.

[10]  Erdinc Akyildirim,et al.  Prediction of cryptocurrency returns using machine learning , 2020, Annals of Operations Research.

[11]  Amir F. Atiya,et al.  Introduction to financial forecasting , 1996, Applied Intelligence.

[12]  Rich Caruana,et al.  An empirical comparison of supervised learning algorithms , 2006, ICML.

[13]  S. Achelis Technical analysis a to z , 1994 .

[14]  Jingtao Yao,et al.  A case study on using neural networks to perform technical forecasting of forex , 2000, Neurocomputing.

[15]  Zhengyao Jiang,et al.  Cryptocurrency portfolio management with deep reinforcement learning , 2016, 2017 Intelligent Systems Conference (IntelliSys).

[16]  Leo Breiman,et al.  Bagging Predictors , 1996, Machine Learning.

[17]  Arvind Narayanan,et al.  Bitcoin and Cryptocurrency Technologies - A Comprehensive Introduction , 2016 .

[18]  C. Kirkpatrick,et al.  Technical Analysis: The Complete Resource for Financial Market Technicians , 2006 .

[19]  Hsuan-Tien Lin,et al.  A note on Platt’s probabilistic outputs for support vector machines , 2007, Machine Learning.

[20]  Adriano Lorena Inácio de Oliveira,et al.  A method for automatic stock trading combining technical analysis and nearest neighbor classification , 2010, Expert Syst. Appl..

[21]  Corinna Cortes,et al.  Support-Vector Networks , 1995, Machine Learning.

[22]  E. Fama EFFICIENT CAPITAL MARKETS: A REVIEW OF THEORY AND EMPIRICAL WORK* , 1970 .

[23]  Yoav Freund,et al.  A decision-theoretic generalization of on-line learning and an application to boosting , 1997, EuroCOLT.

[24]  Ricardo A. S. Fernandes,et al.  Predicting the direction, maximum, minimum and closing prices of daily Bitcoin exchange rate using machine learning techniques , 2019, Appl. Soft Comput..

[25]  Zhi-Hua Zhou,et al.  Ensemble Methods: Foundations and Algorithms , 2012 .

[26]  Simon Caton,et al.  Predicting the Price of Bitcoin Using Machine Learning , 2018, 2018 26th Euromicro International Conference on Parallel, Distributed and Network-based Processing (PDP).

[27]  Kamil Zbikowski,et al.  Using Volume Weighted Support Vector Machines with walk forward testing and feature selection for the purpose of creating stock trading strategy , 2015, Expert Syst. Appl..

[28]  Marcos M. López de Prado,et al.  Advances in Financial Machine Learning: Numerai's Tournament (seminar slides) , 2018, SSRN Electronic Journal.

[29]  Arash Ghanbari,et al.  Integration of genetic fuzzy systems and artificial neural networks for stock price forecasting , 2010, Knowl. Based Syst..

[30]  Yoav Freund,et al.  Experiments with a New Boosting Algorithm , 1996, ICML.

[31]  Francis Bach,et al.  SAGA: A Fast Incremental Gradient Method With Support for Non-Strongly Convex Composite Objectives , 2014, NIPS.

[32]  Sebastian Raschka,et al.  Python Machine Learning , 2015 .

[33]  Adriano Lorena Inácio de Oliveira,et al.  Expert Systems With Applications , 2022 .

[34]  Kevin P. Murphy,et al.  Machine learning - a probabilistic perspective , 2012, Adaptive computation and machine learning series.

[35]  J. Friedman Stochastic gradient boosting , 2002 .

[36]  George Athanasopoulos,et al.  Forecasting: principles and practice , 2013 .

[37]  Eibe Frank,et al.  Accelerating the XGBoost algorithm using GPU computing , 2017, PeerJ Comput. Sci..