| add_credit_ratios | R Documentation |
Align a project cash-flow table with a debt schedule and compute standard credit ratios for each period:
debt service coverage ratio (DSCR),
interest cover ratio (ICR),
initial and current debt yield,
forward loan-to-value (LTV) based on next-period NOI.
Optionally, simple covenant flags are added when threshold values are supplied.
add_credit_ratios(
cf_tab,
debt_sched,
exit_yield,
covenants = NULL,
dscr_basis = c("noi", "gei", "cfads"),
cfads_ti_lc = NULL,
ignore_balloon_in_min = FALSE,
maturity_year = NULL
)
cf_tab |
A data.frame or tibble of project cash flows over years 0..N,
typically the output of |
debt_sched |
A data.frame or tibble representing the debt schedule,
typically the output of |
exit_yield |
Numeric scalar; exit yield (in decimal form, for example
0.05) used to compute forward values as |
covenants |
Optional list with elements |
dscr_basis |
Character string specifying the numerator used for DSCR.
One of |
cfads_ti_lc |
Optional object used to construct a CFADS adjustment for
tenant-improvement or leasing-cost allowances. If a list, the element
|
ignore_balloon_in_min |
Logical scalar. If |
maturity_year |
Optional integer scalar giving the contractual maturity
year of the facility. Periods with |
A tibble equal to cf_tab with the following additional
columns:
gei, noi (created if missing),
payment, interest, outstanding_debt,
noi_fwd, value_forward,
dscr, interest_cover_ratio,
debt_yield_init, debt_yield_current,
ltv_forward,
covenant indicators when covenants is supplied.
When ignore_balloon_in_min = TRUE and maturity_year is
provided, the object also carries an attribute
"min_dscr_pre_maturity" containing the minimum DSCR before maturity.
cf_tab <- data.frame(
year = 0:3,
gei = c(0, 120, 123, 126),
opex = c(0, 40, 41, 42),
loan_init = c(2000, NA, NA, NA)
)
debt_sched <- data.frame(
year = 0:3,
payment = c(0, 150, 150, 2150),
interest = c(0, 100, 95, 90),
outstanding_debt = c(2000, 2000, 1950, 1900),
debt_draw = c(2000, 0, 0, 0)
)
out <- add_credit_ratios(
cf_tab = cf_tab,
debt_sched = debt_sched,
exit_yield = 0.05,
covenants = list(dscr_min = 1.10, ltv_max = 0.70)
)
out
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.