CalibrationHelper Class Reference

liquid market instrument used during calibration More...

#include <ql/models/calibrationhelper.hpp>

Inheritance diagram for CalibrationHelper:

List of all members.

Public Types

enum  CalibrationErrorType { RelativePriceError, PriceError, ImpliedVolError }

Public Member Functions

 CalibrationHelper (const Handle< Quote > &volatility, const Handle< YieldTermStructure > &termStructure, CalibrationErrorType calibrationErrorType=RelativePriceError)
void update ()
Real marketValue () const
 returns the actual price of the instrument (from volatility)
virtual Real modelValue () const =0
 returns the price of the instrument according to the model
virtual Real calibrationError ()
 returns the error resulting from the model valuation
virtual void addTimesTo (std::list< Time > &times) const =0
Volatility impliedVolatility (Real targetValue, Real accuracy, Size maxEvaluations, Volatility minVol, Volatility maxVol) const
 Black volatility implied by the model.
virtual Real blackPrice (Volatility volatility) const =0
 Black price given a volatility.
void setPricingEngine (const boost::shared_ptr< PricingEngine > &engine)

Protected Attributes

Real marketValue_
Handle< Quotevolatility_
Handle< YieldTermStructuretermStructure_
boost::shared_ptr< PricingEngineengine_

Detailed Description

liquid market instrument used during calibration


Member Function Documentation

void update ( ) [virtual]

This method must be implemented in derived classes. An instance of Observer does not call this method directly: instead, it will be called by the observables the instance registered with when they need to notify any changes.

Implements Observer.