Agent Skills: IBKR Gateway Python

Use when working in mm-ibkr-gateway to access market data, account summary, positions, PnL, or orders directly in Python via ibkr_core. Covers connecting with IBKRClient, using market/account/order helpers, and safety rules for preview, place, cancel, and status.

UncategorizedID: MrRolie/mm-ibkr-gateway/ibkr-gateway-python

Install this agent skill to your local

pnpm dlx add-skill https://github.com/MrRolie/mm-ibkr-gateway/tree/HEAD/.skills/ibkr-gateway-python

Skill Files

Browse the full folder contents for ibkr-gateway-python.

Download Skill

Loading file tree…

.skills/ibkr-gateway-python/SKILL.md

Skill Metadata

Name
ibkr-gateway-python
Description
Use when working in mm-ibkr-gateway to access market data, account summary, positions, PnL, or orders directly in Python via ibkr_core. Covers connecting with IBKRClient, using market/account/order helpers, and safety rules for preview, place, cancel, and status.

IBKR Gateway Python

Overview

Use ibkr_core modules in Python scripts or notebooks to fetch market data, read account data, and manage orders with safety rails.

Workflow

  1. Confirm safety mode and connectivity.

    • Ensure IBKR Gateway or TWS is running on the configured host/port.
    • Keep TRADING_MODE=paper and ORDERS_ENABLED=false unless explicitly asked to enable live trading.
    • For offline testing, set IBKR_MODE=simulation and use get_ibkr_client from ibkr_core.simulation.
  2. Create and connect a client.

    • Use IBKRClient(mode="paper") or get_ibkr_client() (respects IBKR_MODE).
    • Call client.connect() and client.disconnect().
  3. Use market data, account, and order helpers.

    • Market data: get_quote, get_quotes, get_historical_bars, get_streaming_quote, get_quote_with_mode
    • Account: get_account_summary, get_positions, get_pnl, get_account_status, list_managed_accounts
    • Orders: preview_order, place_order, get_order_status, cancel_order, get_open_orders, cancel_order_set
    • Pass account_id when targeting a specific account; omit to use the first managed account.
  4. Prefer preview-first order flow.

    • Call preview_order before place_order.
    • If ORDERS_ENABLED=false, place_order returns SIMULATED.

References

  • references/python-usage.md for import lists and code examples.
  • ibkr_core/models.py and docs/SCHEMAS.md for field names and order types.
  • notebooks/02_market_data.ipynb, notebooks/03_account_status.ipynb, and notebooks/04_orders.ipynb for end-to-end workflows.