|
|
ced7a929c3
|
refactor(factors): 简化 add_factor API 并默认启用 metadata
- 合并 add_factor_by_name 到 add_factor,支持三种调用方式
- FactorManager 构造函数改为可选参数,使用默认路径
- FactorEngine 默认启用 metadata,无需手动配置路径
|
2026-03-12 22:34:25 +08:00 |
|
|
|
2bb7718dd1
|
feat(factors): 集成 metadata 模块,支持按名称注册因子
- 新增 add_factor_by_name() 方法,从 metadata 查询 DSL 表达式并注册
- FactorEngine 支持可选的 metadata_path 参数初始化
- 将 regression.ipynb 和 learn_to_rank.ipynb 转换为 Python 脚本
- 新增 test_factor_engine_metadata.py 测试文件
|
2026-03-11 22:54:52 +08:00 |
|
|
|
05d0c90312
|
feat(factors): 新增公式解析基础组件
新增公式解析相关模块,支持将字符串表达式解析为 DSL 节点树:
- exceptions.py: 定义公式解析异常体系
- FormulaParseError 基类,提供位置指示的错误信息
- UnknownFunctionError 支持模糊匹配建议
- InvalidSyntaxError、EmptyExpressionError 等具体异常
- parser.py: 基于 Python ast 的公式解析器
- 支持符号引用、数值常量、二元/一元运算
- 支持函数调用和比较运算
- 常量折叠优化
- registry.py: 函数注册表
- 支持动态注册和查询公式函数
- 提供可用函数列表和重复注册检查
|
2026-03-03 00:04:48 +08:00 |
|
|
|
77e4e94e05
|
refactor(factors): 拆分 engine.py 为模块化包
将单文件 engine.py (1064行) 拆分为 engine/ 包:
- 数据规格、路由器、计划器、计算引擎、因子引擎分离
- 保持向后兼容,API 无变化
|
2026-03-02 22:29:18 +08:00 |
|