27#include <ql/instruments/bond.hpp>
28#include <ql/instruments/callabilityschedule.hpp>
29#include <ql/instruments/dividendschedule.hpp>
30#include <ql/instruments/oneassetoption.hpp>
31#include <ql/quote.hpp>
32#include <ql/time/daycounter.hpp>
33#include <ql/time/schedule.hpp>
60 ConvertibleBond(Natural settlementDays,
const Calendar& calendar,
const Date& issueDate,
const Leg& coupons,
76 QuantLib::ext::shared_ptr<option>
option_;
117 :
public GenericEngine<ConvertibleBond::option::arguments, ConvertibleBond::option::results> {};
std::vector< Date > dividendDates
std::vector< Date > callabilityDates
DividendSchedule dividends
std::vector< Date > cashflowDates
std::vector< Real > cashflowAmounts
std::vector< Real > notionals
std::vector< Real > callabilityTriggers
std::vector< Callability::Type > callabilityTypes
std::vector< Real > callabilityPrices
void validate() const override
std::vector< Date > notionalDates
const ConvertibleBond * bond_
void setupArguments(PricingEngine::arguments *) const override
bool isExpired() const override
void performCalculations() const override
QuantLib::ext::shared_ptr< Exercise > exercise_
Real conversionRatio() const
const CallabilitySchedule & callability() const
QuantLib::ext::shared_ptr< option > option_
const DividendSchedule & dividends() const
QuantLib::ext::shared_ptr< Exercise > exercise() const
CallabilitySchedule callability_
DividendSchedule dividends_
callability leaving to the holder the possibility to convert
SoftCallability(const Bond::Price &price, const Date &date, Real trigger)