debt_built_schedule: Debt schedule for bullet and amortising loans

View source: R/debt.R

debt_built_scheduleR Documentation

Debt schedule for bullet and amortising loans

Description

Creates an annual schedule indexed from 0..maturity with an initial draw at year = 0, interest, amortisation, total payment, and end-of-year outstanding balance. The convention is no payment at year = 0. For both loan types, the outstanding principal is 0 at maturity up to rounding.

Usage

debt_built_schedule(
  principal,
  rate_annual,
  maturity,
  type = c("amort", "bullet"),
  extra_amort_pct = 0,
  arrangement_fee_pct = 0
)

Arguments

principal

Numeric scalar. Amount borrowed at year = 0 (greater than or equal to 0).

rate_annual

Numeric scalar in [0, 1]. Annual nominal interest rate.

maturity

Integer scalar greater than or equal to 1. Duration in years; returned years are 0..maturity.

type

Character scalar. Either "amort" (constant payment) or "bullet".

extra_amort_pct

Numeric scalar in [0, 1]. Additional annual amortisation rate (used only for "bullet").

arrangement_fee_pct

Numeric scalar in [0, 1]. Arrangement fee rate applied to principal.

Value

A tibble with columns year, debt_draw, interest, amortization, payment, arrangement_fee, outstanding_debt, and loan_init.

Examples

sch_b <- debt_built_schedule(6e6, 0.045, maturity = 5, type = "bullet")
sch_a <- debt_built_schedule(6e6, 0.045, maturity = 5, type = "amort")
sch_b
sch_a


cre.dcf documentation built on April 10, 2026, 5:08 p.m.