taodingyi 发表于 2019-3-14 15:54 
能不能具体点 有代码吗
library(evir)
getSymbols("AAPL",src = 'yahoo',from='2014-01-01',to='2018-11-30')
r=diff(log(AAPL$AAPL.Adjusted))
r=r[2:length(r)] #去掉无效值,否则后续计算会报错
m1=gev(r,21) #计算一个月左右交易交易量的GEV模型及参数估计
par_r=c(m1$par.ests)
xi=as.numeric(par_r[1])
mu=as.numeric(par_r[3])
sigma_r=as.numeric(par_r[2])
VaR_r=mu-(sigma_r/xi)*(1-(-21*log(1-0.05))^(-xi))
VaR_r
VaR(r) #用fExtremes包的VaR命令进行类似计算,可见得到相似结果
VaR5=5^xi*VaR_r
VaR5
x1=function(s){mu-(sigma_r/xi)*(1-(-21*log(1-s))^(-xi))}
x2=integrate(x1,0.95,1)
as.character(x2)
es_x=(1/0.05)*as.numeric(x2$value)
es_x
es=CVaR(r,tail = 'lower')
es