OnixS Eurex ETI Handler C++ library  9.19.0
API documentation
NewOrderComplexShortRequest.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 /// New Order Complex Short Request Message.
36 class ONIXS_EUREX_ETI_EXPORT NewOrderComplexShortRequest : public Message
37 {
38 public:
39  /// Initialize default instance.
41 
42  /// User ID.
44 
45  /// The instrument identifier uniquely identifies an instrument in the core system.
47 
48  /// Price.
50 
51  /// Total Order Quantity.
53 
54  /// Unique participant defined order request identifier.
56 
57  /// 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.
59 
60  /// 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.
62 
63  /// 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.
65 
66  /// The product identifier uniquely identifies a Eurex product.
68 
69  /// Self Match Prevention ID.
71 
72  /// Identifies an enrichment rule.
74 
75  /// Indicates if the order is a Lean Order or a Standard (non lean) Order.
77 
78  /// Indicate the instruction for SMP. If MatchInstCrossID (28744) is set then the default value for SelfMatchPreventionInstruction is 100 (Reject cross on business unit level).
80 
81  /// This field qualifies an instrument type on Eurex.
83 
84  /// Side of the order.
86 
87  /// Indicator how price validity check should be performed by the exchange.
89 
90  /// Indicator for checking the maximum order/quote value by the exchange.
92 
93  /// Order attribute liquidity provision.
95 
96  /// Instructions for order handling, represented as a bit map.
98 
99  /// Execution and trading restriction parameters supported by Eurex.
101 
102  /// This field designates if the trader is acting in the capacity of agent, trading for its own account or acting as a market maker.
104 
105  /// Order origination, MiFID field - to indicate order received from a direct access or sponsored access customer.
107 
108  /// Party ID investment decision maker qualifier.
110 
111  /// Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos.
113 
114  /// 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).
115  std::string complianceText;
116 
117  /// Returns template ID.
118  TemplateId::Enum templateId () const;
119 
120  /// Returns string representation.
121  std::string toString () const;
122 
123 private:
124  friend class Serializer;
125  NewOrderComplexShortRequest (const void* data, size_t dataSize, MessageInfo& msgInfo);
126  void nativeSerializeTo (void* nativeMessage);
127 };
128 
129 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, const NewOrderComplexShortRequest&);
130 
131 }
132 }
133 }
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:86
ApplSeqIndicator::Enum applSeqIndicator
Indicates if the order is a Lean Order or a Standard (non lean) Order.
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 ...
Enum
Indicate the instruction for SMP. If MatchInstCrossID (28744) is set then the default value for SelfM...
TimeInForce::Enum timeInForce
Execution and trading restriction parameters supported by Eurex.
UInt64 executingTrader
Executing Trader data Field (ESMA Field 5 (Section A)) used to identify the person or algorithm withi...
Enum
Side of the order.
unsigned long long UInt64
Definition: Defines.h:47
Enum
Indicator how price validity check should be performed by the exchange.
OrderOrigination::Enum orderOrigination
Order origination, MiFID field - to indicate order received from a direct access or sponsored access ...
ValueCheckTypeValue::Enum valueCheckTypeValue
Indicator for checking the maximum order/quote value by the exchange.
signed int SInt32
Definition: Defines.h:42
Enum
This field qualifies an instrument type on Eurex.
Enum
Instructions for order handling, represented as a bit map.
Definition: Enumerations.h:391
Message base class.
Definition: Message.h:33
Enum
Order origination, MiFID field - to indicate order received from a direct access or sponsored access ...
UInt64 partyIdInvestmentDecisionMaker
Investment decision within firm (ESMA Field 4 (Section A)) is the code used to identify the person or...
TradingCapacity::Enum tradingCapacity
This field designates if the trader is acting in the capacity of agent, trading for its own account o...
SelfMatchPreventionInstruction::Enum selfMatchPreventionInstruction
Indicate the instruction for SMP. If MatchInstCrossID (28744) is set then the default value for SelfM...
ExecInst::Enum execInst
Instructions for order handling, represented as a bit map.
unsigned int UInt32
Definition: Defines.h:46
signed long long SInt64
Definition: Defines.h:43
PriceValidityCheckType::Enum priceValidityCheckType
Indicator how price validity check should be performed by the exchange.
std::string complianceText
This field is used to provide additional regulatory information (according to respective rules and re...
Enum
Indicator for checking the maximum order/quote value by the exchange.
UInt64 clOrdId
Unique participant defined order request identifier.
std::ostream & operator<<(std::ostream &, const ConnectionStateChange &)
Make it printable to formatted C++ I/O streams.
SInt64 securityId
The instrument identifier uniquely identifies an instrument in the core system.
Enum
This field designates if the trader is acting in the capacity of agent, trading for its own account o...
unsigned short UInt16
Definition: Defines.h:45
OrderAttributeLiquidityProvision::Enum orderAttributeLiquidityProvision
Order attribute liquidity provision.
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:473
ProductComplex::Enum productComplex
This field qualifies an instrument type on Eurex.
PartyIdInvestmentDecisionMakerQualifier::Enum partyIdInvestmentDecisionMakerQualifier
Party ID investment decision maker qualifier.
ExecutingTraderQualifier::Enum executingTraderQualifier
Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos...