Skip to main content

AI-Driven Qutan, Open to All

Project description

APilot - AI-Driven Quantitative Trading Platform

Overview

APilot is a high-performance quantitative trading framework focused on cryptocurrency and stock markets, developed by the AlphaPilot.tech team. The framework supports both strategy backtesting and live trading, providing a comprehensive solution for quantitative traders.

Official website: www.alphapilot.tech

Key Features

  • Event-driven architecture: Built for high-performance, real-time trading systems
  • Multiple trading strategies: Price Action strategies, Factor strategies (in development)
  • Professional execution algorithms: BestLimit, TWAP algorithms
  • Comprehensive backtesting: Accurate simulation with detailed performance analytics
  • Multi-exchange support: Currently focusing on Binance, with more to come
  • Live trading capability: Execute strategies in real-time with risk management
  • Extensible framework: Easy to add new strategies, data sources, and exchanges

Strategy Types

  • Price Action (PA) strategies: Support for trend following, mean reversion, and other classic price action strategies
  • Factor strategies: Quantitative strategies based on multi-factor models (in development)

Technical Architecture

Design Principles

  • Core Module: Contains all abstract interfaces and core data structures

    • Abstract base classes (BaseEngine, BaseGateway, etc.)
    • Data models (OrderData, TickData, etc.)
    • Constant definitions (Direction, Interval, etc.)
    • Basic event system
  • Feature Modules: Specific implementations for different domains

    • execution/gateway/ - Exchange API implementations
    • engine/ - Specific engine implementations
    • strategy/ - Trading strategy templates and implementations
    • performance/ - Performance calculation and reporting

Installation

# Clone the repository
git clone https://github.com/yourusername/apilot.git
cd apilot

# Install the package in development mode
pip install -e .

# Install with development dependencies
pip install -e ".[dev]"

Quick Start

Backtesting a Strategy

from apilot.engine import BacktestingEngine
from apilot.strategy import SampleStrategy

# Create a backtesting engine
engine = BacktestingEngine()
engine.set_parameters(
    start="2023-01-01",
    end="2023-12-31",
    initial_capital=10000,
    commission_rate=0.001
)

# Add a strategy
engine.add_strategy(SampleStrategy, "MyStrategy", "BTC/USDT.BINANCE", {
    "param1": 10,
    "param2": 20
})

# Run backtest
engine.run_backtest()

# Analyze performance
engine.show_performance()

Running Live Trading

from apilot.engine import PAEngine
from apilot.strategy import SampleStrategy

# Create a live trading engine
engine = PAEngine(main_engine, event_engine)

# Add a strategy
engine.add_strategy(SampleStrategy, "MyStrategy", "BTC/USDT.BINANCE", {
    "param1": 10,
    "param2": 20
})

# Initialize and start the strategy
engine.init_strategy("MyStrategy")
engine.start_strategy("MyStrategy")

Getting Started with Development

For detailed documentation on developing with APilot, please refer to our Development Guide.

Testing

# Run all tests
python -m pytest tests/

# Run specific test file
python -m pytest tests/test_bar_generator.py

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

apilot-0.1.0.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

apilot-0.1.0-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file apilot-0.1.0.tar.gz.

File metadata

  • Download URL: apilot-0.1.0.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for apilot-0.1.0.tar.gz
Algorithm Hash digest
SHA256 71cdfaa6995689a64223955d9b49d2bf282d373b5718131d07847d44f7b74f28
MD5 d64eb0d75cd967d63975ef97fe087081
BLAKE2b-256 3a5446bef9eadc6bb10bd199a17829d0fc53a922983c380b16c5e324d451ae2c

See more details on using hashes here.

File details

Details for the file apilot-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: apilot-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for apilot-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c8ac65831f37a848323103ccc0cf33bba6ff17aa0770ec24d9d0fb8360d0850b
MD5 ea75daa4fa747becec76fcbb22f87e19
BLAKE2b-256 68d36d34d49cc7f0dcf1025e5415b15820dcbabcca192180b011970f15b18ab4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page