MIRR: Calculer le taux de retour interne modifié

Comment :

Référence :

Langages disponibles : reporting

La fonction MIRR calcule le taux de retour interne modifier pour des séries de flux financiers périodiques.


Haut de page

x
Syntaxe : Calculer le taux de rendement interne
TABLE FILE ...
{PRINT|SUM} field ...COMPUTE rrate/fmt = MIRR(cashflow, finrate, reinvrate, output);
WITHIN {sort_field|TABLE}

où :

field ...

sont les champs qui figurent dans la sortie.

rrate

est le champ contenant le taux de rendement calculé.

fmt

est le format du taux de rendement. Le type de données doit être D.

cashflow

est un champ numérique. Chaque valeur du champ représente soit un débit (valeur négative), soit un crédit (valeur positive) pour une période donnée. Les valeurs doivent suivre la séquence appropriée pour que la séquence de flux monétaires soit calculée correctement. Les dates correspondant aux différents flux monétaires doivent être espacées régulièrement et triées selon l'ordre chronologique. Le calcul nécessite au moins une valeur négative et une valeur positive dans le champ cashflow. Si les valeurs sont toutes positives ou négatives, cela donne le résultat zéro.

finrate

est un taux financier pour flux négatifs. Cette valeur doit obligatoirement être exprimée en tant que fraction décimale non négative entre 0 et 1. Elle doit être constante au sein de chaque groupe de tris pour lesquels un taux de retour est calculé, mais elle peut changer entre de groupe de tris.

reinvrate

est le taux de réinvestissement pour flux financiers positifs. Cette valeur doit obligatoirement être exprimée en tant que fraction décimale non négative entre 0 et 1. Elle doit être obligatoirement une constante au sein de chaque groupe de tri mais peut changer entre un groupe de tri. Elle doit être constante au sein de chaque groupe de tris pour lesquels un taux de retour est calculé, mais elle peut changer entre de groupe de tris.

output

est le nom du champ contenant le taux de rendement, ou le format de celui-ci entre guillemets simples.

sort_field

est un champ qui trie la sortie de la procédure de rapport et la répartit en sous-ensembles distincts de lignes auxquelles la fonction peut être appliquée. Utilisez la phrase WITHIN TABLE pour calculer la fonction en utilisant toutes les lignes de la sortie de la procédure de rapport. Une phrase WITHIN est requise.


Haut de page

x
Référence : Notes d'utilisation sur la fonction MIRR


Exemple : Calculer le taux de rendement interne

La requête suivante calcule les taux de retour interne modifié pour des catégories de produits. Suppose une charge financière égale à 10 % et un taux de réinvestissement égal à 10 %. La requête est triée par date, pour qu'il soit possible de calculer les flux monétaires corrects. Le taux renvoyé par la fonction est multipliée par 100 afin de l'exprimer en tant que pourcentage plutôt qu'en valeur décimale. Notez quele format comprenne le caractère % : Cela provoque l'affichage d'un symbole pour cent, mais aucun pourcentage n'est calculé :

De façon à créer une valeur de flux financiers par date, la somme des valeurs est effectuée. NEWDOLL est définie de façon à créer des valeurs négatives dans chaque catégorie tel que requis par la fonction :

DEFINE FILE GGSALES
 SDATE/YYM = DATE;
 SYEAR/Y = SDATE;
 NEWDOLL/D12.2 = IF DATE LT '19970401' THEN -1 * DOLLARS ELSE DOLLARS;
END
TABLE FILE GGSALES
  SUM NEWDOLL
  COMPUTE RRATE/D7.2% = MIRR(NEWDOLL, .1, .1, RRATE) * 100;
  WITHIN CATEGORY
  BY CATEGORY
  BY SDATE
  WHERE SYEAR EQ 97
END

Un taux séparé est calculé pour chaque catégorie à cause de la phrase WITHIN CATEGORY. Une portion de la sortie est montrée :

Category     SDATE           NEWDOLL      RRATE 
--------     -----           -------      ----- 
Coffee       1997/01     -801,123.00     15.11% 
             1997/02     -682,340.00     15.11% 
             1997/03     -765,078.00     15.11% 
             1997/04      691,274.00     15.11% 
             1997/05      720,444.00     15.11% 
             1997/06      742,457.00     15.11% 
             1997/07      747,253.00     15.11% 
             1997/08      655,896.00     15.11% 
             1997/09      730,317.00     15.11% 
             1997/10      724,412.00     15.11% 
             1997/11      620,264.00     15.11% 
             1997/12      762,328.00     15.11% 
Food         1997/01     -672,727.00     16.24% 
             1997/02     -699,073.00     16.24% 
             1997/03     -642,802.00     16.24% 
             1997/04      718,514.00     16.24% 
             1997/05      660,740.00     16.24% 
             1997/06      734,705.00     16.24% 
             1997/07      760,586.00     16.24%

Pour calculer un taux de retour interne modifiait pour l'ensemble des données du rapport, utilisez la phrase WITHIN TABLE. Dans ce cas, les données n'ont pas nécessairement à être triées par CATEGORY :

DEFINE FILE GGSALES
 SDATE/YYM = DATE;
 SYEAR/Y = SDATE;
 NEWDOLL/D12.2 = IF DATE LT '19970401' THEN -1 * DOLLARS ELSE DOLLARS;
END
 
TABLE FILE GGSALES
  SUM NEWDOLL
  COMPUTE RRATE/D7.2% = MIRR(NEWDOLL, .1, .1, RRATE) * 100;
  WITHIN TABLE
  BY SDATE
  WHERE SYEAR EQ 97
END

La sortie est :

SDATE           NEWDOLL      RRATE 
-----           -------      ----- 
1997/01   -1,864,129.00     15.92% 
1997/02   -1,861,639.00     15.92% 
1997/03   -1,874,439.00     15.92% 
1997/04    1,829,838.00     15.92% 
1997/05    1,899,494.00     15.92% 
1997/06    1,932,630.00     15.92% 
1997/07    2,005,402.00     15.92% 
1997/08    1,838,863.00     15.92% 
1997/09    1,893,944.00     15.92% 
1997/10    1,933,705.00     15.92% 
1997/11    1,865,982.00     15.92% 
1997/12    2,053,923.00     15.92% 

WebFOCUS