Variance-swap pricing engine using replicating cost,. More...
#include <ql/pricingengines/forward/replicatingvarianceswapengine.hpp>
Public Types | |
typedef std::vector< std::pair< ext::shared_ptr< StrikedTypePayoff >, Real > > | weights_type |
![]() | |
typedef boost::unordered_set< ext::shared_ptr< Observable > > | set_type |
typedef set_type::iterator | iterator |
Public Member Functions | |
ReplicatingVarianceSwapEngine (const ext::shared_ptr< GeneralizedBlackScholesProcess > &process, Real dk=5.0, const std::vector< Real > &callStrikes=std::vector< Real >(), const std::vector< Real > &putStrikes=std::vector< Real >()) | |
void | calculate () const |
![]() | |
PricingEngine::arguments * | getArguments () const |
const PricingEngine::results * | getResults () const |
void | reset () |
void | update () |
![]() | |
virtual arguments * | getArguments () const =0 |
virtual const results * | getResults () const =0 |
![]() | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
void | notifyObservers () |
![]() | |
Observer (const Observer &) | |
Observer & | operator= (const Observer &) |
std::pair< iterator, bool > | registerWith (const ext::shared_ptr< Observable > &) |
void | registerWithObservables (const ext::shared_ptr< Observer > &) |
Size | unregisterWith (const ext::shared_ptr< Observable > &) |
void | unregisterWithAll () |
virtual void | deepUpdate () |
Protected Member Functions | |
void | computeOptionWeights (const std::vector< Real > &, Option::Type, weights_type &optionWeights) const |
Real | computeLogPayoff (Real, Real) const |
Real | computeReplicatingPortfolio (const weights_type &optionWeights) const |
Rate | riskFreeRate () const |
DiscountFactor | riskFreeDiscount () const |
Real | underlying () const |
Time | residualTime () const |
Additional Inherited Members | |
![]() | |
VarianceSwap::arguments | arguments_ |
VarianceSwap::results | results_ |
Variance-swap pricing engine using replicating cost,.
as described in Demeterfi, Derman, Kamal & Zou, "A Guide to Volatility and Variance Swaps", 1999