Options
All
  • Public
  • Public/Protected
  • All
Menu

ConstantLossLatentModel interface for loss models.

While it does not provide distribution type losses (e.g. expected tranche losses) because it lacks an integration algorithm it serves to allow pricing of digital type products like NTDs.

Alternatively fuse with the aboves class.

Hierarchy

Implements

Index

Constructors

constructor

  • Parameters

    • copulaPolicy: any

    Returns ConstantLossModel

Properties

_basket

_basket: RelinkableHandle<Basket> = new RelinkableHandle()

_cachedMktFactor

_cachedMktFactor: Handle<Quote>

_copula

_copula: any

_factorWeights

_factorWeights: Real[][]

_idiosyncFctrs

_idiosyncFctrs: Real[]

_integration

_integration: LMIntegration

_isDisposed

_isDisposed: boolean = false

_nFactors

_nFactors: Size

_nVariables

_nVariables: Size

_observables

_observables: Set<Observable> = new Set()

_observers

_observers: Set<Observer> = new Set()

_recoveries

_recoveries: Real[]

allFactorCumulInverter

allFactorCumulInverter: (probs: Real[]) => Real[]

Type declaration

basket_

basket_: Basket

cllmInit1

cllmInit1: (factorWeights: Real[][], recoveries: Real[], integralType: LatentModelIntegrationType, ini?: any) => ConstantLossLatentmodel

Type declaration

cllmInit2

cllmInit2: (mktCorrel: Handle<Quote>, recoveries: Real[], integralType: LatentModelIntegrationType, nVariables: Size, ini?: any) => ConstantLossLatentmodel

Type declaration

condProbProduct

condProbProduct: (invCumYProb1: Real, invCumYProb2: Real, iName1: Size, iName2: Size, mktFactors: Real[]) => Probability

Type declaration

conditionalDefaultProbability1

conditionalDefaultProbability1: (prob: Probability, iName: Size, mktFactors: Real[]) => Probability

Type declaration

conditionalDefaultProbability2

conditionalDefaultProbability2: (date: Date, iName: Size, mktFactors: Real[]) => Probability

Type declaration

conditionalDefaultProbabilityInvP

conditionalDefaultProbabilityInvP: (invCumYProb: Real, iName: Size, m: Real[]) => Probability

Type declaration

conditionalProbAtLeastNEvents

conditionalProbAtLeastNEvents: (n: Size, date: Date, mktFactors: Real[]) => Real

Type declaration

conditionalRecovery1

conditionalRecovery1: (d: Date, iName: Size, mktFactors: Real[]) => Real

Type declaration

conditionalRecovery2

conditionalRecovery2: (uncondDefP: Probability, iName: Size, mktFactors: Real[]) => Real

Type declaration

conditionalRecovery3

conditionalRecovery3: (latentVarSample: Real, iName: Size, d: Date) => Real

Type declaration

conditionalRecoveryInvP

conditionalRecoveryInvP: (invUncondDefP: Real, iName: Size, mktFactors: Real[]) => Real

Type declaration

copula

copula: () => any

Type declaration

    • (): any
    • Returns any

copulaPolicy

copulaPolicy: any

cumulativeY

cumulativeY: (val: Real, iVariable: Size) => Probability

Type declaration

cumulativeZ

cumulativeZ: (z: Real) => Probability

Type declaration

deepUpdate

deepUpdate: () => void

Type declaration

    • (): void
    • Returns void

density

density: (m: Real[]) => Probability

Type declaration

densityTrancheLoss

densityTrancheLoss: (d: Date, lossFraction: Real) => Real

Type declaration

    • Parameters

      • d: Date
      • lossFraction: Real

      Returns Real

dispose

dispose: () => void

Type declaration

    • (): void
    • Returns void

dlmInit1

dlmInit1: (factorWeights: Real[][], integralType: LatentModelIntegrationType, ini?: any) => DefaultLatentModel

Type declaration

dlmInit2

dlmInit2: (mktCorrel: Handle<Quote>, nVariables: Size, integralType: LatentModelIntegrationType, ini?: any) => DefaultLatentModel

Type declaration

factorWeights

factorWeights: () => Real[][]

Type declaration

idiosyncFctrs

idiosyncFctrs: () => Real[]

Type declaration

init

init: (copulaPolicyImpl: any) => LatentModel

Type declaration

integratedExpectedValue1

integratedExpectedValue1: (f: UnaryFunction<Real[], Real>) => Real

Type declaration

integratedExpectedValue2

integratedExpectedValue2: (f: UnaryFunction<Real[], Real[]>) => Real[]

Type declaration

integration

integration: () => LMIntegration

Type declaration

inverseCumulativeDensity

inverseCumulativeDensity: (p: Probability, iFactor: Size) => Real

Type declaration

inverseCumulativeY

inverseCumulativeY: (p: Probability, iVariable: Size) => Real

Type declaration

inverseCumulativeZ

inverseCumulativeZ: (p: Probability) => Real

Type declaration

isDisposed

isDisposed: boolean

latentVarValue

latentVarValue: (allFactors: Real[], iVar: Size) => Real

Type declaration

latentVariableCorrel

latentVariableCorrel: (iVar1: Size, iVar2: Size) => Real

Type declaration

lmInit1

lmInit1: (factorsWeights: Real[][], ini?: any) => LatentModel

Type declaration

lmInit2

lmInit2: (factorsWeight: Real[], ini?: any) => LatentModel

Type declaration

lmInit3

lmInit3: (correlSqr: Real, nVariables: Size, ini?: any) => LatentModel

Type declaration

lmInit4

lmInit4: (singleFactorCorrel: Handle<Quote>, nVariables: Size, ini?: any) => LatentModel

Type declaration

lossDistribution

lossDistribution: (d: Date) => Map<Real, Probability>

Type declaration

notifyObservers

notifyObservers: () => void

Type declaration

    • (): void
    • Returns void

numFactors

numFactors: () => Size

Type declaration

numTotalFactors

numTotalFactors: () => Size

Type declaration

probOfDefault

probOfDefault: (iName: Size, d: Date) => Probability

Type declaration

probsBeingNthEvent

probsBeingNthEvent: (n: Size, d: Date) => Probability[]

Type declaration

recoveries

recoveries: () => Real[]

Type declaration

registerObserver

registerObserver: (o: Observer) => void

Type declaration

registerWith

registerWith: (h: Observable) => void

Type declaration

registerWithObservables

registerWithObservables: (o: Observer) => void

Type declaration

resetBasket

resetBasket: (basket: Basket) => void

Type declaration

    • Parameters

      Returns void

setBasket

setBasket: (bskt: Basket) => void

Type declaration

size

size: () => Size

Type declaration

splitESFLevel

splitESFLevel: (d: Date, loss: Real) => Real[]

Type declaration

splitVaRLevel

splitVaRLevel: (d: Date, loss: Real) => Real[]

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

clmInit1

clmInit2

defaultCorrelation

  • defaultCorrelation(d: Date, iName: Size, jName: Size): Real

expectedRecovery

expectedShortfall

  • expectedShortfall(d: Date, percentile: Real): Real

expectedTrancheLoss

  • expectedTrancheLoss(d: Date): Real

percentile

  • percentile(d: Date, percentile: Real): Real

probAtLeastNEvents

probOverLoss

resetModel

  • resetModel(): void

update

  • update(): void