Price European call option on bonds using Black model
CallPrice = bkcall(Strike, ZeroData, Sigma, BondData, Settle,
Expiry, Period, Basis, EndMonthRule, InterpMethod,
StrikeConvention)
Strike  Scalar or number of options ( 
ZeroData  Twocolumn (optionally threecolumn) matrix containing zero (spot) rate information used to discount future cash flows.

Sigma  Scalar or 
BondData  Row vector with three (optionally four) columns or

Settle  Settlement date of the options. May be a serial date
number or date string. 
Expiry  Scalar or 
Period  (Optional) Number of coupons per year for the underlying bond. Default = 2 (semiannual). Supported values are 0, 1, 2, 3, 4, 6, and 12. 
Basis  (Optional) Daycount basis of the bond. A vector of integers.
For more information, see basis. 
EndMonthRule  (Optional) Endofmonth rule. This rule applies only
when 
InterpMethod  (Optional) Scalar integer zero curve interpolation method.
For cash flows that do not fall on a date found in the 
StrikeConvention  (Optional) Scalar or

CallPrice = bkcall(Strike, ZeroData, Sigma, BondData,
Settle, Expiry, Period, Basis, EndMonthRule, InterpMethod, StrikeConvention)
using
Black's model, derives an NOPT
by1
vector
of prices of European call options on bonds.
If cash flows occur beyond the dates spanned by ZeroData
,
the input zero curve, the appropriate zero rate for discounting such
cash flows is obtained by extrapolating the nearest rate on the curve
(that is, if a cash flow occurs before the first or after the last
date on the input zero curve, a flat curve is assumed).
In addition, you can use the Financial Instruments Toolbox™ method getZeroRates
for
an IRDataCurve
object with a Dates
property
to create a vector of dates and data acceptable for bkcall
.
For more information, see Converting an IRDataCurve or IRFunctionCurve Object.
[1] Hull, John C., Options, Futures, and Other Derivatives, Prentice Hall, 5th edition, 2003, pp. 287288, 508515.