Valuation library for mortgage-backed securities
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
AndrewKalotayAssociates::Clean::Input::PrepaymentModelParameters Struct Reference

#include "andrew_kalotay_associates/clean/structs.h"

Public Member Functions

 PrepaymentModelParameters (double this_homeowner_credit_spread, double sda_multiplier=1.0, double default_recovery_rate=1.0, double this_turnover_speed=0.06, double this_curtailment_speed=0.0, double this_refinancing_cost=0.01, double this_laggard_spread_spacing=0.0027, double this_laggard_decay_factor=0.678)

Static Public Member Functions

static Common::Array< double > prepayment_speed_assumption (double multiplier=1.0, double peak_speed=0.06, double stable_speed=0.06, long periods_to_peak=30, long periods_at_peak=1, long periods_to_stable=1)
static Common::Array< double > standard_default_assumption (double multiplier=1.0, double peak_default_speed=0.006, double stable_default_speed=0.0004, long periods_to_peak=30, long periods_at_peak=30, long periods_to_stable=60)
 Create default speed curve analogous to the SDA curve.
static Common::Array< double > ramped_speeds (double multiplier, double peak_speed, double stable_speed, long periods_to_peak, long periods_at_peak, long periods_to_stable)

Public Attributes

double laggard_spread_spacing
double laggard_decay_factor
double refinancing_cost
Common::Array< double > turnover_speeds
Common::Array< double > curtailment_speeds
Common::Array< double > default_speeds
Common::Array< double > default_recovery_rates
double homeowner_credit_spread

Detailed Description

laggard_spread_spacingInternal model parameter, Leave unchanged.
laggard_decay_factorinternal model parameter. Leave unchanged.
refinancing_costRefinancing fees paid by homeowner as a percentage of original principal. Recommended value: 0.01 (= 1%)
turnover_speedsvector of monthly annualized prepayment rates due to collateral sales
curtailment_speedsvector of monthly annualized prepayments rates due to owners paying down mortgage. Usually set to 0
default_speedsvector of monthly annualized prepayment rates due to mortgage defaults
default_recovery_ratesvector of default recovery rates (percentage of principal recovered from defaults). Set to 1.0 if agency MBS
homeowner_credit_spreadspread between homeowner yield curve and benchmark yield curve used to build InterestRateModel

Member Function Documentation

◆ prepayment_speed_assumption()

static Common::Array<double> AndrewKalotayAssociates::Clean::Input::PrepaymentModelParameters::prepayment_speed_assumption ( double  multiplier = 1.0,
double  peak_speed = 0.06,
double  stable_speed = 0.06,
long  periods_to_peak = 30,
long  periods_at_peak = 1,
long  periods_to_stable = 1 

Create prepayment speed vector as a piecewise linear curve, analogous to the PSA curve.

multiplierScaling factor used for entire curve
stable_speedFinal speed
periods_to_peakPeriods to reach peak speed
periods_at_peakPeriods at peak speed
periods_to_stablePeriods to go from peak to stable speed

The documentation for this struct was generated from the following file: