Skip to content

Instantly share code, notes, and snippets.

@jorovipe97
Last active August 10, 2018 00:34
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jorovipe97/759f5771660b9bfefbf987b32d7cd56c to your computer and use it in GitHub Desktop.
Save jorovipe97/759f5771660b9bfefbf987b32d7cd56c to your computer and use it in GitHub Desktop.
var Financial = {
InteresSimple: {
// El nombre del metodo hace referencia a la incognita que se quiere hallar
Final: null, // Valor al final de la inversion
Presente: null, // Valor al final de la inversion
Interes: null // Tasa de interes requerida
},
InteresCompuesto: {
// El nombre del metodo hace referencia a la incognita que se quiere hallar
Final: null, // Valor al final de la inversion
Presente: null, // Valor al final de la inversion
Interes: null // Tasa de interes requerida
}
}
/**
* presente: Valor invertido en el presente
* periodoInteres: EL interes es mensual/semestral/anual etc
* tasaInteres: El interes en decimal
* tiempoFinal: Durante cuanto tiempose tendra la inversion
*
* NOTA: Tenga en cuenta que si periodoInteres=3meses (trimestral) y tiempo de la inversion es un año debe convertir años a meses por lo
* tanto tiempoFinal = 12 meses
*
* NOTA: Los dos periodos deben estar en la misma unidad temporal.
*/
Financial.InteresSimple.Final = function (presente, periodoInteres, tasaInteres, tiempoFinal) {
let final = null;
let n = tiempoFinal/periodoInteres;
final = presente*(1 + (tasaInteres*n));
return final;
}
/**
* Obtiene el valor que debo invertir hoy para obtener un valor final X en un tiempo Y
* final: El valor final que deseo obtener al cabo de la operacion
* periodoInteres: EL interes es mensual/semestral/anual etc
* tasaInteres: El interes en decimal
* tiempoFinal: Durante cuanto tiempose tendra la inversion
*
*/
Financial.InteresSimple.Presente = function (final, periodoInteres, tasaInteres, tiempoFinal) {
let presente = null;
let n = tiempoFinal/periodoInteres;
presente = final/(1+(i*n));
return presente;
}
/**
* presente: Valor invertido en el presente
* periodoInteres: EL interes es mensual/semestral/anual etc
* tasaInteres: El interes en decimal
* tiempoFinal: Durante cuanto tiempo se tendra la inversion
*/
Financial.InteresCompuesto.Final = function (presente, periodoInteres, tasaInteres, tiempoFinal)
{
let final = null;
let n = tiempoFinal/periodoInteres;
final = presente*Math.pow(1 + tasaInteres, n);
return final;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment