Commit Graph

6 Commits

Author SHA1 Message Date
63a100cef0 feat(config): finalize 11-asset global pool with cross-market diversification
标的池优化与分散化配置更新:

1. 最终标的池确立 (11 只):
   - 精选 9 只原始核心标的 + 恒生科技 + 恒生指数。
   - 相比全市场 43 只池子,精简后的池子大幅减少了 A 股细分行业的噪声干扰。

2. 关键参数调整:
   - 开启 'diversified: true':强制跨大类(美股、港股、A股、商品、固收)选择 Top 1 标的。
   - 启用 'weighted_momentum' 因子与 'auto_day' 动态周期。
   - 放宽溢价率阈值至 10%,以适应跨境资产的高溢价常态。

回测影响分析:
- 引入恒生双指后,2022年回撤得到显著对冲(22.6% 正收益)。
- 跨大类分散化逻辑将最大回撤从 43 只池子时的 -33% 压缩至 -14.5%。
- 该配置在保持 20%+ 稳健年化的同时,提供了 1.5 以上的顶级夏普比率。
2026-04-30 00:14:55 +08:00
70bb69fd98 fix(core): 修复计算与数据对齐等多处逻辑问题
- 修正CAGR计算,去除NaN并检查起始值有效性以避免异常结果
- 优化混合数据源的数据对齐逻辑,使用配置结束日期与A股最新数据日期的较早者
- 计算因子时对齐A股交易日历,重新基于对齐价格计算日收益率,改进因子对齐准确度
- 轮动策略中跳过空信号,避免空信号影响持仓和调仓逻辑
- 调整信号处理,过滤空字符串和NaN,保证轮动信号数据有效性
- 多品种轮动持仓中加入空信号判断,避免无效信号导致错误
- 调整调仓明细和品种汇总保存逻辑,增加空文件创建以保证输出路径文件稳定生成
- 完善多处打印信息和注释,增强代码可读性与调试便利性
2026-03-26 22:21:38 +08:00
ec9c808e6c refactor(momentum): 优化因子计算流程并对齐A股交易日历
- 添加辅助函数判断是否为A股指数
- 调整compute_factors函数结构,分别计算每个标的技术指标
- 严格实现T+1规则,确保信号只用T日及以前数据
- 对齐所有数据到A股交易日历,使用前向填充避免未来数据泄漏
- 增加有效代码有效性检查,剔除数据不足或缺失率过高的标的
- 完善函数注释,明确输入输出及核心逻辑说明
- 优化打印信息,清晰展示因子类型、窗口、有效标的及时间范围
2026-03-26 01:26:14 +08:00
ec749314bc feat(data-source): 支持指数-ETF双轨数据获取及因子计算
- 新增使用Tushare获取A股ETF价格及净值数据的私有方法
- fetch_all方法支持接收完整代码配置,区分指数与ETF及市场类别
- 指数数据和ETF数据分别下载,ETF净值数据用于溢价率计算
- 采用A股交易日为主交易日历,非A股数据前向填充对齐
- 调整因子计算,支持指数价格计算因子,ETF价格计算收益率
- run_rotation脚本和RotationStrategy引擎适配指数-ETF配置格式
- 代码结构优化,增强多市场及加密货币处理能力
2026-03-25 22:01:44 +08:00
9ea84f0e57 feat(rotation): 支持混合数据源并优化因子计算和策略逻辑
- 删除旧的Tushare Token环境变量函数,简化配置
- 在配置文件中新增全市场指数及SSH隧道配置支持YFinance数据访问
- 更新compute_factors函数,支持长格式混合数据源,兼容旧宽格式数据
- 修改RotationStrategy使用HybridDataSource,支持Tushare与YFinance数据源混合
- 添加SSH隧道支持,实现安全访问非主市场数据
- 优化因子计算逻辑,提升缺失值处理和因子合并的鲁棒性
- 修正基准净值计算,兼容长宽格式基准数据处理
- 增强信号生成逻辑,处理因子得分中的NaN情况防止异常
2026-03-19 20:38:13 +08:00
988c2335fb chore(config): 添加环境变量示例及.gitignore更新
- 新增 .env.example,包含 Tushare API、钉钉机器人和PostgreSQL数据库配置模板
- 更新.gitignore,忽略本地配置文件如 .env.local 和 config_local.py
- 添加对报表文件命名规则的支持,保留示例文件不忽略
- 删除废弃的 chart.py 及相关图表模块代码
- 新增 config/settings.py,实现从环境变量读取配置的统一接口
- 设置数据目录及缓存目录,确保目录存在,提高配置管理规范性
2026-03-18 23:33:40 +08:00