# 🌐 Intraday Volatility Transmission Across Asset Classes **UQO Working Paper No. 6** β€” *A Connectedness Analysis of Equities, Foreign Exchange, Commodities, and Cryptocurrencies* [![Paper](https://img.shields.io/badge/paper-PDF%20(48%20p.)-b31b1b?logo=latex&logoColor=white)](paper/main.pdf) [![Python](https://img.shields.io/badge/python-3.11%2B-3776AB?logo=python&logoColor=white)](requirements.txt) [![Data](https://img.shields.io/badge/data-235M%205--min%20bars%20Β·%2010%20instruments%20Β·%20DuckDB-4051b5)](data/raw/README.md) [![Reproducible](https://img.shields.io/badge/reproducible-VAR%20stage%20from%20committed%20CSV-2e7d32)](scripts/) [![Institution](https://img.shields.io/badge/UQO-D%C3%A9pt.%20des%20sciences%20administratives-16365c)](https://uqo.ca) [![Author](https://img.shields.io/badge/author-Simon--Pierre%20Boucher-16365c)](mailto:simon-pierre.boucher@uqo.ca) > **TL;DR** β€” Daily realized volatility is built from 5-minute bars (2008–2026) for 10 instruments β€” equity futures (ES, NQ), FX (EURUSD, USDJPY, GBPUSD), commodities (GC, CL), crypto (BTC, ETH) and the VIX β€” and the Diebold–Yilmaz connectedness of **log** RV is estimated on the **2,514 trading days** common to all series (2016-03 β†’ 2026-03; VAR(4), 10-day GFEVD, residual-bootstrap 90 % intervals). Total spillover is **54.8 %** [53.1, 56.9]. ES and NQ are the only robust net transmitters (**+36.0 / +25.6 pp**); the RV of the VIX (**βˆ’20.6**), crude oil (βˆ’14.2) and sterling (βˆ’13.2) are net receivers; BTC/ETH net positions are indistinguishable from zero. Crypto's exposure to traditional assets rises from < 10 % of forecast-error variance (2017, 2019) to 20–46 % (2020–2025), with the flow running **from U.S. equities to crypto**: in the spot-ETF era BTC is a significant net receiver (βˆ’12.4 [βˆ’20.4, βˆ’2.1]). Connectedness peaks in 2025 (71.5 %). Intraday (time stamps converted from Eastern to UTC), the U.S. cash session generates 53–63 % of equity/VIX daily variance while bitcoin's hourly profile is nearly flat (peak/trough 1.2); weekend bitcoin volatility does not predict Monday equity volatility. --- ## πŸ“Œ Status | Item | Value | |---|---| | Version | **1.1 (October 2026)** β€” revised 2026-10-17 by the editorial-board review (v1.0: May 2026) | | SSRN | not yet submitted | | Journal | β€” (realistic targets: IRFA, JIFMIM; see `docs/REVIEW-REPORT.md` Β§9) | | Code & data | VAR/GFEVD stage fully reproducible from the committed `results/daily_rv_all.csv` (`scripts/02_…`, β‰ˆ 1 min); intraday stage from local 1-minute bars (`scripts/03_…`); raw 5-minute DuckDB files not redistributed | ## 🎯 What this paper does The paper measures how realized-volatility shocks travel across asset classes at the daily frequency, using realized volatility from 5-minute data rather than range- or return-based proxies, and exploits the intraday data a second time to study trading sessions. Ten instruments are followed over 2008–2026; the generalized forecast-error variance decomposition of a VAR on log realized volatility yields directional, net and total spillovers with bootstrap intervals: ``` RV_{i,t} = Ξ£_k rΒ²_{i,t,k} (5-min) β†’ y = ln √(252Β·RV) on common trading days β†’ VAR(4), GFEVD(H = 10) β†’ TSI, TO, FROM, NET (+ 90 % bootstrap CI) ``` Full-sample, robustness-grid (15 specifications), rolling (200/250/500 trading days), regime (pre-COVID, COVID crash, 2022 hikes, spot-ETF era) and calendar-year decompositions are complemented by Granger tests with HAC inference, a UTC-correct hourly/session analysis (Asian / European / U.S.) and session-ordered predictive regressions between equity futures, the VIX and bitcoin. ## πŸ† Headline results | Object | Estimate (v1.1) | |---|---| | Total spillover index, 2016-03 β†’ 2026-03 (T = 2,514) | 54.8 % [53.1, 56.9] | | Net spillover ES / NQ | +36.0 [29.9, 41.5] / +25.6 [19.0, 31.3] pp | | Net spillover VIX (RV of index changes) / CL / GBPUSD | βˆ’20.6 / βˆ’14.2 / βˆ’13.2 pp (all CIs exclude 0) | | Net spillover BTC / ETH | +1.7 [βˆ’3.3, 6.4] / βˆ’2.4 [βˆ’7.9, 2.1] pp | | Own-shock share BTC / ETH ; BTC↔ETH | 66.7 / 64.9 % ; 27–28 % | | Share of BTC variance from traditional assets | 6.3 % full sample ; 6.8 % (2019) β†’ 34 % (2020) β†’ 46 % (2025) | | Spot-ETF era (2024-01 β†’ 2026-03): NET BTC / ETH | βˆ’12.4 [βˆ’20.4, βˆ’2.1] / βˆ’19.5 [βˆ’27.7, βˆ’9.2] pp | | COVID crash (T = 85, VAR(1)): NET USDJPY | +81.8 [+7.3, +135.3] pp | | Rolling TSI (200 td): mean / min / max | 61.9 % / 50.5 % (2017-10-27) / 73.4 % (2025-09-24) | | Granger ES β†’ RV(VIX) | F = 19.9, HAC Wald 62.8, p < 0.001 | | U.S.-session share of daily variance: ES / NQ / VIX | 53 / 54 / 63 % ; BTC hourly peak/trough = 1.2 | | Weekend BTC RV β†’ Monday ES U.S.-session RV | coef βˆ’0.04 (s.e. 0.05), not significant | ## πŸ—‚ Repository layout ``` intraday-volatility-connectedness/ β”œβ”€β”€ data/raw/README.md # 4 DuckDB 5-min databases (not committed) + 1-min bars used by 03_ (sibling WP 12) β”œβ”€β”€ scripts/ β”‚ β”œβ”€β”€ 01_analysis.py # stage 1 (May 2026): RV construction β†’ results/daily_rv_all.csv ; stages 3–8 superseded β”‚ β”œβ”€β”€ 02_connectedness_revision.py # stage 2 (Oct 2026): trading-day panel, log RV, VAR/GFEVD, bootstrap, robustness, rolling, regimes, yearly, Granger β”‚ └── 03_intraday_sessions.py # stage 3 (Oct 2026): ETβ†’UTC conversion, hourly profile, session RV, session-ordered regressions β”œβ”€β”€ results/ # daily_rv_all.csv, table1_… (v1.0) ; rev_*.csv (v1.1) β”œβ”€β”€ figures/ # fig1…fig8 PNG (copied into paper/figures) β”œβ”€β”€ paper/ # main.tex + sections/ + appendix/ + tables/ (generated .tex) + references.bib β†’ main.pdf └── docs/ # REVIEW-REPORT.md, CHANGELOG-REVISION.md, main_pre-revision-20261017.pdf ``` ## πŸš€ Quick start ```bash python3 -m pip install -r requirements.txt # optional stage 1: place the four DuckDB files in data/raw/ (or export WP6_DATA_DIR) β€” β‰ˆ 10 min, β‰ˆ 8 GB RAM python3 scripts/01_analysis.py # stage 2 (no raw data needed): all connectedness results, tables and figures 2–4, 6–8 β€” β‰ˆ 1 min python3 scripts/02_connectedness_revision.py # stage 3: intraday sessions (export WP6_MINUTE_DIR=/path/to/1-min parquets) β€” β‰ˆ 35 s python3 scripts/03_intraday_sessions.py cd paper && make # latexmk β†’ main.pdf ``` ## πŸ—ƒ Data 5-minute OHLCV bars from FirstRate Data, 2008–2026, **time stamps in U.S. Eastern time**: continuous futures (ES, NQ, GC, CL), spot FX (EURUSD, USDJPY, GBPUSD), spot crypto (BTC, ETH, composite of exchanges) and the VIX index. Realized volatility is the daily sum of squared 5-minute log returns on Eastern-time calendar days (β‰₯ 20 bars; returns beyond 20 sample s.d. dropped β€” a v1.0 choice disclosed in v1.1). The VAR panel is the set of trading days on which all ten instruments have an own RV (CBOE calendar, no forward filling). Intraday sessions use 1-minute bars of the same vendor converted to UTC. See `data/raw/README.md`. ## πŸ”¬ Methodology 1. **Realized volatility** per instrument and day (`01_analysis.py`), log-transformed for the VAR (ADF/KPSS reported). 2. **Diebold–Yilmaz (2012) connectedness**: VAR(4) (Hannan–Quinn), generalized FEVD at H = 10, TSI / TO / FROM / NET and net pairwise spillovers; **residual bootstrap** (B = 500) for 90 % intervals. 3. **Robustness grid**: levels vs log, p ∈ {1,2,3,6}, H ∈ {5,20}, weekend-inclusive crypto RV, sub-periods, exclusion of VIX / crypto. 4. **Rolling** windows of 200 / 250 / 500 trading days; **regimes** (4) and **calendar years** with intervals. 5. **Granger causality** (F and HAC Wald) on daily log RV. 6. **Sessions**: hourly profile in UTC, session RV shares, session-ordered predictive regressions, weekend-BTC β†’ Monday-ES test. ## πŸ–Ό Figures & tables inventory | Figure | Content | |---|---| | `fig1_rv_timeseries` | daily realized volatility, 10 instruments (v1.0) | | `fig2_connectedness_heatmap` | full-sample GFEVD shares | | `fig3_rolling_spillover` | rolling TSI, 200/250/500 trading days | | `fig4_net_spillovers_regimes` | net spillovers by regime with 90 % intervals | | `fig5_hourly_volatility` | hourly |5-min return| by UTC hour, ES/NQ/VIX/BTC | | `fig6_net_directional_btc_es` | rolling net spillovers BTC and ES | | `fig7_network_graph` | network of net pairwise spillovers | | `fig8_yearly_crypto_integration` | BTC net spillover and exposure to traditional assets by year | Tables (`paper/tables/*.tex`, generated from `results/rev_*.csv`): RV descriptives, full connectedness with CIs, robustness grid, regimes (summary + 4 full matrices), calendar years, Granger, sessions, session-ordered regressions, weekend test, construction audit, lag selection, rolling summary. ## ⚠️ Limitations - 5-minute returns beyond 20 s.d. were dropped before RV was computed (v1.0 pipeline; raw bars not available to re-run); composite crypto feed shows cross-venue price oscillations in 2017 (BTC RV > 1,000 % annualized on a few days β€” reproduced on the vendor's 1-minute feed). - Continuous futures splice contracts at roll dates; roll returns are not removed. - Linear, symmetric VAR; i.i.d. residual bootstrap (indicative intervals); 10 instruments, no fixed-income series. - A "day" is an Eastern-time calendar day, which splits the Globex session; crypto weekend variance enters only in a robustness check. ## πŸ“ Citation ```bibtex @techreport{boucher2026connectedness, author = {Boucher, Simon-Pierre}, title = {Intraday Volatility Transmission Across Asset Classes: A Connectedness Analysis of Equities, Foreign Exchange, Commodities, and Cryptocurrencies}, institution = {Universit\'e du Qu\'ebec en Outaouais, D\'epartement des sciences administratives}, type = {Working Paper}, number = {6}, year = {2026}, month = {October}, note = {Version 1.1} } ``` ## πŸ‘€ Author & contact **Simon-Pierre Boucher** β€” DΓ©partement des sciences administratives, UniversitΓ© du QuΓ©bec en Outaouais (UQO), Gatineau, QC. πŸ“§ [simon-pierre.boucher@uqo.ca](mailto:simon-pierre.boucher@uqo.ca) ## πŸ—’ Notes - **Revision 2026-10-17 (v1.0 β†’ v1.1)**: scientific review by the editorial board β€” see `docs/REVIEW-REPORT.md` (diagnosis, verdicts, recommended analyses not executed, publication readiness) and `docs/CHANGELOG-REVISION.md` (audit trail of every correction, references verified/added/removed, re-analyses). Pre-revision state: git tag `pre-revision-20261017`, `docs/main_pre-revision-20261017.pdf`. - Main corrections: trading-day panel instead of forward-filled calendar days; log RV; bootstrap intervals; Easternβ†’UTC time stamps in the intraday analysis; subtitle "Fixed Income" β†’ "Foreign Exchange" (no fixed-income instrument in the sample); bibliography converted to `references.bib` (natbib/aer), 45 β†’ 70 verified references. - `results/table2…table4*.csv` and `rolling_total_spillover.csv` are the v1.0 outputs, kept for the audit; v1.1 outputs are prefixed `rev_`. - The original flat manuscript (`paper.tex`, May 2026) is archived in `Recherche-UQO/_archives/versions-mai-2026/intraday-volatility-connectedness--flat-tex-20260520/`.