input:
x=read.csv("r2800.csv")
p=(x[[3]]-x[[4]])/x[[3]]
p1=p[length(p):1]
adf.test(p1)
pt=as.ts(p1)
plot.ts(pt)
ArchTest(pt)
addPriorConditions <-function(psi){psi[2] + psi[3] < 1}
mc1 <- bayesGARCH(p1, lambda = 100,delta = 500,control = list(n.chain = 2,l.chain = 200,
addPriorConditions = addPriorConditions))
summary(mc1)
output:
Iterations = 1:200
Thinning interval = 1
Number of chains = 2
Sample size per chain = 200
1. Empirical mean and standard deviation for each variable,
plus standard error of the mean:
Mean SD Naive SE Time-series SE
alpha0 0.01 0.00 0.000 0.000
alpha1 0.10 0.00 0.000 0.000
beta 0.70 0.00 0.000 0.000
nu 498.01 28.25 1.412 1.414
2. Quantiles for each variable:
2.5% 25% 50% 75% 97.5%
alpha0 1e-02 1e-02 1e-02 1e-02 1e-02
alpha1 1e-01 1e-01 1e-01 1e-01 1e-01
beta 7e-01 7e-01 7e-01 7e-01 7e-01
nu 5e+02 5e+02 5e+02 5e+02 5e+02
问题求助:
bayesgarch()估计参数以后,如何提取波动率(rugarch这类基于极大似然求波动率的函数并不适用),以及如何利用波动率算VaR。