今回はドルコスト平均法による
積立投資のシミュレーションです
解説動画はこちら
ドルコスト平均法とは
購入できる購入数量を算出して
2025年の最後の価格で
どれだけのリターンになっているかを算出します。
この価格推移のデータ上では
年平均8%超
7年で二倍近くの運用成績になっています。
今度は開始年から終了年までの
リターンヒートマップを出してみましょう。
開始と終了年を設定して
開始終了までのリターンを算出します。

年単位だとどの年で買って売っても
プラスにはなっているようです。
まとめ
ただし、月単位だと乱高下があり
損する場合も有ったので、やはり長期積立で
見守るのが良いのではないかと思われます。
投資は自己判断で行うことが大切です。
その金融商品の良し悪しを判断し
投資するかどうかは人に言われるでなく
自分自身の判断で行うのが重要です。
投資判断を行うための材料作りとして
プログラムを用いたシミュレーションは
かなり役に立ちます。
データさえあればシミュレーションでき
結果の良し悪しから
投資判断の材料に使えるようになると思うので
プログラミングが出来るようになっていると
すぐに試すことができるのでお勧めです。
投資 x プログラミング
というテーマを今後も取り扱っていくので
両方できるようになりたい方は
要チェックしてみてください。
それでは
積立投資のシミュレーションです
解説動画はこちら
ドルコスト平均法とは
価格が変動する金融商品に対して
一定金額を定期的に購入していく投資方法のことです
一定金額を定期的に購入していく投資方法のことです
S&P500指数(配当込み、円換算ベース)に
連動する運用成果を目指す投資信託
2018年7月3日に設定された商品です。
今回はこのデータを用いて
シミュレーションをしていきます。
価格のデータを定義して
価格推移をだしてみます。

良い感じに右肩上がりのようですが
この商品を毎月10万円ずつ積み立てたらどうなっていたでしょうか
毎月10万円今回はこのデータを用いて
シミュレーションをしていきます。
eMAXIS Slim 米国株式 S&P500の価格推移
価格のデータを定義して
価格推移をだしてみます。
import numpy as np import pandas as pd import plotly.express as px import seaborn as sns import matplotlib.pyplot as plt # データ定義 data = { 2018 : [0,0,0,0,0,0,10038,10458,10709,11051,10188,10468], 2019 : [8809,9854,10408,10565,10900,10031,10725,10978,10491,10890,11106,11680], 2020 : [11873,11892,10825,9474,10655,11205,11465,11886,12707,12182,11767,12989], 2021 : [13339,13407,14010,15217,15754,15924,16540,16712,17301,16677,18267,18005], 2022 : [19291,18130,17601,19347,18798,18658,18052,19265,19394,18280,20283,19728], 2023 : [17690,18714,19167,19388,20234,20666,22867,23260,23411,22911,22677,24155], 2024 : [24154,25486,27473,28563,28573,29833,31693,29763,29789,29974,31336,32768], 2025 : [33928,34065,32500,30512,28931,30867] } records = [] for year, prices in data.items(): for month_idx, price in enumerate(prices): month = month_idx + 1 if price == 0: continue date_str = f"{year}-{month:02d}-01" date = pd.to_datetime(date_str) records.append({"Date": date, "Price": price}) df = pd.DataFrame(records) df = df.sort_values("Date") # Plotlyでプロット fig = px.line(df, x="Date", y="Price", title="Emaxis Slim value") fig.show()

良い感じに右肩上がりのようですが
この商品を毎月10万円ずつ積み立てたらどうなっていたでしょうか
2018年から2025年まで毎月積み立てた際のシミュレーション
購入できる購入数量を算出して
2025年の最後の価格で
どれだけのリターンになっているかを算出します。
monthly_investment = 100000 # 毎月XX万円 # シミュレーション開始 total_units = 0 # 累計購入数量 total_invested = 0 # 累計投資金額 for year in sorted(data.keys()): for month_idx, price in enumerate(data[year], 1): if price == 0: continue units_bought = monthly_investment / price total_units += units_bought total_invested += monthly_investment latest_year = max(data.keys()) latest_price = data[latest_year][-1] current_value = total_units * latest_price profit = current_value - total_invested roi = (current_value / total_invested - 1) * 100 # 結果表示 print(f"総投資額: {total_invested:,.0f}円") print(f"最終評価額: {current_value:,.0f}円") print(f"損益: {profit:,.0f}円") print(f"累計購入数量: {total_units:.4f}口") print(f"リターン: {roi:.2f}%") total_return = (100 + roi) / 100 years = 8 cagr = (total_return ** (1 / years)) - 1 print(f"年平均リターン: {cagr * 100:.2f}%")
総投資額: 8,400,000円
最終評価額: 16,458,895円
損益: 8,058,895円
累計購入数量: 533.2198口
リターン: 95.94%
年平均リターン: 8.77%
この価格推移のデータ上では
年平均8%超
7年で二倍近くの運用成績になっています。
ターンヒートマップ
今度は開始年から終了年までの
リターンヒートマップを出してみましょう。
開始と終了年を設定して
開始終了までのリターンを算出します。
years = list(data.keys()) monthly_invest = 100000 results = pd.DataFrame(index=years[:-1], columns=years[1:]) for start in years[:-1]: for end in years[years.index(start)+1:]: total_invest = 0 total_units = 0 for y in range(start, end+1): for price in data[y]: if price == 0: continue units = monthly_invest / price total_units += units total_invest += monthly_invest # 最後の年の最後の価格で評価額計算 final_price = [p for p in data[end] if p != 0][-1] final_value = total_units * final_price return_pct = (final_value - total_invest) / total_invest * 100 results.loc[start, end] = return_pct # ヒートマップ描画 results = results.astype(float) plt.figure(figsize=(10, 7)) sns.heatmap(results, annot=True, fmt=".2f", cmap="coolwarm", center=0) plt.title("dollar cost averaging method return heatmap (%)") plt.xlabel("end year") plt.ylabel("start year") plt.show()

年単位だとどの年で買って売っても
プラスにはなっているようです。
まとめ
eMAXIS Slim 米国株式 S&P500のドルコスト平均法による積み立ては
年単位での運用であればマイナスは無いようです。
年単位での運用であればマイナスは無いようです。
ただし、月単位だと乱高下があり
損する場合も有ったので、やはり長期積立で
見守るのが良いのではないかと思われます。
投資は自己判断で行うことが大切です。
その金融商品の良し悪しを判断し
投資するかどうかは人に言われるでなく
自分自身の判断で行うのが重要です。
投資判断を行うための材料作りとして
プログラムを用いたシミュレーションは
かなり役に立ちます。
データさえあればシミュレーションでき
結果の良し悪しから
投資判断の材料に使えるようになると思うので
プログラミングが出来るようになっていると
すぐに試すことができるのでお勧めです。
投資 x プログラミング
というテーマを今後も取り扱っていくので
両方できるようになりたい方は
要チェックしてみてください。
それでは
コメントする