Lean  $LEAN_TAG$
QuantConnect.Securities.IndexOption.IndexOption Class Reference

Index Options security More...

Inheritance diagram for QuantConnect.Securities.IndexOption.IndexOption:
[legend]

Public Member Functions

 IndexOption (Symbol symbol, SecurityExchangeHours exchangeHours, Cash quoteCurrency, IndexOptionSymbolProperties symbolProperties, ICurrencyConverter currencyConverter, IRegisteredSecurityDataTypesProvider registeredTypes, SecurityCache securityCache, Security underlying, SettlementType settlementType=SettlementType.Cash)
 Constructor for the index option security More...
 
- Public Member Functions inherited from QuantConnect.Securities.Option.Option
 Option (SecurityExchangeHours exchangeHours, SubscriptionDataConfig config, Cash quoteCurrency, OptionSymbolProperties symbolProperties, ICurrencyConverter currencyConverter, IRegisteredSecurityDataTypesProvider registeredTypes)
 Constructor for the option security More...
 
 Option (Symbol symbol, SecurityExchangeHours exchangeHours, Cash quoteCurrency, OptionSymbolProperties symbolProperties, ICurrencyConverter currencyConverter, IRegisteredSecurityDataTypesProvider registeredTypes, SecurityCache securityCache, Security underlying)
 Constructor for the option security More...
 
decimal GetAggregateExerciseAmount ()
 Aggregate exercise amount or aggregate contract value. It is the total amount of cash one will pay (or receive) for the shares of the underlying stock if he/she decides to exercise (or is assigned an exercise notice). This amount is not the premium paid or received for an equity option. More...
 
decimal GetExerciseQuantity ()
 Returns the directional quantity of underlying shares that are going to change hands on exercise/assignment of all contracts held by this account, taking into account the contract's Right as well as the contract's current ContractUnitOfTrade, which may have recently changed due to a split/reverse split in the underlying security. More...
 
decimal GetExerciseQuantity (decimal exerciseOrderQuantity)
 Returns the directional quantity of underlying shares that are going to change hands on exercise/assignment of the specified exerciseOrderQuantity , taking into account the contract's Right as well as the contract's current ContractUnitOfTrade, which may have recently changed due to a split/reverse split in the underlying security. More...
 
bool IsAutoExercised (decimal underlyingPrice)
 Checks if option is eligible for automatic exercise on expiration More...
 
decimal GetIntrinsicValue (decimal underlyingPrice)
 Intrinsic value function of the option More...
 
decimal GetPayOff (decimal underlyingPrice)
 Option payoff function at expiration time More...
 
decimal OutOfTheMoneyAmount (decimal underlyingPrice)
 Option out of the money function More...
 
OptionPriceModelResult EvaluatePriceModel (Slice slice, OptionContract contract)
 For this option security object, evaluates the specified option contract to compute a theoretical price, IV and greeks More...
 
void SetOptionAssignmentModel (PyObject pyObject)
 Sets the automatic option assignment model More...
 
void SetOptionAssignmentModel (IOptionAssignmentModel optionAssignmentModel)
 Sets the automatic option assignment model More...
 
void SetOptionExerciseModel (PyObject pyObject)
 Sets the option exercise model More...
 
void SetOptionExerciseModel (IOptionExerciseModel optionExerciseModel)
 Sets the option exercise model More...
 
void SetFilter (int minStrike, int maxStrike)
 Sets the ContractFilter to a new instance of the filter using the specified min and max strike values. Contracts with expirations further than 35 days out will also be filtered. More...
 
void SetFilter (TimeSpan minExpiry, TimeSpan maxExpiry)
 Sets the ContractFilter to a new instance of the filter using the specified min and max strike and expiration range values More...
 
void SetFilter (int minStrike, int maxStrike, TimeSpan minExpiry, TimeSpan maxExpiry)
 Sets the ContractFilter to a new instance of the filter using the specified min and max strike and expiration range values More...
 
void SetFilter (int minStrike, int maxStrike, int minExpiryDays, int maxExpiryDays)
 Sets the ContractFilter to a new instance of the filter using the specified min and max strike and expiration range values More...
 
void SetFilter (Func< OptionFilterUniverse, OptionFilterUniverse > universeFunc)
 Sets the ContractFilter to a new universe selection function More...
 
void SetFilter (PyObject universeFunc)
 Sets the ContractFilter to a new universe selection function More...
 
override void SetDataNormalizationMode (DataNormalizationMode mode)
 Sets the data normalization mode to be used by this security More...
 
- Public Member Functions inherited from 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. 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...
 
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 SetSettlementModel (ISettlementModel settlementModel)
 Sets the settlement model More...
 
void SetSettlementModel (PyObject settlementModel)
 Sets the settlement 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 bool TryGetMember (GetMemberBinder binder, out object result)
 This is a DynamicObject override. Not meant for external use. More...
 
override bool TrySetMember (SetMemberBinder binder, object value)
 This is a DynamicObject override. Not meant for external use. More...
 
override bool TryInvokeMember (InvokeMemberBinder binder, object[] args, out object result)
 This is a DynamicObject override. Not meant for external use. More...
 
void Add (string key, object value)
 Adds the specified custom property. This allows us to use the security object as a dynamic object for quick storage. More...
 
bool TryGet< T > (string key, out T value)
 Gets the specified custom property More...
 
Get< T > (string key)
 Gets the specified custom property More...
 
bool Remove (string key)
 Removes a custom property. More...
 
bool Remove< T > (string key, out T value)
 Removes a custom property. More...
 
void Clear ()
 Removes every custom property that had been set. More...
 
override string ToString ()
 Returns a string that represents the current object. More...
 

Protected Member Functions

override void UpdateConsumersMarketPrice (BaseData data)
 Consumes market price data and updates the minimum price variation More...
 
- Protected Member Functions inherited from QuantConnect.Securities.Option.Option
 Option (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, Security underlying)
 Creates instance of the Option class. More...
 
- Protected Member Functions inherited from QuantConnect.Securities.Security
 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...
 

Additional Inherited Members

- Public Attributes inherited from QuantConnect.Securities.Option.Option
bool IsOptionChain => Symbol.IsCanonical()
 Returns true if this is the option chain security, false if it is a specific option contract More...
 
bool IsOptionContract => !Symbol.IsCanonical()
 Returns true if this is a specific option contract security, false if it is the option chain security More...
 
decimal StrikePrice => Symbol.ID.StrikePrice
 Gets the strike price More...
 
DateTime Expiry => Symbol.ID.Date
 Gets the expiration date More...
 
OptionRight Right => Symbol.ID.OptionRight
 Gets the right being purchased (call [right to buy] or put [right to sell]) More...
 
OptionStyle Style => Symbol.ID.OptionStyle
 Gets the option style More...
 
override decimal BidPrice => Cache.BidPrice
 Gets the most recent bid price if available More...
 
override decimal AskPrice => Cache.AskPrice
 Gets the most recent ask price if available More...
 
- Public Attributes inherited from QuantConnect.Securities.Security
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 inherited from QuantConnect.Securities.Option.Option
const int DefaultSettlementDays = 1
 The default number of days required to settle an equity sale More...
 
static readonly TimeSpan DefaultSettlementTime = new (8, 0, 0)
 The default time of day for settlement More...
 
- Static Public Attributes inherited from QuantConnect.Securities.Security
const decimal NullLeverage = 0
 A null security leverage value More...
 
- Properties inherited from QuantConnect.Securities.Option.Option
decimal ScaledStrikePrice [get]
 Gets the strike price multiplied by the strike multiplier More...
 
int ContractUnitOfTrade [get, set]
 When the holder of an equity option exercises one contract, or when the writer of an equity option is assigned an exercise notice on one contract, this unit of trade, usually 100 shares of the underlying security, changes hands. More...
 
int ContractMultiplier [get, set]
 The contract multiplier for the option security More...
 
SettlementType ExerciseSettlement [get, set]
 Specifies if option contract has physical or cash settlement on exercise More...
 
Security Underlying [get, set]
 Gets or sets the underlying security object. More...
 
IOptionPriceModel PriceModel [get, set]
 Gets or sets the price model for this option security More...
 
IOptionExerciseModel OptionExerciseModel [get, set]
 Fill model used to produce fill events for this security More...
 
IOptionAssignmentModel OptionAssignmentModel [get, set]
 The automatic option assignment model More...
 
bool EnableGreekApproximation [get, set]
 When enabled, approximates Greeks if corresponding pricing model didn't calculate exact numbers More...
 
IDerivativeSecurityFilter ContractFilter [get, set]
 Gets or sets the contract filter More...
 
- Properties inherited from QuantConnect.Securities.Security
IShortableProvider ShortableProvider [get]
 This securities IShortableProvider More...
 
IEnumerable< SubscriptionDataConfigSubscriptions [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...
 
Fundamental Fundamentals [get]
 Gets the fundamental data associated with the security if there is any, otherwise null. More...
 
object this[string key] [get, set]
 Gets or sets the specified custom property through the indexer. This is a wrapper around the Get<T>(string) and Add(string,object) methods. More...
 
- Properties inherited from QuantConnect.Interfaces.ISecurityPrice
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...
 
SymbolProperties SymbolProperties [get]
 SymbolProperties of the symbol More...
 
- Properties inherited from QuantConnect.Securities.IDerivativeSecurity
Security Underlying [get, set]
 Gets or sets the underlying security for the derivative More...
 
- Properties inherited from QuantConnect.Interfaces.IOptionPrice
ISecurityPrice Underlying [get]
 Gets a reduced interface of the underlying security object. More...
 

Detailed Description

Index Options security

Definition at line 27 of file IndexOption.cs.

Constructor & Destructor Documentation

◆ IndexOption()

QuantConnect.Securities.IndexOption.IndexOption.IndexOption ( Symbol  symbol,
SecurityExchangeHours  exchangeHours,
Cash  quoteCurrency,
IndexOptionSymbolProperties  symbolProperties,
ICurrencyConverter  currencyConverter,
IRegisteredSecurityDataTypesProvider  registeredTypes,
SecurityCache  securityCache,
Security  underlying,
SettlementType  settlementType = SettlementType.Cash 
)

Constructor for the index option security

Parameters
symbolSymbol of the index option
exchangeHoursExchange hours of the index option
quoteCurrencyQuoted currency of the index option
symbolPropertiesSymbol properties of the index option
currencyConverterCurrency converter
registeredTypesProvides all data types registered to the algorithm
securityCacheCache of security objects
underlyingFuture underlying security
settlementTypeSettlement type for the index option. Most index options are cash-settled.

Definition at line 41 of file IndexOption.cs.

Member Function Documentation

◆ UpdateConsumersMarketPrice()

override void QuantConnect.Securities.IndexOption.IndexOption.UpdateConsumersMarketPrice ( BaseData  data)
protectedvirtual

Consumes market price data and updates the minimum price variation

Parameters
dataMarket price data

Index options have variable sized minimum price variations. For prices greater than or equal to $3.00 USD, the minimum price variation is $0.10 USD. For prices less than $3.00 USD, the minimum price variation is $0.05 USD.

Reimplemented from QuantConnect.Securities.Security.

Definition at line 81 of file IndexOption.cs.


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