QS.INSTRUMENT.BASIS.SWAP

Creates a native BasisSwap contract; use QS.TRADE.CREATE for a position

Category: QuantSupport - Instruments.

QS.INSTRUMENT.BASIS.SWAP(name: text, context: text, start_date: text, maturity_date: text, currency: text, pay_index: text, receive_index: text, notional: number, pay_spread: number, receive_spread: number, pay_frequency: text, receive_frequency: text, start_tenor: text or blank, tenor: text or blank) → text handle
Parameters:
  • name (text) – Workbook-unique object name; unchanged recalculation reuses its current handle

  • context (text) – Required prepared context handle used to build concrete dates and initial contractual terms; construction waits for committed market inputs

  • start_date (text) – ISO date text in YYYY-MM-DD format

  • maturity_date (text) – ISO date text in YYYY-MM-DD format

  • currency (text) – Three-letter ISO currency code, for example USD or EUR

  • pay_index (text) – Market index whose curve is present in the pricing context, for example SOFR or EURIBOR3M

  • receive_index (text) – Market index whose curve is present in the pricing context, for example SOFR or EURIBOR3M

  • notional (number) – Trade notional in currency units

  • pay_spread (number) – Spread as a decimal, for example 0.001 for 10 basis points

  • receive_spread (number) – Spread as a decimal, for example 0.001 for 10 basis points

  • pay_frequency (text) – Required frequency such as Annual, Semiannual, Quarterly, Monthly, or NoFrequency; no blank-input default

  • receive_frequency (text) – Required frequency such as Annual, Semiannual, Quarterly, Monthly, or NoFrequency; no blank-input default

  • start_tenor (text or blank) – Optional start offset from the evaluation date, e.g. 0D or 1Y; leave start_date blank; built from the explicit construction context

  • tenor (text or blank) – Optional maturity/accrual tenor from resolved start, e.g. 5Y; for swaptions from expiry; leave the corresponding end/maturity date blank

Returns:

Concrete instrument handle built using the supplied construction context. #N/A means construction is pending; no unresolved product handle is published. Pass it to QS.EVALUATE, or use QS.TRADE.CREATE for side, execution date/tenor, quantity or bond anchor.

Return Type:

text handle

Errors:

#VALUE! for invalid contract terms, missing dependencies, native builder errors or registry failures.

Formula

=QS.INSTRUMENT.BASIS.SWAP(name, context, start_date, maturity_date, currency, pay_index, receive_index, notional, pay_spread, receive_spread, pay_frequency, receive_frequency, start_tenor, tenor)

Calculation

Runs on Excel’s main calculation thread.

Native Declaration

fn qs_instrument_basis_swap (name : & str , context : & str , start_date : & str , maturity_date : & str , currency : & str , pay_index : & str , receive_index : & str , notional : f64 , pay_spread : f64 , receive_spread : f64 , pay_frequency : & str , receive_frequency : & str , start_tenor : Option < String > , tenor : Option < String > ,) -> Result < String , XllError >

Rust source