CppTrader  1.0.4.0
C++ Trader
Public Member Functions | Public Attributes | List of all members
CppTrader::Matching::OrderNode Struct Reference

Order node. More...

#include <order.h>

Inheritance diagram for CppTrader::Matching::OrderNode:
CppTrader::Matching::Order

Public Member Functions

 OrderNode (const Order &order) noexcept
 
 OrderNode (const OrderNode &) noexcept=default
 
 OrderNode (OrderNode &&) noexcept=default
 
 ~OrderNode () noexcept=default
 
OrderNodeoperator= (const Order &order) noexcept
 
OrderNodeoperator= (const OrderNode &) noexcept=default
 
OrderNodeoperator= (OrderNode &&) noexcept=default
 
- Public Member Functions inherited from CppTrader::Matching::Order
uint64_t HiddenQuantity () const noexcept
 Order hidden quantity. More...
 
uint64_t VisibleQuantity () const noexcept
 Order visible quantity. More...
 
 Order () noexcept=default
 
 Order (uint64_t id, uint32_t symbol, OrderType type, OrderSide side, uint64_t price, uint64_t stop_price, uint64_t quantity, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t max_visible_quantity=std::numeric_limits< uint64_t >::max(), uint64_t slippage=std::numeric_limits< uint64_t >::max(), int64_t trailing_distance=0, int64_t trailing_step=0) noexcept
 
 Order (const Order &) noexcept=default
 
 Order (Order &&) noexcept=default
 
 ~Order () noexcept=default
 
Orderoperator= (const Order &) noexcept=default
 
Orderoperator= (Order &&) noexcept=default
 
bool IsMarket () const noexcept
 Is the market order? More...
 
bool IsLimit () const noexcept
 Is the limit order? More...
 
bool IsStop () const noexcept
 Is the stop order? More...
 
bool IsStopLimit () const noexcept
 Is the stop-limit order? More...
 
bool IsTrailingStop () const noexcept
 Is the trailing stop order? More...
 
bool IsTrailingStopLimit () const noexcept
 Is the trailing stop-limit order? More...
 
bool IsBuy () const noexcept
 Is the order with buy side? More...
 
bool IsSell () const noexcept
 Is the order with sell side? More...
 
bool IsGTC () const noexcept
 Is the 'Good-Till-Cancelled' order? More...
 
bool IsIOC () const noexcept
 Is the 'Immediate-Or-Cancel' order? More...
 
bool IsFOK () const noexcept
 Is the 'Fill-Or-Kill' order? More...
 
bool IsAON () const noexcept
 Is the 'All-Or-None' order? More...
 
bool IsHidden () const noexcept
 Is the 'Hidden' order? More...
 
bool IsIceberg () const noexcept
 Is the 'Iceberg' order? More...
 
bool IsSlippage () const noexcept
 Is the order have slippage? More...
 
ErrorCode Validate () const noexcept
 Validate order parameters. More...
 

Public Attributes

LevelNodeLevel
 
- Public Attributes inherited from CppTrader::Matching::Order
uint64_t Id
 Order Id. More...
 
uint32_t SymbolId
 Symbol Id. More...
 
OrderType Type
 Order type. More...
 
OrderSide Side
 Order side. More...
 
uint64_t Price
 Order price. More...
 
uint64_t StopPrice
 Order stop price. More...
 
uint64_t Quantity
 Order quantity. More...
 
uint64_t ExecutedQuantity
 Order executed quantity. More...
 
uint64_t LeavesQuantity
 Order leaves quantity. More...
 
OrderTimeInForce TimeInForce
 Time in Force. More...
 
uint64_t MaxVisibleQuantity
 Order max visible quantity. More...
 
uint64_t Slippage
 Market order slippage. More...
 
int64_t TrailingDistance
 Order trailing distance to market. More...
 
int64_t TrailingStep
 Order trailing step. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from CppTrader::Matching::Order
static Order Market (uint64_t id, uint32_t symbol, OrderSide side, uint64_t quantity, uint64_t slippage=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new market order. More...
 
static Order BuyMarket (uint64_t id, uint32_t symbol, uint64_t quantity, uint64_t slippage=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new buy market order. More...
 
static Order SellMarket (uint64_t id, uint32_t symbol, uint64_t quantity, uint64_t slippage=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new sell market order. More...
 
static Order Limit (uint64_t id, uint32_t symbol, OrderSide side, uint64_t price, uint64_t quantity, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t max_visible_quantity=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new limit order. More...
 
static Order BuyLimit (uint64_t id, uint32_t symbol, uint64_t price, uint64_t quantity, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t max_visible_quantity=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new buy limit order. More...
 
static Order SellLimit (uint64_t id, uint32_t symbol, uint64_t price, uint64_t quantity, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t max_visible_quantity=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new sell limit order. More...
 
static Order Stop (uint64_t id, uint32_t symbol, OrderSide side, uint64_t stop_price, uint64_t quantity, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t slippage=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new stop order. More...
 
static Order BuyStop (uint64_t id, uint32_t symbol, uint64_t stop_price, uint64_t quantity, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t slippage=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new buy stop order. More...
 
static Order SellStop (uint64_t id, uint32_t symbol, uint64_t stop_price, uint64_t quantity, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t slippage=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new sell stop order. More...
 
static Order StopLimit (uint64_t id, uint32_t symbol, OrderSide side, uint64_t stop_price, uint64_t price, uint64_t quantity, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t max_visible_quantity=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new stop-limit order. More...
 
static Order BuyStopLimit (uint64_t id, uint32_t symbol, uint64_t stop_price, uint64_t price, uint64_t quantity, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t max_visible_quantity=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new buy stop-limit order. More...
 
static Order SellStopLimit (uint64_t id, uint32_t symbol, uint64_t stop_price, uint64_t price, uint64_t quantity, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t max_visible_quantity=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new sell stop-limit order. More...
 
static Order TrailingStop (uint64_t id, uint32_t symbol, OrderSide side, uint64_t stop_price, uint64_t quantity, int64_t trailing_distance, int64_t trailing_step=0, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t slippage=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new trailing stop order. More...
 
static Order TrailingBuyStop (uint64_t id, uint32_t symbol, uint64_t stop_price, uint64_t quantity, int64_t trailing_distance, int64_t trailing_step=0, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t slippage=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new trailing buy stop order. More...
 
static Order TrailingSellStop (uint64_t id, uint32_t symbol, uint64_t stop_price, uint64_t quantity, int64_t trailing_distance, int64_t trailing_step=0, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t slippage=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new trailing sell stop order. More...
 
static Order TrailingStopLimit (uint64_t id, uint32_t symbol, OrderSide side, uint64_t stop_price, uint64_t price, uint64_t quantity, int64_t trailing_distance, int64_t trailing_step=0, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t max_visible_quantity=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new trailing stop-limit order. More...
 
static Order TrailingBuyStopLimit (uint64_t id, uint32_t symbol, uint64_t stop_price, uint64_t price, uint64_t quantity, int64_t trailing_distance, int64_t trailing_step=0, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t max_visible_quantity=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new trailing buy stop-limit order. More...
 
static Order TrailingSellStopLimit (uint64_t id, uint32_t symbol, uint64_t stop_price, uint64_t price, uint64_t quantity, int64_t trailing_distance, int64_t trailing_step=0, OrderTimeInForce tif=OrderTimeInForce::GTC, uint64_t max_visible_quantity=std::numeric_limits< uint64_t >::max()) noexcept
 Prepare a new trailing sell stop-limit order. More...
 

Detailed Description

Order node.

Definition at line 301 of file order.h.

Constructor & Destructor Documentation

◆ OrderNode() [1/3]

CppTrader::Matching::OrderNode::OrderNode ( const Order order)
inlinenoexcept

Definition at line 218 of file order.inl.

◆ OrderNode() [2/3]

CppTrader::Matching::OrderNode::OrderNode ( const OrderNode )
defaultnoexcept

◆ OrderNode() [3/3]

CppTrader::Matching::OrderNode::OrderNode ( OrderNode &&  )
defaultnoexcept

◆ ~OrderNode()

CppTrader::Matching::OrderNode::~OrderNode ( )
defaultnoexcept

Member Function Documentation

◆ operator=() [1/3]

OrderNode & CppTrader::Matching::OrderNode::operator= ( const Order order)
inlinenoexcept

Definition at line 222 of file order.inl.

◆ operator=() [2/3]

OrderNode& CppTrader::Matching::OrderNode::operator= ( const OrderNode )
defaultnoexcept

◆ operator=() [3/3]

OrderNode& CppTrader::Matching::OrderNode::operator= ( OrderNode &&  )
defaultnoexcept

Member Data Documentation

◆ Level

LevelNode* CppTrader::Matching::OrderNode::Level

Definition at line 303 of file order.h.


The documentation for this struct was generated from the following files: