quants-lab  by hummingbot

Quantitative trading research and strategy automation framework

Created 1 year ago
256 stars

Top 98.5% on SourcePulse

GitHubView on GitHub
Project Summary

Quants Lab is a Python framework for quantitative trading research, integrating with Hummingbot. It provides tools for historical data fetching, metric calculation, backtesting, strategy development, and automated deployment, streamlining the research-to-deployment pipeline for quantitative traders.

How It Works

The project employs a modular architecture, separating core functionalities—such as a reusable backtesting engine, diverse data source integrations (CLOB, AMM, GeckoTerminal, CoinGecko), feature engineering modules, and a task orchestration system—from the app layer. Research workflows are supported via Jupyter notebooks. Task execution pipelines are defined and managed through YAML configuration files in config/. Docker is recommended for production task deployment. A make utility streamlines setup, Conda environment management, MongoDB operations, and task execution.

Quick Start & Requirements

Installation involves cloning the repository and running make install, which sets up a Conda environment with Python 3.12, installs dependencies, configures MongoDB, and prepares necessary files. Key prerequisites include Conda, Python 3.12, and Docker for production task execution. MongoDB is managed via make run-db. Tasks are executed using make run-tasks config=FILE.yml.

Highlighted Details

  • Data Integration: Fetches historical and real-time data from CLOB, AMM, GeckoTerminal, and CoinGecko APIs.
  • Backtesting Engine: Includes a dedicated backtesting engine and optimizer within the core framework for strategy evaluation.
  • Configurable Pipelines: Flexible task orchestration system allows defining and customizing research pipelines using YAML configuration files.
  • Development Workflow: Supports local development with make targets for code formatting (black, isort).

Maintenance & Community

The project directs users to GitHub issues for bug reporting and contributions via pull requests. Specific community channels or details on core maintainers/sponsors are not detailed in the README.

Licensing & Compatibility

The README does not explicitly state the project's license. This omission requires further investigation for commercial use or closed-source integration compatibility.

Limitations & Caveats

The README does not detail specific limitations, known bugs, or alpha/beta status. The most significant caveat for potential adopters is the absence of clear licensing information, crucial for determining usage rights.

Health Check
Last Commit

2 months ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
3
Star History
8 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.