arbitrage
ESSVIArbitrage | unitless by name | Required / declared member No @default declared; consult the signature and description. |
arbitrage.butterflyArbitrageFree
boolean | No butterfly arbitrage — the exact Gatheral `g ≥ 0` density test at every grid maturity. unitless by name | Required / declared member No @default declared; consult the signature and description. |
arbitrage.calendarArbitrageFree
boolean | No calendar-spread arbitrage — `w(k, t)` non-decreasing in `t` at every grid `k` (the definition). unitless by name | Required / declared member No @default declared; consult the signature and description. |
arbitrage.minButterflyG
number | The minimum Gatheral `g(k)` over the grid and maturities (`≥ 0` ⇔ butterfly-free). unitless by name | Required / declared member No @default declared; consult the signature and description. |
arbitrage.minCalendarSlope
number | Minimum `Δw` between adjacent maturities over the grid (`≥ 0` ⇔ calendar-free). unitless by name | Required / declared member No @default declared; consult the signature and description. |
assumptions
{ conventionsVersion: string; initialParameters: 'supplied' | 'ssvi-warm-start'; phi: 'power-law' | 'heston'; skew: 'per-maturity'; weight: 'uniform' | 'vega'; } | unitless by name | Required / declared member No @default declared; consult the signature and description. |
assumptions.conventionsVersion
string | unitless by name | Required / declared member No @default declared; consult the signature and description. |
assumptions.initialParameters
'supplied' | 'ssvi-warm-start' | Whether the search began from a caller-supplied start or the internal global-SSVI warm start. unitless by name | Required / declared member No @default declared; consult the signature and description. |
assumptions.phi
'power-law' | 'heston' | unitless by name | Required / declared member No @default declared; consult the signature and description. |
assumptions.skew
'per-maturity' | unitless by name | Required / declared member No @default declared; consult the signature and description. |
assumptions.weight
'vega' | 'uniform' | unitless by name | Required / declared member No @default declared; consult the signature and description. |
converged
boolean | unitless by name | Required / declared member No @default declared; consult the signature and description. |
diagnostics
Diagnostics | unitless by name | Required / declared member No @default declared; consult the signature and description. |
diagnostics.autoReason
string | When a meta-engine (e.g. `engines.auto()`) selected a delegate, this is a one-sentence,
human-readable explanation of WHY that delegate was chosen (`engine` then names the delegate).
Absent when no auto-selection took place. unitless by name | Optional No @default declared; consult the signature and description. |
diagnostics.converged
boolean | Whether an iterative procedure converged. `false` means the value is not trustworthy. unitless by name | Optional No @default declared; consult the signature and description. |
diagnostics.decomposition
Record<string, number> | Named intermediate quantities the value decomposes into — a par spread's protection leg and
risky annuity, a forward variance's near/far legs. The H-series explain paths disclose their
arithmetic here so a caller can audit the ratio, not just receive it (3B.3). unitless by name | Optional No @default declared; consult the signature and description. |
diagnostics.engine
string | Pricing/solver engine name, e.g. `black-scholes-merton`. unitless by name | Optional No @default declared; consult the signature and description. |
diagnostics.finiteDifferenceBumps
Record<string, number> | Finite-difference engines: the ACTUAL bump sizes used for FD Greeks (spec P2.3) — adaptive
near the vol/time boundaries, so the caller can see exactly what was differenced.
Keys: `spotStep`, `volatilityStep`, `timeStepYears`, `rateStep`, and — extended Greeks only —
`dividendYieldStep`. Each is the actual step differenced, in the unit of the coordinate it
bumps. (This doc named the retired `hS`/`hSig`/`hT`/`hR`/`hQ` keys for one release after the
emit sites had moved to the semantic names, so a caller following it read `undefined`.) unitless by name | Optional No @default declared; consult the signature and description. |
diagnostics.iterations
number | Iteration count for iterative methods. unitless by name | Optional No @default declared; consult the signature and description. |
diagnostics.method
string | Numerical method, e.g. `closed-form`, `brent`, `finite-difference`. unitless by name | Optional No @default declared; consult the signature and description. |
diagnostics.selection
import('@insiderfinance/totalfinance/core/pricing').SelectionReport | The structured engine-selection report (Gate C, `@insiderfinance/totalfinance/core/pricing`): who was selected,
why, and — for automatic selection — every candidate considered with its verdict. This is the
machine-readable superset of `engine` + `autoReason` (which remain for compatibility);
`selected.name` always agrees with `engine` when both are present. unitless by name | Optional No @default declared; consult the signature and description. |
diagnostics.selection.candidates
readonly import('@insiderfinance/totalfinance/core/pricing').SelectionCandidate[] | Candidates an automatic selection considered; absent for explicit mode. unitless by name | Optional No @default declared; consult the signature and description. |
diagnostics.selection.mode
'explicit' | 'automatic' | unitless by name | Required / declared member No @default declared; consult the signature and description. |
diagnostics.selection.reason
string | Why the selected engine answers this request. unitless by name | Required / declared member No @default declared; consult the signature and description. |
diagnostics.selection.selected
{ name: string; version?: string; } | unitless by name | Required / declared member No @default declared; consult the signature and description. |
diagnostics.selection.selected.name
string | unitless by name | Required / declared member No @default declared; consult the signature and description. |
diagnostics.selection.selected.version
string | unitless by name | Optional No @default declared; consult the signature and description. |
diagnostics.timingMs
number | Wall-clock timing in milliseconds, when measured. milliseconds | Optional No @default declared; consult the signature and description. |
diagnostics.warmup
number | Series facades: number of leading output slots that are warmup sentinels (null/NaN) while the
computation seeds. Equals the input length when the indicator never emitted. unitless by name | Optional No @default declared; consult the signature and description. |
diagnostics.warnings
QuantWarning[] | Structured warnings; always present (possibly empty). unitless by name | Required / declared member No @default declared; consult the signature and description. |
parameters
ESSVIParameters | unitless by name | Required / declared member No @default declared; consult the signature and description. |
parameters.phi
SSVIPhi | Curvature function (global), same family as SSVI. unitless by name | Required / declared member No @default declared; consult the signature and description. |
parameters.phi.eta
number | unitless by name | Required / declared member No @default declared; consult the signature and description. |
parameters.phi.gamma
number | unitless by name | Required / declared member No @default declared; consult the signature and description. |
parameters.phi.kind
('heston') | ('power-law') | unitless by name | Required / declared member No @default declared; consult the signature and description. |
parameters.phi.lambda
number | unitless by name | Required / declared member No @default declared; consult the signature and description. |
parameters.thetaTerm
{ timeToExpiryYears: number; theta: number; rho: number; }[] | Per-knot `(t, θ, ρ)`: θ strictly increasing (calendar backbone), ρ ∈ (−1, 1) per maturity. unitless by name | Required / declared member No @default declared; consult the signature and description. |
perSliceRmse
{ timeToExpiryYears: number; rmse: number; }[] | unitless by name | Required / declared member No @default declared; consult the signature and description. |
rhoTerm
{ timeToExpiryYears: number; rho: number; }[] | The fitted skew term structure — the payoff of eSSVI over global-ρ SSVI. unitless by name | Required / declared member No @default declared; consult the signature and description. |
rmse
number | Root-mean-square total-variance error across all points. unitless by name | Required / declared member No @default declared; consult the signature and description. |