CapeTools XCCY Curves
http://www.QuantTools.com
In total there are 9 functions present within the CapeTools XCCY Curves category of functions.
General Description
Given deposit, futures, FRAs and Swap instruments, these functions can strip out a discount factor curve. One can also input discount factor rates directly, or strip from zero rates or forward rates.
Usually when pricing a floating leg, you need two yield curves. A fixing curve in order to fix the rate and a discount curve for discounting cashflows. You will see this in numerous functions where a fixing curve is passed to an Index function and a discount curve is passed to legs (or instruments) that require discounting.
Thus basically you have a special discount curve for calculating the forward rates but the discount factors within this curve are NOT used for discounting cashflows.
We have implemented several yieldcurve functions that produce both a fixing curve and a discounting curve within a single yieldcurve object. Thus the same yieldcurve key will be passed to both the FixingCurve parameter and the discountingCurve parameter when pricing an instrument that demands both parameters.
We have achieved this by including a cross currency swap range within this stripper.
Our approach automatically gets the cross currency swap market correct. This method assumes only that USD 3m Libor floating legs have no basis spreads. One then finds say the forward basis spread curve for, say, 6m Euribor by combining the 6m Euribor to 6m USD Libor basis swap with the 6m USD Libor to 3m USD Libor basis swap to obtain the 6m Euribor to 3m USD Libor basis swaps. N-year basis swap at X basis points swaps a 6m Euribor + X bp payments (paid semiannually) for N years against 3m USD Libor payments (paid quarterly) for N years. The basis swaps are liquidly quoted for 1y, 2y, 3y, 5y, 7y, and 10y. From this data, one assumes an interpolation method, and strips to get the forward basis spreads. (see CapeTools Indexes for a definition of a forward basis spread).
The discount factors within these curves we call the cash discount factors. However when one requests a fixing value the correct LIBOR rate will be returned (with the help of the stripped forward basis spread curve).
These curves can also serve as input to the interest rate risk engine in order to compute DELTA and GAMMA risk parameters for an interest rate structure.
The following curves strip out both the discount curve and a forward spread curve :
- MKTYC_XCCY_D() ( interpolation methodology applied to the internally created DISCOUNT FACTORS CURVE. )
- MKTYC_XCCY_Z() ( interpolation methodology applied to the internally created ZERO RATE CURVE. )
- MKTYC_XCCY_F() ( interpolation methodology applied to the internally created FORWARD RATE CURVE. )
You can view the created forward spread curve by executing the ShowYCFwdSpreads() function. The three strippers above require the use of a Multi-dimensional LevenbergMarquardt object and thus are not as fast as the simpler strippers contained within the 'CapeTools Curves' category of functions (uses a one-dimensional Newton object). Thus we have implemented the following three strippers that will take in as input forward spread curves already stripped out from the strippers presented above.
- MKTYC_XCCY_D2() ( interpolation methodology applied to the internally created DISCOUNT FACTORS CURVE. )
- MKTYC_XCCY_Z2() ( interpolation methodology applied to the internally created ZERO RATE CURVE. )
- MKTYC_XCCY_F2() ( interpolation methodology applied to the internally created FORWARD RATE CURVE. )
All the curves presented here, when passed to interest rate instruments that are subject to interest rate risk calculations (see the 'CapeTools IR Risk' category of functions) produce more accurate results (as opposed to specifying separate discounting and fixing curves) because there exists a relationship between the discounting factors and fixing rates. (If you bump the inputs of the yieldcurve, the discount factors are adjusted correctly for the purpose of discounting a cashflow, this is not the case if you specify separate curves, the discounting factors do not move if you bump the market rates).
Function list.
- MKTYC_XCCY_D - Creates a yield curve using market rates and cross currency swaps (against the dollar).
- MKTYC_XCCY_D2 - Creates a yield curve using market rates and cross-currency swaps (against the dollar).
- MKTYC_XCCY_F - Creates a yield curve using market rates and cross currency swaps (against the dollar).
- MKTYC_XCCY_F2 - Creates a yield curve using market rates and cross currency swaps (against the dollar).
- MKTYC_XCCY_Z - Creates a yield curve using market rates and cross currency swaps (against the dollar).
- MKTYC_XCCY_Z2 - Creates a yield curve using market rates and cross currency swaps (against the dollar).
- MKTYC_XSPRD_D - Creates a yield curve using market rates and a Forward Spread Curve.
- MKTYC_XSPRD_F - Creates a yield curve using market rates and a Forward Spread Curve.
- MKTYC_XSPRD_Z - Creates a yield curve using market rates and a Forward Spread Curve.
Copyright (c) 2003-2007 CapeTools - All Rights Reserved.