Description Usage Arguments Details Value Author(s) References See Also Examples
Compute the factor contributions to Value-at-Risk (VaR) of assets' returns based on Euler's theorem, given the fitted factor model. The partial derivative of VaR wrt factor beta is computed as the expected factor return given fund return is equal to its VaR and approximated by a kernel estimator. VaR is computed either as the sample quantile or as an estimated quantile using the Cornish-Fisher expansion.
1 2 3 4 5 6 7 8 9 | fmVaRDecomp(object, ...)
## S3 method for class 'tsfm'
fmVaRDecomp(object, p = 0.95, method = c("modified",
"gaussian", "historical", "kernel"), invert = FALSE, ...)
## S3 method for class 'sfm'
fmVaRDecomp(object, p = 0.95, method = c("modified",
"gaussian", "historical", "kernel"), invert = FALSE, ...)
|
object |
fit object of class |
... |
other optional arguments passed to
|
p |
confidence level for calculation. Default is 0.95. |
method |
method for computing VaR, one of "modified","gaussian", "historical", "kernel". Default is "modified". See details. |
invert |
logical; whether to invert the VaR measure. Default is
|
The factor model for an asset's return at time t
has the
form
R(t) = beta'f(t) + e(t) = beta.star'f.star(t)
where, beta.star=(beta,sig.e)
and f.star(t)=[f(t)',z(t)]'
. By
Euler's theorem, the VaR of the asset's return is given by:
VaR.fm = sum(cVaR_k) = sum(beta.star_k*mVaR_k)
where, summation is across the K
factors and the residual,
cVaR
and mVaR
are the component and marginal
contributions to VaR
respectively. The marginal contribution to VaR
is defined as the expectation of F.star
, conditional on the loss
being equal to VaR.fm
. This is approximated as described in
Epperlein & Smillie (2006); a triangular smoothing kernel is used here.
Computation of the risk measure is done using
VaR
. Arguments p
, method
and invert
are passed to this function. Refer to their help file for
details and other options.
A list containing
VaR.fm |
length-N vector of factor model VaRs of N-asset returns. |
n.exceed |
length-N vector of number of observations beyond VaR for each asset. |
idx.exceed |
list of numeric vector of index values of exceedances. |
mVaR |
N x (K+1) matrix of marginal contributions to VaR. |
cVaR |
N x (K+1) matrix of component contributions to VaR. |
pcVaR |
N x (K+1) matrix of percentage component contributions to VaR. |
Where, K
is the number of factors and N is the number of assets.
Eric Zivot, Sangeetha Srinivasan and Yi-An Chen
Hallerback (2003). Decomposing Portfolio Value-at-Risk: A General Analysis. The Journal of Risk, 5(2), 1-18.
Meucci, A. (2007). Risk contributions from generic user-defined factors. RISK-LONDON-RISK MAGAZINE LIMITED-, 20(6), 84.
Yamai, Y., & Yoshiba, T. (2002). Comparative analyses of expected shortfall and value-at-risk: their estimation error, decomposition, and optimization. Monetary and economic studies, 20(1), 87-121.
fitTsfm
, fitSfm
, fitFfm
for the different factor model fitting functions.
VaR
for VaR computation.
fmSdDecomp
for factor model SD decomposition.
fmEsDecomp
for factor model ES decomposition.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # Time Series Factor Model
data(managers)
fit.macro <- fitTsfm(asset.names=colnames(managers[,(1:6)]),
factor.names=colnames(managers[,(7:8)]), data=managers)
VaR.decomp <- fmVaRDecomp(fit.macro)
# get the component contributions
VaR.decomp$cVaR
# Statistical Factor Model
data(StockReturns)
sfm.pca.fit <- fitSfm(r.M, k=2)
VaR.decomp <- fmVaRDecomp(sfm.pca.fit)
VaR.decomp$cVaR
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.