30 const std::string& action);
40 const std::string_view& reason);
Represents a single trading order in the system.
Definition Order.h:19
Represents a single trade execution in the system.
Definition Trade.h:19
Represents a FIX Execution Report (35=8) message.
Definition ExecutionReport.h:14
A utility class for publishing execution reports, trades, and rejections.
Definition ExecutionPublisher.h:23
std::function< void(const fix::ExecutionReport &)> ExecutionReportCallback
Definition ExecutionPublisher.h:25
static std::mutex s_mutex
Definition ExecutionPublisher.h:43
static void publishTrade(const common::Trade &trade, const common::Order &buyOrder, const common::Order &sellOrder)
Definition ExecutionPublisher.cpp:71
static void publishExecution(const common::Order &order, const std::string &action)
Definition ExecutionPublisher.cpp:31
static void publishRejection(const common::OrderID &orderId, const common::ClientID &clientId, const common::Symbol &symbol, const common::OrderSide &side, const std::string_view &reason)
Definition ExecutionPublisher.cpp:126
static void SetCallback(ExecutionReportCallback callback)
Definition ExecutionPublisher.cpp:14
static ExecutionReportCallback s_callback
Definition ExecutionPublisher.h:42
Instrument
Represents the financial instruments available for trading.
Definition Instrument.h:17
uint64_t OrderID
A type alias for unique order identifiers.
Definition Types.h:134
std::string ClientID
A type alias for client identifiers.
Definition Types.h:140
OrderSide
Represents the side of an order (Buy or Sell).
Definition Types.h:17
Definition CommandType.h:7