dxFeed Graal CXX API
Loading...
Searching...
No Matches
OtcMarketsOrder Class Referencefinal

Represents an extension of Order for the symbols traded on the OTC Markets. More...

#include <OtcMarketsOrder.hpp>

+ Inheritance diagram for OtcMarketsOrder:

Public Types

using Ptr = std::shared_ptr<OtcMarketsOrder>
 The alias to a type of shared pointer to the OtcMarketsOrder object.
 
using Unique = std::unique_ptr<OtcMarketsOrder>
 The alias to a type of unique pointer to the OtcMarketsOrder object.
 
- Public Types inherited from Order
using Ptr = std::shared_ptr<Order>
 The alias to a type of shared pointer to the Order object.
 
using Unique = std::unique_ptr<Order>
 The alias to a type of unique pointer to the Order 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 IndexedEvent
using Ptr = std::shared_ptr<IndexedEvent>
 The alias to a type of shared pointer to the IndexedEvent object.
 

Public Member Functions

void * toGraal () const override
 Allocates memory for the dxFeed Graal SDK structure (recursively if necessary).
 
 OtcMarketsOrder () noexcept=default
 Creates new OTC Markets order event with default values.
 
 OtcMarketsOrder (std::string eventSymbol) noexcept
 Creates new OTC Markets order event with the specified event symbol.
 
OtcMarketsOrderwithEventSymbol (const std::string &eventSymbol) noexcept override
 Changes event's symbol and returns the current OTC Markets order.
 
OtcMarketsOrderwithEventTime (std::int64_t eventTime) noexcept
 Changes event's creation time and returns the current OTC Markets order.
 
OtcMarketsOrderwithSource (const OrderSource &source) noexcept
 Changes event's source and returns the current OTC Markets order.
 
OtcMarketsOrderwithEventFlags (std::int32_t eventFlags) noexcept
 Changes transactional event flags and returns the current OTC Markets order.
 
OtcMarketsOrderwithEventFlags (const EventFlagsMask &eventFlags) noexcept
 Changes transactional event flags and returns the current OTC Markets order.
 
OtcMarketsOrderwithIndex (std::int64_t index) noexcept
 Changes unique per-symbol index of this OTC Markets order and returns it.
 
OtcMarketsOrderwithTime (std::int64_t time) noexcept
 Changes time of this OTC Markets order and returns it.
 
OtcMarketsOrderwithTimeNanoPart (std::int32_t timeNanoPart) noexcept
 Changes microseconds and nanoseconds time part of this OTC Markets order.
 
OtcMarketsOrderwithSequence (std::int32_t sequence) noexcept
 Changes sequence number of this OTC Markets order.
 
OtcMarketsOrderwithTimeNanos (std::int64_t timeNanos) noexcept
 Changes time of this OTC Markets order and returns it.
 
OtcMarketsOrderwithAction (const OrderAction &action) noexcept
 Changes action of this OTC Markets order and returns it.
 
OtcMarketsOrderwithActionTime (std::int64_t actionTime) noexcept
 Changes time of the last action and returns current OTC Markets order.
 
OtcMarketsOrderwithOrderId (std::int64_t orderId) noexcept
 Changes order ID.
 
OtcMarketsOrderwithAuxOrderId (std::int64_t auxOrderId) noexcept
 Changes auxiliary order ID.
 
OtcMarketsOrderwithPrice (double price) noexcept
 Changes price of this OTC Markets order.
 
OtcMarketsOrderwithSize (double size) noexcept
 Changes size of this OTC Markets order.
 
OtcMarketsOrderwithExecutedSize (double executedSize) noexcept
 Changes executed size of this OTC Markets order.
 
OtcMarketsOrderwithCount (std::int64_t count) noexcept
 Changes number of individual orders in this aggregate order.
 
OtcMarketsOrderwithTradeId (std::int64_t tradeId) noexcept
 Changes trade ID.
 
OtcMarketsOrderwithTradePrice (double tradePrice) noexcept
 Changes trade price.
 
OtcMarketsOrderwithTradeSize (double tradeSize) noexcept
 Changes trade size.
 
OtcMarketsOrderwithExchangeCode (char exchangeCode) noexcept
 Changes exchange code of this OTC Markets order.
 
OtcMarketsOrderwithExchangeCode (std::int16_t exchangeCode) noexcept
 Changes exchange code of this OTC Markets order.
 
OtcMarketsOrderwithOrderSide (const Side &side) noexcept
 Changes side of this OTC Markets order.
 
OtcMarketsOrderwithScope (const Scope &scope) noexcept
 Changes scope of this OTC Markets order.
 
OtcMarketsOrderwithMarketMaker (std::string marketMaker) noexcept
 Changes market maker or other aggregate identifier of this OTC Markets order.
 
std::int32_t getQuoteAccessPayment () const noexcept
 Returns Quote Access Payment (QAP) of this OTC Markets order.
 
void setQuoteAccessPayment (std::int32_t quoteAccessPayment) noexcept
 Changes Quote Access Payment (QAP) of this OTC Markets order.
 
OtcMarketsOrderwithQuoteAccessPayment (std::int32_t quoteAccessPayment) noexcept
 Changes Quote Access Payment (QAP) and returns the current OTC Markets order.
 
bool isOpen () const noexcept
 Returns whether this event is available for business within the operating hours of the OTC Link system.
 
void setOpen (bool open) noexcept
 Changes whether this event is available for business within the operating hours of the OTC Link system.
 
OtcMarketsOrderwithOpen (bool open) noexcept
 Changes whether this event is available for business within the operating hours of the OTC Link system.
 
bool isUnsolicited () const noexcept
 Returns whether this event is unsolicited.
 
void setUnsolicited (bool unsolicited) noexcept
 Changes whether this event is unsolicited.
 
OtcMarketsOrderwithUnsolicited (bool unsolicited) noexcept
 Changes whether this event is unsolicited.
 
const OtcMarketsPriceTypegetOtcMarketsPriceType () const &noexcept
 Returns OTC Markets price type of this OTC Markets order events.
 
void setOtcMarketsPriceType (const OtcMarketsPriceType &otcPriceType) noexcept
 Changes OTC Markets price type of this OTC Markets order events.
 
OtcMarketsOrderwithOtcMarketsPriceType (const OtcMarketsPriceType &otcPriceType) noexcept
 Changes OTC Markets price type of this OTC Markets order events.
 
bool isSaturated () const noexcept
 Returns whether this event should NOT be considered for the inside price.
 
void setSaturated (bool saturated) noexcept
 Changes whether this event should NOT be considered for the inside price.
 
OtcMarketsOrderwithSaturated (bool saturated) noexcept
 Changes whether this event should NOT be considered for the inside price.
 
bool isAutoExecution () const noexcept
 Returns whether this event is in 'AutoEx' mode.
 
void setAutoExecution (bool autoExecution) noexcept
 Changes whether this event is in 'AutoEx' mode.
 
OtcMarketsOrderwithAutoExecution (bool autoExecution) noexcept
 Changes whether this event is in 'AutoEx' mode.
 
bool isNmsConditional () const noexcept
 Returns whether this event represents a NMS conditional.
 
void setNmsConditional (bool nmsConditional) noexcept
 Changes whether this event represents a NMS conditional.
 
OtcMarketsOrderwithNmsConditional (bool nmsConditional) noexcept
 Changes whether this event represents a NMS conditional.
 
std::string toString () const noexcept override
 Returns a string representation of the current object.
 
- Public Member Functions inherited from Order
 Order () noexcept=default
 Creates new order event with default values.
 
 Order (std::string eventSymbol) noexcept
 Creates new order event with the specified event symbol.
 
OrderwithEventTime (std::int64_t eventTime) noexcept
 Changes event's creation time and returns the current order.
 
OrderwithSource (const OrderSource &source) noexcept
 Changes event's source and returns the current order.
 
OrderwithEventFlags (std::int32_t eventFlags) noexcept
 Changes transactional event flags and returns the current order.
 
OrderwithEventFlags (const EventFlagsMask &eventFlags) noexcept
 Changes transactional event flags and returns the current order.
 
OrderwithIndex (std::int64_t index) noexcept
 Changes unique per-symbol index of this order and returns it.
 
OrderwithTime (std::int64_t time) noexcept
 Changes time of this order and returns it.
 
OrderwithTimeNanoPart (std::int32_t timeNanoPart) noexcept
 Changes microseconds and nanoseconds time part of this order.
 
OrderwithSequence (std::int32_t sequence) noexcept
 Changes sequence number of this order.
 
OrderwithTimeNanos (std::int64_t timeNanos) noexcept
 Changes time of this order and returns it.
 
OrderwithAction (const OrderAction &action) noexcept
 Changes action of this order and returns it.
 
OrderwithActionTime (std::int64_t actionTime) noexcept
 Changes time of the last action and returns current order.
 
OrderwithOrderId (std::int64_t orderId) noexcept
 Changes order ID.
 
OrderwithAuxOrderId (std::int64_t auxOrderId) noexcept
 Changes auxiliary order ID.
 
OrderwithPrice (double price) noexcept
 Changes price of this order.
 
OrderwithSize (double size) noexcept
 Changes size of this order.
 
OrderwithExecutedSize (double executedSize) noexcept
 Changes executed size of this order.
 
OrderwithCount (std::int64_t count) noexcept
 Changes number of individual orders in this aggregate order.
 
OrderwithTradeId (std::int64_t tradeId) noexcept
 Changes trade ID.
 
OrderwithTradePrice (double tradePrice) noexcept
 Changes trade price.
 
OrderwithTradeSize (double tradeSize) noexcept
 Changes trade size.
 
OrderwithExchangeCode (char exchangeCode) noexcept
 Changes exchange code of this order.
 
OrderwithExchangeCode (std::int16_t exchangeCode) noexcept
 Changes exchange code of this order.
 
OrderwithOrderSide (const Side &side) noexcept
 Changes side of this order.
 
OrderwithScope (const Scope &scope) noexcept
 Changes scope of this order.
 
const std::string & getMarketMaker () const &noexcept
 Returns market maker or other aggregate identifier of this order.
 
const std::optional< std::string > & getMarketMakerOpt () const &noexcept
 Returns market maker or other aggregate identifier of this order.
 
void setMarketMaker (std::string marketMaker) noexcept
 Changes market maker or other aggregate identifier of this order.
 
OrderwithMarketMaker (std::string marketMaker) noexcept
 Changes market maker or other aggregate identifier of this order.
 
- Public Member Functions inherited from OrderBase
 OrderBase () noexcept=default
 Creates new order event with default values.
 
 OrderBase (std::string eventSymbol) noexcept
 Creates new order event with the specified event symbol.
 
const OrderSourcegetSource () const &noexcept override
 Returns source of this event.
 
void setSource (const OrderSource &source) noexcept
 Changes source of this event.
 
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.
 
void setIndex (std::int64_t index) override
 Changes unique per-symbol index of this order.
 
std::int64_t getIndex () const noexcept override
 Returns unique per-symbol index of this order.
 
std::int64_t getTimeSequence () const noexcept
 Returns time and sequence of this order packaged into single long value.
 
void setTimeSequence (std::int64_t timeSequence) noexcept
 Changes time and sequence of this order.
 
std::int64_t getTime () const noexcept
 Returns time of this order.
 
void setTime (std::int64_t time) noexcept
 Changes time of this order.
 
void setTimeNanoPart (std::int32_t timeNanoPart) noexcept
 Changes microseconds and nanoseconds time part of this order.
 
std::int32_t getTimeNanoPart () const noexcept
 Returns microseconds and nanoseconds time part of this order.
 
std::int32_t getSequence () const noexcept
 Returns sequence number of this order to distinguish orders that have the same time.
 
void setSequence (std::int32_t sequence)
 Changes sequence number of this order.
 
std::int64_t getTimeNanos () const noexcept
 Returns time of this order in nanoseconds.
 
void setTimeNanos (std::int64_t timeNanos) noexcept
 Changes time of this order.
 
const OrderActiongetAction () const &noexcept
 Returns order action if available, otherwise - OrderAction::UNDEFINED.
 
void setAction (const OrderAction &action) noexcept
 Changes action of this order.
 
std::int64_t getActionTime () const noexcept
 Returns time of the last action.
 
void setActionTime (std::int64_t actionTime) noexcept
 Changes time of the last action.
 
std::int64_t getOrderId () const noexcept
 Returns order ID if available.
 
void setOrderId (std::int64_t orderId) noexcept
 Changes order ID.
 
std::int64_t getAuxOrderId () const noexcept
 Returns auxiliary order ID if available:
 
void setAuxOrderId (std::int64_t auxOrderId) noexcept
 Changes auxiliary order ID.
 
double getPrice () const noexcept
 Returns price of this order.
 
void setPrice (double price) noexcept
 Changes price of this order.
 
double getSize () const noexcept
 Returns size of this order.
 
void setSize (double size) noexcept
 Changes size of this order.
 
bool hasSize () const noexcept
 Returns true if this order has some size (sizeAsDouble is neither 0 nor NaN).
 
double getExecutedSize () const noexcept
 Returns executed size of this order.
 
void setExecutedSize (double executedSize) noexcept
 Changes executed size of this order.
 
std::int64_t getCount () const noexcept
 Returns number of individual orders in this aggregate order.
 
void setCount (std::int64_t count) noexcept
 Changes number of individual orders in this aggregate order.
 
std::int64_t getTradeId () const noexcept
 Returns trade (order execution) ID for events containing trade-related action.
 
void setTradeId (std::int64_t tradeId) noexcept
 Changes trade ID.
 
double getTradePrice () const noexcept
 Returns trade price for events containing trade-related action.
 
void setTradePrice (double tradePrice) noexcept
 Changes trade price.
 
double getTradeSize () const noexcept
 Returns trade size for events containing trade-related action.
 
void setTradeSize (double tradeSize) noexcept
 Changes trade size.
 
std::int16_t getExchangeCode () const noexcept
 Returns exchange code of this order.
 
std::string getExchangeCodeString () const noexcept
 Returns exchange code of this order as UTF8 string.
 
void setExchangeCode (char exchangeCode)
 Changes exchange code of this order.
 
void setExchangeCode (std::int16_t exchangeCode) noexcept
 Changes exchange code of this order.
 
const SidegetOrderSide () const &noexcept
 Returns side of this order.
 
void setOrderSide (const Side &side) noexcept
 Changes side of this order.
 
const ScopegetScope () const &noexcept
 Returns scope of this order.
 
void setScope (const Scope &scope) noexcept
 Changes scope of this order.
 
std::string baseFieldsToString () const noexcept
 Returns string representation of this order event's fields.
 
- 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.
 

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 Member Functions inherited from Order
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 EventTypeEnumTYPE = EventTypeEnum::OTC_MARKETS_ORDER
 Type identifier and additional information about the current event class.
 
- Static Public Attributes inherited from Order
static const EventTypeEnumTYPE = EventTypeEnum::ORDER
 Type identifier and additional information about the current event class.
 
- Static Public Attributes inherited from OrderBase
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.
 

Detailed Description

Represents an extension of Order for the symbols traded on the OTC Markets.

It includes the OTC Markets specific quote data, such as Quote Access Payment (QAP) value, Quote Price Type, Open/Closed status, and Unsolicited quote indicator. The original event (OTC Quote) published by the exchange is presented in the form of two separate OTCMarketsOrder events (bid and ask side). Note that the description of the fields (e.g. QAP) uses the original "quote" term.

For more information about original fields, QAP, Quote Flags and Extended Quote Flags, see OTC Markets Multicast Data Feed.

For more information about display requirements, see OTC Markets Display Requirements.

Like regular orders, OTC Markets order events arrive from multiple sources for the same market symbol and are distinguished by their index. It is unique across all the sources of depth information for the symbol. The event with size either 0 or NaN is a signal to remove previously received order for the corresponding index. The method hasSize() is a convenient method to test for size presence.

Quote Flags

Quote Flags from OTC Markets are mapped to the access methods of this class as follows:

Extended Quote Flags

Extended Quote Flags from OTC Markets are mapped to the access methods of this class as follows:

Event flags, transactions and snapshots

OTC Markets order event sources provide a consistent view of the order book. Their updates may incorporate multiple changes to individual orders that have to be processed at the same time. The corresponding information is carried in eventFlags property.

See the "Event Flags" section of OrderBase class documentation for details.

Publishing order books

When publishing an order event with DXPublisher::publishEvents() method, least significant 32 bits of order index must be in a range of from 0 to std::numeric_limits<std::int32_t>::max() inclusive. Use setSource() method after setIndex() to properly include source identifier into the index.

A snapshot has to be published in the descending order of index, starting with an event with the largest index and marking it with EventFlag::SNAPSHOT_BEGIN bit in eventFlags, and finishing the snapshot with an event that has zero 32 least significant bits of index. EventFlag::SNAPSHOT_END bit in eventFlags is optional during publishing. It will be properly set on receiving end anyway.

Limitations

This event type cannot be used with DXFeed::getLastEvent() method.

Full Order Book Support

Some feeds provide support for "Full Order Book" (FOB) where additional fields will be available:

Implementation details

This event is implemented on top of QDS records OtcMarketsOrder#<source-id>, where <source-id> is up to 4 ASCII characters with a mnemonic for the source like "pink".

Constructor & Destructor Documentation

◆ OtcMarketsOrder()

OtcMarketsOrder::OtcMarketsOrder ( std::string eventSymbol)
inlineexplicitnoexcept

Creates new OTC Markets order event with the specified event symbol.

Parameters
eventSymbolThe event symbol.

Member Function Documentation

◆ freeGraal()

void OtcMarketsOrder::freeGraal ( void * graalNative)
static

Releases the memory occupied by the dxFeed Graal SDK structure (recursively if necessary).

Parameters
graalNativeThe pointer to the dxFeed Graal SDK structure.

◆ fromGraal()

OtcMarketsOrder::Ptr OtcMarketsOrder::fromGraal ( void * graalNative)
static

Creates an object of the current type and fills it with data from the the dxFeed Graal SDK structure.

Parameters
graalNativeThe pointer to the dxFeed Graal SDK structure.
Returns
The object of current type.
Exceptions
std::invalid_argument

◆ getOtcMarketsPriceType()

const OtcMarketsPriceType & OtcMarketsOrder::getOtcMarketsPriceType ( ) const &
inlinenoexcept

Returns OTC Markets price type of this OTC Markets order events.

Returns
OTC Markets price type of this OTC Markets order events.

◆ getQuoteAccessPayment()

std::int32_t OtcMarketsOrder::getQuoteAccessPayment ( ) const
inlinenoexcept

Returns Quote Access Payment (QAP) of this OTC Markets order.

QAP functionality allows participants to dynamically set access fees or rebates, in real-time and on a per-security basis through OTC Dealer or OTC FIX connections. Positive integers (1 to 30) indicate a rebate, and negative integers (-1 to -30) indicate an access fee. 0 indicates no rebate or access fee.

Returns
QAP of this OTC Markets order.

◆ isAutoExecution()

bool OtcMarketsOrder::isAutoExecution ( ) const
inlinenoexcept

Returns whether this event is in 'AutoEx' mode.

If this event is in 'AutoEx' mode then a response to an OTC Link trade message will be immediate.

Returns
true if this event is in 'AutoEx' mode.

◆ isNmsConditional()

bool OtcMarketsOrder::isNmsConditional ( ) const
inlinenoexcept

Returns whether this event represents a NMS conditional.

This flag indicates the displayed size is a round lot at least two times greater than the minimum round lot size in the security and a trade message relating to the event cannot be sent or filled for less than the displayed size.

Returns
true if this event represents a NMS conditional.

◆ isOpen()

bool OtcMarketsOrder::isOpen ( ) const
inlinenoexcept

Returns whether this event is available for business within the operating hours of the OTC Link system.

All quotes will be closed at the start of the trading day and will remain closed until the traders open theirs.

Returns
true if this event is available for business within the operating hours of the OTC Link system.

◆ isSaturated()

bool OtcMarketsOrder::isSaturated ( ) const
inlinenoexcept

Returns whether this event should NOT be considered for the inside price.

Returns
true if this event should NOT be considered for the inside price.

◆ isUnsolicited()

bool OtcMarketsOrder::isUnsolicited ( ) const
inlinenoexcept

Returns whether this event is unsolicited.

Returns
true if this event is unsolicited.

◆ setAutoExecution()

void OtcMarketsOrder::setAutoExecution ( bool autoExecution)
inlinenoexcept

Changes whether this event is in 'AutoEx' mode.

Parameters
autoExecutiontrue if this event is in 'AutoEx' mode.

Referenced by withAutoExecution().

◆ setNmsConditional()

void OtcMarketsOrder::setNmsConditional ( bool nmsConditional)
inlinenoexcept

Changes whether this event represents a NMS conditional.

Parameters
nmsConditionaltrue if this event represents a NMS conditional.

Referenced by withNmsConditional().

◆ setOpen()

void OtcMarketsOrder::setOpen ( bool open)
inlinenoexcept

Changes whether this event is available for business within the operating hours of the OTC Link system.

Parameters
opentrue if this event is available for business within the operating hours of the OTC Link system.

Referenced by withOpen().

◆ setOtcMarketsPriceType()

void OtcMarketsOrder::setOtcMarketsPriceType ( const OtcMarketsPriceType & otcPriceType)
inlinenoexcept

Changes OTC Markets price type of this OTC Markets order events.

Parameters
otcPriceTypeOTC Markets price type of this OTC Markets order events.

Referenced by withOtcMarketsPriceType().

◆ setQuoteAccessPayment()

void OtcMarketsOrder::setQuoteAccessPayment ( std::int32_t quoteAccessPayment)
inlinenoexcept

Changes Quote Access Payment (QAP) of this OTC Markets order.

Parameters
quoteAccessPaymentQAP of this OTC Markets order.

Referenced by withQuoteAccessPayment().

◆ setSaturated()

void OtcMarketsOrder::setSaturated ( bool saturated)
inlinenoexcept

Changes whether this event should NOT be considered for the inside price.

Parameters
saturatedtrue if this event should NOT be considered for the inside price.

Referenced by withSaturated().

◆ setUnsolicited()

void OtcMarketsOrder::setUnsolicited ( bool unsolicited)
inlinenoexcept

Changes whether this event is unsolicited.

Parameters
unsolicitedtrue if this event is unsolicited.

Referenced by withUnsolicited().

◆ toGraal()

void * OtcMarketsOrder::toGraal ( ) const
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.

Returns
The pointer to the filled dxFeed Graal SDK structure

Reimplemented from Order.

◆ toString()

std::string OtcMarketsOrder::toString ( ) const
overridevirtualnoexcept

Returns a string representation of the current object.

Returns
a string representation

Reimplemented from Order.

◆ withAction()

OtcMarketsOrder & OtcMarketsOrder::withAction ( const OrderAction & action)
inlinenoexcept

Changes action of this OTC Markets order and returns it.

Parameters
actionThe side of this OTC Markets order.
Returns
The current OTC Markets order.

References Order::withAction().

◆ withActionTime()

OtcMarketsOrder & OtcMarketsOrder::withActionTime ( std::int64_t actionTime)
inlinenoexcept

Changes time of the last action and returns current OTC Markets order.

Parameters
actionTimeThe last order action time.
Returns
The current OTC Markets order.

References Order::withActionTime().

◆ withAutoExecution()

OtcMarketsOrder & OtcMarketsOrder::withAutoExecution ( bool autoExecution)
inlinenoexcept

Changes whether this event is in 'AutoEx' mode.

Returns the current OTC Markets order.

Parameters
autoExecutiontrue if this event is in 'AutoEx' mode.
Returns
The current OTC Markets order.

References setAutoExecution().

◆ withAuxOrderId()

OtcMarketsOrder & OtcMarketsOrder::withAuxOrderId ( std::int64_t auxOrderId)
inlinenoexcept

Changes auxiliary order ID.

Returns the current OTC Markets order.

Parameters
auxOrderIdThe auxiliary order ID.
Returns
The current OTC Markets order.

References Order::withAuxOrderId().

◆ withCount()

OtcMarketsOrder & OtcMarketsOrder::withCount ( std::int64_t count)
inlinenoexcept

Changes number of individual orders in this aggregate order.

Returns the current OTC Markets order.

Parameters
countThe number of individual orders in this aggregate order.
Returns
The current OTC Markets order.

References Order::withCount().

◆ withEventFlags() [1/2]

OtcMarketsOrder & OtcMarketsOrder::withEventFlags ( const EventFlagsMask & eventFlags)
inlinenoexcept

Changes transactional event flags and returns the current OTC Markets order.

See EventFlag "Event Flags" section.

Parameters
eventFlagstransactional event flags' mask.
Returns
The current OTC Markets order.

◆ withEventFlags() [2/2]

OtcMarketsOrder & OtcMarketsOrder::withEventFlags ( std::int32_t eventFlags)
inlinenoexcept

Changes transactional event flags and returns the current OTC Markets order.

See EventFlag "Event Flags" section.

Parameters
eventFlagstransactional event flags.
Returns
The current OTC Markets order.

◆ withEventSymbol()

OtcMarketsOrder & OtcMarketsOrder::withEventSymbol ( const std::string & eventSymbol)
inlineoverridevirtualnoexcept

Changes event's symbol and returns the current OTC Markets order.

Parameters
eventSymbolThe symbol of this event.
Returns
The current OTC Markets order.

Reimplemented from Order.

References Order::withEventSymbol().

◆ withEventTime()

OtcMarketsOrder & OtcMarketsOrder::withEventTime ( std::int64_t eventTime)
inlinenoexcept

Changes event's creation time and returns the current OTC Markets order.

Parameters
eventTimethe difference, measured in milliseconds, between the event creation time and midnight, January 1, 1970 UTC.
Returns
The current OTC Markets order.

References Order::withEventTime().

◆ withExchangeCode() [1/2]

OtcMarketsOrder & OtcMarketsOrder::withExchangeCode ( char exchangeCode)
inlinenoexcept

Changes exchange code of this OTC Markets order.

Returns the current OTC Markets order.

Parameters
exchangeCodeThe exchange code of this OTC Markets order.
Returns
The current OTC Markets order.

◆ withExchangeCode() [2/2]

OtcMarketsOrder & OtcMarketsOrder::withExchangeCode ( std::int16_t exchangeCode)
inlinenoexcept

Changes exchange code of this OTC Markets order.

Returns the current OTC Markets order.

Parameters
exchangeCodeThe exchange code of this OTC Markets order.
Returns
The current OTC Markets order.

◆ withExecutedSize()

OtcMarketsOrder & OtcMarketsOrder::withExecutedSize ( double executedSize)
inlinenoexcept

Changes executed size of this OTC Markets order.

Returns the current OTC Markets order.

Parameters
executedSizeThe executed size of this OTC Markets order.
Returns
The current OTC Markets order.

References Order::withExecutedSize().

◆ withIndex()

OtcMarketsOrder & OtcMarketsOrder::withIndex ( std::int64_t index)
inlinenoexcept

Changes unique per-symbol index of this OTC Markets order and returns it.

Note, that this method also changes source, whose id occupies highest bits of index. Use OrderBase::setSource() after invocation of this method to set the desired value of source.

Parameters
indexunique per-symbol index of this OTC Markets order.
Returns
The current OTC Markets order.

References Order::withIndex().

◆ withMarketMaker()

OtcMarketsOrder & OtcMarketsOrder::withMarketMaker ( std::string marketMaker)
inlinenoexcept

Changes market maker or other aggregate identifier of this OTC Markets order.

Returns the current OTC Markets order.

Parameters
marketMakerThe market maker or other aggregate identifier of this OTC Markets order.
Returns
The current OTC Markets order.

◆ withNmsConditional()

OtcMarketsOrder & OtcMarketsOrder::withNmsConditional ( bool nmsConditional)
inlinenoexcept

Changes whether this event represents a NMS conditional.

Returns the current OTC Markets order.

Parameters
nmsConditionaltrue if this event represents a NMS conditional.
Returns
The current OTC Markets order.

References setNmsConditional().

◆ withOpen()

OtcMarketsOrder & OtcMarketsOrder::withOpen ( bool open)
inlinenoexcept

Changes whether this event is available for business within the operating hours of the OTC Link system.

Returns the current OTC Markets order.

Parameters
opentrue if this event is available for business within the operating hours of the OTC Link system.
Returns
The current OTC Markets order.

References setOpen().

◆ withOrderId()

OtcMarketsOrder & OtcMarketsOrder::withOrderId ( std::int64_t orderId)
inlinenoexcept

Changes order ID.

Returns the current OTC Markets order.

Parameters
orderIdThe order ID.
Returns
The current OTC Markets order.

References Order::withOrderId().

◆ withOrderSide()

OtcMarketsOrder & OtcMarketsOrder::withOrderSide ( const Side & side)
inlinenoexcept

Changes side of this OTC Markets order.

Returns the current OTC Markets order.

Parameters
sideThe side of this OTC Markets order.
Returns
The current OTC Markets order.

References Order::withOrderSide().

◆ withOtcMarketsPriceType()

OtcMarketsOrder & OtcMarketsOrder::withOtcMarketsPriceType ( const OtcMarketsPriceType & otcPriceType)
inlinenoexcept

Changes OTC Markets price type of this OTC Markets order events.

Returns the current OTC Markets order.

Parameters
otcPriceTypeOTC Markets price type of this OTC Markets order events.
Returns
The current OTC Markets order.

References setOtcMarketsPriceType().

◆ withPrice()

OtcMarketsOrder & OtcMarketsOrder::withPrice ( double price)
inlinenoexcept

Changes price of this OTC Markets order.

Returns the current OTC Markets order.

Parameters
priceThe price of this OTC Markets order.
Returns
The current OTC Markets order.

References Order::withPrice().

◆ withQuoteAccessPayment()

OtcMarketsOrder & OtcMarketsOrder::withQuoteAccessPayment ( std::int32_t quoteAccessPayment)
inlinenoexcept

Changes Quote Access Payment (QAP) and returns the current OTC Markets order.

Parameters
quoteAccessPaymentQAP of this OTC Markets order.
Returns
The current OTC Markets order.

References setQuoteAccessPayment().

◆ withSaturated()

OtcMarketsOrder & OtcMarketsOrder::withSaturated ( bool saturated)
inlinenoexcept

Changes whether this event should NOT be considered for the inside price.

Returns the current OTC Markets order.

Parameters
saturatedtrue if this event should NOT be considered for the inside price.
Returns
The current OTC Markets order.

References setSaturated().

◆ withScope()

OtcMarketsOrder & OtcMarketsOrder::withScope ( const Scope & scope)
inlinenoexcept

Changes scope of this OTC Markets order.

Returns the current OTC Markets order.

Parameters
scopeThe scope of this OTC Markets order.
Returns
The current OTC Markets order.

References Order::withScope().

◆ withSequence()

OtcMarketsOrder & OtcMarketsOrder::withSequence ( std::int32_t sequence)
inlinenoexcept

Changes sequence number of this OTC Markets order.

Returns the current OTC Markets order.

Parameters
sequencethe sequence.
Returns
The current OTC Markets order.
See also
OrderBase::getSequence()

References Order::withSequence().

◆ withSize()

OtcMarketsOrder & OtcMarketsOrder::withSize ( double size)
inlinenoexcept

Changes size of this OTC Markets order.

Returns the current OTC Markets order.

Parameters
sizeThe size of this OTC Markets order.
Returns
The current OTC Markets order.

References Order::withSize().

◆ withSource()

OtcMarketsOrder & OtcMarketsOrder::withSource ( const OrderSource & source)
inlinenoexcept

Changes event's source and returns the current OTC Markets order.

This method changes highest bits of the index of this event.

Parameters
sourcesource of this event.
Returns
The current OTC Markets order.

References Order::withSource().

◆ withTime()

OtcMarketsOrder & OtcMarketsOrder::withTime ( std::int64_t time)
inlinenoexcept

Changes time of this OTC Markets order and returns it.

Time is measured in milliseconds between the current time and midnight, January 1, 1970 UTC.

Parameters
timetime of this OTC Markets order.
Returns
The current OTC Markets order.

References Order::withTime().

◆ withTimeNanoPart()

OtcMarketsOrder & OtcMarketsOrder::withTimeNanoPart ( std::int32_t timeNanoPart)
inlinenoexcept

Changes microseconds and nanoseconds time part of this OTC Markets order.

Returns the current OTC Markets order.

Parameters
timeNanoPartmicroseconds and nanoseconds time part of this OTC Markets order.
Returns
The current OTC Markets order.

References Order::withTimeNanoPart().

◆ withTimeNanos()

OtcMarketsOrder & OtcMarketsOrder::withTimeNanos ( std::int64_t timeNanos)
inlinenoexcept

Changes time of this OTC Markets order and returns it.

Time is measured in nanoseconds between the current time and midnight, January 1, 1970 UTC.

Parameters
timeNanosThe time of this OTC Markets order in nanoseconds.
Returns
The current OTC Markets order.

References Order::withTimeNanos().

◆ withTradeId()

OtcMarketsOrder & OtcMarketsOrder::withTradeId ( std::int64_t tradeId)
inlinenoexcept

Changes trade ID.

Returns the current OTC Markets order.

Parameters
tradeIdThe trade ID.
Returns
The current OTC Markets order.

References Order::withTradeId().

◆ withTradePrice()

OtcMarketsOrder & OtcMarketsOrder::withTradePrice ( double tradePrice)
inlinenoexcept

Changes trade price.

Returns the current OTC Markets order.

Parameters
tradePriceThe trade price.
Returns
The current OTC Markets order.

References Order::withTradePrice().

◆ withTradeSize()

OtcMarketsOrder & OtcMarketsOrder::withTradeSize ( double tradeSize)
inlinenoexcept

Changes trade size.

Returns the current OTC Markets order.

Parameters
tradeSizeThe trade size.
Returns
The current OTC Markets order.

References Order::withTradeSize().

◆ withUnsolicited()

OtcMarketsOrder & OtcMarketsOrder::withUnsolicited ( bool unsolicited)
inlinenoexcept

Changes whether this event is unsolicited.

Returns the current OTC Markets order.

Parameters
unsolicitedtrue if this event is unsolicited.
Returns
The current OTC Markets order.

References setUnsolicited().