Example reference data screens, trade screens, and reports are attached:
Entity Setup
Before any trades can be booked, the target entity must be set up appropriately. Refer to Swaps Entity Setup Processing Notes for details.
Reference Data
Storage & Configuration
Eagle has modeled each CDS security master file (SMF) as a single row in Data Management.
All CDS positions are held long (positive units) in Eagle, with buying or selling protection defined on the security master file (SMF) rather than the trade. All securities and positions need to have this indicator populated SMF, where it will then be automatically pulled into the trade panel.
Market Data
Since the CDS Big Bang in 2009, all new contracts are traded with a fixed interest rate of 1% or 5%. Pricing in Eagle Accounting is done on a par-zero basis (prices around zero rather than 100), so par-based prices will have to be adjusted to generate the appropriate valuations in Eagle. Refer to CDS & IRS Vendor Pricing Best Practices for more information on adjusting par-based prices.
Security Data
CDSs can be set up and maintained using Issue Viewer, Security Reference Manager (SRM), or Reference Data Center (RDC). The list below contains all fields required to configure a CDS SMF.
Issue Name (961)
Primary Asset ID (14) & Type (1432)
Unique Product Identifier (1955) & Unique Swap Identifiers (1958)
Processing Security Type (3931) =
SWCDCO (Credit Default Swaps)
Price Multiplier (18): the default of
0.01
will be correct in most cases, but may need to be changed to1.00
(CDS prices are sometimes supplied having already been multiplied by0.01
)Issue Country (1418)
Asset Currency (85)
Notional Reset Type (4409) leave NULL
Premium Indicator (3302): leave NULL
Buy/Sell Indicator (1364): buying or selling protection is an security-level attribute in Eagle, so two separate SMFs must be created in order to buy and sell protection on the same CDS
Buy
: buy protection, Pay/Receive Indicator (4590) will default toAccrue Payable
Sell
: sell protection, Pay/Receive Indicator will default toAccrue Receivable
Coupon (70):
1.00
or5.00
(other rates are supported for contracts issued prior to the Big Bang)Coupon Type (97) =
F (Fixed Rate)
Day Count Basis (471) =
ACT/360
Payment Frequency (472) =
3_M (Quarterly)
Business Day Convention (1536)
V15 R2 & Above =
ADJMBC (Modified Following - Adjusted)
Prior to V15 R2 =
ADJMBC (Modified Business Day - Adjusted)
Coupon Day of Month (10551) =
20
Business Calendar (1480)
Issue Date (68): first trade date of the swap
Dated Date (1183): date accruals start, "Effective Date" in ISDA contracts
First Payment Date (473): enter the actual first payment date, including any adjustment for weekends/holidays based on the Business Day Convention
Refer to Calculate Coupon Dates Processing Notes if the adjusted date is not available
Last Payment Date (474): enter the actual last payment date, including any adjustment for weekends/holidays based on the Business Day Convention
Refer to Calculate Coupon Dates Processing Notes if the adjusted date is not available
Maturity Date (38): date swap expires, "Expiration Date" or "Termination Date" in ISDA contracts
Cleared Security (5027)
No
: CDS will follow standard security workflow with periodic coupons generated and valuation based on price * quantityYes
: CDS will follow cleared security workflow with daily exchange of variation margin based on daily accruals and unrealized gain/loss from day-over-day price movement
Trade Processing
Open (event type: CDSOPEN)
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. The list below contains all fields required to book a CDS trade.
Traded Interest/Effective Date (2857): date to which traded interest is calculated; typically Trade Date or T+1
This should NOT be set equal to "Effective Date" defined in your ISDA term sheet or trade ticket; "Effective Date" should be mapped to Dated Date on the security setup
CDS sometimes have Trade Date = Settlement Date, where Traded Interest/Effective Date needs to be T+1 to calculate correct traded interest and accruals
Select Values to be Calculated by STAR (7000): select
Traded Interest
to have it calculated, orCalculate None
to enter it manuallyAccrual Convention Offset Override (1604): can be used to override the entity value of Accrual Convention Offset (12038) if it is set to
Settlement Date + 1
Data Entry Method (10485):
Enter Price
to supply a clean unit price orEnter Total Settlement Amount
to supply a value representing all-inclusive trade proceeds (both can be positive or negative)Enter Price
: cost (Principal) is calculated as Notional Principal Value * Price * Price Multiplier and Net Amount = Principal + Traded InterestEnter Total Settlement Amount
: cost (Principal) is calculated as Total Settlement Amount - Traded Interest and Net Amount = Total Settlement AmountDepending 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; the chart below outlines this methodology
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): contract notional
Price (45)
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)
Close (event type: SELL)
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. Almost all fields on the close are the same as the open.
Lot Selection Method (27): CDSs can be closed using either
FIFO
orIDLOT
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 CDS), populate with T+1
Cancel & Rebook
Faulty CDS transactions can be cancelled and rebooked using the Cancel & Rebook Trade module, which will also replay the full lifecycle of the position. Alternatively, trades can be cancelled using Cancel Trade, with the transaction rebooked using the Book Trade module.
Accounting
Once a CDS trade is booked, it will be picked up in Eagle's global workflow. Daily accruals and periodic coupons 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. These can be scheduled or triggered manually.
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
CDSs can be valued using clean unit prices, clean market values, or dirty market values.
Clean Prices
Prices are entered using Add Issue Price. The market value formula is:
Market Value = Notional * Price * Price Multiplier * Quantity Scale
Clean prices (excluding accrued interest) must be supplied to avoid double-counting
Eagle Accounting assumes that swaps have the same prices across all accounts, so entity-level price overrides must be used to accommodate different prices
If the use of dirty prices is required, the contract should be setup to not accrue (this can be done by entering fixed rate coupons of zero, which also suppresses cash payments)
Clean or Dirty Market Values
Some swaps are priced using clean or dirty market values, more often the latter. Eagle Accounting has a process to “clean up” these market values and convert them to clean unit prices. Refer to
for detailed formulas.Note: this process can only be used when each CDS is only held in a single fund, which is typical for market value-priced swaps.
Market values are entered using Insert/Update Price Exchange.
Price Date (1109)
Original Price (893):
Clean Market Value
orDirty Market Value
Price Type Code (1843): select Clean Market Value or Dirty Market Value based on available data
Units (40): enter the Notional Value of the CDS, which must match the notional of the position in Eagle Accounting (the process will error out if there is a mismatch in notional)
Once the market value is entered use Global Process Center > Calculate Clean Unit Price to trigger the calculation. This can be done for a particular swap or all swaps for a specified date, or scheduled as part of the daily workflow. There are two flags that must be set before triggering the process:
Reprice Flag (1844):
Yes
updates the existing clean price for the selected Source,No
leaves the existing price in the databasePricing Center Flag (1257):
Yes
inserts/updates the clean unit price in the price exchange table used by Pricing Center and the price table,No
inserts/updates it in the price table only
Credit Events
Credit events on single-name CDS require the entire position to be unwound/sold because they reference a single underlying reference obligation. When a credit event occurs the position should be closed via Book Trade at a trade price equal to the difference between the Recovery Rate and Par. Refer to attached
for a full walkthrough of a real credit event. There is also credit event processing in .Calculation of Credit Event Settlement
For Recovery Rates quoted in percentages, simply drop the % symbol (70.5% = 70.5).
Buy Protection: Notional * (100 - Recovery Rate) + Accrued Interest
Sell Protection: Notional * (Recovery Rate - 100) + Accrued Interest
The final accrued/traded interest is due from protection buyer to protection seller to cover the period from previous coupon date to event determination date (inclusive). In situations where a coupon date is after event determination date, but before auction/trade date, the protection seller will need to reimburse interest to the protection buyer.
Booking Credit Event Close
Trade Date (35): equal to event determination date
Settlement Date (37): equal to auction settlement date
Accrual End Date (4412): equal to event determination date + 1
Notional Principal Value (40): full notional amount held
Price (45)
Buy Protection: 100 - Recovery Rate
Sell Protection: Recovery Rate - 100
Note: if Price Multiplier =
1.00
, replace 100 with 1.00 and convert the Recovery Rate to a decimal value (70.5% = 0.705)
Traded Interest (49): calculated from previous coupon date to event determination date (inclusive)
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 Accounting section.
The S2P process creates one row for each CDS in the POSITION, POSITION_DETAIL, TRADE, and CASH_ACTIVITY tables. The MARKET_VALUE_INCOME column captures the total market value, inclusive of price fluctuations and period-to-date accruals payable or receivable.
Accounting Reports
Eagle has a core set of accounting reports that can be used to review CDS 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.
Insurance Reporting
To categorize derivatives for insurance reporting, such as the Schedule DB, Derivative Elections (56) must be set toHedging 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 CDXs 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 meaningful returns. The documentation and .egl file for bilateral CDX enrichment are linked below as attachments. Additional details are available in Exposure Reporting Best Practices and the Manage Eagle Enrichment. Note: CDS positions require synthetic cash offsets to accurately reflect performance on the fund level. Depending on your version, minor panel changes may be required to allow synthetic cash to be created and linked for these instruments. Please contact Instrument Engineering through your Eagle representative for details.
Automation
CDS security master files (SMFs) and trades can be loaded through the standard Message Center streams. The SMF must be loaded prior to the trade (trades do not spawn SMFs). Refer to https://eagledocs.atlassian.net/wiki/spaces/GENERICINTER for more information.
Sample messages for the standard interfaces are listed below.
Transaction Type | CSV Stream | CSV Sample Files | EagleML Stream | Eagle Sample Files |
---|---|---|---|---|
SMF Setup | eagle_default_in_csv_smf OR | eagle_ml-2-0_default_in_xml_smf_generic | ||
Trades | eagle_default_in_csv_trades OR | eagle_ml-2-0_default_in_xml_acct_trades |
|
Add Comment