assumptions
{ conventionsVersion: string; dayCount: 'ACT/365F'; rankBy: ScanObjective; scoringVolatility: number; structures: ScanStructure[]; timeToExpiryYears: number; } | Applied conventions, echoed (Law 2 report grammar). 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.dayCount
'ACT/365F' | count (integer) | Required / declared member No @default declared; consult the signature and description. |
assumptions.rankBy
'probabilityOfProfit' | 'expectedValue' | 'returnOnRisk' | 'expectedValuePerRisk' | The ranking objective that produced the order (and each candidate's `score`). unitless by name | Required / declared member No @default declared; consult the signature and description. |
assumptions.scoringVolatility
number | The single at-spot volatility that `probabilityOfProfit`/`expectedValue` are scored at (see the `smile` doc). unitless by name | Required / declared member No @default declared; consult the signature and description. |
assumptions.structures
ScanStructure[] | The structures that were enumerated. unitless by name | Required / declared member No @default declared; consult the signature and description. |
assumptions.timeToExpiryYears
number | Year fraction to the scanned expiry. years (decimal) | Required / declared member No @default declared; consult the signature and description. |
candidates
ScanCandidate[] | The top-N candidates by the ranking objective, descending, each fully metric'd. unitless by name | Required / declared member No @default declared; consult the signature and description. |
diagnostics
Diagnostics | Structured warnings; always present (possibly empty). 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
import('@insiderfinance/totalfinance/core').QuantWarning[] | Structured warnings; always present (possibly empty). unitless by name | Required / declared member No @default declared; consult the signature and description. |