OnixS Eurex ETI Handler C++ library  9.21.0
API documentation
Enumerations.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 
23 #include "OnixS/Eurex/Trading/Export.h"
24 
25 #include <string>
26 
27 namespace OnixS { namespace Eurex { namespace Trading {
28 
29 /// Identifier for subscription and retransmission of an ETI data stream.
30 struct ONIXS_EUREX_ETI_EXPORT ApplId
31 {
32  /// \copydoc ApplId
33  enum Enum
34  {
35  NoValue = 0xFF, ///< No value.
36  Trade = 1, ///< Trade.
37  News = 2, ///< News.
38  ServiceAvailability = 3, ///< Service Availability.
39  SessionData = 4, ///< Session Data.
40  ListenerData = 5, ///< Listener Data.
41  RiskControl = 6, ///< Risk Control.
42  TESMaintenance = 7, ///< TES Maintenance.
43  TESTrade = 8, ///< TES Trade.
44  SRQSMaintenance = 9, ///< SRQS Maintenance.
45  ServiceAvailabilityMarket = 10, ///< Service Availability Market.
46  };
47 };
48 
49 /// Returns string representation.
50 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplId::Enum);
51 
52 /// Make it printable using C++ I/O streams.
53 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ApplId::Enum);
54 
55 /// Subscription status.
56 struct ONIXS_EUREX_ETI_EXPORT ApplIdStatus
57 {
58  /// \copydoc ApplIdStatus
59  enum Enum
60  {
61  NoValue = 0xFF, ///< No value.
62  OutboundConversionError = 105, ///< Error converting response or broadcast.
63  };
64 };
65 
66 /// Returns string representation.
67 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplIdStatus::Enum);
68 
69 /// Make it printable using C++ I/O streams.
70 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ApplIdStatus::Enum);
71 
72 /// Indicates a retransmission message.
73 struct ONIXS_EUREX_ETI_EXPORT ApplResendFlag
74 {
75  /// \copydoc ApplResendFlag
76  enum Enum
77  {
78  NoValue = 0xFF, ///< No value.
79  False = 0, ///< False.
80  True = 1, ///< True.
81  };
82 };
83 
84 /// Returns string representation.
85 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplResendFlag::Enum);
86 
87 /// Make it printable using C++ I/O streams.
88 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ApplResendFlag::Enum);
89 
90 /// Indicates if the order is a Lean Order or a Standard (non lean) Order.
91 struct ONIXS_EUREX_ETI_EXPORT ApplSeqIndicator
92 {
93  /// \copydoc ApplSeqIndicator
94  enum Enum
95  {
96  NoValue = 0xFF, ///< No value.
97  NoRecoveryRequired = 0, ///< No Recovery Required.
98  RecoveryRequired = 1, ///< Recovery Required.
99  };
100 };
101 
102 /// Returns string representation.
103 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplSeqIndicator::Enum);
104 
105 /// Make it printable using C++ I/O streams.
106 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ApplSeqIndicator::Enum);
107 
108 /// Informs about the availability of the retransmission services for order and quote events (session data and listener
109 /// data).
110 struct ONIXS_EUREX_ETI_EXPORT ApplSeqStatus
111 {
112  /// \copydoc ApplSeqStatus
113  enum Enum
114  {
115  NoValue = 0xFF, ///< No value.
116  Unavailable = 0, ///< Unavailable.
117  Available = 1, ///< Available.
118  };
119 };
120 
121 /// Returns string representation.
122 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplSeqStatus::Enum);
123 
124 /// Make it printable using C++ I/O streams.
125 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ApplSeqStatus::Enum);
126 
127 /// Type of order processing.
128 struct ONIXS_EUREX_ETI_EXPORT ApplUsageOrders
129 {
130  /// \copydoc ApplUsageOrders
131  enum Enum
132  {
133  NoValue = 0x00, ///< No value.
134  Automated = 'A', ///< Automated.
135  Manual = 'M', ///< Manual.
136  AutoSelect = 'B', ///< Both (Automated and Manual).
137  None = 'N', ///< None.
138  };
139 };
140 
141 /// Returns string representation.
142 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplUsageOrders::Enum);
143 
144 /// Make it printable using C++ I/O streams.
145 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ApplUsageOrders::Enum);
146 
147 /// Type of quote processing.
148 struct ONIXS_EUREX_ETI_EXPORT ApplUsageQuotes
149 {
150  /// \copydoc ApplUsageQuotes
151  enum Enum
152  {
153  NoValue = 0x00, ///< No value.
154  Automated = 'A', ///< Automated.
155  Manual = 'M', ///< Manual.
156  AutoSelect = 'B', ///< Both (Automated and Manual).
157  None = 'N', ///< None.
158  };
159 };
160 
161 /// Returns string representation.
162 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ApplUsageQuotes::Enum);
163 
164 /// Make it printable using C++ I/O streams.
165 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ApplUsageQuotes::Enum);
166 
167 /// Used to indicate anonymized trades in baskets.
168 struct ONIXS_EUREX_ETI_EXPORT BasketAnonymity
169 {
170  /// \copydoc BasketAnonymity
171  enum Enum
172  {
173  NoValue = 0xFF, ///< No value.
174  No = 0, ///< No.
175  Yes = 1, ///< Yes.
176  };
177 };
178 
179 /// Returns string representation.
180 ONIXS_EUREX_ETI_EXPORT std::string enumToString(BasketAnonymity::Enum);
181 
182 /// Make it printable using C++ I/O streams.
183 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, BasketAnonymity::Enum);
184 
185 /// Basket operation.
186 struct ONIXS_EUREX_ETI_EXPORT BasketTradeReportType
187 {
188  /// \copydoc BasketTradeReportType
189  enum Enum
190  {
191  NoValue = 0xFF, ///< No value.
192  Submit = 0, ///< Submit.
193  Addendum = 4, ///< Addendum.
194  NoWasSubstitue = 5, ///< No/Was (Substitute).
195  Terminate = 19, ///< Terminate.
196  };
197 };
198 
199 /// Returns string representation.
200 ONIXS_EUREX_ETI_EXPORT std::string enumToString(BasketTradeReportType::Enum);
201 
202 /// Make it printable using C++ I/O streams.
203 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, BasketTradeReportType::Enum);
204 
205 /// BidPx is locked.
206 struct ONIXS_EUREX_ETI_EXPORT BidPxIsLocked
207 {
208  /// \copydoc BidPxIsLocked
209  enum Enum
210  {
211  NoValue = 0xFF, ///< No value.
212  No = 0, ///< No.
213  Yes = 1, ///< Yes.
214  };
215 };
216 
217 /// Returns string representation.
218 ONIXS_EUREX_ETI_EXPORT std::string enumToString(BidPxIsLocked::Enum);
219 
220 /// Make it printable using C++ I/O streams.
221 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, BidPxIsLocked::Enum);
222 
223 /// Instruction to show Charge ID.
224 struct ONIXS_EUREX_ETI_EXPORT ChargeIdDisclosureInstruction
225 {
226  /// \copydoc ChargeIdDisclosureInstruction
227  enum Enum
228  {
229  NoValue = 0xFF, ///< No value.
230  No = 0, ///< No.
231  Yes = 1, ///< Yes.
232  };
233 };
234 
235 /// Returns string representation.
236 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ChargeIdDisclosureInstruction::Enum);
237 
238 /// Make it printable using C++ I/O streams.
239 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ChargeIdDisclosureInstruction::Enum);
240 
241 /// Prioritization of a cross order.
242 struct ONIXS_EUREX_ETI_EXPORT CrossPrioritization
243 {
244  /// \copydoc CrossPrioritization
245  enum Enum
246  {
247  NoValue = 0xFF, ///< No value.
248  BuySide = 1, ///< Buy side is prioritized.
249  SellSide = 2, ///< Sell side is prioritized.
250  };
251 };
252 
253 /// Returns string representation.
254 ONIXS_EUREX_ETI_EXPORT std::string enumToString(CrossPrioritization::Enum);
255 
256 /// Make it printable using C++ I/O streams.
257 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, CrossPrioritization::Enum);
258 
259 /// Type of the Cross Request.
260 struct ONIXS_EUREX_ETI_EXPORT CrossRequestType
261 {
262  /// \copydoc CrossRequestType
263  enum Enum
264  {
265  NoValue = 0xFF, ///< No value.
266  Cross = 1, ///< Cross Announcement.
267  Clip = 2, ///< Liquidity Improvement Cross.
268  };
269 };
270 
271 /// Returns string representation.
272 ONIXS_EUREX_ETI_EXPORT std::string enumToString(CrossRequestType::Enum);
273 
274 /// Make it printable using C++ I/O streams.
275 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, CrossRequestType::Enum);
276 
277 /// Type of cross being submitted to a market.
278 struct ONIXS_EUREX_ETI_EXPORT CrossType
279 {
280  /// \copydoc CrossType
281  enum Enum
282  {
283  NoValue = 0xFF, ///< No value.
284  CrossIOC = 2, ///< Immediate-or-cancel-cross.
285  CrossOneSide = 3, ///< One sided cross - unfilled quantity remains active after crossing. Only applicable for
286  ///< CrossRequestType(28771) = 1(Cross Announcement).
287  };
288 };
289 
290 /// Returns string representation.
291 ONIXS_EUREX_ETI_EXPORT std::string enumToString(CrossType::Enum);
292 
293 /// Make it printable using C++ I/O streams.
294 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, CrossType::Enum);
295 
296 /// Indicates SMP involvement.
297 struct ONIXS_EUREX_ETI_EXPORT CrossedIndicator
298 {
299  /// \copydoc CrossedIndicator
300  enum Enum
301  {
302  NoValue = 0xFF, ///< No value.
303  NoCrossing = 0, ///< No crossing (Order not subject to crossing).
304  CrossRejected = 1, ///< Cross rejected (Order subject to crossing and match prevented).
305  };
306 };
307 
308 /// Returns string representation.
309 ONIXS_EUREX_ETI_EXPORT std::string enumToString(CrossedIndicator::Enum);
310 
311 /// Make it printable using C++ I/O streams.
312 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, CrossedIndicator::Enum);
313 
314 /// Identifies the source of an order, in accordance with the FIA guidelines for a rate Identifier. The field is for
315 /// participant use only. Valid characters: 0x20, 0x22-0x7B, 0x7D, 0x7E.
316 struct ONIXS_EUREX_ETI_EXPORT CustOrderHandlingInst
317 {
318  /// \copydoc CustOrderHandlingInst
319  enum Enum
320  {
321  NoValue = 0x00, ///< No value.
322  W = 'W', ///< Desk.
323  Y = 'Y', ///< Electronic.
324  C = 'C', ///< Vendor-provided Platform billed by Executing Broker.
325  G = 'G', ///< Sponsored Access via Exchange API or FIX provided by Executing Broker.
326  H = 'H', ///< Premium Algorithmic Trading Provider billed by Executing Broker.
327  D = 'D', ///< Other, including Other-provided Screen.
328  };
329 };
330 
331 /// Returns string representation.
332 ONIXS_EUREX_ETI_EXPORT std::string enumToString(CustOrderHandlingInst::Enum);
333 
334 /// Make it printable using C++ I/O streams.
335 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, CustOrderHandlingInst::Enum);
336 
337 /// Reason for deletion.
338 struct ONIXS_EUREX_ETI_EXPORT DeleteReason
339 {
340  /// \copydoc DeleteReason
341  enum Enum
342  {
343  NoValue = 0xFF, ///< No value.
344  NoSpecialReason = 100, ///< Deletion via the TES Delete Request.
345  TASChange = 101, ///< Automatic deletion due to TES Activity State Change.
346  IntradayExpiration = 102, ///< Automatic deletion due to instrument expiration.
347  RiskEvent = 103, ///< Deletion caused by Clearing/Risk stop.
348  StopTrading = 104, ///< Deletion caused by Trading stop.
349  InstrumentDeletion = 105, ///< Deletion of Instrument.
350  InstrumentSuspension = 106, ///< Suspension of Instrument.
351  PreTradeRiskEvent = 107, ///< Deletion caused by a pre-trade risk event.
352  AmendmentReset = 108, ///< Basket amendment cancelled.
353  AmendmentUserCancelled = 109, ///< Amendment cancelled by user action.
354  };
355 };
356 
357 /// Returns string representation.
358 ONIXS_EUREX_ETI_EXPORT std::string enumToString(DeleteReason::Enum);
359 
360 /// Make it printable using C++ I/O streams.
361 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, DeleteReason::Enum);
362 
363 /// Transaction effect on a basket.
364 struct ONIXS_EUREX_ETI_EXPORT EffectOnBasket
365 {
366  /// \copydoc EffectOnBasket
367  enum Enum
368  {
369  NoValue = 0xFF, ///< No value.
370  AddVolume = 1, ///< Add volume.
371  RemoveVolume = 2, ///< Remove volume.
372  };
373 };
374 
375 /// Returns string representation.
376 ONIXS_EUREX_ETI_EXPORT std::string enumToString(EffectOnBasket::Enum);
377 
378 /// Make it printable using C++ I/O streams.
379 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, EffectOnBasket::Enum);
380 
381 /// Enlight RFQ Average Response Rate Ranking.
382 struct ONIXS_EUREX_ETI_EXPORT EnlightRFQAvgRespRateRanking
383 {
384  /// \copydoc EnlightRFQAvgRespRateRanking
385  enum Enum
386  {
387  NoValue = 0xFF, ///< No value.
388  Low = 1, ///< Low.
389  Medium = 2, ///< Medium.
390  High = 3, ///< High.
391  };
392 };
393 
394 /// Returns string representation.
395 ONIXS_EUREX_ETI_EXPORT std::string enumToString(EnlightRFQAvgRespRateRanking::Enum);
396 
397 /// Make it printable using C++ I/O streams.
398 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, EnlightRFQAvgRespRateRanking::Enum);
399 
400 /// Enlight RFQ Average Response Time Ranking.
401 struct ONIXS_EUREX_ETI_EXPORT EnlightRFQAvgRespTimeRanking
402 {
403  /// \copydoc EnlightRFQAvgRespTimeRanking
404  enum Enum
405  {
406  NoValue = 0xFF, ///< No value.
407  Low = 1, ///< Low.
408  Medium = 2, ///< Medium.
409  High = 3, ///< High.
410  };
411 };
412 
413 /// Returns string representation.
414 ONIXS_EUREX_ETI_EXPORT std::string enumToString(EnlightRFQAvgRespTimeRanking::Enum);
415 
416 /// Make it printable using C++ I/O streams.
417 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, EnlightRFQAvgRespTimeRanking::Enum);
418 
419 /// Eurex Volume Ranking.
420 struct ONIXS_EUREX_ETI_EXPORT EurexVolumeRanking
421 {
422  /// \copydoc EurexVolumeRanking
423  enum Enum
424  {
425  NoValue = 0xFF, ///< No value.
426  Low = 1, ///< Low.
427  Medium = 2, ///< Medium.
428  High = 3, ///< High.
429  };
430 };
431 
432 /// Returns string representation.
433 ONIXS_EUREX_ETI_EXPORT std::string enumToString(EurexVolumeRanking::Enum);
434 
435 /// Make it printable using C++ I/O streams.
436 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, EurexVolumeRanking::Enum);
437 
438 /// Code to represent the type of event.
439 struct ONIXS_EUREX_ETI_EXPORT EventType
440 {
441  /// \copydoc EventType
442  enum Enum
443  {
444  NoValue = 0xFF, ///< No value.
445  SwapStartDate = 8, ///< Swap Start Date.
446  SwapEndDate = 9, ///< Swap End Date.
447  };
448 };
449 
450 /// Returns string representation.
451 ONIXS_EUREX_ETI_EXPORT std::string enumToString(EventType::Enum);
452 
453 /// Make it printable using C++ I/O streams.
454 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, EventType::Enum);
455 
456 /// Instructions for order handling, represented as a bit map.
457 struct ONIXS_EUREX_ETI_EXPORT ExecInst
458 {
459  /// \copydoc ExecInst
460  enum Enum
461  {
462  NoValue = 0xFF, ///< No value.
463  H = 1, ///< Persistent Order (FIX value 'H').
464  Q = 2, ///< Non-persistent Order (FIX value 'Q').
465  HQ = 3, ///< Persistent and non-persistent orders affected (FIX value 'H Q').
466  H6 = 5, ///< Persistent and Book or Cancel order (FIX value 'H 6').
467  Q6 = 6, ///< Non-persistent and Book or Cancel order (FIX value 'Q 6').
468  };
469 };
470 
471 /// Returns string representation.
472 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ExecInst::Enum);
473 
474 /// Make it printable using C++ I/O streams.
475 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ExecInst::Enum);
476 
477 /// Code to further qualify the field ExecType (150) of the Execution Report (8) message.
478 struct ONIXS_EUREX_ETI_EXPORT ExecRestatementReason
479 {
480  /// \copydoc ExecRestatementReason
481  enum Enum
482  {
483  NoValue = 0xFF, ///< No value.
484  OrderBookRestatement = 1, ///< Order book restatement.
485  OrderAdded = 101, ///< Order add accepted.
486  OrderModified = 102, ///< Order modify accepted.
487  OrderCancelled = 103, ///< Order delete accepted.
488  IOCOrderCancelled = 105, ///< IOC Order accepted.
489  FOKOrderCancelled = 107, ///< FOK Order accepted.
490  BookOrderExecuted = 108, ///< Book Order executed.
491  ChangedToIOC = 114, ///< Order has been changed to IOC.
492  MemberDisable = 117, ///< Member has been disabled.
493  InstrumentStateChange = 122, ///< Instrument State Change.
494  MarketOrderTriggered = 135, ///< Market Order triggered and executed.
495  CAOOrderActivated = 149, ///< Closing Auction Order has been activated.
496  CAOOrderInactivated = 150, ///< Closing Auction Order has been inactivated.
497  OAOOrderActivated = 151, ///< Opening Auction Order has been activated.
498  OAOOrderInactivated = 152, ///< Opening Auction Order has been inactivated.
499  AAOOrderActivated = 153, ///< Any Auction Order has been activated.
500  AAOOrderInactivated = 154, ///< Any Auction Order has been inactivated.
501  OCOOrderTriggered = 164, ///< One-cancels-the-other Order has been triggered.
502  StopOrderTriggered = 172, ///< Stop Order has been triggered.
503  OwnershipChanged = 181, ///< Ownership Changed.
504  OrderCancellationPending = 197, ///< Pending order deletion.
505  PendingCancellationExecuted = 199, ///< Pending order cancellation processed (end of FREEZE state).
506  BOCOrderCancelled = 212, ///< Book or Cancel Order accepted.
507  PanicCancel = 261, ///< Panic Cancel.
508  MarketOrderUncrossing = 302, ///< Market Order uncrossing.
509  CLIPExecution = 340, ///< CLIP execution after improvement period.
510  CLIPArrangementTimeOut = 343, ///< CLIP Request deleted by arrangement time out.
511  CLIPArrangementValidation = 344, ///< CLIP Request deleted by arrangement validation.
512  CrossOrderAdded = 346, ///< Cross order added.
513  CrossOrderCancelled = 347, ///< Cross order cancelled.
514  };
515 };
516 
517 /// Returns string representation.
518 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ExecRestatementReason::Enum);
519 
520 /// Make it printable using C++ I/O streams.
521 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ExecRestatementReason::Enum);
522 
523 /// The reason why this message was generated.
524 struct ONIXS_EUREX_ETI_EXPORT ExecType
525 {
526  /// \copydoc ExecType
527  enum Enum
528  {
529  NoValue = 0x00, ///< No value.
530  New = '0', ///< New.
531  Canceled = '4', ///< Cancelled.
532  Replaced = '5', ///< Replaced.
533  PendingCancelE = '6', ///< Pending Cancel (e.g. result of Order Cancel Request).
534  Suspended = '9', ///< Suspended.
535  Restated = 'D', ///< Restated.
536  Triggered = 'L', ///< Triggered.
537  Trade = 'F', ///< Trade.
538  };
539 };
540 
541 /// Returns string representation.
542 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ExecType::Enum);
543 
544 /// Make it printable using C++ I/O streams.
545 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ExecType::Enum);
546 
547 /// Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos.
548 struct ONIXS_EUREX_ETI_EXPORT ExecutingTraderQualifier
549 {
550  /// \copydoc ExecutingTraderQualifier
551  enum Enum
552  {
553  NoValue = 0xFF, ///< No value.
554  Algo = 22, ///< Algo.
555  Human = 24, ///< Human/Natural person.
556  };
557 };
558 
559 /// Returns string representation.
560 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ExecutingTraderQualifier::Enum);
561 
562 /// Make it printable using C++ I/O streams.
563 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ExecutingTraderQualifier::Enum);
564 
565 /// Type of exercise of an instrument.
566 struct ONIXS_EUREX_ETI_EXPORT ExerciseStyle
567 {
568  /// \copydoc ExerciseStyle
569  enum Enum
570  {
571  NoValue = 0xFF, ///< No value.
572  European = 0, ///< European.
573  American = 1, ///< American.
574  };
575 };
576 
577 /// Returns string representation.
578 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ExerciseStyle::Enum);
579 
580 /// Make it printable using C++ I/O streams.
581 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ExerciseStyle::Enum);
582 
583 /// Indicates whether the order added or removed liquidity.
584 struct ONIXS_EUREX_ETI_EXPORT FillLiquidityInd
585 {
586  /// \copydoc FillLiquidityInd
587  enum Enum
588  {
589  NoValue = 0xFF, ///< No value.
590  AddedLiquidity = 1, ///< Added Liquidity.
591  RemovedLiquidity = 2, ///< Removed Liquidity.
592  Auction = 4, ///< Auction.
593  TriggeredStopOrder = 5, ///< Triggered Stop Order.
594  TriggeredOCOOrder = 6, ///< Triggered OCO Order.
595  TriggeredMarketOrder = 7, ///< Triggered Market Order.
596  };
597 };
598 
599 /// Returns string representation.
600 ONIXS_EUREX_ETI_EXPORT std::string enumToString(FillLiquidityInd::Enum);
601 
602 /// Make it printable using C++ I/O streams.
603 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, FillLiquidityInd::Enum);
604 
605 /// Instruction to show FreeText5.
606 struct ONIXS_EUREX_ETI_EXPORT FreeText5DisclosureInstruction
607 {
608  /// \copydoc FreeText5DisclosureInstruction
609  enum Enum
610  {
611  NoValue = 0xFF, ///< No value.
612  No = 0, ///< No.
613  Yes = 1, ///< Yes.
614  };
615 };
616 
617 /// Returns string representation.
618 ONIXS_EUREX_ETI_EXPORT std::string enumToString(FreeText5DisclosureInstruction::Enum);
619 
620 /// Make it printable using C++ I/O streams.
621 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, FreeText5DisclosureInstruction::Enum);
622 
623 /// Status of ETI Gateway.
624 struct ONIXS_EUREX_ETI_EXPORT GatewayStatus
625 {
626  /// \copydoc GatewayStatus
627  enum Enum
628  {
629  NoValue = 0xFF, ///< No value.
630  Standby = 0, ///< Standby.
631  Active = 1, ///< Active.
632  };
633 };
634 
635 /// Returns string representation.
636 ONIXS_EUREX_ETI_EXPORT std::string enumToString(GatewayStatus::Enum);
637 
638 /// Make it printable using C++ I/O streams.
639 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, GatewayStatus::Enum);
640 
641 /// Hedging method.
642 struct ONIXS_EUREX_ETI_EXPORT HedgeType
643 {
644  /// \copydoc HedgeType
645  enum Enum
646  {
647  NoValue = 0xFF, ///< No value.
648  DurationHedge = 0, ///< Duration Hedge.
649  NominalHedge = 1, ///< Nominal Hedge.
650  PriceFactorHedge = 2, ///< Price Factor Hedge.
651  };
652 };
653 
654 /// Returns string representation.
655 ONIXS_EUREX_ETI_EXPORT std::string enumToString(HedgeType::Enum);
656 
657 /// Make it printable using C++ I/O streams.
658 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, HedgeType::Enum);
659 
660 /// Indication for the hedge transaction.
661 struct ONIXS_EUREX_ETI_EXPORT HedgingInstruction
662 {
663  /// \copydoc HedgingInstruction
664  enum Enum
665  {
666  NoValue = 0xFF, ///< No value.
667  OnClose = 1, ///< Execute hedge transaction in the closing auction of the underlying.
668  };
669 };
670 
671 /// Returns string representation.
672 ONIXS_EUREX_ETI_EXPORT std::string enumToString(HedgingInstruction::Enum);
673 
674 /// Make it printable using C++ I/O streams.
675 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, HedgingInstruction::Enum);
676 
677 /// Indicates whether a option strategy synthetic BBO is used for the price improvement check.
678 struct ONIXS_EUREX_ETI_EXPORT ImpliedCheckPriceIndicator
679 {
680  /// \copydoc ImpliedCheckPriceIndicator
681  enum Enum
682  {
683  NoValue = 0xFF, ///< No value.
684  No = 0, ///< No.
685  Yes = 1, ///< Yes.
686  };
687 };
688 
689 /// Returns string representation.
690 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ImpliedCheckPriceIndicator::Enum);
691 
692 /// Make it printable using C++ I/O streams.
693 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ImpliedCheckPriceIndicator::Enum);
694 
695 /// Indicates that an implied market to be created for either the legs of a multi-leg instrument (Implied-in) or for the
696 /// multi-leg instrument based on the existence of the legs (Implied-out).
697 struct ONIXS_EUREX_ETI_EXPORT ImpliedMarketIndicator
698 {
699  /// \copydoc ImpliedMarketIndicator
700  enum Enum
701  {
702  NoValue = 0xFF, ///< No value.
703  NotImplied = 0, ///< Not implied.
704  ImpliedInOut = 3, ///< Both Implied-in and Implied-out.
705  };
706 };
707 
708 /// Returns string representation.
709 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ImpliedMarketIndicator::Enum);
710 
711 /// Make it printable using C++ I/O streams.
712 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ImpliedMarketIndicator::Enum);
713 
714 /// Role on/for a message.
715 struct ONIXS_EUREX_ETI_EXPORT InputSource
716 {
717  /// \copydoc InputSource
718  enum Enum
719  {
720  NoValue = 0xFF, ///< No value.
721  ClientBroker = 1, ///< Client Broker.
722  ProprietaryBroker = 2, ///< Proprietary Broker.
723  };
724 };
725 
726 /// Returns string representation.
727 ONIXS_EUREX_ETI_EXPORT std::string enumToString(InputSource::Enum);
728 
729 /// Make it printable using C++ I/O streams.
730 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, InputSource::Enum);
731 
732 /// Code to represent the type of instrument attribute.
733 struct ONIXS_EUREX_ETI_EXPORT InstrAttribType
734 {
735  /// \copydoc InstrAttribType
736  enum Enum
737  {
738  NoValue = 0xFF, ///< No value.
739  VariableRate = 5, ///< Variable rate.
740  CouponRate = 100, ///< Coupon rate.
741  OffsetToTheVariableCouponRate = 101, ///< Offset to the variable coupon rate.
742  SwapCustomer1 = 102, ///< Swap Customer 1.
743  SwapCustomer2 = 103, ///< Swap Customer 2.
744  CashBasketReference = 104, ///< Cash Basket Reference.
745  };
746 };
747 
748 /// Returns string representation.
749 ONIXS_EUREX_ETI_EXPORT std::string enumToString(InstrAttribType::Enum);
750 
751 /// Make it printable using C++ I/O streams.
752 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, InstrAttribType::Enum);
753 
754 /// Indicator for checking open orders and quotes.
755 struct ONIXS_EUREX_ETI_EXPORT InventoryCheckType
756 {
757  /// \copydoc InventoryCheckType
758  enum Enum
759  {
760  NoValue = 0xFF, ///< No value.
761  DoNotCheck = 0, ///< Do not check.
762  Check = 1, ///< Check.
763  };
764 };
765 
766 /// Returns string representation.
767 ONIXS_EUREX_ETI_EXPORT std::string enumToString(InventoryCheckType::Enum);
768 
769 /// Make it printable using C++ I/O streams.
770 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, InventoryCheckType::Enum);
771 
772 /// Indicates whether this message is the last fragment (part) of a sequence of messages belonging to one dedicated
773 /// transaction.
774 struct ONIXS_EUREX_ETI_EXPORT LastFragment
775 {
776  /// \copydoc LastFragment
777  enum Enum
778  {
779  NoValue = 0xFF, ///< No value.
780  NotLastMessage = 0, ///< Not Last Message.
781  LastMessage = 1, ///< Last Message.
782  };
783 };
784 
785 /// Returns string representation.
786 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LastFragment::Enum);
787 
788 /// Make it printable using C++ I/O streams.
789 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, LastFragment::Enum);
790 
791 /// Last market.
792 struct ONIXS_EUREX_ETI_EXPORT LastMkt
793 {
794  /// \copydoc LastMkt
795  enum Enum
796  {
797  NoValue = 0xFF, ///< No value.
798  XEUR = 1, ///< XEUR.
799  XEEE = 2, ///< XEEE.
800  NODX = 12, ///< NODX.
801  };
802 };
803 
804 /// Returns string representation.
805 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LastMkt::Enum);
806 
807 /// Make it printable using C++ I/O streams.
808 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, LastMkt::Enum);
809 
810 /// Instruction to show last deal price.
811 struct ONIXS_EUREX_ETI_EXPORT LastPxDisclosureInstruction
812 {
813  /// \copydoc LastPxDisclosureInstruction
814  enum Enum
815  {
816  NoValue = 0xFF, ///< No value.
817  No = 0, ///< No.
818  Yes = 1, ///< Yes.
819  };
820 };
821 
822 /// Returns string representation.
823 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LastPxDisclosureInstruction::Enum);
824 
825 /// Make it printable using C++ I/O streams.
826 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, LastPxDisclosureInstruction::Enum);
827 
828 /// Instruction to show last deal quantity. Can only be set to 1 (Yes) if LastQtyDisclosureInstruction = 1 (Yes).
829 struct ONIXS_EUREX_ETI_EXPORT LastQtyDisclosureInstruction
830 {
831  /// \copydoc LastQtyDisclosureInstruction
832  enum Enum
833  {
834  NoValue = 0xFF, ///< No value.
835  No = 0, ///< No.
836  Yes = 1, ///< Yes.
837  };
838 };
839 
840 /// Returns string representation.
841 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LastQtyDisclosureInstruction::Enum);
842 
843 /// Make it printable using C++ I/O streams.
844 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, LastQtyDisclosureInstruction::Enum);
845 
846 /// Leaves quantity disclosure instruction.
847 struct ONIXS_EUREX_ETI_EXPORT LeavesQtyDisclosureInstruction
848 {
849  /// \copydoc LeavesQtyDisclosureInstruction
850  enum Enum
851  {
852  NoValue = 0xFF, ///< No value.
853  No = 0, ///< No.
854  Yes = 1, ///< Yes.
855  };
856 };
857 
858 /// Returns string representation.
859 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LeavesQtyDisclosureInstruction::Enum);
860 
861 /// Make it printable using C++ I/O streams.
862 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, LeavesQtyDisclosureInstruction::Enum);
863 
864 /// Role on/for a message.
865 struct ONIXS_EUREX_ETI_EXPORT LegInputSource
866 {
867  /// \copydoc LegInputSource
868  enum Enum
869  {
870  NoValue = 0xFF, ///< No value.
871  ClientBroker = 1, ///< Client Broker.
872  ProprietaryBroker = 2, ///< Proprietary Broker.
873  BuySide = 3, ///< Buy side.
874  SellSide = 4, ///< Sell side.
875  };
876 };
877 
878 /// Returns string representation.
879 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LegInputSource::Enum);
880 
881 /// Make it printable using C++ I/O streams.
882 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, LegInputSource::Enum);
883 
884 /// Leg-specific field used for Eurex position management purposes and indicates whether the leg is submitted to open or
885 /// close a position.
886 struct ONIXS_EUREX_ETI_EXPORT LegPositionEffect
887 {
888  /// \copydoc LegPositionEffect
889  enum Enum
890  {
891  NoValue = 0x00, ///< No value.
892  Close = 'C', ///< Close.
893  Open = 'O', ///< Open.
894  };
895 };
896 
897 /// Returns string representation.
898 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LegPositionEffect::Enum);
899 
900 /// Make it printable using C++ I/O streams.
901 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, LegPositionEffect::Enum);
902 
903 /// Indicates type of leg.
904 struct ONIXS_EUREX_ETI_EXPORT LegSecurityType
905 {
906  /// \copydoc LegSecurityType
907  enum Enum
908  {
909  NoValue = 0xFF, ///< No value.
910  MultilegInstrument = 1, ///< Multileg Instrument.
911  UnderlyingLeg = 2, ///< Underlying Leg.
912  };
913 };
914 
915 /// Returns string representation.
916 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LegSecurityType::Enum);
917 
918 /// Make it printable using C++ I/O streams.
919 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, LegSecurityType::Enum);
920 
921 /// The side of the individual leg of a strategy.
922 struct ONIXS_EUREX_ETI_EXPORT LegSide
923 {
924  /// \copydoc LegSide
925  enum Enum
926  {
927  NoValue = 0xFF, ///< No value.
928  Buy = 1, ///< Buy.
929  Sell = 2, ///< Sell.
930  };
931 };
932 
933 /// Returns string representation.
934 ONIXS_EUREX_ETI_EXPORT std::string enumToString(LegSide::Enum);
935 
936 /// Make it printable using C++ I/O streams.
937 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, LegSide::Enum);
938 
939 /// List update action.
940 struct ONIXS_EUREX_ETI_EXPORT ListUpdateAction
941 {
942  /// \copydoc ListUpdateAction
943  enum Enum
944  {
945  NoValue = 0x00, ///< No value.
946  Add = 'A', ///< Add (Invocation).
947  Delete = 'D', ///< Delete (Release).
948  };
949 };
950 
951 /// Returns string representation.
952 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ListUpdateAction::Enum);
953 
954 /// Make it printable using C++ I/O streams.
955 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ListUpdateAction::Enum);
956 
957 /// Type of market data.
958 struct ONIXS_EUREX_ETI_EXPORT MDBookType
959 {
960  /// \copydoc MDBookType
961  enum Enum
962  {
963  NoValue = 0xFF, ///< No value.
964  TopOfBook = 1, ///< Top of book.
965  PriceDepth = 2, ///< Price depth (aggregated).
966  };
967 };
968 
969 /// Returns string representation.
970 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MDBookType::Enum);
971 
972 /// Make it printable using C++ I/O streams.
973 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MDBookType::Enum);
974 
975 /// Sub-type (qualifier) of market data.
976 struct ONIXS_EUREX_ETI_EXPORT MDSubBookType
977 {
978  /// \copydoc MDSubBookType
979  enum Enum
980  {
981  NoValue = 0xFF, ///< No value.
982  Implied = 1, ///< Implied.
983  VolumeWeightedAverage = 2, ///< Volume Weighted Average.
984  };
985 };
986 
987 /// Returns string representation.
988 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MDSubBookType::Enum);
989 
990 /// Make it printable using C++ I/O streams.
991 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MDSubBookType::Enum);
992 
993 /// Action for reaching risk limit.
994 struct ONIXS_EUREX_ETI_EXPORT MMRiskLimitActionType
995 {
996  /// \copydoc MMRiskLimitActionType
997  enum Enum
998  {
999  NoValue = 0xFF, ///< No value.
1000  QuoteInactivate = 1, ///< Quote inactivate.
1001  QuoteInactivateAndDelete = 2, ///< Quote inactivate and delete.
1002  };
1003 };
1004 
1005 /// Returns string representation.
1006 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MMRiskLimitActionType::Enum);
1007 
1008 /// Make it printable using C++ I/O streams.
1009 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MMRiskLimitActionType::Enum);
1010 
1011 /// Market ID.
1012 struct ONIXS_EUREX_ETI_EXPORT MarketId
1013 {
1014  /// \copydoc MarketId
1015  enum Enum
1016  {
1017  NoValue = 0xFF, ///< No value.
1018  XEUR = 1, ///< XEUR.
1019  XEEE = 2, ///< XEEE.
1020  NODX = 12, ///< NODX.
1021  };
1022 };
1023 
1024 /// Returns string representation.
1025 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MarketId::Enum);
1026 
1027 /// Make it printable using C++ I/O streams.
1028 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MarketId::Enum);
1029 
1030 /// Reason for mass cancellation.
1031 struct ONIXS_EUREX_ETI_EXPORT MassActionReason
1032 {
1033  /// \copydoc MassActionReason
1034  enum Enum
1035  {
1036  NoValue = 0xFF, ///< No value.
1037  NoSpecialReason = 0, ///< No special reason.
1038  StopTrading = 1, ///< Trading was stopped.
1039  Emergency = 2, ///< Emergency.
1040  MarketMakerProtection = 3, ///< Market Maker Protection.
1041  SessionLoss = 6, ///< Session loss or logout.
1042  DuplicateSessionLogin = 7, ///< Duplicate Session Login.
1043  ClearingRiskControl = 8, ///< Clearing Risk Control.
1044  InternalConnectionLoss = 100, ///< Internal connection loss.
1045  ProductStateHalt = 105, ///< Product State Halt.
1046  ProductStateHoliday = 106, ///< Product State Holiday.
1047  InstrumentSuspended = 107, ///< Instrument Suspended.
1048  ComplexInstrumentDeletion = 109, ///< Complex Instrument Deletion.
1049  VolatilityInterruption = 110, ///< Volatility Interruption.
1050  ProductTemporarilyNotTradeable = 111, ///< Product temporarily not tradeable.
1051  MemberDisable = 117, ///< Member has been disabled.
1052  ScaledSimpleInstrumentDeletion = 121, ///< Scaled Simple Instrument Deletion.
1053  };
1054 };
1055 
1056 /// Returns string representation.
1057 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MassActionReason::Enum);
1058 
1059 /// Make it printable using C++ I/O streams.
1060 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MassActionReason::Enum);
1061 
1062 /// Restriction for MassActionType (1373) = Release_quotes (2).
1063 struct ONIXS_EUREX_ETI_EXPORT MassActionSubType
1064 {
1065  /// \copydoc MassActionSubType
1066  enum Enum
1067  {
1068  NoValue = 0xFF, ///< No value.
1069  BookOrCancel = 1, ///< Book or cancel.
1070  };
1071 };
1072 
1073 /// Returns string representation.
1074 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MassActionSubType::Enum);
1075 
1076 /// Make it printable using C++ I/O streams.
1077 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MassActionSubType::Enum);
1078 
1079 /// Specifies the type of action requested.
1080 struct ONIXS_EUREX_ETI_EXPORT MassActionType
1081 {
1082  /// \copydoc MassActionType
1083  enum Enum
1084  {
1085  NoValue = 0xFF, ///< No value.
1086  SuspendQuotes = 1, ///< Suspend quotes.
1087  ReleaseQuotes = 2, ///< Release quotes from suspension.
1088  SuspendDeleteQuotes = 3, ///< Suspend and delete Quotes.
1089  };
1090 };
1091 
1092 /// Returns string representation.
1093 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MassActionType::Enum);
1094 
1095 /// Make it printable using C++ I/O streams.
1096 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MassActionType::Enum);
1097 
1098 /// Indicates the auction type the trade originates from.
1099 struct ONIXS_EUREX_ETI_EXPORT MatchSubType
1100 {
1101  /// \copydoc MatchSubType
1102  enum Enum
1103  {
1104  NoValue = 0xFF, ///< No value.
1105  OpeningAuction = 1, ///< Opening auction.
1106  ClosingAuction = 2, ///< Closing auction.
1107  IntradayAuction = 3, ///< Intraday auction.
1108  CircuitBreakerAuction = 4, ///< Circuit Breaker auction.
1109  OutsideBBO = 6, ///< CLIP matching outside BBO.
1110  };
1111 };
1112 
1113 /// Returns string representation.
1114 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MatchSubType::Enum);
1115 
1116 /// Make it printable using C++ I/O streams.
1117 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MatchSubType::Enum);
1118 
1119 /// The point in the matching process at which this trade was matched.
1120 struct ONIXS_EUREX_ETI_EXPORT MatchType
1121 {
1122  /// \copydoc MatchType
1123  enum Enum
1124  {
1125  NoValue = 0xFF, ///< No value.
1126  ConfirmedTradeReport = 3, ///< Confirmed Trade Report (reporting from recognized markets).
1127  AutoMatchIncoming = 4, ///< Auto-match incoming order.
1128  CrossAuction = 5, ///< Cross Auction.
1129  CallAuction = 7, ///< Call Auction.
1130  AutoMatchResting = 11, ///< Auto match resting order.
1131  LiquidityImprovementCross = 13, ///< Liquidity Improvement Cross.
1132  };
1133 };
1134 
1135 /// Returns string representation.
1136 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MatchType::Enum);
1137 
1138 /// Make it printable using C++ I/O streams.
1139 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MatchType::Enum);
1140 
1141 /// Informs if trading is active for grouping of Eurex products.
1142 struct ONIXS_EUREX_ETI_EXPORT MatchingEngineStatus
1143 {
1144  /// \copydoc MatchingEngineStatus
1145  enum Enum
1146  {
1147  NoValue = 0xFF, ///< No value.
1148  Unavailable = 0, ///< Unavailable.
1149  Available = 1, ///< Available.
1150  };
1151 };
1152 
1153 /// Returns string representation.
1154 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MatchingEngineStatus::Enum);
1155 
1156 /// Make it printable using C++ I/O streams.
1157 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MatchingEngineStatus::Enum);
1158 
1159 /// Receiver of a message.
1160 struct ONIXS_EUREX_ETI_EXPORT MessageEventSource
1161 {
1162  /// \copydoc MessageEventSource
1163  enum Enum
1164  {
1165  NoValue = 0x00, ///< No value.
1166  BroadcastToInitiator = 'I', ///< Broadcast to initiator.
1167  BroadcastToApprover = 'A', ///< Broadcast to approver.
1168  BroadcastToRequester = 'R', ///< Broadcast to requester.
1169  BroadcastToQuoteSubmitter = 'Q', ///< Broadcast to quote submitter.
1170  };
1171 };
1172 
1173 /// Returns string representation.
1174 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MessageEventSource::Enum);
1175 
1176 /// Make it printable using C++ I/O streams.
1177 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MessageEventSource::Enum);
1178 
1179 /// Indicates if the trade resulted from a single order or a multi leg order.
1180 struct ONIXS_EUREX_ETI_EXPORT MultiLegReportingType
1181 {
1182  /// \copydoc MultiLegReportingType
1183  enum Enum
1184  {
1185  NoValue = 0xFF, ///< No value.
1186  SingleSecurity = 1, ///< Single instrument.
1187  IndividualLegOfAMultilegSecurity = 2, ///< Complex instrument.
1188  };
1189 };
1190 
1191 /// Returns string representation.
1192 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MultiLegReportingType::Enum);
1193 
1194 /// Make it printable using C++ I/O streams.
1195 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MultiLegReportingType::Enum);
1196 
1197 /// Specifies if a strategy is temporarily (user-defined) or permanently (predefined) available.
1198 struct ONIXS_EUREX_ETI_EXPORT MultilegModel
1199 {
1200  /// \copydoc MultilegModel
1201  enum Enum
1202  {
1203  NoValue = 0xFF, ///< No value.
1204  PredefinedMultilegSecurity = 0, ///< Predefined Multileg Security.
1205  UserDefinedMultleg = 1, ///< User-defined Multleg Security.
1206  };
1207 };
1208 
1209 /// Returns string representation.
1210 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MultilegModel::Enum);
1211 
1212 /// Make it printable using C++ I/O streams.
1213 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MultilegModel::Enum);
1214 
1215 /// Price decomposition method for legs of a complex instrument.
1216 struct ONIXS_EUREX_ETI_EXPORT MultilegPriceModel
1217 {
1218  /// \copydoc MultilegPriceModel
1219  enum Enum
1220  {
1221  NoValue = 0xFF, ///< No value.
1222  Standard = 0, ///< leg level prices provided by system.
1223  UserDefined = 1, ///< leg level prices provided by user.
1224  };
1225 };
1226 
1227 /// Returns string representation.
1228 ONIXS_EUREX_ETI_EXPORT std::string enumToString(MultilegPriceModel::Enum);
1229 
1230 /// Make it printable using C++ I/O streams.
1231 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, MultilegPriceModel::Enum);
1232 
1233 /// State of the News Retransmission Service.
1234 struct ONIXS_EUREX_ETI_EXPORT NewsRtmServiceStatus
1235 {
1236  /// \copydoc NewsRtmServiceStatus
1237  enum Enum
1238  {
1239  NoValue = 0xFF, ///< No value.
1240  Unavailable = 0, ///< Unavailable.
1241  Available = 1, ///< Available.
1242  };
1243 };
1244 
1245 /// Returns string representation.
1246 ONIXS_EUREX_ETI_EXPORT std::string enumToString(NewsRtmServiceStatus::Enum);
1247 
1248 /// Make it printable using C++ I/O streams.
1249 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, NewsRtmServiceStatus::Enum);
1250 
1251 /// Instruction to show total number of Respondents in a SRQS event.
1252 struct ONIXS_EUREX_ETI_EXPORT NumberOfRespDisclosureInstruction
1253 {
1254  /// \copydoc NumberOfRespDisclosureInstruction
1255  enum Enum
1256  {
1257  NoValue = 0xFF, ///< No value.
1258  No = 0, ///< No.
1259  Yes = 1, ///< Yes.
1260  };
1261 };
1262 
1263 /// Returns string representation.
1264 ONIXS_EUREX_ETI_EXPORT std::string enumToString(NumberOfRespDisclosureInstruction::Enum);
1265 
1266 /// Make it printable using C++ I/O streams.
1267 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, NumberOfRespDisclosureInstruction::Enum);
1268 
1269 /// OfferPx is locked.
1270 struct ONIXS_EUREX_ETI_EXPORT OfferPxIsLocked
1271 {
1272  /// \copydoc OfferPxIsLocked
1273  enum Enum
1274  {
1275  NoValue = 0xFF, ///< No value.
1276  No = 0, ///< No.
1277  Yes = 1, ///< Yes.
1278  };
1279 };
1280 
1281 /// Returns string representation.
1282 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OfferPxIsLocked::Enum);
1283 
1284 /// Make it printable using C++ I/O streams.
1285 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OfferPxIsLocked::Enum);
1286 
1287 /// Indicates whether the counterparties have the right for early termination.
1288 struct ONIXS_EUREX_ETI_EXPORT OptionalEarlyTerminationIndicator
1289 {
1290  /// \copydoc OptionalEarlyTerminationIndicator
1291  enum Enum
1292  {
1293  NoValue = 0xFF, ///< No value.
1294  No = 0, ///< No.
1295  Yes = 1, ///< Yes.
1296  };
1297 };
1298 
1299 /// Returns string representation.
1300 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OptionalEarlyTerminationIndicator::Enum);
1301 
1302 /// Make it printable using C++ I/O streams.
1303 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OptionalEarlyTerminationIndicator::Enum);
1304 
1305 /// Conveys the current status of an order.
1306 struct ONIXS_EUREX_ETI_EXPORT OrdStatus
1307 {
1308  /// \copydoc OrdStatus
1309  enum Enum
1310  {
1311  NoValue = 0x00, ///< No value.
1312  New = '0', ///< New.
1313  PartiallyFilled = '1', ///< Partially filled.
1314  Filled = '2', ///< Filled.
1315  Canceled = '4', ///< Cancelled.
1316  PendingCancel = '6', ///< Pending Cancel (i.e. result of Order Cancel Request).
1317  Suspended = '9', ///< Suspended.
1318  };
1319 };
1320 
1321 /// Returns string representation.
1322 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrdStatus::Enum);
1323 
1324 /// Make it printable using C++ I/O streams.
1325 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OrdStatus::Enum);
1326 
1327 /// Order type.
1328 struct ONIXS_EUREX_ETI_EXPORT OrdType
1329 {
1330  /// \copydoc OrdType
1331  enum Enum
1332  {
1333  NoValue = 0xFF, ///< No value.
1334  Market = 1, ///< Market.
1335  Limit = 2, ///< Limit.
1336  Stop = 3, ///< Stop.
1337  StopLimit = 4, ///< Stop Limit.
1338  };
1339 };
1340 
1341 /// Returns string representation.
1342 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrdType::Enum);
1343 
1344 /// Make it printable using C++ I/O streams.
1345 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OrdType::Enum);
1346 
1347 /// Order attribute liquidity provision.
1348 struct ONIXS_EUREX_ETI_EXPORT OrderAttributeLiquidityProvision
1349 {
1350  /// \copydoc OrderAttributeLiquidityProvision
1351  enum Enum
1352  {
1353  NoValue = 0xFF, ///< No value.
1354  Y = 1, ///< Liquidity provision.
1355  N = 0, ///< No liquidity provision.
1356  };
1357 };
1358 
1359 /// Returns string representation.
1360 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderAttributeLiquidityProvision::Enum);
1361 
1362 /// Make it printable using C++ I/O streams.
1363 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OrderAttributeLiquidityProvision::Enum);
1364 
1365 /// Order attribute risk reduction.
1366 struct ONIXS_EUREX_ETI_EXPORT OrderAttributeRiskReduction
1367 {
1368  /// \copydoc OrderAttributeRiskReduction
1369  enum Enum
1370  {
1371  NoValue = 0xFF, ///< No value.
1372  Y = 1, ///< Risk reduction.
1373  N = 0, ///< No risk reduction.
1374  };
1375 };
1376 
1377 /// Returns string representation.
1378 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderAttributeRiskReduction::Enum);
1379 
1380 /// Make it printable using C++ I/O streams.
1381 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OrderAttributeRiskReduction::Enum);
1382 
1383 /// Indicates if the trade notification results from an order or quote.
1384 struct ONIXS_EUREX_ETI_EXPORT OrderCategory
1385 {
1386  /// \copydoc OrderCategory
1387  enum Enum
1388  {
1389  NoValue = 0x00, ///< No value.
1390  Order = '1', ///< Order.
1391  Quote = '2', ///< Quote.
1392  };
1393 };
1394 
1395 /// Returns string representation.
1396 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderCategory::Enum);
1397 
1398 /// Make it printable using C++ I/O streams.
1399 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OrderCategory::Enum);
1400 
1401 /// Action that caused the event to occur.
1402 struct ONIXS_EUREX_ETI_EXPORT OrderEventReason
1403 {
1404  /// \copydoc OrderEventReason
1405  enum Enum
1406  {
1407  NoValue = 0xFF, ///< No value.
1408  SMP = 100, ///< SMP event.
1409  };
1410 };
1411 
1412 /// Returns string representation.
1413 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderEventReason::Enum);
1414 
1415 /// Make it printable using C++ I/O streams.
1416 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OrderEventReason::Enum);
1417 
1418 /// Order origination, MiFID field - to indicate order received from a direct access or sponsored access customer.
1419 struct ONIXS_EUREX_ETI_EXPORT OrderOrigination
1420 {
1421  /// \copydoc OrderOrigination
1422  enum Enum
1423  {
1424  NoValue = 0xFF, ///< No value.
1425  DirectAccessOrSponsoredAccessCustomer = 5, ///< Order received from a direct access customer.
1426  };
1427 };
1428 
1429 /// Returns string representation.
1430 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderOrigination::Enum);
1431 
1432 /// Make it printable using C++ I/O streams.
1433 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OrderOrigination::Enum);
1434 
1435 /// Instruction to show total quantity.
1436 struct ONIXS_EUREX_ETI_EXPORT OrderQtyDisclosureInstruction
1437 {
1438  /// \copydoc OrderQtyDisclosureInstruction
1439  enum Enum
1440  {
1441  NoValue = 0xFF, ///< No value.
1442  No = 0, ///< No.
1443  Yes = 1, ///< Yes.
1444  };
1445 };
1446 
1447 /// Returns string representation.
1448 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderQtyDisclosureInstruction::Enum);
1449 
1450 /// Make it printable using C++ I/O streams.
1451 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OrderQtyDisclosureInstruction::Enum);
1452 
1453 /// OrderQty is locked.
1454 struct ONIXS_EUREX_ETI_EXPORT OrderQtyIsLocked
1455 {
1456  /// \copydoc OrderQtyIsLocked
1457  enum Enum
1458  {
1459  NoValue = 0xFF, ///< No value.
1460  No = 0, ///< No.
1461  Yes = 1, ///< Yes.
1462  };
1463 };
1464 
1465 /// Returns string representation.
1466 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderQtyIsLocked::Enum);
1467 
1468 /// Make it printable using C++ I/O streams.
1469 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OrderQtyIsLocked::Enum);
1470 
1471 /// Indicates if the participant application is an order routing system.
1472 struct ONIXS_EUREX_ETI_EXPORT OrderRoutingIndicator
1473 {
1474  /// \copydoc OrderRoutingIndicator
1475  enum Enum
1476  {
1477  NoValue = 0x00, ///< No value.
1478  Yes = 'Y', ///< Yes.
1479  No = 'N', ///< No.
1480  };
1481 };
1482 
1483 /// Returns string representation.
1484 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderRoutingIndicator::Enum);
1485 
1486 /// Make it printable using C++ I/O streams.
1487 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OrderRoutingIndicator::Enum);
1488 
1489 /// Side of the order in the original Eurex strategy.
1490 struct ONIXS_EUREX_ETI_EXPORT OrderSide
1491 {
1492  /// \copydoc OrderSide
1493  enum Enum
1494  {
1495  NoValue = 0xFF, ///< No value.
1496  Buy = 1, ///< Buy.
1497  Sell = 2, ///< Sell.
1498  };
1499 };
1500 
1501 /// Returns string representation.
1502 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OrderSide::Enum);
1503 
1504 /// Make it printable using C++ I/O streams.
1505 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OrderSide::Enum);
1506 
1507 /// Ownership indicator.
1508 struct ONIXS_EUREX_ETI_EXPORT OwnershipIndicator
1509 {
1510  /// \copydoc OwnershipIndicator
1511  enum Enum
1512  {
1513  NoValue = 0xFF, ///< No value.
1514  NoChangeOfOwnership = 0, ///< Do not change ownership.
1515  ChangeToExecutingTrader = 1, ///< Change ownership to executing party (User ID).
1516  };
1517 };
1518 
1519 /// Returns string representation.
1520 ONIXS_EUREX_ETI_EXPORT std::string enumToString(OwnershipIndicator::Enum);
1521 
1522 /// Make it printable using C++ I/O streams.
1523 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, OwnershipIndicator::Enum);
1524 
1525 /// Party action type.
1526 struct ONIXS_EUREX_ETI_EXPORT PartyActionType
1527 {
1528  /// \copydoc PartyActionType
1529  enum Enum
1530  {
1531  NoValue = 0xFF, ///< No value.
1532  HaltTrading = 1, ///< Halt trading.
1533  Reinstate = 2, ///< Reinstate.
1534  };
1535 };
1536 
1537 /// Returns string representation.
1538 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyActionType::Enum);
1539 
1540 /// Make it printable using C++ I/O streams.
1541 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PartyActionType::Enum);
1542 
1543 /// Party detail role qualifier.
1544 struct ONIXS_EUREX_ETI_EXPORT PartyDetailRoleQualifier
1545 {
1546  /// \copydoc PartyDetailRoleQualifier
1547  enum Enum
1548  {
1549  NoValue = 0xFF, ///< No value.
1550  Trader = 10, ///< Trader.
1551  HeadTrader = 11, ///< Head Trader.
1552  Supervisor = 12, ///< Supervisor.
1553  };
1554 };
1555 
1556 /// Returns string representation.
1557 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyDetailRoleQualifier::Enum);
1558 
1559 /// Make it printable using C++ I/O streams.
1560 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PartyDetailRoleQualifier::Enum);
1561 
1562 /// Party detail status.
1563 struct ONIXS_EUREX_ETI_EXPORT PartyDetailStatus
1564 {
1565  /// \copydoc PartyDetailStatus
1566  enum Enum
1567  {
1568  NoValue = 0xFF, ///< No value.
1569  Active = 0, ///< Active.
1570  Suspend = 1, ///< Suspend.
1571  Rejected = 2, ///< Rejected.
1572  };
1573 };
1574 
1575 /// Returns string representation.
1576 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyDetailStatus::Enum);
1577 
1578 /// Make it printable using C++ I/O streams.
1579 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PartyDetailStatus::Enum);
1580 
1581 /// Reason for a responder reject.
1582 struct ONIXS_EUREX_ETI_EXPORT PartyDetailStatusInformation
1583 {
1584  /// \copydoc PartyDetailStatusInformation
1585  enum Enum
1586  {
1587  NoValue = 0xFF, ///< No value.
1588  TRRTHRESHOLDTOOBIG = 1, ///< High TRR (TradeToRequestRatio) threshold.
1589  BLOCKALLANONYMOUS = 2, ///< Anonymous negotiation blocked by responder.
1590  };
1591 };
1592 
1593 /// Returns string representation.
1594 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyDetailStatusInformation::Enum);
1595 
1596 /// Make it printable using C++ I/O streams.
1597 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PartyDetailStatusInformation::Enum);
1598 
1599 /// Entering Business Unit.
1600 struct ONIXS_EUREX_ETI_EXPORT PartyIdEnteringFirm
1601 {
1602  /// \copydoc PartyIdEnteringFirm
1603  enum Enum
1604  {
1605  NoValue = 0xFF, ///< No value.
1606  Participant = 1, ///< Participant.
1607  MarketSupervision = 2, ///< Market Supervision.
1608  };
1609 };
1610 
1611 /// Returns string representation.
1612 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyIdEnteringFirm::Enum);
1613 
1614 /// Make it printable using C++ I/O streams.
1615 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PartyIdEnteringFirm::Enum);
1616 
1617 /// Party ID origination market.
1618 struct ONIXS_EUREX_ETI_EXPORT PartyIdOriginationMarket
1619 {
1620  /// \copydoc PartyIdOriginationMarket
1621  enum Enum
1622  {
1623  NoValue = 0xFF, ///< No value.
1624  XKFE = 1, ///< Korea Exchange.
1625  };
1626 };
1627 
1628 /// Returns string representation.
1629 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyIdOriginationMarket::Enum);
1630 
1631 /// Make it printable using C++ I/O streams.
1632 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PartyIdOriginationMarket::Enum);
1633 
1634 /// Settlement institution.
1635 struct ONIXS_EUREX_ETI_EXPORT PartyIdSettlementLocation
1636 {
1637  /// \copydoc PartyIdSettlementLocation
1638  enum Enum
1639  {
1640  NoValue = 0xFF, ///< No value.
1641  ClearstremBankingFrankfurt = 1, ///< Clearstrem Banking Frankfurt.
1642  ClearstremBankingLuxemburg = 2, ///< Clearstrem Banking Luxemburg.
1643  CLSGroup = 3, ///< CLS Group.
1644  Euroclear = 4, ///< Euroclear.
1645  };
1646 };
1647 
1648 /// Returns string representation.
1649 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyIdSettlementLocation::Enum);
1650 
1651 /// Make it printable using C++ I/O streams.
1652 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PartyIdSettlementLocation::Enum);
1653 
1654 /// Party ID investment decision maker qualifier.
1655 struct ONIXS_EUREX_ETI_EXPORT PartyIdInvestmentDecisionMakerQualifier
1656 {
1657  /// \copydoc PartyIdInvestmentDecisionMakerQualifier
1658  enum Enum
1659  {
1660  NoValue = 0xFF, ///< No value.
1661  Algo = 22, ///< Algo.
1662  Human = 24, ///< Human/Natural person.
1663  };
1664 };
1665 
1666 /// Returns string representation.
1667 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyIdInvestmentDecisionMakerQualifier::Enum);
1668 
1669 /// Make it printable using C++ I/O streams.
1670 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PartyIdInvestmentDecisionMakerQualifier::Enum);
1671 
1672 /// Instruction to show buy-side user information.
1673 struct ONIXS_EUREX_ETI_EXPORT PartyOrderOriginationDisclosureInstruction
1674 {
1675  /// \copydoc PartyOrderOriginationDisclosureInstruction
1676  enum Enum
1677  {
1678  NoValue = 0xFF, ///< No value.
1679  No = 0, ///< No.
1680  Yes = 1, ///< Yes.
1681  };
1682 };
1683 
1684 /// Returns string representation.
1685 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartyOrderOriginationDisclosureInstruction::Enum);
1686 
1687 /// Make it printable using C++ I/O streams.
1688 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PartyOrderOriginationDisclosureInstruction::Enum);
1689 
1690 /// Party sub-type.
1691 struct ONIXS_EUREX_ETI_EXPORT PartySubIdType
1692 {
1693  /// \copydoc PartySubIdType
1694  enum Enum
1695  {
1696  NoValue = 0xFF, ///< No value.
1697  Buyer = 14001, ///< Buyer.
1698  Seller = 14002, ///< Seller.
1699  };
1700 };
1701 
1702 /// Returns string representation.
1703 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PartySubIdType::Enum);
1704 
1705 /// Make it printable using C++ I/O streams.
1706 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PartySubIdType::Enum);
1707 
1708 /// Field is used for Eurex position management purposes and indicates whether the order is submitted to open or close a
1709 /// position.
1710 struct ONIXS_EUREX_ETI_EXPORT PositionEffect
1711 {
1712  /// \copydoc PositionEffect
1713  enum Enum
1714  {
1715  NoValue = 0x00, ///< No value.
1716  Close = 'C', ///< Close.
1717  Open = 'O', ///< Open.
1718  };
1719 };
1720 
1721 /// Returns string representation.
1722 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PositionEffect::Enum);
1723 
1724 /// Make it printable using C++ I/O streams.
1725 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PositionEffect::Enum);
1726 
1727 /// Price disclosure instruction.
1728 struct ONIXS_EUREX_ETI_EXPORT PriceDisclosureInstruction
1729 {
1730  /// \copydoc PriceDisclosureInstruction
1731  enum Enum
1732  {
1733  NoValue = 0xFF, ///< No value.
1734  No = 0, ///< No.
1735  Yes = 1, ///< Yes.
1736  };
1737 };
1738 
1739 /// Returns string representation.
1740 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PriceDisclosureInstruction::Enum);
1741 
1742 /// Make it printable using C++ I/O streams.
1743 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PriceDisclosureInstruction::Enum);
1744 
1745 /// Indicator how price validity check should be performed by the exchange.
1746 struct ONIXS_EUREX_ETI_EXPORT PriceValidityCheckType
1747 {
1748  /// \copydoc PriceValidityCheckType
1749  enum Enum
1750  {
1751  NoValue = 0xFF, ///< No value.
1752  None = 0, ///< None.
1753  Optional = 1, ///< Optional.
1754  Mandatory = 2, ///< Mandatory.
1755  };
1756 };
1757 
1758 /// Returns string representation.
1759 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PriceValidityCheckType::Enum);
1760 
1761 /// Make it printable using C++ I/O streams.
1762 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PriceValidityCheckType::Enum);
1763 
1764 /// This field qualifies an instrument type on Eurex.
1765 struct ONIXS_EUREX_ETI_EXPORT ProductComplex
1766 {
1767  /// \copydoc ProductComplex
1768  enum Enum
1769  {
1770  NoValue = 0xFF, ///< No value.
1771  SimpleInstrument = 1, ///< Simple instrument.
1772  StandardOptionStrategy = 2, ///< Standard Option Strategy.
1773  NonStandardOptionStrategy = 3, ///< Non-Standard Option Strategy.
1774  VolatilityStrategy = 4, ///< Volatility Strategy.
1775  FuturesSpread = 5, ///< Futures Spread.
1776  InterProductSpread = 6, ///< Inter-Product Spread.
1777  StandardFutureStrategy = 7, ///< Standard Future Strategy.
1778  PackAndBundle = 8, ///< Pack and Bundle.
1779  Strip = 9, ///< Strip.
1780  FlexibleSimpleInstrument = 10, ///< Flexible Simple Instrument.
1781  CommodityStrip = 11, ///< Commodity Strip.
1782  ScaledSimpleInstrument = 12, ///< Scaled Simple Instrument.
1783  NonStandardVolatilityStrategy = 13, ///< Non-Standard Volatility Strategy.
1784  };
1785 };
1786 
1787 /// Returns string representation.
1788 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ProductComplex::Enum);
1789 
1790 /// Make it printable using C++ I/O streams.
1791 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ProductComplex::Enum);
1792 
1793 /// Indicates whether an option contract is a put or call.
1794 struct ONIXS_EUREX_ETI_EXPORT PutOrCall
1795 {
1796  /// \copydoc PutOrCall
1797  enum Enum
1798  {
1799  NoValue = 0xFF, ///< No value.
1800  Put = 0, ///< Put.
1801  Call = 1, ///< Call.
1802  };
1803 };
1804 
1805 /// Returns string representation.
1806 ONIXS_EUREX_ETI_EXPORT std::string enumToString(PutOrCall::Enum);
1807 
1808 /// Make it printable using C++ I/O streams.
1809 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, PutOrCall::Enum);
1810 
1811 /// Reason for quote cancellation.
1812 struct ONIXS_EUREX_ETI_EXPORT QuoteCancelReason
1813 {
1814  /// \copydoc QuoteCancelReason
1815  enum Enum
1816  {
1817  NoValue = 0xFF, ///< No value.
1818  Expired = 5, ///< Expired.
1819  };
1820 };
1821 
1822 /// Returns string representation.
1823 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteCancelReason::Enum);
1824 
1825 /// Make it printable using C++ I/O streams.
1826 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteCancelReason::Enum);
1827 
1828 /// Status of the quote.
1829 struct ONIXS_EUREX_ETI_EXPORT QuoteCondition
1830 {
1831  /// \copydoc QuoteCondition
1832  enum Enum
1833  {
1834  NoValue = 0x00, ///< No value.
1835  Active = 'A', ///< Active.
1836  Closed = 'B', ///< Closed.
1837  Suspended = 'z', ///< Suspended.
1838  Expired = '8', ///< Expired.
1839  };
1840 };
1841 
1842 /// Returns string representation.
1843 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteCondition::Enum);
1844 
1845 /// Make it printable using C++ I/O streams.
1846 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteCondition::Enum);
1847 
1848 /// Reason code indicating why the quote entry has been rejected.
1849 struct ONIXS_EUREX_ETI_EXPORT QuoteEntryRejectReason
1850 {
1851  /// \copydoc QuoteEntryRejectReason
1852  enum Enum
1853  {
1854  NoValue = 0xFF, ///< No value.
1855  UnknownSecurity = 1, ///< Unknown security.
1856  DuplicateQuote = 6, ///< Duplicate quote.
1857  InvalidPrice = 8, ///< Invalid price.
1858  NoReferencePriceAvailable = 16, ///< Reference price not available.
1859  NoSingleSidedQuotes = 100, ///< Single sided quotes not allowed.
1860  InvalidQuotingModel = 103, ///< Invalid usage of quoting model.
1861  InvalidSize = 106, ///< Invalid size.
1862  InvalidUnderlyingPrice = 107, ///< Invalid underlying price.
1863  BidPriceNotReasonable = 108, ///< Bid price not reasonable.
1864  AskPriceNotReasonable = 109, ///< Ask price not reasonable.
1865  BidPriceExceedsRange = 110, ///< Bid price exceeds extended price range.
1866  AskPriceExceedsRange = 111, ///< Ask price exceeds extended price range.
1867  InstrumentStateFreeze = 115, ///< Instrument state freeze.
1868  DeletionAlreadyPending = 116, ///< Deletion already pending.
1869  EntitlementNotAssignedForUnderlying = 119, ///< Entitlement not assigned for underlying.
1870  CurrentlyNotTradeableOnBook = 124, ///< Instrument is currently not tradeable on book.
1871  QuantityLimitExceeded = 125, ///< Quantity exceeds trader specific limit.
1872  ValueLimitExceeded = 126, ///< Value exceeds trader specific limit.
1873  InvalidQuoteSpread = 127, ///< Invalid quote spread.
1874  BookOrCancel = 128, ///< Book-or-Cancel quote type.
1875  CantProcInCurrInstrState = 131, ///< Instrument state does not allow processing.
1876  InvalidQuoteType = 134, ///< Invalid quote type.
1877  TradingIndicationRunningForTrader = 143, ///< Trading indication running for trader.
1878  OnBookTradingDisabledForInstrumentType = 144, ///< On-Book trading disabled for instrument type.
1879  LiquidityProviderProtectionBidSideCancelled = 147, ///< Liquidity provider protection bid side cancelled.
1880  LiquidityProviderProtectionAskSideCancelled = 148, ///< Liquidity provider protection ask side cancelled.
1881  OutsideQuotingPeriod = 155, ///< Quote entry outside quoting period not allowed.
1882  MatchPriceNotOnPriceStep =
1883  156, ///< Match price resulting from entry of the matching quote is not a valid price step.
1884  QuantityLimitExceedsTSL = 161, ///< Quantity exceeds transaction size limit.
1885  TooManyOrdersAndQuotesInOrderBook = 163, ///< Too many orders and quotes in order book.
1886  ContractCannotBeTradedDueToInsufficientEligibility =
1887  166, ///< Contract cannot be traded due to insufficient eligibility.
1888  UnderlyingPriceTimeout = 167, ///< the VF underlying price timed out, rejection of quote.
1889  BUSuspendARPLevel3SoftBreach = 168, ///< the BU is suspended due to an ARP level 3 soft breach.
1890  NoClearingProductAssignment = 169, ///< incoming quote pair rejected due to no clearing product assignment.
1891  };
1892 };
1893 
1894 /// Returns string representation.
1895 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEntryRejectReason::Enum);
1896 
1897 /// Make it printable using C++ I/O streams.
1898 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteEntryRejectReason::Enum);
1899 
1900 /// Identifies the status of an individual quote.
1901 struct ONIXS_EUREX_ETI_EXPORT QuoteEntryStatus
1902 {
1903  /// \copydoc QuoteEntryStatus
1904  enum Enum
1905  {
1906  NoValue = 0xFF, ///< No value.
1907  Accepted = 0, ///< Accepted with warning.
1908  Rejected = 5, ///< Rejected.
1909  RemovedAndRejected = 6, ///< Removed from Market.
1910  Pending = 10, ///< Pending.
1911  };
1912 };
1913 
1914 /// Returns string representation.
1915 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEntryStatus::Enum);
1916 
1917 /// Make it printable using C++ I/O streams.
1918 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteEntryStatus::Enum);
1919 
1920 /// Indicates whether the quote added or removed liquidity.
1921 struct ONIXS_EUREX_ETI_EXPORT QuoteEventLiquidityInd
1922 {
1923  /// \copydoc QuoteEventLiquidityInd
1924  enum Enum
1925  {
1926  NoValue = 0xFF, ///< No value.
1927  AddedLiquidity = 1, ///< Added Liquidity.
1928  RemovedLiquidity = 2, ///< Removed Liquidity.
1929  Auction = 4, ///< Auction.
1930  };
1931 };
1932 
1933 /// Returns string representation.
1934 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEventLiquidityInd::Enum);
1935 
1936 /// Make it printable using C++ I/O streams.
1937 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteEventLiquidityInd::Enum);
1938 
1939 /// Additional information why quote side was removed.
1940 struct ONIXS_EUREX_ETI_EXPORT QuoteEventReason
1941 {
1942  /// \copydoc QuoteEventReason
1943  enum Enum
1944  {
1945  NoValue = 0xFF, ///< No value.
1946  PendingCancellationExecuted = 14, ///< Pending Cancellation Executed.
1947  InvalidPrice = 15, ///< Invalid Price.
1948  CrossRejected = 16, ///< Quote subject to crossing and match prevented.
1949  BookOrCancel = 17, ///< Quote deleted due to Book-or-Cancel quote type.
1950  PLP = 18, ///< Quote deleted due to passive liquidity protection.
1951  };
1952 };
1953 
1954 /// Returns string representation.
1955 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEventReason::Enum);
1956 
1957 /// Make it printable using C++ I/O streams.
1958 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteEventReason::Enum);
1959 
1960 /// Side of the quote.
1961 struct ONIXS_EUREX_ETI_EXPORT QuoteEventSide
1962 {
1963  /// \copydoc QuoteEventSide
1964  enum Enum
1965  {
1966  NoValue = 0xFF, ///< No value.
1967  Buy = 1, ///< Buy.
1968  Sell = 2, ///< Sell.
1969  };
1970 };
1971 
1972 /// Returns string representation.
1973 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEventSide::Enum);
1974 
1975 /// Make it printable using C++ I/O streams.
1976 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteEventSide::Enum);
1977 
1978 /// Conveys the quote event type.
1979 struct ONIXS_EUREX_ETI_EXPORT QuoteEventType
1980 {
1981  /// \copydoc QuoteEventType
1982  enum Enum
1983  {
1984  NoValue = 0xFF, ///< No value.
1985  ModifiedQuoteSide = 2, ///< Modified side.
1986  RemovedQuoteSide = 3, ///< Removed Quote Side.
1987  PartiallyFilled = 4, ///< Partially Filled.
1988  Filled = 5, ///< Filled.
1989  RemovedQuantity = 6, ///< Quantity removed.
1990  };
1991 };
1992 
1993 /// Returns string representation.
1994 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteEventType::Enum);
1995 
1996 /// Make it printable using C++ I/O streams.
1997 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteEventType::Enum);
1998 
1999 /// Quoting instruction.
2000 struct ONIXS_EUREX_ETI_EXPORT QuoteInstruction
2001 {
2002  /// \copydoc QuoteInstruction
2003  enum Enum
2004  {
2005  NoValue = 0xFF, ///< No value.
2006  DoNotQuote = 0, ///< Do not re-quote.
2007  Quote = 1, ///< (Re-)Quote.
2008  };
2009 };
2010 
2011 /// Returns string representation.
2012 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteInstruction::Enum);
2013 
2014 /// Make it printable using C++ I/O streams.
2015 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteInstruction::Enum);
2016 
2017 /// Identifies the quoting model.
2018 struct ONIXS_EUREX_ETI_EXPORT QuoteSizeType
2019 {
2020  /// \copydoc QuoteSizeType
2021  enum Enum
2022  {
2023  NoValue = 0xFF, ///< No value.
2024  TotalSize = 1, ///< Total Size (Quote Modification).
2025  OpenSize = 2, ///< Open Size(Quote Entry).
2026  };
2027 };
2028 
2029 /// Returns string representation.
2030 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteSizeType::Enum);
2031 
2032 /// Make it printable using C++ I/O streams.
2033 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteSizeType::Enum);
2034 
2035 /// Sub-type or qualifier of QuoteType.
2036 struct ONIXS_EUREX_ETI_EXPORT QuoteSubType
2037 {
2038  /// \copydoc QuoteSubType
2039  enum Enum
2040  {
2041  NoValue = 0xFF, ///< No value.
2042  WorkingDelta = 1, ///< Working Delta.
2043  BasisTrade = 2, ///< Basis Trade.
2044  Regular = 3, ///< Regular LDS Negotiation.
2045  NegotiateUnderlyingOutsideExchange = 4, ///< Negotiate the underlying outside the exchange.
2046  VolaStrategyFix = 5, ///< Option Volatility Strategy with fixed Underlying price and delta.
2047  VolaStrategyNegotiateUnderlying =
2048  6, ///< Option Volatility Strategy - Underlying price is negotiated on exchange.
2049  };
2050 };
2051 
2052 /// Returns string representation.
2053 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteSubType::Enum);
2054 
2055 /// Make it printable using C++ I/O streams.
2056 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteSubType::Enum);
2057 
2058 /// Quote type.
2059 struct ONIXS_EUREX_ETI_EXPORT QuoteType
2060 {
2061  /// \copydoc QuoteType
2062  enum Enum
2063  {
2064  NoValue = 0xFF, ///< No value.
2065  Indicative = 0, ///< Indicative (for Continuous Auction Issuer trading model and Eurex/Xetra EnLight only).
2066  Tradeable = 1, ///< Tradeable.
2067  TradeableBOC = 100, ///< Tradeable(BOC).
2068  };
2069 };
2070 
2071 /// Returns string representation.
2072 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuoteType::Enum);
2073 
2074 /// Make it printable using C++ I/O streams.
2075 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuoteType::Enum);
2076 
2077 /// Quoting status for the executing party.
2078 struct ONIXS_EUREX_ETI_EXPORT QuotingStatus
2079 {
2080  /// \copydoc QuotingStatus
2081  enum Enum
2082  {
2083  NoValue = 0xFF, ///< No value.
2084  OpenActive = 1, ///< Open/Active.
2085  OpenIdle = 2, ///< Open/Working.
2086  ClosedInactive = 3, ///< Closed/Inactive.
2087  };
2088 };
2089 
2090 /// Returns string representation.
2091 ONIXS_EUREX_ETI_EXPORT std::string enumToString(QuotingStatus::Enum);
2092 
2093 /// Make it printable using C++ I/O streams.
2094 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, QuotingStatus::Enum);
2095 
2096 /// Reference to the unique application identifier.
2097 struct ONIXS_EUREX_ETI_EXPORT RefApplId
2098 {
2099  /// \copydoc RefApplId
2100  enum Enum
2101  {
2102  NoValue = 0xFF, ///< No value.
2103  Trade = 1, ///< Trade.
2104  News = 2, ///< News.
2105  ServiceAvailability = 3, ///< Service Availability.
2106  SessionData = 4, ///< Session Data.
2107  ListenerData = 5, ///< Listener Data.
2108  RiskControl = 6, ///< Risk Control.
2109  TESMaintenance = 7, ///< TES Maintenance.
2110  TESTrade = 8, ///< TES Trade.
2111  SRQSMaintenance = 9, ///< SRQS Maintenance.
2112  ServiceAvailabilityMarket = 10, ///< Service Availability Market.
2113  };
2114 };
2115 
2116 /// Returns string representation.
2117 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RefApplId::Enum);
2118 
2119 /// Make it printable using C++ I/O streams.
2120 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RefApplId::Enum);
2121 
2122 /// Instrument type of the original Eurex strategy.
2123 struct ONIXS_EUREX_ETI_EXPORT RelatedProductComplex
2124 {
2125  /// \copydoc RelatedProductComplex
2126  enum Enum
2127  {
2128  NoValue = 0xFF, ///< No value.
2129  StandardOptionStrategy = 2, ///< Standard Option Strategy.
2130  NonStandardOptionStrategy = 3, ///< Non-Standard Option Strategy.
2131  VolatilityStrategy = 4, ///< Volatility Strategy.
2132  FuturesSpread = 5, ///< Futures Spread.
2133  InterProductSpread = 6, ///< Inter-Product Spread.
2134  StandardFutureStrategy = 7, ///< Standard Future Strategy.
2135  PackAndBundle = 8, ///< Pack and Bundle.
2136  Strip = 9, ///< Strip.
2137  CommodityStrip = 11, ///< Commodity Strip.
2138  ScaledSimpleInstrument = 12, ///< Scaled Simple Instrument.
2139  NonStandardVolatilityStrategy = 13, ///< Non-Standard Volatility Strategy.
2140  };
2141 };
2142 
2143 /// Returns string representation.
2144 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RelatedProductComplex::Enum);
2145 
2146 /// Make it printable using C++ I/O streams.
2147 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RelatedProductComplex::Enum);
2148 
2149 /// Requesting party ID entering firm.
2150 struct ONIXS_EUREX_ETI_EXPORT RequestingPartyIdEnteringFirm
2151 {
2152  /// \copydoc RequestingPartyIdEnteringFirm
2153  enum Enum
2154  {
2155  NoValue = 0xFF, ///< No value.
2156  Participant = 1, ///< Participant.
2157  MarketSupervision = 2, ///< Market Supervision.
2158  };
2159 };
2160 
2161 /// Returns string representation.
2162 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RequestingPartyIdEnteringFirm::Enum);
2163 
2164 /// Make it printable using C++ I/O streams.
2165 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RequestingPartyIdEnteringFirm::Enum);
2166 
2167 /// System ID (1 = Eurex Clearing).
2168 struct ONIXS_EUREX_ETI_EXPORT RequestingPartyIdExecutingSystem
2169 {
2170  /// \copydoc RequestingPartyIdExecutingSystem
2171  enum Enum
2172  {
2173  NoValue = 0xFF, ///< No value.
2174  EurexClearing = 1, ///< Eurex Clearing.
2175  T7 = 2, ///< T7 trading system.
2176  };
2177 };
2178 
2179 /// Returns string representation.
2180 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RequestingPartyIdExecutingSystem::Enum);
2181 
2182 /// Make it printable using C++ I/O streams.
2183 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RequestingPartyIdExecutingSystem::Enum);
2184 
2185 /// Party type initiating SRQS deal deletion.
2186 struct ONIXS_EUREX_ETI_EXPORT RequestingPartySubIdType
2187 {
2188  /// \copydoc RequestingPartySubIdType
2189  enum Enum
2190  {
2191  NoValue = 0xFF, ///< No value.
2192  Requester = 5000, ///< Requester.
2193  Responder = 5001, ///< Responder.
2194  Both = 5002, ///< Both (Requester and Responder).
2195  System = 5003, ///< System.
2196  };
2197 };
2198 
2199 /// Returns string representation.
2200 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RequestingPartySubIdType::Enum);
2201 
2202 /// Make it printable using C++ I/O streams.
2203 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RequestingPartySubIdType::Enum);
2204 
2205 /// Specifies the type of respondents requested.
2206 struct ONIXS_EUREX_ETI_EXPORT RespondentType
2207 {
2208  /// \copydoc RespondentType
2209  enum Enum
2210  {
2211  NoValue = 0xFF, ///< No value.
2212  AllMarketParticipants = 1, ///< Respondents are known during a negotiation.
2213  Anonymous =
2214  102, ///< Respondents are anonymized after negotiation start, Requester will remain anonymous from start.
2215  };
2216 };
2217 
2218 /// Returns string representation.
2219 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RespondentType::Enum);
2220 
2221 /// Make it printable using C++ I/O streams.
2222 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RespondentType::Enum);
2223 
2224 /// Reversal cancellation reason.
2225 struct ONIXS_EUREX_ETI_EXPORT ReversalCancellationReason
2226 {
2227  /// \copydoc ReversalCancellationReason
2228  enum Enum
2229  {
2230  NoValue = 0xFF, ///< No value.
2231  TASChange = 1, ///< TES Activity State Change.
2232  IntradayExpiration = 2, ///< Instrument Expiration.
2233  InstrumentDeletion = 3, ///< Instrument Deletion.
2234  InstrumentSuspension = 4, ///< Instrument Suspension.
2235  };
2236 };
2237 
2238 /// Returns string representation.
2239 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ReversalCancellationReason::Enum);
2240 
2241 /// Make it printable using C++ I/O streams.
2242 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ReversalCancellationReason::Enum);
2243 
2244 /// Indicator whether the reversal of the TES trade is electronically requested or not.
2245 struct ONIXS_EUREX_ETI_EXPORT ReversalIndicator
2246 {
2247  /// \copydoc ReversalIndicator
2248  enum Enum
2249  {
2250  NoValue = 0xFF, ///< No value.
2251  No = 0, ///< No.
2252  Yes = 1, ///< Yes.
2253  };
2254 };
2255 
2256 /// Returns string representation.
2257 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ReversalIndicator::Enum);
2258 
2259 /// Make it printable using C++ I/O streams.
2260 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ReversalIndicator::Enum);
2261 
2262 /// State of the Risk Control Retransmission Service.
2263 struct ONIXS_EUREX_ETI_EXPORT RiskControlRtmServiceStatus
2264 {
2265  /// \copydoc RiskControlRtmServiceStatus
2266  enum Enum
2267  {
2268  NoValue = 0xFF, ///< No value.
2269  Unavailable = 0, ///< Unavailable.
2270  Available = 1, ///< Available.
2271  };
2272 };
2273 
2274 /// Returns string representation.
2275 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskControlRtmServiceStatus::Enum);
2276 
2277 /// Make it printable using C++ I/O streams.
2278 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RiskControlRtmServiceStatus::Enum);
2279 
2280 /// Risk limit action.
2281 struct ONIXS_EUREX_ETI_EXPORT RiskLimitAction
2282 {
2283  /// \copydoc RiskLimitAction
2284  enum Enum
2285  {
2286  NoValue = 0xFF, ///< No value.
2287  QueueInbound = 0, ///< Queue Inbound.
2288  Reject = 2, ///< Reject.
2289  Warning = 4, ///< Warning.
2290  };
2291 };
2292 
2293 /// Returns string representation.
2294 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitAction::Enum);
2295 
2296 /// Make it printable using C++ I/O streams.
2297 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RiskLimitAction::Enum);
2298 
2299 /// Scope for Pre-Trade risk limits.
2300 struct ONIXS_EUREX_ETI_EXPORT RiskLimitPlatform
2301 {
2302  /// \copydoc RiskLimitPlatform
2303  enum Enum
2304  {
2305  NoValue = 0xFF, ///< No value.
2306  OnBook = 0, ///< On-Book.
2307  OffBook = 1, ///< Off-Book(TES).
2308  };
2309 };
2310 
2311 /// Returns string representation.
2312 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitPlatform::Enum);
2313 
2314 /// Make it printable using C++ I/O streams.
2315 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RiskLimitPlatform::Enum);
2316 
2317 /// Requesting party role for a pre-trade risk limit.
2318 struct ONIXS_EUREX_ETI_EXPORT RiskLimitRequestingPartyRole
2319 {
2320  /// \copydoc RiskLimitRequestingPartyRole
2321  enum Enum
2322  {
2323  NoValue = 0xFF, ///< No value.
2324  ClearingFirm = 4, ///< requested by Clearing firm.
2325  Exchange = 22, ///< requested by Exchange.
2326  ExecutingUnit = 59, ///< requested by Executing firm.
2327  };
2328 };
2329 
2330 /// Returns string representation.
2331 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitRequestingPartyRole::Enum);
2332 
2333 /// Make it printable using C++ I/O streams.
2334 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RiskLimitRequestingPartyRole::Enum);
2335 
2336 /// Risk Limit Result for failed events.
2337 struct ONIXS_EUREX_ETI_EXPORT RiskLimitResult
2338 {
2339  /// \copydoc RiskLimitResult
2340  enum Enum
2341  {
2342  NoValue = 0xFF, ///< No value.
2343  DisabledForBu = 10580, ///< Margin Based Risk Limits not enabled for business unit.
2344  LowRRAEventID = 10581, ///< Received Remaining Risk Allowance event ID is lower than lowest entry in Temporary
2345  ///< Transaction List.
2346  HighRRAEventID =
2347  10582, ///< Received Remaining Risk Allowance event ID exceeds last entry in Temporary Transaction List.
2348  };
2349 };
2350 
2351 /// Returns string representation.
2352 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitResult::Enum);
2353 
2354 /// Make it printable using C++ I/O streams.
2355 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RiskLimitResult::Enum);
2356 
2357 /// Type of risk limits.
2358 struct ONIXS_EUREX_ETI_EXPORT RiskLimitType
2359 {
2360  /// \copydoc RiskLimitType
2361  enum Enum
2362  {
2363  NoValue = 0xFF, ///< No value.
2364  LongLimit = 4, ///< Long limit.
2365  ShortLimit = 5, ///< Short limit.
2366  };
2367 };
2368 
2369 /// Returns string representation.
2370 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitType::Enum);
2371 
2372 /// Make it printable using C++ I/O streams.
2373 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RiskLimitType::Enum);
2374 
2375 /// Indicator for a pre-trade risk limit violation.
2376 struct ONIXS_EUREX_ETI_EXPORT RiskLimitViolationIndicator
2377 {
2378  /// \copydoc RiskLimitViolationIndicator
2379  enum Enum
2380  {
2381  NoValue = 0xFF, ///< No value.
2382  No = 0, ///< No.
2383  Yes = 1, ///< Yes.
2384  };
2385 };
2386 
2387 /// Returns string representation.
2388 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RiskLimitViolationIndicator::Enum);
2389 
2390 /// Make it printable using C++ I/O streams.
2391 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RiskLimitViolationIndicator::Enum);
2392 
2393 /// Qualifier for field PartyIdInvestmentDecisionMaker. Members/participants will have the possibility to specify an
2394 /// Investment qualifier value to distinguish between natural persons and Algos.
2395 struct ONIXS_EUREX_ETI_EXPORT RootPartyIdInvestmentDecisionMakerQualifier
2396 {
2397  /// \copydoc RootPartyIdInvestmentDecisionMakerQualifier
2398  enum Enum
2399  {
2400  NoValue = 0xFF, ///< No value.
2401  Algo = 22, ///< Algo.
2402  Human = 24, ///< Human/Natural person.
2403  };
2404 };
2405 
2406 /// Returns string representation.
2407 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RootPartyIdInvestmentDecisionMakerQualifier::Enum);
2408 
2409 /// Make it printable using C++ I/O streams.
2410 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RootPartyIdInvestmentDecisionMakerQualifier::Enum);
2411 
2412 /// RootParty sub-type.
2413 struct ONIXS_EUREX_ETI_EXPORT RootPartySubIdType
2414 {
2415  /// \copydoc RootPartySubIdType
2416  enum Enum
2417  {
2418  NoValue = 0xFF, ///< No value.
2419  Buyer = 4001, ///< Buyer.
2420  Seller = 4002, ///< Seller.
2421  Broker = 4003, ///< Broker.
2422  };
2423 };
2424 
2425 /// Returns string representation.
2426 ONIXS_EUREX_ETI_EXPORT std::string enumToString(RootPartySubIdType::Enum);
2427 
2428 /// Make it printable using C++ I/O streams.
2429 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, RootPartySubIdType::Enum);
2430 
2431 /// Status of Secondary ETI Gateway.
2432 struct ONIXS_EUREX_ETI_EXPORT SecondaryGatewayStatus
2433 {
2434  /// \copydoc SecondaryGatewayStatus
2435  enum Enum
2436  {
2437  NoValue = 0xFF, ///< No value.
2438  Standby = 0, ///< Standby.
2439  Active = 1, ///< Active.
2440  };
2441 };
2442 
2443 /// Returns string representation.
2444 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SecondaryGatewayStatus::Enum);
2445 
2446 /// Make it printable using C++ I/O streams.
2447 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SecondaryGatewayStatus::Enum);
2448 
2449 /// State of the Selective Service for Quote Retransmission Service.
2450 struct ONIXS_EUREX_ETI_EXPORT SelectiveRequestForQuoteRtmServiceStatus
2451 {
2452  /// \copydoc SelectiveRequestForQuoteRtmServiceStatus
2453  enum Enum
2454  {
2455  NoValue = 0xFF, ///< No value.
2456  Unavailable = 0, ///< Unavailable.
2457  Available = 1, ///< Available.
2458  };
2459 };
2460 
2461 /// Returns string representation.
2462 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SelectiveRequestForQuoteRtmServiceStatus::Enum);
2463 
2464 /// Make it printable using C++ I/O streams.
2465 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SelectiveRequestForQuoteRtmServiceStatus::Enum);
2466 
2467 /// State of the selective service for quote service.
2468 struct ONIXS_EUREX_ETI_EXPORT SelectiveRequestForQuoteServiceStatus
2469 {
2470  /// \copydoc SelectiveRequestForQuoteServiceStatus
2471  enum Enum
2472  {
2473  NoValue = 0xFF, ///< No value.
2474  Unavailable = 0, ///< Unavailable.
2475  Available = 1, ///< Available.
2476  };
2477 };
2478 
2479 /// Returns string representation.
2480 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SelectiveRequestForQuoteServiceStatus::Enum);
2481 
2482 /// Make it printable using C++ I/O streams.
2483 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SelectiveRequestForQuoteServiceStatus::Enum);
2484 
2485 /// Indicate the instruction for SMP. If MatchInstCrossID (28744) is set then the default value for
2486 /// SelfMatchPreventionInstruction is 100 (Reject cross on business unit level).
2487 struct ONIXS_EUREX_ETI_EXPORT SelfMatchPreventionInstruction
2488 {
2489  /// \copydoc SelfMatchPreventionInstruction
2490  enum Enum
2491  {
2492  NoValue = 0xFF, ///< No value.
2493  CrossRejectedBU = 100, ///< Reject cross on business unit level.
2494  CrossRejectedMarket = 101, ///< Reject cross on market level.
2495  };
2496 };
2497 
2498 /// Returns string representation.
2499 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SelfMatchPreventionInstruction::Enum);
2500 
2501 /// Make it printable using C++ I/O streams.
2502 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SelfMatchPreventionInstruction::Enum);
2503 
2504 /// Type of Eurex ETI session.
2505 struct ONIXS_EUREX_ETI_EXPORT SessionMode
2506 {
2507  /// \copydoc SessionMode
2508  enum Enum
2509  {
2510  NoValue = 0xFF, ///< No value.
2511  ETIHF = 1, ///< ETI HF.
2512  ETILF = 2, ///< ETI LF.
2513  GUI = 3, ///< GUI.
2514  FIXLF = 4, ///< FIX LF.
2515  };
2516 };
2517 
2518 /// Returns string representation.
2519 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SessionMode::Enum);
2520 
2521 /// Make it printable using C++ I/O streams.
2522 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SessionMode::Enum);
2523 
2524 /// Error code.
2525 struct ONIXS_EUREX_ETI_EXPORT SessionRejectReason
2526 {
2527  /// \copydoc SessionRejectReason
2528  enum Enum
2529  {
2530  NoValue = 0xFF, ///< No value.
2531  RequiredTagMissing = 1, ///< Required Tag Missing.
2532  ValueIsIncorrect = 5, ///< Value is incorrect (out of range) for this tag.
2533  DecryptionProblem = 7, ///< Decryption problem.
2534  InvalidMsgID = 11, ///< Invalid TemplateID.
2535  IncorrectNumInGroupCount = 16, ///< Incorrect NumInGroup count for repeating group.
2536  Other = 99, ///< Other.
2537  ThrottleLimitExceeded = 100, ///< Throttle limit exceeded.
2538  ExposureLimitExceeded = 101, ///< Stale request was not forwarded to T7.
2539  ServiceTemporarilyNotAvailable = 102, ///< Service temporarily not available.
2540  ServiceNotAvailable = 103, ///< Service not available.
2541  OutboundConversionError = 105, ///< Error converting response or broadcast.
2542  HeartbeatViolation = 152, ///< Heartbeat violation error.
2543  InternalTechnicalError = 200, ///< Internal technical error.
2544  ValidationError = 210, ///< Validation Error.
2545  UserAlreadyLoggedIn = 211, ///< User already logged in.
2546  GatewayIsStandby = 216, ///< Gateway is standby.
2547  SessionLoginLimitReached = 217, ///< Session login limit (per time interval) reached.
2548  UserEntitlementDataTimeout = 223, ///< User Entitlement Data time out.
2549  PSGatewaySessionLimitReached = 224, ///< Session limit reached (per PS Gateway and Business Unit).
2550  UserLoginLimitReached = 225, ///< User login tries limit (per time interval) reached.
2551  OutstandingLoginsBuLimitReached =
2552  226, ///< Limit of outstanding session/user logins reached (per Business Unit).
2553  OutstandingLoginsSessionLimitReached = 227, ///< Limit of outstanding session/user logins reached (per Session).
2554  PasswordTimestampNotInGracePeriod = 228, ///< Password timestamp not in grace period.
2555  OrderNotFound = 10000, ///< Order not found.
2556  PriceNotReasonable = 10001, ///< Price not reasonable.
2557  ClientOrderIDNotUnique = 10002, ///< Duplicate Order (ClOrdID).
2558  QuoteActivationInProgress =
2559  10003, ///< another quote activation request is pending for the same Product / Instrument Type / SessionID.
2560  StopBidPriceNotReasonable = 10006, ///< Stop buy price not reasonable.
2561  StopAskPriceNotReasonable = 10007, ///< Stop sell price not reasonable.
2562  OrderNotExecutableWithinValidity = 10008, ///< GFD order is not executable on current business day.
2563  CreateCIThrottleExceeded = 10010, ///< Throttle limit for creation of complex instrument exceeded.
2564  TransactionNotAllowedInCurrentState = 10011, ///< Order maintenance not allowed in current state.
2565  RequiredMinLotSizeNotReached = 10013, ///< Required min lot size not reached.
2566  };
2567 };
2568 
2569 /// Returns string representation.
2570 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SessionRejectReason::Enum);
2571 
2572 /// Make it printable using C++ I/O streams.
2573 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SessionRejectReason::Enum);
2574 
2575 /// Status of an ETI session.
2576 struct ONIXS_EUREX_ETI_EXPORT SessionStatus
2577 {
2578  /// \copydoc SessionStatus
2579  enum Enum
2580  {
2581  NoValue = 0xFF, ///< No value.
2582  Active = 0, ///< Session active.
2583  Logout = 4, ///< Session logout complete.
2584  };
2585 };
2586 
2587 /// Returns string representation.
2588 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SessionStatus::Enum);
2589 
2590 /// Make it printable using C++ I/O streams.
2591 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SessionStatus::Enum);
2592 
2593 /// Session sub mode.
2594 struct ONIXS_EUREX_ETI_EXPORT SessionSubMode
2595 {
2596  /// \copydoc SessionSubMode
2597  enum Enum
2598  {
2599  NoValue = 0xFF, ///< No value.
2600  RegularTradingSession = 0, ///< Regular Trading Session.
2601  RegularBackOfficeSession = 2, ///< Regular Back Office Session.
2602  };
2603 };
2604 
2605 /// Returns string representation.
2606 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SessionSubMode::Enum);
2607 
2608 /// Make it printable using C++ I/O streams.
2609 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SessionSubMode::Enum);
2610 
2611 /// Settlement method for a contract or instrument.
2612 struct ONIXS_EUREX_ETI_EXPORT SettlMethod
2613 {
2614  /// \copydoc SettlMethod
2615  enum Enum
2616  {
2617  NoValue = 0x00, ///< No value.
2618  CashSettlement = 'C', ///< Cash Settlement.
2619  PhysicalSettlement = 'P', ///< Physical Settlement.
2620  };
2621 };
2622 
2623 /// Returns string representation.
2624 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SettlMethod::Enum);
2625 
2626 /// Make it printable using C++ I/O streams.
2627 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SettlMethod::Enum);
2628 
2629 /// Instruction to show last deal information after negotiation closure.
2630 struct ONIXS_EUREX_ETI_EXPORT ShowLastDealOnClosure
2631 {
2632  /// \copydoc ShowLastDealOnClosure
2633  enum Enum
2634  {
2635  NoValue = 0xFF, ///< No value.
2636  No = 0, ///< No.
2637  Yes = 1, ///< Yes.
2638  };
2639 };
2640 
2641 /// Returns string representation.
2642 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ShowLastDealOnClosure::Enum);
2643 
2644 /// Make it printable using C++ I/O streams.
2645 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ShowLastDealOnClosure::Enum);
2646 
2647 /// Side of the order.
2648 struct ONIXS_EUREX_ETI_EXPORT Side
2649 {
2650  /// \copydoc Side
2651  enum Enum
2652  {
2653  NoValue = 0xFF, ///< No value.
2654  Buy = 1, ///< Buy.
2655  Sell = 2, ///< Sell.
2656  };
2657 };
2658 
2659 /// Returns string representation.
2660 ONIXS_EUREX_ETI_EXPORT std::string enumToString(Side::Enum);
2661 
2662 /// Make it printable using C++ I/O streams.
2663 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, Side::Enum);
2664 
2665 /// Instruction to show side.
2666 struct ONIXS_EUREX_ETI_EXPORT SideDisclosureInstruction
2667 {
2668  /// \copydoc SideDisclosureInstruction
2669  enum Enum
2670  {
2671  NoValue = 0xFF, ///< No value.
2672  No = 0, ///< No.
2673  Yes = 1, ///< Yes.
2674  };
2675 };
2676 
2677 /// Returns string representation.
2678 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SideDisclosureInstruction::Enum);
2679 
2680 /// Make it printable using C++ I/O streams.
2681 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SideDisclosureInstruction::Enum);
2682 
2683 /// Side is locked.
2684 struct ONIXS_EUREX_ETI_EXPORT SideIsLocked
2685 {
2686  /// \copydoc SideIsLocked
2687  enum Enum
2688  {
2689  NoValue = 0xFF, ///< No value.
2690  No = 0, ///< No.
2691  Yes = 1, ///< Yes.
2692  };
2693 };
2694 
2695 /// Returns string representation.
2696 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SideIsLocked::Enum);
2697 
2698 /// Make it printable using C++ I/O streams.
2699 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SideIsLocked::Enum);
2700 
2701 /// Order initiator is passive or aggressor.
2702 struct ONIXS_EUREX_ETI_EXPORT SideLiquidityInd
2703 {
2704  /// \copydoc SideLiquidityInd
2705  enum Enum
2706  {
2707  NoValue = 0xFF, ///< No value.
2708  AddedLiquidity = 1, ///< Added liquidity (passive).
2709  RemovedLiquidity = 2, ///< Removed liquidity (aggressive, includes triggered orders).
2710  Auction = 4, ///< Auction.
2711  };
2712 };
2713 
2714 /// Returns string representation.
2715 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SideLiquidityInd::Enum);
2716 
2717 /// Make it printable using C++ I/O streams.
2718 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SideLiquidityInd::Enum);
2719 
2720 /// Sub-type of a trade type.
2721 struct ONIXS_EUREX_ETI_EXPORT SideTrdSubTyp
2722 {
2723  /// \copydoc SideTrdSubTyp
2724  enum Enum
2725  {
2726  NoValue = 0xFF, ///< No value.
2727  BlockTrade = 2001, ///< Block Trade.
2728  TradeAtMarket = 2004, ///< Trade at Market.
2729  };
2730 };
2731 
2732 /// Returns string representation.
2733 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SideTrdSubTyp::Enum);
2734 
2735 /// Make it printable using C++ I/O streams.
2736 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SideTrdSubTyp::Enum);
2737 
2738 /// Indicator to skip validations.
2739 struct ONIXS_EUREX_ETI_EXPORT SkipValidations
2740 {
2741  /// \copydoc SkipValidations
2742  enum Enum
2743  {
2744  NoValue = 0xFF, ///< No value.
2745  False = 0, ///< False.
2746  True = 1, ///< True.
2747  };
2748 };
2749 
2750 /// Returns string representation.
2751 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SkipValidations::Enum);
2752 
2753 /// Make it printable using C++ I/O streams.
2754 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SkipValidations::Enum);
2755 
2756 /// Swap clearer for EFS Trades only.
2757 struct ONIXS_EUREX_ETI_EXPORT SwapClearer
2758 {
2759  /// \copydoc SwapClearer
2760  enum Enum
2761  {
2762  NoValue = 0xFF, ///< No value.
2763  ECAG = 0, ///< Eurex Clearing.
2764  NONECAG = 1, ///< Non-Eurex Clearing.
2765  };
2766 };
2767 
2768 /// Returns string representation.
2769 ONIXS_EUREX_ETI_EXPORT std::string enumToString(SwapClearer::Enum);
2770 
2771 /// Make it printable using C++ I/O streams.
2772 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, SwapClearer::Enum);
2773 
2774 /// Informs if Trade Entry Retransmission Service is active for grouping of Eurex products.
2775 struct ONIXS_EUREX_ETI_EXPORT T7EntryServiceRtmStatus
2776 {
2777  /// \copydoc T7EntryServiceRtmStatus
2778  enum Enum
2779  {
2780  NoValue = 0xFF, ///< No value.
2781  Unavailable = 0, ///< Unavailable.
2782  Available = 1, ///< Available.
2783  };
2784 };
2785 
2786 /// Returns string representation.
2787 ONIXS_EUREX_ETI_EXPORT std::string enumToString(T7EntryServiceRtmStatus::Enum);
2788 
2789 /// Make it printable using C++ I/O streams.
2790 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, T7EntryServiceRtmStatus::Enum);
2791 
2792 /// Informs if Trade Entry Service is active for grouping of Eurex products.
2793 struct ONIXS_EUREX_ETI_EXPORT T7EntryServiceStatus
2794 {
2795  /// \copydoc T7EntryServiceStatus
2796  enum Enum
2797  {
2798  NoValue = 0xFF, ///< No value.
2799  Unavailable = 0, ///< Unavailable.
2800  Available = 1, ///< Available.
2801  };
2802 };
2803 
2804 /// Returns string representation.
2805 ONIXS_EUREX_ETI_EXPORT std::string enumToString(T7EntryServiceStatus::Enum);
2806 
2807 /// Make it printable using C++ I/O streams.
2808 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, T7EntryServiceStatus::Enum);
2809 
2810 /// Execution and trading restriction parameters supported by Eurex.
2811 struct ONIXS_EUREX_ETI_EXPORT TimeInForce
2812 {
2813  /// \copydoc TimeInForce
2814  enum Enum
2815  {
2816  NoValue = 0xFF, ///< No value.
2817  Day = 0, ///< Day (GFD).
2818  GTC = 1, ///< Good Till Cancelled (GTC) - Standard Orders only.
2819  IOC = 3, ///< Immediate or Cancel (IOC).
2820  FOK = 4, ///< Fill Or Kill (FOK).
2821  GTD = 6, ///< Good Till Date (GTD) - Standard Orders only.
2822  };
2823 };
2824 
2825 /// Returns string representation.
2826 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TimeInForce::Enum);
2827 
2828 /// Make it printable using C++ I/O streams.
2829 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TimeInForce::Enum);
2830 
2831 /// Trading session event type.
2832 struct ONIXS_EUREX_ETI_EXPORT TradSesEvent
2833 {
2834  /// \copydoc TradSesEvent
2835  enum Enum
2836  {
2837  NoValue = 0xFF, ///< No value.
2838  StartOfService = 101, ///< Start of Service.
2839  MarketReset = 102, ///< Market Reset.
2840  EndOfRestatement = 103, ///< End of Restatement.
2841  EndOfDayService = 104, ///< End of Service.
2842  ServiceResumed = 105, ///< Service Resumed.
2843  };
2844 };
2845 
2846 /// Returns string representation.
2847 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradSesEvent::Enum);
2848 
2849 /// Make it printable using C++ I/O streams.
2850 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradSesEvent::Enum);
2851 
2852 /// Trading session mode.
2853 struct ONIXS_EUREX_ETI_EXPORT TradSesMode
2854 {
2855  /// \copydoc TradSesMode
2856  enum Enum
2857  {
2858  NoValue = 0xFF, ///< No value.
2859  Testing = 1, ///< Development.
2860  Simulated = 2, ///< Simulation.
2861  Production = 3, ///< Production.
2862  Acceptance = 4, ///< Acceptance.
2863  DisasterRecovery = 5, ///< Disaster Recovery.
2864  };
2865 };
2866 
2867 /// Returns string representation.
2868 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradSesMode::Enum);
2869 
2870 /// Make it printable using C++ I/O streams.
2871 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradSesMode::Enum);
2872 
2873 /// Trade Aggregation Identifier.
2874 struct ONIXS_EUREX_ETI_EXPORT TradeAggregationTransType
2875 {
2876  /// \copydoc TradeAggregationTransType
2877  enum Enum
2878  {
2879  NoValue = 0xFF, ///< No value.
2880  New = 0, ///< New.
2881  };
2882 };
2883 
2884 /// Returns string representation.
2885 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeAggregationTransType::Enum);
2886 
2887 /// Make it printable using C++ I/O streams.
2888 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradeAggregationTransType::Enum);
2889 
2890 /// Status of an allocation in a Trade Entry Service trade.
2891 struct ONIXS_EUREX_ETI_EXPORT TradeAllocStatus
2892 {
2893  /// \copydoc TradeAllocStatus
2894  enum Enum
2895  {
2896  NoValue = 0xFF, ///< No value.
2897  Pending = 1, ///< Pending.
2898  Approved = 2, ///< Approved.
2899  AutoApproved = 3, ///< Auto Approved.
2900  Uploaded = 4, ///< Uploaded.
2901  Canceled = 5, ///< Canceled.
2902  PendingReversal = 7, ///< Pending Reversal.
2903  ApprovedReversal = 8, ///< Side Approved Reversal.
2904  Reversed = 9, ///< Reversed.
2905  CancelledReversal = 10, ///< Cancelled Reversal.
2906  };
2907 };
2908 
2909 /// Returns string representation.
2910 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeAllocStatus::Enum);
2911 
2912 /// Make it printable using C++ I/O streams.
2913 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradeAllocStatus::Enum);
2914 
2915 /// Informs if trade broadcast dissemination is active for a grouping of Eurex products.
2916 struct ONIXS_EUREX_ETI_EXPORT TradeManagerStatus
2917 {
2918  /// \copydoc TradeManagerStatus
2919  enum Enum
2920  {
2921  NoValue = 0xFF, ///< No value.
2922  Unavailable = 0, ///< Unavailable.
2923  Available = 1, ///< Available.
2924  };
2925 };
2926 
2927 /// Returns string representation.
2928 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeManagerStatus::Enum);
2929 
2930 /// Make it printable using C++ I/O streams.
2931 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradeManagerStatus::Enum);
2932 
2933 /// Indicates trade platform. Can only be used for EEX.
2934 struct ONIXS_EUREX_ETI_EXPORT TradePlatform
2935 {
2936  /// \copydoc TradePlatform
2937  enum Enum
2938  {
2939  NoValue = 0xFF, ///< No value.
2940  OffBook = 0, ///< Off-Book.
2941  OnBook = 1, ///< On-Book.
2942  };
2943 };
2944 
2945 /// Returns string representation.
2946 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradePlatform::Enum);
2947 
2948 /// Make it printable using C++ I/O streams.
2949 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradePlatform::Enum);
2950 
2951 /// Indicates if a trade should be reported via the market reporting service.
2952 struct ONIXS_EUREX_ETI_EXPORT TradePublishIndicator
2953 {
2954  /// \copydoc TradePublishIndicator
2955  enum Enum
2956  {
2957  NoValue = 0xFF, ///< No value.
2958  DoNotPublishTrade = 0, ///< Do not publish trade.
2959  PublishTrade = 1, ///< Publish trade.
2960  DeferredPublication = 2, ///< Deferred publication to market.
2961  Published = 3, ///< Published to market.
2962  };
2963 };
2964 
2965 /// Returns string representation.
2966 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradePublishIndicator::Enum);
2967 
2968 /// Make it printable using C++ I/O streams.
2969 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradePublishIndicator::Enum);
2970 
2971 /// Identifies the type of trade notification.
2972 struct ONIXS_EUREX_ETI_EXPORT TradeReportType
2973 {
2974  /// \copydoc TradeReportType
2975  enum Enum
2976  {
2977  NoValue = 0xFF, ///< No value.
2978  Submit = 0, ///< Submit.
2979  Alleged = 1, ///< Alleged.
2980  Accept = 2, ///< Accept.
2981  Decline = 3, ///< Decline.
2982  NoWasReplaced = 5, ///< No/Was (Replaced).
2983  TradeReportCancel = 6, ///< Trade Report Cancel.
2984  TradeBreak = 7, ///< (Locked-In) Trade Break.
2985  AllegedNew = 11, ///< Alleged New.
2986  AllegedNoWas = 13, ///< Alleged No/Was.
2987  };
2988 };
2989 
2990 /// Returns string representation.
2991 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeReportType::Enum);
2992 
2993 /// Make it printable using C++ I/O streams.
2994 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradeReportType::Enum);
2995 
2996 /// Trade request transaction type.
2997 struct ONIXS_EUREX_ETI_EXPORT TradeRequestResult
2998 {
2999  /// \copydoc TradeRequestResult
3000  enum Enum
3001  {
3002  NoValue = 0xFF, ///< No value.
3003  CancelPending = 100, ///< Deal cancellation pending.
3004  CancelDeclined = 101, ///< Deal cancellation declined.
3005  CancelApproved = 102, ///< Deal cancellation approved.
3006  };
3007 };
3008 
3009 /// Returns string representation.
3010 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeRequestResult::Enum);
3011 
3012 /// Make it printable using C++ I/O streams.
3013 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradeRequestResult::Enum);
3014 
3015 /// Trade to Quote Ratio (TQR) Ranking.
3016 struct ONIXS_EUREX_ETI_EXPORT TradeToQuoteRatioRanking
3017 {
3018  /// \copydoc TradeToQuoteRatioRanking
3019  enum Enum
3020  {
3021  NoValue = 0xFF, ///< No value.
3022  Low = 1, ///< Low.
3023  Medium = 2, ///< Medium.
3024  High = 3, ///< High.
3025  };
3026 };
3027 
3028 /// Returns string representation.
3029 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradeToQuoteRatioRanking::Enum);
3030 
3031 /// Make it printable using C++ I/O streams.
3032 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradeToQuoteRatioRanking::Enum);
3033 
3034 /// This field designates if the trader is acting in the capacity of agent, trading for its own account or acting as a
3035 /// market maker.
3036 struct ONIXS_EUREX_ETI_EXPORT TradingCapacity
3037 {
3038  /// \copydoc TradingCapacity
3039  enum Enum
3040  {
3041  NoValue = 0xFF, ///< No value.
3042  Customer = 1, ///< Customer (Agency).
3043  Principal = 5, ///< Principal (Proprietary).
3044  MarketMaker = 6, ///< Market Maker.
3045  };
3046 };
3047 
3048 /// Returns string representation.
3049 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradingCapacity::Enum);
3050 
3051 /// Make it printable using C++ I/O streams.
3052 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradingCapacity::Enum);
3053 
3054 /// Marks a a certain order as a closing auction one.
3055 struct ONIXS_EUREX_ETI_EXPORT TradingSessionSubId
3056 {
3057  /// \copydoc TradingSessionSubId
3058  enum Enum
3059  {
3060  NoValue = 0xFF, ///< No value.
3061  OpeningAuction = 2, ///< Opening or opening auction.
3062  ClosingAuction = 4, ///< Closing or closing auction.
3063  AnyAuction = 8, ///< Any auction.
3064  };
3065 };
3066 
3067 /// Returns string representation.
3068 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TradingSessionSubId::Enum);
3069 
3070 /// Make it printable using C++ I/O streams.
3071 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TradingSessionSubId::Enum);
3072 
3073 /// Indicator for a delayed transaction.
3074 struct ONIXS_EUREX_ETI_EXPORT TransactionDelayIndicator
3075 {
3076  /// \copydoc TransactionDelayIndicator
3077  enum Enum
3078  {
3079  NoValue = 0xFF, ///< No value.
3080  NotDelayed = 0, ///< Transaction not delayed.
3081  Delayed = 1, ///< Transaction delayed.
3082  };
3083 };
3084 
3085 /// Returns string representation.
3086 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TransactionDelayIndicator::Enum);
3087 
3088 /// Make it printable using C++ I/O streams.
3089 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TransactionDelayIndicator::Enum);
3090 
3091 /// Identifies the role for which the trade notification is received.
3092 struct ONIXS_EUREX_ETI_EXPORT TransferReason
3093 {
3094  /// \copydoc TransferReason
3095  enum Enum
3096  {
3097  NoValue = 0xFF, ///< No value.
3098  Owner = 1, ///< Owner.
3099  Clearer = 2, ///< Clearer.
3100  };
3101 };
3102 
3103 /// Returns string representation.
3104 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TransferReason::Enum);
3105 
3106 /// Make it printable using C++ I/O streams.
3107 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TransferReason::Enum);
3108 
3109 /// SRQS deal status.
3110 struct ONIXS_EUREX_ETI_EXPORT TrdRptStatus
3111 {
3112  /// \copydoc TrdRptStatus
3113  enum Enum
3114  {
3115  NoValue = 0xFF, ///< No value.
3116  Accepted = 0, ///< Accepted.
3117  Rejected = 1, ///< Rejected.
3118  Cancelled = 2, ///< Cancelled.
3119  PendingNew = 4, ///< Pending new.
3120  PendingCancel = 5, ///< Pending Cancel.
3121  Terminated = 7, ///< Terminated.
3122  DeemedVerified = 9, ///< Deemed verified.
3123  };
3124 };
3125 
3126 /// Returns string representation.
3127 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TrdRptStatus::Enum);
3128 
3129 /// Make it printable using C++ I/O streams.
3130 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TrdRptStatus::Enum);
3131 
3132 /// Indicates if a trade should be reported via the market reporting service.
3133 struct ONIXS_EUREX_ETI_EXPORT TrdType
3134 {
3135  /// \copydoc TrdType
3136  enum Enum
3137  {
3138  NoValue = 0xFF, ///< No value.
3139  BlockTrade = 1, ///< Block Trade.
3140  ExchangeForSwap = 12, ///< Exchange for Swap.
3141  VolaTrade = 1000, ///< Vola Trade.
3142  EFPFinTrade = 1001, ///< EFP-Fin Trade.
3143  EFPIndexFuturesTrade = 1002, ///< EFP-Index Futures Trade.
3144  TradeAtMarket = 1004, ///< Trade at Market.
3145  Enlight = 1006, ///< Eurex/Xetra Enlight triggered trade.
3146  BLOCKQTPIP = 1007, ///< QTPIP BLOCK TRADE.
3147  BTRF = 1010, ///< Basket of Equity Total Return Futures.
3148  EBB = 1011, ///< Equity Bespoke Baskets.
3149  DeltaNeutralTradeAtMarket = 1017, ///< Delta Neutral Trade at Market.
3150  };
3151 };
3152 
3153 /// Returns string representation.
3154 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TrdType::Enum);
3155 
3156 /// Make it printable using C++ I/O streams.
3157 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TrdType::Enum);
3158 
3159 /// Indicates if an order has been previously triggered.
3160 struct ONIXS_EUREX_ETI_EXPORT Triggered
3161 {
3162  /// \copydoc Triggered
3163  enum Enum
3164  {
3165  NoValue = 0xFF, ///< No value.
3166  NotTriggered = 0, ///< Not Triggered.
3167  TriggeredStop = 1, ///< Triggered Stop.
3168  TriggeredOCO = 2, ///< Triggered OCO.
3169  };
3170 };
3171 
3172 /// Returns string representation.
3173 ONIXS_EUREX_ETI_EXPORT std::string enumToString(Triggered::Enum);
3174 
3175 /// Make it printable using C++ I/O streams.
3176 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, Triggered::Enum);
3177 
3178 /// User status.
3179 struct ONIXS_EUREX_ETI_EXPORT UserStatus
3180 {
3181  /// \copydoc UserStatus
3182  enum Enum
3183  {
3184  NoValue = 0xFF, ///< No value.
3185  UserForcedLogout = 7, ///< Forced user logout by exchange.
3186  UserStopped = 10, ///< Admission to trading suspended .
3187  UserReleased = 11, ///< Suspension revoked.
3188  };
3189 };
3190 
3191 /// Returns string representation.
3192 ONIXS_EUREX_ETI_EXPORT std::string enumToString(UserStatus::Enum);
3193 
3194 /// Make it printable using C++ I/O streams.
3195 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, UserStatus::Enum);
3196 
3197 /// Indicator for checking the Minimum Lot Size by the exchange. Only used for EEX. Mandatory if TrdRptStatus=4
3198 /// (Pending_New).
3199 struct ONIXS_EUREX_ETI_EXPORT ValueCheckTypeMinLotSize
3200 {
3201  /// \copydoc ValueCheckTypeMinLotSize
3202  enum Enum
3203  {
3204  NoValue = 0xFF, ///< No value.
3205  DoNotCheck = 0, ///< Do not check.
3206  Check = 1, ///< Check.
3207  };
3208 };
3209 
3210 /// Returns string representation.
3211 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ValueCheckTypeMinLotSize::Enum);
3212 
3213 /// Make it printable using C++ I/O streams.
3214 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ValueCheckTypeMinLotSize::Enum);
3215 
3216 /// Indicator for checking the maximum order or quote quantity by the exchange.
3217 struct ONIXS_EUREX_ETI_EXPORT ValueCheckTypeQuantity
3218 {
3219  /// \copydoc ValueCheckTypeQuantity
3220  enum Enum
3221  {
3222  NoValue = 0xFF, ///< No value.
3223  DoNotCheck = 0, ///< Do not check.
3224  Check = 1, ///< Check.
3225  };
3226 };
3227 
3228 /// Returns string representation.
3229 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ValueCheckTypeQuantity::Enum);
3230 
3231 /// Make it printable using C++ I/O streams.
3232 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ValueCheckTypeQuantity::Enum);
3233 
3234 /// Indicator for checking the maximum order/quote value by the exchange.
3235 struct ONIXS_EUREX_ETI_EXPORT ValueCheckTypeValue
3236 {
3237  /// \copydoc ValueCheckTypeValue
3238  enum Enum
3239  {
3240  NoValue = 0xFF, ///< No value.
3241  DoNotCheck = 0, ///< Do not check.
3242  Check = 1, ///< Check.
3243  };
3244 };
3245 
3246 /// Returns string representation.
3247 ONIXS_EUREX_ETI_EXPORT std::string enumToString(ValueCheckTypeValue::Enum);
3248 
3249 /// Make it printable using C++ I/O streams.
3250 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, ValueCheckTypeValue::Enum);
3251 
3252 /// Template IDs.
3253 struct ONIXS_EUREX_ETI_EXPORT TemplateId
3254 {
3255  /// \copydoc TemplateId
3256  enum Enum
3257  {
3258  Unknown = 0, ///< Unknown.
3259  AddComplexInstrumentRequest = 10301, ///< Add Complex Instrument Request.
3260  AddComplexInstrumentResponse = 10302, ///< Add Complex Instrument Response.
3261  AddFlexibleInstrumentRequest = 10309, ///< Add Flexible Instrument Request.
3262  AddFlexibleInstrumentResponse = 10310, ///< Add Flexible Instrument Response.
3263  AddScaledSimpleInstrumentRequest = 10327, ///< Add Scaled Simple Instrument Request.
3264  AddScaledSimpleInstrumentResponse = 10328, ///< Add Scaled Simple Instrument Response.
3265  AmendBasketTradeRequest = 10629, ///< Amend Basket Trade Request.
3266  ApproveBasketTradeRequest = 10623, ///< Approve Basket Trade Request.
3267  ApproveReverseTESTradeRequest = 10631, ///< Approve Reverse TES Trade Request.
3268  ApproveTESTradeRequest = 10603, ///< Approve TES Trade Request.
3269  BasketApproveBroadcast = 10627, ///< Basket Approve Broadcast.
3270  BasketBroadcast = 10625, ///< Basket Broadcast.
3271  BasketDeleteBroadcast = 10626, ///< Basket Delete Broadcast.
3272  BasketExecutionBroadcast = 10628, ///< Basket Execution Broadcast.
3273  BasketResponse = 10624, ///< Basket Response.
3274  BasketRollBroadcast = 10634, ///< Basket Roll Broadcast.
3275  BasketRollRequest = 10633, ///< Basket Roll Request.
3276  BroadcastErrorNotification = 10032, ///< Broadcast Error Notification.
3277  CLIPDeletionNotification = 10134, ///< CLIP Deletion Notification.
3278  CLIPExecutionNotification = 10135, ///< CLIP Execution Notification.
3279  CLIPResponse = 10133, ///< CLIP Response.
3280  CrossRequest = 10118, ///< Cross Request.
3281  CrossRequestResponse = 10119, ///< Cross Request Response.
3282  DeleteAllOrderBroadcast = 10122, ///< Delete All Order Broadcast.
3283  DeleteAllOrderNRResponse = 10124, ///< Delete All Order NR Response.
3284  DeleteAllOrderQuoteEventBroadcast = 10308, ///< Delete All Order Quote Event Broadcast.
3285  DeleteAllOrderRequest = 10120, ///< Delete All Order Request.
3286  DeleteAllOrderResponse = 10121, ///< Delete All Order Response.
3287  DeleteAllQuoteBroadcast = 10410, ///< Delete All Quote Broadcast.
3288  DeleteAllQuoteRequest = 10408, ///< Delete All Quote Request.
3289  DeleteAllQuoteResponse = 10409, ///< Delete All Quote Response.
3290  DeleteBasketTradeRequest = 10622, ///< Delete Basket Trade Request.
3291  DeleteCLIPRequest = 10132, ///< Delete CLIP Request.
3292  DeleteOrderBroadcast = 10112, ///< Delete Order Broadcast.
3293  DeleteOrderComplexRequest = 10123, ///< Delete Order Complex Request.
3294  DeleteOrderNRResponse = 10111, ///< Delete Order NR Response.
3295  DeleteOrderRequest = 10142, ///< Delete Order Request.
3296  DeleteOrderResponse = 10110, ///< Delete Order Response.
3297  DeleteOrderSingleRequest = 10109, ///< Delete Order Single Request.
3298  DeleteTESTradeRequest = 10602, ///< Delete TES Trade Request.
3299  EnterBasketTradeRequest = 10620, ///< Enter Basket Trade Request.
3300  EnterCLIPRequest = 10131, ///< Enter CLIP Request.
3301  EnterTESTradeRequest = 10600, ///< Enter TES Trade Request.
3302  ForcedLogoutNotification = 10012, ///< Forced Logout Notification.
3303  ForcedUserLogoutNotification = 10043, ///< Forced User Logout Notification.
3304  Heartbeat = 10011, ///< Heartbeat.
3305  HeartbeatNotification = 10023, ///< Heartbeat Notification.
3306  InquireEnrichmentRuleIdListRequest = 10040, ///< Inquire Enrichment Rule Id List Request.
3307  InquireEnrichmentRuleIdListResponse = 10041, ///< Inquire Enrichment Rule Id List Response.
3308  InquireMMParameterRequest = 10305, ///< Inquire MM Parameter Request.
3309  InquireMMParameterResponse = 10306, ///< Inquire MM Parameter Response.
3310  InquireMarginBasedRiskLimitRequest = 10323, ///< Inquire Margin Based Risk Limit Request.
3311  InquireMarginBasedRiskLimitResponse = 10324, ///< Inquire Margin Based Risk Limit Response.
3312  InquirePreTradeRiskLimitsRequest = 10311, ///< Inquire Pre Trade Risk Limits Request.
3313  InquireSessionListRequest = 10035, ///< Inquire Session List Request.
3314  InquireSessionListResponse = 10036, ///< Inquire Session List Response.
3315  InquireUserRequest = 10038, ///< Inquire User Request.
3316  InquireUserResponse = 10039, ///< Inquire User Response.
3317  LegalNotificationBroadcast = 10037, ///< Legal Notification Broadcast.
3318  LogonRequest = 10000, ///< Logon Request.
3319  LogonRequestEncrypted = 19000, ///< Logon Request Encrypted.
3320  LogonResponse = 10001, ///< Logon Response.
3321  LogoutRequest = 10002, ///< Logout Request.
3322  LogoutResponse = 10003, ///< Logout Response.
3323  MMParameterDefinitionRequest = 10303, ///< MM Parameter Definition Request.
3324  MMParameterDefinitionResponse = 10304, ///< MM Parameter Definition Response.
3325  MassOrder = 10115, ///< Mass Order.
3326  MassOrderAck = 10116, ///< Mass Order Ack.
3327  MassQuoteRequest = 10405, ///< Mass Quote Request.
3328  MassQuoteResponse = 10406, ///< Mass Quote Response.
3329  ModifyBasketTradeRequest = 10621, ///< Modify Basket Trade Request.
3330  ModifyOrderComplexRequest = 10114, ///< Modify Order Complex Request.
3331  ModifyOrderComplexShortRequest = 10130, ///< Modify Order Complex Short Request.
3332  ModifyOrderNRResponse = 10108, ///< Modify Order NR Response.
3333  ModifyOrderRequest = 10140, ///< Modify Order Request.
3334  ModifyOrderResponse = 10107, ///< Modify Order Response.
3335  ModifyOrderShortRequest = 10141, ///< Modify Order Short Request.
3336  ModifyOrderSingleRequest = 10106, ///< Modify Order Single Request.
3337  ModifyOrderSingleShortRequest = 10126, ///< Modify Order Single Short Request.
3338  ModifyTESTradeRequest = 10601, ///< Modify TES Trade Request.
3339  NewOrderComplexRequest = 10113, ///< New Order Complex Request.
3340  NewOrderComplexShortRequest = 10129, ///< New Order Complex Short Request.
3341  NewOrderNRResponse = 10102, ///< New Order NR Response.
3342  NewOrderRequest = 10138, ///< New Order Request.
3343  NewOrderResponse = 10101, ///< New Order Response.
3344  NewOrderShortRequest = 10139, ///< New Order Short Request.
3345  NewOrderSingleRequest = 10100, ///< New Order Single Request.
3346  NewOrderSingleShortRequest = 10125, ///< New Order Single Short Request.
3347  NewsBroadcast = 10031, ///< News Broadcast.
3348  OrderExecNotification = 10104, ///< Order Exec Notification.
3349  OrderExecReportBroadcast = 10117, ///< Order Exec Report Broadcast.
3350  OrderExecResponse = 10103, ///< Order Exec Response.
3351  PartyActionReport = 10042, ///< Party Action Report.
3352  PartyEntitlementsUpdateReport = 10034, ///< Party Entitlements Update Report.
3353  PingRequest = 10320, ///< Ping Request.
3354  PingResponse = 10321, ///< Ping Response.
3355  PreTradeRiskLimitResponse = 10313, ///< Pre Trade Risk Limit Response.
3356  PreTradeRiskLimitsDefinitionRequest = 10312, ///< Pre Trade Risk Limits Definition Request.
3357  QuoteActivationNotification = 10411, ///< Quote Activation Notification.
3358  QuoteActivationRequest = 10403, ///< Quote Activation Request.
3359  QuoteActivationResponse = 10404, ///< Quote Activation Response.
3360  QuoteExecutionReport = 10407, ///< Quote Execution Report.
3361  RFQRequest = 10401, ///< RFQ Request.
3362  RFQResponse = 10402, ///< RFQ Response.
3363  Reject = 10010, ///< Reject.
3364  RetransmitMEMessageRequest = 10026, ///< Retransmit ME Message Request.
3365  RetransmitMEMessageResponse = 10027, ///< Retransmit ME Message Response.
3366  RetransmitRequest = 10008, ///< Retransmit Request.
3367  RetransmitResponse = 10009, ///< Retransmit Response.
3368  ReverseTESTradeRequest = 10630, ///< Reverse TES Trade Request.
3369  RiskNotificationBroadcast = 10033, ///< Risk Notification Broadcast.
3370  SRQSCreateDealNotification = 10708, ///< SRQS Create Deal Notification.
3371  SRQSDealNotification = 10709, ///< SRQS Deal Notification.
3372  SRQSDealResponse = 10705, ///< SRQS Deal Response.
3373  SRQSEnterQuoteRequest = 10702, ///< SRQS Enter Quote Request.
3374  SRQSHitQuoteRequest = 10704, ///< SRQS Hit Quote Request.
3375  SRQSInquireSmartRespondentRequest = 10718, ///< SRQS Inquire Smart Respondent Request.
3376  SRQSInquireSmartRespondentResponse = 10719, ///< SRQS Inquire Smart Respondent Response.
3377  SRQSNegotiationNotification = 10713, ///< SRQS Negotiation Notification.
3378  SRQSNegotiationRequesterNotification = 10712, ///< SRQS Negotiation Requester Notification.
3379  SRQSNegotiationStatusNotification = 10715, ///< SRQS Negotiation Status Notification.
3380  SRQSOpenNegotiationNotification = 10711, ///< SRQS Open Negotiation Notification.
3381  SRQSOpenNegotiationRequest = 10700, ///< SRQS Open Negotiation Request.
3382  SRQSOpenNegotiationRequesterNotification = 10710, ///< SRQS Open Negotiation Requester Notification.
3383  SRQSQuoteNotification = 10707, ///< SRQS Quote Notification.
3384  SRQSQuoteResponse = 10703, ///< SRQS Quote Response.
3385  SRQSQuoteSnapshotNotification = 10723, ///< SRQS Quote Snapshot Notification.
3386  SRQSQuoteSnapshotRequest = 10720, ///< SRQS Quote Snapshot Request.
3387  SRQSQuotingStatusRequest = 10717, ///< SRQS Quoting Status Request.
3388  SRQSResponse = 10722, ///< SRQS Response.
3389  SRQSStatusBroadcast = 10714, ///< SRQS Status Broadcast.
3390  SRQSUpdateDealStatusRequest = 10706, ///< SRQS Update Deal Status Request.
3391  SRQSUpdateNegotiationRequest = 10701, ///< SRQS Update Negotiation Request.
3392  ServiceAvailabilityBroadcast = 10030, ///< Service Availability Broadcast.
3393  ServiceAvailabilityMarketBroadcast = 10044, ///< Service Availability Market Broadcast.
3394  StatusBroadcast = 10045, ///< Status Broadcast.
3395  SubscribeRequest = 10025, ///< Subscribe Request.
3396  SubscribeResponse = 10005, ///< Subscribe Response.
3397  TESApproveBroadcast = 10607, ///< TES Approve Broadcast.
3398  TESBroadcast = 10604, ///< TES Broadcast.
3399  TESDeleteBroadcast = 10606, ///< TES Delete Broadcast.
3400  TESExecutionBroadcast = 10610, ///< TES Execution Broadcast.
3401  TESResponse = 10611, ///< TES Response.
3402  TESReversalBroadcast = 10632, ///< TES Reversal Broadcast.
3403  TESTradeBroadcast = 10614, ///< TES Trade Broadcast.
3404  TESTradingSessionStatusBroadcast = 10615, ///< TES Trading Session Status Broadcast.
3405  TESUploadBroadcast = 10613, ///< TES Upload Broadcast.
3406  TMTradingSessionStatusBroadcast = 10501, ///< TM Trading Session Status Broadcast.
3407  ThrottleUpdateNotification = 10028, ///< Throttle Update Notification.
3408  TradeBroadcast = 10500, ///< Trade Broadcast.
3409  TradingSessionStatusBroadcast = 10307, ///< Trading Session Status Broadcast.
3410  UnsubscribeRequest = 10006, ///< Unsubscribe Request.
3411  UnsubscribeResponse = 10007, ///< Unsubscribe Response.
3412  UpdateRemainingRiskAllowanceBaseRequest = 10325, ///< Update Remaining Risk Allowance Base Request.
3413  UpdateRemainingRiskAllowanceBaseResponse = 10326, ///< Update Remaining Risk Allowance Base Response.
3414  UploadTESTradeRequest = 10612, ///< Upload TES Trade Request.
3415  UserLoginRequest = 10018, ///< User Login Request.
3416  UserLoginRequestEncrypted = 19018, ///< User Login Request Encrypted.
3417  UserLoginResponse = 10019, ///< User Login Response.
3418  UserLogoutRequest = 10029, ///< User Logout Request.
3419  UserLogoutResponse = 10024, ///< User Logout Response.
3420  };
3421 };
3422 
3423 /// Returns string representation.
3424 ONIXS_EUREX_ETI_EXPORT std::string enumToString(TemplateId::Enum);
3425 
3426 /// Make it printable using C++ I/O streams.
3427 ONIXS_EUREX_ETI_EXPORT std::ostream& operator<<(std::ostream&, TemplateId::Enum);
3428 
3429 }}} // namespace OnixS::Eurex::Trading
Reason for quote cancellation.
Enum
Price decomposition method for legs of a complex instrument.
Enum
Indicates if the participant application is an order routing system.
RFQ Response Message.
Definition: RFQResponse.h:35
Enum
Party ID investment decision maker qualifier.
Conveys the quote event type.
Enum
Indicates if the order is a Lean Order or a Standard (non lean) Order.
Definition: Enumerations.h:94
Type of the Cross Request.
Definition: Enumerations.h:260
Enum
Indicates a retransmission message.
Definition: Enumerations.h:76
Indicates whether an option contract is a put or call.
Execution and trading restriction parameters supported by Eurex.
Enum
Instruction to show buy-side user information.
Enum
Indication for the hedge transaction.
Definition: Enumerations.h:664
Swap clearer for EFS Trades only.
Indicates if the participant application is an order routing system.
Enum
Used to indicate anonymized trades in baskets.
Definition: Enumerations.h:171
Indicates the auction type the trade originates from.
Indicator for a pre-trade risk limit violation.
Enum
Side of the order in the original Eurex strategy.
Identifies the status of an individual quote.
Enum
Indicator whether the reversal of the TES trade is electronically requested or not.
Enum
State of the Risk Control Retransmission Service.
Prioritization of a cross order.
Definition: Enumerations.h:242
Instrument type of the original Eurex strategy.
State of the selective service for quote service.
Enum
Leaves quantity disclosure instruction.
Definition: Enumerations.h:850
Enum
Reference to the unique application identifier.
Enum
Informs if Trade Entry Service is active for grouping of Eurex products.
Enum
Side of the order.
Mass Order Message.
Definition: MassOrder.h:71
Indicator for checking the maximum order or quote quantity by the exchange.
Logon Response Message.
Definition: LogonResponse.h:18
Indicator to skip validations.
Indicates whether the counterparties have the right for early termination.
Settlement method for a contract or instrument.
Enum
The point in the matching process at which this trade was matched.
Enum
Indicator how price validity check should be performed by the exchange.
Enum
Specifies the type of respondents requested.
Enum
Type of the Cross Request.
Definition: Enumerations.h:263
Enum
Indicates if a trade should be reported via the market reporting service.
Trading session event type.
Enlight RFQ Average Response Rate Ranking.
Definition: Enumerations.h:382
Enum
Indicates whether an option contract is a put or call.
Enum
The side of the individual leg of a strategy.
Definition: Enumerations.h:925
Type of exercise of an instrument.
Definition: Enumerations.h:566
Informs if Trade Entry Retransmission Service is active for grouping of Eurex products.
Trade request transaction type.
Instructions for order handling, represented as a bit map.
Definition: Enumerations.h:457
New Order Request Message.
Enum
Instruction to show total quantity.
Enum
Sub-type (qualifier) of market data.
Definition: Enumerations.h:979
Action for reaching risk limit.
Definition: Enumerations.h:994
Enum
Informs if Trade Entry Retransmission Service is active for grouping of Eurex products.
Enum
Indicator for a delayed transaction.
Enum
Scope for Pre-Trade risk limits.
Enum
Informs if trading is active for grouping of Eurex products.
Enum
Role on/for a message.
Definition: Enumerations.h:718
Reason for mass cancellation.
Action that caused the event to occur.
State of the Selective Service for Quote Retransmission Service.
Informs if trading is active for grouping of Eurex products.
Enum
The reason why this message was generated.
Definition: Enumerations.h:527
Enum
Indicator for a pre-trade risk limit violation.
RFQ Request Message.
Definition: RFQRequest.h:35
Enum
Trade to Quote Ratio (TQR) Ranking.
Enlight RFQ Average Response Time Ranking.
Definition: Enumerations.h:401
Enum
Code to represent the type of instrument attribute.
Definition: Enumerations.h:736
Mass Quote Request Message.
Enum
This field qualifies an instrument type on Eurex.
Enum
State of the Selective Service for Quote Retransmission Service.
Enum
Instructions for order handling, represented as a bit map.
Definition: Enumerations.h:460
Enum
Swap clearer for EFS Trades only.
Enum
Requesting party role for a pre-trade risk limit.
Leaves quantity disclosure instruction.
Definition: Enumerations.h:847
Enum
Indicates if a trade should be reported via the market reporting service.
Enum
Identifies the status of an individual quote.
Enum
State of the News Retransmission Service.
Enum
Instruction to show last deal quantity. Can only be set to 1 (Yes) if LastQtyDisclosureInstruction = ...
Definition: Enumerations.h:832
Enum
Status of an allocation in a Trade Entry Service trade.
Reason code indicating why the quote entry has been rejected.
Enum
Order origination, MiFID field - to indicate order received from a direct access or sponsored access ...
Specifies the type of action requested.
Ping Response Message.
Definition: PingResponse.h:35
Reject Message.
Definition: Reject.h:35
Enum
Settlement method for a contract or instrument.
Enum
Status of an ETI session.
Enum
Instruction to show last deal price.
Definition: Enumerations.h:814
Enum
Indicator for checking open orders and quotes.
Definition: Enumerations.h:758
Enum
Party type initiating SRQS deal deletion.
State of the News Retransmission Service.
Enum
Risk Limit Result for failed events.
Indicates if an order has been previously triggered.
Side of the order in the original Eurex strategy.
Enum
Restriction for MassActionType (1373) = Release_quotes (2).
Status of an allocation in a Trade Entry Service trade.
Party type initiating SRQS deal deletion.
Enum
Code to further qualify the field ExecType (150) of the Execution Report (8) message.
Definition: Enumerations.h:481
State of the Risk Control Retransmission Service.
CLIP Response Message.
Definition: CLIPResponse.h:62
Enum
Indicates if an order has been previously triggered.
Sub-type of a trade type.
Indicates if the trade resulted from a single order or a multi leg order.
Indicates whether a option strategy synthetic BBO is used for the price improvement check...
Definition: Enumerations.h:678
Enum
Indicates whether the quote added or removed liquidity.
Instruction to show last deal information after negotiation closure.
Party ID investment decision maker qualifier.
Sub-type (qualifier) of market data.
Definition: Enumerations.h:976
Enum
Specifies the type of action requested.
Indicates if the trade notification results from an order or quote.
Enum
Identifies the quoting model.
Instruction to show buy-side user information.
User Login Request Message.
Indicates if a trade should be reported via the market reporting service.
Indicator for checking the maximum order/quote value by the exchange.
Code to represent the type of instrument attribute.
Definition: Enumerations.h:733
Identifies the type of trade notification.
Trade to Quote Ratio (TQR) Ranking.
Indicates whether the order added or removed liquidity.
Definition: Enumerations.h:584
TES Response Message.
Definition: TESResponse.h:35
Instruction to show total number of Respondents in a SRQS event.
Enum
Transaction effect on a basket.
Definition: Enumerations.h:367
std::ostream & operator<<(std::ostream &, ConnectionState::Enum)
Make it printable using C++ I/O streams.
Code to further qualify the field ExecType (150) of the Execution Report (8) message.
Definition: Enumerations.h:478
Enum
Instruction to show last deal information after negotiation closure.
Enum
Indicates if the trade notification results from an order or quote.
Requesting party role for a pre-trade risk limit.
Side of the order.
Enum
Indicator for checking the maximum order/quote value by the exchange.
Indicator for checking open orders and quotes.
Definition: Enumerations.h:755
Specifies if a strategy is temporarily (user-defined) or permanently (predefined) available...
Enum
State of the selective service for quote service.
Informs if trade broadcast dissemination is active for a grouping of Eurex products.
Enum
Instruction to show total number of Respondents in a SRQS event.
Type of quote processing.
Definition: Enumerations.h:148
Enum
Type of quote processing.
Definition: Enumerations.h:151
Indicates whether the quote added or removed liquidity.
Marks a a certain order as a closing auction one.
New Order Response Message.
Enum
Trading session event type.
Indicator whether the reversal of the TES trade is electronically requested or not.
Enum
Reason code indicating why the quote entry has been rejected.
Enum
Identifier for subscription and retransmission of an ETI data stream.
Definition: Enumerations.h:33
The reason why this message was generated.
Definition: Enumerations.h:524
Instruction to show last deal quantity. Can only be set to 1 (Yes) if LastQtyDisclosureInstruction = ...
Definition: Enumerations.h:829
Code to represent the type of event.
Definition: Enumerations.h:439
Role on/for a message.
Definition: Enumerations.h:715
Enum
Code to represent the type of event.
Definition: Enumerations.h:442
Instruction to show total quantity.
Ping Request Message.
Definition: PingRequest.h:35
Specifies the type of respondents requested.
Enum
Reason for quote cancellation.
Additional information why quote side was removed.
Indicates trade platform. Can only be used for EEX.
Informs if Trade Entry Service is active for grouping of Eurex products.
Enum
Indicates whether the counterparties have the right for early termination.
Enum
Prioritization of a cross order.
Definition: Enumerations.h:245
Reference to the unique application identifier.
Enum
Additional information why quote side was removed.
Indicator for a delayed transaction.
Enum
Sub-type of a trade type.
News Broadcast Message.
Definition: NewsBroadcast.h:35
Mass Order Ack Message.
Definition: MassOrderAck.h:35
Sub-type or qualifier of QuoteType.
Enum
Indicates trade platform. Can only be used for EEX.
Enum
Reason for mass cancellation.
Order initiator is passive or aggressor.
Enum
Indicator to skip validations.
Enum
Trade request transaction type.
Identifies the quoting model.
Enum
Order initiator is passive or aggressor.
Enum
Specifies if a strategy is temporarily (user-defined) or permanently (predefined) available...
The side of the individual leg of a strategy.
Definition: Enumerations.h:922
Enum
Indicates if the trade resulted from a single order or a multi leg order.
Order origination, MiFID field - to indicate order received from a direct access or sponsored access ...
Enum
Type of cross being submitted to a market.
Definition: Enumerations.h:281
Indicates SMP involvement.
Definition: Enumerations.h:297
Enum
Indicates whether a option strategy synthetic BBO is used for the price improvement check...
Definition: Enumerations.h:681
Enum
Type of order processing.
Definition: Enumerations.h:131
Cross Request Message.
Definition: CrossRequest.h:35
Enum
Indicator for checking the maximum order or quote quantity by the exchange.
Indicates a retransmission message.
Definition: Enumerations.h:73
Used to indicate anonymized trades in baskets.
Definition: Enumerations.h:168
New Order NR Response Message.
std::string enumToString(ConnectionState::Enum)
Returns string representation of ConnectionState value.
Risk Limit Result for failed events.
Enum
Informs if trade broadcast dissemination is active for a grouping of Eurex products.
Instruction to show last deal price.
Definition: Enumerations.h:811
Enum
Conveys the current status of an order.
Indication for the hedge transaction.
Definition: Enumerations.h:661
Status of an ETI session.
Enum
Indicates SMP involvement.
Definition: Enumerations.h:300
Enum
Identifies the role for which the trade notification is received.
Enum
Type of exercise of an instrument.
Definition: Enumerations.h:569
Enum
Identifies the type of trade notification.
Enum
Enlight RFQ Average Response Rate Ranking.
Definition: Enumerations.h:385
Enum
Indicates whether the order added or removed liquidity.
Definition: Enumerations.h:587
Price decomposition method for legs of a complex instrument.
Enum
Status of Secondary ETI Gateway.
The point in the matching process at which this trade was matched.
Enum
Enlight RFQ Average Response Time Ranking.
Definition: Enumerations.h:404
Restriction for MassActionType (1373) = Release_quotes (2).
Conveys the current status of an order.
Quoting status for the executing party.
Transaction effect on a basket.
Definition: Enumerations.h:364
Enum
Instrument type of the original Eurex strategy.
Type of order processing.
Definition: Enumerations.h:128
Type of cross being submitted to a market.
Definition: Enumerations.h:278
Indicates if a trade should be reported via the market reporting service.
Identifies the role for which the trade notification is received.
Enum
Sub-type or qualifier of QuoteType.
Enum
Marks a a certain order as a closing auction one.
Indicator how price validity check should be performed by the exchange.
Indicates if the order is a Lean Order or a Standard (non lean) Order.
Definition: Enumerations.h:91
Identifier for subscription and retransmission of an ETI data stream.
Definition: Enumerations.h:30
Enum
Execution and trading restriction parameters supported by Eurex.
Enum
Indicates the auction type the trade originates from.
SRQS Deal Response Message.
Enum
Action for reaching risk limit.
Definition: Enumerations.h:997
This field qualifies an instrument type on Eurex.
Scope for Pre-Trade risk limits.
Enum
Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos...
Definition: Enumerations.h:551
Enum
Conveys the quote event type.
Enum
Type of Eurex ETI session.
Qualifier for field ExecutingTrader. It is required to distinguish between natural persons and Algos...
Definition: Enumerations.h:548
Enum
Quoting status for the executing party.
Status of Secondary ETI Gateway.
Type of Eurex ETI session.
SRQS Hit Quote Request Message.
Enum
Action that caused the event to occur.