fix: 全面修复代码质量和报告准确性问题
代码修复 (16 个模块): - GARCH 模型统一改用 t 分布 + 收敛检查 (returns/volatility/anomaly) - KS 检验替换为 Lilliefors 检验 (returns) - 修复数据泄漏: StratifiedKFold→TimeSeriesSplit, scaler 逐折 fit (anomaly) - 前兆标签 shift(-1) 预测次日异常 (anomaly) - PSD 归一化加入采样频率和单边谱×2 (fft) - AR(1) 红噪声基线经验缩放 (fft) - 盒计数法独立 x/y 归一化, MF-DFA q=0 (fractal) - ADF 平稳性检验 + 移除双重 Bonferroni (causality) - R/S Hurst 添加 R² 拟合优度 (hurst) - Prophet 递推预测避免信息泄露 (time_series) - IC 计算过滤零信号, 中性形态 hit_rate=NaN (indicators/patterns) - 聚类阈值自适应化 (clustering) - 日历效应前后半段稳健性检查 (calendar) - 证据评分标准文本与代码对齐 (visualization) - 核心管道 NaN/空值防护 (data_loader/preprocessing/main) 报告修复 (docs/REPORT.md, 15 处): - 标度指数 H_scaling 与 Hurst 指数消歧 - GBM 6 个月概率锥数值重算 - CLT 限定、减半措辞弱化、情景概率逻辑修正 - GPD 形状参数解读修正、异常 AUC 证据降级 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -245,9 +245,8 @@ def _run_prophet(train_df: pd.DataFrame, val_df: pd.DataFrame) -> Dict:
|
||||
|
||||
# 转换为对数收益率预测(与其他模型对齐)
|
||||
pred_close = forecast['yhat'].values
|
||||
# 用前一天的真实收盘价计算预测收益率
|
||||
# 第一天用训练集最后一天的价格
|
||||
prev_close = np.concatenate([[train_df['close'].iloc[-1]], val_df['close'].values[:-1]])
|
||||
# 使用递推方式:首个prev_close用训练集末尾真实价格,后续用模型预测价格
|
||||
prev_close = np.concatenate([[train_df['close'].iloc[-1]], pred_close[:-1]])
|
||||
pred_returns = np.log(pred_close / prev_close)
|
||||
|
||||
print(f" 预测完成,验证期: {val_df.index[0]} ~ {val_df.index[-1]}")
|
||||
|
||||
Reference in New Issue
Block a user