# install.packages("devtools")
devtools::install_github("muhsinciftci/tidyMacro")Home
High-Performance Vector Autoregressions and Local Projections in R
Welcome to the website of tidyMacro!
tidyMacro is an R package for fast estimation and identification of Structural Vector Autoregressions (VAR) and local projections via C++ (Rcpp/RcppArmadillo).
Functionality
- Fast VAR & VARX reduced form estimations
- Local projections estimations with clean syntax, support for macros
- Zero dependency on other packages. Ground up written in C++. All visualizations made with ggplot2 in R.
- Publication-ready plots out of the box. Each plot is a ggplot2 object, can be ex post customized
- The package comes with a proper theme
- Parallel bootstrap computations via OpenMP for maximum speed.
- Excellent documentation with detailed examples for every function
- Import data via tidyverse, clean, modify and then supply your final data piping as matrix for Armadillo calculations
- Example data sets for each replication via already transformed data
Models - Identification - Decompositions
Identification via short-run / recursive ordering ✅
- Impulse response functions ✅
- Residual based bootstraps
- Wild bootstraps
- Bias corrected impulse Response functions ✅
- Variance Decomposition ✅
- Historical Decomposition ✅
- Replication: Bloom (2009)
- Impulse response functions ✅
Identification via long run restrictions
Identification via external instruments (Proxy-SVAR) ✅
- Impulse Response functions ✅
- Moving block bootstraps
- Forecast error variance Decomposition ✅
- Historical Decomposition ✅
- First Stage F-stats ✅
- Recovering the shock series ✅
- Unit normalization
- One SD normalization
- Weak IV Robust IRF ✅
- Delta method
- Anderson-Rubin
- Replication: Känzig (2021)
- External instrument SVAR analysis for noninvertible shocks following Forni et al. (2022) ✅
- Impulse Response functions ✅
Identification via Internal instruments ✅
- Adding instrument to VAR as the first variable, then IRF identified recursively
- Other options in short run / recursive identification apply here
- Replication: Känzig (2021)
Identification via Heteroskedasticity following Rigobon (2003) ✅
- Impulse Response functions ✅
- Replication: Känzig (2021)
Identification via Sign, Narrative and Zero Restrictions ✅
- Impulse response functions ✅
- Historical Decomposition (Fry-Pagan draw) ✅
- Narrative restrictions
- Rejection sampling (VAR Toolbox convention) ✅
- Optional ADRR importance reweighting ✅
- Combined with external instruments (sign+IV)
- Single instrument
- Multiple instruments, jointly-identified shocks
- First-stage F-stats and R² for the instrumented equation(s) ✅
- Replication 1: Uhlig (2005) (sign only)
- Replication 2: Antolín-Díaz and Rubio-Ramírez (2018) (sign + narrative, Volcker 1979)
- Replication 3: Arias et al. (2019) (sign + single-instrument IV)
- Replication 4: Cesa-Bianchi and Sokol (2022) (sign + two-instrument IV, US financial shock)
Identification via Non-Gaussianity ⛔
Local Projections ✅
- Local projections with Exogenous Shocks
- Replicaion: Jorda and Taylor (2025) ✅
- Local projections IV
- Replication: Jorda and Taylor (2025) ✅
- Panel Local projections
- Replication: Almuzara and Sancibrián (2024) ✅
- Local Projections Difference in Differences ✅
- Replication: Dube et al. (2025)
- State Dependent Local projections ⛔
- Local projections with Exogenous Shocks
📚 How to Cite
Ciftci, Muhsin (2026). tidyMacro: A Fast, Tidy Toolkit for Applied Macroeconometrics. Available at SSRN: https://papers.ssrn.com/sol3/papers.cfm?abstract_id=7150339
or in LaTeX:
@article{ciftci2026tidymacro,
title = {tidyMacro: A Fast, Tidy Toolkit for Applied Macroeconometrics},
author = {Ciftci, Muhsin},
year = {2026},
journal = {SSRN Electronic Journal},
url = {https://papers.ssrn.com/sol3/papers.cfm?abstract_id=7150339}
}