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):- 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). rating_2025was 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.default_nextis missing for 300 rows, all with origin year 2022 (outcome year 2023 lies after the data cut). These rows are excluded and not imputed.
- 40 rows are exact duplicates of another row (assembly error). One copy of each was kept. This leaves 2100 rows = 300 firms × 7 years (
- 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_nexton an intercept pluspredictors_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.pyregenerates all outputs fromdata/.
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.