SPB Git

spb/wp29_uqo

Public
3.4 KB · 35 lines markdown
1# F1-conf-03 — Leverage and next-year default (information-respecting)23## Question4Is a firm's leverage at the end of year t associated with default in year t+1, using only information available at the end of year t? Estimand: the coefficient on `leverage` in the linear-probability model default_next = a + b1·leverage + b2·cash_ratio + b3·log_sales + e, estimated by OLS with firm-clustered standard errors. The data are simulated (synthetic panel), not observed.56## Data and exclusions7Input `data/firm_panel.csv`: 2140 data rows read (`n_input_rows`). Ledger (`out/exclusions.csv`):81. Column `rating_2025` dropped (0 rows removed): it is a 2025 final-vintage rating built from the firm's realised default history through 2022 and its sample-average leverage, so it was not known at the end of year t and would leak the outcome (`variables_excluded`).92. 40 exact duplicate rows removed (assembly error; 2140 → 2100 = 300 firms × 7 years) (`supp_n_exact_duplicates`).103. 300 firm-years with missing `default_next` removed (all origin year 2022: outcome year 2023 lies after the end-2022 data cut); no imputation (2100 → 1800).114. Missing predictors: none (1800 → 1800).1213Estimation sample: `n_analysed` = 1800 firm-years, `n_firms` = 300, origin years 2016–2021 (`supp_years_analysed`). Detected data problems and how each was handled are listed in `data_issues`. These include a mass point of leverage at 0.02, which I kept as recorded.1415## Method16OLS of `default_next` on a constant, `leverage`, `cash_ratio` and `log_sales` (`predictors_used`). Standard errors are clustered by `firm_id` (300 clusters, `supp_n_clusters`) using statsmodels' CR1 small-sample correction. I re-derived the coefficient and SE independently with numpy and got the same values (`out/state/checks.md`). Nothing in the analysis is random (`random_seed` = null). Baseline: the unconditional default rate in the estimation sample (`default_rate`).1718## Results19- Baseline default rate: 0.121 (`default_rate`).20- `beta_leverage` = 0.264. Holding cash ratio and log sales fixed, a firm with 0.10 higher debt/assets at the end of year t has a default probability in t+1 that is about 2.6 percentage points higher. That is large next to the 12.1% baseline.21- Other coefficients (`supp_coefficients`): cash_ratio −0.186, log_sales −0.0073, intercept 0.090.22- `r2` = 0.035.2324## Uncertainty25- Firm-clustered SE of `beta_leverage`: 0.0408 (`se_leverage_cluster`). The 95% CI is [0.184, 0.344] (`supp_ci95_leverage_cluster`) and p ≈ 1e-10 (`supp_pvalue_leverage_cluster`).26- The heteroskedasticity-robust SE without clustering is 0.0374 (`supp_se_leverage_hc1`), so clustering makes the SE only slightly larger.2728## Limitations and open issues29- The estimate is a descriptive conditional association from a linear-probability model. It is not a causal effect. LPM fitted values can fall outside [0,1].30- The 2022 origin year cannot be used because its outcome had not been observed by the data cut, so the result applies to origin years 2016–2021.31- I dropped duplicate rows on the assumption that they are verbatim copies created when the file was assembled; all duplicates were identical in every field.32- The leverage mass point at 0.02 may reflect a floor or clipping in the source. I did not correct for it.33- The low R² (0.035, `r2`) means these three accounting ratios explain little of the firm-year variation in default.34- Feasibility: complete (`feasibility`).35
Files · 452964ee0fbbaa40fbbed2c87a54ca798ffd6a85
Menu

Theme