Rethinking Portfolio Risk: Forecasting Volatility Through Cointegrated Asset Dynamics

ArXiv ID: 2509.23533 “View on arXiv”

Authors: Gabriele Casto

Abstract

We introduce the Historical and Dynamic Volatility Ratios (HVR/DVR) and show that equity and index volatilities are cointegrated at intraday and daily horizons. This allows us to construct a VECM to forecast portfolio volatility by exploiting volatility cointegration. On S&P 500 data, HVR is generally stationary and cointegration with the index is frequent; the VECM implementation yields substantially lower mean absolute percentage error (MAPE) than covariance-based forecasts at short- to medium-term horizons across portfolio sizes. The approach is interpretable and readily implementable, factorizing covariance into market volatility, relative-volatility ratios, and correlations.

Keywords:

Complexity vs Empirical Score

  • Math Complexity: 8.0/10
  • Empirical Rigor: 7.0/10
  • Quadrant: Holy Grail
  • Why: The paper employs advanced econometric methods including cointegration analysis and VECM modeling, requiring significant mathematical sophistication. Empirical validation is demonstrated on S&P 500 data with quantitative metrics like MAPE, indicating strong practical implementation.
  flowchart TD
    A["Research Goal<br>Forecast portfolio volatility<br>exploiting cointegrated dynamics"] --> B["Data & Inputs<br>S&P 500 intraday & daily data<br>Equity & index volatilities"]
    B --> C["Methodology: Historical Volatility Ratio<br>Compute relative variance ratios<br>Check for stationarity & cointegration"]
    C --> D["Methodology: Dynamic Volatility Ratio<br>VECM estimation<br>Exploit cointegration for forecasts"]
    D --> E["Key Findings/Outcomes"]
    subgraph E ["Outcomes"]
        F1["HVR is typically stationary<br>Volatilities are cointegrated"]
        F2["VECM forecasts reduce MAPE<br>vs. covariance benchmarks<br>at short-medium horizons"]
        F3["Interpretable decomposition<br>Market Volatility +<br>Relative Ratios + Correlations"]
    end

    %% Styling
    classDef goal fill:#e1f5fe,stroke:#01579b,stroke-width:2px
    classDef data fill:#fff3e0,stroke:#e65100,stroke-width:2px
    classDef method fill:#f3e5f5,stroke:#4a148c,stroke-width:2px
    classDef outcome fill:#e8f5e9,stroke:#1b5e20,stroke-width:2px

    class A goal
    class B data
    class C,D method
    class E,F1,F2,F3 outcome