Re: [R] rugarch: GARCH with Johnson Su innovations

2013-03-13 Thread Patrick Burns

You want to give returns rather than prices to the
garch fitting function.  Log returns are more
appropriate than simple returns.

Actually a negative lambda is what I would expect.
Higher volatility (across time) is usually associated
with lower returns.  The risk premium is more likely
a cross-sectional phenomenon than a time series one.

Some people are not so believing in risk premia in
the first place -- see for instance, Eric Falkenstein.

This would have been better sent to the r-sig-finance
list.

Pat


On 12/03/2013 12:15, Wyss Patrick wrote:

Hey,

I'm trying to implement a GARCH model with Johnson-Su innovations in order to 
simulate returns of financial asset. The model should look like this:

r_t = alpha + lambda*sqrt(h_t) + sqrt(h_t)*epsilon_t
h_t = alpha0 + alpha1*epsilon_(t-1)^2 + beta1 * h_(t-1).

Alpha refers to a risk-free return, lambda to the risk-premium.

I've implemented it like this:

#specification of the model
spec = ugarchspec(variance.model = list(model = sGARCH,
garchOrder = c(1,1), submodel = NULL, external.regressors =
NULL, variance.targeting = FALSE), mean.model = list(
armaOrder = c(0,0), include.mean = TRUE, archm = TRUE, archpow = 1,
arfima = FALSE, external.regressors = NULL, archex = FALSE),
distribution.model = jsu, start.pars = list(), fixed.pars = list())

#fit the model to historical closing price (prices)
fit = ugarchfit(data = prices, spec = spec)

#save coefficients of the fitted model into 'par'
par - coef(fit)
m = coef(fit)[mu]
lambda = coef(fit)[archm]
gamma = coef(fit)[skew]
delta = coef(fit)[shape]
#GARCH parameter
a0 = coef(fit)[omega]
a1 = coef(fit)[alpha1]
b1 = coef(fit)[beta1]

My problem is that I often get negative values for lambda, i.e. for the 
intended risk-premium. So I'm wondering if I've made a mistake in the 
implementation, as one would usually expect a positive lambda.
And a second question is about the Johnson-Su distribution: Am I right by extracting the Johnson-Su 
parameters gamma (delta) by the keywords skew (shape)?

Many thanks in advance,

Patrick


[[alternative HTML version deleted]]

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.



--
Patrick Burns
pbu...@pburns.seanet.com
twitter: @burnsstat @portfolioprobe
http://www.portfolioprobe.com/blog
http://www.burns-stat.com
(home of:
 'Impatient R'
 'The R Inferno'
 'Tao Te Programming')

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


[R] rugarch: GARCH with Johnson Su innovations

2013-03-12 Thread Wyss Patrick
Hey,

I'm trying to implement a GARCH model with Johnson-Su innovations in order to 
simulate returns of financial asset. The model should look like this:

r_t = alpha + lambda*sqrt(h_t) + sqrt(h_t)*epsilon_t
h_t = alpha0 + alpha1*epsilon_(t-1)^2 + beta1 * h_(t-1).

Alpha refers to a risk-free return, lambda to the risk-premium.

I've implemented it like this:

#specification of the model
spec = ugarchspec(variance.model = list(model = sGARCH,
garchOrder = c(1,1), submodel = NULL, external.regressors =
NULL, variance.targeting = FALSE), mean.model = list(
armaOrder = c(0,0), include.mean = TRUE, archm = TRUE, archpow = 1,
arfima = FALSE, external.regressors = NULL, archex = FALSE),
distribution.model = jsu, start.pars = list(), fixed.pars = list())

#fit the model to historical closing price (prices)
fit = ugarchfit(data = prices, spec = spec)

#save coefficients of the fitted model into 'par'
par - coef(fit)
m = coef(fit)[mu]
lambda = coef(fit)[archm]
gamma = coef(fit)[skew]
delta = coef(fit)[shape]
#GARCH parameter
a0 = coef(fit)[omega]
a1 = coef(fit)[alpha1]
b1 = coef(fit)[beta1]

My problem is that I often get negative values for lambda, i.e. for the 
intended risk-premium. So I'm wondering if I've made a mistake in the 
implementation, as one would usually expect a positive lambda.
And a second question is about the Johnson-Su distribution: Am I right by 
extracting the Johnson-Su parameters gamma (delta) by the keywords skew 
(shape)?

Many thanks in advance,

Patrick


[[alternative HTML version deleted]]

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.