Skip to content
edgewisedataby Wayne Phillips

Excel LAMBDA · Municipal finance

Sizing a bond issue to a coverage test

Par comes out as an output rather than going in as a guess. Verified to the cent against two published benchmarks.

  • LAMBDA
  • Dynamic arrays
  • Debt capacity

Verified against published benchmarks

Tax-exempt par, matched exactly
$5,941,235,000
Taxable par, matched exactly
$5,963,525,000
Maturities off by
Zero

Detail

Sizing a new serial issuance is circular. Each period's maturity is sized to a debt service coverage test, but the tranches that creates are what generate the interest the coverage test then has to absorb. Par is not something you can look up and feed in — it is the answer.

The function resolves the circularity by bisecting on total annual coupon, where the residual is monotonic and convergence is unconditional regardless of where the search starts.

The second problem was subtler. A coupon curve means each tranche carries its own rate, and the coupon on the tranche maturing in a given year is not the rate applied to that year's balance. Interest owed in any year is the sum of coupons on every tranche still outstanding, including maturities far in the future. With a flat rate the two readings are algebraically identical, which is exactly why a flat 5% test never exposes the bug. Against the taxable curve — 4.469% rising to 5.237% — deriving interest from the balance is wrong by as much as $7.0 million a year, and it changes sign, overstating the early years and understating the late ones.

So the function never derives interest from the balance. It carries the remaining annual coupon forward and retires each tranche's coupon as that tranche matures. It also handles a reserve sized off maximum annual debt service with its earnings credited back, and par rounding at $1, $1,000 or $5,000.

It is verified against both Montague DeRose debt capacity benchmarks for the DWR Wildfire Fund at 8/11/2025 rates. Every maturity, every interest figure, MADS and the reserve fund match — tax-exempt and taxable, to the cent.