Basis Curve
From the Calypso Navigator, navigate to Market Data > Interest Rate Curves > Basis Curve (menu action marketdata.CurveBasisWindow
).
Single currency basis curves can be used for products with two floating indices; cross-currency basis curves can be used for cross-currency products.
For a single currency basis curve, construct the curve using offsets or basis swap underlying instruments. The curve consists of a base forward curve, and a set of spreads over the zero rates of the base forward curve.
For a cross-currency basis curve, construct the curve using cross-currency basis swap underlying instruments. FX Forward underlying instruments can be used to extend the basis curve. The curve consists of a base forward curve in the same currency as the basis curve, a set of spreads over the zero rates of the base forward curve, and a foreign forward curve in a different currency than the base forward curve.
• | General curve information |
• | Creating a basis curve |
• | Pricer configuration |
1. General Curve Information
• | The name of the curve is set upon saving. It will identify the curve throughout the system. |
• | The instance of the curve dictates the quote side of the underlying instruments to be used for generating the curve. |
– | The CLOSE instance uses CLOSE quotes. |
– | The LAST instance uses BID, MID, and ASK quotes. |
– | The OPEN instance uses OPEN quotes. |
• | By default, the curve is saved as of the current date and time. You can clear the Current checkbox and change the curve date as needed. |
• | You can change the precision of the discount factors using Utilities > Set Df Precision - Default is 8. |
Setup Requirements
You can mark basis curves as requiring regeneration when their respective base or underlying curve(s) are more up-to-date than the basis curve. The regeneration occurs when pricing.
To enable this feature, set the following environment property:
» | Set SET_NEED_GENERATE = Y. |
Curve Update
You can use the scheduled task PROP_RATE_1BUSDAY to roll the quotes which are not liquid.
You can use the scheduled task GENERATE_CURVE to regenerate a curve as of the current valuation date.
Graph Panel
Once a curve is generated, you can select the Graph panel to view the curve in graphical form.
2. Creating a Basis Curve
Basis Curve Quick Reference Base Curves
Curve Underlying Instruments You can use the curve underlying instruments such as basis swaps, money market, and FX forwards, etc. in building basis curves. To define underlying instruments, navigate to Configuration > Market Data > Curve Underlyings from the Calypso Navigator, or click New/Edit Underlying in the Underlying panel of the Basis Curve window. Curve Generation 1. Click New to start a new curve. 2. Select the curve instance. 3. Definition Panel — Select the following to define the curve: currency, index, tenor, “Generate from instruments” should be checked, interpolator, generation algorithm, curve type set to “CurveBasis”, Pricing Env, Base Fwd Curve, Foreign Fwd Curve. 4. Underlying Panel — Select the underlying instruments. 5. Quotes Panel — Enter / load quotes. 6. Points Panel — Click Generate to generate the points. 7. Click Save, and enter a curve name. Pricer Configuration Assign the basis curve as a discount or forecast curve. |
2.1 Definition Panel
Click New to start a new curve.
Select the following to define the curve: currency, index, tenor, “Generate from instruments” should be checked, interpolator, generation algorithm, curve type set to “CurveBasis”, Pricing Env, Base Fwd Curve, Foreign Fwd Curve (for a cross-currency basis curve).
If "Invert Shift" is checked, the curve will move down when applying a positive shift in ZC or underlying shifts.
For more details on how the "Invert Shift" setting impacts risk calculation, see the "Shift Driver" section of the Calypso Sensitivity documentation.
The following curves are required to build the basis curve:
• | For a single currency basis curve (the generated basis curve is used to project forward rates on the “basis” leg of the swap): |
– | A Base Fwd Curve, used to project forward rates on the “base” leg of the swap |
– | Optional - A Discount Curve, used to discount cashflows on both legs of the swap - If the Discount curve is not specified, the Base Fwd Curve is used as the Discount Curve |
The BasisGlobal generator requires a discount curve to generate the basis curve. Once a basis curve is generated using BasisGlobal, basis risk (scenario, sensitivity, simulation) will be calculated independently from the base curve used to generate the points.
• | For a cross-currency basis curve (the generated basis curve is used to discount cashflows on the domestic leg of the swap): |
– | A Base Fwd Curve in the domestic currency, used to project forward rates on the domestic leg of the swap |
– | A Foreign Fwd Curve in the foreign currency, used to project forward rates on the foreign leg of the swap |
– | Optional - A Discount Curve in the foreign currency, used to discount cashflows on the foreign leg of the swap - If the Discount Curve is not specified, the Foreign Fwd Curve is used as the Discount curve |
The generation algorithms are described in the Calypso IRD Analytics guide.
2.2 Underlying Panel
Click the Underlying tab, and select the underlying instruments.
» | Select an instrument type to display the list of available instruments. If none appear, you can click New/Edit Underlying to create new instruments. |
» | Select instruments from the list of available instruments on the left-hand side, and click >> to add them to the list of selected instruments on the right-hand side. |
You can exclude instruments from the curve generation if they are no longer needed.
You can set a priority when multiple instruments have the same maturity date. The lowest priority is 0.
2.3 Quotes Panel
Click the Quotes tab.
» | You can click Refresh Quotes to load the quotes from the pricing environment selected in the Definition panel. If your market data server is running, quotes will be updated in real-time. |
» | You can also enter the quotes manually, and save them to the pricing environment. |
Quotes Parameters Details
Parameter |
Description |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|
Extrapolation |
Select the method to extrapolate points outside of the curve.
|
|||||||||
Use month end tenors for MM |
If set to True, in the curve generation:
Default is False. |
|||||||||
Use MMkt up to first future |
If set to Y, then money markets after the first available future will be ignored in curve generation. Default is False. |
|||||||||
Roll Method |
You can select the roll method. For example, you create a curve instance on T0. On T1 you price a trade.
|
|||||||||
Interpolate FX Curve |
Applies to BasisGlobal. When set to "True", the FX Derived Curve interpolation logic will be applied to the portion of the curve covered by any FX Forward underlyings. Because the Basis Curve does not actually have an FX Curve to reference, this method computes the discount factors for every day covered by the FX Forward underlyings, which usually is no more than a year. Therefore, on the Points tab and chart tab of the curve window, the user will see these points for every day out to the end of the FX Forwards. Ⓘ [NOTE: In this case, no other Shaping Method parameter will be respected, as the FX curve interpolation is already a short-end shaping method. The Shaping Method parameter will always be regarded as "Basic"] |
|||||||||
FX Forward Quote Type |
Select the FX Forward quote type for FX Forward underlyings:
|
|||||||||
Daily Average Swap Fast Approx |
Applies to BasisGlobal. In order to improve the performance, an approximation has been introduced when generating curves with BasisGlobal that use daily average swap underlyings. This will result in small changes in the generated numbers. You can bypass the approximation by setting the generator parameter "Daily Average Swap Fast Approx" to False. |
|||||||||
Use FX Reset |
Only available when the generator is BasisGlobal or BasisBootStrap. Indicates whether the Spot Alternative FX reset should be used instead of the FX spot rate. The generator parameter value will be False by default to retain current functionality. When set to True:
|
|||||||||
Basis Curve Solve For DFs |
Only available when the generator is BasisGlobal. When false, it solves for spread and when true, it solves for discount factors (should be used when the basis curve is part of a package with discount curves). |
Resets Panel
You can choose Curve > Show Reset Tab to display / hide the Resets panel.
The Resets panel shows manual resets requirements for underlying instruments (cash quotes associated with a given underlying instrument). This applies when "Manual First Reset" is checked in the definition of the underlying instrument.
Ⓘ [NOTE: If you hide the Resets panel, the required cash quotes are displayed in the Underlying panel, along with the quotes of the underlying instruments]
2.4 Points Panel
Click the Points tab. Click Generate to view the generated spreads.
Also, if one of the base curves has been updated, you can click Update in the Definition panel to automatically load the updated information, and recalculate the resulting spread rather than having to regenerate the Basis Curve. This may be useful if you update your base curves more frequently than your Basis Curve.
3. Pricer Configuration
From the Calypso Navigator, navigate to Market Data > Pricing Environment > Pricer Configuration, and click Load to select a pricer configuration name.
3.1 Discount Curves
Click the "Discount Curves" tab.
» | Select a currency, a product or ANY, a subtype or ANY, an index or ANY, a tenor or ANY. |
» | Click ... to select a curve. |
» | Click Add to add the curve to the pricer configuration. |
» | Click Save to save the pricer configuration. |
3.2 Forecast Curves
Click the Forecast Curves panel.
Assign the Basis Curve in the Forecast Curves panel.
» | Select a currency, a product or ANY, a subtype or ANY, an index, a tenor or ANY. |
» | Click ... to select the curve. |
» | Click Add to add the curve to the pricer configuration. |
» | Click Save to save the pricer configuration. |