【问题标题】:R tvm financial packageR tvm 财务套餐
【发布时间】:2014-05-23 18:34:54
【问题描述】:

我正在尝试使用财务包中的 fvm 来估计支付流的现值。

y <- tvm(pv=NA,i=2.5,n=1:10,pmt=-c(5,5,5,5,5,8,8,8,8,8))

我得到的结果是:

y

Time Value of Money model

    I% #N    PV FV PMT Days #Adv P/YR C/YR
1  2.5  1  4.99  0  -5   30    0   12   12
2  2.5  2  9.97  0  -5   30    0   12   12
3  2.5  3 14.94  0  -5   30    0   12   12
4  2.5  4 19.90  0  -5   30    0   12   12
5  2.5  5 24.84  0  -5   30    0   12   12
6  2.5  6 47.65  0  -8   30    0   12   12
7  2.5  7 55.54  0  -8   30    0   12   12
8  2.5  8 63.40  0  -8   30    0   12   12
9  2.5  9 71.26  0  -8   30    0   12   12
10 2.5 10 79.09  0  -8   30    0   12   12

PV 从 5 跳到 6(当价格变为 8 时)似乎不正确。这会影响 y[10,3] 中的结果,这是我有兴趣获得的结果。

当整个流中的付款相同时,Excel 中的 NPV 公式会产生相似的结果,但是,当 paymets 的向量是可变的时,tvm 公式和 NPV 的结果不同。我需要获得与 NPV 公式在 Excel 中提供的相同结果。

我应该怎么做才能完成这项工作?

【问题讨论】:

  • 我使用tvm() 已经有一段时间了,但我认为您已经模拟了 10 种不同的场景,从 1 年到 10 年不等,而不是 10 年以上不同付款的场景。
  • 我认为你需要使用cf(),而不是tvm()
  • cf 公式有帮助,但没有给我与 Excel 相同的结果。我使用以下函数解决了我的问题: npv
  • 我建议您将其发布为您自己问题的答案。

标签: r package financial


【解决方案1】:

cf 公式有帮助,但它并不总是与 Excel 一致。

我使用以下函数解决了我的问题:

npv<-function(a,b,c) sum(a/(1+b)^c) 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多