OnixS C++ Eurex T7 Market and Reference Data (EMDI, MDI, RDI, EOBI) Handlers  17.0.1
API documentation
TradeAtReferencePriceStatus.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 
28 
29 namespace OnixS
30 {
31  namespace Eurex
32  {
33  namespace MarketData
34  {
35 
36  /// Clearing price parameter for total return futures status message
37  class ONIXS_EUREX_EMDI_API TarpsClearingPriceParameter : GroupInstance
38  {
39  public:
40  /// Business date type
42  {
44  }
45 
46  /// Price constant defined on the instrument level and used for the clearing price conversion.
47  bool clearingPriceOffset (Decimal& value) const
48  {
49  return get (Tags::ClearingPriceOffset).toNumber (value);
50  }
51 
52  /// The previous day�s underlying index close value.
53  bool relatedClosePrice (Decimal& value) const
54  {
55  return get (Tags::RelatedClosePrice).toNumber (value);
56  }
57 
58  private:
60 
61  TarpsClearingPriceParameter (const GroupInstance& groupInstance)
62  : GroupInstance (groupInstance)
63  {
64  }
65  };
66 
67  class TarpsClearingPriceParameters : public TypedGroup<TarpsClearingPriceParameter>
68  {
69  private:
70  explicit
71  TarpsClearingPriceParameters (const Group& group)
73  {
74  }
75 
77  };
78 
79  /// Total return futures status message
80  class ONIXS_EUREX_EMDI_API TradeAtReferencePriceStatus : public Message
81  {
82  public:
83 
84  /// Product identifier.
86  {
87  return getUInt32 (Tags::MarketSegmentID);
88  }
89 
90  /// Instrument identifier.
92  {
93  return getInt64 (Tags::SecurityID);
94  }
95 
96  ///
98  {
99  return StringRef("M");
100  }
101 
102  /// Type of security.
104  {
105  return getIntEnumFieldValue<SecurityType> (*this, Tags::SecurityType);
106  }
107 
108  /// Clearing price parameters
110  {
112  }
113 
114  private:
115  friend class TradeAtReferencePriceStatusWrapper;
116 
117  TradeAtReferencePriceStatus (const void* impl)
118  : Message (impl)
119  {
120  }
121  };
122  }
123  }
124 }
SecurityId securityId() const
Instrument identifier.
bool clearingPriceOffset(Decimal &value) const
Price constant defined on the instrument level and used for the clearing price conversion.
const Tag ClearingPriceOffset
Definition: Tags.h:161
MarketSegmentId marketSegmentId() const
Product identifier.
Definition: Defines.h:30
Decimal type for better precision.
Definition: Numeric.h:63
const Tag NoClearingPriceParameters
Definition: Tags.h:159
Int64 SecurityId
Alias for Security Id type.
Definition: Defines.h:51
bool relatedClosePrice(Decimal &value) const
The previous day�s underlying index close value.
TarpsClearingPriceParameters clearingPriceParameters() const
Clearing price parameters.
SecurityType::Enum securityType() const
Type of security.
BusinessDayType::Enum businessDayType() const
Business date type.
Clearing price parameter for total return futures status message.
UInt32 MarketSegmentId
Alias for Market Segment ID type.
Definition: Defines.h:40