Forum Discussion

AMCW's avatar
AMCW
Frequent Visitor
4 years ago

Time-Weighted Return

I need some assistance creating a measure to calculate YTD Time-Weighted Return ("TWR")

To simplify as much as possible, the user will be able to filter by any number of months in the year but will always choose contiguous months and will always start with Jan. 

 

Ex. Jan

or Jan & Feb

or Jan & Feb & Mar, etc.....so YTD.

 

I have "Return" as a measure that is correctly calculating at a per month basis.

I need the time-weighted return ("TWR") to calculate through the max month selected.

 

In the example below,

if the user selected Jan, Feb, Mar, the TWR = 4.34%

if the user selected Jan, Feb, Mar, Apr, May, the TWR = 3.14%

 

 

 

 

 

 

 

 

 

3 Replies

  • vapid128's avatar
    vapid128
    Solution Specialist

    add colnum

    Return+1 =[return]+1

     

    Measure:

     

     

    var maxMonth = max([month/year])
    
    return
    
    calculate(
    product([return+1]),
    Filter(ALL/ALLSELECTED([month/year]),[month/year]<=maxMonth)
    )
    -1

     

     

    • AMCW's avatar
      AMCW
      Frequent Visitor

      Your measure will not work as is since "Product" requires a column. 

      "Return" is not a column in my dataset. The key identifies it as a measure and it needs to stay as such.

  • Anonymous's avatar
    Anonymous
    Not applicable

    Any update on this?