カバ🦛のAI・金融研究ブログ

AI は取引コストの壁を越えられるか?統計的裁定取引で検証

1. どんな論文?

統計的裁定(似た銘柄どうしの一時的な値差が元に戻る動きを取る戦略)には、「似た銘柄を選ぶ」「売買シグナルを見つける」「コストを踏まえて売買量を決める」という三つの工程があります。この論文は、その三つを別々に磨くのではなく、取引コストまで含めた一つの目的関数でまとめて学習する「アテンション・ファクター」を提案しました。米国大型株ではコスト控除後シャープレシオ 2.3 という高い数字を報告し、しかも業種を教えていないのに価格の動きだけから業種のかたまりが浮かぶ、という副産物まで見せてくれる点が読みどころです。

2. 「バックテストでは勝てるのに」の壁

クオンツ運用には昔からの悩みがあります。過去データのバックテストでは見事に勝つのに、いざ手数料を引くと利益が消えてしまう——という壁です。とくに似た銘柄を機械的に組み替える戦略は、毎日ポジションを入れ替えるので売買回数が多く、わずかな手数料でも積み重なると効いてきます。

この論文の主役は、その壁への向き合い方の転換です。従来は「まず似た銘柄を決め、あとから売買を考える」という二段構えでした。すると銘柄選び(ファクター)の側は、取引コストを知らないまま作られてしまいます。著者らは発想を変え、取引コストを最初から最適化の中に描き込むことで、コストのかかりにくい戦略そのものを学習させました。

3. 論文の解説

この論文は Stanford University の Elliot L. Epstein、Rose Wang、Markus Pelger と、Hanwha Life の Jaewon Choi による研究です。金融分野の AI を扱う国際会議 ACM ICAIF(6th ACM International Conference on AI in Finance)で発表されています。

どんな課題に挑んだか

統計的裁定は「似た資産の相対トレード」です。ある銘柄と、それを模倣する組み合わせ(複製ポートフォリオ)を作り、両者の差が開いたら勝ち組を売って負け組を買い、差が縮めば利益になります。カギは「何をもって似ているとするか」で、伝統的には同じリスク要因(ファクター)への反応が近い銘柄を似ていると見なします。

問題は、その似た銘柄選びが取引の都合を考えずに決まってしまうことです。代表的な PCA(主成分分析:相場の共通変動を取り出す手法)で作ったファクターは回転率が高く、大きな空売りを伴うため、コストを引くと成績が崩れます。著者らはこの「コストに適応できない二段構え」こそが本質的な弱点だと考えました。

どんなモデルを提案したか

中核が「アテンション・ファクター」です。Transformer で有名な アテンション(「どこにどれだけ重みを置くか」を内積と Softmax で決める仕組み) を、時間方向ではなく銘柄 × ファクターの横断面に転用しました。各銘柄が各ファクター(業種テーマのようなもの)にどれだけ属するかを、企業特性から柔軟に配分します。線形の既存手法(IPCA)を特殊ケースとして含む、より一般的な似た者の束ね方です。

アテンションで重みを作るしくみ

各時点で企業特性を埋め込みベクトルに変換し、ファクターごとに用意した「クエリ」ベクトルとの内積を取ります。その結果を各行で Softmax にかけ、合計 1 の重み行列を得ます(論文の式 1)。通常の Transformer が系列内のトークン同士を比較するのに対し、ここでは各資産を各ファクターと比較する点が違いです。ローディング(各銘柄がそのファクターにどれだけ反応するか)は、この重み行列からリッジ罰則付きで機械的に定まります。

さらに、残差(共通テーマで説明しきれずに残った、その銘柄固有の値動き)の時系列パターンを LongConv という軽い畳み込みモデルで読み、売買量を決めます。ファクターの作り方と売買方針を、一つの目的関数で同時に学習するのが「1 ステップ」設計です。

目的関数にコストを埋め込む

目的関数は、裁定ポートフォリオのネット・シャープレシオ(取引コストと空売りコストを引いた後の効率)と、ファクターの説明分散を同時に最大化します。取引コストは 1 取引あたり 5bps、空売りに 1bps を課す線形モデルです。コストを目的の中に入れることで、回転率や空売りの大きい構成を自律的に避ける解が学習されます。純粋に裁定だけを最適化すると土台が不安定になるため、分散を説明する項を少し混ぜて安定させています。

どうやって試したか

米国の大型株 500 銘柄(前月末の時価総額で上位)を対象に、1990 年から 2021 年までの日次データを使い実験を行いました。期間を変えながら順次学習を進めており、 1998〜2021 年を評価期間としています。比較対象は主に二つです。

  • PCA + OU(パラメトリック): PCA ファクターの残差を元に、平均へ戻る動き(オルンシュタイン・ウーレンベック過程)と閾値ルールで淡々と売買する古典的手法。
  • PCA 2 段階: ファクターは PCA、売買方針だけ本手法と同じ柔軟なモデルにしたもの。

何が分かったか

主な結果は次の通りです(いずれも米国・年率)。

  • 提案手法はファクター数 K=30 でグロスシャープ(コスト割引前)が3.97、ネットシャープ(コスト控除後)でも 2.28 に達し、論文はこれを「前例のない」水準と表現しています。
  • 古典的な PCA + OU はネットシャープが全 K でマイナス(K=30 で −6.45)。二段構えがコストで崩れる典型です。
  • 業種を教えていないのに、学習されたファクターに銀行・エネルギー・不動産・公益・技術といった業種クラスタが自然に出現しました。
  • 過去リターン(価格情報)を特性から外すと、ネット シャープが 2.28 から 0.59 へ激減。裁定の主役は「価格パターン」で、古典的な財務特性ではないと結論づけています。

4. 思ったこと

  • 「深層 × 統計的裁定取引」の新研究: 残差の平均回帰を突く発想は古くからある古典で、そこに深層モデルを載せる研究も報告されてきました。この論文の新しさは、ファクター選びと売買を別工程にせず一つの目的で解いた点にあり、設計の巧みさを感じます。
  • コストを目的に入れる発想が本命: 一番効いているのは複雑なアテンションよりも、「取引コストを最適化の外に置かない」という一点だと思います。「通行料を書き込んだ地図」を元に進むイメージで、これは市場を問わずワークしそうです。
  • 数字はやや楽観的な前提の上に立つ: 対象は米国の最も流動性の高い大型株、コストは 5bps の線形近似です。マーケットインパクトや借株コスト、後半期での機会の逓減まで含めると、シャープレシオはもう少し下がるかもしれません。
  • 日本市場では前提の差がネック: 日本は個別株の空売り規制や貸株在庫の偏りがあり、5bps / 1bps の前提がそのまま当てはまるとは限りません。とはいえ、市場中立で指数と無関係に稼ぐコンセプトは、下落局面のヘッジを考えるうえで魅力的です。

5. 検証してみました

論文の「コスト考慮最適化」、私も日本株で試してみました。主役である学習済みアテンション・ファクターは GPU 学習と専有データが要るため再現できませんが、論文が「二段構えでは不十分」と示した PCA ベンチマークの骨格を日本株で組み、同じ壁にぶつかるか検証します。

結果は、コスト前でもほとんど稼げず、コストを引くと深く沈む、という厳しい数字でした。ただ、市場中立(β≈0)はきれいに保たれ、業種の自己組織化も日本株で再現できた点は収穫です。

まず「残差」がどう作られるかを 1 銘柄で見てみます。ある銘柄の実際の値動きから、似た銘柄で作った“予想の値動き(複製)”を差し引いた差が残差で、これがその銘柄だけの「高すぎ/安すぎ」を表します。

残差の作られ方(1銘柄ウォークスルー)

日立製作所(6501)の例。上段は①実際(青)と②予想(点線)で、その差が残差です。下段はその残差を直近 20 日ぶんで標準化した“行き過ぎ度スコア”で、+1 を超えたら「売り」・−1 を割ったら「買い」の合図。最終日はスコアが -2.34 まで下振れ(直近で大きく売られすぎ)し、「買い」の逆張りサインが出ています。

これを全 220 銘柄で毎日行い、行き過ぎた銘柄を逆張りするロングショートを組みます。ファクター数 K を変えた成績が次の表です。

ファクター数 K グロス シャープ ネット シャープ 年率リターン(ネット) 市場ベータ 平均回転率/日
K=1 -0.02 -0.79 -7.5% 0.11 0.48
K=3 -0.02 -1.09 -7.5% 0.05 0.48
K=5 0.02 -1.19 -7.3% 0.03 0.49
K=10 -0.05 -1.38 -7.8% 0.01 0.49
K=15 0.37 -1.06 -5.7% 0.01 0.51
K=30 0.36 -1.29 -6.1% 0.00 0.52
Buy&Hold 0.88 0.88 +17.8% 1.00
ランダム売買 -0.05 -7.40 -14.4% ≈0

コスト前のグロス シャープは -0.05〜0.37。ファクター数を多めにとった K=15〜30 でようやくわずかにプラスですが、コイントスで売買するランダム売買(-0.05)を明確に引き離せておらず、全銘柄を等加重で持つだけの Buy&Hold(0.88)には遠く及びません。かつて成立していた「残差の平均回帰」の素のエッジは、直近の日本株ではほぼ見えなくなっているようです。

そこへ取引コストを課すと、崖が現れます。

取引コストとネット シャープの関係(崖)

横軸が 1 取引あたりのコスト、縦軸がコスト控除後シャープ。曲線が 0 の線を割る点(損益分岐)はわずか 0.6bps。論文前提の 5bps では大きくマイナスに沈みます。

損益分岐はたった 0.6bps。日次で組み替える平均回帰は回転率が高く(1 日あたり約 0.5)、ごく薄い手数料でも薄いエッジを食い尽くします。米国の PCA + OU ベンチマークがネット全マイナスだったのと同じ崩れ方で、「コストを後から引く」設計の限界を日本株でも追体験できました。だからこそ論文は、コストを目的関数に埋め込む必要があったわけです。

一方で、市場ベータは 0.00〜0.11 と一貫してほぼゼロ。相場全体の上下とは切り離された収益源になっており、市場中立という狙いは保たれています。

もう一つ、論文が示した「教師なしで業種が浮かぶ」現象も確かめました。

ファクター・ローディングの業種構造(t-SNE)

各点が銘柄、色が東証33業種。軸そのものに意味はなく、値動きが似た銘柄ほど近くに置かれます。同じ色が寄り集まるほど、値動きだけで業種を言い当てられていることになります。

業種ラベルを与えていないのに、各銘柄の近くにいる銘柄の 27% が同業種で、でたらめに並べたときの 5% の約 5 倍でした。価格の相関構造だけから業種のかたまりが浮かぶ、という論文図 3 の主張は、日本株でも局所的には成り立っています(ただし全体をくっきり分けるほどではありません)。

論文値と並べると、水準の違いは明確です。

モデル(市場・期間) グロス シャープ ネット シャープ
論文 Attention Factors K=30(米・学習) 3.97 2.28
論文 PCA 2段階 K=30(米) 2.79 1.57
論文 Buy&Hold(米) 0.42 0.42
本再現 PCA残差平均回帰 K=30(日本・2019〜2026) 0.36 -1.29
本再現 Buy&Hold(日本) 0.88 0.88

この差は、学習の有無・使う情報(39 の企業特性か価格だけか)・市場・期間の違いによるものです。私たちが動かしたのは論文が「不十分」と位置づけた側なので、コストで崩れるのはむしろ想定通り。裏を返せば、この壁を越えるために論文がコスト内包の学習を必要とした理由が腑に落ちます。

6. まとめ

  • やったこと: 論文の PCA ベンチマークの骨格を日本株 220 銘柄・直近 7 年で組み、残差の逆張りロングショートのコスト前後の成績・市場中立性・業種構造を確かめました。
  • 分かったこと: 市場中立(β≈0)と業種の自己組織化は再現できた一方、残差の平均回帰の素のエッジは近年ほぼ見えなくなり、損益分岐 0.6bps という薄さでコストに沈みました。二段構えの限界という論文の指摘が、日本株でも確認できた形です。
  • これから気になること: 財務特性を加えた条件付きファクターや、コストを織り込む売買設計にすると、この崖はどこまで手前で止められるのか。次はそのあたりを覗いてみたいですね。

7. 注意・免責事項