WebCab Portfolio for COM v5.0 Demo

SolveFrontier.FindRiskGeneral Method 

Evaluates a value of the risk of the portfolio on the Efficient Frontier which is optimal with respect to the investors (Risk) Utility function which is a function of risk.

public double FindRiskGeneral(
   double[] riskUtility,
   double[] returnUtility,
   double[] riskPoints,
   double[] returnPoints,
   double precision
);

Parameters

riskUtility
An array of double where the first term is the lowest value of the risk from the set of points at which the investors risk/reward Utility function is given, the second term is the next lowest value of the risk and so on.
returnUtility
An array of double where the first term is the lowest value of the expected return from the set of points at which the investors risk/reward Utility function is given, the second term is the next lowest value of the expected return and so on.
riskPoints
An array of doubles where the first term is the lowest value of the risk from the set of points at which the Efficient Frontier is known, the second term is the next lowest value of the risk and so on.
returnPoints
An array of doubles where the first term is the lowest value of the return from the set of points at which the Efficient Frontier is known, the second term is the next lowest values of the return and so on.
precision
The precision for which the value of the risk of an optimal portfolio will be returned. Since there may be more than one optimal portfolio we used the term `an optimal'. In particular, if the precision is set to 0.001 then the risk will be returned to within 0.001 etc, of the `exact' solution.

Remarks

Once the risk is known then the corresponding value of the expected return can be evaluated using the method FindReturn.

Notes on the Efficient Frontier input parameters

A set of points on the Efficient Frontier should be evaluated using methods from the Markowitz class, in particular:

  1. riskPoints - the values of the (known) risk points on the Efficient Frontier are evaluated using the method GetEfficientFrontierPortfolioRisks
  2. returnPoints - the values of the (known) return points on the Efficient Frontier are evaluated using the method GetEfficientFrontierExpectedReturns

Note: Alternatively you may choose to use the complex type PointsOnEfficientFrontier, and the related methods from the portfolio class in order to find the set of points on the efficient frontier for which it is evaluated.

The parameters of the Investors Utility Function

The (Risk) Utility function is given by a set of points which lie on the Utility curve. The (Risk) Utility function is assumed to take the same range of values of the risk parameter as the range of the risk over which the efficient frontier is defined. It is essential within the formation of this approach that the (Risk) Utility function is a function of risk. In particular, if we are given a value of the risk then there corresponds a unique value of the expected return. In practice, since we are applying Cubic spline method in order to interpolate the (Risk) Utility function from a finite set of points it is enough to ensure that from this finite set of points there does not exist two distinct points which have the same value of the risk.

Advantages of a General Utility Function

A more general Utility function allows the investor to express the likely fact that as the risk increase they desirer a higher expected level of return. In the case when the (Risk) Utility function returns a constant value of the expected return this methods reduced to the case considered in FindRisk.

Exceptions

Exception TypeCondition
InterpolationExceptionThrown when there does not correspond a points on the interpolation function corresponding to the parameters given.
SolveFrontierExceptionThrown if no value is found for the given input parameters.

See Also

SolveFrontier Class | WebCab.COM.Finance.Portfolio Namespace | FindRisk(double, double[], double[]) - this is a special case of this method which corresponds to the case where the (Risk) Utility function is a constant function which states that the investor requires a given expected return and is not influenced by the level of risk.