I am trying to figure out the computational difference between Time-Weighted Rate of Return (TWRR) and Money-Weighted Rate of Return (MWRR).

Let's say, I have a portfolio looking like this:

  • 2012-Q4 - Begin Market Value (BMV) is $10,000, and End Market Value (EMV) $11,000. So, over the quarter, I made 10% on my stocks.
  • 2013-Q1 - I decide I will invest another $4,000 in Cash Flow (C), so my BMV is now $15,000. If I make 5% this quarter, my EMV is now $15,750.
  • 2013-Q2 - My portfolio didn't go so well last quarter, so I take $2,000 (C) out. My BMV is $11,750. I make 10% over this quarter so my EMV is now $12,925.


If I calculate my MWRR ( (EMV - BMV) / BMV ):

  • 2012Q4 = ($11,000 - $10,000) / $10,000 = 10%
  • 2013Q1 = ($15,750 - $15,000) / $15,000 = 5%
  • 2013Q2 = ($12,925 - $11,750) / $11.750 = 10%

  • MWRR = (2012Q4 x 2013Q1 x 2013Q2) ^ (1/3) = 7.93%


Then the TWRR ( (EMV-BMV-C)/(BMV + .5 x C) ):

  • 2012Q4 = ($11,000 - $10,000 - $0) / ($10,000 + 0.5 x $0) = 10%
  • 2013Q1 = ($15,750 - $15,000 - $4,000) / ($15,000 + 0.5 x $4,000) = -19.1%
  • 2013Q2 = ($12,925 - $11,750 + $2,000) / ($11,750 + 0.5 x -$2,000) = 29%

  • TWRR = (2012Q4 x 2013Q1 x 2013Q2) ^ (1/3) = ??


So, my two questions:

  • As there are negatives in my TWRR's, it doesn't make sense to use a Geometric Mean (nor is it possible with imaginary numbers). The rates are still dependent in time, so a geometric mean would SEEM the appropriate way to weight them. What other ways can I aggregate my TWRR's?
  • The TWRR numbers seem way off. I certainly wouldn't have lost 20%, even weighted for cash-in/cash-out. What am I doing wrong?


  • In response to @Drew's question regarding how to handle cash flows, it is useful to understand why they appear in formulae anyway. The reason they appear is that it is necessary to adjust the start value or end value (or both) to give a better measure of how much the value of the portfolio has grown (or shrunk). The question itself actually tells you what the growth is in each quarter, so for the time-weighted return calculation, you don't need the valuations and flows, you can skip right to the geometric linking of the quarterly returns.
    – user11957
    Commented Nov 26, 2013 at 7:31
  • A very good point, however the time-weighted return cannot be used to accurately replicate the final value, which is useful for reconciliation. Commented Nov 26, 2013 at 16:43

6 Answers 6


The TWRR calculation will work even with negative values:

TWRR = (1 + 0.10) x (1 + (-0.191) ) x (1 + 0.29) ^ (1/3) = 1.047 which is a 4.7% return.

Your second question concerns the -19% return calculated for the second quarter. You seem to think this return is "way-off". Not really. The TWRR calculates a return by accounting for cash that was added or deducted to/from the account. So if I started with $100,000, added $10,000 to the account, and ended up with $110,000, what should be the return on my investment? My answer would be 0% since the only reason my account balance went up was due to me adding cash to it. Therefore, if I started with $100,000, added $10,000 in cash to the account, and ended up with $100,000 in my account, then my return would be a negative value since I lost the $10,000 that I deposited in the account.

In the second quarter you started with $15,000, deposited $4,000, and ended with $15,750. You essentially lost almost all of the $4,000 you deposited. That is a significant loss.

  • I just reread your question. For the second quarter it looks like you added $4,000 to your account from the previous quarter. Therefore, your beginning value (BMV) should be $11,000 not $15,000. TWRR assumes all cash is added in the middle of the time period which is why it is divided in half in the denominator or the equation. You could account for adding the cash at the beginning of the quarter by prorating the multiplier in the denominator. This was explained in one of the links you posted.
    – Muro
    Commented Jan 18, 2013 at 18:05

Your example isn't consistent: Q1 end market value (EMV) is $15,750, then you take out $2,000 and say your Q2 BMV is $11,750? For the following demo calculations I'll assume you mean your Q2 BMV is $13,750, with quarterly returns as stated: 10%, 5%, 10%. The Q2 EMV is therefore $15,125.

True time-weighted return :- http://en.wikipedia.org/wiki/True_time-weighted_rate_of_return

enter image description here

The following methods have the advantage of not requiring interim valuations.

Money-weighted return :- http://en.wikipedia.org/wiki/Rate_of_return#Internal_rate_of_return

enter image description here

Logarithmic return :- http://en.wikipedia.org/wiki/Rate_of_return#Logarithmic_or_continuously_compounded_return

enter image description here

Modified Dietz return :- http://en.wikipedia.org/wiki/Modified_Dietz_method

enter image description here

Backcalculating the final value (v3) using the calculated returns show the advantage of the money-weighted return over the true time-weighted return.

enter image description here


TWRR = (2012Q4 x 2013Q1 x 2013Q2) ^ (1/3) = ??

(1.1 * .809 * 1.29) ^ (1/3) = 1.047 or 4.7% return. No imaginary numbers needed.

But. Your second line there is wrong $15,750 - $15,000 - $4,000 ? The $15K already contains the $4k, why did you subtract it again?

This a homework problem?

  • It's not a homework problem. I'm trying to learn how TWRR and MWRR works for my own portfolio, and just used simplified numbers. Regarding the subtraction of the $4k of Cash Flow, I'm still following equations (as in the second reference), rather than having an understanding of how the Rates of Return differ computationally. THank you for this!
    – Drew
    Commented Dec 23, 2012 at 22:09
  • I subtracted the cash flow as that's how my investopedia says I should do it. Can you give me any insight into why I should or should not remove the CF, or where my calculation of BMV or EMV is wrong?
    – Drew
    Commented Jan 14, 2013 at 1:03
  1. You seem to be using a strange formula for money-weighted rate of return.

If you mean the internal rate of return, then the quarterly rate of return which would make the net present value of these cash flows to be zero is 8.0535% (found by goal seek in Excel), or an equivalent compound annual rate of 36.3186% p.a.

The net present value of the cash flows is:

10,000 + 4,000/(1+r) - 2,000/(1+r)^2 - 15,125/(1+r)^3,

where r is the quarterly rate.

If instead you mean Modified Dietz return, then the net gain over the period is:

End value - start value - net flow = 15,125 - 10,000 - (4,000 - 2,000) = 3,125

The weighted average capital invested over the period is:

1 x 10,000 + 2/3 x 4,000 - 1/3 x 2,000 = 12,000

so the Modified Dietz return is 3,125 / 12,000 = 26.0417%, or 1.260417^(1/3)-1 = 8.0201% per quarter, or an equivalent compound annual rate of 1.260417^(4/3)-1 = 36.1504%.

  1. You seem to be calculating the quarterly time-weighted rate of return.

You are using an inappropriate formula, because we know for a fact that the flows take place at the beginning/end of the period. Instead, you should be combining the returns for the quarters (which have in fact been provided in the question).

To calculate this, first calculate the growth factor over each quarter, then link them geometrically to get the overall growth factor. Subtracting 1 gives you the overall return for the 3-quarter period. Then convert the result to a quarterly rate of return.

Growth factor in 2012 Q4 is 11,000/10,000 = 1.1 Growth factor in 2013 Q1 is 15,750/15,000 = 1.05 Growth factor in 2013 Q2 is 15,125/13,750 = 1.1

Overall growth factor is 1.1 x 1.05 x 1.1 = 1.2705

Return for the whole period is 27.05%

Quarterly rate of return is 1.2705^(1/3)-1 = 8.3074%

Equivalent annual rate of return is 1.2705^(4/3)-1 = 37.6046%


I'd recommend you to refer to Wikipedia.

  • Welcome to Money.StackExchange.com. this doesn't really seem to answer the question. Please take a look at our About and Help center.
    – C. Ross
    Commented Nov 26, 2013 at 12:47
  • I think this is a helpful answer. I agree with all the results: the IRR (money-weighted return) of 8.0535% per quarter, the modified Dietz 8.0201%, and the time-weighted return of 8.3074%. Note only the money-weighted return will reproduce $15,125 if r=0.080535 is used in ((10000*(1 + r) + 4000)*(1 + r) - 2000)*(1 + r) which shows the advantage of using money-weighted returns. Commented Nov 26, 2013 at 14:53

The MWRR that you showed in your post is calculated incorrectly. The formula that you use... ($15,750 - $15,000 - $4,000) / ($15,000 + 0.5 x $4,000) Translates into a form of the DIETZ formula of (EMV-BMV-C)/(BMV + .5 x C) The BMV is the STARTING balance. And as a matter of fact, the starting balance was NOT 15,000. It was IN FACT 11,000. See, the starting value for a month MUST BE the ending value of the prior month. So the BMV of 11,000 would give you the correct answer. Because if you added 4,000 at the start of the month (on day 1), it would have to have been ADDED to the 11,000 of the PRIOR month's ENDING value. Make sense? That would also mean that the addition of 4000 to the 11000 would imply that you started day 1 with 11,000. Make sense?

Summary: When doing the calculations, you may use the ending value on the last day of the month to get your EMV. BUT YOU MAY NOT take the ending value on day 1 to get the BMV. That simply can not make sense since you already added a bunch of money during the day.

Think about it. Davie


Many different prestigious finance and banking firms have a specific way to calculate MWRR. The way to do it is to gather you beginning market values , ending market values, and net additions and treat all of them as cash flows that occur with specific dates. MWRR is over a period of time and can be daily monthly quarterly or yearly. In this case, it will be calculated yearly. The numbers in this example have changed.

from pyxirr import xirr
from datetime import date
dates = [date(2021, 9, 15), date(2021, 9, 16), date(2021, 9, 17), date(2021,9,15)]
adjusted_amounts = [21285,-21538,-25025,23417 ]
XIRR = xirr(dates, adjusted_amounts)
mwrr = (1+XIRR)**((max(dates) - min(dates)).days/365 ) -1

where our dates span 9-15 to 9-17

bmv = -23417

emv = -25025

cash flow1 = -21285 cash flow2 = 21538 and where mwrr_annualized = (1+XIRR)^(Delta_days/365) -1

Be mindful of where the negatives apply; emv is neglected.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .