55 PriceLevel (
const Price& price,
61 #if defined(ONIXS_FMXUST_BIMP_COMPILER_CXX_RVALUE_REFERENCES) && ONIXS_FMXUST_BIMP_COMPILER_CXX_RVALUE_REFERENCES 63 PriceLevel(PriceLevel&&)
67 operator=(PriceLevel&& other)
71 #if defined(ONIXS_FMXUST_BIMP_COMPILER_CXX_DEFAULTED_FUNCTIONS) && ONIXS_FMXUST_BIMP_COMPILER_CXX_DEFAULTED_FUNCTIONS 72 PriceLevel(
const PriceLevel&) =
default;
74 PriceLevel(
const PriceLevel&);
78 operator=(
const PriceLevel& other);
85 void setPrice (
const Price& value)
101 void numberOfOrders (
Quantity value)
113 std::string toString()
const;
116 void toString (std::string&)
const;
119 void swap (PriceLevel&)
123 const OrderInfos& orders()
const 130 void removeOrderId (
OrderId id);
155 ONIXS_FMXUST_BIMP_API
163 typedef std::vector<PriceLevel>
Array;
206 std::string toString()
const;
209 void toString (std::string&)
const;
212 std::string toShortString()
const;
215 void toShortString (std::string&)
const;
218 std::string toFormattedString()
const;
221 void toFormattedString (std::string&)
const;
224 const PriceLevels& asks()
const;
227 const PriceLevels& bids()
const;
230 UInt64 lastMessageSeqNumApplied()
const;
234 virtual const PriceLevels& doAsks()
const = 0;
235 virtual const PriceLevels& doBids()
const = 0;
236 virtual bool doBestAsk (
Price& price,
Quantity& quantity)
const = 0;
237 virtual bool doBestBid (
Price& price,
Quantity& quantity)
const = 0;
239 virtual UInt64 doLastMessageSeqNumApplied()
const = 0;
243 ONIXS_FMXUST_BIMP_NOTHROW
249 ONIXS_FMXUST_BIMP_NOTHROW
255 ONIXS_FMXUST_BIMP_NOTHROW
261 ONIXS_FMXUST_BIMP_NOTHROW
267 ONIXS_FMXUST_BIMP_NOTHROW
273 ONIXS_FMXUST_BIMP_NOTHROW
279 ONIXS_FMXUST_BIMP_NOTHROW
285 ONIXS_FMXUST_BIMP_NOTHROW
291 ONIXS_FMXUST_BIMP_NOTHROW
297 ONIXS_FMXUST_BIMP_NOTHROW
299 timestamp_ = timestamp;
303 ONIXS_FMXUST_BIMP_NOTHROW
320 return doBestAsk (price, quantity);
325 return doBestBid (price, quantity);
330 return doInstrumentID();
334 ONIXS_FMXUST_BIMP_NOTHROW
336 return bids().empty() && asks().empty();
341 return doLastMessageSeqNumApplied();
Integer8 OrderId
Alias for Order Id type.
Integer8 InstrumentId
Alias for Instrument Id type.
Miscellaneous traits for PriceLevel class.
ONIXS_FMXUST_BIMP_API std::ostream & operator<<(std::ostream &stream, const ServiceDescriptor &descriptor)
Quantity quantity() const ONIXS_FMXUST_BIMP_NOTHROW
Quantify for the given price.
PriceLevelCollections::ArrayConstEntry PriceLevelsConstEntry
Iterator over read-only collection of price levels.
Array::const_iterator ArrayConstEntry
Iterator for read-only access.
Integer8 Quantity
Alias for Quantity type.
const Price & getPrice() const ONIXS_FMXUST_BIMP_NOTHROW
Price8 value.
std::vector< PriceLevel > Array
Sequential collection of price levels.
PriceLevelCollections::Array PriceLevels
Sequence of price levels.
Array::iterator ArrayEntry
Mutable entry iterator.
const Price & getPrice(const PriceLevel &level) ONIXS_FMXUST_BIMP_NOTHROW
Returns value of Price8.
Quantity numberOfOrders() const ONIXS_FMXUST_BIMP_NOTHROW
Total number of orders of given price.
bool isValid(const PriceLevel &level) ONIXS_FMXUST_BIMP_NOTHROW
Indicates whether the instance of PriceLevel is valid.
void setPrice(const Price &value) ONIXS_FMXUST_BIMP_NOTHROW
Updates price value.
bool bestAsk(Price &price, Quantity &quantity) const
InstrumentId instrumentId() const
Instrument Id.
bool bestBid(Price &price, Quantity &quantity) const
virtual ~OrderBook()
Destruction interface.
PriceLevelCollections::ArrayEntry PriceLevelsEntry
Iterator to access price levels with write permissions.
UInt64 lastMessageSeqNumApplied() const
Returns Last Message Seq Num Applied to the Book.
const PriceLevels & bids() const
Returns a set of ascending ask prices for the given security.
std::vector< OrderInfo > OrderInfos
bool operator==(const PriceLevel &l, const PriceLevel &r) ONIXS_FMXUST_BIMP_NOTHROW
compare
SignedInteger8 Price
Alias for Order Id type.
Integer8 timestamp() const ONIXS_FMXUST_BIMP_NOTHROW
Timestamp.
Encapsulates price level concept.
bool empty() const ONIXS_FMXUST_BIMP_NOTHROW
Indicates whether book has no bids & asks.
#define ONIXS_FMXUST_BIMP_NOTHROW
const PriceLevels & asks() const
Returns a set of descending bid prices for the given security.