API Reference

lean data download


Purchase and download data directly from QuantConnect or download from Support Data Providers

$ lean data download [OPTIONS]


Lets you purchase and download data from QuantConnect Datasets. This command performs the following actions:

  1. An interactive wizard is shown allowing you to configure exactly which data you want to download.
  2. You are asked to accept the CLI API Access and Data Agreement in your web browser.
  3. You are asked to confirm the purchase one last time.
  4. The CLI downloads the requested files while charging the organization that's linked to your current organization workspace.

The available datasets and their pricing can be found in QuantConnect Datasets. Data is priced on a per-file per-download basis, meaning you pay a certain number of QuantConnect Credits (QCC) for each file you download. The required QCC is deducted from your organization's QCC balance when a file is downloaded. If you force-quit the command before it downloaded all requested files, you are not charged for the files you didn't download.

When --dataset is given, the command runs in non-interactive mode and several steps in the preceding list are skipped. Instead, the command reads the downloading configuration from the given command-line options. In this mode, the --dataset option is required, as well as all options specific to the selected dataset.

Example non-interactive usage:

$ lean data download \
    --dataset "Bitfinex Crypto Price Data" \
    --data-type "Trade" \
    --ticker "BTCUSDT" \
    --resolution "Daily" \
    --start "20201208" \
    --end "20221208" 

In case the local data already exists, a warning is logged and you are given the choice of whether you want to enable overwriting existing data or not. Use the --overwrite flag to override this behavior and enable overwriting existing data in all such cases.

To automatically confirm payment confirmation prompts, use the --yes flag.


The lean data download command supports the following options:

--data-provider-historical <enum: Interactive Brokers
                                  Coinbase Advanced Trade
                                  Terminal Link
The name of the downloader data provider
--ib-user-name <string>Your Interactive Brokers username
--ib-account <string>Your Interactive Brokers account id
--ib-password <string>Your Interactive Brokers password
--ib-weekly-restart-utc-time <string>Weekly restart UTC time (hh:mm:ss). Each week on Sunday your algorithm is restarted at this time, and will require 2FA verification. This is required by Interactive Brokers. Use this option explicitly to override the default value
--oanda-account-id <string>Your OANDA account id
--oanda-access-token <string>Your OANDA API token
--oanda-environment <enum: Practice|Trade>The environment to run in, Practice for fxTrade Practice, Trade for fxTrade
--bitfinex-api-key <string>Your Bitfinex API key
--bitfinex-api-secret <string>Your Bitfinex API secret
--coinbase-api-key <string>Your Coinbase Advanced Trade API key
--coinbase-api-secret <string>Your Coinbase Advanced Trade API secret
--binance-exchange-name <enum: Binance
Binance exchange name [Binance, BinanceUS, Binance-USDM-Futures, Binance-COIN-Futures]
--binance-api-key <string>Your Binance API key
--binanceus-api-key <string>Your Binance API key
--binance-api-secret <string>Your Binance API secret
--binanceus-api-secret <string>Your Binance API secret
--kraken-api-key <string>Your Kraken API key
--kraken-api-secret <string>Your Kraken API secret
--kraken-verification-tier <enum: Starter|Intermediate|Pro>Your Kraken Verification Tier
--iqfeed-iqconnect <string>The path to the IQConnect binary
--iqfeed-username <string>Your IQFeed username
--iqfeed-password <string>Your IQFeed password
--iqfeed-version <string>The product version of your IQFeed developer account
--iqfeed-host <string>The IQFeed host address
--polygon-api-key <string>Your Polygon.io API Key
--factset-auth-config-file <file>The path to the FactSet authentication configuration file
--iex-cloud-api-key <string>Your iexcloud.io API token publishable key
--iex-price-plan <enum: Launch|Grow|Enterprise>Your IEX Cloud Price plan
--alpha-vantage-api-key <string>Your Alpha Vantage Api Key
--alpha-vantage-price-plan <enum: Free
Your Alpha Vantage Premium API Key plan
--coinapi-api-key <string>Your coinapi.io Api Key
--coinapi-product <enum: Free
CoinApi pricing plan (https://www.coinapi.io/market-data-api/pricing)
--thetadata-ws-url <string>The ThetaData host address
--thetadata-rest-url <string>The ThetaData host address
--thetadata-subscription-plan <enum: Free
Your ThetaData subscription price plan
--terminal-link-connection-type <enum: DAPI|SAPI>Terminal Link Connection Type [DAPI, SAPI]
--terminal-link-server-auth-id <string>The Auth ID of the TerminalLink server
--terminal-link-environment <enum: Production|Beta>The environment to run in
--terminal-link-server-host <string>The host of the TerminalLink server
--terminal-link-server-port <integer>The port of the TerminalLink server
--terminal-link-openfigi-api-key <string>The Open FIGI API key to use for mapping options
--bybit-api-key <string>Your Bybit API key
--bybit-api-secret <string>Your Bybit API secret
--bybit-vip-level <enum: VIP0
Your Bybit VIP Level
--dataset <string>The name of the dataset to download non-interactively
--overwriteOverwrite existing local data
-y, --yesAutomatically confirm payment confirmation prompts
--data-type <enum: Trade
Specify the type of historical data
--resolution <enum: Tick
Specify the resolution of the historical data
--security-type <enum: Equity
Specify the security type of the historical data
--market <string>Specify the market name for tickers (e.g., 'USA', 'NYMEX', 'Binance')
--ticker <string>Specify comma separated list of tickers to use for historical data request
--start <string>Specify the start date for the historical data request in the format yyyyMMdd
--end <string>Specify the end date for the historical data request in the format yyyyMMdd. (defaults to today)
--image <string>The LEAN engine image to use (defaults to quantconnect/lean:latest)
--updatePull the LEAN engine image before running the Downloader Data Provider
--no-updateUse the local LEAN engine image instead of pulling the latest version
--lean-config <file>The Lean configuration file that should be used (defaults to the nearest lean.json)
--verboseEnable debug logging
--helpDisplay the help text of the lean data download command and exit

You can also see our Videos. You can also get in touch with us via Discord.

Did you find this page helpful?

Contribute to the documentation: