ローカル LLM を金融取引の意思決定サポートに応用する — コードレビュー 4 段階カスタマイズの転用
前回の記事では、ローカル LLM(Ollama + Qwen3)を社内コードレビューに特化させる 4 段階のカスタマイズ手法を紹介しました。この仕組みは金融取引の意思決定サポートにもそのまま応用できます。
個人投資家が株式や BTC などの売買判断を行う際に、ニュース分析・テクニカル指標の解釈・リスク評価を自分の PC 上で、自分の投資ルールに基づいてAI に補助させる構成です。
なぜローカル LLM が金融取引に向いているのか
金融取引は、AI の活用にローカル環境が特に適している分野です。
| 利点 | 説明 |
|---|---|
| プライバシー | ポートフォリオ・売買履歴・資産額をクラウドに送信しない |
| コスト | 毎日の市場分析やニュース要約を API 課金なしで実行可能 |
| カスタマイズ | 自分の投資スタイル・リスク許容度に完全に特化できる |
| 速度 | ネットワーク遅延がなく、市場の急変時にも即座に分析可能 |
| 独立性 | API 障害やサービス停止の影響を受けない |
2024 年末時点で個人がビットコインの発行上限の約 69% を保有しており、個人投資家にとって自分だけの分析ツールを持つ意義はますます大きくなっています。
コードレビューから金融取引への対応表
前回の記事の 4 段階がどのように転用できるかを整理します。
| レベル | コードレビュー | 金融取引サポート |
|---|---|---|
| 1. Modelfile | コーディング規約を教える | 売買ルール・リスク管理ルールを教える |
| 2. RAG | 障害報告・設計書を検索 | 決算短信・ニュース・四季報を検索 |
| 3. Few-shot | 過去のレビュー事例を見せる | 過去の売買判断の成功/失敗事例を見せる |
| 4. LoRA | PR レビュー履歴で再訓練 | 金融センチメント分析データで再訓練 |
レベル 1:投資ルールを「教える」 ← すぐできる
レベル 2:市場情報を「渡す」 ← 1〜2日
レベル 3:売買パターンを「見せる」 ← 数日
レベル 4:金融の頭脳を「鍛える」 ← 1〜2週間
レベル 1:Modelfile に投資ルールを埋め込む(即日導入)
自分の投資ルール・リスク管理基準をシステムプロンプトとして設定します。
Modelfile の作成
| |
モデルの作成と使用
| |
コードレビューとの違い
コードレビューでは temperature 0.1(一貫性重視)でしたが、金融分析では 0.2 に少し上げています。市場分析には「複数の見方」を提示する柔軟性が必要だからです。ただし高すぎると根拠のない推測が混じるため、0.3 以上にはしません。
レベル 2:RAG で市場情報を検索させる(1〜2 日)
決算短信、アナリストレポート、自分の売買日誌など、蓄積した情報を検索させて分析の文脈を与えます。
取り込むべきドキュメント
docs/
├── earnings/ # 決算短信・四半期報告書
│ ├── 7203-toyota-2025q3.md
│ └── 9984-softbank-2025q3.md
├── market-analysis/ # 市場分析メモ
│ ├── us-interest-rate-2026.md
│ └── btc-halving-cycle.md
├── trade-journal/ # 自分の売買日誌 ← 最も重要
│ ├── 2026-01-trades.md
│ ├── 2026-02-trades.md
│ └── 2026-03-trades.md
├── rules/ # 投資ルール・戦略
│ ├── risk-management.md
│ └── sector-rotation-strategy.md
└── watchlist/ # 監視銘柄リスト
├── japanese-stocks.md
└── crypto-assets.md
売買日誌が最も重要な理由
コードレビューでは docs/(ビジネスロジックのドキュメント)が最も効果的でした。金融取引では売買日誌がこれに相当します。
| |
この日誌が RAG に入っていれば、似た状況の銘柄を分析する際に「過去にこういう判断で成功/失敗した」という文脈を LLM が参照できます。
Open WebUI での構築
前回の記事で紹介した Open WebUI のナレッジベース機能をそのまま使えます。
| |
- Workspace → Knowledge で
trade-journalナレッジベースを作成 - 売買日誌をアップロード
- チャットで
#trade-journal トヨタ自動車を分析してと入力
自動でニュースを取り込む
手動でドキュメントを追加するだけでなく、RSS フィードやニュース API から自動取得するスクリプトを組むとさらに実用的です。
| |
レベル 3:Few-shot で売買パターンを学習させる(数日)
過去の「この状況ではこう判断した」という具体的な成功・失敗事例をプロンプトに埋め込みます。
Few-shot 事例ファイルの作成
| |
Few-shot を含む Modelfile
| |
売買日誌から Claude Code に Few-shot JSON を生成させる
コードレビューの記事では GitHub の PR レビューから Claude Code に事例を選別させました。金融版では売買日誌から事例を抽出します。
docs/trade-journal/ に保存されている売買日誌を読み、
以下の形式の JSON に変換して docs/trading-fewshot.json に出力してください。
## 出力形式
[
{
"situation": "市場状況の要約(テクニカル指標、ファンダメンタルズ、ニュース)",
"judgment": "[判断][確信度] 判断の根拠",
"result": "結果と振り返り",
"category": "分析カテゴリ"
}
]
## 選別基準
- 明確な判断根拠が記録されている取引のみ採用
- 成功事例と失敗事例を半々程度含める(失敗から学ぶため)
- 同じパターンの取引は代表的なものを 1 件選ぶ
- 30〜50 件に絞り込む
レベル 4:LoRA で金融センチメント分析を強化する(1〜2 週間)
ここが金融分野ならではの大きな利点です。金融特化の LoRA アダプタやオープンソースプロジェクトが既に豊富に存在します。
金融特化のオープンソースプロジェクト
| プロジェクト | 概要 | LoRA | Hugging Face |
|---|---|---|---|
| FinGPT | 金融センチメント分析に特化した LLM フレームワーク。LoRA で低コスト学習可能。GPT-4 と同等の精度を報告 | ✅ | FinGPT モデル |
| FinLlama | Llama 2 ベース、34,000 件の金融テキストで LoRA 訓練。アルゴリズム取引向けセンチメント分析 | ✅ | 公開済み |
| FinMem | 記憶階層を持つ LLM トレーディングエージェント。短期・中期・長期の情報を階層的に管理 | - | - |
| MarketSenseAI | RAG + LLM エージェントで株式分析。S&P 100 で累積リターン 125.9%(インデックス 73.5%)を報告 | - | - |
| TradingAgents | マルチエージェント構成(ファンダメンタルズ担当・テクニカル担当・センチメント担当が協議して判断) | - | - |
既存の LoRA アダプタを活用する
ゼロから学習する前に、Hugging Face で公開されている金融特化 LoRA アダプタを試すのが効率的です。
| |
自分の取引データで追加学習する
既存の金融 LoRA をベースに、自分の売買日誌で追加の LoRA 学習を行うことで、汎用的な金融センチメント分析能力 + 自分の投資スタイルに合った判断パターンを両立できます。
学習データの形式はコードレビューと同じ Alpaca 形式です。
| |
MLX でのファインチューニング(Mac の場合)
前回の記事で紹介した通り、Mac ユーザーは MLX で LoRA 学習が可能です。
| |
Ollama への取り込み
| |
| |
株式と BTC で異なる分析観点
同じ 4 段階のフレームワークを使いますが、資産クラスごとに重視すべき情報が異なります。
| 分析観点 | 株式 | BTC・暗号資産 |
|---|---|---|
| ファンダメンタルズ | PER, PBR, ROE, 配当利回り | オンチェーン指標、アクティブアドレス数 |
| テクニカル | 移動平均線, RSI, MACD | 同左 + ハッシュレート |
| センチメント | 決算発表、アナリストレポート | Fear & Greed Index, SNS 過熱度 |
| マクロ | 金利、為替、セクターローテーション | 規制動向、半減期サイクル |
| RAG に入れるべき資料 | 決算短信、四季報、IR 資料 | ホワイトペーパー、規制ニュース、オンチェーンレポート |
| Few-shot の重点 | 決算前後の売買パターン | パニック相場での対応パターン |
実践的な運用フロー
毎朝のルーティン:
1. ニュース自動取得(スクリプト)→ docs/news/ に保存
2. Ollama + RAG で「今日の注目ポイント」を質問
3. 監視銘柄の指標を入力して分析を依頼
4. 判断材料を確認し、自分で最終判断
売買実行後:
5. 売買日誌に記録(エントリー理由、損切り/利確ライン)
6. 月次で日誌を振り返り、Few-shot 事例を更新
四半期ごと:
7. 新しい売買日誌データで LoRA を再学習(必要に応じて)
マルチエージェント構成(上級)
TradingAgents の研究では、複数のエージェントが異なる視点で分析し、最終判断を協議する構成が高い成果を上げています。ローカル環境でもこの構成を簡易的に再現できます。
ファンダメンタルズ担当(Modelfile A)
↓ 「決算は好調、PER は妥当」
テクニカル担当(Modelfile B)
↓ 「RSI は中立、明確なシグナルなし」
センチメント担当(Modelfile C)
↓ 「ニュースはポジティブ、SNS は過熱気味」
↓
統合判断エージェント(Modelfile D)
→ 「買い検討だが、SNS の過熱感から少額でエントリー推奨」
それぞれ異なるシステムプロンプトを持つ Modelfile を作成し、Python スクリプトで順次呼び出して統合する形です。
重要な注意点と免責事項
LLM にできること・できないこと
| できること | できないこと |
|---|---|
| ニュースのセンチメント分析 | 将来の価格予測 |
| 複数指標の統合的な整理 | インサイダー情報の検出 |
| 過去パターンとの類似度判定 | ブラックスワンイベントの予測 |
| リスク要因の列挙 | 市場心理のリアルタイム把握 |
| 売買日誌に基づく振り返り | 感情的な判断の排除(人間側の問題) |
法規制上の注意
- LLM の出力は情報提供であり、投資助言ではない
- 金融商品取引法上、投資助言業を営むには金融庁への登録が必要
- 他者に対して LLM の分析結果を投資助言として提供してはならない
- 自分自身の判断材料として使用する分には問題ない
過信のリスク
- LLM は学習データの期間内のパターンしか知らない
- 市場の構造変化(コロナショック級)には対応できない
- LLM の分析を「確認」として使い、「判断」は自分で行うことが大原則
導入ロードマップ
第 1 週:レベル 1(Modelfile)
├ 自分の投資ルールを Modelfile に記述
├ 監視銘柄の分析を毎日試す
└ 出力フォーマットを自分好みに調整
第 2〜3 週:レベル 2(RAG)
├ 過去の売買日誌を Open WebUI にアップロード
├ 決算短信・IR 資料を追加
└ 日次ニュース取得スクリプトを設定
第 4 週:レベル 3(Few-shot)
├ 売買日誌から成功/失敗事例を 30 件選別
├ Modelfile に事例を追加
└ 分析精度の変化を確認
第 5〜6 週以降:レベル 4(LoRA)(必要に応じて)
├ Hugging Face の金融 LoRA アダプタを試す
├ 自分の取引データで追加学習
└ ベースモデルとの比較評価
全体構成:コードレビューとの比較
Level 4 まで考慮した金融取引向けの全体構成図と詳細な解説は、別ファイルにまとめています。
→ 金融取引 LLM の全体構成:コードレビューとの比較(構成図付き)
構成図(SVG)と編集用の .drawio ファイルも同じ Gist に含まれています。
まとめ
- コードレビューの 4 段階カスタマイズは金融取引にそのまま転用可能: Modelfile → RAG → Few-shot → LoRA の構成は、対象を「コード」から「市場情報」に変えるだけで機能する
- ローカル LLM は金融に特に適している: ポートフォリオ情報を外部に送信しない、API コストゼロ、自分の投資スタイルに完全カスタマイズ可能
- 売買日誌が最重要データソース: RAG にも Few-shot にも LoRA にも、自分の過去の判断記録が最も価値のあるデータになる
- 金融特化のオープンソースが豊富: FinGPT、FinLlama、TradingAgents など、LoRA アダプタや金融エージェントフレームワークが公開されている
- LLM は「判断」ではなく「分析補助」: 最終的な売買判断は必ず自分で行う。LLM の出力は確認材料のひとつとして活用する
参考
- ローカル LLM を社内業務に特化させる 4 段階カスタマイズ
- FinGPT: Open-Source Financial Large Language Models - GitHub
- FinGPT:金融 LLM の民主化を目指して - AIReview
- FinLlama: LLM-Based Financial Sentiment Analysis for Algorithmic Trading - ACM
- FinMem: LLM Trading Agent with Layered Memory - GitHub
- MarketSenseAI 2.0: Enhancing Stock Analysis through LLM Agents - arXiv
- TradingAgents: Multi-Agents LLM Financial Trading Framework - arXiv
- Integrating LLMs in Financial Investments: A Survey - arXiv
- LLM で動く投資アドバイザーを作ってみた - Zenn
- LLM エージェントを用いた株価予測アプリケーション - ELSPINA
- LLM × チャート分析の新時代 - note
- 金融テキストにおけるセンチメント分析の課題整理 - 言語処理学会
- 金融庁金融研究センター Discussion Paper - FSA
- FinDeepSeek-R1-Distill-Qwen LoRA Sentiment - Hugging Face
- Best Open Source LLM for Finance in 2026 - SiliconFlow
- 9 Best LLMs for Stock Trading and Market Analysis in 2026
- J-Quants API - 日本取引所グループ
- 立花証券 e 支店 API(個人向け無料日本株 API)
- Qwen3 Technical Report - arXiv
- AI エージェントで金融取引予測モデルを作ってみた - GMO