BetaTrader
A HFT Eco-System
Loading...
Searching...
No Matches
trading_core::ExecutionPublisher Class Reference

A utility class for publishing execution reports, trades, and rejections. More...

#include <ExecutionPublisher.h>

Collaboration diagram for trading_core::ExecutionPublisher:
Collaboration graph

Public Member Functions

 ExecutionPublisher ()=default
 Default constructor is deleted to prevent instantiation.
 
 ExecutionPublisher (const ExecutionPublisher &)=delete
 Copy constructor is deleted to prevent copying.
 
 ~ExecutionPublisher ()=default
 Default destructor.
 
ExecutionPublisheroperator= (const ExecutionPublisher &)=delete
 Copy assignment operator is deleted to prevent copying.
 

Static Public Member Functions

static void publishExecution (const common::Order &order, const std::string &action)
 Publishes an execution report for an order.
 
static void publishRejection (const common::OrderID &orderId, const common::ClientID &clientId, const std::string_view &reason)
 Publishes a rejection for an order.
 
static void publishTrade (const common::Trade &trade)
 Publishes a trade execution.
 

Detailed Description

A utility class for publishing execution reports, trades, and rejections.

This class provides a centralized way to log and publish information about the state of orders and trades in the system. It is designed as a static utility class and cannot be instantiated.

Constructor & Destructor Documentation

◆ ExecutionPublisher() [1/2]

trading_core::ExecutionPublisher::ExecutionPublisher ( )
default

Default constructor is deleted to prevent instantiation.

◆ ~ExecutionPublisher()

trading_core::ExecutionPublisher::~ExecutionPublisher ( )
default

Default destructor.

◆ ExecutionPublisher() [2/2]

trading_core::ExecutionPublisher::ExecutionPublisher ( const ExecutionPublisher )
delete

Copy constructor is deleted to prevent copying.

Member Function Documentation

◆ operator=()

ExecutionPublisher & trading_core::ExecutionPublisher::operator= ( const ExecutionPublisher )
delete

Copy assignment operator is deleted to prevent copying.

◆ publishExecution()

void trading_core::ExecutionPublisher::publishExecution ( const common::Order order,
const std::string &  action 
)
static

Publishes an execution report for an order.

Parameters
orderThe order for which the execution report is being published.
actionThe action that was taken on the order (e.g., "NEW", "CANCELED").
Here is the call graph for this function:
Here is the caller graph for this function:

◆ publishRejection()

void trading_core::ExecutionPublisher::publishRejection ( const common::OrderID orderId,
const common::ClientID clientId,
const std::string_view &  reason 
)
static

Publishes a rejection for an order.

Parameters
orderIdThe ID of the order that was rejected.
clientIdThe ID of the client who submitted the order.
reasonThe reason for the rejection.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ publishTrade()

void trading_core::ExecutionPublisher::publishTrade ( const common::Trade trade)
static

Publishes a trade execution.

Parameters
tradeThe trade that was executed.
Here is the call graph for this function:
Here is the caller graph for this function:

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