ブラック-ショールズ公式によるオプション価格計算

 BS.c はブラック-ショールズ公式およびその他の公式により,ヨーロピアンオプションと様々な経
 路依存型オプションの価格を計算するCプログラムです。

 プログラムは次の関数から成っています。


 NormalDistributionFunc

  標準正規分布の分布関数を計算する関数です。計算には,初等関数による近似法を用いてい
  ます。詳しくは,[1][2]を参照してください。


 BlackScholesCall

  ブラック-ショールズ公式によりヨーロピアン・コールオプションの価格を計算する関数です。


 BlackScholesPut

  BlackScholesCall とプット・コール・パリティの式を組み合わせることにより,ヨーロピアン・プット
  オプションの価格を計算する関数です。


 LookbackPut

  ルックバック・プットオプション(floating strike lookback put)の価格を計算する関数です。ここで
  使っている公式については,たとえば[3]を参照してください。なお,入力の M は現時点までの
  資産価格の最大値で,普通のルックバック・プットオプションの価格を計算するときは S0 に等
  しい値を入れます。


 HindsightCall

  ハインドサイト・コールオプション(fixed strike lookback call)の価格を計算する関数です。ルック
  バック・プットの価格とハインドサイト・コールの価格の間に成り立つ関係式([4]参照)を使い,
  LookbackPut を用いて計算を行っています。


 main

  関数 BlackScholesCall のためのテストプログラムです。行使価格 K と満期までの時間 T を変
  えたときのコールオプションの価格を計算します。結果は画面とファイル BS.txt の両方に出力
  します。


 計算結果

  現在の資産価格が S0=100,利子率が r=0.1,ボラティリティが σ=0.3 の場合に,ヨーロピアン
  コールオプションの価格を行使価格 K の関数として複数の満期 T について計算した結果を図1
  に示します。Tが大きくなるほどオプション価格は高くなり,かつ滑らかな関数になっているのが
  わかります。


  
                  図1 ヨーロピアン・コールオプションの価格


 参考文献

  [1] M. Abramowitz and I. Stegun: "Handbook of Mathematical Functions", Dover, 1972.

  [2] J. Hull: "Options, Futures and Other Derivatives", Third edition, Prentice-Hall, 1997.

  [3] Y.-K. Kwok: "Mathematical Models of Financial Derivatives", Springer-Verlag, 1998.

  [4] M. Broadie, P. Glasserman and S. G. Kou: "Connecting Discrete and Continuous
     Path-Dependent Options", Finance and Stochastics, Vol. 3, No. 1, pp. 55-82 (1999).


2004年度応用数理工学特論のページに戻る
プログラムのページに戻る
Topに戻る