问题标签 [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 回答
536 浏览

matlab - Matlab - 盈透证券 - 获取数据函数

我正在使用Matlab(http://de.mathworks.com/help/trading/ibtws.getdata.html)中交易工具箱的getdata函数来获取外汇对(例如EURUSD)的实时价格数据。迄今为止,使用 IB 提供的最新 API (v9.71) 的 TraderWorkStation (TWS) 和盈透证券 (IB) 模拟账户。

TWS 在执行我的代码时正在运行(见下文)

这是我正在使用的代码。它遵循 Mathworks 的以下教程中解释的所有基本步骤 ( http://de.mathworks.com/videos/get-started-with-trading-toolbox-connect-to-interactive-brokers-1-of-3- 91839.html)。

在大多数情况下(大约 75%),此代码提供预期结果并返回请求的财务数据。但是,在其余情况下,变量“cur”不包含请求的价格数据,而是包含以下错误消息:“HMDS 数据农场连接正常:ushmds”

哪个拳头看起来不成问题。但是,此错误消息会替换请求的数据,因此在 25% 的运行期间不会接收到数据。

我赞赏任何解决此问题的提示。

0 投票
1 回答
259 浏览

c# - C# & IB API - 在一种方法必须声明为“void”时传递变量

背景:我正在使用 Interactive Brokers 和 Matlab 的 C# API 来加载财务数据并对其进行分析。我习惯于在 Matlab 中编码,但对 C# 处于初级水平。我创建了一个包含所有相应函数的 dll 文件来获取市场数据,并将该库实现到 Matlab 中,以便我可以在 Matlab 中启动这些函数。

当前问题:使用 Matlab 我正在调用一个通过 Interactive Broker API 请求实时市场数据的方法(“顶级方法”) 。除此之外,在此过程中还调用了以下方法,该方法只是将 tickSize 写入控制台:

就我的研究而言,这个方法被声明为“void”,因为没有直接的输出变量被返回,因为请求的信息只是写在控制台中。

问题是,这个方法是通过 IB API 中另一个更复杂的方法调用的,它也被声明为“void”。

目标:我想在用Matlab调用顶层方法时得到这个方法(tickSize)的信息作为输出。

约束:调用“tickSize”的 IB API 中的方法也被声明为 void 方法,并且是具有许多约束和 if 子句的复杂 C# 方法,我很可能不喜欢自己修改。

解决问题的尝试:我想教科书解决此问题的方法是编写一个定义相应输出类型的方法(对于此示例,如果我只想获取tickerId,请说'int',然后调整IB API 的复杂方法同样输出类型,最后但并非最不重要的是调整上面发布的方法,以便变量可以通过过程传递。但是,如上所述,我不想弄乱完整的交易API 并且 IB 的技术支持建议自己编写另一个第四个方法,然后可以以某种方式保存输出(int tickerId)并将其直接传递给 main 方法。这是我对 C# 的了解肯定结束的地方,也是很长的谷歌搜索似乎没有为这个特定问题提供任何结果。

问题:当 C# 中有多个级别的方法时,有没有办法克服一个方法被声明为“void”并将输出直接发送到顶级方法?

如果有帮助,我还可以提供我正在谈论的相应方法,但正如我所说的 API 非常复杂,我不想在这里发送所有代码

0 投票
1 回答
975 浏览

c++ - 盈透证券返回单个订单的多个“预提交”订单状态

有没有人在每个发送的订单中遇到过多个订单状态?有没有办法解决这个问题或者最好的方法是什么?

0 投票
1 回答
1760 浏览

python - 下单后如何在盈透证券(IBPY)获取交易价格和佣金?

http://interactivebrokers.github.io/tws-api/可能是一个有用的链接。 这张图片来自Interacitve Brokers的java API指南,我想要的数字是交易日志中的价格和佣金。

0 投票
0 回答
346 浏览

python - 无法通过 API 连接 Ubuntu 上的 Trader Workstation

我正在使用 ibPy 在相当新的 ubuntu 机器上连接到 TWS。我已成功登录模拟交易账户并通过 ibPy 界面以编程方式提交买卖订单。

但是,我现在尝试做的不仅仅是提交订单。即,我正在尝试从 TWS 获取更新的头寸。我有兴趣成功运行以下代码:

但是,执行时出现以下错误:

我已确保在 TWS 首选项中确实启用了 ActiveX 和套接字客户端,所以这不是问题。令我惊讶的是,我能够成功提交订单,但无法从 TWS 获得账户更新。有谁知道为什么会发生这种情况?

0 投票
1 回答
272 浏览

interactive-brokers - 在 IBPY(Interactive Brokers API)上获取资产类别中所有证券的列表

检查了谷歌讨论组和示例,大多数已经指定了合同类型。

是否有可能获得资产类别(或交易所)中的所有产品?例如外汇的“CASH”或股票的“STK”。

谢谢!

0 投票
2 回答
330 浏览

matlab - Matlab IB实时数据在一段时间后卡住了

我正在使用 Matlab 的内置 Interactive Broker 库来连接和使用 TWS。我正在尝试请求实时数据,但是,过了一段时间它就卡在了相同的价格上。它会正常更新几分钟,然后停止更新并给出相同的价格。

我的代码有问题吗?

0 投票
1 回答
148 浏览

c - 链接到 Ox 的 C 库

我目前正在玩状态空间模型,我正在使用的书有一些非常有用的例子。

问题:

这些示例是用 Ox 编写的,这在一定程度上限制了它的可用性,特别是当我想使用 Interactive Brokers API 测试我的一些模型时,使用 C# / C++ 更实用。

更具体地说,它使用的示例SsfPack根据本文是“用 C 编写并链接到 Ox 的用于状态空间建模和推理的例程库”。

这是否意味着它可以直接在 C 中实现,还是在 Ox 中编写函数然后在 C 中调用它的更好方法,如本文档的 A1.4 所示?如果可以直接实现,那又是如何实现的呢?

对 C 有一些经验而对 Ox 没有经验,这两个选项中的前者会更可取。

欢迎任何想法!

0 投票
2 回答
534 浏览

python - 无法使用 IBPy 更改价格数据的时区

我希望能够获得以 EST(纽约)为时区的证券价格数据。我的经纪人是盈透证券。我将 python 3.5 与IBPy 库一起使用。我的问题是,当我修改控制数据时区的 reqHistoricalData 的第三个参数时,我得到的价格完全相同。

如何重现问题:

  1. 通过指定 contract.m_symbol = 'AUD', contract.m_secType = 'CASH', contract.m_exchange = 'IDEALPRO', contract.m_primaryExch = 'IDEALPRO', contract.m_currency = 'NZD' 创建要查询的合约
  2. 使用 reqHistoricalData 获取上述合约的每日开盘价,以 EST 为时区 23/6/2016。
  3. 现在通过修改 reqHistoricalData 的第三个参数来更改时区,以使用 JST 作为 23/6/2016 的时区。
  4. 比较第 2 步和第 3 步的开盘价

感谢任何帮助。

0 投票
2 回答
1453 浏览

algorithmic-trading - 练习算法交易(模拟器)

我想进入算法交易领域,所以我开始寻找 API。我偶然发现了这个答案和其他一些答案,主要是建议选择Interactive Brokers

我下载了它并将 API jar 添加到我的项目中。然后我意识到我真正想要的是一个 API,它可以让我看到我的算法每天的执行情况。

换句话说,盈透证券有没有办法实时“虚假交易”?如果不是,我应该使用什么其他工具或 API 在实时市场上测试不同的策略和算法?