Skip to content

Tick

QuantConnect.Data.Market.Tick

Tick()
Tick(original: Tick)
Tick(
    time: Union[datetime, date],
    symbol: Union[Symbol, str, BaseContract],
    bid: float,
    ask: float,
)
Tick(
    time: Union[datetime, date],
    symbol: Union[Symbol, str, BaseContract],
    open_interest: float,
)
Tick(
    time: Union[datetime, date],
    symbol: Union[Symbol, str, BaseContract],
    last: float,
    bid: float,
    ask: float,
)
Tick(
    time: Union[datetime, date],
    symbol: Union[Symbol, str, BaseContract],
    sale_condition: str,
    exchange: str,
    quantity: float,
    price: float,
)
Tick(
    time: Union[datetime, date],
    symbol: Union[Symbol, str, BaseContract],
    sale_condition: str,
    exchange: Exchange,
    quantity: float,
    price: float,
)
Tick(
    time: Union[datetime, date],
    symbol: Union[Symbol, str, BaseContract],
    sale_condition: str,
    exchange: str,
    bid_size: float,
    bid_price: float,
    ask_size: float,
    ask_price: float,
)
Tick(
    time: Union[datetime, date],
    symbol: Union[Symbol, str, BaseContract],
    bid_size: float,
    bid_price: float,
    ask_size: float,
    ask_price: float,
)
Tick(
    time: Union[datetime, date],
    symbol: Union[Symbol, str, BaseContract],
    sale_condition: str,
    exchange: Exchange,
    bid_size: float,
    bid_price: float,
    ask_size: float,
    ask_price: float,
)
Tick(symbol: Union[Symbol, str, BaseContract], line: str)
Tick(
    symbol: Union[Symbol, str, BaseContract],
    line: str,
    base_date: Union[datetime, date],
)
Tick(
    config: SubscriptionDataConfig,
    reader: StreamReader,
    date: Union[datetime, date],
)
Tick(
    config: SubscriptionDataConfig,
    line: str,
    date: Union[datetime, date],
)

Bases: BaseData

Tick class is the base representation for tick data. It is grouped into a Ticks object which implements IDictionary and passed into an OnData event handler.

Signature descriptions:

  • Initialize tick class with a default constructor.

  • Cloner constructor for fill forward engine implementation. Clone the original tick into this new tick:

  • Constructor for a FOREX tick where there is no last sale price. The volume in FX is so high its rare to find FX trade data. To fake this the tick contains bid-ask prices and the last price is the midpoint.

  • Initializes a new instance of the Tick class to TickType.OPEN_INTEREST.

  • Initializer for a last-trade equity tick with bid or ask prices.

  • Trade tick type constructor

  • Quote tick type constructor

  • Constructor for QuantConnect FXCM Data source:

  • Constructor for QuantConnect tick data

  • Parse a tick data line from quantconnect zip source files.

Parameters:

Name Type Description Default
original Optional[Tick]

Original tick we're cloning

None
time Optional[Union[datetime, date]]

Full date and time

None
symbol Optional[Union[Symbol, str, BaseContract]]

Underlying currency pair we're trading

None
bid Optional[float]

FX tick bid value

None
ask Optional[float]

FX tick ask value

None
open_interest Optional[float]

The value of the open interest for the specified symbol.

None
last Optional[float]

Last trade price

None
sale_condition Optional[str]

The ticks sale condition

None
exchange Optional[str | Exchange]

The ticks exchange

None
quantity Optional[float]

The quantity traded

None
price Optional[float]

The price of the trade

None
bid_size Optional[float]

The bid size

None
bid_price Optional[float]

The bid price

None
ask_size Optional[float]

The ask size

None
ask_price Optional[float]

The ask price

None
line Optional[str]

CSV line of data from FXCM

None
base_date Optional[Union[datetime, date]]

The base date of the tick

None
reader Optional[StreamReader]

The source stream reader

None
date Optional[Union[datetime, date]]

Base date for the tick (ticks date is stored as int milliseconds since midnight)

None
config Optional[SubscriptionDataConfig]

Subscription configuration object

None

tick_type

tick_type: TickType

Type of the Tick: Trade or Quote.

quantity

quantity: float

Quantity exchanged in a trade.

exchange_code

exchange_code: str

Exchange code this tick came from Exchanges

exchange

exchange: str

Exchange name this tick came from Exchanges

sale_condition

sale_condition: str

Sale condition for the tick.

parsed_sale_condition

parsed_sale_condition: int

For performance parsed sale condition for the tick.

suspicious

suspicious: bool

Bool whether this is a suspicious tick

bid_price

bid_price: float

Bid Price for Tick

ask_price

ask_price: float

Asking price for the Tick quote.

last_price

last_price: float

Alias for "Value" - the last sale for this asset.

bid_size

bid_size: float

Size of bid quote.

ask_size

ask_size: float

Size of ask quote.

symbol

symbol: Symbol

Symbol representation for underlying Security

data_type

data_type: MarketDataType

Market Data Type of this data - does it come in individual price packets or is it grouped into OHLC.

time

time: datetime

Current time marker of this data packet.

end_time

end_time: datetime

The end time of this data. Some data covers spans (trade bars) and as such we want to know the entire time span covered

value

value: float

Value representation of this data packet. All data requires a representative value for this moment in time. For streams of data this is the price now, for OHLC packets this is the closing price.

price

price: float

As this is a backtesting platform we'll provide an alias of value as price.

ALL_RESOLUTIONS

ALL_RESOLUTIONS: List[Resolution] = ...

A list of all Resolution

This codeEntityType is protected.

DAILY_RESOLUTION

DAILY_RESOLUTION: List[Resolution] = ...

A list of Resolution.DAILY

This codeEntityType is protected.

MINUTE_RESOLUTION

MINUTE_RESOLUTION: List[Resolution] = ...

A list of Resolution.MINUTE

This codeEntityType is protected.

HIGH_RESOLUTION

HIGH_RESOLUTION: List[Resolution] = ...

A list of high Resolution, including minute, second, and tick.

This codeEntityType is protected.

OPTION_RESOLUTIONS

OPTION_RESOLUTIONS: List[Resolution] = ...

A list of resolutions support by Options

This codeEntityType is protected.

is_fill_forward

is_fill_forward: bool

True if this is a fill forward piece of data

clone

clone() -> BaseData

Clone implementation for tick class:

Returns:

Type Description
BaseData

New tick object clone of the current class values.

get_source

get_source(
    config: SubscriptionDataConfig,
    date: datetime,
    is_live_mode: bool,
) -> SubscriptionDataSource

Get source for tick data feed - not used with QuantConnect data sources implementation.

Parameters:

Name Type Description Default
config SubscriptionDataConfig

Configuration object

required
date datetime

Date of this source request if source spread across multiple files

required
is_live_mode bool

true if we're in live mode, false for backtesting mode

required

Returns:

Type Description
SubscriptionDataSource

String source location of the file to be opened with a stream.

is_valid

is_valid() -> bool

Check if tick contains valid data (either a trade, or a bid or ask)

reader

reader(
    config: SubscriptionDataConfig,
    line: str,
    date: datetime,
    is_live_mode: bool,
) -> BaseData

Tick implementation of reader method: read a line of data from the source and convert it to a tick object.

Parameters:

Name Type Description Default
config SubscriptionDataConfig

Subscription configuration object for algorithm

required
line str

Line from the datafeed source

required
date datetime

Date of this reader request

required
is_live_mode bool

true if we're in live mode, false for backtesting mode

required

Returns:

Type Description
BaseData

New Initialized tick.

set_value

set_value() -> None

Sets the tick Value based on ask and bid price

to_string

to_string() -> str

Formats a string with the symbol and value.

Returns:

Type Description
str

string - a string formatted as SPY: 167.753.

update

update(
    last_trade: float,
    bid_price: float,
    ask_price: float,
    volume: float,
    bid_size: float,
    ask_size: float,
) -> None

Update the tick price information - not used.

Parameters:

Name Type Description Default
last_trade float

This trade price

required
bid_price float

Current bid price

required
ask_price float

Current asking price

required
volume float

Volume of this trade

required
bid_size float

The size of the current bid, if available

required
ask_size float

The size of the current ask, if available

required

requires_mapping

requires_mapping() -> bool

Indicates if there is support for mapping

Returns:

Type Description
bool

True indicates mapping should be used.

data_time_zone

data_time_zone() -> Any

Specifies the data time zone for this data type. This is useful for custom data types

Returns:

Type Description
Any

The DateTimeZone of this data type.

default_resolution

default_resolution() -> Resolution

Gets the default resolution for this data and security type

deserialize_message

deserialize_message(serialized: str) -> Iterable[BaseData]

Deserialize the message from the data server

Parameters:

Name Type Description Default
serialized str

The data server's message

required

Returns:

Type Description
Iterable[BaseData]

An enumerable of base data, if unsuccessful, returns an empty enumerable.

is_sparse_data

is_sparse_data() -> bool

Indicates that the data set is expected to be sparse

Returns:

Type Description
bool

True if the data set represented by this type is expected to be sparse.

should_cache_to_security

should_cache_to_security() -> bool

Indicates whether this contains data that should be stored in the security cache

Returns:

Type Description
bool

Whether this contains data that should be stored in the security cache.

supported_resolutions

supported_resolutions() -> List[Resolution]

Gets the supported resolution for this data and security type

update_ask

update_ask(ask_price: float, ask_size: float) -> None

Updates this base data with the new quote ask information

Parameters:

Name Type Description Default
ask_price float

The current ask price

required
ask_size float

The current ask size

required

update_bid

update_bid(bid_price: float, bid_size: float) -> None

Updates this base data with the new quote bid information

Parameters:

Name Type Description Default
bid_price float

The current bid price

required
bid_size float

The current bid size

required

update_quote

update_quote(
    bid_price: float,
    bid_size: float,
    ask_price: float,
    ask_size: float,
) -> None

Updates this base data with new quote information

Parameters:

Name Type Description Default
bid_price float

The current bid price

required
bid_size float

The current bid size

required
ask_price float

The current ask price

required
ask_size float

The current ask size

required

update_trade

update_trade(last_trade: float, trade_size: float) -> None

Updates this base data with a new trade

Parameters:

Name Type Description Default
last_trade float

The price of the last trade

required
trade_size float

The quantity traded

required