概要
モンテカルロ法による売買判定は、現在価格を起点に N 通りの将来シナリオ(既定 10,000) をシミュレーションし、シナリオ集団から導いた勝率・期待損益・VaR が閾値を超えたときだけ発注する統計的取引アーキテクチャである。AI(Claude)は「最終判断者」ではなく「マクロ要因をスカラー化する補正器」として組み込み、ハルシネーションが直接損益に効くリスクを抑える。
アーキテクチャ
- データ取得層: 現在価格・板・出来高、または日足/分足の終値ヒストリカル
- モデル層: 価格系列から GBM(幾何ブラウン運動)のパラメータ μ・σ を log return から推定
- Claude 補正層: 直近マクロイベント(FOMC・日銀会合・地政学)を Claude に要約させ、impact スコア(-1.0〜+1.0)で
muを ±α 補正 - Monte Carlo 層:
S_t = S_0 * exp((μ - 0.5σ²)·dt + σ·√dt · Z)で 10,000 パスを生成 - 判定層: 勝率 + 期待値の二段ゲート + ケリー基準で枚数決定
- 発注層: 取引所 API / 証券会社 API へ自動発注
二段ゲートの意義
判定ロジックには 勝率と期待値の両方 をかけるのが本質的に重要である。
- 勝率だけ: 「ほぼ確実に小さく勝つが、たまに大きく負ける」シナリオを過大評価してしまう
- 期待値だけ: 勝率が低すぎてメンタル的に続かない戦略を選んでしまう
- 二段がけ: 例えば「勝率 55% かつ期待値 50pt 以上」とすることで両方の欠陥を打ち消す
ケリー基準による枚数決定
シミュレーションから得られる勝率 p、期待損益 EV、95% VaR から、ケリー比率を計算して発注枚数に反映する。
- 簡易ケリー:
f* = (b·p − q) / b、b = EV / VaR95、q = 1 − p - 正規のケリーは
b = 平均利益 / 平均損失だが、保守的に評価するため VaR ベースの近似を採用する流派もある - フルケリーは破産確率とドローダウンが極端に大きくなるため、実務では 1/4 〜 1/2 ケリー に留めるのが慣例(25% でキャップするのが定番)
GBM の限界と拡張
GBM は log-normal を仮定するため、現実市場のジャンプ(決算サプライズ・FOMC・地政学イベント)を捉えきれない。次のいずれかへ拡張するのが王道である。
- ヒストリカル ブートストラップ: 過去のリターン分布から復元抽出し、厚い裾を再現
- Merton ジャンプ拡散モデル: ポアソン過程によるジャンプ項を GBM に追加
- GARCH 系: ボラティリティのクラスタリングを捉える
最初は GBM で実装し、バックテストで「ドローダウンの実測値が VaR より大きい」と分かった時点で拡張するのが現実的。
なぜ Claude を最終判断者にしないのか
- Claude のハルシネーションが直接損益に効くのを避けるため
- 数値モデルで生き残った戦略にだけ Claude を当てると、ハルシネーション耐性が出る
- 推奨パターン: Claude には「直近 24h のマクロニュースが上下どちらに効いているか」のスカラー値(-1.0〜+1.0)だけを返させ、最終判定は Monte Carlo + 二段ゲートに任せる
関連ページ
- Claude Code — Claude 統合のホスト環境
- J-Quants API — 日本株市場データ
- kabu ステーション API — 自動発注
- 株式投資の売買スタイル — 取引スタイル整理
- 損益分岐勝率 — 勝率と利確・損切り幅の関係