refactor(experiment): 重构模型保存机制,支持 processors 持久化

- 模型保存路径改为 models/{model_type}/ 目录结构
- save_model_with_factors 新增 fitted_processors 参数
- 新增 load_processors 函数加载处理器状态
- Storage 查询排序优化:ORDER BY ts_code, trade_date
This commit is contained in:
2026-03-19 21:06:11 +08:00
parent 0a29506f45
commit ccd42082c2
8 changed files with 1705 additions and 81 deletions

View File

@@ -217,7 +217,7 @@ class Storage:
params.append(ts_code)
where_clause = f"WHERE {' AND '.join(conditions)}" if conditions else ""
query = f"SELECT * FROM {name} {where_clause} ORDER BY trade_date"
query = f"SELECT * FROM {name} {where_clause} ORDER BY ts_code, trade_date"
try:
# Execute query with parameters (SQL injection safe)
@@ -255,7 +255,7 @@ class Storage:
conditions.append(f"ts_code = '{ts_code}'")
where_clause = f"WHERE {' AND '.join(conditions)}" if conditions else ""
query = f"SELECT * FROM {name} {where_clause} ORDER BY trade_date"
query = f"SELECT * FROM {name} {where_clause} ORDER BY ts_code, trade_date"
# 使用 DuckDB 的 Polars 导出(需要 pyarrow
df = self._connection.sql(query).pl()