Class AnalyticPerformanceEngine
- Namespace
- NanoQL.PricingEngines
- Assembly
- NanoQL.dll
The analytic engine for a European performance option: a cliquet whose periods pay their returns, each by Black's formula on the period's forward variance, discounted to its start.
public static class AnalyticPerformanceEngine
- Inheritance
-
AnalyticPerformanceEngine
- Inherited Members
Remarks
Stateless. Each period's theta is its value times the risk-free rate to its start, where QuantLib's reads the rate
over the period itself (Divergences/CliquetThetaTests.cs): QuantLib's forward-performance engine's theta,
period by period. Each period's vega is under a parallel shift of the input volatilities, and every structure is
read by date on the process's clock, as AnalyticCliquetEngine reads them.
Methods
Calculate(CliquetOption, EvaluationContext, GeneralizedBlackScholesProcess)
Prices a European performance option: QuantLib's calculate.
public static OneAssetOptionResults Calculate(CliquetOption option, EvaluationContext context, GeneralizedBlackScholesProcess process)
Parameters
optionCliquetOptionThe option.
contextEvaluationContextThe evaluation context.
processGeneralizedBlackScholesProcessThe underlying's process.
Returns
- OneAssetOptionResults
The option's results: the value, delta, gamma, theta, rho, dividend rho and vega.
Exceptions
- ArgumentNullException
An argument is null.
- NanoQLException
The option's terms are invalid, it isn't European, the spot isn't positive, or a reset is before the clock's date.