High-Frequency Crypto Trading Bot

Note: This is a highlighted work project
Overview
The goal of this project was to develop a high-frequency trading bot based on machine learning algorithms to analyze the real-time cryptocurrency market and prices to execute trades on various pairs. With a focus on accuracy and net positive outcomes, the project was revised to incorporate machine learning algorithms with a prediction rate of up to 90%. The bot is designed to enter and exit positions, place triggers and has error handling, trade history persistence, and an easily digestible terminal-based dashboard displaying price, trade history, current position, current assets, functional buy and sell buttons and other critical information [see image above].
Motivation
The volatility of cryptocurrencies presents an opportunity to capitalize on price fluctuations in real-time. To take advantage of this, I developed an algorithmic trading bot that allowed me to strengthen my skills in machine learning, Node.js, and databases. In addition, I learned CCXT, web-sockets, and the nuances of algorithmic trading.
Features
- High Uptime - The trading bot runs continuously with error handling to ensure maximum uptime.
- Cryptocurrency Trading - The bot is designed to place trades on volatile cryptocurrencies, maximizing potential gains.
- Real-Time Data - The bot uses WebSockets to access and analyze real-time data and information for placing time-sensitive trades.
- Machine Learning - The bot leverages advanced machine learning algorithms to make trading decisions based on historical data and market trends.
- User-Friendly Dashboard - The user dashboard provides an easily digestible format for displaying critical information, such as trade history, current positions, and asset values. The dashboard also includes buy/sell buttons for quick and convenient trading.
Outcome/Result
The trading bot showed promising results within the first few weeks, but the real breakthrough came after multiple revisions and the implementation of machine learning algorithms and a user-friendly terminal-based dashboard. The updated version of the bot consistently executed profitable trades for several days in a row, although there were scaling issues that prevented the project from moving forward. I believe these obstacles could be overcome with additional time and resources, including more training data and algorithm refinement. Nevertheless, the project provided valuable insights into algorithmic trading and allowed me to further strengthen my machine learning and Node.js skills.