Determine present value of a cashflow w/ unequal payments?

Posted 2 years ago
3175 Views
|
2 Replies
|
3 Total Likes
|
 I would like to use Mathematica built-in functions to determine the present value of a cashflow payment stream given unequal payments at regular intervals and a constant rate of return. Ultimately I would like to present results as a table of 'balance remaining' values for an amortization schedule. I can do this for a fixed-amount stream using the Annuity construct: nstop = 360; nm = Table[ TimeValue[Annuity[529.24, k], EffectiveInterest[0.0375/12, 1]], {k, 1, nstop}]; rt = Table[{i, Round[nm[[i]]]}, {i, 1, nstop}]; See the attachment for clarification.I can do this in Excel but would rather use Mathematica if possible. I'm new to this set of functions and not a finance major. Thanks for any help you may be able to provide, be it a link to solution or your code. Keith Attachments:
2 Replies
Sort By:
Posted 2 years ago
 So, let's create arbitrary payments x and arbitrary time of payments t and generate the data for a Cashflow object. For concreteness, I'm letting there be 10 times at which payments are made. cfdata= Transpose[{Array[x, {10}], Array[t, {10}]}] We can now calculate the present value of the cashflow as follows, where r is some interest rate or the result of an EffectiveInterest computation. TimeValue[Cashflow[cfdata],r,0] To compute the present value of the remaining payment stream as one moves through time, one could do this: Table[TimeValue[Cashflow[Drop[cfdata, i]], r, 0], {i, 0, 10}]