Modifierad Dietz-metod
Den modifierade Dietz-metoden är ett mått på ex post (dvs. historiska) prestanda för en investeringsportfölj i närvaro av externa flöden. (Externa flöden är värderörelser såsom överföringar av kontanter, värdepapper eller andra instrument in eller ut ur portföljen, utan lika samtidig värderörelse i motsatt riktning, och som inte är intäkter från investeringarna i portföljen, som t.ex. ränta, kuponger eller utdelningar.)
För att beräkna den modifierade Dietz-avkastningen, dividera vinsten eller förlusten i värde, netto efter externa flöden, med det genomsnittliga kapitalet under mätperioden. Det genomsnittliga kapitalet väger individuella kassaflöden med tidslängden mellan dessa kassaflöden fram till slutet av perioden. Flöden som inträffar mot början av perioden har en högre vikt än flöden mot slutet. Resultatet av beräkningen uttrycks som en procentuell avkastning över innehavstiden.
GIPS
Denna metod för avkastningsberäkning används i modern portföljförvaltning. Det är en av metoderna för att beräkna avkastning som rekommenderas av Investment Performance Council (IPC) som en del av deras Global Investment Performance Standards (GIPS). GIPS är avsedda att ge konsekvens till hur portföljavkastningen beräknas internationellt.
Ursprung
Metoden är uppkallad efter Peter O. Dietz. Den ursprungliga idén bakom Peter Dietz arbete var att hitta ett snabbare, mindre datorintensivt sätt att beräkna en IRR eftersom det iterativa tillvägagångssättet med de då ganska långsamma datorer som fanns tillgängliga tog en betydande tid; forskningen producerades för BAI, Bank Administration institute. [ citat behövs ]
Formel
Formeln för den modifierade Dietz-metoden är följande:
var
- är startmarknadsvärdet
- är slutmarknadsvärdet
- är det externa nettoinflödet för perioden (så att bidrag till en portfölj behandlas som positiva flöden medan uttag är negativa flöden)
och
- av varje flöde multiplicerat med dess vikt
Vikten proportionen av tidsperioden mellan den tidpunkt då flödet inträffar och slutet av perioden. Om vi antar att flödet sker i slutet av dagen beräknas som
var
- är antalet kalenderdagar under returperioden som beräknas, vilket är lika med slutdatum minus startdatum (plus 1, om du inte använder konventionen att startdatumet är detsamma som slutdatumet för föregående period )
- är antalet dagar från början av returperioden till den dag då flödet inträffade.
Detta förutsätter att flödet sker i slutet av dagen. Om flödet sker i början av dagen finns flödet i portföljen under ytterligare en dag, så använd följande formel för att beräkna vikten:
Jämförelse med tidsvägd avkastning och internränta
Den modifierade Dietz-metoden har den praktiska fördelen jämfört med den sanna tidsvägda avkastningsmetoden, genom att beräkningen av en modifierad Dietz-avkastning inte kräver portföljvärderingar vid varje tidpunkt när ett externt flöde inträffar. Den interna avkastningsmetoden delar denna praktiska fördel med den modifierade Dietzmetoden.
Med teknikens framsteg kan de flesta system beräkna en tidsvägd avkastning genom att beräkna en daglig avkastning och geometriskt länka för att få en månatlig, kvartalsvis, årlig eller någon annan periodavkastning. Den modifierade Dietz-metoden förblir dock användbar för prestationstillskrivning, eftersom den fortfarande har fördelen att tillåta modifierad Dietz-avkastning på tillgångar att kombineras med vikter i en portfölj, beräknade enligt genomsnittligt investerat kapital, och det vägda genomsnittet ger den modifierade Dietz-avkastningen på portföljen. Tidsviktade returer tillåter inte detta.
Den modifierade Dietz-metoden har också den praktiska fördelen jämfört med internräntan (IRR) metoden att den inte kräver upprepade försök och misstag för att få ett resultat.
Den modifierade Dietz-metoden bygger på en enkel ränteprincip. Den approximerar den interna avkastningsmetoden , som tillämpar en sammansättningsprincip, men om flödena och avkastningen är tillräckligt stora kommer resultaten av Modified Dietz-metoden att avvika avsevärt från den interna avkastningen.
Den modifierade Dietz avkastningen är lösningen till ekvationen:
var
- är startvärdet
- är slutvärdet
- är den totala tidsperioden
och
- är tiden mellan periodens början och flödet
Jämför detta med den (oårsbaserade) internräntan (IRR). IRR (eller mer strikt uttryckt, en icke-årlig innehavsperiod returversion av IRR) är en lösning på ekvationen:
Exempel
Anta att värdet på en portfölj är 100 USD i början av det första året och 300 USD i slutet av det andra året, och det finns ett inflöde på 50 USD i slutet av det första året/början av det andra året. (Anta vidare att inget av åren är ett skottår, så de två åren är lika långa.)
För att beräkna vinsten eller förlusten under tvåårsperioden,
För att beräkna medelkapitalet under tvåårsperioden,
så den modifierade Dietz avkastningen är:
Den (oårsvisa) interna avkastningen i detta exempel är 125 %:
så i det här fallet är den modifierade Dietz-avkastningen märkbart mindre än den oårsbaserade IRR. Denna avvikelse mellan den modifierade Dietz-avkastningen och den icke-årsvisa internräntan beror på ett betydande flöde inom perioden, och det faktum att avkastningen är stor.
IRR är 50 % sedan:
men den oårsbaserade innehavsperiodens avkastning, med IRR-metoden, är 125 %. Att kombinera en årlig ränta på 50 % över två perioder ger en avkastning på innehavsperioden på 125 %:
Den enkla Dietzmetoden
Den modifierade Dietz-metoden skiljer sig från den enkla Dietz-metoden , där kassaflödena viktas lika oavsett när de inträffade under mätperioden. Den enkla Dietz-metoden är ett specialfall av den Modifierade Dietz-metoden, där externa flöden antas ske i mitten av perioden, eller motsvarande, jämnt fördelade över hela perioden, medan inget sådant antagande görs när man använder Modified Dietz-metoden , och tidpunkten för eventuella externa flöden beaktas. Observera att i exemplet ovan sker flödet halvvägs genom den totala perioden, vilket matchar antagandet som ligger till grund för den enkla Dietz-metoden. Detta innebär att den enkla Dietz-returen och den modifierade Dietz-returen är samma i det här exemplet.
Justeringar
Om antingen start- eller slutvärdet är noll, eller båda, måste start- och/eller slutdatumen justeras för att täcka den period under vilken portföljen har innehåll.
Exempel
Anta att vi beräknar kalenderårsavkastningen 2016 och att portföljen är tom tills en överföring av 1 MEUR kontanter på ett icke räntebärande konto fredagen den 30 december. Vid slutet av dagen lördagen den 31 december 2016 har växelkursen mellan euro och Hongkongdollar ändrats från 8,1 HKD per EUR till 8,181, vilket är en värdeökning på 1 procent, mätt i Hongkongdollartermer, så det är höger svaret på frågan vad är avkastningen i Hongkong-dollar är intuitivt 1 procent.
Om man blint tillämpar den modifierade Dietz-formeln, med användning av ett antagande om transaktionstid vid slutet av dagen, är dagviktningen på inflödet av 8,1 miljoner HKD den 30 december, en dag före årets slut, 1/366, och medelkapitalet beräknas som:
och vinsten är:
- slutvärde - startvärde - nettoinflöde = 8 181 000 - 0 - 8 100 000 = 81 000 HKD
så den modifierade Dietz-avkastningen beräknas som:
- vinst eller förlust / medelkapital = 81 000 / 22 131,15 = 366 %
Så vilken är rätt avkastning, 1 procent eller 366 procent?
Justerat tidsintervall
Det enda vettiga svaret på exemplet ovan är att innehavstidsavkastningen entydigt är 1 procent. Detta innebär att startdatumet bör justeras till datumet för det initiala externa flödet. Likaså, om portföljen är tom i slutet av perioden, bör slutdatumet anpassas till det slutliga externa flödet. Slutvärdet är i praktiken det slutliga externa flödet, inte noll.
Avkastningen årligen med en enkel metod att multiplicera upp 1 procent per dag med antalet dagar på året ger svaret 366 procent, men innehavsperiodens avkastning är fortfarande 1 procent.
Exempel korrigerat
Exemplet ovan korrigeras om startdatumet justeras till slutet av dagen den 30 december, och startvärdet nu är 8,1 miljoner HKD. Det finns inga externa flöden därefter.
Den korrigerade vinsten eller förlusten är densamma som tidigare:
- slutvärde - startvärde = 8 181 000 - 8 100 000 = 81 000 HKD
men det korrigerade genomsnittliga kapitalet är nu:
- startvärde + vägda nettoinflöden = 8,1m HKD
så den korrigerade modifierade Dietz-avkastningen är nu:
- vinst eller förlust / genomsnittligt kapital = 81 000 / 8,1 m = 1 %
Andra exemplet
Antag att en obligation köps för 1 128 728 HKD inklusive upplupen ränta och provision på handelsdagen den 14 november och säljs igen tre dagar senare på handelsdagen den 17 november för 1 125 990 HKD (återigen, netto efter upplupen ränta och provision). Förutsatt att transaktioner äger rum i början av dagen, vad är den modifierade Dietz-innehavsperiodens avkastning i HKD för detta obligationsinnehav under året fram till dagens slut den 17 november?
Svar
Svaret är att för det första omfattar hänvisningen till innehavsperioden hittills i år fram till utgången av dagen den 17 november både köp och försäljning. Detta innebär att den effektiva justerade innehavstiden faktiskt är från köpet vid dagens start den 14 november tills det säljs tre dagar senare den 17 november. Det justerade startvärdet är nettobeloppet för köpet, slutvärdet är nettobeloppet av försäljningen och det finns inga andra externa flöden.
- startvärde = 1 128 728 HKD
- slutvärde = 1 125 990 HKD
Det finns inga flöden, så vinsten eller förlusten är:
- slutvärde - startvärde = 1 125 990 - 1 128 728 = -2 738 HKD
och det genomsnittliga kapitalet är lika med startvärdet, så den modifierade Dietz-avkastningen är:
- vinst eller förlust / medelkapital = -2 738 / 1 128 728 = -0,24 % 2 dp
Bidrag - när man inte ska justera innehavstiden
Denna metod att begränsa beräkningen till den faktiska innehavsperioden genom att tillämpa ett justerat start- eller slutdatum gäller när avkastningen beräknas på en investering isolerat. När investeringen hör hemma i en portfölj, och vikten av investeringen i portföljen, och bidraget från denna avkastning till portföljens helhet krävs, är det nödvändigt att jämföra lika med liknande, vad gäller ett gemensamt innehav period.
Exempel
Antag att i början av året innehåller en portfölj kontanter till ett värde av 10 000 USD på ett konto som bär ränta utan några avgifter. I början av fjärde kvartalet investerades 8 000 $ av dessa kontanter i några aktier i amerikanska dollar (i företag X). Investeraren tillämpar en köp-och-håll-strategi och det finns inga ytterligare transaktioner under resten av året. I slutet av året har aktierna ökat i värde med 10 % till 8 800 USD och räntan på 100 USD aktiveras på kassakontot.
Vad är avkastningen på portföljen under året? Vilka är bidragen från kassakontot och aktierna? Vidare, vad är avkastningen på kassakontot?
Svar
Portföljens slutvärde är 2 100 USD i kontanter, plus aktier värda 8 800 USD, vilket är totalt 10 900 USD. Det har skett en värdeökning på 9 procent sedan årsskiftet. Det finns inga externa flöden in eller ut ur portföljen under året.
- viktade flöden = 0
så
- medelkapital = startvärde = 10 000 USD
så avkastningen är:
- vinst eller förlust / medelkapital = 900 / 10 000 = 9 %
Denna portföljavkastning på 9 % fördelar sig mellan 8 procents bidrag från de 800 USD som tjänats in på aktierna och 1 procents bidrag från räntan på 100 USD som tjänats in på kontantkontot, men hur mer generellt kan vi beräkna bidrag?
Det första steget är att beräkna det genomsnittliga kapitalet på var och en av kassakontot och aktierna under hela årsperioden. Dessa bör summera till det genomsnittliga kapitalet på $10 000 för portföljen som helhet. Från det genomsnittliga kapitalet för var och en av de två komponenterna i portföljen kan vi beräkna vikter. Kontantkontots vikt är kassakontots genomsnittliga kapital dividerat med medelkapitalet (10 000 USD) i portföljen, och aktiernas vikt är aktiernas genomsnittliga kapital under hela året, dividerat med medelkapitalet av portföljen.
För enkelhetens skull kommer vi att anta att tidsvikten för utflödet av $8 000 kontanter för att betala för aktierna är exakt 1/4. Det innebär att årets fyra kvartal behandlas som lika långa.
Det genomsnittliga kapitalet på kassakontot är:
-
medelkapital
- = startvärde - tidsvikt × utflödesbelopp
- = 10 000 - 1 / 4 × 8 000 $
- = 10 000 - 2 000 $
- = 8 000 $
Det genomsnittliga kapitalet för aktierna under det senaste kvartalet kräver ingen beräkning, eftersom det inte finns några flöden efter början av det sista kvartalet. Det är de 8 000 dollar som investerats i aktierna. Det genomsnittliga kapitalet i aktierna över hela året är dock något annat. Aktiernas startvärde i början av året var noll, och det fanns ett inflöde på 8 000 USD i början av det sista kvartalet, så:
-
medelkapital
- = startvärde - tidsvikt × utflödesbelopp
- = 0 + 1 / 4 × 8 000 $
- = 2 000 $
Vi kan omedelbart se att vikten av kassakontot i portföljen under året var:
-
medelkapital på kassakontot / medelkapital i portföljen
- = 8 000 / 10 000
- = 80 %
och aktiernas vikt var:
-
medelkapital i aktier / medelkapital i portföljen
- = 2 000 / 10 000
- = 20 %
vilket uppgår till 100 procent.
Vi kan beräkna avkastningen på kontantkontot som var:
- vinst eller förlust / medelkapital = 100 / 8 000 = 1,25 %
Bidraget till portföljens avkastning är:
Vad sägs om bidraget till portföljavkastningen från aktierna?
Den justerade innehavstidens avkastning på aktierna är 10 procent. Multiplicerar vi detta med 20 procents vikt på aktierna i portföljen blir resultatet bara 2 procent, men det korrekta bidraget är 8 procent.
Svaret är att använda avkastningen på aktierna under den ojusterade helårsperioden för att beräkna bidraget:
-
Ojusterad periodavkastning
- = vinst eller förlust / ojusterad period genomsnittligt kapital
- = 800 / 2 000
- = 40 %
Då är bidraget från aktierna till portföljavkastningen:
-
vikt × ojusterad periodavkastning
- = 20 % × 40 % = 8 %
Det betyder inte att den korrekta innehavstidsavkastningen på aktierna är 40 procent, men för beräkning av bidraget använd den ojusterade periodavkastningen, som är 40-procentssiffran, inte den faktiska 10-procentiga innehavstidsavkastningen.
Avgifter
För att mäta avkastningen exklusive avgifter, låt portföljens värde minskas med avgiftsbeloppet. För att beräkna avkastningen efter avgifter, kompensera för dem genom att behandla dem som ett externt flöde och exkludera upplupna avgifter från värderingar.
Årlig avkastning
Observera att Modified Dietz-avkastningen är en avkastning under innehavsperioden, inte en årlig avkastning, om inte perioden råkar vara ett år. Annualisering, som är omvandling av innehavsperiodens avkastning till en årlig avkastning, är en separat process.
Penningvägd avkastning
Den modifierade Dietz-metoden är ett exempel på en penning- (eller dollar) vägd metod (i motsats till tidsvägd ). I synnerhet om den modifierade Dietz-avkastningen på två portföljer är och mätt över ett gemensamt matchande tidsintervall, då den modifierade Dietz-avkastningen på de två portföljer sammansatta över samma tidsintervall är det vägda genomsnittet av de två avkastningarna:
där portföljernas vikter beror på det genomsnittliga kapitalet över tidsintervallet:
Länkad avkastning kontra sann tidsvägd avkastning
Ett alternativ till den modifierade Dietz-metoden är att geometriskt länka de modifierade Dietz-avkastningarna under kortare perioder. Den länkade modifierade Dietz-metoden klassas som en tidsvägd metod, men den ger inte samma resultat som den sanna tidsvägda metoden, som kräver värderingar vid tidpunkten för varje kassaflöde.
frågor
Problem med tidsantaganden
Det finns ibland svårigheter vid beräkning eller nedbrytning av portföljavkastning, om alla transaktioner behandlas som att de inträffat vid en enskild tidpunkt på dagen, till exempel i slutet av dagen eller början av dagen. Oavsett vilken metod som används för att beräkna avkastning, kan ett antagande om att alla transaktioner sker samtidigt vid en enda tidpunkt varje dag leda till fel.
Tänk till exempel ett scenario där en portfölj är tom i början av en dag, så att startvärdet A är noll. Det finns sedan ett externt inflöde under den dagen på F = $100. Vid slutet av dagen har marknadspriserna rört sig, och slutvärdet är $99.
Om alla transaktioner behandlas som inträffade vid dagens slut, så finns det noll startvärde A och nollvärde för genomsnittligt kapital, eftersom dagsvikten på inflödet är noll, så ingen modifierad Dietz-avkastning kan beräknas.
Vissa sådana problem löses om den modifierade Dietz-metoden ytterligare justeras så att köpen är öppna och försäljningen är stängda, men mer sofistikerad undantagshantering ger bättre resultat.
Det finns ibland andra svårigheter vid nedbrytning av portföljavkastning, om alla transaktioner behandlas som inträffade vid en enda punkt under dagen.
Tänk till exempel en fondöppning med bara 100 USD av en enskild aktie som säljs för 110 USD under dagen. Under samma dag köps en annan aktie för $110, som avslutas med ett värde av $120. Avkastningen på varje aktie är 10% och 120/110 - 1 = 9,0909% (4 dp) och portföljavkastningen är 20%. Tillgångsvikterna w i (i motsats till tidsvikterna Wi : ) som krävs för att få avkastningen för dessa två tillgångar att rulla upp till portföljavkastningen är 1200% för den första aktien och negativa 1100% för den andra
- w*10/100 + (1-w)*10/110 = 20/100 → w = 12.
Sådana vikter är absurda, eftersom den andra aktien inte är kort.
Problemet uppstår bara för att dagen behandlas som ett enda, diskret tidsintervall.
Negativt eller noll medelkapital
Under normala omständigheter är medelkapitalet positivt. När ett utflöde inom perioden är stort och tillräckligt tidigt kan medelkapitalet vara negativt eller noll. Negativt medelkapital gör att Modified Dietz-avkastningen blir negativ när det finns en vinst och positiv när det finns en förlust. Detta liknar beteendet hos en skuld eller kort position, även om investeringen inte faktiskt är en skuld eller en kort position. I de fall medelkapitalet är noll kan ingen Modified Dietz avkastning beräknas. Om medelkapitalet är nära noll blir Modified Dietz-avkastningen stor (stor och positiv, eller stor och negativ).
En partiell lösning innebär som ett första steg att fånga undantaget, att upptäcka till exempel när startvärdet (eller första inflödet) är positivt och medelkapitalet är negativt. Använd sedan i det här fallet den enkla returmetoden, justera slutvärdet för utflöden. Detta motsvarar summan av ingående bidrag, där bidragen baseras på enkla avkastningar och vikter beroende på startvärden.
Exempel
Till exempel, i ett scenario där endast en del av innehaven säljs, för betydligt mer än det totala utgångsvärdet, relativt tidigt i perioden:
- Vid början av dag 1 är antalet aktier 100.
- Vid början av dag 1 är aktiekursen 10 dollar. Startvärde
- = 1 000 dollar Vid
- slutet
- av dag 5 säljs 80 aktier för 15 dollar per aktie.
- av dag 40 är de återstående 20 aktierna värda 12,50 dollar per aktie
Vinsten eller förlusten är slutvärde - startvärde + utflöde:
Det finns en vinst och positionen är lång, så vi förväntar oss intuitivt en positiv avkastning.
Det genomsnittliga kapitalet i detta fall är:
Den modifierade Dietz-avkastningen går i det här fallet snett, eftersom medelkapitalet är negativt trots att det är en lång position. Den modifierade Dietz avkastningen i detta fall är:
Istället märker vi att startvärdet är positivt, men medelkapitalet är negativt. Dessutom finns det ingen blankning. Med andra ord är antalet innehavda aktier alltid positivt.
Vi mäter sedan den enkla avkastningen från de sålda aktierna:
och från de aktier som fortfarande hölls vid slutet:
och kombinera dessa avkastningar med vikten av dessa två delar av aktierna i startpositionen, som är:
- respektive .
Detta ger bidragen till den totala avkastningen, som är:
- respektive \ .
Summan av dessa bidrag är avkastningen:
Detta motsvarar den enkla avkastningen, justering av slutvärdet för utflöden:
Begränsningar
Den här lösningen har begränsningar. Det är möjligt endast om innehaven kan delas upp så här.
Det är inte idealiskt, av ytterligare två skäl, som är att det inte täcker alla fall, och det är oförenligt med Modified Dietz-metoden. I kombination med modifierade Dietz-bidrag för andra tillgångar kommer summan av ingående bidrag inte att gå ihop med den totala avkastningen.
En annan situation där medelkapitalet kan vara negativt är blankning. Istället för att investera genom att köpa aktier lånas aktier och säljs sedan. En nedgång i aktiekursen ger vinst istället för förlust. Positionen är en skuld istället för en tillgång. Om vinsten är positiv, och medelkapitalet är negativt, är Modified Dietz-avkastningen negativ, vilket indikerar att även om antalet aktier är oförändrat, har det absoluta värdet av skulden krympt.
Vid ett köp, följt av en försäljning av fler aktier än vad som köpts, vilket resulterar i en kort position (negativt antal aktier), kan också medelkapitalet vara negativt. Det som var en tillgång vid köpet blev en skuld efter försäljningen. Tolkningen av den modifierade Dietz-avkastningen varierar från en situation till en annan.
Visual Basic
0
0
Funktion georet_MD ( myDates , myReturns , FlowMap , scaler ) ' Denna funktion beräknar den modifierade Dietz-returen för en tidsserie ' ' Inputs . ' myDates. Tx1 vektor av datum ' myReturns. Tx1 vektor för finansiell avkastning ' FlowMap. Nx2 matris av datum (vänster kolumn) och flöden (höger kolumn) ' scaler. Skalar returerna till lämplig frekvens ' ' Utgångar . ' Modifierad Dietz återkommer. ' ' Observera att alla datum för flödena måste finnas i datumvektorn som tillhandahålls. ' när ett flöde matas in börjar det ackumuleras först efter 1 period. ' Dim i , j , T , N As Long Dim matchFlows (), Tflows (), cumFlows () As Double Dim np As Long Dim AvFlows , TotFlows As Double ' Get dimensions If StrComp ( TypeName ( myDates ), "Range" ) = Sedan T = myDates . Rader . Count Else T = UBound ( myDates , 1 ) End If If StrComp ( TypeName ( FlowMap ), "Range" ) = Then N = FlowMap . Rader . Räkna Else N = UBound ( FlowMap , 1 ) End If ' Redim arrays ReDim cumFlows ( 1 To T , 1 To 1 ) ReDim matchFlows ( 1 To T , 1 To 1 ) ReDim Tflows ( 1 To T , 1 To 1 ) ' Skapa en vektor av flöden för i = 1 Till N j = Tillämpning . Arbetsblad Funktion . Matcha ( FlowMap ( i , 1 ), myDates , True ) matchFlows ( j , 1 ) = FlowMap ( i , 2 ) Tflöden ( j , 1 ) = 1 - ( FlowMap ( i , 1 ) - FlowMap ( 1 , 1 )) / ( myDates ( T , 1 ) - FlowMap ( 1 , 1 )) Om i = 1 Då np = T - j Nästa i ' Kumulerade flöden För i = 1 Till T Om i = 1 Då cumFlöden ( i , 1 ) = matchFlöden ( i , 1 ) Else cumFlows ( i , 1 ) = cumFlows ( i - 1 , 1 ) * ( 1 + myReturns ( i , 1 )) + matchFlows ( i , 1 ) End If Next i AvFlows = Application . Arbetsblad Funktion . SumProduct ( matchFlows , Tflows ) TotFlows = Application . Arbetsblad Funktion . Summa ( matchFlows ) georet_MD = ( 1 + ( cumFlows ( T , 1 ) - TotFlows ) / AvFlows ) ^ ( scaler / np ) - 1 Slutfunktion _
Java-metod för modifierad Dietz-retur
0
0
0
0
0
0
0
privat statisk dubbel modifieradDietz ( dubbelt emv , dubbelt bmv , dubbelt cashFlow [] , int numCD , int numD [] ) { /* emv: Slutande marknadsvärde * bmv: Börjande marknadsvärde * cashFlow[]: Kassaflöde * numCD: verkligt antal antal dagar i perioden * numD[]: antal dagar mellan början av perioden och datum för cashFlow[] */ double md = - 99999 ; // initiera modifierad dietz med ett felsökningsnummer try { double [] weight = new double [ cashFlow . längd ] ; if ( numCD <= ) { throw new ArithmeticException ( "numCD <= 0" ); } for ( int i = ; i < cashFlow . length ; i ++ ) { if ( numD [ i ] < ) { throw new ArithmeticException ( "numD[i]<0 , " + "i=" + i ); } vikt [ i ] = ( dubbel ) ( numCD - numD [ i ] ) / numCD ; } dubbel ttwcf = ; // totala tidsvägda kassaflöden för ( int i = ; i < cashFlow . length ; i ++ ) { ttwcf += vikt [ i ] * cashFlow [ i ] ; } dubbel tncf = ; // totala nettokassaflöden för ( int i = ; i < cashFlow . length ; i ++ ) { tncf += cashFlow [ i ] ; } md = ( emv - bmv - tncf ) / ( bmv + ttwcf ); } catch ( ArrayIndexOutOfBoundsException e ) { e . printStackTrace (); } catch ( ArithmeticException e ) { e . printStackTrace (); } catch ( Undantag e ) { e . printStackTrace (); } returnera md ; }
Excel VBA-funktion för modifierad Dietz-retur
0
0
0
0
Public Function MDIETZ ( dStartValue As Double , dEndValue As Double , iPeriod As Integer , rCash As Range , rDays As Range ) As Double 'Jelle-Jeroen Lamkamp 10 Jan 2008 Dim i As Integer : Dim Cash () As Double : Dim Days () As Integer Dim Cell As Range : Dim SumCash As Double : Dim TempSum As Double 'Något felfällning If rCash . Celler . Räkna <> rDays . Celler . Räkna sedan MDIETZ = CVErr ( xlErrValue ): Avsluta funktion om applikation . Arbetsblad Funktion . Max ( rDays ) > iPeriod Sedan MDIETZ = CVErr ( xlErrValue ) : Avsluta Funktion ReDim Cash ( rCash . Cells . Count - 1 ) ReDim Days ( rDays . Cells . Count - 1 ) i = För varje cell i rCash Cash ( i _ Cell . Värde : i = i + 1 Nästa cell i = För varje cell i rDays Dagar ( i ) = Cell . Värde : i = i + 1 Next Cell SumCash = Application . Arbetsblad Funktion . Summa ( rCash ) TempSum = För i = Till ( rCash . Cells . Count - 1 ) TempSum = TempSum + ((( iPeriod - Days ( i )) / iPeriod ) * Kontanter ( i )) Nästa i MDIETZ = ( endValue - dStartValue - SumCash ) / ( dStartValue + TempSum ) Slutfunktion _
Se även
- Redovisningsgrad av avkastning
- Kapitalbudgetering
- Intern avkastning
- Avkastning
- Enkel Dietz-metod
- Tidsviktad avkastning
Vidare läsning
- Carl Bacon. Praktisk mätning och tillskrivning av portföljprestanda. West Sussex: Wiley, 2003. ISBN 0-470-85679-3
- Bruce J. Feibel. Investment Performance Measurement. New York: Wiley, 2003. ISBN 0-471-26849-6
- Christopherson, Jon A. et al. Portföljprestandamätning och benchmarking. McGraw-Hill, 2009. ISBN 9780071496650