MCBarrierEngine Class Template Reference
[Barrier option engines]

#include <ql/pricingengines/barrier/mcbarrierengine.hpp>

Inheritance diagram for MCBarrierEngine:

Inheritance graph
[legend]
List of all members.

Detailed Description

template<class RNG = PseudoRandom, class S = Statistics>
class QuantLib::MCBarrierEngine< RNG, S >

Pricing engine for barrier options using Monte Carlo simulation.

Uses the Brownian-bridge correction for the barrier found in Going to Extremes: Correcting Simulation Bias in Exotic Option Valuation - D.R. Beaglehole, P.H. Dybvig and G. Zhou Financial Analysts Journal; Jan/Feb 1997; 53, 1. pg. 62-68 and Simulating path-dependent options: A new approach - M. El Babsiri and G. Noel Journal of Derivatives; Winter 1998; 6, 2; pg. 65-83

Tests:
the correctness of the returned value is tested by reproducing results available in literature.


Public Types

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

Public Member Functions

 MCBarrierEngine (Size maxTimeStepsPerYear, bool brownianBridge, bool antitheticVariate, bool controlVariate, Size requiredSamples, Real requiredTolerance, Size maxSamples, bool isBiased, BigNatural seed)
void calculate () const

Protected Member Functions

TimeGrid timeGrid () const
boost::shared_ptr< path_generator_type > pathGenerator () const
boost::shared_ptr< path_pricer_type > pathPricer () const

Protected Attributes

Size maxTimeStepsPerYear_
Size requiredSamples_
Size maxSamples_
Real requiredTolerance_
bool isBiased_
bool brownianBridge_
BigNatural seed_