ファクター投資入門
昨年読んだ投資の本の中で、自分のスタイル的に参考になるなあ、と思ったのが「ファクター投資入門」という本でした。「超合理的な株式投資を目指す」というキャッチフレーズには手抜きが大好きな人間にはそそるものがあります。
書籍の中では、ファーマフレンチのファクターモデルなど、これまでファイナンス系の学者たちが様々なデータを解析して得られた「市場平均をアウトパフォームする」ファクターが紹介されています。市場のベータに次ぐ株式リターンの説明要因として、バリュー、小型株、モメンタムが有名ですが、本記事ではモメンタムファクターについての再検証を行います。
モメンタムファクター
モメンタムファクターというのは端的に言えば、
「過去のリターンが良かった株式は、将来のリターンが良い」
というものです。本書の中で紹介されていた2013年のJournal of Financeの論文「Momentum and value everywhere」では、世界各国(日本は除く)でモメンタムファクターがアウトパフォームするという検証がなされました。
ここでのモメンタムは、ある時点において、過去12ヶ月〜2ヶ月前のリターンが良かった順番に並べたときに、リターンが良かったものをロング、悪かったものをショートすると正のリターンが得られる:モメンタムによるアウトパフォーム効果がある。といったものでした。毎月リターンをチェックするということになると、検証する将来のリターンは基準の時点から1ヶ月が良い、ということになります。基準の時点の直近1ヶ月のリターンを考慮しないのは、リバーサルによる影響があるために、むしろ直近のリターンは省いたほうが良いからのようです。
ここで、検証する命題は、「直近1ヶ月を除く過去12ヶ月のリターンが良い場合、その後1ヶ月のリターンの期待値が上がるのか?」というものになります。
ファクター投資入門でも、論文でも、モメンタムファクターは実際に存在し市場平均を大幅にアウトパフォームする、と述べられています。
検証
今回、Wikipediaを利用して、米国の大型株指数であるS&P500に含まれる銘柄の他、中型株、小型株の指数であるS&P400, S&P600の現在登録されている銘柄をチョイスしてそれらの銘柄についてのモメンタムファクターを調べてみました。
注意したい点は現在も株価が取得できる銘柄のみであり、生存者バイアスがあるということですが、論文で使用しているCRSPなどからデータをダウンロードできないため、苦肉の策です。
PythonをつかってYahoo Financeから価格データをダウンロードした所、1480銘柄の価格情報を得ることができました。これらを使って過去のリターンと将来のリターンを算出します。単純に過去のリターンと将来のリターンをプロットすると以下のようになりました。横軸のPast returnは過去12ヶ月のリターン(-1は-100%、+1は+100%です。)を示しており、縦軸のFuture Returnは次の1ヶ月のリターンを表しています。取得したデータを全てプロットしています。
バイオ系の人にとってはフローサイトメトリーみたいだな、なんて思う図ですが、ここは忘れて冷静に解釈していきます。
この図を見ても関連は定量できません。また、リターンを比較する際に、2倍に対応するのは1/2倍、3倍に対応するのは1/3倍、という方がリターンに与える影響がよりわかりやすいと思いますが、上の図ではそのような対応関係が非対称に表されている(それぞれ赤線、緑線が対応関係にある)、というような特徴があるため目測では関係性を見誤る可能性があります。
そこでリターンの対称性を見やすくするために、対数変換(今回は底が10の対数をとってみます。0が100=1、1が101=10を表します。)を施してみた所、このようにプロットできました。
きれいな円を描くように分布しているように見えます。横軸は過去のリターン、縦軸は将来のリターンです。Past returnが-0.75くらいになるとプロットがかなり上下にばらついているようにも見えますが、概ね対称な円を描いていることもあり、やはりこの図だけでもモメンタムの優位性は目で確認できるほどではありません。(二次元カーネル密度推定なども行いましたが分布に明らかな歪みは見られませんでした。)
優位性を数値で確認するために、基本に戻って、「過去のリターンの成績順のい並べる」といった作業をしてみます。同時点での過去リターンが一番良かった銘柄が100、一番悪かった銘柄が1になるようにして横軸に並べて、それぞれのリターンを縦軸にプロットします。
過去リターンが極端に悪かったものはやや分散が大きくなっている印象ですが、果たして100になるにつれて期待値は実際に上がっているのでしょうか?
過去のリターン順位ごとのリターン期待値を求めてみてグラフにしてみました。
ここではカーネル関数(私の名前とは関係ありません)を設定して、一定のバンド幅に属する過去のリターン順位の銘柄について、将来リターンを平均したものを期待値としています。例えば、リターンが下位20%の銘柄の期待値は下位18-22%のリターンの平均値としています。
グラフのメインの傾向としては、横軸を進むにつれて期待値が高くなっていることがわかります。これこそがモメンタムファクターを示したものでしょう。1962年から2020年の通期で見ればモメンタムファクターは確かに存在するように思います。
上位30%の銘柄のリターン期待値が1ヶ月で1.2%に対して、全体の銘柄のリターン期待値は1ヶ月で0.65%でした。1月でリターンが0.55%も向上するというのは年率に換算すると非常に大きいものになります。
さらなる検証 現代のモメンタム
これで終わってしまうとモメンタムの再検証にとど待ってしまいます。せっかくプログラムまで組んだのでその先へ進みます。
論文、Value and Momentum Everywhereでは2011年までのデータを使って、その時点までのモメンタムファクターの有用性を報告しました。例えば、私が使ったデータを編集して、2000年から2011年のデータでモメンタムファクターを検証した場合、先程の過去リターン順位とリターン期待値のグラフは以下のようになります。
ここでも、リターン期待値は右肩上がりになっているような印象を受けます。左端は異常値だと考えられますが、単純に上位30%と下位30%の銘柄のリターンを比較すると、上位30%が0.70%のリターンに対して下位30%は0.58%と、平均してみるとモメンタム銘柄に優位性が見られました。
論文で報告された範囲では確かにモメンタムファクターは生きていたように思います。さて、2010年代はどうでしょうか。2010年から2020年の記事執筆時点までのモメンタムリターン期待値を示します。
なんと、2010年代でもモメンタムファクターの優位性が見られました。上位30%のリターンが0.80%に対して下位30%のリターンは0.525%です。
2010年代を見ると、明らかな右肩上がりになっているというわけではなく、モメンタムが弱い株が低いリターンだった、というような捉え方のほうが正しいのかもしれません。
横軸が100に近づくと急にリターンが下がっていますが、これは、「あまりにバブルになった銘柄には暴落が待っている」ことを示している可能性があります。
今回の解析結果の注意点としては、あくまで今生き残っている株だけを対象に解析したということです。生存者バイアスというもので、上場廃止になった銘柄などを加えて再解析することでまた異なる結果が出てくる可能性があることも踏まえて下さい。
モメンタム投資の注意点としては、毎月このような評価を行って銘柄の売買を行うことで取引手数料や税金を支払うタイミングが増える可能性があり、それがリターンを押し下げる原因にもなります。実際に運用するときにはこれらのコストも十分に考えた上で行ったほうが良いように思いました。
ソースコード
最近Pythonで解析することが多くなったので、誰でも使えるGoogle colaboratoryを公開することにしました。twitterのアカウントでもつぶやきましたが、こちらからアクセスしてみて下さい。結果の表示のほか、自分でパラメータを設定して検証し直すことができます。
コメント