OnixS C++ Tradeweb Approved Publication Arrangement (APA) Handler  1.2.2.18
API documentation
QuoteReport.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 
29 
30 
31 namespace OnixS {
32 namespace Tradeweb {
33 namespace MarketData {
34 namespace Apa {
35 
36  /// Quote Report
37  struct QuoteReportMsg : public BinaryMessage
38  {
39  /// Identification of quote message types: Adding, updating or deleting quotes.
41  {
42  return enumeration<ActionType>(24);
43  }
44 
45  /// Code used to identify the financial instrument.
47  {
48  return fixedStr<128>(25);
49  }
50 
51  /// Submitting Party LEI or Venue MIC.
52  StrRef leiOrMic() const
53  {
54  return fixedStr<20>(153);
55  }
56 
57  /// Quote Enrichment Enumeration.
59  {
60  return ordinary<Integer1>(173);
61  }
62 
63  /// Quote Enrichment Enumeration.
65  {
66  return ordinary<Integer1>(174);
67  }
68 
69  /// Quote Enrichment Enumeration.
71  {
72  return ordinary<Integer1>(175);
73  }
74 
75  /// Quote Enrichment Enumeration.
77  {
78  return ordinary<Integer1>(176);
79  }
80 
81  /// Unique pre-trade quote identifier per day.
82  Integer8 pqId() const
83  {
84  return ordinary<Integer8>(177);
85  }
86 
87  ///
88  StrRef flag() const
89  {
90  return fixedStr<4>(185);
91  }
92 
93  /// Date and time when the quote message was generated
95  {
96  return ordinary<Integer8>(189);
97  }
98 
99  /// Currency in which the price is expressed
100  StrRef currency() const
101  {
102  return fixedStr<3>(197);
103  }
104 
105  /// Price of the one-sided quote.
106  Decimal price() const
107  {
108  return Decimal(ordinary<Double>(200));
109  }
110 
111  /// Price of a two-sided quote.
112  Decimal price2() const
113  {
114  return Decimal(ordinary<Double>(208));
115  }
116 
117  /// Size of the quote
118  Decimal size() const
119  {
120  return Decimal(ordinary<Double>(216));
121  }
122 
123  /// Reference price
125  {
126  return Decimal(ordinary<Double>(224));
127  }
128 
129  /// Date and Time when the quote expires
131  {
132  return ordinary<Integer8>(232);
133  }
134 
135  /// Package Identification code
137  {
138  return fixedStr<32>(240);
139  }
140 
141  /// Max number of trades that could be executed with the quote.
143  {
144  return ordinary<Integer4>(272);
145  }
146 
147  /// Generated by the publisher, unique for each quote
149  {
150  return ordinary<Integer8>(276);
151  }
152 
153  /// Sequence number of quote update message type, which is unique
154  Integer4 pqseq() const
155  {
156  return ordinary<Integer4>(284);
157  }
158 
159  /// Date and time when the transaction was published by a trading venue or APA
161  {
162  return ordinary<Integer8>(288);
163  }
164 
165  /// Date and time of the latest received quote message with Update or Delete action type
167  {
168  return ordinary<Integer8>(296);
169  }
170 
171  /// Initializes instance over given memory block.
172  QuoteReportMsg(const void* data, MessageSize size)
173  : BinaryMessage(data, size)
174  {
175  }
176  };
177 
178  /// Serializes object into string.
179  ONIXS_TRADEWEB_APA_API void toStr(std::string&, const QuoteReportMsg&);
180 
181  /// Serializes object into string.
182  inline std::string toStr(const QuoteReportMsg& msg)
183  {
184  std::string str;
185  toStr(str, msg);
186  return str;
187  }
188 
189 }
190 }
191 }
192 }
StrRef packageId() const
Package Identification code.
Definition: QuoteReport.h:136
Decimal size() const
Size of the quote.
Definition: QuoteReport.h:118
Integer8 pqId() const
Unique pre-trade quote identifier per day.
Definition: QuoteReport.h:82
Integer8 publicationId() const
Generated by the publisher, unique for each quote.
Definition: QuoteReport.h:148
Integer4 maxExecutableTrades() const
Max number of trades that could be executed with the quote.
Definition: QuoteReport.h:142
Integer1 quoteTier() const
Quote Enrichment Enumeration.
Definition: QuoteReport.h:70
Integer8 publicationTimeStamp() const
Date and time when the transaction was published by a trading venue or APA.
Definition: QuoteReport.h:160
Decimal referencePrice() const
Reference price.
Definition: QuoteReport.h:124
StrRef instrumentId() const
Code used to identify the financial instrument.
Definition: QuoteReport.h:46
StrRef currency() const
Currency in which the price is expressed.
Definition: QuoteReport.h:100
Integer1 quoteCollateral() const
Quote Enrichment Enumeration.
Definition: QuoteReport.h:64
StrRef leiOrMic() const
Submitting Party LEI or Venue MIC.
Definition: QuoteReport.h:52
ActionType::Enum actionType() const
Identification of quote message types: Adding, updating or deleting quotes.
Definition: QuoteReport.h:40
Decimal price() const
Price of the one-sided quote.
Definition: QuoteReport.h:106
QuoteReportMsg(const void *data, MessageSize size)
Initializes instance over given memory block.
Definition: QuoteReport.h:172
Integer8 quoteTimeStamp() const
Date and time when the quote message was generated.
Definition: QuoteReport.h:94
Decimal price2() const
Price of a two-sided quote.
Definition: QuoteReport.h:112
Encapsulates services for manipulating little endian encoded messages.
Integer2 MessageSize
Aliases message length type.
Provides efficient way of accessing text-based FIX field values.
Definition: String.h:43
Integer4 pqseq() const
Sequence number of quote update message type, which is unique.
Definition: QuoteReport.h:154
Integer1 quoteCSA() const
Quote Enrichment Enumeration.
Definition: QuoteReport.h:58
Integer8 latestTimeStamp() const
Date and time of the latest received quote message with Update or Delete action type.
Definition: QuoteReport.h:166
void toStr(std::string &str, const Decimal &value)
Definition: Decimal.h:251
Integer1 quoteOtherEnrichment() const
Quote Enrichment Enumeration.
Definition: QuoteReport.h:76
Integer8 quoteExpireTimeStamp() const
Date and Time when the quote expires.
Definition: QuoteReport.h:130