Margrabe option on two assets. More...

#include <ql/experimental/exoticoptions/margrabeoption.hpp>

Inheritance diagram for MargrabeOption:

List of all members.

Classes

class  arguments
 Extra arguments for Margrabe option. More...
class  engine
 Margrabe option engine base class More...
class  results
 Extra results for Margrabe option. More...

Public Member Functions

 MargrabeOption (Integer Q1, Integer Q2, const boost::shared_ptr< Exercise > &)
void setupArguments (PricingEngine::arguments *) const
Real delta1 () const
Real delta2 () const
Real gamma1 () const
Real gamma2 () const
void fetchResults (const PricingEngine::results *) const

Protected Attributes

Integer Q1_
Integer Q2_
Real delta1_
Real delta2_
Real gamma1_
Real gamma2_

Detailed Description

Margrabe option on two assets.

This option gives the holder the right to exchange Q2 stocks of the second asset for Q1 stocks of the first at expiration.


Member Function Documentation

void setupArguments ( PricingEngine::arguments *  ) const [virtual]

When a derived argument structure is defined for an instrument, this method should be overridden to fill it. This is mandatory in case a pricing engine is used.

Reimplemented from MultiAssetOption.

void fetchResults ( const PricingEngine::results *  r) const [virtual]

When a derived result structure is defined for an instrument, this method should be overridden to read from it. This is mandatory in case a pricing engine is used.

Reimplemented from MultiAssetOption.