OpenAPI Specification
openapi: 3.1.0
info:
title: Murex MX.3 Market Data Accounting Positions API
description: Real-time and historical market data API providing quotes, yield curves, volatility surfaces, and reference data for pricing and valuation on the Murex MX.3 platform.
version: '1.0'
contact:
name: Murex Support
url: https://www.murex.com/en/support
termsOfService: https://www.murex.com/en/legal/terms
servers:
- url: https://api.murex.com/v1/marketdata
description: Murex MX.3 Market Data API
security:
- bearerAuth: []
tags:
- name: Positions
description: Portfolio position retrieval and management
paths:
/positions:
get:
operationId: listPositions
summary: Murex List positions
description: Retrieve portfolio positions with optional filtering by portfolio, asset class, instrument, and date.
tags:
- Positions
parameters:
- $ref: '#/components/parameters/portfolioId'
- $ref: '#/components/parameters/deskId'
- name: assetClass
in: query
description: Filter by asset class
schema:
type: string
enum:
- FX
- IRD
- Equity
- Credit
- Commodity
- FixedIncome
- name: instrumentId
in: query
description: Filter by instrument identifier
schema:
type: string
- name: asOfDate
in: query
description: Position date
schema:
type: string
format: date
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/offset'
responses:
'200':
description: List of positions
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/Position'
totalCount:
type: integer
'401':
description: Unauthorized
/positions/{positionId}:
get:
operationId: getPosition
summary: Murex Get a position
description: Retrieve details of a specific position.
tags:
- Positions
parameters:
- name: positionId
in: path
required: true
description: Position unique identifier
schema:
type: string
responses:
'200':
description: Position details
content:
application/json:
schema:
$ref: '#/components/schemas/Position'
'401':
description: Unauthorized
'404':
description: Position not found
/positions/summary:
get:
operationId: getPositionSummary
summary: Murex Get position summary
description: Retrieve aggregated position summary by portfolio, desk, asset class, or currency.
tags:
- Positions
parameters:
- $ref: '#/components/parameters/portfolioId'
- $ref: '#/components/parameters/deskId'
- name: groupBy
in: query
description: Grouping dimension for aggregation
schema:
type: string
enum:
- assetClass
- currency
- portfolio
- desk
- counterparty
- name: asOfDate
in: query
description: Position date
schema:
type: string
format: date
responses:
'200':
description: Aggregated position summary
content:
application/json:
schema:
$ref: '#/components/schemas/PositionSummary'
'401':
description: Unauthorized
components:
schemas:
Position:
type: object
properties:
positionId:
type: string
description: Unique position identifier
portfolioId:
type: string
description: Portfolio or book identifier
portfolioName:
type: string
description: Portfolio display name
instrumentId:
type: string
description: Instrument identifier
instrumentName:
type: string
description: Instrument display name
assetClass:
type: string
description: Asset class
quantity:
type: number
description: Position quantity or notional
marketValue:
type: number
description: Current market value
averageCost:
type: number
description: Average cost basis
unrealizedPnL:
type: number
description: Unrealized profit or loss
realizedPnL:
type: number
description: Realized profit or loss
currency:
type: string
description: Position currency (ISO 4217)
counterpartyId:
type: string
description: Counterparty identifier
counterpartyName:
type: string
description: Counterparty display name
tradeDate:
type: string
format: date
description: Original trade date
valueDate:
type: string
format: date
description: Value or settlement date
maturityDate:
type: string
format: date
description: Maturity date
asOfDate:
type: string
format: date
description: Position as-of date
PositionSummary:
type: object
properties:
asOfDate:
type: string
format: date
totalMarketValue:
type: number
description: Total market value
totalUnrealizedPnL:
type: number
description: Total unrealized P&L
currency:
type: string
description: Reporting currency
groups:
type: array
items:
type: object
properties:
groupKey:
type: string
description: Grouping key value
marketValue:
type: number
unrealizedPnL:
type: number
positionCount:
type: integer
parameters:
deskId:
name: deskId
in: query
description: Trading desk identifier
schema:
type: string
portfolioId:
name: portfolioId
in: query
description: Portfolio or book identifier
schema:
type: string
offset:
name: offset
in: query
description: Number of results to skip for pagination
schema:
type: integer
default: 0
limit:
name: limit
in: query
description: Maximum number of results to return
schema:
type: integer
default: 50
maximum: 500
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: OAuth 2.0 bearer token for MX.3 API access
externalDocs:
description: Murex MX.3 Market Data API Documentation
url: https://docs.murex.com/mx3/marketdata-api