C# を使って、複利計算でトータルリターンを算出する方法を書いていきます。
今回の例では、年間収益率からトータルリターンを求めていきます。
注意事項
浮動小数点演算などの誤差があります。
コード例
以下のメソッドに年間収益率を渡すと、トータルリターンが算出できます。
public class Calc { public static double CompoundRtn(List<double> rtns) { // 複利計算でトータルリターンを算出 var factor = 1.0d; foreach (var rtn in rtns) { factor *= (1 + rtn); } return factor - 1.0d; } }
動作確認用のコード
動作確認用のコードは以下の通りです。
// 年間収益率を用意(73.3%, 86.1%, -23.5%) var rtns = new List<double> { 0.733, 0.861, -0.235 }; // トータルリターンを算出 var tr = Calc.CompoundRtn(rtns); // 結果の確認(146.72%) Console.WriteLine($"{tr:P2}");
実行
上のコードを実行すると、以下の文字列が出力されます。
146.72%