Files
Ronit Jain 2d644d7879
Regression Tests / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Feature handle multiple history providers (#6187)
* initial commit

* get history from data providers

* merge history from history providers

* merge slice

* Add merge function in slice

* Update test

* merge aux data

* add data points in _data

* append new data points in original list

* Add test suite for HistoryProviderManager

* reduce complexity

* setup once

* add fake history provider

* doesn't count aux data

* add tests for options

* style changes

* add custom data

* merge rawDataList

* use array of history providers

* optimize

* fix formatting error

* add comment

* add tests

* simplify

* use list

* use abstraction

* split tests

* add test

* use abstraction to create generic enumertor class

* refactor

* accept list of type T

* sync history slices

* use SubscriptionDataReaderHistoryProvider for live

* rename test file

* return empty

* add tests

* cleanup

* address reviews

* optimize

* Fix method definition

* use initial time for basedata

* refactor

* re-use collection

* inherit HistoryProviderBase

* always return HistoryProviderManager

* add tests

* update rawDataList

* reset composer

* consider null elements

* add tests for binary search method

* Follow lean coding style

* revert

* remove binary search method

* convert to field
2022-02-14 11:58:00 -03:00
..
2021-05-06 17:23:51 -03:00
2015-11-27 15:15:30 -05:00
2015-10-28 10:46:25 -04:00
2015-10-28 10:46:23 -04:00
2021-05-06 17:23:51 -03:00

alt tag Lean Data ToolBox

Slack Chat

Lean Home | Documentation | Download Lean

Introduction

Lean Engine is an open-source algorithmic trading engine built for easy strategy research, backtesting and live trading. We integrate with common data providers and brokerages so you can quickly deploy algorithmic trading strategies.

The ToolBox project is a command line program which wraps over 15 tools.

Usage

Each tool requires a different set of parameters, the only required argument is '--app=', which defines the target tool and is case insensitive.

Help information is available using the '--help' parameter.

Example: --app=YahooDownloader --tickers=SPY,AAPL --resolution=Daily --from-date=yyyyMMdd-HH:mm:ss --to-date=yyyyMMdd-HH:mm:ss

Available downloaders

  • '--app='
    • GDAXDownloader or GDAXDL
    • CryptoiqDownloader or CDL
    • DukascopyDownloader or DDL
    • FxcmDownloader or FDL
    • FxcmVolumeDownload or FVDL
    • IBDownloader or IBDL
    • KrakenDownloader or KDL
    • OandaDownloader or ODL
    • QuandlBitfinexDownloader or QBDL
    • YahooDownloader or YDL
    • IEXDownloader or IEXDL
    • BitfinexDownloader or BFXDL
    • BinanceDownloader or MBXDL
    • PolygonDownloader or PDL
  • '--from-date=yyyyMMdd-HH:mm:ss' required
  • '--tickers=SPY,AAPL,etc' required, except for QuandlBitfinexDownloader (QBDL)
  • '--resolution=Tick/Second/Minute/Hour/Daily/All' required, except for QuandlBitfinexDownloader (QBDL), CryptoiqDownloader (CDL). Case sensitive. Not all downloaders support all resolutions, send empty for more information.
  • '--to-date=yyyyMMdd-HH:mm:ss' optional. If not provided 'DateTime.UtcNow' will be used

Available Converters

  • '--app='
    • AlgoSeekFuturesConverter or ASFC
      • '--date=yyyyMMdd' reference date.
    • AlgoSeekOptionsConverter or ASOC
      • '--date=yyyyMMdd' reference date.
    • CoinApiDataConverter or CADC
      • '--source-dir=' path to the raw CoinAPI data.
    • IVolatilityEquityConverter or IVEC
      • '--source-dir=' source archived IVolatility data.
      • '--source-meta-dir=' source archived IVolatility meta data.
      • '--destination-dir=' directory where Lean Data is located "Lean/Data".
      • '--resolution=Minute/Hour/Daily' resolution of your IVolatility data. Case insensitive.
    • KaikoDataConverter or KDC
      • '--market=' the exchange the data represents.
      • '--tick-type=Quote/Trade' the tick type being processed. Case insensitive.
      • '--source-dir=' path to the raw Kaiko data.
    • NseMarketDataConverter or NMDC
      • '--source-dir=' source directory of unzipped NSE data.
      • '--destination-dir=' directory where Lean Data is located "Lean/Data".
    • QuantQuoteConverter or QQC
      • '--source-dir=' directory where your QuantQuote order is extracted.
      • '--destination-dir=' directory where Lean Data is located "Lean/Data".
      • '--resolution=' resolution of the QuantQuote data.

Other tools

  • '--app='
    • CoarseUniverseGenerator or CUG