OnixS Eurex ETI Handler C++ library  9.21.0
API documentation
OrderExecResponse.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
13  * part of this source code or associated reference material to any other location for further
14  * reproduction or redistribution, and any amendments to this copyright notice, are expressly
15  * prohibited.
16  *
17  * Any reproduction or redistribution for sale or hiring of the Software not in accordance with
18  * the terms of the Agreement is a violation of copyright law.
19  */
20 
21 #pragma once
22 
25 #include "OnixS/Eurex/Trading/Export.h"
30 
31 #include <iosfwd>
32 #include <string>
33 #include <vector>
34 
35 namespace OnixS { namespace Eurex { namespace Trading {
36 
37 /// Order Exec Response Message.
38 class ONIXS_EUREX_ETI_EXPORT OrderExecResponse : public Message
39 {
40 public:
41  /// Initialize default instance.
43 
44  /// Matching engine in timestamp.
46 
47  /// Matching engine out timestamp.
49 
50  /// Is required to define the scope of a Retransmission Request.
52 
53  /// Identifier for subscription and retransmission of an ETI data stream.
55 
56  /// Message key assigned to a order/quote event related Eurex ETI data stream.
58 
59  /// Indicates whether this message is the last fragment (part) of a sequence of messages belonging to one dedicated
60  /// transaction.
62 
63  /// Exchange Order ID generated by Eurex System; it remains constant over the lifetime of an order.
65 
66  /// Unique participant defined order request identifier.
68 
69  /// ClOrdID (11) of the last successfully processed task (request) referring to the specific order; used for client
70  /// order ID chaining.
72 
73  /// The instrument identifier uniquely identifies an instrument in the core system.
75 
76  /// Transaction timestamp.
78 
79  /// The entry timestamp is the time of the creation of the order.
81 
82  /// Priority timestamp.
84 
85  /// Remaining quantity of an order.
87 
88  /// Cumulated executed quantity of an order.
90 
91  /// Total quantity cancelled for this order.
93 
94  /// The product identifier uniquely identifies a Eurex product.
96 
97  /// Code to further qualify the field ExecType (150) of the Execution Report (8) message.
99 
100  /// Side of the order.
102 
103  /// This field qualifies an instrument type on Eurex.
105 
106  /// Conveys the current status of an order.
108 
109  /// The reason why this message was generated.
111 
112  /// Indicates if an order has been previously triggered.
114 
115  /// Indicates SMP involvement.
117 
118  /// Indicator for a delayed transaction.
120 
121  /// Fills Group.
122  std::vector<FillsGrpElem> fillsGrp;
123 
124  /// Instrmnt Leg Exec Group.
125  std::vector<InstrmntLegExecGrpElem> instrmntLegExecGrp;
126 
127  /// Order Event Group.
128  std::vector<OrderEventGrpElem> orderEventGrp;
129 
130  /// Returns template ID.
131  TemplateId::Enum templateId() const;
132 
133  /// Returns string representation.
134  std::string toString() const;
135 
136 private:
137  friend class Serializer;
138  OrderExecResponse(const void* data, size_t dataSize, MessageInfo& msgInfo);
139  void nativeSerializeTo(void* nativeMessage);
140 };
141 
142 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, const OrderExecResponse&);
143 
144 }}} // namespace OnixS::Eurex::Trading
ProductComplex::Enum productComplex
This field qualifies an instrument type on Eurex.
SInt32 marketSegmentId
The product identifier uniquely identifies a Eurex product.
UInt64 execId
Transaction timestamp.
OrdStatus::Enum ordStatus
Conveys the current status of an order.
Data applMsgId
Message key assigned to a order/quote event related Eurex ETI data stream.
Enum
Side of the order.
unsigned long long UInt64
Definition: Defines.h:46
Enum
Indicator for a delayed transaction.
Enum
The reason why this message was generated.
Definition: Enumerations.h:527
SInt64 cumQty
Cumulated executed quantity of an order.
signed int SInt32
Definition: Defines.h:41
Enum
This field qualifies an instrument type on Eurex.
UInt64 trdRegTSTimeOut
Matching engine out timestamp.
Message base class.
Definition: Message.h:32
SInt64 leavesQty
Remaining quantity of an order.
std::vector< UInt8 > Data
Definition: Defines.h:59
ExecRestatementReason::Enum execRestatementReason
Code to further qualify the field ExecType (150) of the Execution Report (8) message.
Enum
Code to further qualify the field ExecType (150) of the Execution Report (8) message.
Definition: Enumerations.h:481
CrossedIndicator::Enum crossedIndicator
Indicates SMP involvement.
UInt64 trdRegTSTimeIn
Matching engine in timestamp.
Enum
Indicates if an order has been previously triggered.
UInt16 partitionId
Is required to define the scope of a Retransmission Request.
SInt64 securityId
The instrument identifier uniquely identifies an instrument in the core system.
std::vector< OrderEventGrpElem > orderEventGrp
Order Event Group.
UInt64 clOrdId
Unique participant defined order request identifier.
UInt64 orderId
Exchange Order ID generated by Eurex System; it remains constant over the lifetime of an order...
std::vector< InstrmntLegExecGrpElem > instrmntLegExecGrp
Instrmnt Leg Exec Group.
signed long long SInt64
Definition: Defines.h:42
std::ostream & operator<<(std::ostream &, ConnectionState::Enum)
Make it printable using C++ I/O streams.
std::vector< FillsGrpElem > fillsGrp
Fills Group.
Enum
Identifier for subscription and retransmission of an ETI data stream.
Definition: Enumerations.h:33
ApplId::Enum applId
Identifier for subscription and retransmission of an ETI data stream.
TransactionDelayIndicator::Enum transactionDelayIndicator
Indicator for a delayed transaction.
SInt64 cxlQty
Total quantity cancelled for this order.
Side::Enum side
Side of the order.
Enum
Conveys the current status of an order.
Triggered::Enum triggered
Indicates if an order has been previously triggered.
Enum
Indicates SMP involvement.
Definition: Enumerations.h:300
UInt64 trdRegTSTimePriority
Priority timestamp.
unsigned short UInt16
Definition: Defines.h:44
ExecType::Enum execType
The reason why this message was generated.
UInt64 trdRegTSEntryTime
The entry timestamp is the time of the creation of the order.