SABR(Stochastic Alpha Beta Rho) modelのキャリブレーションアプリをShinyで作る
たまには金融っぽいものを作ろうと思いまして、SABRモデルのキャリブレーションアプリを作りまして*1。
実際の物はShiny hosting service上で動いており、以下のLINK先にあります。
左側のパラメーター(Forward, Maturity, Strile & IV)をいじるたびに、裏でキャリブレーションが走る仕様です。キャリブレーション結果は、単純に"Model IV - Market IV"の二乗値が最小となるように求めています。パラメーターの非負性等の条件は適当に変数変換でいれています、詳細はソース嫁。マーケットデータは「Strike, IV」のカンマ区切りであれば適当にいれても動く…はず。
パラメーターを適当に変えるとわかるように、DOTM・DITMの時の"合い"はやはりよく言われてるように悪い様子がよくわかる。
ソースコード
コードはgithubからGETできます。
テストに使っているtestthatという単体テストライブラリはあのggplo2のHadley Wickham氏作で、
簡単に単体テストが作れるのがとても良いので、これはこれで別途紹介したいなと思いました(まる
参考
*1:本当はSABRではなく株式オプションのデファクトスタンダードなモデルで作りたかったのですが、それが何なのか知らないので、もしご存知の方が教えてくれませんかね???