dxFeed Graal CXX API
|
Underlying event is a snapshot of computed values that are available for an option underlying symbol based on the option prices on the market. More...
#include <Underlying.hpp>
Public Types | |
using | Ptr = std::shared_ptr<Underlying> |
The alias to a type of shared pointer to the Underlying object. | |
using | Unique = std::unique_ptr<Underlying> |
The alias to a type of unique pointer to the Underlying object. | |
Public Types inherited from MarketEvent | |
using | Ptr = std::shared_ptr<MarketEvent> |
The alias to a type of shared pointer to the MarketEvent object. | |
Public Types inherited from EventTypeWithSymbol< std::string > | |
using | Ptr |
The alias to a type of shared pointer to the EventTypeWithSymbol's child object. | |
Public Types inherited from EventType | |
using | Ptr = std::shared_ptr<EventType> |
The alias to a type of shared pointer to the EventType object. | |
Public Types inherited from SharedEntity | |
using | Ptr = std::shared_ptr<SharedEntity> |
The alias to a type of shared pointer to the SharedEntity object. | |
Public Types inherited from TimeSeriesEvent | |
using | Ptr = std::shared_ptr<TimeSeriesEvent> |
The alias to a type of shared pointer to the TimeSeriesEvent object. | |
Public Types inherited from IndexedEvent | |
using | Ptr = std::shared_ptr<IndexedEvent> |
The alias to a type of shared pointer to the IndexedEvent object. | |
Public Types inherited from LastingEvent | |
using | Ptr = std::shared_ptr<LastingEvent> |
The alias to a type of shared pointer to the LastingEvent object. | |
Public Member Functions | |
void * | toGraal () const override |
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary). | |
Underlying () noexcept=default | |
Creates new underlying event with default values. | |
Underlying (std::string eventSymbol) noexcept | |
Creates new underlying event with the specified event symbol. | |
const IndexedEventSource & | getSource () const &noexcept override |
Returns the source identifier for this event, which is always DEFAULT for time-series events. | |
std::int32_t | getEventFlags () const noexcept override |
Returns transactional event flags. | |
EventFlagsMask | getEventFlagsMask () const noexcept override |
Returns transactional event flags. | |
void | setEventFlags (std::int32_t eventFlags) noexcept override |
Changes transactional event flags. | |
void | setEventFlags (const EventFlagsMask &eventFlags) noexcept override |
Changes transactional event flags. | |
std::int64_t | getIndex () const noexcept override |
Returns unique per-symbol index of this event. | |
void | setIndex (std::int64_t index) override |
Changes unique per-symbol index of this event. | |
std::int64_t | getTime () const noexcept override |
Returns timestamp of the event in milliseconds. | |
void | setTime (std::int64_t time) noexcept |
Changes timestamp of the event in milliseconds. | |
std::int32_t | getSequence () const noexcept |
Returns the sequence number of this event to distinguish events that have the same time. | |
void | setSequence (std::int32_t sequence) |
Changes sequence number of this event. | |
double | getVolatility () const noexcept |
Returns 30-day implied volatility for this underlying based on VIX methodology. | |
void | setVolatility (double volatility) noexcept |
Changes 30-day implied volatility for this underlying based on VIX methodology. | |
double | getFrontVolatility () const noexcept |
Returns front month implied volatility for this underlying based on VIX methodology. | |
void | setFrontVolatility (double frontVolatility) noexcept |
Changes front month implied volatility for this underlying based on VIX methodology. | |
double | getBackVolatility () const noexcept |
Returns back month implied volatility for this underlying based on VIX methodology. | |
void | setBackVolatility (double backVolatility) noexcept |
Changes back month implied volatility for this underlying based on VIX methodology. | |
double | getCallVolume () const noexcept |
Returns call options traded volume for a day. | |
void | setCallVolume (double callVolume) noexcept |
Changes call options traded volume for a day. | |
double | getPutVolume () const noexcept |
Returns put options traded volume for a day. | |
void | setPutVolume (double putVolume) noexcept |
Changes put options traded volume for a day. | |
double | getOptionVolume () const noexcept |
Returns options traded volume for a day. | |
double | getPutCallRatio () const noexcept |
Returns ratio of put options traded volume to call options traded volume for a day. | |
void | setPutCallRatio (double putCallRatio) noexcept |
Changes ratio of put options traded volume to call options traded volume for a day. | |
std::string | toString () const noexcept override |
Returns a string representation of the current object. | |
Public Member Functions inherited from MarketEvent | |
const std::string & | getEventSymbol () const &noexcept override |
Returns symbol of this event. | |
const std::optional< std::string > & | getEventSymbolOpt () const &noexcept override |
Returns symbol of this event. | |
void | setEventSymbol (const std::string &eventSymbol) noexcept override |
Changes symbol of this event. | |
std::int64_t | getEventTime () const noexcept override |
Returns time when event was created or zero when time is not available. | |
void | setEventTime (std::int64_t eventTime) noexcept override |
Changes event creation time. | |
Public Member Functions inherited from SharedEntity | |
template<typename T > | |
bool | is () const noexcept |
Checks that pointer to the current type could be converted to type T* In other words: whether type T belongs to the type hierarchy in which the current type resides. | |
template<typename T > | |
std::shared_ptr< T > | sharedAs () noexcept |
Returns a pointer to the current object wrapped in a smart pointer to type T. | |
template<typename T > | |
std::shared_ptr< T > | sharedAs () const noexcept |
Returns a pointer to the current object wrapped in a smart pointer to type T. | |
Public Member Functions inherited from Entity | |
virtual | ~Entity () noexcept=default |
The default virtual d-tor. | |
Public Member Functions inherited from TimeSeriesEvent | |
virtual std::int64_t | getEventId () const noexcept |
Returns unique per-symbol index of this event. | |
Static Public Member Functions | |
static Ptr | fromGraal (void *graalNative) |
Creates an object of the current type and fills it with data from the the dxFeed Graal SDK structure. | |
static void | freeGraal (void *graalNative) |
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary). | |
Static Public Attributes | |
static const EventTypeEnum & | TYPE = EventTypeEnum::UNDERLYING |
Type identifier and additional information about the current event class. | |
static constexpr std::uint32_t | MAX_SEQUENCE = (1U << 22U) - 1U |
Maximum allowed sequence value. | |
Static Public Attributes inherited from IndexedEvent | |
static const EventFlag | TX_PENDING = EventFlag::TX_PENDING |
0x01 - A bitmask to get transaction pending indicator from the value of eventFlags property. | |
static const EventFlag | REMOVE_EVENT = EventFlag::REMOVE_EVENT |
0x02 - A bitmask to get removal indicator from the value of eventFlags property. | |
static const EventFlag | SNAPSHOT_BEGIN = EventFlag::SNAPSHOT_BEGIN |
0x04 - A bitmask to get snapshot begin indicator from the value of eventFlags property. | |
static const EventFlag | SNAPSHOT_END = EventFlag::SNAPSHOT_END |
0x08 - A bitmask to get snapshot end indicator from the value of eventFlags property. | |
static const EventFlag | SNAPSHOT_SNIP = EventFlag::SNAPSHOT_SNIP |
0x10 - A bitmask to get snapshot snip indicator from the value of eventFlags property. | |
static const EventFlag | SNAPSHOT_MODE = EventFlag::SNAPSHOT_MODE |
0x40 - A bitmask to set snapshot mode indicator into the value of eventFlags property. | |
Additional Inherited Members | |
Protected Member Functions inherited from MarketEvent | |
MarketEvent (std::string eventSymbol) noexcept | |
Protected constructor for concrete implementation classes that initializes eventSymbol property. | |
Underlying event is a snapshot of computed values that are available for an option underlying symbol based on the option prices on the market.
It represents the most recent information that is available about the corresponding values on the market at any given moment of time.
Some Underlying sources provide a consistent view of the set of known Underlying events. The corresponding information is carried in eventFlags property. The logic behind this property is detailed in IndexedEvent class documentation. Multiple event sources for the same symbol are not supported for Underlying, thus source property is always DEFAULT.
TimeSeriesEventModel class handles all the snapshot and transaction logic and conveniently represents a list current of time-series events order by their time.
Publishing of Underlying events follows the general rules explained in TimeSeriesEvent class documentation.
This event is implemented on top of QDS record Underlying
.
|
inlineexplicitnoexcept |
Creates new underlying event with the specified event symbol.
eventSymbol | The event symbol. |
|
static |
Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).
graalNative | The pointer to the dxFeed Graal SDK structure. |
|
static |
Creates an object of the current type and fills it with data from the the dxFeed Graal SDK structure.
graalNative | The pointer to the dxFeed Graal SDK structure. |
std::invalid_argument |
|
inlinenoexcept |
Returns back month implied volatility for this underlying based on VIX methodology.
|
inlinenoexcept |
Returns call options traded volume for a day.
|
inlineoverridevirtualnoexcept |
Returns transactional event flags.
See EventFlag "Event Flags" section.
Implements IndexedEvent.
|
inlineoverridevirtualnoexcept |
Returns transactional event flags.
See EventFlag "Event Flags" section.
Implements IndexedEvent.
|
inlinenoexcept |
Returns front month implied volatility for this underlying based on VIX methodology.
|
inlineoverridevirtualnoexcept |
Returns unique per-symbol index of this event.
The index is composed of time and sequence. Changing either time or sequence changes event index.
Reimplemented from TimeSeriesEvent.
|
inlinenoexcept |
Returns options traded volume for a day.
|
inlinenoexcept |
Returns ratio of put options traded volume to call options traded volume for a day.
|
inlinenoexcept |
Returns put options traded volume for a day.
|
inlinenoexcept |
Returns the sequence number of this event to distinguish events that have the same time.
This sequence number does not have to be unique and does not need to be sequential. Sequence can range from 0 to MAX_SEQUENCE.
References MAX_SEQUENCE.
Referenced by setTime().
|
inlineoverridevirtualnoexcept |
Returns the source identifier for this event, which is always DEFAULT for time-series events.
Reimplemented from TimeSeriesEvent.
References IndexedEventSource::DEFAULT.
|
inlineoverridevirtualnoexcept |
Returns timestamp of the event in milliseconds.
Implements TimeSeriesEvent.
|
inlinenoexcept |
Returns 30-day implied volatility for this underlying based on VIX methodology.
|
inlinenoexcept |
Changes back month implied volatility for this underlying based on VIX methodology.
backVolatility | back month implied volatility for this underlying based on VIX methodology. |
|
inlinenoexcept |
Changes call options traded volume for a day.
callVolume | call options traded volume for a day. |
|
inlineoverridevirtualnoexcept |
Changes transactional event flags.
See EventFlag "Event Flags" section.
eventFlags | transactional event flags' mask. |
Implements IndexedEvent.
References EventFlagsMask::getMask().
|
inlineoverridevirtualnoexcept |
Changes transactional event flags.
See EventFlag "Event Flags" section.
eventFlags | transactional event flags. |
Implements IndexedEvent.
|
inlinenoexcept |
Changes front month implied volatility for this underlying based on VIX methodology.
frontVolatility | front month implied volatility for this underlying based on VIX methodology. |
|
inlineoverridevirtual |
Changes unique per-symbol index of this event.
The index is composed of time and sequence and invocation of this method changes time and sequence. Do not use this method directly. Change time and/or sequence.
index | the event index. |
Implements IndexedEvent.
|
inlinenoexcept |
Changes ratio of put options traded volume to call options traded volume for a day.
putCallRatio | ratio of put options traded volume to call options traded volume for a day. |
|
inlinenoexcept |
Changes put options traded volume for a day.
putVolume | put options traded volume for a day. |
|
inline |
Changes sequence number of this event.
sequence | the sequence. |
References MAX_SEQUENCE.
|
inlinenoexcept |
Changes timestamp of the event in milliseconds.
time | timestamp of the event in milliseconds. |
References getSequence().
|
inlinenoexcept |
Changes 30-day implied volatility for this underlying based on VIX methodology.
volatility | 30-day implied volatility for this underlying based on VIX methodology. |
|
overridevirtual |
Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
Fills the dxFeed Graal SDK structure's fields by the data of the current entity (recursively if necessary). Returns the pointer to the filled structure.
Implements EventType.
|
overridevirtualnoexcept |
Returns a string representation of the current object.
Reimplemented from EventType.
|
staticconstexpr |
Maximum allowed sequence value.
Referenced by getSequence(), and setSequence().