The ComplexChooser function calculates the theoretical price, sensitivities, the implied volatility, and the implied strike value of a European complex chooser option using Rubinstein’s model. See Multiple Exercise Options for a further explanation.
ComplexChooser 
(ModelStatistic, Asset, StrikeCall, StrikePut, TimeChoose, TimeCall, TimePut, Volatility, InterestRate, YieldRate, MarketPrice, TimeFormat) 
Note: Optional arguments are shown in Italics. MarketPrice is not Optional for the Implied Calculations.
Argument 
Description 
ModelStatistic 
Numeric value indicating the type of function required for the return value: •Theoretical = 1 •Delta = 2 •Gamma = 3 •Theta = 4 •ImpliedVol = 5 •Vega = 6 •Rho = 7 •Psi = 8 •Lambda = 9 •CallStrikeSensativity = 14 •CallImpliedStrike = 15 •PutStrikeSensativity = 16 •PutImpliedStrike = 17 
Asset 
The price of the underlying asset. Must be > 0. 
StrikeCall 
The price at which the asset can be purchased if the call option is chosen. Must be > 0. 
StrikePut 
The price at which the asset can be purchased if the put option is chosen. Must be > 0. 
TimeChoose 
The time, expressed in either Days or Years (depending on the TimeFormat value), until the buyer has to choose whether the option is a call or put. Must be: 0 < TimeChoose < TimeCall 0 < TimeChoose < TimePut. 
TimeCall 
Time, expressed in either Days or Years (depending on the TimeFormat value), until the expiration of the call option. Must be > 0. 
TimePut 
Time, expressed in either Days or Years (depending on the TimeFormat value), until the expiration of the put option. Must be > 0. 
Volatility 
Annualized volatility of the underlying security. Must be > 0. 
InterestRate 
Riskfree interest rate expressed as a percentage. This rate is interpreted as a continuously compounded. Must be > 0. 
YieldRate 
Yield, expressed as a percentage (dividends or interest yield), of the underlying asset price. This rate is interpreted as a continuously compounded. 
MarketPrice 
Optional. The selling price of the option in the marketplace. This input is required when implied volatility and strike are calculated. Price must be > 0. 
TimeFormat 
Optional. Alphanumeric value indicating the format of the time arguments (i.e. TimeExpire). If omitted, Days are used as the default. Specified as either: •Days = 0 or "D" (case insensitive) •Years = 1 or "Y" (case insensitive) 
Example
Calculate all of functions for a complex chooser option whose asset price 30 days from the chooser date, 90 days from the call expiration, and 120 days the put expiration is $38. The exercise price of the call is $40, the exercise price of the put is $35, the riskfree interest rate is 8% per annum, the yield rate is 6.25% per annum, and the annual volatility is 20%. So, 
Input 

Output 

Variable 
Value 

Function 
Name 
Value 
Asset 
38 

1 
Theoretical: 
1.098943 
StrikeCall 
40 

2 
Delta: 
0.133656 
StrikePut 
35 

3 
Gamma: 
0.185636 
TimeChoose 
30 

4 
Theta: 
0.014691 
TimeCall 
90 

5 
Implied Vol.: 
0.190327 
TimePut 
120 

6 
Vega: 
0.103123 
Volatility 
20% 

7 
Rho: 
0.005067 
InterestRate 
8% 

8 
Psi: 
0.008108 
YieldRate 
6.25% 

9 
Lambda: 
4.621639 
MarketPrice 
1 

14 
Call Strike Sens: 
0.243872 
TimeFormat 
Days 

15 
Call Implied Strike: 
40.436572 



16 
Put Strike Sens: 
0.164997 



17 
Put Implied Strike: 
34.311110 
For a further example on this model see the included Excel Template located in the root directory of the addin. This example can be accessed through the Multiple Exercise Template menu item after the addin has been installed properly.
A list of all of the possible Error Messages is included for convenience.