WebCab Options and Futures Demo
v2.5
(J2SE Edition)

webcab.lib.finance.options
Class EuropeanEvaluation

java.lang.Object
  |
  +--webcab.lib.finance.options.EuropeanEvaluation
All Implemented Interfaces:
Serializable

public class EuropeanEvaluation
extends Object
implements Serializable

Within this class we consider the evaluation of the present value of European options on equities, equity indexes, currencies and futures contracts in accordance with the classical Black-Scholes model.

See Also:
Serialized Form

Constructor Summary
EuropeanEvaluation()
          Creates a new instance.
 
Method Summary
 double call(double price, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, BusinessCalendar businessCalendar)
          Calculates the present value of a European call option.
 double call(double price, double strike, double riskFreeRate, double volatility, double timeToMaturity)
          Calculates the present value of a European call option.
 double callOnCurrency(double foreignRate, double exchangeRate, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, BusinessCalendar businessCalendar)
          Evaluates the value of a European call option on a currency.
 double callOnCurrency(double foreignRate, double exchangeRate, double strike, double riskFreeRate, double volatility, double timeToMaturity)
          Evaluates the value of a European call option on a currency.
 double callOnFutures(double futuresPrice, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, BusinessCalendar businessCalendar)
          Evaluates the present value of a European call option on a (stock) futures contract.
 double callOnFutures(double futuresPrice, double strike, double riskFreeRate, double volatility, double timeToMaturity)
          Evaluates the present value of a European call option on a (stock) futures contract.
 double callOnIndex(double yield, double indexValue, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, BusinessCalendar businessCalendar)
          Evaluates the value of a European call option on an index.
 double callOnIndex(double yield, double indexValue, double strike, double riskFreeRate, double volatility, double timeToMaturity)
          Evaluates the value of a European call option on an index.
 double callWithDividends(double stockPrice, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, double[] dividend, double[] dividendPaymentDates, BusinessCalendar businessCalendar)
          Calculates the present value of a European call option on an equity investment which pays dividends during the options life.
 double callWithDividends(double stockPrice, double strike, double riskFreeRate, double volatility, double timeToMaturity, double[] dividend, double[] dividendPaymentDates)
          Calculates the present value of a European call option on an equity investment which pays dividends during the options life.
 double callWithYield(double yield, double stockPrice, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, BusinessCalendar businessCalendar)
          Calculates the value of a European call option where the underlying asset pays a continuous dividend.
 double callWithYield(double yield, double stockPrice, double strike, double riskFreeRate, double volatility, double timeToMaturity)
          Calculates the value of a European call option where the underlying asset pays a continuous dividend.
 double payOffCall(double maturityPrice, double strike)
          This method calculates the payoff at maturity from a European call option.
 double payOffPut(double maturityPrice, double strike)
          This method calculates the payoff at maturity from a European put option.
 double put(double stockPrice, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, BusinessCalendar businessCalendar)
          Calculates the present value of a European put option on an investment asset which does not pay any dividends, coupons or interest.
 double put(double stockPrice, double strike, double riskFreeRate, double volatility, double timeToMaturity)
          Calculates the present value of a European put option on an investment asset which does not pay any dividends, coupons or interest.
 double putOnCurrency(double foreignRate, double exchangeRate, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, BusinessCalendar businessCalendar)
          Evaluates the value of a European put options on a currency.
 double putOnCurrency(double foreignRate, double exchangeRate, double strike, double riskFreeRate, double volatility, double timeToMaturity)
          Evaluates the value of a European put options on a currency.
 double putOnFutures(double futuresPrice, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, BusinessCalendar businessCalendar)
          Evaluates the present value of a European put option on a (stock) futures contract.
 double putOnFutures(double futuresPrice, double strike, double riskFreeRate, double volatility, double timeToMaturity)
          Evaluates the present value of a European put option on a (stock) futures contract.
 double putOnIndex(double yield, double indexValue, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, BusinessCalendar businessCalendar)
          Evaluates the value of a European put option on an index.
 double putOnIndex(double yield, double indexValue, double strike, double riskFreeRate, double volatility, double timeToMaturity)
          Evaluates the value of a European put option on an index.
 double putWithDividends(double stockPrice, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, double[] dividends, double[] dividendPaymentDates, BusinessCalendar businessCalendar)
          Calculates the present value of a European put option on an equity investment which pays dividends during the options life.
 double putWithDividends(double stockPrice, double strike, double riskFreeRate, double volatility, double timeToMaturity, double[] dividends, double[] dividendPaymentDates)
          Calculates the present value of a European put option on an equity investment which pays dividends during the options life.
 double putWithYield(double yield, double stockPrice, double strike, double riskFreeRate, double volatility, Date evaluationDate, Date maturityDate, BusinessCalendar businessCalendar)
          Evaluates the present value of a European put option where the underlying asset pays a continuous dividend.
 double putWithYield(double yield, double stockPrice, double strike, double riskFreeRate, double volatility, double timeToMaturity)
          Evaluates the present value of a European put option where the underlying asset pays a continuous dividend.
 double totalValue(double delta, double theta, double gamma, double assetPrice, double riskFreeRate, double volatility)
          Here we derive an estimate of the total value of a portfolio of derivatives whch depend on some underlying asset.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EuropeanEvaluation

public EuropeanEvaluation()
Creates a new instance.

Method Detail

payOffCall

public double payOffCall(double maturityPrice,
                         double strike)
                  throws EuropeanEvaluationDemoException
This method calculates the payoff at maturity from a European call option.

Parameters:
maturityPrice - the price of the underlying asset at the mature on the option contract
strike - the strike price of the call option
EuropeanEvaluationDemoException

payOffPut

public double payOffPut(double maturityPrice,
                        double strike)
                 throws EuropeanEvaluationDemoException
This method calculates the payoff at maturity from a European put option.

Parameters:
maturityPrice - the price of the underlying asset price at the maturity of the option contract
strike - the strike price of the put option
EuropeanEvaluationDemoException

call

public double call(double price,
                   double strike,
                   double riskFreeRate,
                   double volatility,
                   Date evaluationDate,
                   Date maturityDate,
                   BusinessCalendar businessCalendar)
            throws EuropeanEvaluationDemoException
Calculates the present value of a European call option.

Parameters:
price - the present price of the underlying asset on which the call option can be exercised
strike - the strike price of the call option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the price of the underlying asset
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

call

public double call(double price,
                   double strike,
                   double riskFreeRate,
                   double volatility,
                   double timeToMaturity)
            throws EuropeanEvaluationDemoException
Calculates the present value of a European call option.

Parameters:
price - the present price of the underlying asset on which the call option can be exercised
strike - the strike price of the call option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the price of the underlying asset
timeToMaturity - the time (in years) until the option matures
EuropeanEvaluationDemoException

put

public double put(double stockPrice,
                  double strike,
                  double riskFreeRate,
                  double volatility,
                  Date evaluationDate,
                  Date maturityDate,
                  BusinessCalendar businessCalendar)
           throws EuropeanEvaluationDemoException
Calculates the present value of a European put option on an investment asset which does not pay any dividends, coupons or interest.

Parameters:
stockPrice - the present price of the stock price
strike - the strike price of the put option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the underlying asset price
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

put

public double put(double stockPrice,
                  double strike,
                  double riskFreeRate,
                  double volatility,
                  double timeToMaturity)
           throws EuropeanEvaluationDemoException
Calculates the present value of a European put option on an investment asset which does not pay any dividends, coupons or interest.

Parameters:
stockPrice - the present price of the stock price
strike - the strike price of the put option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the underlying asset price
timeToMaturity - the time (in years) until the option contract matures
EuropeanEvaluationDemoException

callWithDividends

public double callWithDividends(double stockPrice,
                                double strike,
                                double riskFreeRate,
                                double volatility,
                                Date evaluationDate,
                                Date maturityDate,
                                double[] dividend,
                                double[] dividendPaymentDates,
                                BusinessCalendar businessCalendar)
                         throws EuropeanEvaluationDemoException
Calculates the present value of a European call option on an equity investment which pays dividends during the options life. This method extends the Black - Scholes model by treating the dividends as a risk free component of the total return.

Parameters:
stockPrice - the present market price of the stock
strike - the strike of the call option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the stock
dividendPaymentDates - an array of months to when each of the corresponding dividend payments will be paid
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

callWithDividends

public double callWithDividends(double stockPrice,
                                double strike,
                                double riskFreeRate,
                                double volatility,
                                double timeToMaturity,
                                double[] dividend,
                                double[] dividendPaymentDates)
                         throws EuropeanEvaluationDemoException
Calculates the present value of a European call option on an equity investment which pays dividends during the options life. This method extends the Black - Scholes model by treating the dividends as a risk free component of the total return.

Parameters:
stockPrice - the present market price of the stock
strike - the strike of the call option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the stock
timeToMaturity - the time to the maturity of the option (in years)
dividendPaymentDates - an array of months to when each of the corresponding dividend payments will be paid
EuropeanEvaluationDemoException

putWithDividends

public double putWithDividends(double stockPrice,
                               double strike,
                               double riskFreeRate,
                               double volatility,
                               Date evaluationDate,
                               Date maturityDate,
                               double[] dividends,
                               double[] dividendPaymentDates,
                               BusinessCalendar businessCalendar)
                        throws EuropeanEvaluationDemoException
Calculates the present value of a European put option on an equity investment which pays dividends during the options life. This method extends the Black - Scholes model by treating the dividends as a risk free component of the total return.

Parameters:
stockPrice - the present stock price
strike - the strike of the call option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the stock price
dividends - an array of dividend payments during the option period
dividendPaymentDates - an array of months to when each of the corresponding dividend payments will be paid
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

putWithDividends

public double putWithDividends(double stockPrice,
                               double strike,
                               double riskFreeRate,
                               double volatility,
                               double timeToMaturity,
                               double[] dividends,
                               double[] dividendPaymentDates)
                        throws EuropeanEvaluationDemoException
Calculates the present value of a European put option on an equity investment which pays dividends during the options life. This method extends the Black - Scholes model by treating the dividends as a risk free component of the total return.

Parameters:
stockPrice - the present stock price
strike - the strike of the call option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the stock price
timeToMaturity - the time (in years) to the maturity of the option
dividends - an array of dividend payments during the option period
dividendPaymentDates - an array of months to when each of the corresponding dividend payments will be paid
EuropeanEvaluationDemoException

callWithYield

public double callWithYield(double yield,
                            double stockPrice,
                            double strike,
                            double riskFreeRate,
                            double volatility,
                            Date evaluationDate,
                            Date maturityDate,
                            BusinessCalendar businessCalendar)
                     throws EuropeanEvaluationDemoException
Calculates the value of a European call option where the underlying asset pays a continuous dividend.

Parameters:
yield - this is the continuous dividend yield paid by the underlying asset
stockPrice - the stock priceo
strike - the strike price of the call option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the stock or asset price
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

callWithYield

public double callWithYield(double yield,
                            double stockPrice,
                            double strike,
                            double riskFreeRate,
                            double volatility,
                            double timeToMaturity)
                     throws EuropeanEvaluationDemoException
Calculates the value of a European call option where the underlying asset pays a continuous dividend.

Parameters:
yield - this is the continuous dividend yield paid by the underlying asset
stockPrice - the stock priceo
strike - the strike price of the call option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the stock or asset price
timeToMaturity - the time (in years) to the maturity of the option
EuropeanEvaluationDemoException

putWithYield

public double putWithYield(double yield,
                           double stockPrice,
                           double strike,
                           double riskFreeRate,
                           double volatility,
                           Date evaluationDate,
                           Date maturityDate,
                           BusinessCalendar businessCalendar)
                    throws EuropeanEvaluationDemoException
Evaluates the present value of a European put option where the underlying asset pays a continuous dividend.

Parameters:
yield - the continuous dividend yield paid by the underlying asset
stockPrice - the stock price
strike - the strike price of the put option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the stock or asset price
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

putWithYield

public double putWithYield(double yield,
                           double stockPrice,
                           double strike,
                           double riskFreeRate,
                           double volatility,
                           double timeToMaturity)
                    throws EuropeanEvaluationDemoException
Evaluates the present value of a European put option where the underlying asset pays a continuous dividend.

Parameters:
yield - the continuous dividend yield paid by the underlying asset
stockPrice - the stock price
strike - the strike price of the put option
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the stock or asset price
timeToMaturity - the time (in years) until the option matures
EuropeanEvaluationDemoException

callOnIndex

public double callOnIndex(double yield,
                          double indexValue,
                          double strike,
                          double riskFreeRate,
                          double volatility,
                          Date evaluationDate,
                          Date maturityDate,
                          BusinessCalendar businessCalendar)
                   throws EuropeanEvaluationDemoException
Evaluates the value of a European call option on an index.

Parameters:
yield - the average yield of the contingents of the index
indexValue - the value of the index
strike - index value at which the option is exercised
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the index
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

callOnIndex

public double callOnIndex(double yield,
                          double indexValue,
                          double strike,
                          double riskFreeRate,
                          double volatility,
                          double timeToMaturity)
                   throws EuropeanEvaluationDemoException
Evaluates the value of a European call option on an index.

Parameters:
yield - the average yield of the contingents of the index
indexValue - the value of the index
strike - index value at which the option is exercised
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the index
timeToMaturity - the time (in years) until the option matures
EuropeanEvaluationDemoException

putOnIndex

public double putOnIndex(double yield,
                         double indexValue,
                         double strike,
                         double riskFreeRate,
                         double volatility,
                         Date evaluationDate,
                         Date maturityDate,
                         BusinessCalendar businessCalendar)
                  throws EuropeanEvaluationDemoException
Evaluates the value of a European put option on an index.

Parameters:
yield - the average yield of the contingents of the index
indexValue - the value of the index
strike - index value at which the option is exercised
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the index
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

putOnIndex

public double putOnIndex(double yield,
                         double indexValue,
                         double strike,
                         double riskFreeRate,
                         double volatility,
                         double timeToMaturity)
                  throws EuropeanEvaluationDemoException
Evaluates the value of a European put option on an index.

Parameters:
yield - the average yield of the contingents of the index
indexValue - the value of the index
strike - index value at which the option is exercised
riskFreeRate - the continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the index
timeToMaturity - the time (in years) until the option contract matures
EuropeanEvaluationDemoException

callOnCurrency

public double callOnCurrency(double foreignRate,
                             double exchangeRate,
                             double strike,
                             double riskFreeRate,
                             double volatility,
                             Date evaluationDate,
                             Date maturityDate,
                             BusinessCalendar businessCalendar)
                      throws EuropeanEvaluationDemoException
Evaluates the value of a European call option on a currency.

Parameters:
foreignRate - the continuously compounded risk free interest rate in the foreign currency
exchangeRate - the present exchange rate
strike - the exchange rate at which the option can be exercised
riskFreeRate - continuously compounded risk free interest rate in the base currency expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the exchange rate
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

callOnCurrency

public double callOnCurrency(double foreignRate,
                             double exchangeRate,
                             double strike,
                             double riskFreeRate,
                             double volatility,
                             double timeToMaturity)
                      throws EuropeanEvaluationDemoException
Evaluates the value of a European call option on a currency.

Parameters:
foreignRate - the continuously compounded risk free interest rate in the foreign currency
exchangeRate - the present exchange rate
strike - the exchange rate at which the option can be exercised
riskFreeRate - continuously compounded risk free interest rate in the base currency expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the exchange rate
timeToMaturity - time to the maturity of the option (in years)
EuropeanEvaluationDemoException

putOnCurrency

public double putOnCurrency(double foreignRate,
                            double exchangeRate,
                            double strike,
                            double riskFreeRate,
                            double volatility,
                            Date evaluationDate,
                            Date maturityDate,
                            BusinessCalendar businessCalendar)
                     throws EuropeanEvaluationDemoException
Evaluates the value of a European put options on a currency.

Parameters:
foreignRate - the continuously compounded risk free interest rate in the foreign currency
exchangeRate - the present exchange rate
strike - the exchange rate at which the option can be exercised
riskFreeRate - the risk free interest rate in the base currency expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the exchange rate
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

putOnCurrency

public double putOnCurrency(double foreignRate,
                            double exchangeRate,
                            double strike,
                            double riskFreeRate,
                            double volatility,
                            double timeToMaturity)
                     throws EuropeanEvaluationDemoException
Evaluates the value of a European put options on a currency.

Parameters:
foreignRate - the continuously compounded risk free interest rate in the foreign currency
exchangeRate - the present exchange rate
strike - the exchange rate at which the option can be exercised
riskFreeRate - the risk free interest rate in the base currency expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the exchange rate
timeToMaturity - the time (in years) until the option contract matures
EuropeanEvaluationDemoException

callOnFutures

public double callOnFutures(double futuresPrice,
                            double strike,
                            double riskFreeRate,
                            double volatility,
                            Date evaluationDate,
                            Date maturityDate,
                            BusinessCalendar businessCalendar)
                     throws EuropeanEvaluationDemoException
Evaluates the present value of a European call option on a (stock) futures contract.

Parameters:
futuresPrice - the present price the underlying futures price
strike - the strike of the options contract. The strike is the price at which the underlying futures contract can be purchased at when the call option is exercised.
riskFreeRate - continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the underlying futures contract
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

callOnFutures

public double callOnFutures(double futuresPrice,
                            double strike,
                            double riskFreeRate,
                            double volatility,
                            double timeToMaturity)
                     throws EuropeanEvaluationDemoException
Evaluates the present value of a European call option on a (stock) futures contract.

Parameters:
futuresPrice - the present price the underlying futures price
strike - the strike of the options contract. The strike is the price at which the underlying futures contract can be purchased at when the call option is exercised.
riskFreeRate - continuously compounded risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the underlying futures contract
timeToMaturity - the time (in years) until the option contract expires
EuropeanEvaluationDemoException

putOnFutures

public double putOnFutures(double futuresPrice,
                           double strike,
                           double riskFreeRate,
                           double volatility,
                           Date evaluationDate,
                           Date maturityDate,
                           BusinessCalendar businessCalendar)
                    throws EuropeanEvaluationDemoException
Evaluates the present value of a European put option on a (stock) futures contract.

Parameters:
futuresPrice - the present price of the underlying futures contract
strike - the strike of the option contract. The strike is the price at which the underlying futures contracts can be sold at when the put option is exercised.
riskFreeRate - the risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the underlying futures contract
evaluationDate - the evaluation date of the option
maturityDate - the date when the option contract matures
businessCalendar - The instance of a BusinessCalendar interface implementation. Specify null to select the London business calendar.
EuropeanEvaluationDemoException

putOnFutures

public double putOnFutures(double futuresPrice,
                           double strike,
                           double riskFreeRate,
                           double volatility,
                           double timeToMaturity)
                    throws EuropeanEvaluationDemoException
Evaluates the present value of a European put option on a (stock) futures contract.

Parameters:
futuresPrice - the present price of the underlying futures contract
strike - the strike of the option contract. The strike is the price at which the underlying futures contracts can be sold at when the put option is exercised.
riskFreeRate - the risk free interest rate expressed in decimal format (i.e. 1 percent = 0.01)
volatility - the volatility of the underlying futures contract
timeToMaturity - the time (in years) until the option contract matures
EuropeanEvaluationDemoException

totalValue

public double totalValue(double delta,
                         double theta,
                         double gamma,
                         double assetPrice,
                         double riskFreeRate,
                         double volatility)
                  throws EuropeanEvaluationDemoException
Here we derive an estimate of the total value of a portfolio of derivatives whch depend on some underlying asset.

Example: This method could be applied to a portfolio consisting of derivative contracts on Gold (i.e. AU). In this case, if we know the delta, theta and gamma of the gold portfolio, the market price and volatility of gold and the risk free interest rate of the reference currency. Then we are able to estimate (to the second order) the value of the entire portfolio with respect to the reference currency.

Parameters:
delta - the delta of the portfolio
theta - the theta of the portfolio
gamma - the gamma of the portfolio
assetPrice - the underlying asset price
volatility - the volatility of the underlying asset price
riskFreeRate - the continuously compounded risk free interest rate in the reference currency expressed in decimal format (i.e. 1 percent = 0.01)
EuropeanEvaluationDemoException

WebCab Options and Futures Demo
v2.5
(J2SE Edition)