Files
Quantitative-Trading-Platform/README.md
2026-02-04 19:59:15 +08:00

2.9 KiB

Quantitative Trading Platform

A quantitative trading platform with modular architecture for data acquisition, strategy execution, risk management, and UI/UX.

Architecture

See component_diagram.md and architecture_diagram.txt in the parent directory (/home/thanthos/clawd/) for detailed system design.

UI/UX Module

Dashboard

Simple dashboard displaying key trading metrics:

  • PnL (Profit and Loss)
  • Drawdown
  • Win Rate

Data Layer Module

Moomoo API Connector

A robust Python client for moomoo API with comprehensive error handling, rate limiting, and data normalization.

Features:

  • Historical OHLCV data retrieval
  • Real-time WebSocket subscription (mock)
  • Instrument metadata
  • Rate limiting (token bucket algorithm)
  • Circuit breaker pattern for fault tolerance
  • Caching with TTL
  • Mock mode for development

Usage:

from data.connectors import create_moomoo_client, Interval
from datetime import datetime, timedelta

client = create_moomoo_client(mock_mode=True)
data = client.get_ohlcv(
    symbol="AAPL",
    interval=Interval.DAY_1,
    start_date=datetime.now() - timedelta(days=30),
    end_date=datetime.now()
)

See examples/demo_moomoo.py for complete demonstration.

Development

Prerequisites

  • Python 3.8+
  • Node.js (for frontend, optional)
  • Docker (optional)
  • Redis (optional, for caching)

Setup

  1. Clone the repository
  2. Install dependencies: pip install -r requirements.txt
  3. Run the dashboard: python app.py
  4. Test data connector: python examples/demo_moomoo.py

Data Layer Development

The data connector uses a modular design with base classes for easy extension:

  • DataConnector abstract base class
  • MoomooClient implementation with mock mode
  • Rate limiting and circuit breaker patterns
  • Caching support (in-memory or Redis)

To extend with real API credentials:

  1. Set environment variables: MOOMOO_API_KEY, MOOMOO_SESSION_TOKEN
  2. Set mock_mode=False when creating client
  3. Implement actual API calls in _make_request() method

UI/UX Development

The dashboard is built with Flask (backend) and Bootstrap/Chart.js (frontend).

  • Backend: app.py provides REST API endpoints
  • Frontend: templates/dashboard.html with interactive charts

Interactive Prototype

A complete clickable mockup of the full platform is available in the prototype/ directory. This showcases the complete user interface with all major sections:

Features demonstrated:

  • Dashboard with real-time metrics
  • Data management interface
  • Strategy engine configuration
  • Risk management controls
  • Navigation between all platform sections

To use the prototype:

  1. Open prototype/index.html in a web browser
  2. Click sidebar navigation to explore different sections
  3. Interact with charts, forms, and controls

The prototype uses HTML/CSS/JavaScript with Bootstrap and Chart.js, and can be reused as the foundation for the actual web application.

License

Proprietary