问题标签 [interactive-brokers]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
950 浏览

python - 使用 IbPy 检索 ScannerSubscription 结果

我正在为 a 的结果而苦苦挣扎ScannerSubscription
例如,如果我要求:

我收到这样的scannerData回复:

<scannerData reqId=0, rank=0, contractDetails=<ib.ext.ContractDetails.ContractDetails object at 0x00000000036EFA58>, distance=None, benchmark=None, projection=None, legsStr=None>
ETC...

但我无法检索结果值,例如:

reqScannerParameters()xml 结果指定<colId>390</colId>Gap值的 colId:

如何检索 GAP 值?
这甚至可能吗?

0 投票
1 回答
87 浏览

java - JAVA IBrokers api

我使用reqHistoricalData()方法,但调用后它不返回任何内容。我是否需要其他方法来处理数据?

这是我的代码

0 投票
1 回答
442 浏览

java - JAVA 互动经纪人 API

我调用交互式代理reqHistoricalData()方法,我在 IBGateaway 上看到我看到我收到错误

200 | 未找到该请求的安全定义

我试图将 sec 类型更改为不同的类型,但总是返回相同的结果,这是我的代码:

0 投票
1 回答
99 浏览

java - 如何让 Java 中的一段代码始终在 ubuntu/centOS 上运行?

我编写了一些 Java 代码(使用交互式经纪人 API)每 50 毫秒轮询一次期货定价,当它处于我喜欢的情况时,它将购买或出售 X 合约等。

但是,我不知道如何编写代码以正确地保持程序始终在后台运行。如果重要的话,我正在 OS X 上开发它,生产环境可以是 ubuntu 或 centOS

0 投票
1 回答
854 浏览

matlab - 在交互式经纪人上计算 IV60 和 IV90

我是交易期权,但我需要计算去年的历史隐含波动率。我正在使用盈透证券的交易平台。不幸的是,他们只计算 V30(使用将在 30 天内到期的期权的股票隐含波动率)。我需要使用将在 60 天和 90 天后到期的期权来计算股票的隐含波动率。

问题:使用将在 60 天和 90 天内到期的期权计算至少一整年的个股的隐含波动率,给出:

  • TWS 不提供 V60 或 V90。
  • TWS 不提供超过 3 个月的个别期权的历史定价数据。

尝试的解决方案:

  • 使用 TWS 提供的 V30 也可以提供 V60 和 V90,因为通常期权价格会表现得像倾斜(水平倾斜)。然而,这个尝试的解决方案的问题是偏斜并不总是有一个正斜率,所以我不能想出一个数学解决方案来总是正确估计 IV60 和 IV90,因为这可能有一个正或负斜率,就像在下图。

在此处输入图像描述

有任何想法吗?

0 投票
2 回答
5488 浏览

python - 盈透证券 - 获取 OPT 的历史数据(MIDPOINT 和 TRADES)

我正在尝试通过盈透证券 API 获得在 SPY 上编写的底层证券和期权,虽然获得当前期权(包括罢工、权利等)不是问题,但我坚持获取历史数据,比如从 5 个月到现在。

代码如下:

我得到的是:

现在我知道 Contract 对象不包含这些,但如何知道权利、罢工和到期?这基本上就是我所需要的(在选项期间有一个日期和潜在的变化)。有不同的方法吗?

如果您能给我一些指示,那将是非常受欢迎的!或选择范围的基础和期权的替代来源,包括行使权、权利和到期日(无论是否支付;单项项目需要它)。

非常感谢您!非常感谢任何输入。

0 投票
2 回答
1036 浏览

java - 盈透证券订单在网关和 TWS 中同步?

我查看了这个查询 Interactive Brokers API:Trader Workstation (TWS) vs IB Gateway 它没有回答我的问题:如果我通过 IB 的网关推送订单,我能否在 TWS 中看到相同的未平仓订单头寸?这当然是使用同一个 IB 交易账户。谢谢

0 投票
1 回答
1360 浏览

python - ibpy 交互式经纪人的 python api 不能用于下订单

我有以下示例代码,当我第一次尝试运行它时,它起作用了:

当我第一次运行脚本时,IB的界面弹出一个窗口,显示API的模拟交易配置信息。但是第二次,第三次运行它时,弹出信息再也不会出现,这让我感到困惑。这里有什么问题吗?

0 投票
1 回答
1016 浏览

api - ibpy 如何使用交互式经纪人的 API 获得佣金?

我有以下使用 IB 的 python API 的代码,它应该显示价格和佣金:

但是这仅适用于执行价格,因为它会在打印后显示价格信息。但是它没有显示佣金信息(在我的终端中它一直在等待),我的代码有什么问题吗?

0 投票
4 回答
1975 浏览

docker - Docker 容器无法使用 IP 白名单连接到主机应用程序

我有一个在我的主机上运行的应用程序,它具有以下功能:它侦听端口 4001(可配置)并且只接受来自受信任 IP 地址白名单的连接(默认情况下仅 127.0.0.1,可以添加其他地址但一个一,不使用口罩)。

(这是在 java 中运行的交互式代理网关应用程序,但我认为这并不重要)

我在需要连接到主机应用程序的 docker 容器中运行另一个应用程序。

(这是一个访问 IB API 的 python 应用程序,但我再次认为这并不重要)

最终,我将在多台机器上拥有多个容器来尝试做同样的事情,但我什至无法让它与在同一台机器上运行的一个容器一起工作。

(主机上的 IB 网关没有响应)

理想情况下,我可以设置 docker 容器/网桥,以便所有 docker 容器看起来好像它们位于特定的 IP 地址上,将其添加到白名单中,然后瞧。

我试过的:

1) 使用 -p 和 EXPOSE

sudo docker run -t -p 4001:4001 myimage

绑定 0.0.0.0:4001 失败:端口已分配。

(网关无响应)

这两个都不起作用或导致“端口已在使用”冲突。我收集这些设置是为相反的问题设计的(主机看不到容器上的特定端口)。

2) 设置 --net=host

sudo docker run -t --net=host myimage

读取套接字时捕获异常 - 对等方重置连接

(网关没有响应)

这应该可以工作,因为 docker 容器现在看起来应该是 127.0.0.1 ......但事实并非如此。

3)设置--net=host并将本地主机的真实IP地址192.168.0.12(如评论中所建议)添加到白名单

sudo docker run -t --net=host myimage

读取套接字时捕获异常 - 对等方重置连接

(网关没有响应)

4) 将 172.17.0.1, ...2, ...3 添加到主机应用程序的白名单中(桥接网络为 172.17.0.0,后续容器在此范围内分配)

(主持人没有回应)

这是可怕的hacky,但也不起作用。

PS 请注意,这与尝试在容器内运行主机应用程序 IB 网关的问题不同——我没有这样做。

我不想在另一个容器中运行主机应用程序,尽管在某些方面这可能是一个更简洁的解决方案。