SPB Git forge

spb/wp8_uqo

Public
3commits 1branches 1releases
4.2 MBsize
maindefault branch
1 h agolast push
Python 56.2% TeX 43.7%
7.4 KB · 133 lines markdown
Rendered Raw Blame History
1<!-- Author: Simon-Pierre Boucher — simon-pierre.boucher@uqo.ca -->2# 🎯 Prediction Markets as Arrow–Debreu Securities: Evidence from Polymarket34**UQO Working Paper No. 8** — *Price Discovery, Market Completeness, and Information Aggregation in Blockchain-Based State-Contingent Claims*56[![Paper](https://img.shields.io/badge/paper-PDF%20(58%20p.)-b31b1b?logo=latex&logoColor=white)](paper/main.pdf)7[![Python](https://img.shields.io/badge/python-3.12%2B-3776AB?logo=python&logoColor=white)](pyproject.toml)8[![Data](https://img.shields.io/badge/data-Polymarket%20Gamma%2FCLOB%20·%20FRED%20·%20Yahoo-4051b5)](data/raw/README.md)9[![Reproducible](https://img.shields.io/badge/reproducible-end--to--end%20pipeline-2e7d32)](scripts/)10[![Institution](https://img.shields.io/badge/UQO-D%C3%A9pt.%20des%20sciences%20administratives-16365c)](https://uqo.ca)11[![Author](https://img.shields.io/badge/author-Simon--Pierre%20Boucher-16365c)](mailto:simon-pierre.boucher@uqo.ca)1213> **TL;DR** — Polymarket binary contracts are modelled as Arrow–Debreu state-contingent claims. On the Fed June 2026 rate-decision neg-risk group (five mutually exclusive outcomes) and the 2024 U.S. Presidential Election markets, state prices sum to **1.02 on average** (146 obs., mean deviation 0.025) with no persistent arbitrage; prediction-market prices move **15–45 minutes ahead** of Treasury futures around FOMC and CPI releases; and Roll spreads / Amihud ratios of high-profile contracts rival those of established markets. Decentralized prediction markets behave as effective Arrow–Debreu economies.1415---1617## 📌 Status1819| Item | Value |20|---|---|21| Version | 1.0 (May 2026) |22| SSRN | not yet submitted |23| Journal | — |24| Code & data | reproducible from `scripts/run_analysis.py` (public APIs; FRED key required) |2526## 🎯 What this paper does2728The paper asks whether blockchain prediction markets satisfy the textbook properties of complete Arrow–Debreu markets: (i) completeness and no-arbitrage — do state prices of mutually exclusive outcomes sum to the discount factor and stay positive? (ii) price discovery — do state prices incorporate macro news before conventional markets? (iii) microstructure quality — are these contracts liquid enough to be used as state-contingent claims?2930```31Σ_s π_s = 1/(1+r_f)   (completeness)      π_s > 0 ∀s   (no arbitrage)32```3334Tests combine completeness and arbitrage-violation statistics, risk-neutral densities and moments, event studies around FOMC/CPI announcements, Hasbrouck information shares, VAR/Granger causality between Polymarket and Treasury futures, and GARCH/HAR-RV volatility models.3536## 🏆 Headline results3738| Object | Estimate |39|---|---|40| Mean sum of state prices (Fed neg-risk group) | 1.0205 (sd 0.053, n = 146) |41| Mean deviation from unity | 0.0248; max 0.570; all state prices positive |42| Lead of Polymarket over Treasury futures around FOMC/CPI | 15–45 minutes |43| Liquidity (Roll spread, Amihud) of high-profile contracts | comparable to established markets |4445## 🗂 Repository layout4647```48polymarket-arrow-debreu/49├── data/50│   ├── raw/                  # Polymarket / FRED / Yahoo snapshots (see data/raw/README.md) — not committed51│   └── processed/            # cleaned parquet panels (committed)52├── src/53│   ├── config.py             # paths, API endpoints, market registry, event dates54│   ├── api/                  # polymarket.py, fred.py, yahoo.py, runner.py55│   ├── cleaning/             # polymarket_cleaner, macro_cleaner, yahoo_cleaner56│   ├── features/             # engineering.py, event_windows.py57│   ├── models/               # arrow_debreu, event_study, price_discovery, liquidity, volatility58│   └── plots/                # figures.py, tables.py, style.py59├── scripts/60│   └── run_analysis.py       # master pipeline: data → cleaning → models → figures/tables61├── results/tables/           # table1…table8 (.tex fragments input by the paper)62├── figures/                  # fig1…fig12 (PDF/PNG)63└── paper/                    # main.tex + sections/ + appendix/ + references.bib → main.pdf64```6566## 🚀 Quick start6768```bash69python3 -m pip install -e .            # dependencies from pyproject.toml70cp .env.example .env                   # set FRED_API_KEY71python3 scripts/run_analysis.py        # --skip-data / --skip-models / --skip-paper72cd paper && make                       # latexmk → main.pdf73```7475## 🗃 Data7677Minute-level price histories, order books and metadata for the Fed June 2026 rate-decision markets (event 101772, 5 outcomes), four closed Fed markets and the 2024 Presidential Election markets (Trump / Harris) from the Polymarket Gamma and CLOB APIs; fed funds rate, CPI and unemployment from FRED; Treasury futures and benchmarks from Yahoo Finance. Snapshot 2026-05-22. See `data/raw/README.md`.7879## 🔬 Methodology80811. **Completeness & no-arbitrage** — sum of state prices, positivity, implied discount factor, arbitrage-violation detection (`src/models/arrow_debreu.py`).822. **Risk-neutral density & moments** extracted from the neg-risk group.833. **Event studies** around FOMC and CPI releases with cumulative abnormal state-price responses (`event_study.py`).844. **Price discovery** — Hasbrouck information shares, VAR and Granger causality vs Treasury futures (`price_discovery.py`).855. **Liquidity** — Roll spreads, Amihud illiquidity (`liquidity.py`).866. **Volatility** — realized measures, GARCH and HAR-RV (`volatility.py`).8788## 🖼 Figures & tables inventory8990| Figure | Content |91|---|---|92| `fig1_state_prices` | state-price dynamics, Fed June 2026 group |93| `fig2_completeness_test` | sum of state prices over time |94| `fig3_risk_neutral_density` | implied risk-neutral density |95| `fig5_event_study_cars` | cumulative abnormal responses around FOMC/CPI |96| `fig7_granger_heatmap` | Granger-causality matrix |97| `fig9_volatility` | realized volatility measures |98| `fig10_liquidity` | Roll spread and Amihud ratios |99| `fig11_election_case_study` | 2024 election markets |100| `fig12_arbitrage_violations` | arbitrage-violation episodes |101102Tables (`results/tables/`): descriptive statistics, summary statistics, completeness tests, event study, Granger, VAR, GARCH, HAR-RV.103104## ⚠️ Limitations105106- Two event families (one Fed neg-risk group, one election) — a small set of high-profile markets.107- Polymarket order-book snapshots are point-in-time; depth over the full sample is not observed.108- Price-discovery leads are measured at the minute frequency on days with scheduled announcements only.109110## 📝 Citation111112```bibtex113@techreport{boucher2026polymarket,114  author      = {Boucher, Simon-Pierre},115  title       = {Prediction Markets as Arrow--Debreu Securities: Evidence from Polymarket},116  institution = {Universit\'e du Qu\'ebec en Outaouais, D\'epartement des sciences administratives},117  type        = {Working Paper},118  number      = {8},119  year        = {2026},120  month       = {May}121}122```123124## 👤 Author & contact125126**Simon-Pierre Boucher** — Département des sciences administratives,127Université du Québec en Outaouais (UQO), Gatineau, QC.128📧 [simon-pierre.boucher@uqo.ca](mailto:simon-pierre.boucher@uqo.ca)129130## 🗒 Notes131132- Harmonisation 2026-10-17: `tables/` moved to `results/tables/` (paths updated in `src/config.py` and the paper), `run_analysis.py` moved to `scripts/`, empty `logs/`/`notebooks/` removed; `fig5_event_study_cars` is included as PNG (the PDF export was missing).133