Commit Graph

18 Commits

Author SHA1 Message Date
a22bc2d282 refactor(data): 移除 api_daily 模块并更新文档
- 删除 src/data/api_wrappers/api_daily.py (240行)
- 更新 6 个文档文件,将 daily 表引用替换为 pro_bar
- 同步 README.md 中的因子框架和训练模块示例

BREAKING CHANGE: api_daily 模块已移除,请使用 api_pro_bar 替代
2026-03-14 01:48:56 +08:00
a464ef70c0 feat(data): 新增财务指标和涨跌停数据接口
- 财务指标: fina_indicator_vip 封装,166 字段,季度同步
- 涨跌停价格: stk_limit 封装,日频数据同步
- 配套单元测试和调度中心集成
2026-03-08 23:14:18 +08:00
505279c08b fix(data): 修复财务因子计算非确定性问题
重构 financial_loader 的去重逻辑,确保截面排名计算的股票集合一致:
- 引入"高水位线"算法剔除陈旧历史财报(解决2026年发布2021年财报的问题)
- 改变去重策略:按报告期(end_date)而非更新标识(update_flag)保留最新数据
- 扩展回看期从1年到2年,防止ST/停牌公司财报缺失
- 确保相同交易日在不同查询范围下返回一致的财务数据
2026-03-08 20:58:35 +08:00
eb76cbbd52 feat(financial): 实现资产负债表和现金流量表同步接口
- 新增 BalanceQuarterSync 类,封装 balancesheet_vip 接口(157个字段)
- 新增 CashflowQuarterSync 类,封装 cashflow_vip 接口(95个字段)
- 在财务数据调度中心注册资产负债表和现金流量表
- 更新规范文档,标记接口为已实现
2026-03-08 10:57:39 +08:00
0aec87281e docs: 完善财务数据 API 规范文档
- 更新 FINANCIAL_API_SPEC.md,添加首次同步优化策略
- 添加日期格式转换规范(YYYYMMDD → YYYY-MM-DD)
- 补充存储层 UPSERT 禁用说明和删除计数处理
- 扩充常见问题(Q7-Q9)
- 完善 financial_api.md,补充资产负债表接口完整文档和报表类型说明

Closes: 文档更新 v1.1
2026-03-08 01:16:25 +08:00
c01bf76a3d docs: 添加财务数据同步模块重构相关文档
- 添加财务数据 API 封装规范文档 (FINANCIAL_API_SPEC.md)
  包含架构设计原则、类设计规范、同步策略、数据差异检测等

- 添加 n_income 因子生命周期分析文档
  详细追踪因子从定义到训练的全流程

- 添加财务数据同步模块重构计划文档
  明确 QuarterBasedSync 基类设计、重构任务清单

这些文档为后续财务数据同步模块重构提供完整的设计依据和实施方案
2026-03-07 22:14:04 +08:00
62a4635a71 feat: 新增因子装饰器系统和完整因子文档
- 添加因子表达式文档,收录180+个因子及数学表达式
- 添加因子实现分析报告,明确ts_*与cs_*算子分类
- 实现装饰器系统:@time_series/@cross_section/@element_wise
- 优化API和翻译器以支持新架构
2026-03-06 23:59:39 +08:00
3b42093100 feat(data): 财务数据加载与清洗模块
新增 FinancialLoader 类,提供:
- 财务数据加载与清洗(保留合并报表,按 update_flag 去重)
- 支持 as-of join 拼接行情数据(无未来函数)
- 自动识别财务表并配置 asof_backward 拼接模式
2026-03-04 23:35:20 +08:00
192718095f feat(training): 实现训练模块核心组件(commits 6-9)
- StockPoolManager:每日独立筛选股票池,支持代码过滤和市值选择
- Trainer:整合训练完整流程,支持 processor 分阶段行为和模型持久化
- TrainingConfig:pydantic 配置管理,含必填字段和日期验证
- experiment 模块:预留结构
- 从计划中移除 metrics 组件
- 调整 commit 序号(7-10 → 6-9)
- 更新 training/__init__.py 导出所有公开 API
2026-03-03 22:57:01 +08:00
317ecd87e7 feat(data): 封装ST股票列表接口(stock_st)
- 新增 api_stock_st.py,实现ST股票数据获取和日期遍历同步
- 更新 sync.py,将ST股票同步加入第7步流程
- 移除 base_sync.py 中未使用的 get_last_n_trading_days 导入
2026-03-03 22:04:22 +08:00
53225b9443 feat(data): 添加每日指标接口并优化因子引擎
- 新增 api_daily_basic.py 封装 Tushare 每日指标接口
- 因子引擎移除 lookback_days,支持 daily_basic 表字段路由
- 将每日指标纳入自动同步流程
- 删除废弃的 training/main.py
2026-03-03 17:09:39 +08:00
a56433e440 refactor(factor): 完全重构因子计算框架 - 引入DSL表达式系统
- 删除旧因子框架:移除 base.py、composite.py、data_loader.py、data_spec.py
  及所有子模块(momentum、financial、quality、sentiment等)
- 新增DSL表达式系统:实现 factor DSL 编译器和翻译器
  - dsl.py: 领域特定语言定义
  - compiler.py: AST编译与优化
  - translator.py: Polars表达式翻译
  - api.py: 统一API接口
- 新增数据路由层:data_router.py 实现字段到表的动态路由
- 新增API封装:api_pro_bar.py 提供pro_bar数据接口
- 更新执行引擎:engine.py 适配新的DSL架构
- 重构测试体系:删除旧测试,新增 test_dsl_promotion.py、
  test_factor_integration.py、test_pro_bar.py
- 清理文档:删除8个过时文档(factor_design、db_sync_guide等)
2026-02-27 22:22:23 +08:00
c3c20ed7ea refactor(factor): 计划重构factor模块 2026-02-26 20:38:26 +08:00
51578e9af8 refactor(factor): 计划重构factor模块 2026-02-26 20:23:25 +08:00
a9e4746239 refactor: 代码审查修复 - 日期过滤、性能优化、数据泄露防护
- 修复 data_loader.py 财务数据日期过滤,支持按范围加载
- 优化 MADClipper 使用窗口函数替代 join,提升性能
- 修复训练日期边界问题,添加1天间隔避免数据泄露
- 新增 .gitignore 规则忽略训练输出目录
2026-02-25 21:11:19 +08:00
9f95be56a0 feat(models): 实现机器学习模型训练框架
- 添加核心抽象:Processor、Model、Splitter、Metric 基类
- 实现阶段感知机制(TRAIN/TEST/ALL),防止数据泄露
- 内置 8 个数据处理器和 3 种时序划分策略
- 支持 LightGBM、CatBoost 模型
- PluginRegistry 装饰器注册,插件式架构
- 22 个单元测试
2026-02-23 01:37:34 +08:00
e58b39970c feat: HDF5迁移至DuckDB存储
- 新增DuckDB Storage与ThreadSafeStorage实现
- 新增db_manager模块支持增量同步策略
- DataLoader与Sync模块适配DuckDB
- 补充迁移相关文档与测试
- 修复README文档链接
2026-02-23 00:07:21 +08:00
0a16129548 feat(factors): 添加因子计算框架
- 新增因子基类 (BaseFactor, CrossSectionalFactor, TimeSeriesFactor)
- 新增数据规格和上下文类 (DataSpec, FactorContext, FactorData)
- 新增数据加载器 (DataLoader) 和执行引擎 (FactorEngine)
- 新增组合因子支持 (CompositeFactor, ScalarFactor)
- 添加因子模块完整测试用例
- 添加 Git 提交规范文档
2026-02-22 14:41:32 +08:00