A Comprehensive Analysis of Machine Learning Models for Algorithmic Trading of Bitcoin

ArXiv ID: 2407.18334 “View on arXiv”

Authors: Unknown

Abstract

This study evaluates the performance of 41 machine learning models, including 21 classifiers and 20 regressors, in predicting Bitcoin prices for algorithmic trading. By examining these models under various market conditions, we highlight their accuracy, robustness, and adaptability to the volatile cryptocurrency market. Our comprehensive analysis reveals the strengths and limitations of each model, providing critical insights for developing effective trading strategies. We employ both machine learning metrics (e.g., Mean Absolute Error, Root Mean Squared Error) and trading metrics (e.g., Profit and Loss percentage, Sharpe Ratio) to assess model performance. Our evaluation includes backtesting on historical data, forward testing on recent unseen data, and real-world trading scenarios, ensuring the robustness and practical applicability of our models. Key findings demonstrate that certain models, such as Random Forest and Stochastic Gradient Descent, outperform others in terms of profit and risk management. These insights offer valuable guidance for traders and researchers aiming to leverage machine learning for cryptocurrency trading.

Keywords: machine learning, Random Forest, Stochastic Gradient Descent, algorithmic trading, backtesting, Cryptocurrency (Bitcoin)

Complexity vs Empirical Score

  • Math Complexity: 3.0/10
  • Empirical Rigor: 9.0/10
  • Quadrant: Street Traders
  • Why: The paper focuses on evaluating 41 standard ML models using accessible metrics like MAE and Sharpe Ratio, resulting in low math complexity, while its emphasis on backtesting, forward testing, and real-world trading scenarios ensures high empirical rigor.
  flowchart TD
    A["Research Goal<br>Evaluate ML models for Bitcoin trading"] --> B["Data Collection<br>Historical & recent Bitcoin price data"]
    B --> C["Model Training<br>21 Classifiers & 20 Regressors<br>Random Forest, SGD, etc."]
    C --> D["Evaluation Process<br>Backtesting, Forward Testing, Real-world Trading"]
    D --> E{"Performance Metrics"}
    E --> F["Machine Learning Metrics<br>MAE, RMSE"]
    E --> G["Trading Metrics<br>PnL%, Sharpe Ratio"]
    F & G --> H["Key Findings & Outcomes"]
    H --> I["Random Forest & SGD<br>best for profit & risk"]
    H --> J["Comprehensive guide for<br>effective trading strategies"]