Documentation/Calc Functions/PRICE

From The Document Foundation Wiki
Jump to navigation Jump to search


Function name:

PRICE

Category:

Financial Analysis

Summary:

Calculates the market value of fixed interest security with a par value of 100 currency units as a function of the forecast yield.

Syntax:

PRICE(Settlement; Maturity; Rate; Yield; Redemption; Frequency[; Basis])

Returns:

Returns a non-negative real number which is a quoted price for interest-paying security, per 100 currency units of face value.

Arguments:

Settlement is a date or a reference to a cell containing that date which is the date of purchase of the security.

Maturity is a date or a reference to a cell containing that date which is the date on which the security matures (expires).

Rate is a positive real number or a reference to a cell containing that number which is the annual rate of interest (coupon interest rate).

Yield is a positive real number or a reference to a cell containing that number which is the annual yield of the security.

Redemption is a positive real number or a reference to a cell containing that number which is the redemption value per 100 currency units of par value.

Frequency is a positive integer or a reference to a cell containing that integer which is the number of interest payments per year (1, 2, or 4).

Frequency Frequency
1 Annual
2 Semiannual
4 Quarterly

Basis is a positive integer from 0 to 4 or a reference to a cell containing that integer which is chosen from a list of options and indicates how the year is to be calculated. For more information, visit Wikipedia's Day count convention page.

Basis Calculation
0 or missing US method (NASD), 12 months of 30 days each
1 Exact number of days in months, exact number of days in year.
2 Exact number of days in month, year has 360 days.
3 Exact number of days in month, year has 365 days.
4 European method, 12 months of 30 days each.


  • If Yield less than 0 then the function returns an error value.
  • If either Maturity or Settlement is not valid dates then the function returns an value(#VALUE!) error.
  • If Settlement date is after the Maturity date then the function returns an error value.
  • If Rate is less than or equal to 0 then the function will return an error value.
  • If Redemption is less than or equal to 0 then the function returns an error value.
  • If Frequency, and Basis are non-integer values, then the function uses their floor value, i.e. they are truncated to an integer value.
  • After truncation if Frequency is any number except 1,2 or 4, then the function returns an error value.
  • After truncation if Basis is any number except 0,1,2,3,4 or missing (passed as empty argument or not passed at all),then the function will return an error value.

Additional details:

  • The formula for PRICE is:
Price.png

where A is the number of days from the Settlement date to the next coupon date, B is the number of days of the coupon period that the Settlement is in, C is the number of coupons between the Settlement date and Redemption date, D is the number of days from the beginning of coupon period to the Settlement date.

Examples:

Formula Description Returns
=PRICE("1999-02-15"; "2007-11-15"; 0.0575; 0.065; 100; 2; 0) A security is purchased on 1999-02-15; the maturity date is 2007-11-15. The nominal rate of interest is 5.75%. The yield is 6.5%. The redemption value is 100 currency units. Interest is paid half-yearly (frequency is 2). With calculation on basis 3. The function calculates the price using these arguments. 95.0691101558316
=PRICE("1999-02-15"; "2007-11-15"; 0.0575; 0.065; 100; 2) A security is purchased on 1999-02-15; the maturity date is 2007-11-15. The nominal rate of interest is 5.75%. The yield is 6.5%. The redemption value is 100 currency units. Interest is paid half-yearly (frequency is 2). With calculation on basis 0 by default. The function calculates the price using these arguments. 95.0428743993921
=PRICE("1999-02-15.05"; "2007-11-15"; 0.0575; 0.065; 100; 2; 0) The function returns an error value if either Settlement or Maturity are not valid dates. #VALUE!
=PRICE("2009-02-15"; "2007-11-15"; 0.0575; 0.065; 100; 2; 0) The function returns an error when Settlement date is after the Maturity date. Err:502

Related LibreOffice functions:

PRICEDISC

PRICEMAT

ODF standard:

Section 6.12.38, part 2

Equivalent Excel functions:

PRICE