Options
All
  • Public
  • Public/Protected
  • All
Menu

Base class for FFT pricing engines for European vanilla options

The FFT engine calculates the values of all options with the same expiry at the same time. For that reason it is very inefficient to price options individually. When using this engine you should collect all the options you wish to price in a list and call the engine's precalculate method before calling the NPV method of the option.

References: Carr, P. and D. B. Madan (1998), "Option Valuation using the fast Fourier transform," Journal of Computational Finance, 2, 61-73.

Hierarchy

Implements

Index

Constructors

constructor

Properties

_arguments

_arguments: Arguments

_isDisposed

_isDisposed: boolean = false

Protected _lambda

_lambda: Real

_observables

_observables: Set<Observable> = new Set()

_observers

_observers: Set<Observer> = new Set()

Protected _process

Private _resultMap

_resultMap: ResultMap = new Map()

_results

_results: Results

deepUpdate

deepUpdate: () => void

Type declaration

    • (): void
    • Returns void

dispose

dispose: () => void

Type declaration

    • (): void
    • Returns void

isDisposed

isDisposed: boolean

notifyObservers

notifyObservers: () => void

Type declaration

    • (): void
    • Returns void

registerObserver

registerObserver: (o: Observer) => void

Type declaration

registerWith

registerWith: (h: Observable) => void

Type declaration

registerWithObservables

registerWithObservables: (o: Observer) => void

Type declaration

unregisterObserver

unregisterObserver: (o: Observer) => void

Type declaration

unregisterWith

unregisterWith: (h: Observable) => Size

Type declaration

unregisterWithAll

unregisterWithAll: () => void

Type declaration

    • (): void
    • Returns void

Methods

calculate

  • calculate(): void

Protected calculateUncached

  • Parameters

    Returns void

clone

  • Returns FFTEngine

Protected complexFourierTransform

  • Parameters

    Returns Complex

Protected discountFactor

  • discountFactor(d: Date): Real
  • Parameters

    • d: Date

    Returns Real

Protected dividendYield

  • dividendYield(d: Date): Real
  • Parameters

    • d: Date

    Returns Real

getArguments

getResults

precalculate

  • Parameters

    Returns void

Protected precalculateExpiry

  • precalculateExpiry(d: Date): void
  • Parameters

    • d: Date

    Returns void

reset

  • reset(): void

update

  • update(): void
  • Returns void