问题标签 [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 投票
2 回答
3973 浏览

python - 如何正确使用来自 Ibpy 的 reqMktData?

嗨,伙计们刚开始研究 Ibpy 算法,我想先用纸面交易对其进行测试,但我对如何使用 reqMktData 获得最后价格有一点了解。我下订单没有问题,但这 25 秒没有返回任何信息,我认为它只能在交易时间内使用,或者可能只是用错了任何想法?

0 投票
1 回答
909 浏览

interactive-brokers - 是否可以使用盈透证券 API 获得股票的 PE 或 EPS

我想使用盈透证券 API 获取股票代码的每股收益价格或每股收益。有可能吗,如果可以的话怎么办?

0 投票
1 回答
7781 浏览

python - 如何启用 TWS 延迟行情数据?

这是我用来请求市场数据的脚本。

我还没有订阅数据馈送,所以我虽然它会自动返回延迟的市场数据,但显然我必须启用它,但找不到在哪里这样做。
这是我得到的脚本和错误,我只需要接收延迟数据,这样我就可以测试我的算法了。

错误:

0 投票
1 回答
1360 浏览

c++ - TWS API 修改订单不起作用,出现错误 103“重复订单 ID”

API 手册只给出了冲突信息:

要修改订单,只需使用与下原始订单相同的参数再次调用 IBApi.EClient.placeOrder 函数,但更改的参数除外。这包括 IBApi.Order.OrderId,它必须与原始的 IBApi.Order.OrderId 匹配。

如果你检查 IBApi.EClient.placeOrder 函数,你会发现关于 order id 的以下内容:

订单的唯一标识符。使用从 nextValidId 方法收到的 id 开始的顺序 id。如果新订单的订单 ID 小于或等于前一个订单的订单 ID,则会发生错误。

这是我的问题。当我尝试按照上面的说明修改订单时,我收到错误“重复的订单 ID”,这与上面关于订单 ID 的说明一样。

那么如何修改未结订单的价格或数量?

0 投票
1 回答
530 浏览

python - 我如何解释 IB API reqPositions() 响应?

我如何解释这个 API 响应

一切都是正确的,但我如何从中获得合同名称?

0 投票
1 回答
1096 浏览

python - 我无法从 ibapi 获得“Adjusted_Last”

我使用 Python

API_Version=9.73.04

作为

它返回没有数据的错误。

“Adjusted_Last”的链接

错误代码链接

我尝试了各种方法。但我是 Python 新手,所以我什至不知道如何开始搜索。因为 all_data 是一个 pd.DataFame,我用它来保留标准普尔 500 指数成分股的股票,我将使用这些价格来计算回报。

然后我计划获得一个我持有的股票头寸并系统地交易它们。

我知道我有关于 app.done = True 的另一个问题,我想我可以自己处理。但我无法弄清楚这一点。谢谢!

0 投票
1 回答
2353 浏览

python - 如何从盈透证券获取证券的 ISIN?

我正在尝试获取我的盈透证券投资组合中证券的国际证券识别码 (ISIN)。

在文档中,我发现了两个地方,提到ISIN

  1. secIdsecIdType里面的字段Contract来源
  2. secIdList里面的字段ContractDetails来源

但我无法让 API 填写这些字段中的任何一个。示例代码:

这输出:

如您所见,上述字段均未填写。您知道如何获取 ISIN 以获取安全性吗?

0 投票
3 回答
2526 浏览

python - 如何在python上的ibapi中获取一系列请求

我是 Python 和 ibapi 的新手,我问过 Interactive Broker 本身,他们只告诉我:

self.done 最初定义在父类 EClient 中,用于指示当前 API 连接“完成”。您不应将其用作停止您自己构建的循环的指标。在完成下载所需的所有历史数据之前,您可以保持一个 API 客户端连接处于活动状态。如果你需要放慢请求数据的速度,你可以使用 python 中的其他线程控制,例如 sleep() 函数,在你的循环中增加更多的等待时间,这样它就不会一次发送所有合约的历史数据请求.

所以我认为错误来自

这是我的代码

我希望看到一个建议,如何在不使用 self.done 或断开我的 TWS 的情况下传递到下一个迭代。如果我不包括 self.done 程序将在第一次 i=0,j=0 迭代时无限循环运行,没有人告诉它退出。

所以如果你不知道可以解决我的直接答案,你可以建议:

  1. 在这种情况下是否可以使用其他流量控制?

  2. 或者 cancelHistoricalData 命令,如果它可以用于这种情况?

  3. 或者有什么方法可以在 Class 中构建 Class 并仅在子类中执行 self.done = True 而不会断开我在 Class 中的 ID?

PS。我对 requestMarketData 有同样的问题

更新 V2 这是我尝试打印的一些结果

0 投票
2 回答
149 浏览

c# - Interactive Brokers API DataTable 覆盖行

我正在使用 Interactive Brokers C# API 并尝试从AccountSummary对象创建数据表,但表中的行被覆盖并且只显示最后一个值。

我不知道发生了什么事。我认为可能是属性类型与列名匹配,因此它覆盖在同一行的顶部。

预期产出

在此处输入图像描述

这是调用 ConvertToDataTable() 方法的方法。

这是我试图从中构建数据表的对象。

0 投票
1 回答
87 浏览

stockquotes - 识别在 1 年估计下交易的股票价格

在每个季度,分析师都会给出他们对给定股票的价格估计。例如,可在雅虎财经上以 1 年估计的形式提供。

我想找到一种方法(构建一个扫描仪?),让我拥有一个股票仪表板,它将在下个月公布它们的季度收益结果。包括标识其当前股价、1 年价格估计、市值和收益日期的列。

我使用交互式经纪人(IB)是否可以在 IB 下进行?如果没有,请提供另一个平台以及如何操作。