Adds reference price to dividend/split
Adds GetSplitsAndDividends to FactorFile
Adds Apply methods to FactorFile/FactorFileRow
Updates factor files to include reference prices
The issue here was if we initialized with a default instance (all zeros) then
the Low would be forever zero.
In it's new form we use an initialized flag to determine whether or not the bar
has been seeded, and if it hasn't been seeded yet, seed OHLC with the current
data
Removed copied functions from TradeBar.cs - replaced with NotImplementedException
- These functions relied on QuoteBar.OHLC being writeable, now they're read only
QuoteBar.Clone - fix object reference bug
This includes updating all usages of symbol as a security identifier to use the new type.
The type includes a unique field, SID, as well as the current ticker's value. This allows
for consistent addressability while also allowing the ticker to evolve over time with the
mapping changes.
Effort was made to maintain compile and runtime backwards compatibility.
The existing method signatures have been made obsolete in favor of something slightly simpler and more deterministic.
The new methods accept a bool isLiveMode flag instead of the DataFeedEndpoint.
The GetSource method returns a new type: SubscriptionDataSource, which combines the source string and the SubscriptionTransportMedium.
Existing sub-types of BaseData have been updated with the new signatures. IBaseData has not been touch as it is mostly unused by LEAN infrastructure.
Adds EndTime to BaseData
Adds Period to TradeBar
Now filling data forward on days missing files/data
Some performance enhancements
Removed sorted dictonary in DataStream/AlgorithmManager
We round down fill forward data in the data stream since if we were to perform this in the data feed we would continually produce data at the same time and it would all go into the algorithm at once.
Updates SubscriptionDataReader to use IStreamReader
Adds FactorFile and MapFile helpers
Adds support for Raw, Adjusted, and TotalReturn data normalization and portfolio application
Includes new AddData<T> overload to accept fillforward and leverage parameters
Moved the clone implementation in BaseData to ObjectActivator
Added some test BaseData types that can be used as custom data but just patch through to default data locations
Also includes some performance tweaks to sleep certain tight looped threads
Also includes changes to mark data as fill-forward via Clone(bool fillForward), BaseData.IsFillForward property
Removing the isQcData flags allowed better support for consistency between different data types. This has a knock-on effect of allowing custom data to be fillforward and loaded from a file system.