OnixS C++ MTS Bond Vision SDP Handler  1.1.0
API documentation
SMP.Classes.BV_RFCQ_BUY_SIDE_SUMMARY.h
Go to the documentation of this file.
1 #pragma once
2 /*
3 * Copyright Onix Solutions Limited [OnixS]. All rights reserved.
4 *
5 * This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
6 * and international copyright treaties.
7 *
8 * Access to and use of the software is governed by the terms of the applicable ONIXS Software
9 * Services Agreement (the Agreement) and Customer end user license agreements granting
10 * a non-assignable, non-transferable and non-exclusive license to use the software
11 * for it's own data processing purposes under the terms defined in the Agreement.
12 *
13 * Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
14 * of this source code or associated reference material to any other location for further reproduction
15 * or redistribution, and any amendments to this copyright notice, are expressly 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 
22 /*
23 --------------
24 GENERATED FILE
25 --------------
26 */
27 
28 
29 #include <string>
40 
41 
42 namespace OnixS {
43 namespace Mts {
44 namespace BondVision {
45 namespace SDP {
46 
47 
48 
49 ///
50 class ONIXS_MTS_BONDVISION_SDP_API BV_RFCQ_BUY_SIDE_SUMMARY : public Class
51 {
52 public:
54  legSummary(3)
55  , providerInfo(20)
56  , inventoryDepthBid(20)
57  , inventoryDepthAsk(20)
58  , iOIDepthBid(20)
59  , iOIDepthAsk(20)
60 
61  {
62  sellSideTraderName.reserve(12);
63  clientRfcqId.reserve(50);
64  comment.reserve(100);
65  userInfo1.reserve(200);
66  userInfo2.reserve(200);
67  }
68 
70 
71  /// Class id
72  virtual ClassId::Enum id() const
73  {
75  }
76 
77  /// Unique ID of the member to whom the RFCQ summary is addressed
79 
80  /// Unique ID of the trader of the Buy Side Member
82 
83  /// Message Info (Unique ID) of the Rfcq Request
85 
86  /// RFCQ Type (Outright, Switch, Butterfly, MultiLeg, ...)
88 
89  /// RFCQ Origin(From Scratch, From Single Dealer Page, From Inventory)
91 
92  /// Specifies if the RFCQ is sent to one and only provider.
94 
95  /// Specifies whether the RFCQ will be subject to pre-trade transparency
97 
98  /// Unique ID of the Voice Registration
100 
101  /// Unique ID of the Sell side member in case of RfcqOrigin equal to 'FromSingleDealerPage' or 'FromInventory'
103 
104  /// Number of seconds the RFCQ will be deferred (for Multileg RFCQ)
106 
107  /// Time at which the MultiLeg RFCQ will start
108  UInt64 dueInTimeout; // UTIME presentation
109 
110  /// Type of quantity calculation carried out by the Buy Side member
112 
113  /// Unique ID of the trading list of bonds
115 
116  /// Unique ID of the trading leg
118 
119  /// Number of quotes triggering auto-matching when best price matches IOI (for Outright RFCQ or Multileg RFCQ)
121 
122  /// If True, messages have been exchanged during the RFCQ among the Buy Side Member and one or more Sell Side Members.
124 
125  /// In case of accepted RFCQ, it the ID of the Sell Side Member with whom the deal has been made.
127 
128  /// Unique name of the trader of the Sell Side Member with whom the deal has been made.
129  std::string sellSideTraderName; // maxSize = 12
130 
131  /// Specifies the final status of the RFCQ
133 
134  /// Closing time of the RFCQ
135  UInt64 closingTime; // UTIME presentation
136 
137  /// Number of Sell Side Members to whom the RFCQ was addressed
139 
140  /// Number of Sell Side Members that took part in the RFCQ
142 
143  /// Client specific information
144  std::string clientRfcqId; // maxSize = 50
145 
146  /// Delay between the RFCQ creation time and the time at which the first quote was received
148 
149  /// In case of accepted RFCQ, it's the timestamp of the RFCQ book that contained the quote hit or lifted.
150  UInt64 bookTimestamp; // UTIME presentation
151 
152  /// Price cover value (only for Outright, Multileg and Double-sided RFCQs)
153  Double priceCoverValue; // DOUBLE presentation
154 
155  /// Proceeds cover value (only for Switch RFCQs) or Proceeds weighted yield cover value (only for Butterfly RFCQs)
156  Double proceedsCoverValue; // DOUBLE presentation
157 
158  /// Gross yield cover value (only for Switchg and Butterfly RFCQs)
159  Double grossYieldCoverValue; // DOUBLE presentation
160 
161  /// Duration weighted yield cover value (only for Butterfly RFCQs)
162  Double durWeightedYieldCoverValue; // DOUBLE presentation
163 
164  /// Only valid for Switch and Butterfly RFCQ
165  Double grossYieldSpread; // DOUBLE presentation
166 
167  /// Only valid for Switch (Proceeds Spread) and Butterfly RFCQ (Proceeds Weighted Spread)
168  Double proceedsSpread; // DOUBLE presentation
169 
170  /// Only valid for Butterfly RFCQ
171  Double riskWeightedYieldSpread; // DOUBLE presentation
172 
173  /// Trading List - Number of legs
175 
176  /// Leg summay information
177  static const size_t legSummarySize = 3;
178  std::vector<BV_RFCQ_BUY_SIDE_LEG_SUMMARY> legSummary;
179 
180  /// Provider information
181  static const size_t providerInfoSize = 20;
182  std::vector<BV_RFCQ_PROVIDER_INFO> providerInfo;
183 
184  /// Inventory Depth - bid side
185  static const size_t inventoryDepthBidSize = 20;
186  std::vector<BV_INVENTORY_TRADING_INFO> inventoryDepthBid;
187 
188  /// Inventory Depth - ask side
189  static const size_t inventoryDepthAskSize = 20;
190  std::vector<BV_INVENTORY_TRADING_INFO> inventoryDepthAsk;
191 
192  /// IOI trading info - bid side
193  static const size_t iOIDepthBidSize = 20;
194  std::vector<BV_IOI_TRADING_INFO> iOIDepthBid;
195 
196  /// IOI trading info - ask side
197  static const size_t iOIDepthAskSize = 20;
198  std::vector<BV_IOI_TRADING_INFO> iOIDepthAsk;
199 
200  /// Unique ID of the Buy Side Member Area Code
202 
203  /// Free text
204  std::string comment; // maxSize = 100
205 
206  /// Client free text
207  std::string userInfo1; // maxSize = 200
208 
209  /// Client free text
210  std::string userInfo2; // maxSize = 200
211 
212  /// Specifies if the RFCQ is automatically generated
214 
215 
216  ///
217  size_t deserialize(const void* buf, size_t inLen);
218 
219  /// Provides string presentation
220  virtual std::string toString () const;
221 
222  ///
223  virtual size_t serializationBufSize() const { return 53152; }
224 
225  ///
226  virtual BV_RFCQ_BUY_SIDE_SUMMARY* clone() const;
227 
228  virtual BV_RFCQ_BUY_SIDE_SUMMARY* clone(void*) const;
229 
230 private:
231  virtual size_t serialize(void* buf) const;
232 
233 };
234 
235 
236 }
237 }
238 }
239 }
UInt16 iOIMatchingQuotes
Number of quotes triggering auto-matching when best price matches IOI (for Outright RFCQ or Multileg ...
UInt64 bookTimestamp
In case of accepted RFCQ, it&#39;s the timestamp of the RFCQ book that contained the quote hit or lifted...
UInt32 delay
Delay between the RFCQ creation time and the time at which the first quote was received.
UInt32 sellSideMemberId
In case of accepted RFCQ, it the ID of the Sell Side Member with whom the deal has been made...
TI_RFCQ_QUANTITY_CALCULATION::Enum quantityCalculation
Type of quantity calculation carried out by the Buy Side member.
UInt16 participatingSellSideNr
Number of Sell Side Members that took part in the RFCQ.
TI_FLAG::Enum preAgreedFg
Specifies if the RFCQ is sent to one and only provider.
UInt16 areaCodeId
Unique ID of the Buy Side Member Area Code.
TI_RFCQ_REQUEST_STATUS::Enum finalStatus
Specifies the final status of the RFCQ.
UInt16 sellSideNr
Number of Sell Side Members to whom the RFCQ was addressed.
Double grossYieldCoverValue
Gross yield cover value (only for Switchg and Butterfly RFCQs)
UInt16 dueInTime
Number of seconds the RFCQ will be deferred (for Multileg RFCQ)
UInt32 buySideMemberId
Unique ID of the member to whom the RFCQ summary is addressed.
UInt64 dueInTimeout
Time at which the MultiLeg RFCQ will start.
Double priceCoverValue
Price cover value (only for Outright, Multileg and Double-sided RFCQs)
Double proceedsCoverValue
Proceeds cover value (only for Switch RFCQs) or Proceeds weighted yield cover value (only for Butterf...
TI_FLAG::Enum preTradeFg
Specifies whether the RFCQ will be subject to pre-trade transparency.
TI_FLAG::Enum msgFg
If True, messages have been exchanged during the RFCQ among the Buy Side Member and one or more Sell ...
TI_FLAG::Enum autoExecutionFg
Specifies if the RFCQ is automatically generated.
UInt32 buySideTraderId
Unique ID of the trader of the Buy Side Member.
Double durWeightedYieldCoverValue
Duration weighted yield cover value (only for Butterfly RFCQs)
std::string sellSideTraderName
Unique name of the trader of the Sell Side Member with whom the deal has been made.
Double grossYieldSpread
Only valid for Switch and Butterfly RFCQ.
TI_RFCQ_ORIGIN::Enum rfcqOrigin
RFCQ Origin(From Scratch, From Single Dealer Page, From Inventory)
UInt32 originSellSideMemberId
Unique ID of the Sell side member in case of RfcqOrigin equal to &#39;FromSingleDealerPage&#39; or &#39;FromInven...
TI_MSG_INFO rfcqReqMsgInfo
Message Info (Unique ID) of the Rfcq Request.
Double proceedsSpread
Only valid for Switch (Proceeds Spread) and Butterfly RFCQ (Proceeds Weighted Spread) ...
unsigned long long UInt64
Definition: Defines.h:47
unsigned short UInt16
Definition: Defines.h:45
TI_RFCQ_TYPE::Enum rfcqType
RFCQ Type (Outright, Switch, Butterfly, MultiLeg, ...)