BondCalc: Matrix Pricing Features

BondCalc can process all corporate bonds and commercial mortgages, and many other types of securities. All securities are converted to cash flows.

Matrix pricing can be run in both the single security and portfolio sections:

Choice of pricing to: Features: Experimental: Procedures for Portfolio Matrix Pricing:
1. All bonds must be inputted. To correctly calculate yield-to-worst or
  OAS the input must include the full call schedule and a sinking fund
  double-up percent if any.

  Each bond must be assigned at least one rating. By default it will use
  the primary rating field or the input on the portfolio input screen
  (which overrides the security input). The rating must be a member of
  the scale that is designated on Alt-R twice when inside the security.
  By default it can be either be S&P or Moody's. BondCalc has eight
  rating fields and on Alt-R twice one can designate which are to be used
  when matrix pricing and how they are weighted.

  Each bond must also be assigned the name of an existing spread matrix
  in the "Class" input field (follows primary rating field) unless the
  rating is GOVT which assumes that there is no spread over the Trasury
  curve.

2. A Treasury Yield Curve must be inputted in the ^Y (or ShftF4) yield
  curve database. The second of the two input screens will allow for
  finer granularity on the short end and allows for entering the maturity
  dates having the program calculate the years. The first input screen,
  however, has an option for not interpolating between surrounding yields
  but for taking the closest yield.

3. Designate yield curve. This can be done in two ways: (1) entering the
  name of the Yield Curve Base on ShftF6 Portfolio Parameter Screen, or
  (2) entering it on the Portfolio Override Screen (Alt-O when in the
  Portfolio section).

4. Using ^M (or ShftF10) input several Spread Matrices by averaging the
  spreads collected from several dealers in the secondary market. If
  running OAS pricing then these matrices should be for Option Free Bonds
  with the same average lives as the holding with the embedded options.
  Suggest building matrices for the Industrial, Financial and Utility
  industry sectors. (Could also create matrices for Canadian, Government
  guaranteed, Yankee/Euro and Pipeline issues.) You need not fill in all
  input fields. Blank spreads within the matrix will be interpolated
  from surrounding rows. BondCalc will then interpolate values not
  explicitly inputted and extend nearest value for time periods beyond
  inputted range. You can print out a copy of the filled in matrix with
  F6. Note that these can be stored in nests of matrices by date. Name
  matrix with date in CCYYMMDD format to activate.

  Non-current Coupon Adjustment - If pricing using security's worst flows
  you still can adjust for issues at a discount (i.e. with a coupon lower
  than current market conditions) as their value would not necessarily be
  the same as an issue with a current coupon. (At the current time they
  are worth a premium to market as they are assumed to remain outstanding
  to maturity.) The Treasury base plus the spread from the above matrix
  will be used as the current coupon. The first row is the difference
  (in %) the issue's coupon is away. You have a choice of two methods
  for the second row:
  0 - Percent Change will change the base by the % entered,
  1 - Additive will add basis points interpolated from this row.
  If negative entered it will reduce the yield.

5. On the Ctrl-J Sector Spread Differential database you can also set a
  spread difference based on a market sector code that is inputted on the
  second page of the main input. Inside the Portfolio use Alt-O to popup
  the Parameter Override Screen. Designate which sector spread database
  you are using.

6. On the ShftF6 Parameter input screen you must designate the interpolation
  method. Average life space is the default. The Matrix
  Pricing Type field also controls the use of a zero spot curve and the
  turning of the yield into an Option Free Yield. (See explanations
  below.)

7. If OAS Pricing enter Volatility and related control variables on the
  Ctrl-O input screen.

8. On a portfolio input screen input the list of bonds to be included.
  Use F3 to point and add securities to the portfolio. If you know a
  bond's price, yield, or spread input it at the portfolio level and the
  program will not create a matrix yield for it. Using inputted price
  the program will solve for the yield and the report will display this
  yield and its spread over Treasuries.

9. Portfolio Overrides. Certain settings should be set for each portfolio.
  These can be found on Alt-O when inside a portfolio. On this screen
  you can set settlement date, yield curve, path to securities, spread
  matrix nest date or path, and other things. One feature is a Matrix
  Pricing Mode which can bet set for Money Market Mode where the yield
  curve is ignored and spreads are assumed to be rates (but still entered
  in basis points).

10.On the second page of the Portfolio Report Menu you can set the
  calculations to use the issue's worst flows (yield-to-worst). The
  default is using only the cash flows to maturity. Suggest using
  yield-to-worst. With this option BondCalc will matrix price the bond to each
  of the call dates with regular sinking funds, and to each of the call
  dates with doubled-up sinkers, if the provision exists. BondCalc will
  then select the lowest matrix price. Each of the cases will do its own
  interpolation, using respective average life, from the yield matrix and
  the spread matrix. This field has no effect if in OAS pricing mode.

11.Select the "Portfolio Evaluation Using Matrix Pricing" from the report
  menu. Output will be printed in data file order. Sort data first.
  Calculated prices, accrued interest and totals will appear on this
  report and the results are used for any other Portfolio reports in
  the calculation pass. If you enter a C in the selection column you
  can clone the portfolio with the new one having the calculated prices
  entered as input.

12.If running several portfolios the Compare/Batch Section can be used to
  run them in one pass. When cloning the results multiple new names will
  be asked for.