| **Navigation:**  [[templates.htm|Templates]] > Guide to all Templates > [[additional libraries and templates.htm|Additional Libraries and Templates]] > Finance Library >====== PREPERS (periods of annuity with prepayment) ====== | [[prefv future value with prepayment .htm|{{btn_prev_n.gif|Previous page}}]][[additional libraries and templates.htm|{{btn_home_n.gif|Return to chapter overview}}]][[prerate rate of annuity with prepayment .htm|{{btn_next_n.gif|Next page}}]] | | || **PREPERS**(//presentvalue,rate,payment,futurevalue//) | **PREPERS** | Computes the number of periods required to reach a targeted future value. | | //presentvalue// | A numeric constant or variable containing the present value of the investment. | | //rate// | A numeric constant or variable containing the //periodic //rate of return. | | //payment// | A numeric constant or variable containing the periodic payment. | | //futurevalue// | A numeric constant or variable containing the amount of the desired or targeted future value of the investment. | **PREPERS **determines the number of periods required to reach a desired amount (//futurevalue//) based upon a starting amount (//presentvalue//), a periodic interest rate (//rate//), and a payment amount (//payment//). If payments occur at the end of each period, use the PERS function, which calculates interest accordingly. Periodic rate may be calculated as follows: PeriodicRate = AnnualInterestRate / (PeriodsPerYear * 100) {{c6h0012.jpg|C6H0012.jpg}} If the present value is less than the future value (annuities), payments are positive, and conversely, if the present value is greater than the future value (loans), payments are negative. **Return Data Type:**     DECIMAL **Internal Formulas:** {{prepers.jpg|PREPERS.jpg}} The PREPERS function performs binary search iterations to home in on the periods value. If more than 50 such iterations are required, a value of zero is returned. **Example:** **  PeriodicRate = AnnualRate / (PeriodsPerYear * 100)** **  IF TimeOfPayment = 'Beginning of Periods'** **   TotalPeriods = PREPERS(PresentValue,PeriodicRate,Payment,FutureValue)** **  ELSE** **   TotalPeriods = PERS(PresentValue,PeriodicRate,Payment,FutureValue)** **  END**