曜日と月が教える株の投資
アメリカ大統領の選挙がある年は株価が上昇する…。何故だか分からないけど当たっていることが多い…。そんな不思議なことが株式市場にはあります。
なかでもアメフトのスーパーボール理論は有名でした。チャンピオンを決定する試合で、NFLに所属していたチームが優勝すると株式市場は騰貴し、AFLに所属していたチームが優勝すると下落するというものです。何でも途中までは9割の的中率を誇っていたそうです。
その他、株価は月初と月末に上昇することが多い…。8月や9月は夏枯れで株価は低迷する…。12月の株価は低く1月は高い…。これらの不思議な現象に対して、いろいろと理由付けされたりするのですが、明確なところはよく分かっていません。
商品の季節変動や企業の節税効果、年末年始のご祝儀相場、決算期末のドレッシング買い等、要因になりそうなものはあります。
ちょっと聞き慣れない言葉ですが、このように因果関係がはっきりしないのに、どうやらそうらしいと考えられる経験則をアノマリー(anomaly)と言います。
曜日と月の株式アノマリー
もっと簡単なアノマリーもあります。例えば、ふっと思ったことはありませんか。もしかして、月によって株価の上がり下がり度合いが違うのではないのかと…。
四半期決算を重視するアメリカ企業とは異なり、日本企業は伝統的に年に一回の決算が主です。するとほとんどの企業は3月決算なので、3月は特別な月になります。では、決算月の株価はプラスになりやすいのでしょうか。それとも、マイナスになりやすいのでしょうか。
また、曜日によって値上がり率と値下がり率に違いがあるかもしれません。これは曜日効果とも言われていますが、日本では曜日によって有意な差が認められるのでしょうか。
仮に特定の月や曜日に特異な株価の上昇があるなら、理由はともかくとして立派なアノマリーということになります。
10年間の日経平均で騰落の検証
ここに2001年1月4日から2010年12月30日までの、10年分の日経平均データがあるとします。日付(8桁)と株価(終値)か記載されたシンプルなものですが、このデータから立会日全ての前日に対する値上がり・値下がり率を計算してみます。
果たして、値上がりした日は何日あって、値下がりした日は何日あったのでしょうか。株式市場はランダムウォークと言われます。理論では株価の予測は不可能で、明日の株価は今日の株価に等しいと仮定するのが妥当だそうです。
さっそく検証していきます。まず、10年分のデータはファイルのnikkei.txtにあるとします。データファイルの先頭5行と末尾5行を表示してみましょう。
20001229 13780
20010104 13690
20010105 13860
20010109 13610
20010110 13430
>rpn 5 -c tail -fd <nikkei.txt
20101224 10270
20101227 10350
20101228 10290
20101229 10340
20101230 10220
日経平均株価では、10年間でざっと25%も資産価値が下がっていますね。ずっと失われた10年を繰り返しているようです。
では、当日の株価(終値)を前日の株価(終値)で割って一日の騰落率を求めます。rpn式を2つパイプで繋げばすぐに答えが出てきます。
計算結果はファイルのratio.txtに格納してあるので、先頭と末尾の5行を表示してみます。
-0.006531
0.01242
-0.018038
-0.013226
-0.017126
>rpn 5 -c tail <ratio.txt
-0.00677
0.00779
-0.005797
0.00486
-0.011605
きちんと日毎の騰落率が記録されていますね。例えば、最初の1日目は前日に比べて0.65%値下がりしています。では、値上がりした日の数を求めてみましょう。値上がり・値下がりは騰落率の符号で簡単に判定できます。
1213
1213日ですね。次に値下がりした日と値動きがなかった日数を求めます。
1173
>rpn z <ratio.txt | rpn 0 0 -c lookup | rpn -c count
68
1173日と68日です。それぞれ全体の日数からの比率を計算してみます。
0.494295 0.477995 0.0277099
全立会日のうちで49.4%が値上がりした日、47.8%が値下がりした日、2.8%が値動きがない日になりますね。僅かに1.6%だけ値上がり日の方が多いですが、ほとんど同じ日数で上がったり下がったりしている様子が窺えます。
株式市場はランダムウォーク
次に値上がりと値下がりがランダムに起こっているかどうかを調べたいのですが、簡便にコレログラムを使って騰落率の連続性(周期性)を検証することにします。なお、全期間は面倒なので最初の半年(120日)だけが対象です。
>xyp -x,120 -y-.2,.2 -w60 -m <tmp
^y 0.2 *
| * *
|
| * *
| * * * * *
| * * * * *
| * * * ** * * *
* ** * * * * * * * ** **** ****** **** ****
+---*-----------------*-**-------**-----*-****---**-*-***-*>
|* * * * * * * ** ** ** * * * x
|* * * * * * * *
| * * *
| * * *
| * * *
|
|-0.2 * *
上がるも八卦、下がるも八卦の状態で、ランダムウォーク理論どおりになりそうです。相関係数も±0.2程度で低いですし、何らの周期も見られません。株式投資が難しいと言われる一端が垣間見えますね。
ついでに、全騰落率の基本統計量も出しておきましょう。
デ ー タ 2454
最 小 値 -0.114256
最 大 値 0.14148
範 囲 0.255736
合 計 値(Σ) 0.025775
平 均 値(μ) 1.05033e-05
分 散 値(σ2) 0.000263916
標準偏差(σ) 0.0162455
分 散 値(s2) 0.000264024
標準偏差(s) 0.0162488
歪度(a3≒0) -0.0903897
尖度(a4≒3) 9.36185
変動係数(ν) 1547.03
平均値は限りなく0に近く、標準偏差は1.6%です。ガウス分布に従っていることが前提ですが、今日の株価は前日の株価の±3.2%の中に95%存在することになります。明日の株価を予測する最善は今日の株価なので、何らかの歪みや偏り(バイアス)を期待して儲けることはできません。
加えて、残念なことに歪度と尖度の項目を見るとガウス分布にしては尖り過ぎています。実際、尖度が9.36185ととても大きくなっています。念のため、分布をグラフ化してみましょう。
* 130
|
|
|
**
**
* *
***
***
* |**
** |**
* |
* | **
*** | **
* * ******* | ******* * * *
-----------------+--------------------->
-15 +12
横軸が株価の騰落率で左に行くほど値下がりして、右に行くほど値上がりしていることを示しています。縦軸はそれぞれの度数になります。
データ期間中での値上がりの最大は14.1%で、値下がりの最大は11.4%でした。0%付近にピークがありますが、ガウス分布にしては尖り過ぎていますね。また、グラフの誤差なのか僅かにマイナス側に中央が偏っている気がします。
やはり、日単位では何か特別なアノマリーは感じられませんね。
次は…
10年間の日経平均データを使って、全立会日の前日に対する騰落率(値上がり率と値下がり率)を計算してみました。結果はランダムウォーク理論どおりのようです。日を単位として眺めてみても何らのバイアスも確認できないようです。
歪みや偏りを認識できなければ株式市場で儲けることはできません。そこで、次は日次の単位から月次の単位に視点を変えてみることにします。1月から12月で区切ってみた場合、何かを発見することができるかもしれません。
また、曜日に対しても同じように探求してみます。月曜日から金曜日までのうち、値上がりを見越して買うと良いのは何曜日なのか、値下がりを警戒してやり過ごしたいのは何曜日なのか分かるかもしれません。
でも、本当に株価が上がりやすい月や曜日ってあるのでしょうか。
rpnプログラムを実行するには、rpn試用版かrpn標準版が必要です(バージョンの違いはこちら)。
head, tail, freq, statinfoはrpnマイスターパッケージに同梱されています。lookupはユーティリティパッケージに同梱されています。rownum, rowdivはカンタン分析パッケージに同梱されています。crlogramはビジネス統計(トレンド編)に同梱されています。xypとnpdはrpnの姉妹ソフトウェアです。詳しくはプロダクトを参照ください。