WebCab Portfolio Demo
v4.2
(J2SE Edition)

webcab.lib.finance.portfolio
Class PerformanceEvaluation

java.lang.Object
  |
  +--webcab.lib.finance.portfolio.PerformanceEvaluation
All Implemented Interfaces:
Serializable

public class PerformanceEvaluation
extends Object
implements Serializable

Within this class we offer a number of procedures which assist in accessing the return and risk-adjusted return on an investment portfolio. In particular, we offer:

  1. Non-Risk Adjusted Measures - These measures do not take into account the risk of a portfolio when accessing its `return'
    1. portfolioReturn - Direct evaluation of the real or expect return of a portfolio.
    2. totalReturn - Evaluates the total return of an investment taking into account dividends, loan notes and rights issues which can have a significant effect on the over-all level of return.
    3. geometricMeanReturn - Averages out the effect of compounding and returns an equivalent average per period return when the return is known over several consecutive periods.

  2. Risk Adjusted Measures - These measures take into account the `risk' of a portfolio when accessing its `return'
    1. sharpesRatio - Sharpe's Ratio evaluates the excess return over the risk free rate which a portfolio achieves per unit of risk when the risk is measured in terms of the standard deviation of the historical process.
    2. treynorsMeasure - Treynors Measure evaluates the excess return over the risk free rate which a portfolio achieves per unit of risk when the risk is measured in terms of the beta (with respect to a suitable market index) of the portfolio.

See Also:
Serialized Form

Constructor Summary
PerformanceEvaluation()
          Creates a new instance.
 
Method Summary
 double geometricMeanReturn(double[] returnOverEachPeriod)
          Evaluates the Geometric Mean Return of the performance of a portfolio measured over several intervals.
 double portfolioReturn(double[] weight, double[] returns)
          Evaluates the real or expected return of a portfolio of assets over a given period.
 double sharpesRatio(double averageReturn, double standardDeviation, double riskFree)
          Sharpe's Ratio which evaluates the excess return of an asset over the risk free rate of return for each additional unit of risk which the portfolio assumes.
 double totalReturn(double disbursement, double dividends, double marketPriceStart, double marketPriceEnd)
          Evaluates the total realized returns of a portfolio over a given period of time.
 double treynorsMeasure(double averageReturn, double beta, double riskFree)
          We calculate Treynor's performance measure which takes into account the systematic risk (or beta) and the average return when assessing the overall risk adjusted performance of a portfolio.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PerformanceEvaluation

public PerformanceEvaluation()
Creates a new instance.

Method Detail

portfolioReturn

public double portfolioReturn(double[] weight,
                              double[] returns)
                       throws PerformanceEvaluationDemoException
Evaluates the real or expected return of a portfolio of assets over a given period.

Real or Expected Returns

If the return values used refer to the known historical values of the assets over a given period of time then the (known) real (historical) return is evaluated. If however an estimate of the expected return is used then the future expected return of the portfolio over the future period considered will be given.

Application of the Real or Expected Return to Performance Evaluation

Knowing the real return of a portfolio allows the direct comparison between the absolute returns of portfolios. Within a portfolio theory framework knowing the expected return of a portfolio will give us an indication of its level of risk. In particular, if we have already evaluated the efficient frontier for the collection of asset from which the portfolio is constructed then we will be able to read off the lower bound of the risk of the portfolio.

Remark: The real (historical) return does not take into account the historical risk of the portfolio.

Parameters:
weight - weight[i] is the weight of the asset i, at the start of the period until consideration. Note that by definition, x[0] + x[1] + ... + x[N - 1]=1; where 0 > c[i] > 1, for all i.
returns - returns[i] is respectively the real or expected return for the ith asset over the given period. If the returns are given as percentages then the returned result will expected real or expected percentage change of the portfolio over the period considered. If on the other hand the returns are given as absolute changes either real or expected then the returned result will expressed the real or expected absolute return of the portfolio of the period considered.
Returns:
The double equal to the real or expected return of a portfolio.
PerformanceEvaluationDemoException

totalReturn

public double totalReturn(double disbursement,
                          double dividends,
                          double marketPriceStart,
                          double marketPriceEnd)
                   throws PerformanceEvaluationDemoException
Evaluates the total realized returns of a portfolio over a given period of time.

Application of the Total Return

It is important when considering the return from an investment asset to consider all sources of cash flows which can result from holding a given asset. In the case of equity these other cash flow could result from company dividends and other disbursements such a special dividends, loan notes and the shares of newly establish entities. Care should also be taken in include further costs such as a rights issues when the stocks holders are required to make payments to the underlying corporation.

Remarks:

  1. The measure of the total return of a portfolio does not take into account the risk of the portfolio.
  2. Note that the total return does not take into account when the cash flow take place during the period under consideration. That is, the cash flow are not discounted is accordance with an interest rate.

Parameters:
disbursement - the cash disbursement during the period. That is, the total amount in the reference currency which is paid out during the period being considered.
dividends - the total amount of dividends paid during the period. That, is the total amount in the reference currency which is paid out during the period being considered.
marketPriceStart - the market price in the reference currency of the portfolio at the start of the period being considered.
marketPriceEnd - the market price in the reference currency of the portfolio at the end of the period being considered.
Returns:
A double equal to the total realized return of a portfolio.
PerformanceEvaluationDemoException

geometricMeanReturn

public double geometricMeanReturn(double[] returnOverEachPeriod)
                           throws PerformanceEvaluationDemoException
Evaluates the Geometric Mean Return of the performance of a portfolio measured over several intervals.

Applicability of the Geometric Mean Return

The geometric mean is a useful measure because it factors out the the level of return for each of the intervals for which the same level of return would be generated.

Example: Say that we know that the return over the 1st, 2nd, 3rd, 4th and 5th year to be 10%, 12%, 15%, 13% and 16% respectively. That is, we have: returnOverEachPeriod = {0.10, 0.12, 0.15, 0.13, 0.16}. Then by applying this method we find that the geometric mean return is 13.18%, or 0.1318 in decimal format. Please note that this method returns the geometric mean return in decimal format.

Parameters:
returnOverEachPeriod - an array where the first element is the return over the first period expressed in decimal format (i.e. 1 percent = 0.01), the second term is the return over the second period expressed in decimal format (i.e. 1 percent = 0.01), and so on. The results should be expressed in decimal format.
Returns:
A double equal to the Geometric Mean Return of a portfolio.
PerformanceEvaluationDemoException

sharpesRatio

public double sharpesRatio(double averageReturn,
                           double standardDeviation,
                           double riskFree)
                    throws PerformanceEvaluationDemoException
Sharpe's Ratio which evaluates the excess return of an asset over the risk free rate of return for each additional unit of risk which the portfolio assumes. Sharpe's ratio is a widely used measure which makes it possible to make balanced risk adjusted comparisons between different portfolios. In accordance to Sharpe's methodology the portfolio with a higher Sharpe's ratio should be preferred to a portfolio with a lower Sharpe's ratio.

Applying Sharpe's Ratio

Suppose an US stock investment gives a return over a given year of 10 percent and the rate available from a risk free Treasury Bond over the same year is 6 percent. Then the reward for taking on the higher level of risk of the stock over the risk free Treasury is 4 percent. Say the risk (i.e. standard deviation) of the stock over the year is 2 percent. Then the excess return of the stock over the Treasury per unit of risk (i.e. per 1 percent of standard deviation) is 2 percent. That is, the Sharpe's ratio here is 2 percent.

Parameters:
averageReturn - the average return from the portfolio over the period considered expressed in decimal format (i.e. 1 percent = 0.01)
standardDeviation - standard deviation of the market price of the portfolio (i.e. its risk) over the period considered expressed in decimal format (i.e. 1 percent = 0.01)
riskFree - the (constant) risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01). The risk free interest rate of a given maturity within a given currency is usual taken to be the yield to maturity of a Government Bond of the same maturity. Here we should taken the yield to maturity of the Government bond at the beginning of the period under consideration which matures at the end of the period over which Sharpe's ration is evaluated. Note that if no such interest rate security exists then you could use the yield to maturity of the closest instrument or better still use such instruments and the boot-strapping technique.
Returns:
A double equal to Sharpe's Ratio of portfolio returns.
PerformanceEvaluationDemoException

treynorsMeasure

public double treynorsMeasure(double averageReturn,
                              double beta,
                              double riskFree)
                       throws PerformanceEvaluationDemoException
We calculate Treynor's performance measure which takes into account the systematic risk (or beta) and the average return when assessing the overall risk adjusted performance of a portfolio. The Treynor measure differs from the sharpesRatio measure in that the return per unit measure of `risk' in standardized by uses the beta of the portfolio rather than the standard deviation of the price.

The Beta of a Portfolio

The beta of a portfolio measures the sensitivity of a portfolios return to some underlying market index (for example, the S&P500, FT100 etc). That is, if the underlying index increase by x percent then the Portfolio increase by ax percent then the beta of the portfolio against this index is said to be a. Care should be taken that the time period used in measuring the return of the portfolio and market index are the same. Moreover, there are good grounds for using the same the time period of the same length as the time period over which the average return and risk free interest rate are quoted.

Remark: An effective means by which to estimate the beta is by applying the least squares regression line from regression analysis.

Selection of a suitable Market Index to measure the Portfolio's Beta against

The market index used in order to measure the portfolios performance with respect to Treynor's measure such reflect the range of asset from which the portfolio can be constructed or is benchmarked against. For example, for a fund which can select investments form the S&P500 and is benchmarked against the S&P500, then S&P500 should be the market index used in the evaluation of the beta of the portfolio. If on the other hand the fund invests in Eastern European Stocks then a more natural benchmark could be Barrings European European Benchmark.

Applying Treynor's Measure

Suppose an US stock investment gives a return over a given year of 10 percent and the rate available from a risk free Treasury Bond over the same year is 6 percent. Then the reward for taking on the higher level of `risk' (as measured by the beta of the portfolio) of the stock investment over the risk free Treasury bond investment is 4 percent. Say the risk (i.e. standard deviation) of the stock over the year is 2 percent. Then the excess return of the stock over the Treasury per unit of risk (i.e. per 1 percent of standard deviation) is 2 percent. That is, the Sharpe's ratio here is 2 percent.

Application of Treynors Measure

The Treynor measure allows you to compare the performance of portfolios which invest within similar market sectors. It also help in differentiation of skill of a fund manager from the performance of the sector in which he often is obliged to invest it. Below we describe two instances when this can be particularly helpful:

  1. Select Fund from Category - In order to select a mutual fund from within a category (i.e. global general, bond fund etc) you could select a corresponding index for the given category under consideration and then evaluate the corresponding Treynors measure for all the mutual funds within that category. Now accordance to the Treynors measure the fund which offers the best return per unit `beta' is the portfolio with the highest (Treynor) value.
  2. Compare Funds in Different Categories - In a similar fashion the Treynor measure can be used in order to measure risk adjusted return of funds which invests within different sectors. Though the measure is far from idea it does allow the skill of the fund manager to (approximately) be factored out from the performance of the underlying sector. In order to compare two fund which invest in different sectors of the market you will need to evaluate there Treynors measure using the appropriate `beta' (and market index) in each case. Then according to Treynors measure the fund which offers the best risk (and sector) adjusted return is the fund with the highest (Treynor) value.

Parameters:
averageReturn - the average return from the portfolio over the period considered expressed in decimal format (i.e. 1 percent = 0.01)
beta - the beta of the portfolio with respect to a given market variable (see remarks for further details).
riskFree - the (constant) risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01). The risk free interest rate of a given maturity within a given currency is usual taken to be the yield to maturity of a Government Bond of the same maturity. Here we should taken the yield to maturity of the Government bond at the beginning of the period under consideration which matures at the end of the period over which Sharpe's ration is evaluated. Note that if no such interest rate security exists then you could use the yield to maturity of the closest instrument or better still use such instruments and the boot-strapping technique.
Returns:
A double equal to Treynor's measure of the risk-adjusted performance of a portfolio.
PerformanceEvaluationDemoException

WebCab Portfolio Demo
v4.2
(J2SE Edition)