BjerkStensCall (Function)
The BjerkStensCall function is used to approximate the theoretical value of American call options; and through a put-call transformation, the function can also be used to price American put options.
Syntax
BjerkStensCall(AssetPr, StrikePr, YearsLeft, Rate, Carry, Volty);
Returns (Double)
A numeric value representing the theoretical value of an American Call or Put option using the Bjerksund & Stensland model.
Parameters
| Name | Type | Description |
| AssetPr | Numeric | Specifies the price of the underlying asset. |
| StrikePr | Numeric | Specifies the strike price of the option. |
| YearsLeft | Numeric | Sets the amount of time left until option expiration in terms of years (enter 1 to stand for 365 days). |
| Rate | Numeric | Sets the short-term risk free interest rate, usually the 90-day T-Bill, (enter .049 for 4.9%). |
| Carry | Numeric | Sets the cost of carrying the underlying asset as a percentage in decimal points, usually the short-term risk free interest rate (enter .049 for 4.9%). |
| Volty | Numeric | Sets the volatility of the underlying asset as a percentage in decimal points (enter .225 for 22.5%). |
Remarks
The value for Carry differs based on the type of asset:
- Non-dividend paying stock - Set to the current annual risk-free interest rate.
- Dividend paying stock - Set the current annual risk-free interest rate minus the annual dividend yield percentage. Example: if the current risk-free interest rate is 4.5% and the stock's annual dividend yield is 2.4%, then the cost of carry could be approximated as 4.5% - 2.4% = 2.1%.
- Futures contract - Set to 0 (zero).
- Currency contract - Set to the current "domestic" risk-free interest rate minus current "foreign" risk-free interest rate. Note: the domestic and foreign interest rates depend on how the currency cross-rate is quoted.
The value for Volty can also be a reserved word value such as IVolatility.
Usage
If the BjerkStensCall function is being called to obtain the model price of a Put option, then the value passed as the input Rate should be Rate-Carry, and the value passed to the input Carry should be -Carry (based on the put-call transformation). Although written for calls, this function can be used for pricing American puts via a put-call transformation, which requires that the arguments be passed in as follows:
| Input # | Inputs for Calls | Inputs for Puts |
|---|---|---|
| Input 1 | AssetPr | StrikePr |
| Input 2 | StrikePr | AssetPr |
| Input 3 | YearsLeft | YearsLeft |
| Input 4 | Rate | Rate-Carry |
| Input 5 | Carry | -Carry |
| Input 6 | Volty | Volty |
BjerkStensCall is used by the OptionsComplex function to calculate the price for American puts by using the above transformation.
Example
Assigns to Value1 the theoretical price of an American non-paying dividend Call option with a 6 month (1/2 year) expiration from the current date with the short-term 90-day T-Bill at 4.9%.
Value1 = BjerkStensCall(36, 34, .5, 0, 4.9, IVolatility) ;
For additional information and details, you may wish to consult the following reference texts:
Chriss, Neil A. Black-Scholes and Beyond: Option Pricing Models. McGraw-Hill, 1997.
Haug, Espen Gaarder. Option Pricing Formulas. McGraw-Hill, 1998.