Skip to main content

SWPM / MARS parity

IRSForge is designed as a fully on-chain alternative to Bloomberg SWPM and MARS — the two tools every rates desk and counterparty-risk team already lives in. Non-technical users who know SWPM should be able to sit down in IRSForge and feel at home within minutes.

This page is the mapping: what SWPM/MARS calls it → what IRSForge calls it → where to find it.

Why SWPM/MARS as the reference

  • SWPM (SWPM <GO> on a Bloomberg Terminal) is the universal swap pricer. IRS, OIS, basis, cross-currency, CDS. Trade ticket, cashflows, risk, scenario, historical mark.
  • MARS (MARS <GO>) is Bloomberg's Multi-Asset Risk System. Portfolio-level NPV, DV01, VaR, P&L attribution, CSA netting, margin calls.
  • Together they cover >90% of the day-to-day workflow of a rates trader, a risk manager, and a collateral operations desk.

If a task can be done in SWPM+MARS, the goal is for it to be doable in IRSForge — same concepts, same keystrokes where feasible, same numbers to four decimals. The difference is the state lives on the Canton ledger instead of a Bloomberg silo.

Feature map — SWPM → IRSForge

SWPM screen / tabIRSForge surfaceNotes
Main deal screen (leg composer)Workspace → leg composerPay/Receive pills, direction colors, tenor/roll/dcf all match SWPM conventions
Product tabs (IRS/OIS/Basis/XCCY/CDS)Workspace top-bar product tabsSame five families, same default conventions
CASHFLOWS tabWorkspace → Cashflows tabPer-period: fixing, accrual, DF, PV — same columns, same sign convention
CURVES tabPricing & Curves + SOFR tileCurves are on-ledger Curve/CurveSnapshot contracts, not Bloomberg feeds
RESETS / fixingsWorkspace cashflows + on-ledger ObservationFixings are signed Daml contracts, auditable per-row
RISK tabWorkspace → Risk tabDV01, theta, per-curve bucket sensitivities
SCENARIO / What-IfWorkspace → Solver / What-If toggleShift a curve, reshock, compare NPV deltas; doesn't persist on-chain
SOLVE (fair coupon)Workspace → Solver tabSolve for coupon that zeroes NPV
ATTRIB / P&L attributionWorkspace → Attribution drawerWhat moved NPV since last mark: curve, time, carry
DES (deal description)Workspace → On-chain tab (payload preview)Raw Daml payload + cid → the authoritative deal description
FpML in/out (XSWP-style)FpML import/exportRound-trips industry-standard FpML 5.x
Confirmation / ticketOn-chain Accept choiceCounterparty acceptance is a Daml choice, not a PDF confirmation

Feature map — MARS → IRSForge

MARS screenIRSForge surfaceNotes
Portfolio blotterBlotterPositions, NPV, DV01, exposure header — same layout idioms
Exposure summaryBlotter → exposure headerAggregates across counterparties and currencies
CSA ladder / collateralCSA pageSigned-CSB model, one drawer per counterparty
Margin call workflowCSA drawer → Post / DisputeFully on-chain, no email/PDF
Mark historyCSA drawer → mark sparklineDriven by CurveSnapshot on the ledger
P&L attributionWorkspace → Attribution tabSame decomposition: curve move, carry, time decay
Dispute workflowCSA drawer → Dispute + operator resolveMarkDisputed state with on-chain operator resolution
End-of-day marksOracle scheduler + CurveSnapshotContinuous on-chain, not batch EOD — see 24/7 settlement

What's different from SWPM/MARS (intentionally)

These are not gaps — they're where on-chain settlement changes the model:

  • No EOD batch. The ledger is 24/7; marks, fixings, and margin updates are continuous. No "T+1" cutoff, no holiday calendar.
  • No PDF confirmations. The Accept choice on a Daml contract is the confirmation. Auditable, cryptographically signed, no paper trail.
  • No bilateral-only counterparty data. Every trade has a regulator observer by default — the audit trail is first-class, not a post-hoc CSV export.
  • No separate CSA reconciliation. CSA is one on-chain contract with a signed CSB; phantom-call bugs are structurally impossible. See CSA model.
  • No proprietary curve feed. Curves are on-ledger Curve contracts signed by a named oracle party; any participant can run an oracle arm.

What's missing vs SWPM/MARS (known gaps)

Honest list. These are in scope for future phases, not this hackathon release:

  • Historical VaR / CVaR — MARS does historical/parametric VaR; IRSForge currently stops at DV01 + scenario.
  • XVA (CVA/DVA/FVA) — out of scope; SWPM has a dedicated XVA tab.
  • Non-linear products — swaptions, caps/floors, CMS. SWPM covers these; IRSForge ships linear rates + CDS only.
  • Optimizer / portfolio compression — MARS has trade compression and novation workflows. Not yet modeled on-chain.

See SWPM parity roadmap for tracked work.

For non-technical users

If you've used SWPM/MARS and never touched a blockchain:

  1. The workspace is SWPM. Same leg composer, same tabs, same numbers.
  2. The blotter is MARS. Same exposure view, same P&L columns.
  3. The CSA page is the MARS collateral module. Same ladder, same dispute flow.
  4. "Propose" and "Accept" replace the confirmation paperwork. A click is a binding, signed, on-chain commitment.
  5. You don't need to know Canton exists to use any of this. The on-chain layer is plumbing — the UI is the rates desk tool you already know.

That's the design target. Every time a surface deviates from SWPM/MARS muscle memory without a good on-chain reason, it's a bug.