Logo
Fully annotated reference manual - version 1.8.12
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
PairwiseVarianceSwap::arguments Class Reference

Arguments More...

#include <qle/instruments/pairwisevarianceswap.hpp>

+ Inheritance diagram for PairwiseVarianceSwap::arguments:
+ Collaboration diagram for PairwiseVarianceSwap::arguments:

Public Member Functions

 arguments ()
 
void validate () const override
 

Public Attributes

Position::Type position
 
Real strike1
 
Real strike2
 
Real basketStrike
 
Real notional1
 
Real notional2
 
Real basketNotional
 
Real cap
 
Real floor
 
Real payoffLimit
 
int accrualLag
 
Schedule valuationSchedule
 
Schedule laggedValuationSchedule
 
Date settlementDate
 

Detailed Description

Arguments

Definition at line 102 of file pairwisevarianceswap.hpp.

Constructor & Destructor Documentation

◆ arguments()

arguments ( )

Member Function Documentation

◆ validate()

void validate ( ) const
override

Definition at line 80 of file pairwisevarianceswap.cpp.

80 {
81 QL_REQUIRE(strike1 != Null<Real>(), "no strike given for first underlying");
82 QL_REQUIRE(strike1 > 0.0, "negative or null strike given for first underlying");
83 QL_REQUIRE(strike2 != Null<Real>(), "no strike given for second underlying");
84 QL_REQUIRE(strike2 > 0.0, "negative or null strike given for second underlying");
85 QL_REQUIRE(basketStrike != Null<Real>(), "no strike given for basket");
86 QL_REQUIRE(basketStrike > 0.0, "negative or null strike given for basket");
87
88 QL_REQUIRE(notional1 != Null<Real>(), "no notional given for first underlying");
89 QL_REQUIRE(notional1 > 0.0, "negative or null notional given for first underlying");
90 QL_REQUIRE(notional2 != Null<Real>(), "no notional given for second underlying");
91 QL_REQUIRE(notional2 > 0.0, "negative or null notional given for second underlying");
92 QL_REQUIRE(basketNotional != Null<Real>(), "no notional given for basket");
93 QL_REQUIRE(basketNotional > 0.0, "negative or null notional given for basket");
94
95 QL_REQUIRE(cap != Null<Real>(), "no cap given");
96 QL_REQUIRE(cap >= 0.0, "cap must be non-negative");
97 QL_REQUIRE(floor != Null<Real>(), "no floor given");
98 QL_REQUIRE(floor >= 0.0, "floor must be non-negative");
99 QL_REQUIRE(payoffLimit != Null<Real>(), "no payoff limit given");
100 QL_REQUIRE(payoffLimit > 0.0, "payoff limit must be non-negative");
101 QL_REQUIRE(accrualLag != Null<int>(), "no accrual lag given");
102
103 QL_REQUIRE(!valuationSchedule.empty(), "no valuation schedule given");
104 QL_REQUIRE(!laggedValuationSchedule.empty(), "no lagged valuation schedule given");
105 QL_REQUIRE(valuationSchedule.dates().size() == laggedValuationSchedule.dates().size(),
106 "valuation schedule and lagged valuation schedule must have the same size");
107 QL_REQUIRE(settlementDate != Date(), "null settlement date given");
108}

Member Data Documentation

◆ position

Position::Type position

Definition at line 109 of file pairwisevarianceswap.hpp.

◆ strike1

Real strike1

Definition at line 110 of file pairwisevarianceswap.hpp.

◆ strike2

Real strike2

Definition at line 111 of file pairwisevarianceswap.hpp.

◆ basketStrike

Real basketStrike

Definition at line 112 of file pairwisevarianceswap.hpp.

◆ notional1

Real notional1

Definition at line 113 of file pairwisevarianceswap.hpp.

◆ notional2

Real notional2

Definition at line 114 of file pairwisevarianceswap.hpp.

◆ basketNotional

Real basketNotional

Definition at line 115 of file pairwisevarianceswap.hpp.

◆ cap

Real cap

Definition at line 116 of file pairwisevarianceswap.hpp.

◆ floor

Real floor

Definition at line 117 of file pairwisevarianceswap.hpp.

◆ payoffLimit

Real payoffLimit

Definition at line 118 of file pairwisevarianceswap.hpp.

◆ accrualLag

int accrualLag

Definition at line 119 of file pairwisevarianceswap.hpp.

◆ valuationSchedule

Schedule valuationSchedule

Definition at line 120 of file pairwisevarianceswap.hpp.

◆ laggedValuationSchedule

Schedule laggedValuationSchedule

Definition at line 121 of file pairwisevarianceswap.hpp.

◆ settlementDate

Date settlementDate

Definition at line 122 of file pairwisevarianceswap.hpp.