Finance › Accounting ›

# xnpv

Calculate net present value for a series of non-periodic cash flows.
Excel: XNPV

Controller: **CodeCogs**

**Contents**

doublexnpv( | double | rate | |

double* | values | ||

int* | dates | ||

int | nV | ) |

Calculate the net present value for a schedule of cash flows which
are not necessarily periodic.

*values*contains the series of cash flows made on the specific dates. Values which are a cost, (or paymemt) should be entered as negative values. The following equation is used: Where:*Pa*is the payment at point*a*.*d0*is the date of the first payment.### Example 1

- Consider an investment that requires a £10,000 cash payment on
January 1, 1998, and returns:
£2,750 on March 1, 1998;
£4,250 on October 30, 1998;
£3,250 on February 15, 1999; and
£2,750 on April 1, 1999.
Assume that the cash flows are discounted at 9 percent. The net
present value is:
#include <iostream> #include <codecogs/finance/accounting/xnpv.h> int main(int argc, char *argv[]) { double pmts[]={-10000, 2750, 4250, 3250, 2750}; int dates[]={34334,34393,34636,34744,34789}; std::cout<<"Net present value: "; std::cout<<Finance::Accounting::xnpv(0.09, pmts, dates, 5); std::cout<<std::endl; return 0; }

Output:`Net present value: 2089.5`

use a *rate* of 0.09 .

payments on specific dates.

are made.

### Parameters

rate The discount rate to apply to the cash flows. For 9% values An array of cash flows that correspond to a series of dates An array of dates on which the corresponding payments

### Returns

- The net present value of the investment.

### Authors

*James Warren (July 2005)*

##### Source Code

Source code is available when you buy a Commercial licence.

Not a member, then Register with CodeCogs. Already a Member, then Login.