OnixS Eurex ETI Handler C++ library  9.19.0
API documentation
ApproveTESTradeRequest.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"
27 
28 #include <iosfwd>
29 #include <string>
30 
31 namespace OnixS {
32 namespace Eurex {
33 namespace Trading {
34 
35 /// Approve TES Trade Request Message.
36 class ONIXS_EUREX_ETI_EXPORT ApproveTESTradeRequest : public Message
37 {
38 public:
39  /// Initialize default instance.
41 
42  /// User ID.
44 
45  /// Client Identifier field (ESMA Field 3 (Section A)) used to identify the client of an order for agent account of the member or participant of the trading venue.
47 
48  /// Investment decision within firm (ESMA Field 4 (Section A)) is the code used to identify the person or the algorithm within the member or participant of the Trading Venue who is responsible for the investment decision.
50 
51  /// Executing Trader data Field (ESMA Field 5 (Section A)) used to identify the person or algorithm within the member or participant of the trading venue who is responsible for the execution of the transaction resulting from the order.
53 
54  /// Quantity of the particular trade side in the TES trade.
56 
57  /// Identifier for a Trade Entry Service trade, i.e TES trade ID.
59 
60  /// Unique identifier for a TES Trade side.
62 
63  /// System transaction identifier for a Trade Entry Service transaction.
65 
66  /// The product identifier uniquely identifies a Eurex product.
68 
69  /// Identifies a related product.
71 
72  /// Indicates if a trade should be reported via the market reporting service.
74 
75  /// This field designates if the trader is acting in the capacity of agent, trading for its own account or acting as a market maker.
77 
78  /// Identifies the type of trade notification.
80 
81  /// Side of the order.
83 
84  /// Order attribute liquidity provision.
86 
87  /// Party ID investment decision maker qualifier.
89 
90  /// Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos.
92 
93  /// Order attribute risk reduction.
95 
96  /// Order origination, MiFID field - to indicate order received from a direct access or sponsored access customer.
98 
99  /// User defined transaction ID. Part of the TES response and TES broadcast.
100  std::string tradeReportId;
101 
102  /// Field is used for Eurex position management purposes and indicates whether the order is submitted to open or close a position.
104 
105  /// Owning business unit name.
106  std::string partyExecutingFirm;
107 
108  /// Owning user name.
109  std::string partyExecutingTrader;
110 
111  /// Account to book trades and keep positions on.
112  std::string account;
113 
114  /// First free-format text field for trader-specific or customer-related comments.
115  std::string freeText1;
116 
117  /// Second free-format text field for trader-specific or customer-related comments.
118  std::string freeText2;
119 
120  /// Third free-format text field for trader-specific or customer-related comments.
121  std::string freeText3;
122 
123  /// Indicates the name of a member institution to which a give-up is designated.
125 
126  /// Flex Account information.
128 
129  /// Partner identification at the Korea Exchange is required for orders in KRX products.
131 
132  /// Mandatory final KRX beneficiary account required for orders in KRX products.
133  std::string partyIdBeneficiary;
134 
135  /// Country code. Valid characters: 0x01-0x7E.
136  std::string partyIdLocationId;
137 
138  /// Identifies the source of an order, in accordance with the FIA guidelines for a rate Identifier. The field is for participant use only. Valid characters: 0x20, 0x22-0x7B, 0x7D, 0x7E.
140 
141  /// This field is used to provide additional regulatory information (according to respective rules and regs, circulars and bilateral coordination between participant and Trading Surveillance Office).
142  std::string complianceText;
143 
144  /// End client identifier.
146 
147  /// Returns template ID.
148  TemplateId::Enum templateId () const;
149 
150  /// Returns string representation.
151  std::string toString () const;
152 
153 private:
154  friend class Serializer;
155  ApproveTESTradeRequest (const void* data, size_t dataSize, MessageInfo& msgInfo);
156  void nativeSerializeTo (void* nativeMessage);
157 };
158 
159 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, const ApproveTESTradeRequest&);
160 
161 }
162 }
163 }
std::string complianceText
This field is used to provide additional regulatory information (according to respective rules and re...
Enum
Party ID investment decision maker qualifier.
TradingCapacity::Enum tradingCapacity
This field designates if the trader is acting in the capacity of agent, trading for its own account o...
CustOrderHandlingInst::Enum custOrderHandlingInst
Identifies the source of an order, in accordance with the FIA guidelines for a rate Identifier...
UInt32 tesExecId
System transaction identifier for a Trade Entry Service transaction.
std::string tradeReportId
User defined transaction ID. Part of the TES response and TES broadcast.
Enum
Side of the order.
unsigned long long UInt64
Definition: Defines.h:47
Enum
Indicates if a trade should be reported via the market reporting service.
std::string freeText3
Third free-format text field for trader-specific or customer-related comments.
SInt32 marketSegmentId
The product identifier uniquely identifies a Eurex product.
UInt64 partyIdClientId
Client Identifier field (ESMA Field 3 (Section A)) used to identify the client of an order for agent ...
std::string partyIdBeneficiary
Mandatory final KRX beneficiary account required for orders in KRX products.
std::string freeText1
First free-format text field for trader-specific or customer-related comments.
std::string partyEndClientIdentification
End client identifier.
Enum
Field is used for Eurex position management purposes and indicates whether the order is submitted to ...
signed int SInt32
Definition: Defines.h:42
UInt64 executingTrader
Executing Trader data Field (ESMA Field 5 (Section A)) used to identify the person or algorithm withi...
OrderAttributeRiskReduction::Enum orderAttributeRiskReduction
Order attribute risk reduction.
UInt64 partyIdInvestmentDecisionMaker
Investment decision within firm (ESMA Field 4 (Section A)) is the code used to identify the person or...
Message base class.
Definition: Message.h:33
Enum
Order origination, MiFID field - to indicate order received from a direct access or sponsored access ...
OrderOrigination::Enum orderOrigination
Order origination, MiFID field - to indicate order received from a direct access or sponsored access ...
Enum
Identifies the source of an order, in accordance with the FIA guidelines for a rate Identifier...
Definition: Enumerations.h:271
TradeReportType::Enum tradeReportType
Identifies the type of trade notification.
std::string partyExecutingFirm
Owning business unit name.
unsigned int UInt32
Definition: Defines.h:46
signed long long SInt64
Definition: Defines.h:43
SInt64 allocQty
Quantity of the particular trade side in the TES trade.
PartyIdInvestmentDecisionMakerQualifier::Enum partyIdInvestmentDecisionMakerQualifier
Party ID investment decision maker qualifier.
UInt32 packageId
Identifier for a Trade Entry Service trade, i.e TES trade ID.
std::string partyIdTakeUpTradingFirm
Indicates the name of a member institution to which a give-up is designated.
UInt32 allocId
Unique identifier for a TES Trade side.
std::ostream & operator<<(std::ostream &, const ConnectionStateChange &)
Make it printable to formatted C++ I/O streams.
ExecutingTraderQualifier::Enum executingTraderQualifier
Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos...
Enum
This field designates if the trader is acting in the capacity of agent, trading for its own account o...
Enum
Identifies the type of trade notification.
PositionEffect::Enum positionEffect
Field is used for Eurex position management purposes and indicates whether the order is submitted to ...
std::string freeText2
Second free-format text field for trader-specific or customer-related comments.
TrdType::Enum trdType
Indicates if a trade should be reported via the market reporting service.
SInt32 relatedMarketSegmentId
Identifies a related product.
std::string partyIdLocationId
Country code. Valid characters: 0x01-0x7E.
std::string account
Account to book trades and keep positions on.
std::string partyIdOrderOriginationFirm
Partner identification at the Korea Exchange is required for orders in KRX products.
std::string partyIdPositionAccount
Flex Account information.
Enum
Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos...
Definition: Enumerations.h:473
OrderAttributeLiquidityProvision::Enum orderAttributeLiquidityProvision
Order attribute liquidity provision.