Files
foxhunt/services/trading_service/README.md
jgrusewski 6093eac7bf 🔧 Tonic 0.14 Upgrade: Auto-generated and build system changes
Wave 64-65 cleanup: Proto regeneration and build system updates from Tonic 0.12→0.14 upgrade

Files updated:
- Cargo.lock: Dependency resolution for Tonic 0.14.2
- All build.rs: Updated for tonic-prost-build
- Proto files: Regenerated with tonic-prost 0.14
- Examples/tests: Updated for new gRPC API

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-03 07:34:26 +02:00

2.1 KiB

Trading Service

Overview

The trading_service is the core execution engine for the Foxhunt HFT platform. It manages the entire lifecycle of trading operations, from order placement and execution to real-time position keeping and risk management. This service is critical for high-frequency, low-latency trading activities, ensuring compliance and optimal performance.

Features

  • Order Execution: Handles high-throughput order placement, modification, and cancellation across various exchanges.
  • Position Management: Maintains real-time tracking of all open positions, including P&L calculations and exposure.
  • Risk Integration: Integrates with upstream risk systems to enforce pre-trade and post-trade compliance checks.
  • Compliance Checks: Automatically applies regulatory and internal compliance rules to all trading activities.
  • Market Data Subscriptions: Subscribes to and processes real-time market data feeds for informed decision-making.
  • Real-time P&L Tracking: Provides immediate profit and loss updates for active strategies and overall portfolio.
  • Health Checks and Metrics: Exposes endpoints for monitoring service health and operational metrics.

gRPC API

The trading_service exposes a gRPC API for interacting with its core functionalities. Key endpoints include:

  • PlaceOrder - Submit new orders
  • CancelOrder - Cancel existing orders
  • GetPosition - Query current positions
  • SubscribeMarketData - Subscribe to market data feeds
  • GetPnlUpdates - Retrieve real-time P&L updates

Running the service

To run the trading_service binary:

cargo run --bin trading_service

Configuration

The service is configured via the central config crate with PostgreSQL backend. Key configuration includes:

  • Database connection strings
  • Risk parameters and limits
  • Broker connection settings
  • gRPC server port and TLS settings

Testing

To run the tests for the trading_service crate:

cargo test --package trading_service

Documentation

Comprehensive API documentation is available at docs.rs/trading_service.