OnixS C++ CBOE CFE Binary Order Entry (BOE) Handler  1.11.0
API documentation
OrderAcknowledgement.h
Go to the documentation of this file.
1 /*
2 * Copyright Onix Solutions Limited [OnixS]. All rights reserved.
3 *
4 * This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
5 * and international copyright treaties.
6 *
7 * Access to and use of the software is governed by the terms of the applicable ONIXS Software
8 * Services Agreement (the Agreement) and Customer end user license agreements granting
9 * a non-assignable, non-transferable and non-exclusive license to use the software
10 * for it's own data processing purposes under the terms defined in the Agreement.
11 *
12 * Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
13 * of this source code or associated reference material to any other location for further reproduction
14 * or redistribution, and any amendments to this copyright notice, are expressly prohibited.
15 *
16 * Any reproduction or redistribution for sale or hiring of the Software not in accordance with
17 * the terms of the Agreement is a violation of copyright law.
18 */
19 
20 #pragma once
21 
22 #include <vector>
23 
28 
29 
30 namespace OnixS {
31 namespace CboeCFE {
32 namespace Trading {
33 namespace BOE {
34 
35  /// Order Acknowledgement messages are sent in response to a New Order message.
36  struct ONIXS_CBOE_CFE_BOE_API OrderAcknowledgement : public BinaryMessage
37  {
38  /// The time the event occurred in the CFE Matching Engine (not the time the message was sent).
40  {
41  return ordinary<DateTime>(0);
42  }
43 
44  /// Echoed back from the TPH message.
45  StrRef clOrdId() const
46  {
47  return fixedStr<20>(8);
48  }
49 
50  /// Order identifier supplied by CFE.
51  Binary8 orderId() const
52  {
53  return ordinary<Binary8>(28);
54  }
55 
56  /// Echoed back from the TPH message
57  StrRef side() const
58  {
59  return fixedStr<1>(36);
60  }
61 
62  /// Echoed back from the TPH message
64  {
65  return ordinary<BinaryPrice>(37);
66  }
67 
68  /// Echoed back from the TPH message
70  {
71  return enumeration<OrdType>(45);
72  }
73 
74  /// Echoed back from the TPH message
76  {
77  return enumeration<TimeInForce>(46);
78  }
79 
80  /// Echoed back from the TPH message
81  Binary4 minQty() const
82  {
83  return ordinary<Binary4>(47);
84  }
85 
86  /// Echoed back from the TPH message
87  StrRef symbol() const
88  {
89  return fixedStr<8>(51);
90  }
91 
92  /// Echoed back from the TPH message
94  {
95  return enumeration<Capacity>(59);
96  }
97 
98  /// Echoed back from the TPH message
99  StrRef account() const
100  {
101  return fixedStr<16>(60);
102  }
103 
104  /// Echoed back from the TPH message
106  {
107  return fixedStr<4>(76);
108  }
109 
110  /// Echoed back from the TPH message
112  {
113  return fixedStr<4>(80);
114  }
115 
116  /// Echoed back from the TPH message
118  {
119  return ordinary<Binary4>(84);
120  }
121 
122  /// Echoed back from the TPH message
124  {
125  return fixedStr<3>(88);
126  }
127 
128  /// Echoed back from the TPH message
130  {
131  return ordinary<Date>(91);
132  }
133 
134  /// Echoed back from the TPH message
136  {
137  return enumeration<OpenClose>(95);
138  }
139 
140  /// Quantity still open for further execution. If zero, the order is complete.
142  {
143  return ordinary<Binary4>(96);
144  }
145 
146  /// Indicates whether the trade added or removed liquidity.
148  {
149  return enumeration<BaseLiquidityIndicator>(100);
150  }
151 
152  /// Echoed back from the TPH message
154  {
155  return ordinary<DateTime>(101);
156  }
157 
158  /// Additional information about the liquidity of an order.
160  {
161  return enumeration<SubLiquidityIndicator>(109);
162  }
163 
164  /// Echoed back from the TPH message
166  {
167  return ordinary<BinaryPrice>(110);
168  }
169 
170  /// Echoed back from the TPH message
172  {
173  return ordinary<Binary4>(118);
174  }
175 
176  /// Echoed back from the TPH message
178  {
179  return enumeration<CtiCode>(122);
180  }
181 
182  /// Echoed back from the TPH message
184  {
185  return enumeration<ManualOrderIndicator>(123);
186  }
187 
188  /// Echoed back from the TPH message
189  StrRef oEOID() const
190  {
191  return fixedStr<18>(124);
192  }
193 
194  /// Echoed back from the TPH message
195  Binary4 cumQty() const
196  {
197  return ordinary<Binary4>(142);
198  }
199 
200  /// Echoed back from the TPH message
202  {
203  return fixedStr<6>(146);
204  }
205 
206  /// Echoed back from the TPH message
208  {
209  return enumeration<CustOrderHandlingInst>(152);
210  }
211 
212  /// The earliest timestamp, populated with nanosecond precision, recorded by CFE of the corresponding inbound message being acknowledged.
214  {
215  return ordinary<DateTime>(153);
216  }
217 
218  /// Initializes instance over given memory block.
219  OrderAcknowledgement(const void* data, MessageSize size)
220  : BinaryMessage(data, size)
221  {
222  }
223  };
224 
225  /// Serializes object into string.
226  ONIXS_CBOE_CFE_BOE_API void toStr(std::string&, const OrderAcknowledgement&);
227 
228  /// Serializes object into string.
229  inline std::string toStr(const OrderAcknowledgement& msg)
230  {
231  std::string str;
232  toStr(str, msg);
233  return str;
234  }
235 
236 }
237 }
238 }
239 }
Date maturityDate() const
Echoed back from the TPH message.
SubLiquidityIndicator::Enum subLiquidityIndicator() const
Additional information about the liquidity of an order.
StrRef symbol() const
Echoed back from the TPH message.
BaseLiquidityIndicator::Enum baseLiquidityIndicator() const
Indicates whether the trade added or removed liquidity.
OrderAcknowledgement(const void *data, MessageSize size)
Initializes instance over given memory block.
Provides efficient way of accessing text-based field values.
Definition: String.h:45
StrRef oEOID() const
Echoed back from the TPH message.
StrRef side() const
Echoed back from the TPH message.
Encapsulates services for manipulating little endian encoded messages.
StrRef account() const
Echoed back from the TPH message.
StrRef clearingAccount() const
Echoed back from the TPH message.
Order Acknowledgement messages are sent in response to a New Order message.
OpenClose::Enum openClose() const
Echoed back from the TPH message.
OrdType::Enum ordType() const
Echoed back from the TPH message.
CustOrderHandlingInst::Enum custOrderHandlingInst() const
Echoed back from the TPH message.
Binary4 cMTANumber() const
Echoed back from the TPH message.
ManualOrderIndicator::Enum manualOrderIndicator() const
Echoed back from the TPH message.
Binary4 orderQty() const
Echoed back from the TPH message.
void toStr(std::string &str, const FixedPointDecimal< Mantissa, Exponent > &number)
Serializes fixed-point decimal into a string.
Definition: Decimal.h:156
Binary8 orderId() const
Order identifier supplied by CFE.
Binary2 MessageSize
Aliases message length type.
Binary4 cumQty() const
Echoed back from the TPH message.
StrRef clOrdId() const
Echoed back from the TPH message.
TimeInForce::Enum timeInForce() const
Echoed back from the TPH message.
DateTime transactionTime() const
The time the event occurred in the CFE Matching Engine (not the time the message was sent)...
Binary4 leavesQty() const
Quantity still open for further execution. If zero, the order is complete.
StrRef preventMatch() const
Echoed back from the TPH message.
StrRef frequentTraderId() const
Echoed back from the TPH message.
Binary4 minQty() const
Echoed back from the TPH message.
Capacity::Enum capacity() const
Echoed back from the TPH message.
StrRef clearingFirm() const
Echoed back from the TPH message.
CtiCode::Enum ctiCode() const
Echoed back from the TPH message.
DateTime requestReceivedTime() const
The earliest timestamp, populated with nanosecond precision, recorded by CFE of the corresponding inb...
BinaryPrice stopPx() const
Echoed back from the TPH message.
BinaryPrice price() const
Echoed back from the TPH message.
DateTime expireTime() const
Echoed back from the TPH message.