X Facebook LINE Bookmark

東証33業種で検証したセクター・モメンタム戦略 — 12通りのどれでも偶然と区別できない上乗せ

  • 東証33業種とREITの指数で、値上がりの勢いが強い7業種を買い、弱い7業種を売る戦略を2011年9月〜2026年3月の175か月で検証した。勢いを測る期間と持つ期間の12通りのどれも、統計的に偶然と区別できる上乗せは出なかった(最も良い「9か月・3か月」で年4.8%、p値0.16)
  • 3か月持つ場合の成績を、毎月計算した3か月分の成績が重なったまま数えると、ばらつきが小さく見えて「有意」と出やすい。重ならない月次で数えると、6か月・3か月は年3.1%、p値0.33だった
  • 成績は時期によって大きく違い、2018年11月までの前半7年余りは年-2.0%、後半は年+8.2%。2020年を除くと年2.2%に下がり、移動平均線で買う業種を絞っても、TOPIXに対する上乗せは増えなかった
東証33業種で検証するセクター・モメンタム戦略

「最近よく上がっている業種をまとめて買えば、勝てるのではないか」。業種で選べば、銘柄を一つずつ調べる手間も省ける。強い業種を買い、弱い業種を売る「セクター・モメンタム」を、東証33業種の指数で2011年から2026年まで試した。平均すれば年に0〜5%のプラスだったが、勢いを測る期間と持つ期間を変えた12通りのどれも、偶然でも出る程度の差を超えなかった。

1. 業種単位でモメンタムを試す理由

セクター・モメンタム・ローテーションは、過去の一定期間(形成期間)に最も値上がりした業種を買い、最も値下がりした業種を売る戦略だ。業種という大きな単位で売買するので、1つの会社の不祥事や決算の失望といった単発のニュースに振り回されにくい。

この戦略は、Kakushadze と Serur が2018年に公開した『151 Trading Strategies』の§4.1で紹介されている。実務で使われる151の売買戦略をまとめた論文だ。勢いを測る期間(6〜12か月)の累積の値上がり率で業種を並べ、上位を買って下位を売り、1〜3か月持つ。§4.1.1では、指数が移動平均線(100〜200日)より上にある業種だけを買う「移動平均線のフィルタ」も紹介している。

日本の業種別のETFは17業種の区分(NEXT FUNDS TOPIX-17)が中心で、33業種の指数に連動するものは銀行業の1本しかない。そこで今回は東証33業種の業種別株価指数(とREIT指数)を使い、比べる相手をTOPIX(東証株価指数)にした。

2. 検証の対象と方法

項目 内容
対象データ 東証33業種の業種別株価指数とREIT指数の計34分類(一覧はAppendix)の日次終値。配当は含まない
比べる相手 TOPIX(配当を含まない)の日次終値
持つ期間の範囲 2011年9月〜2026年3月の175か月(TOPIXのデータがそろう月)。勢いの計算には、2006年から手元にある業種指数を使う
組み方 勢いの上位7業種を買い、下位7業種を売る(34分類のそれぞれ約2割)。金額は均等
勢いの測り方 月末の終値で、3・6・9・12・15・18か月の累積の値上がり率を計算する。直近の1か月は、個別株のモメンタムでよく使う決め方にそろえて飛ばす(飛ばさない計算も第3節で示す)
持つ期間 1か月か3か月。3か月持つ場合は、直近3回の月末に選んだ組を3分の1ずつ持ち、毎月3分の1を入れ替える

業種別指数とTOPIXの日次終値は、手元のデータベースに貯めてきたものだ。記事の日付の前日(2026年4月15日)までのデータから、月末が確定した2026年3月までの月次の値上がり率を計算した。

3か月持つ場合に毎月3分の1ずつ入れ替えるのは、月ごとの成績を重ならずに1つずつ出すためだ。勢いの計算と、月ごとの成績のつくり方は次のとおり。

def formation(mret, F):
    """月末 t のシグナル: t-F 〜 t-1 月の累積の値上がり率(直近の t 月は飛ばす)"""
    return (1 + mret).rolling(F).apply(np.prod, raw=True).shift(1) - 1

def jt_returns(sel, mret, H):
    """H か月持つ: 直近 H 回の月末に選んだ組を 1/H ずつ持ち、毎月 1/H を入れ替える"""
    out = {}
    for m in mret.index:
        cohorts = [m - k for k in range(1, H + 1)]
        if not all(c in sel for c in cohorts):
            continue
        long_r = np.mean([mret.loc[m, sel[c][0]].mean() for c in cohorts])
        short_r = np.mean([mret.loc[m, sel[c][1]].mean() for c in cohorts])
        out[m] = long_r - short_r          # 買い−売り のその月の値上がり率
    return pd.Series(out)
勢いの計算と、月ごとの成績のつくり方(sector_momentum_recheck_20261002.py、2026年10月実行)

データの前提条件と制約

このデータと検証には、次の制約がある。

  • 取引コストを含めていない: 売買の手数料や、買値と売値の差は引いていない。1か月持つやり方のほうが入れ替えが多く、コストの影響を受けやすい
  • 業種指数は直接売買できない: 実際に運用するなら、業種の代表銘柄をまとめて買う必要があり、指数との値動きのずれも出る
  • 12通りを試している: 本当は差がなくても、12通りを試せば、5%の基準を偶然下回る組み合わせが平均0.6個出る。1つだけ有意な組み合わせがあっても、それだけでは偶然と見分けにくい
  • 主な期間に2008年の金融危機を含まない: TOPIXのデータが2011年8月からのため。買い−売りの差だけなら業種指数で2006年から計算できるので、第5節で補った

3. 12通りの結果 — どれも偶然と区別できない上乗せ

勢いを測る期間を6通り、持つ期間を2通りにした12通りで、買い−売りは11通りが年1%以上のプラスだった。それでも、差が偶然かどうかを示すp値は、最も小さい「9か月・3か月」でも0.16で、0.05を下回った組み合わせは1つもない。

勢い持つ買い−売り(年率)ばらつき(年率)シャープ勝率p値買いだけのTOPIX超過(年率)
3か月1か月0.1%13.0%0.0144.0%0.97+0.2%
3か月3か月1.4%10.8%0.1349.7%0.62+0.6%
6か月1か月1.5%13.1%0.1252.6%0.65+0.9%
6か月3か月3.1%12.1%0.2654.3%0.33+1.7%
9か月1か月3.7%13.6%0.2753.1%0.30+2.4%
9か月3か月4.8%13.2%0.3753.7%0.16+3.2%
12か月1か月4.4%14.3%0.3057.1%0.25+3.0%
12か月3か月3.4%14.0%0.2454.9%0.36+2.0%
15か月1か月2.4%14.1%0.1752.6%0.51+1.5%
15か月3か月3.5%13.4%0.2655.4%0.32+1.4%
18か月1か月3.2%14.7%0.2252.9%0.41+0.7%
18か月3か月3.2%14.2%0.2355.2%0.39+1.4%

買い−売りは、買った7業種の値上がり率から売った7業種の値上がり率を引いた月ごとの差で、年率は月平均を12倍した。シャープはシャープレシオ(ばらつき1単位あたりの値上がり率)、勝率は買い−売りがプラスだった月の割合を表す。p値は月ごとの差の平均がゼロかどうかを調べる両側t検定の値で、0.05未満なら偶然とは考えにくいとされる。同じ期間のTOPIXは年11.6%だった。18か月の2行は、勢いの計算に必要な月数がそろう2011年10月・12月から始まる

勢いを測る期間と持つ期間ごとのシャープレシオ(元の計算と計算し直し)
図1: 12通りのシャープレシオ。左は3か月の成績を重ねたまま数えた計算(この記事の公開時の版)、右は重ならない月次で計算し直した結果(*はp値が0.05未満)

図1の右側で、3か月の勢いだけはほぼゼロで、6〜12か月で少し高くなる傾向はある。ただ、9か月・3か月の年4.8%でも、ばらつき(年13.2%)の中では偶然でも出うる大きさだ。持つ期間を3か月にすると成績が良くなるとも言い切れず、12か月の勢いでは1か月持つほうが高い。

業種のモメンタムは直近1か月の勢いが最も強いとする研究(Moskowitz and Grinblatt, 1999)もあるので、直近1か月を飛ばさない計算もした。それでも12通りのp値は、最も小さい9か月・3か月で0.14(年5.0%)にとどまった。1か月の勢いで選んで1か月持つ組み合わせも、年3.2%でp値は0.39だった。

4. 3か月の成績を重ねて数えたときに出る見かけの有意差

3か月持つ場合に、毎月末の時点で「ここから3か月持ったらどうなるか」を計算すると、隣り合う月の計算は3か月のうち2か月が同じ値動きになる。同じ値動きを最大3回ずつ数えることになるので、成績のばらつきが本当の6割ほどに小さく見え、t値とシャープレシオが大きく出る。図1の左側がこの計算で、6か月・3か月と9か月・3か月の2つに*が付いた。

数え方年率ばらつき(年率)シャープp値
6か月・3か月、重ねたまま4.8%7.2%0.670.013
6か月・3か月、重ならない月次3.1%12.1%0.260.33
9か月・3か月、重ねたまま4.5%7.6%0.590.030
9か月・3か月、重ならない月次4.8%13.2%0.370.16

「重ねたまま」は公開時の版の計算で、直近2か月を飛ばし、2011年8月から勢いを測るので始まりの月が遅い。「重ならない月次」は直近1か月を飛ばし、2011年9月からの175か月にそろえた。

年率の値上がり率はほとんど変わらないのに、ばらつきが7%台から12〜13%台に戻ると、p値は0.01〜0.03から0.16〜0.33に上がる。直近2か月を飛ばす計算のまま重ならない月次にしても、6か月・3か月は年4.4%、p値0.17で、有意にはならなかった。

5. 6か月の勢いで選び3か月持つ組み合わせの中身

6か月の勢いで選び3か月持つ組み合わせは、2011年8月末を1とすると、2026年3月末に買いの7業種が5.62倍、売りの7業種が3.48倍になった。同じ期間のTOPIXは4.54倍だ。買い−売りの差は1.42倍で、その途中では資産が最大29.7%減った時期がある。

6か月の勢いで選び3か月持つ組み合わせの累積リターン
図2: 上は買いの7業種(青)・売りの7業種(橙)・TOPIX(濃紺の破線)、下は買い−売りの差。いずれも2011年8月末を1とした倍率

図2の下段のとおり、差が広がったのは2019年の後半からだった。期間を半分に分けると、2011年9月〜2018年11月は年-2.0%、2018年12月〜2026年3月は年+8.2%(p値0.053)になる。前半の7年余りは、勢いの強い業種を買っても弱い業種を売っても報われなかった。

業種指数は2006年から手元にあるので、買い−売りの差だけを2006年11月まで延ばして計算した。延ばした分の58か月(2011年8月まで)は年-6.2%で、とくに2008〜2009年の2年間で累積28.7%のマイナスになった。そのため、233か月の全体では年0.8%まで下がる。

6. 年ごとの成績と相場の局面

6か月の勢いで選び3か月持つ組み合わせの年ごとの成績
図3: 上は年ごとの買い−売り、下は買い・売り・TOPIXの年間の値上がり率(6か月・3か月)。2011年は9〜12月、2026年は1〜3月だけ

買い−売りは、2020年(+15.6%)、2021年(+16.0%)、2024年(+16.2%)に大きくプラスになり、2012年(-12.1%)と2014年(-10.0%)に大きくマイナスになった。2020年は、買いに精密機器・医薬品・電気機器が多く入り、売りに空運業・鉄鋼・鉱業が多く入った。この年は鉱業が47%、空運業が40%下げており、売った側の値下がりが差を生んだ。2020年を除いて計算すると、年3.1%は年2.2%(p値0.49)に下がる。

2023年は-6.0%だった。この年に東証33業種で最も上がったのは鉄鋼(+51%)と海運業(+47%)で、戦略は鉄鋼を買っていた一方、勢いの弱かった海運業を売っていた。勢いの向きがすぐ入れ替わる業種では、6か月前の値動きで選んだ売りが外れやすい。

相場の上げ下げで分けた成績

TOPIXが上がった月と下がった月に分けて、買い−売りの月ごとの差を比べた。

TOPIXの月間の騰落月数買い−売り 平均買い−売り 中央値勝率p値
上がった月(0%以上)111+0.07%+0.39%55%0.83
下がった月64+0.58%+0.23%53%0.14

TOPIXが下がった月のほうが買い−売りの平均は高かったが、中央値はむしろ上がった月のほうが高く、どちらもp値は0.05に届かない。相場が下げる月に強いとまでは言えない。

7. 移動平均線のフィルタで変わらなかったTOPIXとの差

『151 Trading Strategies』の§4.1.1にならい、移動平均線のフィルタを試した。勢いの上位でも、月末に指数が移動平均線(過去100日または200日の終値の平均)を下回っている業種は買わない。売りは使わず、買いだけの組み合わせ(6か月・3か月)で比べている。

フィルタ年率ばらつきシャープ最大の下げTOPIX超過平均の業種数
なし13.3%16.9%0.79-29.6%+1.7%7.0
100日線の上だけ12.7%15.7%0.81-30.2%+1.3%6.3
200日線の上だけ13.3%16.0%0.84-25.3%+1.5%6.4

TOPIX超過=買いの組み合わせの値上がり率 − 同じ月のTOPIXの値上がり率(年率)。同じ期間のTOPIXは年11.6%。フィルタを通る業種が7つに満たない月は、通った業種だけで組んだ。

移動平均線のフィルタの有無で比べた買いの組み合わせの累積リターン
図4: 上は買いの組み合わせとTOPIXの累積(2011年8月末を1とした倍率)、下は直近12か月のTOPIXとの差(年率)

フィルタを入れると、ばらつきが少し小さくなり、200日線では最大の下げも浅くなった。ただ、TOPIXに対する上乗せは年1.7%から1.3〜1.5%に減っていて、どれもp値は0.4〜0.5で偶然の範囲だ。下げの局面で買う業種が減るぶん損が浅くなる代わりに、戻りの局面で出遅れる。

8. 買いと売りに選ばれやすい業種

6か月の勢いで選んだ175回の月末の判定で、業種ごとに買いと売りに選ばれた回数を数えた。

業種ごとの買いと売りに選ばれた割合
図5: 業種ごとに、買い(青)と売り(橙)に選ばれた割合。上ほど買いに選ばれた回数から売りに選ばれた回数を引いた値が大きい

買いの回数から売りの回数を引いた値が大きかったのは、建設業・電気機器・保険業・小売業・機械で、建設業は買い44回に対して売りは10回だった。売りのほうが多かったのは鉄鋼・空運業・電気・ガス業・パルプ・紙・海運業・REITで、鉄鋼は買い31回・売り64回、空運業は買い30回・売り63回だった。

海運業と鉱業は、買いにも売りにも多く選ばれている(海運業は買い50回・売り70回、鉱業は買い53回・売り67回)。値動きが大きく、勢いの向きがよく入れ替わる業種で、2023年の海運業のように、売った直後に大きく上がる外れが出やすい。

9. まとめ

検証結果のまとめ

  • 東証33業種のセクター・モメンタムは、平均すればわずかなプラスでも、偶然と区別できる上乗せではなかった。勢いを測る期間と持つ期間の12通りのどれも、p値は0.05に届かない
  • 成績は時期で大きく違う。2019年後半から差が広がった一方、前半の7年余りと2008〜2009年はマイナスで、2020年の1年を除くだけで年率は2%台に下がる
  • 3か月の成績を重ねたまま数えると、有意に見えやすい。持つ期間が1か月より長い戦略の成績は、重ならない月次で確かめる必要がある

日本株では個別銘柄のモメンタムがほとんど働かないことが知られていて(1981〜2010年の大型株でシャープレシオ0.03、Asness, 2011)、業種単位で見ても強い傾向は確かめられなかった。個人的には、この結果から業種の勢いだけで売買を決めることはしない。ただ、2018年12月からの後半の7年余りは年8%余りのプラスで、同じ傾向が公開後も続くかには関心がある。公開から1年たつ2027年4月に、2026年4月以降の1年分を足して、後半の期間の差が残っているかを確かめる。

10. Appendix — 使用した業種指数一覧

この検証で使った東証33業種の業種別株価指数とREIT指数、計34分類の一覧を以下に掲載する。

№業種№業種
1水産・農林業18精密機器
2鉱業19その他製品
3建設業20電気・ガス業
4食料品21陸運業
5繊維製品22海運業
6パルプ・紙23空運業
7化学24倉庫・運輸関連業
8医薬品25情報・通信業
9石油・石炭製品26卸売業
10ゴム製品27小売業
11ガラス・土石製品28銀行業
12鉄鋼29証券・商品先物取引業
13非鉄金属30保険業
14金属製品31その他金融業
15機械32不動産業
16電気機器33サービス業
17輸送用機器34REIT(東証REIT指数)

※本記事は公開情報に基づく情報整理であり、個人の見解を含みます。特定の銘柄の売買や投資を推奨するものではありません。投資判断はご自身の責任においてお願いいたします。

POPULAR ARTICLES