feat(rotation): 支持混合数据源并优化因子计算和策略逻辑

- 删除旧的Tushare Token环境变量函数,简化配置
- 在配置文件中新增全市场指数及SSH隧道配置支持YFinance数据访问
- 更新compute_factors函数,支持长格式混合数据源,兼容旧宽格式数据
- 修改RotationStrategy使用HybridDataSource,支持Tushare与YFinance数据源混合
- 添加SSH隧道支持,实现安全访问非主市场数据
- 优化因子计算逻辑,提升缺失值处理和因子合并的鲁棒性
- 修正基准净值计算,兼容长宽格式基准数据处理
- 增强信号生成逻辑,处理因子得分中的NaN情况防止异常
This commit is contained in:
2026-03-19 20:38:13 +08:00
parent 062f500369
commit 9ea84f0e57
4 changed files with 139 additions and 46 deletions

View File

@@ -25,15 +25,6 @@ DATA_CACHE_DIR = PROJECT_ROOT / "data_cache"
DATA_CACHE_DIR.mkdir(exist_ok=True)
# ==================== API配置 ====================
def get_tushare_token() -> str:
"""从环境变量获取Tushare Token"""
token = os.getenv("TUSHARE_TOKEN")
if not token:
raise ValueError("请设置环境变量 TUSHARE_TOKEN")
return token
# ==================== 钉钉配置 ====================
def get_dingtalk_config() -> dict:
"""从环境变量获取钉钉配置"""