API  Version 2.0.1
Low-Latency HFT API
 All Classes Functions Variables
sgOrderBookDefines.h
1 #ifndef ORDER_BOOK_DEFINES_H
2 #define ORDER_BOOK_DEFINES_H
3 #include <boost/unordered_map.hpp>
4 namespace CMD {
5 
9  class SingleOrder;
10  class SpreadOrder;
11 }
12 namespace API2 {
13 
17  struct OrderBook
18  {
23  void insert(CMD::SingleOrder* order);
24 
29  void insert(SingleOrder* order);
30 
31  void insert(CMD::SpreadOrder* order);
32 
38  CMD::SingleOrder* getOrder(long clOrderId);
39 
45  CMD::SpreadOrder* getSpreadOrder(long clOrderId);
46 
52  SingleOrder* getApiOrder(long clOrderId);
53 
60  int update(OrderConfirmation& confirmation, bool reconcileOldOrders = false);
61 
66  void alignOrders(CMD::SingleOrder * order);
67  // Client order Id to order mapping
68  boost::unordered_map<long, CMD::SingleOrder*> _orderBook;
69  boost::unordered_map<long, CMD::SpreadOrder*> _spreadOrderBook;
70  //boost::unordered_map<long, CMD::ThreeLegOrder*> _orderBookThreeLeg;
71 
72  // ExchangeOrderId to TradeId mapping -- used in reconcilation to find duplicate fills
73  std::multimap<std::string, std::string> _exchangeOrderIdToTradeId;
74  };
75 
76 }
77 #endif
CMD::SpreadOrder * getSpreadOrder(long clOrderId)
getSpreadOrder
void alignOrders(CMD::SingleOrder *order)
alignOrders
The OrderBook struct.
Definition: sgOrderBookDefines.h:17
int update(OrderConfirmation &confirmation, bool reconcileOldOrders=false)
update
SingleOrder * getApiOrder(long clOrderId)
getApiOrder
The OrderConfirmation class contains the Exchange Order Confirmation Message data.
Definition: sharedResponse.h:15
CMD::SingleOrder * getOrder(long clOrderId)
getOrder
void insert(CMD::SingleOrder *order)
insert
The SingleOrder class. This wrapper is used for sending Single Leg Orders. Usage: Create an object fo...
Definition: sharedSingleOrder.h:21