Architecture#
OpenSTEF is organized into four packages with clear responsibilities: openstef_core provides foundational data structures and utilities, openstef_models implements forecasting models and transforms, openstef_beam handles backtesting, evaluation, and metrics pipelines, and openstef_meta combines models into ensemble forecasts.
graph TD
A[openstef_core] --> B[openstef_models]
A --> C[openstef_beam]
A --> D[openstef_meta]
B --> D
C --> D
classDef primary fill:#00D9C5,stroke:#1E3A5F,stroke-width:2px,color:#000
classDef secondary fill:#1E3A5F,stroke:#00D9C5,stroke-width:2px,color:#fff
classDef accent fill:#e6f7f5,stroke:#00D9C5,stroke-width:2px,color:#000
class A secondary
class B,C primary
class D accent
- Core Package (The openstef_core Package)
Deep dive into
openstef_core: the validated dataset hierarchy, shared utilities, and base abstractions that all other packages build upon.- Models Package (The openstef_models Package)
Deep dive into
openstef_models: domain-organized transforms, forecasting model implementations, and the model training lifecycle.- BEAM Package (The openstef_beam Package)
Deep dive into
openstef_beam: backtesting pipelines, evaluation metrics, analysis tools, and reporting capabilities.- Meta Package (The openstef_meta Package)
Deep dive into
openstef_meta: ensemble forecasting, forecast combination strategies, and multi-model orchestration.