Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The Performance Calculation supports the committing of multiple returns for the same security within an entity.  This includes multiple returns under a single node in a dictionary, multiple returns under multiple nodes in a dictionary, and also both multiple returns in a single node and in multiple nodes.  The most common illustration of this is when a security is held both long and short in an account and you would like to commit the returns separately.

The Performance Calculation profile provides multiple options to choose from when committing separate security returns for long and short positions.  These separate long and short returns can be used in downstream reporting with Performance models or with Dynamic performance the same as rolled up security returns.

Database Model Supporting Single Security Multiple Nodes (Strategy Performance)

The Single Security Multiple Nodes functionality is facilitated through the RULESDBO.STRATEGY and RULESDBO.STRATEGY_DETAIL tables.  These tables are pre-loaded with a default strategy.  This default strategy is based on the relation field LONG_SHORT_INDICATOR field from the HOLDING AND CASH_ACTIVITY tables as the STRATEGY_FIELD_ATTRIBUTE.


Panel
borderColor#9F9F9F
titleColor#F7F9F9
titleBGColor#B48436
borderStyledashed
titleContent this page:

Table of Contents
maxLevel2
indent2 px



The STRATEGY table has a default strategy 1001 with STRATEGY_NAME of Position Tag Model. 

The LONG_SHORT_INDICATOR field attribute is the default STRATEGY_FIELD_ATTRIBUTE field for this strategy and is identified in the STRATEGY_DETAIL_TABLE.  Each LONG_SHORT_INDICATOR value on a position or cash_activity used in by the Performance Calculation adds a new row with unique STRATEGY_DETAIL_ID.  In the table below you can see the unique STRATEGY_DETAIL_ID for each STRATEGY_SHORT_DESCRIPTION.   The STRATEGY_DETAIL_ID is used in the PERF_SEC_RETURNS table as a unique identifier.

Use the Performance Calculation to Commit Multiple Returns for a Single Security

To enable committing returns multiple times for a security, ensure that the Performance Calculation setting Rollup Securities at the Last Level, is off. 

Security Commit Options

Once you set the option to off, the sub-security level Commit Options display under the Security Commit Options. 

Image Added


Each Security Commit Option has a specific PERF_SUMMARY_TYPE in THE PERF_SUMMARY TABLE.

  • Single Position has a PERF_SUMMARY_TYPE = S.

  • Positions by Strategy has a PERF_SUMMARY_TYPE OF SS

  • Positions by Strategy and Dictionary Classification has a PERF_SUMMARY_TYPE of SP

  • S, SP, and SS type records will all be linked to the security level records in the PERF_SEC_RETURNS table by PERF_SUM_INST.

Select the Type of Security Return

To store separate returns for a single security based on a strategy field, you will need to choose either SP or SS return types.
Both allow multiple returns to be stored for a single security.

SS Records

SS records are sub-security returns that are unique for each SECURITY_ALIAS, EFFECTIVE_DATE, ENTITY_ID like S records but also have the unique identifier STRATEGY_DETAIL_ID.  They can be used in dynamic performance analysis and with performance models.

When you choose Positions by Strategy SS a P type record and an SS type record is written to the PERF SUMMARY TABLE.  SS records have a STRATEGY_ID but do not have a dictionary_id =0 as they are not specific to a dictionary.

The PERF_SEC_RETURN SS records will have the ROLLUP_RETURNS_ID = 0.  SS records are unique by STRATEGY_DETAIL_ID and SECURITY_ALIAS and are available for Dynamic Performance Analysis reporting like S security records.

SP Records

When you choose Positions by Strategy and Dictionary Classification SP, a P type record and an SP type record is written to the PERF SUMMARY TABLE.  The P type is for the total and rollup level returns.  The SP record represents the sub-security level records in the PERF_SEC_RETURNS table.  SP records are specific to a performance model and therefore will have a DICTIONARY_ID populated.

The SP records in PERF_SEC_RETURNS are sub-security returns that are unique for each SECURITY_ALIAS, EFFECTIVE_DATE, ENTITY_ID,  STRATEGY_DETAIL_ID and importantly PERF_ROLLUP_RETURNS_ID. Each record is linked to a specific node in the dictionary by the PERF_ROLLUP_RETURNS_ID.  This allows SP records to support committing securities returns for multiple long positions in in multiple nodes without violating unique constraints.  SP style security returns can only be used with Performance Models.