Skip to main content
CFDL

Credit: auto ABS at 1.5x prepayment speed

The same auto loan pool at 1.5 ABS, three times the prepayment speed, showing how the collection profile shortens.

Every number below is checked against an independent reference implementation on every commit — period by period, and on each metric, inside a declared tolerance. See benchmark methodology.

The case

The same subprime auto receivables as the zero-speed case, prepaying at 1.50% ABS. Under the absolute prepayment speed convention, prepayments are a constant share of the original pool each month, so the balance follows a running product rather than a constant hazard — and the collection profile shortens as the speed rises.

The reference

An issuer's own prepayment-speed exhibit, filed publicly with a securities regulator. It tabulates the Class A-2 percent-outstanding at every monthly distribution date, for each of seven prepayment speeds.

The same exhibit, with its grid, is committed under the auto_abs_tranches case's reference/ directory, where a reader can open it.

Provenance. One figure is asserted against the exhibit's published aggregate. The per-period expectation is the engine's own output, pinned as regression cover; nothing external asserts it.

What it exercises

Packcredit
Contract typescredit.loan, 43 instances
Language featuresmany instances of one contract type; a per-period pool factor carried as state
Conventionsabsolute prepayment speed, level-pay amortization, a promotional 0% rate

The pool factor is carried as per-period state: under a speed that is a share of the original pool, the surviving balance is a running product, which a closed-form pow(k, p) gives only while the hazard is constant.

The result

The aggregate pool balance is asserted directly: domain.credit.principal = 537,640,787.96.

The delta

None on the asserted figure. The per-period principal column is the engine's own output, pinned as regression cover, not the exhibit's percent-outstanding column; the auto_abs_tranches case asserts the class columns against the exhibit.

Run configuration

{"deterministic":{"annual_discount_rate":0.03}}

Verified results

Checked period by period: 1 series across 14 periods — 14 values in all, each within ±0.01 of the reference.

  • net_cash_flow

Summary metrics for the base run:

MetricValueTolerance
domain.credit.principal537,640,787.96±0.01