「モンテカルロ法」をご存じでしょうか?
FXやカジノをやる方であれば、聞いたことはあるかもしれません。
しかし、一般的に「モンテカルロ法」という単語自体、あまり耳にすることはないでしょう。
ただ、「モンテカルロ法」は意外にも、私たちの生活に密着した事象に利用されています。
今回は「モンテカルロ法」について広島経済大学の高石教授にお聞きしてみました。
取材にご協力頂いた方
広島経済大学 教養教育部 教授 高石 哲弥
ハイデルベルグ大学理論物理学研究所DFG研究員、チューリッヒ工科大学Swiss Center for Scientific Computing博士研究員等経て現職。
専門は計算物理学、時系列解析、金融データ分析
モンテカルロ法とは?
エモーショナルリンク合同会社取材担当(以下EL):はじめに、モンテカルロ法の概要を教えていただけますか?
高石教授:モンテカルロ法とは“乱数”を使って数値計算やシミュレーションを行う方法の総称で、様々な分野で利用されている。
アメリカのロスアラモス国立研究所でマンハッタン計画に参加していたポーランド出身のスタニスワフ・ウラムによって考案され、モンテカルロ法という名称はジョン・フォン・ノイマンによって名付けられた。
モンテカルロはモナコ公国にある地区名であるが、カジノで有名なことから名付けられたと思われる。
EL:モンテカルロ法は、どのような時に用いられるのでしょうか?
高石教授:ある現象が確率モデルで表されているとき、モンテカルロ法ではその確率モデルにおける性質や振る舞いをたくさんの乱数を利用して調べることができる。
EL:性質や振る舞いを乱数を用いて調べるとは、詳しく教えていただけますか?
高石教授:例えば、高校の数学の教科書「数学A」を見てみると、反復試行の確率のところで、数直線上を動く点についての問題がある。
ここでは、次のような問題設定を考えてみる。
- 数直線上の原点にある点Pがコインを投げて
- 表が出たら右に1つ進み、
- 裏が出たら左に1つ進む
という試行を繰り返す。
n回コインを投げた後、点Pがどこにいるかを考える。
例えば、1回目の試行後、点Pは原点の右側、または左側にいる。
繰り返し試行し、点Pがどこに居たかを記録することによって、この試行の後点Pがある場所にいる確率が求まる。
EL:乱数、つまり、規則性がない数値を生成し、生成された数値を使って調べたい対象の将来における振る舞いを調べるわけですね。ただ、結構な時間がかかりそうですね。
高石教授:実際にコインを投げて調べるのは大変なので、乱数によって(モンテカルロ法)によって調べる。
例えば、
- 0と1がそれぞれ2分の1の確率でランダムに現れる乱数を生成
- 0なら右に進む
- 1なら左に進む
というように決めて置いて、コンピュータで実行すれば、点Pの振る舞いを調べることができる。
EL:実際に試行するのではなく、乱数を用いてコンピュータで処理すれば時間を大幅に短縮できますね。では、モンテカルロ法の特徴を簡単にまとめて頂けますか?
高石教授:まとめるとモンテカルロ法の特徴は、次の通り。
- たくさんの乱数を利用して、知りたいものの近似値を求める。
- 乱数を増やすことによって近似値の精度を上げることができる。
- 精度良く高速な疑似乱数生成法も必要(日本人の考案したメルセンヌ・ツイスタが有名)
EL:ちなみに、モンテカルロ法は、私たちの生活に関連するような分野で利用されているのでしょうか?
高石教授:確率で表されるところではモンテカルロ法が利用できるので、様々な分野で利用されている。が、実生活でとすると・・?
例えば、ゲームアプリのゲームの展開などは、乱数で変わるようになっていると思われる。他にも次のようなものに利用されている。
- 台風の進路や風速などのモンテカルロシミュレーション
- その他の気象海象のモンテカルロシミュレーション
- 交通渋滞のシミュレーション
- 在庫管理
- 電力需要
- 積分計算でのモンテカルロ法
EL:思っていたよりも多くのものにモンテカルロ法は利用されているのですね。
金融業界におけるモンテカルロ法の利用例
EL:次に、金融業界におけるモンテカルロ法の利用例を、いくつかご紹介していただければと思います。
高石教授:利用例として、次の3つを取り上げる。
- オプション価格計算
- リスク指標
- ベイズ推定によるボラティリティ変動モデルのパラメータ推定
①オプション価格計算
EL:まずは、オプション価格計算についての解説を、お願いいたします。
高石教授:オプションとは、「証券や金融商品などをあらかじめ決められた期日に前もって定めた価格(行使価格)で売買できる権利」のことで、次のように呼ばれている。
- 買う権利を「コール・オプション」
- 売る権利を「プット・オプション」
コール・オプションの場合、期日の商品の価格が行使価格より高ければ、商品を行使価格で購入し、差額分を手にすることができる。
低ければ、買う権利を行使せず、オプション価格分が損失となる。
オプション価格は、この取引における利得の平均として与えられる。
価格の変動が対数正規分布に従い、分散が一定の場合は、有名なブラックショールズ式よりオプション価格が与えられる。
※ブラックショールズ式とは、デリバティブ、主にオプション取引におけるオプション価格の算定に用いられる。
一般の場合は、変動が対数正規分布また分散が一定とは限らない。そのような場合はモンテカルロ法で価格変動をシミュレーションし、オプション価格を見積もることができる。
先ほどの数直線上の例と同じ考えで、ある確率で価格が上がったり下がったりする場合を考える。
例えば、1000円の株価が、時間tが1,2,…と増えるに従って、10円ずつ上がったり下がったりするとする。
- t=1で株価は1010円または990円となる。
- t=2では1020円また1000円、980円となる。
ある期日t=Tまでの試行を繰り返すことによって、期日Tでの株価の確率分布が決定され、そのもとでのオプション価格が計算される。
EL:簡単にまとめると、オプション価格算定の際の、価格変動推移の近似値をモンテカルロ・シミュレーションによって取得するということですね。
②リスク指標
EL:続いて、リスク指標についての解説をお願いいたします。
高石教授:前提として、株や為替などの金融資産価格は日々変動している。
変動によっては大きな損失となる場合があるので、自分が保持している金融資産が現在どのようなリスクを持っているかを定量的に知ることが、リスク管理のために必要である。
そこで、定量的にリスクを表す指標として、Value at Risk(VaR)と呼ばれるものがある。
VaRはある期間において、信頼水準X%で推定される最大の損失を表す。
VaRの計算において、変動の確率密度関数が図のように正規分布で与えられる場合、分散値を与えることによって、理論的に計算できる。
しかし、実際の分布は正規分布とは限らない。そこで、VaRの計算にモンテカルロ法を用いる手法がある。
設定した確率分布に従って変動(収益率)をモンテカルロ法によって生成し、求めたい信頼水準でのVaRを求める。
EL:オプション価格を算出するときと同様、モンテカルロ法を用いて株や為替などの変動推移の近似値をとり、その近似値を元にリスクを数値として算出するわけですね。
数値をもとにリスク管理をすることで、より明確なリスク管理が可能となりそうですね。
③ベイズ推定によるボラティリティ変動モデルのパラメータ推定
EL:では、最後にベイズ推定によるボラティリティ変動モデルのパラメータ推定についての解説をお願いいたします。
高石教授:リスクを測る指標として“ボラティリティ”も金融の実証分析では重要な量である。
ボラティリティは、価格変動の大きさを表すものである。ボラティリティを推定、または予測する方法として、
- ボラティリティの時間変動をモデル化し、
- そのモデルのパラメータを現実の価格変動データに合うように決定する方法がある。
よく利用されるモデルとして、次のモデルがある。
- GARCHモデル
- 確率的ボラティリティ変動モデル
GARCHモデルの場合は、最尤推定法(さいゆうすいていほう)を用いることができる。これはモデルの尤度関数を最大化するようにパラメータを決定する方法である。
※尤度とは、ある前提条件のもとで観測された結果から、どのような前提条件があったかを推測する尤もらしさを与える指標。
一方、確率的ボラティリティ変動モデルの場合、尤度関数が積分形で与えられるため、最尤推定法を実行する中で積分値を求めるのが困難なため、最尤推定法によるパラメータ推定が難しい。
そこで、よく利用されるのがベイズ推定である。この方法では、ベイズの定理によりパラメータの従う確率分布が与えられる。
※ベイズの定理で、事前確率が尤度を受けて、どう変化するのかを示す事後確率を求める
そして、パラメータの推定値はその確率分布のもとでの期待値として与えられる。
この期待値を求めるのに、モンテカルロ法が用いられるのだが、特に「マルコフ連鎖モンテカルロ法」と呼ばれる手法が良く用いられる。
※確率的ボラティリティ変動モデルのパラメータをハミルトニアンモンテカルロ法(ハイブリッドモンテカルロ法とも呼ばれる)という、マルコフ連鎖モンテカルロ法で求める手法を開発した。現在ハミルトニアンモンテカルロ法は、ベイズ推定で幅広く利用されている。
その他にも、保険業務、不動産、信用リスクなど様々な金融分野でモンテカルロ法が利用されている。
EL:計算が複雑すぎて分析できない場合に、モンテカルロ法より近似値を得るというのは、これまでと同様ですね。
しかし、マルコフ連鎖モンテカルロ法では、逐次的に乱数を発生させて期待値を計算するという点が異なりますね。
また、その他の金融分野でも、モンテカルロ法は活用されているのですね。
今後のモンテカルロ法
EL:では、最後に今後のテクノロジーの発展とともに、モンテカルロ法はどのように利用されていくのか、見通しをお聞かせください。
高石教授:コンピュータの性能の向上に従って、今後もモンテカルロ法は強力な手法として利用されていくと思われる。
方向性として、次のようなものが考えられる。
- さらに多量の乱数を利用した高精度化
- 多変量におけるモンテカルロ法:例 多数の金融資産におけるリスク
- 複雑なモデルへの応用
- 高速計算によるリアルタイム計算
まとめ
モンテカルロ法は、「乱数を使って数値計算やシミュレーションを行う方法の総称」で、台風の進路や風速、交通渋滞、電力需要など、思っていた以上に私たちの生活に密着した事象のシミュレーションに利用されています。
また、金融分野では、株や為替などの金融商品の価格シミュレーションに利用され、リスク管理の強力なサポートとしての役割も果たしています。
今後のテクノロジーの発展とともに、モンテカルロ法で、さらに高精度化されたリアルタイムシミュレーションが可能になれば、私たちはより鮮明な未来を予見することができるようになるかもしれませんね。
主な論文
- Heavy quark potential and effective actions on blocked configurations, (1996), Physical Review D 54 (1), 1050
- Testing and tuning symplectic integrators for the hybrid Monte Carlo algorithm in lattice QCD, (2006), Physical Review E 73 (3), 036706
- Bayesian inference of stochastic volatility model by Hybrid Monte Carlo, (2009), Journal of Circuits, Systems, and Computers 18 (08), 1381-1396
- Statistical properties and multifractality of Bitcoin, (2018), Physica A 506, 507-519
- Taylor effect in Bitcoin time series, (2018), Economics Letters 172, 5-7
- Rough volatility of Bitcoin, (2020), Finance Research Letters 32, 101379
- Time-varying properties of asymmetric volatility and multifractality in Bitcoin, (2021), Plos one 16 (2), e0246209
- Time Evolution of Market Efficiency and Multifractality of the Japanese Stock Market, (2022), Journal of Risk and Financial Management 15 (1), 31
(取材・執筆・編集/エモーショナルリンク合同会社)