OnixS C++ LSE GTP Market Data Handler 1.0.6
API documentation
Loading...
Searching...
No Matches
MiFIDIITrade.h
Go to the documentation of this file.
1/*
2* Copyright Onix Solutions Limited [OnixS]. All rights reserved.
3*
4* This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
5* and international copyright treaties.
6*
7* Access to and use of the software is governed by the terms of the applicable ONIXS Software
8* Services Agreement (the Agreement) and Customer end user license agreements granting
9* a non-assignable, non-transferable and non-exclusive license to use the software
10* for it's own data processing purposes under the terms defined in the Agreement.
11*
12* Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
13* of this source code or associated reference material to any other location for further reproduction
14* or redistribution, and any amendments to this copyright notice, are expressly prohibited.
15*
16* Any reproduction or redistribution for sale or hiring of the Software not in accordance with
17* the terms of the Agreement is a violation of copyright law.
18*/
19
20#pragma once
21
22#include <vector>
23
28
29
30namespace OnixS {
31namespace LSE {
32namespace MarketData {
33namespace GTP {
34
37 {
39 UDT timestamp() const
41 {
42 return ordinary<UDT>(3);
43 }
44
51
53 UInt64 instrumentID() const
55 {
56 return ordinary<UInt64>(13);
57 }
58
65
72
79
83 {
84 return fixedStr<20>(75);
85 }
86
90 {
91 return fixedStr<20>(95);
92 }
93
100
107
114
118 {
119 return fixedStr<4>(161);
120 }
121
126 {
127 return fixedStr<3>(165);
128 }
129
133 {
134 return fixedStr<20>(168);
135 }
136
140 {
141 return fixedStr<3>(188);
142 }
143
147 {
148 return fixedStr<4>(191);
149 }
150
157
161 {
162 return fixedStr<4>(225);
163 }
164
168 {
169 return fixedStr<4>(229);
170 }
171
175 {
176 return fixedStr<4>(233);
177 }
178
182 {
183 return fixedStr<4>(237);
184 }
185
189 {
190 return fixedStr<4>(241);
191 }
192
196 {
197 return fixedStr<4>(245);
198 }
199
206
213
220
227
234
241
248
255
262
269
276
283
290
297
304
307
309 static void validateSize(MessageSize size)
310 {
311 if(size != messageSize_)
312 throwIncorrectSize("MiFIDIITrade", size, messageSize_);
313 }
314
316 MiFIDIITradeMsg(const void* data, MessageSize size)
318 : BinaryMessage(data, size)
319 {
320 }
321 };
322
324 ONIXS_LSE_GTP_API void toStr(std::string&, const MiFIDIITradeMsg&);
325
327 inline std::string toStr(const MiFIDIITradeMsg& msg)
328 {
329 std::string str;
330 toStr(str, msg);
331 return str;
332 }
333
334}
335}
336}
337}
#define ONIXS_LSE_GTP_NOTHROW
Definition Compiler.h:118
#define ONIXS_LSE_GTP_CONST_OR_CONSTEXPR
Definition Compiler.h:121
Enumeration::Enum enumeration(MessageSize offset) const ONIXS_LSE_GTP_NOTHROW
FieldValue ordinary(MessageSize offset) const ONIXS_LSE_GTP_NOTHROW
StrRef fixedStr(MessageSize offset) const ONIXS_LSE_GTP_NOTHROW
BinaryMessage() ONIXS_LSE_GTP_NOTHROW
Initializes blank instance referencing to nothing.
StrRef DateAndTime
ISO 8601 date and time in the following string format:YYYY-MM-DDThh:mm:ss.ddddddZ.
Definition Defines.h:132
ONIXS_LSE_GTP_API void throwIncorrectSize(const std::string &messageName, MessageSize receivedSize, MessageSize expectedSize)
UInt64 UDT
time stamp (in UTC) = (date time per second resolution in unix time format) * 1,000,...
Definition Defines.h:94
UInt16 MessageSize
Aliases message length type.
Definition Defines.h:141
StrRef MiFIDDecimal
These fields use standard ASCII character bytes to represent numeric values. They are left justified ...
Definition Defines.h:135
StrRef Alpha
These fields use standard ASCII character bytes. They are left justified and padded on the right with...
Definition Defines.h:79
ONIXS_LSE_GTP_API void toStr(std::string &, EventCode::Enum)
Appends string presentation of object.
MiFIDDecimal miFIDQuantity() const ONIXS_LSE_GTP_NOTHROW
Number of units of the financial instrument.
UDT timestamp() const ONIXS_LSE_GTP_NOTHROW
Time the message was generated.
Alpha venueofExecution() const ONIXS_LSE_GTP_NOTHROW
Identification of the venue where the transaction was executed.
TradingMode::Enum tradingMode() const ONIXS_LSE_GTP_NOTHROW
UInt64 instrumentID() const ONIXS_LSE_GTP_NOTHROW
GTP Instrument Identifier.
DateAndTime publicationDateAndTime() const ONIXS_LSE_GTP_NOTHROW
Date and time when the transaction was published.
AlgorithmicIndicator::Enum algorithmicIndicator() const ONIXS_LSE_GTP_NOTHROW
PostTradeDeferralReason::Enum postTradeDeferralReason() const ONIXS_LSE_GTP_NOTHROW
DateAndTime tradingDateAndTime() const ONIXS_LSE_GTP_NOTHROW
Date and time when the transaction was executed / agreed upon.
MiFIDDecimal notionalAmount() const ONIXS_LSE_GTP_NOTHROW
Notional value relevant to the security.
Alpha priceNotation() const ONIXS_LSE_GTP_NOTHROW
Indicates if the price is expressed in monetary value or in percentage.
SourceVenue::Enum sourceVenue() const ONIXS_LSE_GTP_NOTHROW
Venue from which market data is received for the instrument.
ReferencePriceIndicator::Enum referencePriceIndicator() const ONIXS_LSE_GTP_NOTHROW
AuctionType::Enum auctionType() const ONIXS_LSE_GTP_NOTHROW
static ONIXS_LSE_GTP_CONST_OR_CONSTEXPR MessageSize messageSize_
Total message size.
Alpha transactionIdentificationCode() const ONIXS_LSE_GTP_NOTHROW
A unique trade identifier. The value will be right aligned.
OffBookAutomatedIndicator::Enum offBookAutomatedIndicator() const ONIXS_LSE_GTP_NOTHROW
Alpha priceMajorCurrency() const ONIXS_LSE_GTP_NOTHROW
Alpha instrumentIdentificationCode() const ONIXS_LSE_GTP_NOTHROW
Instrument identification number. (ISIN code)
MiFIDIITradeMsg(const void *data, MessageSize size) ONIXS_LSE_GTP_NOTHROW
Initializes instance over given memory block.
Alpha marketClosingPriceFlag() const ONIXS_LSE_GTP_NOTHROW
Alpha pTRefPriceWaiverFlag() const ONIXS_LSE_GTP_NOTHROW
ModificationIndicator::Enum modificationIndicator() const ONIXS_LSE_GTP_NOTHROW
TransactionCategory::Enum transactionCategory() const ONIXS_LSE_GTP_NOTHROW
DeferralEnrichmentType::Enum deferralEnrichmentType() const ONIXS_LSE_GTP_NOTHROW
static void validateSize(MessageSize size)
Check the given size.
Alpha notionalCurrency() const ONIXS_LSE_GTP_NOTHROW
Major currency in which the notional amount is denominated.
PriceFormationIndicator::Enum priceFormationIndicator() const ONIXS_LSE_GTP_NOTHROW
DuplicativeIndicator::Enum duplicativeIndicator() const ONIXS_LSE_GTP_NOTHROW
SpecialDividendIndicator::Enum specialDividendIndicator() const ONIXS_LSE_GTP_NOTHROW
Alpha pTCancellationFlag() const ONIXS_LSE_GTP_NOTHROW
AgencyCrossIndicator::Enum agencyCrossIndicator() const ONIXS_LSE_GTP_NOTHROW
TradeQualifier::Enum tradeQualifier() const ONIXS_LSE_GTP_NOTHROW
Alpha pTAmendmentFlag() const ONIXS_LSE_GTP_NOTHROW
TradeType::Enum tradeType() const ONIXS_LSE_GTP_NOTHROW
Alpha pTAlgoTrade() const ONIXS_LSE_GTP_NOTHROW
MarketMechanism::Enum marketMechanism() const ONIXS_LSE_GTP_NOTHROW
Alpha instrumentIdentificationCodeType() const ONIXS_LSE_GTP_NOTHROW
Instrument Identification Code Type. Valid value is ISIN for non-equity asset classes.
Alpha tradingSystem() const ONIXS_LSE_GTP_NOTHROW
Not Applicable to LSE.
NegotiationIndicator::Enum negotiationIndicator() const ONIXS_LSE_GTP_NOTHROW
MiFIDDecimal miFIDPrice() const ONIXS_LSE_GTP_NOTHROW
MiFID compliant Price field populated using either Price or Percentage.