Contents

cfbybdt

Price cash flows from Black-Derman-Toy interest-rate tree

Syntax

[Price, PriceTree] = cfbybdt(BDTTree,
CFlowAmounts, CFlowDates, Settle, Basis, Options)

Arguments

BDTTree

Forward-rate tree structure created by bdttree.

CFlowAmounts

Number of instruments (NINST) by maximum number of cash flows (MOSTCFS) matrix of cash flow amounts. Each row is a list of cash flow values for one instrument. If an instrument has fewer than MOSTCFS cash flows, the end of the row is padded with NaNs.

CFlowDates

NINST-by-MOSTCFS matrix of cash flow dates. Each entry contains the serial date number of the corresponding cash flow in CFlowAmounts.

Settle

Settlement date. A vector of serial date numbers or date strings. The Settle date for every cash flow is set to the ValuationDate of the BDT tree. The cash flow argument, Settle, is ignored.

Basis

(Optional) Day-count basis of the instrument. A vector of integers.

  • 0 = actual/actual (default)

  • 1 = 30/360 (SIA)

  • 2 = actual/360

  • 3 = actual/365

  • 4 = 30/360 (BMA)

  • 5 = 30/360 (ISDA)

  • 6 = 30/360 (European)

  • 7 = actual/365 (Japanese)

  • 8 = actual/actual (ICMA)

  • 9 = actual/360 (ICMA)

  • 10 = actual/365 (ICMA)

  • 11 = 30/360E (ICMA)

  • 12 = actual/actual (ISDA)

  • 13 = BUS/252

For more information, see basis.

Options

(Optional) Derivatives pricing options structure created with derivset.

Description

[Price, PriceTree] = cfbybdt(BDTTree,
CFlowAmounts, CFlowDates, Settle, Basis, Options)
prices cash flows from a BDT interest-rate tree.

Price is an NINST-by-1 vector of expected prices at time 0.

PriceTree is a tree structure with a vector of instrument prices at each node.

Examples

Price a portfolio containing two cash flow instruments paying interest annually over the four-year period from January 1, 2000 to January 1, 2004.

Load the file deriv.mat, which provides BDTTree. The BDTTree structure contains the time and interest-rate information needed to price the instruments.

load deriv.mat; 

The valuation date (settle date) specified in BDTTree is January 1, 2000 (date number 730486).

BDTTree.RateSpec.ValuationDate
ans =

      730486

Provide values for the other required arguments.

CFlowAmounts =[5 NaN 5.5 105; 5 0 6 105];
CFlowDates = [730852, NaN, 731582, 731947; 
              730852, 731217, 731582, 731947];

Use this information to compute the prices of the two cash flow instruments.

[Price, PriceTree] = cfbybdt(BDTTree, CFlowAmounts, ... 
CFlowDates, BDTTree.RateSpec.ValuationDate)
Price =

   74.0112
   74.3671

PriceTree = 

    FinObj: 'BDTPriceTree'
      tObs: [0 1.00 2.00 3.00 4.00]
     PTree: {1x5 cell}

You can visualize the prices of the two cash flow instruments with the treeviewer function.

treeviewer(PriceTree)

Was this topic helpful?