OnixS C++ eSpeed ITCH Market Data Handler 1.7.3
API documentation
Loading...
Searching...
No Matches
CombinationOrderBookDirectoryMsg.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
24
26
30 struct ONIXS_ESPEED_ITCH_API CombinationOrderBookDirectoryMsg : public IncomingMessage
31 {
33 UInt64 timestamp() const
34 {
35 return ordinary<UInt64>(1);
36 }
37
41 {
42 return ordinary<UInt32>(9);
43 }
44
46 StrRef symbol() const
48 {
49 return fixedStr<20>(13);
50 }
51
58
60 StrRef cusip() const
62 {
63 return fixedStr<9>(49);
64 }
65
67 UInt8 reserved1() const
68 {
69 return ordinaryRef<UInt8>(58);
70 }
71
78
85
88 UInt16 priceDecimals() const
89 {
90 return ordinary<UInt16>(61);
91 }
92
96 UInt16 yieldDecimals() const
97 {
98 return ordinary<UInt16>(63);
99 }
100
103 UInt32 quantityMultiplier() const
104 {
105 return ordinary<UInt32>(65);
106 }
107
111 {
112 return fixedStr<18>(69);
113 }
114
117 UInt8 numberOfLegs() const
118 {
119 return ordinaryRef<UInt8>(87);
120 }
121
125 {
126 return fixedStr<20>(88);
127 }
128
135
137 UInt16 leg1DV01() const
138 {
139 return ordinary<UInt16>(109);
140 }
141
143 UInt8 leg1Reserved() const
144 {
145 return ordinaryRef<UInt8>(111);
146 }
147
151 {
152 return fixedStr<20>(112);
153 }
154
161
163 UInt16 leg2DV01() const
164 {
165 return ordinary<UInt16>(133);
166 }
167
169 UInt8 leg2Reserved() const
170 {
171 return ordinaryRef<UInt8>(135);
172 }
173
176 UInt16 legRatio1() const
177 {
178 return ordinary<UInt16>(136);
179 }
180
184 {
185 return fixedStr<20>(138);
186 }
187
194
196 UInt16 leg3DV01() const
197 {
198 return ordinary<UInt16>(159);
199 }
200
202 UInt8 leg3Reserved() const
203 {
204 return ordinaryRef<UInt8>(161);
205 }
206
209 UInt16 legRatio2() const
210 {
211 return ordinary<UInt16>(162);
212 }
213
217 {
218 return ordinary<UInt16>(164);
219 }
220
224 {
225 return ordinary<UInt16>(166);
226 }
227
234
237 UInt32 minimumEntryQuantity() const
238 {
239 return ordinary<UInt32>(170);
240 }
241
245 {
246 return ordinary<UInt32>(174);
247 }
248
250 UInt64 priceTickSize() const
251 {
252 return ordinary<UInt64>(178);
253 }
254
258 {
259 return fixedStr<14>(186);
260 }
261
264
266 static void validateSize(MessageSize size)
267 {
268 if (ONIXS_ESPEED_ITCH_CHECK_EXPECT((size < messageSize_), false))
269 throwIncorrectSize("CombinationOrderBookDirectoryMsg", size, messageSize_);
270 }
271
275 : IncomingMessage(data, size)
276 {
277 }
278 };
279
281 ONIXS_ESPEED_ITCH_API void toStr(std::string&, const CombinationOrderBookDirectoryMsg&);
282
284 inline std::string toStr(const CombinationOrderBookDirectoryMsg& msg)
285 {
286 std::string str;
287 toStr(str, msg);
288 return str;
289 }
290
292 inline std::ostream& operator<<(std::ostream& stream, const CombinationOrderBookDirectoryMsg& msg)
293 {
294 stream << toStr(msg);
295 return stream;
296 }
297
ONIXS_ESPEED_ITCH_API void throwIncorrectSize(const std::string &messageName, MessageSize receivedSize, MessageSize expectedSize)
#define ONIXS_ESPEED_ITCH_NAMESPACE_BEGIN
Definition Bootstrap.h:27
#define ONIXS_ESPEED_ITCH_NAMESPACE_END
Definition Bootstrap.h:31
std::ostream & operator<<(std::ostream &stream, const CombinationOrderBookDirectoryMsg &msg)
ONIXS_ESPEED_ITCH_API void toStr(std::string &, const CombinationOrderBookDirectoryMsg &)
Serializes object into string.
#define ONIXS_ESPEED_ITCH_CONST_OR_CONSTEXPR
Definition Compiler.h:46
#define ONIXS_ESPEED_ITCH_NOTHROW
Definition Compiler.h:27
#define ONIXS_ESPEED_ITCH_CHECK_EXPECT(exp, c)
Definition Compiler.h:52
UInt32 OrderBookId
Alias for Security Id type.
Definition Defines.h:43
ONIXS_ESPEED_ITCH_NAMESPACE_BEGIN typedef UInt16 MessageSize
Aliases message length type.
Definition Defines.h:34
const FieldValue & ordinaryRef(BlockSize offset) const ONIXS_ESPEED_ITCH_NOTHROW
StrRef fixedStr(BlockSize offset) const ONIXS_ESPEED_ITCH_NOTHROW
FieldValue ordinary(BlockSize offset) const ONIXS_ESPEED_ITCH_NOTHROW
Enumeration::Enum enumeration(BlockSize offset) const ONIXS_ESPEED_ITCH_NOTHROW
IncomingMessage(const void *data, MessageSize size) ONIXS_ESPEED_ITCH_NOTHROW
Provides efficient way of accessing text-based FIX field values.
Definition String.h:41
LegSide::Enum leg1Side() const ONIXS_ESPEED_ITCH_NOTHROW
Leg 1 Side.
CombinationOrderBookDirectoryMsg(const void *data, MessageSize size) ONIXS_ESPEED_ITCH_NOTHROW
Initializes instance over given memory block.
StrRef leg3Symbol() const ONIXS_ESPEED_ITCH_NOTHROW
Leg 3 Symbol.
StrRef leg1Symbol() const ONIXS_ESPEED_ITCH_NOTHROW
Leg 1 Symbol.
TradingFeatures::Enum tradingFeatures() const ONIXS_ESPEED_ITCH_NOTHROW
Trading Features.
LegSide::Enum leg2Side() const ONIXS_ESPEED_ITCH_NOTHROW
Leg 2 Side.
UInt64 priceTickSize() const
The price tick for the instrument.
UInt16 leg2DV01() const
DV01 value of leg 2.
StrRef reserved2() const ONIXS_ESPEED_ITCH_NOTHROW
Reserved.
StrRef reserved3() const ONIXS_ESPEED_ITCH_NOTHROW
Reserved.
static void validateSize(MessageSize size)
Check the given size.
UInt16 leg1DV01() const
DV01 value of leg 1.
UInt16 leg3DV01() const
DV01 value of leg 3.
StrRef symbol() const ONIXS_ESPEED_ITCH_NOTHROW
UST security symbol in the NFI ATS (e.g. 10Y_UST)
ProductType::Enum productType() const ONIXS_ESPEED_ITCH_NOTHROW
Product type.
StrRef leg2Symbol() const ONIXS_ESPEED_ITCH_NOTHROW
Leg 2 Symbol.
StrRef securityDescription() const ONIXS_ESPEED_ITCH_NOTHROW
Instrument Description.
StrRef cusip() const ONIXS_ESPEED_ITCH_NOTHROW
CUSIP code identifying security.
LegSide::Enum leg3Side() const ONIXS_ESPEED_ITCH_NOTHROW
Leg 3 Side.
static ONIXS_ESPEED_ITCH_CONST_OR_CONSTEXPR MessageSize messageSize_
Total message size.
PriceType::Enum priceType() const ONIXS_ESPEED_ITCH_NOTHROW
Price type.