Blue Ocean ATS Schemas#

Blue Ocean ATS (BOATS) is a US-based Alternative Trading System (ATS) run by Blue Ocean Technologies, enabling trading of U.S. stocks (NMS) during non-traditional hours, specifically 8 PM to 4 AM ET, Sunday to Thursday, bridging the overnight gap



BLUE_OCEAN#

Database includes the following Tables:

  • DAY - Daily price and statistical data, e.g. closing price, settlement price, open interest

  • MKT - Market phase / instrument status information

  • PRL_FULL - Full orderbook data, showing updates to each individual order (MBO)

  • QTE - Best bid / offer quotes

  • STAT - Static data, e.g. ISIN, description, security type

  • TRD - Trades


BLUE_OCEAN - DAY#

Daily price and statistical data, e.g. closing price, settlement price, open interest

BLUE_OCEAN - DAY Table Schema#

Field

Data Type

Description

SYMBOL_NAME

string

Symbol Name (Exchange Symbol for Equities & ETFs, and Starting with Exchange Product Code for Derivative Markets followed by expiry and strike as appropriate)

TIMESTAMP

nsectime

Event Timestamp (typically at a nano-second resolution)

OPEN

double

Open price for the current trading day

HIGH

double

DAY: High price for the current trading day TRD_1M: Price of the highest-priced eligible trade in the current bar interval

LOW

double

DAY: Low price for the current trading day. TRD_1M: Price of the lowest-priced eligible trade in the current bar interval

CLOSE

double

Closing price

VOLUME

long

DAY: Total volume traded on the current trading day TRD_1M, VWAP_1H: Total volume of eligible trades in the current bar interval

TRADE_COUNT

long

Number of trades on the current trading day

TURNOVER

double

Total monetary value traded on the current trading day. Note: The value will typically be rounded to the nearest integer.

VWAP

double

Volume-weighted average price

OMDSEQ

uint

Sequence number allowing ticks of different types at the same timestamp to be sorted into the correct chronological order. e.g. if a trade and a quote have the same timestamp, the one with the lower value of OMDSEQ arrived first.

BLUE_OCEAN - MKT#

Market phase / instrument status information

BLUE_OCEAN - MKT Table Schema#

Field

Data Type

Description

SYMBOL_NAME

string

Symbol Name (Exchange Symbol for Equities & ETFs, and Starting with Exchange Product Code for Derivative Markets followed by expiry and strike as appropriate)

TIMESTAMP

nsectime

Event Timestamp (typically at a nano-second resolution)

EXCH_TIME

nsectime

Event timestamp, as provided by the exchange. For electronic trading this refers to the matching engine timestamp

MKT_PHASE

string[1]

Indicates the instrument’s current market phase, as specified by the trading venue

REASON_CODE

string[1]

Reason for an instrument status update

SHORT_SALE_RESTRICTION

string[1]

Indicates whether short selling is permitted

OMD_STATUS

string[1]

Indicates an instrument’s current trading status. Values are normalized across all DBs.

OMDSEQ

uint

Sequence number allowing ticks of different types at the same timestamp to be sorted into the correct chronological order. e.g. if a trade and a quote have the same timestamp, the one with the lower value of OMDSEQ arrived first.

BLUE_OCEAN - PRL_FULL#

Full orderbook data, showing updates to each individual order (MBO)

BLUE_OCEAN - PRL_FULL Table Schema#

Field

Data Type

Description

SYMBOL_NAME

string

Symbol Name (Exchange Symbol for Equities & ETFs, and Starting with Exchange Product Code for Derivative Markets followed by expiry and strike as appropriate)

TIMESTAMP

nsectime

Event Timestamp (typically at a nano-second resolution)

EXCH_TIME

nsectime

Event timestamp, as provided by the exchange. For electronic trading this refers to the matching engine timestamp

PRICE

double

TRD: Trade price, IDX: Index value, IND: Indicative price, PRL: Price point to which the depth entry relates, PRL_FULL: Order price, FIXING: Fixing price, RFC: Price associated with a Request for Cross

TIME_PRIORITY

long

Time priority of an order in the order queue. If two standard orders on the same side have the same price, the one with the lower value of TIME_PRIORITY will be executed first.

OLD_PRICE

double

Previous price of an order

DELETED_TIME

nsectime

Internal OneTick field. Usually null unless hidden ticks are requested (e.g. SHOW_HIDDEN_TICKS).

BUY_SELL_FLAG

int

Orderbook side (0 - Buy, 1 - Sell)

SIZE

int

TRD: Trade size, IND: Indicative size, PRL: Size at the relevant price point, PRL_FULL: Order size, RFQ: Size associated with a Request for Quote, RFC: Size associated with a Request for Cross

FILL_SIZE

int

Size filled in an order execution event

OLD_SIZE

int

Previous size of an order

TICK_STATUS

int

Internal OneTick field. Always 0 unless hidden ticks are requested (e.g. SHOW_HIDDEN_TICKS).

UPDATE_TYPE

string[1]

Type of update

ORDER_ID

string[20]

Order identifier, uniquely identifying an order at any given point in time. Uniqueness depends on the exchange - e.g. may be globally unique, or unique per trading day, or per instrument per trading day.

ORDER_TYPE

string[1]

Type of order.

TRADE_ID

string[20]

Trade identifier, generally the ID assigned by the matching engine

RECORD_TYPE

string[1]

Type of depth update.

OMDSEQ

uint

Sequence number allowing ticks of different types at the same timestamp to be sorted into the correct chronological order. e.g. if a trade and a quote have the same timestamp, the one with the lower value of OMDSEQ arrived first.

BLUE_OCEAN - QTE#

Best bid / offer quotes

BLUE_OCEAN - QTE Table Schema#

Field

Data Type

Description

SYMBOL_NAME

string

Symbol Name (Exchange Symbol for Equities & ETFs, and Starting with Exchange Product Code for Derivative Markets followed by expiry and strike as appropriate)

TIMESTAMP

nsectime

Event Timestamp (typically at a nano-second resolution)

EXCH_TIME

nsectime

Event timestamp, as provided by the exchange. For electronic trading this refers to the matching engine timestamp

BID_PRICE

double

Best bid price. A null value is used if the bid side is empty, or if the best bid is set by unpriced orders (e.g. market orders)

ASK_PRICE

double

Best ask price. A null value is used if the ask side is empty, or if the best ask is set by unpriced orders (e.g. market orders)

BID_SIZE

int

Best bid size

BID_NUM_ORDERS

int

Number of orders at the best bid price

ASK_SIZE

int

Best ask size

ASK_NUM_ORDERS

int

Number of orders at the best ask price

OMDSEQ

uint

Sequence number allowing ticks of different types at the same timestamp to be sorted into the correct chronological order. e.g. if a trade and a quote have the same timestamp, the one with the lower value of OMDSEQ arrived first.

BLUE_OCEAN - STAT#

Static data, e.g. ISIN, description, security type

BLUE_OCEAN - STAT Table Schema#

Field

Data Type

Description

SYMBOL_NAME

string

Symbol Name (Exchange Symbol for Equities & ETFs, and Starting with Exchange Product Code for Derivative Markets followed by expiry and strike as appropriate)

TIMESTAMP

nsectime

Event Timestamp (typically at a nano-second resolution)

LOT_SIZE

double

All standard order sizes must be an integer multiple of the Lot Size

NAME

string[200]

Description of the instrument

EXCH_SYMBOL

string[20]

Ticker symbol specified by the exchange

TRADING_CODE

string[20]

ID used to identify the instrument in the trading system

MIC

string[4]

Market Identifier Code (MIC, ISO 10383) identifying the market on which the instrument is traded

OPERATING_MIC

string[4]

Market Identifier Code (MIC, ISO 10383) of the exchange that operates the market on which the instrument is traded

SEC_TYPE

string[40]

Security type, e.g. Equity, ETF, Future

CURRENCY

string[3]

Currency in which the instrument’s price is expressed (or nominal currency for bonds traded as a % of nominal).

TICK_SIZE_TYPE

string[8]

Indicates the type of tick size carried by TICK_SIZE. Values are Static or Variable.

TICK_SIZE

string[80]

Tick size / minimum price increment. All order prices must be a multiple of the tick size.

OMDSEQ

uint

Sequence number allowing ticks of different types at the same timestamp to be sorted into the correct chronological order. e.g. if a trade and a quote have the same timestamp, the one with the lower value of OMDSEQ arrived first.

BLUE_OCEAN - TRD#

Trades

BLUE_OCEAN - TRD Table Schema#

Field

Data Type

Description

SYMBOL_NAME

string

Symbol Name (Exchange Symbol for Equities & ETFs, and Starting with Exchange Product Code for Derivative Markets followed by expiry and strike as appropriate)

TIMESTAMP

nsectime

Event Timestamp (typically at a nano-second resolution)

EXCH_TIME

nsectime

Event timestamp, as provided by the exchange. For electronic trading this refers to the matching engine timestamp

PRICE

double

TRD: Trade price, IDX: Index value, IND: Indicative price, PRL: Price point to which the depth entry relates, PRL_FULL: Order price, FIXING: Fixing price, RFC: Price associated with a Request for Cross

SIZE

int

TRD: Trade size, IND: Indicative size, PRL: Size at the relevant price point, PRL_FULL: Order size, RFQ: Size associated with a Request for Quote, RFC: Size associated with a Request for Cross

AGGRESSOR_SIDE

string[1]

Indicates whether a trade resulted from an incoming buy or sell order.

TRADE_TYPE

string[4]

Type of trade

TRADE_PERIOD

string[1]

Market period during which a trade was executed.

BOOK_TYPE

string[1]

Type of order book or trading mechanism through which a trade was executed.

TRADE_ID

string[20]

Trade identifier, generally the ID assigned by the matching engine

EXECUTED_ORDER_ID

string[20]

ID of the resting (passive) order that was executed

OMDSEQ

uint

Sequence number allowing ticks of different types at the same timestamp to be sorted into the correct chronological order. e.g. if a trade and a quote have the same timestamp, the one with the lower value of OMDSEQ arrived first.

DELETED_TIME

nsectime

Internal OneTick field. Usually null unless hidden ticks are requested (e.g. SHOW_HIDDEN_TICKS).

TICK_STATUS

byte

Internal OneTick field. Always 0 unless hidden ticks are requested (e.g. SHOW_HIDDEN_TICKS).



BLUE_OCEAN_DAILY#

Database includes the following Tables:

  • DAY - Daily price and statistical data, e.g. closing price, settlement price, open interest

  • STAT - Static data, e.g. ISIN, description, security type


BLUE_OCEAN_DAILY - DAY#

Daily price and statistical data, e.g. closing price, settlement price, open interest

BLUE_OCEAN_DAILY - DAY Table Schema#

Field

Data Type

Description

SYMBOL_NAME

string

Symbol Name (Exchange Symbol for Equities & ETFs, and Starting with Exchange Product Code for Derivative Markets followed by expiry and strike as appropriate)

TIMESTAMP

nsectime

Event Timestamp (typically at a nano-second resolution)

OPEN

double

Open price for the current trading day

HIGH

double

DAY: High price for the current trading day TRD_1M: Price of the highest-priced eligible trade in the current bar interval

LOW

double

DAY: Low price for the current trading day. TRD_1M: Price of the lowest-priced eligible trade in the current bar interval

CLOSE

double

Closing price

VOLUME

long

DAY: Total volume traded on the current trading day TRD_1M, VWAP_1H: Total volume of eligible trades in the current bar interval

TRADE_COUNT

long

Number of trades on the current trading day

TURNOVER

double

Total monetary value traded on the current trading day. Note: The value will typically be rounded to the nearest integer.

VWAP

double

Volume-weighted average price

OMDSEQ

uint

Sequence number allowing ticks of different types at the same timestamp to be sorted into the correct chronological order. e.g. if a trade and a quote have the same timestamp, the one with the lower value of OMDSEQ arrived first.

BLUE_OCEAN_DAILY - STAT#

Static data, e.g. ISIN, description, security type

BLUE_OCEAN_DAILY - STAT Table Schema#

Field

Data Type

Description

SYMBOL_NAME

string

Symbol Name (Exchange Symbol for Equities & ETFs, and Starting with Exchange Product Code for Derivative Markets followed by expiry and strike as appropriate)

TIMESTAMP

nsectime

Event Timestamp (typically at a nano-second resolution)

LOT_SIZE

double

All standard order sizes must be an integer multiple of the Lot Size

NAME

string[200]

Description of the instrument

EXCH_SYMBOL

string[20]

Ticker symbol specified by the exchange

TRADING_CODE

string[20]

ID used to identify the instrument in the trading system

MIC

string[4]

Market Identifier Code (MIC, ISO 10383) identifying the market on which the instrument is traded

OPERATING_MIC

string[4]

Market Identifier Code (MIC, ISO 10383) of the exchange that operates the market on which the instrument is traded

SEC_TYPE

string[40]

Security type, e.g. Equity, ETF, Future

CURRENCY

string[3]

Currency in which the instrument’s price is expressed (or nominal currency for bonds traded as a % of nominal).

TICK_SIZE_TYPE

string[8]

Indicates the type of tick size carried by TICK_SIZE. Values are Static or Variable.

TICK_SIZE

string[80]

Tick size / minimum price increment. All order prices must be a multiple of the tick size.

OMDSEQ

uint

Sequence number allowing ticks of different types at the same timestamp to be sorted into the correct chronological order. e.g. if a trade and a quote have the same timestamp, the one with the lower value of OMDSEQ arrived first.