モンテカルロ法でバックテストの破産確率を検証|連敗・順序リスクの見方
Backtest Robustness · BT04
モンテカルロ法でバックテストの破産確率を検証|連敗・順序リスクの見方
モンテカルロ法は未来を予測する道具ではありません。観測済みの取引結果を並び替え、あるいは再抽出することで、同じ実力でも「起こり得た別の道筋」の分布を描き、破産確率・連敗・順序リスクを記述的に読むための手法です。単一のエクイティ曲線だけでは見えない悪化のシナリオを、架空の教育用データと図で丁寧に確認していきます。
- 順序リスクをなぜ1本の曲線で見落とすのか
- シャッフル・ブートストラップ・ストレスの違い
- パーセンタイル帯と最大DD・連敗の読み方
- 破産確率の定義と前提・限界
この記事の要点
- モンテカルロ検証は将来予測ではなく、観測済みの損益を並び替え・再抽出したときの結果分布を見る記述的な手法です。
- 単一のエクイティ曲線は「たまたまの並び」の一例。順序を変えると最大ドローダウンや連敗は大きく変わり得ます。
- 方法は主に順序シャッフル・ブートストラップ・ストレスの3系統。何を変えているかで解釈が異なります。
- 破産確率の「破産」は残高ゼロに限らず、任意の損失閾値で定義するため、必ず定義を明示します。
- すべての数値は架空の教育用データです。特定のロットや最適値の推奨ではありません。
目次を開く
モンテカルロ検証とは(結論から)
バックテストのモンテカルロ法とは、すでに観測した取引結果(勝ち負けの一覧)をもとに、その並び順を入れ替えたり、同じ取引群から繰り返し抽出したりして、「同じ実力でも起こり得た別の道筋」を大量に生成し、その分布を読む手法です。目的は将来の相場を当てることではなく、手元の1本のエクイティ曲線がどれだけ運の良い・悪い並びだったのかを相対化することにあります。ここが最初に押さえるべき前提です。
たとえば同じ200回の取引でも、負けがまとまって来る順番なら途中で大きく資産を減らし、負けが散らばる順番なら緩やかな曲線になります。合計損益は同じでも、途中で口座が耐えられるかどうかは順番次第で変わります。モンテカルロはこの「順番の運」を、数百から数千の道筋として可視化するための道具です。TradingViewのStrategy Testerや汎用CSVから取り出した取引一覧の全体像はTradingViewバックテストの全体像を解説した完全ガイドで先に確認しておくと、本記事の位置づけが分かりやすくなります。
モンテカルロ検証は記述的(descriptive)な分析です。観測データの並び替え・再抽出という前提の範囲でばらつきを示すもので、将来の勝率・利益・ドローダウンを保証・予測するものではありません。以降の数値はすべて架空の教育用データであり、特定の売買判断・ロット・パラメータを推奨するものではありません。
なぜエクイティ曲線一本では順序リスクを見落とすのか
バックテスト結果を1枚のエクイティ曲線で見ると、右肩上がりの形と最終的な増加幅に目が行きがちです。しかし実際に運用で問われるのは「その途中で、どれだけ深く沈む場面があり得るか」です。1本の曲線は、無数に起こり得た並びの中から実現したたった一つのサンプルにすぎません。順序を1回引き直しただけで最大ドローダウンが数倍になることも珍しくありません。
下の図は、架空の教育用データ(架空戦略A:200取引・勝率46%・平均利益+1.9%・平均損失−1.3%、いずれも資産比の架空値)について、元の取引順序と、順序だけを入れ替えた3つの道筋を重ねたものです。最終資産の水準(口座指数158付近)はほぼ同じでも、途中の谷の深さがまったく違うことが読み取れます。順序シャッフルは合計損益を変えないため、純粋に「並びの運」だけを比較できます。
この「谷の深さの分布」を扱えるかどうかが、堅牢性検証の分かれ目です。最大ドローダウンそのものの読み方は最大ドローダウンと回復期間の解説記事で、プロフィットファクターや期待値など基礎指標はバックテスト結果の見方(基礎指標)で補えます。
代表的な3つの方法:シャッフル・ブートストラップ・ストレス
モンテカルロと一口に言っても、何を変えているかで意味が変わります。実務でよく使う3系統を区別しておきましょう。混同すると結果の解釈を誤ります。
① 順序シャッフル(並び替え)
元の取引を重複なく並び替えます。取引の集合は変わらないので合計損益は一定で、変わるのは順番だけです。したがって見るべきは「途中の最大ドローダウンや連敗が並び次第でどこまで悪化するか」です。最終資産の分布は狭く、ドローダウンの分布が主役になります。
② ブートストラップ(復元抽出)
元の取引から重複を許してランダムに抽出し、新しい取引列を作ります。同じ勝ちが何度も選ばれたり、大きな負けが一度も選ばれなかったりするため、取引の構成そのものが変わり、最終損益もばらつきます。標本が小さいときの不確実性や、外れ値取引への依存度を見るのに向いています。
③ ストレス(損益・コストへの負荷)
各取引の損益にスプレッド・手数料・スリッページ相当の負荷を上乗せしたり、利益をわずかに割り引いたりして、コスト前提が厳しくなった場合の悪化を見ます。コスト感度の詳細はスプレッド・手数料・スリッページの反映方法で扱っています。ストレスとモンテカルロを組み合わせると、「並びが悪く、かつコストも重い」複合シナリオまで確認できます。
| 方法 | 変えるもの | 最終損益 | 主に見る指標 | 向いている問い |
|---|---|---|---|---|
| 順序シャッフル | 並び順のみ | ほぼ一定 | 最大DD・連敗 | 並びの運に助けられていないか |
| ブートストラップ | 取引の構成 | ばらつく | 最終資産・裾 | 標本の偏り・外れ値依存はないか |
| ストレス | 損益・コスト | 下方向へ移動 | 期待値の減衰 | コスト前提が厳しいと崩れないか |
手元のCSVで、この分布を実際に描いてみる
ここまでの順序シャッフルとブートストラップは、TradingView バックテスト分析ラボにCSV/XLSXを読み込めば無料でそのまま試せます。パーセンタイル帯と最大DDの分布を自分の取引データで確認しましょう。
結果分布の読み方:中央値・パーセンタイル・最大DD・連敗
ブートストラップで数千の道筋を生成すると、最終資産や最大ドローダウンが1つの値ではなく分布になります。ここで役立つのがパーセンタイルです。中央値(50パーセンタイル)は「真ん中の道筋」、5パーセンタイルは「悪い方から数えて20本に1本」の水準を表します。良い方の裾(95パーセンタイル)だけでなく、悪い方の裾(5パーセンタイル)を主役として読むのがリスク検証の要点です。
数値としてまとめると、下の表のようになります。最終資産だけでなく最大ドローダウンと最大連敗数の分布を並べて見るのがポイントです。中央値が良好でも、P95の最大ドローダウンや最悪連敗が資金計画に対して大きすぎれば、そのまま採用するのは早計です。
| 指標 | P5(悪い裾) | P25 | 中央値 | P75 | P95(良い裾) |
|---|---|---|---|---|---|
| 最終資産(口座指数) | 118 | 141 | 158 | 176 | 203 |
| 最大ドローダウン | −12% | −15% | −18% | −24% | −31% |
| 最大連敗数 | 4 | 5 | 6 | 8 | 11 |
表の見方:最大ドローダウンと最大連敗はP95が「悪い側」です(値が大きいほど厳しい)。最終資産はP5が「悪い側」です。指標によって裾の向きが逆になる点に注意してください。数値はすべて架空の教育用データです。
破産確率(リスクオブルイン)の定義と読み方
破産確率(リスクオブルイン)は、「運用を続けられなくなる状態に一度でも到達する道筋の割合」です。ここで最重要なのが「破産」の定義です。多くの人は残高ゼロを想像しますが、実務ではもっと手前で運用停止になります。そこで、開始資金比で任意の損失閾値を「破産」と定義し、その閾値に触れた道筋の割合を数えます。閾値を明示しない破産確率は意味を持ちません。
本記事では「破産」を「口座資産が開始比で指定した損失閾値に一度でも到達した状態」と定義します(例:閾値−25% は口座指数75、閾値−40% は指数60)。残高ゼロだけを破産とはしません。破産確率は、この閾値に触れた道筋の本数 ÷ 全道筋の本数です。閾値を変えれば確率も変わります。
破産閾値と最大ドローダウンは似て非なるものです。最大ドローダウンは「最終的にどれだけ深く沈んだか」を測る事後的な値、破産閾値は「そこに触れたら運用終了」という事前に引いた水平線です。下の図はこの違いを示します。ある道筋の最大ドローダウンが閾値より浅ければ生存、閾値を割り込めば破産としてカウントされます。
閾値ごとの破産確率を並べると、閾値を深くするほど確率は下がります。架空戦略Aの例では、閾値−25%で約8%、閾値−40%で約1.5%です(いずれも架空の教育用データ)。この数字が「許容できるか」は資金計画と運用ルール次第であり、普遍的な合否ラインは存在しません。だからこそ「この確率なら安全」「必ず大丈夫」といった断定は避け、複数の閾値でシナリオを比較する読み方をします。
| 破産の定義(開始比) | 口座指数の閾値 | 閾値に触れた割合(破産確率) |
|---|---|---|
| −15% で運用停止 | 85 | 約24% |
| −25% で運用停止 | 75 | 約8% |
| −40% で運用停止 | 60 | 約1.5% |
連敗確率と資金配分の考え方
連敗は破産確率と密接に関係します。1回のバックテストで観測された最大連敗(たとえば7連敗)は、起こり得た連敗の一例にすぎません。モンテカルロで連敗数の分布を取ると、架空戦略Aでは中央値6連敗に対し、95パーセンタイルで11連敗、最悪ケースで14連敗まで伸びました(架空の教育用データ)。つまり「観測された最大連敗の1.5〜2倍程度は起こり得る」という感覚を持っておくと、資金配分の余裕を見積もりやすくなります。
連敗が資金に与える影響は1取引あたりのリスク量で決まります。ここでは特定のロットや「最適な」リスク割合を推奨しません。あくまでシナリオ比較として、1取引あたりのリスクを変えたときに、同じ連敗が来た場合の資産の目減りがどう変わるかを並べます。実際の損失額の試算にはFX・CFDロット計算機が役立ちます。
| 1取引あたりリスク | 6連敗時のおおよその目減り | 11連敗時のおおよその目減り |
|---|---|---|
| 0.5% | 約 −3% | 約 −5% |
| 1.0% | 約 −6% | 約 −10% |
| 2.0% | 約 −11% | 約 −20% |
この表は「どのリスクなら勝てる」を示すものではなく、同じ連敗でもリスク量で耐久力がまったく変わることを見るための比較です。破産確率の表(表3)と併せて、自分の許容できる谷の深さから逆算してシナリオを選ぶ、という読み方をします。
教育用ミニシミュレーターで分布を体感する
ここまでの分布を、固定シードの教育用シミュレーターで手を動かして確かめられます。平均勝ち・平均負け・勝率・取引数・反復回数を入力すると、ブラウザ内だけで複数の道筋を生成し、中央値・5/95パーセンタイル・最大ドローダウン中央値・破産確率(閾値−25%)を計算します。入力値や結果はネットワークに送信されません。実運用の推奨値ではなく、あくまで分布の感覚をつかむ教材です。
JavaScriptが無効な場合の静的な計算例:平均勝ち+1.9%・平均負け−1.3%・勝率46%・200取引・反復2,000回(架空の教育用データ)では、最終資産の中央値が口座指数158、5パーセンタイルが118、95パーセンタイルが203、最大ドローダウンの中央値が−18%、閾値−25%の破産確率が約8%になります。これは表2・表3と同じ例です。以下の対話ツールは、この静的例を出発点に入力を変えて分布を再計算します。
固定シードのミニ・モンテカルロ(教育用)
反復回数を100から2,000へ増やすと、中央値はほとんど動かない一方で、P5や破産確率のような裾の指標が徐々に安定していくのが分かります。これが「裾を読むには反復を増やす」という原則の体感です。ただし取引数を極端に減らすと、いくら反復しても分布の幅が広いままになる点も確認できます。
読み方を4ステップで
前提を確認
元データの品質・コスト仮定・破産閾値を先に決める。定義が曖昧なままの数値は読まない。
中心を見る
中央値で「真ん中の道筋」の水準を把握。ここは楽観にも悲観にも寄らない基準点。
悪い裾を見る
P5・最大DDのP95・最悪連敗・破産確率で、耐えるべき谷の深さを確認する。
資金と照合
その谷でも継続できる資金配分かをシナリオ比較。特定ロットの推奨ではなく複数案で検討。
モンテカルロの前提と限界
モンテカルロは強力ですが万能ではありません。読み違えないために、前提と限界を明示しておきます。
- 独立同分布(IID)の仮定: 単純なシャッフルやブートストラップは各取引が独立で同じ分布から来ると仮定します。実際の取引にトレンド依存やクラスタリングがあると、この仮定は崩れ、分布が楽観的になり得ます。
- 定常性の仮定: 過去の損益分布が将来も続くとは限りません。相場のレジームが変われば、過去データから作った分布はそのまま将来に当てはまりません。レジームやアウトオブサンプルの検証はウォークフォワード分析とOOS検証で補完します。
- 少数サンプル: 元の取引数が少ないと標本自体が偏り、再抽出しても不確実性が大きいままです。数十件程度のデータで裾を断定するのは危険です。
- 過剰最適化との関係: 最適化で膨らんだ成績をそのままモンテカルロにかけると、分布ごと楽観に偏ります。パラメータ安定性の確認は過剰最適化を防ぐ方法(パラメータ安定性)を参照してください。
モンテカルロの出力は「入力した損益データと仮定の写し鏡」です。元データが甘ければ分布も甘くなります。手法を過信せず、コスト・データ品質・アウトオブサンプルとセットで読むことが、順序リスク検証を実務に生かす前提です。
実務チェックリストとSG Groupラボでの手順
最後に、モンテカルロを使う前後で確認したい項目と、SG GroupのラボでのCSVからの操作導線をまとめます。
読む前のチェックリスト
- 元データの品質は十分か(取引数、期間、欠損、重複、外れ値の有無)。
- スプレッド・手数料・スリッページなどのコスト仮定を反映済みか。
- 破産の閾値を事前に定義したか(−15%/−25%/−40% など複数で比較)。
- 順序リスクを見るのか(シャッフル)、標本の不確実性を見るのか(ブートストラップ)を目的で使い分けたか。
- 裾の指標(P5・最大DDのP95・最悪連敗・破産確率)が反復回数で安定しているか。
ラボでの操作導線
- 読み込み: TradingView Strategy TesterのエクスポートCSV/XLSX、または汎用CSVを列マッピングで読み込む。
- 基本分析: 主要KPI・エクイティ/ドローダウンで全体像を把握する。
- Monte Carlo: 順序シャッフルとブートストラップでパーセンタイル帯と最大DD分布を確認する。
- Risk of ruin: 破産閾値を複数設定し、閾値ごとの破産確率と連敗分布を読む。
- Stress: コスト・損益への負荷を加え、複合シナリオでの悪化を確認する。
保存して後から比較したい、戦略バージョンを並べたい、リターン分布やドローダウンをさらに深掘りしたい、という段階になればProの機能が、ウォークフォワードやパラメータ安定性、複数戦略ポートフォリオまで進めたい場合はPremiumの機能が対応します。まずは無料版で基本分析からモンテカルロ・破産確率・ストレスまで一通り試すのが出発点です。
破産閾値を変えながら、破産確率を読んでみる
本記事のシミュレーターは概念の体感用です。実際の取引CSVで閾値ごとの破産確率・連敗分布・ストレス結果を確認したいときは、無料の分析ラボへ。保存や戦略比較が必要になればProやPremiumを段階的に検討できます。
よくある質問(FAQ)
モンテカルロ分析は未来予測ですか?
いいえ、未来予測ではありません。観測済みの取引結果を並び替えたり再抽出したりして、同じ実力なら結果がどのくらいばらつき得るかを記述的に示す手法です。将来の相場が過去と同じ分布に従う保証はないため、出力はあくまで前提の範囲内での分布であり、期待値やドローダウンの幅を確定させるものではありません。
取引順序をシャッフルする意味は何ですか?
同じ勝ち負けの集合でも、負けが連続する順番か分散する順番かで途中の最大ドローダウンは大きく変わるためです。順序シャッフルでは最終的な損益合計は変わりませんが、道中の資産推移と最大ドローダウンの分布を見ることで、たまたま良い並びに助けられていないかを確認できます。
ブートストラップとシャッフルは何が違いますか?
シャッフルは元の取引を重複なく並び替えるため最終損益が一定で、順序の影響だけを見ます。ブートストラップは元の取引から重複を許して再抽出するため、取引の構成自体が変わり最終損益もばらつきます。順序リスクを見るならシャッフル、標本のばらつきや小サンプルの不確実性を見るならブートストラップが向いています。
破産確率の「破産」はどの状態を指しますか?
破産の定義は残高ゼロに限りません。運用停止に相当する任意の損失閾値、たとえば開始資金比マイナス25%やマイナス40%に一度でも到達した状態を破産とみなすのが一般的です。閾値をどこに置くかで確率は大きく変わるため、数値を読む前に必ず定義を確認してください。
何回シミュレーションすれば十分ですか?
中央値のような中心の指標は数百回でも安定しますが、5パーセンタイルや破産確率のような裾の指標は反復を増やすほど推定が安定します。反復回数を段階的に増やして裾の数値が動かなくなるかを確認するのが実務的で、元の取引数が少ない場合は反復を増やしても不確実性が残る点に注意します。
連敗数はどのように読みますか?
1本のバックテストで観測された最大連敗は多くの起こり得た連敗の一例にすぎません。モンテカルロで連敗数の分布を見て、95パーセンタイルや最悪ケースがどこまで伸びるかを確認します。運用中にその連敗が来ても継続できる資金配分かどうかをシナリオとして比較する材料にします。
取引回数が少なくても使えますか?
使えますが解釈には注意が必要です。取引数が少ないと元の標本自体が偏りやすく、再抽出しても不確実性が大きいままです。サンプルが小さいときは分布の幅を広めに受け止め、断定を避けて追加データやアウトオブサンプル検証と併用してください。
無料版でモンテカルロは何回使えますか?
SG GroupのTradingViewバックテスト分析ラボでは、無料版でもモンテカルロ・破産確率・ストレステストを利用できます。回数の扱いは変更される場合があるため、最新の提供範囲はプランページで確認してください。保存や戦略比較、より深い分布分析が必要になった段階でProやPremiumを検討する流れです。
免責事項
本記事は、読み込んだバックテストデータに対する記述的な分析・可視化の考え方を教育目的で解説するものであり、投資助言・売買シグナル・将来予測・利益保証ではありません。掲載した数値・図表・表はすべて架空の教育用データであり、実在の成績・利用者数・成約率を示すものではありません。バックテストの結果は将来の成績を保証せず、前提・データ品質・コスト・相場環境が変われば結論も変わります。特定の銘柄・ロット・パラメータの推奨は行いません。SG Groupの機能・無料範囲・料金は変更される場合があるため、最新情報はプランページでご確認ください。TradingViewの名称・UI・仕様は各社に帰属し、提携・公認・推奨関係を示すものではありません。

