BaseFutureFilterUniverse
QuantConnect.Securities.BaseFutureFilterUniverse
BaseFutureFilterUniverse(
all_data: Sequence[
QuantConnect_Securities_BaseFutureFilterUniverse_TData
],
local_time: Union[datetime, date],
)
Bases: Generic[QuantConnect_Securities_BaseFutureFilterUniverse_TUniverse, QuantConnect_Securities_BaseFutureFilterUniverse_TData], ContractSecurityFilterUniverse[QuantConnect_Securities_BaseFutureFilterUniverse_TUniverse, QuantConnect_Securities_BaseFutureFilterUniverse_TData], IFutureContractFilters[QuantConnect_Securities_BaseFutureFilterUniverse_TUniverse]
Base future contracts filter, shared by the futures universe selection filter (FutureFilterUniverse) and the futures chain filters (Data.Market.FuturesChain) so both offer the same filters with the same semantics
Constructs BaseFutureFilterUniverse
This Class is protected.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
all_data
|
Sequence[QuantConnect_Securities_BaseFutureFilterUniverse_TData]
|
All data for the future contracts |
required |
local_time
|
Union[datetime, date]
|
The current local time |
required |
count
count: int
The number of contracts in the universe
DEFAULT_EXPIRATION_TYPE
DEFAULT_EXPIRATION_TYPE: ContractExpirationType = ...
The default expiration type filter value
This Field is protected.
type
type: ContractExpirationType
Expiration Types allowed through the filter Standards only by default
This Property is protected.
local_time
local_time: datetime
The local exchange current time
ContractExpirationType
Bases: IntEnum
Defines listed contract types with Flags attribute
This Class is protected.
STANDARD
STANDARD = 1
Standard contracts
WEEKLY
WEEKLY = 2
Non standard weekly contracts
contract_months
contract_months(
months: List[int],
) -> QuantConnect_Securities_BaseFutureFilterUniverse_TUniverse
Selects the contracts whose contract month is any of the given months of the year, see FutureExpirationCycles. Like expiration_cycle but by the contract month, the month the contract is named after, which for some products, e.g. crude oil, is the month after the expiration month, see FuturesExpiryUtilityFunctions.GetFutureContractMonth
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
months
|
List[int]
|
Months of the year to select contracts from |
required |
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_BaseFutureFilterUniverse_TUniverse
|
Universe with filter applied. |
expiration_cycle
expiration_cycle(
months: List[int],
) -> QuantConnect_Securities_BaseFutureFilterUniverse_TUniverse
Applies filter selecting futures contracts based on expiration cycles. See FutureExpirationCycles for details
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
months
|
List[int]
|
Months to select contracts from |
required |
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_BaseFutureFilterUniverse_TUniverse
|
Universe with filter applied. |
is_standard
is_standard(
symbol: Union[Symbol, str, BaseContract, Security],
) -> bool
Determine if the given Future contract symbol is standard
This Class is protected.
Returns:
| Type | Description |
|---|---|
bool
|
True if contract is standard. |
expiration
expiration(
min_expiry: timedelta, max_expiry: timedelta
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
expiration(
min_expiry_days: int, max_expiry_days: int
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
expiration(
expiries: List[datetime],
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Signature descriptions:
-
Applies filter selecting options contracts based on a range of expiration dates relative to the current day
-
Applies filter selecting contracts based on a range of expiration dates relative to the current day
-
Applies filter selecting the contracts expiring on any of the given dates. Time of day is ignored
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
min_expiry
|
Optional[timedelta]
|
The minimum time until expiry to include, for example, TimeSpan.FromDays(10) |
None
|
max_expiry
|
Optional[timedelta]
|
The maximum time until expiry to include, for example, TimeSpan.FromDays(10) |
None
|
min_expiry_days
|
Optional[int]
|
The minimum time, expressed in days, until expiry to include, for example, 10 |
None
|
max_expiry_days
|
Optional[int]
|
The maximum time, expressed in days, until expiry to include, for example, 10 |
None
|
expiries
|
Optional[List[datetime]]
|
The expiration dates |
None
|
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
back_month
back_month() -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Returns first of back month contracts
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
back_months
back_months() -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Returns a list of back month contracts
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
expiring_after
expiring_after(
date: Union[datetime, date],
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Applies filter selecting the contracts expiring after the given date, excluding it. Time of day is ignored
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
date
|
Union[datetime, date]
|
The date the expirations must be after |
required |
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
expiring_before
expiring_before(
date: Union[datetime, date],
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Applies filter selecting the contracts expiring before the given date, excluding it. Time of day is ignored
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
date
|
Union[datetime, date]
|
The date the expirations must be before |
required |
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
farthest_expiration
farthest_expiration() -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Returns the contracts of the farthest expiration
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
front_month
front_month() -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Returns front month contract
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
oi
oi(
min: int, max: int
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Applies filter selecting the contracts with open interest between the given range. Alias for open_interest
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
min
|
int
|
The minimum open interest value |
required |
max
|
int
|
The maximum open interest value |
required |
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
open_interest
open_interest(
min: int, max: int
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Applies filter selecting the contracts with open interest between the given range
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
min
|
int
|
The minimum open interest value |
required |
max
|
int
|
The maximum open interest value |
required |
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
standards_only
standards_only() -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Sets universe of standard contracts (if any) as selection Contracts by default are standards; only needed to switch back if changed
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
volume
volume(
min: int, max: int
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Applies filter selecting the contracts with volume between the given range
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
min
|
int
|
The minimum volume |
required |
max
|
int
|
The maximum volume |
required |
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
weeklys_only
weeklys_only() -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Sets universe of weeklys contracts (if any) as selection
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
zero_dte
zero_dte() -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Applies filter selecting the contracts expiring today
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
__len__
__len__() -> int
contracts
contracts(
contracts: Any,
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
contracts(
contracts: List[Symbol],
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
contracts(
contracts: List[
QuantConnect_Securities_ContractSecurityFilterUniverse_TData
],
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
contracts(
contract_selector: Callable[
[
List[
QuantConnect_Securities_ContractSecurityFilterUniverse_TData
]
],
List[Symbol],
],
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
contracts(
contract_selector: Callable[
[
List[
QuantConnect_Securities_ContractSecurityFilterUniverse_TData
]
],
List[
QuantConnect_Securities_ContractSecurityFilterUniverse_TData
],
],
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Signature descriptions:
-
Explicitly sets the selected contract symbols for this universe. This overrides and and all other methods of selecting symbols assuming it is called last.
-
Sets a function used to filter the set of available contract filters. The input to the 'contract_selector' function will be the already filtered list if any other filters have already been applied.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
contracts
|
Optional[Any | List[Symbol] | List[QuantConnect_Securities_ContractSecurityFilterUniverse_TData]]
|
The option contract symbol objects to select |
None
|
contract_selector
|
Optional[Callable[[List[QuantConnect_Securities_ContractSecurityFilterUniverse_TData]], List[Symbol]] | Callable[[List[QuantConnect_Securities_ContractSecurityFilterUniverse_TData]], List[QuantConnect_Securities_ContractSecurityFilterUniverse_TData]]]
|
The option contract symbol objects to select |
None
|
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
__iter__
__iter__() -> (
Iterator[
QuantConnect_Securities_ContractSecurityFilterUniverse_TData
]
)
adjust_expiration_reference_date
adjust_expiration_reference_date(
reference_date: Union[datetime, date],
) -> datetime
Adjust the reference date used for expiration filtering. By default it just returns the same date.
This Class is protected.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
reference_date
|
Union[datetime, date]
|
The reference date to be adjusted |
required |
Returns:
| Type | Description |
|---|---|
datetime
|
The adjusted date. |
create_data_instance
create_data_instance(
symbol: Union[Symbol, str, BaseContract, Security],
) -> QuantConnect_Securities_ContractSecurityFilterUniverse_TData
Creates a new instance of the data type for the given symbol
This Class is protected.
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_TData
|
A data instance for the given symbol. |
get_enumerator
get_enumerator() -> (
IEnumerator[
QuantConnect_Securities_ContractSecurityFilterUniverse_TData
]
)
IEnumerable interface method implementation
Returns:
| Type | Description |
|---|---|
IEnumerator[QuantConnect_Securities_ContractSecurityFilterUniverse_TData]
|
IEnumerator of Symbols in Universe. |
get_last_trading_date
get_last_trading_date(
contract: QuantConnect_Securities_ContractSecurityFilterUniverse_TData,
) -> datetime
Gets the date the given contract stops trading, used by the expiration filters. Defaults to the contract expiration date
This Class is protected.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
contract
|
QuantConnect_Securities_ContractSecurityFilterUniverse_TData
|
The contract |
required |
Returns:
| Type | Description |
|---|---|
datetime
|
The contract's last trading date. |
get_open_interest
get_open_interest(
contract: QuantConnect_Securities_ContractSecurityFilterUniverse_TData,
) -> float
Gets the open interest of the given contract
This Class is protected.
get_volume
get_volume(
contract: QuantConnect_Securities_ContractSecurityFilterUniverse_TData,
) -> float
Gets the volume of the given contract
This Class is protected.
include_weeklys
include_weeklys() -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Includes universe of non-standard weeklys contracts (if any) into selection
IncludeWeeklys is obsolete because weekly contracts are now included by default.
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
in_range
in_range(
selector: Callable[
[
QuantConnect_Securities_ContractSecurityFilterUniverse_TData
],
float,
],
min: float,
max: float,
) -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Selects the contracts whose value, given by the selector, is within the given range. The selector runs once per contract
This Class is protected.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
selector
|
Callable[[QuantConnect_Securities_ContractSecurityFilterUniverse_TData], float]
|
Gets the value of a contract |
required |
min
|
float
|
The minimum value |
required |
max
|
float
|
The maximum value |
required |
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
only_apply_filter_at_market_open
only_apply_filter_at_market_open() -> (
QuantConnect_Securities_ContractSecurityFilterUniverse_T
)
Instructs the engine to only filter contracts on the first time step of each market day.
Deprecated as of 2023-12-13. Filters are always non-dynamic as of now, which means they will only bee applied daily.
Returns:
| Type | Description |
|---|---|
QuantConnect_Securities_ContractSecurityFilterUniverse_T
|
Universe with filter applied. |
refresh
refresh(
all_data: Sequence[
QuantConnect_Securities_ContractSecurityFilterUniverse_TData
],
local_time: Union[datetime, date],
) -> None
Refreshes this filter universe
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
all_data
|
Sequence[QuantConnect_Securities_ContractSecurityFilterUniverse_TData]
|
All data for contracts in the Universe |
required |
local_time
|
Union[datetime, date]
|
The local exchange current time |
required |