Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

Overview

This document applies to all releases of Eagle software V11 and above. It covers the full lifecycle including Accounting, Data Management, and Performance. Version-dependent functionality is noted with the initial release(s) it became available.

Inflation-Linked Swaps (ILSs) allow one party to make fixed or floating interest payments to a counterparty in exchange for payments based on the level of inflation. This is benchmarked off a measure of inflation, such as the Consumer Price Index (CPI). While there are various flavors of ILSs, including bespoke agreements, most are Zero Coupon Inflation Swaps (ZCISs). This means there is a single bullet payment at maturity, rather than periodic payments throughout the life of the contract. ZCISs are the focus of this document.

Eagle Accounting supports both bilateral and cleared ILSs in V12.1.2 and above, with this document focusing on bilateral contracts. Refer to Cleared Swaps Best Practices for more information on processing cleared IRSs, which function identically to ILSs in terms of variation margin (VM) processing. The main difference is for an ILS is you will only have one or two VM records each day (contract and potentially one leg) vs. three VM records for an IRS (contract and both legs). This is described further in the Inflation-Linked Swaps (ILS) Best Practices section.

Content on this page:

Pay special attention to underlined sections, as these highlight the most frequently encountered issues. Bold is used for navigation, modules, and screens. Italics are used for fields, tables, and errors. Fixed width indicates values for fields or code/text that should be entered. Tags are shown in parentheses (#) after field names.

Example reference data screens and fixed leg accrued interest calculations are attached:

Entity Setup

Before any trades can be booked, the target entity must be set up appropriately.

Unable to render {include} The included page could not be found.

Reference Data

Storage & Configuration

Eagle has modeled ILSs as three rows in Data Management, each with its own Security Alias (10), linked by a common Primary Asset ID (14).

Follow the steps below to allow duplicate cross reference identifiers (IDs) in Eagle Accounting. This example is for multi-leg swaps. You may need to follow the same steps for Forwards or for any other case where you want to allow multiple securities to share the same identifier. This is different than reusing an identifier that has been reissued to a new security after the original security matured or expired, which is explained in Reuse Cross Reference Identifiers Processing Notes.

  1. Open Create Security Cross Reference Configuration (V17 & above)/Add Security Cross Reference Configuration (prior to V17)

  2. Populate Xreference Security ID Type (1234) with the Primary Asset ID Type (1432) that will be used for multi-leg swaps (i.e. INTERNAL)

  3. Populate Xref Qualifier (9111) with Duplicate

  4. Populate Investment Type (11) with DERV (SWAPS) and click Submit

Keywords: KB 11614, Duplicate Xref ID, Duplicate Xreference ID, Duplicate SWAPID

To ensure each component of a swap always has a unique ID (other than Security Alias), SWAPID records are automatically added to the XREFERENCE table when a multi-leg swap is created. The Xreference Security ID Type (1234) is SWAPID and the Xreference Security ID (1233) is Primary Asset ID + C1, P1, or R1 for the contract, pay leg, and receive leg respectively

  • Example: if the swap's Primary Asset ID is SWAP175, the SWAPIDs will be SWAP175C1, SWAP175P1, and SWAP175R1

  • While swaps with more than three legs are not currently supported in Eagle Accounting, they are supported in Eagle's reference data products; swaps with additional pay and/or receive legs will be appended with P2, R2, P3, R3, etc.

Market Data

ILSs are typically priced dirty in the market. To prevent any double-counting during valuation, inflation income must be turned off in Eagle Accounting. This is accomplished by setting both legs to be interest accrual legs, rather than one inflation leg and one interest accrual leg. As a result, you do not need to load any inflation index values for this security.

The interest accrual leg of an ILS uses either a fixed or floating rate. If you are using an all-in dirty price (inclusive of both inflation and interest), both legs should be up with fixed rate coupons of zero. If you are using a dirty price that only includes inflation, you can accrue the fixed or floating interest in Eagle Accounting. For floating legs, the underlying floating rate index must be set up using Issue Viewer, Security Reference Manager (SRM), or Reference Data Center (RDC). Other than identifiers, the only required information is the currency.

Once the index has been setup, floating rates can be loaded using Add Variable Rate. Eagle Accounting will automatically pull the appropriate rates into the accrual process based on the floating leg's First Rate Reset Date (10911), Reset Frequency (1788), and Reset Look-Back Days (10547).

  • Interest rates must be loaded to the underlying index back to Dated Date (or previous coupon date if swap is traded off-cycle) and each subsequent coupon date minus Reset Look-Back Days

Security Data

ILSs can be set up and maintained in Issue Viewer, SRM, or RDC. Most data is entered on the contract and propagated to the legs. Specific reset and accrual conventions are entered separately on each leg.

Contract

  • Issue Name (961)
  • Primary Asset ID (14) & Type (1432): ensure duplicate IDs are allowed (see Storage & Configuration section above)
  • Processing Security Type (3931) = SWCOIF (Inflation Linked Swap Contract)
  • Price Multiplier (18): the default of 0.01 will be correct in most cases, but may need to be changed to 1.00 (ILS prices are sometimes supplied having already been multiplied by 0.01)
  • Issue Country (1418)
  • Asset Currency (85)
  • Cleared Security (5027): cleared ILS are supported (refer to Cleared Swaps Best Practices for information on the VM process)
    • If you are using an all-in dirty price, you will have a single VM record for the contract each day
    • If you are accruing interest in Eagle and using a dirty price that only includes inflation, you will have two VM records each day: one each for the contract and interest accrual leg
  • Issue Date (68): first trade date of the swap
  • Dated Date (1183): date accruals start, "Effective Date" in ISDA contracts
  • Maturity Date (38): date swap expires, "Expiration Date" or "Termination Date" in ISDA contracts

Legs (the "Interest Leg" values should only be used if you are accruing in Eagle, otherwise both legs should use the "Inflation Leg" values)

  • Processing Security Type (3931) = SWLEAC (Swap Leg Interest Accrual)
    • This should be used for both legs
    • Do not use SWLEIF (Swap Leg Inflation Linked Interest Accrual)
  • Coupon (70)
    • Inflation Leg: 0
    • Interest Leg: enter stated rate for fixed leg and zero for floating/variable rate legs to indicate that actual rates must be viewed from VARIABLE_RATE table
  • Coupon Type (97)
    • Inflation Leg: F (Fixed Rate)
    • Interest Leg: F (Fixed Rate) or X (Floating Rate)
  • Day Count Basis (471)
    • Inflation Leg: ACT/360
    • Interest Leg: as specified in contract
  • Payment Frequency (472)
    • Inflation Leg: MAT (At Maturity)
    • Interest Leg: as specified in contract; often MAT (At Maturity) for ILS
  • Business Day Convention (1536)
    • Inflation Leg: NONE
    • Interest Leg: typically Modified Following, which is ADJMBC (Modified Following - Adjusted) in V15 R2 and above, ADJMBC (Modified Business Day - Adjusted) below V15 R2
      • Set to NONE if Payment Frequency = MAT (At Maturity)
      • The following fields are conditionally required if Business Day Convention != NULL or NONE
        • Coupon Day of Month (10551): day of the month that payments are scheduled to be made, which will be automatically adjusted based on the Business Day Convention
        • Business Calendar (1480): as specified in the contract; a composite calendar (including dates from two different calendars) may need to be setup in some cases
  • First (473) & Last Payment Date (474)
    • Inflation Leg: set to Maturity Date
    • Interest Leg
      • Set to Maturity Date if Payment Frequency = MAT (At Maturity)
      • For any other Payment Frequency, set to actual first and last payment dates, including any adjustments for weekends/holidays
  • Floating Rate Fields (only applicable to the Interest Leg)
    • First Rate Reset Date (10911): enter the actual first reset date, including any adjustments for weekends/holidays (same as First Payment Date unless the rate resets more frequently)
    • Reset Frequency (1788): same as Payment Frequency unless the rate resets more frequently
    • Reset Look-Back Days (10547): number of days prior to reset date to take new floating rate
    • Reset Look-Back Days Type (5075): whether reset look-back days are measured in business or calendar days
    • Fixing Date Business Center (16407, V15 R2.18): select calendar used for floating rate resets, which may be different than the calendar used for payment dates; this calendar will be used in lieu of the main Business Calendar when applying the Reset Look-Back Days for fixing dates
    • Underlying Security (1347): select appropriate floating rate index security
      • This can be used to store the Inflation Leg's benchmark index for reference and reporting purposes, but it is hidden in the core panel
    • Spread/Index Offset (215): spread above or below the floating rate, entered in basis points (0.55% = 55)
      • When a floating rate (0.25%) plus negative spread (-55 bps) goes negative (effective rate = -0.3%), accruals and coupons are posted in the appropriate direction

Trade Processing

Open (transaction type: OPENSWAP)

Trades are entered using the Book Trade module once the entity and reference data have been configured. Enter the appropriate entity, security identifier, and trade (35)/settle (37) dates and click Submit to query for the security. Right-click it and select Open > Open Swap Contract. Most remaining trade information is entered on the contract, with the exception of a few accrual-related fields on the legs.

Contract

  • Traded Interest/Effective Date (2857): date to which traded interest is calculated; typically Trade Date or T+1
    • ILS sometimes have Trade Date = Settlement Date, where Traded Interest/Effective Date needs to be T+1 to calculate correct traded interest and accruals
    • This can be ignored if you are not accruing in Eagle Accounting
  • Select Values to be Calculated by STAR (7000)
    • Traded Interest: Eagle Accounting will calculate and create cash records for traded interest (only applicable for off-market trades)
    • Calculate None: traded interest can be entered manually
    • This can be ignored if you are not accruing in Eagle Accounting
  • Data Entry Method (10485): select Enter Price to supply a unit price or Enter Total Settlement Amount to supply the all-inclusive trade proceeds (both can be positive or negative)
    • Enter Price: for the contract and each leg, cost (Principal) is calculated as Notional Principal Value * Price * Price Multiplier and Net Amount = Principal + Traded Interest
      • This price should be dirty in the same way as the end-of-day prices
      • The legs of an ILS have no cost
    • Enter Total Settlement Amount: cost (Principal) is calculated as Total Settlement Amount - Traded Interest and Net Amount = Total Settlement Amount
    • Depending on the type of trade (open or close) and sign of the Price or Total Settlement Amount, Eagle Accounting will post either a premium payment or premium receipt
      • Open @ Positive Price/Amount ---> Premium Payment
      • Open @ Negative Price/Amount ---> Premium Receipt
      • Close @ Positive Price/Amount ---> Premium Receipt
      • Close @ Negative Price/Amount ---> Premium Payment
  • Notional Principal Value (40): enter value specified in contract
  • Price (45, if applicable): enter par-zero price (around zero)
    • Par-100 prices (around 100) must be converted to par-zero in order to have Eagle Accounting calculate the correct cost and cash
  • Total Settlement Amount (4404, if applicable): enter all-inclusive trade proceeds, including the effect of traded interest
  • Broker (88)
  • Counterparty (1144, optional): the counterparty can be selected from a list of all Issuers that have been tagged as counterparties (see Setting Up Legal Entities Best Practices for more information)

Legs

  • Lot Level Dated Date (4411, optional): for swaps traded in multiple lots, this field specifies the date from which traded interest will be calculated for each lot (the contract's dated date if null)
    • To have Eagle Accounting calculate zero traded interest, set this field equal to Traded Interest/Effective Date
    • This can be ignored if you are not accruing in Eagle Accounting
  • First Period Coupon Rate (1360, floating rate legs only, optional): for swaps traded in multiple lots, this field can be used to override the floating rate for the first accrual period (Eagle Accounting will start using the floating rate index after the first reset is processed)
    • This can be ignored if you are not accruing in Eagle Accounting

Close (transaction type: CLOSESWAP)

The Book Trade module should also be used to process both full and partial terminations. Enter the same identifiers as the open to query for the security. Right-click it and select Close > Close Swap Contract. Like the open, most information is entered on the contract. Almost all fields on the close are the same as the open.

  • Lot Selection Method (27): ILS can be closed using either FIFO or IDLOT
    • If Lot Level Dated Date is used to override the initial rate and a FIFO close is booked before the next reset, traded interest calculated by Eagle Accounting may be incorrect because it will be based on the SMF attributes
      • In these cases, traded interest can be entered instead of calculated
      • This can be ignored if you are note accruing in Eagle Accounting
  • Accrual End Date (4412): defaults to Settlement Date, which results in Traded Interest through Settlement Date - 1 (similar to a bond)
    • To calculate through Trade Date (typical for ), populate with T+1
    • This can be ignored if you are not accruing in Eagle Accounting

Conversion

The CONVERSION event is supported for ILSs. This uses the core open swap screen, rather than the dedicated conversion screen.

Cancel & Rebook

Faulty transactions must be cancelled using Batch Cancel Trades, with the transaction rebooked using the Book Trade module. ILSs are not supported in the Cancel & Rebook Trade process. Maturities must also be canceled using Batch Cancel Trades.

Accounting

Once an ILS trade is booked it will be picked up in Eagle’s global workflow. Daily accruals and periodic resets are generated as part of the earnings process, Accounting valuation is calculated when posting unrealized gain/loss, and Data Management valuation is calculated in STAR to PACE.

  • V17 & Above: Accounting Center > Processing and Exceptions > Global Processes

    • Accruals: Earnings > Run Income Accruals

    • Accounting Valuation: Unrealized Gain Loss Entries > Post Daily Fund Unrealized Gain Loss-Position

    • Data Management Valuation: Eagle STAR to Eagle PACE Direct Processing > Transfer Data - Batch

  • Prior to V17: Global Process Center

    • Accruals: Earnings > Accrue

    • Accounting Valuation: Unrealized Gain Loss Entries > Post Daily Fund Unrealized Gain Loss-Position

    • Data Management Valuation: STAR to PACE Direct Processing > Transfer Data - Batch

Valuation

Eagle Accounting values ILSs using unit prices on a par-zero basis (around zero rather than around 100). Prices are entered at the contract level using Add Issue Price. The market value formula is:

  • Market Value = Notional Amount * Price * Price Multiplier * Quantity Scale
    • If you are using an all-in dirty price (inclusive of both inflation and interest), both legs should be up with fixed rate coupons of zero
    • If you are using a dirty price that only includes inflation, the accrued interest portion of an ILS's MV will be captured in its Market Value Income (MVI)

Accruing on Negative Interest Rates

This can be ignored if you are not accruing in Eagle Accounting.

If a swap leg is long, Eagle Accounting makes negative postings to a receivable account. If the swap leg is short, the negative postings are to a payable account. Swap accrual postings are not made to the opposite account (payable vs. receivable) when accruing on negative interest rates.

Mature/Expire

ILSs will be picked up by Eagle Accounting’s core maturity process. This will be scheduled in production environments, but can be triggered manually via Accounting Center > Processing and Exceptions > Global Processes > Expirations & Maturities > Run Mature Process (V17) or Global Process Center > Expirations > Mature (prior to V17).

There is no cash component to the maturity event itself because swaps have a Maturity Price of zero and final coupon payments are dropped as part of the accrual process.

Reporting

STAR to PACE (S2P)

Almost all reports in Eagle Accounting leverage data from Data Management, which is populated by the S2P process. This will be scheduled as part of the daily workflow, but can also be triggered manually as described in the Inflation-Linked Swaps (ILS) Best Practices section.

The S2P process creates three rows for each ILS in the POSITION, POSITION_DETAIL, TRADE, and CASH_ACTIVITY tables. The MARKET_VALUE_INCOME column for each row captures a portion of the total market value.

  • Contract Position: market value due to price fluctuations
  • Pay Leg Position: market value due to period-to-date accruals payable
  • Receive Leg Position: market value due to period-to-date accruals receivable
  • For an ILS, the pay leg and/or receive leg will be zero (both if you use an all-in dirty price)

Accounting Reports

Eagle has a core set of accounting reports that can be used to review ILS and other security information. These are designed to support the daily operational workflow for business users, allowing Grid Reports to be easily exported to Excel and customized to provide additional details as needed. Advanced Reports are intended to be client-facing and do not provide the same level of customization.

ILSs are displayed as three separate rows. The contract and legs are intended to be displayed together, but may be broken into different areas depending on the report's groupings (long/short, for example).

Insurance Reporting

To categorize derivatives for insurance reporting, such as the Schedule DB, Derivative Elections (56) must be set to Hedging Effective, Hedging Other, Income Generation, Replications, or Other on all trades. Leaving the default of Trade will prevent the transaction from appearing on insurance reports.

Data Management Reporting

General Reporting (Eagle OLAP)

OLAP reports provide the maximum level of customization, allowing any column in Data Management to be pulled into a report. These go beyond the Eagle Accounting Grid Reports because they are not limited by core queries, can support multiple sources and various types of calculations, and provide drill-down functionality based on user-defined groupings.

Performance

The performance toolkit calculates market value-based performance for ILSs at the contract (price changes) and leg (accruals paid/received, if applicable) levels using data supplied by the S2P process. However, this can be misleading because swaps use notional values and typically start with a market value of zero. Exposure-based analyses, which can be implemented using Eagle Enrichment, calculate more accurate returns. Please contact Instrument Engineering if you are interested in these analyses for ILSs.

Automation

Multi-leg swap security master files (SMFs) and trades can be loaded through the standard _all streams in Message Center (MC) in addition to the dedicated _smf and _trades streams. SMFs must be loaded prior to trades (trades do not spawn SMFs) and both must be sent as three-row files (contract, pay leg, receive leg) in versions prior to V17 R2.27. Beginning in V17 R2.27, Interest Rate Swap, Total Return Swap, and Inflation-Linked Swap trades can be entered as single rows using the Single Event method (refer to https://eagledocs.atlassian.net/wiki/spaces/IE/pages/1658978617/Interest+Rate+Swaps+IRS+Best+Practices#Trade-Processing and https://eagledocs.atlassian.net/wiki/spaces/IE/pages/1658978705/Total+Return+Swaps+TRS+Best+Practices#Trade-Processing for additional information).

  • Ensure Trade Ticket Number (761) is populated for all multi-leg swap trades because it is required to process cancels and IDLOT closes

    • The same value is copied to Batch Identifier (701)

    • You cannot use Batch Cancel Trade if Trade Ticket Number was null on the original trade because Batch Identifier will be null

    • Trade Ticket Number should be the same across all rows for a particular trade, but unique for each trade

    • IDLOT closes must be entered with Target Trade Ticket Number (762) = Trade Ticket Number (761) of the open lot to cancel

    • Multi-leg swap cancels can be entered through Message Center as a single row with Target Trade Ticket Number (762) = Trade Ticket Number (761) of the transaction to be cancelled  

      • Set Long/Short Indicator (15) based on the contract-level: L to cancel long transactions or S to cancel short transactions

      • This is automatically routed to Batch Cancel Trade

  • Multi-leg swap prices and other reference data, such as variable rates, can also be loaded via default streams

    • To accomplish this, tag 4590 (Swap Type/Component) must be included in the message

      • 4590 = C to price the contract

      • 4590 = P or R price the pay or receive leg respectively

    • Either combination of these tag can be used for security resolution:

      • 14 (Primary Asset ID) and 1432 (Primary Asset ID Type)

      • 1233 (Xreference ID) and 1234 (Xreference ID Type)

      • When loading variable rates, 961 (Issue Name) must be included as well

ILS prices must be loaded to the contract only. Make sure you set tag 4590 = C in your price message.

  • No labels