メインコンテンツまでスキップ

対数正規分布(Log normal distribution)

勝ち組への道対数正規分布

金融工学

オプションの価格公式として有名なブラック=ショールズ式では対数正規分布が決定的に重要な役割を果たしています。
この理論では、株価の変動は幾何ブラウン運動によって支配されていると仮定しています。そしてこの仮定から、株価の収益率(= 前日の終値/当日の終値 -- 1)は対数正規分布に従っているということが分かるのです。

では簡単に、実際の例を見てみましょう。
下の図の左側は、TOPIX の収益率の分布です。 一方右の図は、対数収益率(= log(前日の終値/当日の終値) )です。

なるほど、確かに収益率の対数が正規分布に従っているみたいですね。 つまり、元の収益率は対数正規分布に従っているという仮定が一番もっともらしいことが分かるでしょう。
最近では、対数収益率は正規分布よりもっと裾の厚い分布に従っているという議論が高まってきています。そういった分布としてジョンソン SU 分布が現在非常に注目されているのです。

他にお金がらみの話としては、世帯の年収の分布が対数正規分布(に近い分布)になるとの分析もあったりします。興味のある方は ここに厚生労働省による所得の分布の図があるのでぜひ確かめてみてください。ご感想は心の中にでもしまっておいてください。

ちょっと注意

正規分布の累積分布関数

Φ(xmσ)\Phi\left(\frac{x-m}{\sigma}\right)

と表記されることを正規分布の項で説明しましたね。 では、対数正規分布に従う確率変数 xx の分布関数はどうなるかというと、実に単純なもので、

F(x)=Φ(logxmσ)F(x)=\Phi\left(\frac{\log x-m}{\sigma}\right)

になります。そう、正規分布の変数を xlogxx\rightarrow \log x としただけなんです。
ここでもうちょっと注意。 正規分布確率密度関数

1σϕ(xmσ)\frac{1}{\sigma}\phi\left(\frac{x-m}{\sigma}\right)

であるからって、調子に乗って対数正規分布の確率密度関数を、

f(x)=1σϕ(logxmσ)f(x)=\frac{1}{\sigma}\phi\left(\frac{\log x-m}{\sigma}\right)

としないようにしましょう。確率密度関数は、累積分布関数を微分して求めるもの。だから正しい確率密度関数は、

f(x)=1σxϕ(logxmσ)f(x)=\frac{1}{\sigma x}\phi\left(\frac{\log x-m}{\sigma}\right)

となります。分母の xxを忘れないようにね。

分布の形状

基本情報

  • 2つのパラメータ M,SM, S が必要です (どうやって求めるの?).

    S>0S>0
  • 半無限区間 x>0x > 0 で定義された連続分布です。

  • 平均対して常に非対称です。

確率

AB
1データ説明
20.5対象となる値
30.1分布のパラメータ M の値
42分布のパラメータ S の値
5数式説明(計算結果)
6=NTLOGNORMDIST(A2,A3,A4,TRUE)上のデータに対する累積分布関数の値
7=NTLOGNORMDIST(A2,A3,A4,FALSE)上のデータに対する確率密度関数の値

Sample distribution

分位点

  • 累積分布関数の逆関数

    F1(P)=exp[SΦ1(P)+M]F^{-1}(P)=\exp\left[S\Phi^{-1}(P)+M\right]

    ここで Φ()\Phi(\cdot) は標準正規分布の累積分布関数です。

  • Excel での分位点の求め方

AB
1データ説明
20.7この分布の確率
30.1分布のパラメータ M の値
42分布のパラメータ S の値
5数式説明(計算結果)
6=NTLOGNORMINV(A2,A3,A4)上のデータに対する累積分布関数の逆関数の値

分布の特徴

平均 -- 分布の"中心"はどこ? (定義)

  • 分布の平均 は次式で与えられます。

    mωm\sqrt{\omega}

    ここで

    m=exp(M),ω=exp(S2)m=\exp(M),\omega=\exp(S^2)

    です。

  • Excel での計算法

AB
1データ説明
20.1分布のパラメータ M の値
32分布のパラメータ S の値
4数式説明(計算結果)
5=NTLOGNORMMEAN(A2,A3)上のデータに対する分布の平均

標準偏差 -- 分布はどのくらい広がっているか(定義

  • 分布の分散 は次式で与えられます。

    m2ω(ω1)m^2\omega(\omega-1)

    ここで

    m=exp(M),ω=exp(S2)m=\exp(M),\omega=\exp(S^2)

    です。

    標準偏差 は 分散の正の平方根です。

  • Excel での計算法

AB
1データ説明
20.1分布のパラメータ M の値
32分布のパラメータ S の値
4数式説明(計算結果)
5=NTLOGNORMSTDEV(A2,A3)上のデータに対する分布の標準偏差

歪度 -- 分布はどちらに偏っているか(定義)

  • 分布の歪度 は次式で与えられます。

    (ω+2)ω1(\omega+2)\sqrt{\omega-1}

    ここで

    ω=exp(S2)\omega=\exp(S^2)

    です。

  • Excel での計算法

AB
1データ説明
20.1分布のパラメータ M の値
32分布のパラメータ S の値
4数式説明(計算結果)
5=NTLOGNORMSKEW(A2,A3)上のデータに対する分布の歪度

尖度 -- 尖っているか丸まっているか (定義)

  • 分布の尖度 は次式で与えられます。

    ω4+2ω3+3ω26\omega^4+2\omega^3+3\omega^2-6

    ここで

    ω=exp(S2)\omega=\exp(S^2)

    です。

  • Excel での計算法

AB
1データ説明
20.1分布のパラメータ M の値
32分布のパラメータ S の値
4数式説明(計算結果)
5=NTLOGNORMKURT(A2,A3)上のデータに対する分布の尖度

乱数

  • 乱数 x は一様乱数 U に対して次式で生成されます(逆関数法) :

    x=exp[SΦ1(U)+M]x=\exp\left[S\Phi^{-1}(U)+M\right]

    ここで Φ()\Phi(\cdot) は標準正規分布の累積分布関数です。

  • Excel での乱数生成法

AB
1データ説明
20.1分布のパラメータ M の値
32分布のパラメータ S の値
4数式説明(計算結果)
5=NTRANDLOGNORM(100,A2,A3,0)100個の対数正規乱数を Mersenne Twister アルゴリズムで生成します。

メモ: この使用例の数式は、配列数式として入力する必要があります。使用例を新規ワークシートにコピーした後、A7:A106 のセル範囲 (配列数式が入力されているセルが左上になる) を選択します。F2 キーを押し、Ctrl キーと Shift キーを押しながら Enter キーを押します。この数式が配列数式として入力されていない場合、単一の値 2 のみが計算結果として返されます。

関連 NtRand 関数

参照