ExecutionReport#

struct ExecutionReport#

FIX ExecutionReport <8> message.

This message is used to report current status of an order.

Public Functions

std::span<std::byte const> encode(roq::fix::Header const&, std::span<std::byte> const &buffer) const#

Encode to buffer.

bool is_valid() const#

Validate if message contains all required fields.

Public Members

std::string_view order_id#

OrderID <37> (required)

std::string_view secondary_cl_ord_id#

SecondaryClOrdID <526>

std::string_view cl_ord_id#

ClOrdID <11>

std::string_view orig_cl_ord_id#

OrigClOrdID <41>

std::string_view ord_status_req_id#

OrdStatusReqID <790>

std::string_view mass_status_req_id#

MassStatusReqID <584>

uint32_t tot_num_reports = {}#

TotNumReports <911>

bool last_rpt_requested = false#

LastRptRequested <912>

std::span<Party const> no_party_ids#

NoPartyIDS <453>

std::string_view exec_id#

ExecID <17> (required)

roq::fix::ExecType exec_type = {}#

ExecType <150> (required)

roq::fix::OrdStatus ord_status = {}#

OrdStatus <39> (required)

bool working_indicator = false#

WorkingIndicator <636>

roq::fix::OrdRejReason ord_rej_reason = {}#

OrdRejReason <103>

std::string_view account#

Account <1>

roq::fix::AccountType account_type = {}#

AccountType <581>

std::string_view symbol#

Symbol <55> (required)

std::string_view security_exchange#

SecurityExchange <207> (required)

roq::fix::Side side = {}#

Side <54> (required)

roq::fix::OrdType ord_type = {}#

OrdType <40>

Decimal order_qty = {}#

OrderQty <38>

Decimal price = {}#

Price <44>

Decimal stop_px = {}#

StopPx <99>

std::string_view currency#

Currency <15>

roq::fix::TimeInForce time_in_force = {}#

TimeInForce <59>

std::string_view exec_inst#

ExecInst <18>

Decimal last_qty = {}#

LastQty <32>

Decimal last_px = {}#

LastPx <31>

std::string_view trading_session_id#

TradingSessionID <336>

Decimal leaves_qty = {}#

LeavesQty <151> (required)

Decimal cum_qty = {}#

CumQty <14> (required)

Decimal avg_px = {}#

AvgPx <6> (required)

std::chrono::milliseconds transact_time = {}#

TransactTime <60>

roq::fix::PositionEffect position_effect = {}#

PositionEffect <77>

Decimal max_show = {}#

MaxShow <210>

std::string_view text#

Text <58>

roq::fix::LastLiquidityInd last_liquidity_ind = {}#

LastLiquidityInd <851>

Public Static Functions

static ExecutionReport create(roq::fix::Message const&, std::span<std::byte> const &data)#

Decode.