見出し画像

【Python】株式・ETFの積立投資(DCA)シミュレーターを無料公開!一括投資との比較も検証可能【Jupyter / Google Colab対応】

「もし過去5年間、毎月S&P500や日本株ETFを定額積立していたらどうなっていたか?」 「一括投資した場合と比べて、どちらのパフォーマンスが良かったのか?」

資産運用を考える際、このような疑問を持つ方は多いのではないでしょうか。

今回、Yahoo Financeの実株価データ(yfinance)を取得し、定額積立(ドルコスト平均法:DCA)と一括投資のパフォーマンスを比較・可視化できるPythonスクリプト(Notebook形式)を作成しました。

ファイルをダウンロードしてGoogle Colabやご自身のJupyter Notebook環境で読み込むだけで、誰でも簡単に好きな銘柄・条件でシミュレーションを実行できます。本記事では使い方とコード全文を無料公開します!

💡 このツールでできること


「4分割の比較グラフ(資産推移やリターン比較)
  1. 任意銘柄のシミュレーション

    • 日本株・日本ETF(例: 1306.T)、米国株・米国ETF(例: SPY, VOO, AAPL)、暗号資産(例: BTC-USD)など、Yahoo Financeで取得できるあらゆる銘柄に対応。

  2. フレキシブルな条件設定

    • 積立頻度(毎月 / 毎週 / 毎日)、積立額、手数料率を自由に変更可能。

  3. 一括投資との比較&グラフ可視化

    • 同期間・同額を一括投資した場合の推移と比較し、4つの観点(株価と積立点・資産推移・平均取得単価・リターン率)で日本語グラフを出力。

  4. 異常値フィルタリング機能

    • データ取得時の不自然なスパイク(誤データ)を自動補正するクレンジングロジック(ローリング中央値判定)を標準搭載。

🚀 動作環境と使い方

本ツールは Google Colab または ローカルのJupyter Notebook(JupyterLab) で動作します。

実行手順

  1. Notebookファイル(.ipynb)の準備

    • 下記のソースコードをダウンロードします。

  2. Google Colabで実行する場合

    • Google Colab にアクセスし、ファイル > ノートブックをアップロード から作成した .ipynb ファイルを選択して実行します。

  3. ローカルのJupyter Notebookで実行する場合

    • ご自身のPython環境でJupyterを起動し、ファイルを読み込んで実行します。必要なライブラリ(yfinance, japanize-matplotlib 等)は、スクリプトの最初のセルを実行すると自動的にインストールされます。

⚙️ 条件設定のやり方(セクション2)

実行時、セクション2にある DCAConfig のパラメータを書き換えることで、お好みの銘柄や期間に変更できます。

#Python

@dataclass
class DCAConfig:
    ticker: str = "1306.T"          # 銘柄コード(日本株は末尾に .T)
    start_date: str = "2020-01-01"   # 積立開始日
    end_date: str | None = None      # 終了日(Noneで最新まで)
    amount: float = 5000             # 1回あたりの積立額(円/ドル)
    frequency: Literal["M", "W", "D"] = "M"  # M=毎月 / W=毎週 / D=毎日
    fee_rate: float = 0.00080        # 手数料率(0.0008 = 0.08%)

ソースコードのダウンロード

🛠 本格的なバックテスト・売買検証を行いたい方へ

今回配布した無料ツールは、「一定額を機械的に買い続けるインデックス積立(ドルコスト平均法)」の検証を目的としたものです。

しかし、実際の株式投資やトレードにおいては、以下のような疑問や課題が出てくるのではないでしょうか?

  • RSIが30以下になった売られすぎのタイミングだけで買いたい」

  • ボリンジャーバンドの-2σで逆張り買いし、+2σに達したら利益確定したい」

  • 「過去何年分のデータで勝率・プロフィットファクター・最大ドローダウンを検証したい」

このように、テクニカル指標を用いた売買シグナル検証や、売買タイミングに応じた本格的なバックテストを行いたい方向けに、上位版の「テクニカル分析&株取引シミュレーター」を有償公開しています。

🔻 有償版シミュレーターの特徴

  • RSI・ボリンジャーバンド・MACD・移動平均線などのテクニカル指標を組み込んだシグナル検証

  • 売買エントリー&エグジットのバックテスト自動計算

  • 詳細なトレードレポート出力機能(損益比、勝率、資金推移グラフの生成)

過去データに基づいたトレード戦略の構築やバックテストを行いたい方は、ぜひ以下の有料記事もご覧ください!

👉 [【Python】株取引バックテスト&シミュレーター(有料版)はこちら]

※本シミュレーターは過去データに基づく参考計算です。将来の運用成果を保証するものではありません。投資判断はご自身の責任にて行っていただきますようお願いいたします。


いいなと思ったら応援しよう!

Ikeda | 個人開発エンジニア よろしければ応援お願いします! いただいたチップはクリエイターとしての活動費に使わせていただきます!