|
typedef McSimulation< SingleVariate, RNG, S >::path_generator_type | path_generator_type |
|
typedef McSimulation< SingleVariate, RNG, S >::path_pricer_type | path_pricer_type |
|
typedef McSimulation< SingleVariate, RNG, S >::stats_type | stats_type |
|
typedef std::set< boost::shared_ptr< Observable > > | set_type |
|
typedef set_type::iterator | iterator |
|
typedef MonteCarloModel< SingleVariate, RNG, S >::path_generator_type | path_generator_type |
|
typedef MonteCarloModel< SingleVariate, RNG, S >::path_pricer_type | path_pricer_type |
|
typedef MonteCarloModel< SingleVariate, RNG, S >::stats_type | stats_type |
|
typedef MonteCarloModel< SingleVariate, RNG, S >::result_type | result_type |
|
|
| MCVarianceSwapEngine (const boost::shared_ptr< GeneralizedBlackScholesProcess > &process, Size timeSteps, Size timeStepsPerYear, bool brownianBridge, bool antitheticVariate, Size requiredSamples, Real requiredTolerance, Size maxSamples, BigNatural seed) |
|
void | calculate () const |
|
PricingEngine::arguments * | getArguments () const |
|
const PricingEngine::results * | getResults () const |
|
void | reset () |
|
void | update () |
|
| Observable (const Observable &) |
|
Observable & | operator= (const Observable &) |
|
void | notifyObservers () |
|
| Observer (const Observer &) |
|
Observer & | operator= (const Observer &) |
|
std::pair< iterator, bool > | registerWith (const boost::shared_ptr< Observable > &) |
|
void | registerWithObservables (const boost::shared_ptr< Observer > &) |
|
Size | unregisterWith (const boost::shared_ptr< Observable > &) |
|
void | unregisterWithAll () |
|
result_type | value (Real tolerance, Size maxSamples=QL_MAX_INTEGER, Size minSamples=1023) const |
| add samples until the required absolute tolerance is reached
|
|
result_type | valueWithSamples (Size samples) const |
| simulate a fixed number of samples
|
|
result_type | errorEstimate () const |
| error estimated using the samples simulated so far
|
|
const stats_type & | sampleAccumulator (void) const |
| access to the sample accumulator for richer statistics
|
|
void | calculate (Real requiredTolerance, Size requiredSamples, Size maxSamples) const |
| basic calculate method provided to inherited pricing engines
|
|
|
boost::shared_ptr< path_pricer_type > | pathPricer () const |
|
TimeGrid | timeGrid () const |
|
boost::shared_ptr< path_generator_type > | pathGenerator () const |
|
| McSimulation (bool antitheticVariate, bool controlVariate) |
|
virtual boost::shared_ptr< path_pricer_type > | controlPathPricer () const |
|
virtual boost::shared_ptr< path_generator_type > | controlPathGenerator () const |
|
virtual boost::shared_ptr< PricingEngine > | controlPricingEngine () const |
|
virtual result_type | controlVariateValue () const |
|
template<class RNG = PseudoRandom, class S = Statistics>
class QuantLib::MCVarianceSwapEngine< RNG, S >
Variance-swap pricing engine using Monte Carlo simulation,.
as described in Demeterfi, Derman, Kamal & Zou, "A Guide to Volatility and Variance Swaps", 1999
- Tests:
- returned fair variances checked for consistency with implied volatility curve.