# cashbybls

Determine price of cash-or-nothing digital options using Black-Scholes model

## Syntax

``Price = cashbybls(RateSpec,StockSpec,Settle,Maturity,OptSpec,Strike,Payoff)``

## Description

example

````Price = cashbybls(RateSpec,StockSpec,Settle,Maturity,OptSpec,Strike,Payoff)` computes the price for cash-or-nothing European digital options using the Black-Scholes option pricing model. NoteAlternatively, you can use the `Binary` object to price digital options. For more information, see Get Started with Workflows Using Object-Based Framework for Pricing Financial Instruments. ```

## Examples

collapse all

Consider a European call and put cash-or-nothing options on a futures contract with and exercise strike price of \$90, a fixed payoff of \$10 that expires on October 1, 2008. Assume that on January 1, 2008, the contract trades at \$110, and has a volatility of 25% per annum and the risk-free rate is 4.5% per annum. Using this data, calculate the price of the call and put cash-or-nothing options on the futures contract. First, create the `RateSpec`:

```Settle = datetime(2008,1,1); Maturity = datetime(2008,10,1); Rates = 0.045; Compounding = -1; Basis = 1; RateSpec = intenvset('ValuationDate', Settle, 'StartDates', Settle,... 'EndDates', Maturity, 'Rates', Rates, 'Compounding', Compounding, 'Basis', Basis)```
```RateSpec = struct with fields: FinObj: 'RateSpec' Compounding: -1 Disc: 0.9668 Rates: 0.0450 EndTimes: 0.7500 StartTimes: 0 EndDates: 733682 StartDates: 733408 ValuationDate: 733408 Basis: 1 EndMonthRule: 1 ```

Define the `StockSpec`.

```AssetPrice = 110; Sigma = .25; DivType = 'Continuous'; DivAmount = Rates; StockSpec = stockspec(Sigma, AssetPrice, DivType, DivAmount)```
```StockSpec = struct with fields: FinObj: 'StockSpec' Sigma: 0.2500 AssetPrice: 110 DividendType: {'continuous'} DividendAmounts: 0.0450 ExDividendDates: [] ```

Define the call and put options.

```OptSpec = {'call'; 'put'}; Strike = 90; Payoff = 10;```

Calculate the prices.

```Pcon = cashbybls(RateSpec, StockSpec, Settle,... Maturity, OptSpec, Strike, Payoff)```
```Pcon = 2×1 7.6716 1.9965 ```

## Input Arguments

collapse all

Interest-rate term structure (annualized and continuously compounded), specified by the `RateSpec` obtained from `intenvset`. For information on the interest-rate specification, see `intenvset`.

Data Types: `struct`

Stock specification for the underlying asset. For information on the stock specification, see `stockspec`.

`stockspec` handles several types of underlying assets. For example, for physical commodities the price is `StockSpec.Asset`, the volatility is `StockSpec.Sigma`, and the convenience yield is `StockSpec.DividendAmounts`.

Data Types: `struct`

Settlement or trade date for the basket option, specified as an `NINST`-by-`1` vector using a datetime array, string array, or date character vectors.

To support existing code, `cashbybls` also accepts serial date numbers as inputs, but they are not recommended.

Maturity date for the basket option, specified as an `NINST`-by-`1` vector using a datetime array, string array, or date character vectors.

To support existing code, `cashbybls` also accepts serial date numbers as inputs, but they are not recommended.

Definition of the option as `'call'` or `'put'`, specified as an `NINST`-by-`1` vector.

Data Types: `char` | `cell`

Strike price value, specified as an `NINST`-by-`1` vector.

Data Types: `double`

Payoff values (or the amount to be paid at expiration), specified as an `NINST`-by-`1` vector.

Data Types: `double`

## Output Arguments

collapse all

Expected prices for cash-or-nothing option, returned as a `NINST`-by-`1` vector.

## Version History

Introduced in R2009a

expand all