- Introduced a dedicated sub-package for technical indicators under `data/common/indicators/`, improving modularity and maintainability. - Moved `TechnicalIndicators` and `IndicatorResult` classes to their respective files, along with utility functions for configuration management. - Updated import paths throughout the codebase to reflect the new structure, ensuring compatibility. - Added comprehensive safety net tests for the indicators module to verify core functionality and prevent regressions during refactoring. - Enhanced documentation to provide clear usage examples and details on the new package structure. These changes improve the overall architecture of the technical indicators module, making it more scalable and easier to manage.
29 lines
761 B
Python
29 lines
761 B
Python
"""
|
|
Technical Indicator Result Container
|
|
|
|
This module provides the IndicatorResult dataclass for storing
|
|
technical indicator calculation results in a standardized format.
|
|
"""
|
|
|
|
from dataclasses import dataclass
|
|
from datetime import datetime
|
|
from typing import Dict, Optional, Any
|
|
|
|
|
|
@dataclass
|
|
class IndicatorResult:
|
|
"""
|
|
Container for technical indicator calculation results.
|
|
|
|
Attributes:
|
|
timestamp: Candle timestamp (right-aligned)
|
|
symbol: Trading symbol
|
|
timeframe: Candle timeframe
|
|
values: Dictionary of indicator values
|
|
metadata: Additional calculation metadata
|
|
"""
|
|
timestamp: datetime
|
|
symbol: str
|
|
timeframe: str
|
|
values: Dict[str, float]
|
|
metadata: Optional[Dict[str, Any]] = None |