QS.INSTRUMENT.SWAP

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

Category: QuantSupport - Instruments.

QS.INSTRUMENT.SWAP(name: text, context: text, start_date: text, maturity_date: text, currency: text, market_index: text, notional: number, fixed_rate: number, spread: number, day_counter: text, compounding: text, rate_frequency: text, fixed_leg_frequency: text, floating_leg_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

  • market_index (text) – Market index, for example SOFR; prefixes include Equity:, Credit:, FX:, and Collateral:

  • notional (number) – Trade notional in currency units

  • fixed_rate (number) – Rate as a decimal, for example 0.03 for 3%

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

  • day_counter (text) – Required day-count convention, for example Actual360, Actual365, or Thirty360; no blank-input default

  • compounding (text) – Required compounding convention, for example Simple, Compounded, or Continuous; no blank-input default

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

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

  • floating_leg_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.SWAP(name, context, start_date, maturity_date, currency, market_index, notional, fixed_rate, spread, day_counter, compounding, rate_frequency, fixed_leg_frequency, floating_leg_frequency, start_tenor, tenor)

Calculation

Runs on Excel’s main calculation thread.

Native Declaration

fn qs_instrument_swap (name : & str , context : & str , start_date : & str , maturity_date : & str , currency : & str , market_index : & str , notional : f64 , fixed_rate : f64 , spread : f64 , day_counter : & str , compounding : & str , rate_frequency : & str , fixed_leg_frequency : & str , floating_leg_frequency : & str , start_tenor : Option < String > , tenor : Option < String > ,) -> Result < String , XllError >

Rust source