Datasets
Costs
Introduction
This page describes how to calculate the approximate cost of downloading local data for algorithms of each asset class. The prices on this page reflect the data prices at the time of writing. To view the current prices of each dataset, open a dataset listing in the Dataset Market and then click the Pricing tab. To download the data, you can use the lean data download command or the ApiDataProvider.
US Equity
US Equity algorithms require the US Equity Security Master and some data from the US Equities dataset. An annual subscription to the US Equity Security Master starts at $600, but it depends on your organization tier. The US Equities dataset is available is several resolutions. The resolution you need depends on the US Equity subscriptions you create in your algorithm and the resolution of data you get in history requests. The following table describes the file format and costs of each resolution:
Resolution | File Format | Cost per file |
---|---|---|
Tick | One file per security per trading day per data format. Quote and trade data are separate files. | 6 QCC = $0.06 USD |
Second | One file per security per trading day per data format. Quote and trade data are separate files. | 5 QCC = $0.05 USD |
Minute | One file per security per trading day per data format. Quote and trade data are separate files. | 5 QCC = $0.05 USD |
Hour | One file per security. | 300 QCC = $3 USD |
Daily | One file per security. | 100 QCC = $1 USD |
If you add universes to your algorithm, the following table shows the additional datasets you need:
Universe Type | Required Dataset | File Format | Cost per file |
---|---|---|---|
Coarse or Dollar Volume | US Coarse Universe | One file per day. | 5 QCC = $0.05 USD |
ETF Constituents | US ETF Constituents | One file per ETF per day. | 50 QCC = $0.50 USD |
For example, the following algorithm creates a dollar volume universe with 100 securities and then subscribes to minute resolution data for each US Equity in the universe:
namespace QuantConnect.Algorithm.CSharp { public class USEquityDataAlgorithm : QCAlgorithm { public override void Initialize() { SetStartDate(2020, 1, 1); SetEndDate(2021, 1, 1); AddUniverse(Universe.DollarVolume.Top(100)); } } }
class USEquityDataAlgorithm(QCAlgorithm): def Initialize(self) -> None: self.SetStartDate(2020, 1, 1) self.SetEndDate(2021, 1, 1) self.AddUniverse(self.Universe.DollarVolume.Top(100))
The following table shows the data cost of the preceding algorithm:
Dataset | Package | Initial Cost | Ongoing Cost |
---|---|---|---|
US Equity Security Master | Download On Premise | $600 USD | $600 USD/year |
US Coarse Universe | On Premise Download | 252 trading days
=> 252 files 252 files @ 5 QCC/file => 252 * 5 QCC = 12,600 QCC = $126 USD | 1 trading day => 1 file 1 file/day @ 5 QCC/file => 5 QCC/day = $0.05 USD/day |
US Equity | Minute Download | 100 securities over 252 trading days with 2 data formats => 100 * 252 * 2 files = 50,400 files 50,400 files @ 5 QCC/file => 50,400 * 5 QCC = 252,000 QCC = $2,520 USD | 100 securities with 2 data formats => 100 * 2 files/day = 200 files/day 200 files/day @ 5 QCC/file => 200 * 5 QCC/day = 1,000 QCC/day = $10 USD/day |
India Equity
India Equity algorithms require the India Equity Security Master and some data from the India Equities dataset. If you have a LEAN CLI subscription, the India Equity Security Master is free. The India Equities dataset is available is several resolutions. The resolution you need depends on the India Equity subscriptions you create in your algorithm and the resolution of data you get in history requests. The following table describes the file format and costs of each resolution:
Resolution | File Format | Cost per file |
---|---|---|
Minute | One file per security per trading day. | 4 QCC = $0.04 USD |
Hour | One file per security. | 300 QCC = $3 USD |
Daily | One file per security. | 100 QCC = $1 USD |
For example, the following algorithm subscribes to minute resolution data for one security:
namespace QuantConnect.Algorithm.CSharp { public class IndiaEquityDataAlgorithm : QCAlgorithm { public override void Initialize() { SetStartDate(2020, 1, 1); SetEndDate(2021, 1, 1); AddEquity("YESBANK", market: Market.India); } } }
class IndiaEquityDataAlgorithm(QCAlgorithm): def Initialize(self) -> None: self.SetStartDate(2020, 1, 1) self.SetEndDate(2021, 1, 1) self.AddEquity("YESBANK", market=Market.India)
The following table shows the data cost of the preceding algorithm:
Dataset | Package | Initial Cost | Ongoing Cost |
---|---|---|---|
India Equity Security Master | Download On Premise | $0 USD | $0 USD |
India Equity | Minute Download | 1 security over 252 trading days => 252 files 252 files @ 4 QCC/file => 1,008 QCC = $10.08 USD | 1 security => 1 file/day 1 file/day @ 4 QCC/file => 4 QCC/day = $0.04 USD/day |
Equity Options
Equity Option algorithms require the US Equity Security Master, some data from the US Equity Options dataset, and data for the underlying US Equity universes and assets. An annual subscription to the US Equity Security Master starts at $600, but it depends on your organization tier. The US Equity Options dataset is available is several resolutions. The resolution you need depends on the US Equity Option subscriptions you create in your algorithm and the resolution of data you get in history requests. The following table describes the file format and costs of each resolution:
Resolution | File Format | Cost per file |
---|---|---|
Minute | One file per Option per trading day per data format. Quote, trade, and open interest data are separate files. | 15 QCC = $0.15 USD |
Hour | One file per Option per year per data format. Trade and open interest data are separate files. | 900 QCC = $9 USD |
Daily | One file per Option per year. Trade and open interest data are separate files. | 300 QCC = $3 USD |
For example, the following algorithm subscribes to minute resolution data for an Equity Option and its underlying asset:
namespace QuantConnect.Algorithm.CSharp { public class USEquityOptionsDataAlgorithm : QCAlgorithm { public override void Initialize() { SetStartDate(2020, 1, 1); SetEndDate(2021, 1, 1); var underlying = AddEquity("GOOG").Symbol; AddOption(underlying); } } }
class USEquityOptionsDataAlgorithm(QCAlgorithm): def Initialize(self) -> None: self.SetStartDate(2020, 1, 1) self.SetEndDate(2021, 1, 1) underlying = self.AddEquity("GOOG").Symbol self.AddOption(underlying)
The following table shows the data cost of the preceding algorithm:
Dataset | Package | Initial Cost | Ongoing Cost |
---|---|---|---|
US Equity Security Master | Download On Premise | $600 USD | $600 USD/year |
US Equity | Minute Download | 1 security over 252 trading days with 2 data formats => 1 * 252 * 2 files = 504 files 504 files @ 5 QCC/file => 504 * 5 QCC = 2,520 QCC = $25.20 USD | 1 security with 2 data formats => 2 files/day 2 files/day @ 5 QCC/file => 2 * 5 QCC/day = 10 QCC/day = $0.10 USD/day |
US Equity Options | Minute Download | 1 Option over 252 trading days with 3 data formats => 1 * 252 * 3 files = 756 files 756 files @ 15 QCC/file => 756 * 15 QCC = 11,360 QCC = $113.60 USD | 1 Option with 3 data formats => 3 files/day 3 files/day @ 15 QCC/file => 3 * 15 QCC/day = 45 QCC/day = $0.45 USD/day |
Crypto
Crypto algorithms require at least one of the CoinAPI datasets. The CoinAPI datasets are available is several resolutions. The resolution you need depends on the Crypto subscriptions you create in your algorithm and the resolution of data you get in history requests. The following table describes the file format and costs of each resolution:
Resolution | File Format | Cost per file |
---|---|---|
Tick | One file per security per trading day per brokerage per data format. Quote and trade data are separate files. | 100 QCC = $1 USD |
Second | One file per security per trading day per brokerage per data format. Quote and trade data are separate files. | 25 QCC = $0.25 USD |
Minute | One file per security per trading day per brokerage per data format. Quote and trade data are separate files. | 5 QCC = $0.05 USD |
Hour | One file per security per brokerage. | 400 QCC = $4 USD |
Daily | One file per security per brokerage. | 100 QCC = $1 USD |
If you add universes to your algorithm, you also need CryptoCoarseFundamental
data. The file format of CryptoCoarseFundamental
data is one file per day per brokerage and each file costs 100 QCC = $1 USD.
For example, the following algorithm creates a universe of 100 Cryptocurrencies and then subscribes to minute resolution data for each one in the universe:
namespace QuantConnect.Algorithm.CSharp { public class CryptoDataAlgorithm : QCAlgorithm { public override void Initialize() { SetStartDate(2020, 1, 1); SetEndDate(2021, 1, 1); AddUniverse(new CryptoCoarseFundamentalUniverse(Market.GDAX, UniverseSettings, cryptoCoarse => cryptoCoarse.OrderByDescending(cf => cf.VolumeInUsd).Take(100).Select(x => x.Symbol)) ); } } }
class CryptoDataAlgorithm(QCAlgorithm): def Initialize(self) -> None: self.SetStartDate(2020, 1, 1) self.SetEndDate(2021, 1, 1) self.AddUniverse(CryptoCoarseFundamentalUniverse(Market.GDAX, self.UniverseSettings, self.universe_filter)) def universe_filter(self, crypto_coarse: List[CryptoCoarseFundamental]) -> List[Symbol]: sorted_by_dollar_volume = sorted(crypto_coarse, key=lambda cf: cf.VolumeInUsd, reverse=True) return [cf.Symbol for cf in sorted_by_dollar_volume[:100]]
The following table shows the data cost of the preceding algorithm:
Dataset | Package | Initial Cost | Ongoing Cost |
---|---|---|---|
Coinbase Crypto Price Data | Universe Download | 365 days => 365 files 365 files @ 100 QCC/file => 365 * 100 QCC = 36,500 QCC = $365 USD | 1 file per day @ 100 QCC/file => 100 QCC/day = $1 USD/day |
Coinbase Crypto Price Data | Minute Download | 100 securities over 365 trading days with 2 data formats => 1 * 100 * 365 * 2 files = 73,000 files 73,000 files @ 5 QCC/file => 73,000 * 5 QCC = 365,000 QCC = $3,650 USD | 100 securities with 2 data formats => 100 * 2 files/day = 200 files/day 200 files/day @ 5 QCC/file => 200 * 5 QCC/day = 1,000 QCC/day = $10 USD/day |
Forex
Forex algorithms require some data from the FOREX dataset. The FOREX dataset is available is several resolutions. The resolution you need depends on the Forex subscriptions you create in your algorithm and the resolution of data you get in history requests. The following table describes the file format and costs of each resolution:
Resolution | File Format | Cost per file |
---|---|---|
Second | One file per currency pair per trading day. | 3 QCC = $0.03 USD |
Minute | One file per currency pair per trading day. | 3 QCC = $0.03 USD |
Hour | One file per currency pair. | 3 QCC = $0.03 USD |
Daily | One file per currency pair. | 3 QCC = $0.03 USD |
For example, the following algorithm subscribes to minute resolution data for one Forex pair:
namespace QuantConnect.Algorithm.CSharp { public class ForexDataAlgorithm : QCAlgorithm { public override void Initialize() { SetStartDate(2020, 1, 1); SetEndDate(2021, 1, 1); AddForex("USDCAD"); } } }
class ForexDataAlgorithm(QCAlgorithm): def Initialize(self) -> None: self.SetStartDate(2020, 1, 1) self.SetEndDate(2021, 1, 1) self.AddForex("USDCAD")
The following table shows the data cost of the preceding algorithm:
Dataset | Package | Initial Cost | Ongoing Cost |
---|---|---|---|
FOREX Data | Minute Download | 1 currency pair over 312 trading days
=> 312 files 312 files @ 3 QCC/file => 312 * 3 QCC = 936 QCC = $9.36 USD | 1 currency pair/day => 1 file/day 1 file/day @ 3 QCC/file => 3 QCC/day = $0.03 USD/day |
CFD
CFD algorithms require some data from the CFD dataset. The CFD dataset is available is several resolutions. The resolution you need depends on the CFD subscriptions you create in your algorithm and the resolution of data you get in history requests. The following table describes the file format and costs of each resolution:
Resolution | File Format | Cost per file |
---|---|---|
Second | One file per contract per trading day. | 3 QCC = $0.03 USD |
Minute | One file per contract per trading day. | 3 QCC = $0.03 USD |
Hour | One file per contract. | 3 QCC = $0.03 USD |
Daily | One file per contract. | 3 QCC = $0.03 USD |
For example, the following algorithm subscribes to minute resolution data for one CFD contract:
namespace QuantConnect.Algorithm.CSharp { public class CFDDataAlgorithm : QCAlgorithm { public override void Initialize() { SetStartDate(2020, 1, 1); SetEndDate(2021, 1, 1); AddCfd("XAUUSD"); } } }
class CFDDataAlgorithm(QCAlgorithm): def Initialize(self) -> None: self.SetStartDate(2020, 1, 1) self.SetEndDate(2021, 1, 1) self.AddCfd("XAUUSD")
The following table shows the data cost of the preceding algorithm:
Dataset | Package | Initial Cost | Ongoing Cost |
---|---|---|---|
CFD Data | Minute Download | 1 contract over 314 trading days
=> 314 files 314 files @ 3 QCC/file => 314 * 3 QCC = 942 QCC = $9.42 USD | 1 contract/day => 1 file/day 1 file/day @ 3 QCC/file => 3 QCC/day = $0.03 USD/day |
Alternative Data
Algorithms that use alternative data require some data from the associated alternative dataset. To view the cost of each alternative dataset, open a dataset listing in the Dataset Market and then click the Pricing tab.