Section courante

A propos

Section administrative du site

Il est souvent frustrant de constater que certaines fonctions financières sophistiquées sont disponibles en quelques clics dans les tableurs les plus populaires, alors qu'il faut parfois effectuer de longues recherches pour reproduire exactement les mêmes calculs dans un programme développé sur mesure. Des logiciels comme Lotus 1-2-3 et Quattro Pro proposent depuis longtemps un ensemble complet de fonctions financières permettant d'analyser des prêts, des investissements et des plans de remboursement avec une grande précision. Parmi ces fonctions figure PPaymt (Payment Principal), appelée Principal dans certaines versions françaises, dont le rôle consiste à calculer la portion du capital remboursé lors d'un versement particulier d'un prêt. Cette information est particulièrement utile pour comprendre l'évolution d'un emprunt, puisque chaque paiement est généralement composé d'une part destinée aux intérêts et d'une autre servant à réduire le solde du capital. Bien que cette opération puisse sembler simple à première vue, sa mise en oeuvre nécessite plusieurs calculs intermédiaires afin de tenir compte du taux d'intérêt, du nombre total de versements, de la valeur actuelle du prêt et du moment où le paiement est effectué. Le programme QuickBASIC/QBasic présenté ci-dessous reproduit fidèlement le comportement de cette fonction en s'appuyant sur des routines permettant de calculer la valeur future d'un emprunt ainsi que le montant des versements périodiques. Grâce à ces fonctions complémentaires, il devient possible de déterminer avec précision la fraction de chaque paiement qui est réellement appliquée au remboursement du capital. Les exemples inclus démontrent le calcul de cette composante principale dans deux scénarios différents, soit un prêt avec versements trimestriels et un prêt hypothécaire avec versements mensuels. En exécutant ce code, vous obtiendrez des résultats comparables à ceux fournis par les célèbres fonctions financières des tableurs, ce qui vous permettra d'intégrer facilement ce type de calcul dans vos propres applications de gestion financière, de comptabilité ou d'analyse de prêts.

A l'aide du code source QuickBASIC/QBasic suivant, vous trouverez la réponse que vous souhaitez :

  1. DECLARE FUNCTION FVal! (rate!, nPer!, pmt!, pV!, pType!)
  2. DECLARE FUNCTION Paymt! (rate!, nPer!, pV!, fV!, pType!)
  3. DECLARE FUNCTION PPaymt! (rate!, per!, nPer!, pV!, fV!, pType!)
  4.  
  5. PRINT "Exemple de versements trimestriels d'un prêt de 10 000$ à 15% par trimestre:"
  6. PRINT STR$(PPaymt(.15 / 4, 24, 40, 10000, 0, 1)) + "$"
  7. PRINT "Exemple de versements d'un prêt de 100 000$ à 10% par mois:"
  8. PRINT STR$(PPaymt(.1 / 12, 2 * 12, 30 * 12, 100000, 0, 0)) + "$"
  9.  
  10. FUNCTION FVal (rate, nPer, pmt, pV, pType)
  11.  f = EXP(nPer * LOG(1! + rate))
  12.  IF ABS(rate) < .000001 THEN
  13.     FVal = -pmt * nPer * (1! + (nPer - 1!) * rate / 2!) * (1! + rate * pType) - pV * f
  14.  ELSE
  15.     FVal = pmt * (1 - f) * (1 / rate + pType) - pV * f
  16.  END IF
  17. END FUNCTION
  18.  
  19. FUNCTION Paymt (rate, nPer, pV, fV, pType)
  20.  f = EXP(nPer * LOG(1! + rate))
  21.  Paymt = (fV + pV * f) * rate / ((1 + rate * pType) * (1! - f))
  22. END FUNCTION
  23.  
  24. FUNCTION PPaymt (rate, per, nPer, pV, fV, pType)
  25.     f = Paymt(rate, nPer, pV, fV, pType)
  26.     PPaymt = f - rate * FVal(rate, per - pType - 1, f, pV, pType)
  27. END FUNCTION

on obtiendra le résultat suivant :

Exemple de versements trimestriels d'un prêt de 10 000$ à 15% par trimestre:
-233.243
Exemple de versements d'un prêt de 100 000$ à 10% par mois:
-53.542


Dernière mise à jour : Mercredi, le 14 septembre 2016