EPAM B2BITS ICE Impact Handler C++  1.1.4
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
IceImpact::BBOData Struct Reference

Best Bid/Offer data and trade statistics. More...

#include <B2BITS_IceImpactEvents.h>

Collaboration diagram for IceImpact::BBOData:
Collaboration graph
[legend]

Public Types

enum  UpdateTypeFlags {
  BidUpdate = 0x01, OfferUpdate = 0x02, HighLowUpdate = 0x04, OpenPriceUpdate = 0x08,
  LastTradeUpdate = 0x10, SettlementUpdate = 0x20, VolumeUpdate = 0x40, OpenInterestUpdate = 0x80,
  AllUpdate = 0xff
}
 

Public Member Functions

u8 getUpdateType () const
 Returns update type flags. More...
 
unsigned long long getTOBLastSentDateTime () const
 
bool hasTOBData () const
 
bool hasBid () const
 Returns true if instrument has a Bid value. More...
 
bool hasAsk () const
 Returns true if instrument has an Ask value. More...
 
double getBid () const
 Returns top Bid Price value with deal price denomitor applied. More...
 
int getBidSize () const
 Returns top Bid Size value. More...
 
double getAsk () const
 Returns top Ask Price value with deal price denomitor applied. More...
 
int getAskSize () const
 Returns top Ask Size value. More...
 
double getLastTradePrice () const
 Returns the price of Last Trade happened for the instrument (deal price denomitor applied) More...
 
int getLastTradeSize () const
 Returns Last Trade Size value. More...
 
unsigned long long getLastTradeDateTime () const
 Returns Last Trade Date Time value - Milliseconds since Jan 1st, 1970, 00:00:00 GMT. More...
 
IceImpact::AggressorSide::Enum getLastTradeSide () const
 Returns Last Trade Aggrssor Side value. More...
 
int getVolume () const
 
int getOpenInterest () const
 Returns OpenInterest value. More...
 
double getHigh () const
 Returns High price for the instrument (deal price denomitor applied) More...
 
double getLow () const
 Returns Low price for the instrument (deal price denomitor applied) More...
 
double getOpen () const
 Returns Open price for the instrument (deal price denomitor applied) More...
 
double getSettlement () const
 Returns Settlement price for the instrument (deal price denomitor applied) More...
 
double getDealPrice (long long price) const
 
double getOrderPrice (long long price) const
 
double getSettlementPrice (long long price) const
 

Static Public Member Functions

static double getPrice (long long price, char denominatorCode)
 

Public Attributes

union {
   struct {
      union {
         struct {
            long long   bid
 
            int   bidSize
 Bid size. More...
 
         } 
 
         struct PriceLevel   bid_
 
      } 
 
      union {
         struct {
            long long   ask
 
            int   askSize
 Ask size. More...
 
         } 
 
         struct PriceLevel   ask_
 
      } 
 
   } 
 
   struct PriceLevel   bidAndAsk [2]
 
}; 
 
u8 updateType_
 
unsigned long long tobLastSentDateTime
 
long long openPrice
 
long long settlementPrice
 
long long highPrice
 
long long lowPrice
 
long long lastTradePrice
 
unsigned long long lastTradeDateTime
 
int lastTradeSize
 Last Trade Size. More...
 
int openInterest
 
int volume
 
int dealPriceMult
 
int orderPriceMult
 
int settlementPriceMult
 
char lastTradeAggressorSide
 copy of Aggressor Side from last trade message, see IceImpact::AggressorSide::Enum More...
 

Detailed Description

Best Bid/Offer data and trade statistics.

Member Enumeration Documentation

Enumerator
BidUpdate 
OfferUpdate 
HighLowUpdate 
OpenPriceUpdate 
LastTradeUpdate 
SettlementUpdate 
VolumeUpdate 
OpenInterestUpdate 
AllUpdate 

Member Function Documentation

double IceImpact::BBOData::getAsk ( ) const
inline

Returns top Ask Price value with deal price denomitor applied.

Returns
double
Exceptions
no
int IceImpact::BBOData::getAskSize ( ) const
inline

Returns top Ask Size value.

Returns
int
Exceptions
no
double IceImpact::BBOData::getBid ( ) const
inline

Returns top Bid Price value with deal price denomitor applied.

Returns
double
Exceptions
no
int IceImpact::BBOData::getBidSize ( ) const
inline

Returns top Bid Size value.

Returns
int
Exceptions
no
double IceImpact::BBOData::getDealPrice ( long long  price) const
inline
double IceImpact::BBOData::getHigh ( ) const
inline

Returns High price for the instrument (deal price denomitor applied)

Returns
double
Exceptions
no
unsigned long long IceImpact::BBOData::getLastTradeDateTime ( ) const
inline

Returns Last Trade Date Time value - Milliseconds since Jan 1st, 1970, 00:00:00 GMT.

Returns
int
Exceptions
no
double IceImpact::BBOData::getLastTradePrice ( ) const
inline

Returns the price of Last Trade happened for the instrument (deal price denomitor applied)

Returns
double
Exceptions
no
IceImpact::AggressorSide::Enum IceImpact::BBOData::getLastTradeSide ( ) const
inline

Returns Last Trade Aggrssor Side value.

Returns
IceImpact::AggressorSide::Enum
Exceptions
no
int IceImpact::BBOData::getLastTradeSize ( ) const
inline

Returns Last Trade Size value.

Returns
int
Exceptions
no
double IceImpact::BBOData::getLow ( ) const
inline

Returns Low price for the instrument (deal price denomitor applied)

Returns
double
Exceptions
no
double IceImpact::BBOData::getOpen ( ) const
inline

Returns Open price for the instrument (deal price denomitor applied)

Returns
double
Exceptions
no
int IceImpact::BBOData::getOpenInterest ( ) const
inline

Returns OpenInterest value.

Returns
int
Exceptions
no
double IceImpact::BBOData::getOrderPrice ( long long  price) const
inline
static double IceImpact::BBOData::getPrice ( long long  price,
char  denominatorCode 
)
inlinestatic
double IceImpact::BBOData::getSettlement ( ) const
inline

Returns Settlement price for the instrument (deal price denomitor applied)

Returns
double
Exceptions
no
double IceImpact::BBOData::getSettlementPrice ( long long  price) const
inline
unsigned long long IceImpact::BBOData::getTOBLastSentDateTime ( ) const
inline

Sent DateTime" field is the timestamp of when the message block is sent by ICE server. It is the number of milliseconds since Jan 1st, 1970, 00:00:00 GMT Set to 0 for TCP replayed messages

u8 IceImpact::BBOData::getUpdateType ( ) const
inline

Returns update type flags.

Returns
boolean
Exceptions
no
int IceImpact::BBOData::getVolume ( ) const
inline

Returns Volume value Note: this volume value includes electronic trades only, and does not include any off-the-market and block trades

Returns
int
Exceptions
no
bool IceImpact::BBOData::hasAsk ( ) const
inline

Returns true if instrument has an Ask value.

Returns
boolean
Exceptions
no
bool IceImpact::BBOData::hasBid ( ) const
inline

Returns true if instrument has a Bid value.

Returns
boolean
Exceptions
no
bool IceImpact::BBOData::hasTOBData ( ) const
inline

Returns true if instrument has any of Bid/Ask values if the function returns false, then the TOP level does not exist anymore and the BBO update signifies deletion of the top of the book

Returns
boolean
Exceptions
no

Member Data Documentation

union { ... }
long long IceImpact::BBOData::ask
struct PriceLevel IceImpact::BBOData::ask_
int IceImpact::BBOData::askSize

Ask size.

long long IceImpact::BBOData::bid
struct PriceLevel IceImpact::BBOData::bid_
struct PriceLevel IceImpact::BBOData::bidAndAsk[2]
int IceImpact::BBOData::bidSize

Bid size.

int IceImpact::BBOData::dealPriceMult
long long IceImpact::BBOData::highPrice
char IceImpact::BBOData::lastTradeAggressorSide

copy of Aggressor Side from last trade message, see IceImpact::AggressorSide::Enum

unsigned long long IceImpact::BBOData::lastTradeDateTime
long long IceImpact::BBOData::lastTradePrice
int IceImpact::BBOData::lastTradeSize

Last Trade Size.

long long IceImpact::BBOData::lowPrice
int IceImpact::BBOData::openInterest
long long IceImpact::BBOData::openPrice
int IceImpact::BBOData::orderPriceMult
long long IceImpact::BBOData::settlementPrice
int IceImpact::BBOData::settlementPriceMult
unsigned long long IceImpact::BBOData::tobLastSentDateTime

Sent DateTime" field is the timestamp of when the message block is sent by ICE server. This field is updated only when top of the book (Bid/Ask fields) are changed, and is not updated when other fields are changing. It is the number of milliseconds since Jan 1st, 1970, 00:00:00 GMT Set to 0 for TCP replayed messages

u8 IceImpact::BBOData::updateType_
int IceImpact::BBOData::volume