Lean  $LEAN_TAG$
QuantConnect.Data.UniverseSelection.UniverseDecorator Class Reference

Provides an implementation of UniverseSelection.Universe that redirects all calls to a wrapped (or decorated) universe. This provides scaffolding for other decorators who only need to override one or two methods. More...

Inheritance diagram for QuantConnect.Data.UniverseSelection.UniverseDecorator:
[legend]

Public Member Functions

override IEnumerable< SubscriptionRequestGetSubscriptionRequests (Security security, DateTime currentTimeUtc, DateTime maximumEndTimeUtc)
 Gets the subscription requests to be added for the specified security More...
 
override IEnumerable< SubscriptionRequestGetSubscriptionRequests (Security security, DateTime currentTimeUtc, DateTime maximumEndTimeUtc, ISubscriptionDataConfigService subscriptionService)
 Gets the subscription requests to be added for the specified security More...
 
override bool CanRemoveMember (DateTime utcTime, Security security)
 Determines whether or not the specified security can be removed from this universe. This is useful to prevent securities from being taken out of a universe before the algorithm has had enough time to make decisions on the security More...
 
override Security CreateSecurity (Symbol symbol, IAlgorithm algorithm, MarketHoursDatabase marketHoursDatabase, SymbolPropertiesDatabase symbolPropertiesDatabase)
 Creates and configures a security for the specified symbol More...
 
override IEnumerable< SymbolSelectSymbols (DateTime utcTime, BaseDataCollection data)
 Performs universe selection using the data specified More...
 
- Public Member Functions inherited from QuantConnect.Data.UniverseSelection.Universe
IEnumerable< SymbolPerformSelection (DateTime utcTime, BaseDataCollection data)
 Performs universe selection using the data specified More...
 
bool ContainsMember (Symbol symbol)
 Determines whether or not the specified symbol is currently a member of this universe More...
 
virtual void Dispose ()
 Marks this universe as disposed and ready to remove all child subscriptions More...
 

Protected Member Functions

 UniverseDecorator (Universe universe)
 Initializes a new instance of the UniverseDecorator class More...
 
- Protected Member Functions inherited from QuantConnect.Data.UniverseSelection.Universe
 Universe (SubscriptionDataConfig config)
 Initializes a new instance of the Universe class More...
 
void OnSelectionChanged (HashSet< Symbol > selection=null)
 Event invocator for the SelectionChanged event More...
 

Protected Attributes

readonly Universe Universe
 The decorated universe instance More...
 

Properties

override UniverseSettings UniverseSettings [get, set]
 Gets the settings used for subscriptions added for this universe More...
 
override ConcurrentDictionary< Symbol, MemberSecurities [get]
 Gets the internal security collection used to define membership in this universe More...
 
- Properties inherited from QuantConnect.Data.UniverseSelection.Universe
virtual ConcurrentDictionary< Symbol, MemberSecurities [get]
 Gets the internal security collection used to define membership in this universe More...
 
virtual bool Asynchronous [get, set]
 True if this universe filter can run async in the data stack More...
 
virtual bool DisposeRequested [get, protected set]
 Flag indicating if disposal of this universe has been requested More...
 
virtual UniverseSettings UniverseSettings [get, set]
 Gets the settings used for subscriptions added for this universe More...
 
virtual SubscriptionDataConfig Configuration [get]
 Gets the configuration used to get universe data More...
 
Dictionary< Symbol, SecurityMembers [get]
 Gets the current listing of members in this universe. Modifications to this dictionary do not change universe membership. More...
 

Additional Inherited Members

- Public Attributes inherited from QuantConnect.Data.UniverseSelection.Universe
SecurityType SecurityType => Configuration.SecurityType
 Gets the security type of this universe More...
 
string Market => Configuration.Market
 Gets the market of this universe More...
 
Symbol Symbol => Configuration.Symbol
 Gets the symbol of this universe More...
 
Type DataType => Configuration.Type
 Gets the data type of this universe More...
 
- Static Public Attributes inherited from QuantConnect.Data.UniverseSelection.Universe
static readonly UnchangedUniverse Unchanged = UnchangedUniverse.Instance
 Gets a value indicating that no change to the universe should be made More...
 
- Events inherited from QuantConnect.Data.UniverseSelection.Universe
EventHandler SelectionChanged
 Event fired when the universe selection has changed More...
 

Detailed Description

Provides an implementation of UniverseSelection.Universe that redirects all calls to a wrapped (or decorated) universe. This provides scaffolding for other decorators who only need to override one or two methods.

Requires special handling due to this != this.Universe GetSubscriptionRequests(Security, DateTime, DateTime, ISubscriptionDataConfigService)

Definition at line 32 of file UniverseDecorator.cs.

Constructor & Destructor Documentation

◆ UniverseDecorator()

QuantConnect.Data.UniverseSelection.UniverseDecorator.UniverseDecorator ( Universe  universe)
protected

Initializes a new instance of the UniverseDecorator class

Parameters
universeThe decorated universe. All overridable methods delegate to this instance.

Definition at line 66 of file UniverseDecorator.cs.

Member Function Documentation

◆ GetSubscriptionRequests() [1/2]

override IEnumerable<SubscriptionRequest> QuantConnect.Data.UniverseSelection.UniverseDecorator.GetSubscriptionRequests ( Security  security,
DateTime  currentTimeUtc,
DateTime  maximumEndTimeUtc 
)
virtual

Gets the subscription requests to be added for the specified security

Parameters
securityThe security to get subscriptions for
currentTimeUtcThe current time in utc. This is the frontier time of the algorithm
maximumEndTimeUtcThe max end time
Returns
All subscriptions required by this security

Reimplemented from QuantConnect.Data.UniverseSelection.Universe.

Definition at line 80 of file UniverseDecorator.cs.

Here is the call graph for this function:

◆ GetSubscriptionRequests() [2/2]

override IEnumerable<SubscriptionRequest> QuantConnect.Data.UniverseSelection.UniverseDecorator.GetSubscriptionRequests ( Security  security,
DateTime  currentTimeUtc,
DateTime  maximumEndTimeUtc,
ISubscriptionDataConfigService  subscriptionService 
)
virtual

Gets the subscription requests to be added for the specified security

Parameters
securityThe security to get subscriptions for
currentTimeUtcThe current time in utc. This is the frontier time of the algorithm
maximumEndTimeUtcThe max end time
subscriptionServiceInstance which implements ISubscriptionDataConfigService interface
Returns
All subscriptions required by this security

Reimplemented from QuantConnect.Data.UniverseSelection.Universe.

Definition at line 93 of file UniverseDecorator.cs.

Here is the call graph for this function:

◆ CanRemoveMember()

override bool QuantConnect.Data.UniverseSelection.UniverseDecorator.CanRemoveMember ( DateTime  utcTime,
Security  security 
)
virtual

Determines whether or not the specified security can be removed from this universe. This is useful to prevent securities from being taken out of a universe before the algorithm has had enough time to make decisions on the security

Parameters
utcTimeThe current utc time
securityThe security to check if its ok to remove
Returns
True if we can remove the security, false otherwise

Reimplemented from QuantConnect.Data.UniverseSelection.Universe.

Definition at line 126 of file UniverseDecorator.cs.

Here is the call graph for this function:

◆ CreateSecurity()

override Security QuantConnect.Data.UniverseSelection.UniverseDecorator.CreateSecurity ( Symbol  symbol,
IAlgorithm  algorithm,
MarketHoursDatabase  marketHoursDatabase,
SymbolPropertiesDatabase  symbolPropertiesDatabase 
)
virtual

Creates and configures a security for the specified symbol

Parameters
symbolThe symbol of the security to be created
algorithmThe algorithm instance
marketHoursDatabaseThe market hours database
symbolPropertiesDatabaseThe symbol properties database
Returns
The newly initialized security object

Reimplemented from QuantConnect.Data.UniverseSelection.Universe.

Definition at line 140 of file UniverseDecorator.cs.

Here is the call graph for this function:

◆ SelectSymbols()

override IEnumerable<Symbol> QuantConnect.Data.UniverseSelection.UniverseDecorator.SelectSymbols ( DateTime  utcTime,
BaseDataCollection  data 
)
virtual

Performs universe selection using the data specified

Parameters
utcTimeThe current utc time
dataThe symbols to remain in the universe
Returns
The data that passes the filter

Implements QuantConnect.Data.UniverseSelection.Universe.

Definition at line 151 of file UniverseDecorator.cs.

Here is the call graph for this function:

Member Data Documentation

◆ Universe

readonly Universe QuantConnect.Data.UniverseSelection.UniverseDecorator.Universe
protected

The decorated universe instance

Definition at line 37 of file UniverseDecorator.cs.

Property Documentation

◆ UniverseSettings

override UniverseSettings QuantConnect.Data.UniverseSelection.UniverseDecorator.UniverseSettings
getset

Gets the settings used for subscriptions added for this universe

Definition at line 43 of file UniverseDecorator.cs.

◆ Securities

override ConcurrentDictionary<Symbol, Member> QuantConnect.Data.UniverseSelection.UniverseDecorator.Securities
get

Gets the internal security collection used to define membership in this universe

Definition at line 58 of file UniverseDecorator.cs.


The documentation for this class was generated from the following file: