OnixS C++ Eurex T7 Market and Reference Data (EMDI, MDI, RDI, EOBI) Handlers 18.2.0
API documentation
Loading...
Searching...
No Matches
InstrumentLeg.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
27
28namespace OnixS
29{
30 namespace Eurex
31 {
32 namespace MarketData
33 {
34
36 struct ONIXS_EUREX_EMDI_API LegSecurityType
37 {
38 enum Enum
39 {
42
45
48 };
49 };
50
52 struct ONIXS_EUREX_EMDI_API RelatedPriceType
53 {
54 enum Enum
55 {
58
60 Basis = 1,
61
64 };
65 };
66
68 class ONIXS_EUREX_EMDI_API InstrumentLeg : GroupInstance
69 {
70 public:
71
74 {
76 }
77
80 {
82 }
83
89
95
98 {
100 }
101
103 bool legPrice (Decimal& price) const
104 {
105 return get (Tags::LegPrice).toNumber (price);
106 }
107
109 bool relatedPrice (Decimal& price) const
110 {
111 return get (Tags::RelatedPrice).toNumber (price);
112 }
113
119
125
126
127 private:
128 friend class TypedGroup<InstrumentLeg>;
129
130 InstrumentLeg (const GroupInstance& groupInstance)
131 : GroupInstance (groupInstance)
132 {
133 }
134 };
135 }
136 }
137}
Decimal type for better precision.
Definition Numeric.h:66
UInt32 getUInt32(Tag tag) const
FieldValueRef get(Tag tag) const
GroupInstance(const GroupInstance &other)
Initializes instance as reference to the other one.
RelatedPriceType::Enum relatedPriceType() const
LegSide::Enum legSide() const
Buy or Sell code.
TradingStyle::Enum tradingStyle() const
UInt32 legRatioQty() const
The ratio of quantity for this individual leg relative to the entire multileg security.
bool relatedPrice(Decimal &price) const
UInt32 legSymbol() const
Product identifier of the leg security.
LegSecurityType::Enum legSecurityType() const
Type of leg security.
SecurityId legSecurityId() const
Instrument ID from Eurex Exchange’s new trading architecture.
bool legPrice(Decimal &price) const
Underlying price for the instrument leg (for VOLA strategies)
Enumeration::Enum getIntEnumFieldValue(const FieldSet &fieldSet, Tag tag)
Definition FieldSet.h:228
unsigned int UInt32
Definition Numeric.h:41
Int64 SecurityId
Alias for Security Id type.
Definition Defines.h:51
Enumeration::Enum getNonZeroIntEnumFieldValue(const FieldSet &fieldSet, Tag tag)
Definition FieldSet.h:235
Exposes list of available leg security types.
@ Undefined
Used to identify absence of value.
@ Undefined
Used to identify absence of value.