FXや株のトレードで「安くなったから買う」という感覚だけで動いてしまい、手痛い損失を出した経験はありませんか。相場の世界には、売られすぎ・買われすぎを判断する指標が数多く存在しますが、一つだけでは「だまし」に遭うリスクが高まります。
そこで注目されているのが、統計的な壁を示す「ボリンジャーバンド」と、勢いの限界を測る「RSI」を組み合わせた逆張り戦略です。この記事では、最新のAIエージェント「Claude Code」を使い、この黄金コンビの勝率を自分で検証するためのコード作成方法を解説します。プログラミングの経験がなくても、AIを味方につければ、根拠のある投資判断ができるようになります。
なぜボリンジャーバンドとRSIの組み合わせが「最強」なのか?
ボリンジャーバンドは、価格の移動平均線を中心に、統計学的な「ばらつき」の範囲を視覚化したものです。これにオシレーター系の代表格であるRSIを加える手法は、多くのプロトレーダーも採用する王道の組み合わせです。しかし、なぜこの二つを合わせると精度が上がるのでしょうか。
この章では、それぞれの指標が持つ弱点を補い合い、相乗効果を生み出す仕組みについて詳しく紐解いていきます。
ボリンジャーバンド単体で起きる「バンドウォーク」の恐怖
ボリンジャーバンドの±2σ(標準偏差)に価格がタッチした際、多くの初心者は「もう限界だろう」と考えて逆張りを仕掛けます。しかし、強いトレンドが発生すると、価格がバンドに張り付いたまま一方的に進み続ける「バンドウォーク」という現象が起きます。
この状態で逆張りを続けると、含み損が雪だるま式に膨れ上がり、強制ロスカットを招く危険があります。例えば、強力な好材料が出た株価は、統計的な限界を超えて上昇し続けることが珍しくありません。統計上の「95.4%」という数字は、あくまで正規分布を前提とした理論値であり、相場がパニックや熱狂に包まれているときには通用しないのです。
したがって、バンドタッチだけを根拠にするのは、ブレーキのない車で急坂を降りるような危うさがあることを理解しておく必要があります。
RSIをフィルターに使うことで「だまし」を激減させる
バンドウォークのような「だまし」を防ぐための強力な助っ人がRSIです。RSIは一定期間の値上がり幅と値下がり幅を比較し、相場の過熱感を0から100の数値で示します。
具体的には、ボリンジャーバンドの−2σにタッチした際、RSIが30以下(売られすぎ)になっていなければエントリーを見送る、というルールを追加します。価格がバンドの外に飛び出しても、RSIにまだ余裕がある場合は、下落の勢いがまだ死んでいない証拠だからです。
以下の表に、単体使用と組み合わせ使用の違いをまとめました。
| 手法 | 判断基準 | メリット | 最大のリスク |
| ボリバンのみ | ±2σタッチ | チャンスが多い | バンドウォークでの大損 |
| RSIのみ | 30以下 / 70以上 | 過熱感がわかる | 数値が張り付いたまま逆行 |
| 黄金コンビ | 両方の条件合致 | 精度の高い逆張りが可能 | エントリー回数が減る |
統計的な根拠を味方につけてエントリーの迷いを消す
二つの指標を組み合わせる最大のメリットは、トレードに「客観的な根拠」が生まれることです。多くの個人投資家が負ける理由は、その日の気分や直感でエントリーポイントを変えてしまうことにあります。
「ボリバン−2σ」かつ「RSI 30以下」という明確なルールがあれば、感情が入る隙間はありません。例えば、大暴落の最中でも、この二つの条件が揃うまでは静観し、揃ったときだけ淡々と注文を出すという鉄の規律が守れるようになります。
もちろん、条件を厳しくすればチャンスは減りますが、それは「勝てる確率の低い場面を捨てている」ということでもあります。無駄なトレードを減らし、期待値の高い場面に資金を集中させることが、資産を増やすための最短ルートです。
Claude Codeをインストールして開発環境を準備する
自分のアイデアを検証するには、AIを自由に動かせる環境が必要です。最近話題の「Claude Code」は、ターミナル上でAIと対話しながら、コードの作成や実行を代行してくれる画期的なツールです。
ここでは、初心者の方でも迷わずに開発環境を構築できるよう、必要なステップを順番に紹介します。
AnthropicのAPIキーを取得して環境変数を設定しよう
まずはClaudeの頭脳を借りるための「APIキー」を手に入れましょう。Anthropicの公式サイト(Console)からアカウントを作成し、キーを発行してください。
取得したキーは、PCの環境変数に登録することで、Claude Codeがいつでも呼び出せる状態になります。MacやLinuxをお使いの方は、ターミナルで以下のコマンドを実行してください(Windowsの場合は「システム環境変数」の編集画面から追加します)。
export ANTHROPIC_API_KEY='あなたのAPIキー'
この設定を忘れると、Claude Codeを起動しても「認証に失敗しました」と表示されて動かないため、最初に行うべき重要な作業です。一度設定してしまえば、次回からは設定不要で使い始められます。
Node.jsの導入からClaude Codeのインストールまでの手順
Claude Codeを動かすためのエンジンとなるのが「Node.js」です。公式サイトから推奨版(LTS)をダウンロードして、お使いのPCにインストールしてください。
インストールが終わったら、ターミナル(コマンドプロンプト)を開いて、以下の魔法の言葉を打ち込みます。
npm install -g @anthropic-ai/claude-code
これで、あなたのPCに自律型AIエージェントが導入されました。ターミナルで claude と打つだけで、AIとの共同開発が始まります。これまではブラウザのチャット欄にコードをコピペしていましたが、Claude CodeならAIが直接ファイルを作ってくれるので、手間が大幅に省けます。
Pythonとデータ分析に必要なライブラリを揃える
検証コード自体は、投資分析に強い「Python」という言語で動かします。Python本体をインストールした後は、株価を取得するためのライブラリを準備しましょう。
以下のコマンドをターミナルに貼り付けて実行してください。
pip install yfinance pandas pandas_ta matplotlib
これらのツールが揃うことで、AIは「ネットから株価を拾い」「テクニカル指標を計算し」「結果をグラフにする」という一連の作業ができるようになります。準備が整ったら、いよいよAIに戦略を伝えていきましょう。
逆張り戦略の具体的なロジックを言語化する
AIに精度の高いコードを書かせるコツは、人間同士のやり取りと同じく「具体的なルールを伝えること」です。曖昧な指示では、AIも迷ってしまい、中途半端なコードしか出てきません。
この章では、検証したい逆張りロジックをどのように整理すべきか、その設計図を解説します。
エントリー条件:±2σタッチとRSIの数値をどう設定するか?
まずは、どのタイミングで「買い」や「売り」を仕掛けるのかを数値で定義します。今回の黄金コンビでは、以下の条件が一般的です。
- 買い(ロング): 終値がボリンジャーバンドの−2σを下回り、かつRSI(期間14)が30以下のとき
- 売り(ショート): 終値がボリンジャーバンドの+2σを上回り、かつRSI(期間14)が70以上のとき
例えば、RSIの数値を25に下げればより慎重なエントリーになりますし、35に上げればチャンスは増えます。こうした数値の微調整が後から簡単にできるような構造でコードを作ってもらうのが、検証のポイントです。
利益確定と損切りのルールを明確に決める
エントリーよりも重要なのが、いつ「逃げる」かという出口戦略です。逆張りは反発を狙う手法なので、深追いしすぎると元のトレンドに飲み込まれてしまいます。
利益確定の目安としては、ボリンジャーバンドの「中央線(移動平均線)」にタッチしたとき、あるいは反対側のバンドにタッチしたときなどがよく使われます。一方、損切りは「エントリー時の−2σからさらに〇%下がったとき」のように、許容できるリスクを明確に数値化しておきましょう。
「利益は大きく、損失は小さく」が理想ですが、逆張りの場合は「高い勝率でコツコツ利食いし、大事故を防ぐ」という設計が精神的にも安定しやすくなります。
検証対象とする銘柄と期間をピックアップする
ルールが決まったら、それをどのデータで試すかを決めます。日経平均株価や米国のS&P500といった指数は、個別の銘柄よりもテクニカル指標が機能しやすい傾向にあります。
検証期間は、直近1年だけでなく、リーマンショックやコロナショックのような暴落時を含めた「過去10年分」程度を対象にするのが理想です。特定の良い時期だけの結果を見て「この手法は勝てる!」と勘違いするのを防ぐためです。
以下の項目をメモしておき、後でClaude Codeに伝える指示書(プロンプト)の材料にしましょう。
- 対象銘柄:日経平均先物、あるいは特定の大型株
- 検証期間:2015年から現在まで
- 時間足:日足(スイングトレード想定)
Claude Codeにバックテスト用のPythonコードを作らせる
いよいよClaude Codeの真骨頂です。あなたはAIに対して、先ほど決めたルールを「言葉」で伝えるだけです。AIが自らPythonファイルを作成し、コードを書き上げていく様子を目の当たりにすることでしょう。
ここでは、失敗しないためのプロンプトのコツと、コード作成の流れを紹介します。
AIが迷わないための「検証コード作成プロンプト」の書き方
ターミナルでClaude Codeを起動したら、以下のような具体的な指示を送ってみてください。
ボリンジャーバンドとRSIを組み合わせた逆張り戦略のバックテストコードをPythonで作ってください。
- yfinanceを使用して日経平均(^N225)の過去10年分の日足データを取得する。
- ボリバンは20期間の±2σ、RSIは14期間を使用する。
- 「−2σ以下かつRSI30以下」で買い、「中央線を上抜け」で利益確定するロジックにする。
- 最後に累積損益のグラフを表示して、勝率を出力して。
このように条件を箇条書きにすると、AIは一字一句を漏らさずコードに反映してくれます。
yfinance を使って過去の株価データを自動取得させる
AIが作成するコードの心臓部には、yfinance というツールが含まれます。これはYahoo Financeの膨大なデータベースから、無料で過去の株価を引き出せる非常に便利なものです。
自分でデータを探してExcelに貼り付ける必要はありません。コードを実行するたびに、AIが最新のデータをインターネットから自動で取得し、常に最新の状態で検証を行ってくれます。
例えば、昨日までの暴落データが反映された結果を、今すぐ見ることができるのです。このスピード感こそが、AIを使った開発の醍醐味です。
複雑なテクニカル計算をClaudeに丸投げして実装する
ボリンジャーバンドの標準偏差の計算や、RSIの複雑な数式を覚える必要はありません。これらはすべてAIが計算コードを書いてくれます。
私たちが注力すべきなのは、数式の正確さではなく「その数値をどう使うか」という戦略の検討です。計算などの退屈な作業はAIに丸投げして、人間はよりクリエイティブな「勝てるパターンの考察」に集中しましょう。
もしコードに間違いがあっても、Claude Codeなら「エラーが出たから直して」と伝えるだけで、自律的にデバッグ(修正)してくれます。
検証コードを実行して過去の勝率を算出する
コードが完成したら、いよいよ運命の瞬間、バックテストの実行です。AIが出力した結果をどう読み解き、自分のトレードに活かしていくのか。
この章では、出力される指標の意味と、結果を評価する際のポイントを整理します。
ターミナル上で作成したファイルをClaudeに実行させる
Claude Codeの画面で python backtest.py (AIが作成したファイル名)を実行するよう指示しましょう。一瞬で計算が終わり、画面に検証結果が表示されます。
ここで大切なのは、エラーなく動いたかどうかを確認することです。もし動かない場合は、エラーメッセージをAIに見せれば、数秒で修正案を出してくれます。
勝率・プロフィットファクター・最大ドローダウンを確認する
結果画面には、いくつかの重要な指標が出てきます。以下の表を参考に、自分の手法が「使える」ものかどうかを厳しくチェックしましょう。
| 指標 | 意味 | 目安 |
| 勝率 | 全トレード中の勝ち越しの割合 | 逆張りなら60〜70%欲しい |
| PF (プロフィットファクター) | 総利益 ÷ 総損失 | 1.5以上なら優秀 |
| 最大ドローダウン | 資産が最大からどれだけ落ち込んだか | 20%を超えると精神的にキツい |
特に「最大ドローダウン」には注目してください。いくら勝率が高くても、一回の負けで資産の半分を失うような設定は、現実的ではありません。
資産の推移をグラフ化して視覚的にチェックする方法
数字だけでは見えない「相性」をグラフで確認しましょう。AIが作成したコードを実行すると、右肩上がりの資産曲線が表示されるはずです。
グラフを見て、横ばいの期間(停滞期)が長すぎないか、特定の時期に急激に資産が減っていないかを確認します。例えば「2020年のコロナショック時には、この手法は全く通用していなかった」といった発見があれば、それが改善の第一歩になります。
検証結果をもとに勝てるロジックへ修正する
最初のバックテストで完璧な結果が出ることは稀です。むしろ、ここからがAI開発の本当の面白さです。AIと一緒に、より「勝てる」ロジックへと磨き上げていきましょう。
この章では、検証結果をブラッシュアップするための具体的なアプローチを紹介します。
負けパターンをClaudeに分析させて改善案を出させる
AIに対して「このバックテストで負けているトレードの共通点を見つけて」と聞いてみてください。AIは過去のデータを詳細に分析し、「トレンドが強すぎる場面で逆張りを仕掛けて負けているようです」といった鋭い指摘をしてくれます。
負けの原因がわかれば、次は「移動平均線の傾きが急なときはエントリーしない」という新しいルールを追加するだけで、勝率はさらに向上します。
RSIの閾値やボリバンの期間設定を最適化する
RSIの「30」という数値を「20」に変えてみたり、ボリンジャーバンドを「3σ」に広げてみたりして、結果がどう変わるかを比較します。
これを「パラメーターの最適化」と呼びます。Claude Codeを使えば、これらの数値を少しずつ変えて何度もテストを繰り返す作業も、指示一つで終わらせることができます。自分にとって最も「心地よい」リスクとリターンのバランスを見つけ出しましょう。
時間帯や曜日による勝率の偏りをチェックして精度を上げる
「月曜日の午前中は逆張りが決まりやすい」「金曜日の夜はトレンドが出やすいため逆張りは危険」といった、相場の癖が見つかることもあります。
AIに「曜日別の勝率を出して」と依頼してみましょう。もし特定の曜日に負けが込んでいるなら、その日はトレードを休むだけで、トータルの利益は積み上がります。このように、データを多角的に分析することで、無駄な損失を削ぎ落としていくことができます。
逆張り投資で大負けしないためのリスク管理
どんなに優れた検証結果が出ても、未来の相場がその通りになるとは限りません。最後に、検証したロジックを実際の運用に移す前に、必ず知っておくべき「守り」のルールをお伝えします。
この章を読み終えることで、不測の事態でも生き残れる投資家としての土台が完成します。
1トレードあたりの許容損失額を計算に組み込む
検証コードの中に「資金管理(ポジションサイジング)」の考え方を入れましょう。一度の負けで失っていいのは、全資産の1〜2%までにするのが鉄則です。
AIに「1回のトレードで資産の2%を失ったら損切りし、それに合わせた株数を算出する機能をつけて」と頼んでみてください。これにより、どんなに連敗しても致命傷を負わない、強固なシステムが出来上がります。
「だまし」に遭った際の損切りラインをAIと決める
逆張りは「いずれ戻る」という期待に基づいていますが、相場には「二度と戻らない」場面も存在します。
AIと対話しながら、テクニカル的な根拠が崩れた際の撤退ラインを決めましょう。例えば「−3σを突き抜けたら、どれだけRSIが低くても即座に逃げる」といった、機械的な損切り設定です。この「逃げのルール」こそが、あなたの資産を最終的に守り抜くことになります。
バックテストの成績が現実と乖離する「カーブフィッティング」に注意
過去のデータに合わせすぎて、未来で全く通用しなくなることを「過剰最適化(カーブフィッティング)」と呼びます。あまりにも良すぎる結果が出たときは、少し疑ってみることも大切です。
対策として、検証に使わなかった「未知のデータ(ここ1ヶ月の最新データなど)」でテストを行う「フォワードテスト」をAIに依頼しましょう。過去でも現在でも通用するロジックこそが、本物の黄金コンビと言えるのです。
まとめ:データに基づく投資をAIと共に始めよう
今回の「ボリバン×RSI」検証コードの作成手順を振り返ります。
- Claude Codeを導入し、AIとの共同開発環境を構築する。
- ボリバン±2σとRSI30以下という明確なルールをAIに伝えてコード化する。
- バックテストを実行し、勝率や最大ドローダウンを客観的な数字で把握する。
- 改善とリスク管理を繰り返し、自分の性格に合った最強の戦略へ磨き上げる。
「なんとなく安そうだから」という感覚的なトレードは、もう終わりにしましょう。AIを使って自分の戦略を数値化し、納得感を持って相場に挑む。その最初の一歩を、今すぐClaude Codeと共に踏み出してみてください。

