MALP-Meta: An Empirical Evaluation of Maximum Agreement Linear Predictors for Directional Equity Market Forecasting
收藏资源简介:
Contents Raw and intermediate data spy_hourly_raw.csv, spy_hourly_clean.csv — SPY hourly OHLCV (Yahoo Finance, via yfinance) vix_fred_clean.csv — CBOE Volatility Index (FRED, series VIXCLS) spy_features_full.csv — 36 engineered features spy_features_pruned.csv — 25 features after VIF-based multicollinearity pruning spy_train_primary_pruned.csv, spy_test_primary_pruned.csv — primary chronological split (77.4%/22.6%) spy_train_primary_full36.csv, spy_test_primary_full36.csv — primary split, full feature set spy_train_vix_pruned.csv, spy_test_vix_pruned.csv — secondary VIX-regime split Analysis scripts (run in this order) data_diagnostics.py — missingness, normality, stationarity, autocorrelation, multicollinearity, outliers feature_pruning.py — iterative VIF elimination (36 → 25 features) rebuild_splits.py — primary and secondary (VIX-regime) train/test splits baseline_models.py / baseline_models_vix.py — OLS, Ridge, Random Forest, XGBoost malp_meta_learner.py / malp_meta_learner_vix.py — MALP-Meta meta-learner (vanilla, L2, simplex variants) ablation_study.py — three-arm ablation (meta-learner vs. average, pruned vs. full features, leave-one-out) robustness_strategies.py — rolling window, domain-adaptive, temporally stable feature selection sensitivity_analysis.py — sensitivity to k, composite-score weighting, split point interpretability_analysis.py — Agreement-Based Permutation Importance, grouped importance, ALE figure_theme.py / extra_figures.py — all manuscript figures Results Intermediate result CSVs (baseline_results.csv, malp_ml_all_variants_results.csv, ablation_results.csv, robustness_strategies_results.csv, sensitivity_k.csv, sensitivity_weighting.csv, sensitivity_split.csv, api_scores.csv, grouped_importance.csv) and generated figures (*.png). Reproducibility reproducibility_manifest.json — MD5 checksums, file sizes, and row/column counts for every script and data file, generated independently in two separate computing environments. See Section 8 of the manuscript for the full reproducibility statement, including a documented case of Random Forest cross-environment non-determinism and two implementation errors caught and corrected during development. Requirements Python 3.12, scikit-learn, XGBoost, PyTorch, pandas, NumPy, SciPy, matplotlib. Install with pip install scikit-learn xgboost torch pandas numpy scipy matplotlib. Data provenance SPY data via the unofficial yfinance interface to Yahoo Finance (subject to change without notice, a standard limitation of this access method). VIX data via the official, documented FRED API. See manuscript Section 8 for the full provenance discussion.



