下面是一些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