Logo
Reference manual - version qle_version
Public Member Functions | List of all members
CarrMadanSurface Class Reference

Public Member Functions

 CarrMadanSurface (const std::vector< Real > &times, const std::vector< Real > &moneyness, const Real spot, const std::vector< Real > &forwards, const std::vector< std::vector< Real >> &callPrices)
 
const std::vector< Real > & times () const
 
const std::vector< Real > & moneyness () const
 
Real spot () const
 
const std::vector< Real > & forwards () const
 
const std::vector< std::vector< Real > > & callPrices () const
 
bool arbitrageFree () const
 
const std::vector< CarrMadanMarginalProbability > & timeSlices () const
 
const std::vector< std::vector< bool > > & callSpreadArbitrage () const
 
const std::vector< std::vector< bool > > & butterflyArbitrage () const
 
const std::vector< std::vector< bool > > & calendarArbitrage () const
 

Constructor & Destructor Documentation

◆ CarrMadanSurface()

CarrMadanSurface ( const std::vector< Real > &  times,
const std::vector< Real > &  moneyness,
const Real  spot,
const std::vector< Real > &  forwards,
const std::vector< std::vector< Real >> &  callPrices 
)

The moneyness is defined as K / F, K = strike, F = forward at the relevant time. The times and moneyness should be strictly increasing. The outer vectors for call prices and the calendarAbritrage() result represent times, the inner strikes.