---
title: "Future Options"
description: "Download and update the US Future Options dataset through the LEAN CLI."
canonical: https://www.quantconnect.com/docs/v2/lean-cli/datasets/quantconnect/future-options
markdown: https://www.quantconnect.com/docs/v2/lean-cli/datasets/quantconnect/future-options.md
language: python
source: https://github.com/QuantConnect/Documentation/tree/master/05%20Lean%20CLI/05%20Datasets/05%20QuantConnect/06%20Future%20Options
modified: 2026-11-14
index: https://www.quantconnect.com/llms.txt
---

# Future Options

[Documentation](https://www.quantconnect.com/docs/v2.md) > [Lean CLI](https://www.quantconnect.com/docs/v2/lean-cli.md) > Datasets > [QuantConnect](https://www.quantconnect.com/docs/v2/lean-cli/datasets/quantconnect.md) > Future Options

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

## Introduction

Download the [US Future Options dataset](https://www.quantconnect.com/docs/v2/writing-algorithms/datasets/algoseek/us-future-options.md) to your local machine. You can download the full dataset in bulk to avoid selection bias. The dataset contains trade, quote, and open interest data for every ticker and trading day.

To use the CLI, you must be a member in an [organization](https://www.quantconnect.com/docs/v2/cloud-platform/organizations/tier-features.md) on a paid tier.

## Prerequisites

Access to the US Future Options dataset is by contact only. To unlock local access, [contact us](https://www.quantconnect.com/contact). You need [billing permissions](https://www.quantconnect.com/docs/v2/cloud-platform/organizations/members.md#09-Permissions) to change the organization's subscriptions.

The US Future Options dataset depends on the following datasets:

- [US Future Option Universe](https://www.quantconnect.com/datasets/quantconnect-us-future-option-universe) - data on the available US Future Options contracts and their current Open Interest.
- [US Futures Security Master](https://www.quantconnect.com/datasets/quantconnect-us-futures-security-master) - data to construct continuous Futures.
- [US Future Universe](https://www.quantconnect.com/datasets/quantconnect-us-future-universe) - data on the available US Future contracts, their daily trading volume, and Open Interest.
- [US Futures](https://www.quantconnect.com/datasets/algoseek-us-futures) - data on the underlying Futures contracts, including price, volume, Open Interest, and expiry.

## Download in Bulk

After you unlock local access (see [Prerequisites](https://www.quantconnect.com/docs/v2/lean-cli/datasets/quantconnect/future-options.md#02-Prerequisites)), open a terminal in your [organization workspace](https://www.quantconnect.com/docs/v2/lean-cli/initialization/organization-workspaces.md) and run the following commands to bulk download the prerequisite datasets.

To download or update your local copy of the US Futures Security Master, run:

```
$ lean data download --dataset "US Futures Security Master"
```

To download or update your local copy of the US Future Universe data, run:

```
$ lean data download --dataset "US Future Universe" --data-type "Bulk" --start "20250403" --end "20250403"
```

To download or update your local copy of the US Future Option Universe data, run:

```
$ lean data download --dataset "US Future Option Universe" --data-type "Bulk" --start "20250403" --end "20250403"
```

To download or update your local copy of the US Future Options data, use the [CLI Command Generator](https://www.quantconnect.com/datasets/algoseek-us-future-options/cli) on the dataset listing to generate your download command, then run it in your organization workspace. For more information, see [Using the CLI](https://www.quantconnect.com/docs/v2/lean-cli/datasets/quantconnect/key-concepts.md#03-Using-the-CLI). You also need the underlying US Futures data; see [US Futures](https://www.quantconnect.com/docs/v2/lean-cli/datasets/quantconnect/futures.md#03-Download-in-Bulk).

After you bulk download the US Future Options dataset, new daily updates are available at 7 AM Eastern Time (ET) after each trading day. Instead of directly calling the `lean data download` command, you can place a Python script in the `data` directory of your organization workspace and run it to update your data files. The following example script updates all data resolutions and markets:

```python
import os
import pandas as pd
from datetime import datetime, time, timedelta
from pytz import timezone
from os.path import abspath, dirname
os.chdir(dirname(abspath(__file__)))

OVERWRITE = False

# Define a method to download the data
def __download_data(resolution, start=None, end=None):
    print(f"Updating {resolution} data...")
    command = f'lean data download --dataset "US Future Options" --data-type "Bulk"  --resolution "{resolution}"'
    if start:
        end = end if end else start
        command += f" --start {start} --end {end}"
    if OVERWRITE:
        command += " --overwrite"
    print(command)
    os.system(command)

def __get_end_date() -> str:
    now = datetime.now(timezone("US/Eastern"))
    if now.time() > time(7,30):
        return (now - timedelta(1)).strftime("%Y%m%d")
    print('New data is available at 07:30 AM EST')
    return (now - timedelta(2)).strftime("%Y%m%d")

def __download_high_frequency_data(latest_on_cloud):
    for resolution in ["minute"]:
        dir_name = f"futureoption/cme/{resolution}/es".lower()
        if not os.path.exists(dir_name):
            __download_data(resolution, '19980101')
            continue
        latest_on_disk = sorted(os.listdir(dir_name))[-1].split('_')[0]
        if latest_on_disk >= latest_on_cloud:
            print(f"{resolution} data is already up to date.")
            continue
        __download_data(resolution, latest_on_disk, latest_on_cloud)

def __download_low_frequency_data(latest_on_cloud):
    for resolution in ["daily", "hour"]:
        file_name = f"futureoption/cme/{resolution}/es.zip".lower()
        if not os.path.exists(file_name):
            __download_data(resolution)
            continue
        latest_on_disk = str(pd.read_csv(file_name, header=None)[0].iloc[-1])[:8]
        if latest_on_disk >= latest_on_cloud:
            print(f"{resolution} data is already up to date.")
            continue
        __download_data(resolution)

if __name__ == "__main__":
    latest_on_cloud = __get_end_date()
    __download_low_frequency_data(latest_on_cloud)
    __download_high_frequency_data(latest_on_cloud)
```

The preceding script checks the date of the most recent ES data you have from the CME market for minute resolution. If there is new data available, it downloads the new data files and overwrites your hourly and daily files. If you don't intend to download all resolutions and markets, adjust this script to your needs.

## Download by Ticker

Access to the US Future Options dataset is by contact only, so there is no by-ticker download command. To request access, [contact us](https://www.quantconnect.com/contact). After you have access, download the data in bulk; see [Download in Bulk](https://www.quantconnect.com/docs/v2/lean-cli/datasets/quantconnect/future-options.md#03-Download-in-Bulk).

## Size and Format

The following table shows the size and format of the US Future Options dataset for each resolution:

| Resolution | Size | Format |
| --- | --- | --- |
| Daily | 1.5 GB | 1 file per ticker |
| Hour | 11 GB | 1 file per ticker |
| Minute | 400 GB | 1 file per ticker per day |

For more information about the file format, see the [Future Options data format](https://www.quantconnect.com/docs/v2/lean-engine/data-format/future-options.md).

## Price

To view the price of the US Future Options dataset, [contact us](https://www.quantconnect.com/contact).
