我正在尝试使用Excel的DataNitro从Bloomberg获得ASK价格。
我从excel调用此函数:
main()的
def main():
options = parseCmdLine()
# Fill SessionOptions
sessionOptions = blpapi.SessionOptions()
sessionOptions.setServerHost(options.host)
sessionOptions.setServerPort(options.port)
# Create a Session
session = blpapi.Session(sessionOptions)
# Start a Session
if not session.start():
return "Failed to start session."
try:
# Open service to get historical data from
if not session.openService("//blp/refdata"):
return "Failed to open //blp/refdata"
sendIntradayBarRequest(session, options)
# wait for events from session.
askPrice=eventLoop(session)
return "Ask Price: %s " % (askPrice)
finally:
# Stop the session
session.stop()
在Excel上:
回报"问价格:%s" %(askPrice)
它总是说" Python超时"在单元格中我从
然而,当我将返回更改为print时,它正确显示了Python shell上的价格 打印"询问价格:%s" %(askPrice)
Bloomberg方面的问题是关于进行我必须联系他们的会话或者我必须解决的实际代码吗?有什么建议吗?
答案 0 :(得分:0)
价格需要多长时间才能回归? DataNitro UDF在3秒后超时,以防止长时间运行的功能冻结Excel。您可以在DataNitro的设置中修改超时持续时间。