Define the Performance Calculation Report Rule
You need to define a report rule before you create the Performance Calculation report. Report rules specify the source of the data, segment grouping levels, and fields you want to display in your report. You can define these components in any order. First, you choose the report profile to start from. Then, you customize it to your liking. For example, you can choose an existing source rule. Or specify the source rule within the definition of the field attribute. If you use an existing source rule, add your fields first, and then choose the source rule.
There are many different features, such as publishing the report rule to other business groups, and creating tolerance checks. The procedure that follows walks you through some basic options for defining a report rule for the Performance Returns report profile.
To define the report rule for the Performance Returns report profile:
From any Eagle window, click the Eagle Navigator button to access the Eagle Navigator.
Enter Reporting in the Start Search text box and click the General Reporting (Performance Center) link.
You see the Performance Center with the General Reporting workspace open.Click the Components tab.
Expand the Performance Calculation Rules folder, select the Performance Returns folder, and click Compose.
Select Double click here to build your report.
The Report Rule window appears. See the following figure.
Click New Field.
The Field Selector dialog box appears. See the following figure.Expand the folders on the left side of the dialog box to view the fields that are available for selection. A description of each folder follows.
Custom. Stores custom fields, which are used to calculate and process returns, such as Modified Dietz, Rollup Calculation, Rollup, and Inference fields. When you create a custom field, it becomes a field attribute. It is available for use in all other field rules of the same type.
Entity. Stores fields that provide information on entities, such as Entity ID, Entity Name, and Base Currency.
Holding. Stores fields that provide information on holdings, such as Position ID, Market Value End, and Market Value Begin.
Security. Stores fields that provide information on securities, such as Investment Type, Coupon, Security Alias, Issue Name.
Special. Stores fields that provides information specific to the report you are currently running, such as the Effective Date.Select the check boxes for the fields you want to add within each folder, and then click Done. Do not click Done until you select all of the fields you want to add in each folder. For example, expand the Security folder and select Sector, CUSIP, and Investment Type. Expand the Custom folder and select MVBSum, MVESum, Total Inflows, Total Outflows, and Daily Return. Then, click Done.
Your selections appear in the Report Rule window. See the following figure.Click Choose an existing Source Rule to choose a source rule.
Most fields in a report display information based on the source rule within the report. However, you can create source specific fields for security, price, ratings, analytics, and issuer information. These fields use the source specified within the definition of the field attribute regardless of the source you specify in the field rule.
You can also create source specific holding fields. However, if you include a source specific holding field within a report, all other holding fields within that particular report must also be source specific. This is due to the manner in which Eagle Performance retrieves the source. If you include a source specific holding field, only the sources that you assign to the holding fields are checked. Other types of fields within the report do not have to be source specific.Map the fields you selected using the drop-down list next to the Commit Icon.
If you select a custom field, you must specify where to store, or commit, the calculated returns. The Commit icon displays a drop-down list that allows you to map the calculation field to a table in the PERFORM database, such as PERF_SEC_RETURNS. This is known as commit mapping. You can map returns, as well as supporting data like the market value begin and end dates, and net inflows and outflows. The available commit mapping fields are sorted alphabetically. You do not have to map all fields to the database. Typically, you map the fields you want to use in multi-period reports. If you add a new field, additional configuration is required to use the field in the commit mapping process. See Performance Toolkit Commit Mappings for details.Click the drop down arrow next to New Group to specify a grouping rule.
The grouping rule determines the segments on which to calculate returns, such as industry sector or industry subsector.
Name the report rule and click Save.
Options
The following table defines each option.
Option | Description |
---|---|
Menu Bar | Displays a number of menus that allow you to navigate the system and perform basic functions. Options include:
|
New Group | Defines the grouping rule, which determines the segments (rollup nodes) on which to calculate returns. For example, fund/country/sector/security or fund/coupon range/security. You can add one or more groupings to the report. Only one Rollup Inference field is allowed in the grouping rule. See the “Rollup Inference Fields (Unique Performance Calculation Grouping Mode)” section for more details on including a Rollup Inference field in the construction of the report results. |
New Field
| Defines the field rule. You can select or create one or more fields for display as columns in the report. Click the icons in the rows below each field to:
|
Choose an existing source rule | Allows you to select an existing source rule for use in a new report. If you are using an existing source rule, add your fields first, and then choose the source rule. |
Choose an existing field rule | Allows you to select an existing field rule for use in a new report. |
Show me all sources | Displays a list of all sources. |
Specify mandatory sources for this rule | Displays a list of required sources. |
Place this rule in a personal folder | Saves the rule in personal folder. |
Publish this rule to others | Determines which groups have access to the report in addition to your own business group. |
Place this rule in a public folder | Saves the rule in a public folder. |
Specify the commit tolerance and reference fields | Allows you to:
|
Always use most recent data for all entities | Determines whether to use the most recent data for all entities. When you select this option, reports retrieve NULL data from the entity history OLAP tables. If you do not select this option, reports retrieve data from entity tables that store current data. This option optimizes the way the report is run. Checking this box applies to all field rules. |
Always use most recent data for all securities | Determines whether to use the most recent data for all securities. When you select this option, reports retrieve NULL data from the security history tables. If you do not select this option, reports retrieve data from security tables that store current data. This option optimizes the way the report is run. Checking this box applies to all field rules. |
Type your comments here | Accepts comments about the report rule. |
Fields Toolbar | Displays icons that allow you to create custom fields. |
Create Source Specific Performance Analysis or Performance Link Analysis Fields
The Performance Calculation report supports source specific Performance Analysis and Performance Link Analysis (PLA) fields. By specifying a performance source on the underlying Performance field, only data from that source is returned under that field in the report.
In the Performance field Source drop-down list, select the source that you want the Performance Analysis or Performance Link Analysis fields to use. Next, create a Performance Analysis or Performance Link Analysis field specifically for this Performance source by linking it to the Performance field with the source selected. Finally, add these new Performance Analysis or PLA fields to your Performance Calculation Field Rule.
Add Custom Fields to a Report Rule
The field rule is used to specify the return calculations that you want to perform. See the following figure.
You can include performance, positions, cash activity, security master, and entity fields. There are also numerous custom fields that you can create. Custom fields manipulate database fields to create new fields. They are used to calculate and process returns. Once you create a custom field, it is available for use in all other field rules of the same type.
Examples of custom fields you can use to calculate performance returns follow.
Rollup Inference Fields (Unique Performance Calculation Grouping Mode)
Rollup Inference fields are configured using Rollup and Rollup Calculation fields either individually or as part of a formula. The Rollup Inference field allows alphanumeric message output based on the result of the field at each level of the report.
The Performance Model allows the inclusion of a single Rollup Inference field in the Grouping rule. If multiple Rollup Inference fields are included in the Grouping rule, the report fails.
When the unique performance calculation grouping mode is enabled, the following diagnostic message is displayed: Found Rollup Inference Field in Grouping (<Grouping Field Name>), special processing will be invoked to re-build model based on Rollup Inference Field at (Field Name here) level.
Example
The Rollup Inference field “Unrealized/Realized” tests the MarketValue rollup field to determine if the rolled up value is 0 or not equal to 0. If the result is 0, the output is “Realized”. If the result is not equal to 0, the output is “Unrealized”. The Rollup Inference field is directly above the Strategy field in the grouping rule, so it only tests the rolled up MarketValue at the Strategy Level row. Therefore, even though SEC1 and SEC2 have MarketValue = 0, the Tech group rolled up value is 1, and both securities are grouped under the Unrealized node.
The diagnostic message would read: Found Rollup Inference Field in Grouping (Unrealized/Realized), special processing will be invoked to re-build model based on Rollup Inference Field at (Strategy) level.
MYPORT |
|
| Security | Strategy | MarketValue |
---|---|---|---|---|---|
(Rollup Inference) | Unrealized |
|
|
| 1 |
(Strategy) |
| Tech |
|
| 1 |
(Security Level) |
|
| SEC1 | Tech | 0 |
|
|
| SEC2 | Tech | 0 |
|
|
| SEC3 | Tech | 1 |
(Rollup Inference) | Realized |
|
|
| 0 |
(Strategy) |
| Auto |
|
| 0 |
(Security Level) |
|
| SEC4 | Auto | 0 |
|
|
| SEC5 | Auto | 0 |
Calculating Daily Returns
Rollup Calculation Field
A Rollup Calculation field calculates the data in the report by using rollup fields as the equation variables. An example would be if you wanted to calculate the difference in quantity from the start and end date of the report at all grouping levels.
In calculating returns, these fields are used frequently. You may want to calculate the return for a fund across all segments in the performance model. To do this, you would use a Rollup Calculation field to divide the Sum of the Ending Market Value by the Sum of the Beginning Market Value then subtract 1 and finally multiply that figure by 100.
The basic calculation follows.
Ending Market Value+OutflowsBeginning Market Value+Inflows
Where:
EMV is market value end date
BMV is market value begin date
Outflows are negative cash activity
Inflows are positive cash activity
To create the Rollup Calculation field:
In the Report Rule window, click New Field.
Choose Rollup Calculation from the Custom folder and click New.
The Rollup Calculation Field dialog box appears.Click the Fields>> button to display the Field Selector dialog box. Select a field and use the numbers and operators on the keypad to create the equation.
Complete the fields on the Rollup Calculation Field dialog box and click OK.
The following figure shows an example of the Rollup Calculation field. In this example, the Rollup Calculation field takes the market value adjusted by transactions for each day and divides them to calculate the gross return for the day.
Field Used | Description |
---|---|
eglRup-EndMktVal | This is a sum rollup field that points to a HOLDING database field that points to the ending market value field in the Market Value column. |
eglRup-BegMktVal | This is a sum rollup field that points to a HOLDING database field that points to the ending market value field in the Market Value column. |
eglRup-GrossNegFlows | This is a cash adjustment field that points to a CASH database field that points to the database column where this value is stored. |
eglRup-GrossPosFlows | This is a cash adjustment field that points to a CASH database field that points to the database column where this value is stored. |
Calculating Monthly Returns
Some Eagle clients prefer to use monthly valuations. If you already calculate daily returns, you may additionally want to calculate and commit monthly returns for the following reasons:
Monthly data is preferable to daily data for linking together performance data for lengthy time periods. Linking monthly data requires less processing time than linking daily data because the system needs to retrieve less data.
If you currently use Eagle Performance to calculate daily data but previously used a former system to calculate monthly data, you can use Eagle to calculate monthly data that corresponds to your history of monthly data, for more consistent long term comparisons.
Creating and committing monthly data to the PERFORM database allows Eagle clients to archive daily data while maintaining the monthly data for use in to-date analysis.
If you use the Performance Analysis report to analyze risk statistics, the report uses performance data committed to the PERFORM database in risk calculations. Basing those calculations on monthly data is preferable to using daily data, as monthly data provides more consistent, less volatile, risk statistics.
Eagle provides several approaches for calculating monthly returns. For information about choosing an approach, see Choose an Approach for Calculation Monthly Returns. For information on using the Modified Dietz field to calculate a monthly return, see Calculate Monthly Returns with Modified Dietz Fields. For information on linking daily returns to create a monthly return, see Calculate Monthly Returns from Daily Returns.
Calculating Benchmark Returns
You can use the Performance Calculation report to calculate returns for standard industry indexes, custom benchmarks, sub-portfolios, and aggregates. Depending on the approach you select for loading index data, you can use the Performance Calculation report to calculate returns based on index positions and store those returns in the PERFORM database. Otherwise, you can load benchmark returns and weights directly into the PERFORM database from external systems.
Using Index Positions
If you use Eagle's recommended Load Index Holdings approach, you load index positions and then use the Performance Calculation report to run performance calculations to populate PERFORM tables with index returns and weights.
You additionally load the official Index Total return (optionally, sector weights and returns) directly into PERFORM tables, where you can use them to validate security rollups.
Index positions are different from portfolio positions because they include pre-calculated weights and returns that can be loaded directly using Eagle's generic positions interface. There are two weights available for each day: an opening weight that is used for the performance calculations on the effective date, and a closing weight that is used for position verification reports on the effective date. The gross and local returns are for the day ending the effective date.
For more information about Eagle's available indexing loading approaches, see Load Index Data in Benchmark Management .
About Benchmark Return Fields
Eagle's Performance Toolkit 2.0 includes sample benchmark return calculation fields that assume you calculate benchmark returns on a daily basis, and then link daily benchmark returns to a create a monthly benchmark return. The Toolkit also includes standard field attributes for daily market value, weights, and returns of index constituents. The field attributes are specific to index constituents and include advanced holdings fields that are processed by Performance Calculation reports. The fields display holdings values that were loaded by the standard positions interface or calculated by an entity build for an Aggregate or Sub-portfolio entity.
You can compare the Toolkit's index daily calculation field, shown in the following figure, with the Toolkit's portfolio daily calculation field, shown in Rollup Calculation Field. The portfolio daily calculation field divides the sum of ending market values and negative flows (eglRup-EndMktVal - eglRup-GrossNegFlows) by the investment base (eglRup-BegMktVal + eglRup-GrossPosFlows), subtracts 1, and multiplies that figure by 100.
The index daily calculation differs from the portfolio calculation because it expects constituent weights and returns to be present in the holdings tables. The system calculates the sector returns as a weighted average of the securities in a sector, using opening weight. The weighted average return is rolled-up for each level in the performance model.
Also be aware that while the daily return calculation for an index uses 1 day, the daily return calculation for a portfolio uses 2 days. The daily return calculation for an index assumes that the opening weight and the gross return are for the same day and uses Advanced fields with an end date process. The daily return calculation for portfolios uses some Advanced fields with a begin date process and some Advanced fields with an end date process. For more information, see Index Toolkit in Performance Toolkit 2.0 Implementation.
Calculating Composite Weighted Benchmarks
The Performance Calculation report allows you to calculate composite weighted benchmark returns using the aggregated securities of the member's benchmarks and the member's weight within the composite. A profile option has been added that allows you to calculate the composite weighted benchmark returns and commit the values to the composite's benchmark.
You need to specify the entity you want to commit the values to when calculating composite weighted benchmark returns. You do not want to commit the values to the Profile entity in the Performance Calculations report. In Step 2 of the Editing a Performance Calculation Report dialog box, check the Enable Composite Weighted Benchmark Processing option and then select an entity from the Commit to Alternate Entity drop-down list. Refer to the following figure.
Examples of the fields that support Composite Weighted Benchmark processing are shown in the three figures that follow.
Advanced Holdings Field Used for Index Positions
When you use the Performance Calculation report to calculate index returns based on index positions, the report needs to process only end date positions, as the prior date positions may no longer be members of the index. During processing, the Performance Calculation report verifies that the report uses only end date Holdings fields, and no begin date Holdings or Cash Adjustment fields are present. If so, the report only uses the end date positions. Otherwise, the report retrieves both begin date and end date positions.
The following figure shows an example of an Advanced Holdings field used for calculating gross returns for index positions. The Performance Calculation report can use a rollup field like one shown in the previous figure example in conjunction with this field to retrieve the index returns stored with the index positions. This sample field displays the end of period Index gross return. Note that the field's Process attribute is set to a value of End Date Holdings or Entity to determine the effective date of the holdings field attribute.
Calculate Cash Activity
Cash Adjustment Field
A Cash Adjustment field allows you to bring Cash Activity data into a holdings or performance-related report. It takes the net effect of cash activity for a given time period and populates the column with that netted data (for example, if a security has two instances of cash activity of $100 each, the cash activity field nets these instances together and displays $200).
This is extremely useful to calculate performance returns, as most equations will want to use netted cash activity as a variable.
The following figure shows an example of the Cash Adjustment field.
Configure New Fields for Commit Mapping
If you add a new field, additional configuration is required to use the field in the commit mapping process.
To configure new fields for commit mapping:
From any Eagle window, click the Eagle Navigator button to access the Eagle Navigator.
Enter Inventory of Tables in the Start Search text box.
Click the Inventory of Tables/Fields (System Management Center) link to access the System Management Center.
You see the Inventory of Tables window. See the following figure.Select the PERF_PUBLISH_FIELDS table check box, and click Edit Table.
The Inventory of Fields window appears. See the following figure.Select the New Fields link.
The New PACE Inventory Field dialog box appears. See the following figure.Complete the fields on the dialog box and click Add.
Click Save.
The new field is available for commit mapping when you define the report rule.