- 「次のローソク足」を生成するAI・Kronos(クロノス)を、学習に使われていない2024年7月以降の日本株で試したところ、「直近終値をそのまま維持する」というシンプル予測にも勝てなかった。20日先のずれ幅(誤差率)は13.6%で、シンプル予測の7.6%の倍近かった
- 原因は 学習データのカットオフが2024年6月で、その後の日本株の大きな上昇トレンドを織り込めなかったこと。20日先で平均-8.6%も低く予測する系統的なクセが見られた
- ただし値動きが穏やかな大型ディフェンシブ株(KDDI・NTT・ソフトバンク)では誤差2〜3%と実用域。「銘柄の選び方次第で使い道はある」というのが今回の率直な結論である
目次
「AIが株価を予測できる」と聞いて、本当だろうかと思う人は多いはずである。生成AIの進化と共に、金融市場の値動きを学習させた専用AIモデルが次々と登場しているが、それらは実際の市場でどれくらい当たるものなのか。今回、AI研究のトップ会議AAAI 2026に採択されたばかりの金融AI「Kronos(クロノス)」を、当方のデータベースに蓄積している日本株の値動きで試した。20銘柄に対して300回の予測を実行した結果、見えてきたのは「AIの限界」と「それでも使い道はある」という二つの現実だった。
1. Kronosとは何か — ChatGPTのローソク足版
Kronosは清華大学などの研究チームが2025年8月に発表した、金融市場専用のAIモデルである(Kronos論文(arXiv: 2508.02739))。「金融時系列のための基盤モデル(foundation model)」と呼ばれており、これは「あらかじめ大量のデータで学習させておき、いろいろな金融タスクに使い回せる汎用AI」という意味である。テキスト分野でいえばChatGPTやBERT、画像分野でいえばCLIPに相当する位置づけだ。
最大の特徴は、ChatGPTが「次の単語」を予測するのと同じ仕組みで、Kronosは「次のローソク足」を予測する点にある。具体的には、過去のローソク足(始値・高値・安値・終値・出来高の組み合わせ)を一種の「単語」とみなしてAIに学習させ、過去のパターンから未来のローソク足を生成する。論文タイトルが「A Foundation Model for the Language of Financial Markets(金融市場の言語のための基盤モデル)」となっているのは、まさにこの発想を反映している。
2025年11月にAI研究のトップ会議AAAI 2026に採択され、Kronos公式リポジトリ(GitHub: shiyu-coder/Kronos)では公開直後に6,500以上のスター、Hugging Face Hub(NeoQuasar/Kronos-base)でモデルウェイト(重み)が公開されているなど、研究コミュニティでの注目度は高い。
| 項目 | 内容 |
|---|---|
| 構造 | ChatGPTと同じデコーダー型Transformer。過去から未来を逐次生成する |
| 学習データ | 世界45の取引所から集めた約120億本のローソク足。日本のJPX(東京証券取引所グループ)も含まれる |
| 対応時間足 | 5分・15分・30分・1時間・日足・週足など7種類 |
| モデルサイズ | 4種類(mini 4.1M / small 24.7M / base 102.3M / large 499.2M のパラメータ) |
| 本検証で使ったモデル | Kronos-small(24.7Mパラメータ。M1/M2 Macで動く実用サイズ) |
2. 学習データと「試験範囲」の重なりを整理する
AIを評価する際にもっとも気をつけるべきは、学習データと検証データが重なっていないかである。学校の試験で言えば、出題範囲(学習)と本番問題(検証)が同じだったら、当然満点近い結果になる。これは「カンニング」と同じで、AIの本当の実力を測ることにはならない。
Kronosの論文には次のように明記されている。
Kronosの事前学習データは2024年6月までで、テスト期間は2024年7月以降に限定して厳密に分離している。
さらに「学習に含まれる取引所」のリストにも日本(XJPX = 東京証券取引所グループ)が明示されている。つまり日本株のデータを単純に2020〜2024年の期間で評価しても、Kronosが既に学習済みの期間を再現させているだけになってしまう。これでは正しい実力検証にならない。
そこで当方のトレードDB(2005年5月以降の個別銘柄日足)を以下の3つの期間に分けて整理した。
| バケット | 期間 | 性質 |
|---|---|---|
| A | 2020-01-31 〜 2024-06-30 | Kronosの学習データと重複(カンニング状態) |
| B | 2024-07-01 〜 2026-05-14 | 学習に使われていない期間(528営業日。今回の検証はここ) |
| C | 2005-05-02 〜 2020-01-30 | 学習開始前。古い相場環境 |
本稿ではこのうちバケットB(学習に使われていない期間)に絞って検証した。論文と同じテスト期間設計を採用することで、「Kronosは本当に未知のデータを当てられるのか」をフェアに確かめる狙いである。専門用語では、こうした未学習期間の検証を「OOS(Out-Of-Sample。学習データの外)」と呼ぶ。以下、本稿でも「学習に使われていない期間」と書くか、必要に応じて「OOS期間」と呼ぶ。
3. 何銘柄を、どの期間で、どう試したか
実験設計はできるだけシンプルに揃えた。
| 項目 | 設定 |
|---|---|
| 対象銘柄 | 流動性上位20銘柄(NTT・トヨタ・三菱UFJ・ソニーG・三菱商事など。全銘柄はAppendix参照) |
| 予測の起点 | 2024年7月〜2026年4月の月初営業日(15点) |
| 入力(過去の参照期間) | 直近の256営業日(約1年)のローソク足 |
| 予測の長さ | 20営業日先まで(途中の1日・5日・10日先でも誤差を測る) |
| 予測の試行回数 | 20銘柄 × 15起点 × 20日先 = 6,000ポイント |
| 比較する単純予測(ベンチマーク) | ①現状維持(直近終値をそのまま使う)/②トレンド外挿(過去20日の平均リターンを伸ばす) |
| Kronosの設定 | 追加学習なし(ゼロショット=そのまま使う方式)。Kronos-smallをM2 Mac上で実行 |
データの前提条件と制約
本検証のデータには以下の制約があり、結果の解釈には留意が必要である。
- 対象は流動性上位20銘柄に限定しており、中小型株や新興市場は含まない
- 株価データは株式分割の調整を当方DB側で実施しているが、配当・優待による調整はしていない
- 取引コスト(手数料・スプレッド)は考慮していない。実際に売買する場合のコストは別途差し引く必要がある
- Kronosの学習データに含まれる「日本株のレジーム」と検証期間のレジームが異なる可能性は、結果に大きく影響する(後述)
- 使用したKronos-smallは小型モデル(24.7Mパラメータ)。大型のKronos-baseやKronos-largeでは結果が変わる可能性がある
4. 結果①: シンプルな「現状維持」予測にも負けた
まず「予測がどれくらい外れたか」を平均で見るMAPE(平均絶対誤差率)という指標で比較した。MAPEは「予測値と実測値の差を、実測値で割って絶対値の平均をとった値」で、低いほど精度が高い。
結論から言えば、Kronosは全ての予測期間で、ナイーブ予測(直近終値をそのまま伸ばすだけのシンプル予測)に負けた。
20日先で見るとKronosの誤差率は13.6%、対する現状維持予測は7.6%。シンプルな予測の倍近い誤差になっている。考えてみれば不思議な結果である。AIが頑張って何かを予測している以上、何もしない予測には勝つはずではないか。
この結果は意外に見えるが、実は理にかなっている。株価の短期的な値動きは、ほぼランダムウォーク(次にどう動くかわからない動き)に近い。動く方向も大きさも予測困難な以上、「動かない」と仮定する予測のほうが結果的に当たりやすい場面が多い。さらに本検証期間の日本株は構造的な上昇相場だったため、「現状維持」予測が偶然うまく機能した面もある。
5. 結果②: 上がるか下がるかの的中率は五分五分
次に「上がるか下がるかの方向性を当てられたか」を見た。誤差の大きさは関係なく、「Kronosが上がると予測した時に実際に上がったか」だけを測る指標である。
Kronosの的中率は1日先で51.7%、3日先で52.7%とランダム水準(50%)をわずかに上回るが、5日以降は50%を割り込み、15日先では46.3%とむしろランダムよりも悪い水準まで落ち込んだ。短期にはかすかなシグナルがあるが、ノイズに飲まれてすぐに消えるパターンである。
ちなみに「銘柄間のランキングを当てる力」を測るRankIC(銘柄を予測値で並べ替えた時、実測の並びとどれくらい一致するかを示す相関指標)も計測した。1〜3日先で+0.04〜+0.07の弱い正の値を示すが、15日先以降は負の値(つまり逆に外れる傾向)に転じる。短期にだけ薄いシグナルがあり、中長期では失われるという結果は方向性的中率と整合する。
6. 結果③: Kronosは「これから下がる」と一貫して予測していた
ここまでで「Kronosは精度では負けている」「方向性も五分五分」とわかったが、もう一つ重要な発見があった。Kronosの予測には系統的な偏り(クセ)があったのである。
予測する期間が伸びるほど、Kronosは実測より低い数字を出し続けた。1日先で平均-1.0%、5日先で-3.1%、10日先で-6.3%、20日先では平均で実測より-8.6%も低く予測していた。つまりKronosは、検証期間中ほぼ一貫して「これから日本株は今より下がる」と予測し続けたのである。
実際の日本株は2024年7月〜2026年5月にかけてTOPIXが大きく上昇する局面にあった。円安・賃上げ・東証のPBR改革・新NISA開始など、構造的な強気要因が重なっていた時期である。Kronosの学習データは2024年6月で打ち切られているため、その後の上昇トレンドを織り込めなかった結果、こうした下振れの偏りが生まれたと考えられる。これがいわゆる「分布シフト」(学習時の市場と検証時の市場で、価格水準やトレンドの分布が変わってしまうこと)の典型的な現象である。
7. ケーススタディ — 4銘柄の予測と実測を見比べる
集計値だけでは挙動が見えにくいので、2025年7月1日を起点にした20営業日先までの予測を、4銘柄について実測と並べてみた。
トヨタ自動車(7203)はKronosが2,500円前後の横ばいを予測した一方、実測は2,850円付近まで急騰した。三菱UFJ(8306)も同様に、本格的な上昇局面の動きをKronosは取り損なっている。一方でソフトバンクグループ(9984)やメタプラネット(3350)といった値動きの激しい銘柄では、予測軌道と実測軌道のずれがさらに広がっている。
共通するのは「Kronosの予測は基準値付近で平らに横ばう」というパターンである。これは「次のローソク足」を確率的に選ぶ仕組み上、もっとも無難(平均的)な結果を逐次出してしまう副作用と解釈できる。決算サプライズや戦略転換、レジーム転換のような非連続な変化を予測することは、過去のローソク足だけを入力にするKronosの構造的な限界である。
8. なぜKronosは日本株で機能しなかったか
ここまでの結果を踏まえ、Kronosが今回の検証で苦戦した理由を整理する。
理由①: 学習期間と検証期間で「相場の質」が変わった
Kronosの日本株学習データは2020年1月31日からの約4年半をカバーしている。この期間にはコロナショック・コロナ後の緩やかな回復・2023年前半までの停滞が含まれる。一方の検証期間(2024年7月〜2026年5月)は、円安・賃上げ・PBR改革・新NISAという構造的な強気要因が重なった上昇相場である。同じ「日本株」でも、相場の質が全く違う。
テキストの文法と違って、金融市場の「文法」は時代によって変わる。学習時に身につけたパターンが将来も再現される保証はない。これが基盤モデルにとっての本質的な難しさである。
理由②: 個別企業のイベントを内蔵できない
Kronosが入力に使うのはローソク足だけである。決算サプライズ、経営戦略の転換、M&A、規制変更、政策保有株売却といった、株価の主要な変動要因をモデル内で表現できない。今回最も誤差が大きかったメタプラネット(3350)はビットコイン財務戦略を採用してから企業価値の決定要因が事業ファンダメンタルズから暗号資産価格に大きくシフトした銘柄であり、Kronosには予測のしようがなかった。
理由③: ゼロショットの限界
Kronosの論文も「追加学習なし(ゼロショット)の結果は基礎能力の検証であり、実運用では対象市場のデータで再学習することを推奨する」と明記している。今回はあえて素のKronosを使ったが、日本株データで小規模なファインチューニング(追加学習)を行えば、精度が大幅に改善する可能性は高い。これは次の検証テーマである。
個人的な見解 — それでも適用できる場面はある
個人的には、今回の検証結果は「Kronos失格」と片付けるべきではないと考えている。銘柄別に分解すると、値動きが穏やかな大型ディフェンシブ株(KDDI 2.4%、NTT 2.9%、ソフトバンク 3.1%)では誤差率が実用域に近い水準にあった。これらは配当利回りが高く、激しい変動が少ない通信大手で、「平均的なローソク足を出す」Kronosの性質と相性がよい。
逆にメタプラネットのように値動きが極端な銘柄に適用すると、平均誤差率が大きく押し上げられる。今回の集計はメタプラネットを含んだ20銘柄の単純平均だが、これを除いた19銘柄では誤差率の中央値が約8%まで改善する。適用銘柄の選別次第で、平均的な性能を底上げできる余地は十分にあると見ている。
平均値だけで「使えない」と切り捨てるのは早計で、銘柄属性ごとに評価を分けて見るのが筋であろう。
9. まとめと今後の検証ポイント
「AIで株価予測」の現実 — 今のKronosは魔法の銀の弾丸ではない
AAAI 2026採択のKronosを、学習に使われていない日本株の2年弱で試した結果、ゼロショットでは「現状維持」というシンプル予測にすら勝てなかった。最大の理由は、学習期間後の日本株の大きな上昇トレンドを織り込めなかったことにある。Kronosは平均で実測より-8.6%低く予測する「悲観的なクセ」を持っていた。
一方で通信大手などの値動きが穏やかな銘柄では誤差2〜3%と実用域に近い。「銘柄の選び方次第で使い道はある」というのが今回の率直な結論である。個人的には、こうした基盤モデルは「ゼロショットで株価を当てる魔法のツール」ではなく、自社モデルや独自アルゴリズムを作る際の良質な出発点(事前学習チェックポイント)として活用するのが現実的だと考えている。
今後の検証として次の3つを進めたい。
| 検証テーマ | 確認したいこと |
|---|---|
| バケットAでの再検証 | 学習データと重複する期間(2020-01〜2024-06)で同じ手法を試し、「カンニング状態だとどれくらい良く見えるか」を測ることで、データ重複の効果量を定量化する |
| 大型モデル(Kronos-base)への切り替え | パラメータ数を4倍に増やしたモデルで精度がどう変わるか |
| 日本株でのファインチューニング | 論文も推奨している「追加学習」を実施し、ゼロショットからどれだけ改善するかを測る |
Appendix — 使用銘柄一覧
本検証で使用した流動性上位20銘柄を以下に掲載する。
| コード | 銘柄名 | コード | 銘柄名 |
|---|---|---|---|
| 3350 | メタプラネット | 8411 | みずほフィナンシャルグループ |
| 4755 | 楽天グループ | 8604 | 野村ホールディングス |
| 6758 | ソニーグループ | 8750 | 第一生命ホールディングス |
| 7203 | トヨタ自動車 | 8801 | 三井不動産 |
| 7453 | 良品計画 | 9107 | 川崎汽船 |
| 8001 | 伊藤忠商事 | 9432 | NTT |
| 8031 | 三井物産 | 9433 | KDDI |
| 8058 | 三菱商事 | 9434 | ソフトバンク |
| 8306 | 三菱UFJフィナンシャル・グループ | 9501 | 東京電力ホールディングス |
| 8316 | 三井住友フィナンシャルグループ | 9984 | ソフトバンクグループ |
※本記事は公開情報に基づく情報整理であり、個人の見解を含みます。特定の銘柄の売買や投資を推奨するものではありません。投資判断はご自身の責任においてお願いいたします。