Class HimalayaOption
- Namespace
- NanoQL.Experimental
- Assembly
- NanoQL.dll
A Himalaya option on a basket: at each fixing date the best performer since inception among the assets left joins the average and leaves the basket; at the last fixing the option pays the average's excess over the strike.
[Experimental("NQL0001")]
public sealed class HimalayaOption : MultiAssetOption
- Inheritance
-
HimalayaOption
- Inherited Members
Remarks
Immutable; its payoff is a plain-vanilla call at the strike and its exercise European at the last fixing date, as QuantLib builds them. Its engines return a MultiAssetOptionResults, QuantLib's results class adding nothing to the multi-asset option's. QuantLib doesn't manage seasoned options: a fixing before the evaluation date is refused by the engine. The paths start at the evaluation date, the performances' inception, so a fixing on it is that inception rather than a selection (every asset's performance is 1 there), as QuantLib's grid reads it and its own case lists one.
Constructors
HimalayaOption(IEnumerable<Date>, double)
Initializes a new instance of the HimalayaOption class.
public HimalayaOption(IEnumerable<Date> fixingDates, double strike)
Parameters
fixingDatesIEnumerable<Date>The fixing dates, the last the exercise date.
strikedoubleThe strike.
Exceptions
- ArgumentNullException
fixingDatesis null.- NanoQLException
No fixing date is given ("no fixing dates given"), where QuantLib's constructor reads the last of none.
Properties
FixingDates
Gets the fixing dates.
public ImmutableArray<Date> FixingDates { get; }