OnixS ICE iMpact Multicast Price Feed Handler C++ library 8.18.0
API documentation
Loading...
Searching...
No Matches
OptionsStrategyDefinition.h
Go to the documentation of this file.
1
5/*
6 * Copyright (c) Onix Solutions Limited. All rights reserved.
7 *
8 * This software owned by Onix Solutions Limited and is protected by copyright law
9 * and international copyright treaties.
10 *
11 * Access to and use of the software is governed by the terms of the applicable ONIXS Software
12 * Services Agreement (the Agreement) and Customer end user license agreements granting
13 * a non-assignable, non-transferable and non-exclusive license to use the software
14 * for it's own data processing purposes under the terms defined in the Agreement.
15 *
16 * Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
17 * of this source code or associated reference material to any other location for further reproduction
18 * or redistribution, and any amendments to this copyright notice, are expressly prohibited.
19 *
20 * Any reproduction or redistribution for sale or hiring of the Software not in accordance with
21 * the terms of the Agreement is a violation of copyright law.
22 */
23
24#pragma once
25
26#include "../Enumerations.h"
27#include "../Export.h"
28#include "../Optional.h"
29#include "../Time.h"
30#include "../Types.h"
31
32#include <iosfwd>
33#include <string>
34#include <vector>
35
36namespace OnixS { namespace ICE { namespace iMpact { namespace MarketData {
37
39struct ONIXS_ICEMDH_EXPORT OptionsStrategyDefinition
40{
42 enum
43 {
45 };
46
50
53
56
59
61 std::string contractSymbol;
62
65
68
71
74
76 int minQty;
77
81
85
88
90 std::string strategySymbol;
91
94
97
101
105
109
112
117
120
123
173
175 typedef std::vector<Leg> Legs;
176
179
181 struct ONIXS_ICEMDH_EXPORT Hedge
182 {
185
188
191
194
197
199 short delta;
200
206
209
211 std::string toString() const;
212 };
213
215 typedef std::vector<Hedge> Hedges;
216
219
221 struct ONIXS_ICEMDH_EXPORT BlockDetail
222 {
225
228
231 long long minQty;
232
235
237 std::string toString() const;
238 };
239
241 typedef std::vector<BlockDetail> BlockDetails;
242
245
249
252
256
259
263
267
270
272 OptionsStrategyDefinition(const char* data, std::size_t dataSize);
273
275 void deserialize(const char* data, std::size_t dataSize);
276
278 void reset();
279
281 std::string toString() const;
282};
283
285ONIXS_ICEMDH_EXPORT std::ostream& operator<<(std::ostream&, const OptionsStrategyDefinition&);
286
287}}}} // namespace OnixS::ICE::iMpact::MarketData
Declare ICE iMpact enumerations.
long long Price
Alias for order identifiers type.
Definition Types.h:54
short MarketType
Alias for market types.
Definition Types.h:36
std::ostream & operator<<(std::ostream &, const Error &)
Make it printable to formatted C++ I/O streams.
int MarketId
Alias for market identifiers type.
Definition Types.h:39
std::string toString() const
Returns string representation.
std::string toString() const
Returns string representation.
MarketId underlyingMarketId
Futures market id of the underlying futures market.
std::string toString() const
Returns string representation.
short ratio
Number of option contracts per increment quantity.
This class represents the Options Strategy Definition Message.
int incrementQty
Minimum increment quantity for this market.
MarketId underlyingMarketId
Unique identifier of the underlying market.
std::string toString() const
Returns string representation.
Optional< bool > overrideBlockMin
Indicates whether the Block Minimum can be overridden for the market.
std::string contractSymbol
See Naming Convention on Appendix D.
bool gtAllowed
Indicates if GTC is allowed in the market.
MarketType requestMarketType
See Appendix C for the list of market types and IDs.
int incrementPrice
Minimum increment premium price for this market.
bool legDealSuppressed
Indicates whether leg deals are suppressed.
int numOfMarkets
The number of options markets for the given market type.
std::vector< Leg > Legs
Alias for collection of Legs.
std::vector< Hedge > Hedges
Alias for collection of Hedges.
Optional< int > numOfCycles
Number of cycles (days, hours, MWh, etc) for a contract.
OptionsStrategyDefinition(const char *data, std::size_t dataSize)
Initialize from raw message data.
void deserialize(const char *data, std::size_t dataSize)
Deserialize from raw data.
TradingStatus::Enum tradingStatus
See Appendix A on trading status codes.
void reset()
Reset all fields to default values.
std::vector< BlockDetail > BlockDetails
Alias for collection of BlockDetails.
char orderPriceDenominator
Denominator for the order price fields in this market.