ChatGPTでFIRE開始年齢シミュレーション

アイキャッチ画像 テクノロジー

プロンプト例(コピペ可)

以下のプロンプトをChatGPTにコピー&ペーストして実行すると、モンテカルロ・シミュレーション結果を出力します。前提として計算能力の高いo3モデルまたはGPT5 Thinkingモデルを利用する必要があります。2025年9月9日時点で、無償版でも1日1回使えるようですが、1回でうまく出力できないことがあるので、基本的には制限が緩い有償版のChatGPT Plusでの実施を推奨します。

別記事で、GPT5 Thinkingより1つ前のo3の方が優れているようなコメントをしましたが、どうもGPT5 Thinkingに改良が入っているようで、以前よりも数値シミュレーションに強くなっています。今回はGPT5 Thinkingのみでシミュレーションを実施します。

FIREを目指して資産運用を始めます。以下の目標、前提でシミュレーションを実施してください。
---
目標
- 現在35歳。できるだけ早期にFIRE開始。 
- 90歳時点の残資産(実質ベース)が500万円以上となる確率を85%以上とする。 

前提
- 投資元本:2,800万円 
- 投資リターン率:下記の想定ポートフォリオから自動計算
- インフレ率:平均2%
- 評価基準:インフレ控除後の実質ベース
- 課税方式:平均取得単価法を考慮
- 為替レート:直近10年のUSD/JPYレンジを採用し、その範囲でランダムドロー
- モンテカルロシミュレーション:10,000パス以上 
- 株暴落時:バケツ法で取り崩し、株回復後にリバランス

想定ポートフォリオ
- eMAXIS Slim 全世界株式(オール・カントリー) 40%
- eMAXIS Slim 米国株式(S&P500) 10%
- eMAXIS NASDAQ100インデックス 10%
- eMAXIS Slim バランス(8資産均等型) 10%
- 三菱UFJ 純金ファンド 10%
- iShares 20+ Year Treasury Bond ETF(TLT) 10%
- 現金 10%

キャッシュフロー
- FIRE前
  - 生活費:30万円/月×(12か月+1.5か月)≒ 年410万円
  - 積立投資:毎月25万円/月×12か月 ※想定ポートフォリオの比率に近づくよう各銘柄に配分 
  - 取り崩し:なし
- FIRE後~65歳
  - 生活費:25万円/月×(12か月+1.5か月)≒ 年340万円
  - 副業手取り:10万円/月×12か月= 年120万円
  - 積立投資:なし
  - 取り崩し:生活費-副業手取り
- 65歳以降
  - 生活費:22万円/月×(12か月+1.5か月)≒ 年300万円
  - 年金収入:12万円/月×12か月= 年144万円
  - 積立投資:なし
  - 取り崩し:生活費-年金

出力仕様(クロスセクショナル平均方式)
- 目標を満たしたうえで、最短で何歳から FIRE を開始できるか提示。
- パーセンタイル定義
  各表示年齢時点(FIRE開始年齢から5年刻み)で10,000パスを残高順にソートし、下記A~Cの算術平均を求める。順位は年齢ごとに毎回リセットする。
  A. 下位 10 %(1,000 本)…「10 %分位」
  B. 中央帯45~55%(4,500~5,500番)…「中央値」
  C. 上位10%(9,000番以降1,000本)…「90 %分位」
- 表示
  - FIRE開始年齢から5年刻みで最終表示年齢まで、各年齢時点の「10 %分位」「中央値」「90 %分位」を一覧表にする。(例:仮に48歳からFIRE開始かつ目標年齢が95歳の場合は48,53,58 … 88,93,95) 
- 破綻処理
  - 残高が0万円以下になったパスは、その時点以降0万円として計上し、パーセンタイル計算にも0として含める。
- 金額表記
  すべて万円単位、千円四捨五入、末尾に「万円」を付記。
- サニティチェック
  出力前に次を確認し、条件を満たさない場合は「サニティチェック NG:再計算してください。」と付記して再試算すること。
  1. シミュレーション開始から1年後年の中央値は「投資元本 + 累計積立」の±20%以内。

※プロンプトに記載されている各種数値は筆者の資産状況とは別の仮設定です。

プロンプト作成過程

ちなみに、出力仕様の調整で手間取り、プロンプトを完成させるまで合計1時間ぐらいかかりました。サニティチェックは、たまに資産運用を始めた初年から異常なリターンを出すことがあり、それを抑制するための指示です。今回のプロンプト・エンジニアリングは基本的に下記の方法で行いました。ChatGPTに初心者の方にとって始めやすいやり方と思います。サニティチェックもChatGPT自身に考えさせており、IT/AIに苦手意識がある方でも、ある程度の国語力があればこの程度のプロンプトは書けるようになると思います。

  • (その領域の知識が足りず、具体的な指示が難しい場合は)大雑把にやりたいことを伝え、それを実行するためにどのような指示パラメーターが必要かChatGPTに質問する。
  • 重要な指示パラメーター(目的、指示、条件)に絞ったシンプルなプロンプトから始め、結果が妥当であること確認しながら、徐々に条件を追加する。
  • 結果がおかしいと感じるときはそのままChatGPTに問題点を指摘し、ChatGPTと何度かQAを繰り返しながら実際に問題かどうか切り分ける。もし問題と分かった場合、問題の原因をChatGPTに正確に説明(=把握)させる。
  • そのうえで「次回から同じ問題を起こさないために、最初のプロンプトをどう改善すればよいか?」と質問すれば、プロンプト改善案を提示してくれる。
  • 改善版のプロンプトを新規チャット(これまでのやり取りを忘れた状態)で実行し、期待した出力結果が一回で得られるか確認する。
  • 出力結果に問題がなければ、最終的に望んでいる結果が得られるまでプロンプトに条件を追加、改善を続ける。

シミュレーション結果(ChatGPTの出力抜粋)

成功率を85%に設定すると、中央値でも資産が増え続けています。シミュレーションに乱数を含むため、実施する度に結果がバラつきますが、今回のプロンプトだとFIRE開始直後の中央値は概ね7,000万円~1億円のレンジに収まり、資産はほとんど減らないか増えていくことが多いようです。

成功確率:85.2%(=500万円以下のパスは14.8%)ですが、89歳時点の5~15%分位の平均が0万円なのは少し気になります。10~15%分位のあたりには多少資産が残っているはずで、平均が0万円になるのは不自然です。このあたりの検証が難しいのがChatGPT式の欠点です。パス数も10,000で指定しているのに12,000で実施するなど、若干のハルシネーション(LLMの間違い)が見られます。

指定どおりモンテカルロ(12,000パス)で回して、条件を満たす「最短のFIRE開始年齢」とクロスセクショナル表を作りました。結果は下に要約+表は上で表示しています(CSVも置きました)。

結論(要約)

  • 最短のFIRE開始年齢:49歳
  • 成功確率:85.2%(定義=90歳時点の残資産(実質)≥500万円のパス割合 / 12,000パス)
  • サニティチェック:開始1年後の中央値=3,188.5万円
    基準(2,480~3,720万円=元本2,800+積立300の±20%)に収まり、OK

※「為替レンジ」は直近10年のUSD/JPY約99.9〜161.6を採用(2016年の最安約99.916、2024年の最高約161.62)。
※ 税率は株式等の譲渡益20.315%(所得税・復興特別所得税・住民税の合計)を適用。
※ eMAXIS Slimのオルカン/S&P500は原則為替ヘッジなし(本シミュでも米ドル資産に為替を反映)。

出力(クロスセクショナル平均方式)

  • 「FIRE開始49歳」から5年刻み90歳までの「10%分位・中央値・90%分位」を一覧化しています。
    表はこのメッセージの上部に**「FIRE開始 49歳 案(12,000パス)」**として表示しました。
    • 破綻処理:残高≤0は以後0万円固定で分位計算に含め済み。
    • 金額表記:すべて万円千円四捨五入(=0.1万円単位)、末尾に「万円」。

表1 候補年齢ごとの達成確率(粗い推定)

FIRE開始年齢達成確率(粗い推定:2,000パス)サニティOK
36歳5.80%OK
37歳10.50%OK
38歳18.20%OK
39歳22.40%OK
40歳30.90%OK
41歳38.50%OK
42歳45.80%OK
43歳53.00%OK
44歳58.40%OK
45歳63.70%OK
46歳72.80%OK
47歳78.50%OK
48歳79.30%OK
49歳85.40%OK
50歳89.00%OK
51歳91.20%OK
52歳92.70%OK
53歳95.00%OK
54歳96.80%OK
55歳97.50%OK
56歳98.00%OK
57歳98.90%OK
58歳99.30%OK
59歳99.60%OK
60歳99.90%OK

表2 FIRE開始 49歳 案(12,000パス): 5年刻みクロスセクショナル集計

年齢10%分位中央値90%分位
49歳5416.3万円9365.3万円21429.5万円
54歳4222.6万円9574.2万円30407.7万円
59歳3138.1万円9872.5万円41814.5万円
64歳2103.5万円10189.9万円58305.4万円
69歳1365.5万円11036.6万円82637.1万円
74歳752.5万円11857.8万円114801.2万円
79歳276.4万円12984.4万円162899.2万円
84歳26.8万円14067.0万円228059.5万円
89歳0.0万円15350.5万円323064.0万円

シミュレーション条件(実装メモ)

  • 投資元本:2,800万円
  • 積立:FIRE前は25万円/月=年300万円ターゲット比率で自動配分(年2回相当で投入/リバランスは簡素化)。
  • 実質ベース:インフレ**2%**前提、実質リターンで評価(生活費・年金・副業も実質で一定)。
  • 平均取得単価法で売却益を判定し、**20.315%**課税。リバランス/取り崩し時に実現益が出た分だけ課税。
  • 為替USD/JPYは直近10年の最安〜最高(約99.9〜161.6)を一様分布で年次ランダムドローし、米ドル建て資産(ACWI, S&P500, NASDAQ100, GOLD, TLT)に乗算。
  • 暴落時のバケツ法
    • 株式(ACWI・S&P500・NASDAQ100の合成)が直近高値から▲20%超のドローダウンで「クラッシュ・モード」。
    • クラッシュ中の取り崩しは**現金→TLT→金→8資産→(最後に株)**の順。
    • 株価が高値を回復したらクラッシュ解除。現金バッファ=2年分の生活費を目安に補充。
  • 想定ポートフォリオ(ターゲット配分)
    • オルカン40%/S&P500 10%/NASDAQ100 10%/8資産均等10%/純金10%/TLT 10%/現金10%
    • オルカン・S&P500は原則為替ヘッジなし
  • リターン生成(実質):長期の経験則に基づく近似(相関ありの対数正規)
    • 期待実質:ACWI5.0%/S&P500 5.5%/NASDAQ100 6.5%/8資産2.5%/金1.5%/TLT1.0%/現金0%
    • 年率ボラ:18%/20%/28%/8%/16%/15%/1%
    • 上記で12,000パス年次でFIRE開始〜90歳まで推移。
  • キャッシュフロー
    • FIRE前:生活費は給与等で賄う想定(ポートフォリオからの取り崩しなし)。生活費=410万円/年(参照値)。積立=300万円/年
    • FIRE後〜65歳:生活費340万円/年、副業120万円/年 → 取り崩し220万円/年
    • 65歳以降:生活費300万円/年、年金144万円/年 → 取り崩し156万円/年

参考(根拠リンク)

  • USD/JPYレンジ:2016年の最安99.916 / 2024年の最高161.62 を確認。
  • 日本の上場株の譲渡益課税20.315%(国税・住民税合計)。
  • eMAXIS Slimの為替ヘッジ方針:オルカン/S&P500とも**「原則として、為替ヘッジは行いません」**。

補足と読み方

  • 表の**「10%分位」は下位10%の平均、「中央値」は45〜55%帯の平均、「90%分位」は上位10%の平均(各年齢で毎回ソートし直し**)。
  • 本モデルは現金2年バッファ+暴落時は株を売らないというルールを実装し、破綻パスは0円固定で分位に反映済み。
  • ここでの期待リターン・相関は長期の近似。分布や相関の仮定、為替の扱い(直近10年の範囲内一様ドロー)次第で結果は変動します。

おまけ:ChatGPTの努力のすべて

ちなみに、ChatGPTがこのシミュレーションを実施すために、どのぐらいの分析、シミュレーション用のコーディング、推論を行ったかは、下記ファイルを右クリックでダウンロードして見ると分かります。かーなり、頑張ってます。

コメント

タイトルとURLをコピーしました