Algorithmic Trading

This project focuses on the development of automated trading algorithms designed to analyze financial markets and execute trades autonomously. The broader objective is to optimize and automate the cryptocurrency segment of my investment portfolio (currently less than 10% of total holdings).

While I do not consider cryptocurrencies traditional investments due to their limited intrinsic value, their high volatility and sentiment-driven price movements make them an ideal testbed for a first-generation trading algorithm. By combining financial theory with machine learning, I aim to create strategies that can adapt dynamically to market conditions with minimal human intervention.

Data Collection and Processing

Feature Sample 1

Feature Sample 1

One of the most difficult aspects of this project has been feature engineering—specifically, dealing with overlapping feature distributions across buy/sell targets. This overlap complicates model training and reduces predictive performance. To address this, I’m developing additional engineered features aimed at improving separability between targets. Planned improvements include: NLP-based sentiment analysis from news and social media to gauge public sentiment around specific cryptocurrencies. Macroeconomic indicators to assess broader economic trends and their influence on crypto markets.

Feature Sample 2

Feature Sample 2

Feature importance analysis is ongoing to identify the most impactful predictors. The goal is to move from noisy, ambiguous input data to more meaningful, predictive features.

Feature Sample 3

Feature Sample 3

Feature Sample 4

Feature Sample 4

Analysis of feature importance is ongoing to identify the most impactful predictors. I will update my github regularly to try and capture the advances in the algorithm.

Model Development

I have used algorithms that have utilized both regression models and neural networks to forecast short-term price movements. Data (including price and volume) is collected every three minutes and fed into a local trading system.

The trading algorithm operates in four stages:

  • Training: Historical data is used to train predictive models.
  • Backtesting: Simulated trades evaluate performance across varied historical market conditions.
  • Deployment: The algorithm executes real-time trades every three minutes.
  • Lifecycle Management: Models are either retrained with new data or phased out if performance declines.

Currently supported assets include: BTC, ETH, XRP, SOL, DOGE, AVAX, LINK, LTC, SHIB, BCH, UNI, AAVE, and XTZ.

Initial Test Results

Initial tests were conducted over five 3-hour trading periods. Results were as follows:

  • Average return per session: 1.28% (total: 6.52%)
  • Buy-and-hold during the same windows: 1.73% per session (total: 8.97%)
  • Buy-and-hold from start to finish: 7.30% total return

These early results suggest the algorithm underperformed compared to passive strategies—particularly. This test was done in a bullish market in early July 2025. The limited sample size and favorable market conditions make it difficult to assess true performance.

That said, this initial version establishes a functional baseline and confirms the infrastructure is ready for iterative algorithmic improvements.

View GitHub Repository

Local Trading GUI

A local GUI enables starting and stopping the bot, while a web-based dashboard offers full remote control and monitoring.

A custom API links the trading bot to the website, allowing full transparency into:

  • Cryptocurrency-specific performance
  • Real-time predictions vs. actual movements
  • Historical strategy metrics and visualizations

Live logs and debug tools assist in rapid diagnosis and refinement.

A public-facing dashboard (no login required) offers a simplified view of trading activity and portfolio performance.

Trading GUI

Trading GUI

A simple local GUI allows starting and stopping the trading bot. It connects to the website using a custom-built API.

Web Interface & Dashboards

Trading Dashboard 1

Trading Dashboard 1

Real-time trading activity and portfolio metrics are visualized in an interactive dashboard hosted on the website.

Trading Dashboard 2

Trading Dashboard 2

Performance charts and historical metrics help evaluate strategy behavior over time.

Debug Dashboard 1

Debug Dashboard 1

Live logs and error tracking make debugging seamless and quick.

Debug Dashboard 2

Debug Dashboard 2

Debug tools allow tracing internal decisions of the algorithm, useful during development.

Guest Portfolio View

Guest Portfolio View

A simplified public view allows visitors to monitor the trading portfolio without login access.

Look at Performance

Although the algorithm isn’t running continuously, the full infrastructure (website, dashboards, tools) remains live and operational. I typically run the trading bot in short bursts, though improvements in model reliability may justify continuous operation in the future.

You can view the current algorithm and the crypto data processing pipeline on GitHub.

Explore Trading Algorithm on GitHub