CordwainersCatの日記

Twitterに書き切れないような長い話はこちらに書こうと思います

お年玉から考える複利計算

お正月らしくお年玉の事を考えてみましょう。今、親戚からお年玉を一万円貰って持ってるとして「お母さん銀行」に預けると一年で3.65%の利息を貰えるものとします。つまり、この一万円を一年間使う事を我慢しさえすれば翌年のお正月には利息と合計で1万365円貰える約束です。「両親による詐欺だ!」「騙されちゃいけない」とか言う話はここでは置いておきましょう。 つまりこの場合は毎日1万円につき1円、元金の1/10,000の利息を貰える約束と言うわけです。
 
ここでお年玉を持ってる子供は知恵を働かせます。「お母さん、この世には複利と言うものがあるそうですよ。ある期間ごとに利息を元金に繰り込んでそれに対する利息を加える計算法です。」「一年間の単利、3.65%の利息では不満です。複利にしてください」【まあ子供のくせになんてガメツイ、もとい頭の良い子供なんでしょう】お母さんは呆れながらも「ハイハイ、どのくらいのペースで利息を元金に繰り込んで欲しいの?」と答えました。子供は【シメタ、引っ掛かったぞ。ドンドン利息を吊り上げてやる】と内心思いながら、「そうですね、まずは半年ごとに繰り込んでください」と答えました。
 
数字で書くとややこしいのでそろそろ数式で書く事にします。元金をG_0、任意の時点の元利合計をG、一回ごとの利息をΔG、単利の利率をα、一回の利息を計算する期間をΔt、預けてる期間全体をTと置きます。この場合、G_0=10,000(円)、α=0.0365T=1(年)なので一年に一回の利息ならΔG=365(円)です。これを半年ごとの複利計算するならΔt=1/2です。
一回の利息はΔG = αGΔt となります。したがって最初の半年で貰える利息
ΔG_1=0.0365 \times 10,000 \times 1/2 = 182.5(円)です。
つまり半年後の新しい元金 G_1=G_0+ΔG_1=G_0+αG_0Δt=G_0(1+αΔt) です。
次の半年で貰える元利合計は元金にすでに利息を一回繰り込んでますので
G_2=G_1 (1+αΔt)=G_0(1+αΔt)^2 となります。
 
これを展開して整理すると
G_2=G_0(1+2αΔt+(αΔt)^2)=G_0(1+αΔt)+G_0(αΔt+(αΔt)^2)
=G_1+G_0(1+αΔt)αΔt=G_1+G_1αΔt=G_1+ΔG_2となります。
ここでΔG_2とはΔG_2=αG_1Δtであり、すなわち2回目の半年間に貰える利息の事です。つまりG_2=G_1+ΔG_2=G_0+αG_0Δt+αG_1Δt であり、一年後の元利合計は元金に最初の半年間で得られる利息を足し、さらに次の半年間で得られる利息を足したものです。当たり前ですが、辻褄は合いました。
 
上の式は複利計算が累乗(指数関数)である事を元にしてそっちから変形しましたが、それでは話が逆さまな気がするので漸化式から変形してみます。
G_1=G_0+ΔG_1=G_0+αG_0Δt
G_2=G_1+ΔG_2=G_1+αG_1Δt=(G_0+αG_0Δt)+α(G_0+αG_0Δt)Δt
      =G_0+2αG_0Δt+α^{2}G_0(Δt)^{2}=G_0(1+2αΔt+(αΔt)^{2})=G_0(1+αΔt)^{2}
結論はやはり複利計算の合計は元金 x(1.0 + 期間ごとの利率)の累乗になります(当たり前ですね)。
 
結局、半年複利の場合の一年後の元利合計はいくらになるのか? G_0=10,000α=0.0365Δt=1/2なので、 G_2=10,000(1+0.01825)^2=10368.330625 となり利息は365円よりも僅かに増えます。3円とちょっとですね。ここから複利計算する間隔をどこまでも詰めていってみましょう。 一年間をn期間に等分割して複利計算した合計をG(n)とすると G(n)=G_0(1+αΔt)^n=G_0(1+α\frac{T}{n})^n と書けます。Δt=\frac{T}{n}T=1(年間)です。
 
複利計算を行う間隔を1ヶ月にすると G(12)=10,000(1+0.0365\times\frac{1}{12})^{12}=10,371.168411…
 
複利計算を行う間隔を一日にすると G(365)=10,000(1+0.0365\times\frac{1}{365})^{365}=10,371.724113…
 
複利計算を行う間隔を1時間にすると G(365\times24)=10,000(1+0.0365\times\frac{1}{365\times24})^{365\times24} =10,371.742251…
 
複利計算を行う間隔を1分にすると G(365\times24\times60)=10,000(1+0.0365\times\frac{1}{365\times24\times60})^{365\times24\times60} =10,371.743027…
 
複利計算をする間隔を1秒にすると G(365\times24\times60\times60)=10,000(1+0.0365\times\frac{1}{365\times24\times60\times60})^{365\times24\times60\times60} =10,371.743039…
 
アレアレ?オカシイですね〜、複利の利息が一年間の単利の利息365円に対して6~7円増えたところからちっとも増えていきません。まるでこの辺に収束してしまってるようです。これではお年玉をどこまでも増やそうと言う子供の目論見は外れてしまいます。
この10,371.743…と言うのは一体どう言う数字なのでしょう?なぜこんなところに収束していくのか? 実はこの数字は e^{0.0365} を一万倍したものです。つまりe(ネイピアの数=自然対数の底)を単利の利息乗した値に元金10,000円を掛けた物なのです。 なぜそんな事になるのか?ここからやっと本論に入ります。