# bktimespec

Specify time structure for Black-Karasinski tree

## Syntax

``TimeSpec = bktimespec(ValuationDate,Maturity)``
``TimeSpec = bktimespec(___,Compounding)``

## Description

example

````TimeSpec = bktimespec(ValuationDate,Maturity)` sets the number of levels and node times for a `bktree` and determines the mapping between dates and time for rate quoting.```

example

````TimeSpec = bktimespec(___,Compounding)` adds the optional argument `Compounding`.```

## Examples

collapse all

This example shows how to specify a four-period tree with annual nodes using annual compounding to report rates.

```ValuationDate = 'Jan-1-2004'; Maturity = ['12-31-2004'; '12-31-2005'; '12-31-2006'; '12-31-2007']; Compounding = 1; TimeSpec = bktimespec(ValuationDate, Maturity, Compounding)```
```TimeSpec = struct with fields: FinObj: 'BKTimeSpec' ValuationDate: 731947 Maturity: [4x1 double] Compounding: 1 Basis: 0 EndMonthRule: 1 ```

## Input Arguments

collapse all

Pricing date and first observation in the tree, specified as a scalar date using a serial date number or date character vector.

Data Types: `double` | `char`

Dates marking the cash flow dates of the tree, specified as `NLEVELS`-by-`1` vector of serial date numbers or date character vectors. Cash flows with these maturities fall on tree nodes. `Maturity` should be in increasing order.

Data Types: `double` | `char` | `cell`

(Optional) Rate at which the input zero rates were compounded when annualized, specified as a scalar integer value.

• If `Compounding` = `1`, `2`, `3`, `4`, `6`, `12`:

`Disc = (1 + Z/F)^(-T)`, where `F` is the compounding frequency, `Z` is the zero rate, and `T` is the time in periodic units; for example, ```T = F``` is one year.

• If `Compounding` = `365`:

`Disc = (1 + Z/F)^(-T)`, where `F` is the number of days in the basis year and `T` is a number of days elapsed computed by basis.

• If `Compounding` = `−1`:

`Disc = exp(-T*Z)`, where `T` is time in years.

Data Types: `double`

## Output Arguments

collapse all

Specification for the time layout for `bktree`, returned as a structure. The state observation dates are `[ValuationDate; Maturity(1:end-1)]`. Because a forward rate is stored at the last observation, the tree can value cash flows out to `Maturity`(`end`).

Introduced before R2006a