Capturing Exotic Swap Trades

An exotic swap is a swap where the structure of coupon and principal payments is customized using the Calypso eXSPress language. It allows you to define exotic payout formulas on-the-fly. The payout formulas require the definition of exotic variables.

 

Exotic Swaps Quick Reference

» Define exotic variables from the Calypso Navigator using Configuration > Interest Rates > Exotic Variables
» Enter exotic details in the Trade panel
» Then enter more swap details as described in Capturing Swap Trades

 

1. Trade Details

Choose Trade > Interest Rates > Swap to open the Swap worksheet, from the Calypso Navigator or from the Trade Blotter.

» Select the Exotic type of leg. You can also select an exotic structure type if you have defined any. In the Calypso Navigator, see Configuration > Product > Structure Type Creator for details. Help is available from that window.
» Click Structured Window to define the coupon formula and / or notional formula. When the formula is applied, it is displayed in the exotic leg. Click Help in that window for complete details and examples.

 

2. Sample Basis Swap Trade

One party makes periodic payments based on a floating rate index and the other party makes payments based on another floating rate index. Both rates are reset periodically. The payments are based on a notional and are in the same currency.

[NOTE: Compounding and averaging are not supported for structured legs]

» Set the coupon formula as a floating rate plus 0.5%, and enter the initial notional amount in the Exotic Capital field. The exotic variable qlb6m has been defined as USD LIBOR 6M.

» Click Generate to display the results.
» Then click Save to return to the Trade worksheet.

The formula will appear as shown below.

 

3. Sample Swap Trade with Cap/Floor

» Set the coupon formula as a spread between two indices (qlb6m – qlb, qlb6m represents LIBOR 6M and qlb represents LIBOR 3M in this example). Also, set the exotic capital formula to the amount of the initial notional.
» Click Generate.
» Select the Variables panel and click +. You will be prompted to select a type and enter a name.

Select Array, and enter cap for example. Click OK.

Repeat for the floorvariable.

[NOTES: Variable names cannot contain any symbols because these are used as operators or may have special meaning inside Calypso; this includes periods, hyphens and commas – Also, if an Array Variable has more than one formula, it is not typeable (i.e. the structure cannot be saved as a type)]

The system creates the variables a<name>, acap and afloor.

In the Variables panel, select each variable and set its calculation formula. Let’s use fixed rates to begin.

You can click Generate to view the details of the formula.

Set acap to 3% and afloor to 0.5%.

» Now, return to the Exotic Structure panel and modify the coupon formula to incorporate the acap and afloorvariables: max(min((qlb6m-qlb), acap), afloor).

It means:

Find the spread between LIBOR 6M and LIBOR 3M
Compare spread to the cap rate and take the minimum
Compare the minimum to the floor rate and take the maximum as the final rate
» Once the coupon formula is modified, make sure to click Generate again.

» Then click Save to return to the Trade worksheet.

The formula will appear as shown below.