Upload
tera-monagi
View
8.056
Download
8
Embed Size (px)
DESCRIPTION
Tokyo webmining(20110116、http://atnd.org/events/11710)用の資料。 コピュラの基本概念から金融での応用、Rでの実装まで紹介。
Citation preview
コピュラと金融工学の新展開第9回データマイニング+WEB 勉強会@東京
( TokyoWebmining 9)-1st Week
-大規模解析・機械学習・クオンツ祭り-
Presenter : @teramonagi(some web services)
コピュラと金融工学の新展開(?)第9回データマイニング+WEB 勉強会@東京
( TokyoWebmining 9)-1st Week
-大規模解析・機械学習・クオンツ祭り-
Presenter : @teramonagi(some web services)
1:コピュラって何だ?
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 3
コピュラ≒関係
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 4
コピュラ≒確率変数間の関係
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 5
確率変数間の関係≒結合分布
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 6
多変量正規分布∈結合分布
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 7
多変量正規分布って何だ?
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 8
多変量正規分布
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 9
確率変数間の関係は・・・
そうか!Σの
中に相関として入っているのか!
多変量正規分布での関係
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 10
一方、周辺分布は
(1変量)正規分布TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 11
多変量正規分布
周辺分布と結合分布の関係
1変量正規分布
1変量正規分布
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 12
何らかの結合分布
関係の一般化(コピュラ!)
1変量正規分布
1変量正規分布
コピュラ
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 13
2変量結合分布の等高線
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
正規コピュラ tコピュラ
クレイトン・コピュラ ガンベル・コピュラ
周辺は標準正規・コピュラだけ違う14
長所:周辺分布とその関係(コピュラ)を分けてモデリングできる
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 15
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
短所:意味づけとか解釈が難しい
16
Sklar’s Theorem
参考:wikipedia(コピュラ(統計学)-スクラーの定理)
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 17
正規コピュラ
周辺分布が正規分布の時、多変量正規分布を再現
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 18
Source Code (R)
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
library(copula)#ケンドールのτは全部一致(するようにした)kendallsTau(normalCopula(0.5))kendallsTau(tCopula(0.5))kendallsTau(claytonCopula(1))kendallsTau(gumbelCopula(1.5))#plotlim <- c(-3,3)marginal <- c("norm", "norm")parameter <- list(list(mean=0,sd=1), list(mean=0,sd=1))par(mfrow=c(2,2),mar=c(2,2,1,1))contour(mvdc(normalCopula(0.5), marginal,parameter),dmvdc, xlim=lim, ylim=lim)contour(mvdc(tCopula(0.5), marginal,parameter),dmvdc, xlim=lim, ylim=lim)contour(mvdc(claytonCopula(1), marginal,parameter),dmvdc, xlim=lim, ylim=lim)contour(mvdc(gumbelCopula(1.5), marginal,parameter),dmvdc, xlim=lim, ylim=lim)
※動作前にパッケージのインストールInstall.packages(“copula”)は必要。※この資料に出てくる他のコードも同様
19
2:金融での応用例
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 20
2-1リターン分布のモデリング
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 21
米・独・中・日の代表的な株価指数のリターン分布
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 22
周辺分布のモデリング≒正規分布
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 23
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
どのコピュラが合うだろうか・・・
24
T-コピュラ!
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 25
モデルパラメーターの決定
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
> fit.mlThe estimation is based on the maximum likelihoodand a sample of size 925.
Estimate Std. Error z value Pr(>|z|)rho.1 0.7155620 0.01621145 44.139295 0.000000e+00rho.2 0.3177060 0.03710005 8.563493 0.000000e+00rho.3 0.2515627 0.03968773 6.338551 2.319365e-10rho.4 0.5159302 0.02766178 18.651374 0.000000e+00rho.5 0.4672290 0.03002338 15.562172 0.000000e+00rho.6 0.7427242 0.01413110 52.559528 0.000000e+00df 9.4838458 0.92328625 10.271837 0.000000e+00The maximized loglikelihood is 892.0507 The convergence code is 0
26
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
計算したパラメーターを使って将来シミュレーションするんだね
27
Source Code (R)
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
#海外の株価指数が取れるんでquantmod使うlibrary(quantmod)library(copula)#S&P500,DAX,香港ハンセン指数,NIKKEI225symbols <- c("^GSPC","^GDAXI","^HSI","^N225")#終値のみ取得用関数getClose <- function(symbol, date.from){
x <- getSymbols(symbol, auto.assign=FALSE, from=date.from)index.close <- grep("Close", colnames(x), ignore.case=TRUE)return(x[, index.close])
}#指数値のリスト、終値だけ取得data.index <- sapply(symbols,getClose,"2007-01-01")#1つのxtsへ&欠損行削除data.index <- do.call("merge",data.index)data.index <- data.index[!apply(data.index,1,function(x)any(is.na(x))),]#リターン系列へreturn.index <- data.index / lag(data.index)-1return.index <- return.index[-1,]pairs(as.matrix(return.index))#基準化してuに倒してPLOT(周辺分布は正規だと仮定)return.index.scaled <- apply(return.index,2,scale)pairs(pnorm(return.index.scaled))#パラメーターの最尤推定dim.index <- ncol(return.index.scaled)dim.param <- dim.index*(dim.index-1)/2t.cop <- tCopula(rep(0,dim.param), dim = dim.index,dispstr = "un", df.fixed = FALSE)fit.ml <- fitCopula(t.cop, pnorm(return.index.scaled), method="ml", start=c(rep(0,dim.param),10))fit.ml
28
Collateralized Debt ObligationTokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
2-2
29
CDOって何だ?
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 30
資産
住宅AAA
AA
BB
---
シニア
メザニン
エクイティ
社債
ABS
優先劣後構造
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
ざっくりとした図解
貰えるお金
吹っ飛び度合い
31
吹っ飛び度合いVS
貰えるお金
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 32
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
吹っ飛び度合い
に応じた貰えるお金を計算したい
33
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
貰えるお金の期待値||
損失の期待値
34
Pricing Formula
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
利子率(のようなもの)
35
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
無理
36
Approximated Pricing Formula
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
※ここから先の計算は参考文献[1]を追試する形
37
損失の関係
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
a b
全体の損失
あるCDO証券の損失 シニア
メザニン
38
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
損失をモデリングする必要性
39
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
資産間の吹っ飛び度合いの関係をコピュラで表現
40
そして
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
を計算41
計算結果
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
※参考文献[1]P109・表7の値をほぼ再現
コピュラ エクイティ メザニン シニア スーパーシニア正規 1,145.42 62.49 0.52 0.000t(20) 1,055.28 86.07 2.18 0.004t(6) 896.74 126.44 8.56 0.044t(3) 733.31 165.90 23.56 0.191
クレイトン 857.64 135.73 12.83 0.084
スプレッド(Sのこと) 単位:bp
吹っ飛び度合い
42
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
正規コピュラが業界標準
43
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
金融危機時にはリスクを過小評価していた?
44
Source Code - 1 (R)
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
library(copula)#CDOのスプレッド計算関数SpreadOfCDO <- function(copula, default.probability, maturity,recovery.rate, attachment, detachment, num.path, num.refdebt)
{#コピュラによる乱数生成。これと倒産確率を比べて倒産判定実施random.copula <- rcopula(copula,num.path)#各パスごとのデフォルト件数num.default <- rowSums(random.copula < default.probability)#債務全体の損失率loss.refdebt <- (1-recovery.rate)/num.refdebt*num.default#トランシェの損失率loss.tranche <- (pmax(loss.refdebt - attachment,0)-pmax(loss.refdebt - detachment,0))/(detachment-
attachment)#トランシェの損失率の期待値(標本ベース)expectation.loss.tranche <- sum(loss.tranche)/num.path#スプレッドspread <- -1/maturity*log(1-expectation.loss.tranche)return(spread)
}
45
Source Code - 2 (R)
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
############### main ##############parameterNUM.PATH <- 10^5NUM.REFDEBT <- 100DEFAULT.PROBABILITY <- 0.05MATURITY <- 5RECOVERY.RATE <- 0.4#使用するコピュラオブジェクトを生成しておくCOPULA <- list(normalCopula(0.15, dim = NUM.REFDEBT),tCopula(0.15, dim = NUM.REFDEBT, df = 20),tCopula(0.15, dim = NUM.REFDEBT, df = 6),tCopula(0.15, dim = NUM.REFDEBT, df = 3),claytonCopula(0.21, dim = NUM.REFDEBT)
)#ある程度パラメーター固定したスプレッド計算関数SpreadOfCDOWithFixedParameter <- function(copula,attachment, detachment){SpreadOfCDO(copula, DEFAULT.PROBABILITY, MATURITY, RECOVERY.RATE, attachment, detachment, NUM.PATH, NUM.REFDEBT)
}result <- list()#エクイティresult[[1]] <- sapply(COPULA,SpreadOfCDOWithFixedParameter,0.0,0.06)#メザニンresult[[2]] <- sapply(COPULA,SpreadOfCDOWithFixedParameter,0.06,0.18)#シニアresult[[3]] <- sapply(COPULA,SpreadOfCDOWithFixedParameter,0.18,0.36)#スーパーシニアresult[[4]] <- sapply(COPULA,SpreadOfCDOWithFixedParameter,0.36,1)#行列&bp化result <- 10^4*do.call("cbind", result) colnames(result) <- c("エクイティ","メザニン","シニア","スーパーシニア")rownames(result) <- c("正規","t(20)","t(6)","t(3)","クレイトン")result
46
ご清聴ありがとうございました
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi 47
参考
[1]・金融危機時における資産価格変動の相互依存関係:コピュラに基づく評価新谷 幸平、山田 哲也、吉羽 要直
[2] ・CDOのプライシング・モデルとそれを用いたCDOの特性等の考察:CDOの商
品性、国内市場の概説とともに小宮清孝
[3] ・コピュラの金融実務での具体的な活用方法の解説戸坂 凡展/吉羽 要直
TokyoWebmining #9(2011/01/16) 「コピュラと金融工学の新展開(?)」 Presenter : @teramonagi
・morgueFile・ Stock.XCHNG
写真
文献
48