* Support List and OptionFilterUniverse for Py filter
* Regression algorithm for testing
* Unit Tests
* Fix for process
* Tighten filters to reduce load on automated testing
* Address review v2
* Fix key not found exception at InternalSubsManager
- Fix key not found exception
- Fix backtesting chart sampling
* Add comment about PreviousUtcSampleTime
* Add internal subscription manager
- Add InternalSubscriptionManager that will handle internal
Subscription. Replaces the realtime updates
- Fix thread race condition in the TimeTriggeredUniverseSubscription, we
have one thread injecting data points, the main algorithm thread, and
the base exchange is pulling from it
- Fixes for FakeDataQueue
- Adding unit tests
* Address reviews and fixes
- Internal subscription will use extended market hours
- Only sample charts accordingly
- Get api-url once
- `UniverseSelection` and `Research` will always use
`AlgorithmHandler.DataProvider` instance instead of
`DefaultDataProvider`
- Remove Compression at test/app.config since the dll isn't required
- Add missing license header
* Add PolygonDataQueueHandler
* Add history provider and downloader for Polygon
* Add aggregator to PolygonDataQueueHandler
* Address review
- Removed duplication in message classes
- Added public Subscribe/Unsubscribe methods in PolygonWebSocketClientWrapper
- Added history requests for Forex and Crypto
* Address review
- Add security type and market arguments to downloader
- Fix time zone bug in downloader
* Remove unnecessary locks
* Add Polygon history for all resolutions
- Equity: trades and quotes
- Forex: quotes only
- Crypto: trades only
* DataConsolidator Wrapper for Python Consolidators
* Regression Unit Test
* Refactor Regression test
* Bad test fix
* pre review
* self review
* Add RegisterIndicator for Python Consolidator
* Python base class for consolidators
* Modify regression algo to register indicator
* unit test - attach event
* Test fix
* Fix test python imports
* Add license header file and null check
Co-authored-by: Martin Molinero <martin.molinero1@gmail.com>
* Refactors SecurityCache to Support Access to Tick of Different Type
Adds two read-only lists of BaseData to save the last list of Tick of TickType.Trade and TickType.Quote. Changes methods accordingly to get and set these lists.
* Addresses Peer Review
The assignment of `_lastData` is moved to keep the current behavior of not beeing set with fill forward data.
`Reset` and `ShareTypeCacheInstance` implements the new class objects.
Adds unit tests for `Reset` and `ShareTypeCacheInstance`.
* Only Cache Non Fill-Forward Data
Undo changes that made AddData cache non fill-forward data.
* Create EaseOfMovementValue.cs
Added ease of movement file
* Update EaseOfMovementValue.cs
Added calculation for EMV and return its value
* Update EaseOfMovementValue.cs
* Update EaseOfMovementValue.cs
* Update EaseOfMovementValue.cs
* Update EaseOfMovementValue.cs
Rearranged code and removed all IndicatorBases
* Update EaseOfMovementValue.cs
* Update EaseOfMovementValue.cs
Added Min and Max Indicator
* Added Tests and Compile
* Fixed Bugs and Removed Reset
* Added Current Value and revereted to Bar data
* Fixed test file and refined indicator file
* TradeBar to IBaseDataBar
* Bug fixes
* bug fix
* Switching to TradeBar and attempting to fix Volume bug
There are two bugs that I have been having trouble fixing. 1. Cannot implicitly convert decimal to int (simple fix but cannot find where bug is taking place)
2. IBaseDataBar does not contain a definition for Volume
* Update EaseOfMovementValueTests.cs
* bug fix
* added data
* updated assertion
* added reset
* Update EaseOfMovementValueTests.cs
* Update EaseOfMovementValue.cs
* Update spy_emv.txt
I had the wrong test data in. Was throwing failed test for many pull requests.
* Update EaseOfMovementValue.cs
* Update EaseOfMovementValue.cs
* Update EaseOfMovementValue.cs
* Update EaseOfMovementValue.cs
* Cleaned Data
* Bug fixes
Fixed zero division error. Used better Test Data.
* removed readonly from _previous...price
* Update EaseOfMovementValue.cs
* Update EaseOfMovementValue.cs
* Update EaseOfMovementValue.cs
* bug fix
* Test Bug Fix
* EMV data from online
* Cosmetics
* Out of bounds fix
* Update EaseOfMovementValueTests.cs
* Update spy_emv.txt
* Update spy_emv.txt
* Added changes requested
Placed constructor first, fixed nullable type if statement, set 10,000 to default argument, added SMA.
* Update EaseOfMovementValue.cs
added variables
* Update EaseOfMovementValue.cs
* Update EaseOfMovementValue.cs
* Update EaseOfMovementValue.cs
* Fixed bugs
* Changed Delta, Added Assert
Create Indicator -> Update EMV -> Assert Status. Also changed delta from 1 to 0.000001 to improve test accuracy.
* Added unit test testing the SMA
* Add empty cashbook check in BrokerageSetupHandler
* Update check for zero TotalPortfolioValue
* Move check for zero TPV after setting currency conversions
* Fix zero conversion rate for account currency + add unit tests
* Fix unit test
* Live Coarse universe refactor
- Live trading will source Coarse and Fine fundamental data directly
from disk. Updating unit tests.
* Adds ILiveDataProvider interface
* Adds wrapper for IDataQueueHandler implementations
* Replaces IDataQueueHandler with ILiveDataProvider in
LiveTradingDataFeed
* Edits IDataQueueHandler documentation
* Maintains aggregation for current IDQH impls and skips for ILDF impls
* Note: No unit test was created for this method, go back and TODO
* Protobuf Market data
- Adding protobuf support for Ticks, TradeBars and QuoteBars. Adding
unit tests.
* Adds unit tests for LiveDataAggregator changes
* Fixes bug where custom data was not handled as it was before
* Fixes race condition bug because of variable reuse in class
* Add protobuf extension serialization
* Fixes for protobuf serialization
* Refactor
* Fix OptionChainUniverse
* replace BaseDataExchange pumping ticks with consolidators
* AlpacaBrokerage
* BitfinexBrokerage
* GDAXBrokerage
* OandaBrokerage
* InteractiveBrokers
* TradierBrokerage
* FxcmBrokerage
* PaperBrokerage
* etc
* WIP fixes for existing LTDF unit tests
* Fixes more LTDF unit tests
* make IDataAggregator.Update recieving Generic BaseData rather than Tick
* Change IDataQueueHandler.Subscribe method
* Some fixes after adding new commits
* Adds protobuf (de)serialization support for Dividend and Split
* Serialize protobuf with length prefix
* Fix missing LTDF unit tests
* Adds TiingoNews protobuf definitions
* fix comments
* more fixes on IQFeedDataQueueHandler
* disallow putting ticks into enumerator directly
* ScannableEnumerator tests
* fix OandaBrokerage
* AggregationManager unit tests
* fix AlpacaBrokerage tests
* fix InteractiveBrokers
* fix FxcmBrokerage tests
* call AggregationManager.Remove method on unsubscribe
* fix GDAX existing tests
* Fixes, refactor adding more tests for AggregatorManager
* Adds BenzingaNews protobuf definitions and round trip unit test
* Adds missing TiingoNews unit test to Protobuf round trip tests
* Improve sleep sequence of LiveSynchronizer
* need start aggregating first, and then can subscribe
* More test fixes and refactor
- Refactoring AggregationManager and ScannableEnumerator so the last is
the one that owns the consolidator
- Adding pulse on the main LiveSynchronizer
* Improve performance of LEquityDataSynchronizingEnu
* Add missing Set job packet method
* Minor performance improvements
* Improvements add test timeout
- Improvements adding test timeout to find blocking test in travis
* Improve aggregationManager performance
* Testing improvements for travis
* Remove test timeouts
* More test fixes
- Adding more missing dispose calls and improving determinism
* fix IEXDataQueueHandler and tests
* Final tweaks to LTDF tests
* more AggregationManager tests
* consume and log ticks
* fix test: couldn't subscribe to Forex tickers
* change Resolution for all bar configs
* Improve RealTimeScheduleEventServiceAccuracy
* refactoring: move common code to base class
* fixed bug; unsubscribe SubscriptionDataConfig
* Small performance improvement
* Minor fixes
* Avoid Symbol serialization
* Fixes coarse selection in live mode
* Fix for live coarse
* Adds protobuf (de)serialization support for Robintrack
* Adds round-trip unit test
* Minor performance improvements
* More minor performance improvements
* pass LiveNodePacket through to OandaBrokerage
* Fixes empty list becoming null value when deserializing with protobuf
* Reverts BZ live trading exception removal and fixes tests
* Refactor WorkQueue making it abstract
* Add try catch for composer
* Adds optional data batching period to LiveFillForwardEnumerator
* Override data-queue-handler with config
* Improve PeriodCountConsolidator.Scan performance
* Move batching delay to main Synchornizer thread
* Reverts addition of Robintrack protobuf definitions
* Give priority to config history provider if set
* Add Estimize protobuffing
- Add Estimize protobuffing support. Adding unit tests
* Always dispose of data queue handler
Co-authored-by: Gerardo Salazar <gsalaz9800@gmail.com>
Co-authored-by: Adalyat Nazirov <aenazirov@gmail.com>
* Allow LeanDataWriter to append to zip data files
* Use the data directory provided to the writer instead of the global value
* Disregard the time-portion of an input date
* Overwrite zip entries when creating futures data files
* Minor tweak and adding unit test
Co-authored-by: Martin Molinero <martin.molinero1@gmail.com>
* Add research docker launch script
* Internalize creation of cfg and dir to dockerfile
* Implement bash version of notebook run script
* quick fix to use docker.cfg
* update readme
* typo fix
* Review tweaks
* Tweaks
* track previous input per symbol
* improve Arms Index period checks
* don't need to be thread safe due to consolidators update are sequential
* Use TryGetValue for performance
- Minor update for AdvanceDeclineIndicator to use TryGetValue to reduce
amount of dictionary access
Co-authored-by: Martin Molinero <martin.molinero1@gmail.com>