---
title: "Key Concepts"
description: "Learn how to request and handle Futures in the Research Environment."
canonical: https://www.quantconnect.com/docs/v2/research-environment/datasets/futures/key-concepts
markdown: https://www.quantconnect.com/docs/v2/research-environment/datasets/futures/key-concepts.md
language: python
source: https://github.com/QuantConnect/Documentation/tree/master/04%20Research%20Environment/03%20Datasets/12%20Futures/01%20Key%20Concepts
modified: 2026-10-30
index: https://www.quantconnect.com/llms.txt
---

# Key Concepts

[Documentation](https://www.quantconnect.com/docs/v2.md) > [Research Environment](https://www.quantconnect.com/docs/v2/research-environment.md) > Datasets > Futures > Key Concepts

> Code examples are shown in Python. Append `?lang=csharp` to this URL for the C# version of this page.

## Introduction

A Futures contract is an agreement to buy or sell a particular commodity, asset, or security at a predetermined price at a specified time in the future. This page explains the basics of Futures data in the Research Environment. To get some data, see [Universes](https://www.quantconnect.com/docs/v2/research-environment/datasets/futures/universes.md) or [Individual Contracts](https://www.quantconnect.com/docs/v2/research-environment/datasets/futures/individual-contracts.md). For more information about the specific datasets we use, see the [US Futures](https://www.quantconnect.com/datasets/algoseek-us-futures), [US Future Universe](https://www.quantconnect.com/datasets/quantconnect-us-future-universe), and [US Futures Security Master](https://www.quantconnect.com/datasets/quantconnect-us-futures-security-master) dataset listings.

## Resolutions

The following table shows the available resolutions and data formats for Futures subscriptions:

| Resolution | TradeBar | QuoteBar | Trade Tick | Quote Tick |
| --- | --- | --- | --- | --- |
| `TICK` | Not supported | Not supported | Supported✓ | Supported✓ |
| `SECOND` | Supported✓ | Supported✓ | Not supported | Not supported |
| `MINUTE` | Supported✓ | Supported✓ | Not supported | Not supported |
| `HOUR` | Supported✓ | Supported✓ | Not supported | Not supported |
| `DAILY` | Supported✓ | Supported✓ | Not supported | Not supported |

## Markets

The following `Market` enumeration members are available for Futures:

*Members of `QuantConnect.Market` (JSON): https://www.quantconnect.com/services/inspector?type=T:QuantConnect.Market&language=python*

Fields: `CBOT`, `CFE`, `CME`, `COMEX`, `EUREX`, `HKFE`, `ICE`, `INDIA`, `India`, `KRX`, `NYMEX`, `NYSELIFFE`, `SGX`

## Data Normalization

The following data normalization modes are available for [continuous Futures contracts](https://www.quantconnect.com/docs/v2/writing-algorithms/universes/futures.md#12-Continous-Contracts):

*Members of `QuantConnect.DataNormalizationMode` (JSON): https://www.quantconnect.com/services/inspector?type=T:QuantConnect.DataNormalizationMode&language=python*

Fields: `ForwardPanamaCanal`, `BackwardsPanamaCanal`, `BackwardsRatio`, `FORWARD_PANAMA_CANAL`, `BACKWARDS_PANAMA_CANAL`, `BACKWARDS_RATIO`

## Data Mapping Modes

The `DataMappingMode` defines when contract rollovers occur for the [continuous Futures contract](https://www.quantconnect.com/docs/v2/writing-algorithms/universes/futures.md#12-Continous-Contracts). The enumeration has the following members:

*Members of `QuantConnect.DataMappingMode` (JSON): https://www.quantconnect.com/services/inspector?type=T:QuantConnect.DataMappingMode&language=python*

`Futures.Indices.VIX` (VX) doesn't support continous contract rolling with `DataMappingMode.OPEN_INTEREST` and `DataMappingMode.OPEN_INTEREST_ANNUAL`.

## Contract Depth Offsets

The `contract_depth_offset` argument of the `add_future` method defines which contract to use for the [continuous Futures contract](https://www.quantconnect.com/docs/v2/writing-algorithms/universes/futures.md#12-Continous-Contracts). 0 is the front month contract, 1 is the following back month contract, and 2 is the second back month contract.
