|
Slick OrderBook 1.1.0
High-Performance C++23 OrderBook Library
|
Price level for Level 3 orderbook (order-by-order) Maintains a queue of individual orders at this price level. More...
#include <price_level_l3.hpp>
Public Member Functions | |
| PriceLevelL3 (Price p) noexcept | |
| Quantity | getTotalQuantity () const noexcept |
| Get total quantity at this level. | |
| std::size_t | orderCount () const noexcept |
| Get number of orders at this level. | |
| bool | isEmpty () const noexcept |
| Check if this level is empty. | |
| Order * | getBestOrder () noexcept |
| Get best order (first in queue) | |
| const Order * | getBestOrder () const noexcept |
| void | insertOrder (Order *order) noexcept |
| Insert order maintaining priority order. | |
| void | removeOrder (Order *order) noexcept |
| Remove order from the level. | |
| void | updateOrderQuantity (Quantity old_quantity, Quantity new_quantity) noexcept |
| Update order quantity (for modify operations) | |
| constexpr bool | operator== (const PriceLevelL3 &other) const noexcept |
| Comparison operators for sorting by price. | |
| constexpr bool | operator!= (const PriceLevelL3 &other) const noexcept |
| constexpr bool | operator< (const PriceLevelL3 &other) const noexcept |
| constexpr bool | operator> (const PriceLevelL3 &other) const noexcept |
Public Attributes | |
| Price | price |
| IntrusiveList< Order > | orders |
| Quantity | total_quantity |
Price level for Level 3 orderbook (order-by-order) Maintains a queue of individual orders at this price level.
Definition at line 15 of file price_level_l3.hpp.
|
inlineexplicitnoexcept |
Definition at line 20 of file price_level_l3.hpp.
|
inlinenoexcept |
Definition at line 43 of file price_level_l3.hpp.
References slick::orderbook::detail::IntrusiveList< T, NextPtr, PrevPtr >::empty(), and slick::orderbook::detail::IntrusiveList< T, NextPtr, PrevPtr >::front().
|
inlinenoexcept |
Get best order (first in queue)
Definition at line 39 of file price_level_l3.hpp.
References slick::orderbook::detail::IntrusiveList< T, NextPtr, PrevPtr >::empty(), and slick::orderbook::detail::IntrusiveList< T, NextPtr, PrevPtr >::front().
|
inlinenoexcept |
Get total quantity at this level.
Definition at line 24 of file price_level_l3.hpp.
|
inlinenoexcept |
Insert order maintaining priority order.
Definition at line 48 of file price_level_l3.hpp.
References slick::orderbook::detail::IntrusiveList< T, NextPtr, PrevPtr >::begin(), slick::orderbook::detail::IntrusiveList< T, NextPtr, PrevPtr >::end(), slick::orderbook::detail::IntrusiveList< T, NextPtr, PrevPtr >::insert_before(), and slick::orderbook::detail::IntrusiveList< T, NextPtr, PrevPtr >::push_back().
|
inlinenoexcept |
Check if this level is empty.
Definition at line 34 of file price_level_l3.hpp.
References slick::orderbook::detail::IntrusiveList< T, NextPtr, PrevPtr >::empty().
|
inlineconstexprnoexcept |
Definition at line 80 of file price_level_l3.hpp.
|
inlineconstexprnoexcept |
Definition at line 84 of file price_level_l3.hpp.
|
inlineconstexprnoexcept |
Comparison operators for sorting by price.
Definition at line 76 of file price_level_l3.hpp.
|
inlineconstexprnoexcept |
Definition at line 88 of file price_level_l3.hpp.
|
inlinenoexcept |
Get number of orders at this level.
Definition at line 29 of file price_level_l3.hpp.
References slick::orderbook::detail::IntrusiveList< T, NextPtr, PrevPtr >::size().
|
inlinenoexcept |
Remove order from the level.
Definition at line 65 of file price_level_l3.hpp.
References slick::orderbook::detail::IntrusiveList< T, NextPtr, PrevPtr >::erase().
|
inlinenoexcept |
Update order quantity (for modify operations)
Definition at line 71 of file price_level_l3.hpp.
| IntrusiveList<Order> slick::orderbook::detail::PriceLevelL3::orders |
Definition at line 17 of file price_level_l3.hpp.
| Price slick::orderbook::detail::PriceLevelL3::price |
Definition at line 16 of file price_level_l3.hpp.
| Quantity slick::orderbook::detail::PriceLevelL3::total_quantity |
Definition at line 18 of file price_level_l3.hpp.