Python開発|Tkinterでアプリ制作④ 複利計算結果をリスト化

前回は、積立投資を含めた複利計算を作成しました。

入力した条件から、将来の最終資産額を計算できるようになりました。

しかし、シミュレーターとして考えると、もう1つ必要な機能があります。

それは、途中経過の表示です。

例えば、

「10年後にいくらになるか」

だけではなく、

「1年後はいくらか」

「5年後はいくらか」

という資産の変化も確認できるようにします。

今回は、複利計算の結果を毎年保存し、資産推移のリストを作成します。

目次

最終結果だけではグラフを作れない

前回作成した計算では、最終的な資産額を取得していました。

例えば、

  • 元本100万円
  • 毎月1万円積立
  • 年利5%
  • 10年間運用

の場合、

10年後の資産額を計算できます。

しかし、この結果だけでは問題があります。

資産がどのように増えていったのか確認できません。

また、後からグラフを表示することもできません。

そこで今回は、計算途中の結果を保存する処理を追加します。

計算結果をリストに保存する

Pythonでは、複数のデータを順番に保存するときにリストを使います。

今回は、毎年の資産額をリストへ追加していきます。

作成した関数はこちらです。

def asset_suii(asset_start, monthly, rate, years):

    assets = [asset_start]

    rate_100 = rate / 100
    rate_monthly = rate_100 / 12

    for i in range(1, years + 1):

        month_total = i * 12

        if rate_100 == 0:
            results = asset_start + (monthly * month_total)

        else:
            results = (
                asset_start * (1 + rate_100) ** i
                +
                monthly * ((1 + rate_monthly) ** month_total - 1)
                / rate_monthly
            )

        assets.append(round(results))

    return assets

assetsリストの中身

この関数では、最初に、

assets = [asset_start]

としています。

これは0年目の資産を保存するためです。

その後、計算した結果を、

assets.append(round(results))

で追加します。

例えば、5年間運用した場合は、

[
1000000,
1170000,
1350000,
1550000,
1760000,
1990000
]

のようなデータになります。

それぞれ、

  • 1つ目 → 0年目
  • 2つ目 → 1年目
  • 3つ目 → 2年目

という意味になります。

なぜリスト化するのか

では、なぜ最終結果だけではなく、推移を保存するのでしょうか。

理由は、データを可視化するためです。

例えば、資産推移をグラフ表示する場合、

横軸には年数、

縦軸には資産額を使用します。

そのためには、

年数
[0,1,2,3,4,5]

と、

資産額
[1000000,1170000,1350000,1550000,1760000,1990000]

のようなデータが必要になります。

つまり、リスト化することで、

  • グラフ表示
  • 表形式での表示
  • 将来的なデータ分析

などへ利用できるようになります。

複利計算についての注意点

今回のシミュレーターでは、入力した年利を12分割して毎月計算しています。

つまり、

月利 = 年利 ÷ 12

という考え方です。

ただし、実際の投資では毎月一定の利回りになるわけではありません。

株式市場は毎月変動します。

そのため、この計算結果は将来の利益を保証するものではありません。

あくまで、

「一定の利回りで運用できた場合のシミュレーション」

として利用します。

まとめ

今回は、複利計算の結果をリスト化し、資産推移を取得できるようにしました。

前回までは、

「最終的にいくらになるか」

を計算する処理でした。

今回は、

「そこへ到達するまでに、どのように増えていくか」

を確認できるようになりました。

この資産推移データを利用することで、次回はグラフ表示機能を追加できます。

Pythonで作る資産シミュレーターが、少しずつアプリらしい形になってきました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

FIREを目指しながら、投資・プログラミング・家庭菜園・資格勉強に取り組んでいます。試行錯誤しながら積み上げる日々を記録するブログです。

コメント

コメントする

目次