TIMEVALUE Function
Returns the equivalent of a reference amount at
a base date by using variable interest rates.
Syntax
Required Arguments
basedate
is a SAS date. The
value that is returned is the time value of referenceamount at basedate.
referencedate
is a SAS date. referencedate is the date of referenceamount.
referenceamount
is numeric. referenceamount is the amount at referencedate.
compoundinginterval
is a SAS interval. compoundinginterval is the compounding interval.
date
is a SAS date. Each
date is paired with a rate. date is the time that rate takes
effect.
rate
is a numeric percentage.
Each rate is paired with a date. rate is the interest rate that starts on date.
Details
The following details
apply to the TIMEVALUE function:

The values for rates must be between
–99 and 120.

The list of daterate pairs does
not need to be sorted by date.

When multiple rate changes occur
on a single date, the TIMEVALUE function applies only the final rate
that is listed for that date.

Simple interest is applied for
partial periods.

There must be a valid daterate
pair whose date is at or prior to both the
referencedate and the
basedate.
Example

You can express the accumulated
value of an investment of $1,000 at a nominal interest rate of 10%
compounded monthly for one year as the following:
amount_base1 = TIMEVALUE("01jan2001"d, "01jan2000"d, 1000,
"MONTH", "01jan2000"d, 10);

If the interest rate jumps to 20%
halfway through the year, the resulting calculation would be as follows:
amount_base2 = TIMEVALUE("01jan2001"d, "01jan2000"d, 1000,
"MONTH", 01jan2000"d, 10, "01jan2000"d, 20);

The daterate pairs do not need
to be sorted by date. This flexibility allows amount_base2 and amount_base3
to assume the same value:
amount_base3 = TIMEVALUE("01jan2001"d, "01jan2000"d, 1000,
"MONTH", "01jul2000"d, 20, "01jan2000"d, 10);