feat(training): 实现训练模块核心组件(commits 6-9)

- StockPoolManager:每日独立筛选股票池,支持代码过滤和市值选择
- Trainer:整合训练完整流程,支持 processor 分阶段行为和模型持久化
- TrainingConfig:pydantic 配置管理,含必填字段和日期验证
- experiment 模块:预留结构
- 从计划中移除 metrics 组件
- 调整 commit 序号(7-10 → 6-9)
- 更新 training/__init__.py 导出所有公开 API
This commit is contained in:
2026-03-03 22:57:01 +08:00
parent f35a6a76a6
commit 192718095f
9 changed files with 584 additions and 73 deletions

View File

@@ -1,6 +1,6 @@
"""训练模块 - ProStock 量化投资框架
提供模型训练、数据处理和评估的完整流程。
提供模型训练、数据处理和预测的完整流程。
"""
# 基础抽象类
@@ -14,6 +14,31 @@ from src.training.registry import (
register_processor,
)
# 数据划分器
from src.training.components.splitters import DateSplitter
# 股票池选择器配置
from src.training.components.selectors import (
MarketCapSelectorConfig,
StockFilterConfig,
)
# 数据处理器
from src.training.components.processors import (
CrossSectionalStandardScaler,
StandardScaler,
Winsorizer,
)
# 模型
from src.training.components.models import LightGBMModel
# 训练核心
from src.training.core import StockPoolManager, Trainer
# 配置
from src.training.config import TrainingConfig
__all__ = [
# 基础抽象类
"BaseModel",
@@ -23,4 +48,20 @@ __all__ = [
"ProcessorRegistry",
"register_model",
"register_processor",
# 数据划分器
"DateSplitter",
# 股票池选择器配置
"StockFilterConfig",
"MarketCapSelectorConfig",
# 数据处理器
"StandardScaler",
"CrossSectionalStandardScaler",
"Winsorizer",
# 模型
"LightGBMModel",
# 训练核心
"StockPoolManager",
"Trainer",
# 配置
"TrainingConfig",
]