STEP4:モデルの選定と構築

クオンツ構築

ここからは、抽出された特徴量を用いて、実際に機械学習モデルを構築していきます。ここで使用するのが、非常によく使われている XGBoost(エックスジーブースト) です。


モデル選定の考え方

モデルを選ぶ際は、戦略の目的やデータの性質によって最適解が変わります。ここでは、よく使われる代表的なモデルとXGBoostを比較しながら、クオンツ運用におけるモデル選定の考え方を解説します。


XGBoost(エックスジーブースト)

  • タイプ:決定木ブースティング(Gradient Boosting Trees)
  • 長所
    • 非線形な関係性も学習可能
    • 特徴量選別が自動で行える(重要度も可視化)
    • 欠損値に強く、前処理が簡易
    • 高精度・高速処理
  • 短所
    • モデル構造が複雑で、解釈性が低い(ブラックボックス気味)
    • 特徴量の「なぜ効くか」を理論的に説明しづらい

ロジスティック回帰

  • タイプ:線形モデル(分類)
  • 長所
    • 解釈性が非常に高い(係数で説明できる)
    • 実装がシンプルで高速
  • 短所
    • 線形前提のため、非線形な関係性に弱い
    • 特徴量同士の交差関係や閾値的な動きは捉えにくい

ランダムフォレスト

  • タイプ:アンサンブル決定木
  • 長所
    • ノイズに強く、安定した予測性能
    • 特徴量の重要度を明示できる
  • 短所
    • 学習がやや重い(XGBoostより遅いことが多い)
    • モデル構造の可視化が困難

ニューラルネットワーク(多層パーセプトロンなど)

  • タイプ:ディープラーニング系
  • 長所
    • 非線形性に非常に強い
    • 高度なパターン認識が可能(大量の特徴量もOK)
  • 短所
    • 過学習しやすく、調整が難しい
    • クオンツ運用においては“ブラックボックス”すぎて敬遠されがち

モデルはどう選ぶ?

  • 戦略が明確・解釈性重視:ロジスティック回帰
  • 精度重視・多数の特徴量:XGBoost
  • まずは堅実に様子見したい:ランダムフォレスト
  • 高度な学習と最適化が可能な環境がある:ディープラーニング

XGBoostはこの中でも「特徴量が多いが、何が効いているかも知りたい」というニーズに非常にマッチします。したがって、 「まずは現実的に予測精度を上げたい」というケースでは、XGBoostが第一選択肢になるのです。


  • 多くの特徴量を入れても自動で選別(特徴量重要度の評価)
  • 過学習しにくく、汎用性が高い
  • 非線形の関係もキャッチできる
  • 予測の精度が高く、処理も速い

特に金融のように「何が効いているかがわかりにくいデータ」において、非常に相性が良いモデルです。


STEP4でやること(全体の流れと位置づけ)

このステップでは、実際にXGBoostモデルを使って、抽出済みの特徴量を機械学習モデルにかけて予測力を検証し、さらに“本当に使えるファクター”を絞り込むプロセスを進めていきます。

全体の流れをまとめると、以下のようになります:

  1. 特徴量を使った確率モデルを構築(今回はXGBoost)
  2. 構築したモデルの性能を評価(精度・AUC・F1スコアなど)
  3. 特徴量の重要度を可視化して、どれが効いているか確認
  4. この結果を元に、次のSTEP5でバックテストを開始する準備

つまり、ここは「予測すること」だけでなく、「本当に機能するファクターを選抜する工程」でもあります。

ここでは「何をするか」だけでなく「なぜそれをやるのか」を解説します。

※今回は XGBoost を中心に解説しますが、他のモデル(ロジスティック回帰やランダムフォレストなど)を使った分析方法についても、今後取り上げていく予定です。


1. XGBoostモデルの構築

まずは抽出された特徴量を使って、XGBoostという機械学習モデルを構築します。 XGBoostは「たくさんの特徴量から、自動的に最も重要な要素を選んで学習する」のが得意なモデルです。

  • 入力データ:特徴量(ファクター)
  • 正解データ:価格が上昇したかどうか(ターゲット)

これらを使って「価格が上がる確率を予測するモデル」を作成します。


2. 予測精度の評価

作成したモデルが、どれくらい正しく“上がるかどうか”を予測できるかを評価します。 使う指標には以下があります:

  • 精度(Accuracy):予測が正しかった割合です。全体のうち「上がる・下がる」を当てられた割合を表します。
  • AUC(エリア・アンダー・カーブ):0.5が完全なランダム、1.0に近いほど予測性能が高いです。「確率そのものが信頼できるか」を評価する指標です。
  • F1スコア:Precision(適合率)とRecall(再現率)のバランスを取った指標。予測の当たり方に偏りがないかを確認できます。

これにより「モデルがどれだけ使えるか?」を定量的に判断できます。

3. 特徴量の重要度(Feature Importance)の可視化

どのファクターが、モデルの予測にどれくらい貢献しているかをグラフで確認します。 これにより、

  • どの指標がもっとも“効いている”のか
  • 逆にあまり意味がなかったファクターは何か

といった分析が可能になり、戦略の改良にもつながります。


4. 今後の改善ヒントを得る

特徴量の中に「効いていない」「逆に悪影響を与えている」ファクターがないかを検証します。 また、モデルが一部のパターンに過剰適応(=過学習)していないかもチェックします。

この段階で「どのファクターを残すか」「もっと良いファクターを追加するか」など、次の改善方針が見えてきます。


実例:モデル評価と結果の解釈

ここでは、XGBoostモデルで予測した結果を評価するために使われる代表的な3つの指標を紹介します。

① Accuracy(正解率)

  • 全体のうち、予測が「実際の上がる・下がる」にどれだけ当たったかの割合。
  • 例:100件中60件が正しかった → Accuracy = 60%

② AUC(エリア・アンダー・カーブ)

  • 確率予測の“信頼性”を測る指標。
  • 値は0.5〜1.0の間で、0.5なら「完全ランダム」、1.0に近いほど予測精度が高い。
  • 0.7以上が実務での合格ラインとされることが多いです。

③ F1スコア

  • Precision(適合率)と Recall(再現率)のバランスを取った指標。
  • 「正しく買いシグナルを出せたか」と「見逃しがなかったか」の両方を見ます。

今回のモデル評価結果(2因子特徴量での予測)

指標結果
Accuracy0.5073
AUC0.5127
F1スコア0.5094

これらのスコアは、いずれも コイントス(ランダム予測)に近い水準 です。AUCが0.5をわずかに超えているだけで、予測モデルとしての有効性は非常に低いと言わざるを得ません。


結論:特徴量の再抽出へ

今回の2因子特徴量によるモデル構築では、ICテストでは一定のスコアを示していたものの、実際の予測結果では「方向性を捉える力」が弱いことが明らかになりました。

したがって、次のステップとしては:

  • 新たな特徴量カテゴリの検討(トレンド系・ボラティリティ系・ロウソク形状など)
  • ターゲットの再定義(より強い変動などを対象)

といった改善を含めて、STEP2:特徴量設計の再検討に戻ることを決定しました。

次回は、より精度の高い特徴量を設計し直し、再度ICテストを行っていきます。

次回もお楽しみに!

タイトルとURLをコピーしました