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

#include <fastmm/core/quote_manager.hpp>

Public Member Functions

void clear () noexcept
 
VenueId account (Side s, std::uint32_t lvl) const noexcept
 
const StaticVector< Level, kMaxQuoteLevels > & side (Side s) const noexcept
 
bool empty () const noexcept
 
bool bid (Price px, Qty qty) noexcept
 Append the next level of a side (index 0 first).
 
bool ask (Price px, Qty qty) noexcept
 
void uncross (Price tick) noexcept
 Never cross ourselves at level 0: an ask at or below the best bid moves one tick above it.
 

Public Attributes

StaticVector< Level, kMaxQuoteLevels > bids
 index 0 = closest to mid
 
StaticVector< Level, kMaxQuoteLevels > asks
 
std::array< VenueId, kMaxQuoteLevels > bid_account {}
 The pool account a level's order goes from (NewOrderRequest::account); invalid = the engine's automatic routing.
 
std::array< VenueId, kMaxQuoteLevels > ask_account {}
 

Member Function Documentation

◆ clear()

void fastmm::DesiredQuotes::clear ( )
inlinenoexcept

◆ account()

VenueId fastmm::DesiredQuotes::account ( Side  s,
std::uint32_t  lvl 
) const
inlinenoexcept

◆ side()

const StaticVector< Level, kMaxQuoteLevels > & fastmm::DesiredQuotes::side ( Side  s) const
inlinenoexcept

◆ empty()

bool fastmm::DesiredQuotes::empty ( ) const
inlinenoexcept

◆ bid()

bool fastmm::DesiredQuotes::bid ( Price  px,
Qty  qty 
)
inlinenoexcept

Append the next level of a side (index 0 first).

A non-positive price or quantity is dropped, as is a level beyond kMaxQuoteLevels; returns whether the level was added.

◆ ask()

bool fastmm::DesiredQuotes::ask ( Price  px,
Qty  qty 
)
inlinenoexcept

◆ uncross()

void fastmm::DesiredQuotes::uncross ( Price  tick)
inlinenoexcept

Never cross ourselves at level 0: an ask at or below the best bid moves one tick above it.

Member Data Documentation

◆ bids

StaticVector<Level, kMaxQuoteLevels> fastmm::DesiredQuotes::bids

index 0 = closest to mid

◆ asks

StaticVector<Level, kMaxQuoteLevels> fastmm::DesiredQuotes::asks

◆ bid_account

std::array<VenueId, kMaxQuoteLevels> fastmm::DesiredQuotes::bid_account {}

The pool account a level's order goes from (NewOrderRequest::account); invalid = the engine's automatic routing.

A resting order on another account is cancelled and placed again.

◆ ask_account

std::array<VenueId, kMaxQuoteLevels> fastmm::DesiredQuotes::ask_account {}