Yield curve methodology
FIA handles attribution over multiple yield curves in a very powerful and flexible manner. The program allows
- multiple decompositions of risk-free curves
- unlimited numbers of sector and credit curves to be associated with particular securities
- security-specific attribution
- z-spread attribution
Each of these topics is covered in more detail below.
Specifying which yield curves to use
Assuming that you have set up one or more yield curves in the yield curve file, and that each curve has been given a suitable name, you may link as many curves as you wish to the securities in your portfolio.
To do this, edit field 11 (labelled yield curve) in the security master file and insert the names of the curves that you wish to use for attribution. FIA enforces the following rules:
- For a security whose pricing depends on an underlying yield curve, at least one curve name must be specified.
- Multiple yield curves can be associated with a given security by writing their names to the yield curve field and separating them by a pipe (|) symbol. For instance, if you have data for yield curves SOVERERIGN_CURVE, AA_CURVE, A_CURVE and you want to run attribution using all three curves, enter SOVEREIGN_CURVE|AA_CURVE|A_CURVE into field 11.
Attribution on risk-free (or base) curves
- The first curve in the list is defined to be the base curve. Typically this is the AAA, sovereign or risk-free curve for the associated security - but it need not be. Some securities may not have a risk-free market available; others, such as swaps may need to be priced from a particular curve. In such cases, use the most appropriate curve for which data is available.
- Movements in this base curve will be decomposed and reported in the manner specified by the SovereignCurveDecomposition switch. For instance, if this switch is given a value of STB, then movements in SOVEREIGN_CURVE will be decomposed into shift, twist and curvature components.
Attribution on sector and credit curves
- Only the first curve's movements will be decomposed in this way. For other curves (if supplied), FIA will calculate return due to shifts between these curves, in the order specified. For instance, in the above example, FIA will also calculate the return due to changes in spreads between AA_curve and SOVERERIGN_CURVE, and between AA_CURVE and A_CURVE.
- Curve should be supplied in descending order of credit-worthiness.
- Different curves can be associated with different securities.
- Curves associated with securities can change over time, using FIA's effective dating capabilities.
- Different numbers of curves can be associated with different securities. For instance, you may decide only to link a SOVEREIGN_CURVE to a AAA-rated government bond, and to link this sovereign curve and a sector curve to an A-rated corporate bond. In this case FIA will report a return for the sector curve to sovereign curve spread for all securities, but this return will be zero for the government bond, since only the base curve has been linked with this security, implying that no spread attribution was requested.
In cases where a yield to maturity is supplied for all securities in the portfolio and benchmark, FIA can calculate security-specific returns. These returns are due to changes in the spread between whatever curve(s) are associated with the security, and the security's actual market yield, which may not lie on the security's pricing curve.
For instance, an A-rated corporate bond may be priced from a suitable A-rated sector curve. However, the bond's actual yield may lie some distance away from the yield implied by reading off a yield from that curve at the bond's maturity. Such differences typically occur for security-specific reasons, and the returns generated by changes in this security-specific spread are called security-specific returns.
To include security-specific returns in your attribution reports, ensure that
- the value of the SecuritySpecificAttribution switch is on;
- for each weight and return datum supplied, a value for YTM (yield to maturity) has also been supplied. Values of YTM must be supplied on all dates for which calculation is active, including the date at the start of the first interval. If a missing value is found and SecuritySpecificAttribution is active, the program will halt with an error report.
Security-specific attribution can be run in conjunction with as many curves as required.
In some cases you may wish to run attribution using a z-spread curve. The z-spread is the extra spread that must be added to all maturities on the risk-free (or base) curve to ensure that the price of the security calculated using this curve equals the price of the security in the marketplace. If the z-spread is accurate, the security return calculated by FIA should exactly equal the supplied return, and residual will be zero - although market noise usually means this is unlikely to occur.
For a particular security at a given date, a value for its z-spread can be supplied in column 13 of the weights and returns file.
To include z-spread returns in your attribution reports, ensure that
- the value of the ZSpreadAttribution switch is on;
- for each weight and return datum supplied, a value for z-spread has also been supplied . Values of z-spread must be supplied on all dates for which calculation is active, including the date at the start of the first interval. If a missing value is found and ZSpreadAttribution is active, the program will halt with an error report.
Z-spread attribution can be run in conjunction with as many curves as required.
Security-specific attribution and z-spread attribution cannot be run at the same time.
Use of a z-spread generates a zero-coupon curve from which securities can be priced. In contrast, a YTM cannot be used for security pricing as it includes the distorting effects of coupons. Therefore the two approaches are not consistent and cannot be combined.