[Payer, Receiver] = cdsoptprice(ZeroData, ProbData,
Settle, OptionMaturity, CDSMaturity, Strike, SpreadVol) computes
the price of payer and receiver credit default swap options.

[Payer, Receiver] = cdsoptprice(ZeroData, ProbData,
Settle, OptionMaturity, CDSMaturity, Strike, SpreadVol, Name,Value) computes the
price of payer and receiver credit default swap options with additional
options specified by one or more Name,Value pair
arguments.

Input Arguments

ZeroData

M-by-2 vector of dates
and zero rates or an IRDataCurve object of zero
rates.

ProbData

P-by-2 array of dates
and default probabilities.

Settle

Settlement date is a serial date number or date string. Settle must
be earlier than the maturity date.

OptionMaturity

N-by-1 vector of serial
date numbers or date strings containing the option maturity dates.

CDSMaturity

N-by-1 vector of serial
date numbers or date strings containing the CDS maturity dates.

Strike

N-by-1 vector of option
strikes expressed in basis points.

SpreadVol

N-by-1 vector of annualized
credit spread volatilities expressed as a positive decimal number.

Name-Value Pair Arguments

Specify optional comma-separated pairs of Name,Value arguments.
Name is the argument
name and Value is the corresponding
value. Name must appear
inside single quotes (' ').
You can specify several name and value pair
arguments in any order as Name1,Value1,...,NameN,ValueN.

Note:
Any optional input of size N-by-1 is also
acceptable as an array of size 1-by-N,
or as a single value applicable to all contracts. Single values are
internally expanded to an array of size N-by-1.

'AdjustedForwardSpread'

N-by-1 vector of adjusted
forward spreads (in basis points) to be used when pricing CDS index
options.

Default: unadjusted forward spread normally used for single-name CDS
options

String or N-by-1 cell
array of strings of business day conventions. Values are:

actual

follow

modifiedfollow

previous

modifiedprevious

Default: actual

'Knockout'

N-by-1 vector of Boolean
flags. If the credit default swaptions is a knockout, the flag is True,
otherwise it is False.

Default: False

'PayAccruedPremium'

N-by-1 vector of Boolean
flags. If accrued premiums are paid upon default, the flag is True,
otherwise it is False.

Default: True

'Period'

N-by-1 vector of the number
of premiums per year of the CDS. Allowed values are 1, 2, 3, 4, 6,
and 12.

Default: 4

'RecoveryRate'

N-by-1 vector of recovery
rates, expressed as a decimal from 0 to 1.

Default: 0.4

'ZeroBasis'

Basis of the zero curve. Choices are identical to Basis.

Default: 0 (actual/actual)

'ZeroCompounding'

Compounding frequency of the zero curve. Allowed values are:

1 — Annual compounding

2 — Semiannual compounding

3 — Compounding three times per year

4 — Quarterly compounding

6 — Bimonthly compounding

12 — Monthly compounding

−1 — Continuous compounding

Note:
When ZeroData is an IRDataCurve object,
the arguments ZeroCompounding and ZeroBasis are
implicit in ZeroData and are redundant inside this
function. In that case, specify these optional arguments when constructing
the IRDataCurve object before calling this function.

Default: 2 (Semiannual compounding)

Output Arguments

Payer

N-by-1 vector of prices
for payer swap options in Basis points.

Receiver

N-by-1 vector of prices
for receiver swap options in Basis points.

A credit default swap (CDS) option, or credit default swaption,
is a contract that provides the option holder with the right, but
not the obligation, to enter into a credit default swap in the future.
CDS options can either be payer swaptions or receiver swaptions. In
a payer swaption, the option holder has the right to enter into a
CDS in which they are paying premiums and in a receiver swaptions,
the option holder is receiving premiums.