Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

Market Data Request

XCDE transmits real-time Market Data information via Websocket on a subscription basis. A Market Data Request can be tailored to return specific instruments and fields. Successful requests will return a Snapshot or a Stream of messages containing one or more Market Data Entries.

The SWAP/Lend Orderbook can provide Top-of-book or Full-book information. For a full book, the Bid and Offer side may have several Market Data entries representing an aggregate of Orders at each price tier (Aggregated book).

The Market Data "SubscriptionRequestType" = 1 (Snapshot + Updates) should be used to provide an initial snapshot followed by continuous updates until the User decides to "unsbscripe" or disconnect.

In case of an empty book, no bids or asks will be returned in a given instrument. A Snapshot Full Refresh Message will return an an MDEntryType = “J” (Null Market).

Some conditions can cause the book to look crossed. Such conditions include quantity conditions as All-Or-None (AON), MinQty and MatchIncement not met.

While it is possible to specify many parameters in a request, XCDE may not support all of them. A Market Data Request Reject will be sent in response to a request that cannot be honored.

API Key Permission: Read
GET /API/swaplend/marketdata/MarketDataRequest

Request parameters:

Field Name

Format

Req'd

Comments

MsgType

String

V = MarketDataRequest

MsgSeqNum

SeqNum

User generated incremental number to allow receiver to identify possible message gaps

SendingTime

UTCTimestamp

Time of sending this message

MDReqID

String

Must be unique, or the ID of previous Market Data Request to disable if SubscriptionRequestType = Disable previous Snapshot + Updates Request (2).

SubscriptionRequestType

Char

Either to requerst a snapshot for current market or subscribe for streaming updates. Unsubscribe will cancel any future updates.
0 = Snapshot
1 = Snapshot + Updates (Subscribe)
2 = Disable previous Snapshot + Update Request (Unsubscribe)

MarketDepth

Int

0 = full book depth
1 = top of book

MDUpdateType

Int

Required if SubscriptionRequestType = Snapshot + Updates (1). Supported values:
0 = Full refresh (only available for Top of Book)
1 = Incremental refresh

<MDReqGrp> Component group

<NoMDEntryTypes> Repeating group

Number of MDEntryType fields requested.

MDEntryType

Char

List of Market Data Entries subcribed. Supported values:
0 = Bid
1 = Offer
2 = Trade
7 = Trading Session High Price
8 = Trading Session Low Price
N = Session High Bid
O = Session Low Offer

<InstrmtMDReqGrp>

<NoRelatedSym>

Number of symbols (instruments) requested.

<Instrument>

Insert here the set of "Instrument" (symbology) fields defined in "Common Components of Application Messages"

Symbol

String

BTC/USD-ON-R to get data on this specific Instrument

Product

Int

13 = FINANCING (Product or SecurityType will return ALL Repo)

SecurityGroup

String

E.g. 1w to subscribe to the Market Data of all the 1 week Repo Instruments. Supported values:
ID = Intra-day
ON = Overnight in the week, over week-end on Fridays
TOD-TOM = Today-Tomorrow during week-ends
1w and 2w = 1 week, 2 weeks

SecurityType

String

REPO

MaturityDate

LocalMktDate

Use this field to get all Market Data for REPO instruments whose Far_Leg delivery is on this date

SecurityStatus

String

E.g. 1 = Active to get all Active REPO traded in SWAP/Lend, or 2 = Inactive

<UndInstrmtGrp>

<NoUnderlyings>

<UnderlyingInstrument>

UnderlyingSymbol

String

E.g. BTC/USD this is the best and recommended field to simply filter for all Repo on this currency pair.

UnderlyingCurrency

Currency

E.g. ADA → Use this field to filter for either Base or Quote currency of interest

Currency

Currency

E.g. EUR → Use this field to filter for the Quote (P&L) currency of your choice

Example request:

MsgType: V
MsgSeqNum: 78267345674
SendingTime: 20220905-23:55:09.299
MDReqID: hhs578-h623
SubscriptionRequestType: 1
MarketDepth: 1
MDUpdateType: 1
MDReqGrp
  MDEntryType: 0,1,2
InstrmtMDReqGrp
  Instrument
    Symbol: BTC/USD-ON-R
    Symbol: BTC/USDT-ON-R
{
  "Header": {
    "MsgType": "V",
    "MsgSeqNum": "78267345674",
    "SenderCompID": "SENDER",
    "TargetCompID": "TARGET",
    "SendingTime": "20220905-23:55:09.299"
  },
  "MDReqID": "hhs578-h623",
  "SubscriptionRequestType": "1",
  "MarketDepth": "1",
  "MDUpdateType": "1",
  "MDReqGrp": [
    {
      "MDEntryType": "0"
    },
    {
      "MDEntryType": "1"
    },
    {
      "MDEntryType": "2"
    }
  ],
  "InstrmtMDReqGrp": {
    "Instrument": [
      {
        "Symbol": "BTC/USD-ON-R"
      },
      {
        "Symbol": "BTC/USDT-ON-R"
      }
    ]
  }
}
  • No labels