The dv01 cashflow engine projects future cashflows by simulating the performance of loans and waterfall structures based on user-specified assumption vectors.  

Assumption Vectors
The cashflow engine currently accepts vectors for Prepay (CPR, SMM or ABS), Delinquency (% delinquent per period), and Default (CDR, MDR or ABS). It also accepts a single Severity (percent) specification together with an optional Severity Lag (in periods). Curves are preset to be anchored to the current period, but can be changed to anchor at origination by prefixing any curve notation with "AO:".

Order of Application
For each simulation period, the cashflow engine implements industry-standard application order: it first applies any default assumptions, then computes scheduled payments, and finally applies prepayment assumptions and any severity amount. Servicing fees are computed on the balance of the loans that do not default within the period.


Loan-level Operation and Recasting
The dv01 cashflow engine operates at loan-level, and thus prepay and default assumptions are applied as partial prepay and default to every loan in the cohort that the assumptions apply to.

Defaults
Default assumptions specify immediate default: the proportion of loans that are affected by the period Default assumption immediately default and generate the specified amount of Severity. If an optional Severity Lag is specified, the Severity value cashflow is generated after the Lag number of periods. The proportion of loans that default do not generate servicing fees, including during the Lag periods.