Table of Contents

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

option CliquetOption

The option.

context EvaluationContext

The evaluation context.

process GeneralizedBlackScholesProcess

The 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.