FastMM documentation
FastMM C++ API 0.6.0
Public headers, tier 1 and tier 2
Loading...
Searching...
No Matches
fastmm::Order Struct Reference

#include <fastmm/core/order.hpp>

Public Types

enum  Flags : std::uint8_t {
  kPostOnly = 1U << 0 , kReduceOnly = 1U << 1 , kUnsolicitedCancel = 1U << 2 , kReconciled = 1U << 3 ,
  kSeenInReconcile = 1U << 4 , kSynthetic = 1U << 5 , kReplaceOldCanceled = 1U << 6
}
 

Public Member Functions

constexpr Qty leaves_qty () const noexcept
 
constexpr bool is_open () const noexcept
 
constexpr bool is_working () const noexcept
 
constexpr bool has (Flags f) const noexcept
 

Public Attributes

ClientOrderId cl_ord_id
 8
 
VenueOrderId venue_order_id
 41 -> 49
 
std::uint8_t pad0_ [7]
 -> 56
 
InstrumentId instrument
 4 -> 60
 
VenueId venue
 1
 
Side side
 1
 
OrderType type
 1
 
TimeInForce tif
 1 -> 64
 
OrderState state
 1
 
RejectReason reject_reason
 1
 
std::uint8_t flags
 1
 
std::uint8_t cancel_attempts
 1
 
std::uint32_t user_tag
 4 -> 72 (QuoteManager slot id etc.)
 
Price price
 8 -> 80
 
Qty qty
 8 -> 88
 
Qty cum_qty
 8 -> 96
 
Timestamp created
 8 -> 104
 
ClientOrderId pending_cl_ord_id
 8 -> 112 replace: id of the replacement order
 
Price pending_price
 8 -> 120
 
Qty pending_qty
 8 -> 128
 

Member Enumeration Documentation

◆ Flags

enum fastmm::Order::Flags : std::uint8_t
Enumerator
kPostOnly 
kReduceOnly 
kUnsolicitedCancel 

venue cancelled it (not requested by us)

kReconciled 

state fixed up by reconciliation

kSeenInReconcile 

scratch flag during a reconcile pass

kSynthetic 

created from reconcile (venue had it, we did not)

kReplaceOldCanceled 

cancel-then-new replace: old leg already cancelled

Member Function Documentation

◆ leaves_qty()

constexpr Qty fastmm::Order::leaves_qty ( ) const
inlineconstexprnoexcept

◆ is_open()

constexpr bool fastmm::Order::is_open ( ) const
inlineconstexprnoexcept

◆ is_working()

constexpr bool fastmm::Order::is_working ( ) const
inlineconstexprnoexcept

◆ has()

constexpr bool fastmm::Order::has ( Flags  f) const
inlineconstexprnoexcept

Member Data Documentation

◆ cl_ord_id

ClientOrderId fastmm::Order::cl_ord_id

8

◆ venue_order_id

VenueOrderId fastmm::Order::venue_order_id

41 -> 49

◆ pad0_

std::uint8_t fastmm::Order::pad0_[7]

-> 56

◆ instrument

InstrumentId fastmm::Order::instrument

4 -> 60

◆ venue

VenueId fastmm::Order::venue

1

◆ side

Side fastmm::Order::side

1

◆ type

OrderType fastmm::Order::type

1

◆ tif

TimeInForce fastmm::Order::tif

1 -> 64

◆ state

OrderState fastmm::Order::state

1

◆ reject_reason

RejectReason fastmm::Order::reject_reason

1

◆ flags

std::uint8_t fastmm::Order::flags

1

◆ cancel_attempts

std::uint8_t fastmm::Order::cancel_attempts

1

◆ user_tag

std::uint32_t fastmm::Order::user_tag

4 -> 72 (QuoteManager slot id etc.)

◆ price

Price fastmm::Order::price

8 -> 80

◆ qty

Qty fastmm::Order::qty

8 -> 88

◆ cum_qty

Qty fastmm::Order::cum_qty

8 -> 96

◆ created

Timestamp fastmm::Order::created

8 -> 104

◆ pending_cl_ord_id

ClientOrderId fastmm::Order::pending_cl_ord_id

8 -> 112 replace: id of the replacement order

◆ pending_price

Price fastmm::Order::pending_price

8 -> 120

◆ pending_qty

Qty fastmm::Order::pending_qty

8 -> 128