Arguments multiples (2)
Réfléchissons à un exemple plus complexe. Vous souvenez-vous de la notion de valeur actuelle vue dans le cours Introduction to R for Finance ? Sinon, vous pouvez revoir la vidéo ici. L’idée est d’actualiser, à un taux d’intérêt donné, une somme que vous recevrez dans le futur afin de représenter sa valeur en euros d’aujourd’hui. La formule générale suivante a été développée pour cela :
present_value <- cash_flow * (1 + i / 100) ^ -year
Ne serait-il pas pratique d’avoir une fonction qui effectue ce calcul pour vous ? Par exemple de la forme :
present_value <- pv(cash_flow, i, year)
Cette fonction doit fonctionner si vous lui passez des numériques comme pv(1500, 5, 2) et aussi si vous lui passez des vecteurs de même longueur pour calculer en une fois un vecteur complet de valeurs actuelles !
La fonction percent_to_decimal() est à votre disposition.
Cet exercice fait partie du cours
R intermédiaire pour la finance
Instructions
- Complétez les blancs dans la fonction pour qu’elle fasse ce qui suit :
- Exiger les arguments :
cash_flow,i,year - Créer le multiplicateur d’actualisation :
(1 + i / 100). Utilisez la fonctionpercent_to_decimal()pour convertirien décimal. - Effectuer le calcul de la valeur actuelle. Ne stockez pas le résultat dans une variable. Étant la dernière ligne exécutée, il sera renvoyé automatiquement.
- Exiger les arguments :
- Calculez la valeur actuelle de 1 200 $, à un taux d’intérêt de 7 %, reçue dans 3 ans.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Present value function
pv <- function(___, ___, ___) {
# Discount multiplier
mult <- 1 + ___(i)
# Present value calculation
___ * ___ ^ -___
}
# Calculate a present value
___