Lean
$LEAN_TAG$
|
A base vehicle properties class for providing a common interface to all assets in QuantConnect. More...
Public Member Functions | |
Security (SecurityExchangeHours exchangeHours, SubscriptionDataConfig config, Cash quoteCurrency, SymbolProperties symbolProperties, ICurrencyConverter currencyConverter, IRegisteredSecurityDataTypesProvider registeredTypesProvider, SecurityCache cache) | |
Construct a new security vehicle based on the user options. More... | |
Security (Symbol symbol, SecurityExchangeHours exchangeHours, Cash quoteCurrency, SymbolProperties symbolProperties, ICurrencyConverter currencyConverter, IRegisteredSecurityDataTypesProvider registeredTypesProvider, SecurityCache cache) | |
Construct a new security vehicle based on the user options. More... | |
BaseData | GetLastData () |
Get the last price update set to the security if any else null More... | |
virtual void | SetLocalTimeKeeper (LocalTimeKeeper localTimeKeeper) |
Sets the LocalTimeKeeper to be used for this Security. This is the source of this instance's time. More... | |
void | SetMarketPrice (BaseData data) |
Update any security properties based on the latest market data and time More... | |
void | Update (IReadOnlyList< BaseData > data, Type dataType, bool? containsFillForwardData=null) |
Updates all of the security properties, such as price/OHLCV/bid/ask based on the data provided. Data is also stored into the security's data cache More... | |
bool | IsCustomData () |
Returns true if the security contains at least one subscription that represents custom data More... | |
void | SetLeverage (decimal leverage) |
Set the leverage parameter for this security More... | |
virtual void | SetDataNormalizationMode (DataNormalizationMode mode) |
Sets the data normalization mode to be used by this security More... | |
void | RefreshDataNormalizationModeProperty () |
This method will refresh the value of the DataNormalizationMode property. This is required for backward-compatibility. TODO: to be deleted with the DataNormalizationMode property More... | |
void | SetFeeModel (IFeeModel feelModel) |
Sets the fee model More... | |
void | SetFeeModel (PyObject feelModel) |
Sets the fee model More... | |
void | SetFillModel (IFillModel fillModel) |
Sets the fill model More... | |
void | SetFillModel (PyObject fillModel) |
Sets the fill model More... | |
void | SetSlippageModel (ISlippageModel slippageModel) |
Sets the slippage model More... | |
void | SetSlippageModel (PyObject slippageModel) |
Sets the slippage model More... | |
void | SetVolatilityModel (IVolatilityModel volatilityModel) |
Sets the volatility model More... | |
void | SetVolatilityModel (PyObject volatilityModel) |
Sets the volatility model More... | |
void | SetBuyingPowerModel (IBuyingPowerModel buyingPowerModel) |
Sets the buying power model More... | |
void | SetBuyingPowerModel (PyObject pyObject) |
Sets the buying power model More... | |
void | SetMarginInterestRateModel (IMarginInterestRateModel marginInterestRateModel) |
Sets the margin interests rate model More... | |
void | SetMarginInterestRateModel (PyObject pyObject) |
Sets the margin interests rate model More... | |
void | SetMarginModel (IBuyingPowerModel marginModel) |
Sets the margin model More... | |
void | SetMarginModel (PyObject pyObject) |
Sets the margin model More... | |
void | SetShortableProvider (PyObject pyObject) |
Set Python Shortable Provider for this Security More... | |
void | SetShortableProvider (IShortableProvider shortableProvider) |
Set Shortable Provider for this Security More... | |
void | SetDataFilter (PyObject pyObject) |
Set Security Data Filter More... | |
void | SetDataFilter (ISecurityDataFilter dataFilter) |
Set Security Data Filter More... | |
override string | ToString () |
Returns a string that represents the current object. More... | |
Public Attributes | |
SecurityType | Type => Symbol.ID.SecurityType |
Type of the security. More... | |
bool | HasData => GetLastData() != null |
There has been at least one datapoint since our algorithm started running for us to determine price. More... | |
virtual bool | HoldStock => Holdings.HoldStock |
Read only property that checks if we currently own stock in the company. More... | |
virtual bool | Invested => HoldStock |
Alias for HoldStock - Do we have any of this security More... | |
virtual decimal | Price => Cache.Price |
Get the current value of the security. More... | |
virtual decimal | Leverage => Holdings.Leverage |
Leverage for this Security. More... | |
virtual decimal | High => Cache.High == 0 ? Price : Cache.High |
If this uses tradebar data, return the most recent high. More... | |
virtual decimal | Low => Cache.Low == 0 ? Price : Cache.Low |
If this uses tradebar data, return the most recent low. More... | |
virtual decimal | Close => Cache.Close == 0 ? Price : Cache.Close |
If this uses tradebar data, return the most recent close. More... | |
virtual decimal | Open => Cache.Open == 0 ? Price : Cache.Open |
If this uses tradebar data, return the most recent open. More... | |
virtual decimal | Volume => Cache.Volume |
Access to the volume of the equity today More... | |
virtual decimal | BidPrice => Cache.BidPrice == 0 ? Price : Cache.BidPrice |
Gets the most recent bid price if available More... | |
virtual decimal | BidSize => Cache.BidSize |
Gets the most recent bid size if available More... | |
virtual decimal | AskPrice => Cache.AskPrice == 0 ? Price : Cache.AskPrice |
Gets the most recent ask price if available More... | |
virtual decimal | AskSize => Cache.AskSize |
Gets the most recent ask size if available More... | |
virtual long | OpenInterest => Cache.OpenInterest |
Access to the open interest of the security today More... | |
Static Public Attributes | |
const decimal | NullLeverage = 0 |
A null security leverage value More... | |
Protected Member Functions | |
Security (Symbol symbol, Cash quoteCurrency, SymbolProperties symbolProperties, SecurityExchange exchange, SecurityCache cache, ISecurityPortfolioModel portfolioModel, IFillModel fillModel, IFeeModel feeModel, ISlippageModel slippageModel, ISettlementModel settlementModel, IVolatilityModel volatilityModel, IBuyingPowerModel buyingPowerModel, ISecurityDataFilter dataFilter, IPriceVariationModel priceVariationModel, ICurrencyConverter currencyConverter, IRegisteredSecurityDataTypesProvider registeredTypesProvider, IMarginInterestRateModel marginInterestRateModel) | |
Construct a new security vehicle based on the user options. More... | |
Security (SubscriptionDataConfig config, Cash quoteCurrency, SymbolProperties symbolProperties, SecurityExchange exchange, SecurityCache cache, ISecurityPortfolioModel portfolioModel, IFillModel fillModel, IFeeModel feeModel, ISlippageModel slippageModel, ISettlementModel settlementModel, IVolatilityModel volatilityModel, IBuyingPowerModel buyingPowerModel, ISecurityDataFilter dataFilter, IPriceVariationModel priceVariationModel, ICurrencyConverter currencyConverter, IRegisteredSecurityDataTypesProvider registeredTypesProvider, IMarginInterestRateModel marginInterestRateModel) | |
Temporary convenience constructor More... | |
virtual void | UpdateConsumersMarketPrice (BaseData data) |
Update market price of this Security More... | |
Properties | |
IShortableProvider | ShortableProvider [get] |
This securities IShortableProvider More... | |
IEnumerable< SubscriptionDataConfig > | Subscriptions [get] |
Gets all the subscriptions for this security More... | |
Symbol | Symbol [get] |
Symbol for the asset. More... | |
Cash | QuoteCurrency [get] |
Gets the Cash object used for converting the quote currency to the account currency More... | |
SymbolProperties | SymbolProperties [get] |
Gets the symbol properties for this security More... | |
Resolution | Resolution [get] |
Resolution of data requested for this security. More... | |
bool | IsFillDataForward [get] |
Indicates the data will use previous bars when there was no trading in this time period. This was a configurable datastream setting set in initialization. More... | |
bool | IsExtendedMarketHours [get] |
Indicates the security will continue feeding data after the primary market hours have closed. This was a configurable setting set in initialization. More... | |
DataNormalizationMode | DataNormalizationMode [get] |
Gets the data normalization mode used for this security More... | |
SubscriptionDataConfig | SubscriptionDataConfig [get] |
Gets the subscription configuration for this security More... | |
virtual bool | IsTradable [get, set] |
Gets or sets whether or not this security should be considered tradable More... | |
bool | IsDelisted [get, set] |
True if the security has been delisted from exchanges and is no longer tradable More... | |
SecurityCache | Cache [get, set] |
Data cache for the security to store previous price information. More... | |
SecurityHolding | Holdings [get, set] |
Holdings class contains the portfolio, cash and processes order fills. More... | |
SecurityExchange | Exchange [get, set] |
Exchange class contains the market opening hours, along with pre-post market hours. More... | |
IFeeModel | FeeModel [get, set] |
Fee model used to compute order fees for this security More... | |
IFillModel | FillModel [get, set] |
Fill model used to produce fill events for this security More... | |
ISlippageModel | SlippageModel [get, set] |
Slippage model use to compute slippage of market orders More... | |
ISecurityPortfolioModel | PortfolioModel [get, set] |
Gets the portfolio model used by this security More... | |
IBuyingPowerModel | BuyingPowerModel [get, set] |
Gets the buying power model used for this security More... | |
IBuyingPowerModel | MarginModel [get, set] |
Gets the buying power model used for this security, an alias for BuyingPowerModel More... | |
IMarginInterestRateModel | MarginInterestRateModel [get, set] |
Gets or sets the margin interest rate model More... | |
ISettlementModel | SettlementModel [get, set] |
Gets the settlement model used for this security More... | |
IVolatilityModel | VolatilityModel [get, set] |
Gets the volatility model used for this security More... | |
ISecurityDataFilter | DataFilter [get, set] |
Customizable data filter to filter outlier ticks before they are passed into user event handlers. By default all ticks are passed into the user algorithms. More... | |
IPriceVariationModel | PriceVariationModel [get, set] |
Customizable price variation model used to define the minimum price variation of this security. By default minimum price variation is a constant find in the symbol-properties-database. More... | |
dynamic | Data [get] |
Provides dynamic access to data in the cache More... | |
virtual DateTime | LocalTime [get] |
Local time for this market More... | |
Fundamentals | Fundamentals [get] |
Gets the fundamental data associated with the security if there is any, otherwise null. More... | |
![]() | |
decimal | Price [get] |
Get the current value of the security. More... | |
decimal | Close [get] |
If this uses trade bar data, return the most recent close. More... | |
decimal | Volume [get] |
Access to the volume of the equity today More... | |
decimal | BidPrice [get] |
Gets the most recent bid price if available More... | |
decimal | BidSize [get] |
Gets the most recent bid size if available More... | |
decimal | AskPrice [get] |
Gets the most recent ask price if available More... | |
decimal | AskSize [get] |
Gets the most recent ask size if available More... | |
long | OpenInterest [get] |
Access to the open interest of the security today More... | |
Symbol | Symbol [get] |
Symbol for the asset. More... | |
A base vehicle properties class for providing a common interface to all assets in QuantConnect.
Security object is intended to hold properties of the specific security asset. These properties can include trade start-stop dates, price, market hours, resolution of the security, the holdings information for this security and the specific fill model.
Definition at line 43 of file Security.cs.
QuantConnect.Securities.Security.Security | ( | SecurityExchangeHours | exchangeHours, |
SubscriptionDataConfig | config, | ||
Cash | quoteCurrency, | ||
SymbolProperties | symbolProperties, | ||
ICurrencyConverter | currencyConverter, | ||
IRegisteredSecurityDataTypesProvider | registeredTypesProvider, | ||
SecurityCache | cache | ||
) |
Construct a new security vehicle based on the user options.
Definition at line 317 of file Security.cs.
QuantConnect.Securities.Security.Security | ( | Symbol | symbol, |
SecurityExchangeHours | exchangeHours, | ||
Cash | quoteCurrency, | ||
SymbolProperties | symbolProperties, | ||
ICurrencyConverter | currencyConverter, | ||
IRegisteredSecurityDataTypesProvider | registeredTypesProvider, | ||
SecurityCache | cache | ||
) |
Construct a new security vehicle based on the user options.
Definition at line 349 of file Security.cs.
|
protected |
Construct a new security vehicle based on the user options.
Definition at line 381 of file Security.cs.
|
protected |
Temporary convenience constructor
Definition at line 438 of file Security.cs.
BaseData QuantConnect.Securities.Security.GetLastData | ( | ) |
Get the last price update set to the security if any else null
Implements QuantConnect.Interfaces.ISecurityPrice.
|
virtual |
Sets the LocalTimeKeeper to be used for this Security. This is the source of this instance's time.
localTimeKeeper | The source of this Security's time. |
Reimplemented in QuantConnect.Securities.Future.Future.
Definition at line 607 of file Security.cs.
void QuantConnect.Securities.Security.SetMarketPrice | ( | BaseData | data | ) |
Update any security properties based on the latest market data and time
data | New data packet from LEAN |
Implements QuantConnect.Interfaces.ISecurityPrice.
Definition at line 623 of file Security.cs.
void QuantConnect.Securities.Security.Update | ( | IReadOnlyList< BaseData > | data, |
Type | dataType, | ||
bool? | containsFillForwardData = null |
||
) |
Updates all of the security properties, such as price/OHLCV/bid/ask based on the data provided. Data is also stored into the security's data cache
data | The security update data |
dataType | The data type |
containsFillForwardData | Flag indicating whether data contains any fill forward bar or not |
Implements QuantConnect.Interfaces.ISecurityPrice.
Definition at line 640 of file Security.cs.
bool QuantConnect.Securities.Security.IsCustomData | ( | ) |
Returns true if the security contains at least one subscription that represents custom data
Definition at line 652 of file Security.cs.
void QuantConnect.Securities.Security.SetLeverage | ( | decimal | leverage | ) |
Set the leverage parameter for this security
leverage | Leverage for this asset |
Definition at line 666 of file Security.cs.
|
virtual |
Sets the data normalization mode to be used by this security
Reimplemented in QuantConnect.Securities.Option.Option, and QuantConnect.Securities.Equity.Equity.
Definition at line 681 of file Security.cs.
void QuantConnect.Securities.Security.RefreshDataNormalizationModeProperty | ( | ) |
This method will refresh the value of the DataNormalizationMode property. This is required for backward-compatibility. TODO: to be deleted with the DataNormalizationMode property
Definition at line 698 of file Security.cs.
void QuantConnect.Securities.Security.SetFeeModel | ( | IFeeModel | feelModel | ) |
Sets the fee model
feelModel | Model that represents a fee model |
Definition at line 713 of file Security.cs.
void QuantConnect.Securities.Security.SetFeeModel | ( | PyObject | feelModel | ) |
Sets the fee model
feelModel | Model that represents a fee model |
Definition at line 722 of file Security.cs.
void QuantConnect.Securities.Security.SetFillModel | ( | IFillModel | fillModel | ) |
Sets the fill model
fillModel | Model that represents a fill model |
Definition at line 731 of file Security.cs.
void QuantConnect.Securities.Security.SetFillModel | ( | PyObject | fillModel | ) |
Sets the fill model
fillModel | Model that represents a fill model |
Definition at line 740 of file Security.cs.
void QuantConnect.Securities.Security.SetSlippageModel | ( | ISlippageModel | slippageModel | ) |
Sets the slippage model
slippageModel | Model that represents a slippage model |
Definition at line 749 of file Security.cs.
void QuantConnect.Securities.Security.SetSlippageModel | ( | PyObject | slippageModel | ) |
Sets the slippage model
slippageModel | Model that represents a slippage model |
Definition at line 758 of file Security.cs.
void QuantConnect.Securities.Security.SetVolatilityModel | ( | IVolatilityModel | volatilityModel | ) |
Sets the volatility model
volatilityModel | Model that represents a volatility model |
Definition at line 767 of file Security.cs.
void QuantConnect.Securities.Security.SetVolatilityModel | ( | PyObject | volatilityModel | ) |
Sets the volatility model
volatilityModel | Model that represents a volatility model |
Definition at line 776 of file Security.cs.
void QuantConnect.Securities.Security.SetBuyingPowerModel | ( | IBuyingPowerModel | buyingPowerModel | ) |
Sets the buying power model
buyingPowerModel | Model that represents a security's model of buying power |
Definition at line 785 of file Security.cs.
void QuantConnect.Securities.Security.SetBuyingPowerModel | ( | PyObject | pyObject | ) |
Sets the buying power model
pyObject | Model that represents a security's model of buying power |
Definition at line 794 of file Security.cs.
void QuantConnect.Securities.Security.SetMarginInterestRateModel | ( | IMarginInterestRateModel | marginInterestRateModel | ) |
Sets the margin interests rate model
marginInterestRateModel | Model that represents a security's model of margin interest rate |
Definition at line 803 of file Security.cs.
void QuantConnect.Securities.Security.SetMarginInterestRateModel | ( | PyObject | pyObject | ) |
Sets the margin interests rate model
pyObject | Model that represents a security's model of margin interest rate |
Definition at line 812 of file Security.cs.
void QuantConnect.Securities.Security.SetMarginModel | ( | IBuyingPowerModel | marginModel | ) |
Sets the margin model
marginModel | Model that represents a security's model of buying power |
Definition at line 821 of file Security.cs.
void QuantConnect.Securities.Security.SetMarginModel | ( | PyObject | pyObject | ) |
Sets the margin model
pyObject | Model that represents a security's model of buying power |
Definition at line 830 of file Security.cs.
void QuantConnect.Securities.Security.SetShortableProvider | ( | PyObject | pyObject | ) |
Set Python Shortable Provider for this Security
pyObject | Python class that represents a custom shortable provider |
Definition at line 839 of file Security.cs.
void QuantConnect.Securities.Security.SetShortableProvider | ( | IShortableProvider | shortableProvider | ) |
Set Shortable Provider for this Security
shortableProvider | Provider to use |
Definition at line 862 of file Security.cs.
void QuantConnect.Securities.Security.SetDataFilter | ( | PyObject | pyObject | ) |
Set Security Data Filter
pyObject | Python class that represents a custom Security Data Filter |
ArgumentException |
Definition at line 872 of file Security.cs.
void QuantConnect.Securities.Security.SetDataFilter | ( | ISecurityDataFilter | dataFilter | ) |
Set Security Data Filter
dataFilter | Security Data Filter |
Definition at line 895 of file Security.cs.
override string QuantConnect.Securities.Security.ToString | ( | ) |
Returns a string that represents the current object.
<filterpriority>2</filterpriority>
Definition at line 907 of file Security.cs.
|
protectedvirtual |
Update market price of this Security
data | Data to pull price from |
Reimplemented in QuantConnect.Securities.IndexOption.IndexOption.
Definition at line 961 of file Security.cs.
|
static |
A null security leverage value
This value is used to determine when the SecurityInitializer leverage is used
Definition at line 64 of file Security.cs.
SecurityType QuantConnect.Securities.Security.Type => Symbol.ID.SecurityType |
Type of the security.
QuantConnect currently only supports Equities and Forex
Definition at line 107 of file Security.cs.
bool QuantConnect.Securities.Security.HasData => GetLastData() != null |
There has been at least one datapoint since our algorithm started running for us to determine price.
Definition at line 152 of file Security.cs.
virtual bool QuantConnect.Securities.Security.HoldStock => Holdings.HoldStock |
Read only property that checks if we currently own stock in the company.
Definition at line 482 of file Security.cs.
virtual bool QuantConnect.Securities.Security.Invested => HoldStock |
Alias for HoldStock - Do we have any of this security
Definition at line 487 of file Security.cs.
virtual decimal QuantConnect.Securities.Security.Price => Cache.Price |
Get the current value of the security.
Definition at line 508 of file Security.cs.
virtual decimal QuantConnect.Securities.Security.Leverage => Holdings.Leverage |
Leverage for this Security.
Definition at line 513 of file Security.cs.
virtual decimal QuantConnect.Securities.Security.High => Cache.High == 0 ? Price : Cache.High |
If this uses tradebar data, return the most recent high.
Definition at line 518 of file Security.cs.
virtual decimal QuantConnect.Securities.Security.Low => Cache.Low == 0 ? Price : Cache.Low |
If this uses tradebar data, return the most recent low.
Definition at line 523 of file Security.cs.
virtual decimal QuantConnect.Securities.Security.Close => Cache.Close == 0 ? Price : Cache.Close |
If this uses tradebar data, return the most recent close.
Definition at line 528 of file Security.cs.
virtual decimal QuantConnect.Securities.Security.Open => Cache.Open == 0 ? Price : Cache.Open |
If this uses tradebar data, return the most recent open.
Definition at line 533 of file Security.cs.
virtual decimal QuantConnect.Securities.Security.Volume => Cache.Volume |
Access to the volume of the equity today
Definition at line 538 of file Security.cs.
virtual decimal QuantConnect.Securities.Security.BidPrice => Cache.BidPrice == 0 ? Price : Cache.BidPrice |
Gets the most recent bid price if available
Definition at line 543 of file Security.cs.
virtual decimal QuantConnect.Securities.Security.BidSize => Cache.BidSize |
Gets the most recent bid size if available
Definition at line 548 of file Security.cs.
virtual decimal QuantConnect.Securities.Security.AskPrice => Cache.AskPrice == 0 ? Price : Cache.AskPrice |
Gets the most recent ask price if available
Definition at line 553 of file Security.cs.
virtual decimal QuantConnect.Securities.Security.AskSize => Cache.AskSize |
Gets the most recent ask size if available
Definition at line 558 of file Security.cs.
virtual long QuantConnect.Securities.Security.OpenInterest => Cache.OpenInterest |
Access to the open interest of the security today
Definition at line 563 of file Security.cs.
|
get |
This securities IShortableProvider
Definition at line 57 of file Security.cs.
|
get |
Gets all the subscriptions for this security
Definition at line 70 of file Security.cs.
|
get |
Symbol for the asset.
Definition at line 83 of file Security.cs.
|
get |
Gets the Cash object used for converting the quote currency to the account currency
Definition at line 89 of file Security.cs.
|
get |
Gets the symbol properties for this security
Definition at line 97 of file Security.cs.
|
get |
Resolution of data requested for this security.
Tick, second or minute resolution for QuantConnect assets.
Definition at line 114 of file Security.cs.
|
get |
Indicates the data will use previous bars when there was no trading in this time period. This was a configurable datastream setting set in initialization.
Definition at line 120 of file Security.cs.
|
get |
Indicates the security will continue feeding data after the primary market hours have closed. This was a configurable setting set in initialization.
Definition at line 126 of file Security.cs.
|
get |
Gets the data normalization mode used for this security
Definition at line 132 of file Security.cs.
|
get |
Gets the subscription configuration for this security
Definition at line 139 of file Security.cs.
|
getset |
Gets or sets whether or not this security should be considered tradable
Definition at line 158 of file Security.cs.
|
getset |
True if the security has been delisted from exchanges and is no longer tradable
Definition at line 165 of file Security.cs.
|
getset |
Data cache for the security to store previous price information.
Definition at line 173 of file Security.cs.
|
getset |
Holdings class contains the portfolio, cash and processes order fills.
Definition at line 183 of file Security.cs.
|
getset |
Exchange class contains the market opening hours, along with pre-post market hours.
Definition at line 194 of file Security.cs.
|
getset |
Fee model used to compute order fees for this security
Definition at line 203 of file Security.cs.
|
getset |
Fill model used to produce fill events for this security
Definition at line 212 of file Security.cs.
|
getset |
Slippage model use to compute slippage of market orders
Definition at line 221 of file Security.cs.
|
getset |
Gets the portfolio model used by this security
Definition at line 230 of file Security.cs.
|
getset |
Gets the buying power model used for this security
Definition at line 239 of file Security.cs.
|
getset |
Gets the buying power model used for this security, an alias for BuyingPowerModel
Definition at line 248 of file Security.cs.
|
getset |
Gets or sets the margin interest rate model
Definition at line 257 of file Security.cs.
|
getset |
Gets the settlement model used for this security
Definition at line 266 of file Security.cs.
|
getset |
Gets the volatility model used for this security
Definition at line 275 of file Security.cs.
|
getset |
Customizable data filter to filter outlier ticks before they are passed into user event handlers. By default all ticks are passed into the user algorithms.
TradeBars (seconds and minute bars) are prefiltered to ensure the ticks which build the bars are realistically tradeable
Definition at line 288 of file Security.cs.
|
getset |
Customizable price variation model used to define the minimum price variation of this security. By default minimum price variation is a constant find in the symbol-properties-database.
Definition at line 301 of file Security.cs.
|
get |
Provides dynamic access to data in the cache
Definition at line 310 of file Security.cs.
|
get |
Local time for this market
Definition at line 493 of file Security.cs.
|
get |
Gets the fundamental data associated with the security if there is any, otherwise null.
Definition at line 569 of file Security.cs.