【问题标题】:Receiving Market Data into Excel将市场数据接收到 Excel 中
【发布时间】:2018-12-16 03:17:12
【问题描述】:

我的暑期项目正在开发一种算法交易者,它可以接收市场数据并根据指标进行交易。我使用他们的 TWS(交易者研讨会站)从一家名为 Interactive Brokers 的公司中提取数据。我已经下载了他们使用 DDE 的 Excel API,但无法让 Excel 电子表格与 TWS 正确连接。

在我的 Excel 电子表格中,我将此命令写入了一个随机单元格。我已经用我的 TWS 用户名替换了 'sample123' 假设在我进行其他调整之前评估为 0,但它评估为 #REF!:

=Ssample123|tik!'id1?req?EUR_CASH_IDEALPRO_USD_~/'

Image of error received

该错误的另一个问题是它从我的用户名中删除了两个字符,我不确定为什么。

例如:用户名 -> Sample123 结果 -> 样本1

任何建议将不胜感激!谢谢你,祝你有美好的一天。

【问题讨论】:

  • 该错误清楚地表明 DDE 应用程序没有运行。因此 Excel 将 DDE 公式的第一部分作为应用程序名称并尝试启动 SSAMPLE1.EXE。应用程序名称被截断为 8 个字符,因为 DDE 是自古以来的古老技术,文件名只有 8 个字符长。您是否遵循“教程:请求实时市场数据 - 您需要什么”?
  • 是的,这是我一直在使用的资源之一。我也有“启用 activeX 和套接字客户端”和“启用 dde ​​客户端”,所以我不明白为什么 DDE 没有运行?那么你认为这里的核心错误是截断吗?
  • 我尝试了 8 个字符的用户名,但它仍然运行相同的初始错误。我相信每个字符串的开头都会自动以 S 开头,所以它总是最多是一个字符。解决此问题的步骤是什么?
  • 核心错误不是截断,而是 DDE 应用程序可能没有运行。 "2. 登录 TWS,在您使用 DDE 时必须启动并运行 for Excel API。"
  • 我下载了 TWS 软件,我已经登录并在后台运行。它仍然不起作用。是否有可能是 Excel 为 TWS 设置的路径?

标签: excel dde interactive-brokers tws


【解决方案1】:
示例公式中的

'sample123' 是用于登录 TWS 的用户名。它必须在您的公式中替换为您用于登录 TWS 的实际用户名。

此外,要使用较旧的传统 TWS DDE API,您必须运行 32 位 TWS 并在 TWS 全局配置中选中“启用 DDE”设置。

Issues causing the #REF error

最新版本的 API 中还提供了一个更新的“DDE Socket Bridge”TWS API,它具有额外的功能并与 64 位版本的 TWS 兼容。

DDE SocketBridge API

【讨论】:

    猜你喜欢
    • 2012-02-03
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 2020-03-05
    • 1970-01-01
    • 2017-06-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多