风险管理交易服务器

一款自托管的机构级风险管理引擎,提供完整的交易、市场数据和执行堆栈,适用于量化专业用户和小型基金。

  • by YoungMoneyInvestments
  • Python
  • 本地部署
  • 7 星标
  • 更新于
在 GitHub 查看 YoungMoneyInvestments/ibkr-mcp

使用说明

IBKR MCP服务器

盈透证券的自托管机构级风险引擎,其背后连接着完整的交易、市场数据和执行堆栈。

您可以在自己的帐户上,在自己的控制下,对自己的IB网关运行此操作。它可以下的每一个订单——市场、限价、括号、OCA、尾随止损、TWAP/VWAP/DarkIce/自适应算法——都会触发 通过 首先是真正的风险层:参数和历史风险价值、基于Kelly和波动率的头寸规模、保证金/集中度/购买力限制,以及在您超过提款阈值时停止交易的自动损失断路器。将IBKR暴露给人工智能助手是赌注。风险堆栈就是产品。

为什么这与IBKR的官方MCP/免费克隆相比

IBKR现在提供免费的官方MCP服务器,并且有10多个开源IBKR MCP克隆。他们将LLM连接到您的帐户,并让它读取数据和路由订单。就这样 他们都没有运送风险层 --没有风险值,没有凯利/体积大小引擎,没有强制的利润/浓度限制,没有自动损失断路器。最完整的OSS克隆停止在选项希腊和浓度检查。

官方IBKR MCP/OSS克隆 此服务器
将LLM连接到IBKR ✅ ✅
市场数据、订单、期权、期货、扫描仪 ✅ ✅
支架/OCA/尾随/TWAP/VWAP/DarkIce算法 部分 ✅
参数+历史风险值 ❌ ✅
凯利/波动头寸规模 ❌ ✅
强制利润/集中度/购买力限制 ❌ ✅
自动损失断路器(停止交易) ❌ ✅
自行托管在您自己的Gateway+帐户上 -- ✅

如果你只需要“一个可以看到我IBKR账户的法学硕士”,请使用免费的官方账户。这适用于希望人工智能交易的定量产消者和小型基金 里面 他们定义的硬风险轨道。

安全模型——你承担风险

这是你的工具 自我托管,并针对您自己的帐户和IB网关运行.中间没有托管服务触及你不拥有的账户,也没有第三方保管任何东西。

  • 默认姿势需要批准。 开箱即用,助理提出订单;人类在任何路线之前都会确认。
  • 完全自主(无需人工点击)执行是一种明确的选择加入 那 你 启用,on 你的 帐户,on 你的 网关。它关闭,直到你打开它。
  • 风险之门总是在路上 无论模式如何——需要批准还是自主批准,订单在到达经纪商之前仍然要经过风险价值、规模、限额和断路器检查。

这与IBKR的责任驱动的强制批准设计有所不同:你决定授予多少自主权,因为你是持有账户和风险的人。

特性

风险管理

  • 风险价值 -参数和历史风险值
  • 仓位 -固定风险,凯利标准,基于波动性
  • 风险限额 -保证金利用率、集中度、购买力检查
  • 断路器 -过度亏损时自动暂停交易

交易

  • 基本订单 -市价单、限价单、止损单
  • 支架订单 -入场+止盈+止损
  • 拖车停靠点 -按金额或百分比
  • OCA订单 -One取消所有订单组
  • 一些订单 -TWAP、VWAP、到货价格、DarkIce、自适应等

账户和投资组合

  • 帐户摘要 -余额、购买力、保证金状态
  • 职位 -损益表中的当前持股
  • 投资组合分析 -按资产类别、符号、货币分配
  • 再平衡 -计算并执行再平衡交易

市场数据

  • 实时价格 -实时报价,具有快速故障切换功能
  • 历史数据 -带分页的OHLCV条
  • 2级 -订单簿/市场深度
  • 流媒体 -HFT策略的实时数据
  • 符号搜索 -查找可交易工具

选项

  • 期权链 -全链与希腊人
  • 传播分析 -牛叫、熊放、跨骑、勒死、铁秃鹰

期货

  • 期货链 -所有可用合同
  • 翻车检测 -自动到期警报
  • 连续合同 -用于历史分析

市场扫描器

  • 预构建扫描 -涨幅最大、跌幅最大、最活跃、成交量异常
  • 自定义扫描仪 -使用过滤器构建自己的过滤器
  • 期权交易量 -异常期权活动

安装

# From source (this is a private, proprietary repo — not published to PyPI)
git clone git@github.com:YoungMoneyInvestments/ibkr-mcp.git
cd ibkr-mcp
pip install -e .

注:无关 ibkr-mcp 包存在于公共PyPI上——它不是这个项目。仅从源代码安装。

先决条件

  1. 盈透证券账户 -实时或纸质交易账户
  2. TWS或IB网关 -运行和接受API连接
  3. API配置 在TWS/网关中:
    • 启用API:配置>API>设置>启用ActiveX和套接字客户端
    • 受信任的IP地址:添加127.0.0.1
    • 端口:7497(纸质)或7496(实时)

快速开始

1.启动TWS/IB网关

打开TWS或IB网关并登录。确保已启用API连接。

2.配置克劳德桌面

添加到您的Claude桌面 mcp.json:

{
  "mcpServers": {
    "ibkr": {
      "command": "ibkr-mcp",
      "args": ["--port", "7497"]
    }
  }
}

对于实时交易(请谨慎使用):

{
  "mcpServers": {
    "ibkr": {
      "command": "ibkr-mcp",
      "args": ["--port", "7496"]
    }
  }
}

3.与Claude一起使用

"Show me my current positions"
"Get a quote for AAPL"
"Place a limit order to buy 100 shares of MSFT at $400"
"What's the option chain for SPY?"
"Scan for top percentage gainers today"
"Calculate position size for TSLA with $500 risk and stop at $350"

CLI使用情况

# Default settings (paper trading, stdio transport)
ibkr-mcp

# Connect to live trading
ibkr-mcp --port 7496

# Read-only mode (no trading)
ibkr-mcp --readonly

# SSE transport for web clients
ibkr-mcp --transport sse --mcp-port 8080

# Verbose logging
ibkr-mcp -v

# Full options
ibkr-mcp --help

环境变量

连接设置

变量 默认值 描述
IBKR_MODE - 连接预设(见下文)
IBKR_HOST 127.0.0.1 TWS/网关主机
IBKR_PORT 7497 TWS/网关端口(被IBKR_MODE覆盖)
IBKR_CLIENT_ID 1 启动客户端ID
IBKR_CLIENT_ID_AUTO_RETRY true 冲突时使用不同的客户端ID自动重试
IBKR_CLIENT_ID_MAX_ATTEMPTS 5 查找可用客户端ID的最大尝试次数
IBKR_READONLY false 禁用交易
IBKR_TIMEOUT 30 连接超时(秒)
MCP_TRANSPORT stdio 传输类型

连接模式预设

使用 IBKR_MODE 在平台之间轻松切换:

模式 端口 描述
tws_paper 7497 TWS票据交易(默认)
tws_live 7496 TWS实时交易
gateway_paper 4002 IB网关纸交易
gateway_live 4001 IB网关实时交易

示例:

# Connect to IB Gateway paper trading
IBKR_MODE=gateway_paper ibkr-mcp

# Connect to TWS live with custom client ID
IBKR_MODE=tws_live IBKR_CLIENT_ID=10 ibkr-mcp

# Disable client ID auto-retry
IBKR_CLIENT_ID_AUTO_RETRY=false ibkr-mcp

可用工具

连接

  • connection_status -检查IBKR连接
  • reconnect -重新连接到IBKR

账户

  • get_account_summary -账户余额和价值
  • get_positions -当前持有量
  • analyze_portfolio_allocation -投资组合细分
  • calculate_rebalancing_orders -再平衡计划
  • execute_rebalancing -执行再平衡交易

交易

  • place_order -市价/限价/止损单
  • place_bracket_order -支架订单
  • place_trailing_stop -追踪止损单
  • place_one_cancels_all -OCA订单组
  • place_algo_order -算法顺序
  • cancel_order -取消订单
  • get_open_orders -列出未结订单

市场数据

  • get_realtime_price -实时报价
  • get_historical_data -历史悠久的酒吧
  • get_order_book -2级数据
  • search_symbols -符号搜索
  • get_news -新闻简报

选项

  • get_option_chain -希腊选项
  • analyze_option_spread -点差策略分析

期货

  • get_futures_chain -可用合同
  • detect_rollover_needed -过期警报

扫描仪

  • scan_market -预先构建的市场扫描
  • create_custom_scanner -自定义扫描
  • scan_options_volume -异常期权活动

风险

  • calculate_position_size -职位规模
  • check_risk_limits -风险状态
  • set_stop_loss_orders -自动止损
  • calculate_var -风险价值

码头工人

docker build -t ibkr-mcp .
docker run -e IBKR_HOST=host.docker.internal ibkr-mcp

发展

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Type checking
mypy src

# Linting
ruff check src

安全功能

  • 只读模式 -禁用所有交易操作
  • 速率限制 -保持在API IBKR限制范围内
  • 断路器 -损失过大时自动停止
  • 输入验证 -验证所有订单参数
  • 错误恢复 -带回退功能的自动重新连接

许可证

专有——版权所有(c)2026 Cameron Bennion。保留所有权利。看 许可证.

免责声明

此软件仅用于教育和信息目的。交易涉及巨大的损失风险。过去的表现并不预示未来的结果。始终先用纸笔交易进行测试。