2026-03-03 21:55:39 +08:00
|
|
|
|
"""训练模块 - ProStock 量化投资框架
|
2026-02-23 16:23:53 +08:00
|
|
|
|
|
2026-03-03 22:57:01 +08:00
|
|
|
|
提供模型训练、数据处理和预测的完整流程。
|
2026-02-23 16:23:53 +08:00
|
|
|
|
"""
|
|
|
|
|
|
|
2026-03-03 21:55:39 +08:00
|
|
|
|
# 基础抽象类
|
|
|
|
|
|
from src.training.components.base import BaseModel, BaseProcessor
|
|
|
|
|
|
|
|
|
|
|
|
# 注册中心
|
|
|
|
|
|
from src.training.registry import (
|
|
|
|
|
|
ModelRegistry,
|
|
|
|
|
|
ProcessorRegistry,
|
|
|
|
|
|
register_model,
|
|
|
|
|
|
register_processor,
|
2026-02-23 16:23:53 +08:00
|
|
|
|
)
|
|
|
|
|
|
|
2026-03-03 22:57:01 +08:00
|
|
|
|
# 数据划分器
|
|
|
|
|
|
from src.training.components.splitters import DateSplitter
|
|
|
|
|
|
|
2026-03-09 22:33:41 +08:00
|
|
|
|
# 股票池选择器配置(已迁移到 StockPoolManager,保留文件占位)
|
|
|
|
|
|
# from src.training.components.selectors import ...
|
2026-03-03 22:57:01 +08:00
|
|
|
|
|
|
|
|
|
|
# 数据处理器
|
|
|
|
|
|
from src.training.components.processors import (
|
|
|
|
|
|
CrossSectionalStandardScaler,
|
2026-03-05 21:57:34 +08:00
|
|
|
|
NullFiller,
|
2026-03-03 22:57:01 +08:00
|
|
|
|
StandardScaler,
|
|
|
|
|
|
Winsorizer,
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# 模型
|
|
|
|
|
|
from src.training.components.models import LightGBMModel
|
|
|
|
|
|
|
2026-03-04 21:14:39 +08:00
|
|
|
|
# 数据过滤器
|
|
|
|
|
|
from src.training.components.filters import BaseFilter, STFilter
|
|
|
|
|
|
|
2026-03-03 22:57:01 +08:00
|
|
|
|
# 训练核心
|
|
|
|
|
|
from src.training.core import StockPoolManager, Trainer
|
|
|
|
|
|
|
2026-03-13 22:24:12 +08:00
|
|
|
|
# 工具函数
|
|
|
|
|
|
from src.training.utils import check_data_quality
|
|
|
|
|
|
|
2026-03-03 22:57:01 +08:00
|
|
|
|
# 配置
|
|
|
|
|
|
from src.training.config import TrainingConfig
|
|
|
|
|
|
|
2026-03-24 23:35:31 +08:00
|
|
|
|
# 新增:模块化 Trainer 组件
|
|
|
|
|
|
from src.training.factor_manager import FactorManager
|
|
|
|
|
|
from src.training.pipeline import DataPipeline
|
|
|
|
|
|
from src.training.result_analyzer import ResultAnalyzer
|
|
|
|
|
|
from src.training.tasks import BaseTask, RegressionTask, RankTask
|
|
|
|
|
|
|
2026-02-23 16:23:53 +08:00
|
|
|
|
__all__ = [
|
2026-03-03 21:55:39 +08:00
|
|
|
|
# 基础抽象类
|
|
|
|
|
|
"BaseModel",
|
|
|
|
|
|
"BaseProcessor",
|
|
|
|
|
|
# 注册中心
|
|
|
|
|
|
"ModelRegistry",
|
|
|
|
|
|
"ProcessorRegistry",
|
|
|
|
|
|
"register_model",
|
|
|
|
|
|
"register_processor",
|
2026-03-03 22:57:01 +08:00
|
|
|
|
# 数据划分器
|
|
|
|
|
|
"DateSplitter",
|
2026-03-09 22:33:41 +08:00
|
|
|
|
# 股票池选择器配置(已迁移,保留注释占位)
|
|
|
|
|
|
# "StockFilterConfig", # 已删除,使用 StockPoolManager + filter_func 替代
|
|
|
|
|
|
# "MarketCapSelectorConfig", # 已删除,使用 StockPoolManager + required_factors 替代
|
2026-03-03 22:57:01 +08:00
|
|
|
|
# 数据处理器
|
2026-03-05 21:57:34 +08:00
|
|
|
|
"NullFiller",
|
2026-03-03 22:57:01 +08:00
|
|
|
|
"StandardScaler",
|
|
|
|
|
|
"CrossSectionalStandardScaler",
|
|
|
|
|
|
"Winsorizer",
|
2026-03-04 21:14:39 +08:00
|
|
|
|
# 数据过滤器
|
|
|
|
|
|
"BaseFilter",
|
|
|
|
|
|
"STFilter",
|
2026-03-03 22:57:01 +08:00
|
|
|
|
# 模型
|
|
|
|
|
|
"LightGBMModel",
|
|
|
|
|
|
# 训练核心
|
|
|
|
|
|
"StockPoolManager",
|
|
|
|
|
|
"Trainer",
|
2026-03-13 22:24:12 +08:00
|
|
|
|
# 工具函数
|
|
|
|
|
|
"check_data_quality",
|
2026-03-03 22:57:01 +08:00
|
|
|
|
# 配置
|
|
|
|
|
|
"TrainingConfig",
|
2026-03-24 23:35:31 +08:00
|
|
|
|
# 新增:模块化 Trainer 组件
|
|
|
|
|
|
"FactorManager",
|
|
|
|
|
|
"DataPipeline",
|
|
|
|
|
|
"ResultAnalyzer",
|
|
|
|
|
|
"BaseTask",
|
|
|
|
|
|
"RegressionTask",
|
|
|
|
|
|
"RankTask",
|
2026-02-23 16:23:53 +08:00
|
|
|
|
]
|