Skip to content

Latest commit

 

History

History
82 lines (56 loc) · 7.16 KB

File metadata and controls

82 lines (56 loc) · 7.16 KB
graph LR
    Logging_Monitoring["Logging & Monitoring"]
    User_Notification_Service["User Notification Service"]
    Account_Balance_Management["Account & Balance Management"]
    Strategy_Backtesting_Engine["Strategy Backtesting Engine"]
    Logging_Monitoring -- "provides logging services to" --> Core_Engine
    Logging_Monitoring -- "provides logging services to" --> Client_User_Interface
    Logging_Monitoring -- "provides logging services to" --> Exchange_Connectors
    Logging_Monitoring -- "provides logging services to" --> Trading_Strategies_V2
    Logging_Monitoring -- "provides logging services to" --> Data_Feeds
    Logging_Monitoring -- "provides logging services to" --> Account_Balance_Management
    Logging_Monitoring -- "provides logging services to" --> User_Notification_Service
    Logging_Monitoring -- "provides logging services to" --> Strategy_Backtesting_Engine
    User_Notification_Service -- "uses" --> Core_Engine
    HummingbotApplication -- "sends notifications to" --> User_Notification_Service
    User_Notification_Service -- "uses" --> Logging_Monitoring
    Account_Balance_Management -- "uses" --> Exchange_Connectors
    Account_Balance_Management -- "uses" --> Configuration_Management
    Account_Balance_Management -- "uses" --> Data_Feeds
    Account_Balance_Management -- "provides balance information to" --> Client_Commands
    Account_Balance_Management -- "uses" --> Logging_Monitoring
    Strategy_Backtesting_Engine -- "uses" --> Trading_Strategies_V2
    Strategy_Backtesting_Engine -- "uses" --> Data_Feeds
    Strategy_Backtesting_Engine -- "uses" --> Configuration_Management
    Client_Commands -- "uses" --> Strategy_Backtesting_Engine
    Strategy_Backtesting_Engine -- "uses" --> Logging_Monitoring
Loading

CodeBoardingDemoContact

Details

The Performance & Reporting (PR) subsystem, as initially described, is a broad area encompassing several critical functionalities within the Hummingbot project. Based on the project's architectural patterns (Event-Driven, Modular/Plugin, Layered) and the provided related classes, it can be effectively broken down into four distinct and fundamental components: Logging & Monitoring, User Notification Service, Account & Balance Management, and Strategy Backtesting Engine. These components are essential for the operation, user interaction, and strategic development within an algorithmic trading platform.

Logging & Monitoring

This component is responsible for capturing, formatting, and dispatching various types of logs, including operational messages, errors, and performance data. It provides a structured logging mechanism and can send logs to a remote server for centralized monitoring and analysis. It also handles application-specific warnings. This component is fundamental for debugging, auditing, and understanding the real-time behavior and health of the trading bot.

Related Classes/Methods:

User Notification Service

This component is dedicated to sending real-time notifications to users about important bot events, such as trade executions, errors, or status updates. It abstracts the underlying communication mechanism, allowing for different notification channels (e.g., MQTT). This ensures users are promptly informed about critical events without needing to constantly monitor the bot's console.

Related Classes/Methods:

Account & Balance Management

This component is responsible for securely connecting to various cryptocurrency exchanges, retrieving, and consolidating user asset balances. It provides a unified view of the user's portfolio across different trading venues, which is essential for accurate risk management and strategy execution.

Related Classes/Methods:

Strategy Backtesting Engine

This component provides a robust framework for simulating trading strategies against historical market data. It allows users to test and optimize their strategies without risking real capital, offering detailed performance metrics and insights. This is crucial for strategy development, validation, and risk assessment before live deployment.

Related Classes/Methods: