Rufineer v0.43.0
Account
Browse the docs

Example 12 of 13

Solar notes over six project loans

Based on community-solar-portfolio-model.xlsm

A securitisation. Six community-solar project companies in Massachusetts each carry a 20-year term loan. Two holding companies pool them, and an issuer sells Class A1 and A2 notes backed by the loans. The model sizes the loans, prices the notes, and works out yield, duration, average life and prepayment penalties. Design example: written in the full v0.5 language. The compiler builds the working core today, so this one doesn't compile yet. Source: examples/design/notes/.

Library
E. Consolidating Separate Projects / Consolidated Debt Issues (6 files)
Lower tier
Six loans (Peru, Russell, Westport, Tolland, Westhampton, New Marlborough) in two holding companies; monthly transfers of a third of the next quarterly debt service
Upper tier
Note A1 USD 30m at 4.05% over 20 years; Note A2 USD 5m at 9.35% over 7 years; both priced at 110%
Fees
Servicing 0.10% and 0.05% of opening balance; accounting 125 a month; audit 10,000 a year; rating 25,000 up front and 5,000 a year
Rebuild shown
5 files, 80 lines

Where each sheet goes

Workbook sheetsRufineer
Inputs, UT Inputsinputs.rfn and the Projects sheet of the data workbook
Peru, Russell, Westport, Tolland, Westhampton, New Marlboroughone module for p in inputs.projects
Sizing, Monthly, Quarterly, Annuallower_tier.rfn on monthly and quarterly rulers
UT Cash Flows, UT Payment Scheduleupper_tier.rfn: two bonds and a waterfall
Pricing, Yield, Premium, Prepaymentpricing.rfn

Source 5 files shown, 80 lines

model.rfn
model "Solar Notes" {
  currency  USD
  data      "solar_notes_inputs.xlsx"
}

timeline {
  start            2021-01-01
  operations       20y
  ruler monthly    month                    // project control accounts
  ruler quarterly  quarter ends Jan, Apr, Jul, Oct   // loan and note payment dates (5th)
}

What this model needed from the language

  • Bonds as components. bond gives interest, principal, yield, duration, average life and three prepayment penalty methods.
  • Two levels of debt. Project loans sit on a monthly ruler per project; notes sit on a quarterly ruler at the issuer, joined by the holding-company pooling.
  • Modules per project. Six project sheets from one module, grouped by holding company with where.
  • Fees on balances and fixed fees in the issuer waterfall, in the order the transaction description sets.