Skip to content

CFTCFinancialFutures

QuantConnect.DataSource.CFTCFinancialFutures

CFTCFinancialFutures()
CFTCFinancialFutures(line: str)

Bases: BaseData

CFTC Commitments of Traders - Traders in Financial Futures (TFF) report (futures-only), for financial markets (indices, rates, FX). Breaks trader positioning into Dealer/Intermediary, Asset Manager/Institutional, Leveraged Funds, and Other Reportable, plus Non-Reportable.

Signature descriptions:

  • Default constructor required by LEAN.

  • Parses one CSV line into a data point.

end_time

end_time: datetime

Publication date of the report, the Friday after the Tuesday the positions were held. This is when LEAN delivers the data point.

open_interest

open_interest: Optional[int]

Total open interest across all contracts. This is also the data point's Value.

dealer_long

dealer_long: Optional[int]

Dealer / intermediary long contracts.

dealer_short

dealer_short: Optional[int]

Dealer / intermediary short contracts.

dealer_spread

dealer_spread: Optional[int]

Dealer / intermediary spreading contracts.

asset_manager_long

asset_manager_long: Optional[int]

Asset manager / institutional long contracts.

asset_manager_short

asset_manager_short: Optional[int]

Asset manager / institutional short contracts.

asset_manager_spread

asset_manager_spread: Optional[int]

Asset manager / institutional spreading contracts.

leveraged_funds_long

leveraged_funds_long: Optional[int]

Leveraged funds (hedge funds, CTAs) long contracts.

leveraged_funds_short

leveraged_funds_short: Optional[int]

Leveraged funds (hedge funds, CTAs) short contracts.

leveraged_funds_spread

leveraged_funds_spread: Optional[int]

Leveraged funds spreading contracts.

other_reportable_long

other_reportable_long: Optional[int]

Other reportable long contracts.

other_reportable_short

other_reportable_short: Optional[int]

Other reportable short contracts.

other_reportable_spread

other_reportable_spread: Optional[int]

Other reportable spreading contracts.

non_reportable_long

non_reportable_long: Optional[int]

Non-reportable (small trader) long contracts.

non_reportable_short

non_reportable_short: Optional[int]

Non-reportable (small trader) short contracts.

leveraged_funds_net

leveraged_funds_net: Optional[int]

Leveraged funds net position, long minus short.

DATASET_ID

DATASET_ID: str

Socrata dataset id for the Traders in Financial Futures (TFF) report (used by the data processor).

REPORT_FOLDER

REPORT_FOLDER: str

Output subfolder under alternative/cftc/commitmentsoftraders/.

RAW_FIELDS

RAW_FIELDS: Sequence[str]

Raw Socrata position fields, in the exact order the processor writes them to the CSV and the CFTCFinancialFutures(string) parser reads them back (csv<2> onward). This is the single source of truth for the column layout — keep it in sync with the parser below.

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.

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 Field is protected.

DAILY_RESOLUTION

DAILY_RESOLUTION: List[Resolution] = ...

A list of Resolution.DAILY

This Field is protected.

MINUTE_RESOLUTION

MINUTE_RESOLUTION: List[Resolution] = ...

A list of Resolution.MINUTE

This Field is protected.

HIGH_RESOLUTION

HIGH_RESOLUTION: List[Resolution] = ...

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

This Field is protected.

OPTION_RESOLUTIONS

OPTION_RESOLUTIONS: List[Resolution] = ...

A list of resolutions support by Options

This Field is protected.

is_fill_forward

is_fill_forward: bool

True if this is a fill forward piece of data

clone

clone() -> BaseData

Creates a copy of the instance.

data_time_zone

data_time_zone() -> Any

Data time zone (Eastern — CFTC release time).

default_resolution

default_resolution() -> Resolution

Default resolution.

get_source

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

Location of the source file: alternative/cftc/commitmentsoftraders/tff/{code}.csv

is_sparse_data

is_sparse_data() -> bool

Sparse: one file per market, suppress missing-file logs.

reader

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

Parses the data from the line provided and loads it into LEAN.

requires_mapping

requires_mapping() -> bool

Unlinked (keyed by CFTC market code, not a mapped equity).

supported_resolutions

supported_resolutions() -> List[Resolution]

Supported resolutions (Daily only — weekly cadence).

to_string

to_string() -> str

String representation for debugging.

deserialize_message

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

Deserialize the message from the data server

Parameters:

Name Type Description Default
serialized str

The data server's message

required

Returns:

Type Description
Sequence[BaseData]

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

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.

update

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

Update routine to build a bar/tick from a data update.

Parameters:

Name Type Description Default
last_trade float

The last 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

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