スポンサーリンク

【R言語】Rでブラック・ショールズ・モデルの計算をしてみる その1

 

www.tkstock.site

 

 

今回はRを使ってブラックショールズモデルの関数を作ってみます。

 

 

www.tkstock.site

 

 

今回は公式の通り、原資産額(S)・行使価格(K)・ボラティリティ(σ)・無リスク金利(r)・期間(T)を使ってコールオプションの価格(原資産額Sの金融商品をt期間後に行使価格Kを買う事のできる権利)を計算していきます。

 

###ブラックショールズモデルによってコールオプション価格を計算する関数を作る###

 

> blackscholes  <- function(S,K,r,sigma,T)
+ {
+ d1 <- (log(S/K)+(r+sigma^2/2 )*T) / (sigma*sqrt(T))
+ d2 <- d1 - sigma*sqrt(T)
+ C0<-S*pnorm(d1)-exp(-r*T)*K*pnorm(d2)
+ return(c(“コールオプション価格”=C0))
+ }

 

 

これで関数が完成しました。次はこれに引数(S,K,r,sigma,T)に適当な数値を入れて関数を動かします。

 

###無リスク金利が0.05のとき、原資産額100の金融商品(ボラティリティ0.3)を7期間後に行使価格100を買う事のできる権利の価格を計算する###

 

> blackscholes(100,100,0.05,0.3,7)

 

コールオプション価格

43.41978  

 

コールオプションとは原資産価格Sの商品を、一定期間後に行使額Kで購入して売却するものなので、行使額Kが低ければ低いほど利益は大きくなるということになります。(行使額が原資産額を上回ってしまった場合は権利を行使しないことにより権利購入額分の損をすることになります。)

 

なので、行使額Kの値を低くすればするほどそのコールオプションの価値は上昇することになります。

 

> blackscholes(100,50,0.05,0.3,7) ##行使価格50のとき
コールオプション価格
66.73609

> blackscholes(100,30,0.05,0.3,7) ##行使価格30のとき
コールオプション価格
79.18537
> blackscholes(100,10,0.05,0.3,7) ##行使価格10のとき
コールオプション価格
92.95525

 

次にプットオプション(売る権利)の価格を計算していきます。

 

 

スポンサーリンク

プログラミングの独学はとても難しい


プログラミングは小学校の義務教育にも導入され始めており、これから社会人として生きていく上でプログラミングはもはや出来て当たり前、出来なれば論外というエクセルレベルの必須スキルになりつつあります。そしてそういう話を聞いて参考書なりを購入して独学でプログラミング勉強しようと思っている人も少なくないでしょう。しかしプログラミングを独学で勉強し始めようと思うものの



・「分からない箇所で詰まって挫折してしまった」

・「勉強する時間が足りない」

・「ネットの記事だと情報が断片的でよくわからない」

・「コードのエラーの原因が分からない」



という壁にぶち当たって、プログラミングの勉強を止めてしまう方が少なくありません。独学でプログラミングを勉強してる時間のほとんどはつまづいている時間です。実際僕も最初のころ独学でプログラミングを勉強していた頃はエラーの原因が分からず丸1日を不意にしてしまった・・・そんな苦い経験がありました。



それで僕は一度はプログラミングの学習を諦めてしまいましたが、就活で現実を知る中で「プログラミングを勉強して、いずれフリーランスとして自由な生き方がしたい」「エンジニアとして若いうちから高収入を得たい」という気持ちから一念発起して「侍エンジニアのwebサービスコース」に申し込み、プロのエンジニアの方に対面でマンツーマンでPythonによるWebサービス作り方とWeb技術の基本を教えてもらい、ようやくプログラミングが理解でき、今ではエンジニアとしてそこそこの暮らしができるようになりました。





侍エンジニアでは、とりあえずプログラミングやインターネットの基本を知っておきたい人から、HTML・cssなどでWebサイトやWebアプリを作ってみたい人やPythonを勉強してデータサイエンティストやAIエンジニアになりたい人まで幅広いニーズに応えた様々なコースが用意されています。



IT業界と言ってもエンジニアの仕事はプログラミング言語次第でサーバーから機械学習・ディープラーニングまで多種多様ですし、侍エンジニアの無料レッスン(カウンセリング)を受けてみて、自分のやりたいITの仕事は何なのか?を見つけるのがエンジニアへの第一歩になります。ちなみに今侍エンジニアの無料レッスンを受けると1000円分のAmazonギフト券がもらえるので、試しに受けてみるだけもお得です。


自分は半端に独学やオンラインスクールで勉強して金と時間を無駄にするくらいなら、リアルのプログラミングスクールに通ってしっかりプログラミングを勉強した方がいいと思います。ちなみに今、侍エンジニアに申し込むと、25歳以下の学生の方であれば、受講料が20%OFFになるので超お得です。


そして、プログラミングは大勢で授業を受けたり漫然とオンライン学習をするよりも自分が分からない箇所をピンポイントでプロの講師に直接質問して、ちゃんと納得するというスタイルの方がお金は確かに少し掛かりますが、独学で学ぶよりも絶対にモノになります。


シェアする

  • このエントリーをはてなブックマークに追加

フォローする