62
60
<!--Doxygen-generated content-->
64
<!-- Generated by Doxygen 1.5.2 -->
62
<!-- Generated by Doxygen 1.5.4 -->
66
<b>QuantLib</b>::<a class="el" href="class_quant_lib_1_1_gap_payoff.html">GapPayoff</a></div>
64
<a class="el" href="namespace_quant_lib.html">QuantLib</a>::<a class="el" href="class_quant_lib_1_1_gap_payoff.html">GapPayoff</a></div>
67
65
<h1>GapPayoff Class Reference</h1><!-- doxytag: class="QuantLib::GapPayoff" --><!-- doxytag: inherits="QuantLib::StrikedTypePayoff" --><code>#include <ql/instruments/payoffs.hpp></code>
69
Inheritance diagram for GapPayoff:<p><center><img src="class_quant_lib_1_1_gap_payoff__inherit__graph.png" border="0" usemap="#_gap_payoff__inherit__map" alt="Inheritance graph"></center>
67
<div class="dynheader">
68
Inheritance diagram for GapPayoff:</div>
69
<div class="dynsection">
70
<p><center><img src="class_quant_lib_1_1_gap_payoff__inherit__graph.png" border="0" usemap="#_gap_payoff__inherit__map" alt="Inheritance graph"></center>
70
71
<map name="_gap_payoff__inherit__map">
71
<area shape="rect" href="class_quant_lib_1_1_striked_type_payoff.html" title="Intermediate class for payoffs based on a fixed strike." alt="" coords="5,156,147,180"><area shape="rect" href="class_quant_lib_1_1_type_payoff.html" title="Intermediate class for put/call payoffs." alt="" coords="28,81,124,105"><area shape="rect" href="class_quant_lib_1_1_payoff.html" title="Abstract base class for option payoffs." alt="" coords="44,7,108,31"></map>
72
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="class_quant_lib_1_1_gap_payoff-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
72
<area shape="rect" href="class_quant_lib_1_1_striked_type_payoff.html" title="Intermediate class for payoffs based on a fixed strike." alt="" coords="5,7,144,33"></map>
73
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
76
<a href="class_quant_lib_1_1_gap_payoff-members.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
75
This payoff is equivalent to being a) long a <a class="el" href="class_quant_lib_1_1_plain_vanilla_payoff.html" title="Plain-vanilla payoff.">PlainVanillaPayoff</a> at the first strike (same Call/Put type) and b) short a <a class="el" href="class_quant_lib_1_1_cash_or_nothing_payoff.html" title="Binary cash-or-nothing payoff.">CashOrNothingPayoff</a> at the first strike (same Call/Put type) with cash payoff equal to the difference between the second and the first strike. <dl compact><dt><b><a class="el" href="caveats.html#_caveats000037">Warning:</a></b></dt><dd>this payoff can be negative depending on the strikes </dd></dl>
79
This payoff is equivalent to being a) long a <a class="el" href="class_quant_lib_1_1_plain_vanilla_payoff.html" title="Plain-vanilla payoff.">PlainVanillaPayoff</a> at the first strike (same Call/Put type) and b) short a <a class="el" href="class_quant_lib_1_1_cash_or_nothing_payoff.html" title="Binary cash-or-nothing payoff.">CashOrNothingPayoff</a> at the first strike (same Call/Put type) with cash payoff equal to the difference between the second and the first strike. <dl compact><dt><b><a class="el" href="caveats.html#_caveats000045">Warning:</a></b></dt><dd>this payoff can be negative depending on the strikes </dd></dl>
78
80
<table border="0" cellpadding="0" cellspacing="0">
80
82
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
81
83
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="61e617f8776a667df0f92aa7913641ec"></a><!-- doxytag: member="QuantLib::GapPayoff::GapPayoff" ref="61e617f8776a667df0f92aa7913641ec" args="(Option::Type type, Real strike, Real secondStrike)" -->
82
</td><td class="memItemRight" valign="bottom"><b>GapPayoff</b> (Option::Type type, Real strike, Real secondStrike)</td></tr>
84
</td><td class="memItemRight" valign="bottom"><b>GapPayoff</b> (Option::Type type, <a class="el" href="group__types.html#g4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> strike, <a class="el" href="group__types.html#g4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> secondStrike)</td></tr>
84
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8f786b1e34b0db2d7ea74b52f5f36029"></a><!-- doxytag: member="QuantLib::GapPayoff::secondStrike" ref="8f786b1e34b0db2d7ea74b52f5f36029" args="() const" -->
85
Real </td><td class="memItemRight" valign="bottom"><b>secondStrike</b> () const</td></tr>
86
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="64eedb2ee7b46110f6c2b5e6d3ed025e"></a><!-- doxytag: member="QuantLib::GapPayoff::secondStrike" ref="64eedb2ee7b46110f6c2b5e6d3ed025e" args="() const " -->
87
<a class="el" href="group__types.html#g4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><b>secondStrike</b> () const </td></tr>
87
89
<tr><td colspan="2"><div class="groupHeader">Payoff interface</div></td></tr>
88
<tr><td class="memItemLeft" nowrap align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_gap_payoff.html#1d89c28bd42ba9a52da008bb69367171">name</a> () const</td></tr>
90
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="07ffe70037e0a16554c868bcdd8f83b5"></a><!-- doxytag: member="QuantLib::GapPayoff::description" ref="07ffe70037e0a16554c868bcdd8f83b5" args="() const" -->
91
std::string </td><td class="memItemRight" valign="bottom"><b>description</b> () const</td></tr>
93
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="87c0e550bbefd59755c7e75e631bcc30"></a><!-- doxytag: member="QuantLib::GapPayoff::operator()" ref="87c0e550bbefd59755c7e75e631bcc30" args="(Real price) const" -->
94
Real </td><td class="memItemRight" valign="bottom"><b>operator()</b> (Real price) const</td></tr>
90
<tr><td class="memItemLeft" nowrap align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_gap_payoff.html#37627d5d5bba7f4a8690c71c2ab3cb07">name</a> () const </td></tr>
92
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7b5000e45c1386c4e56ef650f6b0ef5b"></a><!-- doxytag: member="QuantLib::GapPayoff::description" ref="7b5000e45c1386c4e56ef650f6b0ef5b" args="() const " -->
93
std::string </td><td class="memItemRight" valign="bottom"><b>description</b> () const </td></tr>
95
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8e9eb08690dcc10907f3eceb76e90bbe"></a><!-- doxytag: member="QuantLib::GapPayoff::operator()" ref="8e9eb08690dcc10907f3eceb76e90bbe" args="(Real price) const " -->
96
<a class="el" href="group__types.html#g4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><b>operator()</b> (<a class="el" href="group__types.html#g4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> price) const </td></tr>
96
98
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="896099363a2a409d2485c3ce9e4e4265"></a><!-- doxytag: member="QuantLib::GapPayoff::accept" ref="896099363a2a409d2485c3ce9e4e4265" args="(AcyclicVisitor &)" -->
97
99
virtual void </td><td class="memItemRight" valign="bottom"><b>accept</b> (<a class="el" href="class_quant_lib_1_1_acyclic_visitor.html">AcyclicVisitor</a> &)</td></tr>
99
101
<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
100
102
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="41d41bf0e3428293d076ce1f4314bf98"></a><!-- doxytag: member="QuantLib::GapPayoff::secondStrike_" ref="41d41bf0e3428293d076ce1f4314bf98" args="" -->
101
Real </td><td class="memItemRight" valign="bottom"><b>secondStrike_</b></td></tr>
103
<a class="el" href="group__types.html#g4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><b>secondStrike_</b></td></tr>
104
106
<hr><h2>Member Function Documentation</h2>
105
<a class="anchor" name="1d89c28bd42ba9a52da008bb69367171"></a><!-- doxytag: member="QuantLib::GapPayoff::name" ref="1d89c28bd42ba9a52da008bb69367171" args="() const" -->
107
<a class="anchor" name="37627d5d5bba7f4a8690c71c2ab3cb07"></a><!-- doxytag: member="QuantLib::GapPayoff::name" ref="37627d5d5bba7f4a8690c71c2ab3cb07" args="() const " -->
106
108
<div class="memitem">
107
109
<div class="memproto">
108
110
<table class="memname">