Represents an indicator that is a ready after ingesting a single sample and always returns the same value as it is given if it passes a filter condition
Adds an example algorithm
When indicators received data from securities that were subscribed as QuoteBar or TickType.Quote, they were consolidated as TradeBars.
Tick were consolidated into TradeBar even when period were zero. Tick object information was lost in the process. With this fix, Tick keeps being Tick.
Adds tests for ResolveConsolidator to verify the consistency between input and output type
TradeBar -> TradeBar
QuoteBar -> QuoteBar
TickType.Trade -> TickType.Trade or TradeBar
TickType.Quote -> TickType.Quote or TradeBar
Non-generic history methods returning IEnumerable<TradeBar> have been marked as obsolete because they return an empty result when called with Forex and CFD security types.
The recommended replacements are their generic equivalents, using TradeBar or QuoteBar data type arguments, depending on the security type.
The latest version included "targets" that enables the inclusion of Python.Runtime.dll.config into the output directory automatically from the nuget package.
FuncSecuritySeeder implements this new interface and is used in BrokerageModelSecurityInitializer to seed new securities with a price when they are created. FuncSecuritySeeder uses a new method, GetSingleBarHistory, in QCAlgorithm.History to get the last price from the history provider.
Added support for history requirements, exposed by vol models. AM processes requirements.
Added new volatility model - standard deviation of returns - default vol model. Compared its results with publicly available.
Refactored option pricing engine to support optimal approximation calculations.
Added basic greeks approximation in case they are not available in QL. Tests.
Updated BasicTemplateOptionHistoryAlgorithm to print greeks.
Currently, most consolidators rely on receiving a piece of data after
the consolidation period before firing the consolidated event. This
introduces a lag in the results. We've mostly gotten around this for
the most common case through usage of the IdentityConsolidator.
The issue arises when considering fill forward behavior and subscriptions
with different resolutions.
Consider a Minute subscription a Daily subscription. Default behavior will
fill forward that daily bar on every minute. If your indicator is based on
the IdentityConsolidator, then it will receive the same price update for
each minute the security trades that day.
By scanning the consolidators based on time, the consolidator is able to
determine that it is indeed time for it to emit a new consolidated bar.
This removes the need for the IdentityConsolidator while also fixing the
aforementioned bug.
Refactors existing consolidators, indicators, and helper methods to depend on
IBaseData instead of BaseData. These updates also defines an IBaseDataBar to
act as an abstraction point between TradeBar and QuoteBar.
* Adds Intercept and Slope members in LeastSquareMovingAverage
* Implements the RegressionChannel indicator
The Regression Channel indicator extends the LeastSquaresMovingAverage with the inclusion of two (upper and lower) channel lines that are distanced from the linear regression line by a user defined number of standard deviations.
Adds tests.
* Renames Regression Channel properties
Remove *Line from Regression Channel properties
Adds reference
* Adds RegressionChannelAlgorithm
Adds RegressionChannelAlgorithm
Minor changes on the indidicator
Adds tests for the channels
* Intercept and Slope becomes IndicatorBase instead of WindowIndicator
* Fix LSMA Next Value calculation