システムトレード用の開発ツールです。エクセルのVBAを駆使して最高のパフォーマンスを目指します。基本は無料
前回の最後の方で、標本には誤差があるといいました。前回の例でいくと標本緑の平均値と標本青の平均値は違ってました。同じ母集団から選んだ12人分のデータであるのにもかかわらず、平均値、標準偏差ともに違ってました。
前回の母集団と標本の関係を再度、図にしてみるとこうなります。この関係は調査対象が株価であっても、工業製品であっても、生徒であっても同じです。それを踏まえた上で、なぜこのような誤差が出てくるのかというメカニズムを考えます。

仕組みを理解しやすいように、今回は次のようなゲームプログラムを作ってみました。1から9までの数字を書いたカラーカードが9枚あり、その中からカード2つ取り出し、その取り出した2つのカードに書いてある数字の平均値を記録していくというゲームです。尚、このゲームの目的は母集団の平均値をサンプル(標本)から推測するという訳の分からないものです(笑)。
先に答えをいうと、母集団{1,2,3,4,5,6,7,8,9}の平均値は

となり「5」です(簡単ですな)。知りたいのはこの母集団の平均値「5」であることを前置きしておきます。
まず9個から2つの異なった数字を持つカードを取り出すので、その組み合わせの総数は
![]()
となり、36通りとなります。母集団から標本(サンプル)は36個できるということです。念のために全組み合わせを並べてみます。

そしてそれぞれの組み合わせの平均値も求めておきます。

36通りの組み合わせがあるのだから36個の平均値があることになります。しかし数字をよく観察すると重なっている数字が結構あります。その重なり具合を度数分布表にしました。

横軸が平均値、縦軸が重なった回数です。例えば、取ったカードが(1、2)とすると平均値は1.5になります。取ったカードが(4,6)だと平均値は5になり、(2、8)でも同じ5になります。組み合わせは36通りあっても、平均値は表から分かるように15通りだけとなり、余った分はどこかで重なるということになります。この重なり具合に隔たりがあるのが見た目で分かると思います。4.5、5、5.5が平均となった回数がそれぞれ4回ともっとも多く、平均値が1.5となったのは1回しかありません。平均値が1.5になる確率もあるし、逆に知りたい母集団の平均値5とビンゴする確率もあるが、サンプル(標本)からの答えはバラバラであるのには変わりはないということです。

実際に今回用意したプログラム実験の結果からも似たような分布が見受けられます。
母集団からサンプルを取って平均値、標準偏差を測るという作業は結局こうゆうことです。あるサンプルからは平均値が1.5になる確率もあり得るし、また違うサンプルの平均値は8.5になる確率もあり得るということです。どちらも同じ母集団からとったサンプル結果であるにも関わらずおおよそ正解に近いとはいえない誤り、誤差が計測されるのです。前回の2つの12人分のサンプル(標本)の平均値、標準偏差の違いも母集団からサンプルを取る過程の中では十分あり得る誤差だといえます。この誤差は実は、統計学的に非常に重要な情報を含んでいます。というのは、平均の誤差が標本(サンプル)から得られたデータの信頼性そのものを表しているともいえるからです。 再度度数分布表を観察してください。本来知ることのできない母集団の平均を求めるために、標本(サンプル)の平均を求めて、母集団の平均 を推測するわけですが、そのデータの信頼度はこの場合約11%(4÷36)、つまり10回計測した数値の内、1回だけが正確で信頼性のある数値であると考えられます。10回中1回しか正解を得られないんじゃ役に立たないじゃないか?と思われるかもしれませんが、見方を変えて、サンプルから得られた平均値が1以上間違っていない信頼度は50%あり、2以上間違っていない信頼度は約78%もある考えることは出来ないでしょうか。つまり、標本の平均値から母集団の正確な平均値を見つけ出すことは不可能に近い確率だが、平均がどのくらいの確率で、どの範囲に収まるかということはある程度正確に推測可能であるということをいいたいのです。
エクセルでの約7500回シュミレーション結果からでも大体似たような分布が確認できることから、この誤差の分布の仕方は標本から母集団の情報を推測する場合には共通に起こる現象であると確認できます。この誤差、信頼性のことを統計学では「標準誤差」と呼んでいます。また誤差が母集団の平均値を中心に左右対称で釣鐘型に分布する様子を「中央極限定理」と呼んでいます。結局言いたいことは、正規分布するデータなら、平均の誤差も中央極限定理により正規分布するということです。中央極限定理によれば、サンプルのデータ数が適当な大きさであれば(統計学では30以上が理想とされている)、サンプルの中のデータも平均値を中心に正規分布するばかりか、サンプルデータ自体の平均も正規分布するといっているのです。
誤差も正規分布するのなら、前回学習したZスコアーを応用すれば、例えば、信頼度95%確率で平均値は59点から64点が取るとか、株価なら98%の確率で平均株価は76万から124万の間を取るなんていう幅のある予測が自由に出来るようになり判定の重要な基準になりえます。ではその具体的な求め方を、今回も出来るだけ数式なし説明してみます。
今回はこのサイトは株価を科学するサイトなので株価を使って求めてみます。ここで求めたいのは98%の信頼区間の標準誤差です。言い換えると、信頼度98%で日経平均はいくらからいくらの間に収まるかということです。
| 日付 | 初値 | 高値 | 安値 | 終値 |
| 2008/2/22 | 13530 | 13541 | 13379 | 13500 |
| 2008/2/25 | 13612 | 13969 | 13612 | 13915 |
| 2008/2/26 | 14037 | 14054 | 13803 | 13825 |
| 2008/2/27 | 14007 | 14105 | 13956 | 14031 |
| 2008/2/28 | 13878 | 13962 | 13795 | 13926 |
| 2008/2/29 | 13735 | 13739 | 13533 | 13603 |
| 2008/3/3 | 13413 | 13414 | 12992 | 12992 |
| 2008/3/4 | 13080 | 13110 | 12883 | 12992 |
| 2008/3/5 | 12973 | 13044 | 12920 | 12972 |
| 2008/3/6 | 13069 | 13365 | 13051 | 13215 |
| 2008/3/7 | 13025 | 13025 | 12745 | 12783 |
| 2008/3/10 | 12717 | 12777 | 12527 | 12532 |
| 2008/3/11 | 12392 | 12675 | 12353 | 12658 |
| 2008/3/12 | 12842 | 13071 | 12799 | 12861 |
| 2008/3/13 | 12741 | 12772 | 12352 | 12433 |
| 2008/3/14 | 12510 | 12583 | 12167 | 12242 |
| 2008/3/17 | 12089 | 12133 | 11691 | 11788 |
| 2008/3/18 | 11829 | 11995 | 11794 | 11964 |
| 2008/3/19 | 12142 | 12375 | 12142 | 12260 |
| 2008/3/21 | 12332 | 12496 | 12308 | 12483 |
| 2008/3/24 | 12473 | 12582 | 12438 | 12480 |
| 2008/3/25 | 12640 | 12791 | 12573 | 12745 |
| 2008/3/26 | 12649 | 12712 | 12591 | 12707 |
| 2008/3/27 | 12618 | 12622 | 12476 | 12605 |
| 2008/3/28 | 12594 | 12874 | 12508 | 12820 |
| 2008/3/31 | 12709 | 12709 | 12431 | 12526 |
| 2008/4/1 | 12540 | 12779 | 12522 | 12656 |
| 2008/4/2 | 12836 | 13189 | 12836 | 13189 |
| 2008/4/3 | 13190 | 13390 | 13137 | 13390 |
| 2008/4/4 | 13286 | 13361 | 13220 | 13293 |
上記のテーブルは2008/2/2から2008/4/4の日経平均を整数値で丸めたものです。終値を基準に精度98%の明日の以降の平均値の取りうる範囲をもとめてみます。ちなみに98%にするのは金融工学の指標でVaR(バリューアットリスク)というのがあり、それが左片側の99%の信頼区間で計算するからです。下図を確認すれば言いたいことは分かると思います。尚、以下のエクセル関数は2008/2/2がセルA2を取ったと仮定して計算してあります。
まず30日分の平均値を求める。30日平均線を求める要領です。E32は
=AVERAGE(E2:E31)
となり30日平均線は12913円となる
次に標準偏差を求める。E33は
=STDEV(E2:E31)
となり解は580円。
以上で前提の計算が終わりました。再度確認しますが今回求めたいのは

で示されている真ん中の赤い部分のAとBの境界の値です。まずAの部分とBの部分を分けて考えます。少しややこしいですが、Aの値を求めるためのZスコアーは(Zスコアーの逆算表(第5回)を参考にしてください)49%つまり、0.4901の値を返す2.33という値になります。図でいう平均値を中心線として左半分は49%ことです。平均値から左側の部分のAは1%の確率で損する値とも取れるし、1%の確率で取る平均値の最小値とも考えられます。
セルE35に
=E32-2.33*(E33/SQRT(30))
公式で表すと
=平均値-Zスコアー×(標準偏差/√標本数)
具体的な数値では
=12913-2.33×(580/√30)
となり、計算すると図Aの部分に対応する日経平均は12666円となります。これは今後1%の確率で株価平均12666円以下の値を取るかもしれないリスク、または標準偏差を中心にとした98%の確率で取る最低の平均値が12666円ということです。
次は右半分の図Bに対応する値を求めてみます。これもBの値を求めるためのZスコアーも49%の値を返す2.33という値になります。
よってセルE36に
=E32+2.33*(E33/SQRT(30))
公式で表すと
=平均値+Zスコアー×(標準偏差/√標本数)
具体的な数値では
=12913+2.33×(580/√30)
となります。結果としては、2.33の前の-が+に変わっただけです。計算結果は13229円と出ます。これは今後株価平均が13229円以上に値上がる確率は1%であるとも取れるし、または標準偏差を中心にとした98%の確率で取る最高の株価平均が13229円ということです。
ここまでの値を整理すると

を取るということになります。
ところで、公式の(標準偏差/√標本数)の部分に注目してください。標本数の平方根で割ることによって値を求めています。これは何を意味するかというと標本数が大きくなればなるほど標本の標準誤差が小さくなり、母集団の平均値に近づき、正確になっていくということを示しています。300を10で割るより100で割った方が(一方の解は30であり、一方は3になるということです)、30掛けるより3掛けた方が求める値が小さくなるので、その分求める標準誤差も小さくなり、正確になっていくという意味です。考えればしごく当たり前のことで、サンプルのデータ数が多くなればなるほど母集団のデータ数に近づくので、サンプルのデータから得られる値も母集団から得られる値に似てくるは当然です。例題に沿って言い換えると、日経平均30日分のデータより100日、200日、300日・・・とデータ数を増やしていった方がより標準誤差が小さくなっていきます。だだし、平均線も100日平均線、200日平均線、300日平均線に変わり、だんだん短期予測から長期予測になるので注意してください。
100、200、300・・・・と増えれば増えるほど母集団の値に近づき、その分サンプルデータから得られる推測値も正確なり、その上、誤差も正規分布する。とういうことは、データ数が小さいと楽ではあるが信頼性に欠ける。かといって大きいと正確になるが、時間とコストもかかり現実的ではなくなっていく。結局、統計学というのは、この誤差をいかにして小さくして標本のデータを母集団全体のデータとして信頼できるものにしていくか、また、その信頼度とはどの程度なのか?ということを探っていく学問ということです。

投稿者 システムトレーダー壱式 : 2008年03月27日 10:20
このエントリーのトラックバックURL:
http://systemtrader.info/cgi/mt/mt-tb.cgi/5