Package 'AssetCorr'

Title: Estimating Asset Correlations from Default Data
Description: Functions for the estimation of intra- and inter-cohort correlations in the Vasicek credit portfolio model. For intra-cohort correlations, the package covers the two method of moments estimators of Gordy (2000) <doi:10.1016/S0378-4266(99)00054-0>, the method of moments estimator of Lucas (1995) <https://jfi.pm-research.com/content/4/4/76> and a Binomial approximation extension of this approach. Moreover, the maximum likelihood estimators of Gordy and Heitfield (2010) <http://elsa.berkeley.edu/~mcfadden/e242_f03/heitfield.pdf> and Duellmann and Gehde-Trapp (2004) <http://hdl.handle.net/10419/19729> are implemented. For inter-cohort correlations, the method of moments estimator of Bluhm and Overbeck (2003) <doi:10.1007/978-3-642-59365-9_2>/Bams et al. (2016) <https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2676595> is provided and the maximum likelihood estimators comprise the approaches of Gordy and Heitfield (2010)/Kalkbrener and Onwunta (2010) <ISBN: 978-1906348250> and Pfeuffer et al. (2020). Bootstrap and Jackknife procedures for bias correction are included as well as the method of moments estimator of Frei and Wunsch (2018) <doi:10.21314/JCR.2017.231> for auto-correlated time series.
Authors: Maximilian Nagl [aut,cre], Yevhen Havrylenko [aut], Marius Pfeuffer [aut], Kevin Jakob [aut], Matthias Fischer [aut], Daniel Roesch [aut]
Maintainer: Maximilian Nagl <[email protected]>
License: GPL-3
Version: 1.0.4
Built: 2024-11-23 04:19:44 UTC
Source: https://github.com/cran/AssetCorr

Help Index


AssetCorr

Description

Functions for the estimation of intra- and inter-cohort correlations in the Vasicek credit portfolio model. For intra-cohort correlations, the package covers the two method of moments estimators of Gordy (2000) <doi:10.1016/S0378-4266(99)00054-0>, the method of moments estimator of Lucas (1995) <https://jfi.pm-research.com/content/4/4/76> and a Binomial approximation extension of this approach. Moreover, the maximum likelihood estimators of Gordy and Heitfield (2010) <http://elsa.berkeley.edu/~mcfadden/e242_f03/heitfield.pdf> and Duellmann and Gehde-Trapp (2004) <http://hdl.handle.net/10419/19729> are implemented. For inter-cohort correlations, the method of moments estimator of Bluhm and Overbeck (2003) <doi:10.1007/978-3-642-59365-9_2>/Bams et al. (2016) <https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2676595> is provided and the maximum likelihood estimators comprise the approaches of Gordy and Heitfield (2010)/Kalkbrener and Onwunta (2010) <ISBN: 978-1906348250> and Pfeuffer et al. (2020). Bootstrap and Jackknife procedures for bias correction are included as well as the method of moments estimator of Frei and Wunsch (2018) <doi:10.21314/JCR.2017.231> for auto-correlated time series.

Details

The DESCRIPTION file:

Package: AssetCorr
Type: Package
Title: Estimating Asset Correlations from Default Data
Version: 1.0.4
Date: 2021-05-04
Author: Maximilian Nagl [aut,cre], Yevhen Havrylenko [aut], Marius Pfeuffer [aut], Kevin Jakob [aut], Matthias Fischer [aut], Daniel Roesch [aut]
Maintainer: Maximilian Nagl <[email protected]>
Description: Functions for the estimation of intra- and inter-cohort correlations in the Vasicek credit portfolio model. For intra-cohort correlations, the package covers the two method of moments estimators of Gordy (2000) <doi:10.1016/S0378-4266(99)00054-0>, the method of moments estimator of Lucas (1995) <https://jfi.pm-research.com/content/4/4/76> and a Binomial approximation extension of this approach. Moreover, the maximum likelihood estimators of Gordy and Heitfield (2010) <http://elsa.berkeley.edu/~mcfadden/e242_f03/heitfield.pdf> and Duellmann and Gehde-Trapp (2004) <http://hdl.handle.net/10419/19729> are implemented. For inter-cohort correlations, the method of moments estimator of Bluhm and Overbeck (2003) <doi:10.1007/978-3-642-59365-9_2>/Bams et al. (2016) <https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2676595> is provided and the maximum likelihood estimators comprise the approaches of Gordy and Heitfield (2010)/Kalkbrener and Onwunta (2010) <ISBN: 978-1906348250> and Pfeuffer et al. (2020). Bootstrap and Jackknife procedures for bias correction are included as well as the method of moments estimator of Frei and Wunsch (2018) <doi:10.21314/JCR.2017.231> for auto-correlated time series.
License: GPL-3
Imports: VineCopula, mvtnorm, boot, numDeriv, mvQuad, ggplot2, Rdpack,knitr,qpdf
Suggests: markdown
VignetteBuilder: knitr
RdMacros: Rdpack
NeedsCompilation: no
Packaged: 2021-05-05 14:53:18 UTC; LocalAdmin
Date/Publication: 2021-05-05 15:30:02 UTC
Config/pak/sysreqs: libjpeg-dev libssl-dev
Repository: https://maximiliannaglur.r-universe.dev
RemoteUrl: https://github.com/cran/AssetCorr
RemoteRef: HEAD
RemoteSha: fb249d30060a8722786315638780d8922c05c003

Index of help topics:

AssetCorr-package       AssetCorr
analyze_AssetCorr       Function to evaluate several default time
                        series simultaneously
defaultTimeseries       Creating a hypothetical Default Time Series.
interALL                Function to use multiple estimators
                        simultaneously
interCMM                Corrected Asymptotic Method of Moments
                        Estimator of Frei and Wunsch (2018)
interCopula             Copula Based Maximum Likelihood Estimator
interCov                Covariance Matching Estimator
interJDP                Joint Default Probability Matching Estimator,
                        De Servigny and Renault (2002)
interMLE                Binomial Maximum Likelihood Estimator
intraALL                Function to use multiple estimators
                        simultaneously
intraAMLE               Asymptotic Maximum Likelihood Estimator
intraAMM                Asymptotic Method of Moments Estimator
intraBeta               Parametric Approach of Botha and van Vuuren
                        (2010)- Beta Distribution
intraCMM                Corrected Asymptotic Method of Moments
                        Estimator of Frei and Wunsch (2018)
intraFMM                Finite Sample Method of Moments Estimator
intraJDP1               Joint Default Probability Matching Estimator,
                        Lucas (1995)
intraJDP2               Joint Default Probability Matching Estimator,
                        De Servigny and Renault (2002)
intraMLE                Binomial Maximum Likelihood Estimator
intraMode               Parametric Approach of Botha and van Vuuren
                        (2010)- Mode

Further information is available in the following vignettes:

AssetCorr_vignette An AssetCorr Guide (source, pdf)

Author(s)

Maximilian Nagl [aut,cre],Yevhen Havrylenko [aut], Marius Pfeuffer [aut], Matthias Fischer [aut], Daniel Roesch [aut]

Maintainer: Maximilian Nagl <[email protected]>

References

De Servigny, A. and O. Renault: Default correlation: empirical evidence. Working Paper, Standard and Poor's: 90-94, 2003. Available at: https://www.semanticscholar.org/paper/Default-correlation%3A-empirical-evidence-Servigny-Renault/aae251436d0e3b489951c0d38463d71106755675. Accessed: 04.05.2020

Duellmann, K. and M. Gehde-Trapp: Systematic risk in recovery rates: an empirical analysis of US corporate credit exposures. Bundesbank Series 2, Discussion Paper (2): 2004. Available at SSRN: https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2793954. Accessed: 01.05.2018

Duellmann, K., J. Kuell and M. Kunisch: Estimating asset correlations from stock prices or default rates- Which method is superior? Journal of Economic Dynamics and Control 34(11): 2341-2357, 2010

Efron, B. and R. J. Tibshirani: An introduction to the bootstrap. CRC press, 1994

Pfeuffer, M., M. Nagl, M. Fischer and D. Roesch: Parameter Estimation and Bias Correction in the Vasicek Credit Portfolio Model. Journal of Risk 22(4), 2020

Frei, C. and M. Wunsch: Moment Estimators for Autocorrelated Time Series and their Application to Default Correlations. Journal of Credit Risk 14: 1-29, 2018

Gordy, M. B.: A comparative anatomy of credit risk models. Journal of Banking & Finance 24(1): 119-149, 2000

Gordy, M. B. and E. Heitfield: Small-sample estimation of models of portfolio credit risk. In Recent Advances in Financial Engineering: Proceedings of the KIER-TMU International Workshop on Financial Engineering, 2009: Otemachi, Sankei Plaza, Tokyo, 3-4 August 2009: 43-63, World Scientific, 2010

Hoese, S. and S. Huschens: Confidence intervals for asset correlations in the asymptotic single risk factor model. In Operations Research Proceedings 2010: 111-116, 2010

Kalkbrener, M. and A. Onwunta: Validating structural credit portfolio models. Model risk-identification, measurement and management. Risk Books, London: 233-261, 2010

Loeffler, G. The effects of estimation error on measures of portfolio credit risk. Journal of Banking & Finance 27(8): 1427-1453, 2003

Lucas, D. J.: Default correlation and credit analysis. The Journal of Fixed Income 4(4): 76-87, 1995

Meyer, C.: Estimation of intra-sector asset correlations. The Journal of Risk Model Validation 3(3): 47-79, 2009

Vasicek, O. A: The distribution of loan portfolio value. Risk 15(12): 160-162, 2002


Function to evaluate several default time series simultaneously

Description

To give a first insight of several default time series, this function combines multiple estimator functions (intra and inter) and visualize the results.

Usage

analyze_AssetCorr(DTS,N, B=NA, DB=NA, JC=FALSE, CI_Boot=NA, Adjust=0.0001,
type="bca", Intra=c("AMM","FMM","CMM","JDP1","JDP2","MLE","AMLE","Beta","Mode"),
Inter=c("Copula","Cov","JDP","MLE"))

Arguments

DTS

a matrix, containing the default time series of each sector.

N

a matrix, containing the number of obligors at the beginning of the period of sector.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate (intra and inter).

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap (intra and inter).

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated (intra and inter).

CI_Boot

a number, indicating the desired confidence interval if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca). Furthermore, the analytical confidence intervals are provided, using the same value as CI_Boot(intra and inter).

Adjust

a number, which should be added to a observed default rate of 0 or subtracted form a observed default rate of 1 (only for the intraAMLE).

type

a string, indicating the desired method to calculate the bootstrap confidence intervals. For more details see boot.ci. Studendized confidence intervals are not supported.

Intra

a combined string, indicating which intra correlation estimators should be used. All estimators are set as default.

Inter

a combined string, indicating which inter correlation estimators should be used. All estimators are set as default.

Details

To give an first insight, the function provides an overview of the several default time series and estimates using different estimators (intra and inter) simultaneously. The plug-in estimates of the intra correlation using inter correlation methods will be estimated via intraMLE. If DB is specified, the single bootstrap corrected estimate will be calculated by using the bootstrap values of the outer loop.

Value

The returned value is a list, containing the following entries:

Estimators_Intra

Sector

Number of the sector

Sector_Name

Name of the sector

Estimator

Name of the applied estimator

Estimate

Value of the calculated estimate

Type

String, which indicating corrected/non-corrected estimates

correction

Name of the correction method

B

Number of single bootstrap repetitions

DB

Number of the double bootstrap repetitions

CI_Boot

Selected two-sided bootstrap confidence interval

CI

A string, indicating if the corresponding value is the upper or lower bound

Estimators_Inter

Sector_1

Number of the sector

Sector_Name_1

Name of the sector

Sector_2

Number of the sector

Sector_Name_2

Name of the sector

Estimator

Name of the applied estimator to Sector_1 and Sector_2

Estimate

Value of the calculated estimateto Sector_1 and Sector_2

Type

String, which indicating corrected/non-corrected estimates

correction

Name of the correction method

B

Number of single bootstrap repetitions

DB

Number of the double bootstrap repetitions

CI_Boot

Selected two-sided bootstrap confidence interval

CI

A string, indicating if the corresponding value is the upper or lower bound

Author(s)

Kevin Jakob

References

Botha M, van Vuuren G (2010). “Implied asset correlation in retail loan portfolios.” Journal of Risk Management in Financial Institutions, 3(2), 156–173.

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

De Servigny A, Renault O (2002). “Default correlation: empirical evidence.” Working Paper, Standard and Poors. Available at: https://www.semanticscholar.org/paper/Default-correlation%3A-empirical-evidence-Servigny-Renault/aae251436d0e3b489951c0d38463d71106755675.

Duellmann K, Gehde-Trapp M (2004). “Systematic risk in recovery rates: an empirical analysis of US corporate credit exposures.” Bundesbank Series 2, Discussion Paper. Available at SSRN: http://hdl.handle.net/10419/19729. Accessed: 02.11.2017.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Frei C, Wunsch M (2018). “Moment Estimators for Autocorrelated Time Series and their Application to Default Correlations.” Journal of Credit Risk, 14, 1–29.

Gordy MB (2000). “A comparative anatomy of credit risk models.” Journal of Banking & Finance, 24(1), 119–149.

Gordy MB, Heitfield E (2010). “Small-sample estimation of models of portfolio credit risk.” In Recent Advances in Financial Engineering: Proceedings of the KIER-TMU International Workshop on Financial Engineering, 2009: Otemachi, Sankei Plaza, Tokyo, 3-4 August 2009, 43-63. World Scientific.

Kalkbrener M, Onwunta A (2010). “Validating structural credit portfolio models.” Model risk - identification, measurement and management. Risk Books, London, 233–261.

Lucas DJ (1995). “Default correlation and credit analysis.” The Journal of Fixed Income, 4(4), 76–87.

Meyer C (2009). “Estimation of intra-sector asset correlations.” The Journal of Risk Model Validation, 3(3), 47–79.

Teetor P (2011). R Cookbook: Proven recipes for data analysis, statistics, and graphics. O'Reilly Media, Inc.

See Also

intraAMM, intraFMM, intraJDP2, intraMLE, intraJDP1, intraCMM, intraMode,intraBeta, interJDP, interCopula,interCMM, interCov, interMLE, intraALL, interALL

Examples

library(mvtnorm)
set.seed(111)
NoO=1000 #Number of obligors in each sector
Years=20
AC=0.3
PD=0.01

Psi=rmvnorm(Years,sigma=matrix(c(1,0.5,0.5,0.5,1,0.5,0.5,0.5,1),3))
PDcond1=pnorm((qnorm(PD)-sqrt(AC)*Psi[,1])/sqrt(1-AC))
PDcond2=pnorm((qnorm(PD)-sqrt(AC/2)*Psi[,2])/sqrt(1-AC/2))
PDcond3=pnorm((qnorm(PD)-sqrt(AC*2)*Psi[,3])/sqrt(1-AC*2))

DTS=cbind(rbinom(Years,NoO,PDcond1),rbinom(Years,NoO,PDcond2),rbinom(Years,NoO,PDcond3))
N=matrix(NoO,nrow = Years,ncol = 3)

Output<-analyze_AssetCorr(DTS,N)

#Bootstrap Correction and CIs

Output<-analyze_AssetCorr(DTS,N,B=100,CI_Boot=0.95)

#Double Bootstrap Correction and Jackknife
Output<-analyze_AssetCorr(DTS,N,DB=c(50,50),JC=TRUE)

Creating a hypothetical Default Time Series.

Description

This function return a time series of defaults.

Usage

defaultTimeseries(N, AC, Years, PD)

Arguments

N

Number of obligors for each point in time.

AC

Desired asset correlation.

Years

Number of points in time, which corresponds to the length of the default time series.

PD

Uniform probability of default assumed for each obligor.

Details

This function can be used to draw a random default time series, assuming a specific length of the time series, number of obligors, a uniform asset correlation and a uniform probability of default.

Value

The output contains a Nx1-vector with simulated defaults for each point in time.

Examples

D1<-defaultTimeseries(1000,0.1,10,0.01)

Function to use multiple estimators simultaneously

Description

To give a first insight of the default time series, this function combines multiple estimator functions and visualize the results.

Usage

interALL(d1,n1,d2,n2,rho1,rho2, B=NA, DB=NA, JC=FALSE, CI_Boot=NA, plot=FALSE, 
type="bca",Estimator=c("Copula","Cov","JDP","MLE"),show_progress=FALSE)

Arguments

d1

a vector, containing the default time series of sector 1.

n1

a vector, containing the number of obligors at the beginning of the period in sector 1.

d2

a vector, containing the default time series of sector 2.

n2

a vector, containing the number of obligors at the beginning of the period in sector 2.

rho1

estimated intra correlation of sector 1.

rho2

estimated intra correlation of sector 2.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence interval if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca). Furthermore, the analytical confidence intervals are provided, using the same value as CI_Boot.

plot

a logical variable, indicating whether a plot of the default time series and the estimates should be generated using the multiplot function of Teetor (2011).

type

a string, indicating the desired method to calculate the bootstrap confidence intervals. For more details see boot.ci. Studendized confidence intervals are not supported.

Estimator

a combined string, indicating which estimators should be used. All estimators are set as default.

show_progress

a logical variable, indicating whether a progress bar should be displayed.

Details

To give an first insight, the function provides an overview of the default time series and estimates using different estimators simultaneously. If DB is specified, the single bootstrap corrected estimate will be calculated by using the bootstrap values of the outer loop.

Value

The returned value is a data frame, containing the following columns:

Estimator

Name of the applied estimator

Estimate

Value of the calculated estimate

Type

String, which indicating corrected/non-corrected estimates

correction

Name of the correction method

B

Number of single bootstrap repetitions

DB

Number of the double bootstrap repetitions

CI_Boot

Selected two-sided bootstrap confidence interval

CI

A string, indicating if the corresponding value is the upper or lower bound

Author(s)

Kevin Jakob

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

De Servigny A, Renault O (2002). “Default correlation: empirical evidence.” Working Paper, Standard and Poors. Available at: https://www.semanticscholar.org/paper/Default-correlation%3A-empirical-evidence-Servigny-Renault/aae251436d0e3b489951c0d38463d71106755675.

Duellmann K, Gehde-Trapp M (2004). “Systematic risk in recovery rates: an empirical analysis of US corporate credit exposures.” Bundesbank Series 2, Discussion Paper. Available at SSRN: http://hdl.handle.net/10419/19729. Accessed: 02.11.2017.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Frei C, Wunsch M (2018). “Moment Estimators for Autocorrelated Time Series and their Application to Default Correlations.” Journal of Credit Risk, 14, 1–29.

Gordy MB (2000). “A comparative anatomy of credit risk models.” Journal of Banking & Finance, 24(1), 119–149.

Gordy MB, Heitfield E (2010). “Small-sample estimation of models of portfolio credit risk.” In Recent Advances in Financial Engineering: Proceedings of the KIER-TMU International Workshop on Financial Engineering, 2009: Otemachi, Sankei Plaza, Tokyo, 3-4 August 2009, 43-63. World Scientific.

Kalkbrener M, Onwunta A (2010). “Validating structural credit portfolio models.” Model risk - identification, measurement and management. Risk Books, London, 233–261.

Lucas DJ (1995). “Default correlation and credit analysis.” The Journal of Fixed Income, 4(4), 76–87.

Meyer C (2009). “Estimation of intra-sector asset correlations.” The Journal of Risk Model Validation, 3(3), 47–79.

Teetor P (2011). R Cookbook: Proven recipes for data analysis, statistics, and graphics. O'Reilly Media, Inc.

See Also

intraAMM, intraFMM, intraJDP2 intraMLE, intraJDP1, intraCMM

Examples

set.seed(111)
Psi=rmvnorm(20,sigma=matrix(c(1,0.5,0.5,1),2))
PDcond1=pnorm((qnorm(0.01)-sqrt(0.05)*Psi[,1])/sqrt(1-0.05))
PDcond2=pnorm((qnorm(0.01)-sqrt(0.2)*Psi[,2])/sqrt(1-0.2))

D1=rbinom(20,1000,PDcond1)
D2=rbinom(20,1000,PDcond2)

N1=N2=rep(1000,20)

DTS=cbind(D1,D2)
N=cbind(N1,N2)

rho1=intraMLE(D1,N1)$Original
rho2=intraMLE(D2,N2)$Original

#Point Estimates
interALL(D1,N1,D2,N2,rho1,rho2, plot=TRUE)

#Bootstrap corrected estimates of all available estimators:
InterCorr=interALL(D1,N1,D2,N2,rho1,rho2, B=500, CI_Boot=0.95 , plot=TRUE, show_progress=TRUE)


#Jackknife correction
InterCorr=interALL(D1,N1,D2,N2,rho1,rho2, JC=TRUE, plot=TRUE)

#Double Bootstrap correction with 10 repetitions in the inner loop and 50 in the outer loop
InterCorr=interALL(D1,N1,D2,N2,rho1,rho2, DB=c(10,50), plot=TRUE)

Corrected Asymptotic Method of Moments Estimator of Frei and Wunsch (2018)

Description

This method provides analytical bias correction via Taylor series expansion. Additionally the bias due to autocorrelated default time series can be corrected. The estimated parameter is the inter correlation of the asset variables (in contrast to all other inter correlation methods of this package).

Usage

interCMM(d1,n1,d2,n2,rho,l=0, B=0,DB=c(0,0), JC=FALSE,
CI_Boot, type="bca", plot=FALSE)

Arguments

d1

a vector, containing the default time series of sector 1.

n1

a vector, containing the number of obligors at the beginning of the period in sector 1.

d2

a vector, containing the default time series of sector 2.

n2

a vector, containing the number of obligors at the beginning of the period in sector 2.

rho

estimated inter asset correlation of another estimator.

l

a number, indicating how many lags of autocorrelation should be used for the correction.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence level if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca). Furthermore, the analytical confidence intervals are provided, using the same value as CI_Boot.

type

a string, indicating the desired method to calculate the confidence intervals. For more details see boot.ci.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

This function estimates the inter correlation of the asset variables. In general, the inter correlation can be estimated for the asset variables or the systematic factors. This estimator uses a inter correlation estimate of another method to correct the bias due to small sample or autocorrelation. Only one parameter (inter correlation) must be estimated. Additionally, asymptotic confidence interval can be provided, as shown by Frei and Wunsch (2018). The inter correlation of the asset variables can be transformed to the correlation of the systematic factors as follows:

rhoSystematic=rhoAsset/sqrt(rho1rho2)rho_Systematic= rho_Asset/sqrt(rho_1*rho_2)

If DB is specified, the single bootstrap corrected estimate will be calculated using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Frei C, Wunsch M (2018). “Moment Estimators for Autocorrelated Time Series and their Application to Default Correlations.” Journal of Credit Risk, 14, 1–29.

See Also

interJDP, interCopula, interMLE, interCov

Examples

d1=defaultTimeseries(1000,0.1,10,0.01)
d2=defaultTimeseries(1000,0.2,10,0.01)
n1=n2=rep(1000,10)

#Using the Covariance method to estimate the plug-in inter correlation.
inter_sys=interCov(d1,n1,d2,n2,0.1,0.2)$Original
inter_asset= inter_sys*sqrt(0.1*0.2)

interCMM(d1,n1,d2,n2,inter_asset,l=0)


InterCorr=interCMM(d1,n1,d2,n2,inter_asset, JC=TRUE)
InterCorr=interCMM(d1,n1,d2,n2,inter_asset, B=1000, CI_Boot=0.95, plot=TRUE)


InterCorr=interCMM(d1,n1,d2,n2,inter_asset, DB=c(10,50))

Copula Based Maximum Likelihood Estimator

Description

The inter correlation parameter can be estimated by fitting a Gaussian copula with Vasicek distributed margins on two observed default rate time series. The estimated parameter is the inter correlation of the systematic factors.

Usage

interCopula(df1, df2, B = 0, DB=c(0,0),JC = FALSE, 
 CI, CI_Boot, type="bca", plot=FALSE)

Arguments

df1

a vector, containing the default rate time series of sector 1.

df2

a vector, containing the default rate times eries of sector 2.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI

a number, indicating the desired asymptotic confidence interval of the estimate.

CI_Boot

a number, indicating the desired bootstrap confidence interval if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca). Furthermore, the analytical confidence intervals are provided, using the same value as CI_Boot.

type

a string, indicating the desired method to calculate the confidence intervals. For more details see boot.ci.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

This function estimates the inter correlation of the systematic factors. In general the inter correlation can be estimated for the asset variables or the systematic factors. This method estimates the inter correlation of the systematic factors. The parameter will be estimated via Maximum Likelihood estimation, which ensures that an asymptotic confidence interval can be provided. The inter correlation of the systematic factors can be transformed to the correlation of the asset variables as follows:

rhoAsset=rhoSystematicsqrt(rho1rho2)rho_Asset= rho_Systematic*sqrt(rho_1*rho_2)

The estimated inter correlation of the systematic factors lies between -1 and 1. If DB is specified, the single bootstrap corrected estimate will be calculated using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI

Selected two-sided asymptotic bootstrap confidence interval

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Pfeuffer M, Nagl M, Fischer M, Roesch D (2020). “Parameter Estimation and Bias Correction in the Vasicek Credit Portfolio Model.” Journal of Risk, 22number.

See Also

interJDP, interCMM, interMLE, interCov

Examples

set.seed(10)
d1=defaultTimeseries(1000,0.1,10,0.01)
d2=defaultTimeseries(1000,0.2,10,0.01)
n=rep(1000,10)

df1=d1/n
df2=d2/n

InterCorr=interCopula(df1,df2, CI=0.95)



InterCorr=interCopula(df1,df2, JC=TRUE)

InterCorr=interCopula(df1,df2, B=1000, CI_Boot=0.95, plot=TRUE)

InterCorr=interCopula(df1,df2, DB=c(50,50))

Covariance Matching Estimator

Description

The inter correlation parameter can be estimated by matching the empirical covariance of two default time series with the theoretical. The estimated parameter is the inter correlation of the systematic factors.

Usage

interCov(d1, n1, d2, n2, rho1, rho2, B = 0, DB=c(0,0), JC = FALSE,
CI_Boot, type="bca", plot=FALSE)

Arguments

d1

a vector, containing the default time series of sector 1.

n1

a vector, containing the number of obligors at the beginning of the period in sector 1.

d2

a vector, containing the default times eries of sector 2.

n2

a vector, containing the number of obligors at the beginning of the period in sector 2.

rho1

estimated intra asset correlation of sector 1.

rho2

estimated intra asset correlation of sector 2.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence level if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca).

type

a string indicating the desired method to calculate the confidence intervals. For more details see boot.ci.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

This function estimates the inter correlation of the systematic factors. In general, the inter correlation can be estimated for the asset variables or the systematic factors. To ensure the traceability of the estimation, the intra correlation estimates will be used as plug-in estimates. Hence only one parameter (inter correlation) must be estimated. The inter correlation of the systematic factors can be transformed to the correlation of the asset variables as follows:

rhoAsset=rhoSystematicsqrt(rho1rho2)rho_Asset= rho_Systematic*sqrt(rho_1*rho_2)

The estimated inter correlation of the systematic factors lies between -1 and 1.

If DB is specified, the single bootstrap corrected estimate will be calculated using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the single bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Bluhm C, Overbeck L (2003). “Systematic risk in homogeneous credit portfolios.” Credit risk. Physica-Verlag, Heidelberg, 35–48.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

See Also

interJDP, interCMM, interMLE, interCopula

Examples

set.seed(10)
d1=defaultTimeseries(1000,0.1,10,0.01)
d2=defaultTimeseries(1000,0.2,10,0.01)
n1=n2=rep(1000,10)

InterCorr=interCov(d1,n1,d2,n2,0.1,0.2)



InterCorr=interCov(d1,n1,d2,n2,0.1,0.2, JC=TRUE)
InterCorr=interCov(d1,n1,d2,n2,0.1,0.2, B=1000, CI_Boot=0.95)

InterCorr=interCov(d1,n1,d2,n2,0.1,0.2, DB=c(50,50))

Joint Default Probability Matching Estimator, De Servigny and Renault (2002)

Description

The inter correlation parameter can be estimated by matching the empirical Joint Default Probability of two default time series with the theoretical one. The estimated parameter is the correlation of the systematic factors.

Usage

interJDP(d1, n1, d2, n2, rho1, rho2, B = 0, DB=c(0,0), JC = FALSE, 
CI_Boot, type="bca", plot=FALSE)

Arguments

d1

a vector, containing the default time series of sector 1.

n1

a vector, containing the number of obligors at the beginning of the period in sector 1.

d2

a vector, containing the default time series of sector 2.

n2

a vector, containing the number of obligors at the beginning of the period in sector 2.

rho1

estimated intra correlation of sector 1.

rho2

estimated intra correlation of sector 2.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence level if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca).

type

a string, indicating the desired method to calculate the confidence intervals. For more details see boot.ci.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

This function estimates the inter correlation of the systematic factor. In general, the inter correlation can be estimated for the asset variables or the systematic factors. To ensure the traceability of the estimation, the intra correlation estimates will be used as plug-in estimates. Hence only one parameter (inter correlation) must be estimated. The inter correlation of the systematic factor can be transformed to the correlation of the asset variables as follows:

rhoAsset=rhoSystematicsqrt(rho1rho2)rho_Asset= rho_Systematic*sqrt(rho_1*rho_2)

The estimated inter correlation of the systematic factors lies between -1 and 1.

If DB is specified, the single bootstrap corrected estimate will be calculated using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

De Servigny A, Renault O (2002). “Default correlation: empirical evidence.” Working Paper, Standard and Poors. Available at: https://www.semanticscholar.org/paper/Default-correlation%3A-empirical-evidence-Servigny-Renault/aae251436d0e3b489951c0d38463d71106755675.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Kalkbrener M, Onwunta A (2010). “Validating structural credit portfolio models.” Model risk - identification, measurement and management. Risk Books, London, 233–261.

See Also

interCov, interCMM, interMLE, interCopula

Examples

d1=defaultTimeseries(1000,0.1,10,0.01)
d2=defaultTimeseries(1000,0.2,10,0.01)
n1=n2=rep(1000,10)

InterCorr=interJDP(d1,n1,d2,n2,0.1,0.2)



InterCorr=interJDP(d1,n1,d2,n2,0.1,0.2, JC=TRUE)
InterCorr=interJDP(d1,n1,d2,n2,0.1,0.2, B=1000, CI_Boot=0.95)

InterCorr=interJDP(d1,n1,d2,n2,0.1,0.2, DB=c(10,50))

Binomial Maximum Likelihood Estimator

Description

The inter correlation parameter can be estimated by maximizing the Vasicek-binomial log-likelihood. The default process in the Vasicek model follows a binomial distribution, conditional on the realisation of the systematic factor. Hence, the inter correlation of the systematic factor can be estimated by maximizing the resulting log likelihood.

Usage

interMLE(d1, n1, d2, n2, rho1, rho2, B = 0, DB=c(0,0), JC = FALSE,
CI, plot=FALSE)

Arguments

d1

a vector, containing the default time series of sector 1.

n1

a vector, containing the number of obligors at the beginning of the period in sector 1.

d2

a vector, containing the default time series of sector 2.

n2

a vector, containing the number of obligors at the beginning of the period in sector 2.

rho1

estimated intra correlation of sector 1.

rho2

estimated intra correlation of sector 2.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI

a number, indicating the desired asymptotic confidence bound of the estimate.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

This function estimates the inter correlation of the systematic factor. In general, the inter correlation can be estimated for the asset variables or the systematic factors. To ensure the traceability of the estimation, the intra correlation estimates will be used as plug-in estimates. Hence only one parameter (inter correlation) must be estimated. The inter correlation of the systematic factor can be transformed to the correlation of the asset variables as follows:

rhoAsset=rhoSystematicsqrt(rho1rho2)rho_Asset= rho_Systematic*sqrt(rho_1*rho_2)

The estimated inter correlation of the systematic factors lies between -1 and 1.

If DB is specified, the single bootstrap corrected estimate will be calculated using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI

Selected two-sided asymptotic bootstrap confidence interval

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Gordy MB, Heitfield E (2010). “Small-sample estimation of models of portfolio credit risk.” In Recent Advances in Financial Engineering: Proceedings of the KIER-TMU International Workshop on Financial Engineering, 2009: Otemachi, Sankei Plaza, Tokyo, 3-4 August 2009, 43-63. World Scientific.

See Also

interJDP, interCopula, interCMM, interCov

Examples

d1=defaultTimeseries(1000,0.1,10,0.01)
d2=defaultTimeseries(1000,0.2,10,0.01)
n1=n2=rep(1000,10)

InterCorr=interMLE(d1,n1,d2,n2,0.1,0.2, CI=0.95)

InterCorr=interMLE(d1,n1,d2,n2,0.1,0.2, JC=TRUE)

InterCorr=interMLE(d1,n1,d2,n2,0.1,0.2, B=1000, CI_Boot=0.95)

InterCorr=interMLE(d1,n1,d2,n2,0.1,0.2, DB=c(10,50))

Function to use multiple estimators simultaneously

Description

To give a first insight of the default time series, this function combines multiple estimator functions and visualize the results.

Usage

intraALL(d,n, B=NA, DB=NA, JC=FALSE, CI_Boot=NA, Adjust=0.0001, plot=FALSE, 
type="bca", Quantile=0.999, Estimator=c("AMM","FMM","CMM","JDP1","JDP2",
"MLE","AMLE","Beta","Mode"),show_progress=FALSE)

Arguments

d

a vector, containing the default time series of the sector.

n

a vector, containing the number of obligors at the beginning of the period in the sector.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence interval if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca). Furthermore, the analytical confidence intervals are provided, using the same value as CI_Boot.

Adjust

a number, which should be added to a observed default rate of 0 or subtracted form a observed default rate of 1 (only for the AMLE).

plot

a logical variable, indicating whether a plot of the default time series and the estimates should be generated using the multiplot function of Teetor (2011).

type

a string, indicating the desired method to calculate the bootstrap confidence intervals. For more details see boot.ci. Studendized confidence intervals are not supported.

Quantile

a number, indicating the desired confidence level of the Value-at-Risk (only for the intraBeta).

Estimator

a combined string, indicating which estimators should be used. All estimators are set as default.

show_progress

a logical variable, indicating whether a progress bar should be displayed.

Details

To give an first insight, the function provides an overview of the default time series and estimates using different estimators simultaneously. If DB is specified, the single bootstrap corrected estimate will be calculated by using the bootstrap values of the outer loop.

Value

The returned value is a data frame, containing the following columns:

Estimator

Name of the applied estimator

Estimate

Value of the calculated estimate

Type

String, which indicating corrected/non-corrected estimates

correction

Name of the correction method

B

Number of single bootstrap repetitions

DB

Number of the double bootstrap repetitions

CI_Boot

Selected two-sided bootstrap confidence interval

CI

A string, indicating if the corresponding value is the upper or lower bound

Author(s)

Kevin Jakob

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

De Servigny A, Renault O (2002). “Default correlation: empirical evidence.” Working Paper, Standard and Poors. Available at: https://www.semanticscholar.org/paper/Default-correlation%3A-empirical-evidence-Servigny-Renault/aae251436d0e3b489951c0d38463d71106755675.

Duellmann K, Gehde-Trapp M (2004). “Systematic risk in recovery rates: an empirical analysis of US corporate credit exposures.” Bundesbank Series 2, Discussion Paper. Available at SSRN: http://hdl.handle.net/10419/19729. Accessed: 02.11.2017.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Frei C, Wunsch M (2018). “Moment Estimators for Autocorrelated Time Series and their Application to Default Correlations.” Journal of Credit Risk, 14, 1–29.

Gordy MB (2000). “A comparative anatomy of credit risk models.” Journal of Banking & Finance, 24(1), 119–149.

Gordy MB, Heitfield E (2010). “Small-sample estimation of models of portfolio credit risk.” In Recent Advances in Financial Engineering: Proceedings of the KIER-TMU International Workshop on Financial Engineering, 2009: Otemachi, Sankei Plaza, Tokyo, 3-4 August 2009, 43-63. World Scientific.

Kalkbrener M, Onwunta A (2010). “Validating structural credit portfolio models.” Model risk - identification, measurement and management. Risk Books, London, 233–261.

Lucas DJ (1995). “Default correlation and credit analysis.” The Journal of Fixed Income, 4(4), 76–87.

Meyer C (2009). “Estimation of intra-sector asset correlations.” The Journal of Risk Model Validation, 3(3), 47–79.

Teetor P (2011). R Cookbook: Proven recipes for data analysis, statistics, and graphics. O'Reilly Media, Inc.

See Also

intraAMM, intraFMM, intraJDP2, intraMLE, intraJDP1, intraCMM, intraMode,intraBeta

Examples

set.seed(10)
d=defaultTimeseries(1000,0.01,20,0.01)
n=rep(1000,20)

#Point Estimate of all available estimators:
intraALL(d,n,Adjust=0.001, plot=TRUE)

#Bootstrap corrected estimates of all available estimators:
IntraCorr=intraALL(d,n, Adjust=0.001, B=500, CI_Boot=0.95 , plot=TRUE, show_progress=TRUE)

#Select some estimators
IntraCorr=intraALL(d,n,B=500,  CI_Boot=0.95, Adjust=0.001 ,Estimator=c("AMM","FMM"), plot=TRUE)

#Jackknife correction
IntraCorr=intraALL(d,n, JC=TRUE,Adjust=0.001, plot=TRUE)

#Double Bootstrap correction with 10 repetitions in the inner loop and 50 in the outer loop
IntraCorr=intraALL(d,n, DB=c(10,50),Adjust=0.001, plot=TRUE)

Asymptotic Maximum Likelihood Estimator

Description

This estimator is based on the assumption of infinitely large portfolio size and a sufficient length of the default time series. In the asymptotic case, neither the default rate of 0 or a 1 occur. Hence one has to make an adjustment in these cases.

Usage

intraAMLE(d, n, B = 0, DB=c(0,0),JC = FALSE, Adjust = 0,
CI_1,CI_2, CI_Boot,VaR=0.99, VaR_CI=0.95, ES=0.975, ES_CI=0.95,
type="bca", plot=FALSE)

Arguments

d

a vector, containing the default time series of the sector.

n

a vector, containing the number of obligors at the beginning of the period in the sector.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

Adjust

a number, which should be added to a observed default rate of 0 or subtracted form a observed default rate of 1.

CI_1

a number, indicating the desired analytical confidence interval of the estimate. The interval is computed by asymptotic Cramer-Rao lower bound for the standard deviation of the estimate based on Duellmann and Gehde-Trapp (2004). Additionally the asymptotic confidence interval for the unconditional PD is computed.

CI_2

a number, indicating the desired analytical confidence interval of the estimate. The interval is computed by constructing a confidence interval for the variance, which can be transferred to the estimate based on Hoese and Huschens (2011).

CI_Boot

a number, indicating the desired confidence interval if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca). Furthermore, the analytical confidence intervals are provided, using the same value as CI_Boot.

VaR

a number, indicating the desired confidence level for the asymptotic Value-at-Risk.

VaR_CI

a number, indicating the desired confidence interval for the asymptotic Value-at-Risk, derived by the delta method.

ES

a number, indicating the desired confidence level for the asymptotic Expected Shortfall.

ES_CI

a number, indicating the desired confidence interval for the asymptotic Expected Shortfall, derived by the delta method.

type

a string, indicating the desired method to calculate the confidence intervals. For more details see boot.ci.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

This estimator is based on the asymptotic assumptions of the Vasicek model, especially the assumption of an infinite large portfolio. If a 0 or 1 occurs at least once in the default rate time series, the estimator can not converge. Therefore, an adjustment (Adjust) can be made. Nevertheless, Meyer (2009) argued that the adjustment can harm the estimation efficiency.

Additionally two different asymptotic confidence intervals are provided. Bootstrap and jackknife corrections are also possible. If DB is specified, the single bootstrap corrected estimate will be calculated using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

PD

Estimate of the unconditional PD based on Duellmann and Gehde-Trapp (2004)

PD_CI_1

[Two-sided asymptotic confidence interval for the unconditional PD based on Duellmann and Gehde-Trapp (2004)

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI_1

Selected two-sided asymptotic confidence interval based on Duellmann and Gehde-Trapp (2004)

CI_2

Selected two-sided asymptotic confidence interval based on Hoese and Huschens (2011)

CI_Boot

Selected two-sided bootstrap confidence interval

VaR

Asymptotic Value-at-Risk

VaR_CI

Confidence interval for the asymptotic Value-at-Risk

ES

Asymptotic Expected Shortfall

ES_CI

Confidence interval for the asymptotic Expected Shortfall

bValues

Estimates from the single bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Duellmann K, Gehde-Trapp M (2004). “Systematic risk in recovery rates: an empirical analysis of US corporate credit exposures.” Bundesbank Series 2, Discussion Paper. Available at SSRN: http://hdl.handle.net/10419/19729. Accessed: 02.11.2017.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Hoese S, Huschens S (2011). “Confidence intervals for asset correlations in the asymptotic single risk factor model.” In Operations Research Proceedings 2010, 111–116. Springer.

Meyer C (2009). “Estimation of intra-sector asset correlations.” The Journal of Risk Model Validation, 3(3), 47–79.

Pfeuffer M, Nagl M, Fischer M, Roesch D (2020). “Parameter Estimation and Bias Correction in the Vasicek Credit Portfolio Model.” Journal of Risk, 22number.

See Also

intraAMM, intraFMM, intraJDP2, intraMLE, intraJDP1, intraCMM, intraMode,intraBeta

Examples

set.seed(10)
d=defaultTimeseries(100,0.01,10,0.01)
n=rep(100,10)

#Sensitivity to the adjustment
intraAMLE(d,n,Adjust=0.001)
intraAMLE(d,n,Adjust=0.0001)

#Estimation with confidence intervals- I
IntraCorr=intraAMLE(d,n, Adjust=0.001, CI_1=0.95 )

#Estimation with confidence intervals- II
IntraCorr=intraAMLE(d,n, Adjust=0.001, CI_2=0.95 )

#Jackknife correction
IntraCorr=intraAMLE(d,n,Adjust=0.001, JC=TRUE)


#Bootstrap correction with  bootstrap confidence intervals
IntraCorr=intraAMLE(d,n, Adjust=0.001, B=1000, CI_Boot=0.95 )

#Bootstrap correction with  bootstrap confidence intervals and plot
IntraCorr=intraAMLE(d,n, B=1000, Adjust=0.001, CI_Boot=0.95, plot=TRUE )

#Double Bootstrap correction with 10 repetitions in the inner loop and 50 in the outer loop
IntraCorr=intraAMLE(d,n,Adjust=0.001, DB=c(10,50))

Asymptotic Method of Moments Estimator

Description

The intra asset correlation will be estimated by fitting the first two moments of the default rate time series to the theoretical moments of the default rate and backing out the remaining correlation parameter numerically. Additionally, bootstrap and jackknife corrections are implemented.

Usage

intraAMM(d, n, B = 0, DB=c(0,0), JC = FALSE,CI_Boot, type="bca", plot=FALSE)

Arguments

d

a vector, containing the default time series of the sector.

n

a vector, containing the number of obligors at the beginning of the period over time.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence interval if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca).

type

a string, indicating the desired method to calculate the bootstrap confidence intervals. For more details see boot.ci. Studendized confidence intervals are not supported.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

As stated by Vasicek (1991) and Vasicek (2002), the asset variables follow a bivariate normal distribution. Since this distribution can be parametrized by the first two moments, namely the expected value and the variance, the remaining correlation parameter can be backed out numerically. The expected value will be approximated by the mean of the default rate and the variance is defined as the sample variance of the default rate. For theoretical background, see Gordy (2000). If DB is specified, the single bootstrap corrected estimate will be calculated by using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Gordy MB (2000). “A comparative anatomy of credit risk models.” Journal of Banking & Finance, 24(1), 119–149.

Vasicek O (1991). “Limiting loan loss probability distribution.” Finance, Economics and Mathematics, 147–148.

Vasicek O (2002). “The distribution of loan portfolio value.” Risk, 15(12), 160–162.

See Also

intraFMM, intraJDP1, intraJDP2, intraCMM, intraMLE, intraAMLE, intraMode,intraBeta

Examples

set.seed(111)
d=defaultTimeseries(1000,0.3,20,0.01)
n=rep(1000,20)

IntraCorr=intraAMM(d,n)

#Jackknife correction
IntraCorr=intraAMM(d,n, JC=TRUE)


#Bootstrap correction with confidence intervals
IntraCorr=intraAMM(d,n, B=1000, CI_Boot=0.95 )

#Bootstrap correction with confidence intervals and plot
IntraCorr=intraAMM(d,n, B=1000, CI_Boot=0.95, plot=TRUE )

#Double Bootstrap correction with 10 repetitions in the inner loop and 50 in the outer loop
IntraCorr=intraAMM(d,n, DB=c(10,50))

Parametric Approach of Botha and van Vuuren (2010)- Beta Distribution

Description

The intra asset correlation will be estimated by fitting a beta distribution onto the default rate time series, then calculating the Value-at-Risk (VaR) of this beta distribution and fit it to the theoretical VaR of the Vasicek distribution. The correlation parameter will be backed out numerically. Additionally, bootstrap and jackknife corrections are implemented.

Usage

intraBeta(d, n, Quantile=0.999,B = 0, DB=c(0,0), JC = FALSE,
CI_Boot, type="bca", plot=FALSE)

Arguments

d

a vector, containing the default time series of the sector.

n

a vector, containing the number of obligors at the beginning of the period over time.

Quantile

a number, indicating the desired confidence level of the Value-at-Risk.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence interval if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca).

type

a string, indicating the desired method to calculate the bootstrap confidence intervals. For more details see boot.ci. Studendized confidence intervals are not supported.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

As stated by Botha and van Vuuren (2010) one can estimate the intra correlation by matching VaR of a parametrized beta distribution onto the VaR of the Vasicek distribution. To do so, the shape parameters (alpha and beta) of the beta distribution are estimated according to Botha and van Vuuren (2010). Afterwards, the VaR_Beta at the confidence level of Quantile will be estimated. In a third step, this VaR_Beta is matched with the theoretical VaR of the Vasicek distribution, given by Vasicek (1991):

VaRVasicek=Phi((Phi1(PD)+sqrt(rho)Phi1(Quantile))/sqrt(1rho))VaR_Vasicek= Phi((Phi^-1(PD)+sqrt(rho)*Phi^-1(Quantile))/sqrt(1-rho))

Since Quantile and the corresponding VaR_Beta is known, the intra correlation parameter can be backed out numerically. This estimator is sensitive to the chosen Quantile. Botha and van Vuuren (2010) suggested to use Quantile=0.999, but for validation purposes one may choose different values of Quantile to infer information about the robustness of the correlation estimate.

If DB is specified, the single bootstrap corrected estimate will be calculated by using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Botha M, van Vuuren G (2010). “Implied asset correlation in retail loan portfolios.” Journal of Risk Management in Financial Institutions, 3(2), 156–173.

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Gordy MB (2000). “A comparative anatomy of credit risk models.” Journal of Banking & Finance, 24(1), 119–149.

Vasicek O (1991). “Limiting loan loss probability distribution.” Finance, Economics and Mathematics, 147–148.

See Also

intraFMM, intraJDP1, intraJDP2 intraCMM, intraMLE, intraAMLE intraMode

Examples

set.seed(111)
d=defaultTimeseries(1000,0.3,20,0.01)
n=rep(1000,20)

IntraCorr=intraBeta(d,n)

#Jackknife correction
IntraCorr=intraBeta(d,n, JC=TRUE)


#Bootstrap correction with confidence intervals
IntraCorr=intraBeta(d,n, B=1000, CI_Boot=0.95 )

#Bootstrap correction with confidence intervals and plot
IntraCorr=intraBeta(d,n, B=1000, CI_Boot=0.95, plot=TRUE )

#Double Bootstrap correction with 10 repetitions in the inner loop and 50 in the outer loop
IntraCorr=intraBeta(D1,N1, DB=c(10,50))

Corrected Asymptotic Method of Moments Estimator of Frei and Wunsch (2018)

Description

The estimator is based on Frei and Wunsch (2018), who introduced an analytic bias correction via Taylor series expansion. Additionally, the bias due to autocorrelated default time series can be corrected. Furthermore, additional bootstrap and jackknife bias corrections are implemented.

Usage

intraCMM(d,n,l=0, B=0, DB=c(0,0), JC=FALSE , CI_Boot,type="bca", plot=FALSE)

Arguments

d

a vector, containing the default time series of the sector.

n

a vector, containing the number of obligors at the beginning of the period in the sector.

l

a number, indicating how many lags of autocorrelation should be used for the correction.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence level if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca).Furthermore, the analytical confidence intervals are provided, using the same value as CI_Boot.

type

a string, indicating the desired method to calculate the confidence intervals. For more details see boot.ci.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

Frei and Wunsch (2018) introduced an estimator which simultaneously corrects the bias of a short default time series and an bias due to autocorrelation. Additionally, further corrections are implemented. If DB is specified, the single bootstrap corrected estimate will be calculated by using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the single bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Frei C, Wunsch M (2018). “Moment Estimators for Autocorrelated Time Series and their Application to Default Correlations.” Journal of Credit Risk, 14, 1–29.

See Also

intraAMM, intraFMM, intraJDP2, intraMLE, intraJDP1, intraAMLE, intraMode,intraBeta

Examples

set.seed(10)
d=defaultTimeseries(1000,0.1,10,0.01)
n=rep(1000,10)

IntraCorr=intraCMM(d,n,l=0)


#Estimation with  two lags of autocorrelation
IntraCorr=intraCMM(d,n, l=2 )

#Jackknife correction
IntraCorr=intraCMM(d,n, JC=TRUE)




#Bootstrap correction with  bootstrap confidence intervals
IntraCorr=intraCMM(d,n, B=1000, CI_Boot=0.95 )

#Bootstrap correction with  bootstrap confidence intervals and plot
IntraCorr=intraCMM(d,n, B=1000, CI_Boot=0.95, plot=TRUE )

#Double Bootstrap correction with 10 repetitions in the inner loop and 50 in the outer loop
IntraCorr=intraCMM(d,n, DB=c(10,50))

Finite Sample Method of Moments Estimator

Description

The intra asset correlation will be estimated by fitting the first two moments of the default rate time series to the theoretical moments of the default rate and backing out the remaining correlation parameter numerically. The sample variance will be adjusted for an insufficiently large portfolio size. Additionally, bootstrap and jackknife corrections are implemented.

Usage

intraFMM(d, n, B = 0, DB=c(0,0), JC = FALSE,  CI_Boot, type="bca", plot=FALSE)

Arguments

d

a vector, containing the default time series of the sector.

n

a vector, containing the number of obligors at the beginning of the period over time.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence interval if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca).

type

a string, indicating the desired method to calculate the bootstrap confidence intervals. For more details see boot.ci. Studendized confidence intervals are not supported.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

As stated by Vasicek (1991) and Vasicek (2002), the asset variables follow a bivariate normal distribution. Since this distribution can be parametrized by the first two moments, namely the expected value and the variance, the remaining correlation parameter can be backed out numerically. The expected value will be approximated by the mean of the default rate and the variance is defined as the (corrected) sample variance of the default rate. For theoretical background, see Gordy (2000). If DB is specified, the single bootstrap corrected estimate will be calculated by using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Gordy MB (2000). “A comparative anatomy of credit risk models.” Journal of Banking & Finance, 24(1), 119–149.

Vasicek O (1991). “Limiting loan loss probability distribution.” Finance, Economics and Mathematics, 147–148.

Vasicek O (2002). “The distribution of loan portfolio value.” Risk, 15(12), 160–162.

See Also

intraAMM, intraJDP1, intraJDP2, intraCMM, intraMLE, intraAMLE, intraMode,intraBeta

Examples

set.seed(111)
d=defaultTimeseries(1000,0.3,20,0.01)
n=rep(1000,20)

IntraCorr=intraFMM(d,n)

#Jackknife correction
IntraCorr=intraFMM(d,n, JC=TRUE)


#Bootstrap correction with confidence intervals
IntraCorr=intraFMM(d,n, B=1000, CI_Boot=0.95 )

#Bootstrap correction with confidence intervals and plot
IntraCorr=intraFMM(d,n, B=1000, CI_Boot=0.95, plot=TRUE )

#Double Bootstrap correction with 10 repetitions in the inner loop and 50 in the outer loop
IntraCorr=intraFMM(D1,N1, DB=c(10,50))

Joint Default Probability Matching Estimator, Lucas (1995)

Description

The intra asset correlation will be estimated by fitting the empirical joint default probability (JDP) of the default rate time series to the theoretical one and backing out the remaining correlation parameter numerically. The unbiased estimator of Lucas (1995) will be used for the empirical JDP. Additionally, bootstrap and jackknife corrections are implemented.

Usage

intraJDP1(d, n, B = 0, DB=c(0,0), JC = FALSE, CI_Boot, type="bca", plot=FALSE)

Arguments

d

a vector, containing the default time series of the sector.

n

a vector, containing the number of obligors at the beginning of the period over time.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence interval if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca).

type

a string, indicating the desired method to calculate the bootstrap confidence intervals. For more details see boot.ci. Studendized confidence intervals are not supported.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

Kalkbrener and Onwunta (2010) for example showed that the JDP of the default rates follow a bivariate normal distribution. The intra asset correlation will be estimated by fitting the empirical JDP of the default rate time series on the theoretical JDP of the default rate and backing out the remaining correlation parameter numerically. The empirical JDP is calculated by the (unbiased) estimator of Lucas (1995). If DB is specified, the single bootstrap corrected estimate will be calculated by using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Kalkbrener M, Onwunta A (2010). “Validating structural credit portfolio models.” Model risk - identification, measurement and management. Risk Books, London, 233–261.

Lucas DJ (1995). “Default correlation and credit analysis.” The Journal of Fixed Income, 4(4), 76–87.

See Also

intraAMM, intraFMM, intraJDP2, intraCMM, intraMLE, intraAMLE, intraMode,intraBeta

Examples

set.seed(111)
d=defaultTimeseries(1000,0.3,20,0.01)
n=rep(1000,20)

IntraCorr=intraJDP1(d,n)
#Jackknife correction
IntraCorr=intraJDP1(d,n, JC=TRUE)


#Bootstrap correction with confidence intervals
IntraCorr=intraJDP1(d,n, B=1000, CI_Boot=0.95 )

#Bootstrap correction with confidence intervals and plot
IntraCorr=intraJDP1(d,n, B=1000, CI_Boot=0.95, plot=TRUE )

#Double Bootstrap correction with 10 repetitions in the inner loop and 50 in the outer loop
IntraCorr=intraJDP1(D1,N1, DB=c(10,50))

Joint Default Probability Matching Estimator, De Servigny and Renault (2002)

Description

The intra asset correlation will be estimated by fitting the empirical joint default probability (JDP) of the default rate time series to the theoretical one and backing out the remaining correlation parameter numerically. The biased estimator of De Servigny and Renault (2002) will be used for the empirical JDP. Additionally, bootstrap and jackknife corrections are implemented.

Usage

intraJDP2(d, n, B = 0,DB=c(0,0), JC = FALSE, CI_Boot, type="bca", plot=FALSE)

Arguments

d

a vector, containing the default time series of the sector.

n

a vector, containing the number of obligors at the beginning of the period over time.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence interval if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca).

type

a string, indicating the desired method to calculate the bootstrap confidence intervals. For more details see boot.ci. Studendized confidence intervals are not supported.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

Kalkbrener and Onwunta (2010) for example showed that the JDP of the default rates follow a bivariate normal distribution. The intra asset correlation will be estimated by fitting the empirical JDP of the default rate time series on the theoretical JDP of the default rate and backing out the remaining correlation parameter numerically. The empirical JDP is calculated by the (unbiased) estimator of De Servigny and Renault (2002). If DB is specified, the single bootstrap corrected estimate will be calculated by using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the single bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

De Servigny A, Renault O (2002). “Default correlation: empirical evidence.” Working Paper, Standard and Poors. Available at: https://www.semanticscholar.org/paper/Default-correlation%3A-empirical-evidence-Servigny-Renault/aae251436d0e3b489951c0d38463d71106755675.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Kalkbrener M, Onwunta A (2010). “Validating structural credit portfolio models.” Model risk - identification, measurement and management. Risk Books, London, 233–261.

See Also

intraAMM, intraFMM, intraJDP1, intraCMM, intraMLE, intraAMLE, intraMode,intraBeta

Examples

set.seed(10)
d=defaultTimeseries(1000,0.3,20,0.01)
n=rep(1000,20)

IntraCorr=intraJDP2(d,n)
#Jackknife correction
IntraCorr=intraJDP2(d,n, JC=TRUE)


#Bootstrap correction with confidence intervals
IntraCorr=intraJDP2(d,n, B=1000, CI_Boot=0.95 )

#Bootstrap correction with confidence intervals and plot
IntraCorr=intraJDP2(d,n, B=1000, CI_Boot=0.95, plot=TRUE )

#Double Bootstrap correction with 10 repetitions in the inner loop and 50 in the outer loop
IntraCorr=intraJDP2(D1,N1, DB=c(10,50))

Binomial Maximum Likelihood Estimator

Description

The default process in the Vasicek model follows a binomial distribution, conditional on the realization of the systematic factor. Hence, the intra asset correlation can be estimated by maximizing the Vasicek-binomial log likelihood.

Usage

intraMLE(d, n, B =0, DB=c(0,0), JC = FALSE, CI, CI_Boot, type="bca", plot=FALSE)

Arguments

d

a vector, containing the default time series of the sector.

n

a vector, containing the number of obligors at the beginning of the period in the sector.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI

a number, indicating the desired asymptotic confidence interval of the estimate.

CI_Boot

a number, indicating the desired bootstrap confidence interval of the estimate, if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca). Furthermore, the analytical confidence intervals are provided, using the same value as CI_Boot.

type

a string, indicating the type of bootstrap intervals. For more details see boot.ci.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

In the Vasicek model the default process can be expressed as independent binomial trials, conditional on the realization of the systematic factor. Therefore Gordy and Heitfield (2010) introduced an estimator of the intra asset correlation based on the log-likelihood maximization. For theoretical background see Gordy and Heitfield (2010).

The log-likelihood will be maximized for values between 0 and 1. The asymptotic confidence interval will be estimated using maximum likelihood theory. If DB is specified, the single bootstrap corrected estimate will be calculated by using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI

Selected two-sided asymptotic confidence interval

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the single bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Gordy MB, Heitfield E (2010). “Small-sample estimation of models of portfolio credit risk.” In Recent Advances in Financial Engineering: Proceedings of the KIER-TMU International Workshop on Financial Engineering, 2009: Otemachi, Sankei Plaza, Tokyo, 3-4 August 2009, 43-63. World Scientific.

See Also

intraAMM, intraFMM, intraJDP2, intraCMM, intraJDP1, intraAMLE, intraMode,intraBeta

Examples

set.seed(11)
d=defaultTimeseries(1000,0.3,20,0.01)
n=rep(1000,20)

IntraCorr=intraMLE(d,n)

#Estimation with confidence intervals
IntraCorr=intraMLE(d,n, CI=0.95 )






#Jackknife correction
IntraCorr=intraMLE(d,n, JC=TRUE)

#Bootstrap correction with bootstrap confidence intervals
IntraCorr=intraMLE(d,n, B=1000, CI_Boot=0.95 )

#Bootstrap correction with bootstrap confidence intervals and plot
IntraCorr=intraMLE(d,n, B=1000, CI_Boot=0.95, plot=TRUE )

#Double Bootstrap correction with 10 repetitions in the inner loop and 50 in the outer loop
IntraCorr=intraMLE(D1,N1, DB=c(10,50))

Parametric Approach of Botha and van Vuuren (2010)- Mode

Description

The intra asset correlation will be estimated by fitting the mode of the default rate time series to the theoretical mode of the default rates and backing out the remaining correlation parameter numerically. Additionally, bootstrap and jackknife corrections are implemented.

Usage

intraMode(d, n, B = 0, DB=c(0,0), JC = FALSE,CI_Boot, type="bca", plot=FALSE)

Arguments

d

a vector, containing the default time series of the sector.

n

a vector, containing the number of obligors at the beginning of the period over time.

B

an integer, indicating how many bootstrap repetitions should be used for the single bootstrap corrected estimate.

DB

a combined vector, indicating how many bootstrap repetitions should be used for the inner (first entry) and outer loop (second entry) to correct the bias using the double bootstrap.

JC

a logical variable, indicating if the jackknife corrected estimate should be calculated.

CI_Boot

a number, indicating the desired confidence interval if the single bootstrap correction is specified. By default, the interval is calculated as the bootstrap corrected and accelerated confidence interval (Bca).

type

a string, indicating the desired method to calculate the bootstrap confidence intervals. For more details see boot.ci. Studendized confidence intervals are not supported.

plot

a logical variable, indicating whether a plot of the single bootstrap density should be generated.

Details

As stated by Botha and van Vuuren (2010) one can estimate the intra correlation by matching the theoretical and empirical mode. According to Vasicek (1991) the default rates are only unimodal if the intra correlation is smaller than 0.5. Therefore, this estimator cannot be used for higher intra correlations. The theoretical mode is given by Vasicek (1991):

ModeVasicek=Phi(sqrt(1rho)/(12rho)Phi1(PD))Mode_Vasicek=Phi(sqrt(1-rho)/(1-2*rho)*Phi^-1(PD))

If DB is specified, the single bootstrap corrected estimate will be calculated by using the bootstrap values of the outer loop (oValues).

Value

The returned value is a list, containing the following components (depending on the selected arguments):

Original

Estimate of the original method

Bootstrap

Bootstrap corrected estimate

Double_Bootstrap

Double bootstrap corrected estimate

Jackknife

Jackknife corrected estimate

CI_Boot

Selected two-sided bootstrap confidence interval

bValues

Estimates from the bootstrap resampling

iValues

Estimates from the double bootstrap resampling- inner loop

oValues

Estimates from the double bootstrap resampling- outer loop

References

Botha M, van Vuuren G (2010). “Implied asset correlation in retail loan portfolios.” Journal of Risk Management in Financial Institutions, 3(2), 156–173.

Chang J, Hall P (2015). “Double-bootstrap methods that use a single double-bootstrap simulation.” Biometrika, 102(1), 203–214.

Efron B, Tibshirani RJ (1994). An introduction to the bootstrap. CRC press.

Gordy MB (2000). “A comparative anatomy of credit risk models.” Journal of Banking & Finance, 24(1), 119–149.

Vasicek O (1991). “Limiting loan loss probability distribution.” Finance, Economics and Mathematics, 147–148.

See Also

intraFMM, intraJDP1, intraJDP2 intraCMM, intraMLE, intraAMLE, intraBeta

Examples

set.seed(111)
d=defaultTimeseries(1000,0.3,20,0.01)
n=rep(1000,20)

IntraCorr=intraMode(d,n)

#Jackknife correction
IntraCorr=intraMode(d,n, JC=TRUE)


#Bootstrap correction with confidence intervals
IntraCorr=intraMode(d,n, B=1000, CI_Boot=0.95 )

#Bootstrap correction with confidence intervals and plot
IntraCorr=intraMode(d,n, B=1000, CI_Boot=0.95, plot=TRUE )

#Double Bootstrap correction with 10 repetitions in the inner loop and 50 in the outer loop
IntraCorr=intraMode(D1,N1, DB=c(10,50))