# CSE2 Exchange Schemas CSE2 is the Canadian Securities Exchange’s alternative trading system, offering an unprotected market for trading securities listed on the CSE and other Canadian marketplaces. ## CSE2 Database includes the following tick types: * 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 ### CSE2 - DAY Daily price and statistical data, e.g. closing price, settlement price, open interest #### CSE2 - 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 | | 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. | ### CSE2 - MKT Market phase / instrument status information #### CSE2 - 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[4] | Indicates the instrument’s current market phase, as specified by the trading venue | | 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. | ### CSE2 - PRL_FULL Full orderbook data, showing updates to each individual order (MBO) #### CSE2 - 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 | | 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. | | BROKER_ID | int | Identifies the market participant that entered an order / quote | | ORDER_TYPE | string[1] | Type of order. | | BUY_SELL_FLAG | int | Orderbook side (0 - Buy, 1 - Sell) | | 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 | long | 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 | | 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. | | TRADE_ID | string[20] | Trade identifier, generally the ID assigned by the matching engine | | FILL_SIZE | int | Size filled in an order execution event | | OLD_PRICE | double | Previous price of an order | | OLD_SIZE | long | Previous size of an order | | RECORD_TYPE | string[1] | Type of depth update. | | TICK_STATUS | int | Internal OneTick field. Always 0 unless hidden ticks are requested (e.g. SHOW_HIDDEN_TICKS). | | DELETED_TIME | nsectime | Internal OneTick field. Usually null unless hidden ticks are requested (e.g. SHOW_HIDDEN_TICKS). | | 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. | ### CSE2 - QTE Best bid / offer quotes #### CSE2 - 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) | | BID_SIZE | long | Best bid size | | 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) | | ASK_SIZE | long | Best ask 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. | ### CSE2 - STAT Static data, e.g. ISIN, description, security type #### CSE2 - 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) | | NAME | string[100] | Description of the instrument | | ISIN | string[12] | ISIN code | | EXCH_SYMBOL | string[20] | Ticker symbol specified by the exchange | | 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). | | LOT_SIZE | double | All standard order sizes must be an integer multiple of the Lot 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. | ### CSE2 - TRD Trades #### CSE2 - 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 | long | 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 | | BUYER | string[4] | ID of the market participant on the buy side of a trade | | SELLER | string[4] | ID of the market participant on the sell side of a trade | | AGGRESSOR_SIDE | string[1] | Indicates whether a trade resulted from an incoming buy or sell order. | | TRADE_TYPE | string[8] | Type of trade | | ODD_LOT | string[1] | Indicates whether a trade was an odd lot | | BYPASS | string[1] | Identifies whether the trade resulted from a Bypass order | | SPECIAL_TERMS | string[2] | Indicates any non-standard settlement / execution terms associated with a 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 | | TICK_STATUS | int | Internal OneTick field. Always 0 unless hidden ticks are requested (e.g. SHOW_HIDDEN_TICKS). | | DELETED_TIME | msectime | Internal OneTick field. Usually null unless hidden ticks are requested (e.g. SHOW_HIDDEN_TICKS). | | 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. | ## CSE2_DAILY Database includes the following tick types: * DAY - Daily price and statistical data, e.g. closing price, settlement price, open interest * STAT - Static data, e.g. ISIN, description, security type ### CSE2_DAILY - DAY Daily price and statistical data, e.g. closing price, settlement price, open interest #### CSE2_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 | | 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. | ### CSE2_DAILY - STAT Static data, e.g. ISIN, description, security type #### CSE2_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) | | NAME | string[100] | Description of the instrument | | ISIN | string[12] | ISIN code | | EXCH_SYMBOL | string[20] | Ticker symbol specified by the exchange | | 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). | | LOT_SIZE | double | All standard order sizes must be an integer multiple of the Lot 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. |