Post-trade EMAPI Clearing

JSE External Messaging API

Volume PT02

JSE Limited

Post-trade EMAPI Clearing

Message Set Overview

The following table lists all messages described in this report.

Name
Category
Description

AccountPositionEvent
Event
Represents a change in a position for a specific instrument in a specific account.

AccountTradeEvent
Event
This event represents an insertion, deletion or update of a trade in an account. The message includes information on the position on the account after the trade event.

AggregatedSummaryClearingMemberEvent
Event
Aggregated account summary event for clearing member.

AggregatedSummaryTradingMemberEvent
Event
Aggregated account summary event for trading member.

AtmVolatilityEvent
Event
Event with ATM volatilities for an underlying instrument. The dates are expiry dates for the options.

CommissionEvent
Event
Commission to be paid by destination TM to initiating TM.

CurveEvent
Event
Market data for a curve. See the Curve reference data object for a definition of the curve.

DailyAccountSummaryDetailsEvent
Event
Daily account summary for client or members house nodes.

DividendEvent
Event
Dividend information for a tradable instrument. The instrument is a spot used as underlying for futures. The dividends are used in the future valuation.

OptionDataEvent
Event
Valuation information for option.

PriceEvent
Event
Market data for a tradable instrument.

RiskNodeEvent
Event
This event contains calculated risk values for a Risk Node.

SurfaceEvent
Event
Market data for a surface. See the Surface reference data object for a definition of the surface.

WithdrawalNotificationEvent
Event
A notification event sent to the Clearing Member that there is a number of payment advices that the CM must confirm.

YieldEvent
Event
The yield for an instrument. The instrument could be of different types, for instance a Bond or a Deposit.

CdAddRtcMemberClientClearingLinkReq
ExternalMembers
Request to add a Clearing member to a client

CdAddRtcMemberClientReq
ExternalMembers
Request to add a Client

CdAddRtcMemberClientRsp
ExternalMembers
The response to add rtc member client request.

CdAddRtcPositionAccountReq
ExternalMembers
Request to add a Position Account

CdAddRtcPositionAccountRsp
ExternalMembers
The response to add position account request.

CdEnableDisableRtcMemberClientReq
ExternalMembers
Request to add a Client

CdEnableDisableRtcPositionAccountReq
ExternalMembers
Request to update a position account

CdEnableDisableRtcPositionAccountRsp
ExternalMembers
The response enableDisable position account.

CdSetClientAMPercentageReq
ExternalMembers
Set additional margin percentage. Leaving clientId empty means trading member will set additional margin percentage on all clients for that trading member.

CdSetClientRiskLimitReq
ExternalMembers
Set risk limit. Leaving clientId empty means trading member will set risk limit on all clients for that trading member.

CdSetMinimumZARLimitReq
ExternalMembers
Set minimum ZAR limit. Leaving all fields empty as a clearing member will set minimumZARLimit on all trading members for that clearing member. Leaving all fields empty as a trading member will set minimumZARLimit on all clients for that trading member.

CdSetTradingMemberAMPercentageReq
ExternalMembers
Set additional margin percentage. Leaving the tradingMemberId field empty means the clearing member will set additional margin percentage on all trading members for that clearing member.

CdSetTradingMemberRiskLimitReq
ExternalMembers
Set risk limit. Leaving the tradingMemberId field empty means the clearing member will set risk limit on all trading members for that clearing member.

CdUpdateRtcMemberClientReq
ExternalMembers
Request to update a Client

CmBalancing1Event
ExternalMembers
Account balancing 1 message to the Clearing Member.

CmBalancing2Event
ExternalMembers
Account balancing 2 message to CM.

GetRequestsForFXCollateralReq
ExternalMembers
Request for the clearing member to get the information about the amounts per client/house that can be covered qith FX collateral. Next step is for the clearing member to send in a confirmation with the different amounts in FX with RegisterFXCollateralReq.

GetRequestsForFXCollateralRsp
ExternalMembers
Response to GetRequestsForFXCollateralReq request. Includes values in ZAR that could be covered with FX, per client/house.

GetRiskArrayReq
ExternalMembers
Query JSPAN risk arrays available in the system.

GetRiskArrayRsp
ExternalMembers
Response to a GetRiskArrayReq request.

GiveUpEvent
ExternalMembers
This event is for Assign and Tripartite flow from RTC.

QueryDividendPaymentFactorsReq
ExternalMembers
Query the factors used in the calculation of dividend payments.

QueryDividendPaymentFactorsRsp
ExternalMembers
Response message for the QueryDividendPaymentFactorsReq

ReadyConfirmAvailableFXEvent
ExternalMembers
Event published to the CMs to inform that RTC is ready to receive information about FX collateral.

RegisterFXCollateralRsp
ExternalMembers
Response to RegisterFXCollateralReq request.

RegisterFxCollateralReq
ExternalMembers
For clearing member to register FX Collateral.

SetCmBalancingStatusReq
ExternalMembers
Request to set balance status for a CM.

SetCmBalancingStatusRsp
ExternalMembers
Response to a SetCmBalancingStatusReq request.

CdResponse
General
A response to be used as super class for all responses from CD.

ChangePasswordReq
General
A request to change the current password. The user does not have to be logged in order to change the password.

GetSequenceNumbersReq
General
Get sequence numbers for broadcast flows.

GetSequenceNumbersRsp
General
Response to a GetSequenceNumbersReq request.

ResponseMessage
General
General response for request messages that don’t have a defined response. It may also be used when a fatal error occurs before or during the normal response handling on the server.

SimpleRsp
General
General response for request messages that dont’t have a defined response.

TaxEndSnapshot
General
Message ending a snapshot response

TaxHeartbeatReq
General
Heartbeat sent to gateway in order to verify a connection

TaxHeartbeatRsp
General
Response returned from gateway

TaxLogonReq
General
Request to the gateway to log in a member/user

TaxLogonRsp
General
Sent from the gateway to the client as a response to TaxLogonReq.

TaxLogoutReq
General
Request from client to gateway in end a session. A simple response is sent as response.

TaxRemoveSubscriptionReq
General
Removes an active subscription. A SimpleRsp is sent as response for this request.

TaxReplayEndEvent
General
Framing message indicating the end of requested replay data. The TaxReplayEndEvent indicates the end of a replay sequence.

TaxReplayReq
General
Request message sent to the RTC system to recover a sequence of messages published earlier. The replay request will recover earlier published messages on a replayable flow. The response back is a simple response indicating whatever the request was successfully queued to the RTC system. The actual replay data is delivered as unsolicited events, framed by TaxReplayStartEvent and TaxReplayEndEvent messages.

TaxReplayRsp
General
Response message sent back for a previously-submitted TaxReplayReq. The TaxReplayRsp response will not contain the actual data being requested. The response data is delivered to the application asynchronously.

TaxReplayStartEvent
General
Framing message indicating the start sequence of requested replay data. When issuing a replay request, the replay data is delivered as unsolicited messages. The TaxReplayStartEvent indicates the start of a replay sequence.

TaxSessionStatus
General
Unsolicited message indicating session status.

TaxSnapshotSubscribeReq
General
Request to retrieve information and/or activate subscription of future updates of the information specified

TaxSnapshotSubscribeRsp
General
Response to a subscription request (TaxSnapshotSubscribeReq).

TaxStartSnapshot
General
Message preceding a snapshot response

AccessGroup
ReferenceData
This object defines an access Group.

CalendarDate
ReferenceData
A calendar date of a certain type.

CdAddCashAccountReq
ReferenceData
Request to add a Cash Account

CdUpdateCashAccountReq
ReferenceData
Request to update a Cash Account. The cash account is identified by either (1) the internalCashAccountId, or (2) the combination of participantUnitId and currency.

ClassSpreadGroup
ReferenceData
Class Spread Group.

ClearingMemberLink
ReferenceData
This object defines a link from Trading Member to Clearing Member.

CollateralAccount
ReferenceData
Represents a collateral account.

CorporateAction
ReferenceData
A Corporate Action task definition.

Country
ReferenceData
Holds basic information on a country, such as currency, time zone and holidays.

Currency
ReferenceData
This object represent a Currency.

CurrentSystemState
ReferenceData
This object holds a RTC System State.

Curve
ReferenceData
A curve, y axis dependent on x axis, y = f(x).

CurveConstituent
ReferenceData
Instruments to build the curve.

Deposit
ReferenceData
Deposit instrument. Used as curve constituents.

EligibleCurrency
ReferenceData
Currency eligible for FX collateral.

EligibleSecurity
ReferenceData
Security instrument eligible for collateral.

ForwardRateAgreement
ReferenceData
A Forward Rate Agreement instrument.

Instrument
ReferenceData
The Instrument holds basic background information, such as instrument id, type and (optionally) primary market for an instrument. Since an instrument can be traded in different currencies and visibility (normal, dark etc), the instrument has a set of child objects called TradableInstrument in which the actual trading takes place. An Instrument may reference another Instrument using the ““parentInternalId”” attribute. The parentInternalId is typically used by warrants or options to reference the underlying instrument.

InterestRateSwap
ReferenceData
A Interest rate swap instrument.

Market
ReferenceData
Defines a market.

MarketList
ReferenceData
The MarketList is a child object of a Market. The purpose of the MarketList is mainly to organize the different instruments on a market into separate lists. The actual interpretation of the MarketList is customer specific. Operations such as halt and enable/disable performed on a MarketList will affect all Segments and TradableInstruments within the MarketList.

Member
ReferenceData
This object represents a member firm and holds all basic member data such as id, full name, mail addresses and contact persons etc.

PositionAccount
ReferenceData
Position account is used to keep actual clearing positions and settlement positions.

RiskNode
ReferenceData
Risk node is the entity that defines the level for risk calculations. It has one or several accounts connected and form a tree structure with aggregated risk numbers on parent nodes.

RtcCalendar
ReferenceData
Represents a calendar in the RTC system.

Segment
ReferenceData
A Segment is a grouping of TradableInstruments that share the same trading rules. Operations on a segment, such as halt and enable/disable affects all tradable instruments related to the segment. A Segment is a child objetc to MarketList.

SeriesSpreadGroup
ReferenceData
Series Spread Group.

SettlementAccount
ReferenceData
This object defines a settlement account.

SubscriptionGroup
ReferenceData
The subscription group is used to filter objects on broadcast flows. When a subscription is set up for a subscription group the system controls the user access rights for that access group.

Surface
ReferenceData
A surface. Three axis, z dependent on x and y, z = f(x, y).

TradableInstrument
ReferenceData
The TradableInstrument is a child object of an Instrument. The TradableInstrument holds trading information (order book id, currency, market, visibility etc) which is necessary for entering orders in a specific instrument. There is one TradableInstrument instance per market/currency/visibility combination. A TradableInstrument instance references a Segment, all trading rules for the referenced Segment applies to the instance.

TripartiteAgreement
ReferenceData
This object defines agreement for tripartite.

ConfirmWithdrawalsReq
Settlement
Used for a Clearing Member to confirm or reject payment advices.

GetPaymentAdvicesReq
Settlement
Get payment advices for a particular clearing member.

GetPaymentAdvicesRsp
Settlement
Response to the GetPaymentAdvicesReq request.

GetSettlementInstructionsReq
Settlement
Request to get settlement instructions.

GetSettlementInstructionsRsp
Settlement
Response to GetSettlementInstructionsReq.

AbandonOptionPositionReq
TradeManagement
Abandon an option position.

AbandonOptionPositionRsp
TradeManagement
Response to the AbandonOptionPositionReq request.

AcceptCommissionReq
TradeManagement
Request for the destination member to accept a pending commission.

AddCommissionReq
TradeManagement
Request to add a Commission

AggregateTradesReq
TradeManagement
A number of trades can be accumulated into a single trade with a volume weighted average price. The trades need to be on the same account, the same contract and the same side (only buy or only sell) from current day.

AggregateTradesRsp
TradeManagement
Response to the AggregateTrades request.

AllocateTradeReq
TradeManagement
The purpose of trade allocation is to allocate or split a trade from one account to an another account. Allocation is performed by making an opposite trade on the original account and an equal trade on the receiving account.

AllocateTradeRsp
TradeManagement
Response to the AllocateTradeReq request.

ApproveGiveUpReq
TradeManagement
Request to approve give-up request. The give-up request has been published to the member using GiveUpEvent.

AssignTradeReq
TradeManagement
Request to assign trade to another member.

CancelCommissionReq
TradeManagement
Request for TM to cancel a commission that has been sent earlier the same day.

CancelGiveUpReq
TradeManagement
Request to cancel giveup request by the initator. The recipient of the GiveUpEvent will then be notified with a new GiveUpEvent where the state is set to CANCELLED.

CorrectAllocationErrorReq
TradeManagement
To correct when a trade has erroneously been allocated to wrong client, i.e. to move the trade from one client to another.

CorrectAllocationErrorRsp
TradeManagement
Response to the AllocateTradeReq request.

CorrectPrincipalReq
TradeManagement
To move a trade from a client account to a member main or sub account.

CorrectPrincipalRsp
TradeManagement
Response to the CorrectPrincipalReq request.

ExerciseOptionPositionReq
TradeManagement
Exercise an option position. For American style options, this is allowed at any time during the contract’s lifetime. For European style options, this can only be done on the expiry day.

ExerciseOptionPositionRsp
TradeManagement
Response to the ExerciseOptionPositionReq request.

ModifyPositionSubAccountReq
TradeManagement
Request to move a position from a house main/house sub/house suspense/client suspense account to a house main or house sub account, or move a position from branch main/branch sub/branch clients suspense account to a branch main or branch sub account.

ModifyPositionSubAccountRsp
TradeManagement
Response to the ModifyPositionSubAccountReq request.

ModifyTradeSubAccountReq
TradeManagement
To move a trade from house account to other house accounts.

ModifyTradeSubAccountRsp
TradeManagement
Response to the ModifyTradeSubAccountReq request.

QueryTradesReq
TradeManagement
Query trades from previous days. If the flag hasMore is set in the response, there are too many trades matching the search criteria. The client needs to specify narrower criteria and submit the query again.

QueryTradesRsp
TradeManagement
Query trades response.

RejectCommissionReq
TradeManagement
Request for the Destination TM to reject a received commission.

RejectGiveUpReq
TradeManagement
Reject assigned or tripartite trade as receiver. The initiator will be notified by a GiveUpEvent on the GiveUp Event Flow.

TripartiteAllocationReq
TradeManagement
Tripartite allocation to another member. Tripartite agreement must exist. Tripartite requests that are not handled during the day are removed by the system.

TripartiteAllocationRsp
TradeManagement
Response to the TripartiteAllocationReq request.

UpdateTradeReferenceReq
TradeManagement
Request to update the reference on trade.

UpdateTradeReferenceRsp
TradeManagement
Response to the UpdateTradeReferenceReq request.

AbandonOptionPositionReq

Category: TradeManagement

Message Functionality

Abandon an option position.

Structure

Name | Mult. | Type | Description
accountId | [1..1] | Long | The account of the position.
quantity | [1..1] | long | The abandon quantity. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
updateId | [1..1] | String | Unique id that should be set for the request. If the system has already processed an update with this id, a success message is returned without any position change.

AbandonOptionPositionRsp

Category: TradeManagement

Message Functionality

Response to the AbandonOptionPositionReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
tradeIds | [0..1] | Long | The IDs of the trades that were created as part of this abandon of an option position.
transactionId | [0..1] | long | The ID of the transaction that updated the positions affected by this abandon of an option position.

AcceptCommissionReq

Category: TradeManagement

Message Functionality

Request for the destination member to accept a pending commission.

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag. Not used for this message.
commissionId | [1..1] | String | Id of the Commission.
destinationExternalAccountId | [0..1] | String | External ID of the destination sub account that is affected by the commission.
market | [0..1] | String | Market id. Required if destinationExternalAccountId is not left empty.
destinationTM | [0..1] | String | TM that will carry the payment. Required if requesting user is a CM user and if destinationExternalAccountId is not left empty.

AccessGroup

Category: ReferenceData

Message Functionality

This object defines an access Group.

Structure

Name | Mult. | Type | Description
key | [0..1] | String | Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.
cacheId | [0..1] | String | Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
action | [0..1] | CodeSet | Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
stateSequenceNumber | [0..1] | long | A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly
uniqueObjectId | [0..1] | String | The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.
timestamp | [0..1] | String | The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.
accessGroupId | [0..1] | String | The id for the Access Group.
participantUnitId | [0..1] | String | Specifies the parent Participant Unit.
clearingMemberId | [1..1] | String | The clearing member for the Access group.
subscriptionGroup | [0..1] | int | The subscription group for the Access group.

AccountPositionEvent

Category: Event

Message Functionality

Represents a change in a position for a specific instrument in a specific account.

Structure

Name
Mult.
Type
Description

sequenceNumber
[0..1]
long
The sequence number is a unique number for all events published for the same flow.

accountId
[1..1]
Long
Account id.

positionType
[1..1]
CodeSet
The position type.

settlementDate
[0..1]
String
Settlement date, used for positions of type SETTLEMENT.

subId
[0..1]
long
In some cases, several positions in the same instrument and the same account are held as separate positions, although they both fit the instrument/account key. There may be technical or business logic reasons for this. The risk system can handle that multiple sources have positions in identical instruments and accounts and it will perform the aggregation of such positions itself for calculation purposes.

longQty
[0..1]
long
The position long quantity in its canonical unit, i.e. longNominalQty multiplied by contract size of tradable instrument. A positive quantity represents a long position. E.g. a position of 10 futures contracts of an instrument with a contract size of 100 would be represented in this field as 1000 (divisor rule to be applied). This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

shortQty
[0..1]
long
The position short quantity in its canonical unit, i.e. shortNominalQty multiplied by contract size of tradable instrument. A negative quantity represents a short position. E.g. a position of 10 futures contracts of an instrument with a contract size of 100 would be represented in this field as 1000 (divisor rule to be applied). This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

shortNominalQty
[0..1]
BigInteger
The position quantity, i.e. number of contracts. Only set for positions in tradable instruments. A negative quantity represents a short position. E.g. a position of 10 futures contracts of an instrument with a contract size of 100 would be represented in this field as 10 (divisor rule to be applied) This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

shortInitialValue
[0..1]
BigInteger
The value of the position, according to the prices of the trades that build up the position. Simply put, this value is the sum of the price * quantity of all trades in the position. Since long and short quantities have different signs, values of long positions are typically positive and values of short positions are typically negative (the opposite being true if the price is negative). The initial value of the position is expressed in the currency of the instrument the position belongs to. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

shortMarketValue
[0..1]
BigInteger
The value of the position, according to the market price that was used last time a cash settlement of the variation margin of the position was made. Since long and short quantities have different signs, values of long positions are typically positive and values of short positions are typically negative (the opposite being true if the price is negative). The market value is expressed in the currency of the instrument the position belongs to. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

longNominalQty
[0..1]
BigInteger
The position quantity, i.e. number of contracts. Only set for positions in tradable instruments. A positive quantity represents a long position. E.g. a position of 10 futures contracts of an instrument with a contract size of 100 would be represented in this field as 10 (divisor rule to be applied) This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

longInitialValue
[0..1]
BigInteger
The value of the position, according to the prices of the trades that build up the position. Simply put, this value is the sum of the price * quantity of all trades in the position. Since long and short quantities have different signs, values of long positions are typically positive and values of short positions

longMarketValue
[0..1]
BigInteger
The value of the position, according to the market price that was used last time a cash settlement of the variation margin of the position was made. Since long and short quantities have different signs, values of long positions are typically positive and values of short positions are typically negative (the opposite being true if the price is negative). The market value is expressed in the currency of the instrument the position belongs to. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

transactionId
[0..1]
long
Internal RTC transaction ID.

positionReason
[0..1]
CodeSet

tradeId
[0..1]
long
Trade ID generated by the system, globally unique. A new ID will be created each time the trade is moved to a new account, i.e. when an equal opposite trade is created. Note that an ID will be created also at trade capture.

positionTimestamp
[0..1]
String
The time when the event occurred, on format yyyy-MM- dd'T'HH:mm:ss.SSS.

Trade
[0..1]
Component
The trade that caused this account position event.

subscriptionGroup
[0..1]
int
The id of subscription group the message is published on.

longSpreadVolume
[0..1]
BigInteger
Total spread volume for CFD contract. This is similar to Initial Value, but this is base rate from the trade multiplied with the quantity. Positive for long values, negative for short. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

shortSpreadVolume
[0..1]
BigInteger
Total spread volume for CFD contract. This is similar to Initial Value, but this is base rate from the trade multiplied with the quantity. Positive for long values, negative for short. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

externalAccountId
[0..1]
String
The ID of the position account as seen by the member.

clearingMemberId
[0..1]
String
The member code of the clearing member.

collateralAccountName
[0..1]
String
The name of the collateral account.

tradingMember
[0..1]
String
TM that owns the trade.

tradingMemberBranch
[0..1]
String
TM branch that owns the trade.

clientId
[0..1]
String
Client ID added to trade by CS. Empty if trade is for TM house.

AccountTradeEvent

Category: Event

Message Functionality

This event represents an insertion, deletion or update of a trade in an account. The message includes information on the position on the account after the trade event.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroup | [0..1] | int | The id of subscription group the message is published on.
accountId | [1..1] | Long | Account id.
positionType | [1..1] | CodeSet | The position type.
settlementDate | [0..1] | String | Settlement date, used for positions of type SETTLEMENT.
positionReason | [0..1] | CodeSet |
positionTimestamp | [0..1] | String | The time when the event occurred, on format yyyy-MM- dd'T'HH:mm:ss.SSS.
Trade | [1..1] | Component | The referenced Trade.
externalAccountId | [0..1] | String | The ID of the position account as seen by the member.
clearingMemberId | [0..1] | String | The member code of the clearing member.
collateralAccountName | [0..1] | String | The name of the collateral account.
tradingMember | [0..1] | String | TM that owns the trade.
tradingMemberBranch | [0..1] | String | TM branch that owns the trade.
clientId | [0..1] | String | Client ID added to trade by CS. Empty if trade is for TM house.

AddCommissionReq

Category: TradeManagement

Message Functionality

Request to add a Commission

Structure

Name | Mult. | Type | Description
market | [1..1] | String | Market.
initiatingTM | [1..1] | String | TM or Branch that sent the commission.
destinationTM | [1..1] | String | TM or Branch that will carry the payment.
clientReference | [0..1] | String | Payer of the commission. Refer to EMAPI Clearing document, Commission Management section for guidance on the population of this field based on the various trade and deal management scenarios.
commissionReference | [0..1] | String | Identifier of trade or deal associated with the commission. Refer to EMAPI Clearing document, Commission Management section for guidance on the population of this field based on the various trade and deal management scenarios.
amount | [1..1] | Long | Amount to debit the destination TM. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.
updateId | [1..1] | String | Unique id that should be set for the commission request. If the system has already processed an update with this id, a success message is returned without any position change.
initiatingExternalAccountId | [0..1] | String | External ID of the initiator's sub account that is affected by the commission.
secondaryFirmReference | [0..1] | String | Additional reference to the destination member. The recipient of the commission. Can be used to reference trading desk.
commissionVatType | [1..1] | CodeSet | VAT type for commission.

AggregateTradesReq

Category: TradeManagement

Message Functionality

A number of trades can be accumulated into a single trade with a volume weighted average price. The trades need to be on the same account, the same contract and the same side (only buy or only sell) from current day.

Structure

Name | Mult. | Type | Description
moveId | [0..1] | Long | Must be unique for the referenced trade. Used to prevent duplicate move requests.
tradeIds | [1..1] | Long | Trade ids.
reference | [0..1] | String | An optional free text field.
destinationReference | [0..1] | String | The destination for this operation.
accountId | [1..1] | Long | The account id for the trades.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
tradingUserId | [1..1] | String | The trading user id.

AggregateTradesRsp

Category: TradeManagement

Message Functionality

Response to the AggregateTrades request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
tradeId | [0..1] | long | The IDs of the trade that were created as part of this move trade operation.
transactionId | [0..1] | long | The ID of the transaction that updated the positions affected by this move trade operation.

AggregatedSummaryClearingMemberEvent

Category: Event

Message Functionality

Aggregated account summary event for clearing member.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroup | [0..1] | int | The id of the subscriptionGroup the message is published on.
clearingMemberId | [0..1] | String | Clearing Member ID.
Totals | [0..1] | Component | Aggregated trading member totals.
netFromOtherSystems | [0..1] | Long | Net amount from other system
cmMessageRef | [0..1] | String | Number used when creating settlement instructions. This number is concatenated into the message reference no.
tag | [0..1] | CodeSet | Price Tag that identifies the event.
businessDate | [0..1] | String | Business Date.
timestamp | [0..1] | String | The time of the event.

AggregatedSummaryTradingMemberEvent

Category: Event

Message Functionality

Aggregated account summary event for trading member.

Error: totalMemberCashMovement exists in more than one component tree. Removed: [Sort: 6, Name: totalHouse, Tag: c, Presence: optional, FieldNo: 8, FieldType: AggregatedSummaryDetails, Documentation: Aggregated house accounts.]

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroup | [0..1] | int | The id of the subscriptionGroup the message is published on.
tradingMemberId | [0..1] | String | Trading Member ID.
clearingMemberId | [0..1] | String | Clearing Member ID.
TotalClients | [0..1] | Component | Aggregated client accounts.
tag | [0..1] | CodeSet | Price Tag.
businessDate | [0..1] | String | Business Date.
timestamp | [0..1] | String | The time of the event.

AllocateTradeReq

Category: TradeManagement

Message Functionality

The purpose of trade allocation is to allocate or split a trade from one account to an another account. Allocation is performed by making an opposite trade on the original account and an equal trade on the receiving account.

Structure

Name | Mult. | Type | Description
tradeId | [1..1] | long | Trade id.
fromAccountId | [1..1] | Long | The account to allocate the Trade from
Destinations | [1..1] | Component | One or more destinations for this move operation.
moveId | [0..1] | Long | Must be unique for the referenced trade. Used to prevent duplicate move trade requests.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
tradingUserId | [1..1] | String | The trading user id.

AllocateTradeRsp

Category: TradeManagement

Message Functionality

Response to the AllocateTradeReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
tradeIds | [0..1] | Long | The IDs of the trades that were created as part of this move trade operation.
transactionId | [0..1] | long | The ID of the transaction that updated the positions affected by this move trade operation.

ApproveGiveUpReq

Category: TradeManagement

Message Functionality

Request to approve give-up request. The give-up request has been published to the member using GiveUpEvent.

Structure

Name | Mult. | Type | Description
fourEyesId | [1..1] | long | The ID of the Assign or Tripartite.
initiator | [1..1] | String | The initiator member Id.
acknowledger | [1..1] | String | The destination member Id.
client | [0..1] | String | The destination client Id.
Destinations | [1..1] | Component | One or more destinations for this move operation.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
tradingUserId | [1..1] | String | The trading user id.

AssignTradeReq

Category: TradeManagement

Message Functionality

Request to assign trade to another member.

Structure

Name | Mult. | Type | Description
tradeId | [1..1] | long | Trade id.
fromAccountId | [1..1] | Long | The current account for the Trade.
reference | [0..1] | String | An optional free text field.
quantity | [1..1] | long | The trade quantity. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
acknowledger | [1..1] | String | The destination member Id.
moveId | [0..1] | Long | Must be unique for the referenced trade. Used to prevent duplicate move requests.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
tradingUserId | [1..1] | String | The trading user id.
commissionAmount | [0..1] | Long | A sight of the commission amount before the actual commission is submitted. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

AtmVolatilityEvent

Category: Event

Message Functionality

Event with ATM volatilities for an underlying instrument. The dates are expiry dates for the options.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroupId | [0..1] | int | The id of the subscription group the message is published on.
condType | [0..1] | CodeSet | Price Condition type (tag).
businessDate | [0..1] | String | Business date. Format is YYYY-MM-DD.
instrumentExternalId | [0..1] | String | The external instrument id. This is the JSE Master ID.
feedSource | [0..1] | CodeSet | The source.
timestamp | [0..1] | String | The time of the market data event. The format is "yyyy-MM- ddTHH:mm:ss.SSS".
absoluteDates | [0..1] | String | The absolute instrument expiry dates. Corresponds to the array of volatilities.
vols | [0..1] | long | The volatilities. Corresponds to the array of dates. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

CalendarDate

Category: ReferenceData

Message Functionality

A calendar date of a certain type.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm- ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

date
[1..1]
String
A calendar date in standard format: YYYY-MM-DD.

dateType
[1..1]
CodeSet
The type of this date, for example 'closed'.

calendarId
[1..1]
String
The "identity" of this date. This field may be used for specifying a calendar date that is specific for an exchange/country etc. The id here is (may be) referenced from the orderbook parameters block.

displayName
[0..1]
String
The display name for this date, Midsummer for example.

isValidTradingBusinessDate
[0..1]
Boolean
Indicate if a date is a valid trading business date or not.

CancelCommissionReq

Category: TradeManagement

Message Functionality

Request for TM to cancel a commission that has been sent earlier the same day.

Structure

Name | Mult. | Type | Description
commissionId | [1..1] | String | Id of the Commission.
cancellationReference | [0..1] | String | Optional reference that can be supplied at cancellation or rejection requests.

CancelGiveUpReq

Category: TradeManagement

Message Functionality

Request to cancel giveup request by the initator. The recipient of the GiveUpEvent will then be notified with a new GiveUpEvent where the state is set to CANCELLED.

Structure

Name | Mult. | Type | Description
fourEyesId | [1..1] | long | The ID of the Assign or Tripartite.
initiator | [1..1] | String | The initiator member Id.
acknowledger | [1..1] | String | The destination member Id.
reason | [0..1] | String | An optional free text field.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.

CdAddCashAccountReq

Category: ReferenceData

Message Functionality

Request to add a Cash Account

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
CashAccount | [1..1] | Component | The cash account to add

CdAddRtcMemberClientClearingLinkReq

Category: ExternalMembers

Message Functionality

Request to add a Clearing member to a client

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
memberClientId | [1..1] | String | The member id
clearingMemberId | [1..1] | String | The clearing member

CdAddRtcMemberClientReq

Category: ExternalMembers

Message Functionality

Request to add a Client

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
address | [1..1] | String | The address
phone | [1..1] | String | The phone
associatedMemberId | [1..1] | String | The parent member
email | [1..1] | String | The email address
clientId | [0..1] | String | The client id
clientName | [1..1] | String | The client name
vatRegNumber | [0..1] | String | VAT registration number
isStaff | [1..1] | Boolean | Is Staff, true or false
isBeneficial | [1..1] | Boolean | Is Beneficial, true or false
bdaCode | [0..1] | Integer | BDA Code
country | [1..1] | String | Country Code
strateCode | [0..1] | String | Code of client or member at CSD.
allowedMarkets | [1..1] | String | A comma-delimited list of market codes that the client is allowed to have trades and positions in.
clientType | [1..1] | CodeSet | Type of client. Information to surveillance.
idNumber | [0..1] | Long | ID number. Required for local individual clients.
passportNumber | [0..1] | String | Passport number. Required for foreign individual clients.
companyRegistrationNumber | [0..1] | String | Company registration number. Required for all company clients.
isProfessional | [0..1] | Boolean | Information to surveillance.
isShariah | [0..1] | Boolean | Information to surveillance.
isDiscretionary | [1..1] | Boolean | Is Discretionary, true or false
nominatedMember | [0..1] | String | The member id of the nominated member.
preferredCcy | [0..1] | String | Currency used for start of day collateral process. Needs to be an eligible FX collateral currency (or ZAR, this will be the default though).

CdAddRtcMemberClientRsp

Category: ExternalMembers

Message Functionality

The response to add rtc member client request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
latestSSN | [0..1] | long | This is the latest and most likely the highest state sequence number, SSN, that has been assigned to the reference data.
clientId | [0..1] | String | The client id generated by the system.

CdAddRtcPositionAccountReq

Category: ExternalMembers

Message Functionality

Request to add a Position Account

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
participantUnitId | [1..1] | String | The owner unit.
positionAccountType | [1..1] | CodeSet | The type of the position account.
clearingMemberId | [1..1] | String | The clearing member of the Position Account.
externalPositionAccountId | [0..1] | String | The external id of the position account.
positionAccountSubType | [1..1] | CodeSet | The sub type of the position account.

CdAddRtcPositionAccountRsp

Category: ExternalMembers

Message Functionality

The response to add position account request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
latestSSN | [0..1] | long | This is the latest and most likely the highest state sequence number, SSN, that has been assigned to the reference data.
positionAccountExternalId | [0..1] | String | The external id of the position account.

CdEnableDisableRtcMemberClientReq

Category: ExternalMembers

Message Functionality

Request to add a Client

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
clientId | [1..1] | String | The client id
isDisabled | [1..1] | Boolean | Set as enabled or not

CdEnableDisableRtcPositionAccountReq

Category: ExternalMembers

Message Functionality

Request to update a position account

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
positionAccountId | [1..1] | Long | The Position account id.
isEnabled | [0..1] | Boolean | Enabled (true) or not (false).

CdEnableDisableRtcPositionAccountRsp

Category: ExternalMembers

Message Functionality

The response enableDisable position account.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
latestSSN | [0..1] | long | This is the latest and most likely the highest state sequence number, SSN, that has been assigned to the reference data.

CdResponse

Category: General

Message Functionality

A response to be used as super class for all responses from CD.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
latestSSN | [0..1] | long | This is the latest and most likely the highest state sequence number, SSN, that has been assigned to the reference data.

CdSetClientAMPercentageReq

Category: ExternalMembers

Message Functionality

Set additional margin percentage. Leaving clientId empty means trading member will set additional margin percentage on all clients for that trading member.

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
clearingMemberId | [0..1] | String | The clearing member id. The clearing member (or CM link) the client belongs to.
clientId | [0..1] | String | The client id. Only applicable for a clearing member that wants to set the AM percentage on a specific client.
amPercentage | [0..1] | Integer | The additional margin pergentage used to calculate additional margin from the calculated initial margin.

CdSetClientRiskLimitReq

Category: ExternalMembers

Message Functionality

Set risk limit. Leaving clientId empty means trading member will set risk limit on all clients for that trading member.

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
clearingMemberId | [0..1] | String | The clearing member id. The clearing member (or CM link) the client belongs to.
clientId | [0..1] | String | The client id. Only applicable for a clearing member that wants to set the risk limit on a specific client.
riskLimit | [0..1] | Long | The risk limit which is validated against the calculated risk on a risk node to check if there is a breach and trigger alert if required. If this field is left blank then the risk limit is removed from the client

CdSetMinimumZARLimitReq

Category: ExternalMembers

Message Functionality

Set minimum ZAR limit. Leaving all fields empty as a clearing member will set minimumZARLimit on all trading members for that clearing member. Leaving all fields empty as a trading member will set minimumZARLimit on all clients for that trading member.

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
clearingMemberId | [0..1] | String | The clearing member id. Only applicable for a trading member that wants to set the minimumZARLimit on a specific client.
tradingMemberId | [0..1] | String | The trading member id. Only applicable for a clearing member that wants to set the minimumZARLimit on a specific trading member.
clientId | [0..1] | String | The client id. Only applicable for a trading member that wants to set the minimumZARLimit on a specific client.
minimumZARLimit | [0..1] | Integer | The minimum ZAR limit in percent. Must be within the interval 0- 100. Leaving this field empty means no specific limit is set and that a value from higher in the hierarchy will be used.

CdSetTradingMemberAMPercentageReq

Category: ExternalMembers

Message Functionality

Set additional margin percentage. Leaving the tradingMemberId field empty means the clearing member will set additional margin percentage on all trading members for that clearing member.

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
tradingMemberId | [0..1] | String | The trading member id. Only applicable for a clearing member that wants to set the AM percentage on a specific trading member.
amPercentage | [0..1] | Integer | The additional margin pergentage used to calculate additional margin from the calculated initial margin.

CdSetTradingMemberRiskLimitReq

Category: ExternalMembers

Message Functionality

Set risk limit. Leaving the tradingMemberId field empty means the clearing member will set risk limit on all trading members for that clearing member.

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
tradingMemberId | [0..1] | String | The trading member id. Only applicable for a clearing member that wants to set the limit on a specific trading member.
riskLimit | [0..1] | Long | The risk limit which is validates against the calculated risk on a risk node to check if there is a breach and trigger alert if required. If this field is left blank then the risk limit is removed from the trading member

CdUpdateCashAccountReq

Category: ReferenceData

Message Functionality

Request to update a Cash Account. The cash account is identified by either (1) the internalCashAccountId, or (2) the combination of participantUnitId and currency.

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
CashAccount | [1..1] | Component | The cash account to update

CdUpdateRtcMemberClientReq

Category: ExternalMembers

Message Functionality

Request to update a Client

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
clientId | [1..1] | String | The client id
clientName | [1..1] | String | The member name
address | [1..1] | String | The address
phone | [1..1] | String | The phone
email | [1..1] | String | The email address
vatRegNumber | [0..1] | String | VAT registration number
isStaff | [1..1] | Boolean | Is Staff, true or false
isBeneficial | [1..1] | Boolean | Is Beneficial, true or false
bdaCode | [0..1] | Integer | Broker Deal Account number
country | [1..1] | String | Country Code
strateCode | [0..1] | String | Code of client or member at CSD.
companyRegistrationNumber | [0..1] | String | Company registration number. company clients.
isProfessional | [0..1] | Boolean | Information to surveillance.
isShariah | [0..1] | Boolean | Information to surveillance.
isDiscretionary | [1..1] | Boolean | Is Discretionary, true or false
nominatedMember | [0..1] | String | The member id of the nominated member.
preferredCcy | [0..1] | String | Currency used for start of day collateral process.
idNumber | [0..1] | Long | ID number. Required for local individual clients.
clientType | [1..1] | CodeSet | Type of client. Information to surveillance.
passportNumber | [0..1] | String | Passport number. Required for clients.
isNonResident | [1..1] | boolean | Indication of the Client is resident of South Africa or not. If Country Code is ZA, the Client must be Resident. If Country Code is not ZA, the Client must be Non Resident, for the From Trade.

ChangePasswordReq

Category: General

Message Functionality

A request to change the current password. The user does not have to be logged in order to change the password.

Structure

Name | Mult. | Type | Description
possDup | [0..1] | boolean | The possible duplicate flag
memberId | [0..1] | String | The id of the user's member (firm). Required because usernames are only unique within a member firm.
userId | [0..1] | String | The identification of the user (username).
oldPassword | [0..1] | String | The user's old password, used for authentication.
newPassword | [0..1] | String | The new password to be set.

ClassSpreadGroup

Category: ReferenceData

Message Functionality

Class Spread Group.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

csgId
[1..1]
String
Uniquely identifies each Class Spread Group.

ssgId
[0..1]
Integer
The ID of the SSG that the CSG belongs to, if any.

ssmr
[0..1]
Long
The SSMR for the CSG within the SSG. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

ClearingMemberLink

Category: ReferenceData

Message Functionality

This object defines a link from Trading Member to Clearing Member.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

clearingMemberLinkId
[1..1]
Long
The id for the Clearing Member Link.

participantUnitId
[1..1]
String
Specifies the parent Participant Unit.

tradingMemberId
[1..1]
String
The Trading Member ID.

clearingMemberId
[1..1]
String
The Clearing Member ID.

marketId
[1..1]
String
The Market ID.

effectiveDate
[1..1]
String
The effective date from which the link shall be used for capture of incoming trades. The format is yyyy-mm-dd.

CmBalancing1Event

Category: ExternalMembers

Message Functionality

Account balancing 1 message to the Clearing Member.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroup | [0..1] | int | The id of the subscriptionGroup the message is published on.
clearingMember | [0..1] | String | Clearing Member ID.
businessDate | [0..1] | String | Business date which have generated the various payments. Note it is not the actual payment date, which happens at the business day after. The format is yyyy-MM-dd.
settlementDate | [0..1] | String | Date when the payment is due. The format is yyyy-MM-dd.
MemberBalance1 | [0..1] | Component | List of balances for the clearing member or trading member. The totals for all TMs clearing through the CM are available under the CM ID.

CmBalancing2Event

Category: ExternalMembers

Message Functionality

Account balancing 2 message to CM.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroup | [0..1] | int | The id of the subscriptionGroup the message is published on.
clearingMember | [0..1] | String | Clearing Member ID.
businessDate | [0..1] | String | Business date which have generated the various payments. Note it is not the actual payment date, which happens at the business day after. The format is yyyy-MM-dd.
settlementDate | [0..1] | String | Date when the payment is due. The format is yyyy-MM-dd.
InterestRates | [0..1] | Component | Interest rates used for the day for interest on cash collateral calculations.
MemberBalance2 | [0..1] | Component | List of balances for the clearing member or trading member. The totals for all TMs clearing through the CM are available under the CM ID.

CollateralAccount

Category: ReferenceData

Message Functionality

Represents a collateral account.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

accountId
[1..1]
Long
The id of the collateral account.

riskNodeId
[1..1]
Long
Specifies the parent risk calculation node.

isDisabled
[0..1]
Boolean
If set to true, this object has been disabled.

accessGroup
[0..1]
String
The access group for the Collateral Account.

accountName
[1..1]
String
The name for the Collateral Account.

clearingMemberId
[1..1]
String
The clearing member for the Collateral Account.

participantUnitId
[1..1]
String
The owner of the account in the member structure.

CommissionEvent

Category: Event

Message Functionality

Commission to be paid by destination TM to initiating TM.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroup | [0..1] | int | The id of subscription group the message is published on.
commissionId | [1..1] | String | The commission id.
market | [1..1] | String | Market.
initiatingCM | [1..1] | String | CM that is associated with the initiating TM and will receive the payment.
initiatingTM | [1..1] | String | TM that sent the commission.
destinationCM | [1..1] | String | CM that will handle the payment.
destinationTM | [1..1] | String | TM that will carry the payment.
clientReference | [0..1] | String | Payer of the commission. Refer to EMAPI Clearing document, Commission Management section for guidance on the population of this field based on the various trade and deal management scenarios.
commissionReference | [0..1] | String | Identifier of trade or deal associated with the commission. Refer to EMAPI Clearing document, Commission Management section for guidance on the
amount | [1..1] | Long | Amount to debit the destination TM. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.
status | [1..1] | int | The status of the commission.
enteredTimestamp | [1..1] | String | The timestamp when the commission first was entered.
cancelledTimestamp | [0..1] | String | The timestamp when the commission was either cancelled or rejected.
cancellationReference | [0..1] | String | Optional reference that can be supplied at cancellation or rejection requests.
acceptedTimestamp | [0..1] | String | The timestamp when the pending commission was accepted.
initiatingExternalAccountId | [0..1] | String | External ID of the initiator's sub account that is affected by the commission.
destinationExternalAccountId | [0..1] | String | External ID of the destination sub account that is affected by the commission.
secondaryFirmReference | [0..1] | String | Additional reference to the destination member. The recipient of the commission. Can be used to reference trading desk.
commissionVatType | [1..1] | CodeSet | VAT amount for commission.

ConfirmWithdrawalsReq

Category: Settlement

Message Functionality

Used for a Clearing Member to confirm or reject payment advices.

Structure

Name | Mult. | Type | Description
confirmed | [1..1] | Boolean | True if the Payment Advice was confirmeded by the CM, false if it was rejected by the CM.
Withdrawals | [1..1] | Component | List of withdrawals that are confirmed or rejected by CM.

CorporateAction

Category: ReferenceData

Message Functionality

A Corporate Action task definition.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null

corporateActionId
[1..1]
String
Id of the Corporate Action. CA Serial no in MDS.

corporateActionType
[1..1]
String
Type of the Corporate Action. One of CI,CM,CO,CP,CR,CV,IS,NC,RT,SC,SD,TE,UB. Note that the CA type is only used for information purpose in RTC and is not validated.

positionFactor
[0..1]
Long
Factor to use to adjust positions. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

fromInstrument
[1..1]
String
Master ID of the TI on which the CA is taking place. The positions on this TI will be closed.

toInstrument
[0..1]
String
Master ID of the new TI for the new position. New positions will be created on this TI. If missing, settlement positions will be created instead.

effectiveDate
[1..1]
String
Corporate actions are applied at EOD on the last business day before the effective date. Format is YYYY-MM-DD.

ldtDate
[0..1]
String
Last Day Traded. Format is YYYY-MM-DD.

price
[0..1]
BigInteger
Price to use when positions should be closed out. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

status
[0..1]
int
to know the status of the corporate action.

statusText
[0..1]
String
to know the status of the corporate action.

statusTimestamp
[0..1]
String
Update timestamp, set by RTC.

CorrectAllocationErrorReq

Category: TradeManagement

Message Functionality

To correct when a trade has erroneously been allocated to wrong client, i.e. to move the trade from one client to another.

Structure

Name | Mult. | Type | Description
tradeId | [1..1] | long | Trade id.
fromAccountId | [1..1] | Long | The current account for the Trade.
reference | [0..1] | String | An optional free text field.
toAccountId | [1..1] | long | The new account for the Trade.
moveId | [0..1] | Long | Must be unique for the referenced trade. Used to prevent duplicate move trade requests.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
tradingUserId | [1..1] | String | The trading user id.

CorrectAllocationErrorRsp

Category: TradeManagement

Message Functionality

Response to the AllocateTradeReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
tradeIds | [0..1] | Long | The IDs of the trades that were created as part of this move trade operation.
transactionId | [0..1] | long | The ID of the transaction that updated the positions affected by this move trade operation.

CorrectPrincipalReq

Category: TradeManagement

Message Functionality

To move a trade from a client account to a member main or sub account.

Structure

Name | Mult. | Type | Description
tradeId | [1..1] | long | Trade id.
fromAccountId | [1..1] | Long | The current account for the Trade.
reference | [0..1] | String | An optional free text field.
toAccountId | [1..1] | long | The new account for the Trade.
moveId | [0..1] | Long | Must be unique for the referenced trade. Used to prevent duplicate move trade requests.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
tradingUserId | [1..1] | String | The trading user id.

CorrectPrincipalRsp

Category: TradeManagement

Message Functionality

Response to the CorrectPrincipalReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
tradeIds | [0..1] | Long | The IDs of the trades that were created as part of this move trade operation.
transactionId | [0..1] | long | The ID of the transaction that updated the positions affected by this move trade operation.

Country

Category: ReferenceData

Message Functionality

Holds basic information on a country, such as currency, time zone and holidays.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

countryId
[1..1]
String
The id (country code) of the Country. Use ISO 3166 ISO 2- alpha codes.

name
[1..1]
String
The name of the Country

currency
[1..1]
String
The currency code according to ISO 4217.

timezoneOffset
[1..1]
Integer
Timezone offset from UTC/GMT in minutes (positive value for countries east of Greenwich)

Currency

Category: ReferenceData

Message Functionality

This object represent a Currency.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

currencyId
[1..1]
String
The standard currency id according to ISO 4217. SEK, USD, GPB etc

longName
[0..1]
String
The full name of the currency. Example: South African Rand

currencyCode
[1..1]
long
ISO Currency Numeric Code, for example 710 for ZAR.

notionalValueDecimals
[1..1]
Integer
Number of decimals used for notional in the currency. Only allowed to be set to 2.

calendarId
[1..1]
String
ID of the calendar to be used for finding settlement days

CurrentSystemState

Category: ReferenceData

Message Functionality

This object holds a RTC System State.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

currentSystemStateId
[1..1]
Integer
The id, will only exist one record since only one state can be current.

currentRtcState
[1..1]
CodeSet
Current state in RTC.

businessDate
[0..1]
String
The business the state is set, in format YYYY-MM-DD.

schedulerState
[1..1]
CodeSet
Current scheduler state in RTC.

rerunReason
[0..1]
String
Reason for rerunning End of Day, only set when scheduler state is RERUN.

Curve

Category: ReferenceData

Message Functionality

A curve, y axis dependent on x axis, y = f(x).

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

curveId
[0..1]
Long
The internal curve Id for RTC.

externalCurveId
[1..1]
String
The external curve Id received from Master reference data system.

curveName
[1..1]
String
User friendly name of the curve.

strippedInRtc
[1..1]
Boolean
If true, RTC is responsible to prepare the curve.

priceFormat
[1..1]
int
Number of decimals used.

bootStrappingMethod
[1..1]
BootStrappingMethodCodeSet
BootStrapping method.

dayCountConvention
[1..1]
CodeSet
Day count convention.

interpolationMethod
[1..1]
CodeSet
Interpolation method.

extrapolationMethod
[1..1]
CodeSet
Extrapolation method.

axisUnitX
[1..1]
CodeSet
xAxis unit.

axisUnitY
[1..1]
CodeSet
yAxis unit.

pePartitionId
[0..1]
Integer
Partition ID for the instrument in the RTC Price Engine. Not required, 1 will be used if the field is blank.

interestRateConvention
[1..1]
CodeSet
Interest rate convention for the interest rate produced.

CurveConstituent

Category: ReferenceData

Message Functionality

Instruments to build the curve.

Structure

Name | Mult. | Type | Description
key | [0..1] | String | Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.
cacheId | [0..1] | String | Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
action | [0..1] | CodeSet | Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
stateSequenceNumber | [0..1] | long | A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The
uniqueObjectId | [0..1] | String | The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.
timestamp | [0..1] | String | The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.
curveConstituentId | [0..1] | Long | The internal curve Constituent Id for RTC.
curveId | [0..1] | Long | Specifies the Curve that this CurveConstituent belongs to.
externalInstrumentId | [1..1] | String | Instrument Id (JSE Master ID) for the deposit, FRA or Swap.

CurveEvent

Category: Event

Message Functionality

Market data for a curve. See the Curve reference data object for a definition of the curve.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroupId | [0..1] | int | The id of the subscription group the message is published on.
condType | [0..1] | CodeSet | Price Condition type (tag).
businessDate | [0..1] | String | Business date. Format is YYYY-MM-DD.
curveExternalId | [0..1] | String | The curve external instrument id. This is the JSE Master ID.
feedSource | [0..1] | CodeSet | The source of the curve.
timestamp | [0..1] | String | The time of the market data event. The format is "yyyy-MM- ddTHH:mm:ss.SSS".
absoluteDate | [0..1] | String | The absolute date on the x-axis of the curve. This field is populated if the xAxis unit of the curve is absolute.
dateFractionOfAYear | [0..1] | long | The date on the x-axis represented as fraction of a year using the day time convention on the discount curve. This field is populated if the xAxis unit of the curve is fraction of a year. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.
rate | [0..1] | long | The rate on the y-axis of the curve. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

DailyAccountSummaryDetailsEvent

Category: Event

Message Functionality

Daily account summary for client or members house nodes.

Structure

Name
Mult.
Type
Description

sequenceNumber
[0..1]
long
The sequence number is a unique number for all events published for the same flow.

subscriptionGroup
[0..1]
int
The id of the subscriptionGroup the message is published on.

riskNodeId
[0..1]
Long
The id of the risk node the message is published on.

businessDate
[0..1]
String
Business Date. The format is yyyy- MM-dd.

tag
[0..1]
CodeSet
Price Tag.

clearingMemberId
[0..1]
String
Clearing Member Id.

tradingMemberId
[0..1]
String
Trading Member Id.

clientId
[0..1]
String
Client Id.

strateCode
[0..1]
String
Strate Code.

collateralAccountId
[0..1]
Long
Collateral Account Id.

minimumCashLimit
[0..1]
Long
Percentage of initial margin that must be covered with cash collateral. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

initialMargin
[0..1]
Long
Initial Margin. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

additionalMargin
[0..1]
Long
Additional Margin.

requestedSecuritiesAmount
[0..1]
Long
Value request from Strate. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

receivedSecuritiesAmount
[0..1]
Long
Received value from strate, before haircut. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

registeredSecuritiesAmount
[0..1]
Long
Market Value of the positions in security collateral in ZAR (market value of the security collateral position).This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

registeredCashAmount
[0..1]
Long
Registered Cash Amount. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

securitiesAmountCF
[0..1]
Long
Current securities amount, after haircut. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

securitiesAmountBF
[0..1]
Long
Previous securities amount, after haircut. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

cashAmountCF
[0..1]
Long
Current cash collateral amount (for ZAR), after haircut. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

cashAmountBF
[0..1]
Long
Previous cash collateral amount (for ZAR), after haircut. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

state
[0..1]
CodeSet
State. Valid values are: REGISTERED, COLLATERAL_CALCULATED, COLLATERAL_SEC_REGISTERED, COLLATERAL_SEC_STEPOVER, COLLATERAL_FX_REGISTERED, COLLATERAL_FX_STEPOVER, COLLATERAL_CASH_SETTLED, CLIENT_PAYMENTS,REBALANCI NG.

executionStatus
[0..1]
executionStatusCodeSet
Status of execution. Valid values are: SUCCESS, ERROR, OVERRIDE, VALIDATION_FAILED, VALIDATION_WARNING,

statusText
[0..1]
String
Status Text. Description of validation errors.

variationMargin
[0..1]
Long
Variation Margin.A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

fundingInterestAmount
[0..1]
Long
Funding Interest amount. A Positive value means the money being paid by the Client to the CH and A Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

dividendAmount
[0..1]
Long
Dividend amount. A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

settlementDate
[0..1]
String
Settlement Date. The format is yyyy- MM-dd.

previousInitialMargin
[0..1]
Long
Previous Business Day Initial Margin. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

interestAmountOnCashCollateral
[0..1]
Long
Interest amount earned on cash collateral for ZAR. A Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

interestRateOnCashCollateral
[0..1]
Long
Interest rate on cash collateral for ZAR. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.INTEREST.

FxDailyAccountSummaryDetails
[0..1]
Component
The daily account summary details for FX currencies.

previousAdditionalMargin
[0..1]
Long
Previous Business Day Additional Margin. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

fxCashAmountCF
[0..1]
Long
Current cash collateral amount for FX currency (in ZAR), after haircut. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

fxCashAmountBF
[0..1]
Long
Previous cash collateral amount for FX currency (in ZAR), after haircut. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

netAmount
[0..1]
Long
Net amount from other systems. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

securitiesAmountMovement
[0..1]
Long
Securities amount movement. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

cashAmountMovement
[0..1]
Long
Cash collateral amount (for ZAR) movement. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

fxCashAmountMovement
[0..1]
Long
Cash collateral amount movement for FX currency (in ZAR) This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalZarCashMovement
[0..1]
Long
Sum of all ZAR movements: Cash Collateral Movement + VM + Booking fees incl. VAT + Risk fees incl. VAT + Commissions + Funding interest + Dividend payment + Interest amount on Cash Collateral. A Positive value means the money being paid by the Client to the CH and a Negative value

timestamp
[0..1]
String
The time of the event. The format is yyyy-MM-ddTHH:mm:ss.SSS.

commission
[0..1]
Long
Sum of all commissions with status New. A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

bookingFeeAmount
[0..1]
Long
Booking fee amount excluding VAT. A Positive value means the money being paid by the Client to the CH This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

bookingFeeVatAmount
[0..1]
Long
VAT for booking fee This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

riskFeeAmount
[0..1]
Long
Fee in respect of initial margin covered with non-cash collateral excluding VAT. A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

riskFeeVatAmount
[0..1]
Long
VAT for fee in respect of initial margin covered with non-cash collateral. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

clearingFeeAmount
[0..1]
Long
Clearing fee amount excluding VAT. A Positive value means the money being paid by the Client to the CH This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

clearingFeeVatAmount
[0..1]
Long
VAT for clearing fee

reserved1
[0..1]
Long
Reserved1. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

reserved2
[0..1]
Long
Reserved2. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

Deposit

Category: ReferenceData

Message Functionality

Deposit instrument. Used as curve constituents.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

depositId
[0..1]
Long
The internal Deposit ID for RTC.

externalDepositId
[1..1]
String
The external Deposit Id received from Master reference data system.

depositName
[1..1]
String
User friendly name of the Deposit.

dayCountConvention
[1..1]
CodeSet
Day count convention.

compoundingConvention
[1..1]
CodeSet
Compounding convention.

rtcCalendarId
[1..1]
String
Calendar used for holidays.

businessDayConvention
[1..1]
CodeSet
Day count convention.

tenorPeriodType
[1..1]
CodeSet
Period type for tenor. For instance M in 3M.

tenorPeriod
[1..1]
int
Tenor period. For instance 3 in 3M.

rollsOn
[1..1]
CodeSet
Rolls on convention.

pePartitionId
[0..1]
Integer
Partition ID for the instrument in the RTC Price Engine. Not required, 1 will be used if the field is blank.

DividendEvent

Category: Event

Message Functionality

Dividend information for a tradable instrument. The instrument is a spot used as underlying for futures. The dividends are used in the future valuation.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroupId | [0..1] | int | The id of the subscription group the message is published on.
condType | [0..1] | CodeSet | Price Condition type (tag).
businessDate | [0..1] | String | Business date. Format is YYYY-MM-DD.
instrumentExternalId | [0..1] | String | The external instrument id. This is the JSE Master ID.
feedSource | [0..1] | CodeSet | The source of the price.
timestamp | [0..1] | String | The time of the market data event. The format is "yyyy-MM- ddTHH:mm:ss.SSS".
exDate | [0..1] | String | The date on or after which a security is traded without rights to a previously declare dividend.
paymentDate | [0..1] | String | The date on which a declared stock dividend is scheduled to be paid.
dividend | [0..1] | long | The dividend value. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

EligibleCurrency

Category: ReferenceData

Message Functionality

Currency eligible for FX collateral.

Structure

Name | Mult. | Type | Description
key | [0..1] | String | Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.
cacheId | [0..1] | String | Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
action | [0..1] | CodeSet | Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
stateSequenceNumber | [0..1] | long | A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly
uniqueObjectId | [0..1] | String | The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.
timestamp | [0..1] | String | The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.
instrumentMasterId | [1..1] | String | External instrument master ID for the currency pair.
priceCCY | [1..1] | String | The second currency in the currency pair. Normally ZAR.
baseCCY | [1..1] | String | The first currency in the currency pair, i.e. normal the collateral currency (when using EUR, GBP and USD).
haircut | [1..1] | Long | Haircut percent on the exchange rate. Support for four decimals. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
maxAmount | [1..1] | Long | Maximum allowed amount for the currency allowed as collateral. The amount is defined in ZAR before the haircut is applied.
prio | [0..1] | Integer | When a client has several Nostro accounts (cash accounts in foreign CCY) and there is a doubt which currency to use, they are used in prio order. FX collateral with the highest priority is used first. The lowest number has got the highest priority. Must be unique.

EligibleSecurity

Category: ReferenceData

Message Functionality

Security instrument eligible for collateral.

Structure

Name | Mult. | Type | Description
key | [0..1] | String | Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.
cacheId | [0..1] | String | Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
action | [0..1] | CodeSet | Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
stateSequenceNumber | [0..1] | long | A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence
uniqueObjectId | [0..1] | String | The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.
timestamp | [0..1] | String | The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.
instrumentMasterId | [1..1] | String | External instrument master ID.
isin | [1..1] | String | ISIN of the instrument.
alphaCode | [1..1] | String | Alpha Code of the instrument.
haircut | [1..1] | Long | Percentage that is subtracted from the portfolio value of an asset that is being used as collateral. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
maxAmount | [1..1] | Long | Maximum allowed value allowed to pledge as collateral for this ISIN per risk node and before haircut is applied.

ExerciseOptionPositionReq

Category: TradeManagement

Message Functionality

Exercise an option position. For American style options, this is allowed at any time during the contract’s lifetime. For European style options, this can only be done on the expiry day.

Structure

Name | Mult. | Type | Description
accountId | [1..1] | Long | The account of the position.
quantity | [1..1] | long | The exercise quantity. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
updateId | [1..1] | String | Unique id that should be set for the request. If the system has already processed an update with this id, a success message is returned without any position change.

ExerciseOptionPositionRsp

Category: TradeManagement

Message Functionality

Response to the ExerciseOptionPositionReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
tradeIds | [0..1] | Long | The IDs of the trades that were created as part of this exercise of an option position.
transactionId | [0..1] | long | The ID of the transaction that updated the positions affected by this exercise of an option position.

ForwardRateAgreement

Category: ReferenceData

Message Functionality

A Forward Rate Agreement instrument.

Structure

Name | Mult. | Type | Description
key | [0..1] | String | Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.
cacheId | [0..1] | String | Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
action | [0..1] | CodeSet | Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
stateSequenceNumber | [0..1] | long | A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing).
uniqueObjectId | [0..1] | String | The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.
timestamp | [0..1] | String | The date and time of the latest modification for this reference data object. Format: yyyy-mm- ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.
forwardRateAgreementId | [0..1] | Long | The internal FRA Id for RTC.
externalForwardRateAgreementId | [1..1] | String | The external FRA Id received from Master reference data system.
forwardRateAgreementName | [1..1] | String | User friendly name of the FRA.
dayCountConvention | [1..1] | CodeSet | Day count convention.
compoundingConvention | [1..1] | CodeSet | Compounding convention.
rtcCalendarId | [1..1] | String | Calendar used for holidays.
businessDayConvention | [1..1] | CodeSet | Day count convention.
rollsOn | [1..1] | CodeSet | Rolls on convention.
tenorPeriodType | [1..1] | CodeSet | Tenor period type. Example M in 3M.
tenorPeriod | [1..1] | int | Tenor length. Example 3 in 3M.
resetLagPeriodType | [1..1] | CodeSet | Reset lag.
resetLagPeriod | [1..1] | int | Reset lag.
pePartitionId | [0..1] | Integer | Partition ID for the instrument in the RTC Price Engine. Not required, 1 will be used if the field is blank.

GetPaymentAdvicesReq

Category: Settlement

Message Functionality

Get payment advices for a particular clearing member.

Structure

Name | Mult. | Type | Description
bookmark | [0..1] | String | The bookmark marks a specific item in a list of data. The bookmark received in the response should be used in next request to get next page of information.
clearingMember | [0..1] | String | The clearing member ID.
settlementDate | [0..1] | String | The settlement date. The format is yyyy-MM-dd.
pageSize | [0..1] | Integer | The preferred page size, this means max number of items in the response. If not set, the default pagesize is used.

GetPaymentAdvicesRsp

Category: Settlement

Message Functionality

Response to the GetPaymentAdvicesReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
bookmark | [0..1] | String | The bookmark marks a specific item in a list of data on the server. The bookmark received in the response should be used in next request to get next page of information.
PaymentAdvices | [0..1] | Component | The payment advices.

GetRequestsForFXCollateralReq

Category: ExternalMembers

Message Functionality

Request for the clearing member to get the information about the amounts per client/house that can be covered qith FX collateral. Next step is for the clearing member to send in a confirmation with the different amounts in FX with RegisterFXCollateralReq.

Structure

Name | Mult. | Type | Description
valueDate | [1..1] | String | The requested value date.
clearingMemberId | [0..1] | String | Request FX Collateral for a CM.
bookmark | [0..1] | String | The bookmark from a paged response.

GetRequestsForFXCollateralRsp

Category: ExternalMembers

Message Functionality

Response to GetRequestsForFXCollateralReq request. Includes values in ZAR that could be covered with FX, per client/house.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
FxRequests | [0..1] | Component | The requests for FX Collateral.
bookmark | [0..1] | String | Bookmark to use in query for next batch.

GetRiskArrayReq

Category: ExternalMembers

Message Functionality

Query JSPAN risk arrays available in the system.

Structure

Name | Mult. | Type | Description
allInstruments | [0..1] | boolean | If true, the values in externalInstrumentIds will be ignored. Risk arrays will be returned for all instruments with risk arrays, but startInstrumentOffset and maxNumberOfInstrumentsReturned are used for paging the response.
externalInstrumentIds | [0..1] | String | List of instruments for which risk array will be retrieved. JSE Master IDs.
startInstrumentOffset | [1..1] | Integer | Offset of first instrument to include. Starts on zero. This field is used to page the response to avoid overflow.
maxNumberOfInstrumentsReturned | [1..1] | Integer | Maximum number of rows in response. Must be 500 or smaller. This field is used to page the response to avoid overflow.

GetRiskArrayRsp

Category: ExternalMembers

Message Functionality

Response to a GetRiskArrayReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
Contracts | [0..1] | Component | Risk arrays for all contracts.

GetSequenceNumbersReq

Category: General

Message Functionality

Get sequence numbers for broadcast flows.

Structure

Name | Mult. | Type | Description
broadcastFlowId | [0..1] | int | Broadcast Flow requested.
subscriptionGroupId | [0..1] | int | Request sequence number for this subscription group.

GetSequenceNumbersRsp

Category: General

Message Functionality

Response to a GetSequenceNumbersReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
sequenceNumber | [0..1] | long | Latest sequence number for the requested broadcast flow and subscription group.
broadcastFlowId | [0..1] | int | Broadcast Flow.
subscriptionGroupId | [0..1] | int | Subscription group.

GetSettlementInstructionsReq

Category: Settlement

Message Functionality

Request to get settlement instructions.

Structure

Name | Mult. | Type | Description
clearingMember | [0..1] | String | The requested clearing member ID.
settlementDate | [1..1] | String | The requested settlement date. The format is yyyy-MM- dd.
settlementRunId | [0..1] | Long | Settlement run id.
settlementInstructionState | [0..1] | CodeSet | Instruction state.
bookmark | [0..1] | String | The bookmark marks a specific item in a list of data. The bookmark received in the response should be used in next request to get next page of information.

GetSettlementInstructionsRsp

Category: Settlement

Message Functionality

Response to GetSettlementInstructionsReq.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
Instructions | [0..1] | Component | Settlement instructions.
bookmark | [0..1] | String | The bookmark marks a specific item in a list of data on the server. The bookmark received in the response should be used in next request to get next page of information.

GiveUpEvent

Category: ExternalMembers

Message Functionality

This event is for Assign and Tripartite flow from RTC.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
fourEyesId | [0..1] | long | The ID of the Assign or Tripartite.
initiator | [0..1] | String | The initiator of the request.
state | [0..1] | CodeSet | The current state of the operation.
tradeId | [0..1] | long | Trade id.
fromAccountId | [0..1] | Long | The current account for the Trade.
quantity | [0..1] | long | The trade quantity. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
reference | [0..1] | String | An optional free text field.
acknowledger | [0..1] | String | The destination member Id.
timeInitiated | [0..1] | String | Time the action was initiated
timeComplete | [0..1] | String | Time the action was completed
timeCancelled | [0..1] | String | Time the action was cancelled
client | [0..1] | String | The destination client Id. Applicable for tripartite allocation only
subscriptionGroup | [0..1] | int | The id of the subscription group the message is published on.
price | [0..1] | BigInteger | The trade price. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
isBuy | [0..1] | boolean | True if this trade is a buy trade, false if it is a sell trade.
commissionAmount | [0..1] | Long | A sight of the commission amount before the actual commission is submitted. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

Instrument

Category: ReferenceData

Message Functionality

The Instrument holds basic background information, such as instrument id, type and (optionally) primary market for an instrument. Since an instrument can be traded in different currencies and visibility (normal, dark etc), the instrument has a set of child objects called TradableInstrument in which the actual trading takes place. An Instrument may reference another Instrument using the ""parentInternalId"" attribute. The parentInternalId is typically used by warrants or options to reference the underlying instrument.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

internalId
[0..1]
String
A unique instrument identifier. May be an ISIN, CUSIP or symbol name. The InternalID is created using the InstrumentID and InstrumentIdType fields. Example: SE0000108656_ISIN

parentInternalId
[0..1]
String
This is a reference to the parent instrument, if any. A parent instrument is typically an underlying instrument when trading derivatives. Shall be set to null if this instrument is a "root" instrument.

isEnabled
[0..1]
Boolean
The state of this item.

disabledCount
[0..1]
Integer
Not used in this configuration of RTC.

instrumentId
[1..1]
String
The global identity of the instrument. The type of identifier (ISIN, CUSIP etc) is defined by the instrumentIdType attribute.

instrumentIdType
[1..1]
CodeSet
The type of the InstrumentId (ISIN, CUSIP etc)

prevInstrumentId
[0..1]
String
Not used in this configuration of RTC.

prevInstrumentIdType
[0..1]
CodeSet
Not used in this configuration of RTC.

type
[1..1]
CodeSet
The type of instrument (equity, warrant, future etc).

shortName
[1..1]
String
The short display name for the instrument, ERICB for example.

name
[1..1]
String
The complete instrument name, Ericsson B for example.

issuer
[0..1]
String
The issuer of the instrument

sector
[0..1]
String
The financial sector to which the instrument belong

primaryMarketId
[0..1]
String
A unique id that defines market/market that is to be considered primary for the instrument, XLON, XSSE for example.)

adt
[0..1]
Long
Not used in this configuration of RTC. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

adtCurrency
[0..1]
String
Not used in this configuration of RTC.

validFromDate
[1..1]
String
The first date the instrument is valid. The format is yyyy-MM-dd.

validToDate
[0..1]
String
The last date the instrument is valid. The format is yyyy-MM-dd.

listOfAliases
[0..1]
String
A list of other markets'/exchanges' ID of this instrument in the format: market1:id1,market2:id2,..

pmPartitionId
[0..1]
Integer
The instrument partition for the Position Manager server.

rtcInternalId
[0..1]
Long
The RTC internal ID for the underlying product.

InterestRateSwap

Category: ReferenceData

Message Functionality

A Interest rate swap instrument.

Structure

Name | Mult. | Type | Description
key | [0..1] | String | Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.
cacheId | [0..1] | String | Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
action | [0..1] | CodeSet | Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.
stateSequenceNumber | [0..1] | long | A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the
uniqueObjectId | [0..1] | String | The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.
timestamp | [0..1] | String | The date and time of the latest modification for this reference data object. Format: yyyy-mm- ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.
interestRateSwapId | [0..1] | Long | The internal IRS Id for RTC.
externalInterestRateSwapId | [1..1] | String | The external IRS Id received from Master reference data system.
interestRateSwapName | [1..1] | String | User friendly name of the IRS.
rollsOn | [1..1] | CodeSet | Rolls on convention.
dayCountConvention | [1..1] | CodeSet | Day count convention.
compoundingConvention | [1..1] | CodeSet | Compounding convention.
rtcCalendarId | [1..1] | String | Calendar used for holidays.
businessDayConvention | [1..1] | CodeSet | Day count convention.
tenorPeriodType | [1..1] | CodeSet | Tenor period type. Example M in 3M.
tenorPeriod | [1..1] | int | Tenor length. Example 3 in 3M.
resetLagPeriodType | [1..1] | CodeSet | Reset lag period. Example M in 3M.
resetLagPeriod | [1..1] | int | Reset lag length. Example 3 in 3M.
pePartitionId | [0..1] | Integer | Partition ID for the instrument in the RTC Price Engine. Not required, 1 will be used if the field is blank.

Market

Category: ReferenceData

Message Functionality

Defines a market.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm- ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

marketId
[1..1]
String
A system-unique identifier of the Market. May only contain characters a-z, A-Z, 0-9, "_", "-", "+" and ".".

isEnabled
[0..1]
Boolean
The state of this item.

disabledCount
[0..1]
Integer
A count of how many times this element has been enabled/disabled. An element will not be enabled until disabledCount is zero.

name
[1..1]
String
The name of the Market.

countryCode
[1..1]
String
The country code for this market.

wwwPage
[0..1]
String
A reference to a market specific internet site.

validFromDate
[0..1]
String
The first date the market is valid. The format is yyyy-MM-dd.

lookbackPeriod
[1..1]
Long
JSPAN attribute. The lookback period used to get historical prices. For example, 90 to use the last 90 days prices. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

volatilityLookbackPeriod
[1..1]
Long
JSPAN attribute. The volatility lookback period used when calculating volatilities.

maxScaleUp
[1..1]
Long
JSPAN attribute. The maximum amount volatility may be scaled up. This should be a number between 1 and 2. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

maxScaleDown
[1..1]
Long
JSPAN attribute. The maximum amount volatility may be scaled down. This should be a number between 0 and 1. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

confidencePercentile
[1..1]
Long
JSPAN attribute. A percentile stored as a decimal, e.g. 0.975 for 97.5%. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

imrStatisticsPeriod
[1..1]
Long
Number of days to compare price and volatility move for. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

manualExerciseEndTime
[1..1]
String
The end time for option exercise on the expiration date. Must be in the format HH:MM:SS.

optionAllocationModelType
[1..1]
CodeSet
Allocation model for options, eg Pro-rata or Random.

dailyMaximumParticipationFactor
[1..1]
Long
Daily Maximum Participation Factor for Liquidation Period add-on. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

nonTradingDaysBeforeDefault
[1..1]
Long
Used in the Liquidation Period Add-on calculation. Number of days it will take the JSE to confirm default before it starts to close out positions. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

volRounding
[1..1]
Integer
Number of decimals for volatility calculated by RTC.

MarketList

Category: ReferenceData

Message Functionality

The MarketList is a child object of a Market. The purpose of the MarketList is mainly to organize the different instruments on a market into separate lists. The actual interpretation of the MarketList is customer specific. Operations such as halt and enable/disable performed on a MarketList will affect all Segments and TradableInstruments within the MarketList.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

internalMarketListId
[0..1]
String
The internal (unique) id of the MarketList. Set by RTC.

isEnabled
[0..1]
Boolean
The state of this item.

disabledCount
[0..1]
Integer
A count of how many times this element has been enabled/disabled. An element will not be enabled until disabledCount is zero.

marketListId
[1..1]
String
The display id of the MarketList. Must be unique within the Market. May only contain characters: a-z, A-Z, 0-9, "_", "-", "+" and ".".

name
[1..1]
String
This is the name of this Market

parentInternalId
[1..1]
String
The parent market id (EMAPI).

validFromDate
[0..1]
String
The first date the market list is valid. The format is yyyy-MM- dd.

Member

Category: ReferenceData

Message Functionality

This object represents a member firm and holds all basic member data such as id, full name, mail addresses and contact persons etc.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm- ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

memberId
[1..1]
String
The public ID of the participant. This id has to be unique.

fullName
[1..1]
String
Complete name of the member firm

address
[0..1]
String
Company postal address.

phone
[0..1]
String
Company phone number.

fax
[0..1]
String
Company fax address.

complianceContact
[0..1]
String
Name of contact person in compliance matters

complianceContactPhone
[0..1]
String
Phone number to the compliance contact person

complianceContactMail
[0..1]
String
Mail address to the compliance contact person

matchingContact
[0..1]
String
Matching/BackOffice contact person

matchingContactPhone
[0..1]
String
Phone number to the Matching/BackOffice contact person

matchingContactMail
[0..1]
String
Mail address to Matching/BackOffice contact person

isDisabled
[0..1]
Boolean
Set to true if this member has been disabled.

associatedMemberId
[0..1]
String
The parent member, for example the parent of a trading member branch or a client.

memberType
[0..1]
CodeSet
The type of member. N.B. in the documentation member type is also known as Participant type.

validFromDate
[0..1]
String
The date from which the member is valid. The format is yyyy-MM-dd

listOfAliases
[0..1]
String
A list of other markets'/exchanges' ID of this member in the format: market1:memberid1,market2:memberid2,.. "maket1" is assumed to be a market defined in the "local" system and is automatically converted to uppercase, since this is the conversion for market ids in the system.

allowedOnBehalfOfMemberIdList
[0..1]
String
A comma separated list of Member Ids for which this member may act on behalf of.

participantUnitType
[0..1]
CodeSet
The type of this participant unit.

isStaff
[0..1]
Boolean
Is Staff, true or false

isBeneficial
[0..1]
Boolean
Is Beneficial, true or false

allowClientSubAccounts
[0..1]
Boolean
Sub accounts are allowed, true or false

vatRegNumber
[0..1]
String
VAT registration number

bdaCode
[0..1]
Integer
Broker Deal Account number

email
[0..1]
String
Email

country
[0..1]
String
Country Code, e.g. ZA

isNonResident
[0..1]
boolean
Is Non Resident is true if country for the client is not equal to ZA

nominatedMember
[0..1]
String
MemberId of the nominated member, fulfilling physical settlement when the actual member is not in the Equities market. Otherwise, set to the member itself.

strateCode
[0..1]
String
Code of client or member at CSD.

externalPayment
[0..1]
Boolean
If RTC should expect net payment from the JSE integration layer for this member. Required for clearing members.

ownTM
[0..1]
String
This is set for clearing members only, to indicate its own trading member.

allowFxCollateral
[0..1]
Boolean
This field is mandatory for CMs. If true, RTC will expect system-to-system communication on size of FX collateral payments.

allowedMarkets
[0..1]
String
A comma-delimited list of market codes that the client is allowed to have trades and positions in.

waitForCmBalancing
[0..1]
Boolean
This field is mandatory for CMs. If true, RTC will expect the CM to send in a response to a balancing event.

clientType
[0..1]
CodeSet
For clients only - type of client. Information to surveillance. Required for all clients.

idNumber
[0..1]
Long
For clients only - ID number. Required for local individual clients: Client Type = Individual AND isNonResident = FALSE

passportNumber
[0..1]
String
For clients only - Passport number. Required for foreign individual clients: Client Type = Individual AND isNonResident = TRUE

companyRegistrationNumber
[0..1]
String
For clients only - Company registration number. Required for all company clients: Client Type = Company

isProfessional
[0..1]
Boolean
For clients only - Information to surveillance. Required for all clients.

isShariah
[0..1]
Boolean
For clients only - Information to surveillance. Required for all clients.

isDiscretionary
[0..1]
Boolean
Is Discretionary, true or false

preferredCcy
[0..1]
String
Currency used for start of day collateral processing. Needs to be an eligible FX collateral currency (or ZAR, this will be the default though).

branchMemberNumber
[0..1]
String
For TM branches only. Unique within a TM. Valid number is between 01 and 99.

cmMessageRef
[0..1]
String
For CM only. Mandatory for CM. Number used when creating settlement instructions. This number is concatenated into the message reference no.

ModifyPositionSubAccountReq

Category: TradeManagement

Message Functionality

Request to move a position from a house main/house sub/house suspense/client suspense account to a house main or house sub account, or move a position from branch main/branch sub/branch clients suspense account to a branch main or branch sub account.

Structure

Name | Mult. | Type | Description
fromAccountId | [1..1] | Long | The current account for the position.
quantity | [1..1] | long | The quantity to move. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
reference | [0..1] | String | An optional free text field.
toAccountId | [1..1] | long | The new account for the position.
moveId | [0..1] | Long | Must be unique for the referenced trade. Used to prevent duplicate move requests.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
tradingUserId | [1..1] | String | The trading user id.
price | [0..1] | BigInteger | Optional price to be used for the created trades. If no price, EoD settlement price from the previous business day for the instrument is used. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

ModifyPositionSubAccountRsp

Category: TradeManagement

Message Functionality

Response to the ModifyPositionSubAccountReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
tradeIds | [0..1] | Long | The IDs of the trades that were created as part of this move trade operation.
transactionId | [0..1] | long | The ID of the transaction that updated the positions affected by this move trade operation.

ModifyTradeSubAccountReq

Category: TradeManagement

Message Functionality

To move a trade from house account to other house accounts.

Structure

Name | Mult. | Type | Description
tradeId | [1..1] | long | Trade id.
moveId | [0..1] | Long | Must be unique for the referenced trade. Used to prevent duplicate move trade requests.
fromAccountId | [1..1] | Long | The account to allocate the Trade from
Destinations | [1..1] | Component | One or more destinations for this move operation.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
tradingUserId | [1..1] | String | The trading user id.

ModifyTradeSubAccountRsp

Category: TradeManagement

Message Functionality

Response to the ModifyTradeSubAccountReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
tradeIds | [0..1] | Long | The IDs of the trades that were created as part of this move trade operation.
transactionId | [0..1] | long | The ID of the transaction that updated the positions affected by this move trade operation.

OptionDataEvent

Category: Event

Message Functionality

Valuation information for option.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroupId | [0..1] | int | The id of the subscription group the message is published on.
condType | [0..1] | CodeSet | Price Condition type (tag).
businessDate | [0..1] | String | Business date. Format is YYYY-MM-DD.
externalInstrumentId | [0..1] | String | The external instrument id. This is the JSE Master ID.
price | [0..1] | BigInteger | The option price. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
delta | [0..1] | long | The delta for the option. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
volatility | [0..1] | long | The volatility for the option. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
feedSource | [0..1] | CodeSet | The source of the curve.
timestamp | [0..1] | String | The time of the market data event. The format is "yyyy-MM- ddTHH:mm:ss.SSS".
gamma | [0..1] | long | The gamma for the option. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
vega | [0..1] | long | The vega for the option. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

PositionAccount

Category: ReferenceData

Message Functionality

Position account is used to keep actual clearing positions and settlement positions.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm- ddTHH.MM.SS.sss. May be null if the object never has

positionAccountId
[1..1]
Long
The internal id of the position Account.

externalPositionAccountId
[1..1]
String
The external id of the position account. The maximum lenght is 10 characters. House sub accounts are validated to be a maximum of 9 long.

positionAccountType
[1..1]
CodeSet
The type of this position account.

accessGroup
[1..1]
String
The access group for the Position Account.

clearingMemberId
[1..1]
String
The clearing member for the Position Account.

riskNode
[1..1]
Long
The risk node for the Position Account.

participantUnitId
[0..1]
String
Specifies the parent Participant Unit.

isEnabled
[1..1]
Boolean
The state of this item.

positionAccountSubType
[1..1]
CodeSet
The sub type of this position account.

PriceEvent

Category: Event

Message Functionality

Market data for a tradable instrument.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroupId | [0..1] | int | The id of the subscription group the message is published on.
price | [0..1] | BigInteger | The price.
condType | [0..1] | CodeSet | Price Condition type (tag).
businessDate | [0..1] | String | Business date. Format is YYYY-MM-DD.
externalInstrumentId | [0..1] | String | The external instrument id. This is the JSE Master ID.
feedSource | [0..1] | CodeSet | The source of the curve.
timestamp | [0..1] | String | The time of the market data event. The format is "yyyy-MM- ddTHH:mm:ss.SSS".

QueryDividendPaymentFactorsReq

Category: ExternalMembers

Message Functionality

Query the factors used in the calculation of dividend payments.

Structure

Name | Mult. | Type | Description
exDate | [1..1] | String | The ex-date to get dividend payment factors for.
alphaCode | [0..1] | String | Alpha code for the instrument where dividend is paid. If blank, all dividend factors for the ex-date will be returned.

QueryDividendPaymentFactorsRsp

Category: ExternalMembers

Message Functionality

Response message for the QueryDividendPaymentFactorsReq

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
DividendFactors | [0..1] | Component | An array of the dividend factors matching the search criteria.

QueryTradesReq

Category: TradeManagement

Message Functionality

Query trades from previous days. If the flag hasMore is set in the response, there are too many trades matching the search criteria. The client needs to specify narrower criteria and submit the query again.

Structure

Name | Mult. | Type | Description
tradeBusinessDateFrom | [1..1] | String | Query trades from date. Can be current or previous business day. The format is yyyy-MM-dd.
tradeBusinessDateTo | [0..1] | String | Query trades to date. The format is yyyy-MM-dd.
tradeTimeFrom | [0..1] | String | Query trades from time. The format is yyyy-MM- ddTHH:mm:ss.SSS.
tradeTimeTo | [0..1] | String | Query trades to time. The format is yyyy-MM- ddTHH:mm:ss.SSS.
clearingMemberId | [0..1] | String | Query trades with Clearing Member. If requested by a CM user then mandatory, needs to be set to the same CM as the logged in user.
tradingMember | [0..1] | String | Query trades with Trading Member. If requested by TM user then mandatory, needs to be set to the same TM as the TM of the logged in user.
tradingMemberBranch | [0..1] | String | Query trades with branch. If requested by Branch user then mandatory, needs to be set to the same Branch as the Branch of the logged in user.
clientId | [0..1] | String | Query trades with client.
internalAccountId | [0..1] | Long | Query trades with account. If Client specified: need to be an account of the client. If Branch but not Client specified: needs to be a house account of the Branch. If TM but not Branch or Client specified: needs to be a house account of the TM.
tradingUser | [0..1] | String | Query trades with Trading User.
internalTradableInstrumentId | [0..1] | Long | Query trades with Tradable Instrument.
alphaCode | [0..1] | String | Query trades with Alpha Code.
previousTradeIds | [0..1] | long | Query trades with Previous Trade Ids.
nextTradeIds | [0..1] | long | Query trades with Next Trade Ids.
tradingSystemMatchId | [0..1] | String | Query trades with Trade Id.
tradingSystemTradeLinkId | [0..1] | String | Query trades with Trade Link Id.
dealId | [0..1] | long | Query trades with internal Deal Id.
tradeId | [0..1] | long | Query trades with internal Trade Id.
externalInstrumentId | [0..1] | String | Query trades with Tradable Instrument. This is the JSE Master ID.

QueryTradesRsp

Category: TradeManagement

Message Functionality

Query trades response.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
Trades | [0..1] | Component | Trades
hasMore | [0..1] | boolean | A flag indicating whether or not the response was truncated by the server

ReadyConfirmAvailableFXEvent

Category: ExternalMembers

Message Functionality

Event published to the CMs to inform that RTC is ready to receive information about FX collateral.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroup | [0..1] | int | The id of the subscriptionGroup the message is published on.

RegisterFXCollateralRsp

Category: ExternalMembers

Message Functionality

Response to RegisterFXCollateralReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
FXCollateralStatus | [1..1] | Component | The status of registered FX collateral
valueDate | [1..1] | String | Value date, format YYYY-MM-DD.
clientId | [1..1] | String | The client ID / TM House.
tradingMemberId | [1..1] | String | The ID of the Trading Member.
clearingMemberId | [1..1] | String | The ID of the Clearing Member.
amount | [1..1] | Long | Amount in ZAR that can be covered with FX. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
ccy | [1..1] | String | Valued Currency.

RegisterFxCollateralReq

Category: ExternalMembers

Message Functionality

For clearing member to register FX Collateral.

Structure

Name | Mult. | Type | Description
valueDate | [1..1] | String | The requested value date. The format is yyyy-MM-dd.
clientId | [0..1] | String | The client ID.
tradingMemberId | [1..1] | String | The ID of the Trading Member.
clearingMemberId | [1..1] | String | The ID of the Clearing Member.
FXCollateral | [0..1] | Component | The received currency collateral

RejectCommissionReq

Category: TradeManagement

Message Functionality

Request for the Destination TM to reject a received commission.

Structure

Name | Mult. | Type | Description
commissionId | [1..1] | String | Id of the Commission.
cancellationReference | [0..1] | String | Optional reference that can be supplied at cancellation or rejection requests.

RejectGiveUpReq

Category: TradeManagement

Message Functionality

Reject assigned or tripartite trade as receiver. The initiator will be notified by a GiveUpEvent on the GiveUp Event Flow.

Structure

Name | Mult. | Type | Description
fourEyesId | [1..1] | long | The ID of the Assign or Tripartite.
initiator | [1..1] | String | The initiator member Id.
acknowledger | [1..1] | String | The destination member Id.
reason | [0..1] | String | An optional free text field.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.

ResponseMessage

Category: General

Message Functionality

General response for request messages that don't have a defined response. It may also be used when a fatal error occurs before or during the normal response handling on the server.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
messageReference | [0..1] | String | The message reference from the corresponding RequestMessage.

RiskNode

Category: ReferenceData

Message Functionality

Risk node is the entity that defines the level for risk calculations. It has one or several accounts connected and form a tree structure with aggregated risk numbers on parent nodes.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be

riskNodeId
[1..1]
Long
The id for the Risk Node.

parentRiskNodeId
[0..1]
Long
Risk node Id of the parent.

riskNodeName
[1..1]
String
The name for the Risk Node.

isDefault
[0..1]
Boolean
This is used to identify the default risk node for a member.

accessGroup
[1..1]
String
The access group for the Risk Node.

clearingMemberId
[1..1]
String
The clearing member for the Position Account.

participantUnitId
[1..1]
String
Specifies Participant Unit that this risk node belongs to.

positionAccountType
[0..1]
CodeSet
The account type for accounts connected to this risk node.

isClearingHouse
[0..1]
Boolean
This is used to identify if the risk node is for clearing house.

minimumZARLimit
[0..1]
Integer
The minimum percentage of the collateral that must be in ZAR.

riskLimit
[0..1]
Long
The risk limit after which alert is triggered.

parentHouseRiskNodeId
[0..1]
Long
Risk node Id of the house risk node of the parent.

amPercentage
[0..1]
Integer
The AM percentage used to calculate additional margin.

RiskNodeEvent

Category: Event

Message Functionality

This event contains calculated risk values for a Risk Node.

Error: externalInstrumentId exists in more than one component tree. Removed: [Sort: 22, Name: collateralPositions, Tag: c, Presence: optional, FieldNo: 47, FieldType: CollateralPositionValue [], Documentation: Values for collateral positions.]

Structure

Name
Mult.
Type
Description

sequenceNumber
[0..1]
long
The sequence number is a unique number for all events published for the same flow.

riskNodeId
[0..1]
Long
The id of the risk node the message is published on.

channel
[0..1]
String
The channel this result was calculated for. DEFAULT is the normal channel.

currency
[0..1]
String
The currency code according to ISO 4217.

portfolioValue
[0..1]
long
This value is not used in the JSE implementation of RTC.

variationMargin
[0..1]
Long
Any profit or loss given the current market value compared to the previous mark-to- market value (or trade value). This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

portfolioRisk
[0..1]
long
The Initial Margin for the risk node, defined as J-SPAN IM + Liquidation Period Add-On + Large Position Add-On + SM. A positive value indicates a risk. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

collateralValue
[0..1]
long
The sum of the values of all the collateral positions in the collateral account of the risk node. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

subscriptionGroup
[0..1]
int
The id of the subscriptionGroup the message is published on.

liquidationAddOn
[0..1]
long
The liquidation period add-on value for the risk node. The liquidation period add-on is an amount that gets added to the margin calculated by J-SPAN. The Liquidation Period add-on increases the margin requirement when the client's notional exposure in a particular underlying forms a significant portion of the value that gets traded in the market on a daily basis. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

largePositionAddOn
[0..1]
long
The large position add-on value on the risk node. This is an additional IM to compensate for large positions or concentration risk. This calculation takes into account position size thresholds which will are defined by the JSE. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

jspanValue
[0..1]
long
The J-SPAN IM value, based on the positions on the risk node and the CSE risk arrays. The J-SPAN algorithm uses the netted positions of all the accounts under the risk node. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

additionalMargin
[0..1]
Long
The additional margin value on the risk node. Additional Margin is a margin that is added on top of IM and calculated as a percentage on IM. Different members and clients can have different additional margin percentages. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

additionalMarginPercentage
[0..1]
long
The additional margin percentage value on the risk node.

riskLimit
[0..1]
Long
The risk limit value on the risk node. The global risk limit for the clearing house, or a more strict limit for the Clearing Member, Trading Member or Client. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

valueAgainstLimit
[0..1]
long
The value against limit value on the risk node, calculated as (IM + AM) - (VM + Collateral value). This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

alert
[0..1]
boolean
The alert indicator for the risk node. True if valueAgainstLimit is larger than riskLimit, false otherwise.

settlementMargin
[0..1]
long
The settlement margin on the risk node. For risk nodes with settlement positions for physical delivery positions: SM = official SMR * quantity (netted on risk node).

equityNotionalValue
[0..1]
long
The notional exposure for asset class Equity for this risk node. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

fxNotionalValue
[0..1]
long
The notional exposure for asset class FX for this risk node. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

NotionalValues
[0..1]
Component
Notional value per underlying.

RtcCalendar

Category: ReferenceData

Message Functionality

Represents a calendar in the RTC system.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm- ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

rtcCalendarId
[0..1]
String
The id of the RtcCalendar.

calendarDateCalendarId
[0..1]
String
Specifies which RtcCalendar to use for holidays and half- days .

displayName
[1..1]
String
The descriptive name for this calendar.

defaultScheduleStartTime
[1..1]
String
The default starting time for this calendar. Must be in the format HH:MM:SS.

timeZone
[1..1]
String
The time zone for this calendar.

saturdaysSundaysClosed
[0..1]
Boolean
Set to true if Saturdays and Sundays are closed.

Segment

Category: ReferenceData

Message Functionality

A Segment is a grouping of TradableInstruments that share the same trading rules. Operations on a segment, such as halt and enable/disable affects all tradable instruments related to the segment. A Segment is a child objetc to MarketList.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

internalSegmentId
[0..1]
String
The cache (unique) id of the Segment. The internalSegmentId field is assigned by the system.

isEnabled
[0..1]
Boolean
The state of this item.

disabledCount
[0..1]
Integer
A count of how many times this element has been enabled/disabled. An element will not be enabled until disabledCount is zero.

segmentId
[1..1]
String
The display id of the Segment. Must be unique within the parent MarketList. May only contain characters: a-z, A-Z, 0-9, "_", "-", "+" and ".".

parentInternalId
[1..1]
String
The parent Market List ID.

name
[1..1]
String
The name of this Segment

validFromDate
[0..1]
String
The first date the segment is valid. The format is yyyy-MM-dd.

SeriesSpreadGroup

Category: ReferenceData

Message Functionality

Series Spread Group.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

ssgId
[1..1]
Integer
Uniquely identifies each Series Spread Group.

groupName
[1..1]
String
Class Spread Group name.

SetCmBalancingStatusReq

Category: ExternalMembers

Message Functionality

Request to set balance status for a CM.

Structure

Name | Mult. | Type | Description
step | [1..1] | CodeSet | The balancing step to set the status for.
clearingMember | [1..1] | String | ID of the clearing member.
balanced | [0..1] | boolean | True if the CM is balanced, otherwise false.

SetCmBalancingStatusRsp

Category: ExternalMembers

Message Functionality

Response to a SetCmBalancingStatusReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.

SettlementAccount

Category: ReferenceData

Message Functionality

This object defines a settlement account.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm- ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

settlementAccountId
[0..1]
Long
The id for the Settlement Account.

externalSettlementAccountId
[0..1]
String
The external id for the account.

settlementAccountName
[0..1]
String
The name for the Settlement Account.

isNettingAccount
[1..1]
Boolean
If true, this account is a settlement account where positions are netted together before being sent to an external payment/delivery system.

isClearingHouseAccount
[1..1]
Boolean
If true, this is a Settlement Account for the Clearing House.

isEnabled
[1..1]
Boolean
Defines whether the account is enabled.

participantUnitId
[0..1]
String
Links to participantUnit if the Settlement Account is not a Clearing House Settlement Account

isDefaultClearingHouseAccount
[1..1]
Boolean
If true, this is the default Settlement Account for the Clearing House.

accessGroup
[1..1]
String
The access group for the Settlement Account.

SimpleRsp

Category: General

Message Functionality

General response for request messages that dont't have a defined response.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
reply | [0..1] | String | Generic single string reply

SubscriptionGroup

Category: ReferenceData

Message Functionality

The subscription group is used to filter objects on broadcast flows. When a subscription is set up for a subscription group the system controls the user access rights for that access group.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

subscriptionGroupId
[1..1]
int
The business id of the subscription group.

description
[1..1]
String
A text description of the set of order books contained in the group.

partitionId
[1..1]
Integer
The partition this subscription group belong to.

accountAccessGroup
[0..1]
String
The account access group.

Surface

Category: ReferenceData

Message Functionality

A surface. Three axis, z dependent on x and y, z = f(x, y).

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

surfaceId
[0..1]
Long
The internal surface Id for RTC.

externalSurfaceId
[1..1]
String
The external surface Id received from Master reference data system.

surfaceName
[1..1]
String
User friendly name of the surface.

dayCountConvention
[1..1]
CodeSet
Day count convention.

interpolationMethod
[1..1]
CodeSet
Interpolation method.

extrapolationMethod
[1..1]
CodeSet
Extrapolation method.

axisUnitX
[1..1]
CodeSet
xAxis unit.

axisUnitY
[1..1]
CodeSet
yAxis unit.

axisUnitZ
[1..1]
CodeSet
zAxis unit.

pePartitionId
[0..1]
Integer
Partition ID for the instrument in the RTC Price Engine. Not required, 1 will be used if the field is blank.

SurfaceEvent

Category: Event

Message Functionality

Market data for a surface. See the Surface reference data object for a definition of the surface.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroupId | [0..1] | int | The id of the subscription group the message is published on.
condType | [0..1] | CodeSet | Price Condition type (tag).
businessDate | [0..1] | String | Business date. Format is YYYY-MM-DD.
feedSource | [0..1] | CodeSet | The source of the price.
timestamp | [0..1] | String | The time of the market data event. The format is "yyyy-MM- ddTHH:mm:ss.SSS".
absoluteDate | [0..1] | String | The absolute date on the x-axis of the surface. This field is populated if the xAxis unit of the surface is absolute.
dateFractionOfAYear | [0..1] | long | The date on the x-axis represented as fraction of a year using the day time convention on the surface. This field is populated if the xAxis unit of the surface is fraction of a year. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.
strikeOrMoneyness | [0..1] | Long | Value on the y-axis: strike or moneyness. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
volatility | [0..1] | long | Value on the z-axis: volatility in point (x, y).
surfaceExternalId | [0..1] | String | The surface external instrument id. This is the JSE Master ID.

TaxEndSnapshot

Category: General

Message Functionality

Message ending a snapshot response

Structure

Name | Mult. | Type | Description
code | [0..1] | int | The overall status
message | [0..1] | String | Complementary text for extra context-dependent info
subCode | [0..1] | int | Subcodes
flow | [0..1] | CodeSet | If this message is the result of a snapshot/subscribe operation on a flow then this field contains the flow id.
pollSequenceNumber | [0..1] | Long | Not used in this configuration of RTC.
subscriptionGroup | [0..1] | int | Identifying group of instruments in a current value response if applicable, otherwise zero
snapshotSize | [0..1] | Long | Number of items published in snapshot

TaxHeartbeatReq

Category: General

Message Functionality

Heartbeat sent to gateway in order to verify a connection

Structure

Name | Mult. | Type | Description
userData | [0..1] | String | User supplied data. The data is returned in the response.

TaxHeartbeatRsp

Category: General

Message Functionality

Response returned from gateway

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
reply | [0..1] | String | Generic single string reply
timestamp | [0..1] | String | Current central system time. The format is "yyyy-MM-ddTHH:mm:ss.SSS". Example: 2009-07-16T19:20:30.045
userData | [0..1] | String | User-supplied data from the request

TaxLogonReq

Category: General

Message Functionality

Request to the gateway to log in a member/user

Structure

Name | Mult. | Type | Description
member | [1..1] | String | User's member firm
user | [1..1] | String | Mandatory user id. The user must belong to the member.
password | [1..1] | String | User's password
ticket | [0..1] | Long | Ticket received at pre-login
possDupSessId | [0..1] | Integer | Possible duplicate session id. If two sessions (that is, users) have the same possDupSessId it means that an unacknowledged request on one of the sessions can be resent on the other with the possDup
majorVersion | [0..1] | int | EMAPI major version. If any of the version fields is non-zero, the gateway will validate against the current EMAPI version.
minorVersion | [0..1] | int | EMAPI minor version. If any of the version fields is non-zero, the gateway will validate against the current EMAPI version.
microVersion | [0..1] | int | EMAPI micro version. If any of the version fields is non-zero, the gateway will validate against the current EMAPI version.

TaxLogonRsp

Category: General

Message Functionality

Sent from the gateway to the client as a response to TaxLogonReq.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
reply | [0..1] | String | Generic single string reply
logonAccepted | [0..1] | Boolean | Indicates whether the login was successful or not.
loginStatus | [0..1] | int | Login specific status code.
isTestSystem | [0..1] | Boolean | Indicates whether this system is a test system or not.
systemName | [0..1] | String | The name of the system.
partitionHbtInterval | [0..1] | Integer | The interval (in seconds) between partition heartbeats sent from the system. Partition heartbeats are sent out as Heartbeat events.
clientHbtInterval | [0..1] | Integer | The interval (in seconds) between which clients are expected to send in heartbeats. The client should use the TaxHeartbeatReq message to send in heartbeats.
maxLostHeartbeats | [0..1] | Integer | The maximum number of heartbeats to lose before the connection can be considered to be down.

TaxLogoutReq

Category: General

Message Functionality

Request from client to gateway in end a session. A simple response is sent as response.

Structure

Name | Mult. | Type | Description
handle | [0..1] | int | No fields defind in JSE spec for TaxLogoutReq

TaxRemoveSubscriptionReq

Category: General

Message Functionality

Removes an active subscription. A SimpleRsp is sent as response for this request.

Structure

Name | Mult. | Type | Description
handle | [0..1] | int | Subscription handle (subscription identifier) identifying the subscription request to be removed. The handle is received in the response when setting up the subscription.

TaxReplayEndEvent

Category: General

Message Functionality

Framing message indicating the end of requested replay data. The TaxReplayEndEvent indicates the end of a replay sequence.

Structure

Name
Mult.
Type
Description

subscriptionGroup
[0..1]
int
The subscription group the data is for. The identifier is always set to zero for global flows.

nextSequence
[0..1]
Long
When requesting a replay, the trading system may not deliver the full sequence in the first call. The application may need to issue multiple additional requests for retrieving all data. The field "nextSequence" indicates if all data has been retrieved. If so, the field is NULL. Otherwise, the field indicates the sequence number to be used when requesting the next/following batch of replay data.

statusCode
[0..1]
int
EMAPI status code telling if the replay was successful or not.

statusMessage
[0..1]
String
Status text associated with the EMAPI status code returned.

internalCode
[0..1]
int
Not used in this configuration of RTC.

flow
[0..1]
CodeSet
The flow the data is for.

TaxReplayReq

Category: General

Message Functionality

Request message sent to the RTC system to recover a sequence of messages published earlier. The replay request will recover earlier published messages on a replayable flow. The response back is a simple response indicating whatever the request was successfully queued to the RTC system. The actual replay data is delivered as unsolicited events, framed by TaxReplayStartEvent and TaxReplayEndEvent messages.

Structure

Name | Mult. | Type | Description
flow | [0..1] | CodeSet | Specifies the logical stream of information of a certain type.
subscriptionGroup | [0..1] | int | The subscription group on the subscribed flow.
sequenceNumber | [0..1] | long | The sequence number from which messages should be recovered for the specified subscription group and flow.
member | [0..1] | String | Optional attribute defining the member for which the replay is to be applied for. Used for on-behalf-of replay. Note that the user requesting replay for another member must be authorized to do so. If this attribute is left empty, the logged in user's member is used.
endSequenceNumber | [0..1] | long | The sequence number up to which messages should be recovered for the specified subscription group and flow. The value for this attribute could be derived from the TaxSnapshotSubscribeRsp.
requestType | [0..1] | CodeSet | The type of replay request.
segmentSize | [0..1] | Integer | Not used in this configuration of RTC.

TaxReplayRsp

Category: General

Message Functionality

Response message sent back for a previously-submitted TaxReplayReq. The TaxReplayRsp response will not contain the actual data being requested. The response data is delivered to the application asynchronously.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
reply | [0..1] | String | Generic single string reply
handle | [0..1] | int | Subscription handle identifying the subscription request. The handle is used when removing the subscription.

TaxReplayStartEvent

Category: General

Message Functionality

Framing message indicating the start sequence of requested replay data. When issuing a replay request, the replay data is delivered as unsolicited messages. The TaxReplayStartEvent indicates the start of a replay sequence.

Structure

Name | Mult. | Type | Description
subscriptionGroup | [0..1] | int | The subscription group the data is for.
flow | [0..1] | CodeSet | The broadcast flow for the start event.

TaxSessionStatus

Category: General

Message Functionality

Unsolicited message indicating session status.

Structure

Name | Mult. | Type | Description
status | [0..1] | int | Session status

TaxSnapshotSubscribeReq

Category: General

Message Functionality

Request to retrieve information and/or activate subscription of future updates of the information specified

Structure

Name | Mult. | Type | Description
member | [0..1] | String | Not used in this configuration of RTC.
user | [0..1] | String | Not used in this configuration of RTC.
requestType | [0..1] | CodeSet | Type of subscription request
flow | [0..1] | CodeSet | Data flow being requested
key | [0..1] | String | Selection key, identifying the data being subscribed to. In many cases, this is the subscription group.
sequenceNumber | [0..1] | long | Not used in this configuration of RTC.
lastPollSequenceNumber | [0..1] | Long | Not used in this configuration of RTC.

TaxSnapshotSubscribeRsp

Category: General

Message Functionality

Response to a subscription request (TaxSnapshotSubscribeReq).

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.
reply | [0..1] | String | Generic single string reply
handle | [0..1] | int | Subscription handle identifying the subscription request. The handle is used when removing the subscription.
lastPublishedSeqNo | [0..1] | Long | Not used in this configuration of RTC.

TaxStartSnapshot

Category: General

Message Functionality

Message preceding a snapshot response

Structure

Name | Mult. | Type | Description
subscriptionGroup | [0..1] | int | Group of instruments in current value response if applicable, otherwise zero.
flow | [0..1] | CodeSet | The broadcast flow for the start event

TradableInstrument

Category: ReferenceData

Message Functionality

The TradableInstrument is a child object of an Instrument. The TradableInstrument holds trading information (order book id, currency, market, visibility etc) which is necessary for entering orders in a specific instrument. There is one TradableInstrument instance per market/currency/visibility combination. A TradableInstrument instance references a Segment, all trading rules for the referenced Segment applies to the instance.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm- ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

internalId
[0..1]
String
The internal id of the TradableInstrument. This id is unique within the system and is created from the fields parentInternalId, market, currency and visibility.

parentInternalId
[0..1]
String
The internal id of the parent Instrument. (The instrumentId and the instrumentIdType of the parent Instrument).

internalSegmentId
[0..1]
String
A "cache" segment reference to which this tradable instrument belongs. Assigned by the server when the TradableInstrument is created. Validated against Market/MarketList/Segment attributes when updating a TradableInstrument.

isEnabled
[0..1]
Boolean
The state of this item.

disabledCount
[0..1]
Integer
A count of how many times this element has been enabled/disabled. An element will not be enabled until disabledCount is zero.

tradableInstrumentId
[1..1]
String
The tradable instrument id. Typically an ISIN, CUSIP or symbol name. This is the JSE Master ID.

tradableInstrumentIdType
[1..1]
CodeSet
The type of the TradableInstrumentId (ISIN, CUSIP etc)

currencyId
[1..1]
String
The currency code according to ISO 4217

shortName
[1..1]
String
Display name of this tradable instrument.

marketId
[1..1]
String
The market where this tradable instrument is traded. This field refers to a Market object's marketId field.

marketListId
[1..1]
String
The market list where this instrument is traded, reflecting a MarketList object's marketListId field. The market list must belong to the market specified by the marketId field.

segmentId
[1..1]
String
The segment where this instrument is traded, reflecting a Segment object's segmentId field. The segment specified must belong to the market stated in the marketId field and belong to the market list stated by the marketListId field.

subscriptionGroupId
[0..1]
int
The id of the subscription group to which this tradable instrument belong

validFromDate
[0..1]
String
The first date the tradable instrument is valid. The format is yyyy-MM-dd. If this optional data is not specified, the value from the tradable instrument's instrument will be used. The parent tradable instrument must have a validFrom date that is equal to or less than the validFrom date of the child tradable instrument.

validToDate
[0..1]
String
The last date the tradable instrument is valid. The format is yyyy-MM-dd. If this optional data is not specified, the value from the tradable instrument's instrument will be used. The parent tradable instrument must have a validTo date that is equal to or greater that the validTo date of the child tradable instrument.

numberOfShares
[0..1]
Long
The number of shares in the instrument. If the number of shares is not defined, then there will not be any qty checks for that instrument.

listOfAliases
[0..1]
String
A list of other markets'/exchanges' ID of this tradable instrument in the format: market1:id1,market2:id2,..

lastTradingDate
[0..1]
String
The last date the instrument is open for trading. The format is yyyy-MM-dd.

corporateActionIndicator
[0..1]
String
This attribute is used to indicate that this instrument has been subject to a Corporate Action.

validForTrading
[0..1]
Boolean
If this field is true, this TradebleInstrument is valid for trading. ValidForTrading is typically used when a TradableInstrument is not traded on "this" exchange, but is needed as undelying for derivatives (carrying the price). The default value is true.

volatilityScanningRange
[0..1]
Long
Volatility Scanning Range (VSR) This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

contractSize
[1..1]
BigInteger
The size (quantity) of one traded contract.

settlementCycle
[0..1]
Integer
Settlement cycle in days. Mandatory for instrument type Spot.

classSpreadGroup
[0..1]
String
The Class Spread Group (CSG) to which the contract belongs.

classSpreadMarginRequirement
[0..1]
Long
Class Spread Margin Requirement (CSMR) This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

expiryDate
[0..1]
String
The expiration date for this contract. The format is yyyy-mm-dd. Used for options and futures.

contractCode
[0..1]
String
The Contract Code. Example: AGLS

underlyingTradableInstrument
[0..1]
String
The Underlying Tradable Instrument. Example: the future (AGLS-20141023) for an option or the underlying (ABL) for a future

contractCategory
[0..1]
String
The Contract Category. Example: SingleStock

settlementType
[0..1]
CodeSet
Settlement type, Cash or Physical. If cash settled, only cash is settled at expiry. If physical, the underlying instrument is settled at expiry. Used for futures and options.

exerciseStyle
[0..1]
CodeSet
Exercise style, Americal or European. Used for options.

isCall
[0..1]
Boolean
Call or Put option.

strike
[0..1]
BigInteger
Strike for option. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

volatilitySurfaceId
[0..1]
String
The Volatility Surface Id. Used for options.

yieldCurveId
[0..1]
String
The id of yield curve instrument used for valuation. Mandatory for future with valuation model set to RTC Mark-to-Model. Mandatory if InstrumentSubType is Dividend Neutral, International Dividend Neutral, Quanto International Dividend Neutral, Quanto Index Dividend Neutral or Contract for Difference, regardless of valuation model.

contractDescription
[0..1]
String
The Contract Description.

instrumentType
[1..1]
CodeSet
The type of instrument (equity, option, future etc).

stressPeriodStartDate
[0..1]
String
In addition to the look-back period other dates of price data can be added. This is the start date of the period used. The format is yyyy-mm-dd. Used for spot instruments.

stressPeriodEndDate
[0..1]
String
In addition to the look-back period other dates of price data can be added. This is the end date of the period used. The format is yyyy-mm-dd. Used for spot instruments.

liquidationPeriod
[0..1]
long
The liquidation period used in the IMR calculation. Also used for the calculation of the Liquidity Add-on.

advt
[0..1]
Long
The Average Daily Value Traded, used for the calculation of the Liquidity Add-on. Mandatory for spot instruments. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

imrOfficial
[0..1]
Long
Official IMR (Initial Margin Requirement) This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

oneDayVar
[0..1]
Long
1-day VaR This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

alphaCode
[1..1]
String
The Alpha Code. Example: AGL

optionStyle
[0..1]
CodeSet
Future style or Upfront premium. Used for options.

atmCents
[0..1]
Integer
Cents from ATM. Used for options.

isin
[0..1]
String
ISIN for the instrument.

valuationModelType
[1..1]
CodeSet
Valuation Model Type.

valuationSubType
[1..1]
CodeSet
Valuation Sub Type.

isTradable
[0..1]
Boolean
Indicates whether the instrument can be traded at JSE.

baseCurrency
[0..1]
String
Base currency, mandatory for FX spot instruments.

priceCurrency
[0..1]
String
Price currency, mandatory for FX spot instruments.

maturityDate
[0..1]
String
Maturity Date for Bonds. Format yyyy-mm-dd.

dayCountConvention
[0..1]
CodeSet
The convention determines how interest accrues over time, e.g. number of days between two coupon payments. For Bonds.

businessDayConvention
[0..1]
CodeSet
Rules for date rolling when a payment day or date used to calculate accrued interest falls on a holiday. For Bonds.

rtcCalendarId
[0..1]
String
Calendar used for holidays. For Bonds.

couponRate
[0..1]
Long
Annual Coupon rate for Bonds. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

listingDate
[0..1]
String
The date when the Bond was listed.

couponFrequencyPeriod
[0..1]
Integer
Coupon frequency period length. How often coupons are paid annually. For Bonds.

couponIndicator
[0..1]
CodeSet
Coupon rate indicator. For Bonds.

couponDates
[0..1]
String
For Bonds. Coupon dates, comma separated dates on format MMDD.

bookClosingDates
[0..1]
String
For Bonds. Book Closing dates, comma separated dates on format MMDD.

priceFormat
[1..1]
int
Number of decimals in prices.

smrOfficial
[0..1]
Long
Official SMR (Settlement Margin Requirement) This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

instrumentSubType
[1..1]
CodeSet
The sub type of instrument (spot, index, CFD, etc.).

assetClass
[1..1]
CodeSet
The asset class this tradable instrument belongs to.

pePartitionId
[0..1]
Integer
Partition ID for the instrument in the RTC Price Engine. Not required, 1 will be used if the field is blank.

assetSubClass
[1..1]
CodeSet
Asset sub class used for stress testing.

baseRateInstrument
[0..1]
String
Master ID of the base rate instrument

priceProxyMasterID
[0..1]
String
The Master ID of another underlying instrument to use as proxy when calculating the IMR %. Will mostly be used for foreign instruments where the price history is not available.

interestCommencementDate
[0..1]
String
For Bonds. This date is used as last coupon date equivalent if no coupon has yet been paid.

inwardListed
[1..1]
Boolean
Designated as Inward listed by the South African Reserve Bank.

anyday
[1..1]
Boolean
If Anyday is true, the expiry date of the instrument may be on any business day.

nominal
[0..1]
Long
The Nominal Amount for Bonds. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

redemptionFraction
[0..1]
Long
Fraction of Nominal to be returned at maturity. For Bonds. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.DECIMAL.

compoundingConventionOfYield
[1..1]
CodeSet
Compounding Convention of yield. For Bonds.

compoundingConventionOfRate
[0..1]
CodeSet
Compounding Convention of coupon rate. For Bonds, information only.

exchange
[0..1]
String
ID of the exchange where the instrument is traded

country
[1..1]
String
Country code of instrument.

contractSizeType
[0..1]
CodeSet
Indicator if the contract is base (standard), mini/maxi etc.

negativePriceAllowed
[0..1]
Boolean
If NPA is True, prices in the tradable instrument may be negative, otherwise not. Only be allowed to be True for Spot and Future, used for structured products.

TripartiteAgreement

Category: ReferenceData

Message Functionality

This object defines agreement for tripartite.

Structure

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm-ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

tripartiteAgreementId
[1..1]
String
Uniquely identifies each tripartite agreement.

initiator
[1..1]
String
Initiator of the tripartite allocation. ID of Trading Member or Branch.

acknowledger
[1..1]
String
Acknowledger (receiver) of the tripartite allocation. ID of Trading Member or Branch.

client
[1..1]
String
Client of the tripartite allocation.

fromDate
[1..1]
String
From date of tripartite agreement. The format is yyyy-mm-dd.

toDate
[0..1]
String
To date of tripartite agreement. The format is yyyy-mm-dd.

TripartiteAllocationReq

Category: TradeManagement

Message Functionality

Tripartite allocation to another member. Tripartite agreement must exist. Tripartite requests that are not handled during the day are removed by the system.

Structure

Name | Mult. | Type | Description
tradeId | [1..1] | long | Trade id.
fromAccountId | [1..1] | Long | The current account for the Trade.
quantity | [1..1] | long | The trade quantity. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
reference | [0..1] | String | An optional free text field.
acknowledger | [1..1] | String | The destination member Id.
client | [1..1] | String | The destination client Id.
moveId | [0..1] | Long | Must be unique for the referenced trade. Used to prevent duplicate move requests.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
tradingUserId | [1..1] | String | The trading user id.
commissionAmount | [0..1] | Long | A sight of the commission amount before the actual commission is submitted. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

TripartiteAllocationRsp

Category: TradeManagement

Message Functionality

Response to the TripartiteAllocationReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.

UpdateTradeReferenceReq

Category: TradeManagement

Message Functionality

Request to update the reference on trade.

Structure

Name | Mult. | Type | Description
tradeId | [1..1] | long | Trade id.
externalInstrumentId | [1..1] | String | The external instrument id. This is the JSE Master ID.
accountId | [1..1] | Long | The account of the trade to update.
reference | [0..1] | String | The new reference for the trade.

UpdateTradeReferenceRsp

Category: TradeManagement

Message Functionality

Response to the UpdateTradeReferenceReq request.

Structure

Name | Mult. | Type | Description
code | [0..1] | int | Status code. Code 3001 indicates that the request was processed successfully. For other codes, see the Status Code list in the EMAPI HTML description.
message | [0..1] | String | A textual description of the status code above.
subCode | [0..1] | int | Status code for each leg of the request. Only used for batched requests.

WithdrawalNotificationEvent

Category: Event

Message Functionality

A notification event sent to the Clearing Member that there is a number of payment advices that the CM must confirm.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroup | [0..1] | int | The id of the subscriptionGroup the message is published on.
clearingMember | [0..1] | String | Clearing Member ID.

YieldEvent

Category: Event

Message Functionality

The yield for an instrument. The instrument could be of different types, for instance a Bond or a Deposit.

Structure

Name | Mult. | Type | Description
sequenceNumber | [0..1] | long | The sequence number is a unique number for all events published for the same flow.
subscriptionGroupId | [0..1] | int | The id of the subscription group the message is published on.
condType | [0..1] | CodeSet | Price Condition type (tag).
businessDate | [0..1] | String | Business date. Format is YYYY-MM-DD.
instrumentExternalId | [0..1] | String | The external instrument id.
feedSource | [0..1] | CodeSet | The source of the price.
timestamp | [0..1] | String | The time of the market data event. The format is "yyyy-MM- ddTHH:mm:ss.SSS".
yieldType | [0..1] | CodeSet |
yield | [0..1] | long | The dividend expressed in yield (% on decimal form).

Message Elements

Data Types

Data type
Description

BigInteger
Arbitrary precision integer (i.e. value range is not applicable).

Boolean
A logical type that can be either true or false or null.

int
-2,147,483,648 to 2,147,483,647

Integer
Can have the same values as int, but can also have a null value.

long
-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807

String
String is a sequence of Unicode characters. The maximum length of the string is specified in the message definition. If no length is specified, the maximum length of the string is 255 characters. Note: RTC supports by default only a subset of characters with ASCII code points between 0 and 255. The allowed ASCII numbers for characters are 32-128 and 160-255.

Data Dictionary

absoluteDate

Type: String

Used in messages: CurveEvent, SurfaceEvent

absoluteDates

Type: String

Used in messages: AtmVolatilityEvent

acceptedTimestamp

Type: String

Used in messages: CommissionEvent

accessGroup

Type: String

Used in messages: CollateralAccount, PositionAccount, RiskNode, SettlementAccount

accessGroupId

Type: String

Used in messages: AccessGroup

accountAccessGroup

Type: String

Used in messages: SubscriptionGroup

accountId

Type: Long

Used in components: Destinations, Trade, Trades

Used in messages: AbandonOptionPositionReq, AccountPositionEvent, AccountTradeEvent, AggregateTradesReq, CollateralAccount, ExerciseOptionPositionReq, UpdateTradeReferenceReq

accountName

Type: String

Used in messages: CollateralAccount

accountSubType

Type: String

Used in components: Trades

accountType

Type: String

Used in components: Trades

acknowledger

Type: String

Used in messages: ApproveGiveUpReq, AssignTradeReq, CancelGiveUpReq, GiveUpEvent, RejectGiveUpReq, TripartiteAgreement, TripartiteAllocationReq

action

Type: int

Allowed values in CacheActionCodeSet:

Code | Name | Description
1 | Add | Add to cache EMAPI - interpret as Add. Constant name: ADD
2 | Update | Update cache EMAPI - interpret as Update. Constant name: UPDATE
3 | Bootload | Add to cache with bootloader EMAPI - interpret as Add. Constant name: BOOTLOAD
4 | RemoveCacheDb | Remove from cache and db, does not remove if there are references to object. Return status code ValidationHasReference if referenced. EMAPI - interpret as Remove. Constant name: REMOVE_CACHE_DB
5 | RemoveCacheDbForced | Remove from cache and db, removes even if there are references to object. EMAPI - interpret as Remove. Constant name: REMOVE_CACHE_DB_FORCED
6 | RemoveCache | Remove from cache (does not remove object from db), does not remove if there are references to object. Return status code ValidationHasReference if referenced. The isDeleted attribute is set to BOOLEAN.TRUE EMAPI - interpret as Remove. Constant name: REMOVE_CACHE
7 | RemoveCacheForced | Remove from cache (does not remove object from db), removes even if there are references to object. The isDeleted attribute is set to BOOLEAN.TRUE EMAPI - interpret as Remove. Constant name: REMOVE_CACHE_FORCED

Used in components: CashAccount

Used in messages: AccessGroup, CalendarDate, ClassSpreadGroup, ClearingMemberLink, CollateralAccount, CorporateAction, Country, Currency, CurrentSystemState, Curve, CurveConstituent, Deposit, EligibleCurrency, EligibleSecurity, ForwardRateAgreement, Instrument, InterestRateSwap, Market, MarketList, Member, PositionAccount, RiskNode, RtcCalendar, Segment, SeriesSpreadGroup, SettlementAccount, SubscriptionGroup, Surface, TradableInstrument, TripartiteAgreement

activeQuantity

Type: BigInteger

Used in components: Trade, Trades

additionalMargin

Type: Long

Used in components: MemberBalance1

Used in messages: DailyAccountSummaryDetailsEvent, RiskNodeEvent

additionalMarginMovements

Type: Long

Used in components: TotalClients, Totals

additionalMarginPercentage

Type: long

Used in messages: RiskNodeEvent

address

Type: String

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

adt

Type: Long

Used in messages: Instrument

adtCurrency

Type: String

Used in messages: Instrument

advt

Type: Long

Used in messages: TradableInstrument

aggressor

Type: Boolean

Used in components: RtcTradeExternalData, Trades

agreedTime

Type: String

Used in components: RtcTradeExternalData, Trades

alert

Type: boolean

Used in messages: RiskNodeEvent

allInstruments

Type: boolean

Used in messages: GetRiskArrayReq

allowClientSubAccounts

Type: Boolean

Used in messages: Member

allowedFXAmount

Type: long

Used in components: FXCollateral

allowedMarkets

Type: String

Used in messages: CdAddRtcMemberClientReq, Member

allowedOnBehalfOfMemberIdList

Type: String

Used in messages: Member

allowFxCollateral

Type: Boolean

Used in messages: Member

alphaCode

Type: String

Used in components: DividendFactors, Trades

Used in messages: EligibleSecurity, QueryDividendPaymentFactorsReq, QueryTradesReq, TradableInstrument

amount

Type: Long

Used in components: FxRequests, Instructions, PaymentAdvices, Withdrawals

Used in messages: AddCommissionReq, CommissionEvent, RegisterFXCollateralRsp

amPercentage

Type: Integer

Used in messages: CdSetClientAMPercentageReq, CdSetTradingMemberAMPercentageReq, RiskNode

anyday

Type: Boolean

Used in messages: TradableInstrument

assetClass

Type: String

Allowed values in AssetClassCodeSet:

Code | Name | Description
EQUITY | Equity | Equity. Constant name: EQUITY
FX | FX | FX. Constant name: FX
FIXED_INCOME | FixedIncome | Fixed Income. Constant name: FIXED_INCOME

Used in components: Trades

Used in messages: TradableInstrument

assetSubClass

Type: String

Allowed values in AssetSubClassCodeSet:

Code | Name | Description
LOCAL_EQUITY | LE | Local equity. Constant name: LE
FOREIGN_EQUITY | FE | Foreign equity. Constant name: FE
FX | FX | FX. Constant name: FX
NOMINAL_INTEREST_RATE | NI | Nominal interest rate. Constant name: NI

Used in components: Trades

Used in messages: TradableInstrument

associatedMemberId

Type: String

Used in messages: CdAddRtcMemberClientReq, Member

atmCents

Type: Integer

Used in messages: TradableInstrument

availableFXAmount

Type: long

Used in components: FXCollateral

axisUnitX

Type: String

Allowed values in AxisUnitCodeSet:

Code | Name | Description
ABSOLUTE_DATE | AbsoluteDate | Absolute date. Constant name: ABSOLUTE_DATE
FRACTION_OF_YEAR | FractionOfYear | Fraction of year. Constant name: FRACTION_OF_YEAR
YIELD_PERCENTAGE | YieldPercentage | Yield (%). Constant name: YIELD_PERCENTAGE
STRIKE | Strike | Strike. Constant name: STRIKE
MONEYNESS | Moneyness | Moneyness. Constant name: MONEYNESS
VOLATILITY | Volatility | Volatility. Constant name: VOLATILITY

Used in messages: Curve, Surface

axisUnitY

Type: String

Allowed values in AxisUnitCodeSet:

Code | Name | Description
ABSOLUTE_DATE | AbsoluteDate | Absolute date. Constant name: ABSOLUTE_DATE
FRACTION_OF_YEAR | FractionOfYear | Fraction of year. Constant name: FRACTION_OF_YEAR
YIELD_PERCENTAGE | YieldPercentage | Yield (%). Constant name: YIELD_PERCENTAGE
STRIKE | Strike | Strike. Constant name: STRIKE
MONEYNESS | Moneyness | Moneyness. Constant name: MONEYNESS
VOLATILITY | Volatility | Volatility. Constant name: VOLATILITY

Used in messages: Curve, Surface

axisUnitZ

Type: String

Allowed values in AxisUnitCodeSet:

Code | Name | Description
ABSOLUTE_DATE | AbsoluteDate | Absolute date. Constant name: ABSOLUTE_DATE
FRACTION_OF_YEAR | FractionOfYear | Fraction of year. Constant name: FRACTION_OF_YEAR
YIELD_PERCENTAGE | YieldPercentage | Yield (%). Constant name: YIELD_PERCENTAGE
STRIKE | Strike | Strike. Constant name: STRIKE
MONEYNESS | Moneyness | Moneyness. Constant name: MONEYNESS
VOLATILITY | Volatility | Volatility. Constant name: VOLATILITY

Used in messages: Surface

balanced

Type: boolean

Used in messages: SetCmBalancingStatusReq

baseCCY

Type: String

Used in messages: EligibleCurrency

baseCurrency

Type: String

Used in messages: TradableInstrument

baseRate

Type: String

Used in components: Trades

baseRateInstrument

Type: String

Used in messages: TradableInstrument

bdaCode

Type: Integer

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

bic

Type: String

Used in components: CashAccount

bookClosingDates

Type: String

Used in messages: TradableInstrument

bookingFeeAmount

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

bookingFees

Type: Long

Used in components: MemberBalance2

bookingFeeVatAmount

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

bookmark

Type: String

Used in messages: GetPaymentAdvicesReq, GetPaymentAdvicesRsp, GetRequestsForFXCollateralReq, GetRequestsForFXCollateralRsp, GetSettlementInstructionsReq, GetSettlementInstructionsRsp

bootStrappingMethod

Type: BootStrappingMethodCodeSet

Used in messages: Curve

branchMemberNumber

Type: String

Used in messages: Member

branchName

Type: String

Used in components: Trades

broadcastFlowId

Type: int

Used in messages: GetSequenceNumbersReq, GetSequenceNumbersRsp

businessDate

Type: String

Used in components: Contracts, Trades

Used in messages: AggregatedSummaryClearingMemberEvent, AggregatedSummaryTradingMemberEvent, AtmVolatilityEvent, CmBalancing1Event, CmBalancing2Event, CurrentSystemState, CurveEvent, DailyAccountSummaryDetailsEvent, DividendEvent, OptionDataEvent, PriceEvent, SurfaceEvent, YieldEvent

businessDayConvention

Type: String

Allowed values in BusinessDayConventionCodeSet:

Code | Name | Description
NONE | None | None. Constant name: NONE
FOLL_GOOD | FollowingGood | Following Good. Constant name: FOLL_GOOD
MOD_FOLL | ModFollowing | Modified Following. Constant name: MOD_FOLL

Used in messages: Deposit, ForwardRateAgreement, InterestRateSwap, TradableInstrument

cacheId

Type: String

Used in components: CashAccount

Used in messages: AccessGroup, CalendarDate, ClassSpreadGroup, ClearingMemberLink, CollateralAccount, CorporateAction, Country, Currency, CurrentSystemState, Curve, CurveConstituent, Deposit, EligibleCurrency, EligibleSecurity, ForwardRateAgreement, Instrument, InterestRateSwap, Market, MarketList, Member, PositionAccount, RiskNode, RtcCalendar, Segment, SeriesSpreadGroup, SettlementAccount, SubscriptionGroup, Surface, TradableInstrument, TripartiteAgreement

calendarDateCalendarId

Type: String

Used in messages: RtcCalendar

calendarId

Type: String

Used in messages: CalendarDate, Currency

callPut

Type: String

Used in components: Trades

cancellationReference

Type: String

Used in messages: CancelCommissionReq, CommissionEvent, RejectCommissionReq

cancelledTimestamp

Type: String

Used in messages: CommissionEvent

capacity

Type: Integer

Allowed values in CapacityCodeSet:

Code | Name | Description
1 | Principal | Principal. Constant name: Principal
2 | Agent | Agent. Constant name: Agent

Used in components: RtcTradeExternalData, Trades

CashAccount

A member or client can have zero or more than one cash account defined, but not more than one per currency.

Name
Mult.
Type
Description

key
[0..1]
String
Is used to identify the parent object (is set to null if this is the root object). This field is set by RTC, only set on outgoing messages on the reference data flow.

cacheId
[0..1]
String
Is used to identify the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

action
[0..1]
CodeSet
Identify the reason for the cache action (CACHE_ACTION), i.e. if it is an addition of a new reference data object, an update of an existing object or a removal of an object from the reference data cache. This field is set by RTC, only set on outgoing messages on the reference data flow.

stateSequenceNumber
[0..1]
long
A sequence number that is incremented with each reference data update, i.e. a version number for the cache contents. The sequence number series is common for all caches. This means that for a specific cache instance, the sequence number is not necessarily consecutive (but constantly increasing). This field is set by RTC, only set on outgoing messages on the reference data flow.

uniqueObjectId
[0..1]
String
The id is unique among all objects and may be used to retrieve a specific instance. Do not however, try to interpret the contents. This field is set by RTC, only set on outgoing messages on the reference data flow.

timestamp
[0..1]
String
The date and time of the latest modification for this reference data object. Format: yyyy-mm- ddTHH.MM.SS.sss. May be null if the object never has been updated. This field is set by RTC, only set on outgoing messages on the reference data flow.

settlementBank
[1..1]
String
Authorized dealer for foreign currency or settlement bank for ZAR.

settlementBankBranch
[0..1]
String
The code of the branch within the authorized dealer or settlement bank.

bic
[1..1]
String
Swift BIC code.

settlementBankAccountId
[1..1]
String
ID of account within the auhorized dealer or settlement bank.

internalCashAccountId
[0..1]
Long
RTC internal Cash Account ID. Set at creation by RTC.

currency
[1..1]
String
The account is valid for this currency.

participantUnitId
[1..1]
String
Specifies the parent Participant Unit.

isNonResident
[0..1]
boolean
Flag is set from member, is set to true for non resident members.

Used in messages: CdAddCashAccountReq, CdUpdateCashAccountReq

cashAmountBF

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

cashAmountCF

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

cashAmountMovement

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

cashCollateralMovement

Type: Long

Used in components: FxDailyAccountSummaryDetails

ccy

Type: String

Used in components: FxRequests

Used in messages: RegisterFXCollateralRsp

channel

Type: String

Used in messages: RiskNodeEvent

classSpreadGroup

Type: String

Used in messages: TradableInstrument

classSpreadMarginRequirement

Type: Long

Used in messages: TradableInstrument

clearingFeeAmount

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

clearingFees

Type: Long

Used in components: MemberBalance2

clearingFeeVatAmount

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

clearingMember

Type: String

Used in components: PaymentAdvices, Trades, Withdrawals

Used in messages: CmBalancing1Event, CmBalancing2Event, GetPaymentAdvicesReq, GetSettlementInstructionsReq, SetCmBalancingStatusReq, WithdrawalNotificationEvent

clearingMemberId

Type: String

Used in components: FxRequests

Used in messages: AccessGroup, AccountPositionEvent, AccountTradeEvent, AggregatedSummaryClearingMemberEvent, AggregatedSummaryTradingMemberEvent, CdAddRtcMemberClientClearingLinkReq, CdAddRtcPositionAccountReq, CdSetClientAMPercentageReq, CdSetClientRiskLimitReq, CdSetMinimumZARLimitReq, ClearingMemberLink, CollateralAccount, DailyAccountSummaryDetailsEvent, GetRequestsForFXCollateralReq, PositionAccount, QueryTradesReq, RegisterFXCollateralRsp, RegisterFxCollateralReq, RiskNode

clearingMemberLinkId

Type: Long

Used in messages: ClearingMemberLink

clearingMemberName

Type: String

Used in components: Trades

client

Type: String

Used in components: Trades

Used in messages: ApproveGiveUpReq, GiveUpEvent, TripartiteAgreement, TripartiteAllocationReq

clientDealId

Type: String

Used in components: Trades

clientHbtInterval

Type: Integer

Used in messages: TaxLogonRsp

clientId

Type: String

Used in components: FxRequests

Used in messages: AccountPositionEvent, AccountTradeEvent, CdAddRtcMemberClientReq, CdAddRtcMemberClientRsp, CdEnableDisableRtcMemberClientReq, CdSetClientAMPercentageReq, CdSetClientRiskLimitReq, CdSetMinimumZARLimitReq, CdUpdateRtcMemberClientReq, DailyAccountSummaryDetailsEvent, QueryTradesReq, RegisterFXCollateralRsp, RegisterFxCollateralReq

clientName

Type: String

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq

clientNominatedMemberId

Type: String

Used in components: Trades

clientOrderId

Type: String

Used in components: RtcTradeExternalData

clientPhone

Type: String

Used in components: Trades

clientReference

Type: String

Used in messages: AddCommissionReq, CommissionEvent

clientType

Type: String

Allowed values in ClientTypeCodeSet:

Code | Name | Description
INDIVIDUAL | Individual | Individual. Constant name: INDIVIDUAL
COMPANY | Company | Company. Constant name: COMPANY
HEDGE_FUND | HedgeFund | Hedge fund. Constant name: HEDGE_FUND
STATE_ENTERPRISE | StateEnterprise | State enterprise. Constant name: STATE_ENTERPRISE
TRUST | Trust | Trust. Constant name: TRUST
CLOSED_CORPORATION | ClosedCorporation | Closed corporation. Constant name: CLOSED_CORPORATION
ASSET_MANAGER | AssetManager | Asset manager. Constant name: ASSET_MANAGER
INVESTMENT_MANAGER | InvestmentManager | Investment manager. Constant name: INVESTMENT_MANAGER

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

clOrdId

Type: String

Used in components: Trades

cmMessageRef

Type: String

Used in messages: AggregatedSummaryClearingMemberEvent, Member

code

Type: int

Used in messages: AbandonOptionPositionRsp, AggregateTradesRsp, AllocateTradeRsp, CdAddRtcMemberClientRsp, CdAddRtcPositionAccountRsp, CdEnableDisableRtcPositionAccountRsp, CdResponse, CorrectAllocationErrorRsp, CorrectPrincipalRsp, ExerciseOptionPositionRsp, GetPaymentAdvicesRsp, GetRequestsForFXCollateralRsp, GetRiskArrayRsp, GetSequenceNumbersRsp, GetSettlementInstructionsRsp, ModifyPositionSubAccountRsp, ModifyTradeSubAccountRsp, QueryDividendPaymentFactorsRsp, QueryTradesRsp, RegisterFXCollateralRsp, ResponseMessage, SetCmBalancingStatusRsp, SimpleRsp, TaxEndSnapshot, TaxHeartbeatRsp, TaxLogonRsp, TaxReplayRsp, TaxSnapshotSubscribeRsp, TripartiteAllocationRsp, UpdateTradeReferenceRsp

collateralAccountId

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

collateralAccountName

Type: String

Used in messages: AccountPositionEvent, AccountTradeEvent

collateralValue

Type: long

Used in messages: RiskNodeEvent

commission

Type: Long

Used in components: TotalClients, Totals

Used in messages: DailyAccountSummaryDetailsEvent

commissionAmount

Type: Long

Used in messages: AssignTradeReq, GiveUpEvent, TripartiteAllocationReq

commissionId

Type: String

Used in messages: AcceptCommissionReq, CancelCommissionReq, CommissionEvent, RejectCommissionReq

commissionReference

Type: String

Used in messages: AddCommissionReq, CommissionEvent

commissions

Type: Long

Used in components: MemberBalance2

commissionVatType

Multiple type definitions: commissionVatType[Int, String]. Type changed to int to match CodeSet type.

Type: int

Allowed values in CommissionVatTypeCodeSet:

Code | Name | Description
1 | VatAtStandardRate | VAT at standard rate. Constant name: VAT_AT_STANDARD_RATE
2 | VatAtZeroPercent | VAT at zero percent. Constant name: VAT_AT_ZERO_PERCENT

Used in messages: AddCommissionReq, CommissionEvent

companyRegistrationNumber

Type: String

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

complianceContact

Type: String

Used in messages: Member

complianceContactMail

Type: String

Used in messages: Member

complianceContactPhone

Type: String

Used in messages: Member

compoundingConvention

Type: String

Allowed values in CompoundingConventionCodeSet:

Code | Name | Description
NACC | NACC | NACC. Constant name: NACC
NACQ | NACQ | NACQ. Constant name: NACQ
NACA | NACA | NACA. Constant name: NACA
NACS | NACS | NACS. Constant name: NACS
SIMPLE | Simple | Simple. Constant name: SIMPLE

Used in messages: Deposit, ForwardRateAgreement, InterestRateSwap

compoundingConventionOfRate

Type: String

Allowed values in CompoundingConventionCodeSet:

Code | Name | Description
NACC | NACC | NACC. Constant name: NACC
NACQ | NACQ | NACQ. Constant name: NACQ
NACA | NACA | NACA. Constant name: NACA
NACS | NACS | NACS. Constant name: NACS
SIMPLE | Simple | Simple. Constant name: SIMPLE

Used in messages: TradableInstrument

compoundingConventionOfYield

Type: String

Allowed values in CompoundingConventionCodeSet:

Code | Name | Description
NACC | NACC | NACC. Constant name: NACC
NACQ | NACQ | NACQ. Constant name: NACQ
NACA | NACA | NACA. Constant name: NACA
NACS | NACS | NACS. Constant name: NACS
SIMPLE | Simple | Simple. Constant name: SIMPLE

Used in messages: TradableInstrument

condType

Type: String

Allowed values in CondTypeCodeSet:

Code | Name | Description
ANY | Any | Used to get the latest entry regardless of condition. Constant name: ANY
INDICATIVE | Indicative | Indicative. Constant name: INDICATIVE
END_OF_DAY_SETTLEMENT | EndOfDaySettlement | EoD Margin Call. Constant name: END_OF_DAY_SETTLEMENT
INTRA_DAY_1_SETTLEMENT | IntraDay1Settlement | Intra day margin call. Constant name: INTRA_DAY_1_SETTLEMENT
INTRA_DAY_2_SETTLEMENT | IntraDay2Settlement | Intra day margin call. Constant name: INTRA_DAY_2_SETTLEMENT
INTRA_DAY_3_SETTLEMENT | IntraDay3Settlement | Intra day margin call. Constant name: INTRA_DAY_3_SETTLEMENT
INTRA_DAY_4_SETTLEMENT | IntraDay4Settlement | Intra day margin call. Constant name: INTRA_DAY_4_SETTLEMENT
INTRA_DAY_5_SETTLEMENT | IntraDay5Settlement | Intra day margin call. Constant name: INTRA_DAY_5_SETTLEMENT
INTRA_DAY_6_SETTLEMENT | IntraDay6Settlement | Intra day margin call. Constant name: INTRA_DAY_6_SETTLEMENT
INTRA_DAY_7_SETTLEMENT | IntraDay7Settlement | Intra day margin call. Constant name: INTRA_DAY_7_SETTLEMENT
INTRA_DAY_8_SETTLEMENT | IntraDay8Settlement | Intra day margin call. Constant name: INTRA_DAY_8_SETTLEMENT
INTRA_DAY_9_SETTLEMENT | IntraDay9Settlement | Intra day margin call. Constant name: INTRA_DAY_9_SETTLEMENT
INTRA_DAY_10_SETTLEMENT | IntraDay10Settlement | Intra day margin call. Constant name: INTRA_DAY_10_SETTLEMENT

Used in components: Contracts

Used in messages: AtmVolatilityEvent, CurveEvent, DividendEvent, OptionDataEvent, PriceEvent, SurfaceEvent, YieldEvent

confidencePercentile

Type: Long

Used in messages: Market

confirmed

Type: Boolean

Used in messages: ConfirmWithdrawalsReq

contractCategory

Type: String

Used in messages: TradableInstrument

contractCode

Type: String

Used in messages: TradableInstrument

contractDescription

Type: String

Used in messages: TradableInstrument

Contracts

Risk array information for one contract. Sub-object in GetRiskArrayRsp.

Name | Mult. | Type | Description
businessDate | [0..1] | String | Business date. Format is YYYY-MM-DD.
expiryDate | [0..1] | String | Expiry date of the contract. Format is YYYY-MM-DD.
mtmPrice | [0..1] | Long | Mark-to-Market price. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
strikePrice | [0..1] | Long | Strike price of option contracts. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
volatility | [0..1] | long | Volatility of the contract. MTM volatility for options. ATM volatility for futures that has options. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
riskArray | [0..1] | Long | Risk array of the contract.
externalInstrumentId | [0..1] | String | The external instrument id. This is the JSE Master ID.
timestamp | [0..1] | String | Risk array generation time. The format is "yyyy-MM- ddTHH:mm:ss.SSS".
condType | [0..1] | CodeSet | Price condition type.

Used in messages: GetRiskArrayRsp

contractSize

Multiple type definitions: contractSize[BigInteger, Long]. Default name used.

Type: BigInteger

Used in components: Trades

Used in messages: TradableInstrument

contractSizeType

Type: Integer

Allowed values in ContractSizeTypeCodeSet:

Code | Name | Description
1 | Base | Base. Constant name: BASE
2 | Mini | Mini. Constant name: MINI
3 | Maxi | Maxi. Constant name: MAXI
4 | Super | Super. Constant name: SUPER

Used in messages: TradableInstrument

corporateActionId

Type: String

Used in messages: CorporateAction

corporateActionIndicator

Type: String

Used in messages: TradableInstrument

corporateActionType

Type: String

Used in messages: CorporateAction

country

Type: String

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member, TradableInstrument

countryCode

Type: String

Used in messages: Market

countryId

Type: String

Used in messages: Country

couponDates

Type: String

Used in messages: TradableInstrument

couponFrequencyPeriod

Type: Integer

Used in messages: TradableInstrument

couponIndicator

Type: String

Allowed values in CouponIndicatorCodeSet:

Code | Name | Description
FIXED | Fixed | Coupon is Fixed. Constant name: FIXED

Used in messages: TradableInstrument

couponRate

Type: Long

Used in messages: TradableInstrument

csgId

Type: String

Used in messages: ClassSpreadGroup

currency

Type: String

Used in components: CashAccount, DividendFactors, FXCollateral, FXCollateralStatus, PaymentAdvices, Trades, Withdrawals

Used in messages: Country, RiskNodeEvent

currencyCode

Type: long

Used in components: FxDailyAccountSummaryDetails

Used in messages: Currency

currencyId

Type: String

Used in components: Instructions, InterestRates

Used in messages: Currency, TradableInstrument

currentRtcState

Type: String

Allowed values in RtcStateCodeSet:

Code | Name | Description
OPEN | Open | Open. Constant name: OPEN
END_OF_TRADE_MANAGEMENT | EndOfTradeManagement | Trade management is no longer allowed. Constant name: END_OF_TRADE_MANAGEMENT
END_OF_DAY | EndOfDay | End of Day process started. Constant name: END_OF_DAY
POST_END_OF_DAY | PostEndOfDay | End of Day process completed. Constant name: POST_END_OF_DAY

Used in messages: CurrentSystemState

currentSystemStateId

Type: Integer

Used in messages: CurrentSystemState

curveConstituentId

Type: Long

Used in messages: CurveConstituent

curveExternalId

Type: String

Used in messages: CurveEvent

curveId

Type: Long

Used in messages: Curve, CurveConstituent

curveName

Type: String

Used in messages: Curve

dailyMaximumParticipationFactor

Type: Long

Used in messages: Market

date

Type: String

Used in messages: CalendarDate

dateFractionOfAYear

Type: long

Used in messages: CurveEvent, SurfaceEvent

dateType

Type: int

Allowed values in DateTypeCodeSet:

Code | Name | Description
1 | Closed | On this day, the exchange is closed. Constant name: CLOSED
2 | HalfDay | On this day, the exchange uses a half-day schedule. Constant name: HALF_DAY
3 | Normal | On this day, the exchange uses the normal schedule. Constant name: NORMAL

Used in messages: CalendarDate

dayCountConvention

Type: String

Allowed values in DayCountConventionCodeSet:

Code | Name | Description
ACTUAL_360 | Actual360 | Actual 360. Constant name: ACTUAL_360
ACTUAL_365 | Actual365 | Actual 365. Constant name: ACTUAL_365

Used in messages: Curve, Deposit, ForwardRateAgreement, InterestRateSwap, Surface, TradableInstrument

dealId

Type: long

Used in components: Trade, Trades

Used in messages: QueryTradesReq

defaultScheduleStartTime

Type: String

Used in messages: RtcCalendar

delta

Type: long

Used in messages: OptionDataEvent

depositId

Type: Long

Used in messages: Deposit

depositName

Type: String

Used in messages: Deposit

description

Type: String

Used in messages: SubscriptionGroup

destinationCM

Type: String

Used in messages: CommissionEvent

destinationExternalAccountId

Type: String

Used in messages: AcceptCommissionReq, CommissionEvent

destinationReference

Type: String

Used in messages: AggregateTradesReq

Destinations

This object describes on which account a trade should be booked and at what quantity.

Name | Mult. | Type | Description
accountId | [1..1] | Long | The account to book a Trade to.
quantity | [1..1] | long | The quantity to book in the account. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
reference | [0..1] | String | An optional free text field.

Used in messages: AllocateTradeReq, ApproveGiveUpReq, ModifyTradeSubAccountReq

destinationTM

Type: String

Used in messages: AcceptCommissionReq, AddCommissionReq, CommissionEvent

disabledCount

Type: Integer

Used in messages: Instrument, Market, MarketList, Segment, TradableInstrument

displayName

Type: String

Used in messages: CalendarDate, RtcCalendar

dividend

Type: long

Used in messages: DividendEvent

dividendAmount

Type: Long

Used in components: DividendFactors

Used in messages: DailyAccountSummaryDetailsEvent

DividendFactors

The dividend factors used for calculating settlement amounts for dividends.

Name | Mult. | Type | Description
exDate | [0..1] | String | The ex-date for the dividend.
ldtDate | [0..1] | String | The LDT date for the dividend.
settlementDate | [0..1] | String | The settlement date for the dividend payment.
externalInstrumentId | [0..1] | String | The external instrument id. This is the JSE Master ID.
alphaCode | [0..1] | String | Common identifier code for derivative instruments
presentValue | [0..1] | Long | The present value factor (DivPV) for this dividend. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
forwardValue | [0..1] | Long | The forward value factor (DivFV) for this dividend. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
dividendAmount | [0..1] | Long | The dividend amount. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
currency | [0..1] | String | Currency of the dividend amount.
timestamp | [0..1] | String | Time stamp when the dividend calculation was started.

Used in messages: QueryDividendPaymentFactorsRsp

dividendPayment

Type: Long

Used in components: TotalClients, Totals

dividends

Type: Long

Used in components: MemberBalance1

effectiveDate

Type: String

Used in messages: ClearingMemberLink, CorporateAction

email

Type: String

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

endSequenceNumber

Type: long

Used in messages: TaxReplayReq

enteredTimestamp

Type: String

Used in messages: CommissionEvent

equityNotionalValue

Type: long

Used in messages: RiskNodeEvent

eventLinkId

Type: String

Used in components: RtcTradeExternalData, Trades

exchange

Type: String

Used in messages: TradableInstrument

exDate

Type: String

Used in components: DividendFactors

Used in messages: DividendEvent, QueryDividendPaymentFactorsReq

executionStatus

Multiple type definitions: status[int, String]. Renamed to executionStatus.

Type: executionStatusCodeSet

Used in messages: DailyAccountSummaryDetailsEvent

exerciseStyle

Type: int

Allowed values in ExerciseStyleCodeSet:

Code | Name | Description
1 | European | Constant name: EUROPEAN
2 | American | Constant name: AMERICAN

Used in messages: TradableInstrument

expirationDate

Type: String

Used in components: Trades

expiryDate

Type: String

Used in components: Contracts

Used in messages: TradableInstrument

externalAccountId

Type: String

Used in messages: AccountPositionEvent, AccountTradeEvent

externalCurveId

Type: String

Used in messages: Curve

externalDepositId

Type: String

Used in messages: Deposit

externalForwardRateAgreementId

Type: String

Used in messages: ForwardRateAgreement

externalFromAccount

Type: String

Used in components: Instructions

externalInstrumentId

Type: String

Used in components: Contracts, DividendFactors, NotionalValues, Trade, Trades

Used in messages: AbandonOptionPositionReq, AggregateTradesReq, AllocateTradeReq, ApproveGiveUpReq, AssignTradeReq, CancelGiveUpReq, CorrectAllocationErrorReq, CorrectPrincipalReq, CurveConstituent, ExerciseOptionPositionReq, GiveUpEvent, ModifyPositionSubAccountReq, ModifyTradeSubAccountReq, OptionDataEvent, PriceEvent, QueryTradesReq, RejectGiveUpReq, TripartiteAllocationReq, UpdateTradeReferenceReq

externalInstrumentIds

Type: String

Used in messages: GetRiskArrayReq

externalInterestRateSwapId

Type: String

Used in messages: InterestRateSwap

externalMatchedTradeId

Type: String

Used in components: Trade

externalPayment

Type: Boolean

Used in messages: Member

externalPositionAccount

Type: String

Used in components: Trades

externalPositionAccountId

Type: String

Used in messages: CdAddRtcPositionAccountReq, PositionAccount

externalSettlementAccountId

Type: String

Used in messages: SettlementAccount

externalSurfaceId

Type: String

Used in messages: Surface

externalToAccount

Type: String

Used in components: Instructions

extrapolationMethod

Type: String

Allowed values in ExtrapolationMethodCodeSet:

Code | Name | Description
LINEAR | Linear | Linear extrapolation. Constant name: LINEAR
FLAT | Flat | Use nearest interpolated value. Constant name: FLAT
FLAT_FORWARD | FlatForward | Float forward volatility extrapolation. Constant name: FLAT_FORWARD

Used in messages: Curve, Surface

fax

Type: String

Used in messages: Member

feedSource

Type: String

Allowed values in FeedSourceCodeSet:

Code | Name | Description
RTC | Rtc | Rtc. Constant name: RTC
PRICING_SYSTEM | PricingSystem | JSE Pricing system. Constant name: PRICING_SYSTEM

Used in messages: AtmVolatilityEvent, CurveEvent, DividendEvent, OptionDataEvent, PriceEvent, SurfaceEvent, YieldEvent

firmTradeId

Type: String

Used in components: RtcTradeExternalData, Trades

flow

Multiple type definitions: flow[int, Integer]. Default name used.

Type: int

Allowed values in BroadcastFlowsCodeSet:

Code | Name | Description
11 | PublicGlobalReferenceDataFlow | Global reference data flow. Constant name: PUBLIC_GLOBAL_REFERENCE_DATA_FLOW
301 | AccountEventFlow | Account event flow. Constant name: ACCOUNT_EVENT_FLOW
302 | RiskEventFlow | Risk event flow. Constant name: RISK_EVENT_FLOW
303 | MarketdataEventFlow | Market Data event flow. Constant name: MARKETDATA_EVENT_FLOW
304 | GiveupEventFlow | GiveUp event flow. Constant name: GIVEUP_EVENT_FLOW
305 | SettlementEventFlow | Settlement event flow. Constant name: SETTLEMENT_EVENT_FLOW

Used in messages: TaxEndSnapshot, TaxReplayEndEvent, TaxReplayReq, TaxReplayStartEvent, TaxSnapshotSubscribeReq, TaxStartSnapshot

forwardRateAgreementId

Type: Long

Used in messages: ForwardRateAgreement

forwardRateAgreementName

Type: String

Used in messages: ForwardRateAgreement

forwardValue

Type: Long

Used in components: DividendFactors

fourEyesId

Type: long

Used in messages: ApproveGiveUpReq, CancelGiveUpReq, GiveUpEvent, RejectGiveUpReq

fromAccount

Type: Long

Used in components: Trades

fromAccountId

Type: Long

Used in messages: AllocateTradeReq, AssignTradeReq, CorrectAllocationErrorReq, CorrectPrincipalReq, GiveUpEvent, ModifyPositionSubAccountReq, ModifyTradeSubAccountReq, TripartiteAllocationReq

fromAccountOwner

Type: String

Used in components: Trades

fromAccountSubType

Type: String

Used in components: Trades

fromAccountType

Type: String

Used in components: Trades

fromBdaCode

Type: Integer

Used in components: Trades

fromBranch

Type: String

Used in components: Trades

fromClientName

Type: String

Used in components: Trades

fromClientType

Type: String

Allowed values in ClientTypeCodeSet:

Code | Name | Description
INDIVIDUAL | Individual | Individual. Constant name: INDIVIDUAL
COMPANY | Company | Company. Constant name: COMPANY
HEDGE_FUND | HedgeFund | Hedge fund. Constant name: HEDGE_FUND
STATE_ENTERPRISE | StateEnterprise | State enterprise. Constant name: STATE_ENTERPRISE
TRUST | Trust | Trust. Constant name: TRUST
CLOSED_CORPORATION | ClosedCorporation | Closed corporation. Constant name: CLOSED_CORPORATION
ASSET_MANAGER | AssetManager | Asset manager. Constant name: ASSET_MANAGER
INVESTMENT_MANAGER | InvestmentManager | Investment manager. Constant name: INVESTMENT_MANAGER

Used in components: Trades

fromCM

Type: String

Used in components: Trades

fromDate

Type: String

Used in messages: TripartiteAgreement

fromExternalPositionAccount

Type: String

Used in components: Trades

fromInstrument

Type: String

Used in messages: CorporateAction

fromIsBeneficial

Type: boolean

Used in components: Trades

fromIsDiscretionary

Type: boolean

Used in components: Trades

fromIsNonResident

Type: boolean

Used in components: Trades

fromIsProfessional

Type: boolean

Used in components: Trades

fromIsShariah

Type: boolean

Used in components: Trades

fromIsStaff

Type: boolean

Used in components: Trades

fromPositionReason

Type: int

Allowed values in PositionReasonCodeSet:

Code | Name | Description
0 | UnknownReason | Unknown reason, an internal error has occured. Constant name: UNKNOWN_REASON
1 | Fee | Booking Fee. Constant name: FEE
2 | Trade | New trade. Constant name: TRADE
5 | Exercise | The position in the option was closed out due to early exercise, or the option is in-of-money and the option is exercised automatically. The future trade is the result of an option exercise. (early or in-the-money automatically by the system). Constant name: EXERCISE
7 | CashSettlementVm | Cash settlement of variation margin. Constant name: CASH_SETTLEMENT_VM
17 | SettlementNetting | Positions are concentrated to the settlement accounts and netted out on the original accounts. Constant name: SETTLEMENT_NETTING
18 | Settled | A payment or delivery has been processed by an external system and the settlement position is netted out. Constant name: SETTLED
19 | Collateral | Collateral position update. Constant name: COLLATERAL
26 | AllocatedFrom | The trade is allocated from a trading member account to a client account. Constant name: ALLOCATED_FROM
27 | AllocatedTo | The trade origins from an allocation from a trading member account to a client account. Constant name: ALLOCATED_TO
28 | AllocationCorrectionFrom | The deal is erroneously moved from the client account to another client account. Constant name: ALLOCATION_CORRECTION_FROM
29 | AllocationCorrectionTo | The deal originates from a move from one client account to another client account. Constant name: ALLOCATION_CORRECTION_TO
30 | PrincipalCorrectionFrom | A position is moved from a house main account to a house sub account or from a house sub account to a house main account by creating a new deal. Constant name: PRINCIPAL_CORRECTION_FROM
31 | PrincipalCorrectionTo | The deal originates from a move from a client account. Constant name: PRINCIPAL_CORRECTION_TO
32 | AccumulatedFrom | The deal was aggregated to another deal. Constant name: ACCUMULATED_FROM
33 | AccumulatedTo | The deal originates from a deal aggregation activity. Constant name: ACCUMULATED_TO
34 | PosSubaccountModFrom | The position sub account was moved from this account.. Constant name: POS_SUBACCOUNT_MOD_FROM
35 | PosSubaccountModTo | The position sub account was moved to this account. Constant name: POS_SUBACCOUNT_MOD_TO
36 | AssignedFrom | The deal assign source. Constant name: ASSIGNED_FROM
37 | AssignedTo | The deal originates from a deal assign activity. Constant name: ASSIGNED_TO
40 | AssignInitiated | The deal assign initiated from. Constant name: ASSIGN_INITIATED
41 | AssignRejected | The deal assign rejected by receiver. Constant name: ASSIGN_REJECTED
42 | AssignCancelled | The deal assign cancelled by initiator. Constant name: ASSIGN_CANCELLED
43 | AssignExpired | The deal assign has expired. Constant name: ASSIGN_EXPIRED
44 | StartOfDay | Start of day position snapshot. Constant name: START_OF_DAY
45 | TripartiteFrom | The deal has been assigned using Tripartite agreement. Constant name: TRIPARTITE_FROM
47 | TripartiteTo | The deal origins from an assign using Tripartite agreement. Constant name: TRIPARTITE_TO
49 | TripartiteInitiated | Tripartite assign has been initiated. Constant name: TRIPARTITE_INITIATED
50 | TripartiteApproved | Tripartite assign has been approved. Constant name: TRIPARTITE_APPROVED
51 | TripartiteRejected | Tripartite assign has been rejected. Constant name: TRIPARTITE_REJECTED
52 | TripartiteCancelled | Tripartite assign has been cancelled. Constant name: TRIPARTITE_CANCELLED
53 | TripartiteExpired | Tripartite assign has expired. Constant name: TRIPARTITE_EXPIRED
54 | TradeSubaccountModFrom | Position has been moved from this account as Sub account modification. Constant name: TRADE_SUBACCOUNT_MOD_FROM
55 | TradeSubaccountModTo | Position has been moved to this account as Sub account modification. Constant name: TRADE_SUBACCOUNT_MOD_TO
56 | ZeroFee | Trade updated for zero fee. Constant name: ZERO_FEE
59 | Abandon | Option abandon. Constant name: ABANDON
60 | TransferredSpFrom | Position has been moved from this account by Transfer Single Position. Constant name: TRANSFERRED_SP_FROM
61 | TransferredSpTo | Position has been moved to this account by Transfer Single Position. Constant name: TRANSFERRED_SP_TO
62 | CloseOut | A close-out deal is created by the system to close open positions in a future on expiration of a tradable instrument. Constant name: CLOSE_OUT
63 | PartiallySettled | Partially settled payment. Constant name: PARTIALLY_SETTLED
64 | NetPayment | Payment from external system. Constant name: NET_PAYMENT
65 | FeeVat | VAT amount for booking fee. Constant name: FEE_VAT
66 | Cancelled | Trade cancelled. Constant name: CANCELLED
67 | CancelledBust | Trade busted. Constant name: CANCELLED_BUST
68 | CancelledPriceAdjust | Trade cancelled for price adjust. Constant name: CANCELLED_PRICE_ADJUST
69 | Dividend | Dividend payment for dividend neutral contracts. Constant name: DIVIDEND
70 | CorporateActionPositionCloseOut | Close out position for Corporate Action. Constant name: CLOSE_OUT_CA
71 | CorporateActionNewPosition | Created position for Corporate Action. Constant name: NEW_POSITION_CA
73 | InterestOnCollateral | Interest amount on collateral. Constant name: INTEREST_ON_COLLATERAL
74 | FundingInterest | Funding interest payment for CFDs. Constant name: FUNDING_INTEREST
76 | Deposit | A deposit of an asset in an account. Constant name: DEPOSIT
77 | Withdrawal | A withdrawal of an asset from an account. Constant name: WITHDRAWAL
78 | TransferredFrom | An opposite trade was created at the original account as a result of a client or TM position transfer. Constant name: TRANSFERRED_FROM
79 | TransferredTo | A trade was created at the destination account as a result of a client or TM position transfer. Constant name: TRANSFERRED_TO
80 | EndOfDay | End of day position snapshot. Constant name: END_OF_DAY
81 | SystemStartup | RTC system startup snapshot. Constant name: SYSTEM_STARTUP
82 | DefaultFrom | The position was transferred due to a defaulted member or client. Constant name: DEFAULT_FROM
83 | DefaultTo | The position was transferred due to a defaulted member or client. Constant name: DEFAULT_TO
84 | Manual | Event due to a manual update. Constant name: MANUAL
85 | Migration | An add/update due to migration. Constant name: MIGRATION
86 | Commission | Commissions added by members. Constant name: COMMISSION
88 | RiskFee | Risk Fee. Constant name: RISK_FEE
90 | RiskFeeVat | VAT amount for risk fee. Constant name: RISK_FEE_VAT
91 | ReverseTransaction | A position was updated due to a revert of the EOD step. Constant name: REVERSE_TRANSACTION
92 | Deleted | A close out, option exercise or abandon trade was marked as deleted due to a revert of the EOD step. Constant name: DELETED

Used in components: Trades

fromRemainingQuantity

Type: BigInteger

Used in components: Trades

fromTM

Type: String

Used in components: Trades

fromTradeId

Type: Long

Used in components: Trades

fromTradeTime

Type: String

Used in components: Trades

fromTradingUser

Type: String

Used in components: Trades

fullName

Type: String

Used in messages: Member

fundingInterest

Type: Long

Used in components: MemberBalance1, TotalClients, Totals

fundingInterestAmount

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

fxCashAmountBF

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

fxCashAmountCF

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

fxCashAmountMovement

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

FXCollateral

FX Collateral input.

Name | Mult. | Type | Description
allowedFXAmount | [1..1] | long | Amount of allowed FX in ZAR. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
availableFXAmount | [1..1] | long | Amount of available Collateral FX Currency. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
currency | [1..1] | String | Available Currency. The alphabetic currency code according to ISO 4217.
valuationPrice | [1..1] | long | Valuation price of FX Currency. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

Used in messages: RegisterFxCollateralReq

fxCollateralQty

Type: Long

Used in components: FxDailyAccountSummaryDetails

FXCollateralStatus

Status of requested registration of FX collateral.

Name | Mult. | Type | Description
postedQtyFx | [1..1] | long | The resulting posted collateral quantity per FX. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
postedValueFx | [1..1] | long | The resulting posted collateral value in ZAR per FX, after haircut. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
currency | [1..1] | String | Available Currency. The alphabetic currency code according to ISO 4217.
statusText | [1..1] | String | Description of status of the transaction.

Used in messages: RegisterFXCollateralRsp

fxCollateralValue

Type: Long

Used in components: FxDailyAccountSummaryDetails

FxDailyAccountSummaryDetails

FX part of the daily account summary.

Name | Mult. | Type | Description
currencyCode | [0..1] | long | The Currency Code, ISO 4217 alphabetic Code. Example: USD
interestRateOnCashCollateral | [0..1] | Long | Interest rate for the currency. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.INTEREST.
interestAmountOnCashCollateral | [0..1] | Long | Interest amount for the currency. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
cashCollateralMovement | [0..1] | Long | Total movement in Cash Collateral for the current day that will be settled in the given currency This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
fxCollateralQty | [0..1] | Long | FX Collateral position quantity (in FX currency). This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
fxMarketValue | [0..1] | Long | FX collateral position market value (in ZAR). This is the value before haircut: qty * price. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
fxCollateralValue | [0..1] | Long | FX collateral value (in ZAR). This is the value calculated during the collateral process (using haircut%, max value). This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

Used in components: TotalClients, Totals

Used in messages: DailyAccountSummaryDetailsEvent

fxMarketValue

Type: Long

Used in components: FxDailyAccountSummaryDetails

fxNotionalValue

Type: long

Used in messages: RiskNodeEvent

FxRequests

Amount in ZAR per entity that can be covered with FX collateral. Returned as an array in GetRequestsForFXCollateralRsp.

Name | Mult. | Type | Description
valueDate | [1..1] | String | Value date, format YYYY-MM-DD.
clientId | [1..1] | String | The client ID / TM House.
tradingMemberId | [1..1] | String | The ID of the Trading Member.
clearingMemberId | [1..1] | String | The ID of the Clearing Member.
amount | [1..1] | Long | Amount in ZAR that can be covered with FX. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
ccy | [1..1] | String | Valued Currency.

Used in messages: GetRequestsForFXCollateralRsp

gamma

Type: long

Used in messages: OptionDataEvent

grossNotionalValue

Type: long

Used in components: NotionalValues

groupName

Type: String

Used in messages: SeriesSpreadGroup

haircut

Type: Long

Used in messages: EligibleCurrency, EligibleSecurity

handle

Type: int

Used in messages: TaxLogoutReq, TaxRemoveSubscriptionReq, TaxReplayRsp, TaxSnapshotSubscribeRsp

hasMore

Type: boolean

Used in messages: QueryTradesRsp

idNumber

Type: Long

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

imrOfficial

Type: Long

Used in messages: TradableInstrument

imrStatisticsPeriod

Type: Long

Used in messages: Market

initialMargin

Type: Long

Used in components: MemberBalance1, TotalClients, Totals

Used in messages: DailyAccountSummaryDetailsEvent

initialMarginMovementCash

Type: Long

Used in components: TotalClients, Totals

initialMarginMovementSecurities

Type: Long

Used in components: TotalClients, Totals

initialTradeId

Type: Long

Used in components: Trades

initialValue

Type: BigInteger

Used in components: Trade, Trades

initiatingCM

Type: String

Used in messages: CommissionEvent

initiatingExternalAccountId

Type: String

Used in messages: AddCommissionReq, CommissionEvent

initiatingTM

Type: String

Used in messages: AddCommissionReq, CommissionEvent

initiator

Type: String

Used in messages: ApproveGiveUpReq, CancelGiveUpReq, GiveUpEvent, RejectGiveUpReq, TripartiteAgreement

instructionId

Type: long

Used in components: Instructions

Instructions

Settlement instructions suitable to pass on to the settlement systems. The settlement instructions in RTC will be in state PENDING until settlement has been confirmed.

Name | Mult. | Type | Description
instructionId | [0..1] | long | System generated unique ID.
settlementDate | [0..1] | String | Settlement date. The format is yyyy-MM-dd.
referenceNo | [0..1] | String | Message reference no. The reference is built out of 3 components 1. 76 (CM receives payment from JSE) or 77 (CM payments, JSE receives) 2. CM template (from member) 3. Settlement date E.g. 760210515, Merril Lynch receives payment on May 21, 2015
sendCode | [0..1] | String | JSE BIC.
minusAccount | [0..1] | String | The receiving member account where the position effect should be booked due to this instruction.
senderBIC | [0..1] | String | BIC code of the settlement bank of the paying member. Note that this can be the BIC of the settlement bank of JSE.
senderBranch | [0..1] | String | Branch no of the sender (used for SWIFT).
senderAccountId | [0..1] | String | Account number that the receiving member has in the settlement bank. Note that this can be the account of the clearing house.
externalFromAccount | [0..1] | String | The external account from which the amount should be moved.
plusAccount | [0..1] | String | The sending member account where the position effect should be booked due to this instruction.
receiverBIC | [0..1] | String | BIC code of the settlement bank of the receiving member. Note that this can be the BIC of the settlement bank of JSE.
receiverBranch | [0..1] | String | Branch no of the receiver (used for swift).
receiverAccountId | [0..1] | String | Account number that the receiving member has in the settlement bank. Note that this can be the account of the clearing house.
externalToAccount | [0..1] | String | The external account to which the amount should be moved.
amount | [0..1] | Long | The amount to move. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
unconfirmedSettledAmount | [0..1] | long | The sum of reported settled amounts that are waiting for confirmation on a position update. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
settledAmount | [0..1] | long | The sum of reported settled amounts that have been matched to this instruction. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
currencyId | [0..1] | String | Currency in which the amount is settled. The currency code according to ISO 4217.
settlementInstructionState | [0..1] | CodeSet |
settlementRunId | [0..1] | Long | Refers to the parent settlement run.

Used in messages: GetSettlementInstructionsRsp

instrumentCurrency

Type: String

Used in components: Trades

instrumentExternalId

Type: String

Used in messages: AtmVolatilityEvent, DividendEvent, YieldEvent

instrumentId

Type: String

Used in messages: Instrument

instrumentIdType

Type: String

Allowed values in InstrumentIdTypeCodeSet:

Code | Name | Description
ISIN | Isin | ISIN identifier. Constant name: ISIN
CUSIP | Cusip | CUSIP identifier. Constant name: CUSIP
SYMB | Symb | SYMBOL identifier. Constant name: SYMB

Used in messages: Instrument

instrumentMasterId

Type: String

Used in messages: EligibleCurrency, EligibleSecurity

instrumentSubType

Type: String

Allowed values in InstrumentSubTypeCodeSet:

Code | Name | Description
EQUITY | Equity | Equity. Constant name: EQUITY
INDEX | Index | Index. Constant name: INDEX
SINGLE_STOCK | SingleStock | Single Stock. Constant name: SINGLE_STOCK
CFD | CFD | Contract For Difference. Constant name: CFD
DIVIDEND_NEUTRAL | DividendNeutral | Dividend Neutral. Constant name: DIVIDEND_NEUTRAL
FOREX | Forex | Forex. Constant name: FOREX
FOREX_PAIR | ForexPair | Forex Pair. Constant name: FOREX_PAIR
BOND | Bond | Bond. Constant name: BOND
BASKET | Basket | Basket. Constant name: BASKET
EXOTIC | Exotic | Exotic. Constant name: EXOTIC
FOREX_INDEX | ForexIndex | Forex index. Constant name: FOREX_INDEX
FWDFWD | Fwdfwd | FwdFwd. Constant name: FWDFWD
EXOTIC_OPTION | ExoticOption | Exotic option. Constant name: EXOTIC_OPTION
INTERNATIONAL_DIVIDEND_NEUTRAL | InternationalDividendNeutral | International dividend neutral. Constant name: INTERNATIONAL_DIVIDEND_NEUTRAL
INTERNATIONAL_EQUITY | InternationalEquity | International equity. Constant name: INTERNATIONAL_EQUITY
INTERNATIONAL_INDEX | InternationalIndex | International index. Constant name: INTERNATIONAL_INDEX
INVERTED | Inverted | Inverted. Constant name: INVERTED
OTHER | Other | Other. Constant name: OTHER
QUANTO | Quanto | Quanto. Constant name: QUANTO
QUANTO_INTL | QuantoIntl | Quanto international. Constant name: QUANTO_INTL
QUANTO_INDEX_DIVIDEND_NEUTRAL | QuantoIndexDividendNeutral | Quanto index dividend neutral. Constant name: QUANTO_INDEX_DIVIDEND_NEUTRAL
QUANTO_INTL_DIVIDEND_NEUTRAL | QuantoIntlDividendNeutral | Quanto international dividend neutral. Constant name: QUANTO_INTL_DIVIDEND_NEUTRAL
VARIANCE | Variance | Variance. Constant name: VARIANCE

Used in components: Trades

Used in messages: TradableInstrument

instrumentType

Type: String

Allowed values in InstrumentTypeCodeSet:

Code | Name | Description
FU | Future | Future. Constant name: FUTURE
BO | Bond | Bond. Constant name: BOND
OPT | Option | Parent of OptionTradableInstruments. Constant name: OPTION
SPOT | Spot | Spot type instrument. Constant name: SPOT
CFD | CFD | Contract For Difference. Constant name: CFD

Used in components: Trades

Used in messages: TradableInstrument

interestAmountOnCashCollateral

Type: Long

Used in components: FxDailyAccountSummaryDetails

Used in messages: DailyAccountSummaryDetailsEvent

interestCommencementDate

Type: String

Used in messages: TradableInstrument

interestRate

Type: Long

Used in components: InterestRates

interestRateConvention

Type: String

Allowed values in InterestRateConventionCodeSet:

Code | Name | Description
NACC | NACC | NACC. Constant name: NACC

Used in messages: Curve

interestRateOnCashCollateral

Type: Long

Used in components: FxDailyAccountSummaryDetails

Used in messages: DailyAccountSummaryDetailsEvent

InterestRates

Keeps information about interest rate for a currency

Name | Mult. | Type | Description
currencyId | [0..1] | String | ID of the currency. ISO 4217 alphabetic code.
interestRate | [0..1] | Long | Interest rate for the currency. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

Used in messages: CmBalancing2Event

interestRateSpread

Multiple type definitions: interestRateSpread[BigInteger, Long]. Default name used.

Type: BigInteger

Used in components: Trade, Trades

interestRateSwapId

Type: Long

Used in messages: InterestRateSwap

interestRateSwapName

Type: String

Used in messages: InterestRateSwap

internalAccountId

Type: Long

Used in messages: QueryTradesReq

internalCashAccountId

Type: Long

Used in components: CashAccount

internalCode

Type: int

Used in messages: TaxReplayEndEvent

internalId

Type: String

Used in messages: Instrument, TradableInstrument

internalMarketListId

Type: String

Used in messages: MarketList

internalSegmentId

Type: String

Used in messages: Segment, TradableInstrument

internalTradableInstrumentId

Type: Long

Used in messages: QueryTradesReq

interpolationMethod

Type: String

Allowed values in InterpolationMethodCodeSet:

Code | Name | Description
LINEAR | Linear | Linear. Constant name: LINEAR
FLAT_FORWARD | FlatForward | Float forward volatility interpolation. Constant name: FLAT_FORWARD
NATURAL_CUBIC_SPLINE | NaturalCubicSpline | Natural cubic spline. Constant name: NATURAL_CUBIC_SPLINE
MONOTONE_PRESERVING | MonotonePreserving | Variant of cubic spline that ensures positive and continuous forward rates. For yield curve interpolation. Constant name: MONOTONE_PRESERVING
MONOTONE_CONVEX | MonotoneConvex | Ensures a positive and continuous forward rate. For yield curve interpolation.. Constant name: MONOTONE_CONVEX

Used in messages: Curve, Surface

inwardListed

Type: Boolean

Used in components: Trades

Used in messages: TradableInstrument

isBeneficial

Type: Boolean

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

isBuy

Type: boolean

Used in components: Trade, Trades

Used in messages: GiveUpEvent

isCall

Type: Boolean

Used in messages: TradableInstrument

isClearingHouse

Type: Boolean

Used in messages: RiskNode

isClearingHouseAccount

Type: Boolean

Used in messages: SettlementAccount

isDefault

Type: Boolean

Used in messages: RiskNode

isDefaultClearingHouseAccount

Type: Boolean

Used in messages: SettlementAccount

isDisabled

Type: Boolean

Used in messages: CdEnableDisableRtcMemberClientReq, CollateralAccount, Member

isDiscretionary

Type: Boolean

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

isEnabled

Type: Boolean

Used in messages: CdEnableDisableRtcPositionAccountReq, Instrument, Market, MarketList, PositionAccount, Segment, SettlementAccount, TradableInstrument

isin

Type: String

Used in components: Trades

Used in messages: EligibleSecurity, TradableInstrument

isNettingAccount

Type: Boolean

Used in messages: SettlementAccount

isNonResident

Type: boolean

Used in components: CashAccount, Trades

Used in messages: CdUpdateRtcMemberClientReq, Member

isProfessional

Type: Boolean

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

isShariah

Type: Boolean

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

isStaff

Type: Boolean

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

issuer

Type: String

Used in messages: Instrument

isTestSystem

Type: Boolean

Used in messages: TaxLogonRsp

isTradable

Type: Boolean

Used in messages: TradableInstrument

isValidTradingBusinessDate

Type: Boolean

Used in messages: CalendarDate

jspanValue

Type: long

Used in messages: RiskNodeEvent

key

Multiple type definitions: key[String, int]. Default name used.

Type: String

Used in components: CashAccount

Used in messages: AccessGroup, CalendarDate, ClassSpreadGroup, ClearingMemberLink, CollateralAccount, CorporateAction, Country, Currency, CurrentSystemState, Curve, CurveConstituent, Deposit, EligibleCurrency, EligibleSecurity, ForwardRateAgreement, Instrument, InterestRateSwap, Market, MarketList, Member, PositionAccount, RiskNode, RtcCalendar, Segment, SeriesSpreadGroup, SettlementAccount, SubscriptionGroup, Surface, TaxSnapshotSubscribeReq, TradableInstrument, TripartiteAgreement

largePositionAddOn

Type: long

Used in messages: RiskNodeEvent

lastMkt

Type: String

Used in components: Trades

lastPollSequenceNumber

Type: Long

Used in messages: TaxSnapshotSubscribeReq

lastPublishedSeqNo

Type: Long

Used in messages: TaxSnapshotSubscribeRsp

lastTradingDate

Type: String

Used in messages: TradableInstrument

latestSSN

Type: long

Used in messages: CdAddRtcMemberClientRsp, CdAddRtcPositionAccountRsp, CdEnableDisableRtcPositionAccountRsp, CdResponse

ldtDate

Type: String

Used in components: DividendFactors

Used in messages: CorporateAction

liquidationAddOn

Type: long

Used in messages: RiskNodeEvent

liquidationPeriod

Multiple type definitions: liquidationPeriod[Integer, long]. Default name used.

Type: long

Used in components: NotionalValues

Used in messages: TradableInstrument

listingDate

Type: String

Used in messages: TradableInstrument

listOfAliases

Type: String

Used in messages: Instrument, Member, TradableInstrument

loginStatus

Type: int

Used in messages: TaxLogonRsp

logonAccepted

Type: Boolean

Used in messages: TaxLogonRsp

longInitialValue

Type: BigInteger

Used in messages: AccountPositionEvent

longMarketValue

Type: BigInteger

Used in messages: AccountPositionEvent

longName

Type: String

Used in messages: Currency

longNominalQty

Type: BigInteger

Used in messages: AccountPositionEvent

longQty

Type: long

Used in messages: AccountPositionEvent

longSpreadVolume

Type: BigInteger

Used in messages: AccountPositionEvent

lookbackPeriod

Type: Long

Used in messages: Market

majorVersion

Type: int

Used in messages: TaxLogonReq

manualExerciseEndTime

Type: String

Used in messages: Market

market

Type: String

Used in components: Trades

Used in messages: AcceptCommissionReq, AddCommissionReq, CommissionEvent

marketId

Type: String

Used in messages: ClearingMemberLink, Market, TradableInstrument

marketList

Type: String

Used in components: Trades

marketListId

Type: String

Used in messages: MarketList, TradableInstrument

marketSegment

Type: String

Used in components: Trades

matchingContact

Type: String

Used in messages: Member

matchingContactMail

Type: String

Used in messages: Member

matchingContactPhone

Type: String

Used in messages: Member

maturityDate

Type: String

Used in messages: TradableInstrument

maxAmount

Type: Long

Used in messages: EligibleCurrency, EligibleSecurity

maxLostHeartbeats

Type: Integer

Used in messages: TaxLogonRsp

maxNumberOfInstrumentsReturned

Type: Integer

Used in messages: GetRiskArrayReq

maxScaleDown

Type: Long

Used in messages: Market

maxScaleUp

Type: Long

Used in messages: Market

member

Type: String

Used in messages: TaxLogonReq, TaxReplayReq, TaxSnapshotSubscribeReq

MemberBalance1

CM balance 1 information for the CM or one of its cleared TM members.

Name | Mult. | Type | Description
memberId | [0..1] | String | ID of clearing member or trading member.
initialMargin | [0..1] | Long | Total Initial margin for TM house and clients accumulated to the Trading member. Always a positive value. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
additionalMargin | [0..1] | Long | Total additional margin for TM house and clients accumulated to the Trading member. Always a positive value. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
variationMargin | [0..1] | Long | Total Variation margin for TM house and clients. Negative if the total net is a loss. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
dividends | [0..1] | Long | Sum of all Dividends for dividend neutral contracts. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
fundingInterest | [0..1] | Long | Sum of Interest on CFD contracts.

Used in messages: CmBalancing1Event

MemberBalance2

CM balance 2 information for the CM or one of its cleared TM members.

Name | Mult. | Type | Description
memberId | [0..1] | String | ID of clearing member or trading member.
commissions | [0..1] | Long | Total commission for the specified member ID. A negative number means that the member will pay the amount for commissions. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
bookingFees | [0..1] | Long | Total net booking fee, including VAT, for the specified member ID. A negative number means that the member will pay the amount. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
riskFees | [0..1] | Long | Total net Fees in respect of initial margin covered with non-cash collateral, for the specified member ID. A negative number means that the member will pay the amount. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
clearingFees | [0..1] | Long | Total net clearing fee, including VAT, for the specified member ID. A negative number means that the member will pay the amount. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
reserved | [0..1] | Long | Total net reserved, for the specified member ID. A negative number means that the member will pay the amount. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

Used in messages: CmBalancing2Event

memberClientId

Type: String

Used in messages: CdAddRtcMemberClientClearingLinkReq

memberId

Type: String

Used in components: MemberBalance1, MemberBalance2

Used in messages: ChangePasswordReq, Member

memberType

Type: Integer

Allowed values in MemberTypeCodeSet:

Code | Name | Description
1 | Marketplace | The Clearing House itself. Constant name: MARKETPLACE
5 | InformationVendor | An Information Vendor. Constant name: INFORMATION_VENDOR
7 | MemberUnit | A member unit is a type of member that must be connected to a parent member, for example to divide an organization into different departments. Trading Member Branches and Clients are both of the type MEMBER_UNIT. Constant name: MEMBER_UNIT
8 | ClearingOnlyMember | A Clearing Member. Constant name: CLEARING_ONLY_MEMBER
9 | TradingOnlyMember | A Trading Member. Constant name: TRADING_ONLY_MEMBER

Used in messages: Member

message

Type: String

Used in messages: AbandonOptionPositionRsp, AggregateTradesRsp, AllocateTradeRsp, CdAddRtcMemberClientRsp, CdAddRtcPositionAccountRsp, CdEnableDisableRtcPositionAccountRsp, CdResponse, CorrectAllocationErrorRsp, CorrectPrincipalRsp, ExerciseOptionPositionRsp, GetPaymentAdvicesRsp, GetRequestsForFXCollateralRsp, GetRiskArrayRsp, GetSequenceNumbersRsp, GetSettlementInstructionsRsp, ModifyPositionSubAccountRsp, ModifyTradeSubAccountRsp, QueryDividendPaymentFactorsRsp, QueryTradesRsp, RegisterFXCollateralRsp, ResponseMessage, SetCmBalancingStatusRsp, SimpleRsp, TaxEndSnapshot, TaxHeartbeatRsp, TaxLogonRsp, TaxReplayRsp, TaxSnapshotSubscribeRsp, TripartiteAllocationRsp, UpdateTradeReferenceRsp

messageReference

Type: String

Used in messages: ResponseMessage

microVersion

Type: int

Used in messages: TaxLogonReq

minimumCashLimit

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

minimumZARLimit

Type: Integer

Used in messages: CdSetMinimumZARLimitReq, RiskNode

minorVersion

Type: int

Used in messages: TaxLogonReq

minusAccount

Type: String

Used in components: Instructions

moveId

Type: Long

Used in messages: AggregateTradesReq, AllocateTradeReq, AssignTradeReq, CorrectAllocationErrorReq, CorrectPrincipalReq, ModifyPositionSubAccountReq, ModifyTradeSubAccountReq, TripartiteAllocationReq

mtmPrice

Type: Long

Used in components: Contracts

multilegReportType

Type: Integer

Allowed values in MultilegReportTypeCodeSet:

Code | Name | Description
1 | TBC | TBC. Constant name: TBC

Used in components: RtcTradeExternalData

name

Type: String

Used in messages: Country, Instrument, Market, MarketList, Segment

negativePriceAllowed

Type: Boolean

Used in messages: TradableInstrument

netAmount

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

netFromOtherSystems

Type: Long

Used in messages: AggregatedSummaryClearingMemberEvent

netNotionalValue

Type: long

Used in components: NotionalValues

newPassword

Type: String

Used in messages: ChangePasswordReq

nextSequence

Type: Long

Used in messages: TaxReplayEndEvent

nextTradeIds

Multiple type definitions: nextTradeIds[String, long[]]. Default name used.

Type: long

Used in components: Trade, Trades

Used in messages: QueryTradesReq

nominal

Type: Long

Used in messages: TradableInstrument

nominatedMember

Type: String

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

nominatedMemberId

Type: String

Used in components: Trades

nonTradingDaysBeforeDefault

Type: Long

Used in messages: Market

notionalValueDecimals

Type: Integer

Used in messages: Currency

NotionalValues

Object to hold notional values per underlying.

Name
Mult.
Type
Description

netNotionalValue
[0..1]
long
The net notional exposure of the specified underlying instrument. The Net Notional Exposure per Underlying is defined as the aggregated notional exposure (with sign) of all positions in tradable instruments with the same underlying spot. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

grossNotionalValue
[0..1]
long
The gross notional exposure of the specified underlying instrument. Gross is defined as the sum of the absolute notional exposure per position in instruments with the same underlying spot. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

externalInstrumentId
[0..1]
String
The external instrument id. This is the JSE Master ID.

liquidationPeriod
[0..1]
long
The calculated liquidation period. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

Used in messages: RiskNodeEvent

numberOfShares

Type: Long

Used in messages: TradableInstrument

offBookQuantity

Type: Long

Used in components: RtcTradeExternalData, Trades

oldPassword

Type: String

Used in messages: ChangePasswordReq

onBookQuantity

Type: Long

Used in components: RtcTradeExternalData, Trades

oneDayVar

Type: Long

Used in messages: TradableInstrument

optionAllocationModelType

Type: int

Allowed values in OptionAllocationModelTypeCodeSet:

Code | Name | Description
1 | ProRata | Pro-rata allocation. Constant name: PRO_RATA
2 | Random | Random allocation. Constant name: RANDOM

Used in messages: Market

optionDelta

Multiple type definitions: optionDelta[BigInteger, Long]. Default name used.

Type: BigInteger

Used in components: RtcTradeExternalData, Trades

optionStyle

Type: Integer

Allowed values in OptionStyleCodeSet:

Code | Name | Description
1 | FutureStyle | Future styled. Constant name: FUTURE_STYLE
2 | UpfrontPremium | Upfront premium. Constant name: UPFRONT_PREMIUM

Used in messages: TradableInstrument

originalPrice

Type: BigInteger

Used in components: Trades

originalQuantity

Type: BigInteger

Used in components: Trade, Trades

originalTradingSystemMatchId

Type: String

Used in components: RtcTradeExternalData

origTradeId

Type: Long

Used in components: Trades

outsidePriceBand

Type: boolean

Used in components: RtcTradeExternalData

ownTM

Type: String

Used in messages: Member

pageSize

Type: Integer

Used in messages: GetPaymentAdvicesReq

parentHouseRiskNodeId

Type: Long

Used in messages: RiskNode

parentInternalId

Type: String

Used in messages: Instrument, MarketList, Segment, TradableInstrument

parentRiskNodeId

Type: Long

Used in messages: RiskNode

participantUnitId

Type: String

Used in components: CashAccount, PaymentAdvices, Trades, Withdrawals

Used in messages: AccessGroup, CdAddRtcPositionAccountReq, ClearingMemberLink, CollateralAccount, PositionAccount, RiskNode, SettlementAccount

participantUnitType

Type: Integer

Allowed values in ParticipantUnitTypeCodeSet:

Code | Name | Description
1 | ClearingMember | Clearing Member. Constant name: CLEARING_MEMBER
2 | TradingMember | Trading Member. Constant name: TRADING_MEMBER
3 | Client | Client. Constant name: CLIENT
4 | TradingMemberBranch | Trading Member Branch. Constant name: TRADING_MEMBER_BRANCH
5 | InformationVendor | Information Vendor. Constant name: INFORMATION_VENDOR

Used in messages: Member

partitionHbtInterval

Type: Integer

Used in messages: TaxLogonRsp

partitionId

Type: Integer

Used in messages: SubscriptionGroup

passportNumber

Type: String

Used in components: Trades

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

password

Type: String

Used in messages: TaxLogonReq

PaymentAdvices

An indication that the Clearing Member will deposit additional cash collateral.

Name
Mult.
Type
Description

strateReferenceNo
[1..1]
String
The payment reference generated by the CSD.

strateCode
[1..1]
String
Strate code for the Client or Trading Member.

riskNodeId
[1..1]
Long
Risk node ID, RTC internal ID.

amount
[1..1]
Long
The amount in ZAR that must be called for in cash collateral. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

currency
[1..1]
String
The currency code for the amount field, according to ISO 4217. Normally ZAR.

settlementAmount
[0..1]
Long
The amount in 'settlementCurrency' that must be called for in cash collateral. If the settlementCurrency is not ZAR, this amount has been calculated by RTC using the most recent exchange rate. This field is set by RTC. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

settlementCurrency
[0..1]
String
The currency used to settle this withdrawal. Is the preferred currency for the member/client or ZAR if preferred currency is not set. This field is set by RTC.

clearingMember
[0..1]
String
Clearing Member ID. Set on outbound messages.

paymentAdviceState
[0..1]
CodeSet
The payment advice state

senderRef
[0..1]
String
Unique Id generated by the clearing system.

participantUnitId
[0..1]
String
The owner (member or client) of the risk node. Set on outgoing messages from RTC.

Used in messages: GetPaymentAdvicesRsp

paymentAdviceState

Type: int

Allowed values in PaymentAdviceStateCodeSet:

Code | Name | Description
0 | Received | Constant name: RECEIVED
1 | NotifiedToCm | Constant name: NOTIFIED_TO_CM
2 | RejectedByCm | Constant name: REJECTED_BY_CM
3 | ConfirmedByCm | Constant name: CONFIRMED_BY_CM
4 | SettledByCm | Constant name: SETTLED_BY_CM
5 | Cancelled | Constant name: CANCELLED

Used in components: PaymentAdvices, Withdrawals

paymentDate

Type: String

Used in messages: DividendEvent

pePartitionId

Type: Integer

Used in messages: Curve, Deposit, ForwardRateAgreement, InterestRateSwap, Surface, TradableInstrument

phone

Type: String

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

plusAccount

Type: String

Used in components: Instructions

pmPartitionId

Type: Integer

Used in messages: Instrument

pollSequenceNumber

Type: Long

Used in messages: TaxEndSnapshot

portfolioRisk

Type: long

Used in messages: RiskNodeEvent

portfolioValue

Type: long

Used in messages: RiskNodeEvent

positionAccountExternalId

Type: String

Used in messages: CdAddRtcPositionAccountRsp

positionAccountId

Type: Long

Used in messages: CdEnableDisableRtcPositionAccountReq, PositionAccount

positionAccountSubType

Type: Integer

Allowed values in PositionAccountSubTypeCodeSet:

Code | Name | Description
1 | Suspense | Suspense. Constant name: SUSPENSE
2 | Main | Main. Constant name: MAIN
3 | Sub | Sub. Constant name: SUB

Used in messages: CdAddRtcPositionAccountReq, PositionAccount

positionAccountType

Type: Integer

Allowed values in PositionAccountTypeCodeSet:

Code | Name | Description
1 | House | House. Constant name: HOUSE
2 | Client | Client. Constant name: CLIENT

Used in messages: CdAddRtcPositionAccountReq, PositionAccount, RiskNode

positionFactor

Type: Long

Used in messages: CorporateAction

positionReason

Multiple type definitions: positionReason[int, Integer]. Default name used.

Type: int

Allowed values in PositionReasonCodeSet:

Code | Name | Description
0 | UnknownReason | Unknown reason, an internal error has occured. Constant name: UNKNOWN_REASON
1 | Fee | Booking Fee. Constant name: FEE
2 | Trade | New trade. Constant name: TRADE
5 | Exercise | The position in the option was closed out due to early exercise, or the option is in-of-money and the option is exercised automatically. The future trade is the result of an option exercise. (early or in-the-money automatically by the system). Constant name: EXERCISE
7 | CashSettlementVm | Cash settlement of variation margin. Constant name: CASH_SETTLEMENT_VM
17 | SettlementNetting | Positions are concentrated to the settlement accounts and netted out on the original accounts. Constant name: SETTLEMENT_NETTING
18 | Settled | A payment or delivery has been processed by an external system and the settlement position is netted out. Constant name: SETTLED
19 | Collateral | Collateral position update. Constant name: COLLATERAL
26 | AllocatedFrom | The trade is allocated from a trading member account to a client account. Constant name: ALLOCATED_FROM
27 | AllocatedTo | The trade origins from an allocation from a trading member account to a client account. Constant name: ALLOCATED_TO
28 | AllocationCorrectionFrom | The deal is erroneously moved from the client account to another client account. Constant name: ALLOCATION_CORRECTION_FROM
29 | AllocationCorrectionTo | The deal originates from a move from one client account to another client account. Constant name: ALLOCATION_CORRECTION_TO
30 | PrincipalCorrectionFrom | A position is moved from a house main account to a house sub account or from a house sub account to a house main account by creating a new deal. Constant name: PRINCIPAL_CORRECTION_FROM
31 | PrincipalCorrectionTo | The deal originates from a move from a client account. Constant name: PRINCIPAL_CORRECTION_TO
32 | AccumulatedFrom | The deal was aggregated to another deal. Constant name: ACCUMULATED_FROM
33 | AccumulatedTo | The deal originates from a deal aggregation activity. Constant name: ACCUMULATED_TO
34 | PosSubaccountModFrom | The position sub account was moved from this account.. Constant name: POS_SUBACCOUNT_MOD_FROM
35 | PosSubaccountModTo | The position sub account was moved to this account. Constant name: POS_SUBACCOUNT_MOD_TO
36 | AssignedFrom | The deal assign source. Constant name: ASSIGNED_FROM
37 | AssignedTo | The deal originates from a deal assign activity. Constant name: ASSIGNED_TO
40 | AssignInitiated | The deal assign initiated from. Constant name: ASSIGN_INITIATED
41 | AssignRejected | The deal assign rejected by receiver. Constant name: ASSIGN_REJECTED
42 | AssignCancelled | The deal assign cancelled by initiator. Constant name: ASSIGN_CANCELLED
43 | AssignExpired | The deal assign has expired. Constant name: ASSIGN_EXPIRED
44 | StartOfDay | Start of day position snapshot. Constant name: START_OF_DAY
45 | TripartiteFrom | The deal has been assigned using Tripartite agreement. Constant name: TRIPARTITE_FROM
47 | TripartiteTo | The deal origins from an assign using Tripartite agreement. Constant name: TRIPARTITE_TO
49 | TripartiteInitiated | Tripartite assign has been initiated. Constant name: TRIPARTITE_INITIATED
50 | TripartiteApproved | Tripartite assign has been approved. Constant name: TRIPARTITE_APPROVED
51 | TripartiteRejected | Tripartite assign has been rejected. Constant name: TRIPARTITE_REJECTED
52 | TripartiteCancelled | Tripartite assign has been cancelled. Constant name: TRIPARTITE_CANCELLED
53 | TripartiteExpired | Tripartite assign has expired. Constant name: TRIPARTITE_EXPIRED
54 | TradeSubaccountModFrom | Position has been moved from this account as Sub account modification. Constant name: TRADE_SUBACCOUNT_MOD_FROM
55 | TradeSubaccountModTo | Position has been moved to this account as Sub account modification. Constant name: TRADE_SUBACCOUNT_MOD_TO
56 | ZeroFee | Trade updated for zero fee. Constant name: ZERO_FEE
59 | Abandon | Option abandon. Constant name: ABANDON
60 | TransferredSpFrom | Position has been moved from this account by Transfer Single Position. Constant name: TRANSFERRED_SP_FROM
61 | TransferredSpTo | Position has been moved to this account by Transfer Single Position. Constant name: TRANSFERRED_SP_TO
62 | CloseOut | A close-out deal is created by the system to close open positions in a future on expiration of a tradable instrument. Constant name: CLOSE_OUT
63 | PartiallySettled | Partially settled payment. Constant name: PARTIALLY_SETTLED
64 | NetPayment | Payment from external system. Constant name: NET_PAYMENT
65 | FeeVat | VAT amount for booking fee. Constant name: FEE_VAT
66 | Cancelled | Trade cancelled. Constant name: CANCELLED
67 | CancelledBust | Trade busted. Constant name: CANCELLED_BUST
68 | CancelledPriceAdjust | Trade cancelled for price adjust. Constant name: CANCELLED_PRICE_ADJUST
69 | Dividend | Dividend payment for dividend neutral contracts. Constant name: DIVIDEND
70 | CorporateActionPositionCloseOut | Close out position for Corporate Action. Constant name: CLOSE_OUT_CA
71 | CorporateActionNewPosition | Created position for Corporate Action. Constant name: NEW_POSITION_CA
73 | InterestOnCollateral | Interest amount on collateral. Constant name: INTEREST_ON_COLLATERAL
74 | FundingInterest | Funding interest payment for CFDs. Constant name: FUNDING_INTEREST
76 | Deposit | A deposit of an asset in an account. Constant name: DEPOSIT
77 | Withdrawal | A withdrawal of an asset from an account. Constant name: WITHDRAWAL
78 | TransferredFrom | An opposite trade was created at the original account as a result of a client or TM position transfer. Constant name: TRANSFERRED_FROM
79 | TransferredTo | A trade was created at the destination account as a result of a client or TM position transfer. Constant name: TRANSFERRED_TO
80 | EndOfDay | End of day position snapshot. Constant name: END_OF_DAY
81 | SystemStartup | RTC system startup snapshot. Constant name: SYSTEM_STARTUP
82 | DefaultFrom | The position was transferred due to a defaulted member or client. Constant name: DEFAULT_FROM
83 | DefaultTo | The position was transferred due to a defaulted member or client. Constant name: DEFAULT_TO
84 | Manual | Event due to a manual update. Constant name: MANUAL
85 | Migration | An add/update due to migration. Constant name: MIGRATION
86 | Commission | Commissions added by members. Constant name: COMMISSION
88 | RiskFee | Risk Fee. Constant name: RISK_FEE
90 | RiskFeeVat | VAT amount for risk fee. Constant name: RISK_FEE_VAT
91 | ReverseTransaction | A position was updated due to a revert of the EOD step. Constant name: REVERSE_TRANSACTION
92 | Deleted | A close out, option exercise or abandon trade was marked as deleted due to a revert of the EOD step. Constant name: DELETED

Used in components: Trades

Used in messages: AccountPositionEvent, AccountTradeEvent

positionTimestamp

Type: String

Used in messages: AccountPositionEvent, AccountTradeEvent

positionType

Type: int

Allowed values in PositionTypeCodeSet:

Code | Name | Description
1 | Actual | A position of type ACTUAL represents ownership of the position. Constant name: ACTUAL
2 | Settlement | A position of type SETTLEMENT represents changed of the position on the settlement date. Constant name: SETTLEMENT

Used in messages: AccountPositionEvent, AccountTradeEvent

possDup

Type: boolean

Used in messages: AcceptCommissionReq, CdAddCashAccountReq, CdAddRtcMemberClientClearingLinkReq, CdAddRtcMemberClientReq, CdAddRtcPositionAccountReq, CdEnableDisableRtcMemberClientReq, CdEnableDisableRtcPositionAccountReq, CdSetClientAMPercentageReq, CdSetClientRiskLimitReq, CdSetMinimumZARLimitReq, CdSetTradingMemberAMPercentageReq, CdSetTradingMemberRiskLimitReq, CdUpdateCashAccountReq, CdUpdateRtcMemberClientReq, ChangePasswordReq

possDupSessId

Type: Integer

Used in messages: TaxLogonReq

postedQtyFx

Type: long

Used in components: FXCollateralStatus

postedValueFx

Type: long

Used in components: FXCollateralStatus

preferredCcy

Type: String

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

presentValue

Type: Long

Used in components: DividendFactors

prevInstrumentId

Type: String

Used in messages: Instrument

prevInstrumentIdType

Type: String

Allowed values in InstrumentIdTypeCodeSet:

Code | Name | Description
ISIN | Isin | ISIN identifier. Constant name: ISIN
CUSIP | Cusip | CUSIP identifier. Constant name: CUSIP
SYMB | Symb | SYMBOL identifier. Constant name: SYMB

Used in messages: Instrument

previousAdditionalMargin

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

previousInitialMargin

Type: Long

Used in components: TotalClients, Totals

Used in messages: DailyAccountSummaryDetailsEvent

previousTradeIds

Multiple type definitions: previousTradeIds[String, long[]]. Default name used.

Type: long

Used in components: Trade, Trades

Used in messages: QueryTradesReq

price

Multiple type definitions: price[BigInteger, Long]. Default name used.

Type: BigInteger

Used in components: Trade, Trades

Used in messages: CorporateAction, GiveUpEvent, ModifyPositionSubAccountReq, OptionDataEvent, PriceEvent

priceCCY

Type: String

Used in messages: EligibleCurrency

priceCurrency

Type: String

Used in messages: TradableInstrument

priceFormat

Multiple type definitions: priceFormat[int, Integer]. Default name used.

Type: int

Used in messages: Curve, TradableInstrument

priceProxyMasterID

Type: String

Used in messages: TradableInstrument

primaryMarketId

Type: String

Used in messages: Instrument

prio

Type: Integer

Used in messages: EligibleCurrency

quantity

Multiple type definitions: quantity[BigInteger, long]. Default name used.

Type: long

Used in components: Destinations

Used in messages: AbandonOptionPositionReq, AssignTradeReq, ExerciseOptionPositionReq, GiveUpEvent, ModifyPositionSubAccountReq, TripartiteAllocationReq

rate

Type: long

Used in messages: CurveEvent

reason

Type: String

Used in messages: CancelGiveUpReq, RejectGiveUpReq

receivedSecuritiesAmount

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

receiverAccountId

Type: String

Used in components: Instructions

receiverBIC

Type: String

Used in components: Instructions

receiverBranch

Type: String

Used in components: Instructions

redemptionFraction

Type: Long

Used in messages: TradableInstrument

reference

Type: String

Used in components: Destinations, Trade, Trades

Used in messages: AggregateTradesReq, AssignTradeReq, CorrectAllocationErrorReq, CorrectPrincipalReq, GiveUpEvent, ModifyPositionSubAccountReq, TripartiteAllocationReq, UpdateTradeReferenceReq

referenceNo

Type: String

Used in components: Instructions

registeredCashAmount

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

registeredSecuritiesAmount

Type: Long

Used in components: TotalClients, Totals

Used in messages: DailyAccountSummaryDetailsEvent

remainingQuantity

Type: BigInteger

Used in components: Trade, Trades

reply

Type: String

Used in messages: SimpleRsp, TaxHeartbeatRsp, TaxLogonRsp, TaxReplayRsp, TaxSnapshotSubscribeRsp

reportedTime

Type: String

Used in components: RtcTradeExternalData, Trades

requestedSecuritiesAmount

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

requestType

Type: int

Allowed values in ReplayRequestTypeCodeSet:

Code | Name | Description
0 | Replay | Request to replay specific events; no future updates. Constant name: REPLAY
1 | ReplayUnsegmented | Request to replay specific events without having to issue requests for new segments. Constant name: REPLAY_UNSEGMENTED
2 | ReplaySubscription | Request for unsegmented replay of events up to the latest and for subsequent subscription to future updates. Constant name: REPLAY_SUBSCRIPTION

Used in messages: TaxReplayReq, TaxSnapshotSubscribeReq

rerunReason

Type: String

Used in messages: CurrentSystemState

reserved

Type: Long

Used in components: MemberBalance2

reserved1

Type: Long

Used in components: TotalClients, Totals

Used in messages: DailyAccountSummaryDetailsEvent

reserved2

Type: Long

Used in components: TotalClients, Totals

Used in messages: DailyAccountSummaryDetailsEvent

reservedQuantity

Type: BigInteger

Used in components: Trade, Trades

resetLagPeriod

Type: int

Used in messages: ForwardRateAgreement, InterestRateSwap

resetLagPeriodType

Type: String

Allowed values in PeriodTypeCodeSet:

Code | Name | Description
DAYS | Days | Days. Constant name: DAYS
MONTHS | Months | Months. Constant name: MONTHS
YEARS | Years | Years. Constant name: YEARS

Used in messages: ForwardRateAgreement, InterestRateSwap

riskArray

Type: Long

Used in components: Contracts

riskFeeAmount

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

riskFees

Type: Long

Used in components: MemberBalance2

riskFeeVatAmount

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

riskLimit

Type: Long

Used in messages: CdSetClientRiskLimitReq, CdSetTradingMemberRiskLimitReq, RiskNode, RiskNodeEvent

riskNode

Type: Long

Used in messages: PositionAccount

riskNodeId

Type: Long

Used in components: PaymentAdvices, Withdrawals

Used in messages: CollateralAccount, DailyAccountSummaryDetailsEvent, RiskNode, RiskNodeEvent

riskNodeName

Type: String

Used in messages: RiskNode

rollsOn

Type: String

Allowed values in RollsOnConventionCodeSet:

Code | Name | Description
DAY | Day | Day(m). Constant name: DAY
START_OF_MONTH | StartOfMonth | Start of month. Constant name: START_OF_MONTH
END_OF_MONTH | EndOfMonth | End of month. Constant name: END_OF_MONTH
IMM_DAY | ImmDay | IMM Day. (3rd Monday of month). Constant name: IMM_DAY

Used in messages: Deposit, ForwardRateAgreement, InterestRateSwap

rtcCalendarId

Type: String

Used in messages: Deposit, ForwardRateAgreement, InterestRateSwap, RtcCalendar, TradableInstrument

rtcInternalId

Type: Long

Used in messages: Instrument

RtcTradeExternalData

RtcTradeExternalData contains trade attributes specific for this configuration of RTC.

Name
Mult.
Type
Description

tradingSystemMatchId
[0..1]
String
A system set identifier of the matched trade that was used to enter this trade into the system.

tradingSystemLinkId
[0..1]
String
A system set identifier of the matched trade that was used to enter this trade into the system.

aggressor
[0..1]
Boolean
Aggressor from Trading System.

capacity
[0..1]
CodeSet
Capacity from Trading System.

tradeType
[0..1]
CodeSet
Trade Type from Trading System.

tradingSystemTradeHalfId
[0..1]
String
A system set identifier of the trade half from the external trading system.

clientOrderId
[0..1]
String
Reference to an order in the trading system.

outsidePriceBand
[0..1]
boolean
Flag to indicate that the trade price is outside price band. Used both on trades from trading system and on trades created in Deal Management.

zeroFeeFlag
[0..1]
boolean
Flag to indicate that the trade is marked for zero fee.

timeOfEntry
[0..1]
String
Timestamp from Trading System. Format 2014-11-18 13:24:21.

tradingUser
[0..1]
String
The dealer in the trading system.

onBookQuantity
[0..1]
Long
Quantity from trading system for on-book trades. 0 if trade is Off-book. Kept on each side and not changed after trade management unless for accumulations. When an accumulated trade is partly allocated, on- book and off-book quantities are no longer maintained. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

offBookQuantity
[0..1]
Long
Quantity from trading system for reported trades. 0 if trade is On-book. Kept on each side and not changed after trade management unless for accumulations. When an accumulated trade is partly allocated, on- book and off-book quantities are no longer maintained. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

originalTradingSystemMatchId
[0..1]
String
Refers to the original trade. Only used when receiving cancelled trades from the trading system.

agreedTime
[0..1]
String
Time agreed between TM1 and TM2. Only applicable for reported trades. The format is yyyyMMdd- HH:mm:ss.fff.

reportedTime
[0..1]
String
The time the reported trade was received on the trading system (system generated). The format is yyyyMMdd-HH:mm:ss.fff.

optionDelta
[0..1]
BigInteger
Option delta from the trading system. Valid for Options. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

firmTradeId
[0..1]
String
Free text field carried from the trading system for off book trades.

tradeReportId
[0..1]
String
Free text field carried from the trading system for on and off book trades.

eventLinkId
[0..1]
String
Unique key for all trades generated from a single event. Will only be populated for strategy trades.

tradeSubType
[1..1]
String
Trade sub type used for trades.

multilegReportType
[0..1]
CodeSet
Multileg Report Type from Trading System.

Used in components: Trade

saturdaysSundaysClosed

Type: Boolean

Used in messages: RtcCalendar

schedulerState

Type: Integer

Allowed values in SchedulerStateCodeSet:

Code | Name | Description
1 | Normal | Normal state during daily operations. Constant name: NORMAL
2 | RerunEod | This state is used during End of Day rerun. Constant name: RERUN_EOD
3 | IntradayMarginCall | This current system state is used during Intraday Margin Call. Constant name: INTRADAY_MARGIN_CALL
4 | Rebalancing | This current system state is used during the Start of Day Collateral Process. Constant name: REBALANCING

Used in messages: CurrentSystemState

secondaryFirmReference

Type: String

Used in messages: AddCommissionReq, CommissionEvent

sector

Type: String

Used in messages: Instrument

securitiesAmountBF

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

securitiesAmountCF

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

securitiesAmountMovement

Type: Long

Used in messages: DailyAccountSummaryDetailsEvent

segmentId

Type: String

Used in messages: Segment, TradableInstrument

segmentSize

Type: Integer

Used in messages: TaxReplayReq

sendCode

Type: String

Used in components: Instructions

senderAccountId

Type: String

Used in components: Instructions

senderBIC

Type: String

Used in components: Instructions

senderBranch

Type: String

Used in components: Instructions

senderRef

Type: String

Used in components: PaymentAdvices, Withdrawals

sequenceNumber

Type: long

Used in messages: AccountPositionEvent, AccountTradeEvent, AggregatedSummaryClearingMemberEvent, AggregatedSummaryTradingMemberEvent, AtmVolatilityEvent, CmBalancing1Event, CmBalancing2Event, CommissionEvent, CurveEvent, DailyAccountSummaryDetailsEvent, DividendEvent, GetSequenceNumbersRsp, GiveUpEvent, OptionDataEvent, PriceEvent, ReadyConfirmAvailableFXEvent, RiskNodeEvent, SurfaceEvent, TaxReplayReq, TaxSnapshotSubscribeReq, WithdrawalNotificationEvent, YieldEvent

settledAmount

Type: long

Used in components: Instructions

settlementAccountId

Type: Long

Used in messages: SettlementAccount

settlementAccountName

Type: String

Used in messages: SettlementAccount

settlementAmount

Type: Long

Used in components: PaymentAdvices, Withdrawals

settlementBank

Type: String

Used in components: CashAccount

settlementBankAccountId

Type: String

Used in components: CashAccount

settlementBankBranch

Type: String

Used in components: CashAccount

settlementCurrency

Type: String

Used in components: PaymentAdvices, Withdrawals

settlementCycle

Type: Integer

Used in messages: TradableInstrument

settlementDate

Type: String

Used in components: DividendFactors, Instructions

Used in messages: AccountPositionEvent, AccountTradeEvent, CmBalancing1Event, CmBalancing2Event, DailyAccountSummaryDetailsEvent, GetPaymentAdvicesReq, GetSettlementInstructionsReq

settlementInstructionState

Type: String

Allowed values in SettlementInstructionStateCodeSet:

Code | Name | Description
CREATED | Created | The instruction has been created but processing has not yet started. Constant name: CREATED
PENDING | Pending | The processing has started for the instruction. Constant name: PENDING
PARTIALLY_SETTLED | PartiallySettled | The instruction has been partially settled. Constant name: PARTIALLY_SETTLED
SETTLED | Settled | The instruction has been completely settled, i.e. the settled amount is the same as the requested amount. This is an end state. Constant name: SETTLED
CANCELLED | Cancelled | The instruction has been cancelled. This is an end state. Constant name: CANCELLED
FAILED | Failed | The instruction has failed. This may be used by an external part if there is something wrong with the instruction, for example an erroneous account number. Not used in JSE. Constant name: FAILED

Used in components: Instructions

Used in messages: GetSettlementInstructionsReq

settlementMargin

Type: long

Used in messages: RiskNodeEvent

settlementRunId

Type: Long

Used in components: Instructions

Used in messages: GetSettlementInstructionsReq

settlementType

Type: int

Allowed values in SettlementTypeCodeSet:

Code | Name | Description
1 | Cash | Constant name: CASH
2 | Physical | Constant name: PHYSICAL
3 | CashOrPhysical | Constant name: CASH_OR_PHYSICAL

Used in messages: TradableInstrument

shortInitialValue

Type: BigInteger

Used in messages: AccountPositionEvent

shortMarketValue

Type: BigInteger

Used in messages: AccountPositionEvent

shortName

Type: String

Used in components: Trades

Used in messages: Instrument, TradableInstrument

shortNominalQty

Type: BigInteger

Used in messages: AccountPositionEvent

shortQty

Type: long

Used in messages: AccountPositionEvent

shortSpreadVolume

Type: BigInteger

Used in messages: AccountPositionEvent

smrOfficial

Type: Long

Used in messages: TradableInstrument

snapshotSize

Type: Long

Used in messages: TaxEndSnapshot

ssgId

Type: Integer

Used in messages: ClassSpreadGroup, SeriesSpreadGroup

ssmr

Type: Long

Used in messages: ClassSpreadGroup

startInstrumentOffset

Type: Integer

Used in messages: GetRiskArrayReq

state

Multiple type definitions: state[String, int]. Default name used.

Type: String

Allowed values in StateCodeSet:

Code | Name | Description
REGISTERED | Registered | Registered. Constant name: Registered
COLLATERAL_CALCULATED | CollateralCalculated | Collateral calculated. Constant name: CollateralCalculated
COLLATERAL_SEC_REGISTERED | CollateralSecRegistered | Collateral sec calculated. Constant name: CollateralSecRegistered
COLLATERAL_SEC_STEPOVER | CollateralSecStepover | Collateral sec stepover. Constant name: CollateralSecStepover
COLLATERAL_FX_REGISTERED | CollateralFxRegistered | Collateral FX registered. Constant name: CollateralFxRegistered
COLLATERAL_FX_STEPOVER | CollateralFxStepover | Collateral FX stepover. Constant name: CollateralFxStepover
COLLATERAL_CASH_SETTLED | CollateralCashSettled | Collateral cash settled. Constant name: CollateralCashSettled
CLIENT_PAYMENTS | ClientPayments | Client payments. Constant name: ClientPayments
REBALANCING | Rebalancing | Rebalancing. Constant name: Rebalancing

Used in messages: DailyAccountSummaryDetailsEvent, GiveUpEvent

stateSequenceNumber

Type: long

Used in components: CashAccount

Used in messages: AccessGroup, CalendarDate, ClassSpreadGroup, ClearingMemberLink, CollateralAccount, CorporateAction, Country, Currency, CurrentSystemState, Curve, CurveConstituent, Deposit, EligibleCurrency, EligibleSecurity, ForwardRateAgreement, Instrument, InterestRateSwap, Market, MarketList, Member, PositionAccount, RiskNode, RtcCalendar, Segment, SeriesSpreadGroup, SettlementAccount, SubscriptionGroup, Surface, TradableInstrument, TripartiteAgreement

status

Multiple type definitions: status[int, String]. Default name used.

Type: int

Used in messages: CommissionEvent, CorporateAction, TaxSessionStatus

statusCode

Type: int

Used in messages: TaxReplayEndEvent

statusMessage

Type: String

Used in messages: TaxReplayEndEvent

statusText

Type: String

Used in components: FXCollateralStatus

Used in messages: CorporateAction, DailyAccountSummaryDetailsEvent

statusTimestamp

Type: String

Used in messages: CorporateAction

step

Type: String

Allowed values in CmBalancingStepCodeSet:

Code | Name | Description
CM_BALANCING_1 | CmBalancing1 | Step 1, involves IM, AM, VM, dividends, funding etc. Constant name: CM_BALANCING_1
CM_BALANCING_2 | CmBalancing2 | Step 2, involves fees. Constant name: CM_BALANCING_2

Used in messages: SetCmBalancingStatusReq

strateCode

Type: String

Used in components: PaymentAdvices, Withdrawals

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, DailyAccountSummaryDetailsEvent, Member

strateReferenceNo

Type: String

Used in components: PaymentAdvices, Withdrawals

stressPeriodEndDate

Type: String

Used in messages: TradableInstrument

stressPeriodStartDate

Type: String

Used in messages: TradableInstrument

strike

Multiple type definitions: strike[BigInteger, Long]. Default name used.

Type: BigInteger

Used in components: Trades

Used in messages: TradableInstrument

strikeOrMoneyness

Type: Long

Used in messages: SurfaceEvent

strikePrice

Type: Long

Used in components: Contracts

strippedInRtc

Type: Boolean

Used in messages: Curve

subCode

Type: int

Used in messages: AbandonOptionPositionRsp, AggregateTradesRsp, AllocateTradeRsp, CdAddRtcMemberClientRsp, CdAddRtcPositionAccountRsp, CdEnableDisableRtcPositionAccountRsp, CdResponse, CorrectAllocationErrorRsp, CorrectPrincipalRsp, ExerciseOptionPositionRsp, GetPaymentAdvicesRsp, GetRequestsForFXCollateralRsp, GetRiskArrayRsp, GetSettlementInstructionsRsp, ModifyPositionSubAccountRsp, ModifyTradeSubAccountRsp, QueryDividendPaymentFactorsRsp, QueryTradesRsp, RegisterFXCollateralRsp, ResponseMessage, SetCmBalancingStatusRsp, SimpleRsp, TaxEndSnapshot, TaxHeartbeatRsp, TaxLogonRsp, TaxReplayRsp, TaxSnapshotSubscribeRsp, TripartiteAllocationRsp, UpdateTradeReferenceRsp

subId

Type: long

Used in messages: AccountPositionEvent

subscriptionGroup

Multiple type definitions: subscriptionGroup[int, Integer]. Default name used.

Type: int

Used in messages: AccessGroup, AccountPositionEvent, AccountTradeEvent, AggregatedSummaryClearingMemberEvent, AggregatedSummaryTradingMemberEvent, CmBalancing1Event, CmBalancing2Event, CommissionEvent, DailyAccountSummaryDetailsEvent, GiveUpEvent, ReadyConfirmAvailableFXEvent, RiskNodeEvent, TaxEndSnapshot, TaxReplayEndEvent, TaxReplayReq, TaxReplayStartEvent, TaxStartSnapshot, WithdrawalNotificationEvent

subscriptionGroupId

Multiple type definitions: subscriptionGroupId[int, Integer]. Default name used.

Type: int

Used in messages: AtmVolatilityEvent, CurveEvent, DividendEvent, GetSequenceNumbersReq, GetSequenceNumbersRsp, OptionDataEvent, PriceEvent, SubscriptionGroup, SurfaceEvent, TradableInstrument, YieldEvent

surfaceExternalId

Type: String

Used in messages: SurfaceEvent

surfaceId

Type: Long

Used in messages: Surface

surfaceName

Type: String

Used in messages: Surface

systemName

Type: String

Used in messages: TaxLogonRsp

tag

Type: String

Allowed values in CondTypeCodeSet:

Code | Name | Description
ANY | Any | Used to get the latest entry regardless of condition. Constant name: ANY
INDICATIVE | Indicative | Indicative. Constant name: INDICATIVE
END_OF_DAY_SETTLEMENT | EndOfDaySettlement | EoD Margin Call. Constant name: END_OF_DAY_SETTLEMENT
INTRA_DAY_1_SETTLEMENT | IntraDay1Settlement | Intra day margin call. Constant name: INTRA_DAY_1_SETTLEMENT
INTRA_DAY_2_SETTLEMENT | IntraDay2Settlement | Intra day margin call. Constant name: INTRA_DAY_2_SETTLEMENT
INTRA_DAY_3_SETTLEMENT | IntraDay3Settlement | Intra day margin call. Constant name: INTRA_DAY_3_SETTLEMENT
INTRA_DAY_4_SETTLEMENT | IntraDay4Settlement | Intra day margin call. Constant name: INTRA_DAY_4_SETTLEMENT
INTRA_DAY_5_SETTLEMENT | IntraDay5Settlement | Intra day margin call. Constant name: INTRA_DAY_5_SETTLEMENT
INTRA_DAY_6_SETTLEMENT | IntraDay6Settlement | Intra day margin call. Constant name: INTRA_DAY_6_SETTLEMENT
INTRA_DAY_7_SETTLEMENT | IntraDay7Settlement | Intra day margin call. Constant name: INTRA_DAY_7_SETTLEMENT
INTRA_DAY_8_SETTLEMENT | IntraDay8Settlement | Intra day margin call. Constant name: INTRA_DAY_8_SETTLEMENT
INTRA_DAY_9_SETTLEMENT | IntraDay9Settlement | Intra day margin call. Constant name: INTRA_DAY_9_SETTLEMENT
INTRA_DAY_10_SETTLEMENT | IntraDay10Settlement | Intra day margin call. Constant name: INTRA_DAY_10_SETTLEMENT

Used in messages: AggregatedSummaryClearingMemberEvent, AggregatedSummaryTradingMemberEvent, DailyAccountSummaryDetailsEvent

tenorPeriod

Type: int

Used in messages: Deposit, ForwardRateAgreement, InterestRateSwap

tenorPeriodType

Type: String

Allowed values in PeriodTypeCodeSet:

Code | Name | Description
DAYS | Days | Days. Constant name: DAYS
MONTHS | Months | Months. Constant name: MONTHS
YEARS | Years | Years. Constant name: YEARS

Used in messages: Deposit, ForwardRateAgreement, InterestRateSwap

text

Type: String

Used in components: Trades

ticket

Type: Long

Used in messages: TaxLogonReq

timeCancelled

Type: String

Used in messages: GiveUpEvent

timeComplete

Type: String

Used in messages: GiveUpEvent

timeInitiated

Type: String

Used in messages: GiveUpEvent

timeOfEntry

Type: String

Used in components: RtcTradeExternalData, Trades

timestamp

Type: String

Used in components: CashAccount, Contracts, DividendFactors

Used in messages: AccessGroup, AggregatedSummaryClearingMemberEvent, AggregatedSummaryTradingMemberEvent, AtmVolatilityEvent, CalendarDate, ClassSpreadGroup, ClearingMemberLink, CollateralAccount, CorporateAction, Country, Currency, CurrentSystemState, Curve, CurveConstituent, CurveEvent, DailyAccountSummaryDetailsEvent, Deposit, DividendEvent, EligibleCurrency, EligibleSecurity, ForwardRateAgreement, Instrument, InterestRateSwap, Market, MarketList, Member, OptionDataEvent, PositionAccount, PriceEvent, RiskNode, RtcCalendar, Segment, SeriesSpreadGroup, SettlementAccount, SubscriptionGroup, Surface, SurfaceEvent, TaxHeartbeatRsp, TradableInstrument, TripartiteAgreement, YieldEvent

timeZone

Type: String

Used in messages: RtcCalendar

timezoneOffset

Type: Integer

Used in messages: Country

tmBranch

Type: String

Used in components: Trades

toAccountId

Type: long

Used in messages: CorrectAllocationErrorReq, CorrectPrincipalReq, ModifyPositionSubAccountReq

toDate

Type: String

Used in messages: TripartiteAgreement

toInstrument

Type: String

Used in messages: CorporateAction

totalAdditionalMargin

Type: Long

Used in components: TotalClients, Totals

totalBookingFees

Type: Long

Used in components: TotalClients, Totals

totalBookingFeesVAT

Type: Long

Used in components: TotalClients, Totals

totalClearingFees

Type: Long

Used in components: TotalClients, Totals

totalClearingFeesVAT

Type: Long

Used in components: TotalClients, Totals

TotalClients

Object to hold aggregated account summary details.

Name
Mult.
Type
Description

totalMemberCfCash
[0..1]
Long
The total ZAR Collateral Cash registered for the current day. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberBfCash
[0..1]
Long
The total ZAR Collateral Cash registered for the previous day. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberCfSec
[0..1]
Long
The total Collateral Security registered for the current day. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberBfSec
[0..1]
Long
The total Collateral Security registered for the previous day. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

initialMarginMovementCash
[0..1]
Long
The total overall IM Cash movement balance per member (TM + Client), i.e. C/F (today) Cash Collateral - B/F (previous days) Cash

initialMarginMovementSecurities
[0..1]
Long
The total overall IM Securities movement balance per member (TM + Client), i.e. C/F (today) Collateral Securities - B/F (previous days) Collateral Securities = Securities movement. This value is calculated the same way as totalMember_Sec_Movement. This value is Positive if the current Collateral Securities exceeds the previous Collateral Securities; negative if it is the other way around This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalVariationMargin
[0..1]
Long
Total variation margin for all clients of a trading member and clients of the trading member's branches. A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalAdditionalMargin
[0..1]
Long
Total additional margin. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

fundingInterest
[0..1]
Long
The interest calculated from CFDs. ((base rate + interest spread) X nominal). A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

dividendPayment
[0..1]
Long
This is calculated from the dividend neutrals journal transactions. A Positive value interprets as money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalBookingFees
[0..1]
Long
Total booking fees excluding VAT. A Positive value means the money being paid by the Client to the CH This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalBookingFeesVAT
[0..1]
Long
Total VAT for booking fees This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

initialMargin
[0..1]
Long
Initial Margin. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

previousInitialMargin
[0..1]
Long
Previous Business Day Initial Margin. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalInterestAmountOnCashCollateral
[0..1]
Long
Interest amount earned on cash collateral for ZAR. A Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

FxDailyAccountSummaryDetails
[0..1]
Component
The daily account summary details for FX currencies.

totalMemberCfFxCash
[0..1]
Long
The total FX Collateral Cash registered (in ZAR value) for the current day. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberBfFxCash
[0..1]
Long
The total FX Collateral Cash registered (in ZAR value) for

additionalMarginMovements
[0..1]
Long
Additional Margin Movements (from yesterday). This value can be Positive if the current AM exceeds the previous AM; negative if it is the other way around This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberCashMovement
[0..1]
Long
The total ZAR Collateral Cash movement balance per member (TM + Client), i.e. C/F (today) Cash Collateral - B/F (previous days) Cash Collateral = Total Cash movement. This value is calculated the same way as initialMarginMovementCash. This value is positive if the current cash collateral exceeds the previous cash collateral and negative if it is the other way around. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberFxCashMovement
[0..1]
Long
The total FX Collateral Cash registered (in ZAR value) Movement. This value is positive if the current FX collateral exceeds the previous FX collateral and negative if it is the other way around This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberSecMovement
[0..1]
Long
The total Collateral Security movement balance per member (TM + Client), i.e. C/F (today) Collateral Securities - B/F (previous days) Collateral Securities = Securities movement. This value is calculated the same way as initialMarginMovementCash. This value is Positive if the current securities collateral exceeds the previous securities collateral; negative if it is the other way around.

totalZarCashMovement
[0..1]
Long
Sum of all ZAR movements for the Member: Net Amount from other system + Member Cash Collateral Movement + Clients Cash Collateral Movement + Member VM + Clients VM + Net Booking Fees including VAT + Risk Fees including VAT + Commissions + Funding interest + Dividend payment + Interest amount on Cash Collateral. A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

commission
[0..1]
Long
Sum of all commissions with status New. A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalRiskFees
[0..1]
Long
Total Fees in respect of initial margin covered with non-cash collateral excluding VAT. A Positive value means the money being paid by the Client to the CH and A Negative value means the money being paid by the CH to the Client. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalRiskFeesVAT
[0..1]
Long
Total VAT for Fees in respect of initial margin covered with non-cash collateral. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

registeredSecuritiesAmount
[0..1]
Long
Market Value of the positions in security collateral in ZAR (market value of the security collateral position). This value will always be Positive

totalClearingFees
[0..1]
Long
Total clearing fees excluding VAT. A Positive value means the money being paid by the Client to the CH This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalClearingFeesVAT
[0..1]
Long
Total VAT for clearing fees This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

reserved1
[0..1]
Long
Reserved1 This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

reserved2
[0..1]
Long
Reserved2 This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

Used in messages: AggregatedSummaryTradingMemberEvent

totalInterestAmountOnCashCollateral

Type: Long

Used in components: TotalClients, Totals

totalMemberBfCash

Type: Long

Used in components: TotalClients, Totals

totalMemberBfFxCash

Type: Long

Used in components: TotalClients, Totals

totalMemberBfSec

Type: Long

Used in components: TotalClients, Totals

totalMemberCashMovement

Type: Long

Used in components: TotalClients, Totals

totalMemberCfCash

Type: Long

Used in components: TotalClients, Totals

totalMemberCfFxCash

Type: Long

Used in components: TotalClients, Totals

totalMemberCfSec

Type: Long

Used in components: TotalClients, Totals

totalMemberFxCashMovement

Type: Long

Used in components: TotalClients, Totals

totalMemberSecMovement

Type: Long

Used in components: TotalClients, Totals

totalRiskFees

Type: Long

Used in components: TotalClients, Totals

totalRiskFeesVAT

Type: Long

Used in components: TotalClients, Totals

Totals

Object to hold aggregated account summary details.

Name
Mult.
Type
Description

totalMemberCfCash
[0..1]
Long
The total ZAR Collateral Cash registered for the current day. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberBfCash
[0..1]
Long
The total ZAR Collateral Cash registered for the previous day. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberCfSec
[0..1]
Long
The total Collateral Security registered for the current day. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberBfSec
[0..1]
Long
The total Collateral Security registered for the previous day. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

initialMarginMovementCash
[0..1]
Long
The total overall IM Cash movement balance per member (TM + Client), i.e. C/F (today) Cash Collateral - B/F (previous days) Cash

initialMarginMovementSecurities
[0..1]
Long
The total overall IM Securities movement balance per member (TM + Client), i.e. C/F (today) Collateral Securities - B/F (previous days) Collateral Securities = Securities movement. This value is calculated the same way as totalMember_Sec_Movement. This value is Positive if the current Collateral Securities exceeds the previous Collateral Securities; negative if it is the other way around This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalVariationMargin
[0..1]
Long
Total variation margin for all clients of a trading member and clients of the trading member's branches. A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalAdditionalMargin
[0..1]
Long
Total additional margin. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

fundingInterest
[0..1]
Long
The interest calculated from CFDs. ((base rate + interest spread) X nominal). A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

dividendPayment
[0..1]
Long
This is calculated from the dividend neutrals journal transactions. A Positive value interprets as money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalBookingFees
[0..1]
Long
Total booking fees excluding VAT. A Positive value means the money being paid by the Client to the CH This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalBookingFeesVAT
[0..1]
Long
Total VAT for booking fees This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

initialMargin
[0..1]
Long
Initial Margin. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

previousInitialMargin
[0..1]
Long
Previous Business Day Initial Margin. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalInterestAmountOnCashCollateral
[0..1]
Long
Interest amount earned on cash collateral for ZAR. A Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

FxDailyAccountSummaryDetails
[0..1]
Component
The daily account summary details for FX currencies.

totalMemberCfFxCash
[0..1]
Long
The total FX Collateral Cash registered (in ZAR value) for the current day. This value will always be Positive This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberBfFxCash
[0..1]
Long
The total FX Collateral Cash registered (in ZAR value) for

additionalMarginMovements
[0..1]
Long
Additional Margin Movements (from yesterday). This value can be Positive if the current AM exceeds the previous AM; negative if it is the other way around This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberCashMovement
[0..1]
Long
The total ZAR Collateral Cash movement balance per member (TM + Client), i.e. C/F (today) Cash Collateral - B/F (previous days) Cash Collateral = Total Cash movement. This value is calculated the same way as initialMarginMovementCash. This value is positive if the current cash collateral exceeds the previous cash collateral and negative if it is the other way around. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberFxCashMovement
[0..1]
Long
The total FX Collateral Cash registered (in ZAR value) Movement. This value is positive if the current FX collateral exceeds the previous FX collateral and negative if it is the other way around This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalMemberSecMovement
[0..1]
Long
The total Collateral Security movement balance per member (TM + Client), i.e. C/F (today) Collateral Securities - B/F (previous days) Collateral Securities = Securities movement. This value is calculated the same way as initialMarginMovementCash. This value is Positive if the current securities collateral exceeds the previous securities collateral; negative if it is the other way around.

totalZarCashMovement
[0..1]
Long
Sum of all ZAR movements for the Member: Net Amount from other system + Member Cash Collateral Movement + Clients Cash Collateral Movement + Member VM + Clients VM + Net Booking Fees including VAT + Risk Fees including VAT + Commissions + Funding interest + Dividend payment + Interest amount on Cash Collateral. A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

commission
[0..1]
Long
Sum of all commissions with status New. A Positive value means the money being paid by the Client to the CH and a Negative value means the money being paid by the CH to the Client This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalRiskFees
[0..1]
Long
Total Fees in respect of initial margin covered with non-cash collateral excluding VAT. A Positive value means the money being paid by the Client to the CH and A Negative value means the money being paid by the CH to the Client. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalRiskFeesVAT
[0..1]
Long
Total VAT for Fees in respect of initial margin covered with non-cash collateral. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

registeredSecuritiesAmount
[0..1]
Long
Market Value of the positions in security collateral in ZAR (market value of the security collateral position). This value will always be Positive

totalClearingFees
[0..1]
Long
Total clearing fees excluding VAT. A Positive value means the money being paid by the Client to the CH This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

totalClearingFeesVAT
[0..1]
Long
Total VAT for clearing fees This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

reserved1
[0..1]
Long
Reserved1 This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

reserved2
[0..1]
Long
Reserved2 This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

Used in messages: AggregatedSummaryClearingMemberEvent

totalVariationMargin

Type: Long

Used in components: TotalClients, Totals

totalZarCashMovement

Type: Long

Used in components: TotalClients, Totals

Used in messages: DailyAccountSummaryDetailsEvent

tradableInstrumentId

Type: String

Used in messages: TradableInstrument

tradableInstrumentIdType

Type: String

Allowed values in InstrumentIdTypeCodeSet:

Code | Name | Description
ISIN | Isin | ISIN identifier. Constant name: ISIN
CUSIP | Cusip | CUSIP identifier. Constant name: CUSIP
SYMB | Symb | SYMBOL identifier. Constant name: SYMB

Used in messages: TradableInstrument

tradeBusinessDate

Type: String

Used in components: Trade

tradeBusinessDateFrom

Type: String

Used in messages: QueryTradesReq

tradeBusinessDateTo

Type: String

Used in messages: QueryTradesReq

Trade

This class represents a Trade, i.e. one side of a Matched Trade: the buyer's or the seller's.

Name | Mult. | Type | Description
tradeId | [0..1] | long | Trade id. Internal RTC trade Half ID.
accountId | [0..1] | Long | Account id. Internal RTC ID.
dealId | [0..1] | long | Internal RTC ID for both sides of a matched trade.
price | [0..1] | BigInteger | Price. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.
tradeTimestamp | [0..1] | String | The time the trade occurred. The format is yyyy- MM-ddTHH:mm:ss.SSS.
isBuy | [0..1] | boolean | To identify whether buy or sell trade
tradeBusinessDate | [0..1] | String | The business date the trade occurred. The format is yyyy-MM-dd.
originalQuantity | [0..1] | BigInteger | Original quantity of the trade. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
remainingQuantity | [0..1] | BigInteger | Remaining quantity of the trade after allocation(if any). This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
RtcTradeExternalData | [0..1] | Component | External information on trade from Trading System.
nextTradeIds | [0..1] | long | List of forward referenced trade IDs
previousTradeIds | [0..1] | long | List of backward referenced trade IDs
activeQuantity | [0..1] | BigInteger | Active quantity of the trade after allocation (if any). This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
externalMatchedTradeId | [0..1] | String | Trade ID set by the client entering the trade into the clearing system.
reservedQuantity | [0..1] | BigInteger | Reserved quantity for assign operation (if any). This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
initialValue | [0..1] | BigInteger | Value of the trade This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.
interestRateSpread | [0..1] | BigInteger | Interest Rate Spread for trade if CFD.
externalInstrumentId | [0..1] | String | The external instrument id. This is the JSE Master ID.
reference | [0..1] | String | The reference supplied with the trade.

Used in messages: AccountPositionEvent, AccountTradeEvent

tradeDate

Type: String

Used in components: Trades

tradeId

Type: long

Used in components: Trade, Trades

Used in messages: AccountPositionEvent, AggregateTradesRsp, AllocateTradeReq, AssignTradeReq, CorrectAllocationErrorReq, CorrectPrincipalReq, GiveUpEvent, ModifyTradeSubAccountReq, QueryTradesReq, TripartiteAllocationReq, UpdateTradeReferenceReq

tradeIds

Type: Long

Used in messages: AbandonOptionPositionRsp, AggregateTradesReq, AllocateTradeRsp, CorrectAllocationErrorRsp, CorrectPrincipalRsp, ExerciseOptionPositionRsp, ModifyPositionSubAccountRsp, ModifyTradeSubAccountRsp

trader

Type: String

Used in components: Trades

tradeReportId

Type: String

Used in components: RtcTradeExternalData, Trades

Trades

Trade resulted from query in history.

Name
Mult.
Type
Description

tradeId
[0..1]
long
Internal identifier for a trade created by the clearing system. Updates of a trade (if supported) should keep the same TradeId. Unique over time.

origTradeId
[0..1]
Long
Used to preserve the original trade id when original trade is being referenced in a subsequent trade transaction such as a transfer. For example when moving a trade this refers to the previous trade id. It works for moved/allocated trades as long as the new trade only consist of quantity from one trade. It does

initialTradeId
[0..1]
Long
If there has been multiple moves this points to the initial trade.

businessDate
[0..1]
String
Business date of the transaction according. The format is yyyy-MM-dd.

tradeDate
[0..1]
String
The trade date of the trade. The format is yyyy-MM-dd.

dealId
[0..1]
long
Internal identifier for linking the trade to a deal.

clientDealId
[0..1]
String
Reference to the deal id specified by the client.

clOrdId
[0..1]
String
A optional reference set by the trading member to backtrack the trade to an order at the trading venue

originalQuantity
[0..1]
BigInteger
The original quantity on the trade, differs from LastQty if quantity has been moved from/to the trade after entering it This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

activeQuantity
[0..1]
BigInteger
The current active quantity of the trade This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

reservedQuantity
[0..1]
BigInteger
The current reserved quantity of the trade This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

remainingQuantity
[0..1]
BigInteger
The current remaining quantity of the trade This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

price
[0..1]
BigInteger
Price of the trade. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

originalPrice
[0..1]
BigInteger
Price of the original trade. Needed for audit since price might be modified in trade management. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

currency
[0..1]
String
The currency of LastPx, either add it to the trade or take it from the instrument.

previousTradeIds
[0..1]
long
Comma separated list of trade ids.

nextTradeIds
[0..1]
long
Comma separated list of trade ids.

text
[0..1]
String
Optional free text field from the reference of the original trade.

initialValue
[0..1]
BigInteger
Initial value of the trade (priceqtycontract size) This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

tradeTimestamp
[0..1]
String
Trade time according to the clearing system. The format is yyyy-MM-ddTHH:mm:ss.SSS.

lastMkt
[0..1]
String
Market of the trade. Internally set in case of trade management operations.

positionReason
[0..1]
CodeSet
Contains all different types of event reasons also for all trade management reasons. Can be used for billing and surveillance purpose.

isBuy
[0..1]
boolean
Side of trade (buy/sell)

trader
[0..1]
String
ID of the trader of this trade. For new trades caused by deal management it should be the id of the user doing the operation. In case of updating updating the trade (moving qty for example) the trader should remain as the original trader, i.e. this attribute should never be updated once created. The user from the position will state who caused the event, i.e. the user triggering the action.

underlyingSymbol
[0..1]
String
Human readable representation of the underlying instrument

contractSize
[0..1]
BigInteger
Size of contract This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

instrumentType
[0..1]
CodeSet
Type of instrument according to system

instrumentCurrency
[0..1]
String
Currency of the instrument.

marketList
[0..1]
String
Name of the market list

marketSegment
[0..1]
String
Name of the market segment

market
[0..1]
String
Name of the market

accountId
[0..1]
Long
Unique identifier of the account for trade.

accountType
[0..1]
String
The type of account for the trade. References name to constant PositionAccountType.

accountSubType
[0..1]
String
The sub type of account for the trade. References name to constant PositionAccountSubType.

clearingMember
[0..1]
String
The clearing member for this trade

tradingMember
[0..1]
String
The member who owns this trade

tmBranch
[0..1]
String
Trading member branch if applicable

client
[0..1]
String
Client ID if applicable

callPut
[0..1]
String
If this is an option, it represents its type (call or put)

strike
[0..1]
BigInteger
The strike price of the instrument if it is an option. Null otherwise This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

expirationDate
[0..1]
String
The expiry date of the instrument

alphaCode
[0..1]
String
Common identifier code for derivative instruments

tsTradingMatchId
[0..1]
String
Trading Id from the Trading System

tsTradingLinkId
[0..1]
String
Trading Link Id from the Trading System

clientType
[0..1]
CodeSet
For clients only - type of client. Information to surveillance.

idNumber
[0..1]
Long
For clients only - ID number.

passportNumber
[0..1]
String
For clients only - Passport number.

companyRegistrationNumber
[0..1]
String
For clients only - Company registration number.

isProfessional
[0..1]
Boolean
For clients only - Information to surveillance.

isShariah
[0..1]
Boolean
For clients only - Information to surveillance.

externalInstrumentId
[0..1]
String
The external instrument id. This is the JSE Master ID.

timeOfEntry
[0..1]
String
Trade time according to the Trading system. The format is yyyy-MM-ddTHH:mm:ss.SSS.

clientName
[0..1]
String
Client Name if applicable

tsTradingHalfId
[0..1]
String
Trading Half Id from the Trading System

isStaff
[0..1]
Boolean
For clients only - Information to surveillance.

isBeneficial
[0..1]
Boolean
For clients only - Information to surveillance.

isDiscretionary
[0..1]
Boolean
For clients only - Information to surveillance.

aggressor
[0..1]
Boolean
Aggressor from Trading System.

capacity
[0..1]
CodeSet
Capacity from Trading System.

onBookQuantity
[0..1]
Long
The On Book Quantity. One unit of the currency is expressed by DIVISOR.QTY. This field represents a decimal value. The value of the field is the decimal value multiplied by the constant DIVISOR.QTY. Example: The value "12.50" is represented as 12500000 in this field. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

offBookQuantity
[0..1]
Long
The Off Book Quantity. One unit of the currency is expressed by DIVISOR.QTY. This field represents a decimal value. The value of the field is the decimal value multiplied by the constant DIVISOR.QTY. Example: The value "12.50" is represented as 12500000 in this field. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

tradeType
[0..1]
CodeSet
Trade Type from Trading System.

zeroFeeFlag
[0..1]
boolean
Flag to indicate that the trade is marked for zero fee.

interestRateSpread
[0..1]
BigInteger
Rate added to base rate on a CFD to get the Funding rate. Numeric, positive or negative. The value "2.0%" is represented as 2000000 in this field. Mandatory if the type of the instrument is CFD. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

isin
[0..1]
String
ISIN code

shortName
[0..1]
String
The user friendly name the tradable instrument. Is not unique.

instrumentSubType
[0..1]
CodeSet
JSE Instrument Type.

inwardListed
[0..1]
Boolean
Inward Listed according to the South African Reserve Bank.

baseRate
[0..1]
String
The base rate name for a CFD.

tradingUser
[0..1]
String
ID of the trader of this trade. Carried from the trading system. Also known as dealer.For new trades caused by deal management it should be the id of the user doing the operation. In case of updating updating the trade (moving qty for example) the trader should remain as the original trader, i.e. this attribute should never be updated once created. The user from the position will state who caused the event, i.e. the user triggering the action.

externalPositionAccount
[0..1]
String
External ID of the position account. CM/TM link table is used to find the right risk tree.

participantUnitId
[0..1]
String
The owner of the account in the member structure. This is the ID of the lowest applicable level in the TM/Branch/Client member structure. Contains the Client ID for client accounts.

vatRegistrationNumber
[0..1]
String
The VAT Registration number. If the same legal Client is using several TMs, each TM will manage their own instance of the Client. The different instances of the Client in the system will then share the same VAT Registration Number.

isNonResident
[0..1]
boolean
Indication of the Client is resident of South Africa or not. If Country Code is ZA, the Client must be Resident. If Country Code is not ZA, the Client must be Non Resident.

address
[0..1]
String
Address of the client.

country
[0..1]
String
Registered Country for client.

bdaCode
[0..1]
Integer
Broker Dealer Accounting system (BDA) account number.

assetClass
[0..1]
CodeSet
Asset Class

assetSubClass
[0..1]
CodeSet
Asset Sub Class

reference
[0..1]
String
Reference field that can be used by user during trade management activities

agreedTime
[0..1]
String
Time agreed between TM1 and TM2. Only applicable for reported trades. The format is yyyyMMdd- HH:mm:ss.fff.

reportedTime
[0..1]
String
The time the reported trade was received on the trading system (system generated). yyyyMMdd- HH:mm:ss.fff.

fromTradeId
[0..1]
Long
Trade ID of original trade in case this tarde is created from a trade management activity.

fromTradeTime
[0..1]
String
The time new trades are created or the time a trade management activity is accepted.

fromRemainingQuantity
[0..1]
BigInteger
The quantity moved to this trade This field is a fixed point number with a scaling factor equal to 1/DIVISOR.QTY.

fromTM
[0..1]
String
The TM of the From trade. Will be different from the TM for assigns and tripartite.

fromBranch
[0..1]
String
The Branch of the From trade.

fromCM
[0..1]
String
The CM of the From trade.

fromAccount
[0..1]
Long
The account ID of the From trade

fromAccountType
[0..1]
String
Account Type of the From trade. References name to constant PositionAccountType.

fromAccountSubType
[0..1]
String
Account Sub Type of the From trade. References name to constant PositionAccountSubType.

fromAccountOwner
[0..1]
String
The owner of the account in the member structure. This is the ID of the lowest applicable level in the TM/Branch/Client member structure. Contains the Client ID for client accounts.

fromClientName
[0..1]
String
The name of the to client for the From trade

fromClientType
[0..1]
CodeSet
Type of client. Used mainly for surveillance when creating reports.

fromIsStaff
[0..1]
boolean
True for Staff clients, for the From Trade.

fromIsBeneficial
[0..1]
boolean
True for Beneficial Account clients, for the From Trade.

fromIsProfessional
[0..1]
boolean
True for professional clients, for the From Trade.

fromIsShariah
[0..1]
boolean
True for Shariah clients, for the From Trade.

fromIsNonResident
[0..1]
boolean
Indication of the Client is resident of South Africa or not. If Country Code is ZA, the Client must be Resident. If Country Code is not ZA, the Client must be Non Resident, for the From Trade.

fromBdaCode
[0..1]
Integer
Broker Dealer Accounting system (BDA) account number, for the From trade

fromIsDiscretionary
[0..1]
boolean
True for Discretionary clients, for the From Trade.

clearingMemberName
[0..1]
String
The long name of the CM.

tradingMemberName
[0..1]
String
The long name of the TM.

branchName
[0..1]
String
The long name of the Branch.

clientPhone
[0..1]
String
The phone number of the Client

fromExternalPositionAccount
[0..1]
String
External ID of the position account of the From trade.

fromTradingUser
[0..1]
String
Trading user of the From trade

fromPositionReason
[0..1]
CodeSet
Position reason of the From trade

nominatedMemberId
[0..1]
String
Member handling physical delivery

clientNominatedMemberId
[0..1]
String
Member handling physical delivery for the client.

optionDelta
[0..1]
BigInteger
Option delta from the trading system. Valid for Options. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

firmTradeId
[0..1]
String
Free text field carried from the trading system for off book trades.

tradeReportId
[0..1]
String
Free text field carried from the trading system for on and off book trades.

eventLinkId
[0..1]
String
Unique key for all trades generated from a single event. Will only be populated for strategy trades.

tradeSubType
[1..1]
String
Trade sub type used for trades.

Used in messages: QueryTradesRsp

tradeSubType

Type: String

Used in components: RtcTradeExternalData, Trades

tradeTimeFrom

Type: String

Used in messages: QueryTradesReq

tradeTimestamp

Type: String

Used in components: Trade, Trades

tradeTimeTo

Type: String

Used in messages: QueryTradesReq

tradeType

Type: String

Allowed values in RtcTradeTypeCodeSet:

Code | Name | Description
ORDER | Order | Order. Constant name: ORDER
REPORT | Report | Report. Constant name: REPORT
CT | CancelTrade | Cancel trade. Constant name: CANCEL_TRADE
TB | TradeBust | Trade bust. Constant name: TRADE_BUST
PA | CancelPriceAdjust | Cancel price adjust. Constant name: CANCEL_PRICE_ADJUST

Used in components: RtcTradeExternalData, Trades

tradingMember

Type: String

Used in components: Trades

Used in messages: AccountPositionEvent, AccountTradeEvent, QueryTradesReq

tradingMemberBranch

Type: String

Used in messages: AccountPositionEvent, AccountTradeEvent, QueryTradesReq

tradingMemberId

Type: String

Used in components: FxRequests

Used in messages: AggregatedSummaryTradingMemberEvent, CdSetMinimumZARLimitReq, CdSetTradingMemberAMPercentageReq, CdSetTradingMemberRiskLimitReq, ClearingMemberLink, DailyAccountSummaryDetailsEvent, RegisterFXCollateralRsp, RegisterFxCollateralReq

tradingMemberName

Type: String

Used in components: Trades

tradingSystemLinkId

Type: String

Used in components: RtcTradeExternalData

tradingSystemMatchId

Type: String

Used in components: RtcTradeExternalData

Used in messages: QueryTradesReq

tradingSystemTradeHalfId

Type: String

Used in components: RtcTradeExternalData

tradingSystemTradeLinkId

Type: String

Used in messages: QueryTradesReq

tradingUser

Type: String

Used in components: RtcTradeExternalData, Trades

Used in messages: QueryTradesReq

tradingUserId

Type: String

Used in messages: AggregateTradesReq, AllocateTradeReq, ApproveGiveUpReq, AssignTradeReq, CorrectAllocationErrorReq, CorrectPrincipalReq, ModifyPositionSubAccountReq, ModifyTradeSubAccountReq, TripartiteAllocationReq

transactionId

Type: long

Used in messages: AbandonOptionPositionRsp, AccountPositionEvent, AggregateTradesRsp, AllocateTradeRsp, CorrectAllocationErrorRsp, CorrectPrincipalRsp, ExerciseOptionPositionRsp, ModifyPositionSubAccountRsp, ModifyTradeSubAccountRsp

tripartiteAgreementId

Type: String

Used in messages: TripartiteAgreement

tsTradingHalfId

Type: String

Used in components: Trades

tsTradingLinkId

Type: String

Used in components: Trades

tsTradingMatchId

Type: String

Used in components: Trades

type

Type: String

Allowed values in InstrumentTypeCodeSet:

Code | Name | Description
FU | Future | Future. Constant name: FUTURE
BO | Bond | Bond. Constant name: BOND
OPT | Option | Parent of OptionTradableInstruments. Constant name: OPTION
SPOT | Spot | Spot type instrument. Constant name: SPOT
CFD | CFD | Contract For Difference. Constant name: CFD

Used in messages: Instrument

unconfirmedSettledAmount

Type: long

Used in components: Instructions

underlyingSymbol

Type: String

Used in components: Trades

underlyingTradableInstrument

Type: String

Used in messages: TradableInstrument

uniqueObjectId

Type: String

Used in components: CashAccount

Used in messages: AccessGroup, CalendarDate, ClassSpreadGroup, ClearingMemberLink, CollateralAccount, CorporateAction, Country, Currency, CurrentSystemState, Curve, CurveConstituent, Deposit, EligibleCurrency, EligibleSecurity, ForwardRateAgreement, Instrument, InterestRateSwap, Market, MarketList, Member, PositionAccount, RiskNode, RtcCalendar, Segment, SeriesSpreadGroup, SettlementAccount, SubscriptionGroup, Surface, TradableInstrument, TripartiteAgreement

updateId

Type: String

Used in messages: AbandonOptionPositionReq, AddCommissionReq, ExerciseOptionPositionReq

user

Type: String

Used in messages: TaxLogonReq, TaxSnapshotSubscribeReq

userData

Type: String

Used in messages: TaxHeartbeatReq, TaxHeartbeatRsp

userId

Type: String

Used in messages: ChangePasswordReq

validForTrading

Type: Boolean

Used in messages: TradableInstrument

validFromDate

Type: String

Used in messages: Instrument, Market, MarketList, Member, Segment, TradableInstrument

validToDate

Type: String

Used in messages: Instrument, TradableInstrument

valuationModelType

Type: String

Allowed values in ValuationModelTypeCodeSet:

Code | Name | Description
MARK_TO_MODEL | MarkToModel | Mark to model. Constant name: MARK_TO_MODEL
MARK_TO_MARKET | MarkToMarket | Mark to market. Constant name: MARK_TO_MARKET

Used in messages: TradableInstrument

valuationPrice

Type: long

Used in components: FXCollateral

valuationSubType

Type: String

Allowed values in ValuationSubTypeCodeSet:

Code | Name | Description
COST_OF_CARRY_DIVIDEND_PROJECTION | CostOfCarryDividendProjection | Cost of Carry dividend projection. Constant name: COST_OF_CARRY_DIVIDEND_PROJECTION
COST_OF_CARRY_DIVIDEND_YIELD | CostOfCarryDividendYield | Cost of Carry dividend yield. Constant name: COST_OF_CARRY_DIVIDEND_YIELD
COST_OF_CARRY_DIVIDEND_NEUTRAL | CostOfCarryDividendNeutral | Cost of Carry dividend neutral. Constant name: COST_OF_CARRY_DIVIDEND_NEUTRAL
BLACK76 | Black76 | Black76. Constant name: BLACK76

Used in messages: TradableInstrument

valueAgainstLimit

Type: long

Used in messages: RiskNodeEvent

valueDate

Type: String

Used in components: FxRequests

Used in messages: GetRequestsForFXCollateralReq, RegisterFXCollateralRsp, RegisterFxCollateralReq

variationMargin

Type: Long

Used in components: MemberBalance1

Used in messages: DailyAccountSummaryDetailsEvent, RiskNodeEvent

vatRegistrationNumber

Type: String

Used in components: Trades

vatRegNumber

Type: String

Used in messages: CdAddRtcMemberClientReq, CdUpdateRtcMemberClientReq, Member

vega

Type: long

Used in messages: OptionDataEvent

volatility

Multiple type definitions: volatility[long, Long[]]. Default name used.

Type: long

Used in components: Contracts

Used in messages: OptionDataEvent, SurfaceEvent

volatilityLookbackPeriod

Type: Long

Used in messages: Market

volatilityScanningRange

Type: Long

Used in messages: TradableInstrument

volatilitySurfaceId

Type: String

Used in messages: TradableInstrument

volRounding

Type: Integer

Used in messages: Market

vols

Type: long

Used in messages: AtmVolatilityEvent

waitForCmBalancing

Type: Boolean

Used in messages: Member

Withdrawals

An indication that the Clearing Member will deposit additional cash collateral.

Name
Mult.
Type
Description

strateReferenceNo
[1..1]
String
The payment reference generated by the CSD.

strateCode
[1..1]
String
Strate code for the Client or Trading Member.

riskNodeId
[1..1]
Long
Risk node ID, RTC internal ID.

amount
[1..1]
Long
The amount in ZAR that must be called for in cash collateral. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

currency
[1..1]
String
The currency code for the amount field, according to ISO 4217. Normally ZAR.

settlementAmount
[0..1]
Long
The amount in 'settlementCurrency' that must be called for in cash collateral. If the settlementCurrency is not ZAR, this amount has been calculated by RTC using the most recent exchange rate. This field is set by RTC. This field is a fixed point number with a scaling factor equal to 1/DIVISOR.PRICE.

settlementCurrency
[0..1]
String
The currency used to settle this withdrawal. Is the preferred currency for the member/client or ZAR if preferred currency is not set. This field is set by RTC.

clearingMember
[0..1]
String
Clearing Member ID. Set on outbound messages.

paymentAdviceState
[0..1]
CodeSet
The payment advice state

senderRef
[0..1]
String
Unique Id generated by the clearing system.

participantUnitId
[0..1]
String
The owner (member or client) of the risk node. Set on outgoing messages from RTC.

Used in messages: ConfirmWithdrawalsReq

wwwPage

Type: String

Used in messages: Market

yield

Type: long

Used in messages: YieldEvent

yieldCurveId

Type: String

Used in messages: TradableInstrument

yieldType

Type: String

Allowed values in YieldTypeCodeSet:

Code | Name | Description
YIELD_TO_MATURITY | YieldToMaturity | fixed income done in yield to maturity. Constant name: YIELD_TO_MATURITY
DIVIDEND_YIELD | DividendYield | Percentage value represented as the annual dividend payouts (cash flow) of the instrument in relation to the current market price of the instrument. Constant name: DIVIDEND_YIELD
INTEREST_RATE | InterestRate | Interest specified as a percentage value. Constant name: INTEREST_RATE

Used in messages: YieldEvent

zeroFeeFlag

Type: boolean

Used in components: RtcTradeExternalData, Trades