満月の日に株価は動く part2 | 投資アラカルト [実践] | 逆ポーランド電卓の実践ウェブ rpn hacks!

逆ポーランド電卓の実践ウェブ rpn hacks!

逆ポーランド電卓rpnの実践ウェブ   
rpn hacks! アールピーエヌ・ハックスサイトマップ

rpn | 実践 | 投資アラカルト | 投資に関する話題をrpnで探求!リスクテイクの世界を知ろう。

HOME > 実践 > 投資アラカルト > 満月の日に株価は動く part2 hatena yahoo buzzurl livedoor del.icio.us nifty newsing twitter facebook rss ソーシャルブックマーク

満月の日に株価は動く part2

前のページに戻るLinkIcon

満月の平均変動率を比較

 さて、次に満月と月齢の対比になるのですが、実際のところ満月は月齢で言えばいくつになるのでしょうか。いわゆる満月というのは新月から数えて15日目の月(十五夜)になるのですが、実は満月の月齢は13.8から15.8の間で変動しています。

正確には月齢の周期は29.5日という中途半端な数値です。市販の月カレンダーでも大抵は小数点が四捨五入等で省略されているので、新月から15日目が絶対に満月になるかといえば微妙なところです。

ピッタリとした月齢値はないので、だいたい真ん中の月齢14のときの日経平均の変動率の平均と、それ以外の月齢の時の変動率の平均との違いを比べてみることにします。

まずは満月のときの平均変動率です。月齢と変動率のデータが格納されたファイルのageとvarを横結合してから、月齢14をピックアップして平均を計算します。

  >paste age var | rpn 14 14 -c lookup | rpn x _ | rpn -c mean
  0.0184066


計算結果は0.0184066で約1.84%の平均変動率ですね。満月以外はどうでしょう。

  >paste age var | rpn 14 14 -c nlookup | rpn x _ | rpn -c mean
  0.0158974


今度は0.0158974で約1.59%が平均変動率になります。この結果を見ると、確かに満月の平均変動率のほうが大きくなっていますが、僅か0.25%の違いです。差がないといえばないような気もします。そこで、バラつきの度合いを示す標準偏差も調べてみます。

  >paste age var | rpn 14 14 -c lookup | rpn x _ | rpn -c sdev
  0.0150773

  >paste age var | rpn 14 14 -c nlookup | rpn x _ | rpn -c sdev
  0.00978972


標準偏差も満月のときの変動率のほうが大きいですね。どうやら満月の日は株価変動率の値も大きいし、ぶれる度合いも大きいようです。

月齢毎の平均変動率

 ここで一旦、全体の変動率を俯瞰するために、月齢毎の平均変動率をグラフ化してみましょう。まず、月齢が0から29までの全ての変動率平均をmoon.varファイルに格納します。

  >paste age var | rpn 0 0 -c lookup | rpn -c rowmean >moon.var
  >paste age var | rpn 1 1 -c lookup | rpn -c rowmean >>moon.var
  >paste age var | rpn 2 2 -c lookup | rpn -c rowmean >>moon.var
                              :
                            (中略)
                              :
  >paste age var | rpn 28 28 -c lookup | rpn -c rowmean >>moon.var
  >paste age var | rpn 29 29 -c lookup | rpn -c rowmean >>moon.var


月齢と平均変動率が格納されたmoon.varファイルをxypでグラフ化すると以下のようになります。

  >xyp -x,29 -y.01,.02 -s5,.002 -m <moon.var | npd
  ^y 0.02
  |
  -                 *
  |         *           *
  |       *           **   *    *      *
  -・・・*・・・・*・・・*・・*・・・・・・・・・*・・・・・・・・・・・・*・・・ 全体の平均
  *           *           *       **  *       (0.0159791)
  | *  *        *  *          **    *
  -*
  |     *
  |
  -
  |
  |                                      x
  |                                     29
  +0.01-|------|------|------|------|---->


グラフの横軸が月齢0から月齢29まで、縦軸が平均変動率で0.01から0.02になります。全月齢の変動率の平均はグラフにあるように約0.016です。*の数を左端から数えていくと丁度、月齢14に値する部分が一番高くなっていることが分かります。グラフからも満月のときの変動率の高さが確認できました。

母平均の差の検定を試す

 さて、上記の変動率の平均と標準偏差を使った比較では、両者の違いが確かなものかどうか分かりません。たまたま偶然に満月のときは変動率が高かっただけかもしれません。平均変動率の0.25%の違いは決定的なものなのか、誤差の範囲なのかが分からないのです。グラフを見ても判定は主観的で曖昧さに変わりはありません。

この疑問には統計的に検定することで、ようやく決着が付けられます。このような2つの標本集団(満月のときの変動率データとそれ以外の変動率データ)の違いを統計的に検定する方法の1つに母平均の差の検定(詳しくはビジネス統計(検定編)を参照ください)があります。2つの標本集団の平均値の差が偶然で起こるようなものではないことを統計的に証明するわけです。

ただし、母平均の差の検定は前提条件として標本集団がガウス分布に従っている必要があります。ところが、前述したように歪度と尖度がガウス分布とは異なる分布形状を示唆していますし、直近300日の変動率を使った幹葉表示でも釣鐘状の分布からは、ずれた分布が見てとれます。

一応、そのような場合にも標本集団の数を合わせることで、多少のガウス分布のずれを無視して検定を行なうことはできます。今回の分布形状のずれが多少の範囲に入るかどうかは別途検討が必要ですが、とりあえず標本数を合わせて検定してみることにしましょう。

        *


 では、満月のときの変動率と満月以外のときの変動率を同じデータ数だけピックアップしていきます。まず満月のときの変動率のデータ数を調べます。

  >paste age var | rpn 14 14 -c lookup | rpn -c count
  80


満月のときの変動率データ数は80個ですね。まず、満月のときの変動率データはそのまま全部、ファイルのvar.14に確保します。

  >paste age var | rpn 14 14 -c lookup | rpn x _ >var.14


次に月齢14を除く、全ての月齢毎にランダムに10個選び出します。全部で290個になります。

  >paste age var | rpn 0 0 -c lookup | rpn x _ | rpn -c shuffle >tmp
  >rpn 1 -c rownum <tmp | rpn 1 10 -c lookup | rpn x _ >random
  >paste age var | rpn 1 1 -c lookup | rpn x _ | rpn -c shuffle >tmp
  >rpn 1 -c rownum <tmp | rpn 1 10 -c lookup | rpn x _ >>random
                             :
                          (中略)
                             :
  >paste age var | rpn 29 29 -c lookup | rpn x _ | rpn -c shuffle >tmp
  >rpn 1 -c rownum <tmp | rpn 1 10 -c lookup | rpn x _ >>random


これでファイルのrandomに月齢14以外の変動率が確保できました。そのデータから再度、ランダムに80個のデータを選び出します。

  >rpn -c shuffle <random | rpn 1 -c rownum >tmp
  >rpn 1 80 -c lookup <tmp | rpn x _ >var.n14


ファイルvar.n14に満月のとき以外の変動率が格納できました。それぞれの基本統計量は以下のとおりです。

  >paste var.14 var.n14 | rpn -c statinfo
  デ ー タ        80          80
  最 小 値        0.0042605   0.00428449
  最 大 値        0.111229    0.064554
  範    囲        0.106968    0.0602695
  合 計 値(Σ)    1.47253     1.27116
  平 均 値(μ)    0.0184066   0.0158895
  分 散 値(σ2)   0.000227326 7.89917e-05
  標準偏差(σ)    0.0150773   0.00888773
  分 散 値(s2)   0.000230203 7.99916e-05
  標準偏差(s)    0.0151725   0.0089438
  歪度(a3≒0)    3.40808     2.41935
  尖度(a4≒3)    19.5128     12.7506
  変動係数(ν)    0.824295    0.562874


向かって左が満月のときの株価変動率で、右が満月のとき以外の変動率です。満月のときの変動率とそれ以外の変動率をそれぞれ標本集団と考えると、今回は標本に対応関係がなく母分散が等しいと仮定しないケースになります。

満月のときの変動率が大きいことを統計的に判定したいので、片側検定とします。つまり、帰無仮説は「満月のときの変動率とそれ以外の変動率に違いはない」となります。対立仮説は「満月のときの変動率のほうが、それ以外の変動率よりも大きい」となります。有意水準はとりあえず5%としましょう。

まず、満月のときの変動率ファイルのvar.14と、それ以外のときの変動率ファイルのvar.n14を横結合してから検定プログラムに掛けます。

  >paste var.14 var.n14 | rpn -c difmeanw
  1.47225


検定統計量は1.47225です。この検定ではt分布の自由度が必要なので、ウェルチ検定の自由度を計算しておきます。

  >paste var.14 var.n14 | rpn -c difwelch
  119.546


自由度を120として、検定統計量が示す確率をt分布から計算してみましょう。

  >rpn .01 0 120 -c prob-t -r 148 | rpn -c integral | rpn .5 x -
  0.072091


検定統計量は0.072091なので、7.2%の確率です。かなりいい線ですが、片側検定で有意水準が5%ですから帰無仮説は保留です。つまり、統計的には「満月のときの変動率のほうが、それ以外の変動率よりも大きいとは言えない」ということになります。

有意水準として10%を採用していれば、満月のときの株価変動率は普段よりも大きいと結論付けられるのですが、検定手法の前提としてのガウス分布とのズレを考えれば、変動率が大きいとは言えないという結論にしておいたほうが無難ですね。

巷で噂の満月と株価の関係は次のとおりです。①満月の時に株価は下がる。②新月の時に株価は上がる。③満月がトレンドの転換点になる。④満月の時は株価が激しく動く。もし、噂が本当なら新月の前で買って満月の後で売れば儲かることになりますが…。

実践投資アラカルトに戻るLinkIcon

警告rpnプログラムを実行するには、rpn試用版かrpn標準版が必要です(バージョンの違いはこちら)。

情報pasteは講座サポートで公開されています。statinfoはrpnマイスターパッケージに同梱されています。lookup, nlookup, shuffleはユーティリティーパッケージに同梱されています。rownum, rowmeanはカンタン分析パッケージに同梱されています。sdevはビジネス統計(基礎編)に同梱されています。integralはビジネス統計(推定編)に同梱されています。difmeanw, difwelch, prob-tはビジネス統計(検定編)に同梱されています。xypとnpdはrpnの姉妹ソフトウェアです。詳しくはプロダクトを参照ください。

投資アラカルト

リスクテイクの世界を知ろう

※実践コーナーのTOP

紹介 rpnの利用シーンはこちら…

講座初めての人のrpn基礎もどうぞ
講座しっかり学べるrpn入門もどうぞ
講座すぐに使えるdos入門もどうぞ

実践他の分野への挑戦は実践TOP

応用rpnアプリケーションは応用TOP

part2

リスクテイクの世界を知ろう

※実践コーナーのTOP

講座初めての人のrpn基礎もどうぞ
講座しっかり学べるrpn入門もどうぞ
講座すぐに使えるdos入門もどうぞ

実践他の分野への挑戦は実践TOP

応用rpnアプリケーションは応用TOP

書籍紹介

記事に関連した書籍

本ウェブサイトで扱った話題に関連した書物で、スタッフが実際に読了したものを紹介。

書籍数学の書籍
数の世界は思ったよりもエキサイティング。

  • 書籍統計の書籍
  • ビジネスで統計が使えるととっても有利。

書籍投資の書籍
失敗しない投資には広範囲で実践的な知識が必要。

警告バックスラッシュはエンマークに読み替えてください( IEのみ)。
バックスラッシュとエンマーク

警告文字で作られた図表や式が崩れることがあります。ブラウザによっては固定幅フォントをMSゴシックにするときれいに表示されます。それでも崩れる場合は図表や式をメモ帳にコピー後、閲覧下さい。

警告rpn試用版と標準版(2kリビジョン)はダブルクォートで囲ってください。

rpn 1 2 + ⇒ rpn "1 2 +"
rpn 1 -c foo ⇒ rpn "1" -c "foo"

ダブルクォートは省略できることが多いのですが、慣れない間は囲んだほうが無難です。なお、本ウェブサイトの記事ではrpn標準版(98リビジョン)を使用しているため囲っていません。詳しくは技術サポートの「rpn TIPS参照ください。

注意rpnの障害情報はこちら

警告rpn試用版の場合、複雑なプログラムや処理時間のかかるプログラムの一部には動作しないものがあるかもしれません。あくまで無料提供であることを勘案・了承ください。rpn標準版は、すべてのプログラムが動作します。