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