Class PagodaOption
- Namespace
- NanoQL.Experimental
- Assembly
- NanoQL.dll
A Pagoda option on a portfolio: at expiry it pays a fraction of the portfolio's performance over the fixing periods, capped at a roof and floored at 0.
[Experimental("NQL0001")]
public sealed class PagodaOption : MultiAssetOption
- Inheritance
-
PagodaOption
- Inherited Members
Remarks
Immutable; its payoff is a NullPayoff and its exercise European at the last fixing date, as QuantLib builds them. Each period's performance is the sum of the assets' returns over the period, each weighted by the asset's value at inception, averaged over the assets, as QuantLib's path pricer reads it. QuantLib doesn't manage seasoned options: a fixing before the evaluation date is refused by the engine.
Constructors
PagodaOption(IEnumerable<Date>, double, double)
Initializes a new instance of the PagodaOption class.
public PagodaOption(IEnumerable<Date> fixingDates, double roof, double fraction)
Parameters
fixingDatesIEnumerable<Date>The fixing dates, the last the exercise date.
roofdoubleThe cap on the performance.
fractiondoubleThe fraction of the capped performance paid.
Exceptions
- ArgumentNullException
fixingDatesis null.- NanoQLException
No fixing date is given ("no fixingDates given"), where QuantLib's constructor reads the last of none.
Properties
FixingDates
Gets the fixing dates.
public ImmutableArray<Date> FixingDates { get; }
Property Value
Fraction
Gets the fraction of the capped performance paid.
public double Fraction { get; }
Property Value
Roof
Gets the cap on the performance.
public double Roof { get; }