Thanks a lot, Alexios!
I have corrected this issue. The result is the same, though.

I forgot to mention that the RUGARCH-package is required to run the code.

At the moment I try to find the error in either
- my own theoretical thoughts (e.g. confusing the scale parameter with the standard deviation) - the implementation made by C.Alexander (on page 117 she writes in a footnote: "In general, if X has distribution F(x) and Y=aX, a being a constant, then y has distribution function a^(−1) * F(x)". Either I am completely burnout right now, or this must be "F(a^(−1)*x)" in the end. So maybe this is not just a typo, but also incorrectly implemented in the quite complicated EXCEL formula.) - some EXCEL or R issue. I think her EXCEL syntax has been programmed in version 2003, but I`m running 2010.

Any help is appreciated a lot!



Am 25.04.2014 11:46, schrieb Alexios Ghalanos:
A quick look at your code suggests that you should use "std" (student) not 
"sstd" (skew student) for distribution.

Alexios

On 25 Apr 2014, at 09:49, Johannes Moser <jzmo...@gmail.com> wrote:

Dear R community,

in trying to set up a little simulation study I adapt the ideas found in
"Carol Alexander: Market Risk IV - Value at Risk Models" on page 111 ff.
and implement them in R.
This project is about student t mixture distributions and Value at Risk
/ Expected Shortfall.

The following code is my setup so far, and the syntax is calibrated to
resemble the Example 2.23 on page 118 in the mentioned book of
Alexander. There is a  EXCEL-file coming with the book and I noticed
that my results don`t match the results of the EXCEL implementation.

e.g. my result for theta=0.001 is

0.0841052 (method 1) and

0.0842109 (method 2)
... but the EXCEL-file coming with the book says that it was 0.1152


setting theta=0.01 gives

0.04493586 (method 1) and

0.04490717 (method 2)

... but the EXCEL-file coming with the book says that it was 0.0616


Maybe some of you guys have this book at hand and are able to verify and
hopefully find a solution for my worries.
Or even if you don`t have the book you might still be able to assess the
correctness of my approach and implementation?




##################################################################################################
# SET UP MIXTURE INGREDIENTS (calibrate to C.Alexander Market Risk
Analysis IV Exercise 2.23)

p_quiet <- 0.75
mu_quiet <- 0.0
mu_stress <- -0.0004
df_quiet <- 10
df_stress <- 5
variance_quiet <- 0.0126^2
variance_stress <- 0.0253^2
theta <- 0.001


# METHOD_1)   Backing out mixture VaR from implicit analytic formula:
find_quant <- function(quant) {
      (p_quiet*pdist(distribution = "sstd",
(quant-mu_quiet)/sqrt(variance_quiet)  , mu = 0, sigma = 1, shape =
df_quiet)
      + (1-p_quiet)*pdist(distribution = "sstd",
(quant-mu_stress)/sqrt(variance_stress)  , mu = 0, sigma = 1, shape =
df_stress) - theta)
}
bestquant <- uniroot(f = find_quant, interval = c(-5, 1))
t_mix_VaR1 <- -bestquant$root


# METHOD_2)   Estimating mixture VaR by simulation:
nsim <- 10000000
u_mix <- x <- 1*(runif(nsim) < p_quiet)
t_quiet <- rdist(distribution = "sstd", nsim  , mu = mu_quiet, sigma =
sqrt(variance_quiet), shape = df_quiet)
t_stress <- rdist(distribution = "sstd", nsim  , mu = mu_stress, sigma =
sqrt(variance_stress), shape = df_stress)
t_mixture <- u_mix*t_quiet + (1-u_mix)*t_stress
t_mix_VaR2 <- as.numeric(-quantile( t_mixture , probs=theta  ))

# Compare results
t_mix_VaR1
t_mix_VaR2
##################################################################################################




The EXCEL spreadsheet "EX_IV.2.23" in the workbook "Examples_IV.2.xls"
has been used and modified as follows:
1) change the risk horizon to 1 day (so that there would be no scaling
and the autocorrelation doesn`t matter)
2) if necessary change the significance level (1% or 0,1% in my example)
3) press F11 to recalcualte the mixture parameters over the risk horizon
4) apply EXCEL SOLVER to line C24 while allowing for changing cell C25
to get the t Mixture VaR

Thanks a lot for any ideas or suggestions!
Johannes













    [[alternative HTML version deleted]]

_______________________________________________
R-SIG-Finance@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-sig-finance
-- Subscriber-posting only. If you want to post, subscribe first.
-- Also note that this is not the r-help list where general R questions should 
go.


--
_________________________
Johannes Moser
Sophie-Charlotten-Str. 35
14059 Berlin
Tel: 0176 2171 2196

_______________________________________________
R-SIG-Finance@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-sig-finance
-- Subscriber-posting only. If you want to post, subscribe first.
-- Also note that this is not the r-help list where general R questions should 
go.

Reply via email to