SPB Git

spb/wp29_uqo

Public

# F1-conf-03 — Leverage and next-year default (information-respecting)

# Question

What is the association between a firm's leverage at the end of year t and its default in year t+1? We use only information available at the end of year t. The estimand is b1 in the linear-probability model default_next = a + b1·leverage + b2·cash_ratio + b3·log_sales + e. It is estimated by OLS on firm-years with an observed outcome, with standard errors clustered by firm. The data are simulated (a synthetic panel).

# Data and exclusions

  • Input: data/firm_panel.csv, 2140 data rows (n_input_rows), 300 firms, 2016–2022.
  • Data problems found (data_issues):
    1. 40 rows are exact duplicates of another row (assembly error). One copy of each was kept. This leaves 2100 rows = 300 firms × 7 years (n_rows_after_dedupe).
    2. rating_2025 was assigned in 2025 using each firm's realised defaults through 2022, so it was not known at the end of year t. It is excluded (variables_excluded). In the deduplicated data, every observed default falls in rating D, which confirms that the field leaks the outcome.
    3. default_next is missing for 300 rows, all with origin year 2022 (outcome year 2023 lies after the data cut). These rows are excluded and not imputed.
  • Exclusion ledger (out/exclusions.csv): 2140 → 2100 (deduplication) → 2100 (column removal of rating_2025) → 1800 (outcome observed) → 1800 (complete predictors). Estimation sample: n_analysed = 1800 firm-years, n_firms = 300, origin years 2016–2021.

# Method

  • Baseline: the unconditional default rate in the estimation sample (default_rate).
  • Main model: OLS of default_next on an intercept plus predictors_used = leverage, cash_ratio and log_sales, all measured at the end of year t.
  • Standard errors are cluster-robust by firm_id (statsmodels, default small-sample correction).
  • No randomness is involved (random_seed = null).
  • out/analysis.py regenerates all outputs from data/.

# Results

  • Baseline default rate: 0.121 (default_rate).
  • beta_leverage = 0.264. Holding cash ratio and log sales fixed, a 0.10 higher leverage ratio is associated with about 2.6 percentage points higher probability of default in the next year.
  • Other coefficients: cash_ratio −0.186 (beta_cash_ratio); log_sales −0.0073 (beta_log_sales); intercept 0.090 (intercept).
  • In-sample R² = 0.035 (r2). The model explains little of the individual-level variation in default, as is typical for a binary outcome.
  • Feasibility: complete (feasibility).

# Uncertainty

  • The firm-clustered SE of the leverage coefficient is 0.0408 (se_leverage_cluster). The 95% CI is [0.184, 0.344] (ci95_leverage_low, ci95_leverage_high), with p ≈ 1e-10 (p_leverage_cluster).
  • The classical (non-clustered) SE is smaller, 0.0358 (se_leverage_classical). This is consistent with outcomes being correlated within firms.

# Limitations and open issues

  • This is an association, not a causal effect. Leverage may proxy for unobserved firm risk.
  • A linear-probability model can produce fitted values outside [0,1]. The coefficient is an average linear approximation.
  • Duplicates were resolved by keeping one copy. This is unambiguous here because all copies were identical.
  • Firms that default stay in the panel. The codebook does not say how post-default years are defined, so all observed firm-years are used as given.
  • The data are synthetic, so the results say nothing about real firms.
Files · main
Menu

Theme