Methodology
How the R-zone page is computed
Everything on /crises/r-zone is computed at build time by scripts/build_r_zone.py into data/parquet/r_zone.parquet and read through src/lib/rZone.ts. Nothing is typed into the prose. This page states the exact construction and every deviation from the paper.
The indicator
Greenwood, Hanson, Shleifer and Sorensen (2022), Eq. (2a)/(2b): High-Debt-Growth switches on when the three-year change in sector credit to GDP exceeds the pooled 80th percentile; High-Price-Growth when the three-year log change in the sector's real asset price exceeds the pooled 66.7th percentile; the R-zone is their product, per sector. The paper's published pooled cutoffs (its Table 1, footnote 8): business credit 8.99 pp, household credit 7.60 pp, real equity growth 26.56, real home-price growth 12.67 (both prices as 100 times the three-year log change). Recomputed at the same percentiles on this panel's pooled 1950-2016 distribution: 4.86, 6.10, 23.15, 12.65.
Panels and variables
- Panel A (annual): JST Macrohistory Release 6, 18 advanced economies, 1870-2020 (16 with equity data). Household credit = 100 x thh/gdp, business credit = 100 x tbus/gdp, both in pp of GDP; three-year changes require an unbroken annual grid (a reindexed year grid, so a series gap can never masquerade as a three-year change). The nominal equity index is cumulated per country from eq_capgain, with any null gain breaking the chain; real equity = index/cpi, real home price = hpnom/cpi, and three-year log changes require all four consecutive levels present.
- Panel B (quarterly): BIS total credit (WS_TC), households and NPISHs, lending from all sectors, percentage of GDP (unit_code 367), joined to BIS selected residential property prices (WS_SPP), real index 2010 = 100 (value_type R), on exact 12-quarter lags: 4404 country-quarters, 41 economies, 1973-2020. Household zone only: the estate holds no cross-country equity index, so no quarterly business zone exists.
Outcomes
A country-time is a positive if a crisis begins in years t+1 through t+3. Two chronologies: (i) the Baron-Verner-Xiong revised crisis list, the paper's own outcome variable (207 episodes after dropping wartime episodes, 1870-2016); (ii) Laeven-Valencia 2026 banking onsets (164 onsets, 1976-2023), the chronology the estate's credit-gap and DSR notes evaluate against. Crisis-level true-positive rates use the paper's Table 10 streak rule: an onset counts as caught if the zone was on in any of the three prior years, and is testable only if the zone is defined in at least one of them.
The live reading and the unrated rule
For each of the 59 countries in the BIS credit or property files, the household pair is evaluated at the latest quarter where BOTH three-year legs exist on an exact 12-quarter lag. A country above both of the paper's household cutoffs is in-zone; above one, that leg is flagged; above neither, out. A country missing either leg is UNRATED and listed with the missing leg named: 18 of 59 countries are unrated today. Unrated is never displayed as safe. The business zone is unrated live for every country (no equity leg in the estate); the NFC credit reading is displayed as the visible half of that pair.
Deviations from the paper
| # | This page | GHS (2022) | Why |
|---|---|---|---|
| D1 | Credit: JST loans to households (thh) and to non-financial business (tbus) over nominal GDP; BIS total credit (WS_TC, loans and debt securities) in the quarterly panel and live reading. | IMF Global Debt Database (loans plus debt securities) spliced with JST loans and BIS total credit for Thailand. | The IMF GDD is not in the estate. JST loans understate total business credit where bond finance matters; the BIS-era panels use the broader BIS measure. |
| D2 | Equity: a nominal price index cumulated from JST eq_capgain (capital gain, dividends excluded), deflated by JST cpi. Home prices: JST hpnom/cpi; BIS WS_SPP real index in the quarterly panel and live reading. | Global Financial Data equity price indices (IMF IFS and JST as fallback), deflated with World Bank WDI and Macrohistory inflation; BIS residential property prices supplemented by JST and OECD. | GFD is proprietary and not in the estate. The capital-gain index matches the paper's price-index (not total-return) convention. |
| D3 | Sample: 18 JST advanced economies annually (16 with equity data), plus a BIS quarterly household panel of 41 economies. No emerging-market annual leg. | 42 countries, advanced and emerging, annual, 1950-2016. | The estate has no long household/business credit split for emerging markets; coverage is stated rather than padded. |
| D4 | Forecast windows: BVX runs use t = 1950-2013 (list ends 2016); Laeven-Valencia runs use t = 1973-2020 (first onset 1976, last 2023). Horizon fixed at 3 years. | Forecasts stop at t = 2012 so horizons of 1 to 4 years share one sample. | Only the 3-year horizon is run here, so each panel extends to the last year whose full window the chronology can verify. |
| D5 | Cutoffs: the paper's published numeric cutoffs applied verbatim, AND the same 80th/66.7th percentiles recomputed on this panel's pooled 1950-2016 distribution. Both reported. | Pooled full-sample percentiles of their own 42-country panel (which produce the published numeric cutoffs). | Their numeric cutoffs are statistics of their panel. The page shows that the percentile construction, not the numbers, is what transfers. |
| D6 | No ongoing-crisis exclusion in the GHS-mirror runs; one Laeven-Valencia variant drops ongoing-crisis country-years the way the credit-gap note does. | All country-years through the forecast stop are binned; no exclusion. | Verbatim first; the exclusion variant makes the number comparable with the estate's other early-warning notes. |
| D7 | A live quarterly snapshot at the latest BIS quarter, household zone only; business zone unrated live. | No live reading; the paper's data end in 2016. | The live reading is the point of this page. The estate holds no cross-country equity index (verified by query: the only equity file is US bank tickers), so the business price leg cannot be computed and business status is unrated, never defaulted to out-of-zone. |
Sources and licenses
- Greenwood, R., S. G. Hanson, A. Shleifer and J. A. Sorensen (2022), "Predictable Financial Crises", Journal of Finance 77(2), 863-921, doi:10.1111/jofi.13105; NBER Working Paper 27396. All "GHS" figures and cutoffs on these pages are transcribed from the paper and labeled as its own.
- Jordà, Ò., M. Schularick and A. M. Taylor (2017), Macrohistory Database Release 6 (macrohistory.net, consulted 2026-07-09). Free for non-commercial use with citation and consultation date; derived statistics shown with attribution, raw series not redistributed.
- Baron, M., E. Verner and W. Xiong (2021), "Banking Crises Without Panics", Quarterly Journal of Economics 136(1); replication data, Harvard Dataverse doi:10.7910/DVN/ECC9GE (CC0 1.0).
- Laeven, L. and F. Valencia (2026), "Systemic Banking Crises Database: 1970-2025", IMF Working Paper WP/26/94.
- Bank for International Settlements, Data Portal bulk statistics: total credit to the non-financial sector (WS_TC, v2.0) and selected residential property prices (WS_SPP, v1.0), retrieved 2026-07-09. BIS terms permit use with attribution.
Recompute: uv run --with duckdb --with pandas --with pyarrow python scripts/build_r_zone.py, then diff data/parquet/r_zone.parquet. The build prints its own headline numbers for eyeball verification.