计算日期之间的财务天数





1.00/5 (2投票s)
2006年9月13日
1分钟阅读

47609

1051
如何使用金融 360/360 年计算两个日期之间的差值
引言
在某些情况下,对于某些金融工具,两个日期之间的差值需要以特殊的方式计算... 不是基于实际的 365-6 年,而是基于 360 天的金融固定年。这意味着在这种情况下,每个月都有 30 天(30 天 * 12 个月 = 360 天)。执行此计算的函数存在于 Excel 中 (DAYS360),但使用起来不太方便。所以我更喜欢创建我自己的公式...
诀窍是什么?
理解其概念非常容易... 你需要考虑的是一年由 365.2422 天组成。这意味着每 4 年就会发生一次闰年。金融年为 360 天。差值为 5.2422 天。这样你就可以执行正常的日期差值计算,并将结果乘以转换因子,该因子将正常日减少到 360 天一年的日。实际上,计算应该是 5.2422/365=0.985637808219178(转换因子)。
Private Const Days360ConversionFactor As Double = 0.985637808219178
现在你唯一需要做的就是保留计算出的常规日期差值
Dim DifferenceInDaysValue As Double = Me.EndPeriodDate.Value.Subtract(Me.StartPeriodDate.Value).Days
并将其乘以转换因子(可以假定为常数)。
这段代码可以很容易地实现到一个类中,或者更好地实现到一个金融 DLL 中,以提高其可重用性和部署性...
现在 DAYS360 也存在于 Visual Studio .NET 中!!!
¦-D