下面是一些VBA代码,我使用通过DDE服务器,以获得从提供的数据(在这种情况下,彭博数据提供DDE服务器):Python调用(彭博社的数据提供商)现有的DDE
Sub bloom_get()
nChan = DDEInitiate("BLP", "S")
sSecurity1 = "JBIG Index" & ", [MLI_DATE=" & datestr & ",MLI_TOT_RTN_LOC="", MLI_PX_RTN_LOC="", MLI_EFF_DUR=""]"""
vrtResult1 = DDERequest(nChan, sSecurity1)
MsgBox (vrtResult1(1) & " " & vrtResult1(2) & " " & vrtResult1(3) & " " & vrtResult1(4) & " ")
DDETerminate (nChan)
End Sub
我正在寻找一种方法来从Python代码中调用这样的DDE服务器。
这段代码具体到彭博DDE服务器,但即使您可以提供一个更通用的方法,这将是非常有用的。由于DDE是微软应用程序的细节,我不知道如何解决这个问题。
其中的东西,可能是helful:
- 包允许通过Python
- 使用第三APP一种解决方法调用DDE的名字,也许编码在VB或VB.NET本身叫Python,不知何故,当你在C++中创建DDL然后从VBA调用时,反之呢?
编辑:不,请求的数据不能通过官方API获取。
感谢
它可能会更高效和更简单的使用本地Python API ... https://www.bloomberglabs.com/api/libraries/ – assylias
对于这样一种特定类型的指数(受Merril-Lynch保护)有必要通过DDE。 API的常规历史功能不起作用。或者,也许你知道正确的覆盖? (我无法从彭博服务台获取他们......) – ylnor