Enums & Explanations
There are six resources present through the DRFQv2 API. They are the Instrument, RFQ, Order, RFQ Orders, Trade, and Trade Tape resources.
Users are able to engage with Paradigm via the RESToverHTTP and JSON-RPCoverWebSockets interfaces.
Resources have a state attribute which denotes the status or availability of the object.
The JSON-RPCoverWebSockets interface publishes messages which include an event key to help communicate what update the message is referring too.
Instrument
This information is available from the RESToverHTTP inferface, but not the JSON-RPCoverWebSockets interface.
Valid state values include ACTIVE, EXPIRED.
There are no valid event values as there is no corresponding WebSockets Notifications channel.
Instrument objects with the following state values, mean the following things to users:
- An Instrument is instantiated as ACTIVEwhen made available to trade by Paradigm.
- An Instrument becomes EXPIREDwhen it reaches settlement or is no longer available to trade upon Paradigm.
The Instrument state enums can only transition from ACTIVE -> EXPIRED.
RFQ
This information is available from both the RESToverHTTP and the JSON-RPCoverWebSockets interfaces.
Valid state values include OPEN, CLOSED.
Valid event values include ADDED, REMOVED.
RFQ objects with the following state values, mean the following things to users:
- An RFQ is instantiated as OPENwhen it is available to be actioned by users.
- An RFQ becomes CLOSEDwhen it is no longer actionable by any user.
Published via the rfqs JSON-RPCoverWebSockets notifications channel, event values mean the following to users:
- ADDEDindicates a new RFQ is available to be actioned.
- REMOVEDindicates an existing RFQ is no longer available to be actioned.
Order
This information is available from both the RESToverHTTP and the JSON-RPCoverWebSockets interfaces.
Users are strongly encouraged to use the quantity, pending_fill_quantity, canceled_quantity, filled_quantity attributes of an Order to be certain of the value at risk.
Valid state values include PENDING, OPEN, CLOSED.
Valid event values include NEW, CANCELED, PENDING_FILL, FILLED.
Order objects with the following state values, mean the following things to users:
- An Order is instantiated as PENDINGwhen it is being processed by the Paradigm matching engine.
- An Order becomes OPENwhen it is available to be actioned by users.
- An Order becomes CLOSEDwhen it is no longer actionable by any user.
Published via the orders JSON-RPCoverWebSockets notifications channel, event values mean the following to users:
- NEWindicates a new order is available to be actioned by the user.
- CANCELEDindicates an existing order has been canceled by the user or is apart of a trade rejection.
- PENDING_FILLindicates an order is in the process of being cleared as apart of a trade by the underlying settlement venue.
- FILLEDindicates an order’s quantity has been completed filled and there is no more available amount to trade.
RFQ Orders
This information is available from both the RESToverHTTP and the JSON-RPCoverWebSockets interfaces.
There are no valid state values as the RFQ Orders resource solely communicates actionable Maker Orders to the Taker.
Valid event values include ADDED, REMOVED, UPDATED.
Published via the rfq_orders JSON-RPCoverWebSockets notifications channel, event values mean the following to users:
- ADDEDindicates a new Order upon an RFQ is available to be actioned.
- REMOVEDindicates an existing Order upon an RFQ is no longer available to be actioned.
- UPDATEDindicates an existing Order upon an RFQ has had an attribute updated.
Trade
This information is available from both the RESToverHTTP and the JSON-RPCoverWebSockets interfaces.
Valid state values include PENDING_SETTLEMENT, FILLED, REJECTED.
Valid event values include PENDING_SETTLEMENT, FILLED, REJECTED.
Trade objects with the following state values, mean the following things to users:
- A Trade is instantiated as PENDING_SETTLEMENTwhen it is being cleared by the underlying settlement venue.
- A Trade becomes as FILLEDwhen it is has reached settlement finality and has been successfully cleared by underlying settlement venue.
- A Trade becomes REJECTEDwhen it is has reached settlement finality and has been rejected at clearing by underlying settlement venue.
Published via the trades JSON-RPCoverWebSockets notifications channel, event values mean the following to users:
- PENDING_SETTLEMENTindicates a trade is being cleared by the underlying settlement venue.
- FILLEDindicates a trade has reached settlement finality and has been successfully cleared by the underlying settlement venue.
- REJECTEDindicates a trade has reached settlement finality and has been rejected at clearing by the underlying settlement venue.
Trade Tape
This information is available from both the RESToverHTTP and the JSON-RPCoverWebSockets interfaces.
Valid state values include FILLED.
Valid event values include FILLED.
Trade Tape objects with the following state values, mean the following things to users:
- A Trade Tape is instantiated as FILLEDgiven it has reached settlement finality and been successfully cleared by the underlying settlement venue.
Published via the trade_tape JSON-RPCoverWebSockets notifications channel, event values mean the following to users:
- FILLEDindicates a trade has reached settlement finality and been successfully cleared by the underlying settlement venue.
