|
|
6927d20de1
|
feat(training): LightGBM支持验证集早停
- 为fit方法添加eval_set参数,支持验证集评估和早停
- 因子引擎简化初始化,移除metadata_path参数
- 回归实验精简因子定义,移除冗余因子库
|
2026-03-14 22:51:24 +08:00 |
|
|
|
ecb22b826c
|
fix(factor-engine): 修复多因子计算时数据规格字段合并的 bug
- 修复 FactorEngine.compute() 中相同表的字段未正确合并的问题
- 将简单去重改为字段集合合并,确保所有因子依赖的字段都被获取
- 解决 high_low_ratio 等需要 high/low 字段的因子计算失败问题
|
2026-03-14 02:12:20 +08:00 |
|
|
|
181994f063
|
perf(factors/engine): 重构计算引擎使用 Polars 原生并行
- 移除 Python 多进程/多线程池,消除 DataFrame 序列化开销
- 采用 BFS 分层执行策略,每层表达式通过单次 with_columns 提交
- 利用 Polars Rust 引擎实现零拷贝并行计算
- 添加死锁检测机制处理依赖环
|
2026-03-14 01:24:52 +08:00 |
|
|
|
2034d60fbb
|
fix(factors): 修复 AST 优化器并发命名冲突及逻辑运算支持
- 修复 ExpressionFlattener 跨实例临时名称冲突
- 添加 & 和 | 逻辑运算符的 DSL/Parser/Translator 支持
- 增加回归测试验证修复
|
2026-03-14 01:17:14 +08:00 |
|
|
|
c8808d07eb
|
feat(factors): 实现 AST 拍平优化支持嵌套窗口函数
- 新增 ExpressionFlattener 类自动拆解嵌套窗口函数(如 cs_rank(ts_delay(close, 1)))
- 支持因子引用其他因子:engine.register("fac2", cs_rank("fac1"))
- 给 DependencyExtractor 增加 ignore_symbols 免疫名单,防止已注册因子被当作数据库字段
- 添加完整测试覆盖嵌套场景和数值一致性验证
|
2026-03-14 01:06:17 +08:00 |
|
|
|
282fe1fef5
|
docs(AGENTS): 新增AI行为准则规范
- 添加代码存放位置规则,强制代码存放于 src/ 或 tests/ 目录
- 添加 Tests 目录代码运行规则,强制使用 pytest 运行测试代码
- 更新 learn_to_rank 实验代码:调整因子列表和处理器配置
- 修复 schema_cache 表结构缓存逻辑
|
2026-03-14 00:19:03 +08:00 |
|
|
|
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 |
|
|
|
f3b3560d26
|
fix(factors/engine): 修复列选择时基础列重复的问题
|
2026-03-11 00:12:05 +08:00 |
|
|
|
3b42093100
|
feat(data): 财务数据加载与清洗模块
新增 FinancialLoader 类,提供:
- 财务数据加载与清洗(保留合并报表,按 update_flag 去重)
- 支持 as-of join 拼接行情数据(无未来函数)
- 自动识别财务表并配置 asof_backward 拼接模式
|
2026-03-04 23:35:20 +08:00 |
|
|
|
f1687dadf3
|
feat: 因子引擎字段验证改进、股票池过滤修复及实验模块增强
1. 因子引擎字段验证改进
- 新增 SchemaCache.get_all_fields() 方法,返回所有可用字段集合
- 修改 match_fields_to_tables(),对不存在的字段抛出明确错误
- 错误信息包含可用字段列表提示,帮助用户检查拼写
2. 股票池过滤修复
- 修复北交所股票排除逻辑:将识别方式从代码前缀(8/4开头)改为.BJ后缀
- 更新文档注释,明确北交所股票识别规则
3. 实验模块增强
- 新增 regression.py 实现回归实验逻辑
- 新增 output/ 目录存放实验输出结果
|
2026-03-03 23:51:08 +08:00 |
|
|
|
12ddb19b2e
|
feat(factors): 添加 SchemaCache 实现数据库表结构自动扫描
|
2026-03-03 17:32:58 +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 |
|
|
|
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 |
|