Enums#

All enums have been auto-generated. This adds some convenience:

  • Conversion to string representation.

  • Validation when converting from integer represenation (e.g. reading from a byte stream).

BufferCapacity#

enum class roq::BufferCapacity : uint8_t#

Buffer capacity.

Values:

enumerator UNDEFINED#
enumerator EMPTY#

Buffer is empty.

enumerator LOW_WATER_MARK#

Buffer has reached the low water mark (from above)

enumerator HIGH_WATER_MARK#

Buffer has reached the high water mark (from below)

enumerator FULL#

Buffer is full.

ConnectionStatus#

enum class roq::ConnectionStatus : uint8_t#

Enumeration of exchange connectivity status as seen from a gateway.

Values:

enumerator UNDEFINED#
enumerator DISCONNECTED#
enumerator CONNECTING#
enumerator LOGIN_SENT#
enumerator DOWNLOADING#
enumerator READY#
enumerator LOGGED_OUT#

Decimals#

enum class roq::Decimals : uint8_t#

Enumeration of decimal digits.

Values:

enumerator UNDEFINED#
enumerator _0#
enumerator _1#
enumerator _2#
enumerator _3#
enumerator _4#
enumerator _5#
enumerator _6#
enumerator _7#
enumerator _8#
enumerator _9#
enumerator _10#
enumerator _11#
enumerator _12#
enumerator _13#
enumerator _14#
enumerator _15#

Encoding#

enum class roq::Encoding : uint32_t#

Enumeration of message encoding types (informational, only)

Values:

enumerator UNDEFINED#
enumerator FIX#

FIX.

enumerator JSON#

JSON.

enumerator SBE#

SBE.

Error#

enum class roq::Error : uint8_t#

Enumeration of error types.

Values:

enumerator UNDEFINED#
enumerator UNKNOWN#
enumerator NOT_SUPPORTED#

Request type not supported.

enumerator INVALID_ACCOUNT#
enumerator INVALID_ORDER_ID#
enumerator INVALID_EXCHANGE#
enumerator INVALID_SYMBOL#
enumerator INVALID_SIDE#
enumerator INVALID_POSITION_EFFECT#
enumerator INVALID_QUANTITY#
enumerator INVALID_MAX_SHOW_QUANTITY#
enumerator INVALID_ORDER_TYPE#
enumerator INVALID_TIME_IN_FORCE#
enumerator INVALID_EXECUTION_INSTRUCTION#
enumerator INVALID_ORDER_TEMPLATE#
enumerator INVALID_PRICE#
enumerator INVALID_STOP_PRICE#
enumerator INVALID_ROUTING_ID#
enumerator INVALID_REQUEST_VERSION#
enumerator INVALID_REQUEST_ID#
enumerator INVALID_REQUEST_TYPE#
enumerator INVALID_REQUEST_STATUS#
enumerator INVALID_REQUEST_ARGS#

Request arguments did not meet validation rules.

enumerator UNKNOWN_EXTERNAL_ORDER_ID#

An external order identifier has not yet been received.

enumerator NOT_AUTHORIZED#

User is not authorized.

enumerator REQUEST_RATE_LIMIT_REACHED#

Request rate limit has been reached.

enumerator GATEWAY_NOT_READY#

Gateway not ready (could be disconnected or currently downloading)

enumerator NETWORK_ERROR#

Network disconnect event (unknown request/order status)

enumerator TIMEOUT#

Response has not been received (unknown request/order status)

enumerator PARSE_ERROR#

Message parse error (unknown request/order status)

enumerator MODIFY_HAS_NO_EFFECT#

Modify request has no effect on order.

enumerator TOO_LATE_TO_MODIFY_OR_CANCEL#

Too late to modify or cancel (order has been filled or is already canceled)

enumerator CONDITIONAL_REQUEST_HAS_FAILED#

Happens when gateway detects chain failure.

enumerator UNKNOWN_ORDER_ID#
enumerator INSUFFICIENT_FUNDS#

Insufficient funds for order action.

ExecutionInstruction#

enum class roq::ExecutionInstruction : uint32_t#

Enumeration of execution types.

Values:

enumerator UNDEFINED#
enumerator PARTICIPATE_DO_NOT_INITIATE#

Cancel if order would have executed on placement (i.e. not as maker)

enumerator CANCEL_IF_NOT_BEST#

Cancel if order can not be placed at best price.

enumerator DO_NOT_INCREASE#

Order may only reduce net position, order quantity can automatically be reduced by exchange.

enumerator DO_NOT_REDUCE#

Order can not be partially filled, aka. all-or-none (AON) orders.

Liquidity#

enum class roq::Liquidity : uint8_t#

Enumeration of liquidity type.

Values:

enumerator UNDEFINED#
enumerator MAKER#
enumerator TAKER#

OptionType#

enum class roq::OptionType : uint8_t#

Enumeration of option types.

Values:

enumerator UNDEFINED#
enumerator CALL#
enumerator PUT#

OrderStatus#

enum class roq::OrderStatus : uint8_t#

Last known order status received from exchange.

Values:

enumerator UNDEFINED#
enumerator SENT#

Order has been sent to exchange (no response has been received yet)

enumerator ACCEPTED#

Order has been accepted by exchange and is not yet been activated.

enumerator SUSPENDED#

Order has been suspended and requires external action to re-activate.

enumerator WORKING#

Order is working and has not yet been completely filled.

enumerator STOPPED#

Order has guaranteed fill at as of yet unknown price.

enumerator COMPLETED#

Order has been completely filled.

enumerator EXPIRED#

Order has expired.

enumerator CANCELED#

Order has been canceled.

enumerator REJECTED#

Order has been rejected.

OrderType#

enum class roq::OrderType : uint8_t#

Enumeration of order types.

Values:

enumerator UNDEFINED#
enumerator MARKET#
enumerator LIMIT#

Origin#

enum class roq::Origin : uint8_t#

Enumeration of origin types.

Values:

enumerator UNDEFINED#
enumerator CLIENT#
enumerator GATEWAY#
enumerator BROKER#
enumerator EXCHANGE#

PositionEffect#

enum class roq::PositionEffect : uint8_t#

Enumeration of position effect types.

Values:

enumerator UNDEFINED#
enumerator OPEN#
enumerator CLOSE#

Priority#

enum class roq::Priority : uint8_t#

Enumeration of priority.

Values:

enumerator UNDEFINED#
enumerator PRIMARY#

Primary.

enumerator SECONDARY#

Secondary.

Protocol#

enum class roq::Protocol : uint8_t#

Enumeration of protocol types (layer 7)

Values:

enumerator UNDEFINED#
enumerator FIX#

FIX.

enumerator WS#

Web-Socket.

enumerator HTTP#

HTTP (REST)

enumerator SBE#

Simple Binary Encoding.

RateLimitType#

enum class roq::RateLimitType : uint8_t#

Rate limit type.

Values:

enumerator UNDEFINED#
enumerator ORDER_ACTION#

Any order action: create, modify, cancel, etc.

enumerator CREATE_ORDER#

Only create order.

RequestIdType#

enum class roq::RequestIdType : uint8_t#

Request identifier.

Values:

enumerator UNDEFINED#
enumerator BASE64#
enumerator BASE32#
enumerator SIMPLE#
enumerator UUID#

RequestStatus#

enum class roq::RequestStatus : uint8_t#

Enumeration of request status types.

Values:

enumerator UNDEFINED#
enumerator FORWARDED#
enumerator ACCEPTED#
enumerator REJECTED#
enumerator DISCONNECTED#
enumerator TIMEOUT#
enumerator FAILED#

Generic failure.

RequestType#

enum class roq::RequestType : uint8_t#

Enumeration of request types.

Values:

enumerator UNDEFINED#
enumerator CREATE_ORDER#
enumerator MODIFY_ORDER#
enumerator CANCEL_ORDER#

SecurityType#

enum class roq::SecurityType : uint8_t#

Enumeration of security/instrument types.

Values:

enumerator UNDEFINED#
enumerator SPOT#
enumerator FUTURES#
enumerator OPTION#
enumerator SWAP#

Side#

enum class roq::Side : uint8_t#

Enumeration of the side of a trade.

Values:

enumerator UNDEFINED#
enumerator BUY#
enumerator SELL#

StatisticsType#

enum class roq::StatisticsType : uint8_t#

Enumeration of a statistics type.

Values:

enumerator UNDEFINED#
enumerator OPEN_PRICE#
enumerator SETTLEMENT_PRICE#
enumerator CLOSE_PRICE#
enumerator OPEN_INTEREST#
enumerator PRE_OPEN_INTEREST#
enumerator PRE_SETTLEMENT_PRICE#
enumerator PRE_CLOSE_PRICE#
enumerator HIGHEST_TRADED_PRICE#
enumerator LOWEST_TRADED_PRICE#
enumerator UPPER_LIMIT_PRICE#
enumerator LOWER_LIMIT_PRICE#
enumerator INDEX_VALUE#
enumerator MARGIN_RATE#
enumerator FUNDING_RATE#
enumerator FUNDING_RATE_PREDICTION#
enumerator TRADE_VOLUME#

SupportType#

enum class roq::SupportType : uint64_t#

Enumeration of support types.

Values:

enumerator UNDEFINED#
enumerator REFERENCE_DATA#

Reference data.

enumerator MARKET_STATUS#

Market status.

enumerator TOP_OF_BOOK#

Top of book.

enumerator MARKET_BY_PRICE#

Market by price.

enumerator MARKET_BY_ORDER#

Market by order.

enumerator TRADE_SUMMARY#

Trade summary.

enumerator STATISTICS#

Statistics.

enumerator CREATE_ORDER#

Create order.

enumerator MODIFY_ORDER#

Modify order.

enumerator CANCEL_ORDER#

Cancel order.

enumerator ORDER_ACK#

Order ack.

enumerator ORDER#

Order.

enumerator ORDER_STATE#

Order.

enumerator TRADE#

Trade.

enumerator POSITION#

Position.

enumerator FUNDS#

Funds.

TimeInForce#

enum class roq::TimeInForce : uint8_t#

Order life-time, aka time in force.

Values:

enumerator UNDEFINED#
enumerator GFD#

Good for day, aka DAY.

enumerator GTC#

Good till canceled.

enumerator OPG#

At the open.

enumerator IOC#

Immediate or cancel.

enumerator FOK#

Fill or kill.

enumerator GTX#

Good till crossing.

enumerator GTD#

Good till date.

enumerator AT_THE_CLOSE#

At the close.

enumerator GOOD_THROUGH_CROSSING#

Good through crossing.

enumerator AT_CROSSING#

At crossing.

enumerator GOOD_FOR_TIME#

Good for time.

enumerator GFA#

Good for auction.

enumerator GFM#

Good for this month.

TradingStatus#

enum class roq::TradingStatus : uint8_t#

Enumeration of the tradig status of a symbol.

Values:

enumerator UNDEFINED#
enumerator START_OF_DAY#

No matching, no order actions.

enumerator PRE_OPEN#

No matching, all order actions.

enumerator PRE_OPEN_NO_CANCEL#

No matching, only new orders.

enumerator PRE_OPEN_FREEZE#

Matching, no order actions.

enumerator OPEN#

Matching, all order actions.

enumerator FAST_MARKET#

Same as Open, some settings could be relaxed by the exchange.

enumerator HALT#

No matching, only order cancellation.

enumerator CLOSE_NOT_FINAL#

Same as Close, state required to support mid-session PreOpen.

enumerator PRE_CLOSE#

No matching, all order actions.

enumerator PRE_CLOSE_NO_CANCEL#

No matching, only new orders.

enumerator PRE_CLOSE_FREEZE#

Matching, no order actions.

enumerator CLOSE#

No matching, no order actions, good-for-day orders automatically canceled.

enumerator POST_CLOSE#

No matching, all order actions (only with next-trading-day validity)

enumerator END_OF_DAY#

No matching, no order actions.

Transport#

enum class roq::Transport : uint8_t#

Enumeration of transport types (layer 4)

Values:

enumerator UNDEFINED#
enumerator TCP#

TCP.

enumerator UDP#

UDP.

UpdateAction#

enum class roq::UpdateAction : uint8_t#

Enumeration of update actions.

Values:

enumerator UNDEFINED#
enumerator NEW#

New.

enumerator CHANGE#

Change.

enumerator DELETE#

Delete.

UpdateType#

enum class roq::UpdateType : uint8_t#

Enumeration of update types.

Values:

enumerator UNDEFINED#
enumerator SNAPSHOT#

Full snapshot.

enumerator INCREMENTAL#

Incremental change.

enumerator STALE#

Stale awaiting full snapshot.