OnixS Eurex ETI Handler C++ library  9.25.0
API documentation
ModifyOrderComplexShortRequest.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"
28 
29 #include <iosfwd>
30 #include <string>
31 
32 namespace OnixS { namespace Eurex { namespace Trading {
33 
34 /// Modify Order Complex Short Request Message.
35 class ONIXS_EUREX_ETI_EXPORT ModifyOrderComplexShortRequest : public Message
36 {
37 public:
38  /// Initialize default instance.
40 
41  /// User ID.
43 
44  /// Unique participant defined order request identifier.
46 
47  /// ClOrdID (11) of the last successfully processed task (request) referring to the specific order; used for client
48  /// order ID chaining.
50 
51  /// The instrument identifier uniquely identifies an instrument in the core system.
53 
54  /// Price.
56 
57  /// Total Order Quantity.
59 
60  /// Client Identifier field (ESMA Field 3 (Section A)) used to identify the client of an order for agent account of
61  /// the member or participant of the trading venue.
63 
64  /// Investment decision within firm (ESMA Field 4 (Section A)) is the code used to identify the person or the
65  /// algorithm within the member or participant of the Trading Venue who is responsible for the investment decision.
67 
68  /// Executing Trader data Field (ESMA Field 5 (Section A)) used to identify the person or algorithm within the
69  /// member or participant of the trading venue who is responsible for the execution of the transaction resulting
70  /// from the order.
72 
73  /// The product identifier uniquely identifies a Eurex product.
75 
76  /// Self Match Prevention ID.
78 
79  /// Identifies an enrichment rule.
81 
82  /// Indicates if the order is a Lean Order or a Standard (non lean) Order.
84 
85  /// Indicate the instruction for SMP. If MatchInstCrossID (28744) is set then the default value for
86  /// SelfMatchPreventionInstruction is 100 (Reject cross on business unit level).
88 
89  /// Indicate the instruction for SMP. Applicable only when MatchInstCrossID (28744) is set. When
90  /// CrossMatchInstruction is not set the default value is defined by the exchange.
92 
93  /// This field qualifies an instrument type on Eurex.
95 
96  /// Side of the order.
98 
99  /// Indicator how price validity check should be performed by the exchange.
101 
102  /// Indicator for checking the maximum order/quote value by the exchange.
104 
105  /// Order attribute liquidity provision.
107 
108  /// Instructions for order handling, represented as a bit map.
110 
111  /// Execution and trading restriction parameters supported by Eurex.
113 
114  /// This field designates if the trader is acting in the capacity of agent, trading for its own account or acting as
115  /// a market maker.
117 
118  /// Order origination, MiFID field - to indicate order received from a direct access or sponsored access customer.
120 
121  /// Party ID investment decision maker qualifier.
123 
124  /// Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos.
126 
127  /// This field is used to provide additional regulatory information (according to respective rules and regs,
128  /// circulars and bilateral coordination between participant and Trading Surveillance Office).
129  std::string complianceText;
130 
131  /// Returns template ID.
132  TemplateId::Enum templateId() const;
133 
134  /// Returns string representation.
135  std::string toString() const;
136 
137 private:
138  friend class Serializer;
139  ModifyOrderComplexShortRequest(const void* data, size_t dataSize, MessageInfo& msgInfo);
140  void nativeSerializeTo(void* nativeMessage);
141 };
142 
143 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, const ModifyOrderComplexShortRequest&);
144 
145 }}} // namespace OnixS::Eurex::Trading
Enum
Party ID investment decision maker qualifier.
Enum
Indicates if the order is a Lean Order or a Standard (non lean) Order.
Definition: Enumerations.h:94
SInt64 securityId
The instrument identifier uniquely identifies an instrument in the core system.
ExecInst::Enum execInst
Instructions for order handling, represented as a bit map.
Enum
Side of the order.
ExecutingTraderQualifier::Enum executingTraderQualifier
Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos...
unsigned long long UInt64
Definition: Defines.h:46
Enum
Indicator how price validity check should be performed by the exchange.
signed int SInt32
Definition: Defines.h:41
Enum
This field qualifies an instrument type on Eurex.
Enum
Instructions for order handling, represented as a bit map.
Definition: Enumerations.h:480
Message base class.
Definition: Message.h:32
Enum
Order origination, MiFID field - to indicate order received from a direct access or sponsored access ...
ApplSeqIndicator::Enum applSeqIndicator
Indicates if the order is a Lean Order or a Standard (non lean) Order.
ValueCheckTypeValue::Enum valueCheckTypeValue
Indicator for checking the maximum order/quote value by the exchange.
TimeInForce::Enum timeInForce
Execution and trading restriction parameters supported by Eurex.
unsigned int UInt32
Definition: Defines.h:45
OrderOrigination::Enum orderOrigination
Order origination, MiFID field - to indicate order received from a direct access or sponsored access ...
signed long long SInt64
Definition: Defines.h:42
OrderAttributeLiquidityProvision::Enum orderAttributeLiquidityProvision
Order attribute liquidity provision.
Enum
Indicator for checking the maximum order/quote value by the exchange.
ProductComplex::Enum productComplex
This field qualifies an instrument type on Eurex.
SInt32 marketSegmentId
The product identifier uniquely identifies a Eurex product.
UInt64 clOrdId
Unique participant defined order request identifier.
std::ostream & operator<<(std::ostream &, const ConnectionStateChange &)
Make it printable to formatted C++ I/O streams.
PartyIdInvestmentDecisionMakerQualifier::Enum partyIdInvestmentDecisionMakerQualifier
Party ID investment decision maker qualifier.
unsigned short UInt16
Definition: Defines.h:44
PriceValidityCheckType::Enum priceValidityCheckType
Indicator how price validity check should be performed by the exchange.
Enum
Execution and trading restriction parameters supported by Eurex.
Enum
Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos...
Definition: Enumerations.h:571