Performance Measurement Analysis

This document describes how to configure the Performance Measurement analysis using the Analysis Designer.

The Performance Measurement analysis allows viewing investment returns at any level of the portfolio structure, to provide an understanding of the source of the return.

Note that PMA analysis (Performance Measurement and Attribution) is the newer version of the legacy Performance Measurement analysis. It is recommended to use PMA instead of Performance Measurement.

See PMA Analysis for details.

 

1. Before You Begin

In order to run a Performance Measurement analysis, you must first configure the following:

An "Official" P&L Configuration with Investment P&L measures.

You also need to run the Official P&L analysis for the "Official" P&L Configuration.

Sample configurations are shown below.

Please refer to Calypso Official P&L documentation for complete details.

Performance Measurement domain values as needed.

 See Performance Measurement Domain Values.

A custom portfolio if several funds / mandates must be analyzed in a single analysis.

 See Multiple Investment Vehicles.

Environment properties for Buy Side Data Warehouse.

 See Buy Side Data Warehouse.

Historical performance as needed.

 See EOD_PERFHISTO_POSITION Scheduled Task.

Imported historical performance as needed.

 See AM_PERFHISTO_PORTFOLIO_IMPORT Scheduled Task.

 

1.1 P&L Configuration

Sample "Official" P&L Configuration

 

Sample Official P&L parameters for the "Official" P&L Configuration

 

Then run the scheduled task EOD_OFFICIALPL for the Official P&L parameters.

 

 Ⓘ   [NOTE: The position spec used to run the scheduled task (in the trade filter) should be the same as the position spec used to run the Portfolio Workstation analysis (in the Analysis Server Configuration trade filter template).]

 

1.2 Performance Measurement Domain Values

The following domain values are used to define lists of products for various handling by the Performance Measurement analysis.

perfMeasurement.Exposure.Notional – The products whose returns are computed based on notional rather than asset value.
perfMeasurement.ProductType.Cash – The products to be considered as cash instruments for Return FX calculation.
perfMeasurement.ProductType.Exclude – The products to be excluded from the analysis.

 

 

1.3 Multiple Investment Vehicles

In order to run single a Performance Measurement analysis on multiple investment vehicles, a custom portfolio must be used. As a custom portfolio is essentially a trade filter, it can be defined to load the same trades as a single fund, several funds, or all funds belonging to a group.

See Portfolio Hierarchy for details on defining a custom portfolio.

 

Every position in the Performance Measurement analysis must be linked to a fund, so the trade filter must be defined with the legal entities instead of the books to ensure consistency in cashflows. This is accomplished by setting the legal entities in the trade filter "Book Attribute" field. The PO of a book is added in the trade filter, and that PO must be the legal entity associated with the fund or mandate.

 

1.4 Buy Side Data Warehouse

Buy Side Data Warehouse allows storing long term Official P&L data for faster execution of Performance Measurement.

Set the following environment properties for Buy Side Data Warehouse – These are sample values:

BuysideDataWarehouseDRIVER=oracle.jdbc.OracleDriver
BuysideDataWarehouseDBURL=jdbc:oracle:thin:@localhost:1521:calypso
BuysideDataWarehouseDBUSER=buyside – By default it is the core DB user. You can specify a separate schema if needed.
BuysideDataWarehouseDBPASSWORD=calypso

Please refer to Calypso Database Administration documentation for details on creating a new database.

 

NOTE: If you are using Buy Side Data Warehouse, make sure that you run Execute SQL with "Calypso Buy Side Data Warehouse" checked so that the database can be properly upgraded as needed.

 

1.5 EOD_PERFHISTO_POSITION Scheduled Task

You can warehouse benchmark performance data using the scheduled task EOD_PERFHISTO_POSITION.

Performance on real trades is computed using Official P&L marks, but no data is available for benchmarks as they are just lists of securities. This scheduled task allows historizing the valuation of the benchmark positions. The benchmark valuation is run and stored to the benchmark historical valuation tables.

This scheduled task also historizes other indicators such as ACCRUAL, DIRTY_PRICE, etc., for all bond positions, which are used in Campisi fixed income performance attribution. This is done for both benchmarks and real portfolios.

The following benchmark types are supported:

Notional
Quantity
Market value
Portfolio
Carve out
Weight

Common Attributes:

Select a pricing env and a trade filter. The trade filter must include all of the books used, both in the portfolio and in the benchmark. You can select the applicable hierarchy node from the Portfolio Hierarchy panel of the Trade Filter window to accomplish this.

Task Attributes:

Trade Filter Template – Instead of using the Trade Filter common attribute, you can define the scope of trades the same way as it is done in the Portfolio Workstation: with a Trade Filter Template (trade filter that contains only a Position Spec) and an Entry Point (specified in the Portfolio attribute below).
Portfolio – The Entry Point used in conjunction with the Trade Filter Template attribute above. Enter a portfolio name or id (portfolio meaning a Fund, Mandate or Strategy).
Save Campisi metrics – Set to true to save the indicators used for Campisi fixed income performance attribution.
Official P&L Configuration – Select an Official P&L configuration.
Explain Result – Set to true to generate a validation and explanation Excel file.
Explain Result directory – Enter the destination file path for saving the Excel file.

 

1.6 AM_PERFHISTO_PORTFOLIO_IMPORT Scheduled Task

You can import historical performance data from a CSV file using the scheduled task AM_PERFHISTO_PORTFOLIO_IMPORT.

Task Attributes:

Import File Path – Enter the file name and path of the file that contains the historical performance.

 

Sample File

 

2. Configuring the Performance Measurement Analysis

From the Calypso Navigator, navigate to Configuration > Reporting & Risk > Analysis Designer.

Right-click a Performance Measurement folder, and choose "New Analysis" to configure the parameters. You will be prompted to enter a configuration name.

» Enter the fields described below as needed, then click Save.

 

Period Config

Indicators

Description

Config Mode

Select Running Mode or Rolling Mode. Running Mode allows defining one or several running periods (MTD, YTD, etc.) and custom periods (date ranges). Rolling Mode uses a running period and also adds a rolling decomposition of the period (weekly, monthly, etc.). For example, you can have a YTD period sub-divided into monthly periods.

Rolling Period

If Rolling Mode is used, select a date rule (weekly, monthly, etc.). You can click Period Date Rule to define a new date rule as needed.

Running Period

List of observation periods used to compute and aggregate effects (YTD, MTD, custom, etc.).

You can select a date rule from the list, then click >> to add it. You can click Period Date Rule to define a new date rule as needed.

You can specify a custom period, then click + to add it.

 

Common

Indicators

Description

Portfolio PL Config

Select an "Official" P&L Configuration to be used.

Please refer to Calypso Official P&L documentation for details.

Benchmark

Select which benchmark to compare the portfolio to: Primary or Secondary. Only comparison to a single benchmark is supported.

See Defining Benchmarks for information on creating benchmarks.

See Portfolio Hierarchy for information on associating benchmarks to portfolios.

Grouping Criteria

Select the list of columns used to aggregate effects.

Consolidation Level

Select the level at which the results are consolidated: Entry Point, Strategy, or Strategy Flat.

Consolidation Level Depth

Depth to which strategy consolidations are computed. Enter "0" for all levels, "1" for the next level, etc.

Consolidation Currencies Aggregation

Check to use the currency of the consolidation level.

 

Advanced Settings

Indicators

Description

Display Position Level

Check to display positions in the analysis.

Display Daily Period

Check to display the daily period in the analysis.

Display Daily Non Business Days

Check to display non-business days in the analysis in daily mode. This does not affect the computations.

Exclude Cash

Check to exclude cash positions from the calculation.

Cash Flow Method

Select the daily cashflow adjustment: Beginning of the day, End of the day, or Adaptive. If Adaptive is selected, depending on the sign of the position (long/short) and the trade sign (buy/sell), the cashflows are either considered at the beginning of the period or at the end of the period.

Campisi Spread Source

Select the Spread calculation logic: Residual or Benchmark Sector.

 See Campisi Fixed Income Performance Attribution for details.

Campisi Parallel Shift Point

Select the curve point to use for calculating the Shift effect.

 See Campisi Fixed Income Performance Attribution for details.

Time Weighted Cumulated Active Compounding

Check to compute cumulated active return with geometric return formula on the daily active return, or leave un-checked to compute it as the difference between the cumulated portfolio return and benchmark return.

Return Alert Level (%)

Enter the return alert level in %. Used in the Excel validation file for notification of abnormal daily returns.

 See Generating an Excel Validation File for details on this file.

Num. days loading PL Marks

Enter the number of days the historical data will be taken from P&L, instead of Data Warehouse. It prevents storing P&L data on a daily basis, or each time P&L is modified.

Post filtered P&L Types

Select the P&L type(s) for which the corresponding positions will be filtered out.

 Please refer to Calypso Official P&L documentation for details on the P&L types.

Investment P&L

When selected, the Cumul Return Cross is computed from Cumul Return FX and Cumul Return Local, like Investment P&L breakdown.

Measure Investment P&L de-selected Investment P&L selected
Cumul Return Cross(T) [1 + Return Cross(T)] * [1 + Cumul Return Cross(T-1)] Cumul Return FX(T) * Cumul Return Local(T)
Cumulative Contrib Cross(T) Cumul Contrib Cross(T-1) + [1 + Cumul Return(T-1)] * Contrib Cross(T) Cumul Contrib FX(T) * Cumul Contrib Local(T)
Cumulative Contrib Local(T) Cumul Contrib Local(T-1) + [1 + Cumul Return(T-1)] * Contrib Local(T) Cumul Contrib Local(T-1) + [1 + Cumul Return Local(T-1)] * Contrib Local(T)
Cumulative Contrib FX(T) Cumul Contrib FX(T-1) + (1 + Cumul Return(T-1)] * Contrib FX(T) Cumul Contrib FX(T-1) + (1 + Cumul Return FX (T-1)] * Contrib FX(T)

 

Risk & Reward Indicators

Indicators

Description

Risk Free Rate (%)

Enter the annualized risk-free rate over the period.

Minimum Acceptable Rate of Return (%)

Enter the minimum acceptable rate of return. Used for upside/downside deviations and Sortino ratio.

Day Count

Specify the day count normalization for risk indicators.

 

3. Running the Performance Measurement Analysis

You can view the results of the Performance Measurement analysis in the Portfolio Workstation.

See Portfolio Workstation for information on running the Portfolio Workstation.

 

 Ⓘ   [NOTE: All trades and positions must be in a strategy to be loaded in the Performance Measurement analysis. Positions in a book with no strategy will not be retrieved.]

 

Sample Performance Measurement Results

 

Risk Indicators

Return Std Dev (%) = A measure of the average deviations of a return series from its mean. A large standard deviation implies that there have been large swings or volatility in the manager’s return series.

where

Ri is the return for the period i

R is the average return of the overall period

 

Return Vol (%) = Annualized standard deviation

 

Tracking Error = The amount of active risk being taken by a manager. Computed by subtracting the return of a specified benchmark or index from the manager’s return for each period, and then calculating the standard deviation of those differences. A higher tracking error indicates a higher level of risk, not necessarily a higher level of return, being taken relative to the specified benchmark. Tracking error only accounts for deviations away from the benchmark, but does not signal in which directions these deviations occur (positive or negative).

where

RFi is the return of the fund for the period i

RF is the average return of the fund on the overall period

RBi is the return of the benchmark for the period i

RB is the average return of the benchmark on the overall period

 

Beta (%) = A measure of a portfolio’s volatility. Statistically, beta is the covariance of the portfolio in relation to the market. A beta of 1.00 implies perfect historical correlation of movement with the market. A higher beta manager will rise and fall more rapidly than the market, whereas a lower beta manager will rise and fall more slowly. For example, a 1.10 beta portfolio has historically been 10% more volatile than the market.

 

Determination Coefficient = A measure of a manager’s movement in relation to the market. Generally, the R2 of a manager versus a benchmark is a measure of how closely related the variance of the manager returns and the variance of the benchmark returns are. In other words, the R2 measures the percent of a manager’s return patterns that are “explained” by the market and ranges from 0 to 1. For example, an R2 of 0.90 means that 90% of a portfolio’s return can be explained by movement in the broad market (benchmark).

 

Sharpe Ratio = This statistic is computed by subtracting the return of the risk-free index (typically 91-day T-bill or some other cash benchmark) from the return of the manager to determine the risk-adjusted excess return. This excess return is then divided by the standard deviation of the manager. A manager taking on risk, as opposed to investing in cash, is expected to generate higher returns and Sharpe measures how well the manager generated returns with that risk. In other words, it is a measurement of efficiency utilizing the relationship between annualized risk-free return and standard deviation. The higher the Sharpe Ratio, the greater efficiency produced by this manager. For example, a Sharpe Ratio of 1 is better than a ratio of 0.5.

where

RF is the annualized return of the fund over the period

Rrf is the annualized risk-free rate over the period

V is the annualized volatility of the fund over the period

 

Treynor Ratio = Similar to the Sharpe Ratio, this statistic is computed by subtracting the return of the risk-free index (typically 91-day T-bill or some other cash benchmark) from the return of the manager to determine the risk-adjusted return. This excess return is then divided by the Beta of the portfolio. This is another efficiency ratio that evaluates whether the manager is being rewarded with additional return for each additional unit of risk being taken with risk being defined by Beta, a measure of systematic risk, not Total Risk (standard deviation).

where

RF is the annualized return of the fund over the period

Rrf is the annualized risk-free rate over the period

β is the beta of the fund over the period

 

Information Ratio = This statistic is computed by subtracting the return of the market from the return of the manager to determine the excess return. The excess return is then divided by the standard deviation of the excess returns (or Tracking Error) to produce the information ratio. This ratio is a measure of the value added per unit of active risk by a manager over an index. Managers taking on higher levels of risk are expected to then generate higher levels of return, so a positive IR would indicate “efficient” use of risk by a manager. This is similar to the Sharpe Ratio, except this calculation is based on excess rates of return versus a benchmark instead of a risk-free rate.

where

RF is the annualized return of the fund over the period

Rrf is the annualized risk-free rate over the period

TE is the beta of the fund over the period

 

Modified Jensen = Modified Jensen’s alpha is Jensen’s alpha divided by beta.

 

Skewness = Skewness characterizes the degree of asymmetry of a distribution around its mean. Positive skewness indicates a distribution with an asymmetric tail extending toward more positive values. Negative skewness indicates a distribution with an asymmetric tail extending toward more negative values.

where

Ri is the return for the period i

R is the average return of the overall period

SD is the standard deviation

n is the number of returns

 

Kurtosis = Kurtosis characterizes the relative peakedness or flatness of a distribution compared with the normal distribution. Positive kurtosis indicates a relatively peaked distribution. Negative kurtosis indicates a relatively flat distribution. If there are fewer than four data points, or if the standard deviation of the sample equals zero, Kurtosis returns the N/A error value.

where

Ri is the return for the period i

R is the average return of the overall period

SD is the standard deviation

n is the number of returns

 

Jarque Bera Test

 

Downside Deviation = A measure of the average deviations of a negative return series. A large downside risk implies that there have been large swings or volatility in the manager’s return series when it is below the selected hurdle rate (MARR). Downside deviation (also known as downside risk) attempts to further break down volatility between upside volatility, which is generally favorable since it implies positive out-performance, and downside volatility, which is generally unfavorable and implies loss of capital or returns below an expected or required level.

and

where

Ri is the return for the period i

n is the number of returns

MARR is the Minimum Acceptable Rate of Return. Must be entered manually in the Performance Measurement analysis.

DaysReference is the number of days of reference for a period

DaysObservation is the number of days of sub-periods (1 for daily, 5 for weekly open days, for instance)

 

Upside Deviation = The standard deviation of all positive returns.

and

where

Ri is the return for the period i

n is the number of returns

MARR is the Minimum Acceptable Rate of Return. Must be entered manually in the Performance Measurement analysis.

DaysReference is the number of days of reference for a period

DaysObservation is the number of days of sub-periods (1 for daily, 5 for weekly open days, for instance)

 

Sortino Ratio = This measure is very similar to the Sharpe Ratio except that it is concerned only with downside volatility (unfavorable) versus total volatility (both favorable, upside volatility and unfavorable, downward volatility). This statistic is computed by subtracting the return of the risk-free index (typically 91-day T-bill or other cash index) from the return of the manager to determine the risk-adjusted excess return. This excess return is then divided by the downside risk of the manager. A manager taking on risk, as opposed to investing in cash, is expected to generate higher returns and Sortino measures how well the manager “spends” that risk, while not penalizing them for upside volatility (out-performance). The higher the Sortino Ratio, the better; a Sortino Ratio of 1 is better than a ratio of 0.5 – higher excess return and/or lower downside risk.

where

RF is the annualized return of the fund over the period

Rrf is the annualized risk-free rate over the period

Downside Deviation is the annualized downside deviation

 

Performance Indicators

Return Best Period = Period from the rolling period with the highest return. Computed at fund and benchmark level.

 

Return Worst Period = Period from the rolling period with the worst return. Computed at fund and benchmark level.

 

Positive Return (%) = Percentage of periods with strictly positive returns. Computed at fund and benchmark level.

 

Return Max Loss (%) = Lowest cumulative return in the period as if an investor had subscribed at the beginning of the period and sold their share at the worst time.

where

n is the number of daily periods during the considered period

Cumulated Return(1,i) is the cumulative return from the start of the first daily period to the end of the daily period i

 

Return Max Draw Down (%) = Lowest cumulative return in the period as if an investor had subscribed and sold their share at the worst time.

 

Return Max Run Up (%) = Highest cumulative return in the period as if an investor had subscribed and sold their share at the best time.

 

Contribution To Vol (%) = Decomposition of volatility contribution at the holding level. You need to add a grouping by Product Description to have it at the holding level.

ContributionToVol = Std Dev(PositionContributions) * Correl(PositionContributions,PortfolioReturns) * SQRT(BaseDays)

 

Contribution To Tracking Error (%) = Decomposition of tracking error at the holding level. You need to add a grouping by Product Description to have it at the holding level.

ContributionToTrackingError = Std Dev(ActiveContributions) * Correl(ActiveContributions,PortfolioReturns) * SQRT(Base Days)

 

MW Annualized Return (%) = Modified Dietz money weighted return for a period shorter than 1 year.

where y is number of years, and > 1

 

Campisi Fixed Income Performance Attribution

Campisi performance attribution considers the unique factors of bond performance, and provides a further decomposition of the Local and FX returns of fixed income products.

 

The effects shown in the decomposition diagram above are calculated as follows:

 

Instrument

 

Income

 

Treasury

where

PRICE_DISCOUNT_CURVE is the price using discount curves only (no quotes and no credit curves)

 Ⓘ   [NOTE: In addition to curve movements, it takes Roll Down and Pull-to-par effects into account.]

 

Shift

where

5Y is the curve point specified in the Campisi Parallel Shift Point analysis parameter - this value can be changed

 

Twist = Treasury - Shift

 

Spread

The Spread calculation depends on the value of the Campisi Spread Source analysis parameter.

Campisi Spread Source value

Calculation

Residual

All positions

Spread = Instrument - Treasury - Income

Benchmark Sector

Benchmark positions

Spread = Instrument - Treasury - Income

Portfolio positions in sectors that exist in the benchmark

See below.

Portfolio positions in sectors that do not exist in the benchmark

Spread = Instrument - Treasury - Income

 Ⓘ   [NOTE: This scenario was not anticipated by Campisi as a portfolio manager would normally not be investing in a sector not contained in the benchmark.]

 

Portfolio positions in sectors that exist in the benchmark

Compute the implied Spread change for this sector in the benchmark:

where

Compute the Spread Return induced by the Spread Change:

 

Selection = Instrument - Treasury - Income - Spread

If analysis parameter Campisi Spread Source = Residual, it should always be 0.
If analysis parameter Campisi Spread Source = Benchmark Sector, it should be 0 for the benchmark.

 

Trading = Local - Instrument

Any Local return that doesn't come from the Instrument itself is a Trading return.

 

Expected FX

where

FW is the forecast FX rate from the FX curves

FX is the FX spot rate

 

Surprise FX = Total FX - Expected FX

 

4. Generating an Excel Validation File

The scheduled task AM_PERF_REPORTING allows generating Excel validation and explanation files for Performance Measurement analyses.

Scheduled tasks are added in the domain scheduledTask.

Task Attributes:

Portfolio – Enter the portfolio entry point name or id, as defined in the Portfolio Hierarchy window.
Column Set – Enter a column set name, as defined in the Column Sets window.
Include Campisi – Set to true to include Campisi indicators.
Output format – Select the output format: CSV, EXCEL (non-formatted), or FORMATTED EXCEL (formatted with colors, etc.).
Output file path – Enter the output file path, consisting of directory, file name, and file extension type as appropriate (.xlsx, .csv).
Output file timestamp – Select the timestamp format to be appended to the file name: Date and Time (<yyyyMMDD>T<HHMMSS>, Date Only (yyyyMMDD), Legacy Format (MM-DD-yyyy), or No Timestamp.

Note that if you select anything other than Date and Time, and a file with the specified name already exists in the specified directory, it will be overwritten.

Output file date type – You can select "Current date" or "Valuation date" for the reference date of the output file timestamp. Default is "Current date".
Generate Explain file – Set to true to generate an Excel explanation file.
Include Excel Formulas – Set to true to add validation formulas to the Excel explanation file.
Explain file path – Enter the output file path for the explanation file, consisting of directory, file name, and file extension type (.xlsx only).
Generate Debug file – Set to true to generate a debug file.
Debug file path – Enter the output file path for the debug file, consisting of directory, file name, and file extension type (.xlsx only).
Save Report – Set to true to save the results to the database. You can view the results saved to the database in the Portfolio Workstation.