私はExcelのDataNitroを使用してBloombergからASK価格を取得しようとしています。Python APIを使用してBloombergのASK価格を取得
私は、Excelからこの関数を呼び出しています:
メイン()エクセルで
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()
: "価格を確認する:%s" の
リターン%を(askPrice)
は、それは常に「パイソンを言いますタイムアウト "を呼び出しています。
しかし、私がリターンを変更すると、Pythonシェルの価格が正しく表示されます
印刷 "Ask Price:%s"%(askPrice)
Bloomberg側の問題は、私がそれらに連絡しなければならないセッションか、修正しなければならない実際のコードですか?何かアドバイス?
は、おそらく性質上再帰的な 'askPrice'ですか?多分、Pythonは文字列に変換するときに再帰的ループに陥ってしまいますが、コードはC言語で処理されるので再帰エラーは発生しません。 –