This pull request introduces a new command, data download, to the lean-cli tool. This command facilitates downloading various data types such as Trade, Quote, and Open Interest from multiple Historical Data Providers like Polygon, Binance, Interactive Brokers, etc. The command supports different resolutions like tick, second, minute, hour, and day, as well as different security types depending on the support available from the Data Provider. The command invokes an executable app from Lean to perform the data download.
The motivation behind this feature is to enhance the user experience by providing an easy-to-use command for downloading different types of data required for developing trading algorithms in Lean. By incorporating this feature into lean-cli, users can effortlessly download data and proceed with algorithm development without needing to manually handle data retrieval from various providers.
How Has This Been Tested?
This feature has been thoroughly tested to ensure its functionality and reliability:
Unit Tests: Created unit tests to validate the command's logic and behavior.
Manual Testing: Manually tested the command in both interactive and non-interactive modes to ensure it behaves as expected and handles different input scenarios correctly.
Local Testing with Custom Docker Images: Tested the command in a local environment using custom Docker images and the latest development version of Lean to verify its compatibility and performance.
Interactive Mode:
Run ⬇ and follow the on-screen instructions to select the Data Provider, Data Type, Resolution, Security Type, tickers, start date, and end date.
The main goal of this feature is to be user-friendly and assist users in downloading various data types required for creating new trading algorithms in Lean. By providing a seamless data retrieval process, users can focus more on algorithm development and less on data management.
Description
This pull request introduces a new command,
data download
, to the lean-cli tool. This command facilitates downloading various data types such as Trade, Quote, and Open Interest from multiple Historical Data Providers like Polygon, Binance, Interactive Brokers, etc. The command supports different resolutions like tick, second, minute, hour, and day, as well as different security types depending on the support available from the Data Provider. The command invokes an executable app from Lean to perform the data download.Related Issue
https://github.com/QuantConnect/lean-cli/issues/388
Related Pull Request
Motivation and Context
The motivation behind this feature is to enhance the user experience by providing an easy-to-use command for downloading different types of data required for developing trading algorithms in Lean. By incorporating this feature into lean-cli, users can effortlessly download data and proceed with algorithm development without needing to manually handle data retrieval from various providers.
How Has This Been Tested?
This feature has been thoroughly tested to ensure its functionality and reliability:
Additional manual test cases:
Interactive Brokers [Security type: Equity]
Result:
Binance [Security type: Crypto]
Result
FactSet [Security type: IndexOption]
Result:
Polygon [Security type: Equity]
Result:
IEX [Security type: Equity]
Result: [wrong resolution]
IEX [Security type: Equity]
Result
Coinbase Advanced Trade [Security type: Crypto]
Example of running
Conclusion
The main goal of this feature is to be user-friendly and assist users in downloading various data types required for creating new trading algorithms in Lean. By providing a seamless data retrieval process, users can focus more on algorithm development and less on data management.