OnixS Eurex ETI Handler C++ library  9.10.1
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 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 "OnixS/Eurex/Trading/Export.h"
29 
30 #include <iosfwd>
31 #include <string>
32 #include <vector>
33 
34 namespace OnixS {
35 namespace Eurex {
36 namespace Trading {
37 
38 /// Order Exec Response Message.
39 class ONIXS_EUREX_ETI_EXPORT OrderExecResponse : public Message
40 {
41 public:
42  /// Initialize default instance.
44 
45  /// Matching engine in timestamp.
47 
48  /// Matching engine out timestamp.
50 
51  /// Is required to define the scope of a Retransmission Request.
53 
54  /// Identifier for subscription and retransmission of an ETI data stream.
56 
57  /// Message key assigned to a order/quote event related Eurex ETI data stream.
59 
60  /// Indicates whether this message is the last fragment (part) of a sequence of messages belonging to one dedicated 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 order ID chaining.
71 
72  /// The instrument identifier uniquely identifies an instrument in the core system.
74 
75  /// Transaction timestamp.
77 
78  /// The entry timestamp is the time of the creation of the order.
80 
81  /// Priority timestamp.
83 
84  /// Remaining quantity of an order.
86 
87  /// Cumulated executed quantity of an order.
89 
90  /// Total quantity cancelled for this order.
92 
93  /// The product identifier uniquely identifies a Eurex product.
95 
96  /// Code to further qualify the field ExecType (150) of the Execution Report (8) message.
98 
99  /// Side of the order.
101 
102  /// This field qualifies an instrument type on Eurex.
104 
105  /// Conveys the current status of an order.
107 
108  /// The reason why this message was generated.
110 
111  /// Indicates if an order has been previously triggered.
113 
114  /// Indicates SMP involvement.
116 
117  /// Indicator for a delayed transaction.
119 
120  /// Fills Group.
121  std::vector<FillsGrpElem> fillsGrp;
122 
123  /// Instrmnt Leg Exec Group.
124  std::vector<InstrmntLegExecGrpElem> instrmntLegExecGrp;
125 
126  /// Order Event Group.
127  std::vector<OrderEventGrpElem> orderEventGrp;
128 
129  /// Returns template ID.
130  TemplateId::Enum templateId () const;
131 
132  /// Returns string representation.
133  std::string toString () const;
134 
135 private:
136  friend class Serializer;
137  OrderExecResponse (const void* data, size_t dataSize, MessageInfo& msgInfo);
138  void nativeSerializeTo (void* nativeMessage);
139 };
140 
141 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, const OrderExecResponse&);
142 
143 }
144 }
145 }
std::ostream & operator<<(std::ostream &, const ConnectionRetries &)
Enum
Indicates whether this message is the last fragment (part) of a sequence of messages belonging to one...
Definition: Enumerations.h:583
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:47
Enum
Indicator for a delayed transaction.
Enum
The reason why this message was generated.
Definition: Enumerations.h:404
SInt64 cumQty
Cumulated executed quantity of an order.
signed int SInt32
Definition: Defines.h:42
Enum
This field qualifies an instrument type on Eurex.
UInt64 trdRegTSTimeOut
Matching engine out timestamp.
Message base class.
Definition: Message.h:33
LastFragment::Enum lastFragment
Indicates whether this message is the last fragment (part) of a sequence of messages belonging to one...
SInt64 leavesQty
Remaining quantity of an order.
std::vector< UInt8 > Data
Definition: Defines.h:60
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:369
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:43
UInt64 origClOrdId
ClOrdID (11) of the last successfully processed task (request) referring to the specific order; used ...
std::vector< FillsGrpElem > fillsGrp
Fills Group.
Enum
Identifier for subscription and retransmission of an ETI data stream.
Definition: Enumerations.h:34
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.
Definition: Enumerations.h:981
Triggered::Enum triggered
Indicates if an order has been previously triggered.
Enum
Indicates SMP involvement.
Definition: Enumerations.h:214
UInt64 trdRegTSTimePriority
Priority timestamp.
unsigned short UInt16
Definition: Defines.h:45
ExecType::Enum execType
The reason why this message was generated.
UInt64 trdRegTSEntryTime
The entry timestamp is the time of the creation of the order.