みなさん、こんにちは!
「ALPHA FORGE 開発秘話」の第30話です。
朝のピック生成に、約30分。てっきりAIの推論が重いのだと思っていました。
計ってみたら、9割は「全銘柄の株価を1件ずつ取りに行く時間」。しかもその取り寄せ、最後は空っぽのデータを作って終わっていました🫠
日本株のAI銘柄スクリーニング&継続学習端末「ALPHA FORGE(アルファフォージ)」を、Claude Code と二人三脚で個人開発しています。今回は【事件簿】回。毎朝決まった時刻に重いバッチ処理を動かしている人に読んでほしい話です。
【要約:この記事で伝えたいこと】
- 朝のピック生成約30分のうち89.8%は、東証の全4,442銘柄の株価取得だった。大引け後に計算してディスクに置く「作り置き」にし、今朝は2分35秒
- 高速化は Antigravity の Gemini が実装し、Claude Code がレビューで「朝はその作り置きが使われない」日付のずれを見つけた。7時に戻すと決めたのは人間
- 持ち帰り:朝の処理が遅いとき、開始を早めるのは応急処置。中身を計って「前の晩にできる仕事」を探し、作り置きが実際に使われたかを結果の中身で確かめる
※本記事はnote連載[ALPHA FORGE 開発秘話 #30] の技術的な部分を、エンジニア向けに再構成したものです。
🧭 また、前倒ししようとしていた
第4話で、朝の銘柄抽出が23分半かかって寄り付きに間に合わない、という話を書きました。あのときの答えは「速くする前に、早く始める」。開始時刻を3回前倒しして、7時に落ち着きました。
それから約3週間。分析の軸やモデルが増えて、10月5日の朝の中長期ピック生成はログで1,776秒、約29分36秒かかりました。
その朝、最初に入ったのは、またしても前倒しです。8時6分に開始を6時へ。でも同じ朝のうちに、もう一つ頼んでいました。「現状30分程度かかっている。調査・検討・実装まで進めて」⏱️
💥 時間を食っていたのは、AIではなかった
この調査を受けたのは、Antigravity(Google のAIエディタ)の Gemini でした。ログを読み、どこに何分かかったかを分けてくれました。
| 処理 | 割合 | 時間 |
|---|---|---|
| 東証の全4,442銘柄の5年分の株価を、1件ずつ順番に取得 | 89.8% | 約26分35秒 |
| 候補12銘柄へのAIの深掘り推論(計56回、1回ずつ順番) | 9.9% | 約2分56秒 |
| 候補30銘柄の採点そのもの | — | 4.5秒 |
主役だと思っていたAIの推論は、1割でした😳 全銘柄の株価は、機械学習モデルが市場全体と比べて点数を付けるための材料です。前の日の終値までしか使わないので、本当は朝に取りに行く必要がありません。
🛠️ どう直したか
AIの案:前の晩に済ませる+並べて取る
Gemini の実装は3つです。
- 大引け後の16時55分に全銘柄の計算を済ませ、ディスクに保存。朝は読み込むだけ
- 取る期間を5年から6か月へ(通信量は約10分の1)、取得は最大16並行
- 12銘柄の推論は最大4並行。点数の高い順に採る決まりは変えない
レビューで出た「このままでは戻さないほうがよい」
昼、Claude Code にこの改善のレビューを頼みました。添えた一言はこれです。
OKならば、毎日PICK時間を7:00に戻してください
返ってきた結論は「このままでは 7:00 に戻さないほうがよい」。いちばん効くはずの作り置きが、朝のピックで使われない作りだったのです🙅
- 夕方の作り置きは「その日の日付」で保存する
- 朝のピックは「ピックを出す日の日付」で探す。1日ずれていて、見つからない
- しかも寄り付き前は当日の株価がまだ無い。全銘柄を取りに行ったうえで、中身が空のデータを作っていた
この空振りは、高速化より前からありました。モデルの成績で選んだ本番(champion)を登録して初めての朝、10月5日のピック7件すべてに、機械学習の点数が1点も入っていませんでした。30分待って、使われていたのは空っぽのデータでした。
直し方は、朝は「直前の営業日の日付」で探すこと。Claude は先にテストを書いてから直し、実データの20銘柄で確かめました。前営業日の日付なら17銘柄分が取れ、当日の日付では0。読みどおりでした。
📈 そして今朝は2分35秒
| 時点 | 処理 | 所要時間 |
|---|---|---|
| 10月5日の朝 | 中長期ピック生成 | 1,776秒(約29分36秒) |
| 10月20日の夜 | 作り置き | 107秒(約1分47秒) |
| 10月21日の朝 | 中長期ピック生成 | 155秒(約2分35秒) |
| 10月21日の朝 | 短期ピック生成 | 55秒 |
30分かかっていた朝の仕事は、前の晩の2分弱と、朝の3分足らずに分かれました🌙
⚖️ やったこと/やらなかったこと
- やったこと:作り置き、取得の軽量化と並行化、推論の並行化。レビューで見つかった日付のずれを直してから、開始を7時に戻した
- やらなかったこと:レビュー前に7時へ戻すこと。「OKならば」の条件が満たされるまで、Claude は戻さずに止まった
- やらなかったこと:6時の前倒しをそのまま残すこと。朝の仕事そのものが軽くなったので、同じ日のうちに取り消した
- やらなかったこと:推論を全部同時に投げること。同時は4件までに絞り、点数の高い順に採る順番も守った
🧰 別のAIに「条件つき」でレビューを頼む
今回うまくいったのは、頼み方が「レビューして、OKなら戻して」の条件つきだったことです。書いたのとは別のAIに見てもらい、OKでなければ止まる余地を残しました🔎
- 書いたAIとレビューするAIを分ける(今回は Gemini が書き、Claude が読んだ)
- 「速くなったか」だけでなく「その作り置きは、実際に使われるか」を確かめてもらう
- 次の操作(今回は時刻を戻す)は、レビューの結論を見てから決める
差分だけ読むと、作り置きの仕組みはきれいでした。Claude はそこで止めずに「朝のピックがどの日付で探すか」まで追いかけて、ずれを見つけています。
🤝 役割分担
- 計って作ったのは Gemini(Antigravity):ログから時間の内訳を出し、作り置きと並行化を実装
- 読んで止めたのは Claude Code:日付のずれと空振りを見つけ、テストを先に書いて直した
- 決めたのは人間:調査と実装を頼む、別のAIにレビューを頼む、7時に戻すと決める
📌 保存用チェックリスト
- 遅い処理は、開始を早める前に中身を計る
- 前の日までのデータで足りる計算は、前の晩に済ませる
- 作り置きは、保存する日付と探す日付をそろえる
- 作り置きが実際に使われたかを、結果の中身で確かめる
- 書いたAIとは別のAIに、条件つきでレビューを頼む
☕ note.comで開発秘話と毎朝の検証ログを連載中
note.comでは、「ALPHA FORGE」の開発秘話と、毎朝のアルゴリズム検証ログを公開しています。
👉 元記事(note連載第30話):
https://note.com/featured_stocks/n/nd4a40b3310ab
同じ朝の処理を「速くする前に、早く始める」で乗り切った話は、第4話で書いています。
エンジニアでない方向けに「AIへの仕事の頼み方」をまとめた連載(メンバーシップ「AIとつくるラボ」)もやっています。第0話は無料で読めます。
免責事項
本記事は個人開発およびAIエージェントを活用したシステム開発の技術記録です。特定の銘柄の売買推奨や投資助言を行うものではありません。記事中の時刻・所要時間・件数は、2026年10月5日・20日・21日時点の開発時の記録にもとづくもので、日によって変わります。所要時間は本記事の環境(Windows、個人のPC)で測ったものです。ほかの環境では異なることがあります。
⚠️ 【システム検証記録に関する免責事項・注意事項】
- 本記事は、独自開発アルゴリズム「ALPHA FORGE」の動作検証およびデータ分析過程を公開する技術・運用の個人的な記録ログです。
- 掲載されているすべてのデータ(各スコア、基準観測値、統計的変動上限、シナリオ無効化水準など)は、過去の市場データに基づき数式(ATR等)により機械的に算出されたバックテスト・シミュレーション用のパラメータであり、特定の有価証券の売買勧誘、取引の推奨、投資助言・代理行為を目的としたものではありません。
- また、将来の株価変動や運用成果を保証するものではありません。実際の投資判断および最終決定は、必ずご自身の責任と判断において行っていただけますようお願いいたします。






