Interactive Brokers¶
Integration adapter for Interactive Brokers.
- class ContainerStatus¶
Bases:
objectContainer status enumeration.
- CONTAINER_CREATED = ContainerStatus.CONTAINER_CREATED¶
- CONTAINER_STARTING = ContainerStatus.CONTAINER_STARTING¶
- CONTAINER_STOPPED = ContainerStatus.CONTAINER_STOPPED¶
- NOT_LOGGED_IN = ContainerStatus.NOT_LOGGED_IN¶
- NO_CONTAINER = ContainerStatus.NO_CONTAINER¶
- READY = ContainerStatus.READY¶
- UNKNOWN = ContainerStatus.UNKNOWN¶
- class DockerizedIBGateway¶
Bases:
objectDockerized IB Gateway manager.
This struct manages the lifecycle of Interactive Brokers Gateway Docker containers, including creation, starting, stopping, and status checking.
- container_name¶
Get the container name.
- container_status()¶
Get container status.
- host¶
Get the host address.
- port¶
Get the port.
- safe_start(wait)¶
Safely start the gateway.
- safe_start_blocking(wait)¶
- start(wait)¶
Start the gateway.
- start_blocking(wait)¶
- stop()¶
Stop the gateway.
- stop_blocking()¶
- class DockerizedIBGatewayConfig¶
Bases:
objectConfiguration for Dockerized IB Gateway.
This configuration is for managing containerized IB Gateway instances. It supports environment variable loading and sensitive data masking.
- container_image¶
Returns the container image.
- has_password¶
- read_only_api¶
Returns whether read-only API is enabled.
- timeout¶
Returns the timeout in seconds.
- trading_mode¶
Returns the trading mode.
- username¶
Returns the username.
- vnc_port¶
Returns the VNC port.
- class HistoricalInteractiveBrokersClient¶
Bases:
objectHistorical data client for Interactive Brokers.
This client provides methods for requesting historical bars and ticks for backtesting and research purposes.
- request_bars(bar_specifications, end_date_time, start_date_time=None, duration=None, contracts=None, instrument_ids=None, use_rth=True, timeout=60)¶
Request historical bars.
# Continuous futures
Continuous futures (CONTFUT) reject an explicit end date/time with IB error 10339. For these contracts the end date is dropped and only the first duration segment is requested, anchored to the current time, so the returned bars may fall outside [start_date_time, end_date_time]. A warning is logged when the requested end date/time is in the past or the range spans more than one duration segment.
- request_instruments(instrument_ids=None, contracts=None)¶
Request instruments.
- request_ticks(tick_type, start_date_time, end_date_time, contracts=None, instrument_ids=None, use_rth=True, timeout=60, limit=0)¶
Request historical ticks (quotes or trades).
- class IbAction¶
Bases:
objectInteractive Brokers execution/action side values.
- BOUGHT = IbAction.BOUGHT¶
- BUY = IbAction.BUY¶
- SELL = IbAction.SELL¶
- SELL_LONG = IbAction.SELL_LONG¶
- SELL_SHORT = IbAction.SELL_SHORT¶
- SOLD = IbAction.SOLD¶
- as_str()¶
- class IbArticleType¶
Bases:
objectInteractive Brokers news article type values.
- BINARY = IbArticleType.BINARY¶
- TEXT = IbArticleType.TEXT¶
- as_i32()¶
- class IbAuctionStrategy¶
Bases:
objectInteractive Brokers BOX auction strategy values.
- IMPROVEMENT = IbAuctionStrategy.IMPROVEMENT¶
- MATCH = IbAuctionStrategy.MATCH¶
- TRANSPARENT = IbAuctionStrategy.TRANSPARENT¶
- as_i32()¶
- class IbAuctionType¶
Bases:
objectInteractive Brokers builder auction type values.
- CLOSING = IbAuctionType.CLOSING¶
- OPENING = IbAuctionType.OPENING¶
- VOLATILITY = IbAuctionType.VOLATILITY¶
- as_i32()¶
- class IbBondIdentifierKind¶
Bases:
objectBond identifier discriminator for the rust-ibapi payload enum.
- CUSIP = IbBondIdentifierKind.CUSIP¶
- ISIN = IbBondIdentifierKind.ISIN¶
- as_str()¶
- class IbBuilderTimeInForce¶
Bases:
objectInteractive Brokers builder time-in-force values.
- AUCTION = IbBuilderTimeInForce.AUCTION¶
- DAY = IbBuilderTimeInForce.DAY¶
- DAY_TILL_CANCELED = IbBuilderTimeInForce.DAY_TILL_CANCELED¶
- FILL_OR_KILL = IbBuilderTimeInForce.FILL_OR_KILL¶
- GOOD_TILL_CANCEL = IbBuilderTimeInForce.GOOD_TILL_CANCEL¶
- GOOD_TILL_CROSSING = IbBuilderTimeInForce.GOOD_TILL_CROSSING¶
- GOOD_TILL_DATE = IbBuilderTimeInForce.GOOD_TILL_DATE¶
- IMMEDIATE_OR_CANCEL = IbBuilderTimeInForce.IMMEDIATE_OR_CANCEL¶
- OPENING_AUCTION = IbBuilderTimeInForce.OPENING_AUCTION¶
- as_str()¶
- class IbComboLegOpenClose¶
Bases:
objectInteractive Brokers combo-leg open/close values.
- CLOSE = IbComboLegOpenClose.CLOSE¶
- OPEN = IbComboLegOpenClose.OPEN¶
- SAME = IbComboLegOpenClose.SAME¶
- UNKNOWN = IbComboLegOpenClose.UNKNOWN¶
- as_i32()¶
- class IbConditionConjunction¶
Bases:
objectInteractive Brokers conditional order conjunction values.
- AND = IbConditionConjunction.AND¶
- OR = IbConditionConjunction.OR¶
- as_str()¶
- is_conjunction()¶
- class IbConditionKind¶
Bases:
objectInteractive Brokers conditional order condition types.
- EXECUTION = IbConditionKind.EXECUTION¶
- MARGIN = IbConditionKind.MARGIN¶
- PERCENT_CHANGE = IbConditionKind.PERCENT_CHANGE¶
- PRICE = IbConditionKind.PRICE¶
- TIME = IbConditionKind.TIME¶
- VOLUME = IbConditionKind.VOLUME¶
- as_str()¶
- class IbExerciseAction¶
Bases:
objectInteractive Brokers option exercise action values.
- EXERCISE = IbExerciseAction.EXERCISE¶
- LAPSE = IbExerciseAction.LAPSE¶
- as_i32()¶
- class IbFundAssetType¶
Bases:
object- ALTERNATIVE = IbFundAssetType.ALTERNATIVE¶
- EQUITY = IbFundAssetType.EQUITY¶
- FIXED_INCOME = IbFundAssetType.FIXED_INCOME¶
- GUARANTEED = IbFundAssetType.GUARANTEED¶
- MONEY_MARKET = IbFundAssetType.MONEY_MARKET¶
- MULTI_ASSET = IbFundAssetType.MULTI_ASSET¶
- NONE = IbFundAssetType.NONE¶
- OTHERS = IbFundAssetType.OTHERS¶
- SECTOR = IbFundAssetType.SECTOR¶
- as_str()¶
- class IbFundDistributionPolicyIndicator¶
Bases:
object- ACCUMULATION_FUND = IbFundDistributionPolicyIndicator.ACCUMULATION_FUND¶
- INCOME_FUND = IbFundDistributionPolicyIndicator.INCOME_FUND¶
- NONE = IbFundDistributionPolicyIndicator.NONE¶
- as_str()¶
- class IbHistoricalBarSize¶
Bases:
objectInteractive Brokers historical bar-size values.
- DAY = IbHistoricalBarSize.DAY¶
- HOUR = IbHistoricalBarSize.HOUR¶
- HOUR2 = IbHistoricalBarSize.HOUR2¶
- HOUR3 = IbHistoricalBarSize.HOUR3¶
- HOUR4 = IbHistoricalBarSize.HOUR4¶
- HOUR8 = IbHistoricalBarSize.HOUR8¶
- MIN = IbHistoricalBarSize.MIN¶
- MIN10 = IbHistoricalBarSize.MIN10¶
- MIN15 = IbHistoricalBarSize.MIN15¶
- MIN2 = IbHistoricalBarSize.MIN2¶
- MIN20 = IbHistoricalBarSize.MIN20¶
- MIN3 = IbHistoricalBarSize.MIN3¶
- MIN30 = IbHistoricalBarSize.MIN30¶
- MIN5 = IbHistoricalBarSize.MIN5¶
- MONTH = IbHistoricalBarSize.MONTH¶
- SEC = IbHistoricalBarSize.SEC¶
- SEC10 = IbHistoricalBarSize.SEC10¶
- SEC15 = IbHistoricalBarSize.SEC15¶
- SEC30 = IbHistoricalBarSize.SEC30¶
- SEC5 = IbHistoricalBarSize.SEC5¶
- WEEK = IbHistoricalBarSize.WEEK¶
- as_str()¶
- class IbHistoricalTickType¶
Bases:
objectInteractive Brokers historical tick request types.
- BID_ASK = IbHistoricalTickType.BID_ASK¶
- TRADES = IbHistoricalTickType.TRADES¶
- as_str()¶
- class IbHistoricalWhatToShow¶
Bases:
objectInteractive Brokers historical data selectors.
- ADJUSTED_LAST = IbHistoricalWhatToShow.ADJUSTED_LAST¶
- ASK = IbHistoricalWhatToShow.ASK¶
- BID = IbHistoricalWhatToShow.BID¶
- BID_ASK = IbHistoricalWhatToShow.BID_ASK¶
- FEE_RATE = IbHistoricalWhatToShow.FEE_RATE¶
- HISTORICAL_VOLATILITY = IbHistoricalWhatToShow.HISTORICAL_VOLATILITY¶
- MIDPOINT = IbHistoricalWhatToShow.MIDPOINT¶
- OPTION_IMPLIED_VOLATILITY = IbHistoricalWhatToShow.OPTION_IMPLIED_VOLATILITY¶
- SCHEDULE = IbHistoricalWhatToShow.SCHEDULE¶
- TRADES = IbHistoricalWhatToShow.TRADES¶
- as_str()¶
- class IbLiquidity¶
Bases:
objectInteractive Brokers execution liquidity values.
- ADDED_LIQUIDITY = IbLiquidity.ADDED_LIQUIDITY¶
- LIQUIDITY_ROUTED_OUT = IbLiquidity.LIQUIDITY_ROUTED_OUT¶
- NONE = IbLiquidity.NONE¶
- REMOVED_LIQUIDITY = IbLiquidity.REMOVED_LIQUIDITY¶
- UNKNOWN = IbLiquidity.UNKNOWN¶
- as_i32()¶
- class IbOcaType¶
Bases:
objectInteractive Brokers one-cancels-all behavior.
- CANCEL_WITH_BLOCK = IbOcaType.CANCEL_WITH_BLOCK¶
- NONE = IbOcaType.NONE¶
- REDUCE_WITHOUT_BLOCK = IbOcaType.REDUCE_WITHOUT_BLOCK¶
- REDUCE_WITH_BLOCK = IbOcaType.REDUCE_WITH_BLOCK¶
- as_i32()¶
- class IbOptionRight¶
Bases:
objectInteractive Brokers option right values.
- CALL = IbOptionRight.CALL¶
- PUT = IbOptionRight.PUT¶
- as_str()¶
- class IbOrderOpenClose¶
Bases:
object- CLOSE = IbOrderOpenClose.CLOSE¶
- OPEN = IbOrderOpenClose.OPEN¶
- as_str()¶
- class IbOrderOrigin¶
Bases:
objectInteractive Brokers order origin values.
- CUSTOMER = IbOrderOrigin.CUSTOMER¶
- FIRM = IbOrderOrigin.FIRM¶
- as_i32()¶
- class IbOrderStatus¶
Bases:
objectInteractive Brokers order status values.
- API_CANCELLED = IbOrderStatus.API_CANCELLED¶
- API_PENDING = IbOrderStatus.API_PENDING¶
- CANCELLED = IbOrderStatus.CANCELLED¶
- FILLED = IbOrderStatus.FILLED¶
- INACTIVE = IbOrderStatus.INACTIVE¶
- PENDING_CANCEL = IbOrderStatus.PENDING_CANCEL¶
- PENDING_SUBMIT = IbOrderStatus.PENDING_SUBMIT¶
- PRE_SUBMITTED = IbOrderStatus.PRE_SUBMITTED¶
- SUBMITTED = IbOrderStatus.SUBMITTED¶
- as_str()¶
- class IbOrderType¶
Bases:
objectInteractive Brokers order type values.
- BOX_TOP = IbOrderType.BOX_TOP¶
- LIMIT = IbOrderType.LIMIT¶
- LIMIT_IF_TOUCHED = IbOrderType.LIMIT_IF_TOUCHED¶
- LIMIT_ON_CLOSE = IbOrderType.LIMIT_ON_CLOSE¶
- MARKET = IbOrderType.MARKET¶
- MARKET_IF_TOUCHED = IbOrderType.MARKET_IF_TOUCHED¶
- MARKET_ON_CLOSE = IbOrderType.MARKET_ON_CLOSE¶
- MARKET_TO_LIMIT = IbOrderType.MARKET_TO_LIMIT¶
- MARKET_WITH_PROTECTION = IbOrderType.MARKET_WITH_PROTECTION¶
- MIDPRICE = IbOrderType.MIDPRICE¶
- PASSIVE_RELATIVE = IbOrderType.PASSIVE_RELATIVE¶
- PEGGED_TO_BENCHMARK = IbOrderType.PEGGED_TO_BENCHMARK¶
- PEGGED_TO_MARKET = IbOrderType.PEGGED_TO_MARKET¶
- PEGGED_TO_MIDPOINT = IbOrderType.PEGGED_TO_MIDPOINT¶
- PEGGED_TO_STOCK = IbOrderType.PEGGED_TO_STOCK¶
- PEG_BEST = IbOrderType.PEG_BEST¶
- RELATIVE = IbOrderType.RELATIVE¶
- RELATIVE_LIMIT_COMBO = IbOrderType.RELATIVE_LIMIT_COMBO¶
- RELATIVE_MARKET_COMBO = IbOrderType.RELATIVE_MARKET_COMBO¶
- STOP = IbOrderType.STOP¶
- STOP_LIMIT = IbOrderType.STOP_LIMIT¶
- STOP_WITH_PROTECTION = IbOrderType.STOP_WITH_PROTECTION¶
- TRAILING_STOP = IbOrderType.TRAILING_STOP¶
- TRAILING_STOP_LIMIT = IbOrderType.TRAILING_STOP_LIMIT¶
- VOLATILITY = IbOrderType.VOLATILITY¶
- as_str()¶
- class IbRealtimeBarSize¶
Bases:
objectInteractive Brokers realtime bar-size values.
- SEC5 = IbRealtimeBarSize.SEC5¶
- as_str()¶
- class IbRealtimeWhatToShow¶
Bases:
objectInteractive Brokers realtime bar selectors.
- ASK = IbRealtimeWhatToShow.ASK¶
- BID = IbRealtimeWhatToShow.BID¶
- MIDPOINT = IbRealtimeWhatToShow.MIDPOINT¶
- TRADES = IbRealtimeWhatToShow.TRADES¶
- as_str()¶
- class IbReferencePriceType¶
Bases:
objectInteractive Brokers VOL order reference price type values.
- AVERAGE_OF_NBBO = IbReferencePriceType.AVERAGE_OF_NBBO¶
- NBBO = IbReferencePriceType.NBBO¶
- as_i32()¶
- class IbRiskAversion¶
Bases:
object- AGGRESSIVE = IbRiskAversion.AGGRESSIVE¶
- GET_DONE = IbRiskAversion.GET_DONE¶
- NEUTRAL = IbRiskAversion.NEUTRAL¶
- PASSIVE = IbRiskAversion.PASSIVE¶
- as_str()¶
- class IbRule80A¶
Bases:
object- AGENCY = IbRule80A.AGENCY¶
- AGENCY_PT = IbRule80A.AGENCY_PT¶
- AGENCY_PTIA = IbRule80A.AGENCY_PTIA¶
- AGENT_OTHER_MEMBER = IbRule80A.AGENT_OTHER_MEMBER¶
- AGENT_OTHER_MEMBER_PT = IbRule80A.AGENT_OTHER_MEMBER_PT¶
- AGENT_OTHER_MEMBER_PTIA = IbRule80A.AGENT_OTHER_MEMBER_PTIA¶
- INDIVIDUAL = IbRule80A.INDIVIDUAL¶
- INDIVIDUAL_PT = IbRule80A.INDIVIDUAL_PT¶
- INDIVIDUAL_PTIA = IbRule80A.INDIVIDUAL_PTIA¶
- as_str()¶
- class IbSecurityType¶
Bases:
objectInteractive Brokers security type values used by the adapter.
- BOND = IbSecurityType.BOND¶
- CFD = IbSecurityType.CFD¶
- COMMODITY = IbSecurityType.COMMODITY¶
- CONTINUOUS_FUTURE = IbSecurityType.CONTINUOUS_FUTURE¶
- CRYPTO = IbSecurityType.CRYPTO¶
- FOREX_PAIR = IbSecurityType.FOREX_PAIR¶
- FUTURE = IbSecurityType.FUTURE¶
- FUTURES_OPTION = IbSecurityType.FUTURES_OPTION¶
- INDEX = IbSecurityType.INDEX¶
- MUTUAL_FUND = IbSecurityType.MUTUAL_FUND¶
- NEWS = IbSecurityType.NEWS¶
- OPTION = IbSecurityType.OPTION¶
- SPREAD = IbSecurityType.SPREAD¶
- STOCK = IbSecurityType.STOCK¶
- WARRANT = IbSecurityType.WARRANT¶
- as_str()¶
- class IbShortSaleSlot¶
Bases:
objectInteractive Brokers institutional short-sale slot values.
- BROKER = IbShortSaleSlot.BROKER¶
- NONE = IbShortSaleSlot.NONE¶
- THIRD_PARTY = IbShortSaleSlot.THIRD_PARTY¶
- as_i32()¶
- class IbTickType¶
Bases:
objectInteractive Brokers market data tick types.
- ASK = IbTickType.ASK¶
- ASK_EFP_COMPUTATION = IbTickType.ASK_EFP_COMPUTATION¶
- ASK_EXCH = IbTickType.ASK_EXCH¶
- ASK_OPTION = IbTickType.ASK_OPTION¶
- ASK_SIZE = IbTickType.ASK_SIZE¶
- ASK_YIELD = IbTickType.ASK_YIELD¶
- AUCTION_IMBALANCE = IbTickType.AUCTION_IMBALANCE¶
- AUCTION_PRICE = IbTickType.AUCTION_PRICE¶
- AUCTION_VOLUME = IbTickType.AUCTION_VOLUME¶
- AVG_OPT_VOLUME = IbTickType.AVG_OPT_VOLUME¶
- AVG_VOLUME = IbTickType.AVG_VOLUME¶
- BID = IbTickType.BID¶
- BID_EFP_COMPUTATION = IbTickType.BID_EFP_COMPUTATION¶
- BID_EXCH = IbTickType.BID_EXCH¶
- BID_OPTION = IbTickType.BID_OPTION¶
- BID_SIZE = IbTickType.BID_SIZE¶
- BID_YIELD = IbTickType.BID_YIELD¶
- BOND_FACTOR_MULTIPLIER = IbTickType.BOND_FACTOR_MULTIPLIER¶
- CLOSE = IbTickType.CLOSE¶
- CLOSE_EFP_COMPUTATION = IbTickType.CLOSE_EFP_COMPUTATION¶
- CREDITMAN_MARK_PRICE = IbTickType.CREDITMAN_MARK_PRICE¶
- CREDITMAN_SLOW_MARK_PRICE = IbTickType.CREDITMAN_SLOW_MARK_PRICE¶
- CUST_OPTION_COMPUTATION = IbTickType.CUST_OPTION_COMPUTATION¶
- DELAYED_ASK = IbTickType.DELAYED_ASK¶
- DELAYED_ASK_OPTION = IbTickType.DELAYED_ASK_OPTION¶
- DELAYED_ASK_SIZE = IbTickType.DELAYED_ASK_SIZE¶
- DELAYED_BID = IbTickType.DELAYED_BID¶
- DELAYED_BID_OPTION = IbTickType.DELAYED_BID_OPTION¶
- DELAYED_BID_SIZE = IbTickType.DELAYED_BID_SIZE¶
- DELAYED_CLOSE = IbTickType.DELAYED_CLOSE¶
- DELAYED_HALTED = IbTickType.DELAYED_HALTED¶
- DELAYED_HIGH = IbTickType.DELAYED_HIGH¶
- DELAYED_LAST = IbTickType.DELAYED_LAST¶
- DELAYED_LAST_OPTION = IbTickType.DELAYED_LAST_OPTION¶
- DELAYED_LAST_SIZE = IbTickType.DELAYED_LAST_SIZE¶
- DELAYED_LAST_TIMESTAMP = IbTickType.DELAYED_LAST_TIMESTAMP¶
- DELAYED_LOW = IbTickType.DELAYED_LOW¶
- DELAYED_MODEL_OPTION = IbTickType.DELAYED_MODEL_OPTION¶
- DELAYED_OPEN = IbTickType.DELAYED_OPEN¶
- DELAYED_VOLUME = IbTickType.DELAYED_VOLUME¶
- DELAYED_YIELD_ASK = IbTickType.DELAYED_YIELD_ASK¶
- DELAYED_YIELD_BID = IbTickType.DELAYED_YIELD_BID¶
- ESTIMATED_IPO_MIDPOINT = IbTickType.ESTIMATED_IPO_MIDPOINT¶
- ETF_FROZEN_NAV_LAST = IbTickType.ETF_FROZEN_NAV_LAST¶
- ETF_NAV_ASK = IbTickType.ETF_NAV_ASK¶
- ETF_NAV_BID = IbTickType.ETF_NAV_BID¶
- ETF_NAV_CLOSE = IbTickType.ETF_NAV_CLOSE¶
- ETF_NAV_HIGH = IbTickType.ETF_NAV_HIGH¶
- ETF_NAV_LAST = IbTickType.ETF_NAV_LAST¶
- ETF_NAV_LOW = IbTickType.ETF_NAV_LOW¶
- ETF_NAV_PRIOR_CLOSE = IbTickType.ETF_NAV_PRIOR_CLOSE¶
- FINAL_IPO_LAST = IbTickType.FINAL_IPO_LAST¶
- FUNDAMENTAL_RATIOS = IbTickType.FUNDAMENTAL_RATIOS¶
- FUTURES_OPEN_INTEREST = IbTickType.FUTURES_OPEN_INTEREST¶
- HALTED = IbTickType.HALTED¶
- HIGH = IbTickType.HIGH¶
- HIGH13_WEEK = IbTickType.HIGH13_WEEK¶
- HIGH26_WEEK = IbTickType.HIGH26_WEEK¶
- HIGH52_WEEK = IbTickType.HIGH52_WEEK¶
- HIGH_EFP_COMPUTATION = IbTickType.HIGH_EFP_COMPUTATION¶
- IB_DIVIDENDS = IbTickType.IB_DIVIDENDS¶
- INDEX_FUTURE_PREMIUM = IbTickType.INDEX_FUTURE_PREMIUM¶
- LAST = IbTickType.LAST¶
- LAST_EFP_COMPUTATION = IbTickType.LAST_EFP_COMPUTATION¶
- LAST_EXCH = IbTickType.LAST_EXCH¶
- LAST_OPTION = IbTickType.LAST_OPTION¶
- LAST_REG_TIME = IbTickType.LAST_REG_TIME¶
- LAST_RTH_TRADE = IbTickType.LAST_RTH_TRADE¶
- LAST_SIZE = IbTickType.LAST_SIZE¶
- LAST_TIMESTAMP = IbTickType.LAST_TIMESTAMP¶
- LAST_YIELD = IbTickType.LAST_YIELD¶
- LOW = IbTickType.LOW¶
- LOW13_WEEK = IbTickType.LOW13_WEEK¶
- LOW26_WEEK = IbTickType.LOW26_WEEK¶
- LOW52_WEEK = IbTickType.LOW52_WEEK¶
- LOW_EFP_COMPUTATION = IbTickType.LOW_EFP_COMPUTATION¶
- MARK_PRICE = IbTickType.MARK_PRICE¶
- MODEL_OPTION = IbTickType.MODEL_OPTION¶
- NEWS_TICK = IbTickType.NEWS_TICK¶
- OPEN = IbTickType.OPEN¶
- OPEN_EFP_COMPUTATION = IbTickType.OPEN_EFP_COMPUTATION¶
- OPEN_INTEREST = IbTickType.OPEN_INTEREST¶
- OPTION_ASK_EXCH = IbTickType.OPTION_ASK_EXCH¶
- OPTION_BID_EXCH = IbTickType.OPTION_BID_EXCH¶
- OPTION_CALL_OPEN_INTEREST = IbTickType.OPTION_CALL_OPEN_INTEREST¶
- OPTION_CALL_VOLUME = IbTickType.OPTION_CALL_VOLUME¶
- OPTION_HISTORICAL_VOL = IbTickType.OPTION_HISTORICAL_VOL¶
- OPTION_IMPLIED_VOL = IbTickType.OPTION_IMPLIED_VOL¶
- OPTION_PUT_OPEN_INTEREST = IbTickType.OPTION_PUT_OPEN_INTEREST¶
- OPTION_PUT_VOLUME = IbTickType.OPTION_PUT_VOLUME¶
- REGULATORY_IMBALANCE = IbTickType.REGULATORY_IMBALANCE¶
- REUTERS2_MUTUAL_FUNDS = IbTickType.REUTERS2_MUTUAL_FUNDS¶
- RT_HISTORICAL_VOL = IbTickType.RT_HISTORICAL_VOL¶
- RT_TRD_VOLUME = IbTickType.RT_TRD_VOLUME¶
- RT_VOLUME = IbTickType.RT_VOLUME¶
- SHORTABLE = IbTickType.SHORTABLE¶
- SHORTABLE_SHARES = IbTickType.SHORTABLE_SHARES¶
- SHORT_TERM_VOLUME10_MIN = IbTickType.SHORT_TERM_VOLUME10_MIN¶
- SHORT_TERM_VOLUME3_MIN = IbTickType.SHORT_TERM_VOLUME3_MIN¶
- SHORT_TERM_VOLUME5_MIN = IbTickType.SHORT_TERM_VOLUME5_MIN¶
- SOCIAL_MARKET_ANALYTICS = IbTickType.SOCIAL_MARKET_ANALYTICS¶
- TRADE_COUNT = IbTickType.TRADE_COUNT¶
- TRADE_RATE = IbTickType.TRADE_RATE¶
- UNKNOWN = IbTickType.UNKNOWN¶
- VOLUME = IbTickType.VOLUME¶
- VOLUME_RATE = IbTickType.VOLUME_RATE¶
- as_i32()¶
- class IbTimeInForce¶
Bases:
objectInteractive Brokers time-in-force values.
- AUCTION = IbTimeInForce.AUCTION¶
- DAY = IbTimeInForce.DAY¶
- DAY_TIL_CANCELED = IbTimeInForce.DAY_TIL_CANCELED¶
- FILL_OR_KILL = IbTimeInForce.FILL_OR_KILL¶
- GOOD_TIL_CANCELED = IbTimeInForce.GOOD_TIL_CANCELED¶
- GOOD_TIL_DATE = IbTimeInForce.GOOD_TIL_DATE¶
- IMMEDIATE_OR_CANCEL = IbTimeInForce.IMMEDIATE_OR_CANCEL¶
- ON_OPEN = IbTimeInForce.ON_OPEN¶
- as_str()¶
- class IbTradingHours¶
Bases:
objectInteractive Brokers trading hours selector.
- EXTENDED = IbTradingHours.EXTENDED¶
- REGULAR = IbTradingHours.REGULAR¶
- use_rth()¶
- class IbTriggerMethod¶
Bases:
objectInteractive Brokers price-condition trigger methods.
- BID_ASK = IbTriggerMethod.BID_ASK¶
- DEFAULT = IbTriggerMethod.DEFAULT¶
- DOUBLE_BID_ASK = IbTriggerMethod.DOUBLE_BID_ASK¶
- DOUBLE_LAST = IbTriggerMethod.DOUBLE_LAST¶
- LAST = IbTriggerMethod.LAST¶
- LAST_OR_BID_ASK = IbTriggerMethod.LAST_OR_BID_ASK¶
- MIDPOINT = IbTriggerMethod.MIDPOINT¶
- as_i32()¶
- class IbTwapStrategyType¶
Bases:
object- MARKETABLE = IbTwapStrategyType.MARKETABLE¶
- MATCHING_LAST = IbTwapStrategyType.MATCHING_LAST¶
- MATCHING_MIDPOINT = IbTwapStrategyType.MATCHING_MIDPOINT¶
- MATCHING_SAME_SIDE = IbTwapStrategyType.MATCHING_SAME_SIDE¶
- as_str()¶
- class IbVolatilityType¶
Bases:
objectInteractive Brokers volatility type values.
- ANNUAL = IbVolatilityType.ANNUAL¶
- DAILY = IbVolatilityType.DAILY¶
- as_i32()¶
- class InteractiveBrokersDataClientConfig¶
Bases:
objectConfiguration for Interactive Brokers data client.
- all_last_trades¶
Returns whether tick-by-tick subscriptions include special-condition trades.
- batch_quotes¶
Returns whether to use batch quotes.
- client_id¶
Returns the client ID.
- connection_timeout¶
Returns the connection timeout in seconds.
- handle_revised_bars¶
Returns whether to handle revised bars.
- host¶
Returns the host.
- ignore_quote_tick_size_updates¶
Returns whether to ignore quote tick size updates.
- instrument_provider¶
Returns the instrument provider configuration.
- market_data_type¶
Returns the market data type.
- port¶
Returns the port.
- request_timeout¶
Returns the request timeout in seconds.
- subscription_idle_timeout_secs¶
Returns the optional subscription idle interval in seconds.
- use_regular_trading_hours¶
Returns whether to use regular trading hours only.
- class InteractiveBrokersDataClientFactory¶
Bases:
objectFactory for creating Interactive Brokers data clients.
- name()¶
- class InteractiveBrokersExecutionClientConfig¶
Bases:
objectConfiguration for Interactive Brokers execution client.
- account_id¶
Returns the raw IB account code.
- client_id¶
Returns the client ID.
- connection_timeout¶
Returns the connection timeout in seconds.
- fetch_all_open_orders¶
Returns whether to fetch all open orders.
- host¶
Returns the host.
- instrument_provider¶
Returns the instrument provider configuration.
- port¶
Returns the port.
- request_timeout¶
Returns the request timeout in seconds.
- track_option_exercise_from_position_update¶
Returns whether to track option exercise from position updates.
- class InteractiveBrokersExecutionClientFactory¶
Bases:
objectFactory for creating Interactive Brokers execution clients.
- name()¶
- class InteractiveBrokersInstrumentProvider¶
Bases:
objectInteractive Brokers instrument provider.
This provider fetches contract details from Interactive Brokers using the rust-ibapi library and converts them to NautilusTrader instruments.
- count()¶
Get the number of cached instruments.
- determine_venue(contract)¶
Determine venue from contract using provider configuration.
- fetch_contract_details()¶
Maintain compatibility with the legacy Python provider API.
Contract details are fetched as part of the data/execution client load flow, so the standalone provider has nothing to do here.
- find(instrument_id)¶
Find an instrument by its ID.
- find_by_contract_id(contract_id)¶
Find an instrument by IB contract ID.
- get_all()¶
Get all cached instruments.
- get_price_magnifier(instrument_id)¶
Get price magnifier for an instrument ID.
- instrument_id_to_ib_contract_details(instrument_id)¶
Convert an instrument ID to cached IB contract details.
- load_cache(cache_path)¶
Load instrument cache from disk if valid.
# Returns
Returns true if cache was loaded successfully and is valid, false otherwise.
# Errors
Returns an error if deserialization or file I/O fails (but treats missing file as non-error).
- save_cache(cache_path)¶
Save the current instrument cache to disk.
# Errors
Returns an error if serialization or file I/O fails.
- class InteractiveBrokersInstrumentProviderConfig¶
Bases:
objectConfiguration for Interactive Brokers instrument provider.
- build_futures_chain¶
Returns whether to build full futures chain.
- build_options_chain¶
Returns whether to build full options chain.
- cache_path¶
Returns the cache path for persistent instrument caching.
- cache_validity_days¶
Returns the cache validity in days.
- convert_exchange_to_mic_venue¶
Returns whether to convert IB exchanges to MIC venues.
- filter_callable¶
Returns the custom instrument filter callable path.
- filter_sec_types¶
Returns the filter security types.
- load_contracts¶
Returns the IB contracts to load on startup.
- load_ids¶
Returns the instrument IDs to load on startup.
- max_expiry_days¶
Returns the maximum expiry days.
- min_expiry_days¶
Returns the minimum expiry days.
- symbol_to_mic_venue¶
Returns the symbol to MIC venue mapping.
- symbology_method¶
Returns the symbology method.
- class InteractiveBrokersSubscriptionIdle¶
Bases:
objectA subscription receives no market data within its configured interval.
This is an inactivity signal, not evidence that the connection or market is closed.
- client_id¶
- classmethod from_json(data)¶
- idle_timeout_secs¶
- instrument_id¶
- last_data_received_ns¶
- subscription¶
- to_json()¶
- ts_event¶
- ts_init¶
- class MarketDataType¶
Bases:
objectMarket data type for switching between real-time and frozen/delayed.
- DELAYED = MarketDataType.DELAYED¶
- DELAYED_FROZEN = MarketDataType.DELAYED_FROZEN¶
- FROZEN = MarketDataType.FROZEN¶
- REALTIME = MarketDataType.REALTIME¶