Portfolio Swap Definition
1. Overview
A portfolio swap is an agreement between a buy-side and sell-side institution that helps standardizing the handling of equity swaps. For swaps within the portfolio, the performance and financing resets occur at the same time. Portfolio swaps provide synthetic long or short exposure that is equivalent to buying and short selling a basket of shares on margin.
Positions
A portfolio swap allows a client to trade in and out positions within the swap, and do so any number of times during the lifetime of the contract. The swap is dynamic; therefore, its positions will increase or decrease based on trading activity booked to the swap. A client may, at any time, unwind any of its positions with the portfolio, or its entire portfolio. The liquidation method is part of the pre-agreed information in the portfolio swap contract.
Portfolio swaps settle in a pre-agreed currency. So, for example, a client could set up a UK Portfolio Swap settling in GBP, or a German and French portfolio settling in EUR. A portfolio swap is traditionally a long dated instrument, often with a duration between two and seven years.
Once a Portfolio Swap on a specific underlying security is open, regardless of whether it is held long or short, the holder can add additional quantities (trades) of the same underlying security at a market price. At any time, a swap holder can partially or fully terminate/liquidate the position. Any trade that is in the opposite direction (BUYS and SELLS) of the underlying position will result in a close out/liquidation. Close-out trades are matched against one or more open trades using the relevant liquidation method (defined in the contract).
The contract and the underlying security will be part of the basic liquidation criteria. Therefore, there will be one position per contract, underlying security and book. The liquidation gives rise to realized trading gains or losses if the open price and close price are different. The same liquidation method is used for all individual trades booked under the same contract.
Refer to the Calypso Positions Management User Guide for details on starting the Liquidation engine and for more information on the liquidation configuration.
Access Permissions
The Portfolio Swap access permissions include:
• | ViewPortfolioSwapContract: Portfolio Swap Contract viewing restriction |
• | ModifyPortfolioSwapContract: Portfolio Swap Contract editing restriction |
2. Defining a Portfolio Swap Contract
From Calypso Navigator choose Configuration > Equity > Portfolio Swap Contract (menu action refdata.PortfolioSwapContractWindow
) to open the Portfolio Swap Contract window.
Sample Portfolio Swap Contract
2.1 Loading an Existing Portfolio Swap
You can load an existing portfolio swap in the Portfolio Swap Contract window using one of the following methods:
» | Enter a value in the Id field. |
» | You can also click ![]() |
2.2 Creating a New Portfolio Swap Contract
» | Click ![]() |
» | Click ![]() ![]() |
Note that if the Authorization mode is enabled, an authorized user must approve your entry, provided that "PortfolioSwapContract" has been added to the classAuthMode domain.
Duplicate Contracts
While saving a new contract, the system can be configured to check if a similar contract already exists. You need to define the fields to be checked in the domain “duplicateContractFields” – The fields can be StartDate, EndDate, ProcessingOrg, CounterParty, SettlementCurrency, MarketType, FXConversion, PayAccrualsAtLiquidation, LiquidationMethod, CommissionPayMethod, TradingGainPayMethod, DividendPayMethod, CashCollateral.
If an existing contract has the same values for these fields, a warning is displayed and you can choose to create the new contract or not.
Contract Details
Fields | Description |
---|---|
Processing Org |
Select the processing organization. The processing organization is a legal entity with the role ProcessingOrg. |
Way |
Choose PROVIDER or USER. The provider receives trading commissions on buy and sell trades. The user pays the trading commissions. Each contract must have one provider and one user. |
Counter Party |
Select the counterparty of the contract. |
Status |
Select Active or Inactive. You can only capture trades against Active contracts. |
Ⓘ [NOTE: It is possible to have multiple contracts between the same processing organization and counterparty during a particular period of time]
General Terms Field Details
Fields | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Market Type |
Select a particular market type or ALL. Selecting a particular market type enables the Location field and provides an option for specifying values.
|
||||||||||||
Start Date |
Specify the start date of the contract. |
||||||||||||
End Date |
Specify the end date of the contract. |
||||||||||||
Settlement Currency |
Select the currency used for all types of settlements (Performance, Funding, Dividend, Commission, etc.). All individual trades booked under the same contract will use the same settlement currency. Usually, the settlement currency is the same as the funding rate index currency. |
||||||||||||
FX Conversion |
Select the FX Conversion method for multi-currency positions (underlying security currency is different from the contract settlement currency).
|
||||||||||||
Pay Accruals At Liquidation |
Select one of the following options:
If you select Effective Date, please select Effective Date for Trading Gain Pay Method as well. |
||||||||||||
Liquidation Method |
Select the method of liquidation to be applied on all trades/positions booked under the contract. It is recommended to use FIFO. Average Price liquidation is supported with the following constraints:
|
||||||||||||
Commission Pay Method |
Select the method for paying commissions to the provider of the contract.
|
||||||||||||
Trading Gain Pay Method |
Select the method for paying the trading gain.
|
||||||||||||
Dividend Pay Method |
Select the method for paying dividends.
|
||||||||||||
Basic Interest |
If checked: Basic Interest charges (service charges) are paid by the user of the contract according to the funding schedule. If unchecked: no Basic Interest charges are to be paid by the user. |
||||||||||||
Cash Collateral |
If checked: the Cash Collateral tab is added to the Portfolio Swap Contract window (click on the Cash Collateral tab for details). Cash collateral measures are generated for the position aggregations on the contract level. If unchecked: the Cash Collateral tab is disabled and no cash collateral measures are generated. |
||||||||||||
Underlying ProductType |
You can select the type of underlying product supported for this contract or All for all product types. Available product types are specified in domain "PFSContractUnderlying". |
||||||||||||
Date Calculation Method |
Select the method to determine the settlement lag:
|
||||||||||||
Attributes |
Click |
||||||||||||
FX Resets |
Enter FX Resets references for multi-currency positions. |
Regions
To provide region functionality to the Locations field under Market Type on the General Terms tab, perform the following steps.
Define regions under the CountryAttributes.Region domain, as shown below.
Define Region under the CountryAttributes domain, as shown below.
Select / configure the appropriate Region at the Country Attributes level:
From Calypso Navigator choose Configuration > Definitions > Countries to open the Country window.
» | Click the Attribute link on the Details tab to open the Attributes Window. |
» | Click Domain .... The CountryAttributes Domain window opens. |
Add Region to the list of attribute names and click OK. Pre-defined regions are now available as values in the Location field of the General Terms tab.
3. Specifying Equity Leg Details
Select the Equity Leg Details tab.
» | Configure the fields described in the table below as necessary. |
» | Click Generate Schedule to generate the equity leg schedule. |
Equity Leg Details
Fields | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
Performance Schedule |
Choose the performance payoff schedule.
Select a payoff frequency, a roll day for weekly and monthly frequencies, stub rule, and period rule. The Period Rule can be ADJUSTED or UNADJUSTED to determine if the end date of a payoff period is adjusted when it falls on a non-business day (applicable with BUS lag payment). Other options include FRN and MAT_UNADJUSTED.
For the fixing date lag, the default is zero business days. |
|||||||||
Payment Date Lag |
Specify the number of days to offset the payment, whether the payment is based on business or calendar days, holidays, and date roll. |
|||||||||
Apply roll on day Lag |
When Apply roll on day Lag on Cmp Cashflows checkbox is checked, lag will be applied on the compounded cashflow dates calculated based on Roll On Day and Roll on Day Lag (derived from payment date lag on equity leg) field to get desired / adjusted dates and a new field of Roll on Day Lag will be visible on the funding leg below Roll on Day.
|
4. Specifying Funding Leg Details
Select the Funding Leg Details tab and keep the new field "Different Rate Index for Long and Short" unchecked (default behavior).
» | Configure the fields described in the table below as necessary. |
» | Click Generate Schedule to generate the funding leg schedule. |
Funding Leg Details
Fields | Description | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Different Rate Index for Long and Short Leg Type |
Check to define a different funding rate for long positions in the Long Rate Index tab and short positions in the Short Rate Index tab, or clear otherwise (the funding leg defined in the Long Rate Index tab applies to both Long and Short positions). Select Fixed or Float. |
|||||||||||||||
Fixed Rate (%) |
Enter the percentage rate when Leg Type is Fixed.
|
|||||||||||||||
Rate Index Reset Frequency Reset Lag Reset Timing RoundingMethod |
When Leg Type is Float:
For example, select DLY for daily compounding rate indices.
Use Observation Shift Period - When checked, it includes an Observation Shift that allows shifting the whole Sample Period in addition to the Reset Dates, such that the weights of any given daily fixing remains the same.
|
|||||||||||||||
Compounding |
Check Compounding to enable compounding and specify the following fields as needed. Frequency - It is set to the reset frequency. For WK/BIWK/LUN, you can select Original or Regular. Difference between Original and Regular (Example for a 3M swap paying MONTHLY compounding WEEKLY):
Compounded cashflows with reset frequency higher than payment frequencies for IBOR rate indices is supported with Compounding Method = NoCmp. Cutoff Lag - Only available for DLY frequency. You can enter a number of days for the cutoff lag, bus / cal days and holidays. Sample Timing - Only available for DLY frequency. Select BEG_PER / END_PER. Method - The only available method currently available is NoCmp. A cashflow is created at the compounding period without actually compounding the interest. The daily rate resets for the floating rate are used to calculate the simple interest everyday and summed to find the total interest for the period. Diff. Reset Date - Check to generate the reset dates based on the coupon frequency. It uses the index tenor otherwise. Multiplicative Spread - Check "Multiplicative Spread" so that the spread over the rate index is multiplicative rather than additive. |
|||||||||||||||
Daycount |
Specify the day-count convention. Daycount defaults to the day count of the Rate Index. See Calypso Navigator > Help > Day-Count Conventions for descriptions of the day-count conventions. |
|||||||||||||||
DiscountMethod |
You can select NONE for no discount, or EXP for exponential interest calculation. Ⓘ [NOTE: The EXP discount method is only supported for contracts with Date Calculation Method = Independent] |
|||||||||||||||
Frequency |
Select the payment frequency and configure Roll On day and Payment At options. Roll On Day can be set by the user to generate desired compounded cashflows dates. |
|||||||||||||||
Stub Rule |
Select the rule to apply in case of a stub period and configure the stub rule as needed. |
|||||||||||||||
Period Rule |
Select an adjustment method.
|
|||||||||||||||
Payment Date Lag |
Specify the number of days to offset the payment, bus / cal days, holidays and date roll. |
|||||||||||||||
First Accrual |
If checked, the notional to be used for the basic interest, funding and borrow charge calculation is the current day notional. It means that the interest accruals on the start date correspond to 1 day of accrual. If unchecked, the notional used for the basic interest, funding and borrow charge calculation is the previous day notional. There is no accrual on the start date. |
|||||||||||||||
Include Cash Prepaid |
If checked: Cash margin call position is included in the funding flow calculation. The funding is paid by the user of the portfolio swap contract regardless of the direction of the position. If unchecked: Cash margin call position is not included in the funding flow calculation. |
|||||||||||||||
Borrow Charge |
If checked: Borrow charge flows are paid by the user of the portfolio swap contract on short positions. If unchecked: Borrow charge flows are not paid. |
|||||||||||||||
Allow Trade Specific Funding Spreads |
If checked: Funding spreads can be edited at trade level for all trades associated with the contract. If not checked: The contract information is used to calculate the funding spreads. |
|||||||||||||||
Allow Trade Specific Reset Rate |
If checked: The trade settle date reset date will be used for accrual calculations. |
5. Country Grid
Select the Country Grid tab.
» | Click ![]() ![]() ![]() |
» | Configure the fields described in the table below as necessary. |
» | If "Allow Trade Specific Funding Spreads" is checked, and the funding spreads are modified, you will be prompted to propagate them to the associated trades. |
Click Yes and run the scheduled task UPD_TRADES_PFS_RERATE to actually propagate the funding spreads to the trades. It will set the portfolio contract attribute RERATE_SPREAD_PROPAGATED = YES.
You can select a contract, or leave empty for all.
Country Grid Details
Fields | Description |
---|---|
Version |
When the first version of the country grid is saved, the version number defaults to 0. You can click When a trade is created, the latest version of the rules is used and is stored in the trade keyword PortfolioSwapPositionSpreadVersion. |
Country |
Select the country of the product or Any. |
Security Type | Select a product type or Any. It is limited to product types selected in “Underlying ProductType” in the General Terms tab. |
Security |
Click ... in the Security field and navigate the Product Chooser window to select a product, or leave as Any. |
Start Date |
The start date of the period to which the country grid applies. |
End Date |
The end date of the period to which the country grid applies. |
Long Commission (bps) Short Commission (bps) |
Enter the default commission rates for trade activity. The commission rate is applied to all trades booked under a particular portfolio swap contract. The Long Commission is paid/received on buy trades. The Short Commission is paid/received on sell trades. A fee of type COMMISSION is computed upon saving the portfolio swap trades. |
Receivable Dividend (%) Payable Dividend (%) |
Enter the dividend retrocession rate applied on long and short positions. Receivable Dividend is the percentage of the dividend received by the processing organization on a long position. Payable Dividend is the percentage of the dividend paid by the processing organization on a short position. |
Long Funding Spread (bps) |
Enter a funding spread to be applied on long positions. |
Short Funding Spread (bps) |
Enter a funding spread to be applied on short positions. |
Borrow Charge Spread (bps) |
Enter a Borrow Charge Spread to be applied on the user's long positions. In the Corporate Action calculation, the Borrow Charge Spread is added to the Borrow Charge Rate for calculating the Borrow Charge accrual and CA amount. |
Hair Cut (%) |
Enter a haircut percentage as needed. It is used in the Funding calculation if Include Cash Prepaid is unchecked on the Portfolio Swap contract. Funding Notional = Cost Notional * Hair Cut %. |
6. Lifecycle Actions
You can use the Lifecycle Actions tab to define lifecycle actions for the contact.
Defining a Termination
Check the Termination checkbox and enter the Termination Date.
Check "At Average Price?" to terminate the trade at average price, or market price otherwise.
Save the contract.
To perform the actual termination of the contract, you need to generate the corporate actions on the termination date. A corporate action of type REDEMPTION.TERMINATION is created.
When applying the corporate action, the positions on the contract are terminated at the underlying market price (or average price if "At Average Price?" is checked). The status of the contract is changed to Terminated and no new trades can be entered on the contract.
Please refer to Calypso Portfolio Swaps Corporate Actions documentation for complete details.
Defining a Rollover
Check the Rollover checkbox and enter a Rollover Date.
Check "At Average Price?" to roll over the trade at average price, or market price otherwise.
Then click Select Contract to select the target contract where the current contract needs to be rolled over. You can only select a contract with the same FX conversion method.
Save the contract.
To perform the actual rollover of the contract, you need to generate the corporate actions on the rollover date. A corporate action of type TRANSFORMATION.ROLLOVER is created.
When applying the corporate action, the positions on the current contract are terminated at the underlying market price (or average price if "At Average Price?" is checked) and new positions are created on the target contract. The status of the current contract is changed to RolledOver and no new trades can be entered on the current contract.
Please refer to Calypso Portfolio Swaps Corporate Actions documentation for complete details.
7. Cash Collateral
The Cash Collateral tab is enabled when the Cash Collateral checkbox is selected on the General Terms tab.
» | Select the Cash Collateral checkbox on the General Terms tab. |
» | Configure the fields described in the table below as necessary. |
Cash Collateral Details
Fields | Description |
---|---|
Margin Call Contract |
Select a margin call contract that applies to the portfolio swap contract.
|
Start Date |
The start date of the period to which the ratios apply. |
End Date |
The end date of the period to which the ratios apply. |
Initial Margin Ratio (%) |
Enter the initial margin ratio used in margin call measures calculation. |
Maintenance Margin Ratio (%) |
Enter the maintenance margin ratio used in margin call measures calculation. |
Pre agreed % for cash withdrawal |
Enter the pre-agreed % for cash withdrawal used in cash balance measures calculation. |
FX Reset |
If needed, select an FX Reset reference for FX conversion of the margin call position. |
8. Extending the Maturity Date of the Contract
You can extend the maturity date of the contract using Reconvention > Maturity Date Change.
It brings up the Maturity Date Change reconvention window.
Enter the Reconvention Date and Time, Effective Date and Maturity Date.
Then click Apply.
The reconvention appears in the Reconvention panel of the General Terms tab.
Save the contract.
The contract end date does not change but new trades and lifecycle actions are applicable until the new end date. The column "Extended Maturity Date" allows viewing the new end date in the Trade Browser.
For trades with ADR, Equity, Equity Index underlyings - All trades existing before the reconvention keep their original end date. Trades entered after the reconvention effective have the new end date.
For trades with Future Equity Index underlyings – The end date is set to the minimum of the contract end date and the future expiration date. All trades existing before the reconvention keep their original end date. Trades entered after the reconvention effective date have the end date set to the minimum of the mew end date and the future expiration date.
Country grids are extended to the new end date.
Cashflows are generated up to the new end date with Short Last stub rule.