### A free/open-source library for quantitative finance

Classes | Public Types | Public Member Functions | Protected Attributes | Related Functions
Option Class Reference

base option class More...

`#include <ql/option.hpp>`

Inheritance diagram for Option:
[legend]

List of all members.

## Classes

class | arguments
| basic option arguments More...

## Public Types

enum | Type { Put = -1, Call = 1 }

## Public Member Functions

| Option (const boost::shared_ptr< Payoff > &payoff, const boost::shared_ptr< Exercise > &exercise)
void | setupArguments (PricingEngine::arguments *) const
boost::shared_ptr< Payoff > | payoff ()
boost::shared_ptr< Exercise > | exercise ()

## Protected Attributes

boost::shared_ptr< Payoff > | payoff_
boost::shared_ptr< Exercise > | exercise_

## Related Functions

(Note that these are not member functions.)
std::ostream & | operator<< (std::ostream &, Option::Type)

## Detailed Description

base option class

## 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 Instrument.

Reimplemented in Swaption, DiscreteAveragingAsianOption, VanillaSwingOption, ContinuousFixedLookbackOption, DividendVanillaOption, ForwardVanillaOption, CdsOption, CliquetOption, WriterExtensibleOption, MultiAssetOption, HimalayaOption, PagodaOption, BarrierOption, DividendBarrierOption, ContinuousAveragingAsianOption, CompoundOption, VanillaStorageOption, MargrabeOption, SimpleChooserOption, and ContinuousFloatingLookbackOption.

## Friends And Related Function Documentation

std::ostream & operator<< | ( | std::ostream & | ,
|  | Option::Type |
| ) |  | `[related]`