QS.EVALUATE.RANGE¶
Prices instruments against one context or paired context handles; dated contexts run across workers and scalar results spill in input order
Category: QuantSupport - Pricing.
- QS.EVALUATE.RANGE(context: cell or range, instruments: cell or range, request_name: text or blank, pricer: text or blank, policy: text or blank, transpose: logical or blank) spilled range¶
- Parameters:
context (cell or range) – One committed context handle for the whole range, or an independent handle array aligned one-for-one with instruments; paired contexts price across workers
instruments (cell or range) – Contract or trade handle(s); contracts use Receive at the context date and contractual notional; use a trade for explicit side/date/quantity or bond anchor
request_name (text or blank) – One request: Value (omitted or blank default), FairRate(index), YieldToMaturity, ModifiedDuration, ZSpread, OAS; QS.EVALUATE also returns Cashflows or Sensitivities tables
pricer (text or blank) – Optional explicit pricer handle; blank selects the product’s native pricer and the context base discount curve; swaptions require an explicit configured pricer
policy (text or blank) – Optional discount-policy handle for the default native pricer; omitted or blank uses the context policy; leave blank when passing an explicit configured pricer
transpose (logical or blank) – Optional TRUE transposes the entire spill; omitted or blank defaults to FALSE; table headers move with their fields
- Returns:
One scalar per instrument in input order, with no stored evaluation objects. Historical batches reuse each distinct selected market and preserve its actual valuation date. transpose=TRUE exchanges rows and columns; omitted transpose defaults to FALSE. Empty output returns a blank cell.
- Return Type:
spilled range
- Errors:
#VALUE! for invalid or misaligned inputs, blank historical timestamps/instruments, stale handles, unsupported scalar requests, missing markets or pricing failure. Historical errors identify the input row. Invalid transpose/headers flags return #VALUE!; use TRUE/FALSE or leave optional flags blank.
Formula¶
=QS.EVALUATE.RANGE(context, instruments, request_name, pricer, policy, transpose)
Calculation¶
Runs on Excel’s main calculation thread.
Native Declaration¶
fn qs_evaluate_range (context : * const XLOPER12 , instruments : * const XLOPER12 , request_name : Option < String > , pricer : Option < String > , policy : Option < String > , transpose : * const XLOPER12 ,) -> Result < * mut XLOPER12 , XllError >