はじめに
#記事の内容を300秒動画にまとめました:https://youtu.be/OM2e7PVft28
機械学習で株式のロングショート戦略を作ろうとすると、多くの人がまず予測モデルの精度を上げることに集中します。特徴量を増やし、モデルを入れ替え、予測誤差を少しでも小さくする。戦略として使えるかどうかは、そのあとで考える。私自身も、最初はこの順番で取り組んでいました。
ところが、金融の機械学習の研究を読み込むと、この順番そのものに落とし穴があることがわかります。
米国株で機械学習の手法を同じ条件で比べた代表的な研究では、3層ニューラルネットの月次の予測精度(R²)はわずか 0.40% でした。それでも、予測値で銘柄を10グループに分け、上位を買って下位を売るロングショートを組むと、等ウェイトでの年率シャープレシオは 2.36 に達します。
ところが、同じポートフォリオを時価総額加重にすると、シャープレシオは 1.20 に半減します。しかも、ポートフォリオは毎月ほぼ丸ごと入れ替わっています【実証あり:比較研究】。
「当たらないのに儲かる」と「儲かるのに、手元に残らない」が、同時に起きているのです。ここで言う「手元に残らない」は、売買そのものができないという意味ではありません。売買はできても、取引コストや自分の注文による値動きを払うと、利益が残らないという意味です。
この記事では、この現象を手がかりに、横断面ロングショートの機械学習モデルをどう設計すべきかを考えます。結論を先に書きます。
中心メッセージ
金融の機械学習の設計は、二つの層でできている。一つは、少ないデータとノイズを前提に、モデルを縛ること(偶然に合わせ込む余地を減らすこと)。もう一つは、最初から手元に残る損益を問いとして与えること。
この記事でいちばん伝えたいのは、二つ目の層です。
良い予測モデルは、良い戦略の必要条件ではあるが、十分条件ではない。足りない部分を埋めるのはモデルではなく、モデルに与える「問い」の設計である。
材料にした研究
-
比較研究:機械学習による株価予測を、同じデータ・同じ条件で比べた代表的な研究
Gu, S., Kelly, B., & Xiu, D. (2020). "Empirical Asset Pricing via Machine Learning." Review of Financial Studies, 33(5), 2223–2273. -
総説:金融における機械学習の研究をまとめたもの
Kelly, B., & Xiu, D. (2023). "Financial Machine Learning." Foundations and Trends in Finance, 13(3–4), 205–363.
本文では、それぞれ「比較研究」「総説」と呼びます。どちらも同じ研究者グループ(Kelly と Xiu は両方の著者)によるものです。その他の研究は「著者名 発表年」(3人以上は「筆頭著者 et al.」)で示し、末尾の参考文献にまとめました。
この記事の読み方
根拠の強さが違うものを同じ重みで並べないように、【種類:出典】の形のラベルで書き分けます。
| ラベル | 意味 |
|---|---|
| 【論文の主張:出典】 | 出典の著者が明言していること |
| 【実証あり:出典】 | 出典にデータでの比較結果があること |
| 【論文の設計:出典】 | 出典の研究がそう設計したこと(効果を個別に検証したわけではない) |
| 【論争中:出典】 | 研究者の間で意見が分かれていること(主張と批判の両方の出典を示す) |
| 【筆者の解釈】 | 論文を踏まえた私の読み方(出典なし) |
なお、この記事で扱うのは「予測」と「予測を損益に変える部分」の設計です。リスク管理や、暴落時のような裾のリスクは対象外とします。
第0章 なぜ金融では設計が変わるのか
総説は、金融データには機械学習にとって不利な3つの制約があると指摘しています【論文の主張:総説】。
- データが少ない:市場全体の月次データは数百点しかありません。総説は「数回試すと、アウトオブサンプルの結果を本当にアウトオブサンプルとは言えなくなる」とまで書いています。
- ノイズが大きい:予測できるパターンがあれば、利益を求める参加者がそれを取りに行きます。そのため、予測可能性はもともと小さくなります。
- 市場が変わる:有効だったパターンは裁定で消え、規制や技術の変化も市場の構造を変えます。
データが大量にあって性質が安定している画像認識などの分野とは、前提がまったく違います。そのため、一般的な機械学習の「常識」は、金融ではそのまま通用しません。
この違いは、二つの層に整理できると考えています。
| 層 | やること | 役割 | ないとどうなるか |
|---|---|---|---|
| 一つ目:縛る | 偶然に合わせ込む余地を減らし、何度も繰り返し現れる傾向だけを学ばせる | 偶然の値動きに振り回されない、信頼できる予測にする | 偶然の値動きまで覚えた(過学習した)予測で、戦略を組んでしまう |
| 二つ目:問う | 予測誤差ではなく、手元に残る損益を目的として与える | 予測を戦略に変える | 正しく予測しても、儲けがコストに消える |
一つ目の層だけでは「良い予測モデル」にしかならず、二つ目の層があって初めて「戦略」になります。
第1部 一つ目の層:モデルを縛る(偶然に合わせ込む余地を減らす)
金融のデータでは、リターンの大半が偶然の値動きです。データに合わせて自在に形を変えられるモデルほど、この偶然まで「パターン」として覚え込んでしまい、将来のデータでは外れます。そこで、モデルが偶然に合わせ込む余地をわざと減らし、何度も繰り返し現れる傾向だけを学ばせます。この記事で「縛る」と呼んでいるのは、この偶然に合わせ込む余地を減らすことです。
以下の5つは、どれもこの余地を減らす操作です。多くはモデルの余地を減らしますが、検証(1-3)と結果の読み方(1-5)は、分析者である自分自身が偶然に合わせ込む余地を減らします。
ただし、余地を減らしすぎると本物のパターンまで見逃すので、どこまで減らすかは検証データで決めます。
1-1. データの使い方で縛る
比較研究は、約3万銘柄・1957〜2016年の月次データを使い、銘柄ごとにモデルを作るのではなく、全銘柄に共通する一つの予測モデルを学習させています【論文の設計:比較研究】。
なぜこれが「縛り」になるのかを、例で説明します。「先月大きく下がった株は、今月は少し戻りやすい」というルール(短期リバーサル)が本当にあるかを確かめたいとします。
- 1銘柄だけで調べる場合:たとえばトヨタ1銘柄の60年分のデータでは、「先月大きく下がった」月はせいぜい数十回です。たまたまなのか本当の傾向なのか、判断できません。
- 全銘柄をまとめて調べる場合:毎月6,000銘柄ほどの中に「先月大きく下がった銘柄」が数百あるので、60年分を集めれば事例は数十万になります。
全銘柄をまとめられるのは、モデルが見ているのが「トヨタかソニーか」という会社名ではなく、「先月どれだけ下がったか」「会社の大きさ」といった銘柄の特徴だからです。どの銘柄のデータも、同じ問いへの事例として使えます。
事例が増えると、偶然に振り回されにくくなります。コインを10回投げて7回表が出ても、たまたまかもしれません。しかし1万回投げて7,000回表なら、そのコインは偏っていると言えます。総説も、全銘柄の情報を使えることで推定が安定すると述べています【論文の主張:総説】。その代わり、「トヨタだけに当てはまるルール」は学べなくなります。つまり、1銘柄の偶然に合わせ込む余地がなくなります。これが、この設計が「縛り」である理由です。
ただし、注意点が2つあります。
- 件数ほどには、情報は増えない:同じ月の株は一緒に動きやすく、相場全体が暴落した月は、ほとんどの銘柄が下がります。そのため「相場全体が上がるか下がるか」の予測には、銘柄をいくらまとめても60年分(720か月)の情報しかありません。まとめる効果が大きいのは、「どの銘柄が他より良いか」という比較の予測です。相場全体の動きを打ち消して銘柄どうしの差を取るロングショートは、この効果が最も活きる使い方だと考えています【筆者の解釈】。
- 「どの銘柄にも同じルールが当てはまる」という前提がある:総説自身も、この前提を「野心的」だと認めています【論文の主張:総説】。比較研究は「会社の大きさ」などの特徴も入力に入れ、小型株と大型株で効き方が違う、といった差までモデルが学べるようにしています【論文の設計:比較研究】。
1-2. 入力を縛る
まず、モデルに何を入力しているか
比較研究がモデルに入力している特徴量は、次の3種類を組み合わせた920個です【論文の設計:比較研究】。
| 種類 | 中身 | 例 | 数 |
|---|---|---|---|
| 銘柄特性 | 銘柄ごとに違う数値 | 時価総額、過去のリターン、出来高、簿価時価比率(PBRの逆数)など | 94個 |
| マクロ変数 | その月の市場全体の状態を表す数値(全銘柄で共通) | 市場全体の配当利回り、短期金利、長短金利差、信用スプレッド、株式市場の変動の大きさなど | 8個 |
| 業種 | その銘柄がどの業種に属するか | 業種ごとに「該当すれば1、しなければ0」 | 74個 |
ポイントは、銘柄特性とマクロ変数を掛け合わせていることです。たとえば「先月の値下がり幅」と「株式市場の変動の大きさ」を掛け算した値を、一つの特徴量として加えます。こうすると、「下がった株が戻りやすいかどうかは、相場が荒れている時期と落ち着いている時期で違う」といった関係も、モデルが学べるようになります(この例は仕組みの説明用で、比較研究がこの関係を報告しているわけではありません)。
内訳は、元の銘柄特性94個 + 銘柄特性×マクロ変数752個(94×8)+ 業種74個 = 920個です。
前処理で、偶然に合わせ込む余地を減らす
特徴量を増やすこと自体は、モデルが偶然に合わせ込む余地を広げる方向です。その分、比較研究は次の前処理で、その余地を減らしています【論文の設計:比較研究】。
- 順位に置き換える:毎月、各銘柄特性を、その月の全銘柄の中での順位に置き換え、−1〜1にそろえます(時価総額なら、最も小さい銘柄が−1、最も大きい銘柄が1)。極端な値の銘柄も「最上位」として扱われるだけなので、外れ値に振り回されません。時代によって数値の水準が変わっても、同じ物差しで比べられます。
- 欠けている値は真ん中の値で埋める:値がない銘柄は、その月の全銘柄の中央値で埋めます。
- 公表の遅れを入れる:決算などのデータは、実際に公表されて使えるようになる時期まで遅らせて使います(月次データは1か月、四半期データは4か月、年次データは6か月)。当時はまだ知り得なかった情報を使ってしまう「先読み」を防ぐためです。
ただし、比較研究がこれらの効果を一つずつ検証したわけではありません【筆者の解釈】。
1-3. 検証で縛る
比較研究は、データを時系列順に、訓練18年(毎年1年ずつ拡大)、検証12年(常に直近12年に移動)、テスト30年(推定にもモデル選択にも使わない)に分けています。再推定は年1回で、ランダムな交差検証は使っていません【論文の設計:比較研究】。
総説はさらに、系列相関がある場合は訓練と検証の間に空白期間(エンバーゴ)を置くこと、構造変化が疑われる場合は固定長のローリング・ウィンドウを使うことを挙げています【論文の主張:総説】。検証の設計は、以前の記事(Walk-Forward最適化、バックテスト過学習とPBO)で詳しく扱ったので、ここでは深入りしません。
1-4. モデルそのものを縛る
まず、予測精度(R²)の読み方を確認しておきます。
比較研究のR²は、「常にゼロと予測する」場合を比較相手にしています。「常にゼロと予測する」とは、すべての銘柄について、毎月「来月のリターンは0%」と予測し続けることです。 正確には、ここでのリターンは無リスク金利を上回る分(超過リターン)です。銘柄の情報を何も使わない、いちばん手抜きの予測です。
R²は、モデルの予測の外れ具合が、この手抜きの予測と比べてどれだけ小さいかを表します。ある銘柄の3か月分で計算してみます(数字は説明用です)。
| 月 | 実際のリターン | ゼロ予測の外れ | モデルAの予測 | Aの外れ | モデルBの予測 | Bの外れ |
|---|---|---|---|---|---|---|
| 1 | +5% | 5 | +1% | 4 | −4% | 9 |
| 2 | −3% | 3 | −1% | 2 | +3% | 6 |
| 3 | +2% | 2 | +1% | 1 | −2% | 4 |
| 外れの2乗の合計 | 38 | 21 | 133 |
- モデルA:外れがゼロ予測より小さいので、R² = 1 − 21/38 ≒ +45%
- モデルB:外れがゼロ予測より大きいので、R² = 1 − 133/38 ≒ −250%
R²がプラスなら「来月は0%」と言い続けるより良く、マイナスならその手抜きの予測にすら負けている、という意味です。
これを踏まえて、比較研究の中心的な結果を見てみます。
表 手法別の月次の予測精度(アウトオブサンプルR²)(出典:比較研究)
| 手法 | 月次R² |
|---|---|
| 全変数OLS(正則化なし) | −3.46% |
| 3変数OLS(サイズ・バリュー・モメンタム) | 0.16% |
| Elastic Net | 0.11% |
| ランダムフォレスト | 0.33% |
| 勾配ブースティング | 0.34% |
| 3層ニューラルネット | 0.40% |
この表から読み取れることは三つあります。
- 縛らないと破綻する:920個の特徴量をそのままOLSで推定すると、R²は−3.46%です。「来月は0%」と言い続けるほうが、外れが小さかったということです。モデルが偶然の値動きまで覚えて予測が大きく振れ、上の例のモデルBのようになっています。総説は、これは予測変数の情報が弱いからではなく、大量のパラメータを推定するコストのせいだと述べています【論文の主張:総説】。
- 縛り方は正則化だけではない:3変数OLSがElastic Netを上回っています。変数を3つに絞ること自体が、強い縛りになっているからだと考えています【筆者の解釈】。
- 最も良いのは木系モデルとニューラルネット:その理由は2-5で扱います。
ここから実務上の教訓も引き出せます。複雑なモデルを作ったら、その成績を必ず単純な線形モデル(たとえば3変数OLS)の成績と比べることです。単純なモデルに勝てないなら、複雑にする意味はありません。勝った場合も、その差の大きさで、複雑さに見合う価値があるかを判断できます【筆者の解釈】。
最も良かったニューラルネットも、何重にも縛られています【論文の設計:比較研究】。
- 32-16-8 の小さなピラミッド型(3層の場合)
- 重みへのL1ペナルティ、早期終了、バッチ正規化
- 初期値を変えて学習した10個のモデルの平均(アンサンブル)
線形モデルや勾配ブースティングには外れ値に強いHuber損失を使い、木系モデルも深さ1〜6程度の浅い木です【論文の設計:比較研究】。
さらに、ニューラルネットの成績は3層でピークを迎え、4層・5層にしても伸びませんでした【実証あり:比較研究(1つのデータセットでの結果)】。比較研究は「浅い学習が深い学習に勝つ」という見出しを立て、その理由としてサンプルの小ささとノイズの大きさを挙げています。
一方で、正則化を十分にかければ「モデルは大きいほど良い」という主張もあり、これには「成果の実態はモメンタムの再現にすぎない」という強い批判と、それへの反論が出ています【論争中:Kelly et al. 2024、批判 Nagel 2025、反論 Kelly & Malamud 2025】。ただ、どちらの立場も適切な正則化を前提にしている点は共通です。鍵は「どれだけ大きくするか」より「どれだけ強く縛るか」にあると考えています【筆者の解釈】。
1-5. 結果の読み方を縛る(分析者自身が合わせ込む余地を減らす)
1-1から1-4で減らしてきたのは、主にモデルが偶然に合わせ込む余地でした。最後に減らすのは、分析者である自分自身の余地、つまりバックテストの好成績を都合よく解釈する余地です。どれだけモデルを縛っても、結果を楽観的に読んでしまえば、信頼できる予測にはなりません。具体的には、次の3つの読み方を自分に禁じます。
① 高いシャープレシオを、そのまま実力と読まない
ある研究は、銘柄特性をリスク要因とみなして取り除いた「純粋なアルファ」について、理論上のシャープレシオは2.5を超えるのに対し、機械学習で実際に実現できたのは約0.5(コスト控除前)だったと推計しています【実証あり:Da et al. 2022】。限られたデータから学習する以上、理論上の機会のごく一部しか取れないのです。自分のバックテストで高すぎるシャープレシオが出たら、喜ぶ前にまず過学習を疑うべきだと考えています【筆者の解釈】。
② 既知の特性で説明できるリターンを「アルファ」と読まない
この約0.5は、冒頭の2.36と食い違って見えます。違いは、何をアルファと数えるかです。冒頭の2.36には、時価総額やモメンタムといった既知の銘柄特性から来るリターンも含まれ、約0.5はそれらを差し引いた残りです。総説自身も「ある人のアルファは、別の人のベータ」と書いています【論文の主張:総説】。自分のモデルの成果も、既知の特性で説明できる分を差し引いて評価し、差し引く前の数字で「アルファがある」と言わないことです【筆者の解釈】。
③ 見つけたシグナルを、すぐに「新しい」と読まない
別の研究では、これまでに提案されてきた120を超えるファクター候補のうち、既存のファクターに加えて使う価値があると判定されたのは17個でした【実証あり:Feng et al. 2020】。自分が見つけたシグナルも、多くは既存のファクターの言い換えか、ただのノイズだと考え、既存のファクターで説明できないかを確かめるのが安全です【筆者の解釈】。
第2部 二つ目の層:手元に残る損益を問いとして与える
第1部の縛りで得られるのは、信頼できる予測モデルです。しかし、それだけではまだ戦略になりません。ここからが、この記事の中核です。
2-1. 予測精度と損益は別物
冒頭で見たとおり、月次R²が0.40%しかなくても、等ウェイトのロングショートのシャープレシオは2を超えます【実証あり:比較研究】。
R²の比較相手にも注意が必要です。比較相手を「常にゼロと予測する」(1-4参照)から「各銘柄の過去の平均リターンを来月も予測する」に変えると、全手法のR²が約3ポイント高く出てしまいます【実証あり:比較研究】。個別株の過去の平均リターンは、それ自体がひどい予測だからです。たとえば、過去にたまたま急騰した銘柄について「来月も大きく上がる」と予測してしまいます。比較相手が弱いと、どんなモデルでも勝ちやすくなります【筆者の解釈】。
総説は、R²は予測の経済的な価値を測る指標として信頼できないとし、シャープレシオなどの経済的な指標で評価すべきだとしています【論文の主張:総説】。
ここまでは、「予測精度が低くても価値はある」という前向きな話です。問題は、その価値がどこから来ているかです。
2-2. 予測誤差を最小化させると、実際には儲からないパターンが見つかる
事実
(シャープレシオの出典:3層ニューラルネットは比較研究、チャート画像を読むCNNはJiang et al. 2023。左の図は概念図です)
3層ニューラルネット(月次)は2.36から1.20へ、チャート画像を読むCNN(週次)は7.2から1.7へと、どちらも時価総額加重にすると成績が大きく下がります。等ウェイトでは、取引しにくい小型株の比重が大きくなるからです【実証あり:比較研究、Jiang et al. 2023】。ほかにも、取引しにくさを示す材料があります【実証あり:比較研究】。
- 機械学習ポートフォリオの月次回転率は、およそ110〜150%(3変数OLSは約58%)1
- サンプルからは、5ドル未満の低位株も除かれていない1
- 重要なシグナルが、価格トレンド、流動性、ボラティリティに偏っている(2-5参照)
なぜ起きるか
総説は、この現象を次のように説明しています(5.6節の意訳)【論文の主張:総説】。
市場がそのパターンに気づいていないのではない。取引コストが高すぎるから、パターンが残っているのだ。コストの情報を与えられていない統計モデルは、コストを払っても儲けが残るパターンと、残らないパターンを区別できない。
モデルは、与えられた問いに忠実に答えます。「予測誤差を最小化せよ」と問えば、最も予測しやすいパターンを探しに行きます。そして、競争の激しい市場で最も予測しやすいまま残っているのは、取引コストが高いから誰も取りに行かないパターンです。つまり、モデルの性能が高いほど、コストを払うと儲けが残らない答えを見つけやすいのです。
反証も見ておく
この点を最も厳しく検証した研究によると、深層学習のシグナルの利益は、取引しにくい銘柄と時期から来ていました。マイクロキャップ、財務的に苦しい企業、ボラティリティの高い時期を除くと利益は大きく減り、妥当な取引コストを入れるとさらに悪化しました。一方で、ロング側ではシグナルは有効で、下方リスクは小さく、直近の期間でも機能していました【実証あり:Avramov et al. 2023】。
また、比較研究でもR²は大型株(時価総額上位1,000銘柄)で0.70%と、全体より高くなっています【実証あり:比較研究】。コストの小さい領域にも、予測力はあるのです。
したがって、「機械学習は役に立たない」と読むのではなく、「何も指定しなければ、モデルはコストの高い場所へ引き寄せられる」と読むのが妥当だと考えています【筆者の解釈】。
問題はモデルの性能ではなく、問いの立て方にある【筆者の解釈】。
すぐにできる対策
問いを変える前に、評価の仕方を変えるだけでも多くの問題が見えてきます【筆者の解釈】。
- 学習の前に流動性で銘柄を絞り、コストが高すぎる銘柄からは学ばせない
- 等ウェイトだけでなく、時価総額加重・大型株のみ・コスト控除後の成績を必ず並べる
- ロング側とショート側の寄与を分けて見る(ショート側は空売りの制約や貸株コストの影響も受ける)
2-3. 「予測してから最適化」をやめる
ここでは、問いそのものを「予測誤差を最小化せよ」から「ポートフォリオの成績を最大化せよ」に変える方法を紹介します。
最終的に決めるのは「保有ウェイト」
ロングショート戦略で最終的に決めるのは、各銘柄をどれだけ買い、どれだけ売るか(保有ウェイト)です。この節でいう「最適化」とは、ポートフォリオの成績が最も良くなるように、この保有ウェイトを決めることです。決め方には2通りあります。
| 予測してから最適化(2段階) | 損益を直接最適化(1段階) | |
|---|---|---|
| 手順 | ①各銘柄の来月のリターンを予測する ②その予測を使って保有ウェイトを決める |
銘柄の特徴から、保有ウェイトを直接決める |
| 学習で最も良くする対象 | ①では予測の外れ(予測誤差)を最小にする ②では予測を正しいものとみなして、リターンとリスクのバランスを最良にする |
ポートフォリオの成績(シャープレシオなど)を最大にする |
| 予測の誤差の扱い | ②では無視される | 成績に影響する誤差だけが問題になる |
「予測してから最適化」の弱点
2段階の方法では、②で「平均分散最適化」を使うのが一般的です。予測したリターンと銘柄どうしの値動きの連動(共分散)から、「リターンはできるだけ大きく、リスク(リターンのぶれ)はできるだけ小さく」なるように保有ウェイトを決めます。
問題は、②が①の予測を「正しい値」として扱うことです。最適化は予測リターンが高い銘柄に資金を集めますが、予測には必ず誤差があるので、たまたま高く予測された銘柄ほど大きく買ってしまいます。つまり、予測の誤差が最適化によって増幅されます【筆者の解釈】。
実際、この方法は、株への投資額を少し減らして現金側に寄せる、リスクが最小になる組み合わせと混ぜる、といった単純な修正にすら負けることが証明されています。しかも、真の値が何であっても負けます【論文の主張:Kan & Zhou 2007】。総説は、予測と最適化を切り離さず、一体として考えるべきだとしています【論文の主張:総説】。
損益を直接最適化する方法
代表的な方法が2つあります【論文の主張:総説】。
- MSRR(最大シャープレシオ回帰):ポートフォリオのリターンが毎月できるだけ「1」という一定の値に近くなるように、保有ウェイトを回帰で求めます(原典は Britten-Jones 1999)。毎月ぶれずに安定してプラスのリターンを出すポートフォリオは、シャープレシオが高いポートフォリオです。そのため、こうして求めたウェイトが、シャープレシオ最大の組み合わせ(に比例するもの)になります。リッジ回帰を使えば、偶然に合わせ込む余地を減らすこともできます。
- パラメトリック・ポートフォリオ:「時価総額が小さいほど少し多めに持つ」「モメンタムが高いほど多めに持つ」といった、銘柄の特徴から保有ウェイトを決めるルールを作り、そのルールの強さを、ポートフォリオの成績が最も良くなるように決めます(原典は Brandt et al. 2009)。このルールをニューラルネットにした研究では、線形のルールに比べてシャープレシオが1.8から2.5に改善しました【実証あり:Simon et al. 2022】。
さらに、実務上の制約は、成績から差し引く「減点」として問いに組み込めます【論文の主張:総説】。
- レバレッジの制限:買いと売りの総額が大きくなるほど減点する(L1ペナルティ)
- 取引コスト:売買量の2乗に比例して減点し、大きな売買ほど急に減点が増えるようにする(L2ペナルティ)
こうすると、モデルへの問いは「コストと制約を差し引いたうえで、ポートフォリオの成績を最大化せよ」になります。
2-4. コストを問いに入れる
取引コストがあるときの最適な売買は、毎回ポートフォリオを全面的に入れ替えることではなく、目標とするポートフォリオへ少しずつ寄せていく形になります。そのため、効果が長く続くシグナルほど、コストを何期にもわたって回収できるので有利です。逆に、効果がすぐ消えるシグナルは、頻繁な売買でコストに食いつぶされます【論文の主張:Gârleanu & Pedersen 2013】。
ある研究は、この「目標ポートフォリオ」そのものを機械学習で直接学習しました。その結果、「まずコストを無視して学習し、後から売買を平滑化する」という二段階の方法を、コスト控除後の成績で上回りました【実証あり:Jensen et al. 2022】。
なお、強化学習が本当に必要になるのは、自分の売買が価格を動かす規模になってからです。価格に影響を与えない規模なら、教師あり学習で足ります【論文の主張:総説】。
2-3と2-4の実証は、少数の研究(一部はワーキングペーパー)に基づいています。第1部の内容に比べると、証拠はまだ薄い段階です。
2-5. ブラックボックスのモデルが何に答えたかを、外から確かめる
問いを変えても、モデルが本当にその問いに答えたかどうかは別問題です。最後に、それを確かめる方法を考えます。
木系モデルやニューラルネットは、基本的にブラックボックスです。数万個の重みや何百本もの木の分岐を眺めても、モデルが何をしているかは分かりません。そこで、中身を読もうとするのではなく、モデルを箱のまま扱い、外から確かめます。次の5つの問いで確かめることを提案します【筆者の解釈】。
①と②は入力側から、③と④は出力側から、⑤は全体を言い直して確かめる方法です。
① 何を見ているか:変数の重要度
特徴量を一つ選び、その値を全銘柄でゼロ(順位化した入力では、その月の真ん中の値)に置き換えて予測し直します。予測精度が大きく落ちれば、モデルはその特徴量に強く頼っています【論文の設計:比較研究】。
比較研究では、どの手法でも上位に来る特徴量はほぼ同じで、価格トレンド(短期リバーサル、12か月モメンタムなど)、流動性(回転率、時価総額、売買代金など)、ボラティリティ(リターンのばらつき、ベータなど)でした。バリュー(割安さ)や財務の指標は上位ではありませんでした【実証あり:比較研究】。
上位に流動性や短期の値動きが並んだら、2-2で見た「手元に残りにくいパターン」に頼っているサインかもしれません【筆者の解釈】。
② どう効かせているか:効き方の形
他の特徴量をすべて真ん中の値に固定し、1〜2個の特徴量だけを動かして、予測がどう変わるかをグラフにします【論文の設計:比較研究】。
比較研究では、短期リバーサルは小型株では直線的に効く一方、超大型株では、過去のリターンが大きくプラスのときに目立つ曲線的な効き方をしていました。木系モデルとニューラルネットが線形モデルより優れていたのは、こうした変数間の相互作用を捉えたためです【実証あり:比較研究】。
見るべき点は、効き方の形を経済的な理屈で説明できるかどうかです。説明のつかない複雑な形は、偶然を覚えた結果かもしれません【筆者の解釈】。
③ 何を持っているか:保有銘柄の特徴
毎月、モデルが買う側(ロング)と売る側(ショート)に選んだ銘柄について、時価総額、先月のリターン、出来高、株価水準などの平均を比べます。論文にはない、筆者の提案です。
ロング側やショート側が小型株、出来高の少ない銘柄、低位株に偏っていれば、手元に残らないパターンを答えにしている可能性が高いと言えます。モデルの中身にまったく触れずにできる、最も手軽な確認で、2-2の問題を最も早く見つけられる方法だと考えています【筆者の解釈】。
④ 何で儲けているか:リターンの要因分解
戦略の月次リターンを、既知のファクター(市場、サイズ、バリュー、モメンタム、短期リバーサルなど)のリターンで回帰します。ここから3つのことが分かります。
- どのファクターにどれだけ乗っていたか:たとえばモメンタムへの感応度が大きければ、モデルは主にモメンタムを再現していたことになる
- 既知のファクターでどれだけ説明できたか:回帰のR²
- 説明しきれずに残った部分:アルファ。これが、モデルが新たに付け加えた価値
以前の記事(勝っている戦略に、本物のアルファはいくらあるのか?)で扱ったリターンの分解と、同じ考え方です。複雑なモデルの好成績は実際にはボラティリティで調整したモメンタムを再現しているだけだ、という批判も、まさにこの問いです【論争中:批判 Nagel 2025、反論 Kelly & Malamud 2025】。
注意すべきは、回帰に入れるファクターの選び方です。比較研究のアルファは、市場・サイズ・バリュー・収益性・投資・モメンタムの6ファクターに対するもので、短期リバーサルや流動性のファクターは含まれていません【論文の設計:比較研究】。①でモデルが頼っていた特徴量に対応するファクターは、回帰に必ず入れるべきだと考えています【筆者の解釈】。
⑤ 単純に言い直すと何か:単純なルールとの比較
モデルの予測を、単純なルールや線形モデルで近似できるか試します。あるいは、単純なルールでポートフォリオを作り、モデルのポートフォリオとリターンの動きを比べます。
たとえばチャート画像を読むCNNの予測の一部は、「直近数日の高値・安値の幅の、下端近くで引けた銘柄は翌週上がりやすい」という単純なルールで近似できました【実証あり:Jiang et al. 2023】。単純なルールでほとんど再現できるなら、複雑なモデルを使う対価は得られていません。逆に、再現できずに残った部分こそが、モデルが新たに見つけたものです【筆者の解釈】。
外からの確認の限界
外から確かめても、箱の中身が完全に分かるわけではありません【筆者の解釈】。
- 似た特徴量があると見誤る:時価総額と出来高のように似た特徴量があると、片方を消しても、もう片方が代わりを務めるので予測精度はあまり落ちません。その結果、重要な情報を「重要でない」と判断してしまうことがあります。
- 確かめられるのは過去の答え方だけ:最良のモデルは時期によって入れ替わるので、再学習すれば答え方も変わり得ます。
だから、1つの方法に頼らず複数の角度から確かめ、再学習のたびに繰り返す必要があります。モデルは与えた問いに忠実に答えますが、その答えの中身は自分で確かめるしかありません。ブラックボックスを外から確かめる作業は、予測モデルを戦略として使うための最後の関門だと考えています【筆者の解釈】。
第3部 自分のロングショート設計に当てはめる
論文の比較は、研究上の評価の道具として作られています(予測値で10分位に分けた、等ウェイトのロングショート)。実際に運用するロングショートを設計しようとすると、論文が答えていない判断がたくさん出てきます。
| 設計項目 | 論文の答え | 実務で決めるべきこと |
|---|---|---|
| 投資対象 | 比較研究は低位株を含む全銘柄 | 学習の前に、どの流動性基準で絞るか |
| 前処理 | 順位に置き換え、中央値で補完、公表の遅れを入れる | 自分のデータで、公表のタイミングをどう再現するか |
| 検証 | 時系列順、年1回の再推定 | 再推定の頻度、ウィンドウの長さ、エンバーゴの長さ |
| モデル | 単純な線形モデルと成績を比べたうえで、浅い木/ニューラルネットとアンサンブルを使う | どこまで複雑にするか、単純な線形モデルと比べてどれだけ改善したかをどう測るか |
| 目的 | 比較研究は予測誤差。総説は損益を直接目的に | 予測誤差に回転率ペナルティを加えるか、ウェイトを直接学習するか |
| ポートフォリオ構築 | 10分位で等ウェイト | 銘柄数、ウェイトの付け方(等ウェイト/シグナル比例/最適化) |
| 取引コスト | 目標への部分調整、長く効くシグナルの優先 | コストの見積もり方、リバランスの頻度 |
| 中立化 | 扱っていない | 業種・ベータ・サイズを、どこまで中立化するか |
| ショート | 扱っていない | 空売りできる銘柄の制約、貸株コスト |
具体的な点検項目は、末尾の設計チェックリストにまとめました。私自身の設計でも、このチェックリストで点検していきたいと考えています。
ただし、設計の候補を何十通りも試して、テスト期間で一番良かったものを選べば、それ自体が過学習になります。設計の比較は多重検定だと自覚し、DSR(デフレーテッド・シャープレシオ)やPBO(バックテスト過学習の確率)で評価すべきだと考えています。
まとめ
金融の機械学習の設計は、二つの層でできている。一つは、少ないデータとノイズを前提に、モデルを縛ること(偶然に合わせ込む余地を減らすこと)。もう一つは、最初から手元に残る損益を問いとして与えること。
一つ目の層は、データの使い方、入力、検証、モデル、結果の読み方の各段階で偶然に合わせ込む余地を減らし、予測を信頼できるものにします。二つ目の層は、評価を経済的な指標に変え、損益とコストを目的に組み込み、モデルが何に答えたのかを外から確かめて、予測を戦略に変えます。
良い予測モデルは、良い戦略の必要条件ではあるが、十分条件ではない。足りない部分を埋めるのはモデルではなく、モデルに与える「問い」の設計である。
機械学習は、答えを出す機械ではなく、問いに忠実な最適化装置です。何を問うか、つまり目的関数を選ぶことは、機械学習に任せられない、人間に残された仕事だと考えています。
設計チェックリスト
スライドは要約版です。以下が詳細版です。
一つ目の層(縛る)
- 全銘柄に共通する一つのモデルで予測しているか
- 銘柄特性を順位に置き換え、公表の遅れを入れているか
- 時系列順で検証し、テスト期間を使い回していないか
- 正則化・早期終了・アンサンブルでモデルを縛っているか
- 複雑なモデルの成績を、単純な線形モデルの成績と比べているか
二つ目の層(問う)
- 学習の前に、流動性で銘柄を絞っているか
- R²は「常にゼロと予測する」場合と比べて測り、評価は経済的な指標で行っているか
- 等ウェイト・時価総額加重・コスト控除後の成績と、回転率を確認したか
- 損益を直接目的にする設計を検討したか
- 変数の重要度と効き方の形から、モデルが何を見ているかを確かめたか
- ロング側・ショート側それぞれの寄与と、保有銘柄の特徴(時価総額、出来高、株価水準など)を確かめたか
- リターンを既知のファクター(短期リバーサルや流動性も含む)で分解し、単純なルールとも比べたか
限界と注意
- この記事の根拠は、米国株・月次・2016年までのデータが中心で、多くはコスト控除前の数字です。
- 取り上げた研究の多くは、同じ研究者グループによるものです。
- 評価はシャープレシオが中心で、暴落時のような裾のリスクは測れていません。リスク管理、体制変化への対応、運用中の監視は対象外です。
- 本記事は特定の投資手法を推奨するものではありません。
参考文献
主な材料
- Gu, S., Kelly, B., & Xiu, D. (2020). Empirical Asset Pricing via Machine Learning. Review of Financial Studies, 33(5), 2223–2273.(比較研究)
- Kelly, B., & Xiu, D. (2023). Financial Machine Learning. Foundations and Trends in Finance, 13(3–4), 205–363.(総説)
その他の研究
- Avramov, D., Cheng, S., & Metzker, L. (2023). Machine Learning vs. Economic Restrictions: Evidence from Stock Return Predictability. Management Science, 69(5), 2587–2619.
- Jensen, T. I., Kelly, B., Seminario-Amez, C., & Pedersen, L. H. (2022). Machine Learning and the Implementable Efficient Frontier. Working paper.
- Simon, F., Weibels, S., & Zimmermann, T. (2022). Deep Parametric Portfolio Policies. Working paper.
- Britten-Jones, M. (1999). The Sampling Error in Estimates of Mean-Variance Efficient Portfolio Weights. Journal of Finance, 54(2), 655–671.
- Brandt, M. W., Santa-Clara, P., & Valkanov, R. (2009). Parametric Portfolio Policies: Exploiting Characteristics in the Cross-Section of Equity Returns. Review of Financial Studies, 22(9), 3411–3447.
- Gârleanu, N., & Pedersen, L. H. (2013). Dynamic Trading with Predictable Returns and Transaction Costs. Journal of Finance, 68(6), 2309–2340.
- Kan, R., & Zhou, G. (2007). Optimal Portfolio Choice with Parameter Uncertainty. Journal of Financial and Quantitative Analysis, 42(3), 621–656.
- Jiang, J., Kelly, B., & Xiu, D. (2023). (Re-)Imag(in)ing Price Trends. Journal of Finance.
- Da, R., Nagel, S., & Xiu, D. (2022). The Statistical Limit of Arbitrage. Working paper.
- Feng, G., Giglio, S., & Xiu, D. (2020). Taming the Factor Zoo: A Test of New Factors. Journal of Finance, 75(3), 1327–1370.
- Kelly, B., Malamud, S., & Zhou, K. (2024). The Virtue of Complexity in Return Prediction. Journal of Finance, 79(1), 459–503.
- Nagel, S. (2025). Seemingly Virtuous Complexity in Return Prediction. NBER Working Paper 34104.
- Kelly, B., & Malamud, S. (2025). Understanding The Virtue of Complexity. Swiss Finance Institute Research Paper 25-96.














