US Futures Trade Only Minute Bar Guide                                                                            


US Futures Trade Only Minute Bar Guide

version 1.3 (Jul 2021)

CONTACT US

We are here to help you do great things with our market and reference data. For questions, feedback, and other concerns, you may reach our team of experts using the following contact information:

algoseek customer support

support@algoseek.com

(+1) 646 583 1832

algoseek sales

sales@algoseek.com

(+1) 646 583 1832

TABLE OF CONTENTS

INTRODUCTION        4

DATA ORGANIZATION AND FILE FORMAT        5


INTRODUCTION

algoseek’s Futures, Spreads, and Future Options Trade Only Minute Bar datasets contain high-quality intraday transactions data for all securities listed on US exchanges. The data includes event-based bars designed for quantitative trading, backtesting, machine learning, and other advanced applications.

The contract specifications such as underlying asset, the quantity of the asset or contract size, expiration months, delivery location, and the delivery date upon execution can be found on the US futures products list, which is available at the following link: http://www.cmegroup.com/trading/products/.

Event-based Bars

The volume of futures varies from contract to contract. Some contracts, for example, ES front month, have multiple events per millisecond, and some contracts don’t have any trade events for 24 hours.

algoseek’s futures bars are event-based, which means a bar is only created when there is at least one event during a bar period.

Calculated Trade Prices

Some futures have calculated prices that are not based on actual trades, and these are not included in bars. Only trades of the actual futures are included.

Minimum Trades

A bar file is created only if there is at least one trade during the entire 24 hours of a trading session.

If there is only one type of event during the bar period, the event fields will have the same values.

For example:

OpenPrice = HighPrice = LowPrice = ClosePrice 

Bars are created only if there is a trade event. For illiquid futures with no trades on a given trade date, there will be no bar data file. Some very illiquid futures may not have any trades for weeks.

DATA ORGANIZATION AND FILE FORMAT        

algoseek provides Futures market data in plain-text CSV files. The first row of the CSV file is a fixed header, and then rows of data corresponding to individual events. By default, data is organized into one file per symbol per trading day. For example, all events for ticker ESH0 on Jan 28, 2020, are stored in one CSV file.

Due to the large data size, CSV files are gzip-compressed (having a csv.gz extension) with a compression ratio of about 8:1.

Table 1 below provides the name, base event, default value, brief description, and data type for each data field (column) in the Futures Trade Only Minute Bar CSV file. Table column “Missing” indicates a default behavior in case the data field value is not present or cannot be calculated. The column value “Never” means that the data field value is always present.

Table 1: CSV File Fields Schema 

Field

Type (Format)

Missing

Description

Ticker

 string

Never

Symbol name for a specific contract

UTCDate

string (yyyymmdd)

Never

UTC trade date

CallPut

string

Never

Option type (Call or Put) displayed as "C" or "P".

Note: available only in Future Options dataset

Strike

integer

Never

A fixed price for buying or selling underlying outright future contract.

Note: available only in Future Options dataset

Month

string

Never

A code for the expiration month for the option contract (as a single letter).

Note: available only in Future Options dataset

ExpirationYear

integer

Never

The expiration year of the option contract.

Note: available only in Future Options dataset

UTCTimeBarStart

string

(time)

Never

For minute bars, the format is HH:MM. For second bars, it is HH:MM:SS.

LocalDate

string (yyyymmdd)

Never

Local trade date based on local Chicago time

LocalTimeBarStart

string

(time)

Never

Local time in Chicago including daylight saving time changes

OpenPrice

decimal

Blank

Price of the first trade

HighPrice

decimal

Blank

Trade with the highest price

LowPrice

decimal

Blank

Trade with the lowest price

ClosePrice

decimal

Blank

Price of the last trade

TotalVolume

integer

Never

Total Dollar Volume.  (sum of each trade’s price * trade’s contract size)

TotalQuantity

decimal

Never

The number of contracts. The Total Quantity is not equal to the sum of BuyQuantity + SellQuantity when there are trades with undefined buy/sell side in the bar.

BuyQuantity

integer

Blank

Number of contracts with “Trade Aggressor on Buy”

SellQuantity

integer

Blank

Number of contracts with “Trade Aggressor on Sell”

 

 

TotalTradeCount

 

 

integer

 

 

Never

Total number of separate trades. The TotalTradeCount is not equal to the sum of BuyTradeCount + SellTradeCount when there are trades with undefined buy/sell side in the bar.

BuyTradeCount

integer

Blank

Number of “Trade Aggressor on Buy” trades

SellTradeCount

integer

Blank

Number of “Trade Aggressor on Sell” trades

Time Bar Start Format: One-second bar 13:03:02 is from time greater than 13:03:01 to 13:03:02. One-minute bar 11:04 is from time greater than 11:04 to less than 11:05.

Timestamps

The timestamps are all in Coordinated Universal Time (UTC). However, each bar also includes fields “LocalDate” and “LocalTimeBarStart” in Chicago local time, which is in the Central Standard Time (CST) zone.

For example, an algoseek Futures timestamp of 181514415 is 18:15:14.415 UTC. During Daylight Saving Time this converts to 13:15:14.415 CST.

Given that UTC varies by five or six hours from Chicago local time, the “LocalDate” field can differ from the “UTCDate” field. Chicago Winter Time is UTC –6 hours, and Summer Daylight Saving Time (DST) is UTC –5 hours.

For example, UTCTimeBarStart time 01:30 (1:30 a.m. UTC) with UTC date 2017-08-15 will have LocalDate 2017-08-14, and LocalTimeBarStart 20:30 (8:30 p.m. CST) due to the 5-hour difference during Daylight Saving Time.

Note: Excel will automatically try to convert millisecond timestamps into Excel time and will fail. Please make sure to convert the millisecond timestamps to text when importing.