Financial.Rate(Double, Double, Double, Double, DueDate, Double) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve un valor que especifica la tasa de interés por período para una anualidad.
public static double Rate(double NPer, double Pmt, double PV, double FV = 0, Microsoft.VisualBasic.DueDate Due = Microsoft.VisualBasic.DueDate.EndOfPeriod, double Guess = 0.1);
static member Rate : double * double * double * double * Microsoft.VisualBasic.DueDate * double -> double
Public Function Rate (NPer As Double, Pmt As Double, PV As Double, Optional FV As Double = 0, Optional Due As DueDate = Microsoft.VisualBasic.DueDate.EndOfPeriod, Optional Guess As Double = 0.1) As Double
Parámetros
- NPer
- Double
Required. Número total de períodos de pago en la anualidad. Por ejemplo, si realiza pagos mensuales de un préstamo para un automóvil de cuatro años, el préstamo tiene un total de 4 * 12 (o 48) períodos de pago.
- Pmt
- Double
Required. El pago que se realizará cada período. Pagos suelen contener principal e interés que no cambia a lo largo de la vida de la anualidad.
- PV
- Double
Required. Valor presente, o valor hoy, de una serie de pagos o recibos futuros. Por ejemplo, cuando pide prestado dinero para comprar un coche, el importe del préstamo es el valor actual para el prestamista de los pagos mensuales que realizará.
- FV
- Double
Optional. Valor futuro o saldo en efectivo que desea después de realizar el pago final. Por ejemplo, el valor futuro de un préstamo es \$0 porque es su valor después del pago final. Sin embargo, si desea ahorrar \$50.000 a lo largo de 18 años para la educación de su hijo, \$50.000 es el valor futuro. Si se omite, se supone que es 0.
- Due
- DueDate
Optional. Objeto de tipo DueDate que especifica cuándo se vencen los pagos. Este argumento debe ser DueDate.EndOfPeriod si los pagos se vencen al final del período de pago, o DueDate.BegOfPeriod si los pagos se vencen al principio del período. Si se omite, DueDate.EndOfPeriod se supone.
- Guess
- Double
Optional. El valor que calcula se devuelve mediante Rate. Si se omite, Guess es 0,1 (10 por ciento).
Devoluciones
Tasa de interés por período de anualidad.
Excepciones
NPer
<= 0.
Ejemplos
En este ejemplo se usa la Rate función para calcular la tasa de interés de un préstamo dado el número total de pagos (TotPmts), el importe del pago del préstamo (Payment), el valor actual o el principal del préstamo (PVal), el valor futuro del préstamo (FVal), un número que indica si el pago se debe al principio o al final del período de pago (PayType), y una aproximación de la tasa de interés esperada (Guess).
Sub TestRate()
Dim PVal, Payment, TotPmts, APR As Double
Dim PayType As DueDate
' Define percentage format.
Dim Fmt As String = "##0.00"
Dim Response As MsgBoxResult
' Usually 0 for a loan.
Dim FVal As Double = 0
' Guess of 10 percent.
Dim Guess As Double = 0.1
PVal = CDbl(InputBox("How much did you borrow?"))
Payment = CDbl(InputBox("What's your monthly payment?"))
TotPmts = CDbl(InputBox("How many monthly payments do you have to make?"))
Response = MsgBox("Do you make payments at the end of the month?", MsgBoxStyle.YesNo)
If Response = MsgBoxResult.No Then
PayType = DueDate.BegOfPeriod
Else
PayType = DueDate.EndOfPeriod
End If
APR = (Rate(TotPmts, -Payment, PVal, FVal, PayType, Guess) * 12) * 100
MsgBox("Your interest rate is " & Format(CInt(APR), Fmt) & " percent.")
End Sub
Comentarios
Una anualidad es una serie de pagos fijos en efectivo efectuados durante un período de tiempo. Una anualidad puede ser un préstamo (como una hipoteca de vivienda) o una inversión (como un plan de ahorro mensual).
Para todos los argumentos, el efectivo pagado (como depósitos a ahorros) se representa con números negativos; efectivo recibido (como cheques de dividendos) se representa con números positivos.
Rate se calcula mediante iteración. A partir del valor de Guess, Rate recorre el cálculo hasta que el resultado es preciso en un 0,00001 por ciento. Si Rate no encuentra un resultado después de 20 intentos, se produce un error. Si su estimación es del 10 % y Rate produce un error, pruebe un valor diferente para Guess.