外国語教育で極値統計・VaR・期待ショートフォール:自分用メモ
極値統計
極値分布:最小値や最大値が(漸近的に)従う分布。リスク管理などで使われる。
一般極値分布(generalized extreme value distribution, GEV)は,3つのパラミターをもつ。
- 位置パラミター
- スケールパラミター
- 形状パラミター
形状パラミターの値によって,分布のかたちはかわる。ガンベル型,フレシェ型,ワイブル型など。それぞれ番号があって,1,2,3。これらを総じて(一般化して),一般極値分布とよぶそうだ。
Rでいろいろやるには,
- ismev
- evir
など,いろいろあるようだけども,evdパッケージが良さそうだった。以下例。
#正規分布乱数で最大値のセットを再現
r<-numeric(0)
for(i in 1:1000){
r[i]<-max(rnorm(100))
}fgev(r)#最尤法によるパラミター推定
#確率密度分布の描画
x<-seq(0,5,.01)
distrev<-dgev(x,fgev(r)$estimate[1],fgev(r)$estimate[2],fgev(r)$estimate[3])
plot(x,distrev,type="l")#分位点の描画
quandev<-qgev(.95,fgev(r)$estimate[1],fgev(r)$estimate[2],fgev(r)$estimate[3])
abline(v=quandev,col=2)#乱数の生成
randev<-rgev(1000,fgev(r)$estimate[1],fgev(r)$estimate[2],fgev(r)$estimate[3])
VaR
VaRもリスク管理の指標。私がいいとおもっている比較点というのとおなじ。正規分布の場合,コーニッシュ・フィッシャーの漸近展開を使って,
CornFishPtile<-function(p,m,sd,s,k){
q<-qnorm(p) #累積標準正規分布から任意の分位点をもとめる
cf<-q+s*((q^2-1)/6)+k*((q^3-3*q)/24)-s^2*((2*q^3-5*q)/36) #コーニッシュ・フィッシャー展開
ptile<-m+cf*sd #平均値,標準偏差,推定値から値をもとめる
list("p"=p,"Standard_Normal"=q,"Cornish_Fisher_Estimate"=cf,"value"=ptile)
}
RのパッケージではPerformanceAnalyticsパッケージがよいみたい。VaRという関数がある。
期待ショートフォール
もちろん,PerformanceAnalyticsパッケージがよいみたい。
ES関数。
でも,
こちらの先生の関数でもいけそう。自作してもいいね。
はやくウェブアプリ作らなきゃって話だよな。