stock-analysis-engine  by AlgoTraders

CLI tool for backtesting stock trading algorithms and generating AI training data

created 6 years ago
1,134 stars

Top 34.5% on sourcepulse

GitHubView on GitHub
Project Summary

This project provides a distributed stock analysis engine for backtesting and training AI trading algorithms. It targets quantitative analysts, researchers, and developers looking to build and test sophisticated trading strategies using minute-by-minute pricing data from multiple sources. The engine automates data fetching, backtesting, and dataset generation for AI training, significantly reducing the manual effort involved in quantitative analysis.

How It Works

The engine utilizes a distributed architecture, supporting deployment via Docker Compose or Kubernetes. It fetches historical and real-time pricing data from IEX Cloud and Tradier, storing it in Redis for fast access and Minio (S3-compatible) for archival. Celery workers handle asynchronous, compute-intensive tasks like data processing and backtesting. Algorithms can be developed and run within Jupyter notebooks or via a command-line interface, with results and trading histories published to S3 for further analysis or AI model training.

Quick Start & Requirements

  • Install: Clone the repository and use docker-compose or kubectl for deployment.
  • Prerequisites: Python 3.6+, Redis, Minio, Docker, Kubernetes (optional). API keys for IEX Cloud and Tradier are required for data fetching. TA-Lib is also a dependency.
  • Setup: Initial setup involves configuring API keys and potentially installing TA-Lib. Running the full stack locally via Docker Compose is recommended for development.
  • Docs: https://stock-analysis-engine.readthedocs.io/en/latest/

Highlighted Details

  • Supports minute-by-minute data for thousands of algorithms.
  • Generates over 150 million trading history rows.
  • Integrates with IEX Cloud, Tradier, and FinViz for comprehensive data.
  • Automated data publishing to S3 for AI training datasets.
  • Distributed processing via Celery workers.

Maintenance & Community

The project appears to be actively maintained by AlgoTraders. Community interaction channels are not explicitly listed in the README.

Licensing & Compatibility

The project is licensed under the Apache 2.0 license. This license is permissive and generally compatible with commercial use and closed-source linking.

Limitations & Caveats

The README notes a known issue with Jupyter on macOS due to Docker Compose networking limitations. While live trading is mentioned as a future feature, it is not yet supported. The project relies on external APIs (IEX, Tradier), which may have their own rate limits or costs.

Health Check
Last commit

4 years ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
37 stars in the last 90 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of AI Engineering, Designing Machine Learning Systems), Daniel Han Daniel Han(Cofounder of Unsloth), and
1 more.

airweave by airweave-ai

0.6%
3k
Semantic MCP server for AI agents
created 7 months ago
updated 2 days ago
Feedback? Help us improve.