XGBoostを用いた株価予測AIの特徴量分析:研究の土台と背景
株価予測は、投資家だけでなくデータサイエンティストにとっても、長年取り組まれてきた挑戦的なテーマです。本シリーズでは、機械学習モデル「XGBoost」を用いて、株価予測における特徴量設計とAIモデルの解釈可能性について深掘りしていきます。
研究の背景と狙い
昨今、XGBoostやLightGBMなどの勾配ブースティング系モデルが、金融時系列データにも広く応用されるようになってきました。しかし、多くのケースで注目されるのは「予測精度」のみであり、どの特徴量がなぜ効いているのかについての深い考察は後回しにされがちです。
本研究が問いかけるのは、こんな視点です:
「価格系・トレンド系・時系列系──それぞれの特徴量は、どのようにモデル構造へ影響しているのか?」
この問いに答えるために、予測結果の可視化ではなく、モデル内部の構造に踏み込んだSHAP(SHapley Additive exPlanations)解析を主軸に据えます。これにより、「精度が高かったから良い」ではなく、「なぜその精度が出たのか」を明らかにしていきます。
モデルと解析の枠組み
- モデル:XGBoost(Gradient Boosted Decision Trees)
- 可視化・解釈手法:SHAP(特徴量の影響度を個別に可視化)
- 評価指標:MAE、RMSE、R²などの回帰指標
- スタンス:精度の追求よりも、「構造理解」と「意味ある特徴量設計」への貢献を重視
使用データと特徴量カテゴリ
データソース
- 日本株(東証一部・大型銘柄中心)
- Yahoo Finance より日足データを取得(例:トヨタ、ソニー、任天堂など)
特徴量カテゴリ(ジャンル分け)
カテゴリ | 主な内容 |
---|---|
価格系 | 始値、終値、出来高、前日比、ボラティリティなど |
トレンド系 | 移動平均、MACD、RSIなどのテクニカル指標 |
時系列系 | 曜日、月、年などのカレンダー情報 |
統合系 | 上記の組み合わせや交差項から得られる複合的特徴 |
従来は「価格そのもの(裸データ)」を使用していましたが、XGBoostの性質上、数値の絶対値に引っ張られる問題が発生しました。よって現在は、
- log変換
- 収益率(リターン)
- 変化割合
といったスケーリング済みの特徴量を中心に構成しています。
こちらの記事で自然対数を使用したlogのメリットを紹介しています。
精度を引き上げるLog変換の裏技:XGBoostと相性抜群な理由を数学で解剖する
また、ターゲット(予測対象)は「翌営業日の log収益率(log差)」とし、log差が0になるケースは前日との値動き無しとなるため除外する方針です。
こちらの記事でlog収益率について紹介しています。
log変換で見えてきた落とし穴──Targetの12%が“変動なし”だった話
分析の進め方:設計と検証のスパイラル
本シリーズは、いわゆる完成品の紹介ではなく、
「実験を通して設計を磨いていく」
というスタンスで展開していきます。
1つの実験ごとに「小さな仮説」と「その検証」を行い、それを蓄積していくことで、最終的には論文的な成果として統合される構成です。毎回の記事が、ひとつの“研究ノート”のような位置づけになります。
今後の展望と次回予告
今後の投稿では、以下の流れで分析を展開していきます:
- 初期モデル(全特徴量使用)によるベースライン構築
- SHAP可視化による影響度の比較・考察
- 調整を行ったモデルの検証
- 最終的に得られた「特徴量設計の指針」の提示
次回の投稿では、まず全特徴量を与えた状態でのモデル構築と、SHAPによる意外な可視化結果をご紹介します。
おわりに:この研究の意義
株価予測AIにおけるモデル精度の向上も重要ですが、それ以上に、
- AIがどの特徴量をどう“見ている”のか
- どのような設計が汎用的に効くのか
を理解することこそ、今後のデータサイエンスにおける礎となるはずです。
この研究が、そのような“構造の理解”と“設計の再発見”につながるヒントとなれば幸いです。
Discussion