Arguments multiples (2)
Réfléchissons à un exemple plus complexe. Vous souvenez-vous de la notion de valeur actuelle du cours Introduction to R for Finance? Sinon, vous pouvez revoir la vidéo à ce sujet ici. L'idée consiste à actualiser, à un taux d'intérêt donné, une somme que vous recevrez dans le futur pour en exprimer la valeur en dollars d'aujourd'hui. La formule générale suivante a été élaborée pour vous y aider :
present_value <- cash_flow * (1 + i / 100) ^ -year
Ne serait-ce pas pratique d'avoir une fonction qui effectue ce calcul pour vous? Par exemple, sous la forme :
present_value <- pv(cash_flow, i, year)
Cette fonction devrait fonctionner si vous transmettez des nombres comme pv(1500, 5, 2) et aussi si vous transmettez des vecteurs de même longueur pour calculer d'un seul coup un vecteur complet de valeurs actuelles!
La fonction percent_to_decimal() est à votre disposition.
Cette activité fait partie du cours
R intermédiaire pour la finance
Instructions de l’exercice
- Remplissez les espaces vides 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 l'enregistrez pas dans une variable. En tant que dernière ligne exécutée, il sera retourné automatiquement.
- Exiger les arguments :
- Calculez la valeur actuelle de 1 200 $, à un taux d'intérêt de 7 %, qui sera reçue dans 3 ans.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Present value function
pv <- function(___, ___, ___) {
# Discount multiplier
mult <- 1 + ___(i)
# Present value calculation
___ * ___ ^ -___
}
# Calculate a present value
___